@charset "UTF-8";


html { font-size: 62.5%; scroll-behavior: smooth;}
a { text-decoration: none;}
body { font-family: "Noto Sans JP", sans-serif; font-weight: 500; min-height: 100vh; background: #FFF; color: #000;}

a,
a:hover { transition: ease .5s;}

img { width: 100%; height: auto;}

a img { transform: scale(1); transition: ease .5s;}
a:hover img { transform: scale(1.05); transition: ease .5s; /*opacity: 0.8;*/}





/*PC*/
@media screen and (min-width: 1920px) {

body { font-size: 22px; font-feature-settings: "palt"; letter-spacing: 0.03em;}
.wrap { width: 100%;}

.pc { display: block;}
.sp { display: none;}
.pcBr { display: inline-block;}
.spBr { display: none;}

.sp_nav { display: none;}
	
a[href^="tel:"] { pointer-events: none;}


/*--------------------------------------------------------------*/

header {}
header .hd__inner { width: 100%; height: 146px; padding: 10px 40px; display: flex; align-items: center;}
header .hd__inner h1 { width: 340px;}
header .hd__inner h1 a {}
header .hd__inner h1 a img {}

/*--------------------------------------------------------------*/

.kv { width: 100%; margin: auto;}
.kv .inner { width: 1920px; margin: auto; position: relative;}
.kv .inner .kv_img01 { width: 1560px;}
.kv .inner h2 { font-size: 46px; line-height: 1.4; writing-mode: vertical-rl; text-orientation: mixed; text-orientation: upright; color: #026636; position: absolute; top: 40px; right: 80px;}
.kv .inner h2 span:nth-of-type(1) { margin-top: 0;}
.kv .inner h2 span:nth-of-type(2) { margin-top: 2em;}
.kv .inner h2 span:nth-of-type(3) { margin-top: 5em;}
.kv .inner .kv_img02 { width: 903px; position: absolute; bottom: 0; right: 0;}
.kv .inner .kv_txt { width: 884px; padding: 33px 0 0 90px;}
.kv .mv_txt01 { width: 1920px; padding: 33px 90px; margin: auto; font-size: 22px;}
.kv .mv_txt01 a { color: #00F;}

/*--------------------------------------------------------------*/

.massage { background: #e0f1f7;}
.massage .inner { width: 1920px; margin: auto; padding: 60px 0; text-align: center;}
.massage .inner h3 { font-size: 40px; color: #2d6296; margin: 0 0 60px;}
.massage .inner h3 span { position: relative;}
.massage .inner h3 span::after { content: ""; position: absolute; left: 0; right: 0; bottom: -10px; height: 5px; background: #65c2c2;}
.massage .inner .img { width: 1378px; margin: auto; padding: 0 0 20px; display: flex; justify-content: space-between;}
.massage .inner .img picture { display: block; width: 596px;}
.massage .inner p { display: inline-block; text-align: left; line-height: 1.2;}
.massage .inner p a { color: #00F;}

/*--------------------------------------------------------------*/

.btnBox { width: 1920px; margin: auto; text-align: center; padding: 80px 0;}
.btnBox a { display: inline-block; width: 800px;}
.btnBox a img { filter: drop-shadow(10px 10px 6px rgba(0,0,0,0.7));}

/*--------------------------------------------------------------*/

.nav { width: 100%; background: #F7F4F2; padding: 40px 0; display: flex; justify-content: center; align-items: center;}
.nav h3 { width: 230px; margin-right: 80px;}
.nav ul { display: flex; justify-content: center;}
.nav ul li { display: inline-block; align-items: center; padding-right: 33px; position: relative; width: auto; border: none !important;}
.nav ul li::before { content: ''; position: absolute; width: 1px; height: 100%; background: #000; left: -18px; top:0;}
.nav ul li:nth-last-child(1)::after { content: ''; position: absolute; width: 1px; height: 100%; background: #000; right: 18px; top:0;}
.nav ul li a { color: #000; padding: 0; position: relative; display: inline-block; font-size: 26px;}
.nav ul li a::before { content: ''; position: absolute; bottom: -15px; left: 0; width: 100%; height: 1px; background: #333; opacity: 0; visibility: hidden; transition: .3s;}
.nav ul li:hover { cursor: pointer; text-decoration: none;}
.nav ul li a:hover::before { bottom: -10px; opacity: 1; visibility: visible;}

/*--------------------------------------------------------------*/

.cont01 { margin: 50px 0 0; padding: 100px 0 140px; background: url("../images/cont01_bg.png") center bottom no-repeat; background-size: cover; position: relative;}
.cont01::after { content: ""; position: absolute; bottom: 80px; left: 0; right: 0; height: 20px; background: linear-gradient(-90deg, rgba(43,148,58,1) 13%, rgba(26,125,72,1) 53%, rgba(43,128,58,1) 89%);}
.cont01 .ttl { background: url("../images/cont01_ttl_bg.png") 0 0 no-repeat; background-size: cover; position: relative; text-align: center; padding: 60px 0 40px;}
.cont01 .ttl p { display: inline-block; width: 574px; position: absolute; top: -80px; left: 0; right: 0; margin: auto;}
.cont01 .ttl h3 { width: 610px; margin: auto;}

.cont01 .inner { width: 1560px; margin: auto; padding: 0 43px;}
.cont01 .inner .box01 { margin: 100px 0 0; display: flex; justify-content: space-between; position: relative;}
.cont01 .inner .box01::before { content: ""; width: 2px; height: 100%; background: #595959; position: absolute; top: 0; bottom: 0; right: 570px;}
.cont01 .inner .box01 .img { width: 720px; margin-left: 116px;}
.cont01 .inner .box01 .txt { width: 506px; margin: 50px 0 0;}
.cont01 .inner .box01 .txt p {}
.cont01 .inner .box01 .txt p span { width: 5em; display: inline-block; text-align: justify; text-align-last: justify;}

.cont01 .inner .box02 { padding: 30px 0 20px; border-bottom: solid 2px #595959;}
.cont01 .inner .box02 ul { display: flex; justify-content: center; font-size: 30px; font-weight: 600;}
.cont01 .inner .box02 ul li { color: #026636; margin-right: 105px; position: relative;}
.cont01 .inner .box02 ul li::after { content: "/"; color: #026636; position: absolute; top: 0; right: -58px;}
.cont01 .inner .box02 ul li:nth-child(3)::after { content: none;}

.cont01 .inner .box03 { padding: 30px 0 40px; text-align: center; position: relative;}
.cont01 .inner .box03::after { content: ""; position: absolute; left: 0; bottom: 0; right: 0; width: 100%; height: 5px; display: block; background: linear-gradient(-90deg, rgba(58,102,50,1) 0%, rgba(111,176,64,1) 50%, rgba(50,54,25,1) 100%);}
.cont01 .inner .box03 p { display: inline-block; text-align: left; line-height: 1.2;}
.cont01 .inner .box03 p a { color: #00F;}

.cont01 .inner .madori { padding: 20px 0 30px; position: relative;}
.cont01 .inner .madori::after { content: ""; position: absolute; left: 0; bottom: 0; right: 0; width: 100%; height: 5px; display: block; background: linear-gradient(-90deg, rgba(58,102,50,1) 0%, rgba(111,176,64,1) 50%, rgba(50,54,25,1) 100%);}
.cont01 .inner .madori .img { width: 1290px; margin: auto; padding: 100px 0;}
.cont01 .inner .madori p { position: absolute; bottom: 100px; right: 0; line-height: 1.2;}


.cont01 .inner .gallery { padding: 70px 0 30px; position: relative;}
.cont01 .inner .gallery h3 { font-size: 56px; color: #026636; text-align: center; margin: 0 auto 50px;} 

.cont01 .inner .gallery .swiperMain { width: 1344px; margin: 0 auto 50px;}
.cont01 .inner .gallery .swiperMain .swiper-button-next { right: -30px; margin-top: -132px; background: none; width: 0; height: 0; border-style: solid; border-top: 93px solid transparent; border-bottom: 93px solid transparent; border-left: 62px solid #2ca339; border-right: 0;}
.cont01 .inner .gallery .swiperMain .swiper-button-prev { left: -30px; margin-top: -132px; background: none; width: 0; height: 0; border-style: solid; border-top: 93px solid transparent; border-bottom: 93px solid transparent; border-left: 0; border-right: 62px solid #2ca339;}


.cont01 .inner .gallery .swiperMain .swiper-slide { width: 100%; height: 561px; background: #eff3ec; display: flex; border: solid 1px #000; position: relative;}
.cont01 .inner .gallery .swiperMain .swiper-slide img { flex-basis: 800px; width: 800px;}
.cont01 .inner .gallery .swiperMain .swiper-slide .txt { flex-basis: 544px; width: 544px; padding: 64px 0 0; text-align: center; position: relative;}
.cont01 .inner .gallery .swiperMain .swiper-slide .txt .check { margin: 0 0 30px 100px; text-align: center; font-size: 30px; color: #026636; border-bottom: double  #5e8234; display: inline-block; position: relative;}
.cont01 .inner .gallery .swiperMain .swiper-slide .txt .check::before { content: ""; position: absolute; top: 0; left: -100px; width: 94px; height: 50px; background: url("../images/check.png") 0 0 no-repeat; background-size: cover;}
.cont01 .inner .gallery .swiperMain .swiper-slide .txt .point { margin: 0 0 40px 30px; text-align: center; font-size: 30px; color: #026636; display: block;}
.cont01 .inner .gallery .swiperMain .swiper-slide .txt .point span { font-size: 47px;}
.cont01 .inner .gallery .swiperMain .swiper-slide .txt h4 { margin: 0 0 40px; font-size: 40px; color: #026636; width: 100%;}
.cont01 .inner .gallery .swiperMain .swiper-slide .txt .detail { margin: 0 46px; background: #FFF; border-bottom: dotted 3px #5c7f34; border-top: dotted 3px #5c7f34; padding: 15px; color: #5c7f34; text-align: left;}

.cont01 .inner .gallery .swiperThumb { height: 80px;}
.cont01 .inner .gallery .swiperThumb .swiper-wrapper { height: 80px; display: flex; justify-content: center;}
.cont01 .inner .gallery .swiperThumb .swiper-wrapper .swiper-slide { height: 80px; width: auto !important; margin: 0 10px; cursor: pointer;}
.cont01 .inner .gallery .swiperThumb .swiper-wrapper .swiper-slide img { height: 100%; width: auto;}
.cont01 .inner .gallery .swiperThumb .swiper-wrapper .swiper-slide:hover img { transform: scale(1.05); transition: ease .5s;}

.cont01 .inner .gallery .comment { text-align: right; padding: 20px 0;}



/*--------------------------------------------------------------*/

.cont02 { margin: 50px 0 0; padding: 100px 0 140px; background: #fcf2e6; position: relative;}
.cont02::after { content: ""; position: absolute; bottom: 80px; left: 0; right: 0; height: 20px; background: linear-gradient(-90deg, rgba(209,91,29,1) 13%, rgba(186,81,31,1) 53%, rgba(209,91,29,1) 89%);}
.cont02 .ttl { background: url("../images/cont02_ttl_bg.png") 0 0 no-repeat; background-size: cover; position: relative; text-align: center; padding: 60px 0 40px;}
.cont02 .ttl p { display: inline-block; width: 823px; position: absolute; top: -80px; left: 0; right: 0; margin: auto;}
.cont02 .ttl h3 { width: 610px; margin: auto;}

.cont02 .inner { width: 1560px; margin: auto; padding: 100px 43px; background: #FFF;}
.cont02 .inner .box01 { margin: 0 0 0; display: flex; justify-content: space-between; position: relative;}
.cont02 .inner .box01::before { content: ""; width: 2px; height: 100%; background: #595959; position: absolute; top: 0; bottom: 0; right: 570px;}
.cont02 .inner .box01 .img { width: 720px; margin-left: 116px;}
.cont02 .inner .box01 .txt { width: 506px; margin: 50px 0 0;}
.cont02 .inner .box01 .txt p {}
.cont02 .inner .box01 .txt p span { width: 5em; display: inline-block; text-align: justify; text-align-last: justify;}

.cont02 .inner .box02 { padding: 30px 0 20px; border-bottom: solid 2px #595959;}
.cont02 .inner .box02 ul { display: flex; justify-content: center; font-size: 30px; font-weight: 600;}
.cont02 .inner .box02 ul li { color: #db6018; margin-right: 105px; position: relative;}
.cont02 .inner .box02 ul li::after { content: "/"; color: #db6018; position: absolute; top: 0; right: -58px;}
.cont02 .inner .box02 ul li:nth-child(3)::after { content: none;}

.cont02 .inner .box03 { padding: 30px 0 40px; text-align: center; position: relative;}
.cont02 .inner .box03::after { content: ""; position: absolute; left: 0; bottom: 0; right: 0; width: 100%; height: 5px; display: block; background: linear-gradient(-90deg, rgba(58,102,50,1) 0%, rgba(111,176,64,1) 50%, rgba(50,54,25,1) 100%);}
.cont02 .inner .box03 p { display: inline-block; text-align: left; line-height: 1.2;}
.cont02 .inner .box03 p a { color: #00F;}

.cont02 .inner .madori { padding: 20px 0 30px; position: relative;}
.cont02 .inner .madori .img { width: 1290px; margin: auto; padding: 100px 0;}
.cont02 .inner .madori p { position: absolute; bottom: 0px; right: 0; line-height: 1.2;}


.cont02 .add_txt { background: #176693; padding: 50px 0; margin: auto; width: 1592px; text-align: center;}
.cont02 .add_txt h3 { width: 1157px; margin: 0 auto 20px;}
.cont02 .add_txt h4 { font-size: 48px; color: #1a628c; background: #f4de25; padding: 10px 40px; display: inline-block; margin: 0 auto 20px;}
.cont02 .add_txt p { display: inline-block; text-align: left; line-height: 1.2; color: #FFF;}
.cont02 .add_txt p a { color: #FF0;}


/*--------------------------------------------------------------*/

.about { margin: 50px 0 0; padding: 130px 0 140px; background: url("../images/about_bg.png") center top no-repeat; background-size: cover; position: relative;}
.about .inner { width: 1600px; background: #fdfdf5; margin: auto; padding: 0 0 40px; filter: drop-shadow(10px 10px 6px rgba(0,0,0,0.7));}
.about .inner h3 { width: 100%; margin: 0 0 10px;}
.about .inner .box01 { width: 1336px; margin: auto; border-bottom: solid 2px #2c392d; padding: 50px 0;}
.about .inner .box01 h4 { font-family: "Noto Serif JP", serif; font-size: 43px; text-align: center; margin: 0 0 40px;}
.about .inner .box01 h4 span { font-size: 54px;}
.about .inner .box01 p { font-size: 25px; width: 1140px; margin: 0 auto 50px;}
.about .inner .box01 .img { width: 748px; margin: 0 auto;}

.about .inner .box02 { width: 1336px; margin: auto; border-bottom: solid 2px #2c392d; padding: 50px 0;}
.about .inner .box02 h4 { font-family: "Noto Serif JP", serif; font-size: 43px; text-align: center; margin: 0 0 40px;}
.about .inner .box02 p { font-size: 25px; width: 1140px; margin: 0 auto 20px;}
.about .inner .box02 p:last-child { width: auto; font-size: 22px; text-align: right; margin: 0;}
.about .inner .box02 .img { width: 989px; margin: 0 auto 20px;}

.about .inner .box03 { width: 1336px; margin: auto; border-bottom: solid 2px #2c392d; padding: 50px 0 40px;}
.about .inner .box03 h4 { font-family: "Noto Serif JP", serif; font-size: 43px; text-align: center; margin: 0 0 40px;}
.about .inner .box03 > p { font-size: 25px; width: 1140px; margin: 0 auto 20px;}

.about .inner .box03 .sbox { width: 1288px; margin: 0 auto; padding: 50px 0 80px; position: relative; background: #026636; border-radius: 30px; border-bottom: solid 1px #2c392d;}
.about .inner .box03 .sbox::before { content: ""; position: absolute; top: 20px; left: 20px; width: 43px; height: 38px; background: url("../images/about_box04_pin.png") 0 0 no-repeat; background-size: cover; filter: drop-shadow(10px 10px 6px rgba(0,0,0,0.7));}
.about .inner .box03 .sbox::after  { content: ""; position: absolute; top: 20px; right: 20px; width: 43px; height: 38px; background: url("../images/about_box04_pin.png") 0 0 no-repeat; background-size: cover; filter: drop-shadow(10px 10px 6px rgba(0,0,0,0.7));}
.about .inner .box03 .sbox span::before { content: ""; position: absolute; bottom: 20px; left: 20px; width: 43px; height: 38px; background: url("../images/about_box04_pin.png") 0 0 no-repeat; background-size: cover; filter: drop-shadow(10px 10px 6px rgba(0,0,0,0.7));}
.about .inner .box03 .sbox span::after  { content: ""; position: absolute; bottom: 20px; right: 20px; width: 43px; height: 38px; background: url("../images/about_box04_pin.png") 0 0 no-repeat; background-size: cover; filter: drop-shadow(10px 10px 6px rgba(0,0,0,0.7));}
.about .inner .box03 .sbox h4 { width: 694px; text-align: center; margin: 0 auto 40px;}
.about .inner .box03 .sbox ol { width: 1170px; margin: auto; display: flex; flex-direction: column;}
.about .inner .box03 .sbox ol li { width: 100%; height: 403px; margin: 0 0 40px; padding: 30px;}
.about .inner .box03 .sbox ol li:nth-of-type(1) { background: url("../images/about_box04_bg01.png") 0 0 no-repeat; background-size: cover;}
.about .inner .box03 .sbox ol li:nth-of-type(2) { background: url("../images/about_box04_bg02.png") 0 0 no-repeat; background-size: cover;}
.about .inner .box03 .sbox ol li:nth-of-type(3) { background: url("../images/about_box04_bg03.png") 0 0 no-repeat; background-size: cover; margin: 0;}
.about .inner .box03 .sbox ol li h5 { width: 550px; margin: 0 0 20px;}
.about .inner .box03 .sbox ol li h5::after {}
.about .inner .box03 .sbox ol li p { width: 525px; color: #FFF;}
.about .inner .box03 .sbox ol li .comment { font-size: 18px; margin: 20px 0 0; width: 525px; color: #FFF;}


/*--------------------------------------------------------------*/

.important { padding: 100px 0 50px;}
.important .inner { width: 1596px; margin: auto;}
.important .inner h3 { font-size: 65px; text-align: center; padding: 40px 0 60px; color: #026636;}
.important .inner .impBox { margin: 0 0 2em;}
.important .inner .impBox em { font-style: normal; color: #d90000;}

/*--------------------------------------------------------------*/

.inq { padding: 100px 0;}
.inq .inner {}
.inq .inner h3 { font-size: 65px; text-align: center; padding: 40px 0 60px; color: #026636;}
.inq .inner .box { width: 1270px; padding: 40px 0; border: solid 2px #000; border-radius: 20px; margin: auto; text-align: center;}
.inq .inner .box h4 { font-size: 43px; padding: 0 0 20px; color: #026636;}
.inq .inner .box .tel { font-size: 92px; padding: 0 0 20px;}
.inq .inner .box .txt { font-size: 28px; padding: 0 0 20px; text-align: left; display: inline-block;}
.inq .inner .box .info { display: inline-block; width: 856px; border: solid 2px #d71718; border-radius: 20px; padding: 20px 0; color: #d71718;}
.inq .inner .box .info span { display: inline-block; text-align: left;}

/*--------------------------------------------------------------*/

footer { padding: 0 0 300px;}
footer .inner { padding: 100px 0; text-align: center;}
footer .inner a { width: 514px; display: inline-block;}
footer .inner a:hover img { transform: scale(1);}
footer .inner cp { padding: 10px 0;}

/*--------------------------------------------------------------*/

.fixedFooter { padding: 10px 0; position: fixed; bottom: 0; left: 0; right: 0; z-index: 100; background: rgba(255,255,255,0.6); opacity: 0; transform: translateY(100%); transition: all 0.5s ease;}
.fixedFooter.show { opacity: 1; transform: translateY(0);}
.fixedFooter__box { width: 100%; margin: 0 auto; display: flex; justify-content: center;}
.fixedFooter .btn { width: 600px; margin: 10px 10px 10px;}

/*--------------------------------------------------------------*/

.page-top { display: none;}
.page-top a { display: inline-block; width: 70px; height: 70px; position: fixed; right: 20px; bottom: 250px; z-index: 100; transition: 0.3s ease-in-out; background: #FFF; border-radius: 50%;}
.page-top a:hover { opacity: 0.6; transition: 0.3s ease-in-out;}





}


/*PC*/
@media print, screen and (min-width: 768px) and ( max-width: 1919px) {

body { font-size: 1.042vw; font-feature-settings: "palt"; letter-spacing: 0.03em;}
.wrap { width: 100%;}

.pc { display: block;}
.sp { display: none;}
.pcBr { display: inline-block;}
.spBr { display: none;}

.sp_nav { display: none;}
	
a[href^="tel:"] { pointer-events: none;}


/*--------------------------------------------------------------*/

header {}
header .hd__inner { width: 100%; height: 7.604vw; padding: 0.521vw 2.083vw; display: flex; align-items: center;}
header .hd__inner h1 { width: 17.708vw;}
header .hd__inner h1 a {}
header .hd__inner h1 a img {}

/*--------------------------------------------------------------*/

.kv { width: 100%; margin: auto;}
.kv .inner { width: 100vw; margin: auto; position: relative;}
.kv .inner .kv_img01 { width: 81.25vw;}
.kv .inner h2 { font-size: 2.396vw; line-height: 1.4; writing-mode: vertical-rl; text-orientation: mixed; text-orientation: upright; color: #026636; position: absolute; top: 2.083vw; right: 4.167vw;}
.kv .inner h2 span:nth-of-type(1) { margin-top: 0;}
.kv .inner h2 span:nth-of-type(2) { margin-top: 2em;}
.kv .inner h2 span:nth-of-type(3) { margin-top: 5em;}
.kv .inner .kv_img02 { width: 47.031vw; position: absolute; bottom: 0; right: 0;}
.kv .inner .kv_txt { width: 46.042vw; padding: 1.719vw 0 0 4.688vw;}
.kv .mv_txt01 { width: 100vw; padding: 1.719vw 4.688vw; margin: auto; font-size: 1.146vw;}
.kv .mv_txt01 a { color: #00F;}

/*--------------------------------------------------------------*/

.massage { background: #e0f1f7;}
.massage .inner { width: 100vw; margin: auto; padding: 3.125vw 0; text-align: center;}
.massage .inner h3 { font-size: 2.083vw; color: #2d6296; margin: 0 0 3.125vw;}
.massage .inner h3 span { position: relative;}
.massage .inner h3 span::after { content: ""; position: absolute; left: 0; right: 0; bottom: -0.521vw; height: 0.26vw; background: #65c2c2;}
.massage .inner .img { width: 71.771vw; margin: auto; padding: 0 0 1.042vw; display: flex; justify-content: space-between;}
.massage .inner .img picture { display: block; width: 31.042vw;}
.massage .inner p { display: inline-block; text-align: left; line-height: 1.2;}
.massage .inner p a { color: #00F;}

/*--------------------------------------------------------------*/

.btnBox { width: 100vw; margin: auto; text-align: center; padding: 4.167vw 0;}
.btnBox a { display: inline-block; width: 41.667vw;}
.btnBox a img { filter: drop-shadow(0.521vw 0.521vw 0.313vw rgba(0,0,0,0.7));}

/*--------------------------------------------------------------*/

.nav { width: 100%; background: #F7F4F2; padding: 2.083vw 0; display: flex; justify-content: center; align-items: center;}
.nav h3 { width: 11.979vw; margin-right: 4.167vw;}
.nav ul { display: flex; justify-content: center;}
.nav ul li { display: inline-block; align-items: center; padding-right: 1.719vw; position: relative; width: auto; border: none !important;}
.nav ul li::before { content: ''; position: absolute; width: 1px; height: 100%; background: #000; left: -0.937vw; top:0;}
.nav ul li:nth-last-child(1)::after { content: ''; position: absolute; width: 1px; height: 100%; background: #000; right: 0.938vw; top:0;}
.nav ul li a { color: #000; padding: 0; position: relative; display: inline-block; font-size: 1.354vw;}
.nav ul li a::before { content: ''; position: absolute; bottom: -0.781vw; left: 0; width: 100%; height: 1px; background: #333; opacity: 0; visibility: hidden; transition: .3s;}
.nav ul li:hover { cursor: pointer; text-decoration: none;}
.nav ul li a:hover::before { bottom: -0.521vw; opacity: 1; visibility: visible;}

/*--------------------------------------------------------------*/

.cont01 { margin: 2.604vw 0 0; padding: 5.208vw 0 7.292vw; background: url("../images/cont01_bg.png") center bottom no-repeat; background-size: cover; position: relative;}
.cont01::after { content: ""; position: absolute; bottom: 4.167vw; left: 0; right: 0; height: 1.042vw; background: linear-gradient(-90deg, rgba(43,148,58,1) 13%, rgba(26,125,72,1) 53%, rgba(43,128,58,1) 89%);}
.cont01 .ttl { background: url("../images/cont01_ttl_bg.png") 0 0 no-repeat; background-size: cover; position: relative; text-align: center; padding: 3.125vw 0 2.083vw;}
.cont01 .ttl p { display: inline-block; width: 29.896vw; position: absolute; top: -4.167vw; left: 0; right: 0; margin: auto;}
.cont01 .ttl h3 { width: 31.771vw; margin: auto;}

.cont01 .inner { width: 81.25vw; margin: auto; padding: 0 2.24vw;}
.cont01 .inner .box01 { margin: 5.208vw 0 0; display: flex; justify-content: space-between; position: relative;}
.cont01 .inner .box01::before { content: ""; width: 0.104vw; height: 100%; background: #595959; position: absolute; top: 0; bottom: 0; right: 29.688vw;}
.cont01 .inner .box01 .img { width: 37.5vw; margin-left: 6.042vw;}
.cont01 .inner .box01 .txt { width: 26.354vw; margin: 2.604vw 0 0;}
.cont01 .inner .box01 .txt p {}
.cont01 .inner .box01 .txt p span { width: 5em; display: inline-block; text-align: justify; text-align-last: justify;}

.cont01 .inner .box02 { padding: 1.563vw 0 1.042vw; border-bottom: solid 2px #595959;}
.cont01 .inner .box02 ul { display: flex; justify-content: center; font-size: 1.563vw; font-weight: 600;}
.cont01 .inner .box02 ul li { color: #026636; margin-right: 5.469vw; position: relative;}
.cont01 .inner .box02 ul li::after { content: "/"; color: #026636; position: absolute; top: 0; right: -3.021vw;}
.cont01 .inner .box02 ul li:nth-child(3)::after { content: none;}

.cont01 .inner .box03 { padding: 1.563vw 0 2.083vw; text-align: center; position: relative;}
.cont01 .inner .box03::after { content: ""; position: absolute; left: 0; bottom: 0; right: 0; width: 100%; height: 0.26vw; display: block; background: linear-gradient(-90deg, rgba(58,102,50,1) 0%, rgba(111,176,64,1) 50%, rgba(50,54,25,1) 100%);}
.cont01 .inner .box03 p { display: inline-block; text-align: left; line-height: 1.2;}
.cont01 .inner .box03 p a { color: #00F;}

.cont01 .inner .madori { padding: 1.042vw 0 1.563vw; position: relative;}
.cont01 .inner .madori::after { content: ""; position: absolute; left: 0; bottom: 0; right: 0; width: 100%; height: 0.26vw; display: block; background: linear-gradient(-90deg, rgba(58,102,50,1) 0%, rgba(111,176,64,1) 50%, rgba(50,54,25,1) 100%);}
.cont01 .inner .madori .img { width: 67.188vw; margin: auto; padding: 5.208vw 0;}
.cont01 .inner .madori p { position: absolute; bottom: 5.208vw; right: 0; line-height: 1.2;}


.cont01 .inner .gallery { padding: 3.646vw 0 1.563vw; position: relative;}
.cont01 .inner .gallery h3 { font-size: 2.917vw; color: #026636; text-align: center; margin: 0 auto 2.604vw;} 

.cont01 .inner .gallery .swiperMain { width: 70vw; margin: 0 auto 2.604vw;}
.cont01 .inner .gallery .swiperMain .swiper-button-next { right: -1.562vw; margin-top: -6.875vw; background: none; width: 0; height: 0; border-style: solid; border-top: 4.844vw solid transparent; border-bottom: 4.844vw solid transparent; border-left: 3.229vw solid #2ca339; border-right: 0;}
.cont01 .inner .gallery .swiperMain .swiper-button-prev { left: -1.562vw; margin-top: -6.875vw; background: none; width: 0; height: 0; border-style: solid; border-top: 4.844vw solid transparent; border-bottom: 4.844vw solid transparent; border-left: 0; border-right: 3.229vw solid #2ca339;}


.cont01 .inner .gallery .swiperMain .swiper-slide { width: 100%; height: 29.219vw; background: #eff3ec; display: flex; border: solid 1px #000; position: relative;}
.cont01 .inner .gallery .swiperMain .swiper-slide img { flex-basis: 41.667vw; width: 41.667vw;}
.cont01 .inner .gallery .swiperMain .swiper-slide .txt { flex-basis: 28.333vw; width: 28.333vw; padding: 3.333vw 0 0; text-align: center; position: relative;}
.cont01 .inner .gallery .swiperMain .swiper-slide .txt .check { margin: 0 0 1.563vw 5.208vw; text-align: center; font-size: 1.563vw; color: #026636; border-bottom: double  #5e8234; display: inline-block; position: relative;}
.cont01 .inner .gallery .swiperMain .swiper-slide .txt .check::before { content: ""; position: absolute; top: 0; left: -5.208vw; width: 4.896vw; height: 2.604vw; background: url("../images/check.png") 0 0 no-repeat; background-size: cover;}
.cont01 .inner .gallery .swiperMain .swiper-slide .txt .point { margin: 0 0 2.083vw 1.563vw; text-align: center; font-size: 1.563vw; color: #026636; display: block;}
.cont01 .inner .gallery .swiperMain .swiper-slide .txt .point span { font-size: 2.448vw;}
.cont01 .inner .gallery .swiperMain .swiper-slide .txt h4 { margin: 0 0 2.083vw; font-size: 2.083vw; color: #026636; width: 100%;}
.cont01 .inner .gallery .swiperMain .swiper-slide .txt .detail { margin: 0 2.396vw; background: #FFF; border-bottom: dotted 3px #5c7f34; border-top: dotted 3px #5c7f34; padding: 0.781vw; color: #5c7f34; text-align: left;}

.cont01 .inner .gallery .swiperThumb { height: 4.167vw;}
.cont01 .inner .gallery .swiperThumb .swiper-wrapper { height: 4.167vw; display: flex; justify-content: center;}
.cont01 .inner .gallery .swiperThumb .swiper-wrapper .swiper-slide { height: 4.167vw; width: auto !important; margin: 0 0.521vw; cursor: pointer;}
.cont01 .inner .gallery .swiperThumb .swiper-wrapper .swiper-slide img { height: 100%; width: auto;}
.cont01 .inner .gallery .swiperThumb .swiper-wrapper .swiper-slide:hover img { transform: scale(1.05); transition: ease .5s;}

.cont01 .inner .gallery .comment { text-align: right; padding: 1.042vw 0;}


/*--------------------------------------------------------------*/

.cont02 { margin: 2.604vw 0 0; padding: 5.208vw 0 7.292vw; background: #fcf2e6; position: relative;}
.cont02::after { content: ""; position: absolute; bottom: 4.167vw; left: 0; right: 0; height: 1.042vw; background: linear-gradient(-90deg, rgba(209,91,29,1) 13%, rgba(186,81,31,1) 53%, rgba(209,91,29,1) 89%);}
.cont02 .ttl { background: url("../images/cont02_ttl_bg.png") 0 0 no-repeat; background-size: cover; position: relative; text-align: center; padding: 3.125vw 0 2.083vw;}
.cont02 .ttl p { display: inline-block; width: 42.865vw; position: absolute; top: -4.167vw; left: 0; right: 0; margin: auto;}
.cont02 .ttl h3 { width: 31.771vw; margin: auto;}

.cont02 .inner { width: 81.25vw; margin: auto; padding: 5.208vw 2.24vw; background: #FFF;}
.cont02 .inner .box01 { margin: 0 0 0; display: flex; justify-content: space-between; position: relative;}
.cont02 .inner .box01::before { content: ""; width: 0.104vw; height: 100%; background: #595959; position: absolute; top: 0; bottom: 0; right: 29.688vw;}
.cont02 .inner .box01 .img { width: 37.5vw; margin-left: 6.042vw;}
.cont02 .inner .box01 .txt { width: 26.354vw; margin: 2.604vw 0 0;}
.cont02 .inner .box01 .txt p {}
.cont02 .inner .box01 .txt p span { width: 5em; display: inline-block; text-align: justify; text-align-last: justify;}

.cont02 .inner .box02 { padding: 1.563vw 0 1.042vw; border-bottom: solid 2px #595959;}
.cont02 .inner .box02 ul { display: flex; justify-content: center; font-size: 1.563vw; font-weight: 600;}
.cont02 .inner .box02 ul li { color: #db6018; margin-right: 5.469vw; position: relative;}
.cont02 .inner .box02 ul li::after { content: "/"; color: #db6018; position: absolute; top: 0; right: -3.021vw;}
.cont02 .inner .box02 ul li:nth-child(3)::after { content: none;}

.cont02 .inner .box03 { padding: 1.563vw 0 2.083vw; text-align: center; position: relative;}
.cont02 .inner .box03::after { content: ""; position: absolute; left: 0; bottom: 0; right: 0; width: 100%; height: 0.26vw; display: block; background: linear-gradient(-90deg, rgba(58,102,50,1) 0%, rgba(111,176,64,1) 50%, rgba(50,54,25,1) 100%);}
.cont02 .inner .box03 p { display: inline-block; text-align: left; line-height: 1.2;}
.cont02 .inner .box03 p a { color: #00F;}

.cont02 .inner .madori { padding: 1.042vw 0 1.563vw; position: relative;}
.cont02 .inner .madori .img { width: 67.188vw; margin: auto; padding: 5.208vw 0;}
.cont02 .inner .madori p { position: absolute; bottom: 0vw; right: 0; line-height: 1.2;}


.cont02 .add_txt { background: #176693; padding: 2.604vw 0; margin: auto; width: 82.917vw; text-align: center;}
.cont02 .add_txt h3 { width: 60.26vw; margin: 0 auto 1.042vw;}
.cont02 .add_txt h4 { font-size: 2.5vw; color: #1a628c; background: #f4de25; padding: 0.521vw 2.083vw; display: inline-block; margin: 0 auto 1.042vw;}
.cont02 .add_txt p { display: inline-block; text-align: left; line-height: 1.2; color: #FFF;}
.cont02 .add_txt p a { color: #FF0;}

/*--------------------------------------------------------------*/

.about { margin: 2.604vw 0 0; padding: 6.771vw 0 7.292vw; background: url("../images/about_bg.png") center top no-repeat; background-size: cover; position: relative;}
.about .inner { width: 83.333vw; background: #fdfdf5; margin: auto; padding: 0 0 2.083vw; filter: drop-shadow(0.521vw 0.521vw 0.313vw rgba(0,0,0,0.7));}
.about .inner h3 { width: 100%; margin: 0 0 0.521vw;}
.about .inner .box01 { width: 69.583vw; margin: auto; border-bottom: solid 2px #2c392d; padding: 2.604vw 0;}
.about .inner .box01 h4 { font-family: "Noto Serif JP", serif; font-size: 2.24vw; text-align: center; margin: 0 0 2.083vw;}
.about .inner .box01 h4 span { font-size: 2.813vw;}
.about .inner .box01 p { font-size: 1.302vw; width: 59.375vw; margin: 0 auto 2.604vw;}
.about .inner .box01 .img { width: 38.958vw; margin: 0 auto;}

.about .inner .box02 { width: 69.583vw; margin: auto; border-bottom: solid 2px #2c392d; padding: 2.604vw 0;}
.about .inner .box02 h4 { font-family: "Noto Serif JP", serif; font-size: 2.24vw; text-align: center; margin: 0 0 2.083vw;}
.about .inner .box02 p { font-size: 1.302vw; width: 59.375vw; margin: 0 auto 1.042vw;}
.about .inner .box02 p:last-child { width: auto; font-size: 1.146vw; text-align: right; margin: 0;}
.about .inner .box02 .img { width: 51.51vw; margin: 0 auto 1.042vw;}

.about .inner .box03 { width: 69.583vw; margin: auto; border-bottom: solid 2px #2c392d; padding: 2.604vw 0 2.083vw;}
.about .inner .box03 h4 { font-family: "Noto Serif JP", serif; font-size: 2.24vw; text-align: center; margin: 0 0 2.083vw;}
.about .inner .box03 > p { font-size: 1.302vw; width: 59.375vw; margin: 0 auto 1.042vw;}

.about .inner .box03 .sbox { width: 67.083vw; margin: 0 auto; padding: 2.604vw 0 4.167vw; position: relative; background: #026636; border-radius: 1.563vw; border-bottom: solid 1px #2c392d;}
.about .inner .box03 .sbox::before { content: ""; position: absolute; top: 1.042vw; left: 1.042vw; width: 2.24vw; height: 1.979vw; background: url("../images/about_box04_pin.png") 0 0 no-repeat; background-size: cover; filter: drop-shadow(0.521vw 0.521vw 0.313vw rgba(0,0,0,0.7));}
.about .inner .box03 .sbox::after  { content: ""; position: absolute; top: 1.042vw; right: 1.042vw; width: 2.24vw; height: 1.979vw; background: url("../images/about_box04_pin.png") 0 0 no-repeat; background-size: cover; filter: drop-shadow(0.521vw 0.521vw 0.313vw rgba(0,0,0,0.7));}
.about .inner .box03 .sbox span::before { content: ""; position: absolute; bottom: 1.042vw; left: 1.042vw; width: 2.24vw; height: 1.979vw; background: url("../images/about_box04_pin.png") 0 0 no-repeat; background-size: cover; filter: drop-shadow(0.521vw 0.521vw 0.313vw rgba(0,0,0,0.7));}
.about .inner .box03 .sbox span::after  { content: ""; position: absolute; bottom: 1.042vw; right: 1.042vw; width: 2.24vw; height: 1.979vw; background: url("../images/about_box04_pin.png") 0 0 no-repeat; background-size: cover; filter: drop-shadow(0.521vw 0.521vw 0.313vw rgba(0,0,0,0.7));}
.about .inner .box03 .sbox h4 { width: 36.146vw; text-align: center; margin: 0 auto 2.083vw;}
.about .inner .box03 .sbox ol { width: 60.938vw; margin: auto; display: flex; flex-direction: column;}
.about .inner .box03 .sbox ol li { width: 100%; height: 20.99vw; margin: 0 0 2.083vw; padding: 1.563vw;}
.about .inner .box03 .sbox ol li:nth-of-type(1) { background: url("../images/about_box04_bg01.png") 0 0 no-repeat; background-size: cover;}
.about .inner .box03 .sbox ol li:nth-of-type(2) { background: url("../images/about_box04_bg02.png") 0 0 no-repeat; background-size: cover;}
.about .inner .box03 .sbox ol li:nth-of-type(3) { background: url("../images/about_box04_bg03.png") 0 0 no-repeat; background-size: cover; margin: 0;}
.about .inner .box03 .sbox ol li h5 { width: 28.646vw; margin: 0 0 1.042vw;}
.about .inner .box03 .sbox ol li h5::after {}
.about .inner .box03 .sbox ol li p { width: 27.344vw; color: #FFF;}
.about .inner .box03 .sbox ol li .comment { font-size: 0.938vw; margin: 1.042vw 0 0; width: 27.344vw; color: #FFF;}

/*--------------------------------------------------------------*/

.important { padding: 5.208vw 0 2.604vw;}
.important .inner { width: 83.125vw; margin: auto;}
.important .inner h3 { font-size: 3.385vw; text-align: center; padding: 2.083vw 0 3.125vw; color: #026636;}
.important .inner .impBox { margin: 0 0 2em;}
.important .inner .impBox em { font-style: normal; color: #d90000;}

/*--------------------------------------------------------------*/

.inq { padding: 5.208vw 0;}
.inq .inner {}
.inq .inner h3 { font-size: 3.385vw; text-align: center; padding: 2.083vw 0 3.125vw; color: #026636;}
.inq .inner .box { width: 66.146vw; padding: 2.083vw 0; border: solid 2px #000; border-radius: 1.042vw; margin: auto; text-align: center;}
.inq .inner .box h4 { font-size: 2.24vw; padding: 0 0 1.042vw; color: #026636;}
.inq .inner .box .tel { font-size: 4.792vw; padding: 0 0 1.042vw;}
.inq .inner .box .txt { font-size: 1.458vw; padding: 0 0 1.042vw; text-align: left; display: inline-block;}
.inq .inner .box .info { display: inline-block; width: 44.583vw; border: solid 2px #d71718; border-radius: 1.042vw; padding: 1.042vw 0; color: #d71718;}
.inq .inner .box .info span { display: inline-block; text-align: left;}

/*--------------------------------------------------------------*/

footer { padding: 0 0 15.625vw;}
footer .inner { padding: 5.208vw 0; text-align: center;}
footer .inner a { width: 26.771vw; display: inline-block;}
footer .inner a:hover img { transform: scale(1);}
footer .inner cp { padding: 0.521vw 0;}

/*--------------------------------------------------------------*/

.fixedFooter { padding: 0.521vw 0; position: fixed; bottom: 0; left: 0; right: 0; z-index: 100; background: rgba(255,255,255,0.6); opacity: 0; transform: translateY(100%); transition: all 0.5s ease;}
.fixedFooter.show { opacity: 1; transform: translateY(0);}
.fixedFooter__box { width: 100%; margin: 0 auto; display: flex; justify-content: center;}
.fixedFooter .btn { width: 31.25vw; margin: 0.521vw 0.521vw 0.521vw;}

/*--------------------------------------------------------------*/

.page-top { display: none;}
.page-top a { display: inline-block; width: 3.646vw; height: 3.646vw; position: fixed; right: 1.042vw; bottom: 13.021vw; z-index: 100; transition: 0.3s ease-in-out; background: #FFF; border-radius: 50%;}
.page-top a:hover { opacity: 0.6; transition: 0.3s ease-in-out;}





}



/*sp*/
@media only screen and (max-width: 767px) {

body { font-size: 3.125vw; font-feature-settings: "palt"; letter-spacing: 0.03em;}
.wrap { width: 100%;}

.pc { display: none;} 
.sp { display: block;} 
.pcBr { display: none;} 
.spBr { display: inline-block;} 

.hamburger { position: fixed; top: 1.563vw; right: 1.563vw; width: 7.813vw; height: 7.813vw; cursor: pointer; z-index: 1001;}
.hamburger a { display: block; width: 7.813vw; height: 7.813vw; position: relative; background: transparent; border: none;}
.hamburger a span { display: block; width: auto; height: 2px; background: #000; position: absolute; left: 0.781vw; right: 0.781vw; border-radius: 1.563vw; transition: all 0.3s ease;}
.hamburger a span:nth-of-type(1) { top: 1.875vw;}
.hamburger a span:nth-of-type(2) { top: 50%; transform: translateY(-50%);}
.hamburger a span:nth-of-type(3) { bottom: 1.875vw;}
.hamburger a.active span:nth-of-type(1) { top: 3.75vw; transform: rotate(45deg);} 
.hamburger a.active span:nth-of-type(2) { opacity: 0;} 
.hamburger a.active span:nth-of-type(3) { bottom: 3.594vw; transform: rotate(-45deg);} 

.sp_nav { position: fixed; top: -100vh; left: 0; bottom: 0; right: 0; height: 100vh; color: #000; background: rgba(255, 255, 255, 0); z-index: 1000; overflow-y: auto; transition: all 0.5s ease;}
.sp_nav.active { position: fixed; top: 0; left: 0; width: 100%; height: 100vh; color: #000; background: rgba(255, 255, 255, 1.0); z-index: 1000; transition: all 0.3s ease; display: flex; justify-content: center; align-items: center; flex-direction: column;}
.sp_nav .nav__box__logo { width: 50%; margin: 0 0 40px;}

.sp_nav ul { width: 100%; margin: 0 0 200px;}
.sp_nav ul li { border-top: solid 1px #FFF;}
.sp_nav ul li a { display: block; padding: 13px 20px; background: #e1f3f9; color: #176693; position: relative;}
.sp_nav ul li a::after { content: ""; position: absolute; top: 0; bottom: 0; margin: auto; right: 20px; display: block; width: 15px; height: 15px; border-bottom: solid 2px #176693; border-right: solid 2px #176693; transform: rotate(-45deg);}

/*--------------------------------------------------------------*/

header { width: 100%;}
header .hd__inner { width: 100%; height: 10.938vw; align-content: center; padding: 0 3.125vw; position: relative;}
header .hd__inner::after { content: ""; position: absolute; top: 0.781vw; right: 13.281vw; width: 44.688vw; height: 8.906vw; background: url("../images/header_img02_sp.png") 0 0 no-repeat; background-size: cover;}
header .hd__inner h1 { width: 38.125vw; height: 6.875vw;}
header .hd__inner h1 a { display: block;}
header .hd__inner h1 a img { transform: scale(1); transition: ease .5s;}

/*--------------------------------------------------------------*/

.kv {}
.kv .inner {}
.kv .inner .kv_img01 {}
.kv .inner h2 { display: none;}
.kv .inner .kv_img02 {}
.kv .inner .kv_img03 {}
.kv .mv_txt01 { width: 86.875vw; margin: 0 auto 3.125vw; line-height: 1.2;}
.kv .mv_txt01 a { color: #00F;}

/*--------------------------------------------------------------*/

.massage { background: #e0f1f7;}
.massage .inner { width: 100%; margin: auto; padding: 4.688vw 0; text-align: center;}
.massage .inner h3 { font-size: 3.75vw; color: #2d6296; margin: 0 0 6.25vw;}
.massage .inner h3 span { position: relative;}
.massage .inner h3 span::after { content: ""; position: absolute; left: 0; right: 0; bottom: -1.562vw; height: 0.781vw; background: #65c2c2;}
.massage .inner .img { width: 81.25vw; margin: auto; padding: 0 0 3.125vw; display: flex; justify-content: space-between; flex-direction: column;}
.massage .inner .img img { margin-bottom: 1.563vw;}
.massage .inner p { width: 87.5vw; margin: auto; display: inline-block; text-align: left; line-height: 1.2;}
.massage .inner p a { color: #00F;}

/*--------------------------------------------------------------*/

.btnBox { width: 100%; margin: auto; text-align: center; padding: 6.25vw 0;}
.btnBox a { display: inline-block; width: 70.344vw; }
.btnBox a img { filter: drop-shadow(1.563vw 1.563vw 0.938vw rgba(0,0,0,0.7));}

/*--------------------------------------------------------------*/

.nav { width: 100%; background: #F7F4F2; padding: 6.25vw 0; display: inherit; justify-content: center; align-items: center;}
.nav h3 { width: 45.313vw; margin: 0 auto 3.125vw;}
.nav ul { display: flex; justify-content: flex-start; flex-wrap: wrap; width: 89.844vw; margin: auto; border-right: solid 1px #000;}
.nav ul li { display: inline-block; align-content: center; text-align: center; padding: 1.563vw 0; position: relative; width: calc( 100% / 3 ); border-left: solid 1px #000;}
.nav ul li:nth-of-type(1),
.nav ul li:nth-of-type(2),
.nav ul li:nth-of-type(3) { border-bottom: solid 1px #000;}
.nav ul li:nth-last-child(1)::after { content: ''; position: absolute; width: 1px; height: 100%; background: #000; right: -1px; top:0;}
.nav ul li a { color: #000; padding: 0; position: relative; display: inline-block;}
.nav ul li:hover { cursor: pointer; text-decoration: none;}

/*--------------------------------------------------------------*/

.cont01 { margin: 7.813vw 0 0; padding: 15.625vw 0 9.375vw; background: #f0f4ed; position: relative;}
.cont01::after { content: ""; position: absolute; bottom: 6.25vw; left: 0; right: 0; height: 2.344vw; background: linear-gradient(-90deg, rgba(43,148,58,1) 13%, rgba(26,125,72,1) 53%, rgba(43,128,58,1) 89%);}
.cont01 .ttl { background: url("../images/cont01_ttl_bg.png") 0 0 no-repeat; background-size: cover; position: relative; text-align: center; padding: 6.25vw 0 4.688vw;}
.cont01 .ttl p { display: inline-block; width: 56.875vw; position: absolute; top: -6.25vw; left: 0; right: 0; margin: auto;}
.cont01 .ttl h3 { width: 63.594vw; margin: auto;}

.cont01 .inner { width: 100%; margin: auto; padding: 0 3.125vw;}
.cont01 .inner .box01 { padding: 6.25vw 0 3.125vw; border-bottom: solid 1px #000; position: relative;}
.cont01 .inner .box01 .img { width: 93.75vw; margin: auto; padding: 0 0 3.125vw; border-bottom: solid 1px #000;}
.cont01 .inner .box01 .txt { width: 84.375vw; margin: 3.125vw auto 0; display: flex; justify-content: space-between; letter-spacing: -0.03em; font-size: 3.125vw;}
.cont01 .inner .box01 .txt .txt01 { width: auto; margin: 0;}
.cont01 .inner .box01 .txt .txt02 { width: auto; margin: 0;}
.cont01 .inner .box01 .txt p { white-space: nowrap;}
.cont01 .inner .box01 .txt p span { width: auto;}

.cont01 .inner .box02 { display: none;}

.cont01 .inner .box03 { padding: 4.688vw 0 6.25vw; text-align: center; position: relative;}
.cont01 .inner .box03::after { content: ""; position: absolute; left: 0; bottom: 0; right: 0; width: 100%; height: 0.781vw; display: block; background: linear-gradient(-90deg, rgba(58,102,50,1) 0%, rgba(111,176,64,1) 50%, rgba(50,54,25,1) 100%);}
.cont01 .inner .box03 p { width: 87.5vw; margin: auto; text-align: left; line-height: 1.2;}
.cont01 .inner .box03 p a { color: #00F;}

.cont01 .inner .madori { padding: 3.125vw 0 4.688vw; position: relative;}
.cont01 .inner .madori::after { content: ""; position: absolute; left: 0; bottom: 0; right: 0; width: 100%; height: 0.781vw; display: block; background: linear-gradient(-90deg, rgba(58,102,50,1) 0%, rgba(111,176,64,1) 50%, rgba(50,54,25,1) 100%);}
.cont01 .inner .madori .img { width: 81.094vw; margin: auto; padding: 6.25vw 0;}
.cont01 .inner .madori p { width: 81.563vw; margin: auto; line-height: 1.2;}


.cont01 .inner .gallery { padding: 6.25vw 0 4.688vw; position: relative;}
.cont01 .inner .gallery h3 { font-size: 7.813vw; color: #026636; text-align: center; margin: 0 auto 7.813vw;} 

.cont01 .inner .gallery .swiperMain { width: 87.5vw; margin: 0 auto 4.688vw;}
.cont01 .inner .gallery .swiperMain .swiper-button-next { right: -2.656vw; margin-top: -13.437vw; background: none; width: 0; height: 0; border-style: solid; border-top: 6.719vw solid transparent; border-bottom: 6.719vw solid transparent; border-left: 4.688vw solid #2ca339; border-right: 0;}
.cont01 .inner .gallery .swiperMain .swiper-button-prev { left: -2.656vw; margin-top: -13.437vw; background: none; width: 0; height: 0; border-style: solid; border-top: 6.719vw solid transparent; border-bottom: 6.719vw solid transparent; border-left: 0; border-right: 4.688vw solid #2ca339;}


.cont01 .inner .gallery .swiperMain .swiper-slide { width: 100%; background: #eff3ec; display: flex; flex-direction: column; border: solid 1px #000; position: relative;}
.cont01 .inner .gallery .swiperMain .swiper-slide img {}
.cont01 .inner .gallery .swiperMain .swiper-slide .txt { width: 100%; /*height: 32.813vw;*/ padding: 1.563vw; position: relative; align-content: center;}
.cont01 .inner .gallery .swiperMain .swiper-slide .txt .check { margin: 0 0 1.563vw 12.5vw; width: 25vw; text-align: center; font-size: 3.125vw; color: #026636; border-bottom: double #5e8234; display: block; position: relative;}
.cont01 .inner .gallery .swiperMain .swiper-slide .txt .check::before { content: ""; position: absolute; top: 0; left: -10.937vw; width: 9.531vw; height: 5vw; background: url("../images/check.png") 0 0 no-repeat; background-size: cover;}
.cont01 .inner .gallery .swiperMain .swiper-slide .txt .point { margin: 0 0 3.125vw 14.063vw; text-align: center; font-size: 2.813vw; color: #026636; display: inline-block;}
.cont01 .inner .gallery .swiperMain .swiper-slide .txt .point span { font-size: 4.688vw;}
.cont01 .inner .gallery .swiperMain .swiper-slide .txt h4 { margin: 0 0 3.125vw 1.563vw; font-size: 4.688vw; color: #026636; width: auto; display: inline-block;}
.cont01 .inner .gallery .swiperMain .swiper-slide .txt .detail { width: 75vw; margin: 0 auto; background: #FFF; border-bottom: dotted 3px #5c7f34; border-top: dotted 3px #5c7f34; padding: 2.344vw; color: #5c7f34; text-align: left; font-size: 2.813vw;}

.cont01 .inner .gallery .swiperThumb { height: 4.688vw;}
.cont01 .inner .gallery .swiperThumb .swiper-wrapper { height: 4.688vw; display: flex; justify-content: center;}
.cont01 .inner .gallery .swiperThumb .swiper-wrapper .swiper-slide { height: 4.688vw; width: auto !important; margin: 0 0.781vw; cursor: pointer;}
.cont01 .inner .gallery .swiperThumb .swiper-wrapper .swiper-slide img { height: 100%; width: auto;}
.cont01 .inner .gallery .swiperThumb .swiper-wrapper .swiper-slide:hover img { transform: scale(1.05); transition: ease .5s;}

.cont01 .inner .gallery .comment { text-align: left; padding: 3.125vw 0 0;}


/*--------------------------------------------------------------*/

.cont02 { margin: 7.813vw 0 0; padding: 15.625vw 0 21.875vw; background: #fcf2e6; position: relative;}
.cont02::after { content: ""; position: absolute; bottom: 12.5vw; left: 0; right: 0; height: 2.344vw; background: linear-gradient(-90deg, rgba(209,91,29,1) 13%, rgba(186,81,31,1) 53%, rgba(209,91,29,1) 89%);}
.cont02 .ttl { background: url("../images/cont02_ttl_bg.png") 0 0 no-repeat; background-size: cover; position: relative; text-align: center; padding: 6.25vw 0 4.688vw;}
.cont02 .ttl p { display: inline-block; width: 74.375vw; position: absolute; top: -6.25vw; left: 0; right: 0; margin: auto;}
.cont02 .ttl h3 { width: 63.594vw; margin: auto;}

.cont02 .inner { width: auto; margin: 0 3.125vw; background: #FFF;}
.cont02 .inner .box01 { padding: 6.25vw 0 4.219vw; border-bottom: solid 1px #000; position: relative;}
.cont02 .inner .box01 .img { width: 93.75vw; margin: auto; padding: 0 0 3.125vw; border-bottom: solid 1px #000;}
.cont02 .inner .box01 .txt { width: 84.375vw; margin: 3.125vw auto 0; display: flex; justify-content: space-between; letter-spacing: -0.03em; font-size: 3.125vw;}
.cont02 .inner .box01 .txt .txt01 { width: auto; margin: 0;}
.cont02 .inner .box01 .txt .txt02 { width: auto; margin: 0;}
.cont02 .inner .box01 .txt p { white-space: nowrap;}
.cont02 .inner .box01 .txt p span { width: auto;}


.cont02 .inner .box02 { display: none;}

.cont02 .inner .box03 { padding: 4.688vw 0 6.25vw; text-align: center; position: relative;}
.cont02 .inner .box03::after { content: ""; position: absolute; left: 0; bottom: 0; right: 0; width: 100%; height: 0.781vw; display: block; background: linear-gradient(-90deg, rgba(209,91,29,1) 13%, rgba(186,81,31,1) 53%, rgba(209,91,29,1) 89%);}
.cont02 .inner .box03 p { width: 87.5vw; margin: auto; text-align: left; line-height: 1.2;}
.cont02 .inner .box03 p a { color: #00F;}


.cont02 .inner .madori { padding: 3.125vw 0 4.688vw; position: relative;}
.cont02 .inner .madori .img { width: 58.438vw; margin: auto; padding: 6.25vw 0;}
.cont02 .inner .madori p { width: 81.563vw; margin: auto; line-height: 1.2;}


.cont02 .add_txt { background: #176693; padding: 3.125vw 1.563vw; margin: auto 3.125vw; width: auto; text-align: center;}
.cont02 .add_txt h3 { width: 66.875vw; margin: 0 auto 3.125vw;}
.cont02 .add_txt h4 { font-size: 4.219vw; color: #1a628c; background: #f4de25; padding: 1.563vw 0; margin: 0 auto 10px;}
.cont02 .add_txt p { display: inline-block; text-align: left; line-height: 1.2; color: #FFF;}
.cont02 .add_txt p a { color: #FF0;}

/*--------------------------------------------------------------*/

.about { margin: 7.813vw 0 0; padding: 20.313vw 3.125vw 21.875vw; background: url("../images/about_bg.png") center top no-repeat; background-size: cover; position: relative;}
.about .inner { width: 100%; background: #fdfdf5; margin: auto; padding: 0 0 6.25vw; filter: drop-shadow(10px 10px 6px rgba(0,0,0,0.7));}
.about .inner h3 { width: 100%; margin: 0 0 1.563vw;}
.about .inner .box01 { width: auto; margin: auto; border-bottom: solid 2px #2c392d; padding: 7.813vw 2.344vw;}
.about .inner .box01 h4 { font-family: "Noto Serif JP", serif; font-size: 4.688vw; text-align: center; margin: 0 0 6.25vw;}
.about .inner .box01 h4 span { font-size: 5.938vw;}
.about .inner .box01 p { font-size: 3.125vw; width: auto; margin: 0 auto 7.813vw;}
.about .inner .box01 p { font-size: 3.125vw; width: auto; margin: 0 auto 7.813vw;}
.about .inner .box01 p { font-size: 3.125vw; width: auto; margin: 0 auto 7.813vw;}
.about .inner .box01 .img { width: 84.375vw; margin: 0 auto;}

.about .inner .box02 { width: auto; margin: auto; border-bottom: solid 2px #2c392d; padding: 7.813vw 2.344vw;}
.about .inner .box02 h4 { font-family: "Noto Serif JP", serif; font-size: 4.688vw; text-align: center; margin: 0 0 6.25vw;}
.about .inner .box02 p { font-size: 3.125vw; width: auto; margin: 0 auto 3.125vw;}
.about .inner .box02 p:last-child { width: auto; font-size: 3.125vw; margin: 0;}
.about .inner .box02 .img { width: 81.25vw; margin: 0 auto 3.125vw;}

.about .inner .box03 { width: auto; margin: auto; border-bottom: solid 2px #2c392d; padding: 7.813vw 2.344vw 6.25vw;}
.about .inner .box03 h4 { font-family: "Noto Serif JP", serif; font-size: 4.688vw; text-align: center; margin: 0 0 6.25vw;}
.about .inner .box03 > p { font-size: 3.125vw; width: auto; margin: 0 auto 3.125vw;}

.about .inner .box03 .sbox { width: 100%; margin: 0 auto; padding: 7.813vw 0 6.25vw; position: relative; background: #026636; border-radius: 4.688vw; border-bottom: solid 1px #2c392d;}
.about .inner .box03 .sbox::before { content: ""; position: absolute; top: 3.125vw; left: 3.125vw; width: 2.813vw; height: 2.656vw; background: url("../images/about_box04_pin.png") 0 0 no-repeat; background-size: cover; filter: drop-shadow(5px 5px 6px rgba(0,0,0,0.7));}
.about .inner .box03 .sbox::after  { content: ""; position: absolute; top: 3.125vw; right: 3.125vw; width: 2.813vw; height: 2.656vw; background: url("../images/about_box04_pin.png") 0 0 no-repeat; background-size: cover; filter: drop-shadow(5px 5px 6px rgba(0,0,0,0.7));}
.about .inner .box03 .sbox span::before { content: ""; position: absolute; bottom: 3.125vw; left: 3.125vw; width: 2.813vw; height: 2.656vw; background: url("../images/about_box04_pin.png") 0 0 no-repeat; background-size: cover; filter: drop-shadow(5px 5px 6px rgba(0,0,0,0.7));}
.about .inner .box03 .sbox span::after  { content: ""; position: absolute; bottom: 3.125vw; right: 3.125vw; width: 2.813vw; height: 2.656vw; background: url("../images/about_box04_pin.png") 0 0 no-repeat; background-size: cover; filter: drop-shadow(5px 5px 6px rgba(0,0,0,0.7));}
.about .inner .box03 .sbox h4 { width: 80.469vw; text-align: center; margin: 0 auto 6.25vw;}
.about .inner .box03 .sbox ol { width: 76.563vw; margin: auto; display: flex; flex-direction: column;}
.about .inner .box03 .sbox ol li { width: 100%; height: auto; margin: 0 0 6.25vw; padding: 2.344vw 3.125vw;}
.about .inner .box03 .sbox ol li:nth-of-type(1) { background: url("../images/about_box04_bg01.png") 0 0 no-repeat; background-size: cover;}
.about .inner .box03 .sbox ol li:nth-of-type(2) { background: url("../images/about_box04_bg02.png") 0 0 no-repeat; background-size: cover;}
.about .inner .box03 .sbox ol li:nth-of-type(3) { background: url("../images/about_box04_bg03.png") 0 0 no-repeat; background-size: cover; margin: 0;}
.about .inner .box03 .sbox ol li img { width: 100%; margin: 0 0 3.125vw;}
.about .inner .box03 .sbox ol li h5 { width: auto; margin: 0 0 3.125vw;}
.about .inner .box03 .sbox ol li h5::after {}
.about .inner .box03 .sbox ol li p { width: auto; color: #FFF;}
.about .inner .box03 .sbox ol li .comment { font-size: 2.813vw; margin: 3.125vw 0 0; width: auto; color: #FFF;}


/*--------------------------------------------------------------*/

.important { padding: 7.813vw 0 1.563vw;}
.important .inner { width: 87.5vw; margin: auto;}
.important .inner h3 { font-size: 4.688vw; text-align: center; padding: 6.25vw 0 9.375vw; color: #026636;}
.important .inner .impBox { margin: 0 0 2em;}
.important .inner .impBox em { font-style: normal; color: #d90000;}

/*--------------------------------------------------------------*/

.inq { padding: 7.813vw 0;}
.inq .inner {}
.inq .inner h3 { font-size: 4.688vw; text-align: center; padding: 6.25vw 0 9.375vw; color: #026636;}
.inq .inner .box { width: 87.5vw; padding: 4.688vw 0; border: solid 2px #000; border-radius: 3.125vw; margin: auto; text-align: center;}
.inq .inner .box h4 { font-size: 4.219vw; padding: 0 0 3.125vw; color: #026636;}
.inq .inner .box .tel { font-size: 9.063vw; padding: 0 0 3.125vw;}
.inq .inner .box .txt { font-size: 3.438vw; padding: 0 0 3.125vw; text-align: left; display: inline-block;}
.inq .inner .box .info { display: inline-block; width: 73.438vw; border: solid 2px #d71718; border-radius: 3.125vw; padding: 1.563vw 0; color: #d71718;}
.inq .inner .box .info span { display: inline-block; text-align: left; font-size: 2.813vw;}

/*--------------------------------------------------------------*/

footer { padding: 0 0 15.625vw;}
footer .inner { padding: 7.813vw 0; text-align: center;}
footer .inner a { width: 47.656vw; display: inline-block;}
footer .inner cp { padding: 1.563vw 0; font-size: 2.031vw;}

/*--------------------------------------------------------------*/

.fixedFooter { padding: 1.563vw 0; position: fixed; bottom: 0; left: 0; right: 0; z-index: 100; background: rgba(255,255,255,0.6); opacity: 0; transform: translateY(100%); transition: all 0.5s ease;}
.fixedFooter.show { opacity: 1; transform: translateY(0);}
.fixedFooter__box { width: 100%; margin: 0 auto; display: flex; justify-content: center;}
.fixedFooter .btn { width: 80%; margin: 1.563vw 0 1.563vw;}
.fixedFooter .btn:nth-child(2) { display: none;}

/*--------------------------------------------------------------*/

.page-top { display: none;}
.page-top a { display: inline-block; width: 10.938vw; height: 10.938vw; position: fixed; right: 3.125vw; bottom: 32vw; z-index: 100; transition: 0.3s ease-in-out; background: #FFF; border-radius: 50%;}
.page-top a:hover { opacity: 0.6; transition: 0.3s ease-in-out;}




}
