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



/*
main #cc0001
sub #79511b
*/



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


Header


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

#header { position: absolute; top: 0; left: 0; z-index: 1000; height: 100px; width: 100%; transition: 0.3s; color: #fff; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
#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; height: 100%; }
.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; }
body:not(#index) #header .sitetitlebox{ margin-left: calc(190px + 3%); width: calc(100% - 570px); padding-right: 3%; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; -ms-align-items: flex-end; align-items: flex-end; }
.sitetitlebox .logo{ width: 270px; z-index: 100; flex-shrink: 0; }
.sitetitlebox .logo>a{  }
.sitetitlebox .logo>a>img{ width: 262px; height: 40px; transition: 0.3s; }
#index .sitetitlebox .logo{ width: 288px; }
#index .sitetitlebox .logo>a>img{ width: 280px; height: 64px; }
.sitetitlebox .logo>a>img._1{  }
.sitetitlebox .logo>a>img._2{ display: none; }
.sitetitlebox .cap{ margin-left: 10px; line-height: 1.6; }
#header .rightbox{  }
#header .mainbox .contactbox{ position: fixed; top: 0; right: 0; }
.contactbox{ 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; opacity: 1; transition: 0.3s; }
.contactbox .contacttxt{ background: #fff; color: #142D58; font-size: 1.8rem; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -ms-align-items: center; align-items: center; justify-content: center; width: 270px; height: 100px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; padding: 10px; letter-spacing: 0.02em; }
.contactbox .contacttxt a.tel{ text-decoration: none; color: #142D58; margin-left: 5px; }
.sitemainbox+.contactbox.active{ opacity: 0; }
#header.fixed {  }
#header.fixed .mainbox { }
#header.fixed .mainbox {  }
@media screen and (max-width: 1260px) {
	.sitetitlebox .cap{ display: none; }
}
@media screen and (max-width: 1040px) {
	#header .mainbox{ display: block; height: auto; }
	#header .incnt{ height: auto; }
	#header .mainbox .contactbox{ display: none; }
	#header{ padding-left: 0; }
	.sitetitlebox{ width: 100%; position: relative; width: 60%; }
	.sitetitlebox .logo{ width: 100%; }
	.sitetitlebox .logo>a>img{ width: 260px!important; height: auto!important; }
	body:not(#index) #header .sitetitlebox{ text-align: right; padding-right: 0; width: 100%; padding-top: 25px; margin-left: auto; justify-content: flex-end; }
}
@media screen and (max-width: 767px) {
	body:not(#index) #header .sitetitlebox{ padding-top: 20px; }
}
@media screen and (max-width: 479px) {
	body:not(#index) #header .sitetitlebox .logo{ max-width: 250px; }
}

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






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


Nav


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

#gnav>.scrollcover{  }

#gnav{  }
#gnav .navbox{ position: fixed; left: -600px; /* これで隠れる */ top: 0; width: 600px; /* スマホに収まるくらい */ transition: all .6s; z-index: 200000; overflow: hidden; }
#gnav .navbox>.inwrap{  height: 100vh; background-color: #fff; 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; padding-top: 24%; width: 615px; }
#gnav .navbox>.inwrap>.inwrap{ margin-top: auto; margin-bottom: auto; }
#gnav .navbox .menutitle{ margin-bottom: 30px; }
#gnav .navbox .menutitle>span{ font-size: 1.8rem; position: relative; display: inline-block;color: #142D58; position: relative; padding-top: 55px; }
#gnav .navbox .menutitle>span:before{ content: ""; background: #191919; position: absolute; top: 0; left: 0; right: 0; width: 1px; height: 50px; margin-left: auto; margin-right: auto; }
#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{ display: block; text-decoration: none; color: initial; }
#gnav .navbox .mainlist>li a:hover{ color: #142D58; }
#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; cursor: pointer; }
#gnav.is-open .navbox{ left: -17px; }
#gnav.is-open .bg{ opacity: .7; visibility: visible; }
#gnav .facebook{ margin-top: 20px; text-align: center; }
#gnav .facebook svg{ width: 40px; height: 40px; }
#sidetopmenubtnlist{ position: relative; }
#sidetopmenubtnlist .contactmail{ display: none; position: fixed; top: 0; left: 190px; z-index: 10000001; }
.contactmail a{ background: #142D58; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -ms-align-items: center; align-items: center; justify-content: center; width: 110px; height: 100px; }
.contactmail a:hover{ background: #191919; }
.contactmail a svg{ width: 24px; height: 24px; }
#gnav.navlist>.navbox .mainlistcover{ margin-bottom: 55px; }
#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,
#sidetopmenubtnlist{ height: auto; }
#gnav.navlist .mainlist>li .sublist{ font-size: 1.5rem; margin-left: -15px; text-align: left; padding-bottom: 5px;  line-height: 1.6; }
#gnav.navlist .mainlist>li .sublist>li{ margin-left: 15px; display: inline-block; }
#gnav.navlist .mainlist>li .sublist>li a{ color: #666; }
#gnav.navlist .mainlist>li a{ padding-bottom: 5px; letter-spacing: 0.01em; }
#gnav.navlist .navoption{ padding: 0 18% 6%; opacity: 1; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;  }
#gnav .navbox .navoption .contacttel{ margin-top: 10px; color: #191919; font-size: 2rem; }
#gnav.navlist .navoption .logo{ margin-bottom: 10px; text-align: left; }
#gnav.navlist .navoption .logo img{ max-width: 328px; width: 100%; }
#gnav.navlist .navoption .tel{ text-align: left; text-decoration: none; }
#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.6rem; }
#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 { border-left: none; }
#gnav ul.mainlist>li>a{ text-align: left; }
#gnav ul.mainlist>li.current a:before { display: none; margin-top: 0; }
.navlist a>span:before{ content: none; }
#gnav.navlist .mainlist>li>a>span{ font-weight: bold; }
.navlist .mainlist>li>a, .navlist .mainlist>li>p{ padding-bottom: 0; }
#gnav.navlist .mainlist>li.current a:after{ content: none }
#gnav.navlist .mainlist>li:first-child{ padding-left: 0; }
#gnav .navbox .mainlistcover{ padding: 0px 18%; }
#gnav.is-open+#sidetopmenubtnlist .contactmail{ display: block; }
@media screen and (max-width: 1040px) {
	#gnav .navbox{ left: calc(-100% - 20px); width: 100%;  }
	#gnav .navbox>.inwrap{  padding-left: 6%; padding-right: 6%; padding-top: 200px; width: calc(100% + 17px); }
	#gnav .navbox .mainlistcover{ padding: 0px; }
	#gnav.navlist .navoption{ padding: 0 0 70px;  }
	#gnav.is-open .navbox{ left: 0; }
	#gnav .navbox>.inwrap>.inwrap{ margin-top: 0; }
}
@media screen and (max-width: 767px){
	#gnav .navbox>.inwrap{  padding-left: 6%; padding-right: 6%; padding-top: 100px; }
	#gnav .navbox .menutitle>span{ font-size: 1.6rem; padding-top: 50px; }
	#gnav .navbox .menutitle>span:before{ height: 40px; }
	#gnav.navlist .navoption .logo img{ max-width: 300px; }
}
/*@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; left: -600px; }
	#gnav.navlist .navoption{ padding: 40px 6% 200px; }
	#gnav .navbox .mainlistcover{ padding: 0px 6%; }
}
*/




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


Menubtn


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

#menubtn { display: block; background: transparent; width: 190px; height: 100px; cursor: pointer; z-index: 10000001; transition: 0.3s; position: fixed; top: 0; left: 0; }
#menubtn a { text-decoration: none; position: relative; height: 100%; width: 100%; background: #191919; 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: center; color: #fff; }
#menubtn .linelist{ position: relative; height: 17px; width: 46px; }
#menubtn a .line { width: 46px; height: 1px; background: #fff; position: absolute; right: 0; transition: all 0.6s; }
#menubtn a #line1 { top: 0; }
#menubtn a #line2 { width: 36px; top: 0; bottom: 0; margin-top: auto; margin-bottom: auto; }
#menubtn a #line3 { bottom: 0; width: 26px; }
#menubtn a:hover{ background: #fff; color: #191919; }
#menubtn a:hover .line{ background: #191919; }
#menubtn .txt{ font-size: 1.8rem; margin-left: 15px; letter-spacing: 0.02em; padding-top: 2px; }
#menubtn .close{ display: none; }
#menubtn.active a .line { width: 38px!important; }
#menubtn.active a #line1 {
	-webkit-transform:translateY(8px) translateX(0) rotate(30deg);
	transform:translateY(8px) translateX(0) rotate(30deg);
}
#menubtn.active a #line3 { 
	-webkit-transform:translateY(-8px) translateX(0) rotate(-30deg); 
	transform:translateY(-8px) translateX(0) rotate(-30deg);
}
#menubtn.active a #line2{ display: none; }
#menubtn.active .close{ display: inline; }
#menubtn.active .menu{ display: none; }
#header.fixed #gnav #menubtn a .line{ background: #191919; }
@media screen and (max-width: 767px){
	#menubtn{ width: 72px; height: 72px; }
	#menubtn .linelist{ height: 16px; width: 38px; }
	#menubtn a .line { width: 38px; }
	#menubtn a #line2 { width: 30px; }
	#menubtn a #line3 { width: 22px; }
	#menubtn .txt{ display: none; }
	#sidetopmenubtnlist .contactmail{ left: 72px; }
	#sidetopmenubtnlist .contactmail a{ width: 72px; height: 72px; }
}






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


Mainv_index


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

#mainv_index{ position: relative; height: 100vh; min-height: 750px; }
#mainv_index .copybox{ color: #fff; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; position: relative; z-index: 1; -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; width: 100%; height: 100%; justify-content: center; margin-left: auto; margin-right: auto; line-height: 2.6; }
#mainv_index .copybox>.incnt{ max-width: 900px; }
#mainv_index .copybox>.incnt>.inwrap{ display: inline-block; text-orientation: upright; }
#mainv_index .copybox .maintxt{ font-weight: 900; font-size: 3.2rem; letter-spacing: 0.2em; }
#mainv_index .copybox .subtxt{ font-weight: bold; font-size: 1.9rem; margin-right: 10px; letter-spacing: 0.1em; }
#mainv_index .copybox .subtxt .mtxt{ display: inline; font-weight: bold; }
#mainv_index .sitetitlebox{ position: absolute; bottom: 65px; left: 0; right: 0; margin-left: auto; margin-right: auto; color: #fff; width: 100%; }
#mainv_index .sitetitlebox .logo{ width: 328px; display: inline-block; vertical-align: middle; }
#mainv_index .sitetitlebox .cap{ display: inline-block; vertical-align: -8px; margin-left: 15px; }
#mainv_index .bglist{ position: absolute; top: 0; bottom: 0; left: 0; right: 0; }
#mainv_index .bglist .slidebox{  }
#mainv_index #scrollbtn{ position: absolute; bottom: 0; right: 30px; color: #fff; }
#mainv_index #scrollbtn .arr{position: relative;height: 123px;overflow: hidden;}
#mainv_index #scrollbtn .arr .round{ width: 8px; height: 8px; background: #fff; border-radius: 50%; display: inline-block; position: absolute; left: 0; right: 0; margin-left: auto; margin-right: auto; top: 0; -webkit-animation: 3s arrow-animation infinite ease-in-out; animation: 3s arrow-animation infinite ease-in-out; }
#mainv_index #scrollbtn .arr:before{ content: ""; background: #fff; width: 1px; height: 100%; display: inline-block; position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin-left: auto; margin-right: auto; }

#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%; }
@-webkit-keyframes arrow-animation {
  0% { -webkit-transform: translate(0, 0); opacity: 1; }
  20% { opacity: 1; }
  50% { opacity: 1; }
  90% { -webkit-transform: translate(0, 123px); opacity: 1; }
  91% { -webkit-transform: translate(0, 123px); opacity: 0; }
  100% { opacity: 0; }
}
@keyframes arrow-animation {
  0% { -webkit-transform: translate(0, 0); opacity:1; }
  20% { opacity: 1; }
  50% { opacity: 1; }
  90% { -webkit-transform: translate(0, 123px); opacity: 1; }
  91% { -webkit-transform: translate(0, 123px); opacity: 0; }
  100% { opacity: 0; }
}
@keyframes zoomout {
	0% { transform: scale(1);}
	100% { transform: scale(1.2); }
}
@media screen and (max-width: 1040px){
	#mainv_index{ min-height: 650px; }
	#mainv_index .sitetitlebox{ bottom: auto; top: 25px; text-align: right; height: calc(100% - 55px); }
	#mainv_index .sitetitlebox>.incnt{ height: 100%; }
	#mainv_index .sitetitlebox .cap{ position: absolute; margin-left: 0; bottom: 10px; left: 20px; text-align: left; }
	#mainv_index .copybox>.incnt{ text-align: center; }
}
@media screen and (max-width: 767px){
	#mainv_index{ min-height: 400px; }
	#mainv_index .copybox{ padding-top: 50px; }
	#mainv_index #scrollbtn .arr{ height: 63px; }
	#mainv_index .sitetitlebox{ top: 20px; height: calc(100% - 50px); }
	#mainv_index .sitetitlebox .cap{ font-size: 1em; }
	#mainv_index .copybox .maintxt{ font-size: 2.7rem; }
	#mainv_index .copybox .subtxt{ display: none; }
	#mainv_index .sitetitlebox .logo{ width: 300px; }
	@-webkit-keyframes arrow-animation {
	  0% { -webkit-transform: translate(0, 0); opacity: 0; }
	  20% { opacity: 1; }
	  50% { opacity: 1; }
	  80% { -webkit-transform: translate(0, 63px); opacity: 0; }
	  100% { opacity: 0; }
	}
	@keyframes arrow-animation {
	  0% { -webkit-transform: translate(0, 0); opacity: 0; }
	  20% { opacity: 1; }
	  50% { opacity: 1; }
	  80% { -webkit-transform: translate(0, 63px); opacity: 0; }
	  100% { opacity: 0; }
	}
}
@media screen and (max-width: 479px){
	#mainv_index .sitetitlebox .logo{ width: 250px; }
	#mainv_index .copybox .maintxt{ font-size: 2.2rem; }
	#mainv_index .sitetitlebox{ top: 18px; height: calc(100% - 40px); }
	#mainv_index .sitetitlebox .cap{ bottom: 10px; }
	#mainv_index #scrollbtn{ right: 20px; }
}

#topnewsbox{ background: #f7f7f7; padding: 45px 0; }
#topnewsbox>.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; -ms-align-items: center; align-items: center; justify-content: space-between; }
#topnewsbox .title{ color: #142D58; font-size: 1.8rem; margin-right: 70px; width: 50px; }
#topnewsbox .newsbox{ 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; width: calc(100% - 110px) }
#topnewsbox .newsbox .newslist{ overflow: hidden; height: 34px; width: 100%; }
#topnewsbox .newsbox .newslist>ul{ margin:0; padding:0; position:relative; }
#topnewsbox .newsbox .newslist>ul>li{ width:510px; height:34px; position:absolute; top:-34px; list-style:none; }
#topnewsbox .newsbox .newslist._count1>ul>li:nth-child(1){ opacity: 1; top:0; }
#topnewsbox .newsbox .newslist._count2>ul>li:nth-child(1){ -webkit-animation:cycle2_1 10s linear infinite; animation:cycle2_1 10s linear infinite; }
#topnewsbox .newsbox .newslist._count2>ul>li:nth-child(2){ -webkit-animation:cycle2_2 10s linear infinite; animation:cycle2_2 10s linear infinite; }
#topnewsbox .newsbox .newslist._count3>ul>li:nth-child(1){ -webkit-animation:cycle3_1 15s linear infinite; animation:cycle3_1 15s linear infinite; }
#topnewsbox .newsbox .newslist._count3>ul>li:nth-child(2){ -webkit-animation:cycle3_2 15s linear infinite; animation:cycle3_2 15s linear infinite; }
#topnewsbox .newsbox .newslist._count3>ul>li:nth-child(3){ -webkit-animation:cycle3_3 15s linear infinite; animation:cycle3_3 15s linear infinite; }
#topnewsbox .newsbox .newslist>ul>li>dl>dd>a.tabletblock{ display: none; }
#topnewsbox .newsbox .newslist>ul>li>dl{ 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; }
#topnewsbox .newsbox .newslist>ul>li>dl>dt{ width: 110px; }
#topnewsbox .newsbox .newslist>ul>li>dl>dd{ width: calc(100% - 120px) }
#topnewsbox .newsbox .newslist>ul>li>dl>dd a{ text-decoration: none; }
#topnewsbox .newsbox .newslist>ul>li>dl>dd a:hover{ color: #142D58; }
#topnewsbox .link{ margin-left: 100px; flex-shrink: 0; }
@keyframes cycle2_1 {
	0% { top:0px; }
	5% { top:0px; }
	45% { top:0px; opacity:1; z-index:0; }
	50% { top:34px; opacity:0; z-index:0; }
	51% { top:-34px; opacity:0; z-index:-1; }
	90% { top:-34px; opacity:0; z-index:0; }
	95% { top:-34px; opacity:0; }
	100% { top:0px; opacity:1; }
}
@keyframes cycle2_2 {
	0% { top:-34px; opacity:0; z-index:-1; }
	40% { top:-34px; opacity:0; z-index:0; }
	45% { top:-34px; opacity:0; }
	50% { top:0px; opacity:1; }
	55% { top:0px; }
	95% { top:0px; opacity:1; z-index:0; }
	100% { top:34px; opacity:0; z-index:0; }
}
@keyframes cycle3_1 {
	0% { top:0px; }
	5% { top:0px; }
	28% { top:0px; opacity:1; z-index:0; }
	33% { top:34px; opacity:0; z-index:0; }
	34% { top:-34px; opacity:0; z-index:-1; }
	90% { top:-34px; opacity:0; z-index:0; }
	95% { top:-34px; opacity:0; }
	100% { top:0px; opacity:1; }
}
@keyframes cycle3_2 {
	0% { top:0px; opacity:0; z-index:-1; }
	23% { top:-34px; opacity:0; z-index:0; }
	28% { top:-34px; opacity:0; }
	33% { top:0px; opacity:1;}
	37% { top:0px; }
	61% { top:0px; opacity:1; z-index:0; }
	66% { top:34px; opacity:0; z-index:0; }
	67% { top:-34px; opacity:0; z-index:-1; }
	100% { top:0px; opacity:0; z-index:-1; }
}
@keyframes cycle3_3 {
	0% { top:-34px; opacity:0; z-index:-1; }
	56% { top:-34px; opacity:0; z-index:0; }
	61% { top:-34px; opacity:0; }
	66% { top:0px; opacity:1;}
	71% { top:0px; }
	95% { top:0px; opacity:1; z-index:0; }
	99% { top:34px; opacity:0; z-index:0; }
	100% { top:-34px; opacity:0; z-index:-1; }
}
@media screen and (max-width: 1040px){
	#topnewsbox .newsbox .newslist{ height: auto; overflow: visible; }
	#topnewsbox .newsbox .newslist>ul>li{ width:100%; height:auto; top:0; position: static; padding-bottom: 25px; margin-bottom: 30px; border-bottom: 1px solid #ccc; }
	#topnewsbox .newsbox .newslist>ul>li:last-child,
	#topnewsbox .newsbox .newslist>ul>li:nth-child(3){ padding-bottom: 0; margin-bottom: 0; border-bottom: 0; }
	#topnewsbox>.incnt>.inwrap{ display: block; }
	#topnewsbox .title{ margin-right: 0; margin-bottom: 20px; width: 100%; }
	#topnewsbox .newsbox{ display: block; width: 100%; }
	#topnewsbox .link{ margin-left: 0; margin-top: 30px; text-align: right; }
	#topnewsbox .newsbox .newslist>ul>li>dl>dd>a.tablethide{ display: none; }
	#topnewsbox .newsbox .newslist>ul>li>dl>dd>a.tabletblock{ display: inline-block; }
	
	#topnewsbox .newsbox .newslist>ul>li:nth-child(1),
	#topnewsbox .newsbox .newslist>ul>li:nth-child(2),
	#topnewsbox .newsbox .newslist>ul>li:nth-child(3){ -webkit-animation:none!important; animation:none!important; }
}
@media screen and (max-width: 767px){
	#topnewsbox{ padding: 30px 0 40px; }
	#topnewsbox .newsbox .newslist>ul>li{ margin-bottom: 10px; }
	#topnewsbox .newsbox .newslist>ul>li:last-child{ margin-bottom: 0; }
	#topnewsbox .newsbox .newslist>ul>li>dl{ display: block; }
	#topnewsbox .newsbox .newslist>ul>li>dl>dt{ width: 100%; }
	#topnewsbox .newsbox .newslist>ul>li>dl>dd{ width: 100% }
}
@media screen and (max-width: 479px){
	#topnewsbox{ padding: 20px 0 30px; }
	#topnewsbox .title{ margin-bottom: 10px; }
	#topnewsbox .link{ margin-top: 10px; }
}



#bnrlistwrap{ padding: 95px 0px 0; }
#bnrlist1 .list{ 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; }
#bnrlist1 .list>li{ border: 1px solid #142D58; width: 50% }
#bnrlist1 .list>li:nth-child(even){ border-left: none; }
#bnrlist1 .list>li>.inwrap{ text-decoration: none; padding: 65px 6%; width: 100%; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; text-align: center; 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; height: 100%; }
#bnrlist1 .list>li .title{ font-size: 2.4rem; color: #142D58; line-height: 1.8; margin-bottom: 10px; letter-spacing: 0.1em; transition: 0.3s; }
#bnrlist1 .list>li .txt{  }
#bnrlist1 .list>li>a.inwrap:hover{ background: #142D58; color: #fff; }
#bnrlist1 .list>li>a.inwrap:hover .title{ color: #fff; }
#bnrlist2{ margin-bottom: 35px!important; margin-top: 120px; }
#index #bnrlist2{ margin-top: 150px; }
#bnrlist2 .link{ text-align: center; }
#bnrlist2 .link>.inwrap{ position: relative; padding-bottom: 20px; text-decoration: none; display: inline-block; }
#bnrlist2 .link .title{ font-weight: bold; font-size: 2.4rem; text-align: center; line-height: 1.6; margin-bottom: 20px; transition: 0.3s; }
#bnrlist2 .link .txt{ font-size: 1.8rem; text-align: center; }
#bnrlist2 .link>.inwrap>svg{ width: 14px; height: 10px; -webkit-transform:rotate(180deg); transform:rotate(180deg); position: absolute; bottom: 0; left: 0; right: 0; margin-left: auto; margin-right: auto; transition: 0.3s; }
#bnrlist2 .link>.inwrap>svg .pagetop_st0.st0{ fill:#191919; transition: 0.3s; }
#bnrlist2 .link>a.inwrap:hover{ color: #142D58; }
#bnrlist2 .link>a.inwrap:hover>svg .pagetop_st0.st0{ fill:#142D58; }
#bnrlist2 .link>a.inwrap:hover>svg{ -webkit-animation: hoverarr 2s infinite; animation: hoverarr 2s infinite; }
@-webkit-keyframes hoverarr {
  0% { -webkit-transform: rotate(180deg) translateY(0); }
  20% { -webkit-transform: rotate(180deg) translateY(-5px); }
  40% { -webkit-transform: rotate(180deg) translateY(0); }
}
@keyframes hoverarr {
  0% { -webkit-transform: rotate(180deg) translateY(0); }
  20% { -webkit-transform: rotate(180deg) translateY(-5px); }
  40% { -webkit-transform: rotate(180deg) translateY(0); }
}
@media screen and (max-width: 1040px){
	#bnrlistwrap{ padding-top: 85px; }
	#index #bnrlist2{ margin-top: 120px; }
}
@media screen and (max-width: 767px){
	#bnrlistwrap{ padding-top: 55px; }
	#bnrlist1 .list{ display: block; }
	#bnrlist1 .list>li{ border: 1px solid #142D58; width: 100% }
	#bnrlist1 .list>li:nth-child(even){ border-left: 1px solid #142D58; border-top: none; }
	#bnrlist1 .list>li>.inwrap{ padding: 40px 6%; }
	#bnrlist1 .list>li .title{ margin-bottom: 5px; }
	#bnrlist1 .list>li .title,
	#bnrlist2 .link .title{ font-size: 2rem; }
	#bnrlist2 .link .txt{ font-size: 1.6rem; }
}
@media screen and (max-width: 479px){
	#index #bnrlist2,
	#bnrlist2{ margin-top: 80px; }
}




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


main


//////////////////*/
#mainv { height: 600px; position: relative; }
#mainv:before{ content: ""; background: rgba(25,25,25,.3); width: 100%; height: 100%; position: absolute; bottom: 0; left: 0; top: 0; right: 0; }
#mainv .pagetitlebox{ 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; color: #fff; height: 100%; position: relative; z-index: 1; }
#mainv .pagetitlebox .pagesubtitle{ font-size: 1.8rem; letter-spacing: 0.05em; }
#mainv .pagetitlebox .pagetitle{ font-weight: 900; font-size: 3.8rem; line-height: 1.8; }
#mainv .bg{ object-fit: cover; font-family: 'object-fit: cover;'; display: block; width: 100%; height: 100%; position: absolute; top: 0; bottom: 0; left: 0; right: 0; z-index: -1; }
@media screen and (max-width: 1040px){
	#mainv{ height: 360px; padding-top: 90px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
	#mainv .pagetitlebox .pagetitle { font-size: 3rem; }
	#mainv .pagetitlebox .pagesubtitle{ font-size: 1em; }
}
@media screen and (max-width: 767px) { 
	#mainv{ height: 310px; padding-top: 30px; }
	#mainv .pagetitlebox{ -ms-align-items: center; align-items: center; text-align: center; }
	#mainv .pagetitlebox>.incnt.min{ display: inline-block; text-align: left; width: auto; }
	#mainv .pagetitlebox .pagetitle { font-size: 2.6rem; }
}
@media screen and (max-width: 479px) { 
	#mainv .pagetitlebox .pagetitle { font-size: 2.2rem; }
}

#pagenavlist{ position: relative; z-index: 10; }
#pagenavlist #pankuzu{ color: #fff; margin-bottom: 20px; font-size: 1.4rem; margin-top: -40px; }
#strength #pagenavlist{ margin-top: -120px; }
#pankuzu { line-height: 1.4; padding: 0 6%; }
#pankuzu ol li { display:inline; }
#pankuzu ol li:after { content: " /"; }
#pankuzu ol li:last-child:after{ content: none }
#pankuzu ol li a{ color: #fff; text-decoration: none; }
#pankuzu ol li a:hover { opacity: 0.7; transition: 0.3s; }
#strengthnav>ul{ background: #F7F7F7; 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: center; height: 130px; width: 100%; }
#strengthnav>ul>li{ padding-left: 18px; padding-right: 18px; }
#strengthnav>ul>li,
#strengthnav>ul>li>a{ height: 100%; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; }
#strengthnav>ul>li>a{ position: relative; color: #142D58; font-size: 1.8rem; line-height: 1.6; text-decoration: none; -ms-align-items: center; align-items: center; overflow: hidden; }
#strengthnav>ul>li.current>a:after{ content: ""; background: #142D58; display: inline-block; position: absolute; bottom: 0; left: 0; width: 100%; height: 3px; }
#strengthnav>ul>li>a:before{ content: ""; background: #000; display: inline-block; position: absolute; bottom: 0; left: 0; width: 0; height: 3px; transition: 0.3s; }
#strengthnav>ul>li>a:hover:before{ width: 100%; }
@media screen and (max-width: 1040px) { 
	#pagenavlist{ display: none; }
}

#main{  }
#main #secwrap_1{ padding-bottom: 0; }
@media screen and (max-width: 1040px){
	#main #content{  }
}
@media screen and (max-width: 767px) { 
	#main #content{  }
	#main #secwrap_1{ padding-top: 40px; }
}




#maincnt{ 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; width: 100%; padding-top: 20px; }
#maincnt .sectionwrap{ -webkit-flex: 1; -moz-flex: 1; -ms-flex: 1; -o-flex: 1; flex: 1; }
#maincnt #aside{ width: 260px; margin-left: 6%; flex-shrink: 0; }
#maincnt #aside .cssection{ margin-bottom: 60px; }
#maincnt #aside .cssection:last-child{ margin-bottom: 0; }
#maincnt #aside .cssection .cstitle{ margin-bottom: 15px; color: #045DA4; font-weight: bold; font-size: 1.8rem; }
#maincnt #aside .cssection .categorylist>li{ margin-bottom: 10px; }
#maincnt #aside .cssection .categorylist>li:last-child{ margin-bottom: 0; }
#maincnt #aside .cssection .categorylist>li:before{ content: ""; background: url(../img/common/arr1_blue.svg); display: inline-block; width: 10px; height: 16px; margin-right: 10px; vertical-align: -2px; }
#maincnt #aside .cssection .categorylist>li>a{ text-decoration: none; }

#maincnt #aside .cssection .archiveselect select { font-size: 100%; height: 77px; padding: 10px 40px 10px 15px; background: url("../img/common/arr_select.svg") no-repeat 95% center, #f7f7f7; border: none !important; background-size: 16px 10px; width: 100%; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
@media screen and (max-width: 1040px){
	#maincnt{ display: block; padding-top: 0; }
	#maincnt #aside{ margin-top: 70px; margin-left: 0; width: 100%; }
	#maincnt #aside .cssection .categorylist{ -webkit-columns: 3; -moz-columns: 3; -o-columns: 3; columns: 3; }
}
@media screen and (max-width: 767px) { 
	#maincnt{ margin-bottom: 60px; }
	#maincnt #aside .cssection{ margin-bottom: 30px; }
	#maincnt #aside .cssection .categorylist{ -webkit-columns: 2; -moz-columns: 2; -o-columns: 2; columns: 2; }
}
@media screen and (max-width: 639px){
	#maincnt #aside .bloglist2>ul{ display: block; margin-left: 0; }
	#maincnt #aside .cssection .categorylist{ -webkit-columns: auto; -moz-columns: auto; -o-columns: auto; columns: auto; }

}




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


Footer


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

#footer{  }
#footer .footermain{ background: #F7F7F7; padding-top: 100px; padding-bottom: 110px; }
#footer .footermain>.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; -ms-align-items: center; align-items: center; justify-content: space-between; }
#footer .footermain>.incnt>.inwrap .leftbox{  }
#footer .footermain>.incnt>.inwrap .leftbox .logo{ margin-bottom: 10px; }
#footer .footermain>.incnt>.inwrap .leftbox .logo img{ max-width: 340px; width: 100%; }
#footer .footermain>.incnt>.inwrap .leftbox .address{  }
#footer .footermain>.incnt>.inwrap .rightbox{  }
#footer .footermain>.incnt>.inwrap .rightbox{  }
#footer .footermain>.incnt>.inwrap .contactbox .contacttxt{ font-size: 2rem; width: 318px; }
#footer .footermain>.incnt>.inwrap .rightbox .contactmail{  }
@media screen and (max-width: 1040px){
	#footer .footermain{ padding-top: 80px; padding-bottom: 90px; }
	#footer .footermain>.incnt>.inwrap{ display: block; text-align: center; }
	#footer .footermain>.incnt>.inwrap .leftbox{ margin-bottom: 50px; }
	#footer .footermain>.incnt>.inwrap .contactbox{ justify-content: center; }
	#footer .footermain>.incnt>.inwrap .contactbox .contacttxt{ padding: 10px; }
}
@media screen and (max-width: 767px){
	#footer .footermain{ padding-top: 60px; padding-bottom: 70px; }
	#footer .footermain>.incnt>.inwrap .leftbox{ margin-bottom: 40px; }
	#footer .footermain>.incnt>.inwrap .leftbox .logo img{ max-width: 300px; }
	#footer .footermain>.incnt>.inwrap .contactbox .contacttxt{ height: 75px; }
	.contactmail a{ height: 75px; width: 75px; }
}
@media screen and (max-width: 479px){
	#footer .footermain>.incnt>.inwrap .leftbox{ margin-bottom: 30px; }
	#footer .footermain>.incnt>.inwrap .contactbox .contacttxt{ width: 180px; }
}

#footer .medialist{ 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; }
#footer .medialist>li{ width: 50%; height: 600px; }
#footer .medialist>li img{ object-fit: cover; font-family: 'object-fit: cover;'; display: block; width: 100%; height: 100%; }
#footer .medialist>li._map{/* position: relative; */}
/*#footer .medialist>li._map:before{ content: ""; background: rgba(0,0,0,0.1); position: absolute; top: 0; bottom: 0; left: 0; right: 0; width: 100%; height: 100%; }*/
#footer .medialist>li._map iframe{ width: 100%; height: 100%; }
#footer .medialist>li iframe{  }
@media screen and (max-width: 1040px){
	#footer .medialist>li{ height: 500px; }
}
@media screen and (max-width: 767px){
	#footer .medialist>li{ height: 400px; }
}
@media screen and (max-width: 639px){
	#footer .medialist{ display: block; }
	#footer .medialist>li{ width: 100%; }
}
@media screen and (max-width: 479px){
	
}

#footer .flastbox{ 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: flex-end; }
#footer .flastbox .copyright { display: flex; }
#footer .flastbox .copyright a { text-decoration: none; color: #142D58;}
#footer .flastbox .copyright a:hover { text-decoration: underline; }
#footer .flastbox .copyright p { padding-left: 1em;}
#footer .flastbox #cr{ font-size: 1.8rem; color: #142D58; letter-spacing: 0.01em; }
#footer .flastbox #pagetop{ margin-left: 25px; }
#footer .flastbox #pagetop a{ width: 110px; height: 100px; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -ms-align-items: center; align-items: center; justify-content: center; background: #142D58; }
#footer .flastbox #pagetop a svg{ width: 14px; height: 10px; }
#footer .flastbox #pagetop a:hover{ background: #191919; }
@media screen and (max-width: 1040px){
	
}
@media screen and (max-width: 767px){
	#footer .flastbox #pagetop a{ height: 75px; width: 75px; }
	#footer .flastbox #cr{ font-size: 1em; }

	
}
@media screen and (max-width: 479px){
	/*#footer .flastbox { justify-content: space-between; }*/
	#footer .flastbox .copyright { display: block; }
	#footer .flastbox .copyright p { padding-left: 0;}	
}