@charset "UTF-8";

/*reset*/
/*-------------------------------------------------------*/
article,aside,figure,figcaption,footer,header,nav,section,main{ display: block; }
small{ font-size: inherit; line-height: inherit; }
body,p,h1,h2,h3,h4,h5,h6,dl,dt,dd,div,figure,figcaption{ margin: 0; padding: 0; font-size: 100%; line-height: 1.5; }
ul,li,ol{ list-style: none; margin: 0; padding: 0; }
button{ background-color: transparent; border: none; cursor: pointer; outline: none; padding: 0; appearance: none; }
a img{ border: none; }
a{ color: #2d48d2; }
img{ vertical-align: bottom; max-width: 100%; height: auto; }
html,body,p,div{
	color: #283a40;
	font-family: 'YakuHanJP', "Noto Sans JP", sans-serif;
	font-size: 18px; line-height: 2.2222;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}
html,body{ background-color: #ffffff; }
@media screen and (max-width: 767.5px) {
	html,body,p,div{ font-size: 16px; line-height: 2; }
}

.txt-left{ text-align: left; }
.txt-center{ text-align: center; }
.txt-right{ text-align: right; }
.sw-elm .pc,.sw-elm .sp{ display: none; }
.sw-elm .pc{ display: block; }
.sw-elm img.pc{ display: inline; }
.s-size{ font-size: 80%; }
.defs{ position: absolute; z-index: -9999; width: 0; height: 0; overflow: hidden; }

@media screen and (max-width: 767.5px) {
	.sw-elm .pc,.sw-elm img.pc{ display: none; }
	.sw-elm .sp{ display: block; }
	.sw-elm img.sp{ display: inline; }
}




/*initialize*/
/*-------------------------------------------------------*/
#wrapper .defs{ height: 0; overflow: hidden; }
#wrapper{ background-color: #ffffff; overflow: hidden; position: relative; }
#wrapper::before,
#wrapper::after{ content: ""; position: absolute; top: 0; width: 12px; height: 100%; z-index: 1000; pointer-events: none; }
#wrapper::before{ left: 0;background-color: #0c2e6e; }
#wrapper::after{ right: 0;background-color: #ceb370; }
#header{ position: absolute; width: 100%; z-index: 2000; }
#header .logo{ width: 110px; left: 42px; top: 30px; position: absolute; }
#header .menu-wrapper .menu-btn{ display: none; }
#header .navi-list{ right: 42px; top: 30px; position: absolute; }
#header .navi-list .navi{ text-align: right; line-height: 0; }
#header .navi-list .navi:nth-child(n+2){ margin-top: 20px; }
#header .navi-list .navi a{ display: block; font-size: 0.88rem; line-height: 1.5; color: #0c2e6e; display: inline-block; text-decoration: none; position: relative; padding: 3px 0; }
#header .navi-list .navi a::before{ content: ""; position: absolute; left: 0; bottom: 0; width: 100%; height: 2px; background-color: #0c2e6e; }
#header .home-btn{ position: fixed; right: 42px; top: 30px; width: 129px; }
#header .home-btn a{ display: block; }
#wrapper.area-page .menu-wrapper{ display: none!important; }
#wrapper.home-page .home-btn{ display: none!important; }
#main .content .end-section{ position: relative; padding: 35px 0 32px; text-align: center; }
#main .content .end-section .bg{ position: absolute; left: 0; top: 0; width: 100%; height: 100%; }
#main .content .end-section .bg .wave-mask{ width: 100%; padding-top: 1.5642%; position: absolute; left: 0; bottom: 100%; clip-path: url(#wave-path01); background-color: #ffffff; z-index: 500; pointer-events: none; transform: rotate(180deg); margin-bottom: -1px; z-index: 500; }
#main .content .end-section .logo{ width: 168px; margin: 0 auto; }
#main .content .end-section .logo img{ width: 100%; height: auto; }
#footer{ position: relative; z-index: 1500; background-color: #ffffff; }
#footer .footer-navi{ background-color: #000000; padding: 18px 0; }
#footer .footer-navi .navi-list{ display: -ms-flex; display: flex; justify-content: center; flex-wrap: wrap; margin: 0 auto; }
#footer .footer-navi .navi-list .navi{ margin: 0 1em; }
#footer .footer-navi .navi-list .navi a{ color: #ffffff; text-decoration: none; display: block; position: relative; padding-left: 1.5em; font-size: 0.88rem; }
#footer .footer-navi .navi-list .navi a::before{ content: ''; position: absolute; left: 0; top: 50%; width: 7px; height: 7px; border: solid #ffffff; border-width: 1px 1px 0 0; transform: rotate(45deg) translateY(-50%); }
#footer .kintetsu-logo{ margin-top: 20px; text-align: center; }
#footer .kintetsu-logo a{ display: block; max-width: 155px; margin: 0 auto; }
#footer .copyright{ font-size: 12px; margin: 0 auto; padding: 10px 0 60px; color: #666666; text-align: center; }

@media screen and (max-width: 1400px) {
	#main .content .end-section .bg .wave-mask{ width: 1400px; padding-top: 22px; left: 50%; transform: translateX(-50%) rotate(180deg); }
}
@media screen and (max-width: 1200px) {
}
@media screen and (max-width: 767.5px) {
	#wrapper{ min-width: 0; }
	#wrapper::before,
	#wrapper::after{ width: 1.5625%; }
	#header .logo{ width: 14.3229%; left: 5.5%; top: 0; margin-top: 4%; }
	#header .menu-wrapper{ position: fixed; left: 100%; top: 0; width: 100%; }
	#header .menu-wrapper .menu-btn{ position: absolute; right: 100%; top: 0; margin: 3vw 3vw 0 0; width: 12%; padding-top: 12%; display: block; cursor: pointer; }
	#header .menu-wrapper .menu-btn .icon{ position: absolute; left: 50%; top: 0; width: 50%; padding-top: 50%; transform: translateX(-50%); margin-top: 8%; }
	#header .menu-wrapper .menu-btn .icon::before,
	#header .menu-wrapper .menu-btn .icon::after{ content: ""; position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); width: 100%; box-sizing: border-box; }
	#header .menu-wrapper .menu-btn .icon::before{ height: 60%; border: solid #0c2e6e; border-width: 1px 0; }
	#header .menu-wrapper .menu-btn .icon::after{ border-top: 1px solid #0c2e6e; }
	#header .menu-wrapper .menu-btn.active .icon::before{ height: 0; border-bottom-width: 0; transform: translate(-50%,-50%) rotate(45deg); }
	#header .menu-wrapper .menu-btn.active .icon::after{ transform: translate(-50%,-50%) rotate(-45deg); }
	#header .menu-wrapper .menu-btn .word{ position: absolute; left: 0; bottom: 0; width: 100%; text-align: center; font-size: 0.7rem; line-height: 1.5; margin-bottom: 8%; color: #0c2e6e; white-space: nowrap; }
	#header .menu-wrapper .menu-btn .word-close{ display: none; }
	#header .menu-wrapper .menu-btn.active .word-open{ display: none; }
	#header .menu-wrapper .menu-btn.active .word-close{ display: block; }
	#header .navi-list{ left: 0; right: auto; top: 0; margin-top: 17%; padding-right: 5%; transition: transform 0.5s; }
	#header .menu-wrapper .menu-btn.active~.navi-list{ transform: translateX(-100%); }
	#header .navi-list .navi:nth-child(n+2){ margin-top: 2.6041vw; }
	#header .navi-list .navi a::before{ height: 1px; }
	#header .home-btn{ right: 5.5%; top: 0; margin-top: 4%; width: 25%; max-width: 129px; }
	#main .content .end-section{ padding: 10% 0 5%; }
	#main .content .end-section .bg .wave-mask{ width: 100%; padding-top: 1.5642%; left: 0; transform: rotate(180deg); }
	#main .content .end-section .logo{ width: 30%; max-width: 168px; }
	#footer .footer-navi{ padding: 0; margin-top: 5%; }
	#footer .footer-navi .navi-list{ flex-wrap: wrap; width: auto; justify-content: flex-start; }
	#footer .footer-navi .navi-list .navi{ width: 50%; }
	#footer .footer-navi .navi-list .navi:nth-child(n){ margin: 0; }
	#footer .footer-navi .navi-list .navi:nth-child(even){ border-left: 1px solid #ffffff; margin-left: -1px; }
	#footer .footer-navi .navi-list .navi:nth-child(n+3){ margin-top: -1px; border-top: 1px solid #ffffff; }
	#footer .footer-navi .navi-list .navi a{ padding: 10px 15px 10px 10px; }
	#footer .footer-navi .navi-list .navi a::before{ left: auto; right: 10px; }
	#footer .copyright{ width: auto; padding: 5%; }
}









#header .home-btn a{ transition: transform 0.2s cubic-bezier(0.47, -0.54, 0.57, 1.84); }
#header .home-btn a:active{ transform: scale(1.05); }
@media (hover: hover){
	#header .home-btn a:hover{ transform: scale(1.05); }
}