@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@500;700&Montserrat:wght@600&family=Squada+One&display=swap');


/* ===== base ===== */
:root {
	font-size: 16px;
	letter-spacing: 0.05;
	line-height: 1.6;
    --corpred:#da2429;
}

body {
	color: #373737;
	background-color: #FFFFFF;
	font-family: 'Noto Sans JP', sans-serif;
	padding-top: 60px;
	overflow-x: hidden;
}


a,
a:visited {
    color: #ffffff; transition: opacity 300ms 0s ease; text-decoration: none;
}
a:hover {
    opacity: 0.7; /*text-decoration: underline;*/
}
h1, h2, h3, h4, h5, h6 {
    font-weight: normal; margin: 0; padding: 0;
}
article{ position: relative; padding-bottom: 76px;}

p{}
sup { font-size: 75%; vertical-align: top; position: relative; top: -0.1em;}

.clearfix::after {
  content: "";
  display: block;
  clear: both;
}

/**パンくず**/
#bread_list{
display: flex;
flex-wrap: wrap;
/*padding: 0.5em 20px;*/
position: absolute;
left: 1em;
top: 0.5em;
z-index: 2;
color: #fff;
}
#bread_list li{
font-size: 0.75em;
letter-spacing: 0.1em;
padding-left: 0.5em;
padding-right: 0.5em;
}
#bread_list li a,#bread_list li span{color: #fff;}
#bread_list li:before{content: "＞";display: inline-block;font-size: 0.6em;margin-right: 0.5em;}
#bread_list li:first-child:before{display: none;}

#bread_list.bgWhite{color: #000;}
#bread_list.bgWhite li a,#bread_list.bgWhite li span{color: #000;}

/**電話番号リンク**/
a[href*="tel:"] {
pointer-events: none;
cursor: default;
text-decoration: none;
}


/**section**/
section[id*="sect_"]{
padding: 70px 0px;
position:relative;
}


/**box**/
[class*="wth_"]{ margin-left: auto;	margin-right: auto; padding-left: 50px; padding-right: 50px;}
[class*="wth_600"]{ max-width: 600px;}
[class*="wth_700"]{ max-width: 700px;}
[class*="wth_800"]{ max-width: 800px;}
[class*="wth_900"]{ max-width: 900px;}
[class*="wth_1000"]{ max-width: 1000px;}
[class*="wth_1100"]{ max-width: 1100px;}
[class*="wth_1200"]{ max-width: 1200px;}
[class*="wth_1300"]{ max-width: 1300px;}
[class*="wth_1400"]{ max-width: 1400px;}
[class*="wth_1500"]{ max-width: 1500px;}
[class*="wth_1600"]{ max-width: 1600px;}
[class*="wth_1700"]{ max-width: 1700px;}
[class*="wth_1800"]{ max-width: 1800px;}
[class*="wth_1900"]{ max-width: 1900px;}
[class*="wth_2000"]{ max-width: 2000px;}
[class*="wth_"][class*="_nopad"]{ padding-left: 0px!important; padding-right: 0px!important;}

/**縦分割フォーマット**/
[class^="col_"]{
display:-webkit-box;
display:-moz-box;
display:-ms-flexbox;
display:-webkit-flex;
display:-moz-flex;
display:flex;
justify-content: center;
flex-wrap: wrap;
overflow: hidden;
}
[class^="col_"]>*{ float: left; position: relative; }
[class^="col_02"]>* { width: 48.5%; margin-right: 3%; margin-bottom: 30px;}
[class^="col_02"]>*:nth-of-type(2n){ margin-right: 0px;}
[class^="col_02"]>*:last-child{margin-right: 0px;}
[class^="col_03"]>*{ width: 31%; margin-right: 3.5%; margin-bottom: 30px;}
[class^="col_03"]>*:nth-of-type(3n){margin-right: 0;}
[class^="col_03"]>*:last-child{margin-right: 0px;}
[class^="col_04"]>*{ width: 22.3%; margin-right: 3.6%;}
[class^="col_04"]>*:nth-of-type(4n){margin-right: 0px;}
[class^="col_04"]>*:last-child{margin-right: 0px;}
[class^="col_05"]>*{ width: 18%; margin-right: 2.5%;}
[class^="col_05"]>*:nth-of-type(5n),
[class^="col_05"]>*:last-child{margin-right: 0px;}
[class^="col_06"]>*{ width: 15%; margin-right: 2%;}
[class^="col_06"]>*:nth-of-type(6n),
[class^="col_06"]>*:last-child{margin-right: 0px;}

[class^="col_"]>* img{width: 100%;}
[class^="col_"][class*="_nomarg"]>*{margin-right: 0; width: 100%;}

[class^="w100per_col_"]{display: flex;display: -webkit-box; /*Android4.3*/display: -moz-box;    /*Firefox21*/display: -ms-flexbox; /*IE10*/display: -webkit-flex; /*PC-Safari,iOS8.4*/overflow: hidden;}

[class^="w100per_col_02"]> *{ width: 50%;float: left;}
[class^="w100per_col_02"]> *:first-child{ text-align: right;}
[class^="w100per_col_02"] > *:first-child .partit_box{
width: 600px;
padding-left: 50px;
text-align: left;
float: right;
padding-right: 30px;
}
.w100per_col2 > *:last-child{
text-align: left;
}
.w100per_col2 > *:last-child .partit_box{
width: 600px;
padding-right: 50px;
padding-right: 30px;
}

/**display属性**/
[class*="dis_bl"]{display: block;}
[class*="dis_ib"]{display: inline-block;}
[class*="dis_il"]{display: inline;}


/* PC,SP表示切替 */
[class*="pc_only"]{ display: inline-block!important; }
.pc_onlyBL{ display: block!important;}
.pc_onlyFL{ display: flex!important;}
.pc_onlyIN{	display: inline!important;}
[class*="sp_only"]{ display: none!important; }

/**text-align**/
[class*="taln"][class*="_left"]{ text-align: left!important;}
[class*="taln"][class*="_center"]{ text-align: center!important;}
[class*="taln"][class*="_right"]{ text-align: right!important;}

/**float**/
[class*="fl_"][class*="right"]{float: right; padding-left: 1.5em; padding-bottom: 1.5em;}
[class*="fl_"][class*="left"]{float: left; padding-right: 1.5em; padding-bottom: 1.5em;}

/**フォントサイズ**/
.fs200per{font-size: 200%!important;}
.fs150per{font-size: 150%!important;}
.fs125per{font-size: 125%!important;}
.fs90per{font-size: 90%!important;}
.fs75per{font-size: 75%!important;}
.fs50per{font-size: 50%!important;}

/**table**/
table.tab_def01{}
table.tab_def01 th,table.tab_def01 td{
padding: 1em;
text-align: left;
}
table.tab_def01 th{
padding-left: 0;
}

/**見出し下**/
.lead_txt{}
.lead_txt small{ display: block; padding-top: 3em;}

/**見出し**/
.mid_title{
	text-align: center;
	font-weight: bold;
	font-size: 2.4rem;
	position: relative;
	margin-bottom: 1.2em;
	padding-bottom: 1em;
	line-height: 1.4em;
}
.mid_title:before,.mid_title:after{	content: ""; position: absolute; bottom: 0px; width: 50px; height: 8px;}
.mid_title:before{ background-color: #DA2429; right: 50%;}
.mid_title:after{ background-color: #939393; left: 50%;}
.mid_title small{ font-size: 75%;}


[class*="smid_title"]{
	font-size: 2em;
	line-height: 1.4em;
	text-align: center;
	position: relative;
	padding-bottom: 1.6em;
	margin-bottom: 1em;
}
[class*="smid_title"]:after{
	content: "";
	position: absolute;
	display: block;
	width: 1px;
	height: 1em;
	bottom: 0px;
	margin: auto;
	left: 0;
	right: 0;
	background-color: #000000;
}
.smid_titleNoline{padding-bottom:0;}
.smid_titleNoline:after{display: none; }
.item_name{
	font-size: 1.5em;
	line-height: 1.4em;
	text-align: center;
	padding-bottom: 1em;
}
.mid_title + [class*="smid_title"]{ padding-top: 1.2em!important;}




/**配下ページタイトル**/

section#sub_pagettl{ height: 350px;	background-repeat: no-repeat; background-position: center center; background-size: cover; display: flex; justify-content: center; align-items: center;}
section#sub_pagettl .mid_title{	color: #FFFFFF;	margin-bottom: 0.8em;}

/**yutubeボックス**/
.ytube_box{ position: relative;}
.ytube_box:before{ content:""; display: block; padding-top: 56.25%;}
.ytube_box iframe{ position: absolute; top: 0; left: 0; bottom: 0; right: 0; width: 100%; height:100%;}

/**共有VRエリア**/
#sect_vr{ }
#sect_vr .lead_txt{text-align: center;}
#sect_vr .atten_camera{ font-size: 50%; display: block; padding-top: 0.75em; line-height: 1.4em;}
#sect_vr img.ico_camera{ display: inline-block; height: 1.2em; margin-right: 0.25em; vertical-align: middle;}
#sect_vr .atten_vr{ padding-top: 1em;}

/**VRiframe周り**/
.vr_box{ position: relative;}
.vr_box:before{ content:""; display: block; padding-top: 60%;}
.vr_box iframe{ position: absolute; top: 0; left: 0; bottom: 0; right: 0; width: 100%; height:100%;}

/**フローティングバナー21ver**/
	#sticky_btn{ display: block; position: fixed; bottom: -100px; width: 100%; z-index: 80; transition: all 300ms 0s ease; opacity: 0; }

	#sticky_btn .conv_box { padding: 0.75em 0 0 0; background-color: #fff; }
	#sticky_btn .conv_box .btn_box{overflow:visible;}
	#sticky_btn .conv_box .btn_box [class^="col_03"]>* { width: 32.5%; margin-right: 1.25%; margin-bottom: 0.8em;}
    #sticky_btn .conv_box .btn_box [class^="col_03"]>*:last-child{margin-right: 0;}
    #sticky_btn .conv_box .btn_box [class^="col_03"]>* img{position: absolute; top: 0; bottom: 0; left: 0.75em; width: 1.75em; height: auto; margin: auto;}
    #sticky_btn .conv_box .btn_box [class*="comm_btn-dimen"]{margin-top: 0; padding-top: 0.65em; padding-bottom: 0.75em;}
	#sticky_btn.fbtn_on{ display: block; opacity: 1; bottom: 0; }
	#sticky_btn .float_btn{	font-size: 1.2rem;	margin-bottom: 0; }

    #sticky_btn .totop_btn{position: absolute; right:1em; top:-5.5em;}
	#sticky_btn .totop_btn .free_pop{ padding-top: 0.5em; color: #fff; background-color: #585858; display: inline-block; width: 4.5em; height: 4.5em; border-radius: 50%; text-align: center; /*animation: pop_anime 2s ease-out infinite;*/ }
    #sticky_btn .totop_btn .free_pop:before{ content: ""; display: block; width: 1em; height: 1em; background-image: url(../img/arr_white.svg);
	background-repeat: no-repeat; background-position: center center; background-size: auto 100%; margin: auto; transform:rotate(-90deg); }

	@keyframes pop_anime { 0%, 40%, 60%, 80% { transform: scale(1.0); } 50%, 70% { transform: scale(0.9);} }

	#sticky_btn .totop_btn .free_pop:after{
	  /*content: "";
	  position: absolute;
	  top: 100%;
	  left: 50%;
	  margin-left: -6px;
	  border: 6px solid transparent;
	  border-top: 6px solid #1191ea;*/
	}


/**フローティングバナー22ver**/
	#sticky_btn-22ver{
    display: block; position: fixed; bottom: -100px; width: 100%; z-index: 80; transition: all 300ms 0s ease; opacity: 0; background-color: #fff;
	}

	#sticky_btn-22ver .conv_box { padding: 0.75em 0 0.75em 0;}
	#sticky_btn-22ver .conv_box .btn_box{overflow:visible;}
    #sticky_btn-22ver .conv_box .btn_box [class^="col_02"]>* {margin-bottom: 0.8em; margin-bottom: 0;}
    #sticky_btn-22ver .conv_box .btn_box [class^="col_02"]>* a{margin-top: 0;}
    #sticky_btn-22ver .conv_box .btn_box [class*="comm_btn-dimen"]{ border-radius: 0;}
	#sticky_btn-22ver.fbtn_on{ display: block; opacity: 1; bottom: 0; }
	#sticky_btn-22ver .float_btn{	font-size: 1.2rem;	margin-bottom: 0!important;}

	#sticky_btn-22ver .float_btn .free_pop{
		position: absolute; top: 0px; left: 0px; font-size: 75%; margin-top: -1em; margin-right: auto; margin-left: auto; margin-bottom: auto; right: 0px; color: #fff; background-color: #1191ea; display: inline-block; width: 15em; border-radius: 4px; padding:0; text-align: center; animation: pop_anime 2s ease-out infinite; opacity: 1;
	}

	@keyframes pop_anime { 0%, 40%, 60%, 80% { transform: scale(1.0); } 50%, 70% { transform: scale(0.9);} }

	#sticky_btn-22ver .float_btn .free_pop:before{
	  content: "";
	  position: absolute;
	  top: 100%;
	  left: 50%;
	  margin-left: -6px;
	  border: 6px solid transparent;
	  border-top: 6px solid #1191ea;
	}





/* ##### responsive ##### */
@media screen and (max-width: 760px) {
    body {
        max-width: 100vw;     overflow-x: hidden; }
    article{ padding-bottom: 84px;}
    
    /**パンくず**/
    #bread_list{
    max-width: initial; left: 0.5em; }
    #bread_list li{ font-size: 11px; letter-spacing: 0em; padding-left: 0.2em; padding-right: 0.2em;}
    #bread_list li:before { font-size: 0.5em; margin-right: 0.4em;
}
    /**電話番号リンク**/
    a[href*="tel:"] {
    pointer-events: auto; } 
    
    
    /**BOX**/
	[class*="wth_"]{width: 100%; padding-left: 5%;padding-right: 5%;}
    
    [class*="wth_"][class*="-full"]{
        padding-left: 0px!important; padding-right: 0px!important; }
	[class^="w100per_col_"]{ display: block; }

    [class^="w100per_col_"] > *{
    width: 100%; }
    [class^="w100per_col_"] > *:first-child{
    }
    [class^="w100per_col_"] > *:first-child .partit_box{
    width: 100%; padding-left: 5vw; text-align: left; float: left; padding-right: 5vw; }
    [class^="w100per_col_"] > *:last-child{
    }
    [class^="w100per_col_"] > *:last-child .partit_box{
    width: 100%; padding-left: 5vw; text-align: left; float: left; padding-right: 5vw; }

/**縦分割フォーマット**/
    [class^="col_"]{}
    [class^="col_02"]>*{}
    [class^="col_03"]>*{ width: 48.5%; margin-right: 3%;}
    [class^="col_03"]>*:nth-of-type(3n){margin-right: 3%;}
	[class^="col_03"]>*:nth-of-type(2n){margin-right: 0;}
	[class^="col_03"]>*:last-child{margin-right: 0;}
	[class^="col_03"][class*="-wrapkeep"]>*{ width: 31%; margin-right: 3.5%;}
	[class^="col_03"][class*="-wrapkeep"]>*:nth-of-type(3n){margin-right: 0;}
	[class^="col_03"][class*="-wrapkeep"]>*:last-child{margin-right: 0px;}
	.col_03-nomarg{	}
	.col_03-nomarg li{ width :100%; margin-bottom: 36px;}
	[class^="col_04"]>li{ width: 48.5%; margin-right: 3%; }
    [class^="col_04"]>li:nth-of-type(2n){ margin-right: 0px;}
	.col_04-nomarg{	}
	.col_04-nomarg li{ width :50%; margin-bottom: 36px;}
	
	[class^="col"][class*="-single"]>*{
	margin-right: 0px!important;
	margin-left: 0px!important;
	width: 100%;
}

    /**section**/
    section[id*="sect_"]{
    padding: 40px 0px; }

    /* PC,SP表示切替 */
    [class*="pc_only"]{ display: none!important; }
    [class*="sp_only"]{ display: inline-block!important;; }
    .sp_onlyBL{ display: block!important;}
    .sp_onlyIN{ display: inline!important;}
 

	/**見出し**/
	.mid_title{	font-size: 1.8rem;}
	.mid_title:before,.mid_title:after{	}
	.mid_title small{ font-size: 75%;}

	[class*="smid_title"]{
		font-size: 1.4em;
	}
	[class*="smid_title"]:after{

	}

	.item_name{
		font-size: 1.2em;
	}


	/**配下ページタイトル**/

	section#sub_pagettl{
	height: 100vw; max-height: 350px;}

	.ytube_box{
		width: 100%; float: auto; margin-top: 1em;
	}
	.ytube_box img{
		width: 100%; height: auto;
	}
    
	/**共有VRエリア**/
    #sect_vr .atten_vr{ font-size: 90%;}
    /**VRiframe周り**/
	.vr_box:before{ content:""; display: block; padding-top: 100%;}

    /**フローティングバナー21ver**/
        #sticky_btn{ }
        #sticky_btn [class*="comm_btn-dimen"]{ padding-top: 0.5em; padding-bottom: 0.6em; border-radius: 0!important; box-shadow:none; margin-top: 0;}
        #sticky_btn [class^="comm_btn"]:after{display: none;}
        #sticky_btn .conv_box { padding-bottom: 0; padding-top: 0;}
        #sticky_btn .conv_box .btn_box [class^="col_"]{ flex-wrap: nowrap;}
        #sticky_btn .conv_box .btn_box [class^="col_"]>*{ margin-bottom: 0;}
        
        #sticky_btn .conv_box .btn_box [class^="col_03"]>* { width: 100%; margin-right: 0;}
        #sticky_btn .conv_box .btn_box [class^="col_03"]>*:last-child{margin-right: 0;}
        #sticky_btn .conv_box .btn_box [class^="col_03"]>* img{position: static; display: block; width: 1.75em; margin: auto; }
        
        #sticky_btn.fbtn_on{ }
        #sticky_btn .float_btn{	font-size: 0.9rem;}
        #sticky_btn .totop_btn{ font-size: 75%; }
        #sticky_btn .totop_btn .free_pop{ width: 4.5em; height: 4.5em;  }
        #sticky_btn .totop_btn .free_pop:before{ width: 1em; height: 1em; }

    /**フローティングバナー22ver**/
        #sticky_btn-22ver{ }
        #sticky_btn-22ver [class*="comm_btn-dimen"]{ padding-top: 1.6em; padding-bottom: 1.7em; border-radius: 0!important; box-shadow:none; margin-top: 0;}
        #sticky_btn-22ver [class^="comm_btn"]:after{}
        #sticky_btn-22ver .conv_box { padding-bottom: 0; padding-top: 0;}
        #sticky_btn-22ver .conv_box .btn_box [class^="col_"]>*{ margin-bottom: 0;}
        
        #sticky_btn-22ver .conv_box .btn_box [class^="col_02"]>* { width: calc(100% / 2); margin-right: 0;}
        #sticky_btn-22ver .conv_box .btn_box [class^="col_02"]>*:last-child{margin-right: 0;}
        #sticky_btn-22ver .conv_box .btn_box [class^="col_02"]>* img{position: static; display: block; width: 1.75em; margin: auto; }
        #sticky_btn-22ver .conv_box .btn_box [class^="col_02"]>*:only-child{width: 100%;}
        #sticky_btn-22ver.fbtn_on{ }
        #sticky_btn-22ver .float_btn{ font-size:clamp(0.85em,4vw,1.2em) ; padding-right: 1em; padding-left: 0;}
}
