/* CSS Document */

#maincontents {
	color: #16181c;
	margin: 0 auto;
	font-family:"Hiragino Kaku Gothic ProN","ヒラギノ角ゴ Pro W3","Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体",  "メイリオ", sans-serif;
}
#maincontents * {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}
#maincontents ul { list-style: none; margin: 0; padding: 0; }
#maincontents a:hover { text-decoration: none !important; color: #16181c; }
#maincontents a:visited,#maincontents a:link { color: #16181c; }
img { max-width: 100%; }
p { margin: 0; line-height: 26px;}
#maincontents h3 { font-weight: normal; }

@media (min-width:751px){
	/*#maincontents a,#maincontents a img { transition:0.3s; }*/
	#maincontents a:active, #maincontents a:hover, #maincontents a:hover img { opacity: 0.5; }
	#maincontents { font-size: 14px; }

	.for_sp { display: none; }
	#maincontents .mainWidth { width: 1100px; margin:0 auto; }
	#maincontents .width970 { width: 970px; margin:70px auto; }
	#pastlist { width: 950px; margin: 10px auto; }
	.flex { display: flex; }
	#maincontents a.cbtn { display: block; width: 220px; height: 40px; line-height: 38px; border: #003080 1px solid; position: relative; text-align: center; color: #003080!important; }
	#maincontents a.cbtn:after { content: ""; width: 6px; height: 10px; position: absolute; right: 13px; top:50%; margin-top: -5px; background: url(../images/icon_bt.svg); transition:0.3s; }
	#maincontents a.cbtn:hover { opacity: 1; background: #003080; color: #ffffff!important; }
	#maincontents a.cbtn:hover:after { background: url(../images/icon_bt_on.svg); right: 8px; }
	#maincontents a.cbtn.big_center { width: 300px; height: 60px; line-height: 58px;
		margin: 0 auto 80px; }
	#maincontents a.pdf { background: url(../images/icon_pdf.svg) 15px center no-repeat; }
	#maincontents a.pdf:hover { background: url(../images/icon_pdf_on.svg) 15px center no-repeat #003080; }
	#wrap #maincontents .inner950 { width: 1100px; margin: 0 auto; }

.showup {
	opacity: 0;
	transition: 1s;
	transform: translateY(20px);
    -webkit-transform: translateY(20px);
    -moz-transform: translateY(20px);
    -ms-transform: translateY(20px);
    -o-transform: translateY(20px);
}
.upview {
	-moz-animation: showup 0.6s linear 0s 1 normal forwards;
	-webkit-animation: showup 0.6s linear 0s 1 normal forwards;
	-o-animation: showup 0.6s linear 0s 1 normal forwards;
	-ms-animation: showup 0.6s linear 0s 1 normal forwards;	
}
.upview.uv2 {
	-moz-animation: showup 0.6s linear 0.3s 1 normal forwards;
	-webkit-animation: showup 0.6s linear 0.3s 1 normal forwards;
	-o-animation: showup 0.6s linear 0.3s 1 normal forwards;
	-ms-animation: showup 0.6s linear 0.3s 1 normal forwards;	
}
.upview.uv3 {
	-moz-animation: showup 0.6s linear 0.6s 1 normal forwards;
	-webkit-animation: showup 0.6s linear 0.6s 1 normal forwards;
	-o-animation: showup 0.6s linear 0.6s 1 normal forwards;
	-ms-animation: showup 0.6s linear 0.6s 1 normal forwards;	
}
.upview.uv4 {
	-moz-animation: showup 0.6s linear 0.9s 1 normal forwards;
	-webkit-animation: showup 0.6s linear 0.9s 1 normal forwards;
	-o-animation: showup 0.6s linear 0.9s 1 normal forwards;
	-ms-animation: showup 0.6s linear 0.9s 1 normal forwards;	
}
.upview.uv5 {
	-moz-animation: showup 0.6s linear 1.2s 1 normal forwards;
	-webkit-animation: showup 0.6s linear 1.2s 1 normal forwards;
	-o-animation: showup 0.6s linear 1.2s 1 normal forwards;
	-ms-animation: showup 0.6s linear 1.2s 1 normal forwards;	
}

	.cflex { display: flex; }
	.ch3 { border-bottom: #d8d8d8 1px solid; padding-bottom: 20px; font-size: 20px; 
		position: relative; padding-left: 15px; margin-bottom: 40px; letter-spacing: 1px;}
	.ch3:before { content: ""; background: #003080; width: 2px; height: 25px; position: absolute;
		top:0; left: 0; }
	.pamphNavi { justify-content:space-between; padding: 95px 0 45px; }
	#maincontents .pamph { }
	.pamph li { /*width: 316px;*/ border-right: #b9b9b9 1px solid; padding-right: 30px; }
	.pamph li:nth-child(2) { padding-left: 30px; }
	.pamph li span { display: block; width: 220px; height: 40px; line-height: 38px;
		border: #003081 1px solid; text-align: center; font-size: 14px; color: #003081;
		background: url(../images/icon_bt.svg) right 10px center no-repeat;
		margin: 5px auto; transition:0.3s; }
	.pamph li span.long { width: 300px; }
	.pamph li a:hover { opacity: 1; }
	.pamph li a:hover span { background: url(../images/icon_bt_on.svg) right 5px center no-repeat #003081; color: #ffffff; }
	/*.pamph li:last-child { margin-left: 30px; }*/

	.carouselWrap { width: 955px; margin: 0 auto; height: 45px; overflow: hidden; }

	#bn_contents {
		display: flex;
    	width: 60%;
    	margin: 0 auto;
	}
	#bn_contents a {
		width: 240px;
		display: block;
		margin: 0 auto 32px;
	}
	#bn_contents a img {
		width: 100%;
	}

	ul#carousel { 
		display: flex;
		width: 1325px;
		flex-wrap: wrap;
		align-items: center;
	}
	ul#carousel li {
		max-width: 180px;
		min-width: 65px;
		max-height: 40px;
		margin-right: 10px;
	}
	ul#carousel li img {
		max-width: 100%;
		max-height: 40px;
		display: block;
		margin: auto;
	}
	#c_ctrl li:first-child { position: absolute; left: 0; }
	#c_ctrl li:last-child { position: absolute; right: 0; }
	
	#c_ctrl li a { display: block; width: 30px; height: 30px; border-radius: 15px;
		text-align: center; }

	#maincontents #c_ctrl { width: 1040px; margin: 0 auto; position: relative; top:-40px; }
	#c_ctrl li a.c_prev { background: url(../images/icon_prev.svg) center center no-repeat #16181c; }
	#c_ctrl li a.c_next { background: url(../images/icon_next.svg) center center no-repeat #16181c; }


	#maincontents #contact { border: #003081 2px solid; margin: 80px auto 50px; }
	#contact h3 { background: #003081; padding: 25px; text-align: center; font-size: 24px;
		color: #ffffff; margin: 0; }
	#contact h3 span { font-family: "Questrial"; font-size: 13px; display: block; }
	#contact>.flex { padding: 30px; align-items:center; flex-direction:row-reverse;
		justify-content: center; }
	#contact>.flex .img { margin-right: 30px; }
	#contact>.flex .name { font-size: 24px; margin-bottom: 10px; }
	#contact>.flex .name span { font-size: 18px; margin-right: 1em; }
	/*#contact>.flex .txt { padding-right: 55px; }*/
	#contact>.flex .txt .flex { align-items:center; }
	#contact>.flex .txt .flex .tel { font-family: "Questrial"; font-size: 40px; color: #003081;
		margin-right: 20px; }
	#contact>.flex .txt .flex .tel a { color: #003081; cursor: default; }
	#contact>.flex .txt .flex .tel a:hover { opacity: 1; }
	#contact>.flex .txt .b_hours { text-indent: -0.5em; }
	#contact>.flex .txt .toroku { margin-top: 10px; }

	.footNav { margin: 0 auto 60px; justify-content:space-between; width: 1100px; }
	#maincontents .footNav dl,#maincontents .footNav ul { padding: 0 50px 0 0; margin: 0;
		font-size: 15px; line-height: 30px; }
	#maincontents .footNav dl dd,#maincontents .footNav ul li { padding: 0; margin: 0;
		 }
	#maincontents .footNav a{ color: #191919; }
	#maincontents .footNav a:before { content: "-";display: inline-block; padding-right: 5px; }

}
	@-moz-keyframes showup { 0% { opacity: 0; transform: translateY(20px); } 100% { opacity: 1; transform: translateY(0); } }
	@-webkit-keyframes showup { 0% { opacity: 0; transform: translateY(20px); } 100% { opacity: 1; transform: translateY(0); } }
	@-o-keyframes showup { 0% { opacity: 0; transform: translateY(20px); } 100% { opacity: 1; transform: translateY(0); } }
	@-ms-keyframes showup { 0% { opacity: 0; transform: translateY(20px); } 100% { opacity: 1; transform: translateY(0); } }
@media (min-width: 751px) and  (max-width:1145px){
	#maincontents .mainWidth { width: 100%; padding-left: 2vw; padding-right: 2vw; }
}
@media (max-width:750px){
	#wrapper,#wrap { width: 100%; overflow: hidden; }
	.for_pc { display: none; }
	#pastlist { width: 88vw; margin: 2vw auto; }
	#maincontents .mainWidth,#maincontents .width970 { width: 88vw; margin:10vw auto; }
	p { margin: 0; line-height: 6vw;}
	#maincontents a.cbtn { display: block; width: 100%; height: 12vw; line-height: 12vw; border: #003080 1px solid; position: relative; text-align: center; color: #003080; font-size: 3.7vw; }
	#maincontents a.cbtn:after { content: ""; width: 2vw; height: 4vw; position: absolute; right: 2vw; top:50%; margin-top: -2vw; background: url(../images/icon_bt.svg) center center no-repeat; background-size: 2vw auto; }
	/*#maincontents a.cbtn.big_center { width: 300px; height: 60px; line-height: 58px;
		margin: 0 center 80px; }*/
	#maincontents a.pdf {background: url(../images/icon_pdf.svg) 3vw center no-repeat;}

.showup {
	opacity: 0;
	transition: 1s;
	transform: translateY(4vw);
    -webkit-transform: translateY(4vw);
    -moz-transform: translateY(4vw);
    -ms-transform: translateY(4vw);
    -o-transform: translateY(4vw);
}
.upview {
	-moz-animation: showup 1s linear 0s 1 normal forwards;
	-webkit-animation: showup 1s linear 0s 1 normal forwards;
	-o-animation: showup 1s linear 0s 1 normal forwards;
	-ms-animation: showup 1s linear 0s 1 normal forwards;	
}

#maincontents div.banners .flex.mainWidth {
    margin: 0;
}

	/*#maincontents p { font-size: 3.7vw; }*/
	.ch3 { margin-bottom: 5vw; border-bottom: #d8d8d8 1px solid; padding-bottom: 2vw; font-size: 5vw; 
		position: relative; padding-left: 2vw; }
	.ch3:before { content: ""; background: #003080; width: 2px; height: 6vw; position: absolute;
		top:0; left: 0; }
	.ch3_sp:before { height: 13vw; }

	.pamphNavi { padding: 15vw 0 8vw; }
	#maincontents .pamph { width: 74vw; margin: 0 auto; }
	.pamph li { width: 100%; padding-bottom: 6vw; }
	.pamph li a { display: block; text-align: center; }
	.pamph li span { display: block; width: 100%; height: 13vw; line-height: 13vw;
		border: #003081 1px solid; text-align: center; font-size: 4vw; color: #003081;
		background: url(../images/icon_bt.svg) right 2vw center no-repeat;
		margin: 2vw auto; background-size: 1.4vw auto; }

	.carouselWrap { width: 66vw; margin: 0 auto; overflow: hidden; height: 34vw; }

		#bn_contents a {
			width: 80%;
			display: block;
			margin: 0 auto 5vw;
		}
		#bn_contents a img {
			width: 100%;
		}

	ul#carousel {
		display: flex;
		width: 528vw;
		height: 20vw;
		align-items: center;
	}
	
	ul#carousel li {
		max-width: 80vw;
	}
	ul#carousel li img {
		max-width: 66vw;
		max-height: 20vw;
		display: block;
		margin: auto;
	}

	#maincontents #c_ctrl {
		width: 88vw;
		margin: 0 auto;
		position: relative;
		top:-30vw;
	}
	#c_ctrl li:first-child { 
		position: absolute;
		left: 0;
	}
	#c_ctrl li:last-child { 
		position: absolute;
		right: 0;
	}

	#c_ctrl li a { display: block; width: 6vw; height: 6vw; border-radius: 3vw;
		text-align: center; }
	#c_ctrl li a.c_prev { background: url(../images/icon_prev.svg) center center no-repeat #16181c;
		background-size: 1.4vw auto; }
	#c_ctrl li a.c_next { background: url(../images/icon_next.svg) center center no-repeat #16181c;
		background-size: 1.4vw auto; }


	#maincontents #contact { border: #003081 2px solid; margin: 17vw auto 13vw; }
	#contact h3 { background: #003081; padding: 4vw; text-align: center; font-size: 5vw;
		color: #ffffff; margin: 0; }
	#contact h3 span { font-family: "Questrial"; font-size: 3.2vw; display: block; }
	#contact>.flex { padding: 4vw; align-items:center; }
	#contact>.flex .img { margin: 4vw auto 0; width: 27vw; }
	#contact>.flex .name { font-size: 5vw; margin-bottom: 2vw; }
	#contact>.flex .name span { font-size: 4vw; }
	#contact>.flex .txt .flex {  }
	#contact>.flex .txt .flex .tel { font-family: "Questrial"; font-size: 8vw; color: #003081;
		margin-bottom: 4vw; }
	#contact>.flex .txt .flex .tel a { color: #003081; }
	#contact>.flex .txt .toroku { margin-top: 2vw; }
	#contact>.flex .txt p { font-size: 3.7vw; line-height: 5vw; }

	.footNav { background: #ebebf9; padding: 8vw 6vw; }
	#maincontents .footNav dl,#maincontents .footNav ul { padding: 0; margin: 0;
		font-size: 3.7vw; line-height: 6vw; display: flex; }
	#maincontents .footNav dl dd,#maincontents .footNav ul li { padding: 0; margin: 0;
		/*display: inline-block; */width: 50%; }
	#maincontents .footNav a{ color: #0062b2; }
	/*#maincontents .footNav a:before { content: "-";display: inline-block; padding-right: 5px; }*/
}

#maincontents footer{margin:0;}