@charset "shift_jis";
/*?��E?��S?��E?��y?��E?��[?��E?��W?��E?��K?��E?��pCSS -------------------------------------------------------------- */

@media screen and (min-width:737px) {


* {
	margin		: 0;
	padding		: 0;
	font-style	: normal;
	font-size	: 100%;
}

body {
	/*font-family: "Hiragino Kaku Gothic Pro W3", "?��E?��q?��E?��?��E?��?��E?��M?��E?��m?��E?��p?��E?��S Pro W3", Osaka, "?��E?��?��E?��?��E?��C?��E?��?��E?��?��E?��I", Meiryo, "MS P Gothic", "?��E?��l?��E?��r ?��E?��o?��E?��S?��E?��V?��E?��b?��E?��N", sans-serif;*/
	/*font-family: "Hiragino Kaku Gothic Pro W3", "?��E?��q?��E?��?��E?��?��E?��M?��E?��m?��E?��p?��E?��S Pro W3", Osaka,"MS P Gothic", "?��E?��l?��E?��r ?��E?��o?��E?��S?��E?��V?��E?��b?��E?��N", sans-serif;*/
	font-family: "?��E?��?��E?��?��E?��C?��E?��?��E?��?��E?��I", Meiryo, Osaka, "?��E?��l?��E?��r ?��E?��o?��E?��S?��E?��V?��E?��b?��E?��N", "MS PGothic", sans-serif;
    margin: 0;
	margin: 0;
	padding: 0;
	text-align: center;
	font-size: 75%;
	line-height:1.5;
	color: #333333;
}

body{
overflow-x : hidden;
overflow-y : auto;
}
@media screen and (max-width: 1050px) {
/*html{overflow-x :visible !important;}*/
body{overflow-x : hidden !important;}

}


div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, th, td{  
margin:0; padding:0;  
}  
table{  
border-collapse:collapse; border-spacing:0;  
}  
fieldset, img{  
border:0;  
} 
img {
vertical-align: top;
-webkit-backface-visibility: hidden;
}
/*address, caption, cite, code, dfn, em, strong, th, var{
font-style:normal; font-weight:normal;  
}*/

address, caption, cite, code, dfn, em, th, var{
font-style:normal; font-weight:normal;  
}
ol, ul{  
list-style:none;  
} 
caption, th{  
text-align:left;  
}
h1, h2, h3, h4, h5, h6{  
font-size:100%; font-weight:normal;  
}
hr {
display: none;
}

abbr, acronym{  
border:0;  
}
/* ?��E?��?��E?��?��E?��_?��E?��?��E?��?��E?��u?��E?��?��E?��?��E?��E?��E?��U?��E?��?��E?��?��E?��?��E?�� */
.clearfix:after {
        content: ".";
        display: block;
        clear: both;
        height: 0;
        visibility: hidden;
}
.clearfix {
        display: inline-block;
}
/* IE-mac \*/
* html .clearfix {
        height: 1%;
}
.clearfix {
        display: block;
}
/* End IE-mac */

.clear{
clear:both;
} 


.contents p.btn a{
	text-indent: -10000px;
	outline: none;
	overflow: hidden;
	display: block;
}



/*------------------------------------
?��E?��?��E?��?��E?��?��E?��?��E?��N 
------------------------------------*/ 
a:link, a:visited {
	text-decoration:none;
	/*color: #BD0612;*/
	color:#333;
}

a:hover {
	text-decoration:none;
}


/*------------------------------------
?��E?��?��E?��?��E?��b?��E?��p?��E?��[ 
------------------------------------*/ 

/*#wrapper_all {
	position: relative;
	z-index: 1;
}*/


/* .disp_sp{
	display:none;
} */


#topcontrol{
	bottom: 34px;
	/*left: 56%;*/
	/*margin: 0 0 0 450px;*/
	    z-index: 99;
}

@media screen and (max-width: 1300px) {
	#topcontrol{
	bottom: 34px;
	left: auto;
	margin: 0 0% 0 0;
	    z-index: 99;
}
}

/*------------------------------------
?��E?��w?��E?��b?��E?��_?��E?��[ 
------------------------------------*/ 


#header {
	/*width: 1000px;*/
	/*background: #FFF url(../img/img-common/hed_bg_01.jpg) no-repeat left top;
	margin: 0px auto;
	text-align:left;
	height: 128px;*/
}

#header h1 {
	font-size: 12px;
	margin: 0px;
	padding: 7px 30px 0px 0px;
	text-align: right;
	color: #666666;
	width: 970px;
    margin: 0 auto;
}
#header h1 span{
	color: #28BBEC;
	font-weight: bold;
}

#gnav {
	background: url(../img/img-common/hed_bg01.gif) repeat-x;
    /*position: fixed !important; */ 
    position: absolute;  
	left: 0px;
	top: 40px;
	right: 0px;
	bottom: 0px;
	height: 88px;
	z-index: 99;
	text-align: center;
	width: 100%;
	font-family:"?��E?��?��E?��?��E?��C?��E?��?��E?��?��E?��I", Meiryo, Osaka, "?��E?��l?��E?��r ?��E?��o?��E?��S?��E?��V?��E?��b?��E?��N", "MS PGothic", sans-serif;

}

.index #gnav{
	padding:0 0 10px;
	background: #FFF url(../img/img-common/hed_bg01.gif) repeat-x;
}

.gnav2{
	top: 0px !important;
}

.gnav_fixed{
	top: 0px;
}
#gnav dl{
	/*background: url(../img/img-common/head_bg02.gif) no-repeat 695px 0px;*/
	padding:0px;
	margin: 0px auto;
	width: 980px;
	text-align: left;
	_text-align: center;
}
#gnav dt {
	float: left;
	margin: 0 41px 0 0;
	padding: 0;
}
#gnav dl dd{
	float:left;
	padding: 16px 0 0;
	/*margin: 0 30px 0 0;*/
	margin: 0 25px 0 0;
	}
#gnav dl dd.none{
	float:none;
	clear: both;
	padding: 0;
	margin: 0;
	}
#gnav dl dd a{
	width:64px;
	height:19px;
	display:block;
	/* text-indent:-10000px; */
	/* outline:none; */
	/* overflow:hidden; */
	/* background:url(../img/img-common/hed_nav01.gif) no-repeat left top; */
	color: #fff;
	text-decoration: none;
	font-size: 125%;
	letter-spacing: 0em;
}

#gnav dl dd a:hover{
	color:#333;
}

#gnav dl dd.method02 a{
	width:60px;
	background:url(../img/img-common/hed_nav02.gif) no-repeat left top;
}
#gnav dl dd.method25 a{
	width:79px;
	/*background:url(../img/img-common/hed_nav25.gif) no-repeat left top;*/
}

#gnav dl dd.method26 a{
	width:50px;
	height: 50px;
	background:url(../img/img-common/hed_nav26.gif) no-repeat left top;
	display:block;
	text-indent:-10000px;
	outline:none;
	overflow:hidden;
}

#gnav dl dd.method26{
	margin:0;
	padding: 0 0 0 10px;
}

#gnav dl dd.method26 a{
	width:50px;
	height: 50px;
	background:url(../img/img-common/hed_nav26.gif) no-repeat left top;
}
#gnav dl dd.method26 a:hover {
	background-position: right bottom;
}

#gnav dl dd.method03{
	/*margin:0;*/
	}
#gnav dl dd.method03 a{
	width:67px;
	/*background:url(../img/img-common/hed_nav03.gif) no-repeat left top;*/
}

#gnav dl dd.method04 {
	padding: 0 35px 0 0;
	float: right;
	margin: 0;
}
#gnav dl dd.method04 a{
	width: 250px;
	height: 50px;
	background:url(../img/img-common/hed_nav11.gif) no-repeat left top;
}
#gnav dl dd.method05 a{
	/*background:url(../img/img-common/hed_nav19.gif) no-repeat left top;*/
}
#gnav dl dd a:hover{
	background-position: right top;
}
#gnav dl dd.method04 a:hover {
	background-position: right bottom;
}
#gnav dl dd.method06 {
	background:url(../img/img-common/hed_tel.gif) no-repeat left top;
	padding: 14px 0 10px 35px;
	margin: 0;
	color:#fff;
	font-size:140%;
}

#gnav ul {
	margin: 0px;
	padding: 12px 30px 0px 0px;
	float: right;
}
#gnav ul li {
	float: left;
	margin: 0px 22px 0px 0px;
	padding: 0px;
}
#gnav ul li.method07 {
	/*margin: 3px 25px 0 0;*/
}
#gnav ul li a{
	width:100px;
	height:15px;
	display:block;
	text-indent:-10000px;
	outline:none;
	overflow:hidden;
	background:url(../img/img-common/hed_nav04.gif) no-repeat left top;
}
#gnav ul li.method02 a{
	width:66px;
	background:url(../img/img-common/hed_nav15.gif) no-repeat left top;
}
#gnav ul li.method03 a{
	width:116px;
	background:url(../img/img-common/hed_nav12.gif) no-repeat left top;
}
#gnav ul li.method04{
	margin: 0px 25px 0px 0px;
}
#gnav ul li.method04 a{
	width:124px;
	height:19px;
	background:url(../img/img-common/hed_nav21.gif) no-repeat left top;
}
#gnav ul li.method05 a{
	width:90px;
	background:url(../img/img-common/hed_nav14.gif) no-repeat left top;
}
#gnav ul li.method06 a{
	width:142px;
	background:url(../img/img-common/hed_nav18.gif) no-repeat left top;
}
#gnav ul li.method07 a{
	width:40px;
	background:url(../img/img-common/hed_nav16.gif) no-repeat left top;
}
#gnav ul li.method08 {
	margin: 1px 0 0 0;
}
#gnav ul li.method08 a{
	width:72px;
	background:url(../img/img-common/hed_nav22.gif) no-repeat left top;
	height: 17px;
}
#gnav ul li.method09 a{
	width:66px;
	background:url(../img/img-common/hed_nav23.gif) no-repeat left top;
	height: 15px;
}
#gnav ul li.method10 a{
	width:110px;
	background:url(../img/img-common/hed_nav24.gif) no-repeat left top;
	height: 15px;
}
#gnav ul li.method11 a{
	width:165px;
	background:url(../img/img-common/hed_nav13.gif) no-repeat left top;
	height: 15px;
}
#gnav ul li a:hover{
	background-position: left bottom;
}

#gnav dl dd.none a span{
	color: #28BBEC;
	font-size:60%;
	vertical-align:top;
	line-height:1.5;
	padding:0 5px 0 0;
}

#gnav dl dd.none a{
	background: none;
	outline: inherit;
	overflow: visible;
	text-indent: 0;
	color: #333;
	text-decoration: none;
	font-size: 104%;
	letter-spacing:0.05em;
	line-height:1.4;
	width:auto;
}

#gnav dl dd.none a:hover{
	color: #28BBEC;
}

#wrapper_all .wrapper  {
	/*position: absolute;*/
	width: 100%;
	/*height: 1070px;*/
	background:#FFF;
}

#wrapper_all #vision  {
	height: 770px;
}




#wrapper_all .wrapper  {
	/*position: absolute;*/
	width: 100%;
	/*height: 1070px;*/
}

.contents  {
	text-align: left;
}


#wrapper_all .contents  {
	margin: 0 auto;
	/*width: 980px;*/
	width: 100%;
	text-align: left;
}
#index {
	top: 0;
	left: 0;
	z-index: 1;
}
/*#works?��E?��Z?��E?��N?��E?��V?��E?��?��E?��?��E?��?��E?��?��E?��͐V?��E?��K?��E?��y?��E?��[?��E?��W?��E?��?��E?��?��E?��ł�?��E?��?��E?��?��E?��?��E?��?��E?��ߍ폜?��E?��ς�*/
#works {
	background: url(../img/img-common/contents_bg01.gif) repeat-y center top;
	top: 3680px;
	left: 0;
	z-index: 2;
	height: 1472px;
}

/**+html #works {
	background: url(../img/img-common/contents_bg01_2.gif) repeat-y center top;
}*/


#vision {
	/*background: url(../img/img-common/contents_bg02.gif) repeat-y center top;*/
	background:#F7F7F7;
	/*top: 7200px;*/
	/*top: 5070px;*/
	/*top:7126px;*//*(works?��E?��Z?��E?��N?��E?��V?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��)*/
	/*top:3680px;(works?��E?��Z?��E?��N?��E?��V?��E?��?��E?��?��E?��?��E?��?��E?��?��?��?��?��?��E?��)*/
	/*top: 4952px;(?��E?��?��E?��works?��E?��Z?��E?��N?��E?��V?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��)*/
	left: 0;
	z-index: 3;
}
/**+html #vision {
	background: url(../img/img-common/contents_bg02_2.gif) repeat-y center top;
}
*/


#service {
	background: url(../img/img-common/contents_bg03.gif) repeat-y center top;
	top: 5300px;
	/*top: 8398px;*//*(works?��E?��Z?��E?��N?��E?��V?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��)*/
	/*top: 4952px;(works?��E?��Z?��E?��N?��E?��V?��E?��?��E?��?��E?��?��E?��?��E?��?��?��?��?��?��E?��)*/
	/*top: 6324px;(?��E?��?��E?��works?��E?��Z?��E?��N?��E?��V?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��)*/
	left: 0;
	z-index: 4;
}


#maintenance {
	background: url(../img/img-common/contents_bg003.gif) repeat center top;
	top: 8398px;/*(works?��E?��Z?��E?��N?��E?��V?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��)*/
	top: 7348px;
	/*top: 4952px;(works?��E?��Z?��E?��N?��E?��V?��E?��?��E?��?��E?��?��E?��?��E?��?��?��?��?��?��E?��)*/
	/*top: 6324px;(?��E?��?��E?��works?��E?��Z?��E?��N?��E?��V?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��)*/
	left: 100%;
	z-index: 5;
}

#seo {
	background: url(../img/img-common/contents_bg003.gif) repeat center top;
	top: 8398px;/*(works?��E?��Z?��E?��N?��E?��V?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��)*/
	top: 7348px;
	/*top: 4952px;(works?��E?��Z?��E?��N?��E?��V?��E?��?��E?��?��E?��?��E?��?��E?��?��?��?��?��?��E?��)*/
	/*top: 6324px;(?��E?��?��E?��works?��E?��Z?��E?��N?��E?��V?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��)*/
	left: 200%;
	z-index: 6;
}
#system {
	background: url(../img/img-common/contents_bg003.gif) repeat center top;
	top: 8398px;/*(works?��E?��Z?��E?��N?��E?��V?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��)*/
	top: 7348px;
	/*top: 4952px;(works?��E?��Z?��E?��N?��E?��V?��E?��?��E?��?��E?��?��E?��?��E?��?��?��?��?��?��E?��)*/
	/*top: 6324px;(?��E?��?��E?��works?��E?��Z?��E?��N?��E?��V?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��)*/
	left: 300%;
	z-index: 7;
}
#consulting {
	background: url(../img/img-common/contents_bg003.gif) repeat center top;
	top: 8398px;/*(works?��E?��Z?��E?��N?��E?��V?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��)*/
	top: 7348px;
	/*top: 4952px;(works?��E?��Z?��E?��N?��E?��V?��E?��?��E?��?��E?��?��E?��?��E?��?��?��?��?��?��E?��)*/
	/*top: 6324px;(?��E?��?��E?��works?��E?��Z?��E?��N?��E?��V?��E?��?��E?��?��E?��?��E?��?��E?��?��E?��)*/
	left: 400%;
	z-index: 8;
}

#blog {
	top: 6290px;
}

/*#wrapper_all #contact {
	background: url(../img/img-common/contents_bg01.gif) repeat-y center top;
	top: 9770px;
	top: 9155px;
	left: 0;
	z-index: 9;
	height: 2030px;
}*/



.container{
	/*position:absolute;*/
	/*top: 252px;*/
	/*top: 156px;
	left: 0;
	text-align: center;
	width: 100%;*/
}

#section3{
	top:60px;
	padding-top: 60px;
	/*margin-top: -60px;*/
	background: #F7F7F7;
	padding-bottom: 60px;
}

/*#section2?��E?��͋�works?��E?��G?��E?��?��E?��?��E?��A*/
#section2 h2, #section3 h2, #section4 h2, #section5 h2, #section6 h2, #section7 h2, #section8 h2, #section9 div.iframe, #section9 h2{
	/* padding: 128px 0 0; */
}

/*#section9 h2{
	padding: 128px 0 90px;
}
*/

#teiten {
    position: fixed !important;  
    position: absolute;  
	bottom: 40px;
	right: 0px;
	height: 88px;
	z-index: 99;
}

#teiten {
    position: fixed !important;  
    position: absolute;  
	bottom: 40px;
	right: 50px;
	height: 420px;
	width: 159px;
	z-index: 99;
}


#teiten p a{
	height: 200px;
	width: 159px;
	margin-bottom: 30px;
	background: url(../img/img-common/teiten_bnr02.png) no-repeat left top;
	text-indent: -10000px;
	outline: none;
	overflow: hidden;
	display: block;
	float:right;
}

#teiten p.btn_01 a{
	height: 176px;
	width: 159px;
	background: url(../img/img-common/teiten_bnr03.png) no-repeat left top;
}

#teiten p a:hover{
	background-position: right top;
}

#teiten .flash_block{
	display: block;
	position:relative;
	width:159px;
	height:300px;
	margin-top:180px;
	margin-top:0px;
}

#teiten .flash_block p{
	display: block;
	position:absolute;
	left:-85px;
}

.contents p.consult_btn{
	clear:both;
	/*padding:50px 0 100px 35px;*/
	padding:50px 0 50px 35px;
	}
.contents p.consult_btn a{
	background:url(../img/img-index/btn_24.gif) no-repeat left top;
	width:933px;
	height:131px;
	display:block;
	text-indent:-9999px;
	outline: none;
	overflow:hidden;
	}
.contents p.consult_btn a:hover{
	background-position:right bottom;
	}

.contents #fot_bnr p.btn {
	margin: 0 0 0 70px;
	padding: 0 0 50px;
}
.contents #fot_bnr p.btn a {
	background: url(../img/img-common/fot_bnr01.gif) no-repeat left top;
	width: 840px;
	height: 150px;
}
.contents #fot_bnr p.btn a:hover{
	background-position:right bottom;
}




/*?��E?��X?��E?��N?��E?��?��E?��?��E?��[?��E?��?��E?��?��E?��?��E?��Œ�G?��E?��i?��E?��r*/
#hideHeader {
  position: fixed !important;  
	z-index: 99;
	top: -80px;/* height */
	left: 0;
	width: 100%;
	height: 66px;
	visibility: hidden;
  top: -50px;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}

div#hideHeader.fixed {
	top: 0;/* height */
	display: block;
	visibility: visible
}
div#hideHeader .gnav {
  background: #EEEEEE;
  height: 66px;
}
div#hideHeader .gnav .menu li.menu__mega:hover .second-level {
    top: 66px;
}
div#hideHeader .gnav .menu {
  height: 66px;
}
div#hideHeader .gnav nav {
  display: flex;
  align-items: center;
  max-width: 1180px;
  padding: 0 30px;
}


/*------------------------------------
?��E?��w?��E?��b?��E?��_?��E?��[ 
------------------------------------*/

header {
    position: relative;
    z-index: 1000;
    background: #fff;
    padding: 0px 0 0 !important;
}
header #header_menu {
    margin: 0 auto;
    text-align: left;
    position: relative;
    padding: 0px 0 0;
	background:#FFF;
}
header #header_menu h1 {
    text-align: left;
    font-size: 1.2em;
}
header #header_menu h1 {
    text-align: left;
    font-size: 1.3em;
    display: inline-block;
    padding: 0 ;
	vertical-align: middle;
}

header #header_menu .ttl {
    text-align: left;
    font-size: 1.2em;
    display: inline-block;
    padding: 20px 1% 20px 2%;
}

header #header_menu .ttl span{
	color: #28BBEC;
	font-weight: bold;
}

@media (max-width: 1199px) {
header #header_menu .ttl {
    text-align: left;
    font-size: 1.0em;
    display: inline-block;
    padding: 20px 1% 20px 4%;
}
}

header #header_menu .logo {
    text-align: left;
    padding: 9px 0;
}
header #header_menu ul {
    text-align: right;
    display: table;
    padding: 0px 0;
}header #header_menu ul li {
    display: inline-block;
    padding: 0 0.5%;
    display: table-cell;
    vertical-align: middle;
}

header #header_menu ul li p{
	display: inline-block;
	padding: 5px 8px;
	/* height: 50px; */
	vertical-align: middle;
	/* line-height: 50px; */
}
header #header_menu .tel span {
    background: url(../img/img-common/hed_tel.png) left center no-repeat;
    padding: 2px 0px 5px 28px;
    font-size: 1.6em;
    background-size: 11.5%;
    /* margin: 0 0 0 20px; */
    line-height: 50px;
    height: 50px;
    display: inline-block;
    vertical-align: middle;
    background-size: 12%;
}

header #header_menu ul li p.saiyo_hedbtn{
padding: 0 5px 8px;

}

@media screen and (max-width: 1199px) {
	header .container{
		width:100%;
	}
	header #header_menu h1{
		font-size: 1.2em;
		padding: 10px;
	}
}

@media screen and (max-width: 1199px) {
	.gnav .container{
		width:100%;
	}
	.gnav #header_menu h1{
		font-size: 1.2em;
		padding: 10px;
	}
}

/*------------------------------------
?��E?��O?��E?��?��E?��?��E?��[?��E?��o?��E?��?��E?��?��E?��i?��E?��r
------------------------------------*/ 

.gnav{
	position:relative;
	padding:0 !important;
	font-size:83%;
}

.gnav nav {
    margin: 0 auto;
    background: #EEEEEE;
    top: 0;
    width: 100%;
}
.gnav nav > ul li {
	font-size: 1.4rem;
	float: left;
	padding: 0;
  display: flex;
  align-items: center;
}

.gnav nav>ul>li>a {
  display: block;
  padding: 0 0;
	padding: 15px 24px;
}
.gnav nav>ul>li>a span{
	/*border-right: 1px solid #ccc;*/
	font-weight:bold;
}

.gnav nav>ul>li:first-child>a span {
    /*border-left: 1px solid #ccc;*/
}
.gnav nav > ul li:hover {
    background: #555555;
    color: #FFF;
}
.gnav nav > ul li:hover a {
    color: #FFF;
    border: none;
}
/* .gnav .menu li.menu__mega .second-level ul >li {
}
.gnav .menu li.menu__mega .second-level ul >li p.m_tit {
  text-align: center;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1;
  border: 1px solid #BBBBBB;
  color: #333333;
  padding: 10px 0 8px;
  margin: 0 0 20px;
}
.gnav .menu li.menu__mega .second-level ul >li a {
  position: relative;
  padding-left: 20px;
  margin: 10px 0 0 15px;
	display: flex;
	align-items: center;
	height: 50px
}
.gnav .menu li.menu__mega .second-level ul >li a::before {
  display: block;
  content: "";
  position: absolute;
  left: 0;
}
.gnav .menu li.menu__mega .second-level ul >li a:not(.blank)::before {
  top: 50%;
  height: 1px;
  width: 10px;
  background: #28BBEC;
}
.gnav .menu li.menu__mega .second-level ul >li a.blank {
  padding: 0 0 0 55px;
}
.gnav .menu li.menu__mega .second-level ul >li a.blank:hover i {
  text-decoration: underline;
}
.gnav .menu li.menu__mega .second-level ul >li a.blank i {
  padding: 0px 0 0 0;
  display: inline-block;
}
.gnav .menu li.menu__mega .second-level ul >li a.blank::before {
  background-image: url("../img/img-common/icon_mv_site.jpg");
  background-position: 0 0;
  background-repeat: no-repeat;
  width: 47px;
  height: 31px;
}
.gnav .menu li.menu__mega .second-level ul >li a:hover {
text-decoration: underline;
}
.gnav .menu li.menu__mega .second-level ul >li a i {
  font-style: normal;
  font-size: 1.4rem;
  font-weight: bold;
  color: #333;
}

.gnav .menu li.menu__mega .second-level ul >li a img {
	padding: 0 10px;
} */


/*
.about_new nav > ul>li:nth-child(1),
.merit1 nav > ul>li:nth-child(2),
.growth nav > ul>li:nth-child(2),
.lp nav > ul>li:nth-child(2),
.movie nav > ul>li:nth-child(3),
.media nav > ul>li:nth-child(4),
.saiyo_common nav > ul>li:nth-child(5),
.works nav > ul>li:nth-child(6),
.plan nav > ul>li:nth-child(7),
.faq nav > ul>li:nth-child(8){
    background: #555555;
    color: #FFF;
}
.about_new nav > ul>li:nth-child(1) a,
.merit1 nav > ul>li:nth-child(2) a,
.growth nav > ul>li:nth-child(2) a,
.lp nav > ul>li:nth-child(2) a,
.movie nav > ul>li:nth-child(3) a,
.media nav > ul>li:nth-child(4) a,
.saiyo_common nav > ul>li:nth-child(5) a,
.works nav > ul>li:nth-child(6) a,
.plan nav > ul>li:nth-child(7) a,
.faq nav > ul>li:nth-child(8) a{
    color: #FFF;
    border: none;
}
*/
.gnav nav > ul .second-level li:hover a{
	color:#333;
}

/*?��E?��J?��E?��E?��?��?��E?��j?��E?��?��E?��?��E?��[?��E?��i?��E?��A?��E?��C?��E?��R?��E?��?��E?��?��E?��j*/
.gnav .menu {
    position: static;
	margin: 0 auto;
	display: flex;
    justify-content: center;
}
.gnav .menu > li span {
    display: block;
}
.gnav .menu > li a {
    display: block;
	color: #333;
	text-decoration: none;
}
.gnav .menu .second-level {
    visibility: hidden;
    opacity: 0;
    z-index: 1;
}
.gnav .menu > li:hover {
    -webkit-transition: all 0.7s;
    transition: all 0.7s;
}
.gnav .menu li.menu__mega {
    position: static;
}
.gnav .menu li.menu__mega .second-level {
    position: absolute;
    top: 0;
    left: 0;
    box-sizing: border-box;
    width: 100%;
    font-family: "Noto Sans JP", "���C���I", Meiryo, Osaka, "�l�r �o�S�V�b�N", "MS PGothic", sans-serif;
    text-align: left;
    padding: 30px 0 70px;
    background: #FFF;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
    z-index: -1;
    /* box-shadow: 2px 2px 4px gray; */
}

.gnav .menu li.menu__mega:hover .second-level {
    top: 50px;
    visibility: visible;
    opacity: 1;
}
/*.index .gnav .menu li.menu__mega:hover .second-level{
	top: 60px;
}*/
.gnav .menu nav#global:hover {
    box-shadow: none;
}
.gnav .menu .second-level .second-level-inner {
  max-width: 1260px;
  margin: 0 auto;
  padding: 0 30px;
}
/* .gnav .menu .second-level ul {
    margin: 0 0 0 -40px;
		display: flex;
		justify-content: center;
}
.menu__mega:nth-child(2) .second-level ul {
	align-items: center;
}
.gnav .menu .second-level ul li {
    font-size: 0.9em;
    position: relative;
    font-weight: normal;
    padding: 15px 0 40px;
    text-align: left;
    float: left;
    margin: 0 0 0 2%; 
    border: none;
		white-space: nowrap;
} */


@media (min-width:737px) {
/* .gnav .menu .second-level li.another_link {
  margin-left: 45px;
  padding-left: 90px;
}
.gnav .menu .second-level li.another_link::after {
  content: "";
  display: block;
  position: absolute;
  top: 15px;
  left: 0;
  border-left: 1px dashed #999;
  height: 120px;
  width: 1px;
} */
#link_movie {
  margin-top: -50px;
  padding-top: 50px;
}
}


.gnav .menu .icon .second-level li {
    padding: 15px 63px 40px 57px;
}

@media (max-width: 1199px) {
#hideHeader .gnav nav>ul>li>a {
    padding: 15px 15px;
}
}
@media (max-width: 1060px) {
/* .gnav .menu .second-level li {
    padding: 15px 30px  40px 46px;
} */
.gnav nav>ul>li>a {
    padding: 15px 10px;
}
	
#hideHeader .gnav nav>ul>li>a {
    padding: 15px 10px;
}
}

/* .gnav .menu .icon .second-level li:nth-child(1) {
    background: url(../img/img-common/gnav_icon01.png) no-repeat left top;
}
.gnav .menu .icon .second-level li:nth-child(2) {
    background: url(../img/img-common/gnav_icon02.png) no-repeat left top;
}
.gnav .menu .icon .second-level li:nth-child(3) {
    background: url(../img/img-common/gnav_icon03.png) no-repeat left top;
}
.gnav .menu .icon .second-level li:nth-child(4) {
    background: url(../img/img-common/gnav_icon04.png) no-repeat left top;
}
.gnav .menu .icon .second-level li:nth-child(5) {
    background: url(../img/img-common/gnav_icon05.png) no-repeat left top;
}
.gnav .menu .icon .second-level li:nth-child(6) {
    background: url(../img/img-common/gnav_icon06.png) no-repeat left top;
}
.gnav .menu .icon .second-level li:nth-child(7) {
    background: url(../img/img-common/gnav_icon07.png) no-repeat left top;
}
.gnav .menu .icon .second-level li:nth-child(8) {
    background: url(../img/img-common/gnav_icon08.png) no-repeat left top;
}
.gnav .menu .second-level li a span {
    position: relative;
    color:#333;
    display: block;
}

.gnav .menu .img .second-level li span{
	margin:10px 0 0;
}

.gnav .menu .second-level li a span::after {
    content: '';
    width: 6px;
    height: 6px;
    border: 0px;
    border-top: solid 1px #444444;
    border-right: solid 1px #444444;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -4px;
}
.gnav .menu .img .second-level li:hover{
	background:none;
}
.gnav .menu .second-level span:hover{
	text-decoration:underline;	
} */

/*------------------------------------
?��E?��?��E?��?��E?��[?��E?��_?��E?��?��E?��?��E?��E?��E?��B?��E?��?��E?��?��E?��h?��E?��E
------------------------------------*/
.modal {
    width: 100%;
    height: 15000px;
    background: #000;
    opacity: 0.2;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -100;
}

/*------------------------------------
?��E?��Ǐ]?��E?��o?��E?��i?��E?��[
------------------------------------*/
.fixed_bnr {
	position: fixed;
	right: 0;
	bottom: 20%;
	z-index: 300;
}
.fixed_bnr > li:not(:last-child){
	margin-bottom: 30px;
}

/* ?��E?��R?��E?��?��E?��?��E?��i?��E?��?��?��?��E?��E?��t?��E?��F?��E?��[?��E?��Y2?��E?��?��E?��?��E?��J?��E?��̃^?��E?��C?��E?��~?��E?��?��E?��?��E?��O?��E?��?��E?��HTML?��E?��?��E?��?��E?��?��?��?��?��?��E?��?��E?��?��E?��̂Ŏb?��E?��?��E?��Ή� */
/*.fixed_bnr > li:first-child {
  display: none !important;
}*/


.accordion_main {
	position: relative;
	cursor: pointer;
}

.accordion_icon {
	width: 14px;
	height: 14px;
	position: absolute;
	right: 14px;
	top: 50%;
	transform: translateY(-50%);
}

.accordion_icon.is-open .accordion_icon_bar2 {
	transform: rotate(90deg);
}

.accordion_icon_bar1 {
	width: 14px;
	height: 2px;
	background: #fff;
	border-radius: 20px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
}

.accordion_icon_bar2 {
	width: 2px;
	height: 14px;
	background: #fff;
	border-radius: 20px;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	top: 0;
	transition: all 0.3s ease 0s;
}

.accordion_sub {
	display: none;
}

}

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


@media screen and (min-width: 320px) {
	html{
		font-size: 62.5%;
	}
}
@media screen and (min-width: 375px) {
	html{
		font-size: 72.5%;
	}
}

@media screen and (min-width: 414px) {
	html{
		font-size: 82.5%;
	}
}

#cover #header {
  display: none !important;
}
  
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    /*font-size:100%;*/
    vertical-align:baseline;
    background:transparent;
}
h1, h2, h3, h4, h5, h6{
	font-weight: normal;
}

body {
	font-family: sans-serif;
	line-height: 1.5;
	letter-spacing:0.05em;
    /*font-size:75%;*/
	-webkit-background-size: 100% auto;
	-moz-background-size: 100% auto;
	-webkit-text-size-adjust:none;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section { 
	display:block;
}

nav ul {
    list-style:none;
}

blockquote, q {
    quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}

a {
    margin:0;
    padding:0;
    font-size:100%;
    background:transparent;
	color: #333;
}

/* change colours to suit your needs */
ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}

/* change colours to suit your needs */
mark {
    background-color:#ff9;
    color:#000; 
    font-style:italic;
    font-weight:bold;
}

del {
    text-decoration: line-through;
}

abbr[title], dfn[title] {
    border-bottom:1px dotted;
    cursor:help;
}

table {
    border-collapse:collapse;
    border-spacing:0;
}

/* change border colour to suit your needs */
hr {
    display:block;
    height:1px;
    border:0;   
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}

input, select {
    vertical-align:middle;
}


img{
	max-width: 100%;
	height: auto;
	vertical-align: top;
    border: none;
}

ul,ol{
	list-style: none;
}

input {
  /* -webkit-appearance: none; フォー�?のラジオボタンが消えてしま�?のでコメントアウ�?
   -webkit-border-radius: 0px;
-moz-border-radius: 0px;
border-radius: 0px;*/
}

body{
	font-family:'メイリオ',Meiryo,'?��?�� ?��ゴシ�?ク',sans-serif;
}

input, button, textarea, select {
	/*margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;*/
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
input[type="submit"]{
margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
}

.clearfix:after{
content:"";
display:table;
clear:both;
}

.clearfix{
zoom:1;
display: block;
}


/*main{
	    margin: 12% 0 0;
}*/
/*　ヘッダー
--------------------------------------------------------------*/
#header .logo{
	/*width: 60%;	*/
	padding: 0 0 0 2%;	
}
#header h1{
	text-align: left;
	padding: 1% 0 1% 1%;
	font-size:10px;
	width:85%;
	display:none;
}
/*
#header img{
	width: 25%;
}
*/
header .logo{
	/*width: 60%;	*/
	padding: 0 0 0 2%;	
}
#header p.logo{
	text-align: center;
    padding: 2.5% 0 2.5% 4%;
    background: #FFF;
}

header h1 img{
	width: 45%;
}


header p{
	font-size: 71%; 
	padding: 1% 0 0 2%;	
}


.index #main_image_sp .ttl{
	top:10%;
	text-align: center;
	display: block;
}



.index #main_image_sp .txt_block {
    position: absolute;
    width: 100%;
    bottom: 28%;
	font-family:"メイリオ", Meiryo, Osaka, "?��?�� ?��ゴシ�?ク", "MS PGothic", sans-serif;
}

.index #main_image_sp .txt_block .img{
	padding:10% 0 0;
	width:38%;
	margin:0 auto;
}

.index #main_image_sp .ttl span{
	
}

.index #main_image_sp .ttl p{
	background:rgba(51,190,236,0.4);
	padding: 3% 2%;
	font-size: 1.7rem;
	color:#FFF;
	font-weight: bold;
	/* position: absolute; */
	/* top:10%; */
	text-align: center;
	/* left:0; */
	/* right: 0; */
	width:80%;
	margin:0 auto;
	display: inline-block;
	    letter-spacing: 0.05em;
}

.index #main_image_sp h2{
	/* position: absolute; */
	color: #FFF;
	font-size: 2.0rem;
	line-height: 1.5;
	/* bottom: 21%; */
	font-weight: bold;
	letter-spacing: 0.1em;
	color:#FFF;
	font-weight: bold;
}


.index #main_image_sp h2{
	padding:13% 0 0;
	text-align: center;
	width: 100%;
	font-family:"メイリオ", Meiryo, Osaka, "?��?�� ?��ゴシ�?ク", "MS PGothic", sans-serif;
}
.index #main_image_sp p.scrolldown_btn{
    position: absolute;
    bottom: 5%;
    left: 0;
    right: 0;
    /* float: none; */
    text-align: center;
}
.index #main_image_sp p.scrolldown_btn img{
	width:15%;
}

.index .wrapper{
	position: relative;
}


/**　ハンバ�?�ガーメニュー 
--------------------------------------------------------------*/
body {
    position: static;
    left: 0;
    overflow-x: hidden;
	padding-bottom: 60px!important;
}

.index .sm-slider {
    z-index: 0;
    margin: 14% 0 0;
    position: relative;
    height: 560px !important;
    top: 14%;
    overflow: hidden;
}

.index #main_image_sp {
    /*position: absolute;*/
    top: 0%;
    width: 100%;
    /*height: 100%;*/
     /*height: 90vh; */
	 position: static;
	 height: auto;
}

.cover{
	background:#FFF;
}
.index article{
	background:#FFF;
}

body.open{
	overflow: hidden;
    height: 100%;
}


header{
	transition: .2s opacity ease,0s visibility;
	position: fixed;
	top: 0;
    z-index: 200000;
    width: 100%;
	transition: opacity .1s ease;
    opacity: 1;
}
/*
#header{
	position: fixed;
	width:100%;
	top:0;
	background:#FFF;
	z-index: 1;
}
*/
#header.hide_header{
	opacity: 0;
    visibility: hidden;
    transition: .1s opacity ease,.1s visibility;
	-webkit-transition: all 1s;
      -moz-transition: all 1s;
      -ms-transition: all 1s;
      -o-transition: all 1s;
      transition: all 0.5s;
	background:transparent;
}

#header.visible_header{
	-webkit-transition: all 1s;
      -moz-transition: all 1s;
      -ms-transition: all 1s;
      -o-transition: all 1s;
      transition: all 0.5s;
	opacity: 1;
	background:#FFF;
}


#slide_menu{
    position: fixed;
    top: 0;
    width:100%;
	z-index:10000;
	overflow-y:auto;
	-webkit-overflow-scrolling:touch;
	height:100%;
}
.slide_menu_in{
	width:85%;
	margin:0 25% 0 0;
    background: #fff;
    position: relative;
}
.slide_menu_in .inner{
	border-top: 1px solid #BBB;
	padding: 0 9%;
	letter-spacing:0.08em;
	margin: 1% 0;
}
.slide_menu_in .inner .lg_long{
	letter-spacing:0.12em;
}

.slide_menu_in p.menu_logo{
	width: 58%;
	padding: 1% 0 0 42%;
}
.slide_menu_in p.menu_logo img{
	width: 67%;
}
/*
header .header_inner{
	padding: 2.5% 0 0;
}
*/

header p.menu_open{
	width: 14%;
	position: fixed;
	top: 0%;
	left:0%;
	outline: none;
	border: none;
	color: #fff;
	font-size: 1rem;
	cursor: pointer;
	z-index:10000;
	padding:0;
}
.ipad header p.menu_open,
.ipad header p.menu_open2{
	top:0.7%;
}

.slide_menu_in p.menu_logo span{
	display:inline-block;
	margin: 2.1% 0;
}



header p.menu_close2 img{
	width: 50%;
}
header p.menu_close2{
	margin: 12% 0 0;
	text-align: center;
	padding: 0 0 16%;
}

header .hed_menu .ttl {
	float:left;
	width:83%;
}
header .hed_menu .menu_close {
	float:right;
	width:17%;
}
header .hed_menu a{
	color: #444;
	text-decoration:none;
}

header .hed_menu ul.menu {
	clear: both;
	padding: 0% 0% 0;
	margin: 0px auto 0%;
}

header .hed_menu ul li{
  border-bottom: 1px solid #DDDDDD;
}
header .hed_menu ul li:last-child{
	border-bottom:none;
}
header .hed_menu ul li.blank_link a {
  display: inline-block !important;
  position: relative !important;
  padding-right: 22px !important;
}
header .hed_menu ul li.blank_link a::after {
  display: block;
	background: url(../img/img-common/icon_blank.png) no-repeat right center;
  width: 16px !important;
  height: 15px !important;
  transform: none !important;
  right: 0px !important;
  margin: 0 !important;
  top: 48%;
  transform: translateY(-50%) translateX(0) !important;
  -webkit-transform: translateY(-50%) translateX(0) !important;
  background-size: 100%;
}

header .hed_menu .acc li{
  border-bottom:none;
}

header .hed_menu ul li.service{
	border-bottom:none;
}
header .hed_menu ul li p{
	padding:0 0 0 0%;
	margin:0 0 0 2%;
}

header .hed_menu ul.menu li a{
	background-size: 5%;
    display: block;
    padding: 9% 5% 8% 3%;
    text-decoration: none;
    text-align: left;
    line-height: 1;
    font-size: 1.2rem;
    font-weight: bold;
    position: relative;
    letter-spacing: 0.1em;
}
header .hed_menu span.img{
	width: 30%;
    display: inline-block;
    padding: 0 0 0 5%;
}
header .hed_menu span.img img{
	width:100%;
}
header .hed_menu ul.menu li a::after{
	content: '';
	width: 8px;
	height: 8px;
	border: 0px;
	border-top: solid 2px #29BCED;
	border-right: solid 2px #29BCED;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	right: 7%;
	margin-top: -4px;
}
header .hed_menu ul.menu li.method01 a::after{
	display: none;
}
header .hed_menu ul li.method01 a{
	background: url(../img/img-common/ico_sp01.png) no-repeat 96% center;
	background-size: 8%;
}
header .hed_menu ul li a span{
	background:url(../img/img-common/hed_ico01_sp.png) no-repeat right center;
	background-size: 12%;
	padding: 0 9% 0 0;
}
header .hed_menu p.menu02_txt {
    padding: 3% 0;
    background: #EEEEEE;
	text-align:center;
	margin:6% 0 0;
	font-size:1.0rem;
}

header .hed_menu ul.menu02 li {
    padding: 2% 2% 2%;
    background-image: linear-gradient(to right, #4D7131, #4D7131 1px, transparent 1px, transparent 5px);
    background-size: 3px 1px;
    background-position: bottom;
    background-repeat: repeat-x;
    margin: 0 1%;
    border:none;
}

header .hed_menu ul.menu02 li:last-child {
	background:none;
}
header .hed_menu ul.menu02 li a {
    padding: 4% 3% 4% 26%;
    display: block;
    font-size: 1.2rem;
    position:relative;
}

header .hed_menu ul.menu02 li a:after {
	position: absolute;
	top: 0;
	left:auto;
	right: 4%;
	bottom: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
	width: 8px;
	height: 8px;
	border-top: 1.5px solid #BBBBBB;
	border-right: 1.5px solid #BBBBBB;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

header .hed_menu ul.menu02 li a span {
    padding: 0;
    display: block;
    font-size: 0.9rem;
    letter-spacing: 0;
    margin: 0 0 0;
	font-weight:normal;
}
header .hed_menu ul.menu02 li a em {
    font-size: 1.2rem;
    margin: 0 0 0 1%;
	font-style:normal;
}

header .hed_menu ul.menu02 li{
    color: #444444;
	font-weight:bold;
    padding: 2.9% 5%;
    border-top:none;
	border-bottom:none;
	margin: 0 0%;
	font-size: 1.0rem;
}
header .hed_menu ul.menu02 li a{
	color: #444444;
	font-weight:bold;
}

header .hed_menu ul.menu02 li:nth-child(1) a {
    background: url("../img/img-common/header_sp_img01.jpg") left center no-repeat;
    background-size: 22%;
}



header .hed_menu .btn01 {
    color: #fff;
    letter-spacing: 0.1em;
    margin: 20px auto 20px;
	position: relative;
	width: 82%;
}

header .hed_menu .btn01 a {
	color: #333;
	background-size:3%;
	font-size: 1.0rem;
	line-height: 1.4;
	text-align: left;
	letter-spacing:0.1em;
	text-decoration:none;
	display:block;
}

header .hed_menu {
  display: none;
  position: absolute;
  background: rgba(119,119,119,0.8);
  left: 0;
  top: 0;
  width: 100%;
  height: auto;
  z-index: 100;
  height: 100% !important;
  bottom: 0;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

header .hed_menu .tel{
	text-align:center;
}

header .hed_menu .tel{
	padding:5% 0;
}

header .hed_menu .tel dt{
	background: url(../img/img-common/hed_tel_sp.png) no-repeat 15% center;
	background-size: 10%;
	padding:1% 0 0 12%;
	font-size:1.7rem;
	letter-spacing:0;
}


header .container{
	width:100%;
}

header .hed_menu ul.menu03 {
    clear: both;
    padding: 12% 7% 6%;
	font-size: 1.1rem;
	border-top: 1px solid #DDDDDD;
}
header .hed_menu ul.menu03 li {
    border: none;
    padding: 0 0 8%;
	
}
header .hed_menu ul.menu03 li a {
    color: #333;
    font-size: 92%;
    padding: 2.5% 3% 2.5% 12%;
    font-weight: 400;
    background: 0 0;
}
header .hed_menu ul.menu03 li:nth-child(1) a {
    background: url("../img/img-common/header_sp_icon01.png") 0 center no-repeat;
    background-size: 13%;
}
header .hed_menu ul.menu03 li:nth-child(2) a {
    background: url("../img/img-common/header_sp_icon02.png") 0 center no-repeat;
    background-size: 17%;
}
header .hed_menu ul.menu03 li:nth-child(3) a {
    background: url("../img/img-common/header_sp_icon03.png") 0 center no-repeat;
    background-size: 13%;
}
header .hed_menu ul.menu03 li:nth-child(4) a {
    background: url("../img/img-common/header_sp_icon04.png") 0 center no-repeat;
    background-size: 13%;
}
header .hed_menu ul.menu03 li:nth-child(5) a {
    background: url("../img/img-common/header_sp_icon05.png") 0 center no-repeat;
    background-size: 13%;
}


/*ハンバ�?�ガー開閉*/

header .hed_menu ul p.btn_acc {
	background: url(../img/img-common/header_sp_close.png) no-repeat 94% center;
	background-size: 5% !important;
	padding: 9.3% 10% 8.3% 3%;
	font-weight:bold;
	margin:0;
	width:auto;
	position:relative;
	font-size: 1.3rem;
}

header .hed_menu ul p.btn_acc::after{
	position: absolute;
	top: 0;
	left:auto;
	right: 7%;
	bottom: 0;
	margin: auto;
	content: "";
	background: url(../img/img-common/header_sp_close.png) no-repeat right center;
	background-size: 10% !important;
}

header .hed_menu ul p.btn_acc.open {
	background: url(../img/img-common/header_sp_open.png) no-repeat 94% center;
	background-size: 5% !important;
}

header .hed_menu ul .acc{
	background:#E6F8FD;
	padding:3% 0;
	border:none;
}

header .hed_menu ul .acc li{
	/* border:block;	 */
}

header .hed_menu ul .acc li a{
background-size: 5%;
    display: block;
    padding: 5% 5% 5% 13%;
    text-decoration: none;
    text-align: left;
    line-height: 1;
    font-size: 1.2rem;
    font-weight: normal;
    position: relative;
    letter-spacing: 0.1em;
	color:#13B3E8;
}

header .hed_menu ul .acc li a::after{
	border:none;
}

header .hed_menu ul .acc li a::before{
	content: '';
	width: 5px;
	height: 5px;
	border: 0px;
	border-top: solid 1px #BBBBBB;
	border-right: solid 1px #BBBBBB;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	left: 7%;
	margin-top: -4px;
}

 
/*------------------------------------
ペ�?�ジトッ�?
------------------------------------*/ 
#topcontrol {
bottom: 12% !important;
right:0px !important;
z-index:1003;
}
#topcontrol img{
	width: 80%;
	height: auto;
	
}


/*------------------------------------
お問�?合わせ誘�?
------------------------------------*/ 

.contact_block{
	text-align:center;
	margin:10% auto;
	width:90%;
}
.contact_block .method01{
	font-size:18px;
	color:#333;
	line-height:1.2;
	letter-spacing:0.05em;
	font-weight:bold;
	margin:0 0 30px;
}
.contact_block .method02 a:hover img {
	opacity:1;
}
.contact_block .btn{
	margin:0 auto 25px;
	width:100%;
}
.contact_block .btn li{
	float:left;
	display:block;
	width:100%;
	line-height:0;
}
.contact_block .btn li img{
	width:100%;
}

/*------------------------------------
追従バナ�?�
------------------------------------*/
.fixed_bnr {
	position: fixed;
	display: flex;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 100;
}

#link_movie {
  margin-top: -59px;
  padding-top: 59px;
}


/* コロナ削除 フェーズ2公開�?�タイミングでHTMLを削除するので暫定対�? */
/*.fixed_bnr > li:first-child {
  display: none !important;
}*/
.fixed_bnr > li {
  width: 50%;
  margin: 0 0 0 auto;
}

/*------------------------------------
ナビ アコー�?ィオン
------------------------------------*/
.accordion_main {
	position: relative;
	cursor: pointer;
}

.accordion_icon {
	width: 14px;
	height: 14px;
	position: absolute;
	right: 14px;
	top: 50%;
	transform: translateY(-50%);
}

.accordion_icon.is-open .accordion_icon_bar2 {
	transform: rotate(90deg);
}

.accordion_icon_bar1 {
	width: 14px;
	height: 2px;
	background: #fff;
	border-radius: 20px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
}

.accordion_icon_bar2 {
	width: 2px;
	height: 14px;
	background: #fff;
	border-radius: 20px;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	top: 0;
	transition: all 0.3s ease 0s;
}

.accordion_sub {
	display: none;
}
}

/*===================================
  
  共通CSS

===================================*/
body {
  position: static;
  height: 100%;
}

body.is_hidden {
  overflow: hidden;
}

.wrapper {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

article .wrapper {
  min-height: auto;
}

/* アコー�?ィオン */
.js_ac_box {
  height: 0;
  -webkit-transition: .4s ease-out;
  transition: .4s ease-out;
  visibility: hidden;
  overflow: hidden;
}

.is_open + .js_ac_box {
  height: auto;
  opacity: 1;
  visibility: visible;
}

/* align */
.txt_center {
  text-align: center !important;
}

.bg_gray {
  background: #F8F8F8;
  padding: 45px 0 60px;
  margin: 0 0 65px;
}
.bg_gray .contents_box {
  margin-bottom: 0;
}

/* color */
.cl_bl {
  color: #28BBEC !important;
}
/* title */
.kasou_common .contents .ttl_pt01 {
  text-align: center;
  font-size: 2.4rem;
  margin: 0 auto 15px;
  font-weight: bolder;
}

/* text size */
.cap {
  text-align: center;
  margin: 20px auto 0;
  font-size: 1.2rem;
}
.kasou_common .contents .normal_txt {
  font-size: 1.4rem;
  line-height: 1.8;
  letter-spacing: 0.05em;
}

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

.kasou_common .contents .ttl_pt01 {
  font-size: 1.6rem;
}



.kasou_common .contents .normal_txt {
  font-size: 1.2rem;
  line-height: 1.6;
  margin: 15px 0;
}
/*
.main_img {
  margin: 0 -7%;
}
*/

}



/*===================================
  
  ヘッダー

===================================*/
/*------------------------------------
ヘッダー ?�?PC?�? 
------------------------------------*/
@media print, screen and (min-width: 992px) {
  .header {
    /*
    position: fixed;
    */
    position: relative;
    width: 100%;
    top: 0;
    /*
    height: 85px;
    */
    z-index: 100;
  }
  .header_wrap {
    display: flex;
    width: 100%;
    height: 80px;
    position: relative;
    background: #fff;
  }
  .header_inner {
    max-width: 1180px;
    min-width: 960px;
    width: 100%;
    margin: 0 auto;
    padding: 0 30px;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
  }
  .header_logo {
    height: 57px;
    align-self: center;
  }
  .header_logo > img {
    height: auto;
    width: 100%;
  }
  /* ハンバ�?�ガー */
  /*
  .header_hamburger {
    height: 100px;
  }
  */
  .header_hamburger .header_inner {
    align-items: center;
  }
}

/*------------------------------------
ヘッダー ?�?SP?�? 
------------------------------------*/
@media screen and (max-width: 991px) {
  .header {
    background: #fff;
    position: fixed;
    height: 50px;
    width: 100%;
    z-index: 9999;
  }
  .header_inner {
    width: 100%;
    height: 50px;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .header #sp_menu_btn {
    width: 50px;
    height: 50px;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    margin: auto;
    z-index: 101;
    cursor: pointer;
  }
  .header #sp_menu_btn span {
    width: 20px;
    height: 2px;
    display: block;
    margin: auto;
    position: absolute;
    left: 0;
    right: 0;
    background: #000;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
  }
  .header #sp_menu_btn span:nth-of-type(1) {
    top: 16px;
  }
  .header #sp_menu_btn span:nth-of-type(2) {
    top: 0;
    bottom: 0;
    background: #000;
    z-index: -1;
  }
  .header #sp_menu_btn span:nth-of-type(3) {
    bottom: 16px;
  }
  .header #sp_menu_btn.active span:nth-of-type(1) {
    transform: translateY(9px) rotate(-45deg);
  }
  .header #sp_menu_btn.active span:nth-of-type(2) {
    opacity: 0;
  }
  .header #sp_menu_btn.active span:nth-of-type(3) {
    transform: translateY(-7px) rotate(45deg);
  }
  .header_logo {
    height: 30px;
  }
  .header_logo > img {
    height: 30px;
  }
  .header_contact {
    width: 50px;
    height: 50px;
    position: absolute;
    top: 0;
    right: 0;
    background: #666666;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
  }
  .header_contact > img {
    height: 15px;
  }
}

/*===================================
  
  グローバルナビ

===================================*/
/*------------------------------------
グローバルナビ?�?PC?�?
------------------------------------*/
@media print, screen and (min-width: 992px) {
  .h_logo {
    display: flex;
    align-items: center;
  }
  .h_logo .ttl {
    font-size: 1.4rem;
    margin-left: 10px;
    font-weight: 700;
    font-family: "Noto Sans JP","メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  }
  .gnav_hamburger > ul {
    display: flex;
    align-items: center;
    justify-content: flex-end;
  }
  .gnav_hamburger > ul > li:not(.gnav_tel) {
    display: block;
    width: 66px;
    height: 66px;
    line-height: 66px;
    border-radius: 50%;
    cursor: pointer;
  }
  .gnav_hamburger > ul > li:not(:first-child) {
    margin-left: 15px;
  }
  .gnav_hamburger > ul > li.gnav_tel {
    background: url(../img/img-common/hed_tel.png) left center no-repeat;
    padding: 2px 0px 5px 30px;
    font-size: 2.5em;
    background-size: 11.5%;
    line-height: 50px;
    height: 50px;
    display: inline-block;
    vertical-align: middle;
    background-size: 12%;
    margin: 0 15px 0 0;
  }
  .gnav_hamburger > ul > li.gnav_tel a {
    text-decoration: none;
  }
  .gnav_hamburger > ul > li.gnav_hamburger_mail {
    width: 42px;
    height: 42px;
  }
  .gnav_hamburger > ul > li.gnav_hamburger_mail > a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: #666666 url(../img/img-common/icon_mail.png) no-repeat center center;
    background-size: auto 15px;
  }
  .gnav_hamburger > ul > li.gnav_hamburger_menu {
    position: relative;
  }
  .gnav_hamburger .gnav_hamburger_menu {
    position: relative;
  }
  .gnav_hamburger .gnav_hamburger_menu span {
    width: 40px;
    height: 3px;
    display: block;
    margin: auto;
    position: absolute;
    left: 0;
    right: 0;
    background: #000;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
  }
  .gnav_hamburger .gnav_hamburger_menu span:nth-of-type(1) {
    top: 20px;
  }
  .gnav_hamburger .gnav_hamburger_menu span:nth-of-type(2) {
    top: 0;
    bottom: 0;
  }
  .gnav_hamburger .gnav_hamburger_menu span:nth-of-type(3) {
    bottom: 20px;
  }
  .gnav_hamburger .gnav_hamburger_menu.active {
    position: fixed;
    z-index: 101;
  }
  .gnav_hamburger .gnav_hamburger_menu.active span {
    background-color: #fff;
  }
  .gnav_hamburger .gnav_hamburger_menu.active span:nth-of-type(1) {
    transform: translateY(7.5px) rotate(-45deg);
    top: 28px;
  }
  .gnav_hamburger .gnav_hamburger_menu.active span:nth-of-type(2) {
    opacity: 0;
  }
  .gnav_hamburger .gnav_hamburger_menu.active span:nth-of-type(3) {
    transform: translateY(-7px) rotate(45deg);
  }
  .gnav_hamburger_main {
    position: fixed;
    top: -100%;
    visibility: hidden;
    overflow-y: scroll;
    opacity: 0;
    right: 0;
    left: 0;
    left: 0;
    bottom: 0;
    background: #fff;
    width: 100%;
    transition: all 0.4s ease;
    -webkit-transition: all 0.4s ease;
    -webkit-overflow-scrolling: touch;
    z-index: 100;
  }
  .gnav_hamburger_main::after {
    content: '';
    position: absolute;
    height: 100%;
    width: 50%;
    top: 0;
    right: 0;
    background: #333333;
  }
  .gnav_hamburger_main.active {
    opacity: 1;
    visibility: visible;
    top: 0;
  }
  .gnav_hamburger_inner {
    display: flex;
  }
  .gnav_hamburger_left {
    width: 50%;
    position: relative;
  }
  .gnav_hamburger_logo {
    position: fixed;
    top: 300px;
    right: 65%;
    z-index: 101;
  }
  .gnav_hamburger_logo a {
    text-decoration: none;
    display: inline-block;
  }
  .gnav_hamburger_logo > img {
    height: 57px;
  }
  .gnav_hamburger_logo .lb_txt {
    display: block;
    text-align: center;
    font-size: 1.4rem;
    letter-spacing: 0.25em;
    margin: 10px auto 0;
  }
  .gnav_hamburger_right {
    padding: 80px;
    width: 50%;
    background: #333333;
    position: relative;
    z-index: 101;
  }
  .gnav_hamburger_right > ul > li.media {
    border-top: 1px solid #999999;
    padding-top: 30px;
    margin-bottom: -5px;
  }
  .gnav_hamburger_right .n_inner_btn {
    margin: 30px 0;
    border-top: 1px solid #999999;
  }
  .gnav_hamburger_right .n_inner_btn ul li {
    display: flex;
    margin: 30px 0 0;
  }
  .gnav_hamburger_right .n_inner_btn ul li.privacy a span {
    color: #fff;
    font-size: 1.4rem;
  }
  .gnav_hamburger_right .n_inner_btn ul li.privacy a:hover span {
    opacity: 0.7;
  }
  .gnav_hamburger_right .n_inner_btn ul li a {
    margin-right: 20px;
  }
  .gnav_hamburger_right .n_inner_btn ul li .fx_inner {
    display: flex;
    align-items: center;
  }
  .gnav_hamburger_right .n_inner_btn ul li .fx_inner .ft .txt {
    font-weight: bolder;
    color: #fff;
    font-size: 1.8rem;
    padding-right: 70px;
  }
  .gnav_hamburger_right > ul > li {
    text-align: left;
  }
  .gnav_hamburger_right > ul > li:not(:last-child) {
    margin-bottom: 25px;
  }
  .gnav_hamburger_right > ul > li > a, .gnav_hamburger_right > ul > li > span {
    position: relative;
    font-size: 1.6rem;
    font-weight: bold;
    display: inline-block;
    color: #fff;
  }
  .gnav_hamburger_right > ul > li > a,
  .gnav_hamburger_right > ul > li span a i {
    overflow: hidden;
    padding-bottom: 3px;
    text-decoration: none;
    position: relative;
    display: inline-block;
    line-height: 1;
  }
  .gnav_hamburger_right > ul > li > a::after,
  .gnav_hamburger_right > ul > li span a i::after {
    content: '';
    width: 100%;
    height: 1px;
    position: absolute;
    left: -100%;
    bottom: 0;
    background-color: #fff;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
  }
  .gnav_hamburger_right > ul > li > a:hover::after,
  .gnav_hamburger_right > ul > li span a:hover i::after {
    width: 100%;
    left: 0;
  }
  .gnav_hamburger .gnav_hamburger_submenu {
    width: 100%;
    padding: 10px 0;
    display: flex;
    flex-wrap: wrap;
  }
  .gnav_hamburger .gnav_hamburger_submenu > li {
    width: 33.333333%;
  }
  .gnav_hamburger .gnav_hamburger_submenu > li > a {
    display: inline-block;
    position: relative;
    color: #fff;
    padding: 5px 0 5px 20px;
    margin-right: 25px;
    overflow: hidden;
  }
  .gnav_hamburger .gnav_hamburger_submenu > li > a::before {
    content: '';
    width: 8px;
    height: 8px;
    border: 0px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
  }
  .gnav_hamburger .gnav_hamburger_submenu > li > a::after,
  .gnav_hamburger .gnav_hamburger_privacy::after {
    content: '';
    width: 100%;
    height: 1px;
    position: absolute;
    left: -100%;
    bottom: 3px;
    background-color: #fff;
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
  }
  .gnav_hamburger .gnav_hamburger_submenu > li > a:hover::after,
  .gnav_hamburger .gnav_hamburger_privacy:hover::after {
    width: 100%;
    left: 20px;
  }
  .gnav_hamburger .gnav_hamburger_contact {
    width: 250px;
    display: block;
    margin-top: 40px;
    color: #01BFF2 !important;
    font-size: 1.8rem;
    font-weight: bold;
    background: #fff url(../img/img-common/icon_mail_co.png) no-repeat 20% center;
    background-size: 22px auto;
    padding: 10px 0 10px 20px;
    text-align: center;
  }
  .gnav_hamburger .gnav_hamburger_privacy {
    position: relative;
    display: inline-block;
    margin-top: 15px;
    padding: 0 0 5px 20px;
    color: #fff !important;
    overflow: hidden;
  }
  .gnav_hamburger .gnav_hamburger_privacy::before {
    content: '';
    width: 8px;
    height: 8px;
    border: 0px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
  }
  .gnav_hamburger_main .gnav_hamburger_right > ul > li,
  .gnav_hamburger_main .gnav_hamburger_right > .gnav_hamburger_contact,
  .gnav_hamburger_main .gnav_hamburger_right > .gnav_hamburger_privacy {
    transform: translateY(10px);
    transition: all .25s ease;
    opacity: 0;
  }
  .gnav_hamburger_main.active .gnav_hamburger_right > ul > li .m_tit,
  .gnav_hamburger_main.active .gnav_hamburger_right > ul > li span {
    color: #fff;
    font-size: 1.6rem;
    font-weight: bolder;
  }
  .gnav_hamburger_main.active .gnav_hamburger_right > ul > li .m_tit {
    margin-bottom: 10px;
  }
  .gnav_hamburger_main.active .gnav_hamburger_right > ul > li span {
    display: block;
    margin-top: 5px;
    font-weight: normal;
  }
  .gnav_hamburger_main.active .gnav_hamburger_right > ul > li span a {
    color: #fff;
    text-decoration: none;
    position: relative;
    padding-left: 20px;
    margin: 3px 0 0 20px;
    display: inline-block;
  }
  .gnav_hamburger_main.active .gnav_hamburger_right > ul > li span a::before {
    display: block;
    content: "";
    position: absolute;
    left: 0;
    top: 0.7em;
    height: 1px;
    width: 10px;
    background: #fff;
  }

	.gnav_hamburger_main.active .gnav_hamburger_right > ul > li span.gaibu a{
		margin: 3px 20px 0 20px;
	}
  .gnav_hamburger_main.active .gnav_hamburger_right > ul > li span.gaibu a::after {
	  	content: "";
	background-image:url(../img/img-common/icon_gaibu.png);
    display: inline-block;
    position: absolute;
    right: -22px;
    top: 0%;
    height: 15px;
    width: 15px;
	background-size: contain;
	background-repeat: no-repeat;
	}


  .gnav_hamburger_main.active .gnav_hamburger_right > ul > li,
  .gnav_hamburger_main.active .gnav_hamburger_right > .gnav_hamburger_contact,
  .gnav_hamburger_main.active .gnav_hamburger_right > .gnav_hamburger_privacy {
    opacity: 1;
    transform: translateY(0);
    width: 300px; /* 追�? */
  }
  /*
  .gnav_hamburger_main.active .gnav_hamburger_right > ul > li:nth-child(1) {
    transition-delay: .5s;
  }
  .gnav_hamburger_main.active .gnav_hamburger_right > ul > li:nth-child(2) {
    transition-delay: .6s;
  }
  .gnav_hamburger_main.active .gnav_hamburger_right > ul > li:nth-child(3) {
    transition-delay: .7s;
  }
  .gnav_hamburger_main.active .gnav_hamburger_right > ul > li:nth-child(4) {
    transition-delay: .8s;
  }
  .gnav_hamburger_main.active .gnav_hamburger_right > ul > li:nth-child(5) {
    transition-delay: .9s;
  }
  .gnav_hamburger_main.active .gnav_hamburger_right > .gnav_hamburger_contact {
    transition-delay: 1s;
  }
  .gnav_hamburger_main.active .gnav_hamburger_right > .gnav_hamburger_privacy {
    transition-delay: 1.1s;
  }
  */
}

@media screen and (max-width: 1480px) {
  .gnav_hamburger .gnav_hamburger_submenu {
    width: 100%;
  }
  .gnav_hamburger .gnav_hamburger_submenu > li {
    width: 50%;
  }
}

/*------------------------------------
グローバルナビ?�?SP?�?
------------------------------------*/
@media screen and (max-width: 991px) {
  .sp_gnav {
    position: fixed;
    top: -100%;
    opacity: 0;
    right: 0;
    bottom: 0;
    height: 100%;
    background: #333;
    width: 100%;
    transition: all 0.4s ease;
    -webkit-transition: all 0.4s ease;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    z-index: 100;
  }
  .sp_gnav.active {
    top: 0;
    opacity: 1;
  }
  .sp_gnav_logo {
    padding: 10px 0;
    display: flex;
    justify-content: center;
    background: #fff;
    position: fixed;
    width: 100%;
    z-index: 100;
  }
  .sp_gnav_logo > img {
    height: 30px;
  }
  .sp_gnav_main {
    padding: 80px 10% 20% 10%;
  }
  .sp_gnav_mail {
    position: fixed;
    top: 0;
    right: 0px;
    z-index: 100;
    width: 50px;
  }
  .sp_gnav_main > ul > li > a, .sp_gnav_main > ul > li > span {
    font-weight: bold;
    font-size: 1.3rem;
    display: block;
    color: #fff;
  }
  .sp_gnav_main > ul > li:not(:last-child) {
    margin-bottom: 20px;
  }
  .sp_gnav_submenu {
    display: none;
  }
  .sp_gnav_submenu > li > a {
    display: block;
    position: relative;
    color: #fff;
    padding: 5px 0 5px 20px;
  }
  .sp_gnav_submenu > li > a::before {
    content: '';
    width: 8px;
    height: 8px;
    border: 0px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
  }
	
	.sp_gnav_submenu > li.gaibu span{
		position: relative;
	}	
	
.sp_gnav_submenu > li.gaibu span::after {
	content: "";
	background-image:url(../img/img-common/icon_gaibu.png);
    display: inline-block;
    position: absolute;
    right: -20px;
    top: 10%;
    height: 13px;
    width: 13px;
	background-size: contain;
	background-repeat: no-repeat;
	}
	
  .sp_gnav_contact {
    width: 250px;
    display: block;
    margin-top: 30px;
    color: #01BFF2 !important;
    font-size: 1.4rem;
    font-weight: bold;
    background: #fff url(../img/img-common/icon_mail_co.png) no-repeat 20% center;
    background-size: 22px auto;
    padding: 10px 0 10px 20px;
    text-align: center;
  }
  .sp_gnav_privacy {
    position: relative;
    display: block;
    margin-top: 15px;
    padding-left: 20px;
    color: #fff !important;
  }
  .sp_gnav_privacy::before {
    content: '';
    width: 8px;
    height: 8px;
    border: 0px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
  }
  .sp_gnav_close {
    position: relative;
    width: 150px;
    display: block;
    margin: 40px auto 0;
    color: #000 !important;
    font-size: 1.2rem;
    font-weight: bold;
    background: #fff;
    padding: 7px 20px;
    text-align: center;
    cursor: pointer;
  }
  .sp_gnav_close::before {
    content: '\00D7';
    display: inline-block;
    vertical-align: middle;
    padding-right: 5px;
  }
  .sp_gnav .sp_gnav_main > ul > li,
  .sp_gnav .sp_gnav_main > .gnav_hamburger_contact,
  .sp_gnav .sp_gnav_main > .gnav_hamburger_privacy,
  .sp_gnav .sp_gnav_main > .sp_gnav_close {
    transform: translateY(10px);
    transition: all .25s ease;
    opacity: 0;
  }
  .sp_gnav.active .sp_gnav_main > ul > li,
  .sp_gnav.active .sp_gnav_main > .gnav_hamburger_contact,
  .sp_gnav.active .sp_gnav_main > .gnav_hamburger_privacy,
  .sp_gnav.active .sp_gnav_main > .sp_gnav_close {
    opacity: 1;
    transform: translateY(0);
  }
  .sp_gnav.active .sp_gnav_main > ul > li.media {
    border-top: 1px solid #999999;
    padding: 15px 0 0px;
    margin-bottom: 0;
  }
  /*
  .sp_gnav.active .sp_gnav_main > ul > li:nth-child(1) {
    transition-delay: .5s;
  }
  .sp_gnav.active .sp_gnav_main > ul > li:nth-child(2) {
    transition-delay: .6s;
  }
  .sp_gnav.active .sp_gnav_main > ul > li:nth-child(3) {
    transition-delay: .7s;
  }
  .sp_gnav.active .sp_gnav_main > ul > li:nth-child(4) {
    transition-delay: .8s;
  }
  .sp_gnav.active .sp_gnav_main > ul > li:nth-child(5) {
    transition-delay: .9s;
  }
  .sp_gnav.active .sp_gnav_main > .sp_gnav_contact {
    transition-delay: 1s;
  }
  .sp_gnav.active .sp_gnav_main > .sp_gnav_privacy {
    transition-delay: 1.1s;
  }
  .sp_gnav.active .sp_gnav_main > .sp_gnav_close {
    transition-delay: 1.2s;
  }
  */
  .n_inner_btn {
    text-align: center;
    margin: 15px auto;
    border-top: 1px solid #999999;

  }
  /*
  .n_inner_btn ul li {
    display: flex;
    justify-content: center;
  }
  */
  .n_inner_btn ul li a {
    margin-top: 35px;
    display: inline-block;
  }
  .n_inner_btn ul li .fx_inner .ft .txt {
    color: #fff;
    text-align: center;
    font-size: 1.6rem;
    font-weight: bolder;
    margin: 30px auto -10px;
  }
  .n_inner_btn ul li.privacy a span {
    color: #fff;
    font-size: 1.1rem;
    text-align: center;
  }



}

/*===================================
  
  メイン

===================================*/
.main {
  margin-top: 85px;
  padding: 0 0 100px;
}

.header_submenu_on + .main {
  margin-top: 120px;
}

.header_hamburger + .main {
  margin-top: 100px;
}

/*------------------------------------
メイン?�?SP?�?
------------------------------------*/
@media screen and (max-width: 991px) {
  .main {
    margin-top: 50px !important;
    padding: 0 0 50px;
  }
}

/*===================================
  
  フッター

===================================*/
.footer {
  margin-top: auto;
  background: #fff;
  padding: 0;
}

.footer_inner {
  width: 960px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}

.footer_info {
  padding: 50px 0;
}

.footer_logo {
  display: flex;
  align-items: flex-end;
}

.footer_logo > a > img {
  display: block;
  height: 40px;
  margin-right: 30px;
}

.footer_logo > span {
  font-size: 16px;
  font-weight: bold;
}

.footer_address {
  margin-top: 30px;
}

.footer_tel {
  margin-top: 30px;
  display: flex;
  align-items: center;
}

.footer_tel > img {
  display: block;
  height: 45px;
  margin-right: 15px;
}

.footer_tel span {
  font-size: 2rem;
  color: #333;
  display: block;
  font-weight: bold;
  line-height: 1;
}

.footer_tel span:nth-child(1) {
  font-weight: bold;
  font-family: "游ゴシ�?ク�?", YuGothic, "游ゴシ�?ク", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
}

.footer_tel span:nth-child(2) {
  font-size: 1.4rem;
  margin-top: 8px;
  font-weight: normal;
}

.footer_contact {
  margin-top: 20px;
}

.footer_contact a {
  width: 200px;
  display: inline-block;
  color: #FFF !important;
  font-size: 1.4rem;
  font-weight: bold;
  background: #01BFF2 url(../img/img-common/icon_mail.png) no-repeat 15% center;
  background-size: 22px auto;
  padding: 10px 0 10px 20px;
  text-align: center;
  cursor: pointer;
}

.footer_copyright {
  text-align: center;
  padding: 10px;
  color: #fff;
  background: #01BFF2;
}

.footer_copyright a {
  color: #fff !important;
}

.footer_gmap {
  width: 50%;
}

.footer_gmap > iframe {
  width: 100%;
  height: 100%;
  border: none;
}



/*------------------------------------
フッター?�?PC?�?
------------------------------------*/
@media print, screen and (min-width: 992px) {
  .footer_logo > span {
    white-space: nowrap;
  }
  .footer_address {
    white-space: nowrap;
  }
  .footer_nav {
    display: flex;
    padding: 50px 0;
  }
  .footer_nav > ul > li > a {
    position: relative;
    display: block;
    margin-bottom: 20px;
    padding-left: 25px;
  }
  .footer_nav > ul > li > a::before {
    content: '';
    width: 7px;
    height: 7px;
    border: 0px;
    border-top: solid 1px #01BFF2;
    border-right: solid 1px #01BFF2;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    left: 0;
  }
  .footer_nav > ul > li > a:hover {
    text-decoration: underline;
  }
  .footer_nav > ul:nth-child(1) {
    margin-right: 100px;
  }
  .footer_catnav {
    padding: 60px 0 100px;
    background: #eee;
  }
  .footer_catnav_inner {
    display: flex;
    width: 960px;
    margin: auto;
  }
  .footer_catnav_item {
    width: 25%;
  }
  .footer_catnav_item > dt {
    font-size: 1.8rem;
    font-weight: bold;
    color: #01BFF2;
    margin-bottom: 20px;
  }
  .footer_catnav_item > dd > ul > li:not(:last-child) {
    margin-bottom: 10px;
  }
  .footer_catnav_item > dd > ul > li > a {
    position: relative;
    display: block;
    padding-left: 15px;
  }
  .footer_catnav_item > dd > ul > li > a::before {
    content: '';
    position: absolute;
    background: #009fe9;
    width: 5px;
    height: 2px;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
  }
  .footer_catnav_item > dd > ul > li > a:hover {
    text-decoration: underline;
  }
  footer .fot_access {
    display: flex;
    flex-wrap: wrap;
    /* justify-content: space-between; */
  }
  footer .fot_access .fot_logo {
  }
  footer .fot_access .fot_sns {
  }
  footer .fot_access .fot_tel {
  }
  footer .fot_access .fot_contact_btn {
    min-width: 210px;
    /* padding: 0 0 0 30px; */
  }
  footer .fot_access .fot_address {
    width: 100%;
  }

}

/*------------------------------------
フッター?�?SP?�?
------------------------------------*/
@media screen and (max-width: 991px) {
  footer .inner {
    padding: 0;
  }
  .footer {
    background: #fff;
  }
  .footer_inner {
    width: 100%;
    display: block;
    padding-bottom: 40px;
  }
  .footer_info {
    padding: 0 5%;
    display: flex;
    justify-content: center;
    flex-direction: column;
  }
  .footer_logo {
    flex-wrap: wrap;
  }
  .footer_logo > a {
    display: block;
    margin: auto;
  }
  .footer_logo > a > img {
    height: 30px;
    margin: 0 auto 20px;
  }
  .footer_logo > span {
    width: 100%;
  }
  .footer_address {
    margin-top: 10px;
  }
  .footer_tel {
    justify-content: center;
  }
  .footer_tel span {
    font-size: 1.6rem;
  }
  .footer_tel span:nth-child(2) {
    font-size: 1.2rem;
  }
  .footer_contact {
    justify-content: center;
  }
  .footer_contact a {
    width: 75%;
    display: block;
    margin: 0 auto;
  }
  .footer_nav {
    margin-bottom: 40px;
  }
  .footer_nav > ul {
    border-bottom: 1px dotted #444;
  }
  .footer_nav > ul > li > a {
    position: relative;
    text-decoration: none;
    font-size: 1.1rem;
    width: 100%;
    display: block;
    padding: 4% 5%;
    background: #eee;
  }
  .footer_nav > ul > li > a::after {
    content: '';
    width: 8px;
    height: 8px;
    border: 0px;
    border-top: solid 1px #00BFF2;
    border-right: solid 1px #00BFF2;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    bottom: 0;
    right: 7%;
    margin: auto;
  }
  .footer_nav > ul > li:not(:first-child) {
    border-top: 1px dotted #444;
  }
  .footer_ac {
    position: relative;
    text-decoration: none;
    font-size: 1.1rem;
    width: 100%;
    display: block;
    padding: 4% 5%;
    background: #eee;
    cursor: pointer;
  }
  .footer_ac::before {
    content: '';
    position: absolute;
    background-color: #01BFF2;
    top: 50%;
    right: 6%;
    width: 12px;
    height: 2px;
    margin-top: -1px;
  }
  .footer_ac::after {
    content: '';
    position: absolute;
    background-color: #01BFF2;
    top: 50%;
    right: 6%;
    width: 12px;
    height: 2px;
    margin-top: -1px;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    -webkit-transition: all 0.4s ease;
    transition: all 0.4s ease;
  }
  .footer_ac.is_open::after {
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .footer_submenu {
    padding: 2% 0;
  }
  .footer_submenu > li > a {
    position: relative;
    text-decoration: none;
    font-size: 1rem;
    width: 100%;
    display: block;
    padding: 2.5% 10%;
  }
  .footer_submenu > li > a::after {
    content: '';
    width: 7px;
    height: 7px;
    border: 0px;
    border-top: solid 1px #444;
    border-right: solid 1px #444;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    bottom: 0;
    right: 10%;
    margin: auto;
  }
  .sp_footer_privacy {
    position: relative;
    display: block;
    text-align: right;
    width: 75%;
    margin: 15px auto 0;
    padding-right: 15px;
  }
  .sp_footer_privacy::before {
    content: '';
    width: 8px;
    height: 8px;
    border: 0px;
    border-top: solid 1px #01BFF2;
    border-right: solid 1px #01BFF2;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
  }
}

/*===================================
  
  ペ�?�ジトッ�?

===================================*/
.pagetop {
  width: 46px;
  height: 46px;
  position: fixed;
  bottom: 50px;
  right: 20px;
  transition: opacity 1s;
  opacity: 0;
  cursor: pointer;
  z-index: 9999;
}

.pagetop.is_active {
  opacity: 1;
}

@media screen and (max-width: 991px) {
  .pagetop {
    width: 35px;
    height: 35px;
    bottom: 80px;
    right: 10px;
  }
}

/*===================================
  
  パンくず

===================================*/
.bread_crumb {
  height: 30px;
  text-align: right;
  padding: 0;
  line-height: 30px;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  position: relative;
  color: #403b3b;
}

.bread_crumb a {
  text-decoration: underline !important;
  color: #403b3b;
}

.bread_crumb a:hover {
  text-decoration: none !important;
  opacity: 1;
}




/* header
------------------------------------*/
body::before {
  content: "";
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.25);
  /* �D�݂ŔZ������ */
  z-index: 9990;
  opacity: 0;
  pointer-events: none;
  /* hover���ז����Ȃ� */
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}

body:has(.gnav .menu > li.menu__mega:hover)::before,
body:has(#hideHeader .gnav .menu > li.menu__mega:hover)::before {
  opacity: 1;
}

/* �w�b�_�[�i�i�r�j���I�[�o�[���C���O�ɏo�� */
@media screen and (min-width: 992px) {
  .header,
  #hideHeader {
    position: relative;
  }
  .header {
    z-index: 10001;
  }
  #hideHeader {
    z-index: 10000;
  }
}

.gnav::before,
.header_wrap::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0;
  background: rgba(0, 0, 0, 0.25);
  /* �D�݂ŔZ������ */
  z-index: 9990;
  pointer-events: none;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}

body:has(.gnav .menu > li.menu__mega:hover) .gnav::before,
body:has(.gnav .menu > li.menu__mega:hover) .header_wrap::before {
  opacity: 1;
}

.gnav nav > ul li.menu__mega:hover {
  background: #fff;
  color: #333;
  z-index: 9991;
}

.gnav nav > ul li.menu__mega:hover a {
  color: #333;
}

.gnav .menu li.menu__mega > a > span {
  position: relative;
  padding-right: 18px;
}

.gnav .menu li.menu__mega > a > span::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 5px solid transparent;
  border-left: 5px solid transparent;
  border-top: 6px solid #333;
  border-bottom: 0;
}

.gnav .menu li.menu__mega .second-level .flex {
  display: flex;
  align-items: flex-start;
  padding: 20px 0;
}

.gnav .menu li.menu__mega .second-level .flex.--center {
  justify-content: center;
  padding: 15px 0 0;
}

.gnav .menu li.menu__mega .second-level .flex .item + .item {
  margin-left: 40px;
}

@media screen and (max-width: 1200px) {
  .gnav .menu li.menu__mega .second-level .flex .item + .item {
    margin-left: 30px;
  }
}

.gnav .menu li.menu__mega .second-level .flex.--center .item + .item{
  margin-left: 140px;
}

.gnav .menu li.menu__mega .second-level .flex .item dl dt .t1 {
  font-size: 1.8rem;
  font-weight: 700;
}

@media screen and (max-width: 1200px) {
  .gnav .menu li.menu__mega .second-level .flex .item dl dt .t1 {
    font-size: 1.5vw;
  }
}

.gnav .menu li.menu__mega .second-level .flex .item dl dt .t2 {
  font-size: 1.4rem;
  font-weight: 700;
  color: #cccccc;
  padding-top: 3px;
}

@media screen and (max-width: 1200px) {
  .gnav .menu li.menu__mega .second-level .flex .item dl dt .t2 {
    font-size: 1.1666666666666667vw;
  }
}

.gnav .menu li.menu__mega .second-level .flex .item dl dd {
  padding-top: 25px;
}

.gnav .menu li.menu__mega .second-level .flex .item dl dd ul li {
  background: none !important;
}

.gnav .menu li.menu__mega .second-level .flex .item ul li + li {
  margin-top: 15px;
}

.gnav .menu li.menu__mega .second-level .flex .item ul li a {
  position: relative;
  padding-left: 30px;
  font-size: 1.6rem;
  font-weight: 700;
  background: none !important;
}

@media screen and (max-width: 1200px) {
  .gnav .menu li.menu__mega .second-level .flex .item ul li a {
    font-size: 1.3333333333333335vw;
  }
}

.gnav .menu li.menu__mega .second-level .flex .item ul li a::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  left: 0;
  width: 20px;
  height: 20px;
  background: #fff;
  border-radius: 50%;
  border: 1px solid #d9d9d9;
}

.gnav .menu li.menu__mega .second-level .flex .item ul li a::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 8px;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 6px solid #333;
  border-right: 0;
}

.gnav .menu li.menu__mega .second-level .flex .item ul li a:hover > span {
  text-decoration: underline;
}

.gnav .menu li.menu__mega .second-level .flex .item ul li {
  float: none;
  background: none !important;
}