@charset "UTF-8";

/* Graphics
 * Dir: /solutions/graphics
 ****************************/
body {
  background: url(../graphics/graphics_top_visual_bg.gif) repeat-x top left;
}

#breadcrumbs li {
  color: #000000;
}

#breadcrumbs a {
  color: #00A1E6;
}

/* Head Box
*****************************/
div#headerbox {
  position: relative;
  height: 330px;
}

div#headerbox .absolute {
  position: absolute;
  top: 0;
  left: 0;
}

div#headerbox .visual {
  left: 79px;
  top: -49px;
}

div#headerbox h2.title {
  left: 560px;
  top: 87px;
}

div#headerbox div.text {
  left: 560px;
  top: 149px;
}

div#headerbox2 {
  position: relative;
  height: 330px;
}

div#headerbox2 .absolute {
  position: absolute;
  top: 0;
  left: 0;
}

div#headerbox2 .visual {
  left: 11px;
  top: -40px;
}

div#headerbox2 h2.title {
  left: 578px;
  top: 132px;
}

div#headerbox2 div.text {
  left: 576px;
  top: 174px;
}

/* Main Tabsa
*****************************/
#tab {
  margin: 0;
  background: none;
  padding: 0 5px;
  width: 950px;
  height: 79px;
}

#tab ul {
  background: none;
  height: 79px;
  width: 950px;
  margin: 0;
}

#main .column .choice h4.cw_title {
  background: url(../graphics/choice_btn.gif) no-repeat scroll 0 -40px transparent;
  font-size: 0;
  height: 40px;
  line-height: 0;
  margin: 0 0 20px 18px;
  padding: 0;
  text-indent: -9999px;
  width: 218px;
}

#content #tab ul.solution_graphics {
  background: url(../graphics/tab_bg.png) no-repeat scroll 0 0 transparent;
  height: 78px;
  position: relative;
  width: 947px;
}

#content #tab ul.solution_graphics li {
  float: none;
  height: 70px !important;
  left: 0;
  margin: 0 !important;
  padding: 0 !important;
  position: absolute;
  top: 0;
  width: 310px !important;
}

#content #tab ul.solution_graphics li.tab01 {
  left: 4px;
  top: 1px;
}

#content #tab ul.solution_graphics li.tab02 {
  left: 319px;
  top: 1px;
}

#content #tab ul.solution_graphics li.tab03 {
  left: 634px;
  top: 1px;
}

#content #tab ul.solution_graphics li span {
  display: block;
  height: 70px !important;
  width: 310px !important;
}

#content #tab ul.solution_graphics li span.active {
  height: 78px !important;
  margin-top: 0 !important;
}

#content #tab ul.solution_graphics li.tab01 span {
  background: url(../graphics/tab.gif) no-repeat scroll 0 0 transparent;
}

#content #tab ul.solution_graphics li.tab02 span {
  background: url(../graphics/tab.gif) no-repeat scroll -310px 0 transparent;
}

#content #tab ul.solution_graphics li.tab03 span {
  background: url(../graphics/tab.gif) no-repeat scroll -620px 0 transparent;
}

#content #tab ul.solution_graphics li.tab01 span.over {
  background-position: 0 -70px;
}

#content #tab ul.solution_graphics li.tab02 span.over {
  background-position: -310px -70px;
}

#content #tab ul.solution_graphics li.tab03 span.over {
  background-position: -620px -70px;
}

#content #tab ul.solution_graphics li.tab01 span.active {
  background-position: 0 -140px;
}

#content #tab ul.solution_graphics li.tab02 span.active {
  background-position: -310px -140px;
}

#content #tab ul.solution_graphics li.tab03 span.active {
  background-position: -620px -140px;
}

/* Tab
*****************************/
#content .tab ul li a {
    line-height: 1.2;
    background: #fff;
    -webkit-box-shadow: 0 0 5px rgb(81 81 81 / 30%);;
    box-shadow: 0 0 5px rgb(81 81 81 / 30%);;
    display: flex;
    align-items: center;
    justify-content: center;
	font-size: 15px;
	color: #00000d;
}
#content .tab ul li.active a,
#content .tab ul li.active a:hover {
	background: #000 !important;
}
#content .tab ul li.active a span.arrow {
	position: absolute;
    left: 50%;
    top: 68px;
    margin-left: -6px;
    margin-top: -6px;
    background: #000;
    width: 12px;
    height: 12px;
    display: block;
    transform: rotate(45deg); 
}
/* Pure Vision. True Precision. */
#content .tab ul li.tab_6:first-child a {
    box-sizing: border-box;
    padding-right: 17px;
    padding-left: 17px;
}
.shutto #content .tab ul li.tab_6:first-child a {
    padding-right: 0;
    padding-left: 0;
}
/* Contents
*****************************/
#main .right {
	text-align: right;
}
#main .column {
    background: url(../graphics/graphhics_main_bg.png) center top repeat-y;
}
#main .column .column_inner {
	background: none;
}
#main .box h4 {
	font-size: 28px;
	color: #000;
}
#main .box {
	position: relative;
}
#main .box .col2 {
	background: none;
}
#main .box .col2 .text p {
	color: #000000;
}
#main .box-white-transparent {
	background-color: rgba(255, 255, 255, 0.9);
	margin: 0;
    padding: 54px 80px 0 76px;
}
#main .box-white {
	background-color: #fff;
	margin: 0;
    padding: 54px 80px 0 76px;
}
#main .box-black-transparent {
	background-color: rgba(0, 0, 0, 0.2);
	margin: 0;
    padding: 54px 80px 0 76px;
}
#main .box-black {
	background-color: #000;
	margin: 0;
    padding: 54px 80px 0 76px;
}
#main .box-gold {
	background-color: #e4dabe;
	margin: 0;
    padding: 54px 80px 0 76px;
}
#main .box.bg-001 {
    background: #e4dabe url(../graphics/pro_photo_image2.png) no-repeat top -4px right -200px;
}
#main .box.bg-002 {
    background: #e4dabe url(../graphics/hobby_photo_image5.png) no-repeat top -4px right -200px;
}
#main .box.bg-003 {
    background: #000 url(../graphics/ambassador_image2.png) no-repeat top -4px right -100px;
}
#main .box.bg-004 {
    background: rgba(0,0,0,0.8) url(../graphics/pure_vision_image11.png) repeat-y right -60px;
}
#main .box-conversion {
	width: 100%;
	background-color: #fff;
	margin: 0;
    padding: 0;
}
#main .box-conversion.box-black {
	background-color: #000;
}
#main .graphics-list_box {
	background: url(../graphics/graphics-list_box-bg.png) no-repeat bottom -176px right -60px;
}
#main .graphics-list {
	position: relative;
  	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
  	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
	margin-top: 35px;
	margin-bottom: 70px;
}
#main .graphics-list:before {
	content:"";
	display: block;
	width: 73px;
	height: 66px;
	position: absolute;
	top: -4px;
	left: -40px;
	background: transparent url(../graphics/graphics-list_li-bg.png) no-repeat top left;
}
#main .graphics-list li{
	position: relative;
	color: #b18e51;
	font-size: 17px;
	font-weight: bold;
	list-style: none;
	padding:15px 30px 15px 0;
	margin-left: 0;
}
#main .graphics-list li:nth-child(4n) {
	padding-right: 0;
}
#main .graphics-list.multi li{
	padding-right: 0;
}
#main .academy-bnr {
    display: block;
    color: inherit;
    text-decoration: none;
}
#main .academy-bnr .bnr-box {
	display: block;
    padding: 1.8rem 250px 2.2rem 2rem;
    position: relative;
    z-index: 1;
    color: #fff;
    border-radius: 10px;
    background: #171717 url(../graphics/academy-bnr_bg.png) no-repeat top right -20px;
    background-size: cover;
}
#main .academy-bnr .bnr-box-title {
	display: block;
    color: #c7a665;
    font-size: 22px;
    line-height: 1.4;
    margin-bottom: 0.6rem;
}
#main .academy-bnr .bnr-box-text {
	display: block;
    font-size: 16px;
    margin-bottom: 1.4rem;
}
#main .academy-bnr .read-more a,
#main .academy-bnr .read-more span {
    display: inline-block;
    padding: 0.3rem 3.5rem;
    color: #fff;
    font-size: 16px;
    font-weight: 300;
    text-decoration: none;
    background: #c7a665;
    border-radius: 1.2em;
}
#main .academy-bnr .read-more a:hover,
#main .academy-bnr .read-more span:hover {
    background: #e6c075;
    transition: background-color 0.6s;
}
#main .gold-bnr {
    display: inline-block;
    color: #fff;
	font-weight: bold;
    text-align: center;
    background: #b18e51 url(../graphics/arrow_white.png) no-repeat 96% center;
    padding: 12px 40px 12px 30px;
    -webkit-box-shadow: 1px 3px 5px rgb(177 142 81 / 40%);
    box-shadow: 1px 3px 5px rgb(177 142 81 / 40%);
}
#main .gold-bnr span {
	padding-left: 20px;
}
#main .gold-bnr img {
	vertical-align: middle;
}
#main .gold-bnr img:hover {
	opacity: 1 !important;
}
#main .popup-bnr {
    display: inline-block;
    position: relative;
    font-size: 16px;
	font-weight: bold;
    white-space: nowrap;
    color: #b18e51;
    text-decoration: none;
    background: #fff;
    background-repeat: no-repeat;
    border-radius: 0.6rem;
    padding: 16px 54px 16px 20px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-box-shadow: 0 0 1px rgb(81 81 81 / 30%);
    box-shadow: 0 0 1px rgb(81 81 81 / 30%);
}
#main div[class*="bg-00"] .popup-bnr {
	margin-top: 300px;
}
#main .popup-bnr:after {
    content: "";
    display: inline-block;
    width: 29px;
    height: 29px;
    background-image: url(../graphics/icon_plus_gold.png);
    background-size: contain;
    vertical-align: middle;
    position: absolute;
    top: 50%;
    right: 15px;
	margin-top: -15px;
}
#main .popup-bnr:hover {
	opacity: 0.9;
}
#main .popup-bnr.border-gold {
	border: 1px solid #b18e51;
}
#main .modal_group .modal {
    display: none;
    position: absolute;
	bottom: 34px;
	right: 34px;
    width: 680px;
    background: #fff;
    background-repeat: no-repeat;
    color: #333;
    border-radius: 0.6rem;
    -webkit-box-shadow: 1px 1px 5px rgb(33 33 33 / 30%);
    box-shadow: 1px 1px 5px rgb(33 33 33 / 30%);
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
#main .modal_group .modal_inner {
    position: relative;
    padding: 35px 40px;
}
#main .modal_group .modal_inner .separate {
  	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
}
#main .modal_group .modal h3 {
    font-size: 22px;
    font-weight: bold;
    color: #b18e51;
    margin-bottom: 10px !important;
}
#main .modal_group .modal p {
    font-size: 14px !important;
    margin-bottom: 15px;
}
#main .modal_group .modal .readmore a {
    display: block;
    width: 200px;
    color: #fff;
	font-weight: bold;
    text-align: center;
    background: #b18e51 url(../graphics/arrow_white.png) no-repeat 96% center;
    padding: 12px 0;
    -webkit-box-shadow: 1px 3px 5px rgb(228 218 190 / 40%);
    box-shadow: 1px 3px 5px rgb(228 218 190 / 40%);
}
#main .modal_group .modal .modal_inner .close {
    display: inline-block;
    width: 33px;
    height: 33px;
    vertical-align: middle;
    position: absolute;
    top: 3px;
    right: 3px;
	cursor: pointer;
}
#main .box-conversion .conversion-title {
	position: relative;
	color: #fff;
	font-size: 30px;
	text-align: center;
	background: #b18e51;
	padding: 22px;
	margin-bottom: 40px;
}
#main .box-conversion .conversion-title:after {
	content: "";
	display: block;
	position: absolute;
	bottom: -46px;
	left: 50%;
	margin-left: -30px;
	border-top: 30px solid #b18e51;
	border-right: 30px solid transparent;
	border-bottom: 30px solid transparent;
	border-left: 30px solid transparent;
}
#main .box-conversion p {
	font-size: 16px;
}
#main .box-conversion > p {
	margin-left: 76px;
	margin-right: 80px;
}
#main .color-gold {
	color: #b18e51;
}
#main .bnr-link {
	position: relative;
	display: block;
}
#main .bnr-link:after {
	content:"";
	display: block;
	position: absolute;
	width: 137px;
	height: 30px;
	bottom: 12px;
	right: 20px;
	margin-top: -20px;
	background: url(../graphics/btn_specialpage.png) no-repeat center center;
	background-size: contain;
}
#main .box.box-black h4,
#main .box.box-black .col2 .text p,
#main .box.box-black-transparent h4,
#main .box.box-black-transparent .col2 .text p,
#main .box-conversion.box-black p {
	color: #fff;
}
#main .product-title {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
	margin: 0 80px 1rem 76px;
}
#main .product-title .col-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%;
}
#main .product-title .col-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
}
#main .product-title .blue-line {
    padding: 0.4rem 0;
    color: #fff;
    background: #3b73da;
    text-align: center;
    border-radius: 5px;
	margin-right: 15px;
}
#main .product-title .red-line {
    padding: 0.4rem 0;
    color: #fff;
    background: #d21a41;
    text-align: center;
    border-radius: 5px;
	margin-left: 15px;
}
#main .product-box-wrap {
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
	margin: 0 80px 1rem 76px;
}
#main .product-box {
    width: 24.5%;
    text-align: center;
    display: flex;
    flex-direction: column;
	color: #fff;
	text-decoration:none;
}
#main .product-box:nth-child(3){
	margin-right: 2%;
}
#main .product-box:hover {
	opacity: 0.8;
}
#main .product-box img {
	opacity: 1 !important;
}
#main .product-image {
	display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
    -webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
    padding: 1.5rem 0;
    margin-top: auto;
}
#main .product-name1 {
	display: block;
	font-size: 11px;
	margin-bottom: 6px;
}
#main .product-name2 {
	display: block;
	margin-bottom: 12px;
}
#main .product-name3 {
	display: block;
	font-size: 12px;
}
#main .product-name3 .name3-red {
	color: #d21a41;
	border: 1px solid #d21a41;
	border-radius: 0.3em;
	padding: 2px 14px;
}
#main .product-name3 .name3-white {
	color: #fff;
	border: 1px solid #fff;
	border-radius: 0.3em;
	padding: 2px 14px;
}
#main .product-name3 span + span {
	margin-left: 10px;
}

#main .card-block {
	display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
	margin-left: 76px;
	margin-right: 80px;
}
#main .card-block .col-sm {
	width: 48%;
}
#main .card-block .col-sm:nth-child(odd){
	margin-right: 4%;
}
#main .card-block .card-item {
    padding: 2rem 1.9rem;
    position: relative;
    margin-bottom: 3rem;
}
#main .card-item:before {
    content: "";
    width: 30px;
    height: 20px;
    background: url(../graphics/bg-before-q.png) no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    left: 0;
}
#main .card-item:after {
    content: "";
    width: 30px;
    height: 20px;
    background: url(../graphics/bg-after-q.png) no-repeat;
    background-size: contain;
    position: absolute;
    bottom: -10px;
    right: 0;
}
#main .card-item .card-text {
	font-size: 14px;
	margin-bottom: 25px;
}
#main .card-item .right {
	color: rgba(255,255,255,0.6);
}
#main .graphics-menu-box {
	display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin-bottom:40px;
}
#main .graphics-menu-box a{
	position: relative;
	color: #fff;
	margin-bottom: 40px;
	margin-right: 40px;
}
#main .graphics-menu-box a:nth-child(3n),
#main .graphics-menu-box a:last-child{
	margin-right:0;
}
#main .graphics-menu-box a:hover {
	color: #fff;
	text-decoration: none;
}
#main .graphics-menu-box a:before {
    content: "";
    display: block;
    width: 84px;
    height: 94px;
    position: absolute;
    top: -4px;
    left: -34px;
    background: transparent url(../graphics/bg_triangle_gold.png) no-repeat top left;
}
#main .graphics-menu-box a:last-child:before {
    background: transparent url(../graphics/bg_triangle_gray.png) no-repeat top left;
}
#main .graphics-menu-box span.graphics-menu-title {
	display: -ms-flexbox;
    display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	font-size: 18px;
	color: #fff;
	line-height: 1.2;
	min-height: 52px;
	padding-bottom: 4px;
}
#main .graphics-menu-box span,
#main .graphics-menu-box img {
	position: relative;
	z-index: 1;
}

#main .wallpaper {
	overflow: hidden;
	margin-bottom: 20px;
}
#main .wallpaper img{
	display: block;
	float:left;
	margin-right: 20px;
}
#main .box .col2 .wallpaper .text p {
	line-height: 2.2;
}
#main .wallpaper a {
	color: #b18e51;
	background: #fff;
	border-radius: 0.3em;
	padding: 7px 14px;
}
#main .gold_underline {
	border-bottom: 1px solid #b18e51;
	padding-bottom: 60px;
}

/* bx-slider
*/
.bnr-slider {
	margin-left: 84px;
    margin-right: 84px;
    padding-bottom: 80px;
}
.bx-wrapper {
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    border: none;
    background: none;
}
.bx-wrapper .bx-viewport{
    background: #000;
}
.bx-wrapper .bx-controls{
    width: 768px;
    margin-left: auto;
    margin-right: auto;
}
 .bx-wrapper .bx-controls-direction a{
    top: -94px;
    margin: auto;
    width: 16px;
    height: 31px;
}
.bx-wrapper .bx-next,
.bx-wrapper .bx-prev{
    background-attachment: scroll;
    background-repeat: no-repeat;
    background-position: 0;
    -webkit-background-size: cover;
    background-size: cover;
}
.bx-wrapper .bx-next{
    background-image: url(../graphics/icon_next.png);
    right: -40px;
}
.bx-wrapper .bx-prev{
    background-image: url(../graphics/icon_prev.png);
    left: -40px;
  }
.bx-wrapper .bx-controls{
    position: relative;
  }
.bx-wrapper .bx-pager{
    position: absolute;
    top: 10px;
    border: 0;
    z-index: 10000;
}
.bx-wrapper .bx-pager .bx-pager-item{
    padding: 0 .5em;
}
.bx-wrapper .bx-pager .bx-pager-item a{
    background: #fff;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}
.bx-wrapper .bx-pager .bx-pager-item a:hover{
    background: #888
}
.bx-wrapper .bx-pager .bx-pager-item a.active{
    background: #888;
}
/*
*/
#container {
	overflow: hidden;
}
#parallax01{
	position: absolute;
	top: 600px;
    left: -300px;
}
#parallax02{
	position: absolute;
	top: 1000px;
    right: -240px;
}
#parallax03{
	position: absolute;
	top: 1600px;
    left: -300px;
}
#parallax04{
	position: absolute;
	top: 2300px;
    right: -300px;
}

.fade-in {
  opacity: 0;
  transition-duration: 600ms;
  transition-property: opacity, transform;
  transition-timing-function: ease-out;
}
.fade-in-up {
  transform: translate(0, 30px);
}

.fade-in-down {
  transform: translate(0, -30px);
}

.fade-in-left {
  transform: translate(-30px, 0);
}

.fade-in-right {
  transform: translate(30px, 0);
}

.scroll-in {
  opacity: 0.8;
  transform: translate(0, 0);
}
