@charset "utf-8";
/* CSS Document */

/* == header == */
header { width: 100%; z-index: 10000; transition: 300ms 0s ease;}
header [class*="wth_"] { }
header [class*="wth_"] *{ transition: 300ms 0s ease;}
#header_logo { display: block; z-index: 500; font-family: 'Open Sans',YuGothic,/* For Mac */ "Yu Gothic", /* For Windows */ "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", /* For Mac Fallback */ Meiryo, /* For Windows Fallback */ sans-serif; padding:1em 0;}

#header_logo .brandlogo{font-size: 1em;}
#header_logo .brandlogo img{width: 100%;}
#header_logo .GandM{ line-height: 1; font-size: 2.3rem; display: inline-flex; align-items: center; padding-bottom: 0.3em; border-bottom: dotted 1px #000; justify-content: center;}
#header_logo .GandM .logo_box{  }
#header_logo .GandM .logo_box:first-child{}
#header_logo .GandM .logo_box img{width: auto; height: 74px;}

#header_logo .GandM p{ display: inline-block; width: 10%;}
#header_logo .GandM p img{ width: 35%;}
#header_logo .GandM img{}
#header_logo .GandM small{font-size: 90%;}
#header_logo .wellness{color: #000; line-height: 1; font-size: clamp(1rem, 4.3vw, 3rem); text-align: center; padding-top: 0.5em; font-family: 'Open Sans', sans-serif; font-weight: 700; letter-spacing: 0em;}
#header_logo [class*="wth_"]{}

#header_logo a{ width: 270px; display: inline-block;}
#header_logo img { }
#header_nav {display: block; z-index: 200; width: 100%; }
#header_nav ul{ display: flex; align-items: stretch;}
#header_nav a { padding: 1em 0; display: flex; flex-direction: column; justify-content: center; text-decoration: none; text-align: center; background-color: #001960; font-weight: bold; line-height: 1.4; height: 100%; font-size: 75%; color: #fff; border-left:1px solid #fff; }
#header_nav a:before{/*content: "";*/ width: 1em; height: 1em; display: inline-block; background-image: url(../img/arr_02.svg); background-repeat: no-repeat; vertical-align: text-bottom; background-position: left top; margin-right: 0.25em;;}
#header_nav a .f_alph{line-height: 1; letter-spacing: 0.075em; font-size: 110%; padding-bottom: 0.25em;}
#header_nav a.nav_inq{ color: #fff; background-color: #272727;}
#header_nav a.nav_inq .f_alph{ border-bottom-color: #fff; width: 90%; margin-left: 5%;}
#header_nav ul li:first-child a{border-left-style:none;}
#header_nav ul li:nth-last-child(-n+2) a{background-color:#bb1b21; color: #fff; font-size: 100%}
#header_nav ul li:nth-last-child(-n+2) a:before{ background-image: url(../img/arr_02.svg);}
#header_nav [class*="comm_btn"]{ margin-bottom: 0; padding: 0.1em 2.2em; font-weight: 600;}
#header_nav [class*="comm_btn"][target="_blank"]:after{ right: 15px; width: 14px; height: 14px;}

#header_nav.menu_fix{position:fixed; top:0; left:0; }


/*#header_nav a:before{
	content: "";
	display: inline-block;
	width: 0.8em;
	height: 0.8em;
	background-image: url(../img/arr_black.svg);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;-ms-transform: rotate(0deg); -webkit-transform: rotate(0deg); transform: rotate(0deg);

	background-position: center top;
	margin-right: 0.5em;
	transition: transform 300ms 0s ease;
}
*/
#header_nav a:hover:before{	/*-ms-transform: rotate(90deg); -webkit-transform: rotate(90deg); transform: rotate(90deg);*/ transition: transform 300ms 0s ease;}

header.bg_wh{ }
header.bg_wh #header_logo{  }
header.bg_wh #header_logo a{  }
header.bg_wh #header_nav a{}

.header_nav_wrap { display: inline-block; vertical-align: top; position: relative;}
.header_nav_wrap.to_conv{ margin-right: 10px; margin-left: 10px; }
.header_nav_wrap.to_conv .header_nav_l1{ background-color: #0783d1;	padding-left: 1.5em; padding-right: 1.5em; line-height: 1.4em; text-align: center; border-bottom-right-radius: 0.5em; border-bottom-left-radius: 0.5em; padding-top: 1em; padding-bottom: 1.25em;}

.header_nav_wrap.to_login{ margin-right: 10px;}
.header_nav_wrap.to_login .header_nav_l1{ background-color: #686868; padding-left: 1em; padding-right: 1em;	line-height: 40px; border-radius: 4px;}


.header_nav_wrap a:after{
/*content: "";
position: absolute;
right: 0px;
top: 0px;
bottom: 0px;
width: 1px;
height: 1.4em;
margin: auto;
background-color: #FFFFFF;*/
}
.header_nav_wrap a:after:hover {
opacity: 1!important;
}
li.header_nav_wrap:last-child a:after{

}
.header_nav_wrap-hasChild .header_nav_children {
	display: block;
	position: absolute;
	top: 60px;
	left: 100%;
	background-color: #3a3a3a;
	width: 200%;
	opacity: 0;
	transition: opacity 300ms 0s ease, left 300ms 0s ease;
	padding: 0em 0.5em;
	font-size: 0.9rem;
}
.header_nav_children-main,
.header_nav_children-sup { padding: 0.4em 0; text-align: left;
}
.header_nav_children-sup { border-top: 1px solid rgba(124,124,124,0.7);
}
.header_nav_l1,
#header_nav a#facebook {
	display: inline-block;
	font-size: 1rem;
	/*line-height: 60px;*/
	position: relative;
}
.header_nav_l1:before {
 /*   content: ""; display: block; position: absolute; width: 0; height: 2px; background: #ffffff; bottom: 18px; left: 0; right: 0; margin: auto; transition: width 300ms 0s ease;
*/
}
.header_nav_l1:hover:before { width: 80%;
}
.header_nav_wrap.sns_nav{ width: auto;}
.header_nav_wrap.sns_nav img{ width: auto; height: 2em;}
.header_nav_wrap.sns_nav .header_nav_l1{ padding: 0 0;}


.header_nav_wrap-hasChild-on .header_nav_children { left: 0; opacity: 1;
}
#header_nav a#facebook { display: inline-block; width: auto; height: 1.3em; position: relative; bottom: -0.3em;
}
#header_nav a#facebook img { display: block; width: 1.3em;
}
.header_nav_l2 { display: block; padding: 0.2em 0.5em; margin: 0.5em; position: relative; transition: background 300ms 0s ease;
}
.header_nav_l2:before {
	content: "";
	display:none;
	/* [disabled]display: block; */
	background: transparent;
	position: absolute;
	border-top: 1px solid #999999;
	border-left: 1px solid #999999;
	width: 5px;
	height: 5px;
	top: 0;
	left: 0;
	transition: width 300ms 0s ease, height 300ms 0s ease;
}
.header_nav_l2:after { content: "";
	display:none; /* [disabled]display: block; */ background: transparent; position: absolute; border-bottom: 1px solid #999999; border-right: 1px solid #999999; width: 5px; height: 5px; bottom: 0; right: 0; transition: width 300ms 0s ease, height 300ms 0s ease;
}
.header_nav_l2:hover {}
.header_nav_l2:hover:before, .header_nav_l2:hover:after { width: 100%; height: 100%; }
.header_nav_l2 .blu_series{
	color: #4a94c2;
	margin-right: 0.5em;
	margin-left: 0.5em;
}
.header_nav_l2 .blk_series{
	color: #969696;
	margin-right: 0.5em;
	margin-left: 0.5em;
}

/**footer**/
footer{
	padding: 1em; background-color: #000; color: #fff;
}
footer .footer-inner{
margin-left: auto;
margin-right: auto;
text-align: center;
}
footer .footer-inner .footer_logo{
width: 180px;
margin-left: auto;
margin-right: auto;
}
footer .footer-inner .footer_logo img{ width: 100%; height: auto;}

footer .footer-inner .foot_office{
	text-align: center;
}
footer .footer-inner .foot_office li{}

footer .footer-inner .foot_copy{

}

@media only screen and (max-width: 768px) {

    header{ position: fixed; }
    header [class*="wth_"]{}
    #header_logo{padding-bottom: 0.5em; padding-top: 0.4em; height: 64px; display: flex; align-items: center; background-color: #fff; position: fixed; top:0;}
    #header_logo .GandM{ }
    #header_logo .GandM .logo_box{ width: 30%; }
    #header_logo .GandM .logo_box:first-child{}
    #header_logo .GandM .logo_box img{ width: 100%; height: auto;}
    #header_logo .GandM p{ }
    #header_logo .GandM p img{ width: 35%;}
    #header_logo .GandM img{}
    #header_logo .GandM small{}
    #header_logo .wellness{ line-height: 1.2; font-size:6vw; letter-spacing: 0.05em;}

	#header_logo a{ width: 50%;}
	#header_logo img {}
	#header_btn_sp { display: block; width: 64px; height: 64px; position: absolute; top: 0; right: 0; z-index: 1000; }
    #header_btn_sp span { pointer-events: none; display: block; width: 24px; height: 2px; background: #000; position: absolute; top: 0; bottom: 0; right: 18px; margin: auto; transition: transform 300ms 0s ease, width 300ms 0s ease, top 300ms 0s ease, bottom 300ms 0s ease, right 300ms 0s ease; }
    #header_btn_sp span:first-child { top: 16px; }
    #header_btn_sp span:last-child { bottom: 16px; }
    .header_nav-on #header_btn_sp span { right: 12px; width: 18px; }
    .header_nav-on #header_btn_sp span:first-child { -ms-transform: rotate(-45deg); -webkit-transform: rotate(-45deg); transform: rotate(-45deg); width: 12px; top: 7px; right: 9px; }
    .header_nav-on #header_btn_sp span:last-child { -ms-transform: rotate(45deg); -webkit-transform: rotate(45deg); transform: rotate(45deg); width: 12px; bottom: 7px; right: 9px; }
    #header_nav { width: 100%; height: 100vh; position: absolute;; float: none; border-style: none; /*top: 0;*/ right: -100%; background: #fff; overflow: scroll; transition: right 300ms 0s ease; }
    #header_nav a{ padding: 1em 0.5em 1em 0.5em;border-left-style: none; justify-content: flex-start; align-items: center; flex-direction: row;}
    #header_nav a .f_alph{ padding-right: 0.5em; padding-left: 0.25em; padding-bottom: 0;font-size: 140%;}
	/*#header_nav a:before{ width: 0.6em; height: 0.6em;}*/
	#header_nav a[class*="comm_btn"] {
	display: block; padding-top: 0; padding-bottom: 0;
	margin: 0; margin-top: 1em; line-height: 3em;
	width: 80%;
	min-width: initial;
	color: #fff; }
    #header_nav [class*="comm_btn"][target="_blank"]:after{ right: 24px; width: 20px; height: 20px;}
    .header_nav_l1,#header_nav a#facebook { padding: 0;}
	#header_nav a[class*="comm_btn"]:before{ display: none; }
    #header_nav ul{	text-align: center; padding-top: 0.5em; padding-left: 5vw!important; padding-right: 5vw!important; justify-content: space-between;}
	.header_nav_wrap.to_conv{
	margin-top: 20px;
	margin-right: 0px;
	margin-left: 0;
	text-align: center;
	}
	.header_nav_wrap.to_conv .header_nav_l1 {
		line-height: 1.4em;
		border-radius: 0.5em;
		padding-top: 0.5em;
		padding-bottom: 0.5em;
		text-align: center!important;
	}
	.header_nav_wrap.to_login{ margin-top: 8px; margin-right: 0px; text-align: center;}
    .header_nav-on #header_nav { right: 0; }
    .header_nav_wrap-hasChild .header_nav_children { background: transparent; position: static; top: auto; left: auto; padding: 0 1em 0 1.5em; text-align: left; opacity: 1; max-height: 0; overflow: hidden; transition: max-height 500ms 0s ease; }
    .header_nav_wrap-hasChild-on .header_nav_children {display: block; max-height: 100vh; }
	li.header_nav_wrap:last-child a:after{ display: inline-block;}
    #header_nav ul li { display: block; margin-bottom: 1px;}
	#header_nav ul li:last-child{width: 100%!important;}
    #header_nav ul li a.header_nav_l1 {width: 100%; font-size: 4vw; letter-spacing: 0.05em; text-align: center;}
	.header_nav_wrap.sns_nav{ width: auto; text-align: center; display: inline-block!important; padding: 0!important; margin-top: 10px;}
	.header_nav_wrap.sns_nav img{ width: auto; height: 3em;}
	.header_nav_wrap.sns_nav .header_nav_l1{ padding: 0 0!important;}
	
	.header_nav_l1:before { /*  bottom: 8px; right: auto; left: 1em;
	*/ }
    .header_nav_l1:hover:before { width: calc( 100% - 2em ); }
    .header_nav_children-main { padding-top: 0; }
    .header_nav_children-main, .header_nav_children-sup { text-align: left; }
	.header_nav_l2{	padding: 0.2em;	margin: 0; }
	
	
	 /**footer**/ footer{ padding: 1em; font-size: 0.8rem; }
    footer .footer-inner{ margin-left: auto; margin-right: auto; text-align: center; }


}

