
@charset "UTF-8";
body { font-size: 1.3vw; font-family: "Noto Sans Japanese", "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Roboto, MotoyaLCedar, sans-serif; line-height: 2vw; color: #222222; background-color: #ffffff; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; background: linear-gradient(90deg, #F0F1F2 0%, #F0F1F2 40%, #fff 40%, #fff 100%); justify-content: center; align-items: center; width: 100%; height: 35vw; background-repeat: no-repeat;}.font-latin { font-family: 'Comfortaa', "Noto Sans Japanese", "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Roboto, MotoyaLCedar, sans-serif;}.font-latin2 { font-family: 'Damion', "Noto Sans Japanese", "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Roboto, MotoyaLCedar, sans-serif;}.font-latin3{ font-family: 'Noto Sans JP', sans-serif;}.tel-link { cursor: text; text-decoration: none; pointer-events: none;}#screen { height: 30vw; position: relative; background-repeat: no-repeat; background-position: center center; background-size: cover;}#header > div { position: relative;}.logo-area {position: absolute;	top: 0;	left: 0;}.logo-area a { font-size: 100%;}.logo-area img { width: 100%;}#header-nav { text-align: center; /*background-color: rgba(0,34,85,.85);*/}#header .main-nav { position: absolute;	height: 5vw;}#header .nav-link { text-decoration: none; color: #ffffff; font-size: 120%; display: block; text-align: center; padding: 2vw 1.5vw; transition: 0.2s ease-in-out; position: relative; position: relative; z-index: 1; line-height: 1;}#header .sns-link { font-size: 94%; padding: .5vw 1.2vw;}#header .fb-link { font-size: 94%; padding: .5vw 1.3vw;}#header .nav-link:hover,#header .nav-link.active { color: #FFC83F;}.scroll_style{ position: absolute!important; top: 12vw; left: 0;}.scroll_style li{ -ms-writing-mode: tb-rl; writing-mode: vertical-rl;}/*.scroll_style li a{ text-decoration: none; position: relative;}.scroll_style li a:before { position: absolute; top: calc(50% - 1px); right: 0; width: 10vw; height: 1px; content: ''; background: #b78f18;}.scroll_style li a span { font-weight: 900; position: relative; padding: 0 1em; background: #f0f1f2;
}*/
/*====== 9-1-1 縦線が動いてスクロールを促す =======*/
/*スクロールダウン全体の場所*/
.scrolldown1 { position: absolute; left: 5vw; top: 5vw; height: 50vw;}
/*Scrollテキストの描写*/
.scrolldown1 a{ /*描画位置*/	position: absolute;	left:-1vw;	top: -15px; /*テキストの形状*/	color:#0d519a;	font-size:120%;	letter-spacing: 0.05em;}
/* 線の描写 */
.scrolldown1::after{content: ""; /*描画位置*/	position: absolute;	top: 0; /*線の形状*/	width: 1px;	height: 30px;	background:#0d519a; /*線の動き1.4秒かけて動く。永遠にループ*/	animation: pathmove 1.4s ease-in-out infinite; opacity: 0; margin-top: 6vw; padding-bottom: 6vw;}
/*高さ・位置・透過が変化して線が上から下に動く*/
@keyframes pathmove{0%{height:0;	top:0;	opacity: 0;}	30%{height:30px;	opacity: 1;}	100%{height:0;	top:50px;	opacity: 0;}}
.scroll_style li a:hover{ text-decoration: none;}.tel-text { display: block; text-decoration: none; font-size: 165%; color: ;}.add-text { font-size: 85%;}.youtube,.iframe-wrap { position: relative; width: 100%; margin: 10px 0;}.youtube iframe,.iframe-wrap iframe { position: absolute; top: 0; right: 0; width: 100%; max-width: 800px; height: 100%;}.youtube { padding-top: 56.25%;}.iframe-wrap { padding-top: 65%;}.ttl-index { font-size: 180%;}.ttl-index span { font-size:140%; color: ; /*background-color: #ffffff;*/ position: relative; z-index: 123; line-height: 1;	border-radius: 2.5vw;}#footer-contact .ttl-index,#footer-contact,#footer-contact a { color: #ffffff; /*background-color: transparent;1*/}/*.index-header::after { content: ""; border-bottom: solid 1vw rgba(0,0,0,.6); width: 100%; position: absolute; top: 1vw; left: 0; z-index: 12;
}*/
#footer-contact {background-color:#002255; position: relative; color: #ffffff; min-height: 30vw; padding: 7vw 0!important; text-shadow: 2px 2px 2px rgba(0,34,85,.9); border-bottom: solid 1px #fff;}#footer-contact .position-relative { z-index: 123;}/*#footer-contact::after { content: ""; width: 100%; height: 100%; position: absolute; top: 0; left: 0; background-color: rgba(0,34,85,.5);	z-index: 12;
}*/
#footer-contact h4.text-brown{ position: relative; padding: 1.5rem; text-align: center;}
#footer-contact h4.text-brown{ display: block;}
#footer-contact h4.text-brown:before { position: absolute; bottom:10px; left: calc(50% - 30px); width: 60px; height: 2px; content: ''; border-radius: 3px; background:#b58f16;}.btn-effect { border: solid 1px #ffffff; width: 100%;} { }#banner header h1 span,.ttl-index span{ position: relative; color:#C2A53E;}
#banner header h1 span:before{ position: absolute; bottom: -15px; left: 15px; width: 75px; height: 2px; content: ''; border-radius: 1px; background: #c2a53e; z-index: 999;}.ttl-index span:before{ position: absolute; bottom: -15px; left: 0; width: 75px; height: 2px; content: ''; border-radius: 1px; background: #c2a53e; z-index: 999;}.text-con{ color:#134D91;}.bg-con{ background-color:#134D91;}.text-brown{ color:#b58f16;}.bg-brown{ background-color:#b58f16;}
/*ここからハンバーガーメニュー*/
.menu-btn { position: fixed; top: 10px; right: 10px; display: flex; height: 50px; width: 50px; justify-content: center; align-items: center; z-index:10001; background-color:#005199; cursor:pointer;}.menu-btn span,.menu-btn span:before,.menu-btn span:after { content: ''; display: block; height: 3px; width: 25px; border-radius: 3px; background-color: #ffffff; position: absolute;}.menu-btn span:before { bottom: 8px;}.menu-btn span:after { top: 8px;}#menu-btn-check:checked ~ .menu-btn span { background-color: rgba(255, 255, 255, 0);/*メニューオープン時は真ん中の線を透明にする*/}#menu-btn-check:checked ~ .menu-btn span::before { bottom: 0; transform: rotate(45deg);}#menu-btn-check:checked ~ .menu-btn span::after { top: 0; transform: rotate(-45deg);}#menu-btn-check { display: none;}.menu-content { width: 100%; height:100vh; position: fixed; top: 0; left: 100%; z-index:10000; background-color:rgb(53,132,187,75%); transition: all 0.5s;}#menu-btn-check:checked ~ .menu-content { left: 0;}/*.menu-content ul { padding: 70px 10px 0;
}:/
.menu-content ul li { /*border-bottom: solid 1px #ffffff;*/ list-style: none;}.menu-content ul li a { display: block; width: 100%; font-size: 15px; box-sizing: border-box; color:#ffffff; text-decoration: none; padding: 9px 15px 10px 0; position: relative;}.menu-content ul li a::before { content: ""; width: 7px; height: 7px; border-top: solid 2px #ffffff; border-right: solid 2px #ffffff; transform: rotate(45deg); position: absolute; right: -15px; top: 25px;}
/*ハンバーガーメニューここまで*/
#lower-header { background: linear-gradient(90deg, #fff 0%, #fff 40%, #005199 40%, #005199 100%); justify-content: center; align-items: center; width: 100%; hight:10vw; background-repeat: no-repeat;}@media (min-width: 768px){ .btn-effect { position: relative; box-sizing: border-box; display: inline-block; margin: 0px 3px 6px; text-align: center; text-decoration: none; color: ; white-space: nowrap; z-index: 0; transition: 0.5s ease-in-out; overflow: visible; border: none; padding: 0 2.5vw; width: 100%; } /*.btn-effect::after { box-sizing: border-box; position: absolute; width: 100%; height: 100%; content: ""; border: 3px solid ; z-index: 2; margin: 0px; left: 0px; bottom: 0px; border-top-width: 3px; transition: border-top-width 0.1s 0.2s, height 0.2s 0.1s, width 0.2s 0s, margin 0.2s 0s; }*/ .btn-effect:hover::after { width: 68%; height: 0px; border-width: 0px 1px 1px; margin: 0px 17%; transition: border-top-width 0.1s 0s, height 0.2s 0.1s, width 0.2s 0.2s, margin 0.2s 0.2s; } #footer-contact h4{ color:#C2A53E; } #footer-contact a{ box-sizing: border-box; width: 100%; content: ""; border: 1px solid ; z-index: 2; margin: 0px; left: 0px; bottom: 0px; border-top-width: 1px; transition: border-top-width 0.1s 0.2s, height 0.2s 0.1s, width 0.2s 0s, margin 0.2s 0s; } #lower-header h1{ line-height: 6vw; width: 60%; margin: 0 0 0 40%; } #lower-header h1 strong{ font-size: 90%; } #lower-header h1 span{ font-size: 40%; }}
#lower-header-wrap { padding: 3vw 0;}
#lower-comment { padding: 0 4vw;}#lower-comment p { margin: .5vw 0;}#lower-comment h2,#lower-comment h3,#lower-comment h4 { color: #ffffff; opacity: .7; margin-bottom: 1vw;}#lower-comment h2 { font-size: 125%;}#lower-comment h3 { font-size: 115%;}#lower-comment h4 { font-size: 105%;}
#footer { background-color: #002255;}#footer-nav .nav-link,.copy { color: #ffffff;}#footer-nav a.nav-link { text-decoration: underline; font-weight: 400 !important; padding: 1rem 1.5vw; font-size: 90%;}
@media (min-width: 768px){ /*page-top*/ #Pagetop { position:fixed; bottom: 5vw; right: 3vw; cursor:pointer; z-index: 1234567; opacity: 1; } #Pagetop p { font-size: 250%; text-align: center; line-height: 3.7vw; height: 4vw; width: 4vw; padding: 0; margin: 0; box-shadow: 1px 1px 2px rgba(255,255,255,.3), 1px -1px 2px rgba(255,255,255,.3), -1px 1px 2px rgba(255,255,255,.3), -1px -1px 2px rgba(255,255,255,.3); color: #ffffff; background-color: rgba(0,34,85,.85); }}
@media (min-width: 1300px){ #header .main-nav { font-size: 1.2rem; } #lower-header-wrap, #footer { font-size: 1.1rem; }	.index-header::after {top: 17px;	border-bottom-width: 10px;}}
@media (max-width: 767px){ body { font-size: 3vw; line-height: 4.5vw; height:90vw!important; } .tel-link { pointer-events: auto; /*text-decoration: underline;*/ } #screen { height: 65vw; } #header h1 { font-size: 75%; padding-bottom: 5px; padding-left: 10px; opacity: .7; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }	.logo-area { position: relative;	z-index: 12345; } .logo-area img { width: 50vw; } #header .main-nav, #inquiry-area { background-color: rgba(0,34,85,.85); } #inquiry-area { position: fixed; width: 100%; bottom: 0; left: 0; font-size: 160%; color: #ffffff; z-index: 123456; height: 14vw; } #inquiry-area > div { height: 100%; } #inquiry-area a, .navbar-toggle { color: #ffffff; text-decoration: none; position: relative; display: block; height: 100%; line-height: 1; } .scroll_style { top: 55vw; left: 3vh; } .scrolldown1 { left: 3vw; } .scroll_style li a { font-size: 4vw; } .scroll_style li a::after { top: 18vw; } .scrolldown1 a { top: -45px; left: -2.5vw; } .p-fv-scroll { overflow: hidden; } /*.scroll_style li a::before { content: ""; position: absolute; bottom: 0; left: 51%; width: 1px; height: 25.5rem; background: rgba(255,255,255,.9); }*/ .bm-text { font-size: 30%; position: absolute; top: 8.5vw; left: 0; width: 100%; } .tel-text { font-size: 100%; } .navbar-toggle { border: none; margin-top: 0; outline: none !important; color: #ffffff; background-color: transparent; text-align: center; display: inline-block; width: 100%; padding-top: .7vw; } .navbar-toggle .icon-bar { background-color: #ffffff; width: 7vw; height: .7vw; display: block; border-radius: 1px; margin-left: auto; margin-right: auto; } .navbar-toggle span { transition: all 0.5s; transform: rotate(0deg); } .navbar-toggle .top { transform: translateY(0px); } .navbar-toggle .bottom { transform: translateY(0px); } .navbar-toggle .icon-bar+.icon-bar { margin-top: 1.2vw; } .navbar-toggle.is-open .middle { background: rgba(0, 0, 0, 0); } .navbar-toggle.is-open .top { transform: rotate(-45deg) translateY(1.4vw) translateX(-1.3vw); } .navbar-toggle.is-open .bottom { transform: rotate(45deg) translateY(-1.4vw) translateX(-1.3vw); } #header .main-nav { width: 100%; position: fixed; bottom: -14vw; white-space: nowrap; max-height: 100%; height: auto; z-index: 12345; padding: 3vw; /*opacity: 0;*/ overflow: auto; } #header .main-nav li { margin: 1.5vw 0; padding: 0 2vw; } #header .nav-link { padding: 5vw 0; text-align: center; width: 100%; font-size: 105%; /*border: solid 1px rgba(255,255,255,.5); border-width: 0 0 1px;*/ } #header li:last-child .nav-link { border-width: 0 0 1px; }	.index-header::after { top: 2.5vw; } #en-ttl { top: 55vw; } #lower-header::before { top: 3.2vw; } #footer { padding-bottom: 16vw; } #footer-nav a.nav-link { padding: .8rem 2.5vw; } #Pagetop { background-color: rgba(255,255,255,.2); } #Pagetop p { color: #ffffff; } #footer-contact{ padding:10vw 0!important; } #footer-contact a{ box-sizing: border-box; width: 100%; content: ""; border: 1px solid ; z-index: 2; margin: 0px; left: 0px; bottom: 0px; border-top-width: 1px; transition: border-top-width 0.1s 0.2s, height 0.2s 0.1s, width 0.2s 0s, margin 0.2s 0s; } #footer-contact a:hover{ text-decoration: none; } #lower-header { background:#005199; justify-content: center; align-items: center; width: 100%; background-repeat: no-repeat; } #lower-header strong{ font-size:80%; } #lower-header span{ font-size:30%; }}
@media (max-width: 575px){ body { font-size: 3.7vw; line-height: 5vw; }	.index-header::after { top: 3.5vw; }}