@charset "utf-8";


/* --- スタイルシート設定 --- */
/* ---------------------------------- */

body{
	background-color: #000;
}

.h_pcbr:before {
	content: "\A" ;
	white-space: pre ;
}
.h_spbr:before {
	content: "" ;
}


.h_pcon_inlne{
	display: inline;
}
.h_spon_inlne{
	display: none;
}


/* ---------------------------------- */

.h_compare{
	display: none;
	position:fixed;
	z-index:900;
	
	width: 100%;
	height: 100vh;
	top: 0;
	right: 0;

	background-color: #000;
	text-align: center;
}


.h_compare_close{
	z-index:906;
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translate(0, -50%);

	display: block;
	width: 30px;
	height: 30px;
	background:url(../images/top/menu_close.png) no-repeat center center;
}

.h_compare_close:hover{
	/* background:url(../images/top/menu_close_ov.png) no-repeat center center; */
	filter: alpha(opacity=70);
	-moz-opacity:0.70;
	opacity:0.70;
}



.h_compare_img1_before{
	background:url(../images/top/compare_img1_before.jpg) no-repeat center center;
	background-size: cover;
	position: relative;
}
.h_compare_img1_after{
	background:url(../images/top/compare_img1_after.jpg) no-repeat center center;
	background-size: cover;
	position: relative;
}

.h_compare_img1_before_text{
	position: absolute;
	color: #fff;
	bottom: 10px;
	left: 10px;
	font-size:0.9em;
}

.h_compare_img1_after_text{
	position: absolute;
	color: #fff;
	bottom: 10px;
	right: 10px;
	font-size:0.9em;
}


/* ---------------------------------- */


.h_gnavi{
	position:fixed;
	z-index:9;

	top: 50%;
	right: 10px;
	transform: translate(0, -50%);
	line-height: 0;
}

.h_gnavi_icon{
	width: 40px;
	height: 31px;
	background: url(../images/top/menu.png) no-repeat center center;
}
.h_gnavi_icon:hover{
	/* background: url(../images/top/menu_ov.png) no-repeat center center; */
	filter: alpha(opacity=70);
	-moz-opacity:0.70;
	opacity:0.70;

}


.h_menu{
	/*
	-moz-transition: 1s ease;
	-webkit-transition: 1s ease;
	-o-transition: 1s ease;
	-ms-transition: 1s ease;
	transition: 1s ease;
	*/
	
	display: none;
	position:fixed;
	z-index:90;
	
	width: 100%;
	height: 100vh;
	top: 0;
	/* right: -100%; */
	right: 0;

	background-color: #000;
}


.h_menu.active{
	right: 0;
}


.h_menu,
.h_menu a{
	color: #fff;
}

.h_menu a:hover{
	/* color: #c3c391; */
	/*
	filter: alpha(opacity=70);
	-moz-opacity:0.70;
	opacity:0.70;
	*/

}


.h_menu_close{
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translate(0, -50%);
	line-height: 0;

	display:block;
	width: 30px;
	height: 30px;
	background: url(../images/top/menu_close.png) no-repeat center center;
}
.h_menu_close:hover{
	/* background: url(../images/top/menu_close_ov.png) no-repeat center center; */
	filter: alpha(opacity=70);
	-moz-opacity:0.70;
	opacity:0.70;

}

.h_menu_area{
	position: absolute;
	top: 50%;
	right: 100px;
	transform: translate(0, -50%);
}

.h_menu_area ul li{
	text-align: right;
	margin: 8px 0;
	font-size: 1.2em;
}


.h_menu_img{
	width: 45%;
	height: 100vh;

	background-color: #ddd;
}


.h_menu_img_part{
	width: 50%;
	height: 50vh;
	position: relative;
	float: left;
}


.h_menu_img3_text{
	z-index:97;
	position: absolute;
	top: 2em;
	left: 12px;

	width: 19px;
	height: auto;
}

.h_menu_img4_text{
	z-index:97;
	position: absolute;
	top: 2em;
	left: 12px;

	width: 19px;
	height: auto;
}

.h_menu_img1_text{
	z-index:97;
	position: absolute;
	top: 2em;
	left: 12px;

	width: 19px;
	height: auto;
}

.h_menu_img2_text{
	z-index:97;
	position: absolute;
	top: 2em;
	left: 12px;

	width: 19px;
	height: auto;
}



.h_menu_img3_back{
	z-index:96;
	box-sizing: border-box;
	width: 100%;
	height: 50vh;
	background: url(../images/top/menu_img31.jpg) no-repeat center center;
	background-size: cover;
	
	border-left: 12px solid #005bab;
	position: relative;
}

.h_menu_img3_line_ov{
	display: none;
	border-top: 12px solid #005bab;
	border-bottom: 12px solid #005bab;
	border-right: 12px solid #005bab;

	position: absolute;
	width: calc(100% - 12px);
	height: calc(50vh - 24px);
	top: 0;
	left: 0;
}



.h_menu_img4_back{
	z-index:96;
	box-sizing: border-box;
	width: 100%;
	height: 50vh;
	background: url(../images/top/menu_img41.jpg) no-repeat center center;
	background-size: cover;
	
	border-left: 12px solid #ef8200;
	position: relative;
}

.h_menu_img4_line_ov{
	display: none;
	border-top: 12px solid #ef8200;
	border-bottom: 12px solid #ef8200;
	border-right: 12px solid #ef8200;

	position: absolute;
	width: calc(100% - 12px);
	height: calc(50vh - 24px);
	top: 0;
	left: 0;
}



.h_menu_img11_back{
	z-index:96;
	box-sizing: border-box;
	width: 100%;
	height: 25vh;
	background: url(../images/top/menu_img11.jpg) no-repeat center center;
	background-size: cover;
	
	border-left: 12px solid #ef8200;
	position: relative;
}

.h_menu_img11_line_ov{
	display: none;
	border-top: 12px solid #ef8200;
	border-right: 12px solid #ef8200;

	position: absolute;
	width: calc(100% - 12px);
	height: calc(25vh - 12px);
	top: 0;
	left: 0;
}



.h_menu_img12_back{
	z-index:96;
	box-sizing: border-box;
	width: 100%;
	height: 25vh;
	background: url(../images/top/menu_img12.jpg) no-repeat center center;
	background-size: cover;
	
	border-left: 12px solid #005bab;
	position: relative;
}

.h_menu_img12_line_ov{
	display: none;
	border-bottom: 12px solid #005bab;
	border-right: 12px solid #005bab;

	position: absolute;
	width: calc(100% - 12px);
	height: calc(25vh - 12px);
	top: 0;
	left: 0;
}



.h_menu_img21_back{
	z-index:96;
	box-sizing: border-box;
	width: 100%;
	height: 25vh;
	background: url(../images/top/menu_img21.jpg) no-repeat center center;
	background-size: cover;
	
	border-left: 12px solid #005bab;
	position: relative;
}

.h_menu_img21_line_ov{
	display: none;
	border-top: 12px solid #005bab;
	border-right: 12px solid #005bab;

	position: absolute;
	width: calc(100% - 12px);
	height: calc(25vh - 12px);
	top: 0;
	left: 0;
}



.h_menu_img22_back{
	z-index:96;
	box-sizing: border-box;
	width: 100%;
	height: 25vh;
	background: url(../images/top/menu_img22.jpg) no-repeat center center;
	background-size: cover;
	
	border-left: 12px solid #9e005d;
	position: relative;
}

.h_menu_img22_line_ov{
	display: none;
	border-bottom: 12px solid #9e005d;
	border-right: 12px solid #9e005d;

	position: absolute;
	width: calc(100% - 12px);
	height: calc(25vh - 12px);
	top: 0;
	left: 0;
}




.h_menu_img_shadow{
	background: url(../images/top/carousel_shadow.png) repeat-y 0 0;
	width: 100%;
	height: 50vh;
}
.h_menu_img_shadow2{
	background: url(../images/top/carousel_shadow.png) repeat-y 0 0;
	width: 100%;
	height: 25vh;
}





.h_menu_img_wh_text{
	z-index:97;
	position: absolute;
	bottom: 1.5em;
	left: 0;
	width: 100%;
	text-align: center;
	color: #fff;
	font-size: 0.9em;
	line-height: 1.6em;
}


.h_menu_img_wh_text_sm{
	font-size: 0.8em;
}

a:hover .h_menu_img_wh_text{
	
}


/* ---------------------------------- */



/* ---------------------------------- */





/* ---------------------------------- */


.h_footer{
	position:fixed;
	
	width: 100%;
	bottom: 70px;
	z-index:9;
}


.h_footer_arrow{
	text-align: center;
}
.h_footer_arrow a{
	display: block;
	width: 80px;
	height: 44px;
	margin: 0 auto;
}

a .h_scroll_txt{
	color: #fff;
	-moz-transition: color 300ms ease-in-out 0s, all 300ms ease-in-out 0s;
	-ms-transition: color 300ms ease-in-out 0s, all 300ms ease-in-out 0s;
	-o-transition: color 300ms ease-in-out 0s, all 300ms ease-in-out 0s;
	-webkit-transition: color 300ms ease-in-out 0s, all 300ms ease-in-out 0s;
	transition: color 300ms ease-in-out 0s, all 300ms ease-in-out 0s;
}

a:hover .h_scroll_txt{
	/* color: #c3c391; */
}


a .h_scroll_img{
	width: 33px;
	height: 17px;
	margin: 0 auto 0 auto;
	background: url(../images/top/arrow_scroll.png) no-repeat center center;
	-moz-transition: color 300ms ease-in-out 0s, all 300ms ease-in-out 0s;
	-ms-transition: color 300ms ease-in-out 0s, all 300ms ease-in-out 0s;
	-o-transition: color 300ms ease-in-out 0s, all 300ms ease-in-out 0s;
	-webkit-transition: color 300ms ease-in-out 0s, all 300ms ease-in-out 0s;
	transition: color 300ms ease-in-out 0s, all 300ms ease-in-out 0s;
}
.h_footer a:hover{
	filter: alpha(opacity=70);
	-moz-opacity:0.70;
	opacity:0.70;
}

a:hover .h_scroll_img{
	/* background: url(../images/top/arrow_scroll_ov.png) no-repeat center center; */
}

.h_scroll_txt{
	font-size: 0.94em;
	letter-spacing: 2px;
}

/* ---------------------------------- */

.h_page1{
	z-index:6;
	width: 100%;
	height: 100vh;
}

.h_page1_sub{
	width: 100%;
	height: 100vh;
}

.h_page11{
	background: url(../images/top/slide1.jpg) no-repeat center center;
	background-size: cover;
}

.h_page12{
	background: url(../images/top/slide2.jpg) no-repeat center center;
	background-size: cover;
}

.h_page13{
	background: url(../images/top/slide3.jpg) no-repeat center center;
	background-size: cover;
}


/* ---------------------------------- */

.h_page2{
	background-color: #000;
	width: 100%;
	height: 100vh;
}

.h_recreate_img{
	float: left;
	width: 35%;
	height: 100vh;

	background:url(../images/top/recreate_back.jpg) no-repeat center center;
	background-size: cover;
}

.h_recreate,
.h_recreate a{
	color: #fff;
}

.h_recreate a:hover{
	/* color: #c3c391; */
	/*
	filter: alpha(opacity=70);
	-moz-opacity:0.70;
	opacity:0.70;
	*/

}


.h_recreate{
	position: relative;
	float: left;
	width: 65%;
	height: 100vh;
}

.h_recreate_text{
	position: absolute;
	top: 40px;
	left: 0;
}

.h_recreate_area{
	width: 520px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -55%);
	line-height: 1.7em;
}



/* ---------------------------- */
/* Firefox Chrome Safari */

@-moz-document url-prefix(){
.h_recreate_area{
	width: 90%;
	max-width: 740px;
	min-width: 550px;
}
}

@media screen and (-webkit-min-device-pixel-ratio:0){
.h_recreate_area{
	width: 90%;
	max-width: 740px;
	min-width: 550px;
}
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
::i-block-chrome, .h_recreate_area{
	width: 90%;
	max-width: 740px;
	min-width: 550px;
}
}
/* ---------------------------- */

.h_recreate_title{
	text-align: center;
	font-size: 1.4em;
	line-height: 1.7em;
	font-weight: bold;
	margin-bottom: 30px;
}

.h_recreate_area_text{
	font-size: 0.92em;
	text-align: left;
	margin-bottom: 40px;
}

.h_recreate_area ul li{
	float: left;
	display: block;
}
.h_recreate_step1,
.h_recreate_step2{
	width: 35%;
	position: relative;
}
.h_recreate_step3{
	width: 30%;
}

.h_recreate_step1 p,
.h_recreate_step2 p{
	width: 85.7143%;
	text-align: center;
	font-size: 0.92em;
}
.h_recreate_step3 p{
	text-align: center;
	font-size: 0.92em;
}


.h_recreate_arrow{
	position: absolute;
	top: 50%;
	right: 4%;
	transform: translate(0, -65%);
}



.h_recreate_step_img1,
.h_recreate_step_img2{
	width: 85.7143%;
	height: auto;
}
.h_recreate_step_img3{
	width: 100%;
	height: auto;
}



.h_recreate_compare{
	display: block;
	width: 14em;
	float: right;
	border: 1px solid #fff;
	text-align: center;
	margin: 30px 0 0 0;
}
.h_recreate_compare:hover{
	/* border: 1px solid #c3c391; */
}

.h_recreate_compare span{
	padding: 12px 14px 12px 30px;
	background: url(../images/top/recreate_compare.png) no-repeat 0 center;
}

.h_recreate_compare:hover{
	/*
	filter: alpha(opacity=100);
	-moz-opacity:1.00;
	opacity:1.00;
	*/

	border: 1px solid #4d4d4d;
	background-color: #4d4d4d;
}


/* ---------------------------------- */

.h_page3{
	width: 100%;
	height: 100vh;
	background-color: #000;

	line-height: 0;
}
.h_page3 .swiper-container{
	width:100%;
	height:100vh;
}


.h_page3_sub{
	width: 33.3333%;
	height: 100vh;
	position: relative;
}

.h_page31{
	width: 100%;
	height: 100vh;
}
.h_page32{
	width: 100%;
	height: 100vh;
}
.h_page33{
	width: 100%;
	height: 100vh;
}
.h_page34{
	width: 100%;
	height: 100vh;
}


.h_page3_sub a{
	display: block;
}

.h_page311_back{
	z-index:6;
	box-sizing: border-box;
	width: 100%;
	height: 50vh;
	background: url(../images/top/carousel11.jpg) no-repeat center center;
	background-size: cover;
	
	position: relative;
	border-left: 24px solid #ef8200;
}
.h_page311_line_ov{
	display: none;
	border-top: 24px solid #ef8200;
	border-right: 24px solid #ef8200;

	position: absolute;
	width: calc(100% - 24px);
	height: calc(50vh - 24px);
	top: 0;
	left: 0;
}


.h_page312_back{
	z-index:6;
	box-sizing: border-box;
	width: 100%;
	height: 50vh;
	background: url(../images/top/carousel12.jpg) no-repeat center center;
	background-size: cover;
	
	border-left: 24px solid #005bab;
	position: relative;
}
.h_page312_line_ov{
	display: none;
	border-bottom: 24px solid #005bab;
	border-right: 24px solid #005bab;

	position: absolute;
	width: calc(100% - 24px);
	height: calc(50vh - 24px);
	top: 0;
	left: 0;
}


.h_page321_back{
	z-index:6;
	box-sizing: border-box;
	width: 100%;
	height: 50vh;
	background: url(../images/top/carousel21.jpg) no-repeat center center;
	background-size: cover;
	
	border-left: 24px solid #005bab;
	position: relative;
}
.h_page321_line_ov{
	display: none;
	border-top: 24px solid #005bab;
	border-right: 24px solid #005bab;
	
	position: absolute;
	width: calc(100% - 24px);
	height: calc(50vh - 24px);
	top: 0;
	left: 0;

}


.h_page322_back{
	z-index:6;
	box-sizing: border-box;
	width: 100%;
	height: 50vh;
	background: url(../images/top/carousel22.jpg) no-repeat center center;
	background-size: cover;
	
	border-left: 24px solid #9e005d;
	position: relative;
}
.h_page322_line_ov{
	display: none;
	border-bottom: 24px solid #9e005d;
	border-right: 24px solid #9e005d;
	
	position: absolute;
	width: calc(100% - 24px);
	height: calc(50vh - 24px);
	top: 0;
	left: 0;

}



.h_page331_back{
	z-index:6;
	box-sizing: border-box;
	width: 100%;
	height: 100vh;
	background: url(../images/top/carousel31.jpg) no-repeat center center;
	background-size: cover;
	
	border-left: 24px solid #005bab;
	position: relative;
}
.h_page331_line_ov{
	display: none;
	border-top: 24px solid #005bab;
	border-bottom: 24px solid #005bab;
	border-right: 24px solid #005bab;
	
	position: absolute;
	width: calc(100% - 24px);
	height: calc(100vh - 48px);
	top: 0;
	left: 0;
}


.h_page341_back{
	z-index:6;
	box-sizing: border-box;
	width: 100%;
	height: 100vh;
	background: url(../images/top/carousel41.jpg) no-repeat center center;
	background-size: cover;

	border-left: 24px solid #ef8200;
	position: relative;
}
.h_page341_line_ov{
	display: none;
	border-top: 24px solid #ef8200;
	border-bottom: 24px solid #ef8200;
	border-right: 24px solid #ef8200;
	
	position: absolute;
	width: calc(100% - 24px);
	height: calc(100vh - 48px);
	top: 0;
	left: 0;
}



.h_page3_shadow{
	background: url(../images/top/carousel_shadow.png) repeat-y 0 0;
	width: 100%;
	height: 100vh;
}
.h_page3_shadow2{
	background: url(../images/top/carousel_shadow.png) repeat-y 0 0;
	width: 100%;
	height: 50vh;
}



.h_page311_ov{
	display: none;
	z-index:7;
	position: absolute;
	bottom: 0;
	right: 24px;

	padding: 12px 9px;
	text-align: center;
	line-height: 1.7em;
	letter-spacing: 1px;
	color: #fff;
	
	background-color: #ef8304;
}


.h_page312_ov{
	display: none;
	z-index:7;
	position: absolute;
	top: 0;
	right: 24px;

	padding: 12px 9px;
	text-align: center;
	line-height: 1.7em;
	letter-spacing: 1px;
	color: #fff;
	
	background-color: #005bab;
}



.h_page321_ov{
	display: none;
	z-index:7;
	position: absolute;
	bottom: 0;
	right: 24px;

	padding: 12px 9px;
	text-align: center;
	line-height: 1.7em;
	letter-spacing: 1px;
	color: #fff;
	
	background-color: #005bab;
}


.h_page322_ov{
	display: none;
	z-index:7;
	position: absolute;
	top: 0;
	right: 24px;

	padding: 12px 9px;
	text-align: center;
	line-height: 1.7em;
	letter-spacing: 1px;
	color: #fff;
	
	background-color: #9d005d;
}


.h_page331_ov{
	display: none;
	z-index:7;
	position: absolute;
	top: 50%;
	right: 24px;
	transform: translate(0, -55%);

	padding: 12px 9px;
	text-align: center;
	line-height: 1.7em;
	letter-spacing: 1px;
	color: #fff;
	
	background-color: #005bab;
}

.h_page341_ov{
	display: none;
	z-index:7;
	position: absolute;
	top: 50%;
	right: 24px;
	transform: translate(0, -55%);

	padding: 12px 9px;
	text-align: center;
	line-height: 1.7em;
	letter-spacing: 1px;
	color: #fff;
	
	background-color: #ef8304;
}

/* --------------------------------- */



.h_page3_re1{
	font-size: 14px;
}

.h_page3_re2:before {
	content: "\A" ;
	white-space: pre ;
}

.h_page3_re2{
	font-size: 30px;
}



.h_page31_text{
	z-index:7;
	position: absolute;
	top: 2em;
	left: 24px;
}

.h_page32_text{
	z-index:7;
	position: absolute;
	top: 2em;
	left: 24px;
}

.h_page33_text{
	z-index:7;
	position: absolute;
	top: 2em;
	left: 24px;
}

.h_page34_text{
	z-index:7;
	position: absolute;
	top: 2em;
	left: 24px;
}


.h_page3_wh_text{
	z-index:7;
	position: absolute;
	bottom: 2.5em;
	left: 0;
	width: 100%;
	text-align: center;
	color: #fff;
	line-height: 1.6em;
}


.h_page3_wh_text_sm{
	font-size: 0.8em;
}


/* ---------------------------------- */

.h_page4{
	background: url(../images/top/topics_back.jpg) no-repeat center center;
	background-size: cover;
	width: 100%;
	height: 100vh;
}

.h_topics{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -55%);
}


.h_topics,
.h_topics a{
	color: #fff;
}

.h_topics a:hover{
	/* color: #c3c391; */
	filter: alpha(opacity=70);
	-moz-opacity:0.70;
	opacity:0.70;

}

.h_topics_title{
	text-align: center;
	font-size: 2.6em;
	letter-spacing: 2px;
	margin-bottom: 40px;
}


.h_topics dt{
	font-size: 0.92em;
	letter-spacing: 1px;
	line-height: 1.7em;
	float: left;
	clear: both;
	margin: 0 0 28px 0;
	padding-top: 2px;
}
.h_topics dd{
	font-size: 0.92em;
	line-height: 1.7em;
	margin: 0 0 30px 6.2em;
}


.h_topics_more{
	text-align: center;
	margin-top: 50px;
}

.h_topics_more a{
	color: #fff;
	font-size: 1em;
	letter-spacing: 1px;
	padding: 10px 30px 10px 0;
	background: url(../images/top/arrow_more.png) no-repeat right center;
}

.h_topics_more a:hover{
	/*
	color: #c3c391;
	background: url(../images/top/arrow_more_ov.png) no-repeat right center;
	*/
	filter: alpha(opacity=70);
	-moz-opacity:0.70;
	opacity:0.70;

}

/* ---------------------------------- */


.h_page5{
	background-color: #000;
	width: 100%;
	height: 100vh;
}

.h_contact_img{
	float: left;
	width: 35%;
	height: 100vh;

	background:url(../images/top/contact_back.jpg) no-repeat center center;
	background-size: cover;
}

.h_contact,
.h_contact a{
	color: #fff;
}

.h_contact a:hover{
	/* color: #c3c391; */
	/*
	filter: alpha(opacity=70);
	-moz-opacity:0.70;
	opacity:0.70;
	*/

}

.h_contact{
	position: relative;
	float: left;
	width: 65%;
	height: 100vh;
}

.h_contact_text{
	position: absolute;
	top: 40px;
	left: 0;
}



.h_contact_area{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -55%);
	line-height: 1.7em;
}

.h_contact_title{
	text-align: center;
	font-size: 2.0em;
	font-weight: bold;
	margin-bottom: 40px;
}

.h_contact_area_text{
	font-size: 0.92em;
	text-align: center;
}


.h_contact_form{
	padding: 30px 30px 30px 30px;
	border: 1px solid #fff;
	text-align: center;
}

.h_contact_title2{
	margin-bottom: 10px;
}


.h_contact_form p{
	font-size: 0.92em;
}

.rakuten p{
	font-size: 0.92em;
}

.h_contact .h_contact_form_link{
	display: block;
	width: 14em;
	margin: 14px auto 0 auto;
	padding: 4px 0 4px;
	background-color: #fff;
	color: #000;
	font-size: 0.92em;
}

.rakuten .h_contact_form {
	margin:20px auto;	
}

.h_contact .rakuten_link{
	width: 14em;
	padding: 30px 30px 30px 30px;
	text-align: center;
	display: block;
	margin: 15px auto 0;
	padding: 4px 0 4px;
	background-color: #fff;
	color: #000;
	font-size: 0.92em;
	position:relative;
}

.h_contact .h_contact_form_link:hover{
	background-color: #4d4d4d;
	color: #fff;
}

.h_contact .rakuten_link:hover{
	background-color: #4d4d4d;
	color: #fff;
}

.h_contact .rakuten_link:after{
  font-family: "Font Awesome 5 Free";
  content: '\f35d';
  font-weight: 900;
  position:absolute;
  right:20px;
  top:5px;
}

.bottom_nav {
	max-width:90%;
	margin:30px auto 0;
}
.menu__second-level {
	display: none;
}
.menu__list {
	float:left;	
}
.h_contact_copy{
	float:right;
	font-size: 0.9em;
}


/* ---------------------------------- */

.section{
	position: relative;
	min-height: 700px;
}





/* ---------------------------------- */

.h_bmuseum{
	display: none;
	
	z-index:7;
	width: 200px;
	height: auto;
	position: absolute;
	top: 50%;
	left: 10%;
	transform: translate(0, -50%);


}

.h_section1_footer{
	z-index:7;
	width: 100%;
	height: 3em;
	position: absolute;
	bottom: 0;
	left: 0;
}

.h_section1_footer_area{
	width: 96%;
	margin: 0 auto;
	text-align: center;
	border-top: 1px solid #ddd;
	padding-top: 0.5em;
	color: #fff;
	font-size: 0.88em;
}

.h_section1_footer_text1{
	font-size: 1.2em;
	letter-spacing: 2px;
	padding-right: 4px;
}
.h_section1_footer_text2{
	font-size: 0.8em;
	padding-right: 2em;
}

/* ---------------------------------- */







/* ### スマートフォン ### */
/* -------------------------------------------------------------------------------- */


@media (max-width: 750px) {

.h_pcbr:before {
	content: "" ;
}
.h_spbr:before {
	content: "\A" ;
	white-space: pre ;
}



.h_pcon_inlne{
	display: none;
}
.h_spon_inlne{
	display: inline;
}


/* ---------------------------------- */
.h_compare{
	padding: 12vh 0 12vh 0;
	height: 76vh!important;
}

.images-compare-container{
	height: 76vh!important;
}
.images-compare-before{
	height: 76vh!important;
}
.h_compare_img_spacer{
	height: 76vh!important;
}

.h_compare_close{
	top: 20px;
	right: 20px;
	transform: translate(0, 0);
}


.h_compare_img1_before{
	background:url(../images/top/compare_img1_before_sp.jpg) no-repeat center center;
	background-size: cover;
}
.h_compare_img1_after{
	background:url(../images/top/compare_img1_after_sp.jpg) no-repeat center center;
	background-size: cover;
}


/* ---------------------------------- */


.h_gnavi{
	top: 20px;
	right: 20px;
	transform: translate(0, 0);
}

/*
.h_gnavi_icon{
	width: 40px;
	height: 31px;
	background: url(../images/top/menu.png) no-repeat center center;
}
*/

.h_menu_close{
	z-index: 99;
	top: 20px;
	right: 20px;
	transform: translate(0, 0);

	/*
	width: 30px;
	height: 30px;
	background: url(../images/top/menu_close.png) no-repeat center center;
	*/
}


.h_menu{
	width: 100%;
	height: auto;
	position: absolute;
}

.h_menu_area{
	position: static;
	padding: 50px 0  50px 40px;
	top: 0;
	right: 0;
	transform: translate(0, 0);
}
.h_menu_area ul li{
	text-align: left;
}

.h_menu_img{
	width: 100%;
	height: auto;
	background-color: #000;
	padding-bottom: 150px;
}

.h_menu_img_part{
	width: 50%;
	height: 300px;
}



.h_menu_img3_text{
	top: 1em;
	left: 8px;
	width: 13px;
	height: auto;
}
.h_menu_img4_text{
	top: 1em;
	left: 8px;
	width: 13px;
	height: auto;
}
.h_menu_img1_text{
	top: 1em;
	left: 8px;
	width: 12px;
	height: auto;
}
.h_menu_img2_text{
	top: 1em;
	left: 8px;
	width: 13px;
	height: auto;
}


.h_menu_img3_back{
	height: 300px;
	border-left: 8px solid #005bab;
}
.h_menu_img3_line_ov{
	border-top: 8px solid #005bab;
	border-bottom: 8px solid #005bab;
	border-right: 8px solid #005bab;

	width: calc(100% - 8px);
	height: calc(300px - 16px);
}

.h_menu_img4_back{
	height: 300px;
	border-left: 8px solid #ef8200;
}
.h_menu_img4_line_ov{
	border-top: 8px solid #ef8200;
	border-bottom: 8px solid #ef8200;
	border-right: 8px solid #ef8200;

	width: calc(100% - 8px);
	height: calc(300px - 16px);
}


.h_menu_img11_back{
	height: 150px;
	border-left: 8px solid #ef8200;
}
.h_menu_img11_line_ov{
	border-top: 8px solid #ef8200;
	border-right: 8px solid #ef8200;

	width: calc(100% - 8px);
	height: calc(150px - 8px);
}


.h_menu_img12_back{
	height: 150px;
	border-left: 8px solid #005bab;
}
.h_menu_img12_line_ov{
	border-bottom: 8px solid #005bab;
	border-right: 8px solid #005bab;

	width: calc(100% - 8px);
	height: calc(150px - 8px);
}


.h_menu_img21_back{
	height: 150px;
	border-left: 8px solid #005bab;
}
.h_menu_img21_line_ov{
	border-top: 8px solid #005bab;
	border-right: 8px solid #005bab;

	width: calc(100% - 8px);
	height: calc(150px - 8px);
}


.h_menu_img22_back{
	height: 150px;
	border-left: 8px solid #9e005d;
}
.h_menu_img22_line_ov{
	border-bottom: 8px solid #9e005d;
	border-right: 8px solid #9e005d;

	width: calc(100% - 8px);
	height: calc(150px - 8px);
}


.h_menu_img_shadow{
	height: 300px;
}
.h_menu_img_shadow2{
	height: 150px;
}

.h_menu_img_wh_text{
	font-size: 0.82em;
}



/* ---------------------------------- */



.h_footer_part{
	display: none;
}



/* ---------------------------------- */
.h_section1_footer{
	bottom: 20px;
	height: auto;
}
.h_section1_footer_area{
	width: 92%;
	text-align: left;
	border-top: none;
}

.h_section1_footer_text1{
	font-size: 1.6em;
}

.h_section1_footer_text3{
	display: block;
}


/* ---------------------------------- */

.h_page12{
	background: url(../images/top/slide2_sp.jpg) no-repeat center center;
	background-size: cover;
}



/* ---------------------------------- */

.h_page2{
	height: auto;
}


.h_recreate_img{
	display: none;
}
.h_recreate_text{
	display: none;
}


.h_recreate{
	float: none;
	width: 92%;
	height: auto;
	margin: 0 auto;
	padding: 70px 0 40px 0;
}


.h_recreate_title{
	font-size: 1.22em;
}

.h_recreate_area_text{
	font-size: 0.88em;
}

.h_recreate_area{
	width: 100%;
	max-width: 100%;
	min-width: 100%;
	position: static;
	top: 0;
	left: 0;
	transform: translate(0, 0);
}


.h_recreate_step1 p,
.h_recreate_step2 p,
.h_recreate_step3 p{
	font-size: 0.84em;
	line-height: 1.2em;
}

.h_recreate_compare{
	width: 60%;
	float: none;
	margin: 30px auto 0 auto;
}




/* ---------------------------- */

.h_recreate_title{
	text-align: left;
}



/* ---------------------------- */

.h_page3{
	height: 70vh;
	padding: 15vh 0 15vh 0;
}
.h_page3 .swiper-container{
	height:100vh;
}


.h_page3_sub{
	height: 70vh;
}

.h_page31{
	width: 100%;
	height: 70vh;
}
.h_page32{
	width: 100%;
	height: 70vh;
}
.h_page33{
	width: 100%;
	height: 70vh;
}
.h_page34{
	width: 100%;
	height: 70vh;
}


.h_page3_shadow{
	height: 70vh;
}
.h_page3_shadow2{
	height: 35vh;
}



.h_page311_back{
	height: 35vh;
	border-left: 12px solid #ef8200;
}
.h_page311_line_ov{
	border-top: 12px solid #ef8200;
	border-right: 12px solid #ef8200;
	width: calc(100% - 12px);
	height: calc(35vh - 12px);
}



.h_page312_back{
	height: 35vh;
	border-left: 12px solid #005bab;
}
.h_page312_line_ov{
	border-bottom: 12px solid #005bab;
	border-right: 12px solid #005bab;
	width: calc(100% - 12px);
	height: calc(35vh - 12px);
}



.h_page321_back{
	height: 35vh;
	border-left: 12px solid #005bab;
}
.h_page321_line_ov{
	border-top: 12px solid #005bab;
	border-right: 12px solid #005bab;
	width: calc(100% - 12px);
	height: calc(35vh - 12px);
}



.h_page322_back{
	height: 35vh;
	border-left: 12px solid #9e005d;
}
.h_page322_line_ov{
	border-bottom: 12px solid #9e005d;
	border-right: 12px solid #9e005d;
	width: calc(100% - 12px);
	height: calc(35vh - 12px);
}



.h_page331_back{
	height: 70vh;
	border-left: 12px solid #005bab;
}
.h_page331_line_ov{
	border-top: 12px solid #005bab;
	border-bottom: 12px solid #005bab;
	border-right: 12px solid #005bab;
	width: calc(100% - 12px);
	height: calc(70vh - 24px);
}



.h_page341_back{
	height: 70vh;
	border-left: 12px solid #ef8200;
}


.h_page341_line_ov{
	border-top: 12px solid #ef8200;
	border-bottom: 12px solid #ef8200;
	border-right: 12px solid #ef8200;
	width: calc(100% - 12px);
	height: calc(70vh - 24px);
}

.h_page311_ov{
	right: 12px;
}
.h_page312_ov{
	right: 12px;
}
.h_page321_ov{
	right: 12px;
}
.h_page322_ov{
	right: 12px;
}
.h_page331_ov{
	right: 12px;
}
.h_page341_ov{
	right: 12px;
}



.h_page31_text{
	left: 12px;
	width: 18px;
	height: auto;
}
.h_page32_text{
	left: 12px;
	width: 18px;
	height: auto;
}
.h_page33_text{
	left: 12px;
	width: 18px;
	height: auto;
}
.h_page34_text{
	left: 12px;
	width: 18px;
	height: auto;
}




.h_page3_wh_text{
	font-size: 0.9em;
}


/* ---------------------------------- */

.h_page4{
	height: auto;
}

.h_topics{
	position: static;
	top: 0;
	left: 0;
	transform: translate(0, 0);

	width: 92%;
	margin: 0 auto;
	padding: 50px 0 50px 0;
}


.h_topics_title{
	font-size: 1.6em;
	margin-bottom: 30px;
}


.h_topics dt{
	float: none;
	margin: 0 0 0 0;
	line-height: 1.5em;
}
.h_topics dd{
	margin: 0 0 30px 0;
	line-height: 1.5em;
}


/* ---------------------------------- */

.h_page5{
	height: auto;
}

.h_contact_img{
	display: none;
}

.h_contact_text{
	display: none;
}

.h_contact{
	float: none;
	width: 100%;
	height: auto;
	padding: 50px 0 50px 0;
}


.h_contact_area{
	position: static;
	top: 0;
	left: 0;
	transform: translate(0, 0);
}

.h_contact_title{
	font-size: 1.4em;
}

.h_contact_area_text{
	font-size: 0.88em;
}


.h_contact_form{
	box-sizing: border-box;
	width: 90%;
	margin: 0 auto;
	font-size: 0.88em;
}



/* ---------------------------------- */

.section{
	min-height: auto;
	background-color: #000;
	height: auto!important;
}





/* ---------------------------------- */

.h_bmuseum{
	width: 60px;
	top: 20px;
	left: 20px;
	transform: translate(0, 0);
}





} /*  @media (max-width: 750px)  */




@media (max-height: 500px) {

.h_page31_text{
	width: 12px;
	height: auto;
	top: 10px;
}
.h_page32_text{
	width: 12px;
	height: auto;
	top: 10px;
}
.h_page33_text{
	width: 12px;
	height: auto;
	top: 10px;
}
.h_page34_text{
	width: 12px;
	height: auto;
	top: 10px;
}



} /*  @media (max-width: 500px)  */



/*20210831*/

.accordion_btn {
	display: inline-block;
	color: #fff !important;
}
.accordion_btn:hover {
	cursor:pointer;
	opacity:0.8;
}


.menu__second-level{
	width: 14em;
	margin: 0 auto;
	text-align:left;
	padding-left: 20px;
}
.menu__second-level li {
    padding: 0;
    font-size: 12px;
    margin-top: 5px;
	position:relative;
}
.menu__second-level li:before {
	position: absolute;
    content: "";
    top: 11px;
    left: -7px;
    border: 3px solid transparent;
    border-left: 4px solid #fff;
}
.menu__second-level li:hover {
	text-decoration:underline;	
}
.menu__second-level li a {
	display: inline;
}