@charset "utf-8";
/* 
	
CSS base.css */



/*
main #cc0001
sub #79511b
*/




/*//////////////////


Header


//////////////////*/

#header { position: fixed; top: 0; left: 0; z-index: 1000; height: 100px; width: 100%; transition: 0.3s; padding-left: 60px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
body:not(#index) #header{ background: #fff }
#header .incnt{ height: 100%; }
#header .mainbox{ display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -webkit-flex-direction: row; -moz-flex-direction: row; -ms-flex-direction: row; -o-flex-direction: row; flex-direction: row; -ms-align-items: center; align-items: center; justify-content: space-between; height: 100%; }
#header .mainbox .sitetitlebox{ width: 44%; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -webkit-flex-direction: row; -moz-flex-direction: row; -ms-flex-direction: row; -o-flex-direction: row; flex-direction: row; -ms-align-items: center; align-items: center; }
#header .mainbox .sitetitlebox .logo{ width: 216px; z-index: 100; flex-shrink: 0; }
#header .mainbox .sitetitlebox .logo>a{  }
#header .mainbox .sitetitlebox .logo>a>svg{ width: 216px; height: 20px; }
#index #header .mainbox .sitetitlebox .logo>a>svg .logo_st0.st0{ fill:#fff; transition: 0.3s; }
#header .mainbox .sitetitlebox .cap{ margin-left: 10px; line-height: 1.6; }
#header .rightbox{  }
#header.fixed { background: #fff; color: initial; }
#header.fixed .mainbox { }
#header.fixed .mainbox {  }
#index #header.fixed .mainbox .sitetitlebox .logo>a>svg .logo_st0.st0{fill:#191919;}
@media screen and (max-width: 1200px) {
	#header .mainbox .sitetitlebox .cap{ display: none; }
	#header .mainbox .sitetitlebox{ width: 288px; }
}
@media screen and (max-width: 1040px) {
	#header{ height: 80px; position: static; }
	#header .rightbox .contactbox{ display: none; }
	#header .mainbox .sitetitlebox .logo{ margin-top: 5px }
	#index #header .mainbox .sitetitlebox .logo>a>svg .logo_st0.st0{ fill:#262626; }
	/*#header .mainbox .sitetitlebox .logo>a>img._1{ display: none; }
	#header .mainbox .sitetitlebox .logo>a>img._2{ display: block; }*/
	#header .mainbox .sitetitlebox{ width: 100%; position: relative; width: 60%; }
}
@media screen and (max-width: 767px) {
	#header{ padding-left: 6% }
	#header { /*position: static;*/ height: 65px; }
	#header .mainbox .sitetitlebox .logo>a>svg{ width: 180px; height: auto; }
	#header .mainbox .sitetitlebox .logo{ width: 100%; }
}

/* スライド画像のエフェクト */
@keyframes navfit {
  0% { transform: translate(0px, -50px); }
  100% { transform: translate(0px, 0px);  }
}






/*//////////////////


Nav


//////////////////*/

#gnav>.scrollcover{  }

.navlist{  }
#gnav.navlist{ text-align: right; padding-right: 214px; height: 100px; }
#gnav.navlist>.navbox,
#gnav.navlist>.navbox .mainlistcover,
#gnav.navlist>.navbox .mainlistcover .mainlist,
#gnav.navlist>.navbox .mainlistcover .mainlist>li,
#gnav.navlist>.navbox .mainlistcover .mainlist>li>a,
#gnav.navlist>.navbox .mainlistcover .mainlist>li>a>span,
#gnav.navlist>.navbox .mainlistcover .mainlist>li>p,
#gnav.navlist>.navbox .mainlistcover .mainlist>li>p>span,
#sidetopmenubtnlist{ height: 100%; }
#gnav.navlist .mainlist{ display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -webkit-flex-direction: row; -moz-flex-direction: row; -ms-flex-direction: row; -o-flex-direction: row; flex-direction: row; }
#gnav.navlist .mainlist>li{ margin-left: 15px; vertical-align: middle; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; }
#gnav.navlist .mainlist>li:first-child{ padding-left: 0; display: none; }
#gnav.navlist .mainlist>li a,
#gnav.navlist .mainlist>li>p{ padding-bottom: 15px; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; cursor: pointer; }
#index #gnav.navlist .mainlist>li a,
#index #gnav.navlist .mainlist>li>p{ color: #fff; }
#gnav.navlist .mainlist>li a:hover,
#gnav.navlist .mainlist>li>p:hover,
#index #gnav.navlist .mainlist>li a:hover,
#index #gnav.navlist .mainlist>li>p:hover{ color: #034150; }
#gnav.navlist .mainlist>li a span,
#gnav.navlist .mainlist>li>p span{ display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -ms-align-items: center; align-items: center; letter-spacing: 0.1em; }
#gnav.navlist .mainlist>li.sp{ display: none; }
#gnav.navlist .mainlist>li.hassub{ position: relative; }
#gnav.navlist .mainlist>li .sublist{ position: absolute; left: calc((234px - 100%)/-2); top: 100px; overflow: hidden; margin-bottom: -5px; width: 234px; opacity: 0; visibility: hidden; transition: .5s; overflow: hidden; }
#gnav.navlist .mainlist>li .sublist>li{ margin-bottom: 5px }
#gnav.navlist .mainlist>li .sublist>li>a{ background: #034150; padding: 14px 20px; box-sizing: border-box; justify-content: center; color: #fff }
#gnav.navlist .mainlist>li .sublist>li>a:hover{ background: #eee; color: #034150; }
#gnav.navlist .mainlist>li:nth-child(5){ display: none; }
#gnav.navlist .mainlist>li.active .sublist{ display: block; opacity: 1; visibility: visible; }
#gnav.navlist a{ text-decoration: none; }
#gnav.navlist .navoption{ display: none; }
#sidetopmenubtnlist{ position: absolute; top: 0; right: 0; }
#sidetopmenubtnlist>a{ width: 184px; height: 100px;  background: #034150; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -ms-align-items: center; align-items: center; justify-content: center; color: #fff; text-decoration: none }
#sidetopmenubtnlist>a:hover{ background: #eee; color: #034150; }

#gnav.navlist .mainlist>li .sublistbox .sublisttitle { opacity: 0; transform: translateY(20px); -webkit-transition: all .3s ease-in-out; transition: all .3s ease-in-out; }
#gnav.navlist .mainlist>li .sublistbox .sublisttitle.show { opacity: 1; transform: translateY(0); }
#gnav.navlist .mainlist>li .sublistbox .sublist { opacity: 0; transform: translateY(20px); -webkit-transition: all .3s ease-in-out .2s; transition: all .3s ease-in-out .2s; }
#gnav.navlist .mainlist>li .sublistbox .sublist.show { opacity: 1; transform: translateY(0); }

#index #header.fixed #gnav.navlist .mainlist>li>a,
#index #header.fixed #gnav.navlist .mainlist>li>p{ color: initial; }
#header.fixed #gnav.navlist .mainlist>li>a:hover,
#header.fixed #gnav.navlist .mainlist>li>p:hover{ color: #034150; }
#header.fixed #gnav.navlist .mainlist>li a span,
#header.fixed #gnav.navlist .mainlist>li>p span{ color: #191919; }
#gnav .navbox .logo{ display: none; }
@media screen and (max-width: 1040px){
	#gnav.navlist{ padding-right: 0; height: auto; }
	#gnav{  }
	#gnav .navbox{  position: fixed; right: -430px; /* これで隠れる */ top: 0; width: 430px; /* スマホに収まるくらい */ height: 110vh; padding-top: 137px; background-color: #034150; transition: all .6s; z-index: 200000; overflow-y: auto; /* メニューが多くなったらスクロールできるように */ display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -webkit-flex-direction: column; -moz-flex-direction: column; -ms-flex-direction: column; -o-flex-direction: column; flex-direction: column; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
	#sidetopmenubtnlist{ position: static; }
	#gnav .navbox{ padding-left: 60px; padding-right: 60px; padding-top: 200px }
	#gnav .navbox .mainlist{ margin: 0; padding: 0; list-style: none; font-size: 1.8rem; }
	#gnav .navbox .mainlist>li{ margin-bottom: 10px; }
	#gnav .navbox .mainlist>li a,
	#gnav .navbox .mainlist>li>p{ display: block; text-decoration: none; color: initial; }
	#gnav .navbox .mainlist>li a:hover,
	#gnav .navbox .mainlist>li>p:hover{ color: #61b56f; }
	#gnav.navlist .mainlist>li.hassub>p{ position: relative; }
	#gnav.navlist .mainlist>li.hassub>p:after{ content: ""; background: url(../img/common/arr1_white.svg) no-repeat; width: 18px; height: 10px; position: absolute; top: 12px; right: 0 }
	#gnav .navbox .logo{ display: block; text-align: left; margin-bottom: 40px }
	#gnav .navbox .sub{ font-size: 1.5rem; color: #fff; letter-spacing: 0.2em }
	#gnav .navbox .logo>p>a{  }
	#gnav .navbox .logo>p>a>svg{ width: 216px; height: 20px; }
	#gnav .navbox .logo>p>a>svg .logo_st0.st0{ fill:#fff; transition: 0.3s; }
	#gnav.navlist .mainlist>li:nth-child(5){ display: block; }
	#gnav.navlist .mainlist>li .sublist{ position: static; margin-bottom: 0; width: 100%; display: none; opacity: 1; visibility: visible; text-align: left; padding-bottom: 10px; margin-left: 20px;  transition: 0.1s; }
	#gnav.navlist .mainlist>li .sublist>li>a{ background: transparent; padding: 0;  }
	#gnav.navlist .mainlist>li.hassub.sub-open>p:after{ content: ""; transform: rotate(180deg); }
	#sidetopmenubtnlist{ margin-top: 30px }
	#sidetopmenubtnlist>a{ width: 100%; height: 84px; background: #356773 }
	#gnav .bg{  position: fixed; left: 0; top: 0; width: 100vw; height: 100vh; z-index: 100000; background-color: #000; opacity: 0; visibility: hidden; transition: all .6s; }
	#gnav.is-open .navbox{right: -17px;}
	#gnav.is-open .bg{ opacity: .8; visibility: visible; }
	#gnav.navlist a:hover{ color: #fff; }
	#gnav.navlist>.navbox .mainlistcover,
	#gnav.navlist>.navbox .mainlistcover .mainlist,
	#gnav.navlist>.navbox .mainlistcover .mainlist>li,
	#gnav.navlist>.navbox .mainlistcover .mainlist>li>a,
	#gnav.navlist>.navbox .mainlistcover .mainlist>li>a>span,
	#gnav.navlist>.navbox .mainlistcover .mainlist>li>p,
	#gnav.navlist>.navbox .mainlistcover .mainlist>li>p>span,
	#sidetopmenubtnlist{ height: auto; }
	#header.fixed #gnav.navlist .mainlist>li>a,
	#header.fixed #gnav.navlist .mainlist>li>p{ color: #fff; }
	#header.fixed #gnav.navlist .mainlist>li>a:hover,
	#header.fixed #gnav.navlist .mainlist>li>p:hover{ color: #fff; }
	#header #gnav.navlist .mainlist>li>a:hover,
	#header.fixed #gnav.navlist .mainlist>li>a:hover,
	#header #gnav.navlist .mainlist>li>p:hover,
	#header.fixed #gnav.navlist .mainlist>li>p:hover{ color: #fff; }
	#gnav.navlist .mainlist>li a,
	#gnav.navlist .mainlist>li>p{ padding-bottom: 8px; color: #fff }
	#gnav.navlist .navoption{-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;display: -webkit-flex;display: -moz-flex;display: -ms-flex;display: -o-flex;display: flex;-webkit-flex-direction: column;-moz-flex-direction: column;-ms-flex-direction: column;-o-flex-direction: column;flex-direction: column;justify-content: center;background: #fff;padding: 40px 14% 200px;opacity: 1;/* margin-top: 95px; */-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;}
	#gnav.navlist .navoption .logo{ margin-bottom: 10px; text-align: left; margin-top: 0; }
	#gnav.navlist .navoption .logo img{ max-width: 296px; width: 100%; }
	#gnav.navlist .navoption .address{ text-align: left; color: initial; }
	#gnav.navlist .navoption .tel{ text-align: left; }
	#gnav.navlist .navoption .tel a{ color: #034150; font-size: 2.4rem; font-weight: bold; }
	#gnav.navlist .navoption .tel svg{ width: 26px; height: 26px; }
	#gnav.navlist .navoption .tel svg .tel_st0.st0{fill:#034150;}
	#gnav ul.mainlist { position: static; display: block!important; text-align: center; height: auto; max-width: 100%; border-right: none; }
	#gnav ul.mainlist>li { display: block!important; margin: 0!important; float: none; opacity: 1; }
	#gnav.navlist .mainlist>li{ font-size: 1.8rem; }
	#gnav.navlist .mainlist>li:first-child{ padding-left: 15px; }
	#gnav ul.mainlist>li:last-child{ border-bottom: none; }
	#gnav ul.mainlist>li.contact{ display: block; }
	#gnav ul.mainlist>li a,
	#gnav ul.mainlist>li>p { color: #fff; border-left: none; }
	#gnav ul.mainlist>li>a,
	#gnav ul.mainlist>li>p{ text-align: left; }
	#gnav ul.mainlist>li.current a:before,
	#gnav ul.mainlist>li.current>p:before  { display: none; margin-top: 0; }
	.navlist a>span:before,
	.navlist p>span:before{ content: none; }
	.navlist .mainlist>li>a, .navlist .mainlist>li>p{ padding-bottom: 0; }
	#gnav.navlist .mainlist>li.current a,
	#gnav.navlist .mainlist>li.current>p{ color: #fff; }
	#gnav.navlist .mainlist>li.current a:after,
	#gnav.navlist .mainlist>li.current>p:after{ content: none }
	#gnav.navlist .mainlist>li:first-child{ padding-left: 0; }
	#gnav.navlist .mainlist>li a:hover,
	#gnav.navlist .mainlist>li>p:hover{ color: #fff; }
	#gnav.is-open+#sidetopmenubtnlist .contactmail>a{ background: #fff; }
	#gnav.is-open+#sidetopmenubtnlist .contactmail>a svg .mail_st0.st0{fill:#034150;}
	#gnav.is-open+#sidetopmenubtnlist .contactmail>a:hover svg .mail_st0.st0{fill:#034150;}
}
@media screen and (max-width: 639px){
	#gnav+#sidetopmenubtnlist .contactmail{ opacity: 0; transition: 0.3s; }
	#gnav.is-open+#sidetopmenubtnlist .contactmail{ opacity: 1; }
	#gnav .navbox{ width: calc(100% + 17px); padding-top: 100px; right: -640px; }
	#gnav.navlist .navoption{padding: 40px 6%;margin-top: 60px; min-height: 240px;}
}




/*//////////////////


Menubtn


//////////////////*/

#menubtn {display: none; }
@media screen and (max-width: 1040px){
	#menubtn { display: block; background: transparent; width: 80px; height: 80px; cursor: pointer; z-index: 10000001; position: fixed; top: 0; right: 0; transition: 0.3s; }
	#menubtn a { text-decoration: none; position: relative; display: block; height: 100%; width: 100%; }
	#menubtn .closetxt{ display: none; }
	#menubtn a .line { width: 32px; height: 3px; background: #000000; position: absolute; left: 50%; margin-left: -14px;transition: all 0.6s; }
	#menubtn a #line1 { top: 34px; }
	#menubtn a #line2{ bottom: 34px; }
	#menubtn.active a .line { background: #fff; }
	#menubtn.active a #line1 {
		-webkit-transform:translateY(5px) translateX(0) rotate(46deg);
		transform:translateY(5px) translateX(0) rotate(46deg);
	}
	#menubtn.active a #line2 { 
		-webkit-transform:translateY(-5px) translateX(0) rotate(-46deg);
		transform:translateY(-5px) translateX(0) rotate(-46deg);
	}
	#menubtn.active .closetxt{ font-size: 1.4rem; position: absolute; left: 30px; top: 0; bottom: 0; margin-top: auto; margin-bottom: auto; display: flex; align-items: center; }
	#header.fixed #gnav #menubtn a .line{ background: #191919; }
}
@media screen and (max-width: 767px){
	#menubtn{ width: 65px; height: 65px; }
	#menubtn a #line1 { top: 27px; }
	#menubtn a #line2{ bottom: 27px; }
}




/*//////////////////


Mainv_index


//////////////////*/
#mainv_index{ position: relative; height: 100vh; min-height: 900px; }
#mainv_index .txtbox{ position: absolute; top: 0; bottom: 0; left: 0; right: 0; color: #fff; display: flex; flex-direction: column; align-items: center; justify-content: center; padding-top: 150px }
#mainv_index .txtbox>.inwrap{  }
#mainv_index .txtbox .maincopy{ font-weight: 900; font-size: 4.2rem; line-height: 1.8; margin-bottom: 10px; letter-spacing: 0.2em }
#mainv_index .txtbox .maincopy span{ font-weight: 900 }
#mainv_index .txtbox .maincopy ._1{ margin-left: -20px; margin-right: -20px }
#mainv_index .txtbox .subcopy{ font-weight: 600; font-size: 2rem; letter-spacing: 0.1em }
#mainv_index .txtbox .entitle{ margin-top: 40px; font-size: 2rem; letter-spacing: 0.3em }
#mainv_index .bglist,
#mainv_index .bglist>ul,
#mainv_index .bglist>ul>li{ height: 100% }
#mainv_index .bglist .bg { width: 100%; height: 100%; object-fit: cover; font-family: 'object-fit: cover;'; display: block; }
/*#mainv_index .slidebox { z-index: -1; }
#mainv_index .slidebox,
#mainv_index .slidebox div,
#mainv_index .slidebox li { width: 100%; height: 100%; }
#mainv_index .slidebox li .bg { width: 100%; height: 100%; object-fit: cover; font-family: 'object-fit: cover;'; display: block; }
#mainv_index .slidebox li.slick-current .bg,
#mainv_index .slidebox li.slick-slide[tabindex="0"] .bg { animation: zoomout 10s linear 0s 1 normal both; }
#mainv_index .slidebox li.slick-slide[tabindex="-1"] .bg { width: 100%; height: 100%; }*/
@keyframes zoomout {
	0% { transform: scale(1);}
	100% { transform: scale(1.2); }
}
@media screen and (max-width: 1040px){
	#mainv_index{ /*margin-top: 100px;*/ height: 600px; min-height: auto; }
	#mainv_index .txtbox{ padding-top: 35px }
	#mainv_index .txtbox .maincopy{ font-size: 3rem }
	#mainv_index .txtbox .maincopy ._1{ margin-left: -15px; margin-right: -15px }
	#mainv_index .txtbox .subcopy,
	#mainv_index .txtbox .entitle{ font-size: 1.8rem }
}
@media screen and (max-width: 767px){
	#mainv_index{ height: 460px; }
	#mainv_index .txtbox .maincopy{ font-size: 2.8rem }
	#mainv_index .txtbox .subcopy,
	#mainv_index .txtbox .entitle{ margin-top: 20px; font-size: 1.6rem }
}
@media screen and (max-width: 479px){
}


/*//////////////////


mainv


//////////////////*/
#mainv{ position: relative; margin-top: 100px; width: 100%; margin-bottom: 15px }
#mainv .txtbox{ position: relative; height: 500px; color: #fff; display: flex; padding: 30px 6%; box-sizing: border-box; }
#mainv .txtbox .incnt{ height: 100%; }
#mainv .txtbox .pagetitle{ display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; flex-direction: column; }
#mainv .txtbox .pagetitle .jntitle{ font-weight: 900; font-size: 3.3rem; letter-spacing: 0.3em }
#mainv .txtbox .pagetitle .entitle{ font-size: 2rem; letter-spacing: 0.3em }
#mainv .bg{ width: 100%; height: 100%; object-fit: cover; font-family: 'object-fit: cover;'; display: block; position: absolute; top: 0; bottom: 0; left: 0; right: 0; z-index: -1 }
@media screen and (max-width: 1040px) {
	#mainv{ margin-top: 0 }
	#mainv .txtbox{ height: 400px }
}
@media screen and (max-width: 767px) {
	#mainv .txtbox{ height: 300px }
	#mainv .txtbox .pagetitle .jntitle{ font-size: 2rem }
	#mainv .txtbox .pagetitle .entitle{ font-size: 1.8rem }
}
@media screen and (max-width: 479px){
	#mainv .txtbox{ height: 200px }
}




#pankuzu { line-height: 1.4; font-size: 1.4rem; letter-spacing: 0.1em }
#pankuzu ol li { display:inline; }
#pankuzu ol li:after { content: "/"; margin-right: 2px; vertical-align: 2px; margin-left: 7px }
#pankuzu ol li:last-child:after{ content: none }
#pankuzu ol li a{ text-decoration: none; }
#pankuzu ol li a:hover { opacity: 0.7; transition: 0.3s; }
@media screen and (max-width: 1040px){
	#pankuzu{ display: none; }
}



/*//////////////////


main


//////////////////*/
#main{ margin-top: 120px; padding-bottom: 0; }
#main #secwrap_1{ padding-top: 0; padding-bottom: 0;  }
@media screen and (max-width: 1040px) {
	#main{ margin-top: 80px; }
}
@media screen and (max-width: 767px) { 
	#main{ margin-top: 60px; }
}
@media screen and (max-width: 479px){
}




#mainyoko{ margin-top: 50px; }
#mainyoko>.incnt>.inwrap{ display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -webkit-flex-direction: row; -moz-flex-direction: row; -ms-flex-direction: row; -o-flex-direction: row; flex-direction: row; justify-content: space-between; }
#mainyoko #sidecnt{ width: 23%; }
#mainyoko #sidecnt .scblock{ margin-bottom: 60px; }
#mainyoko #sidecnt .scblock .scblocktitle{ text-align: left; font-size: 1.8rem; color: #fff; background: #1c5461; padding: 10px 8%; margin-bottom: 15px; font-weight: normal; letter-spacing: 0.2em }
#mainyoko #sidecnt .scblock .scarchivelist{ margin-bottom: 10px; }
#mainyoko #sidecnt .scblock .scarchivelist>li{ border-bottom: 1px solid #cccccc; }
#mainyoko #sidecnt .scblock .scarchivelist a{ text-decoration: none; letter-spacing: 0.05em; padding: 12px 8%; display: block; font-weight: bold; font-size: 1.4rem }
#mainyoko #sidecnt .scblock .scarchivelist a:hover{ color: #688d96 }
#mainyoko #content{ width: 68%; min-height: 500px; }
#mainyoko .pagenav{ margin-top: 60px; }
@media screen and (max-width: 1040px){
	#mainyoko>.incnt>.inwrap{ display: block; }
	#mainyoko #content{ width: 100%; }
	#mainyoko #sidecnt{ width: 100%; margin-top: 50px; }
}



/* section */
#mainyoko+#mainyokoafter { margin-top: 100px; }
@media screen and (max-width: 1040px){
	#mainyoko+#mainyokoafter { display: none; }
}
@media screen and (max-width: 767px){
}




/*//////////////////


Footer


//////////////////*/

#fcontact{ padding-top: 110px; padding-bottom: 110px;  }
#fcontact .txt{ color: #034150; font-size: 2rem; text-align: center;  margin-bottom: 40px; letter-spacing: 0.1em }
#fcontact .box1{ display: flex; flex-direction: row; align-items: center; margin-left: -40px; justify-content: center; }
#fcontact .box1 .tel{ margin-left: 40px }
#fcontact .box1 .tel>img{ width: 36px; height: 32px; display: inline-block; vertical-align: middle; margin-left: 15px }
#fcontact .box1 .tel>a{ font-size: 4rem; line-height: 1.4; color: #034150; display: inline-block; vertical-align: middle; margin-left: 15px ; }
#fcontact .box1 .tel>a span{ font-family: 'Hiragino Kaku Gothic Pro','ヒラギノ角ゴ Pro W3','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif; margin-left: 5px; margin-right: 5px }
#fcontact .box1 .contact{ margin-left: 40px }
#fcontact .box1 .contact>.btnlink{  width: 280px }
@media screen and (max-width: 1040px){
	#fcontact{ padding-top: 70px; padding-bottom: 80px; }
	#fcontact .txt{ font-size: 1.8rem; text-align: left; }
	#fcontact .box1{ display: block; margin-left: 0; }
	#fcontact .box1 .tel{ margin-left: 0; margin-bottom: 20px; text-align: center; }
	#fcontact .box1 .tel>a{ font-size: 3rem }
	#fcontact .box1 .contact{ margin-left: 0; text-align: center; }
}
@media screen and (max-width: 767px) { 
	#fcontact{ padding-top: 40px; padding-bottom: 50px; }
	#fcontact .txt{ margin-bottom: 30px }
}
@media screen and (max-width: 639px){
}
@media screen and (max-width: 479px){
}


#pagetop{ width: 100% }
#pagetop>a{ background: #f2f2f2; text-align: center; font-size: 1.8rem; padding: 10px 6%; text-decoration: none; display: block; letter-spacing: 0.2em }
#pagetop>a:hover{ background: #034150; color: #fff }
@media screen and (max-width: 1040px){
}
@media screen and (max-width: 767px) { 
}
@media screen and (max-width: 639px){
}
@media screen and (max-width: 479px){
}



#footer{  }
#footer .footermain{ position: relative; }
#footer .footermain>.inwrap{  padding-top: 130px; padding-bottom: 110px; position: relative;  z-index: 2; background: rgba(0,0,0,.2); color: #fff; }
#footer .footermain>.inwrap>.incnt>.inwrap{ display: flex; flex-direction: row; justify-content: space-between;  }
#footer .footermain .mainbox{  }
#footer .footermain .mainbox .shopinfo{  }
#footer .footermain .mainbox .shopinfo .logo{ margin-bottom: 20px }
#footer .footermain .mainbox .shopinfo .logo svg{ width: 216px; height: 20px; }
#footer .footermain .mainbox .shopinfo .logo svg .logo_st0.st0{ fill:#fff; transition: 0.3s; }
#footer .footermain .mainbox .shopinfo a{ color: #fff; text-decoration: none; }
#footer .footermain .mainbox .cap{ margin-top: 20px }
#footer .footermain #fnav{  }
#footer .footermain #fnav .mainlist{  }
#footer .footermain #fnav .mainlist{ margin-left: -20px; }
#footer .footermain #fnav .mainlist>li{ display: inline-block; vertical-align: top; margin-left: 20px;  }
#footer .footermain #fnav .mainlist>li a{ color: #fff; text-decoration: none; }
#footer .footermain #fnav .mainlist .list{ margin-bottom: -5px }
#footer .footermain #fnav .mainlist .list>li{ margin-bottom: 5px }
#footer .footermain #fnav .mainlist .sublist{  }
#footer .footermain #fnav .mainlist .sublist>li{ font-size: 1.4rem; display: flex; align-items: center; margin-top: 5px }
#footer .footermain #fnav .mainlist .sublist>li:before{ content: "-"; margin-right: 10px }
#footer .footermain>.bg{ position: absolute; top: 0; bottom: 0; left: 0; right: 0; width: 100%; height: 100%; object-fit: cover; font-family: 'object-fit: cover;'; z-index: 1 }
@media screen and (max-width: 1040px){
	#footer .footermain #fnav{ display: none; }
	#footer .footermain>.inwrap{ padding-top: 70px; padding-bottom: 80px; text-align: center; display: block; }
	#footer .footermain .mainbox{ width: 100% }
}
@media screen and (max-width: 767px) { 
	#footer .footermain>.inwrap{ padding-top: 40px; padding-bottom: 50px; }
}
@media screen and (max-width: 639px){
	#footer .footermain>.inwrap{ text-align: left; }
}
@media screen and (max-width: 479px){
}


#cr{ font-size: 1.4rem; text-align: right; padding: 13px 4%; letter-spacing: 0.1em }
@media screen and (max-width: 1040px){
}
@media screen and (max-width: 767px) { 
}
@media screen and (max-width: 639px){
}
@media screen and (max-width: 479px){
}