@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_img { width: 100%;}
.kv .txt { width: 1920px; padding: 40px 60px; margin: 0 auto 90px; font-size: 22px; background: #231815;}
.kv .txt p { width: auto; padding: 0 0 0 1.2em; margin: auto; font-size: 22px; color: #FFF; position: relative; display: inline;}
.kv .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}
.kv .txt p a { color: #f0f776;}

/*--------------------------------------------------------------*/

.massage { width: 1564px; margin: auto; background: #fff8e6; box-shadow: 6px 6px 10px 0px rgba(0, 0, 0, 0.45);}
.massage .inner { width: 100%; margin: auto; padding: 60px 0; text-align: center;}
.massage .inner h3 { font-family: "Noto Serif JP", serif; font-size: 40px; color: #895822; margin: 0 0 60px; letter-spacing: 0; font-weight: 800;}
.massage .inner h3 span { position: relative; padding: 0 20px;}
.massage .inner h3 span::after { content: ""; position: absolute; left: 0; right: 0; bottom: -10px; height: 5px; background: #f39800;}
.massage .inner .img { width: 1110px; margin: auto; padding: 0 0 20px;}
.massage .inner .img picture { display: block; margin: 20px 0;}
.massage .inner .txt { display: inline-block; text-align: center; padding-left: 1.2em; position: relative;}
.massage .inner .txt p { display: block; text-align: left; padding-left: 1.2em; position: relative;}
.massage .inner .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}
.massage .inner .txt p a { color: #0008b4;}

/*--------------------------------------------------------------*/

.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 70px; background: linear-gradient(90deg, #841b35 10%, #631535); position: relative;}
.cont01 .inner { width: 1720px; margin: 0 auto 80px; display: flex; justify-content: space-between;}
.cont01 .inner .innerL { width: 776px;}
.cont01 .inner .innerL .sub_ttl {}
.cont01 .inner .innerL .sub_ttl img { filter: drop-shadow(8px 8px 6px rgba(0, 0, 0, 0.45));}
.cont01 .inner .innerL .ttl_box { width: 100%; background: #FFF; padding: 24px 0 50px; margin-bottom: 130px; box-shadow: 8px 8px 6px 0px rgba(0, 0, 0, 0.45); position: relative; z-index: 10;}
.cont01 .inner .innerL .ttl_box .plan_ttl { width: 712px; margin: 0 auto 50px;}
.cont01 .inner .innerL .ttl_box .plan_plice { width: 652px; margin: 0 auto 50px;}
.cont01 .inner .innerL .ttl_box ul { width: 626px; margin: 0 auto 50px;}
.cont01 .inner .innerL .ttl_box ul li { width: 100%; height: 56px; text-align: center; align-content: center; background: #a980ba; color: #FFF; margin-top: 15px; font-size: 33px;}
.cont01 .inner .innerL .ttl_box ul li:nth-child(1) { margin-top: 0;}
.cont01 .inner .innerL .ttl_box .txt { width: 690px; margin: auto; border-top: solid 2px #231815; padding-top: 30px;}
.cont01 .inner .innerL .ttl_box .txt p { width: 654px; text-align: left; padding-left: 1.2em; position: relative; margin: auto;}
.cont01 .inner .innerL .ttl_box .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}
.cont01 .inner .innerL .ttl_box .txt p a { color: #0008b4;}

.cont01 .inner .innerL .detail { width: 620px; margin: auto; padding: 34px 0; border: solid 2px #FFF; text-align: center;}
.cont01 .inner .innerL .detail h4 { font-size: 40px; color: #FFF; width: 554px; margin: 0 auto 25px; border-bottom: solid 2px #FFF; padding-bottom: 5px;}
.cont01 .inner .innerL .detail .txt { font-size: 27px; color: #FFF; text-align: left; display: inline-block;}

.cont01 .inner .innerR { width: 910px; margin-right: -80px; position: relative;}
.cont01 .inner .innerR .img { }
.cont01 .inner .innerR .txt { color: #FFF; position: absolute; left: -750px; bottom: 130px;}
.cont01 .inner .innerR .txt p { font-size: 22px; padding-left: 1.2em; position: relative; letter-spacing: normal;}
.cont01 .inner .innerR .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}


.cont01 .gallery { width: 1744px; margin: 0 auto 70px; background: #FFF; padding: 55px 0 20px;}
.cont01 .gallery h3 { font-size: 76px; color: #8a0635; text-align: center; margin-bottom: 40px;}
.cont01 .gallery .swiperMain { width: 1346px; margin: 0 auto 30px; position: relative;}
.cont01 .gallery .swiperMain .swiper-slide { width: 100%; margin: auto; background: #FFF; border: solid 2px #000;}
.cont01 .gallery .swiperThumb { width: 1524px; margin: 0 auto 36px;}
.cont01 .gallery .swiperThumb .swiper-slide { width: 136px; margin: auto;}
.cont01 .gallery .swiperThumb .swiper-slide img { cursor: pointer; transition: ease .5s;}
.cont01 .gallery .swiperThumb .swiper-slide img:hover { opacity: 0.6; cursor: pointer; transition: ease .5s;}
.cont01 .gallery .txt { text-align: right; margin-right: 60px;}
.cont01 .gallery .txt p { display: inline-block; text-align: left; padding-left: 1.2em; position: relative;}
.cont01 .gallery .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}

.swiper-button-prev { width: 0; height: 0; border-style: solid; border-top: 93px solid transparent; border-bottom: 93px solid transparent; border-right: 62px solid #8a0635; border-left: 0; background: none; left: -100px; margin-top: -93px; transition: ease .5s;}
.swiper-button-next { width: 0; height: 0; border-style: solid; border-top: 93px solid transparent; border-bottom: 93px solid transparent; border-left: 62px solid #8a0635; border-right: 0; background: none; right: -100px; margin-top: -93px; transition: ease .5s;}
.swiper-button-prev:hover,
.swiper-button-next:hover { opacity: 0.6; transition: ease .5s;}

.line { background: url(../images/line.png) 0 0 repeat-x; height: 10px; position: relative;}


/*--------------------------------------------------------------*/


.cont02 { margin: 70px 0 0; padding: 100px 0 80px; background: linear-gradient(90deg, #0c3255 50%, #0c2e4c); position: relative;}
.cont02 .inner_ttl { width: 1844px; margin: auto;}
.cont02 .inner_ttl .sub_ttl {}
.cont02 .inner_ttl .sub_ttl img { filter: drop-shadow(8px 8px 6px rgba(0, 0, 0, 0.45));}
.cont02 .inner_ttl .ttl_box { background: #FFF; box-shadow: 8px 8px 6px 0px rgba(0, 0, 0, 0.45); position: relative; z-index: 10; padding: 0 0 30px; margin-bottom: 100px;}
.cont02 .inner_ttl .ttl_box .plan_ttl { width: 1770px; margin: auto; padding: 25px 0;}
.cont02 .inner_ttl .box { width: 1664px; padding: 38px; display: flex; justify-content: space-between; margin: auto; background: #f4ecd4; border: solid 3px #0e3457;}
.cont02 .inner_ttl .boxL { width: 1034px;}
.cont02 .inner_ttl .boxL h4 { font-size: 50px; line-height: 60px; color: #0e3457; letter-spacing: -0.7px; margin: 10px 0 40px;}
.cont02 .inner_ttl .boxL p { width: 940px; height: 66px; background: #f35e1a; font-size: 34px; color: #FFF; text-align: center; align-content: center;}

.cont02 .inner_ttl .boxR { width: 524px;}
.cont02 .inner_ttl .boxR .txt {}
.cont02 .inner_ttl .boxR .txt p { font-size: 22px; padding-left: 1.2em; position: relative; letter-spacing: normal;}
.cont02 .inner_ttl .boxR .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}
.cont02 .inner_ttl .boxR .txt p a { color: #0008b4;}

.cont02 .plan01 { background: rgba(66,165,207,0.4); width: 1846px; margin: 0 auto 80px; padding: 68px 20px;}
.cont02 .plan01 .inner { width: 1720px; margin: 0 auto 80px; display: flex; justify-content: space-between;}
.cont02 .plan01 .inner .innerL { width: 776px;}
.cont02 .plan01 .inner .innerL .sub_ttl {}
.cont02 .plan01 .inner .innerL .sub_ttl img { filter: drop-shadow(8px 8px 6px rgba(0, 0, 0, 0.45));}
.cont02 .plan01 .inner .innerL .ttl_box { width: 100%; background: #FFF; padding: 24px 0 50px; margin-bottom: 130px; box-shadow: 8px 8px 6px 0px rgba(0, 0, 0, 0.45); position: relative; z-index: 10;}
.cont02 .plan01 .inner .innerL .ttl_box .plan_ttl { width: 712px; margin: 0 auto 50px;}
.cont02 .plan01 .inner .innerL .ttl_box .plan_plice { width: 652px; margin: 0 auto 50px;}
.cont02 .plan01 .inner .innerL .ttl_box ul { width: 626px; margin: 0 auto 50px;}
.cont02 .plan01 .inner .innerL .ttl_box ul li { width: 100%; height: 56px; text-align: center; align-content: center; background: #b28247; color: #FFF; margin-top: 15px; font-size: 33px;}
.cont02 .plan01 .inner .innerL .ttl_box ul li:nth-child(1) { margin-top: 0;}
.cont02 .plan01 .inner .innerL .ttl_box .txt { width: 690px; margin: auto; border-top: solid 2px #231815; padding-top: 30px;}
.cont02 .plan01 .inner .innerL .ttl_box .txt p { width: 654px; text-align: left; padding-left: 1.2em; position: relative; margin: auto;}
.cont02 .plan01 .inner .innerL .ttl_box .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}
.cont02 .plan01 .inner .innerL .ttl_box .txt p a { color: #0008b4;}
.cont02 .plan01 .inner .innerL .detail { width: 620px; margin: auto; padding: 34px 0; border: solid 2px #FFF; text-align: center;}
.cont02 .plan01 .inner .innerL .detail h4 { font-size: 40px; color: #FFF; width: 554px; margin: 0 auto 25px; border-bottom: solid 2px #FFF; padding-bottom: 5px;}
.cont02 .plan01 .inner .innerL .detail .txt { font-size: 27px; color: #FFF; text-align: left; display: inline-block;}

.cont02 .plan01 .inner .innerR { width: 756px;}
.cont02 .plan01 .inner .innerR .img { width: 610px; margin: 0 140px 130px auto;}
.cont02 .plan01 .inner .innerR .txt { color: #FFF;}
.cont02 .plan01 .inner .innerR .txt p { font-size: 22px; padding-left: 1.2em; position: relative; letter-spacing: normal;}
.cont02 .plan01 .inner .innerR .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}


/*--------------------------------------------------------------*/


.cont02 .plan02 { background: rgba(127,179,36,0.6); width: 1846px; margin: 80px auto 80px; padding: 68px 20px;}
.cont02 .plan02 .inner { width: 1720px; margin: 0 auto 80px; display: flex; justify-content: space-between;}
.cont02 .plan02 .inner .innerL { width: 776px;}
.cont02 .plan02 .inner .innerL .sub_ttl {}
.cont02 .plan02 .inner .innerL .sub_ttl img { filter: drop-shadow(8px 8px 6px rgba(0, 0, 0, 0.45));}
.cont02 .plan02 .inner .innerL .ttl_box { width: 100%; background: #FFF; padding: 24px 0 50px; margin-bottom: 130px; box-shadow: 8px 8px 6px 0px rgba(0, 0, 0, 0.45); position: relative; z-index: 10;}
.cont02 .plan02 .inner .innerL .ttl_box .plan_ttl { width: 712px; margin: 0 auto 50px;}
.cont02 .plan02 .inner .innerL .ttl_box .plan_plice { width: 652px; margin: 0 auto 50px;}
.cont02 .plan02 .inner .innerL .ttl_box ul { width: 626px; margin: 0 auto 50px;}
.cont02 .plan02 .inner .innerL .ttl_box ul li { width: 100%; height: 56px; text-align: center; align-content: center; background: #b28247; color: #FFF; margin-top: 15px; font-size: 33px;}
.cont02 .plan02 .inner .innerL .ttl_box ul li:nth-child(1) { margin-top: 0;}
.cont02 .plan02 .inner .innerL .ttl_box .txt { width: 690px; margin: auto; border-top: solid 2px #231815; padding-top: 30px;}
.cont02 .plan02 .inner .innerL .ttl_box .txt p { width: 654px; text-align: left; padding-left: 1.2em; position: relative; margin: auto;}
.cont02 .plan02 .inner .innerL .ttl_box .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}
.cont02 .plan02 .inner .innerL .ttl_box .txt p a { color: #0008b4;}

.cont02 .plan02 .inner .innerL .detail { width: 620px; margin: auto; padding: 34px 0; border: solid 2px #FFF; text-align: center;}
.cont02 .plan02 .inner .innerL .detail h4 { font-size: 40px; color: #FFF; width: 554px; margin: 0 auto 25px; border-bottom: solid 2px #FFF; padding-bottom: 5px;}
.cont02 .plan02 .inner .innerL .detail .txt { font-size: 27px; color: #FFF; text-align: left; display: inline-block;}

.cont02 .plan02 .inner .innerR { width: 756px; position: relative;}
.cont02 .plan02 .inner .innerR .img { width: 610px; margin: 0 140px 0 auto;}
.cont02 .plan02 .inner .innerR .txt { color: #FFF; position: absolute; bottom: 170px; left: -860px;}
.cont02 .plan02 .inner .innerR .txt p { font-size: 22px; padding-left: 1.2em; position: relative; letter-spacing: normal;}
.cont02 .plan02 .inner .innerR .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}


/*--------------------------------------------------------------*/


.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 .txt { text-align: right; margin: 0;}
.about .inner .box02 .txt > p { display: inline-block; width: auto; font-size: 22px; text-align: right; margin: 0; padding-left: 1.2em; position: relative;}
.about .inner .box02 .txt > p::before { content: "※"; position: absolute; top: 0; left: 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; padding: 0 0 0 70px;}
.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; padding-left: 2.2em; position: relative;}
.about .inner .box03 .sbox ol li .comment::before { content: "※1"; position: absolute; top: 0; left: 0;}


/*--------------------------------------------------------------*/

.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: #2c72b1;}
.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: #2c72b1;}
.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_img { width: 100%;}
.kv .txt { width: 100vw; padding: 2.083vw 3.125vw; margin: 0 auto 90px; font-size: 1.146vw; background: #231815;}
.kv .txt p { width: auto; padding: 0 0 0 1.2em; margin: auto; font-size: 1.146vw; color: #FFF; position: relative; display: inline;}
.kv .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}
.kv .txt p a { color: #f0f776;}

/*--------------------------------------------------------------*/

.massage { width: 81.458vw; margin: auto; background: #fff8e6; box-shadow: 6px 6px 10px 0px rgba(0, 0, 0, 0.45);}
.massage .inner { width: 100%; margin: auto; padding: 3.125vw 0; text-align: center;}
.massage .inner h3 { font-family: "Noto Serif JP", serif; font-size: 2.083vw; color: #895822; margin: 0 0 3.125vw; letter-spacing: 0; font-weight: 800;}
.massage .inner h3 span { position: relative; padding: 0 1.042vw;}
.massage .inner h3 span::after { content: ""; position: absolute; left: 0; right: 0; bottom: -0.521vw; height: 0.26vw; background: #f39800;}
.massage .inner .img { width: 57.813vw; margin: auto; padding: 0 0 1.042vw;}
.massage .inner .img picture { display: block; margin: 1.042vw 0;}
.massage .inner .txt { display: inline-block; text-align: center; padding-left: 1.2em; position: relative;}
.massage .inner .txt p { display: block; text-align: left; padding-left: 1.2em; position: relative;}
.massage .inner .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}
.massage .inner .txt p a { color: #0008b4;}

/*--------------------------------------------------------------*/

.btnBox { width: 100%; 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 3.646vw; background: linear-gradient(90deg, #841b35 10%, #631535); position: relative;}
.cont01 .inner { width: 89.583vw; margin: 0 auto 4.167vw; display: flex; justify-content: space-between;}
.cont01 .inner .innerL { width: 40.417vw;}
.cont01 .inner .innerL .sub_ttl {}
.cont01 .inner .innerL .sub_ttl img { filter: drop-shadow(8px 8px 6px rgba(0, 0, 0, 0.45));}
.cont01 .inner .innerL .ttl_box { width: 100%; background: #FFF; padding: 1.25vw 0 2.604vw; margin-bottom: 6.771vw; box-shadow: 8px 8px 6px 0px rgba(0, 0, 0, 0.45); position: relative; z-index: 10;}
.cont01 .inner .innerL .ttl_box .plan_ttl { width: 37.083vw; margin: 0 auto 2.604vw;}
.cont01 .inner .innerL .ttl_box .plan_plice { width: 33.958vw; margin: 0 auto 2.604vw;}
.cont01 .inner .innerL .ttl_box ul { width: 32.604vw; margin: 0 auto 2.604vw;}
.cont01 .inner .innerL .ttl_box ul li { width: 100%; height: 2.917vw; text-align: center; align-content: center; background: #a980ba; color: #FFF; margin-top: 0.781vw; font-size: 1.719vw;}
.cont01 .inner .innerL .ttl_box ul li:nth-child(1) { margin-top: 0;}
.cont01 .inner .innerL .ttl_box .txt { width: 35.938vw; margin: auto; border-top: solid 2px #231815; padding-top: 1.563vw;}
.cont01 .inner .innerL .ttl_box .txt p { width: 34.063vw; text-align: left; padding-left: 1.2em; position: relative; margin: auto;}
.cont01 .inner .innerL .ttl_box .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}
.cont01 .inner .innerL .ttl_box .txt p a { color: #0008b4;}

.cont01 .inner .innerL .detail { width: 32.292vw; margin: auto; padding: 1.771vw 0; border: solid 2px #FFF; text-align: center;}
.cont01 .inner .innerL .detail h4 { font-size: 2.083vw; color: #FFF; width: 28.854vw; margin: 0 auto 25px; border-bottom: solid 2px #FFF; padding-bottom: 0.26vw;}
.cont01 .inner .innerL .detail .txt { font-size: 1.406vw; color: #FFF; text-align: left; display: inline-block;}

.cont01 .inner .innerR { width: 47.396vw; margin-right: -4.167vw; position: relative;}
.cont01 .inner .innerR .img { }
.cont01 .inner .innerR .txt { color: #FFF; position: absolute; left: -39.062vw; bottom: 6.771vw;}
.cont01 .inner .innerR .txt p { font-size: 1.042vw; padding-left: 1.2em; position: relative; letter-spacing: normal;}
.cont01 .inner .innerR .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}

.cont01 .gallery { width: 90.833vw; margin: 0 auto 3.646vw; background: #FFF; padding: 2.865vw 0 1.042vw;}
.cont01 .gallery h3 { font-size: 3.958vw; color: #8a0635; text-align: center; margin-bottom: 2.083vw;}
.cont01 .gallery .swiperMain { width: 70.104vw; margin: 0 auto 1.563vw; position: relative;}
.cont01 .gallery .swiperMain .swiper-slide { width: 100%; margin: auto; background: #FFF; border: solid 2px #000;}
.cont01 .gallery .swiperThumb { width: 79.375vw; margin: 0 auto 1.875vw;}
.cont01 .gallery .swiperThumb .swiper-slide { width: 7.083vw; margin: auto;}
.cont01 .gallery .swiperThumb .swiper-slide img { cursor: pointer; transition: ease .5s;}
.cont01 .gallery .swiperThumb .swiper-slide img:hover { opacity: 0.6; cursor: pointer; transition: ease .5s;}
.cont01 .gallery .txt { text-align: right; margin-right: 3.125vw;}
.cont01 .gallery .txt p { display: inline-block; text-align: left; padding-left: 1.2em; position: relative;}
.cont01 .gallery .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}

.swiper-button-prev { width: 0; height: 0; border-style: solid; border-top: 4.844vw solid transparent; border-bottom: 4.844vw solid transparent; border-right: 3.229vw solid #8a0635; border-left: 0; background: none; left: -5.208vw; margin-top: -4.844vw; transition: ease .5s;}
.swiper-button-next { width: 0; height: 0; border-style: solid; border-top: 4.844vw solid transparent; border-bottom: 4.844vw solid transparent; border-left: 3.229vw solid #8a0635; border-right: 0; background: none; right: -5.208vw; margin-top: -4.844vw; transition: ease .5s;}
.swiper-button-prev:hover,
.swiper-button-next:hover { opacity: 0.6; transition: ease .5s;}

.line { background: url(../images/line.png) 0 0 repeat-x; height: 0.521vw; position: relative;}


/*--------------------------------------------------------------*/


.cont02 { margin: 3.646vw 0 0; padding: 5.208vw 0 4.167vw; background: linear-gradient(90deg, #0c3255 50%, #0c2e4c); position: relative;}
.cont02 .inner_ttl { width: 96.042vw; margin: auto;}
.cont02 .inner_ttl .sub_ttl {}
.cont02 .inner_ttl .sub_ttl img { filter: drop-shadow(8px 8px 6px rgba(0, 0, 0, 0.45));}
.cont02 .inner_ttl .ttl_box { background: #FFF; box-shadow: 8px 8px 6px 0px rgba(0, 0, 0, 0.45); position: relative; z-index: 10; padding: 0 0 1.563vw; margin-bottom: 5.208vw;}
.cont02 .inner_ttl .ttl_box .plan_ttl { width: 92.188vw; margin: auto; padding: 1.302vw 0;}
.cont02 .inner_ttl .box { width: 86.667vw; padding: 1.979vw; display: flex; justify-content: space-between; margin: auto; background: #f4ecd4; border: solid 3px #0e3457;}
.cont02 .inner_ttl .boxL { width: 53.854vw;}
.cont02 .inner_ttl .boxL h4 { font-size: 2.604vw; line-height: 3.125vw; color: #0e3457; letter-spacing: -0.036vw; margin: 0.521vw 0 2.083vw;}
.cont02 .inner_ttl .boxL p { width: 48.958vw; height: 3.438vw; background: #f35e1a; font-size: 1.771vw; color: #FFF; text-align: center; align-content: center;}

.cont02 .inner_ttl .boxR { width: 27.292vw;}
.cont02 .inner_ttl .boxR .txt {}
.cont02 .inner_ttl .boxR .txt p { font-size: 1.042vw; padding-left: 1.2em; position: relative; letter-spacing: normal;}
.cont02 .inner_ttl .boxR .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}
.cont02 .inner_ttl .boxR .txt p a { color: #0008b4;}

.cont02 .plan01 { background: #27688d; width: 96.146vw; margin: 0 auto 4.167vw; padding: 3.542vw 1.042vw;}
.cont02 .plan01 .inner { width: 89.583vw; margin: 0 auto 4.167vw; display: flex; justify-content: space-between;}
.cont02 .plan01 .inner .innerL { width: 40.417vw;}
.cont02 .plan01 .inner .innerL .sub_ttl {}
.cont02 .plan01 .inner .innerL .sub_ttl img { filter: drop-shadow(8px 8px 6px rgba(0, 0, 0, 0.45));}
.cont02 .plan01 .inner .innerL .ttl_box { width: 100%; background: #FFF; padding: 1.25vw 0 2.604vw; margin-bottom: 6.771vw; box-shadow: 8px 8px 6px 0px rgba(0, 0, 0, 0.45); position: relative; z-index: 10;}
.cont02 .plan01 .inner .innerL .ttl_box .plan_ttl { width: 37.083vw; margin: 0 auto 2.604vw;}
.cont02 .plan01 .inner .innerL .ttl_box .plan_plice { width: 33.958vw; margin: 0 auto 2.604vw;}
.cont02 .plan01 .inner .innerL .ttl_box ul { width: 32.604vw; margin: 0 auto 2.604vw;}
.cont02 .plan01 .inner .innerL .ttl_box ul li { width: 100%; height: 2.917vw; text-align: center; align-content: center; background: #b28247; color: #FFF; margin-top: 0.781vw; font-size: 1.719vw;}
.cont02 .plan01 .inner .innerL .ttl_box ul li:nth-child(1) { margin-top: 0;}
.cont02 .plan01 .inner .innerL .ttl_box .txt { width: 35.938vw; margin: auto; border-top: solid 2px #231815; padding-top: 1.563vw;}
.cont02 .plan01 .inner .innerL .ttl_box .txt p { width: 34.063vw; text-align: left; padding-left: 1.2em; position: relative; margin: auto;}
.cont02 .plan01 .inner .innerL .ttl_box .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}
.cont02 .plan01 .inner .innerL .ttl_box .txt p a { color: #0008b4;}

.cont02 .plan01 .inner .innerL .detail { width: 32.292vw; margin: auto; padding: 1.771vw 0; border: solid 2px #FFF; text-align: center;}
.cont02 .plan01 .inner .innerL .detail h4 { font-size: 2.083vw; color: #FFF; width: 28.854vw; margin: 0 auto 1.302vw; border-bottom: solid 2px #FFF; padding-bottom: 0.26vw;}
.cont02 .plan01 .inner .innerL .detail .txt { font-size: 1.406vw; color: #FFF; text-align: left; display: inline-block;}

.cont02 .plan01 .inner .innerR { width: 39.375vw;}
.cont02 .plan01 .inner .innerR .img { width: 31.771vw; margin: 0 7.292vw 6.771vw auto;}
.cont02 .plan01 .inner .innerR .txt { color: #FFF;}
.cont02 .plan01 .inner .innerR .txt p { font-size: 1.042vw; padding-left: 1.2em; position: relative; letter-spacing: normal;}
.cont02 .plan01 .inner .innerR .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}


/*--------------------------------------------------------------*/


.cont02 .plan02 { background: #568964; width: 96.146vw; margin: 4.167vw auto 4.167vw; padding: 3.542vw 1.042vw;}
.cont02 .plan02 .inner { width: 89.583vw; margin: 0 auto 4.167vw; display: flex; justify-content: space-between;}
.cont02 .plan02 .inner .innerL { width: 40.417vw;}
.cont02 .plan02 .inner .innerL .sub_ttl {}
.cont02 .plan02 .inner .innerL .sub_ttl img { filter: drop-shadow(8px 8px 6px rgba(0, 0, 0, 0.45));}
.cont02 .plan02 .inner .innerL .ttl_box { width: 100%; background: #FFF; padding: 1.25vw 0 2.604vw; margin-bottom: 6.771vw; box-shadow: 8px 8px 6px 0px rgba(0, 0, 0, 0.45); position: relative; z-index: 10;}
.cont02 .plan02 .inner .innerL .ttl_box .plan_ttl { width: 37.083vw; margin: 0 auto 2.604vw;}
.cont02 .plan02 .inner .innerL .ttl_box .plan_plice { width: 33.958vw; margin: 0 auto 2.604vw;}
.cont02 .plan02 .inner .innerL .ttl_box ul { width: 32.604vw; margin: 0 auto 2.604vw;}
.cont02 .plan02 .inner .innerL .ttl_box ul li { width: 100%; height: 2.917vw; text-align: center; align-content: center; background: #b28247; color: #FFF; margin-top: 0.781vw; font-size: 1.719vw;}
.cont02 .plan02 .inner .innerL .ttl_box ul li:nth-child(1) { margin-top: 0;}
.cont02 .plan02 .inner .innerL .ttl_box .txt { width: 35.938vw; margin: auto; border-top: solid 2px #231815; padding-top: 1.563vw;}
.cont02 .plan02 .inner .innerL .ttl_box .txt p { width: 34.063vw; text-align: left; padding-left: 1.2em; position: relative; margin: auto;}
.cont02 .plan02 .inner .innerL .ttl_box .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}
.cont02 .plan02 .inner .innerL .ttl_box .txt p a { color: #0008b4;}

.cont02 .plan02 .inner .innerL .detail { width: 32.292vw; margin: auto; padding: 1.771vw 0; border: solid 2px #FFF; text-align: center;}
.cont02 .plan02 .inner .innerL .detail h4 { font-size: 2.083vw; color: #FFF; width: 28.854vw; margin: 0 auto 1.302vw; border-bottom: solid 2px #FFF; padding-bottom: 0.26vw;}
.cont02 .plan02 .inner .innerL .detail .txt { font-size: 1.406vw; color: #FFF; text-align: left; display: inline-block;}

.cont02 .plan02 .inner .innerR { width: 39.375vw; position: relative;}
.cont02 .plan02 .inner .innerR .img { width: 31.771vw; margin: 0 140px 0 auto;}
.cont02 .plan02 .inner .innerR .txt { color: #FFF; position: absolute; bottom: 8.854vw; left: -44.792vw;}
.cont02 .plan02 .inner .innerR .txt p { font-size: 1.042vw; padding-left: 1.2em; position: relative; letter-spacing: normal;}
.cont02 .plan02 .inner .innerR .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}


/*--------------------------------------------------------------*/

.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 .txt { text-align: right; margin: 0;}
.about .inner .box02 .txt > p { display: inline-block; width: auto; font-size: 1.146vw; text-align: right; margin: 0; padding-left: 1.2em; position: relative;}
.about .inner .box02 .txt > p::before { content: "※"; position: absolute; top: 0; left: 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 40px; padding: 0 0 0 3.646vw;}
.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; padding-left: 2.2em; position: relative;}
.about .inner .box03 .sbox ol li .comment::before { content: "※1"; position: absolute; top: 0; left: 0;}

/*--------------------------------------------------------------*/

.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: #2c72b1;}
.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: #2c72b1;}
.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: 2.813vw; 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 6.25vw;}

.sp_nav ul { width: 100%; margin: 0 0 31.25vw;}
.sp_nav ul li { border-top: solid 1px #FFF;}
.sp_nav ul li a { display: block; padding: 2.031vw 3.125vw; background: #e1f3f9; color: #176693; position: relative;}
.sp_nav ul li a::after { content: ""; position: absolute; top: 0; bottom: 0; margin: auto; right: 3.125vw; display: block; width: 2.344vw; height: 2.344vw; border-bottom: solid 2px #176693; border-right: solid 2px #176693; transform: rotate(-45deg);}

/*--------------------------------------------------------------*/

header {}
header .hd__inner { width: 100%; height: 12.5vw; padding: 1.563vw 6.25vw; display: flex; align-items: center;}
header .hd__inner h1 { width: 39.063vw;}
header .hd__inner h1 a {}
header .hd__inner h1 a img {}

/*--------------------------------------------------------------*/

.kv { width: 100%; margin: auto;}
.kv .inner { width: 100%; margin: auto; position: relative;}
.kv .inner .kv_img { width: 100%;}
.kv .txt { width: 100%; padding: 4.688vw 7.187vw; margin: 0 auto 14.063vw; background: #231815;}
.kv .txt p { width: auto; padding: 0 0 0 1.2em; margin: auto; font-size: 2.813vw; color: #FFF; position: relative; display: inline-block;}
.kv .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}
.kv .txt br { margin-bottom: 4.688vw;}
.kv .txt p a { color: #f0f776;}

/*--------------------------------------------------------------*/

.massage { width: 100%; margin: auto; background: #fff8e6; box-shadow: 0.938vw 0.938vw 1.563vw 0px rgba(0, 0, 0, 0.45);}
.massage .inner { width: 87.813vw; margin: auto; padding: 9.375vw 0; text-align: center;}
.massage .inner h3 { font-family: "Noto Serif JP", serif; font-size: 3.594vw; color: #895822; margin: 0 0 9.375vw; letter-spacing: -0.219vw; font-weight: 800;}
.massage .inner h3 span { position: relative; padding: 0 0.781vw;}
.massage .inner h3 span::after { content: ""; position: absolute; left: 0; right: 0; bottom: -1.562vw; height: 0.469vw; background: #f39800;}
.massage .inner .img { width: 100%; margin: auto; padding: 0 0 3.125vw;}
.massage .inner .img picture { display: block; margin: 3.125vw 0;}
.massage .inner .txt { display: inline-block; text-align: center; padding-left: 1.2em; position: relative;}
.massage .inner .txt p { display: block; text-align: left; line-height: 1.4; padding-left: 1.2em; position: relative;}
.massage .inner .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}
.massage .inner .txt p a { color: #0008b4;}


/*--------------------------------------------------------------*/

.btnBox { width: 100%; margin: auto; text-align: center; padding: 12.5vw 0;}
.btnBox a { display: inline-block; width: 87.188vw; position: relative;}
.btnBox a::after { content: ""; background: url(../images/hand.png) no-repeat; background-size: cover; width: 10.313vw; height: 12.031vw; position: absolute; bottom: -3.125vw; right: -1.562vw;}
.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: 0.156vw; height: 100%; background: #000; right: -0.156vw; 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 10.938vw; background: linear-gradient(90deg, #841b35 10%, #631535); position: relative;}
.cont01 .inner { width: 89.688vw; margin: 0 auto 12.5vw; display: flex; justify-content: space-between; flex-direction: column;}
.cont01 .inner .innerL { width: 100%; margin-bottom: 9.375vw;}
.cont01 .inner .innerL .sub_ttl {}
.cont01 .inner .innerL .sub_ttl img { filter: drop-shadow(1.25vw 1.25vw 0.938vw rgba(0, 0, 0, 0.45));}
.cont01 .inner .innerL .ttl_box { width: 100%; background: #FFF; padding: 3.75vw 0 7.813vw; margin-bottom: 7.813vw; box-shadow: 1.25vw 1.25vw 0.938vw 0px rgba(0, 0, 0, 0.45); position: relative; z-index: 10;}
.cont01 .inner .innerL .ttl_box .plan_ttl { width: 73.125vw; margin: 0 auto 7.813vw;}
.cont01 .inner .innerL .ttl_box .plan_plice { width: 68.75vw; margin: 0 auto 3.125vw;}
.cont01 .inner .innerL .ttl_box ul { width: 83.438vw; margin: 0 auto 3.125vw; display: flex; justify-content: space-between;}
.cont01 .inner .innerL .ttl_box ul li { width: 26.563vw; height: 10.313vw; text-align: center; align-content: center; background: #a980ba; color: #FFF; font-size: 3.125vw; line-height: 1.1;}
.cont01 .inner .innerL .ttl_box .txt { width: 84.375vw; margin: auto; border-top: solid 2px #231815; padding-top: 3.125vw;}
.cont01 .inner .innerL .ttl_box .txt p { width: 81.25vw; text-align: left; padding-left: 1.2em; position: relative; margin: auto;}
.cont01 .inner .innerL .ttl_box .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}
.cont01 .inner .innerL .ttl_box .txt p a { color: #0008b4;}

.cont01 .inner .innerL .detail { width: 86.563vw; margin: auto; padding: 3.125vw 0; border: solid 2px #FFF; text-align: center;}
.cont01 .inner .innerL .detail h4 { font-size: 4.063vw; color: #FFF; width: 80vw; margin: 0 auto 3.906vw; border-bottom: solid 2px #FFF; padding-bottom: 0.781vw; letter-spacing: 0.469vw;}
.cont01 .inner .innerL .detail .txt { font-size: 3.125vw; color: #FFF; text-align: center; display: inline-block;}
.cont01 .inner .innerL .detail .txt p { margin: 0 1.563vw; text-align: left; display: block;}

.cont01 .inner .innerR { width: 86.875vw; margin-right: -12.5vw; position: relative;}
.cont01 .inner .innerR .img { margin-bottom: 17.188vw;}
.cont01 .inner .innerR .txt { color: #FFF; position: absolute; bottom: 4.688vw; left: 18.75vw;}
.cont01 .inner .innerR .txt p { font-size: 2.813vw; padding-left: 1.2em; position: relative; letter-spacing: normal;}
.cont01 .inner .innerR .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}

.cont01 .gallery { width: 91.875vw; margin: 0 auto 10.938vw; background: #FFF; padding: 8.594vw 0 3.125vw;}
.cont01 .gallery h3 { font-size: 7.813vw; color: #8a0635; text-align: center; margin-bottom: 6.25vw;}
.cont01 .gallery .swiperMain { width: 77.188vw; margin: 0 auto 4.688vw; position: relative;}
.cont01 .gallery .swiperMain .swiper-slide { width: 100%; margin: auto; background: #FFF; border: solid 2px #000;}
.cont01 .gallery .swiperThumb { width: 77.188vw; margin: 0 auto 3.75vw;}
.cont01 .gallery .swiperThumb .swiper-slide { width: 7.813vw; margin: auto;}
.cont01 .gallery .swiperThumb .swiper-slide img { cursor: pointer; transition: ease .5s;}
.cont01 .gallery .swiperThumb .swiper-slide img:hover { opacity: 0.6; cursor: pointer; transition: ease .5s;}
.cont01 .gallery .txt { text-align: left; margin: 0 auto 4.688vw; width: 80.938vw;}
.cont01 .gallery .txt p { display: inline-block; text-align: left; padding-left: 1.2em; position: relative;}
.cont01 .gallery .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}


.swiper-button-prev { width: 0; height: 0; border-style: solid; border-top: 6.719vw solid transparent; border-bottom: 6.719vw solid transparent; border-right: 4.063vw solid #8a0635; border-left: 0; background: none; left: -5.625vw; margin-top: -6.719vw; transition: ease .5s;}
.swiper-button-next { width: 0; height: 0; border-style: solid; border-top: 6.719vw solid transparent; border-bottom: 6.719vw solid transparent; border-left: 4.063vw solid #8a0635; border-right: 0; background: none; right: -5.625vw; margin-top: -6.719vw; transition: ease .5s;}
.swiper-button-prev:hover,
.swiper-button-next:hover { opacity: 0.6; transition: ease .5s;}

.line { background: url(../images/line.png) 0 0 repeat-x; background-size: cover; height: 0.625vw; position: relative;}


/*--------------------------------------------------------------*/


.cont02 { margin: 10.938vw 0 0; padding: 15.625vw 0 6.25vw; background: linear-gradient(90deg, #0c3255 50%, #0c2e4c); position: relative;}
.cont02 .inner_ttl { width: 89.688vw; margin: auto;}
.cont02 .inner_ttl .sub_ttl {}
.cont02 .inner_ttl .sub_ttl img { filter: drop-shadow(1.25vw 1.25vw 0.938vw rgba(0, 0, 0, 0.45));}
.cont02 .inner_ttl .ttl_box { background: #FFF; box-shadow: 1.25vw 1.25vw 0.938vw 0px rgba(0, 0, 0, 0.45); position: relative; z-index: 10; padding: 0 0 4.688vw; margin-bottom: 9.375vw;}
.cont02 .inner_ttl .ttl_box .plan_ttl { width: 72.969vw; margin: auto; padding: 3.906vw 0;}
.cont02 .inner_ttl .box { width: 83.75vw; padding: 5.938vw 0; display: flex; justify-content: space-between; margin: auto; background: #f4ecd4; border: solid 3px #0e3457; flex-direction: column;}
.cont02 .inner_ttl .boxL { width: 100%; text-align: center;}
.cont02 .inner_ttl .boxL h4 { font-size: 5.313vw; line-height: 1.2; color: #0e3457; letter-spacing: -0.109vw; margin: 1.563vw 0 3.125vw;}
.cont02 .inner_ttl .boxL h4 span { font-size: 4.063vw;}
.cont02 .inner_ttl .boxL p { width: 120%; height: 9.375vw; background: #f35e1a; font-size: 4.375vw; color: #FFF; text-align: center; align-content: center; transform: scaleX(80%); transform-origin: 50% 50%; margin-left: -10%;}

.cont02 .inner_ttl .boxR { width: 77.188vw; margin: 1.563vw auto 0;}
.cont02 .inner_ttl .boxR .txt {}
.cont02 .inner_ttl .boxR .txt p { padding-left: 1.2em; position: relative; letter-spacing: normal;}
.cont02 .inner_ttl .boxR .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}
.cont02 .inner_ttl .boxR .txt p a { color: #0008b4;}

.cont02 .plan01 { background: rgba(66,165,207,0.4); width: 89.688vw; margin: 0 auto 6.25vw; padding: 10.625vw 0 7.813vw;}
.cont02 .plan01 .inner { width: 89.688vw; margin: 0 auto 0; display: flex; justify-content: space-between; flex-direction: column;}
.cont02 .plan01 .inner .innerL { width: 100%; margin-bottom: 9.375vw;}
.cont02 .plan01 .inner .innerL .sub_ttl {}
.cont02 .plan01 .inner .innerL .sub_ttl img { filter: drop-shadow(1.25vw 1.25vw 0.938vw rgba(0, 0, 0, 0.45));}
.cont02 .plan01 .inner .innerL .ttl_box { width: 100%; background: #FFF; padding: 3.75vw 0 7.813vw; margin-bottom: 7.813vw; box-shadow: 1.25vw 1.25vw 0.938vw 0px rgba(0, 0, 0, 0.45); position: relative; z-index: 10;}
.cont02 .plan01 .inner .innerL .ttl_box .plan_ttl { width: 73.125vw; margin: 0 auto 7.813vw;}
.cont02 .plan01 .inner .innerL .ttl_box .plan_plice { width: 69.688vw; margin: 0 auto 3.125vw;}
.cont02 .plan01 .inner .innerL .ttl_box ul { width: 83.438vw; margin: 0 auto 3.125vw; display: flex; justify-content: space-between;}
.cont02 .plan01 .inner .innerL .ttl_box ul li { width: 26.563vw; height: 10.313vw; text-align: center; align-content: center; background: #b28247; color: #FFF; font-size: 3.125vw; line-height: 1.1;}
.cont02 .plan01 .inner .innerL .ttl_box .txt { width: 84.375vw; margin: auto; border-top: solid 2px #231815; padding-top: 3.125vw;}
.cont02 .plan01 .inner .innerL .ttl_box .txt p { width: 81.25vw; text-align: left; padding-left: 1.2em; position: relative; margin: auto;}
.cont02 .plan01 .inner .innerL .ttl_box .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}
.cont02 .plan01 .inner .innerL .ttl_box .txt p a { color: #0008b4;}

.cont02 .plan01 .inner .innerL .detail { width: 86.563vw; margin: auto; padding: 3.125vw 0; border: solid 2px #FFF; text-align: center;}
.cont02 .plan01 .inner .innerL .detail h4 { font-size: 4.063vw; color: #FFF; width: 80vw; margin: 0 auto 3.906vw; border-bottom: solid 2px #FFF; padding-bottom: 0.781vw; letter-spacing: 0.469vw;}
.cont02 .plan01 .inner .innerL .detail .txt { font-size: 3.125vw; color: #FFF; text-align: center; display: inline-block;}
.cont02 .plan01 .inner .innerL .detail .txt p { margin: 0 1.563vw; text-align: left; display: block;}

.cont02 .plan01 .inner .innerR { width: 61.25vw; margin: auto; position: relative;}
.cont02 .plan01 .inner .innerR .img { width: 100%; margin: 0 auto 170px; position: relative;}
.cont02 .plan01 .inner .innerR .txt { color: #FFF; width: 67.188vw; position: absolute; bottom: 3.125vw; left: 1.563vw;}
.cont02 .plan01 .inner .innerR .txt p { font-size: 2.813vw; padding-left: 1.2em; position: relative; letter-spacing: normal;}
.cont02 .plan01 .inner .innerR .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}


/*--------------------------------------------------------------*/


.cont02 .plan02 { background: rgba(127,179,36,0.6); width: 89.688vw; margin: 6.25vw auto 6.25vw; padding: 10.625vw 0;}
.cont02 .plan02 .inner { width: 100%; margin: 0 auto 0; display: flex; justify-content: space-between; flex-direction: column;}
.cont02 .plan02 .inner .innerL { width: 100%; margin-bottom: 9.375vw;}
.cont02 .plan02 .inner .innerL .sub_ttl {}
.cont02 .plan02 .inner .innerL .sub_ttl img { filter: drop-shadow(1.25vw 1.25vw 0.938vw rgba(0, 0, 0, 0.45));}
.cont02 .plan02 .inner .innerL .ttl_box { width: 100%; background: #FFF; padding: 3.75vw 0 7.813vw; margin-bottom: 7.813vw; box-shadow: 1.25vw 1.25vw 0.938vw 0px rgba(0, 0, 0, 0.45); position: relative; z-index: 10;}
.cont02 .plan02 .inner .innerL .ttl_box .plan_ttl { width: 73.125vw; margin: 0 auto 7.813vw;}
.cont02 .plan02 .inner .innerL .ttl_box .plan_plice { width: 76.875vw; margin: 0 auto 7.813vw;}
.cont02 .plan02 .inner .innerL .ttl_box ul { width: 83.438vw; margin: 0 auto 3.125vw; display: flex; justify-content: space-between;}
.cont02 .plan02 .inner .innerL .ttl_box ul li { width: 26.563vw; height: 10.313vw; text-align: center; align-content: center; background: #b28247; color: #FFF; font-size: 3.125vw; line-height: 1.1;}
.cont02 .plan02 .inner .innerL .ttl_box .txt { width: 84.375vw; margin: auto; border-top: solid 2px #231815; padding-top: 3.125vw;}
.cont02 .plan02 .inner .innerL .ttl_box .txt p { width: 81.25vw; text-align: left; padding-left: 1.2em; position: relative; margin: auto;}
.cont02 .plan02 .inner .innerL .ttl_box .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}
.cont02 .plan02 .inner .innerL .ttl_box .txt p a { color: #0008b4;}

.cont02 .plan02 .inner .innerL .detail { width: 86.563vw; margin: auto; padding: 3.125vw 0; border: solid 2px #FFF; text-align: center;}
.cont02 .plan02 .inner .innerL .detail h4 { font-size: 4.063vw; color: #FFF; width: 80vw; margin: 0 auto 3.906vw; border-bottom: solid 2px #FFF; padding-bottom: 0.781vw; letter-spacing: 0.469vw;}
.cont02 .plan02 .inner .innerL .detail .txt { font-size: 3.125vw; color: #FFF; text-align: center; display: inline-block;}
.cont02 .plan02 .inner .innerL .detail .txt p { margin: 0 1.563vw; text-align: left; display: block;}

.cont02 .plan02 .inner .innerR { width: 61.25vw; margin: auto; position: relative;}
.cont02 .plan02 .inner .innerR .img { width: 100%; margin: 0 auto 26.563vw; position: relative;}
.cont02 .plan02 .inner .innerR .txt { color: #FFF; width: 67.188vw; position: absolute; bottom: 3.125vw; left: 1.563vw;}
.cont02 .plan02 .inner .innerR .txt p { font-size: 2.813vw; padding-left: 1.2em; position: relative; letter-spacing: normal;}
.cont02 .plan02 .inner .innerR .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}


/*--------------------------------------------------------------*/


.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(1.563vw 1.563vw 0.938vw 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 .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 .txt { text-align: right; margin: 0;}
.about .inner .box02 .txt > p { display: inline-block; width: auto; text-align: left; margin: 0; padding-left: 1.2em; position: relative;}
.about .inner .box02 .txt > p::before { content: "※"; position: absolute; top: 0; left: 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 0.938vw 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 0.938vw 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 0.938vw 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 0.938vw 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; padding-left: 2.2em; position: relative;}
.about .inner .box03 .sbox ol li .comment::before { content: "※1"; position: absolute; top: 0; left: 0;}


/*--------------------------------------------------------------*/

.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: #F00;}

/*--------------------------------------------------------------*/

.inq { padding: 7.813vw 0;}
.inq .inner {}
.inq .inner h3 { font-size: 4.688vw; text-align: center; padding: 0 0 6.25vw; color: #000;}
.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; color: #2c72b1;}
.inq .inner .box .tel { font-size: 9.063vw; padding: 0 0 0;}
.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  3vw; 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);}
.fixedFooter__box { width: 100%; margin: 0 auto; display: flex; justify-content: center;}
.fixedFooter .btn { width: 70%; margin: 1.563vw 1.563vw 1.563vw;}
.fixedFooter .btn:nth-of-type(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: 39.063vw; 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 (width: 640px) {


body { font-size: 18px; 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 {}
header .hd__inner { width: 100%; height: 80px; padding: 10px 40px; display: flex; align-items: center;}
header .hd__inner h1 { width: 250px;}
header .hd__inner h1 a {}
header .hd__inner h1 a img {}

/*--------------------------------------------------------------*/

.kv { width: 100%; margin: auto;}
.kv .inner { width: 100%; margin: auto; position: relative;}
.kv .inner .kv_img { width: 100%;}
.kv .txt { width: 100%; padding: 30px 46px; margin: 0 auto 90px; background: #231815;}
.kv .txt p { width: auto; padding: 0 0 0 1.2em; margin: auto; font-size: 18px; color: #FFF; position: relative; display: inline-block;}
.kv .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}
.kv .txt br { margin-bottom: 30px;}


/*--------------------------------------------------------------*/

.massage { width: 100%; margin: auto; background: #fff8e6; box-shadow: 6px 6px 10px 0px rgba(0, 0, 0, 0.45);}
.massage .inner { width: 562px; margin: auto; padding: 60px 0; text-align: center;}
.massage .inner h3 { font-family: "Noto Serif JP", serif; font-size: 23px; color: #895822; margin: 0 0 60px; letter-spacing: -1.4px; font-weight: 800;}
.massage .inner h3 span { position: relative; padding: 0 5px;}
.massage .inner h3 span::after { content: ""; position: absolute; left: 0; right: 0; bottom: -10px; height: 3px; background: #f39800;}
.massage .inner .img { width: 100%; margin: auto; padding: 0 0 20px;}
.massage .inner .img picture { display: block; margin: 20px 0;}
.massage .inner .txt { display: inline-block; text-align: center; padding-left: 1.2em; position: relative;}
.massage .inner .txt p { display: block; text-align: left; line-height: 1.4; padding-left: 1.2em; position: relative;}
.massage .inner .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}
.massage .inner .txt p a { color: #0008b4;}

/*--------------------------------------------------------------*/

.btnBox { width: 100%; margin: auto; text-align: center; padding: 80px 0;}
.btnBox a { display: inline-block; width: 558px; position: relative;}
.btnBox a::after { content: ""; background: url(../images/hand.png) no-repeat; background-size: cover; width: 66px; height: 77px; position: absolute; bottom: -20px; right: -10px;}
.btnBox a img { filter: drop-shadow(10px 10px 6px rgba(0,0,0,0.7));}

/*--------------------------------------------------------------*/

.nav { width: 100%; background: #F7F4F2; padding: 40px 0; display: inherit; justify-content: center; align-items: center;}
.nav h3 { width: 290px; margin: 0 auto 20px;}
.nav ul { display: flex; justify-content: flex-start; flex-wrap: wrap; width: 575px; margin: auto; border-right: solid 1px #000;}
.nav ul li { display: inline-block; align-content: center; text-align: center; padding: 10px 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: 50px 0 0; padding: 100px 0 70px; background: linear-gradient(90deg, #841b35 10%, #631535); position: relative;}
.cont01 .inner { width: 574px; margin: 0 auto 80px; display: flex; justify-content: space-between; flex-direction: column;}
.cont01 .inner .innerL { width: 100%; margin-bottom: 60px;}
.cont01 .inner .innerL .sub_ttl {}
.cont01 .inner .innerL .sub_ttl img { filter: drop-shadow(8px 8px 6px rgba(0, 0, 0, 0.45));}
.cont01 .inner .innerL .ttl_box { width: 100%; background: #FFF; padding: 24px 0 50px; margin-bottom: 50px; box-shadow: 8px 8px 6px 0px rgba(0, 0, 0, 0.45); position: relative; z-index: 10;}
.cont01 .inner .innerL .ttl_box .plan_ttl { width: 468px; margin: 0 auto 50px;}
.cont01 .inner .innerL .ttl_box .plan_plice { width: 440px; margin: 0 auto 20px;}
.cont01 .inner .innerL .ttl_box ul { width: 534px; margin: 0 auto 20px; display: flex; justify-content: space-between;}
.cont01 .inner .innerL .ttl_box ul li { width: 170px; height: 66px; text-align: center; align-content: center; background: #a980ba; color: #FFF; font-size: 20px; line-height: 1.1;}
.cont01 .inner .innerL .ttl_box .txt { width: 540px; margin: auto; border-top: solid 2px #231815; padding-top: 20px;}
.cont01 .inner .innerL .ttl_box .txt p { width: 520px; text-align: left; padding-left: 1.2em; position: relative; margin: auto;}
.cont01 .inner .innerL .ttl_box .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}
.cont01 .inner .innerL .ttl_box .txt p a { color: #0008b4;}

.cont01 .inner .innerL .detail { width: 554px; margin: auto; padding: 20px 0; border: solid 2px #FFF; text-align: center;}
.cont01 .inner .innerL .detail h4 { font-size: 26px; color: #FFF; width: 512px; margin: 0 auto 25px; border-bottom: solid 2px #FFF; padding-bottom: 5px; letter-spacing: 3px;}
.cont01 .inner .innerL .detail .txt { font-size: 20px; color: #FFF; text-align: center; display: inline-block;}
.cont01 .inner .innerL .detail .txt p { margin: 0 10px; text-align: left; display: block;}

.cont01 .inner .innerR { width: 556px; margin-right: -80px; position: relative;}
.cont01 .inner .innerR .img { margin-bottom: 110px;}
.cont01 .inner .innerR .txt { color: #FFF; position: absolute; bottom: 30px; left: 120px;}
.cont01 .inner .innerR .txt p { font-size: 18px; padding-left: 1.2em; position: relative; letter-spacing: normal;}
.cont01 .inner .innerR .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}

.cont01 .gallery { width: 588px; margin: 0 auto 70px; background: #FFF; padding: 55px 0 20px;}
.cont01 .gallery h3 { font-size: 50px; color: #8a0635; text-align: center; margin-bottom: 40px;}
.cont01 .gallery .swiperMain { width: 494px; margin: 0 auto 30px; position: relative;}
.cont01 .gallery .swiperMain .swiper-slide { width: 100%; margin: auto; background: #FFF; border: solid 2px #000;}
.cont01 .gallery .swiperThumb { width: 494px; margin: 0 auto 24px;}
.cont01 .gallery .swiperThumb .swiper-slide { width: 50px; margin: auto;}
.cont01 .gallery .swiperThumb .swiper-slide img { cursor: pointer; transition: ease .5s;}
.cont01 .gallery .swiperThumb .swiper-slide img:hover { opacity: 0.6; cursor: pointer; transition: ease .5s;}
.cont01 .gallery .txt { text-align: left; margin: 0 auto 30px; width: 518px;}
.cont01 .gallery .txt p { display: inline-block; text-align: left; padding-left: 1.2em; position: relative;}
.cont01 .gallery .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}



.swiper-button-prev { width: 0; height: 0; border-style: solid; border-top: 43px solid transparent; border-bottom: 43px solid transparent; border-right: 26px solid #8a0635; border-left: 0; background: none; left: -36px; margin-top: -43px; transition: ease .5s;}
.swiper-button-next { width: 0; height: 0; border-style: solid; border-top: 43px solid transparent; border-bottom: 43px solid transparent; border-left: 26px solid #8a0635; border-right: 0; background: none; right: -36px; margin-top: -43px; transition: ease .5s;}
.swiper-button-prev:hover,
.swiper-button-next:hover { opacity: 0.6; transition: ease .5s;}

.line { background: url(../images/line.png) 0 0 repeat-x; background-size: cover; height: 4px; position: relative;}


/*--------------------------------------------------------------*/


.cont02 { margin: 70px 0 0; padding: 100px 0 40px; background: linear-gradient(90deg, #0c3255 50%, #0c2e4c); position: relative;}
.cont02 .inner_ttl { width: 574px; margin: auto;}
.cont02 .inner_ttl .sub_ttl {}
.cont02 .inner_ttl .sub_ttl img { filter: drop-shadow(8px 8px 6px rgba(0, 0, 0, 0.45));}
.cont02 .inner_ttl .ttl_box { background: #FFF; box-shadow: 8px 8px 6px 0px rgba(0, 0, 0, 0.45); position: relative; z-index: 10; padding: 0 0 30px; margin-bottom: 60px;}
.cont02 .inner_ttl .ttl_box .plan_ttl { width: 467px; margin: auto; padding: 25px 0;}
.cont02 .inner_ttl .box { width: 536px; padding: 38px 0; display: flex; justify-content: space-between; margin: auto; background: #f4ecd4; border: solid 3px #0e3457; flex-direction: column;}
.cont02 .inner_ttl .boxL { width: 100%; text-align: center;}
.cont02 .inner_ttl .boxL h4 { font-size: 34px; line-height: 1.2; color: #0e3457; letter-spacing: -0.7px; margin: 10px 0 20px;}
.cont02 .inner_ttl .boxL h4 span { font-size: 26px;}
.cont02 .inner_ttl .boxL p { width: 120%; height: 60px; background: #f35e1a; font-size: 28px; color: #FFF; text-align: center; align-content: center; transform: scaleX(80%); transform-origin: 50% 50%; margin-left: -10%;}

.cont02 .inner_ttl .boxR { width: 494px; margin: 10px auto 0;}
.cont02 .inner_ttl .boxR .txt {}
.cont02 .inner_ttl .boxR .txt p { font-size: 18px; padding-left: 1.2em; position: relative; letter-spacing: normal;}
.cont02 .inner_ttl .boxR .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}
.cont02 .inner_ttl .boxR .txt p a { color: #0008b4;}

.cont02 .plan01 { background: rgba(66,165,207,0.4); width: 574px; margin: 0 auto 40px; padding: 68px 0 50px;}
.cont02 .plan01 .inner { width: 574px; margin: 0 auto 0; display: flex; justify-content: space-between; flex-direction: column;}
.cont02 .plan01 .inner .innerL { width: 100%; margin-bottom: 60px;}
.cont02 .plan01 .inner .innerL .sub_ttl {}
.cont02 .plan01 .inner .innerL .sub_ttl img { filter: drop-shadow(8px 8px 6px rgba(0, 0, 0, 0.45));}
.cont02 .plan01 .inner .innerL .ttl_box { width: 100%; background: #FFF; padding: 24px 0 50px; margin-bottom: 50px; box-shadow: 8px 8px 6px 0px rgba(0, 0, 0, 0.45); position: relative; z-index: 10;}
.cont02 .plan01 .inner .innerL .ttl_box .plan_ttl { width: 468px; margin: 0 auto 50px;}
.cont02 .plan01 .inner .innerL .ttl_box .plan_plice { width: 446px; margin: 0 auto 20px;}
.cont02 .plan01 .inner .innerL .ttl_box ul { width: 534px; margin: 0 auto 20px; display: flex; justify-content: space-between;}
.cont02 .plan01 .inner .innerL .ttl_box ul li { width: 170px; height: 66px; text-align: center; align-content: center; background: #b28247; color: #FFF; font-size: 20px; line-height: 1.1;}
.cont02 .plan01 .inner .innerL .ttl_box .txt { width: 540px; margin: auto; border-top: solid 2px #231815; padding-top: 20px;}
.cont02 .plan01 .inner .innerL .ttl_box .txt p { width: 520px; text-align: left; padding-left: 1.2em; position: relative; margin: auto;}
.cont02 .plan01 .inner .innerL .ttl_box .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}
.cont02 .plan01 .inner .innerL .ttl_box .txt p a { color: #0008b4;}

.cont02 .plan01 .inner .innerL .detail { width: 554px; margin: auto; padding: 20px 0; border: solid 2px #FFF; text-align: center;}
.cont02 .plan01 .inner .innerL .detail h4 { font-size: 26px; color: #FFF; width: 512px; margin: 0 auto 25px; border-bottom: solid 2px #FFF; padding-bottom: 5px; letter-spacing: 3px;}
.cont02 .plan01 .inner .innerL .detail .txt { font-size: 20px; color: #FFF; text-align: center; display: inline-block;}
.cont02 .plan01 .inner .innerL .detail .txt p { margin: 0 10px; text-align: left; display: block;}

.cont02 .plan01 .inner .innerR { width: 392px; margin: auto; position: relative;}
.cont02 .plan01 .inner .innerR .img { width: 100%; margin: 0 auto 170px; position: relative;}
.cont02 .plan01 .inner .innerR .txt { color: #FFF; width: 430px; position: absolute; bottom: 20px; left: 10px;}
.cont02 .plan01 .inner .innerR .txt p { font-size: 18px; padding-left: 1.2em; position: relative; letter-spacing: normal;}
.cont02 .plan01 .inner .innerR .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}

/*--------------------------------------------------------------*/


.cont02 .plan02 { background: rgba(127,179,36,0.6); width: 574px; margin: 40px auto 40px; padding: 68px 0 40px;}
.cont02 .plan02 .inner { width: 100%; margin: 0 auto 0; display: flex; justify-content: space-between; flex-direction: column;}
.cont02 .plan02 .inner .innerL { width: 100%; margin-bottom: 60px;}
.cont02 .plan02 .inner .innerL .sub_ttl {}
.cont02 .plan02 .inner .innerL .sub_ttl img { filter: drop-shadow(8px 8px 6px rgba(0, 0, 0, 0.45));}
.cont02 .plan02 .inner .innerL .ttl_box { width: 100%; background: #FFF; padding: 24px 0 50px; margin-bottom: 50px; box-shadow: 8px 8px 6px 0px rgba(0, 0, 0, 0.45); position: relative; z-index: 10;}
.cont02 .plan02 .inner .innerL .ttl_box .plan_ttl { width: 468px; margin: 0 auto 50px;}
.cont02 .plan02 .inner .innerL .ttl_box .plan_plice { width: 492px; margin: 0 auto 50px;}
.cont02 .plan02 .inner .innerL .ttl_box ul { width: 534px; margin: 0 auto 20px; display: flex; justify-content: space-between;}
.cont02 .plan02 .inner .innerL .ttl_box ul li { width: 170px; height: 66px; text-align: center; align-content: center; background: #b28247; color: #FFF; font-size: 20px; line-height: 1.1;}
.cont02 .plan02 .inner .innerL .ttl_box .txt { width: 540px; margin: auto; border-top: solid 2px #231815; padding-top: 20px;}
.cont02 .plan02 .inner .innerL .ttl_box .txt p { width: 520px; text-align: left; padding-left: 1.2em; position: relative; margin: auto;}
.cont02 .plan02 .inner .innerL .ttl_box .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}
.cont02 .plan02 .inner .innerL .ttl_box .txt p a { color: #0008b4;}

.cont02 .plan02 .inner .innerL .detail { width: 554px; margin: auto; padding: 20px 0; border: solid 2px #FFF; text-align: center;}
.cont02 .plan02 .inner .innerL .detail h4 { font-size: 26px; color: #FFF; width: 512px; margin: 0 auto 25px; border-bottom: solid 2px #FFF; padding-bottom: 5px; letter-spacing: 3px;}
.cont02 .plan02 .inner .innerL .detail .txt { font-size: 20px; color: #FFF; text-align: center; display: inline-block;}
.cont02 .plan02 .inner .innerL .detail .txt p { margin: 0 10px; text-align: left; display: block;}

.cont02 .plan02 .inner .innerR { width: 392px; margin: auto; position: relative;}
.cont02 .plan02 .inner .innerR .img { width: 100%; margin: 0 auto 170px; position: relative;}
.cont02 .plan02 .inner .innerR .txt { color: #FFF; width: 430px; position: absolute; bottom: 20px; left: 10px;}
.cont02 .plan02 .inner .innerR .txt p { font-size: 18px; padding-left: 1.2em; position: relative; letter-spacing: normal;}
.cont02 .plan02 .inner .innerR .txt p::before { content: "※"; position: absolute; top: 0; left: 0;}


/*--------------------------------------------------------------*/


.about { margin: 50px 0 0; padding: 130px 20px 140px; 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 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: auto; margin: auto; border-bottom: solid 2px #2c392d; padding: 50px 15px;}
.about .inner .box01 h4 { font-family: "Noto Serif JP", serif; font-size: 30px; text-align: center; margin: 0 0 40px;}
.about .inner .box01 h4 span { font-size: 38px;}
.about .inner .box01 p { font-size: 20px; width: auto; margin: 0 auto 50px;}
.about .inner .box01 .img { width: 540px; margin: 0 auto;}

.about .inner .box02 { width: auto; margin: auto; border-bottom: solid 2px #2c392d; padding: 50px 15px;}
.about .inner .box02 h4 { font-family: "Noto Serif JP", serif; font-size: 30px; text-align: center; margin: 0 0 40px;}
.about .inner .box02 p { font-size: 20px; width: auto; margin: 0 auto 20px;}
.about .inner .box02 .txt { text-align: right; margin: 0;}
.about .inner .box02 .txt > p { display: inline-block; width: auto; text-align: left; margin: 0; padding-left: 1.2em; position: relative;}
.about .inner .box02 .txt > p::before { content: "※"; position: absolute; top: 0; left: 0;}
.about .inner .box02 .img { width: 520px; margin: 0 auto 20px;}

.about .inner .box03 { width: auto; margin: auto; border-bottom: solid 2px #2c392d; padding: 50px 15px 40px;}
.about .inner .box03 h4 { font-family: "Noto Serif JP", serif; font-size: 30px; text-align: center; margin: 0 0 40px;}
.about .inner .box03 > p { font-size: 20px; width: auto; margin: 0 auto 20px;}

.about .inner .box03 .sbox { width: 100%; margin: 0 auto; padding: 50px 0 40px; 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: 18px; height: 17px; 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: 20px; right: 20px; width: 18px; height: 17px; 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: 20px; left: 20px; width: 18px; height: 17px; 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: 20px; right: 20px; width: 18px; height: 17px; 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: 515px; text-align: center; margin: 0 auto 40px;}
.about .inner .box03 .sbox ol { width: 490px; margin: auto; display: flex; flex-direction: column;}
.about .inner .box03 .sbox ol li { width: 100%; height: auto; margin: 0 0 40px; padding: 15px 20px;}
.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 20px;}
.about .inner .box03 .sbox ol li h5 { width: auto; margin: 0 0 20px;}
.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: 18px; margin: 20px 0 0; width: auto; color: #FFF; padding-left: 2.2em; position: relative;}
.about .inner .box03 .sbox ol li .comment::before { content: "※1"; position: absolute; top: 0; left: 0;}


/*--------------------------------------------------------------*/

.important { padding: 50px 0 10px;}
.important .inner { width: 560px; margin: auto;}
.important .inner h3 { font-size: 30px; text-align: center; padding: 40px 0 60px; color: #026636;}
.important .inner .impBox { margin: 0 0 2em;}
.important .inner .impBox em { font-style: normal; color: #F00;}

/*--------------------------------------------------------------*/

.inq { padding: 50px 0;}
.inq .inner {}
.inq .inner h3 { font-size: 30px; text-align: center; padding: 0 0 40px; color: #000;}
.inq .inner .box { width: 560px; padding: 30px 0; border: solid 2px #000; border-radius: 20px; margin: auto; text-align: center;}
.inq .inner .box h4 { font-size: 27px; padding: 0; color: #2c72b1;}
.inq .inner .box .tel { font-size: 58px; padding: 0 0 0;}
.inq .inner .box .txt { font-size: 22px; padding: 0 0 20px; text-align: left; display: inline-block;}
.inq .inner .box .info { display: inline-block; width: 470px; border: solid 2px #d71718; border-radius: 20px; padding: 10px 0; color: #d71718;}
.inq .inner .box .info span { display: inline-block; text-align: left; font-size: 18px;}

/*--------------------------------------------------------------*/

footer { padding: 0 0 100px;}
footer .inner { padding: 50px 0; text-align: center;}
footer .inner a { width: 305px; display: inline-block;}
footer .inner .cp { padding: 10px 0; font-size: 13px;}

/*--------------------------------------------------------------*/

.fixedFooter { padding: 10px 0; position: fixed; bottom: 0; left: 0; right: 0; z-index: 100; background: rgba(255,255,255,0.6);}
.fixedFooter__box { width: 100%; margin: 0 auto; display: flex; justify-content: center;}
.fixedFooter .btn { width: 70%; margin: 10px 10px 10px;}
.fixedFooter .btn:nth-of-type(2) { display: none;}

/*--------------------------------------------------------------*/

.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;}



}



/*--------------------------------------------------------------------

////////////////FOOTER

--------------------------------------------------------------------*/
.footer {
  width: 100%;
  margin: 0 auto;
  padding: 0 0 30vw 0;
  margin-top: 7em;
	text-align: center;
}
.footer address {
	font-style: normal;
}

@media screen and (min-width: 768px) {
  .footer {
    max-width: 1145px;
    padding: 3em 0 200px 0;
  }
}

.footer__box {
  display: inline-block;
}

.footer__box__logo {
  display: block;
  width: 50%;
  margin: 1.5em auto;
}

@media screen and (min-width: 768px) {
  .footer__box__logo {
    width: 300px;
  }
}

.footer__box__nav {
  width: 85%;
  margin: 0 auto;
  border-bottom: solid 1px #ccc;
  padding-bottom: 0.5em;
}

@media screen and (min-width: 768px) {
  .footer__box__nav {
    margin: 0 auto 1em auto;
    width: 90%;
    max-width: 1145px;
    display: flex;
    justify-content: space-between;
  }
}

.footer__box__nav__li {
  display: inline-block;
  margin-bottom: 0.5em;
}

.footer__box__nav__li > a {
  font-size: 1.2rem;
  color: var(--black);
  position: relative;
  padding-left: 12px;
}

.footer__box__nav__li > a::before {
  position: absolute;
  content: "";
  width: 6px;
  height: 6px;
  border-top: solid 1px #000;
  border-right: solid 1px #000;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 50%;
  left: 0;
  margin-top: -3px;
}

.footer__box__add {
  font-size: 1.2rem;
  margin-bottom: 2.5em;
  margin-top: 1.5em;
  line-height: 1.8;
}

.footer__box__add > span {
  font-size: 1.5rem;
}

@media screen and (min-width: 768px) {
  .footer__box__add {
    margin-top: 0;
  }
}

@media screen and (min-width: 1024px) {
  .footer__box__nav__li > a {
    font-size: 1.5rem;
  }
}

.footer__box__cr {
  font-size: 1.2rem;
  margin: 0;
  position: relative;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .footer__box__cr {
    font-size: 1.2rem;
    margin: 0 auto 1.5em auto;
    position: relative;
    width: 85%;
  }
}

.footer__box__logo2 {
  width: 80px;
  margin: 1.5em auto 0 auto;
}

@media screen and (min-width: 768px) {
  .footer__box__logo2 {
    position: absolute;
    top: 0;
    right: 0;
    width: 100px;
    margin: 0;
  }
}

