@charset "UTF-8";
.tp-menu img{width:100%;margin-bottom: 2vw;border-radius: 20px;}
.tp-menu li{background:#fff;padding: 8%;border-radius:20px;margin-bottom: 30px;}
.tp-menu .tit{font-weight:bold;text-align:center;font-size: 130%;margin-bottom:3%;}

.intro{margin-bottom:10%;}
.intro img{width:100%;margin-bottom:4vw;}

.recom{background:#fff;padding: 9%;border-radius:20px;margin-bottom:12vw;}
.recom .tit{font-weight:bold;font-size:120%;text-align:center;margin-bottom:3vw;}
.recom li{padding: 4% 3% 4% 7%;border-bottom:1px dashed #ccc;position:relative;line-height:1.5;}
.recom li:nth-last-child(1){border:none;}
.recom li:before{content: '\f058';font-family: 'icon';color:var(--blue);position:absolute;left:0;}

.features {margin-bottom:15vw;}
.features img{width:100%;}
.features li{margin-bottom:8vw;}
.features .tit{background:var(--beige);color:#fff;font-weight:bold;padding: 2% 3%;font-size:120%;margin-bottom:3%;line-height: 1.3;}

.naiyo{background: url(../../images/menu/t-bg.jpg) no-repeat top center, url(../../images/menu/b-bg.jpg) no-repeat bottom center, url(../../images/menu/m-bg.jpg) repeat-y center;background-size: contain;padding: 8%;margin-bottom:12vw;}
.naiyo li{background:#fff;padding:6%;border-radius: 20px;}
.naiyo li p:nth-last-child(1){margin-bottom:0;}
.naiyo li .sub{text-align:center;font-size:120%;margin-bottom:2%;font-weight:bold;color:var(--blue);}
.naiyo img{width:100%;margin:auto;}

.qabox {margin-bottom:15vw;}
.qabox dl{margin-bottom:6vw;}
.qabox dt{background:#fff;padding: 3% 5% 3% 12%;font-size: 110%;position:relative;line-height: 1.2;margin-bottom: 2vw;font-weight: bold;}
.qabox dt:before{content:"Q";position:absolute;left: 2%;top: 20%;width: 25px;height: 24px;background: #f8f2ea;text-align: center;padding-top: 3px;color:  var(--beige);    font-family: "Montserrat";font-optical-sizing: auto;font-weight: 400;}
.qabox dl p{line-height: 1.8;}

.price table{width:100%;border:1px solid #ccc;font-feature-settings: "palt";}
.price thead{background:var(--beige);color:#fff;}
.price thead th{border-left: 1px solid #e0cdb7;}
.price th,.price td{padding: 3% 2%;vertical-align: middle;text-align: center;line-height:1.5;}
.price tbody th{width: 42%;border-bottom:1px solid #ccc;}
.price tbody td{border: 1px solid #d4d4d4;}
.price tbody td:nth-last-child(1){width: 27%;}
.price tbody tr:nth-child(even) td{background: #f6f6f6;}
.price tbody tr:nth-child(odd) td{background:#fff;}


/* ============================================= pc
================================================*/
@media screen and (min-width: 736px) { 
.tp-menu img{width:65%;margin: 0 auto 10px;max-width:350px;}
.tp-menu {width: clamp(730px, 100%, 1200px);display: grid;gap: 0 30px;grid-template-columns: 1fr 1fr; margin-bottom: 30px;}

.qabox {margin-bottom:100px;}
.qabox dl{margin-bottom: 30px;}
.qabox dt{padding: 16px 20px 16px 50px;margin-bottom: 10px;font-size: 18px;}
.qabox dt:before{font-size:20px;padding-top: 0;height: 26px;left: 15px;top: 14px;}
.price tbody th{width: 40%;font-size:18px;min-width: 300px;}
.price th, .price td{padding: 10px 15px;}
.price thead th{font-size:18px;}

.naiyo{padding: 80px 60px;margin-bottom:100px;}
.naiyo li{padding:30px;}

.recom{padding: 50px 50px 30px 50px;margin-bottom: 60px;}
.recom .tit{margin-bottom: 20px;font-size: 24px;}
.recom li{border:none;background: #e0f2f4;padding: 8px 15px 8px 30px;border-radius: 40px;margin:0 10px 10px 0;}
.recom li:before{left:10px;}

.features{margin-bottom:100px;}
.features li{width: clamp(730px, 100%, 1200px);display: grid;gap: 0 30px;grid-template-columns: 1fr 2fr;margin-bottom: 30px;}
}

@media screen and (min-width:1000px) { 
.intro {display: -webkit-box;display: -webkit-flex;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-align-items: flex-start;align-items: flex-start;-webkit-box-pack: justify;justify-content: space-between;margin-bottom:40px;}
.intro .midashi02{text-align:left;}
.intro .txt{width:55%;position:relative;}
.intro .txt:before{content:"";width:1px;height:100%;background:#ccc;position:absolute;left:-20%;}
.recom ul{text-align:center;}
.recom li{display:inline-block;}

}

@media screen and (min-width:1200px) { 
.intro{margin-bottom:30px;}
.intro .txt{width:70%;}
.intro .txt:before{left:-10%;}
.intro .pic-white{background:#fff;}
.intro img{max-width:500px;margin:0 auto 30px;}
.features li{margin-bottom:40px;}
}