
@charset "UTF-8";
body { font-size: 1.2vw;
　font-family: "Zen Kaku Gothic New", sans-serif; /*font-family: 'Zen Maru Gothic', serif;*/ line-height: 2vw; color: #222222; background-color: #ffffff; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;}.text-link,.text-link:hover { color: #222222;}.text-link:hover { opacity: .7;}.font-latin { font-family: 'Comfortaa', "Noto Sans Japanese", "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Roboto, MotoyaLCedar, sans-serif;}.font-kaku { font-family: "Zen Kaku Gothic New", sans-serif;}.tel-link { cursor: text; text-decoration: none; pointer-events: none;}.w-space { letter-spacing: .3em; text-indent: .3em;}
.fade-up { transition: .6s ease-out; transform: translateY(40px); opacity: 0;}.fade-up.delighter.started { transform: translateY(0); opacity: 1;}
.a_btn { background-color: #fff; border: 1px solid #00A035; color: #00A035;}.a_btn::before ,
.a_btn::after { background-color: #00A035;}.a_btn:hover { color: #63ce00;}.btn_auto { margin: 1rem auto 0;}.btn_common { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: center; -ms-flex-align: center; align-items: center; position: relative; padding: .5em 2em; max-width: 270px; -webkit-transition: .3s; transition: .3s; font-weight: 600; border-radius: 50px;}.btn_common::before { content: ""; position: absolute; top: calc(50% - 2px); right: -2em; -webkit-transform: translateY(calc(-50% - 2px)) rotate(30deg); transform: translateY(calc(-50% - 2px)) rotate(30deg); width: 12px; height: 2px; -webkit-transition: .3s; transition: .3s;}.btn_common::after { content: ""; position: absolute; top: 50%; right: -2em; -webkit-transform: translateY(-50%); transform: translateY(-50%); width: 70px; height: 2px; -webkit-transition: .3s; transition: .3s;}.btn_common:hover::before, .btn_common:hover::after { right: -2.5em;}
#header { height: 40vw; position: relative; background-repeat: no-repeat; background-position: center center; background-size: cover; z-index: 12345;}
#sv::after {background: rgba(255,255,255,.3);	content: "";	width: 100%;	height: 100%;	position: absolute;	top: 0;	left: 0;	z-index: 123;}#mv,#sv {z-index: 12;	width: 100%;	height: 40vw;	background-position: center center;	background-repeat: no-repeat;	background-size: cover;	position: absolute;	left: 0;	top: 0; overflow: hidden;}#sv { height: 100%;}#header-wrap { position: relative; z-index: 12345; background: rgba(255,255,255,1);}.logo-area a { font-size: 100%; z-index: 123; position: relative;}.logo-area img { width: 7vw;}#header .main-nav { text-align: center; position: absolute; right: 0; top: 2.5vw; background-color: transparent; z-index: 12345;}#header .nav-link { text-decoration: none; color: #00a035; font-size: 100%; display: block; text-align: center; padding: .5vw 2vw; transition: 0.2s ease-in-out; position: relative; position: relative; z-index: 1; line-height: 1;}#header .sns-link { font-size: 94%; padding: 1.6vw 1.5vw 1.5vw;}#header .fb-link { font-size: 94%; padding: 1.6vw 1.5vw 1.5vw;}
#header .nav-link:hover,#header .nav-link.active { color: #63ce00;}#header .nav-link::after { position: absolute; bottom: 0; left: 0; content: ''; width: 100%; height: 1px; background-color: #63ce00; 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%;}
.ttl-index { font-size: 140%; color:#000; position: relative; z-index: 123; line-height: 1;}
.ttl-index span { font-size: 45%;}
@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: #222222; position: absolute; width: 100%; height: 30vw; top: 0; left: 0;}#lower-header-wrap { padding: 0 0 2vw 3vw; position: relative; z-index: 123;}.en-ttl span { font-size: 80%; z-index: 123; line-height: 1;}
.lower h2 { background-color: rgba(34,34,34,.1); padding: .5vw .5vw .5vw .8vw; border-left: solid 3px ; font-size: 130%;}
#lower-comment { padding: 0 4vw;}#lower-comment p { margin: .5vw 0;}#lower-comment h2,#lower-comment h3,#lower-comment h4 { color: #222222; opacity: .7; margin-bottom: 1vw;}#lower-comment h2 { font-size: 125%;}#lower-comment h3 { font-size: 115%;}#lower-comment h4 { font-size: 105%;}
#f-contact { background: transparent url() no-repeat top center / cover; position: relative;	background-color: #F9F8F4;}
#f-contact::before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; /*background-color: rgba(0,0,0,.7);*/ z-index: 1;}#f-contact >div { position: relative; z-index: 1234;}#f-contact h1 { font-size: 180%;}#footer img{ width:20vw;}a.tel-link{ color: #41AE38;}a.mail-link { color:#41AE38; background-color:#fff; border: solid 1px #41AE38;}a.mail-link:hover { opacity:.7;}
#footer { background-color: #00a035;}#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(65,174,56,.8);	border-radius: 50%; }}
@media (min-width: 1200px){ body { line-height: 1.7; } #header .main-nav, .contact-text { font-size: 1rem; } #lower-header-wrap, #footer { font-size: 1.1rem; }}
@media (max-width: 1199px){ .container { max-width: none; }}
@media (max-width: 900px){ body { font-size: 1.8vw;	line-height: 2.3vw; }}
@media (max-width: 767px){ body { font-size: 3vw; line-height: 4.5vw; } #mv,#sv { height: 60vw; } .tel-link { pointer-events: auto; text-decoration: underline; } #header, #lower-header { height: 60vw; } #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: 15vw; } #inquiry-area { position: fixed; width: 100%; bottom: 0; left: 0; font-size: 160%; color: #fff; background-color: rgba(255,255,255,.85); z-index: 123456; height: 14vw; } #inquiry-area > div { height: 100%; } #inquiry-area a, .navbar-toggle { color: #00a035; 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: #00a035; background-color: transparent; text-align: center; display: inline-block; width: 100%; padding-top: .7vw; } .navbar-toggle .icon-bar { background-color:#00a035; 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,.9); 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; } #header .main-nav li { margin: 1.5vw 0; padding: 0 2vw; } #header .nav-link::after { display: none; } #header .nav-link { color:#00a035; padding: 3vw 0; text-align: center; width: 100%; font-size: 105%; border: solid 1px #00a035; border-width: 0 0 1px; } #header li:last-child .nav-link { border-width: 0 0 1px; } .en-ttl::after { bottom: 1.9vw; } #footer { padding-bottom: 16vw; } #footer-nav a.nav-link { padding: .8rem 2.5vw; } #footer img{ width:50vw; } #Pagetop { background-color: rgba(255,255,255,.2); } #Pagetop p { color: #ffffff; }}
@media (max-width: 575px){ body { font-size: 3.7vw; line-height: 5vw; }}
.fill:hover,.fill:focus { box-shadow: inset 0 0 0 8em var(--hover); /*border:solid 1px #1e73be;*/}.fill { --color: #1e73be; --hover: rgba(30, 115, 190, 0.5);}
.pulse { --color: #ef6eae; --hover: #ef8f6e;}
.close { --color: #ff7f82; --hover: #ffdc7f;}
.raise { --color: #ffa260; --hover: #e5ff60;}
.up { --color: #e4cb58; --hover: #94e458;}
.slide { --color: #8fc866; --hover: #66c887;}
.offset { --color: #19bc8b; --hover: #1973bc;}
a.fill{ color: var(--color); -webkit-transition: 0.25s; transition: 0.25s; text-shadow: 1px 1px 3px #fff, -1px 1px 3px #fff, 1px -1px 3px #fff, -1px -1px 3px #fff;}a:hover .bnr-ttl-jp,a:hover .bnr-ttl-en{ color:#fff; text-shadow: 1px 1px 3px #1e73be, -1px 1px 3px #1e73be, 1px -1px 3px #1e73be, -1px -1px 3px #1e73be;}a.fill:hover, a.fill:focus { /*border: 2px solid #1e73be;*/ color: #fff;}a.fill { background: none; /*border: 2px solid #1e73be;*/ font: inherit; line-height: 1; margin: 0.5em; padding: 1em 2em;}
code { color: #e4cb58; font: inherit;}
/*#contentBox{ width:90%; margin:0 auto;}
.buttonBox{ position:relative; float:left; margin:3.5vw 0 0 3.5vw; width:15%;}a.button{ width:100%; height:100%; position:relative; background:rgba(255, 255, 255, .27); text-transform:uppercase; color:white; font-weight:700; letter-spacing:1px; border:none; font-size:15px; outline:none; font-family: "Lucida Sans Unicode", "Lucida Grande", sans-serif;}
#sixth{ overflow:hidden;}
#sixth>a.button{ z-index:1; transition:color .5s ease;}
#sixth .border{ z-index:1; width:30px; height:30px; transform:rotate(45deg);}
#sixth>.border:nth-of-type(1){ top:-35px; left:-30px; }
#sixth>.border:nth-of-type(2){ top:-35px; right:-30px;}
#sixth>.border:nth-of-type(3){ bottom:-35px; left:-30px;}
#sixth>.border:nth-of-type(4){ bottom:-35px; right:-30px;}
#sixth:hover .border{ transform:scale(15.7) rotate(45deg);}
#sixth:hover button{ color:#ff9292; transition:color 2s ease;
}*/
/*
#contentBox{ margin:0 auto;}
.buttonBox{ position:relative; float:left;}a.button{ width:100%; height:300px; position:relative; background:rgba(0, 0, 0, .7); text-transform:uppercase; color:white; font-weight:700; letter-spacing:1px; border:none; font-size:15px; outline:none; font-family: "Lucida Sans Unicode", "Lucida Grande", sans-serif;}#sixth{ overflow:hidden;}
#sixth>a.button{ z-index:1; transition:color .5s ease;}
#sixth .border{ z-index:0; background:000; width:30px; height:30px; transform:rotate(45deg);}
#sixth>.border:nth-of-type(1){ top:-35px; left:-30px; }
#sixth>.border:nth-of-type(2){ top:-35px; right:-30px;}
#sixth>.border:nth-of-type(3){ bottom:-35px; left:-30px;}
#sixth>.border:nth-of-type(4){ bottom:-35px; right:-30px;}
#sixth:hover .border{ transform:scale(15.7) rotate(45deg);}
#sixth:hover a.button{ color:#ff9292; transition:color 2s ease;
}*/