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



/*
main #cc0001
sub #79511b
*/



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


Header


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

#header { width: 100%;  z-index: 100; position: fixed; top: 0; background: #fff;  }
#header .incnt { position: static; height: 115px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; margin-right: 225px; width: calc(100% - 285px); }
#header.fixed {  }
#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; align-items: center; justify-content: space-between; height: 100%; }
#header .logo { width: 340px; }
#header .logo a{ text-decoration: none; }
#header .logo a span{ display: block; }
#header .logo a .subsitetitle{ font-size: 1.4rem; }
#header .logo a .sitetitle{ font-size: 2.2rem; font-weight: bold; color: #005188; }
#header.fixed .mainbox { }
#header.fixed .logo {  }
@media screen and (max-width: 1300px){
	#header .incnt{ margin-right: 215px; width: calc(100% - 275px) }
	#header .logo a .sitetitle{ font-size: 2rem; }
	#header .logo { width: 310px; }
}
@media screen and (max-width: 1040px) {
	#header{ position: static; }
	#header .incnt{ height: 90px; margin-right: 60px; width: calc(100% - 120px); }
}
@media screen and (max-width: 767px) {
	#header .incnt{ height: 90px; width: calc(100% - 40px); margin: 0 20px; }
	#header .logo a .subsitetitle{ font-size: 1.1rem; }
	#header .logo a .sitetitle{ font-size: 1.8rem; }
}

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






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


Nav


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

#gnav{ width: calc(100% - 340px) }
#gnav>.scrollcover{  }

.navlist{  }
#gnav.navlist{ text-align: right; }
#gnav.navlist .pcsublist>li,
#gnav.navlist .mainlist>li{ display: inline-block; padding-left: 10px; font-size: 15px; vertical-align: middle; }
#gnav.navlist a:hover{ color: #005188; }
#gnav.navlist .mainlist>li:first-child{ padding-left: 0; display: none; }
#gnav.navlist .mainlist>li a{ padding-bottom: 15px; line-height: 1.6; }
#gnav.navlist .mainlist>li.current a{ color: #005188; position: relative; }
#gnav.navlist .mainlist>li.current a:after{ content: ""; background: #005188; width: 8px; height: 8px; display: inline-block; position: absolute; bottom: 0; left: 0; right: 0; border-radius: 50%; margin-left: auto; margin-right: auto; }
#gnav.navlist .mainlist>li.sp{ display: none; }
#gnav.navlist .pcsublist>li>a>span{ color: #005188; transition: 0.3s; }
#gnav.navlist .pcsublist>li.hand{ vertical-align: -5px; }
#gnav.navlist .pcsublist>li.hand .icon{ display: inline-block; vertical-align: 2px; margin-right: 5px; }
#gnav.navlist .pcsublist>li.hand .icon svg{ width: 30px; height: 26px; }
#gnav.navlist .pcsublist>li.hand .txt{ display: inline-block; vertical-align: super; color: #005188; transition: 0.3s; }
#gnav.navlist .pcsublist>li.enrollment .icon{ display: inline-block; vertical-align: middle; margin-right: 5px; }
#gnav.navlist .pcsublist>li.enrollment .icon svg{ width: 26px; height: 26px; }
#gnav.navlist .pcsublist>li.enrollment .txt{ display: inline-block; vertical-align: middle; color: #005188; transition: 0.3s; }
#gnav.navlist .pcsublist>li.symposium{ vertical-align: -5px; }
#gnav.navlist .pcsublist>li.symposium .icon{ display: inline-block; vertical-align: 0px; margin-right: 5px; }
#gnav.navlist .pcsublist>li.symposium .icon svg{ width: 22px; height: 26px; }
#gnav.navlist .pcsublist>li.symposium .txt{ display: inline-block; vertical-align: super; color: #005188; transition: 0.3s; }
#gnav.navlist .pcsublist>li.symposium a:hover .txt{ color: initial; }
#gnav.navlist .pcsublist>li>a>span:hover,
#gnav.navlist .pcsublist>li.hand .txt:hover,
#gnav.navlist .pcsublist>li.enrollment .txt:hover{ color: initial; }
#gnav.navlist a{ text-decoration: none; }
#gnav.navlist .facebook{ display: none; }
#gnav.navlist .contactbox{ position: absolute; top: 0; bottom: 0; right: 0; height: 100%; width: 200px; }
#gnav.navlist .contactbox>ul{ height: 100%; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -webkit-flex-direction: column-reverse; -moz-flex-direction: column-reverse; -ms-flex-direction: column-reverse; -o-flex-direction: column-reverse; flex-direction: column-reverse; width: 100%; }
#gnav.navlist .contactbox>ul>li{ width: 100%;  }
#gnav.navlist .contactbox>ul>li.tellink{ background: #005188; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -webkit-flex-direction: column-reverse; -moz-flex-direction: column-reverse; -ms-flex-direction: column-reverse; -o-flex-direction: column-reverse; flex-direction: column-reverse;color: #fff; line-height: 1.4; -ms-align-items: center; align-items: center; justify-content: center; height: calc(100% - 50px); letter-spacing: -0.05em; }
#gnav.navlist .contactbox>ul>li.tellink .telnum{  }
#gnav.navlist .contactbox>ul>li.tellink .telnum a{ font-weight: bold; font-size: 2.4rem; color: #fff; letter-spacing: 0.02em; }
#gnav.navlist .contactbox>ul>li.tellink .cap{ font-size: 1.3rem; }
#gnav.navlist .contactbox>ul>li.contactlink{ height: 50px; }
#gnav.navlist .contactbox>ul>li.contactlink a{ background: #7cd0f1; color: #fff; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; width: 100%; height: 100%; -ms-align-items: center; align-items: center; justify-content: center; font-weight: bold; font-size: 1.5rem; }
#gnav.navlist .contactbox>ul>li.contactlink a svg{ width: 22px; height: 24px; margin-right: 8px; }
#gnav.navlist .contactbox>ul>li.contactlink a svg .infoicon_st0.st0{fill:#fff;  transition: 0.3s; }
#gnav.navlist .contactbox>ul>li.contactlink a:hover{ background: #ebebeb; color: initial; }
#gnav.navlist .contactbox>ul>li.contactlink a:hover svg .infoicon_st0.st0{fill:#191919;}
#gnav.navlist .contactbox>ul>li.contactlink.sp{display: none;}
@media screen and (max-width: 1300px){
	#gnav{ width: calc(100% - 310px) }
	#gnav.navlist .mainlist>li{ font-size: 1.6rem; }
	#gnav.navlist .pcsublist>li.hand .icon,
	#gnav.navlist .pcsublist>li.enrollment .icon,
	#gnav.navlist .pcsublist>li.symposium .icon{ display: none; }
	#gnav.navlist .pcsublist>li.hand,
	#gnav.navlist .pcsublist>li.hand .txt{ vertical-align: middle; }
	#gnav.navlist .pcsublist>li.symposium,
	#gnav.navlist .pcsublist>li.symposium .txt{ vertical-align: baseline; }
}
@media screen and (max-width: 1040px){
	#gnav ul.pcsublist{ display: none; }
	#gnav { z-index: 1000; height: 100vh!important; position: fixed; top: 0; right: 0; bottom: 0; left: 0; display: block; pointer-events: none; background-color: transparent; font-size: 1.6rem; overflow: hidden; width: 100%!important; padding-right: 17px; }
	#gnav .navbox { position: absolute; top: 70px; left: 0; text-align: center; width: 88%; padding: 0px 6%; /* Safari用 */ overflow-y: scroll; height: calc(100vh - 140px); bottom: 70px; }
	#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: 0; }
	#gnav.navlist .facebook,
	#gnav.navlist .contactbox>ul>li{ opacity: 0; display: block; }
	#gnav.navlist .contactbox>ul>li.contactlink.sp{display: block;}
	#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 { color: #fff; 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.current>a>span{ font-weight: bold; }
	.navlist .mainlist>li>a, .navlist .mainlist>li>p{ padding-bottom: 0; }
	#gnav.navlist .mainlist>li.current a{ color: #fff; }
	#gnav.navlist .mainlist>li.current a:after{ content: none }
	#gnav .facebook{ margin-top: 20px; text-align: center; }
	#gnav .facebook svg{ width: 40px; height: 40px; }
	#gnav.navlist a:hover{ color: #fff; }
	#gnav.navlist .mainlist>li.current>a>span{ font-weight: normal; }
	#gnav ul.mainlist,
	#gnav.navlist .facebook,
	#gnav.navlist .contactbox{ padding-right: 17px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
	#gnav.navlist .contactbox>ul>li.contactlink a:hover{ color: #005188; }
	#gnav.navlist .contactbox>ul>li.contactlink a:hover svg .infoicon_st0.st0{fill:#005188;}
	#gnav.navlist .mainlist>li:first-child,
	#gnav.navlist .pcsublist>li, #gnav.navlist .mainlist>li{ padding-left: 0; }
	#gnav.navlist .mainlist>li a{ padding-bottom: 0; }

	#gnav.navlist .contactbox{ position: static; height: auto; width: 100%; }
	#gnav.navlist .contactbox>ul{ height: auto; display: block; }
	#gnav.navlist .contactbox>ul>li{ width: 100%;  }
	#gnav.navlist .contactbox>ul>li.tellink{ background: transparent; display: block; height: auto; }
	#gnav.navlist .contactbox>ul>li.tellink .telnum{ text-align: center; }
	#gnav.navlist .contactbox>ul>li.tellink .telnum a{ font-size: 3.6rem; }
	#gnav.navlist .contactbox>ul>li.tellink .cap{ font-size: 1.4rem; text-align: center; }
	#gnav.navlist .contactbox>ul>li.contactlink{ height: auto; margin-top: 20px; }
	#gnav.navlist .contactbox>ul>li.contactlink a{ background: #fff; color: #005188; height: 64px; font-weight: normal; font-size: 1.8rem; }
	#gnav.navlist .contactbox>ul>li.contactlink a svg .infoicon_st0.st0{fill:#005188;}
	#gnav.navlist .contactbox>ul>li.contactlink a:hover{ background: #fff; }
	
	#gnav.is-open { pointer-events: auto; opacity: 1; }
	#gnav .bg {
		background: #005188; position: absolute; top: 0px; right: 0px; bottom: 0px; left: 0px; overflow: hidden; z-index: -1; opacity: 0;
		-webkit-transform:scale(0.9,0.9); transform:scale(0.9,0.9);
		-webkit-transition: all 0.6s cubic-bezier(0,.53,.41,1); transition: all 0.6s cubic-bezier(0,.53,.41,1);
 	}
	#gnav.is-open .bg { opacity: 1; -webkit-transform:scale(1,1); transform:scale(1,1); }
	
	#gnav.is-open ul.mainlist>li,
	#gnav.is-open .facebook,
	#gnav.is-open .contactbox>ul>li { opacity:1; transition: 3s; }
	#gnav.is-open ul.mainlist>li:nth-child(1) { -webkit-transition-delay: .2s; transition-delay: .2s; }
	#gnav.is-open ul.mainlist>li:nth-child(2) { -webkit-transition-delay: .28s; transition-delay: .28s; }
	#gnav.is-open ul.mainlist>li:nth-child(3) { -webkit-transition-delay: .36s; transition-delay: .36s; }
	#gnav.is-open ul.mainlist>li:nth-child(4) { -webkit-transition-delay: .44s; transition-delay: .44s; }
	#gnav.is-open ul.mainlist>li:nth-child(5) { -webkit-transition-delay: .52s; transition-delay: .52s; }
	#gnav.is-open ul.mainlist>li:nth-child(6) { -webkit-transition-delay: .6s; transition-delay: .6s; }
	#gnav.is-open ul.mainlist>li:nth-child(7) { -webkit-transition-delay: .68s; transition-delay: .68s; }
	#gnav.is-open ul.mainlist>li:nth-child(8) { -webkit-transition-delay: .76s; transition-delay: .76s; }
	#gnav.is-open ul.mainlist>li:nth-child(9) { -webkit-transition-delay: .84s; transition-delay: .84s; }
	#gnav.is-open ul.mainlist>li:nth-child(10) { -webkit-transition-delay: .92s; transition-delay: .92s; }
	#gnav.is-open .facebook { -webkit-transition-delay: 1s; transition-delay: 1s; }
	#gnav.is-open .contactbox>ul>li:nth-child(1) { -webkit-transition-delay: 1.08s; transition-delay: 1.08s; }
	#gnav.is-open .contactbox>ul>li:nth-child(2) { -webkit-transition-delay: 1.16s; transition-delay: 1.16s; }
	#gnav.is-open .contactbox>ul>li:nth-child(3) { -webkit-transition-delay: 1.28s; transition-delay: 1.28s; }
}
@media screen and (max-width: 767px){
	#gnav .navbox { top: 80px; height: calc(100vh - 160px); }
}









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


Menubtn


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

#menubtn {display: none; z-index: 10000001; position: fixed; top: 30px; right: 60px; }
@media screen and (max-width: 1040px){
	#menubtn { display: block; background: transparent; width: 30px; height: 34px; cursor: pointer; }
	#menubtn a .latofont.txt{ font-size: 0.8rem; font-weight: bold; text-align: center; line-height: 1; position: absolute; bottom: 0; left: 0; right: 0; color: #005188; transition: 0.3s; }
	#menubtn a { text-decoration: none; position: relative; display: block; height: 100%; width: 100%; }
	#menubtn a .line { width: 24px; height: 2px; background: #005188; position: absolute; left: 50%; margin-left: -12px;transition: all 0.6s; }
	#menubtn a #line1 { top: 0; }
	#menubtn a #line2 { top: 8px; }
	#menubtn a #line3 { top: 16px; }
	#menubtn.active a .line { width: 24px; background: #fff; }
	#menubtn.active a #line1 {
		-webkit-transform:translateY(8px) translateX(0) rotate(45deg);
		transform:translateY(8px) translateX(0) rotate(45deg);
	}
	#menubtn.active a #line2 { display: none; }
	#menubtn.active a #line3 { 
		-webkit-transform:translateY(-8px) translateX(0) rotate(-45deg); 
		transform:translateY(-8px) translateX(0) rotate(-45deg);
	}
	#menubtn.active a .latofont.txt{ color: #fff; }
}
@media screen and (max-width: 767px){
	#menubtn { right: 20px; }
}







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


Mainv_index


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

#mainv_index { margin-top: 115px; position: relative; }
#mainv_index .copy{ display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; justify-content: center; -ms-align-items: flex-start; align-items: flex-start; height: 500px; -webkit-flex-direction: column; -moz-flex-direction: column; -ms-flex-direction: column; -o-flex-direction: column; flex-direction: column; width: calc(100% - 340px); margin-left: auto; margin-right: auto; margin-bottom: -5px; }
#mainv_index .copy p span{ display: inline-block; font-weight: bold; font-size: 3rem; background: #fff; padding: 14px 13px; margin-bottom: 5px; line-height: 1; }
#mainv_index .copy p span{ font-weight: bold; }
#mainv_index .slidebox{ position: absolute; top: 0; bottom: 0; left: 0; right: 0; z-index: -1; width: 100%; height: 100%; }
#mainv_index .bg{  width: 100%; height: 500px; object-fit: cover; font-family: 'object-fit: cover;'; /*IE対策*/ object-position: 81%  }
@media screen and (max-width: 1040px){
	#mainv_index{ margin-top: 0; }
	#mainv_index .copy{ justify-content: flex-end; padding-bottom: 80px; height: 320px; width: calc(100% - 160px); }
	#mainv_index .copy p{ font-size: 2.8rem; }
}
@media screen and (max-width: 767px){
	#menubtn { right: 20px; }
	#mainv_index .copy{ height: 335px; width: calc(100% - 60px); padding-bottom: 30px; justify-content: flex-start; padding-top: 50px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
	#mainv_index .bg{ height: 365px; }
	#mainv_index .copy p{ display: block; font-weight: normal; font-size: 1em; background: transparent; padding: 0; margin-bottom: 0; line-height: 1.8; }
	#mainv_index .copy p span{ display: inline-block; font-weight: bold; font-size: 1.8rem; background: #fff; display: inline-block; padding: 9px 9px; margin-bottom: 5px; line-height: 1; }
}




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

Pankuzu



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

#pankuzu { line-height: 1.4; margin-top: 190px; position: relative; margin-bottom: 25px; }
#pankuzu ol li { display:inline; font-size: 1.4rem; }
#pankuzu ol li:after { content: " /"; }
#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


//////////////////*/
#mainv { margin-bottom: 60px; }
#mainv .pagetitle { font-size: 3.6rem; line-height: 1.6; color: #005188; font-weight: bold; }
#mainv .pagetitle span{ font-weight: bold; }
@media screen and (max-width: 1040px){
	#mainv { margin-bottom: 0; padding-top: 30px; padding-bottom: 50px; }
	#mainv .pagetitle { font-size: 3rem; }
}
@media screen and (max-width: 767px) { 
	#mainv { padding-top: 15px; padding-bottom: 40px; }
	#mainv .pagetitle { font-size: 2.6rem; }
}

#main{ background: #f7f7f7; padding: 40px 0 30px; }
#main #content{ background: #fff; padding: 50px 65px; }
@media screen and (max-width: 1040px){
	#main #content{ padding: 50px 6%; }
}
@media screen and (max-width: 767px) { 
	#main #content{ padding: 30px 6%; }
}






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


Footer


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

#fbnrlist{ background: #f7f7f7; }
#fbnrlist .title{ font-weight: bold; font-size: 3rem; line-height: 1.4; margin-bottom: 10px; text-align: center; }
#fbnrlist .txt{ text-align: center; margin-bottom: 20px; }
#fbnrlist ul{ 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; margin-left: -40px; }
#fbnrlist ul>li{ width: calc(33.33% - 40px); margin-left: 40px; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; }
#fbnrlist ul>li>a{ text-decoration: none; background: #fff; color: #005188; 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: 100%; height: 100%; min-height: 150px; line-height: 1.6; }
#fbnrlist ul>li>a svg{ margin-right: 10px; }
#fbnrlist ul>li>a svg .st0{ transition: 0.3s; }
#fbnrlist ul>li>a:hover{ background: #005188; color: #fff; }
#fbnrlist ul>li:nth-child(1) svg{ width: 36px; height: 36px; margin-bottom: 5px; }
#fbnrlist ul>li:nth-child(2) svg{ width: 46px; height: 38px; }
#fbnrlist ul>li:nth-child(3) svg{ width: 30px; height: 34px; }
#fbnrlist ul>li>a:hover .enrollmenticon_st0.st0,
#fbnrlist ul>li>a:hover .handicon_st0.st0,
#fbnrlist ul>li>a:hover .memo_st0.st0{fill:#fff;}
/*#fbnrlist ul>li:nth-child(3) a{ color: #fff; background: #3e71f0; }
#fbnrlist ul>li:nth-child(3) svg{ width: 40px; height: 40px; }
#fbnrlist ul>li:nth-child(3) a:hover{ color: #3e71f0; background: #fff; }*/
/*#fbnrlist ul>li>a:hover .facebookicon_st0.st0{ fill:#3e71f0; }*/
@media screen and (max-width: 1040px){
	#fbnrlist .title{ font-size: 2.8rem; }
	#fbnrlist ul{ display: block; margin-left: 0; margin-bottom: -10px; }
	#fbnrlist ul>li{ width: 100%; margin-left: 0; margin-bottom: 10px; display: block; }
	#fbnrlist ul>li>a{ min-height: 106px; }
}
@media screen and (max-width: 767px){
	#fbnrlist .title { font-size: 1.8rem; }
	#fbnrlist .txt{ text-align: justify; }
	
}


#fcontactbox{ background: #f0f0f0; }
#fcontactbox .title{ font-weight: bold; font-size: 3rem; line-height: 1.4; margin-bottom: 20px; text-align: center; }
#fcontactbox .title span{ font-weight: bold; }
#fcontactbox .txt{ margin-bottom: 30px; text-align: center; }
#fcontactbox .contactbox{  }
#fcontactbox .contactbox>ul{ 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; -ms-align-items: center; align-items: center; flex-wrap: wrap; padding-right: 40px; margin-bottom: -50px; overflow: hidden; }
#fcontactbox .contactbox>ul>li{ margin-left: 40px; margin-bottom: 50px; }
#fcontactbox .contactbox>ul>li.tellink{ width: 100%; text-align: center; }
#fcontactbox .contactbox>ul>li.tellink .telnum{  }
#fcontactbox .contactbox>ul>li.tellink .telnum .tel{ font-weight: bold; font-size: 4.8rem; line-height: 1.4; color: #005188; letter-spacing: 0em; }
#fcontactbox .contactbox>ul>li.tellink .cap{ text-align: center; color: #005188; letter-spacing: 0em; line-height: 1.6; }
#fcontactbox .contactbox>ul>li.tellink .cap a{/* color: #005188; */margin-top: 15px;}
#fcontactbox .contactbox>ul>li.contactlink{  }
#fcontactbox .contactbox>ul>li.contactlink a{ background: #005188; color: #fff; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; width: 360px; height: 87px; -ms-align-items: center; align-items: center; justify-content: center; text-decoration: none; }
#fcontactbox .contactbox>ul>li.contactlink a svg{ width: 22px; height: 24px; margin-right: 10px; }
#fcontactbox .contactbox>ul>li.contactlink a svg .infoicon_st0.st0{fill:#fff;}
#fcontactbox .contactbox>ul>li.contactlink a:hover{ background: #7cd0f1; }
#fcontactbox .contactbox>ul>li.emaillink a{ width: 360px; }
@media screen and (max-width: 1040px){
	#fcontactbox .title{ font-size: 2.8rem; }
	#fcontactbox .txt{ font-size: 1.6rem; }
	#fcontactbox .contactbox>ul{ display: block; margin-left: 0; margin-bottom: -20px; padding-right: 0; }
	#fcontactbox .contactbox ul>li:first-child { margin-bottom:30px; }
	#fcontactbox .contactbox>ul>li{ margin-left: 0; margin-bottom: 20px; }
	#fcontactbox .contactbox>ul>li.tellink .telnum { text-align: center; }
	#fcontactbox .contactbox>ul>li.tellink .telnum .tel{ font-size: 4rem; }
	#fcontactbox .contactbox>ul>li.tellink .cap{ font-size: 1.6rem; }
	#fcontactbox .contactbox>ul>li.emaillink,
	#fcontactbox .contactbox>ul>li.contactlink{ text-align: center; }
	#fcontactbox .contactbox>ul>li.emaillink a{ max-width: 360px; padding-top: 25px; padding-bottom: 25px; }
	#fcontactbox .contactbox>ul>li.contactlink a,
	#fcontactbox .contactbox ul>li.tellink>p.cap>.btnlink.download {font-size: 1.6rem;max-width: 360px; width: 100%; margin-left: auto;margin-right: auto;}
	#fcontactbox .contactbox>ul>li.contactlink a{ height: 87px;}
	#fcontactbox .contactbox ul>li.tellink>p.cap>.btnlink.download { height:87px; display:flex; justify-content:center; align-items:center; }
	#fcontactbox .contactbox>ul>li.emaillink a{ width: 100%; }
}
@media screen and (max-width: 767px){
	#fcontactbox .title{ font-size: 1.8rem; }
	#fcontactbox .txt{ margin-bottom: 20px; }
	#fcontactbox .contactbox>ul>li.tellink .telnum .tel{ font-size: 3.8rem; }
}


#footer { padding-bottom: 25px; }
#footer .footermain{ 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 .logobox{  }
#footer .footermain .logo { width: 340px; }
#footer .footermain .logo a{ text-decoration: none; -webkit-flex-direction: column; -moz-flex-direction: column; -ms-flex-direction: column; -o-flex-direction: column; flex-direction: column; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; }
#footer .footermain .logo a .subsitetitle{ font-size: 1.4rem; }
#footer .footermain .logo a .sitetitle{ font-weight: bold; font-size: 2.2rem; line-height: 1.6; color: #005188; }
#footer .footermain .logobox #cr{ margin-top: 25px; font-size: 1.4rem; }
#fnav{ text-align: right; width: calc(100% - 340px) }
#fnav .facebook{ text-align: right; margin-bottom: 10px; }
#fnav .facebook a{ text-decoration: none; }
#fnav .facebook svg{ width: 40px; height: 40px; vertical-align: middle; margin-left: 5px; }
#fnav .facebook svg .facebookicon_st0.st0{fill:#005188;}
#fnav .facebook a:hover{ color: #005188; }
#fnav ul{ margin-left: -15px; }
#fnav ul>li{ display: inline-block; vertical-align: middle; margin-left: 15px; }
#fnav ul>li>a{ text-decoration: none; }
#fnav ul>li>a>span{  }
#fnav ul>li>a:hover{ color: #005188; }
@media screen and (max-width: 1300px){
	#footer .footermain .logo a .sitetitle{ font-size: 2rem; }
	#header .logo { width: 310px; }
	#fnav{ width: calc(100% - 310px) }
}
@media screen and (max-width: 1200px){
}
@media screen and (max-width: 1040px) {
	#footer{ margin-bottom: 50px; }
	#footer .footermain{ display: block; }
	#fnav{ display: none; }
}
@media screen and (max-width: 767px) {
	#footer .footermain .logo a .subsitetitle{ font-size: 1.1rem; }
	#footer .footermain .logo a .sitetitle{ font-size: 1.8rem; }
	#footer .footermain .logobox #cr{ font-size: 1.1rem; }
}

/* #pagetop */
#pagetop { z-index: 10000; position: fixed; bottom: 30px; right: 60px; }
#pagetop a { text-align: center; text-decoration: none; display: block; line-height: 1; }
#pagetop svg { width: 12px; height: 6px; display: inline-block; -webkit-transform:rotate(-180deg); transform:rotate(-180deg); }
#pagetop svg .arr1.st0{ stroke:#191919; -webkit-transition: 0.3s; -moz-transition : 0.3s; transition : 0.3s; }
#pagetop a .garamondfont{ font-size: 2rem; text-align: center; display: block; line-height: 1; }
#pagetop a:hover{ opacity: 1; color: #992a6c; }
#pagetop a:hover svg .arr1.st0{ stroke:#992a6c; }
@media screen and (max-width: 1040px) { 
	#pagetop{ right: 30px; }
}
@media screen and (max-width: 767px) { 
	#pagetop {  }
	#pagetop a .garamondfont{ display: none; }
	#pagetop a { width: 40px; height: 40px; border-radius: 50%; background: #191919; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; -ms-align-items: center; align-items: center; justify-content: center; }
	#pagetop svg .arr1.st0{ stroke:#fff; }
	#pagetop svg{ width: 14px; height: 8px; }
	#pagetop a:hover{ color: inherit; background: #992a6c; }
	#pagetop a:hover svg .arr1.st0{ stroke:#fff; }
}
@media screen and (max-width: 479px){
	#pagetop { bottom: 20px; right: 20px; }
}




#spfootfit{ display: none; }
@media screen and (max-width: 1040px) { 
	#spfootfit{ 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; position: fixed; bottom: 0; left: 0; right: 0; width: 100%; height: 50px; }
	#spfootfit>li{ width: 50%; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; height: 100%; }
	#spfootfit>li>a{ color: #fff; background: #005188; 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: 100%; height: 100%; text-decoration: none; }
	#spfootfit>li>a svg{ width: 24px; height: 24px; margin-right: 5px; flex-grow:0; flex-shrink: 0; }
	#spfootfit>li>a svg .st0{ fill:#fff; }
	#spfootfit>li.donation>a{ background: #7cd0f1; }
	#spfootfit>li.donation>a svg{ width: 26px; height: 26px; padding-bottom: 5px; }

}