
@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;
}
.top_bar a.tel-link{ color:#fff;
}
.fw400{ font-weight:400;
}
.fw700{ font-weight:700;
}
.text-link,
.text-link:hover { color:#fff;
}
.text-link:hover { opacity: .7;
}
.font-latin { font-family: 'Comfortaa', "Noto Sans Japanese", "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Roboto, MotoyaLCedar, sans-serif;
}
.top_bar { background: #042F84;
}
.top_bar h1{ color:#fff;
}
.tel-link { cursor: text; text-decoration: none; pointer-events: none;
}
.w-space { letter-spacing: .3em; text-indent: .3em;
}
#header { height: 50vw; position: relative; background-repeat: no-repeat; background-position: center center; background-size: cover;
}
#header-wrap { height: 100%; /*background: linear-gradient(to bottom, rgba(0,0,0,.9) 0%, rgba(0,0,0,.3) 100%);*/
}
#header > div { position: relative;
}
.logo-area a { font-size: 100%; z-index: 123; position: relative;
}
.logo-area img { width: 15vw;
}
#header .main-nav { text-align:right; position: absolute; right: 0; top: 0; background-color: #fff; width: 100%; /*border-bottom: solid 3px #449e48;*/
}
#header .nav-link { text-decoration: none; color:#000; font-size: 100%; display: block; text-align: center; padding: 0 1vw; transition: 0.2s ease-in-out; position: relative; position: relative; z-index: 1; line-height: 6vw; height: 6vw; border-radius: 5px;
}
#header .sns-link { font-size: 94%; padding: 2vw 1.5vw 1.8vw;
}
#header .fb-link { font-size: 94%; padding: 2vw 1.5vw 1.8vw;
}
#header .nav-link:hover, #header .nav-link.active { color: #ffffff; background: #042F84;
}
#header .nav-link::after { position: absolute; top: 0; left: 0; content: ''; width: 100%; /*height: 3px; background-color: #FFC83F;*/ transform: scale(0); transition: transform .3s; z-index: -1;
}
#header .nav-link:hover::after,
#header .nav-link.active::after { transform: scale(1);
}
.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%;
}
#news .ttl-index { color:#fff; background-color:#449e48; /*position: relative;*/ z-index: 123;
}
#f-contact .ttl-index { color:#449e48; background-color:#fff; /*position: relative;*/ z-index: 123;
}
#lower-header { color: #ffffff; position: absolute; width: 100%; height: 38vw; top: 0; left: 0;
}
@media (min-width: 768px){ #btn-inquiry { height: 95%; font-size: 120%; padding-top: .2vw; } #btn-inquiry .far { margin-top: -0.17vw; } a.btn-effect, .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; } .btn-effect::after { box-sizing: border-box; position: absolute; width: 100%; height: 100%; content: ""; border: 2px solid ; z-index: 2; margin: 0px; left: 0px; bottom: 0px; border-top-width: 2px; 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 2px 2px; 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; }
}
#lower-header { color: #ffffff; position: absolute; width: 100%; height: 38vw; top: 0; left: 0;
}
#lower-header-wrap { padding: 0 0 2vw;	text-shadow: 1px 1px 2px rgba(255,255,255,.8), -1px 1px 2px rgba(255,255,255,.8), 1px -1px 2px rgba(255,255,255,.8), -1px -1px 2px rgba(255,255,255,.8);
}
.en-ttl span { font-size: 80%; z-index: 123; line-height: 1;
}
.lower h2 { background-color: rgba(34,34,34,.05); padding: .5vw .5vw .5vw .8vw; border-left:solid 4px #449e48; font-size: 130%;
}
.biz-sec h2 { background-color: #042F84; padding: .5vw .5vw .5vw .8vw; border-bottom: solid 4px #031f57; color: #ffffff;
}
#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 { color:#fff; background: #449e48; padding: 0 5vw;
}
#lower-comment p { color:#000!important; padding: 0 5vw;
}
#lower-comment h4 { font-size: 105%;
}
#f-contact { background: #042F84!important; position: relative; color: #ffffff;
}
#f-contact::before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; /*background-color: rgba(0,0,0,.5);*/ z-index: 1;
}
#f-contact >div { position: relative; z-index: 1234;
}
#f-contact a { color:#fff;
}
#f-contact a { /*border: solid 1px #ffffff;*/ /*background-color: rgba(0,0,0,.7);*/
}
#footer { background-color: #fff;
}
#footer-nav .nav-link,
.copy { color: #000;
}
#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(4, 47, 132,.8); } #header li.link_inquiry{ background: #042F84; } #header li.link_inquiry a{ color:#fff!important; } #header li.link_inquiry a:hover{ opacity: .7; }
}
@media (min-width: 1200px){ body { line-height: 1.7; } #header .main-nav { font-size: 1rem; } #lower-header-wrap,	#lower-comment, #footer { font-size: 1.1rem; }
}
@media (max-width: 1199px){ .container { max-width: none; }
}
@media (max-width: 991px){ #header .main-nav { font-size: 1.6vw; } #header .nav-link { padding: 0 0.5vw; }
}
@media (max-width: 767px){ body { font-size: 3vw; line-height: 4.5vw; } .tel-link { pointer-events: auto; } #header { height: 60vw; } #lower-header { height: 45vw; } #header h1 { font-size: 75%; padding-bottom: 5px; padding-left: 10px; opacity: .7; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; } .logo-area img { width: 65vw; } #inquiry-area { position: fixed; width: 100%; bottom: 0; left: 0; font-size: 160%; color: #ffffff; background-color: rgba(4, 47, 132, 0.9); 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; } .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 { display: none; background-color: rgba(255, 255, 255, 0.7); width: 100%; position: fixed; bottom: -14vw; white-space: nowrap; max-height: 100%; height: auto; z-index: 12345; padding: 3vw; opacity: 0; overflow: auto; top: auto;	font-size: 3.6vw; } #header .main-nav li { margin: 1.5vw 0; padding: 0 2vw; } #header .nav-link::after { display: none; } #header .nav-link { padding: 0vw 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; } .en-ttl::after { bottom: 1.9vw; } #f-contact .ttl-index { width: 42vw; } #footer { padding-bottom: 16vw; } #footer-nav a.nav-link { padding: .8rem 2.5vw; } #footer-nav{display:none;} #Pagetop { background-color: rgba(4, 47, 132, 0.7); } #Pagetop p { color: #ffffff; }
}
@media (max-width: 575px){ body { font-size: 3.7vw; line-height: 5vw; }
}
