@charset "UTF-8";
/* CSS Document */

/* ----------------------------------------------
 ! normalize
 ---------------------------------------------- */

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

html {
	font-family: sans-serif;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
}

body {
	background-color: #fff;
	color: #1A1A1A;
	font-size: 1em;
	line-height: 1;
	font-weight: 500;
	font-family: "Noto Serif JP", serif;
}

.cf:before, .cf:after { content:""; display:table; }
.cf:after { clear:both; }
.cf { *zoom: 1; }


*, *::before, *::after { box-sizing:border-box; }

/* html5 format */

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
	display: block;
}

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

a {
	background-color: transparent;
	text-decoration: none;
}

a:active,
a:hover {
	outline: 0;
}

b,
strong {
	font-weight: bold;
}

small {
	font-size: 80%;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

img {
	border: 0;
	vertical-align:middle;
}

hr {
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	height: 0;
}

pre {
	overflow: auto;
}

code,
kbd,
pre,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

td,
th {
	padding: 0;
}

li {
	list-style: none;
}

@keyframes slideFromRight {
      to {
        opacity: 1;
        transform: translateX(0);
      }
    }

/* ----------------------------------------------
 ! Base
 ---------------------------------------------- */

body { width:100%; overflow-x:hidden; }
#content {}

@media screen and (max-width:768px){
body { min-width:280px; }
#content {}
}

@media screen and (min-width:1380px){
body { min-width:1380px; }
#content {}
}




@media screen and (max-width:768px){

.sp {display: block;}

.pc {display: none;}
	
}

@media screen and (min-width:769px){
	
.sp {display: none;}
	
.pc {display: block;}

}





/* ----------------------------------------------
 ! navi
 ---------------------------------------------- */

#btn-box { position: fixed; top: 0; z-index: 10000; display: flex; justify-content: space-between; align-items: center; width: 100%; background-color: rgba(255, 255, 255, 0.5); height: 13.3vw; box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.1);}

#btn-box.active { background-color: #f1f1f1; opacity: 1; box-shadow: none;}

.navi_logo {width: 28.4vw; height: auto; padding: 0 0 0 5.1vw;}

.navi_logo img {width: 100%;}

.openbtn { position: relative; cursor: pointer; width: 17.9vw; height: 13.3vw;}

.openbtn span { display: inline-block; transition: all .4s; position: absolute; height: 1px; background: #9A835E;}

.openbtn span:nth-of-type(1) { top:4.3vw; width: 7.7vw; left: 5.1vw; transform: rotate(0deg);}

.openbtn span:nth-of-type(2) { top:5.9vw; width: 4.1vw; left: 5.1vw; transform: rotate(0deg);}

.openbtn.active span:nth-of-type(1),
.openbtn.active span:nth-of-type(2) { top: 5.1vw; left: 5.8vw; width: 5.8vw;}

.openbtn.active span:nth-of-type(1) {transform: rotate(45deg);}

.openbtn.active span:nth-of-type(2) {transform: rotate(-45deg);}

.openbtn em { font-size: 2.5vw; font-family: "Montserrat", sans-serif; font-weight: 400; font-style: normal; color: #1A1A1A; position: absolute; bottom: 3.1vw; left: 50%;
  transform: translateX(-50%);}
  
.openbtn.active em {opacity: 0;}

.openbtn b {opacity: 0;}

.openbtn.active b { opacity: 1; font-size: 2.5vw; font-family: "Montserrat", sans-serif; font-weight: 400; font-style: normal; color: #1A1A1A; position: absolute; bottom: 3.1vw; left: 50%; transform: translateX(-50%);}


@media screen and (min-width:769px){
#btn-box {height: 5.1vw;}

.navi_logo {width: 15.2vw; height: auto; padding: 0 0 0 3vw;}

.openbtn {position: fixed; top: 0; right: 0; width: 7.5vw; height: 5.1vw;}

.openbtn span { position: absolute;}

.openbtn span:nth-of-type(1) { top:1.5vw; left: 2.3vw; width: 2.8vw;}

.openbtn span:nth-of-type(2) { top:2.2vw; left: 2.3vw; width: 2vw;}

.openbtn.active {height: 5.1vw;}

.openbtn.active span:nth-of-type(1),
.openbtn.active span:nth-of-type(2) { top:2vw; left: 2.6vw; width: 2.2vw;}

.openbtn em,
.openbtn.active b{ font-size: 1vw; bottom: 1vw; }
}

@media screen and (min-width:1380px){

#btn-box {height: 70px;}

.navi_logo {width: 160px; padding: 0 0 0 40px;}

.openbtn {width: 119px; height: 70px;}

.openbtn span:nth-of-type(1) { top:22px; left: 42px; width: 32px;}

.openbtn span:nth-of-type(2) { top:29px; left: 42px; width: 20px;}

.openbtn.active {height: 70px;}

.openbtn.active span:nth-of-type(1),
.openbtn.active span:nth-of-type(2) { top:24px; left: 44px; width: 28px;}

.openbtn em,
.openbtn.active b { font-size: 13px; bottom: 19px; }
}




.nav-phone { width: 100%; height: 22.5vw; display: flex; flex-direction: row; z-index: 5000; position: fixed; left: 0; bottom: 0;}

.nav-phone li { width: 50%; text-align: center;}

.nav-phone li:hover {opacity: 0.8; transition: 0.3s;}

.nav-phone li:nth-of-type(1) { background-color: #FFF8E8;}

.nav-phone li:nth-of-type(2) { background-color: #F2E4C8;}

.nav-phone li:nth-of-type(1) span:before {content: ""; background: url('../img/icon-sp.svg') center no-repeat; background-size: 100%; display: inline-block; width: 3.5vw; height: 5.6vw; margin-right: 1vw;}

.nav-phone li:nth-of-type(2) span:before {content: ""; background: url('../img/icon-web.svg') center no-repeat; background-size: 100%; display: inline-block; width: 5.8vw; height: 5.6vw; margin-right: 1vw;}

.nav-phone span {display: flex; align-items: center; color: #1A1A1A; font-size: 4.1vw; font-weight: 600; justify-content: center; margin-bottom: 1.5vw;}

.nav-phone em { font-style: normal; color: #1A1A1A; background-color: #fff; font-size: 3.5vw; border-radius: 14px; width: 41vw; padding: 1vw 0;}

.nav-phone a { width: 100%; height: 100%; display: flex; flex-direction: column; justify-content: center; align-items: center;}

@media screen and (min-width:769px){
	
.nav-phone { flex-direction: column; top: 8vw; bottom:auto; right: 0; left: auto; width: 12.4vw; height: 14.3vw;}
	
.nav-phone li {width: 100%; height: 50%; line-height: 2;}

.nav-phone li:nth-of-type(1) span:before { width: 1vw; height: 1.6vw; margin-right: 1vw;}

.nav-phone li:nth-of-type(2) span:before { width: 1.4vw; height: 1.2vw; margin-right: 1vw;}

.nav-phone span {font-size: 1vw; margin-bottom: 0.5vw;}

.nav-phone li em {font-size: 0.8vw; width: 10.2vw; padding: 0.4vw 0;}
}

@media screen and (min-width:1380px){

.nav-phone { top: 110px; width: 170px; height: 190px;}

.nav-phone li:nth-of-type(1) span:before { width: 12px; height: 19px; margin-right: 8px;}

.nav-phone li:nth-of-type(2) span:before { width: 20px; height: 17px; margin-right: 8px;}

.nav-phone span {font-size: 13px; margin-bottom: 6px;}

.nav-phone li em {font-size: 11px; width: 140px; padding: 5px 0;}
}



.nav-box { color: #000; position: fixed; top: 13.3vw; right: 0; opacity: 0; -webkit-transform: translateX(100%);  transform: translateX(100%); -webkit-transition: all 0.6s; transition: all 0.6s; width: 87.1vw; height: 100%; z-index: 9000; overflow-y: auto;}

.nav-box.active { background: rgba(255, 255, 255, 1); opacity: 1; -webkit-transform: translateX(0%); transform: translateX(0%);}

.nav-list { width: 64.1vw; margin: 14.6vw auto 0; display: flex; flex-direction: column; overflow: auto;}

.nav-list li {text-align: left; text-indent: 11px; font-size: 3.8vw; padding: 4.1vw 0; border-bottom: 1px solid #EAD7B1; position: relative;}

.nav-list li:after { content: ""; background-image: url("../img/nav_arrow.svg"); background-repeat: no-repeat; background-size: 100%; background-position: center; width: 1vw; height: 2vw; position: absolute; top: 50%; transform: translateY(-50%); right: 11px;}

.nav-list a {color: #1A1A1A; text-decoration: none; display: block; height: 100%;}

@media screen and (min-width:769px){

.nav-box { width: 34.4vw; top: 5.1vw;}
	
.nav-list { width: 18.3vw; margin: 7vw auto 0;}

.nav-list li { font-size: 1.2vw; padding: 1.4vw 0;}

.nav-list li:after { width: 0.5vw; height: 0.8vw; right: 0.6vw;}
}

@media screen and (min-width:1380px){

.nav-box { width: 470px; top: 70px;}
	
.nav-list { width: 250px; margin: 92px auto 0;}

.nav-list li { font-size: 15px; padding: 16px 0;}

.nav-list li:after { width: 4px; height: 8px; right: 9px;}
}


	
	
		




/* ----------------------------------------------
 ! mainview
 ---------------------------------------------- */

#mainview { background: url("../img/mv_sp.webp") center no-repeat; background-size: cover; width: 100%; height: 151vw; position: relative;}

.mv_wrapper {position: absolute; top: 36vw; left: 7.6vw;}

.mv_txt {position: relative; color: #fff; text-shadow: 0 0 10px rgba(255, 255, 255, 0.7),0 0 15px rgba(255, 255, 255, 0.5); font-size: 3vw; font-family: "Noto Sans JP", sans-serif; font-weight: 400;}

.mv_txt:before,
.mv_txt:after {position: absolute; text-shadow: 0 0 6px rgba(255, 255, 255, 1),0 0 10px rgba(255, 255, 255, 1),0 0 15px rgba(255, 255, 255, 1);}

.mv_txt:before {content: "＼"; transform: rotate(15deg); top: 0.4vw; left: -3.4vw;}

.mv_txt:after {content: "／"; transform: rotate(-15deg); top: 0.4vw; right: -3.4vw;}

.mv_txt_img {width: 43.8vw; position: absolute; top: 41.2vw; left: 6.8vw;}

.mv_txt_img img {width: 100%; height: auto;}

@media screen and (min-width:769px){

#mainview { background: url("../img/mv_pc.webp") top no-repeat; background-size: 100%; width: 100%; height: 55.4vw;}

.mv_wrapper {top: auto; bottom:  20.4vw; left: auto; right: 12.7vw;}

.mv_txt {color: #1a1a1a; text-shadow: 0 0 3px rgba(255, 255, 255, 1),0 0 8px rgba(255, 255, 255, 1),0 0 13px rgba(255, 255, 255, 1),0 0 18px rgba(255, 255, 255, 1),0 0 23px rgba(255, 255, 255, 1); font-size: 1.2vw;}

.mv_txt:before,
.mv_txt:after { text-shadow: 0 0 3px rgba(255, 255, 255, 1),0 0 8px rgba(255, 255, 255, 1),0 0 13px rgba(255, 255, 255, 1),0 0 18px rgba(255, 255, 255, 1),0 0 23px rgba(255, 255, 255, 1);}

.mv_txt:before {top: 0.4vw; left: -1.4vw;}

.mv_txt:after {top: 0.4vw; right: -1.4vw;}

.mv_txt_img {width: 17.2vw; top: auto; bottom: 13.9vw; left: auto; right: 6vw;}
}

@media screen and (min-width:1380px){
	
#mainview { width: 1366px; height: 768px; margin: auto;}

.mv_wrapper {bottom:  281px; right: 163px;}

.mv_txt {font-size: 18px;}

.mv_txt:before {top: 5px; left: -21px;}

.mv_txt:after {top: 5px; right: -18px;}

.mv_txt_img {width: 236px; bottom: 193px; right: 82px;}
}	
	
	
	



/* ----------------------------------------------
 ! H1
 ---------------------------------------------- */


h1 { font-weight: 700; position: absolute; bottom: 55.2vw; left: 6.1vw; line-height: 1.3;}

h1 i,
h1 small,
h1 em { text-shadow: 1px 0 0 white,-1px 0 0 white,0 1px 0 white,0 -1px 0 white,0 0 2px rgba(255, 255, 255, 1),0 0 10px rgba(255, 255, 255, 1),0 0 15px rgba(255, 255, 255, 0.8),0 0 20px rgba(255, 255, 255, 0.7);}

h1 strong {text-shadow: 1px 0 0 white,-1px 0 0 white,0 1px 0 white,0 -1px 0 white,0 0 2px rgba(255, 255, 255, 1),0 0 10px rgba(255, 255, 255, 1),0 0 25px rgba(255, 255, 255, 0.9),0 0 30px rgba(255, 255, 255, 0.9),0 0 20px rgba(255, 255, 255, 0.8),0 0 20px rgba(255, 255, 255, 0.6);}
  
h1 span {}

h1 i {font-size: 7.1vw;}

h1 small { font-size: 4.1vw; margin: 0 0 0 5px;}

h1 strong {font-size: 10.3vw; color: #b28841; letter-spacing: -1.5px; position: relative; }

h1 em {font-size: 6.4vw; font-style: normal;}

.mv_up {transform: translateY(-2px); display: inline-block;}

.mv_down {transform: translateY(2px); display: inline-block;}

h1 strong:before {content: "「"; position: absolute; top: 0.9vw; left: -8.8vw;}

h1 strong:after {content: "」"; position: absolute; bottom: 0; right: -8.8vw;}


@media screen and (min-width:769px){

h1 { bottom: auto; top: 11.9vw; left: 6.5vw;}
  
h1 span {}

h1 i {font-size: 3.3vw;}

h1 small { font-size: 1.8vw; margin: 0 0 0 4px;}

h1 strong {font-size: 4.9vw;}

h1 em {font-size: 2.9vw;}

h1 strong:before {top: 0; left: -5vw;}

h1 strong:after {bottom: 0; right: -5vw;}

}

@media screen and (min-width:1380px){

h1 { top: 169px; left: 92px;}
  
h1 span {}

h1 i {font-size: 45px;}

h1 small { font-size: 26px; margin: 0 0 0 4px;}

h1 strong {font-size: 68px;}

h1 em {font-size: 40px;}

h1 strong:before {top: 0; left: -64px;}

h1 strong:after {bottom: 0; right: -64px;}
	
}



/* ----------------------------------------------
 ! MV インビザライン
 ---------------------------------------------- */
#mv_invisa {width: 89.7vw; padding: 4.3vw 4.2vw 4.3vw 4.8vw; position: absolute; left: 50%; transform: translateX(-50%); bottom: 5.1vw; background-color: rgba(255, 255, 255, 0.85); border-radius: 10px;}

.invisa_box {width: 79.6vw; display: flex; position: relative; justify-content: space-between; align-items: center;}

#mv_invisa figure {width: 22.4vw;}

#mv_invisa figure img {width: 100%; height: auto;}

.invisa_box ul {width: 48.7vw;}

.invisa_box li {margin: 0 0 1.6vw;}

.invisa_box em {writing-mode: vertical-rl; border: 1px solid #bca98b; font-size: 3vw; padding: 0.6vw; font-style: normal; position: absolute; top: 0.6vw; left: 25.3vw;}

.invisa_box strong {font-size: 8.9vw; font-weight: 600; margin: 0 0.8vw 0 0; line-height: 0.9;}

.invisa_box b {font-size: 3.8vw;}

.invisa_box i { font-size: 2.5vw; font-style: normal;}

.price_84 {position: absolute; top: 0; right: 0;}

.invisa_box span {font-size: 3vw;}

.invisa_box span small { font-size: 2.3vw;}

.invisa_box span strong {font-size: 4.1vw; margin: 0 0 0 1.2vw;}

.mv_check {width: 100%; margin: 3.8vw 0 0 3.7vw; display: flex; flex-wrap: wrap;}

.mv_check li {font-size: 3.5vw;}

.mv_check li span {font-size: 4.3vw; color: #9a835e; margin-left: 1vw;}

.mv_check li:before {content: ""; display: inline-block; width: 4.3vw; height: 4.3vw; background: url('../img/check.webp') center no-repeat; background-size: 100%; margin-right: 1vw; vertical-align: sub;}

.mv_check li:first-of-type {margin: 0 6vw 2.5vw 0;}

.mv_check li:last-of-type {margin: 0;}

@media screen and (min-width:769px){

#mv_invisa {width: 41.4vw; padding: 2.4vw 2.3vw 2.3vw 2.2vw; left: 6vw; transform: unset; bottom: 8.9vw;}

.invisa_box {width: 36.6vw;}

#mv_invisa figure {width: 10.1vw;}

.invisa_box ul {width: 22.4vw;}

.invisa_box li {margin: 0 0 1.6vw;}

.invisa_box em {font-size: 1vw; padding: 0.4vw; top: 0.6vw; left: 11.7vw;}

.invisa_box strong {font-size: 4vw; margin: 0 0.4vw 0 0;}

.invisa_box b {font-size: 1.7vw;}

.invisa_box i { font-size: 1.2vw;}

.price_84 {position: absolute; top: 0; right: 0;}

.invisa_box span {font-size: 1.4vw;}

.invisa_box span small { font-size: 1vw;}

.invisa_box span strong {font-size: 1.8vw; margin: 0 0 0 0.6vw;}

.mv_check {width: 100%; margin: 0 0 0 2.1vw; }

.mv_check li {font-size: 1.6vw}

.mv_check li span {font-size: 2vw; margin-left: 1vw;}

.mv_check li:before {width: 2vw; height: 2vw; margin-right: 0.6vw;}

.mv_check li:first-of-type {margin: 0 2.5vw 1.2vw 0;}
}

@media screen and (min-width:1380px){
	
#mv_invisa {width: 565px; padding: 33px 32px 32px 29px; left: 83px; bottom: 122px;}

.invisa_box {width: 500px;}

#mv_invisa figure {width: 143px;}

.invisa_box ul {width: 308px;}

.invisa_box li {margin: 0 0 21px;}

.invisa_box em {font-size: 14px; padding: 5px; top: 9px; left: 157px;}

.invisa_box strong {font-size: 56px; margin: 0 5px 0 0;}

.invisa_box b {font-size: 24px;}

.invisa_box i { font-size: 16px;}

.invisa_box span {font-size: 19px;}

.invisa_box span small { font-size: 14px;}

.invisa_box span strong {font-size: 26px; margin: 0 0 0 8px;}

.mv_check {margin: 0 0 0 29px; }

.mv_check li {font-size: 22px;}

.mv_check li span {font-size: 27px; margin-left: 5px;}

.mv_check li:before {width: 27px; height: 27px; margin-right: 8px;}

.mv_check li:first-of-type {margin: 0 40px 14px 0;}
	
}






/* ----------------------------------------------
 ! H2
 ---------------------------------------------- */


.title_en_jp {position: relative; width: 100%; text-align: center; padding: 22.3vw 0 0; margin: 0 auto 9.2vw;}

.title_en_jp p {font-family: "WindSong", cursive; font-weight: 400; font-size: 16.6vw; color: #FDE8C6;}

.title_en_jp h2 {font-size: 6.6vw; font-weight: 600; position: absolute; bottom: 6vw; left: 50%; transform: translateX(-50%); width: 100%; text-align: center;}

@media screen and (min-width:769px){

.title_en_jp {padding: 6.5vw 0 0; margin: 0 auto 2.8vw;}

.title_en_jp p {font-size: 10.2vw;}

.title_en_jp h2 {font-size: 2.6vw; bottom: 2.5vw;}

}

@media screen and (min-width:1380px){
	
.title_en_jp {padding: 130px 0 0; margin: 0 auto 39px;}

.title_en_jp p {font-size: 140px;}

.title_en_jp h2 {font-size: 36px; bottom: 35px;}	
}





/* ----------------------------------------------
 ! art01
 ---------------------------------------------- */


#art01 {background: url('../img/gradation.webp') top center / 100% no-repeat; padding: 0 0 10vw;}

.art_sec01,
.art_sec02,
.art_sec03,
.art_sec04,
.art_sec06 {position: relative; max-width: 768px; margin: 0 auto;}

.art_sec01 {min-height: 152.5vw;}

.art_sec02 {min-height: 121.8vw;}

.art_sec03 {min-height: 134vw;}

.art_sec04 {min-height: 147.4vw;}

.art_sec06 {min-height: 149.5vw;}



.img_box_l,
.img_box_r {position: absolute; top: 10.2vw;}

.img_box_l {left: 0;}

.img_box_r {right: 0;}

.img_box_l .num,
.img_box_r .num {font-family: "Montserrat", sans-serif; font-size: 23vw; font-weight: 200; color: #FDEFD2; position: absolute; top: -8vw;}

.img_box_l .num {left: 3.8vw;}

.img_box_r .num {right: 3.8vw;}


.art_sec01 figure,
.art_sec02 figure,
.art_sec03 figure,
.art_sec04 figure,
.art_sec06 figure {width: 94.8vw;}

.art_sec01 figure img,
.art_sec02 figure img,
.art_sec03 figure img,
.art_sec04 figure img,
.art_sec06 figure img {width: 100%; height: auto;}


.sec_txt_box,
.sec_txt_box02 {width: 79.4vw; position: absolute; left: 50%; top: 60vw; transform: translateX(-50%);}


.sec_txt_box h3,
.sec_txt_box02 h3 {font-size: 5.6vw; font-weight: 600; color: #9A835E; display: flex; flex-direction: column; gap:1vw; min-height: 19vw; justify-content: flex-end;}

.sec_txt_box h3 span,
.sec_txt_box02 h3 span {display: inline-block; background-color: #fff; line-height: 1.545; padding: 0 3vw; box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.1); width: fit-content;}

.sec_txt_box p,
.sec_txt_box02 p {font-size: 4.1vw; line-height: 1.875; margin: 7.7vw 0 10.2vw; font-family: "Noto Sans JP", sans-serif; font-weight: 400;}

.sec_txt_box p:last-of-type {margin-bottom: 0;}

mark {color: #9A835E; text-decoration: underline;}

@media screen and (min-width:769px){

#art01 {background: url('../img/gradation_pc.webp') top center / 100% no-repeat;}

.art_sec01,
.art_sec02,
.art_sec03,
.art_sec04,
.art_sec06 { width: 73.2vw; max-width: unset;}

.art_sec01 {min-height: 28.4vw; }

.art_sec02,
.art_sec06 {min-height: 28.4vw; margin: 2.9vw auto 0;}
	
.art_sec03 {min-height: 28.4vw; margin: 4vw auto 0;}

.art_sec04 {min-height: 27.7vw; margin: 2.9vw auto 2vw;}


.img_box_l {top: auto; bottom: 0; left: 0;}

.img_box_r {top: auto; bottom: 0; right: 0;}

.img_box_l .num,
.img_box_r .num {font-size: 9vw; top: -3vw;}

.img_box_l .num {left: 1.8vw;}

.img_box_r .num {right: 1.4vw;}


.art_sec01 figure,
.art_sec02 figure,
.art_sec03 figure, 
.art_sec04 figure,
.art_sec06 figure {width: 35.5vw;}


.sec_txt_box,
.sec_txt_box02 {width: 32.2vw; transform: unset;}


.art_sec01 .sec_txt_box { top: auto; bottom: 0; right: 0; left: auto;}

.art_sec03 .sec_txt_box,
.art_sec06 .sec_txt_box02 {top: 6.3vw; right: 0; left: auto;}

.art_sec01 .sec_txt_box02 {top: 3.5vw; right: 0; left: auto;}

.art_sec02 .sec_txt_box,
.art_sec03 .sec_txt_box02 {top: 6.6vw; bottom: auto; left: 0;}

.art_sec04 .sec_txt_box {top: auto; bottom: 0; left: 0;}

.art_sec04 .sec_txt_box02 {top: auto; bottom: 0; left: auto; right: 0;}

.art_sec06 .sec_txt_box {top: auto; bottom: 0; left: auto; right: 0;}


.sec_txt_box h3,
.sec_txt_box02 h3 {font-size: 1.9vw; gap:1vw; min-height: 5.6vw; }

.sec_txt_box h3 span,
.sec_txt_box02 h3 span {padding: 0 0.6vw;}

.sec_txt_box p,
.sec_txt_box02 p {font-size: 1.2vw; margin: 2.9vw 0 0; }
}

@media screen and (min-width:1380px){

.art_sec01,
.art_sec02,
.art_sec03,
.art_sec04,
.art_sec06 { width: 1000px;}

.art_sec01,
.art_sec02,
.art_sec03,
.art_sec06 {min-height: 389px;}

.art_sec04 {min-height: 379px; margin: 50px auto 40px;}

.art_sec02,
.art_sec03,
.art_sec06 {margin: 40px auto 0;}


.img_box_l .num,
.img_box_r .num {font-size: 123px; top: -40px;}

.img_box_l .num {left: 15px;}

.img_box_r .num {right: 20px;}


.art_sec01 figure,
.art_sec02 figure,
.art_sec03 figure, 
.art_sec04 figure,
.art_sec06 figure {width: 485px;}


.sec_txt_box,
.sec_txt_box02 {width: 440px; transform: unset;}

.art_sec03 .sec_txt_box,
.art_sec06 .sec_txt_box02 {top: 76px;}

.art_sec01 .sec_txt_box02 {top: 78px;}

.art_sec02 .sec_txt_box,
.art_sec03 .sec_txt_box02 {top: 90px;}


.sec_txt_box h3,
.sec_txt_box02 h3 {font-size: 26px; gap: 6px; min-height: 30px; }

.sec_txt_box h3 span,
.sec_txt_box02 h3 span {padding: 0 8px;}

.sec_txt_box p,
.sec_txt_box02 p {font-size: 16px; margin: 30px 0 0; }

}





.sec_sub {width: 89.7vw; margin: 10vw auto 5.1vw;}

.box_h4 {width: 100%; border: 1px solid #BCA98B; margin: 0 0 5.1vw;}

.box_h4 h4 {font-size: 3.5vw; line-height: 1.42; font-weight: 600; color: #fff; background-color: #BCA98B; clip-path: polygon(0 0, 100% 0, 90% 100%, 0% 100%); width: 51.2vw; padding: 1vw 0 1vw 5.1vw;}

.box_h4 div {width: 79.4vw; display: flex; justify-content: space-between; align-items: center; margin: 5.1vw auto 6.6vw;}

.box_h4 figure {width: 25.6vw;}

.box_h4 figure img {width: 100%; height: auto;}

.box_h4 p {width: 48.7vw; font-family: "Noto Sans JP", sans-serif; font-weight: 400; font-size: 3.3vw; line-height: 1.538;}

@media screen and (min-width:769px){

.sec_sub {width: 73.2vw; margin: 2.4vw auto 5.1vw; display: flex; justify-content: space-between;}

.box_h4 {width: 35.5vw; margin: 0;}

.box_h4 h4 {font-size: 1vw; width: 14.6vw; padding: 0.3vw 0 0.3vw 1.4vw;}

.box_h4 div {width: 32vw; margin: 1.4vw auto 1.9vw;}

.box_h4 figure {width: 7.3vw;}

.box_h4 p {width: 23.8vw; font-size: 0.9vw; line-height: 1.4;}

}

@media screen and (min-width:1380px){

.sec_sub {width: 1000px; margin: 20px auto 40px;}

.box_h4 {width: 485px;}

.box_h4 h4 {font-size: 14px; width: 200px; padding: 4px 0 4px 20px;}

.box_h4 div {width: 445px; margin: 20px auto 26px;}

.box_h4 figure {width: 100px;}

.box_h4 p {width: 325px; font-size: 13px;}
}






/* ----------------------------------------------
 ! art02
 ---------------------------------------------- */


#art02 {background: url('../img/art02-bg.webp') bottom center / 100% no-repeat; background-color: #FFF8E8; padding: 15.3vw 0;}

.sec_art02 { margin: 0 auto; width: 79.5vw;}

.heading_art02 {font-size: 6.6vw; font-weight: 600; display: flex; flex-direction: column; width: 100%; align-items: center; margin: 0 auto 7.7vw;}

.heading_art02:before {content: ""; background: url('../img/shape.svg') center no-repeat; background-size: 100%; width: 6.1vw; height: 3.8vw; display: inline-block; margin: 0 0 3.3vw;}

.heading_art02:after {content: ""; background: url('../img/line.svg') center no-repeat; background-size: 100%; width:100%; height: 6.8vw; display: block; margin: 1.8vw 0 0;}

@media screen and (min-width:769px){

#art02 {background: url('../img/art02-bg_pc.webp') bottom center / 100% no-repeat; padding: 5.8vw 0 8.7vw;}

.sec_art02 { margin: 0 0 0 20.7vw; width: 33vw;}

.heading_art02 {font-size: 2.4vw; margin: 0 auto 2.2vw;}

.heading_art02:before {width: 2.5vw; height: 1.5vw; margin: 0 0 0.7vw;}

.heading_art02:after {height: 1.8vw; margin: 1vw 0 0;}
}

@media screen and (min-width:1380px){

#art02 {padding: 80px 0 120px;}

.sec_art02 { margin: 0 0 0 283px; width: 450px;}

.heading_art02 {font-size: 34px; margin: 0 auto 26px;}

.heading_art02:before {width: 35px; height: 21px; margin: 0 0 19px;}

.heading_art02:after {height: 32px; margin: 8px 0 0;}
}


.ill_case_box {display: flex; width: 100%; justify-content: space-between;}

.ill_case {width: 24.6vw; height: 24.6vw; background-color: #fff; border-radius: 50%; display: flex; align-items: center; justify-content: center; position: relative;}

.ill_case figure {width: 15.3vw;}

.ill_case img {width: 100%;}

.ill_case dt {position: absolute; bottom: -1vw; left: 50%; transform: translateX(-50%); font-size: 3.5vw; width: 100%; text-align: center;}


.art02_ul {margin: 11vw auto 0; width: 65.9vw;}

.art02_ul li {font-size: 4.6vw; margin: 0 0 4.8vw;}

.art02_ul li:last-of-type {margin: 0;}

.art02_ul li:before {content: ""; background: url('../img/check02.svg') center no-repeat; background-size: 100%; display: inline-block; width: 6.4vw; height: 6.4vw; margin: 0 3vw 0 0; vertical-align: text-bottom;}

@media screen and (min-width:769px){

.ill_case {width: 8.5vw; height: 8.5vw; }

.ill_case figure {width: 5.3vw;}

.ill_case dt {bottom: 0; font-size: 1.2vw;}


.art02_ul {margin: 3.6vw auto 0; width: 18.8vw;}

.art02_ul li {font-size: 1.3vw; margin: 0 0 1.2vw;}

.art02_ul li:before {width: 1.8vw; height: 1.8vw; margin: 0 0.8vw 0 0;}

}
@media screen and (min-width:1380px){

.ill_case {width: 117px; height: 121px; }

.ill_case figure {width: 73px;}

.ill_case dt {font-size: 16px;}


.art02_ul {margin: 54px auto 0; width: 257px;}

.art02_ul li {font-size: 18px; margin: 0 0 19px;}

.art02_ul li:before {width: 25px; height: 25px; margin: 0 12px 0 0;}
}






/* ----------------------------------------------
 ! art03
 ---------------------------------------------- */
 
 #art03 {padding: 0 0 20.5vw;}

.sec_art03 {width: 100%; margin: 14.3vw 0 0; display: flex; flex-direction: column; gap:5.1vw;}

.art03_point {width: 94.8vw; position: relative; display: flex; flex-direction: column;}

.art03_point:nth-child(odd) {align-self: flex-end;}

.art03_point:nth-child(odd) h3 {position: absolute; left: 13.5vw;}

.art03_point:nth-child(odd) div p {display: flex; align-items: end;}

.art03_point h3 {position: absolute; left: 5.1vw; bottom: 5.1vw; display: flex; flex-direction: column; gap:1vw; min-height: 17.9vw; justify-content: flex-end;}

.art03_point h3 span { font-size: 5.1vw; font-weight: 600; color: #9A835E; background-color: #fff; display: block; padding: 2vw 2.3vw; box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.1); width: fit-content;}

.art03_point div {display: flex; }

.art03_point div p { width: 8.2vw; color: #9A835E; display: flex; align-items: start; font-family: "Montserrat", sans-serif; font-size: 4.6vw; writing-mode: vertical-rl; font-weight: 400;}

.art03_point div figure { width: 86.6vw;}

.art03_point div img {width: 100%; height: auto;}

@media screen and (min-width:769px){

 #art03 {padding: 0 0 8.7vw;}

.sec_art03 {width: 72.9vw; margin: 6vw auto 0; flex-direction: row; flex-wrap: wrap; gap:1.9vw;}

.art03_point {width: 35.5vw;}

.art03_point:nth-child(odd) {align-self: unset;}

.art03_point:nth-child(odd) h3 {left: 5.2vw;}

.art03_point h3 {gap:1vw; min-height: 6.3vw; left: 1.8vw; bottom: 2.1vw;}

.art03_point h3 span { font-size: 1.9vw; padding: 0.7vw;}

.art03_point div p { width: 3vw; font-size: 1.4vw;}

.art03_point div figure { width: 32.5vw;}

}
@media screen and (min-width:1380px){

 #art03 {padding: 0 0 120px;}

.sec_art03 {width: 996px; margin: 55px auto 0; gap: 26px;}

.art03_point {width: 485px;}

.art03_point:nth-child(odd) h3 {left: 72px;}

.art03_point h3 {gap: 8px; min-height: 75px; left: 24px; bottom: 30px;}

.art03_point h3 span { font-size: 26px; padding: 10px;}

.art03_point div p { width: 42px; font-size: 20px;}

.art03_point div figure { width: 445px;}
}





/* ----------------------------------------------
 ! art04
 ---------------------------------------------- */

#art04 {background-color: #FFF8E8; padding: 0 0 17.2vw;}

.sec_b_a {width: 89.7vw; margin: 14.3vw auto 0;}

.b_a_box {display: flex; justify-content: space-between; position: relative;}

.b_a_box:after {content: "▶"; font-size: 4.6vw; position: absolute; top: 40%; left: 50%; transform: translate(-50%, -50%); color: #BCA98B;}

.b_a {width: 41vw; display: flex; flex-direction: column;}

.b_a dt figure {width: 100%;}

.b_a img {width: 100%; height: auto;}

.b_a p {font-size: 4.6vw; color: #9A835E; font-family: "Montserrat", sans-serif; text-align: center; line-height: 2; font-weight: 300;}

.art04_txt {font-family: "Noto Sans JP", sans-serif; font-weight: 400; font-size: 4.1vw; margin: 7.7vw 0 10.2vw; line-height: 1.7;}


.case_dl {display: flex; flex-direction: row; flex-wrap: wrap; width: 100%; font-size: 3.3vw; font-family: "Noto Sans JP", sans-serif; font-weight: 400; border-top: 1px solid #BCA98B;
border-bottom: 1px solid #BCA98B;}

.case_dl dt {background-color: #BCA98B; width: 25.1vw; color: #fff; padding: 4.6vw 5.6vw; display: flex; align-items: center; line-height: 1.6; border-bottom: 1px solid #D9C9AE;}

.case_dl dt:last-of-type {border: none;}

.case_dl dd {background-color: #fff; width: calc(100% - 25.1vw); padding: 4.6vw 5.1vw; display: flex; align-items: center; line-height: 1.8; border-bottom: 1px solid #D9C9AE;}

.case_dl dd:last-of-type {border: none;}

.case_dl dd strong {font-size: 4.6vw; font-weight: 500; color: #9A835E;}


@media screen and (min-width:769px){

#art04 {padding: 0 0 8.7vw;}

.sec_b_a {width: 73.2vw; margin: 5vw auto 0; display: flex; justify-content: space-between; position: relative;}

.b_a_box {width: 35.8vw; max-height: 15.3vw;}

.b_a_box:after {font-size: 1vw;}

.b_a {width: 16.4vw;}

.b_a p {font-size: 1.6vw;}

.art04_txt {width: 35.8vw; font-size: 1.2vw; margin: 0; position: absolute; top: 17.5vw; left: 0; }


.case_dl {width: 31.4vw; font-size: 1vw;}

.case_dl dt {width: 9.5vw; padding: 2.1vw 2.2vw;}

.case_dl dd {width: calc(100% - 9.5vw); padding: 2.1vw 2.2vw;}

.case_dl dd strong {font-size: 1.3vw;}
}
@media screen and (min-width:1380px){

#art04 {padding: 0 0 120px;}

.sec_b_a {width: 1000px; margin: 55px auto 0;}

.b_a_box {width: 490px;; max-height: 210px;}

.b_a_box:after {font-size: 19px;}

.b_a {width: 224px;}

.b_a p {font-size: 22px;}

.art04_txt {width: 490px; font-size: 16px; top: 240px;}


.case_dl {width: 430px; font-size: 13px;}

.case_dl dt {width: 130px; padding: 29px 30px;}

.case_dl dd {width: calc(100% - 130px); padding: 29px 30px;}

.case_dl dd strong {font-size: 18px;}
}




/* ----------------------------------------------
 ! art05
 ---------------------------------------------- */

#art05 {background: url('../img/art05-bg.webp') top center / 100% no-repeat; width: 100%; background-color: rgba(255, 255, 255, 0.7); padding: 0 0 20.5vw;}

.sec_art05 {width: 89.7vw; margin: 17.3vw auto 0; border-top: 1px solid #BCA98B; border-bottom: 1px solid #BCA98B;}

.faq {display: flex; flex-direction: column; font-size: 3.8vw; padding: 5.1vw 0; border-bottom: 1px solid #BCA98B;}

.faq:last-of-type {border-bottom: none;}

.faq dt {color: #9A835E; display: flex; align-items: flex-start; margin: 0 0 4.3vw; line-height: 1.7;}

.faq dt:before {content: "Q"; display: flex; justify-content: center; align-items: center; width: 7.7vw; height: 7.7vw; background-color: #9A835E; color: #fff; font-size: 4.6vw; font-family: "Montserrat", sans-serif; font-weight: 300; margin: 0 3.8vw 0 0;}

.faq dd {display: flex;}

.faq p {width: calc(100% - 11.5vw); line-height: 1.7; font-family: "Noto Sans JP", sans-serif; font-weight: 400;}

.faq dd:before {content: "A"; display: flex; justify-content: center; align-items: center; width: 7.7vw; height: 7.7vw; border: 1px solid #BCA98B; color: #BCA98B; font-size: 4.6vw;  font-family: "Montserrat", sans-serif; font-weight: 300; margin: 0 3.8vw 0 0;}

@media screen and (min-width:769px){

#art05 {background: url('../img/art05-bg_pc.webp') top center / 100% no-repeat; width: 100%; padding: 0 0 8.7vw;}

.sec_art05 {width: 73.2vw; margin: 7vw auto 0;}

.faq {font-size: 1.2vw; padding: 1.7vw 0; }

.faq dt {margin: 0 0 1vw;}

.faq dt:before,
.faq dd:before {width: 2.2vw; height: 2.2vw; font-size: 1.3vw; margin: 0 1.5vw 0 0;}

.faq  p {width: calc(100% - 3.7vw);}
}
@media screen and (min-width:1380px){

#art05 {padding: 0 0 120px;}

.sec_art05 {width: 1000px; margin: 76px auto 0;}

.faq {font-size: 16px; padding: 20px 0; }

.faq dt {margin: 0 0 10px;}

.faq dt:before,
.faq dd:before {width: 30px; height: 30px; font-size: 18px; margin: 0 15px 0 0;}

.faq  p {width: calc(100% - 45px);}
}




/* ----------------------------------------------
 ! art06
 ---------------------------------------------- */

#art06 {background-color: #FFF8E8; padding: 0 0 17.2vw;}

.slider { position:relative; z-index: 1; width: 89.7vw; min-height: 73.3vw; margin: 0 auto;}

.flow-block {width: 100%; margin: 0 auto; position: relative; padding: 10vw 0;}

.flow-block figure { width: 79.4vw; margin: auto;}

.flow-block img {width: 100%; height: auto;}

.flow-block span {font-family: "Montserrat", sans-serif; font-size: 23vw; font-weight: 200; color: #BCA98B; position: absolute; top: 0; left: 0;}

.slick-prev, 
.slick-next { position: absolute; z-index: 3; top: 35%; cursor: pointer; outline: none; height: 9.2vw; width: 9.2vw; background-color: #BCA98B; color: #fff; font-weight: 600;}

.slick-prev {left: 0;}

.slick-prev:before,
.slick-next:before { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); font-size: 3vw; line-height: 1; color: #fff;}

.slick-prev:before {content: ""; background: url('../img/arrow-left.svg') center no-repeat; background-size: 100%; display: inline-block; width: 1vw; height: 2vw;}

.slick-next:before {content: ""; background: url('../img/arrow-right.svg') center no-repeat; background-size: 100%; display: inline-block; width: 1vw; height: 2vw;}

.slick-next {right: 0;}

.slick-dots { display: flex; justify-content: center; list-style: none; padding: 0; position: absolute; bottom: 30vw; left: 50%; transform: translate(-50%);
width: 23.5vw; gap: 2vw;}

.slick-dots button { font-size: 0; width: 2vw; height: 2vw; background-color: #FFF9ED; border: none; border-radius: 50%; cursor: pointer; padding: 0;}

.slick-dots .slick-active button { background-color: #9A835E;}

.heading-slider {font-size: 5.1vw; font-weight: 600; text-align: center; margin: 3.8vw 0 0; line-height: 1.3;}

.heading-slider em {font-size: 4.6vw; display: block; font-style: normal;}

@media screen and (min-width:769px){

#art06 {padding: 0 0 8.7vw;}

.slider {width: 73.2vw; min-height: 27.5vw; margin: 0 auto;}

.flow-block {padding: 4.4vw 0;}

.flow-block figure { width: 26.4vw;}

.flow-block span {font-size: 7.6vw; top: 2vw; left: 3vw;}

.slick-prev, 
.slick-next {height: 2.6vw; width: 2.6vw; }

.slick-prev:before,
.slick-next:before {width: 0.3vw; height: 0.6vw;}

.slick-dots { bottom: 0; width: 3.2vw; gap: 0.7vw;}

.slick-dots button {width: 0.5vw; height: 0.5vw; background-color: #EFE2CD;}


.heading-slider {font-size: 1.7vw; margin: 3.8vw 0 0;}

.heading-slider em {font-size: 1.3vw;}
}
@media screen and (min-width:1380px){

#art06 {padding: 0 0 120px;}

.slider {width: 1000px; min-height: 377px;}

.flow-block {padding: 44px 0;}

.flow-block figure { width: 361px;}

.flow-block span {font-size: 105px; top: 8px; left: 47px;}

.slick-prev, 
.slick-next {height: 36px; width: 36px; }

.slick-prev:before,
.slick-next:before {width: 4px; height: 8px;}

.slick-dots { width: 44px; gap: 10px;}

.slick-dots button {width: 8px; height: 8px; }


.heading-slider {font-size: 24px; margin: 23px 0 0;}

.heading-slider em {font-size: 18px;}
}



/* ----------------------------------------------
 ! art07
 ---------------------------------------------- */

#art07 {background: url('../img/art07-bg01.webp') top center / 100% no-repeat, url('../img/art07-bg02.webp') bottom center / 100% no-repeat; background-color: rgba(255, 255, 255, 0.7); padding: 0 0 20.5vw;}

#art07 .title_en_jp p {color: #E6E4E4;}

.sec_art07 {width: 89.7vw; margin: 0 auto; font-family: "Noto Sans JP", sans-serif; font-weight: 400;}

.art07_txt {font-size: 3.5vw; color: #909090; line-height: 1.5; text-indent: -1.5em; padding: 0 0 0 1.5em;}

.art07_txt:before {content: "※"; margin: 0 2vw 0 0;}

@media screen and (min-width:769px){

#art07 {padding: 0 0 8.7vw;}

.sec_art07 {width: 73.2vw; margin: 0 auto; font-family: "Noto Sans JP", sans-serif; font-weight: 400;}

.art07_txt {font-size: 1vw; text-indent: 0; padding: 0;}

.art07_txt:before {margin: 0 0.4vw 0 0;}
}

@media screen and (min-width:1380px){

#art07 {padding: 0 0 120px;}

.sec_art07 {width: 1000px;}

.art07_txt {font-size: 14px;}

.art07_txt:before {margin: 0 12px 0 0;}
}


.sec_art07_box {width: 89.7vw; margin: 7.7vw auto; background-color: #fff; box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.1); padding: 10.2vw 5.1vw 7.2vw; display: flex; flex-direction: column;}

.sec_list h3 { background-color: #FFF8E8; line-height: 1.5; font-weight: 500; font-size: 4.6vw; text-align: center; padding: 2.5vw 0;}

.sec_list h4 {color: #9A835E; font-size: 4.6vw; font-weight: 400; text-indent: -2.5vw; padding: 5.1vw 0 1.3vw 4.1vw; line-height: 1.5;}

.sec_list h4:before {content: "■"; display: inline-block; font-size: 3.2vw; margin: 0 1.5vw 0 0;}

.sec_list p {font-size: 4.1vw; padding: 0 0 5.1vw; line-height: 1.7;}

.sec_list p:first-of-type {border-bottom: 1px solid #BCA98B;}

.sec_list:nth-of-type(2) p {padding: 5.1vw 0 15.3vw; border-bottom: none;}

.sec_list span {font-size: 7.1vw; margin: 0 0 0 2.8vw;}

.sec_list small {display: inline-block; font-size: 3.5vw;}


.price_list {width: 100%; border: 1px solid #BCA98B; margin: 0 0 15.4vw;}

.price_list dt { font-size: 3.5vw; color: #fff; font-family: "Noto Serif JP", serif; background-color: #BCA98B; clip-path: polygon(0 0, 100% 0, 90% 100%, 0% 100%); width: 51.2vw; padding: 1vw 0 1vw 3.8vw;}

.price_list dd { border: none!important;}

.price_list ul { font-size: 3.5vw; padding: 6.1vw 0 5.1vw 5.1vw; display: flex; flex-direction: row; flex-wrap: wrap;}

.price_list li {margin: 0 5.1vw 2.5vw 0;}

.price_list li:nth-last-of-type(-n+2) {margin-bottom: 0;}

.price_txt { width: 89.7vw; margin: auto;}

.price_txt h4 {color: #9A835E; font-weight: 400; font-size: 4.6vw; display: flex; align-items: anchor-center;}

.price_txt h4:before {content: "■"; display: inline-block; font-size: 3.2vw; margin: 0 1.5vw 0 0;}

.price_txt p {font-size: 4.1vw; line-height: 1.7; margin: 3.8vw 0 0;}


@media screen and (min-width:769px){
.sec_art07_box {width: 100%; margin: 1.4vw auto 2.2vw; padding: 2.9vw 0 2vw; flex-direction: row; justify-content: center; gap:1.8vw;}

.sec_list {width: 21.2vw;}

.sec_list h3 { font-size: 1.3vw; padding: 0.7vw 0;}

.sec_list h4 {font-size: 1.3vw; text-indent: -0.7vw; padding: 1.4vw 0 0.4vw 1.1vw;}

.sec_list h4:before {font-size: 0.7vw; margin: 0 0.4vw 0 0;}

.sec_list p {font-size: 1.2vw; padding: 0 0 1.4vw;}

.sec_list:nth-of-type(2) p {padding: 1.4vw 0 0;}

.sec_list span {font-size: 2vw; margin: 0 0 0 0.7vw;}

.sec_list small {font-size: 1vw;}


.price_list { margin: 0;}

.price_list dt { font-size: 1vw; width: 14.6vw; padding: 0.3vw 0 0.3vw 1.2vw;}

.price_list ul { font-size: 1vw; padding: 1.7vw 0 1.4vw 1.4vw;}

.price_list li {margin: 0 1.4vw 0.7vw 0;}


.price_txt { width: 100%;}

.price_txt h4 {font-size: 1.3vw;}

.price_txt h4:before {font-size: 0.7vw; margin: 0 0.4vw 0 0;}

.price_txt p {font-size: 1.2vw; margin: 1.2vw 0 0;}
}

@media screen and (min-width:1380px){

.sec_art07_box {margin: 20px auto 35px; padding: 40px 0 30px; gap: 25px;}

.sec_list {width: 290px;}

.sec_list h3 { font-size: 18px; padding: 10px 0;}

.sec_list h4 {font-size: 18px; text-indent: -10px; padding: 20px 0 5px 16px;}

.sec_list h4:before {font-size: 10px; margin: 0 6px 0 0;}

.sec_list p {font-size: 16px; padding: 0 0 20px;}

.sec_list:nth-of-type(2) p {padding: 20px 0 0;}

.sec_list span {font-size: 28px; margin: 0 0 0 11px;}

.sec_list small {font-size: 14px;}


.price_list { margin: 20px 0 0;}

.price_list dt { font-size: 14px; width: 200px; padding: 8px 0 6px 15px;}

.price_list ul { font-size: 14px; padding: 24px 0 20px 20px;}

.price_list li {margin: 0 20px 16px 0;}


.price_txt h4 {font-size: 18px;}

.price_txt h4:before {font-size: 10px; margin: 0 6px 0 0;}

.price_txt p {font-size: 16px; margin: 15px 0 0;}
}



/* ----------------------------------------------
 ! art08
 ---------------------------------------------- */

#art08 {background-color: #FFF8E8; padding: 0 0 20.5vw;}

.art08_img_box_l,
.art08_img_box_r { width: 100%; min-height: 100.7vw; position: relative;}

.art08_img_box_r {margin: 20.5vw 0 0;}

.art08_img_box_l figure,
.art08_img_box_r figure {width: 79.4vw; position: absolute; top: 0;}

.art08_img_box_l figure {left: 0;}

.art08_img_box_r figure {right: 0;}

.art08_img_box_l img,
.art08_img_box_r img {width: 100%; height: auto;}


.dr_name { min-width: 52.8vw; min-height: 29.7vw; background-color: #fff; box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.1); position: absolute; display: flex; flex-direction: column; justify-content: center; align-items: center;}

.dr_name dt { font-size: 3.3vw; font-family: "Noto Sans JP", sans-serif; font-weight: 400; margin: 0 0 2.5vw; min-width: 27.1vw;}

.dr_name dd { font-size: 5.6vw; color: #9A835E; min-width: 27.1vw; font-weight: 600;}

.art08_img_box_l .dr_name { right: 5.1vw; bottom: 5.1vw;}

.art08_img_box_r .dr_name { left: 5.1vw; bottom: 5.1vw; }



.sec_art08_sub {width: 79.5vw; margin: 7.9vw auto 0; font-family: "Noto Sans JP", sans-serif; font-weight: 400;}

.heading_art08 {font-size: 4.6vw; font-weight: 400; display: flex; align-items: center; border-bottom: 1px solid #BCA98B; padding: 0 0 3.8vw 0;}

.heading_art08:before {content: "■"; color: #BCA98B; font-size: 3.2vw; margin: 0 1.5vw 0 0;}

.sec_art08 p {font-size: 4.1vw; margin: 5.1vw 0 10.2vw; line-height: 1.7;}

.art08_biography {display: flex; flex-direction: row; flex-wrap: wrap; margin: 5.1vw 0 0; font-size: 4.1vw; line-height: 1.5;}

.art08_biography dt { color: #9A835E; min-width: 23vw;}

.art08_biography dd { margin: 0 0 3.8vw; width: calc(100% - 23vw);}

.art08_biography dd:last-of-type {margin: 0;}

@media screen and (min-width:769px){

#art08 {padding: 0 0 9.3vw;}

.sec_art08 { width: 73.2vw; margin: 4vw auto 0; display: flex; justify-content: center; gap: 7.3vw;}

.art08_item {width: 32.9vw;}


.art08_img_box_l,
.art08_img_box_r {min-height: 28.7vw;}
	
.art08_img_box_r {margin: 0;}


.art08_img_box_l figure,
.art08_img_box_r figure {width: 27vw; position: absolute; top: 0;}

.art08_img_box_l figure { left: auto; right: 0;}

.art08_img_box_r figure {right: 0;}


.dr_name { min-width: 15vw; min-height: 8.5vw; }

.dr_name dt { font-size: 1vw; margin: 0 0 1vw; min-width: 8vw;}

.dr_name dd { font-size: 1.6vw; min-width: 8vw;}

.art08_img_box_l .dr_name { right: auto; left: 0; bottom: 1.4vw;}

.art08_img_box_r .dr_name { left: 0; bottom: 1.4vw;}

	
.sec_art08_sub {width: 100%; margin: 2.5vw auto 0; }

.heading_art08 {font-size: 1.3vw; padding: 0 0 1.4vw 0;}

.heading_art08:before {font-size: 0.7vw; margin: 0 0.4vw 0 0;}

.sec_art08 p {font-size: 1.2vw; margin: 1.4vw 0 3.8vw;}

.art08_biography {margin: 1.4vw 0 0; font-size: 1.2vw;}

.art08_biography dt { min-width: 6.5vw;}

.art08_biography dd { width: calc(100% - 6.5vw); margin: 0 0 1.6vw;}

}
@media screen and (min-width:1380px){

#art08 {padding: 0 0 128px;}

.sec_art08 { width: 1000px; margin: 55px auto 0; gap: 100px;}

.art08_item {width: 450px;}


.art08_img_box_l,
.art08_img_box_r {min-height: 393px;}

.art08_img_box_l figure,
.art08_img_box_r figure {width: 370px; }


.dr_name { min-width: 206px; min-height: 116px; }

.dr_name dt { font-size: 13px; margin: 0 0 14px; min-width: 106px;}

.dr_name dd { font-size: 22px; min-width: 106px;}

.art08_img_box_l .dr_name,
.art08_img_box_r .dr_name { bottom: 20px;}

	
.sec_art08_sub {margin: 35px auto 0; }

.heading_art08 {font-size: 18px; padding: 0 0 19px 0;}

.heading_art08:before {font-size: 10px; margin: 0 6px 0 0;}

.sec_art08 p {font-size: 16px; margin: 20px 0 40px;}

.art08_biography {margin: 20px 0 0; font-size: 18px;}

.art08_biography dt { min-width: 90px;}

.art08_biography dd { width: calc(100% - 90px); margin: 0 0 15px;}
}


/* ----------------------------------------------
 ! art09
 ---------------------------------------------- */

#art09 {background-color: #fff; padding: 0 0 20.5vw;}

.sec_art09 {width: 89.7vw; margin: 0 auto;}

.sec_art09 figure {width: 100%;}

.sec_art09 figure img {width: 100%; height: auto;}

.heading_art09 { font-size: 5.1vw; font-weight: 600; margin: 10.2vw 0;}


#art09 .sec_list {box-shadow: none; padding: 0; font-family: "Noto Sans JP", sans-serif; font-weight: 400;}

#art09 .sec_list h4 {font-size: 4.6vw; padding: 6.4vw 0 0; text-indent: 0; display: flex; align-items: anchor-center;}

#art09 .sec_list h4:first-of-type {padding: 0;}

#art09 .sec_list p {padding: 2.5vw 0 6.4vw; border-bottom: 1px solid #BCA98B;}

#art09 .sec_list p:last-of-type {border: none;}

#art09 .sec_list p a {color: #1a1a1a;}

.parking-box {background-color: #FFF8E8; padding: 6.4vw 7.7vw; font-size: 3.8vw; margin: 0 0 2.5vw; line-height: 1.7; font-family: "Noto Sans JP", sans-serif; font-weight: 400;}

.parking-box ul {margin: 4.6vw 0 5.9vw;}

.parking-car,
.parking-bus {font-family: "Noto Serif JP", serif; font-weight: 600; font-size: 4.6vw; color: #9A835E; display: flex; align-items: center;}

.parking-car:before {content: ""; background: url('../img/icon-car.svg') center no-repeat; background-size: 100%; display: inline-block; width: 6.6vw; height: 4.3vw; margin: 0 2.5vw 0 0;}

.parking-bus:before {content: ""; background: url('../img/icon-bus.svg') center no-repeat; background-size: 100%; display: inline-block; width: 7.9vw; height: 4.3vw; margin: 0 2.5vw 0 0;}

@media screen and (min-width:769px){
#art09 {padding: 0 0 8.7vw;}

.sec_art09 {width: 73.2vw; margin: 4vw auto 0; display: flex; justify-content: space-between;}

.art09_item {width: 40.2vw}

.art09_item02 {width: 25.6vw;}

.heading_art09 { font-size: 1.4vw; margin: 2.9vw 0;}

#art09 .sec_list {width: 100%;}

#art09 .sec_list h4 {font-size: 1.3vw; padding: 1.8vw 0 0;}

#art09 .sec_list p { padding: 0.8vw 0 1.8vw;}


.parking-box {width: 100%; padding: 1.8vw; font-size: 1vw; margin: 0 0 0.7vw;}

.parking-box ul {margin: 1.2vw 0 1.5vw;}

.parking-car,
.parking-bus {font-size: 1.3vw; }

.parking-car:before {width: 1.9vw; height: 1.2vw; margin: 0 0.7vw 0 0;}

.parking-bus:before {width: 2.2vw; height: 1.2vw; margin: 0 0.7vw 0 0;}
}
@media screen and (min-width:1380px){

#art09 {padding: 0 0 120px;}

.sec_art09 {width: 1000px; margin: 55px auto 0;}

.art09_item {width: 550px;}

.art09_item02 {width: 350px;}

.heading_art09 { font-size: 20px; margin: 40px 0;}

#art09 .sec_list h4 {font-size: 18px; padding: 25px 0 0;}

#art09 .sec_list p {padding: 10px 0 25px;}


.parking-box {padding: 25px; font-size: 15px; margin: 0 0 10px;}

.parking-box ul {margin: 15px 0 21px;}

.parking-car,
.parking-bus {font-size: 18px;}

.parking-car:before {width: 26px; height: 17px; margin: 0 10px 0 0;}

.parking-bus:before {width: 31px; height: 17px; margin: 0 10px 0 0;}
}




.map {width: 100%; height: 60.5vw; margin: 15.3vw auto 0;}

.map_btn {width: 89.7vw; padding: 4.6vw 0; background-color: #fff; box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.1); margin: 5.1vw auto 0; opacity: 1; transition: opacity 0.3s ease-in-out;}

.map_btn:hover {opacity: 0.7;}

.map_btn a {text-decoration: none; display: block; width: 100%; height: 100%;}

.map_btn span {display: flex; align-items: center; justify-content: center; font-size: 3.5vw; color: #1a1a1a;}

.map_btn span:before {content: ""; background: url(../img/icon_map.svg) center no-repeat; background-size: 100%; display: inline-block; width: 5.9vw; height: 8.4vw; margin: 0 3.5vw 0 0;}

@media screen and (min-width:769px){

.map {height: 17.2vw; margin: 4.4vw auto 0;}

.map_btn {width: 100%; padding: 1.3vw 0; margin: 1.4vw auto 0;}

.map_btn span { font-size: 1vw;}

.map_btn span:before {width: 1.6vw; height: 2.4vw; margin: 0 1vw 0 0;}
}
@media screen and (min-width:1380px){

.map {height: 236px; margin: 60px auto 0;}

.map_btn {padding: 25px 0; margin: 20px auto 0;}

.map_btn span { font-size: 14px;}

.map_btn span:before {width: 23px; height: 33px; margin: 0 14px 0 0;}
}





.sec_calendar {margin: 15.3vw auto 0; font-family: "Noto Sans JP", sans-serif;}

.sec_calendar h4 {font-size: 4.6vw; color: #9A835E; font-weight: 400; display: flex; align-items: anchor-center;}

.sec_calendar h4:before {content: "■"; display: inline-block; font-size: 3.2vw; margin: 0 1.5vw 0 0;}

.sec_calendar p {font-size: 4.1vw; padding: 5.1vw 0 0; line-height: 1.7; font-weight: 400;}


.table-calendar {background-color: #FFF8E8; width: 100%; display: flex; justify-content: center; margin: 5.1vw 0 0;}

.table-calendar span {font-size: 4.1vw; font-family: "Noto Sans JP", sans-serif; font-weight: 400;}

.table-calendar tr {width: 79.5vw; display: flex; justify-content: space-between; align-items: center;}

.table-calendar tr:nth-of-type(1) {border-bottom: 1px solid #BCA98B; padding: 6.4vw 0 1.8vw;}

.table-calendar tr:nth-of-type(2) {padding: 3vw 0 5.3vw;}

.table-calendar th:first-of-type {min-width: 16.6vw;}

.table-calendar td {color: #BCA98B;}

@media screen and (min-width:769px){

.sec_calendar {margin: 4.4vw auto 0;}

.sec_calendar h4 {font-size: 1.3vw;}

.sec_calendar h4:before {font-size: 0.7vw; margin: 0 0.4vw 0 0;}

.sec_calendar p {font-size: 1.2vw; padding: 0.7vw 0 0;}


.table-calendar {margin: 1.4vw 0 0;}

.table-calendar span {font-size: 1.2vw;}

.table-calendar tr {width: 22.7vw;}

.table-calendar tr:nth-of-type(1) {padding: 1.4vw 0 0.3vw;}

.table-calendar tr:nth-of-type(2) {padding: 0.5vw 0 1.4vw;}

.table-calendar th:first-of-type {min-width: 4.8vw;}
}
@media screen and (min-width:1380px){

.sec_calendar {margin: 60px auto 0;}

.sec_calendar h4 {font-size: 18px;}

.sec_calendar h4:before {font-size: 10px; margin: 0 6px 0 0;}

.sec_calendar p {font-size: 16px; padding: 10px 0 0;}


.table-calendar {margin: 20px 0 0;}

.table-calendar span {font-size: 16px;}

.table-calendar tr {width: 310px;}

.table-calendar tr:nth-of-type(1) {padding: 20px 0 5px;}

.table-calendar tr:nth-of-type(2) {padding: 8px 0 20px;}

.table-calendar th:first-of-type {min-width: 61px;}
}


/* ----------------------------------------------
 ! art10
 ---------------------------------------------- */
#art10 {background: url('../img/art10-bg.webp') bottom center / 100% no-repeat; background-color: rgba(255, 248, 232, 0.7); padding: 0 0 20.5vw;}

.sec_art10 {width: 89.7vw; margin: 0 auto 12.3vw;}

.sec_art10 p {font-size: 4.1vw; font-family: "Noto Sans JP", sans-serif; font-weight: 400; margin: 0 0 8.2vw; line-height: 1.75;}

.sec_art10 p:last-of-type {margin: 0}

.con_box {width: 89.7vw; background-color: #9A835E; margin: 0 auto;}

.con_box:hover {opacity: 0.8; transition: 0.3s;}

.con_box a {color: #fff; font-size: 4.6vw; font-weight: 600; padding: 12vw 0; display: block; text-align: center; position: relative;}

.con_box a:after {content: ""; background: url('../img/arrow-con.svg') center no-repeat; background-size: 100%; display: inline-block; width: 3vw; height: 2vw; position: absolute; top: 50%; transform: translateY(-50%); right: 5.1vw;}

.copy {color: #9A835E; font-size: 2.8vw; display: block; text-align: center; padding: 11vw 0 42.5vw;}

@media screen and (min-width:769px){

#art10 {background: url('../img/art10-bg_pc.webp') bottom center / 100% no-repeat; background-color: rgba(255, 248, 232, 0.7); padding: 0 0 10vw;}

.sec_art10 {width: 58.5vw; margin: 0 auto 3.8vw;}

.sec_art10 p {font-size: 1.2vw; margin: 0 0 2.3vw;}

.con_box {width: 36.6vw;}

.con_box a {font-size: 1.3vw; padding: 3vw 0;}

.con_box a:after {width: 0.8vw; height: 0.6vw; right: 2.2vw;}

.copy {font-size: 0.8vw; padding: 3.6vw 0;}
}
@media screen and (min-width:1380px){

#art10 {padding: 0 0 120px; background-size: 90%;}

.sec_art10 {width: 800px; margin: 0 auto 52px;}

.sec_art10 p {font-size: 16px; margin: 0 0 37px;}

.con_box {width: 500px;}

.con_box a {font-size: 18px; padding: 42px 0;}

.con_box a:after {width: 12px; height: 8px; right: 30px;}

.copy {font-size: 11px; padding: 50px 0;}
}





