@charset "UTF-8";

/*======*/
body,html{margin:0px;padding:0px;cursor:default;font-size:12px;line-height:19px;text-align:center;color:#d7cfc6;}
body {font-family:"メイリオ",ＭＳ Ｐゴシック,Osaka;margin:0px;padding:0px;zoom: 1.0;-moz-transform: scale(1.0);}
	@media all and (max-width: 1024px) {
		body {-webkit-text-size-adjust: none;overflow-x:hidden;min-width:100%;font-family: Verdana, sans-serif;}
	}
a{cursor:pointer;outline:none;text-decoration:none;}
h1,h2,h3,h4,h5,p,ul,li{font-size:12px;color:#d7cfc6;line-height:20px;font-weight:normal;}
img,div{vertical-align:top;border:0px;}
ul,li{list-style-type:none;text-align:center;margin:0px;padding:0px;vertical-align:top;}
a:hover img{opacity:0.9;filter: alpha(opacity=95);}
h1,h2,h3,h4,h5,p,div,ul,li,dl,dt,dd,article{margin:0px auto;padding:0px;}
	@media all and (min-width: 1025px) {
		.pc_none{display:none;}
		#container{width:100%;overflow-x:hidden;}
		#contents{width:100%;padding:0px 0px 0px 0px;background:#000000;}
		.main_contents_box{width:100%;}
		input[type="text"],textarea,select{border:1px solid #e9d8dc;}
	}
	@media all and (max-width: 1024px) {
		body {width:100%;}
		.s_width{width:95%;margin:0px auto;padding:0px;}
		#container{width:100%;overflow-x:hidden;}
		.main_contents_box{padding-bottom:15px;}
		#contents{width:100%;padding:0px 0px 0px 0px;background:#000000;}
		.smart_none{display:none;}
		input[type="text"],textarea,select{border:1px solid #e9d8dc;}
		input[type="button"],input[type="text"],input[type="submit"],input[type="image"],textarea{-webkit-appearance: none;border-radius: 0;}
	}


/*======*/
#header{width:100%;height:110vh;margin:0px auto;display: -ms-flexbox;display: flex;-ms-flex-align: center;align-items: center;-ms-flex-pack: center;justify-content: center;position:relative;background-position:center center;background-size: cover;}
#etc #header{width:100%;height:50vh;}
header.header_effect{width:100%;height:0px;background:rgb(0,0,0,0.5);position:avsolute;top:-60px;left:0px;z-index:2;overflow: none;left: 0;-moz-transition: all 0.4s ease-in-out;-o-transition: all 0.4s ease-in-out;transition: all 0.4s ease-in-out;webkit-transition: all 0.4s ease-in-out;}
header.header_effect_disp{height:60px;position:avsolute;top:0px;left:0px;-moz-transition: all 0.4s ease-in-out;-o-transition: all 0.4s ease-in-out;transition: all 0.4s ease-in-out;-webkit-transition: all 0.4s ease-in-out;padding:0px;}
#header:after {content: "";width:100%;height:141px;position:absolute;left: 0;bottom:0px;background:url(../img/header/bg.png) no-repeat;background-size:2000px 141px;background-position:bottom center;}
p.concept{opacity:0;filter: alpha(opacity=0);}
p.concept_p{opacity:1.0;filter: alpha(opacity=10);transition:all 0.8s ease-out;-moz-transition:all 0.8s ease-out;-webkit-transition:all 0.8s ease-out;-o-transition:all 0.8s ease-out;z-index:2;}
	@media all and (min-width: 1025px) {
		p.concept{width:180px;height:420px;}
		header{width:100%;height:60px;position:absolute;top:0px;left:0px;}
		.header{width:1200px;height:100%;display: -ms-flexbox;display: flex;-ms-flex-align: center;align-items: center;-ms-flex-pack: center;justify-content: center;}
		.header div.logo{width:253px;height:auto;}
	}
	@media all and (max-width: 1024px) {
		header{width:100%;height:60px;position:absolute;top:0px;left:0px;}
		.header{width:95%;height:100%;display: -ms-flexbox;display: flex;-ms-flex-align: center;align-items: center;-ms-flex-pack: center;}
		.header div.logo{width:auto;height:auto;margin:0px;}
		.header div.logo img{width:auto;height:47px;}
		div.menu_icon{width:25px;height:25px;padding:16px 0px 14px 0px;float:right;}
		div.menu_icon p{width:100%;height:100%;margin:0px auto;padding:0px;}
		#etc #header{width:100%;height:30vh;}
		#header:after {content: "";width:100%;height:30px;position:absolute;left: 0;bottom:0px;background:url(../img/header/bg.png) no-repeat;background-size:100% 30px;background-position:bottom center;}
		p.concept{width:60%;}
	}
	@media all and (max-width: 844px) {
		#etc #header{width:100%;height:55vh;}
	}
	@media all and (max-width: 776px) {
		p.concept{width:60%;}
	}
	@media all and (max-width: 667px) {
		p.concept{width:80%;}
		#etc #header{width:100%;height:30vh;}
		.header div.logo img{width:auto;height:41px;}
	}
	@media all and (max-width: 480px) {
	}
	@media all and (max-width: 320px) {
	}


/*======*/
#header ul.icon{width:70px;height:30px;display: -ms-flexbox;display: flex;-ms-flex-align: center;align-items: center;-ms-flex-pack: center;justify-content: center;}
#header ul.icon li{width:30px;height:30px;}
#header ul.icon li:nth-of-type(2){margin:0px 0px 0px 10px;}
	@media all and (max-width: 1024px) {
		#header ul.icon{width:47%;margin:0px 0px 0px 3%;-ms-flex-pack: flex-start;justify-content: flex-start;}
		#header ul.icon li{margin:0px;}
	}
	@media all and (max-width: 667px) {
		#header ul.icon{height:26px;}
		#header ul.icon li{width:26px;height:26px;}
		#header ul.icon li:nth-of-type(2){margin:0px 0px 0px 6px;}
	}

/*======*/
	@media all and (min-width: 1025px) {
		header nav{width:877px;height:auto;margin:0px auto;padding:0px;}
		header nav .menu{width:1200px;height:auto;}
		header nav ul{width:100%;height:auto;display: -ms-flexbox;display: flex;-ms-flex-pack: flex-end;justify-content:flex-end;-webkit-flex-wrap: wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;}
		header nav li{width:auto;height:auto;margin:0px;transition:all 0.3s ease-out;-moz-transition:all 0.3s ease-out;-webkit-transition:all 0.3s ease-out;-o-transition:all 0.3s ease-out;}
		header nav ul li:hover{-webkit-transform:translate(0px,-9px);-ms-transform:translate(0px,-9px);}
		header nav a span.en{display:block;width:100%;padding:0px 0px 0px 0px;font-size:13px;line-height:100%;color:#d7cfc6;letter-spacing:1px;}
		header nav a span.ja{display:block;width:100%;padding:2px 0px 0px 0px;font-size:10px;line-height:100%;color:#d7cfc6;}
		header nav a{padding:0px 20px;display:block;}
	}
	@media all and (max-width: 1024px) {
		header nav{display:none;}
	}
	@media all and (max-width: 776px) {
	}
	@media all and (max-width: 667px) {
	}
	@media all and (max-width: 480px) {
	}
	@media all and (max-width: 320px) {
	}


/*======*/
h2.h2{width:100%;padding:0px 0px 0px 0px;font-size:24px;line-height:140%;letter-spacing:1px;}
p.h2_txt{width:100%;padding:0px 0px 0px 0px;font-size:14px;line-height:160%;letter-spacing:1px;}
	@media all and (max-width: 1024px) {
		h2.h2{font-size:22px;}
		p.h2_txt{font-size:13px;}
	}


/*======*/
.etc_h2_s_padding{width:100%;height:auto;padding-top:30px;}
div.etc_h2{width:280px;height:auto;padding:4px 0px;border:1px solid #990000;border-box;-moz-box-sizing: border-box; -webkit-box-sizing: border-box;opacity:0;filter: alpha(opacity=0);}
div.etc_h2 div{width:calc(100% - 8px);height:auto;background:rgb(153,0,0,0.8);}
div.etc_h2 div h2{width:auto;height:auto;padding:5px 0px 0px 0px;font-size:22px;line-height:140%;letter-spacing:1px;}
div.etc_h2 div p{width:auto;height:auto;padding:3px 0px 10px 0px;font-size:13px;line-height:100%;letter-spacing:1px;}
div.etc_h2.etc_h2_disp{opacity:1.0;filter: alpha(opacity=10);transition:all 0.8s ease-out;-moz-transition:all 0.8s ease-out;-webkit-transition:all 0.8s ease-out;-o-transition:all 0.8s ease-out;z-index:2;}
	@media all and (max-width: 1024px) {
		div.etc_h2 div h2{font-size:20px;}
		div.etc_h2 div p{font-size:12px;padding:0px 0px 10px 0px;}
	}


/*======*/
footer{width:100%;height:auto;background:#000000;}
footer p.logo{max-width:257px;width:100%;height:auto;padding-bottom:60px;}
	@media all and (max-width: 1024px) {
		footer p.logo{max-width:230px;width:100%;height:auto;padding-bottom:20px;}
	}
/*======*/
footer ul.icon{width:100%;height:30px;display: -ms-flexbox;display: flex;-ms-flex-align: center;align-items: center;-ms-flex-pack: center;justify-content: center;}
footer ul.icon li{width:30px;height:30px;margin:0px 6px;}
/*======*/
	@media all and (min-width: 1025px) {
		footer nav{width:100%;height:auto;margin:0px auto;padding:20px 0px;}
		footer nav .menu{width:1200px;height:auto;}
		footer nav ul{width:100%;height:auto;display: -ms-flexbox;display: flex;-ms-flex-pack: center;-webkit-flex-wrap: wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;justify-content: center;}
		footer nav li{width:auto;height:auto;margin:0px;transition:all 0.3s ease-out;-moz-transition:all 0.3s ease-out;-webkit-transition:all 0.3s ease-out;-o-transition:all 0.3s ease-out;}
		footer nav ul li:hover{-webkit-transform:translate(0px,-9px);-ms-transform:translate(0px,-9px);}
		footer nav a span.en{display:block;width:100%;padding:0px 0px 0px 0px;font-size:13px;line-height:100%;color:#d7cfc6;letter-spacing:1px;}
		footer nav a span.ja{display:block;width:100%;padding:2px 0px 0px 0px;font-size:10px;line-height:100%;color:#d7cfc6;}
		footer nav a{padding:0px 30px;display:block;}
	}
	@media all and (max-width: 1024px) {
		footer nav{width:100%;height:auto;margin:0px auto;padding:20px 0px;}
		footer nav .menu{width:100%;height:auto;}
		footer nav ul{width:100%;height:auto;display: -ms-flexbox;display: flex;-ms-flex-pack: center;-webkit-flex-wrap: wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;justify-content: center;}
		footer nav li{width:50%;height:auto;margin:0px;transition:all 0.3s ease-out;-moz-transition:all 0.3s ease-out;-webkit-transition:all 0.3s ease-out;-o-transition:all 0.3s ease-out;}
		footer nav ul li:hover{-webkit-transform:translate(0px,-9px);-ms-transform:translate(0px,-9px);}
		footer nav a span.en{display:block;width:100%;padding:0px 0px 0px 0px;font-size:13px;line-height:100%;color:#d7cfc6;letter-spacing:1px;}
		footer nav a span.ja{display:block;width:100%;padding:2px 0px 0px 0px;font-size:10px;line-height:100%;color:#d7cfc6;}
		footer nav a{padding:10px 0px;display:block;}
	}


/*======*/
footer div.copy .copy{width:100%;height:auto;font-size:11px;color:#d7cfc6;padding-bottom:10px;}
	@media all and (min-width: 1025px) {
		footer .copy a:link{color:#d7cfc6;text-decoration:none;}
		footer .copy a:visited{color:#d7cfc6;text-decoration:none;}
		footer .copy a:hover{color:#d7cfc6;text-decoration:none;}
		footer .copy a:active{color:#d7cfc6;text-decoration:none;}
	}
	@media all and (max-width: 1024px) {
		footer div.copy .copy span{display:none;}
		footer .copy a{color:#d7cfc6;text-decoration:none;}
	}


/*======*/
.glay_box:after {content: "";background-color: #000000;width: 100%;height: 100%;position: absolute;left: 0;top: 0;
  z-index: 50;
  -webkit-transition: -webkit-transform 0.5s cubic-bezier(0.165, 0.84, 0.44, 1) 1.2s;
  transition: -webkit-transform 0.5s cubic-bezier(0.165, 0.84, 0.44, 1) 1.2s;
  transition: transform 0.5s cubic-bezier(0.165, 0.84, 0.44, 1) 1.2s;
  transition: transform 0.5s cubic-bezier(0.165, 0.84, 0.44, 1) 1.2s, -webkit-transform 0.5s cubic-bezier(0.165, 0.84, 0.44, 1) 1.2s;
}
.glay_box.effect:after {-webkit-transform: translateX(100%);transform: translateX(100%);}


/*======*/
.error_txt{width:100%;height:auto;margin:0px auto;padding:150px 0px;}
	@media all and (max-width: 1024px) {
		.error_txt{padding:60px 0px;}
	}


@media all and (max-width: 1024px) {
		.flex-center {display: flex;align-items: center;justify-content: center;}
		.outer-menu {position: fixed;top: 0px;right:55px;z-index: 1;}
		.outer-menu .checkbox-toggle {position: absolute;top: 0;left: 0;z-index: 2;cursor: pointer;width: 55px;height: 55px;opacity: 0;}
		.outer-menu .checkbox-toggle:checked + .hamburger > div {transform: rotate(135deg);}
		.outer-menu .checkbox-toggle:checked + .hamburger > div:before,
		.outer-menu .checkbox-toggle:checked + .hamburger > div:after {top: 0;transform: rotate(90deg);}
		.outer-menu .checkbox-toggle:checked + .hamburger > div:after {opacity: 0;}
		.outer-menu .checkbox-toggle:checked ~ .menu {pointer-events: auto;visibility: visible;}
		.outer-menu .checkbox-toggle:checked ~ .menu > div {transform: scale(1);transition-duration: 0.75s;}
		.outer-menu .checkbox-toggle:checked ~ .menu > div > div {opacity: 1;transition: opacity 0.4s ease 0.4s;}
		.outer-menu .checkbox-toggle:hover + .hamburger {box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.1);}
		.outer-menu .checkbox-toggle:checked:hover + .hamburger > div {transform: rotate(225deg);}
		.outer-menu .hamburger {position: absolute;top: 7px;left: 0;z-index: 1;width: 45px;height: 45px;padding: 0em;background:#b61200;border-radius: 0 0.12em 0.12em 0;cursor: pointer;transition: box-shadow 0.4s ease;-webkit-backface-visibility: hidden;backface-visibility: hidden;display: flex;align-items: center;justify-content: center;}
		.outer-menu .hamburger > div {position: relative;flex: none;width: 60%;height: 2px;background: #FEFEFE;transition: all 0.4s ease;display: flex;align-items: center;justify-content: center;}
		.outer-menu .hamburger > div:before,
		.outer-menu .hamburger > div:after {content: '';position: absolute;z-index: 1;top: -10px;left: 0;width: 100%;height: 2px;background: inherit;transition: all 0.4s ease;}
		.outer-menu .hamburger > div:after {top: 10px;}
		.outer-menu .menu {position: fixed;top: 0;left: 0;width: 100%;height: 100%;pointer-events: none;visibility: hidden;overflow: hidden;-webkit-backface-visibility: hidden;backface-visibility: hidden;outline: 1px solid transparent;display: flex;align-items: center;justify-content: center;}
		.outer-menu .menu > div {width: 240vw;height: 240vw;color: #FEFEFE;background:url(../img/index/bg_info.webp) no-repeat;background-size:cover;background-position:top center;position:relative;border-radius: 50%;transition: all 0.4s ease;flex: none;transform: scale(0);-webkit-backface-visibility: hidden;backface-visibility: hidden;overflow: hidden;display: flex;align-items: center;justify-content: center;}
		.outer-menu .menu > div > div {text-align: center;max-width: 90vw;max-height: 100vh;opacity: 0;transition: opacity 0.4s ease;overflow-y: auto;flex: none;display: flex;align-items: center;justify-content: center;-ms-flex-wrap:wrap;flex-wrap:wrap;}
		.outer-menu .menu > div > div > ul {list-style: none;padding-bottom:20px;margin: 0;display: block;max-height: 100vh;}
		.outer-menu .menu > div > div > ul > li > a:hover:after {width: 100%;}
		.outer-menu .menu > div > div > ul{display: -ms-flexbox;display: flex;-ms-flex-pack: center;-webkit-flex-wrap: wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;justify-content: center;-ms-flex-wrap:wrap;flex-wrap:wrap;}
		.outer-menu .menu > div > div > ul li{width:50%;height:auto;margin:0px;transition:all 0.3s ease-out;-moz-transition:all 0.3s ease-out;-webkit-transition:all 0.3s ease-out;-o-transition:all 0.3s ease-out;}
		.outer-menu .menu > div > div > ul li:hover{-webkit-transform:translate(0px,-9px);-ms-transform:translate(0px,-9px);}
		.outer-menu .menu > div > div > ul a span.en{display:block;width:100%;padding:0px 0px 0px 0px;font-size:13px;line-height:100%;color:#d7cfc6;letter-spacing:1px;}
		.outer-menu .menu > div > div > ul a span.ja{display:block;width:100%;padding:2px 0px 0px 0px;font-size:10px;line-height:100%;color:#d7cfc6;}
		.outer-menu .menu > div > div > ul a{padding:10px 0px;display:block;}
		.outer-menu .menu > div > div > p.logo{max-width:230px;width:100%;height:auto;padding-bottom:20px;}
		.outer-menu .menu > div > div > p.icon{width:100%;height:auto;padding-bottom:20px;}
		.outer-menu .menu > div > div > p.icon span{display:inline-block;width:30px;height:auto;padding:0px 6px;}
		.outer-menu .menu > div > div > p.txt{width:100%;padding:0px 0px 0px 0px;font-size:12px;line-height:140%;letter-spacing:1px;}
		.outer-menu .menu > div > div > p.tel{width:100%;padding:3px 0px 0px 0px;font-size:21px;line-height:140%;letter-spacing:1px;}
		.outer-menu .menu > div > div > p.tel a{color:#ffffff;}

}


@media all and (max-width: 1024px) {
	#footerMenu {width: 100%;height: 0px;position: fixed;z-index: 300;bottom: 0;overflow: none;left: 0;-moz-transition: all 0.4s ease-in-out;-o-transition: all 0.4s ease-in-out;transition: all 0.4s ease-in-out;webkit-transition: all 0.4s ease-in-out;padding:0px;}
	#footerMenu.show {height:auto;-moz-transition: all 0.4s ease-in-out;-o-transition: all 0.4s ease-in-out;transition: all 0.4s ease-in-out;-webkit-transition: all 0.4s ease-in-out;padding:0px;}
	#footerMenu ul{width:100%;height:auto;margin:0px auto;padding:0px;}
	#footerMenu a{display:block;padding:2px 0px;color:#ffffff;font-size:12px;}
	#footerMenu ul li{height:auto;margin:0px auto;padding:0px 0px;display:inline-block;width:50%;float:left;}
	#footerMenu ul li a{display:inline-block;padding:10px 0px;width:100%;height:auto;}
	#footerMenu ul li:nth-of-type(1){background:#95394E;}
	#footerMenu ul li:nth-of-type(2){background:#264F62;}
	@media all and (max-width: 320px) {
		#footerMenu ul li{font-size:11px;}
	}
}



