@charset "UTF-8";

/* 一覧
----------------------------------------------- */
.top-menu {position: relative;margin-top: 10vw;}
.top-menu .top-menu-head { margin: 0 auto 6vw; position: relative; }
.top-menu .top-menu-head-comment p { font-size: 3.6vw; text-align: center; line-height: 1.8; }
.top-menu .top-menu-items li { width: 100%; margin-bottom: 10vw; }
.top-menu .top-menu-item-image { width: 100%; margin: 0 auto 4vw; position: relative; }
.top-menu .top-menu-item-image .image { width: 100%; }
.top-menu .top-menu-item-image .badge { padding: 1vw 1.5vw; color: #fff; font-size: 3.4vw; background: var(--pink); position: absolute; top: 0; left: 0; }

.top-menu .top-menu-item-title { margin-bottom: 2.5vw; color: var(--pink); font-size: 5.2vw; font-family: var(--mincho); font-weight: 600; line-height: 1.4; }
.top-menu .top-menu-item-comment { margin-bottom: 4vw; }
.top-menu .top-menu-item-comment p { font-size: 3.6vw; text-align: justify; text-justify: inter-ideograph; font-feature-settings: "palt"; line-height: 1.8; letter-spacing: 0.04em; }


/* 詳細
----------------------------------------------- */
.intro{position: relative;margin-bottom: 10vw;}
.intro .imgbox{position: relative;margin-bottom: 5vw;}
.intro img{width: 100%;}
.intro img.deco{position: absolute;width: 9vw;top: -2vw;left: -3vw;}
.intro img.deco02{position: absolute;width: 28vw;top: 39vw;right: -8vw;}
.intro .text{padding: 0;}
.intro .read{color: var(--pink);margin-bottom: 2vw;font-size: 5.6vw;font-family: var(--mincho);line-height: 1.5;}
.intro p{padding: 0;}
.intro ul{padding: 0;}
.intro li{width: 100%;padding: 4vw;font-size: 3.6vw;font-weight: bold;line-height: 1.4;border-bottom: 1px dashed #c2c2c2;position: relative;}
.intro li:last-child{border-bottom: none;}
.intro li:before { content: '\e900'; color: var(--pink); font-size: 75%; font-family: 'icon'; position: absolute; top: 5vw; left: 0; }

.course{padding: 5%;background: var(--pink02);margin-bottom: 12vw;}
.course .ttl{color: var(--pink);font-weight: bold;text-align: center;font-size: 4.4vw;border-bottom: 1px solid #eebbc6;padding-bottom: 3vw;margin-bottom: 3vw;}
.course ul{padding: 0;}
.course li{background: #fff;padding: 4%;margin-bottom: 2vw;border-radius: 8px;text-align: center;}
.course li span{font-family: trajan-pro-3;font-optical-sizing: auto;display: block;color: var(--pink);text-align: center;}

.price{margin: 0 auto;}
.tbl02{width:100%;}
.tbl02_wra{border: 1px solid var(--pink);margin-bottom: 2vw;}
.tbl02 th,.tbl02 td{border-bottom:none;width:50%;line-height:1.5;padding: 3% 3%;}
.tbl02 th{background: var(--pink);color:#fff;vertical-align:middle;font-family:Marcellus,serif;font-size:4vw;}
.tbl02_name > *{display:block;text-align:center;line-height:1;}
.tbl02_name .jp{margin-bottom: 2vw;font-size: 4.4vw;font-weight:400;font-style:normal;line-height: 1.1;font-feature-settings: "palt";}
.tbl02_name .en{text-align:center;display:block;color:#fff;font-size: 70%;font-family: trajan-pro-3;font-optical-sizing: auto;opacity: 0.8;}
.tbl02 td{border:solid 1px #e6e6e6;vertical-align:middle;border-right:none;}
.tbl02 td:first-of-type{text-align: left;background: var(--pink02);color: var(--pink);border-left:none;}
.tbl02 td:nth-of-type(2){text-align:right; letter-spacing: .02em;}
.tbl02 tr:last-of-type td{border-bottom:none;}

.point{margin-bottom: 14vw;}
.point .ttl{font-size: 5vw;text-align: center;color: var(--pink);margin-bottom: 1vw;}
.point .sub{margin-bottom: 10vw;}
.point ul{margin: 0 auto;}
.point li{margin-bottom: 12vw;background: var(--pink02);position: relative;}
.point li:last-child{margin-bottom: 8vw;}
.point li .in{padding: 4% 4% 1%;}
.point li img{width: 100%;}
.point li .read{font-size: 3.6vw;text-align: center;background: var(--pink);font-weight: bold;border-radius: 40px;position: absolute;z-index: 1;width: 60%;padding: 1.5vw 0 1vw 0;color: #fff;font-family: trajan-pro-3;-moz-transform: translateX(-50%);-ms-transform: translateX(-50%);-webkit-transform: translateX(-50%);transform: translateX(-50%);left: 50%;top: -4vw;}
.point li p{text-align: center;}

.point .read{color: var(--pink);font-size: 4.6vw;font-family: var(--mincho);font-weight: 600;margin-bottom: 2vw;}


/* =============================================
pc-size
================================================*/
@media screen and (min-width: 736px) {

/* 一覧
----------------------------------------------- */
.top-menu {margin-top: 20px;}
.top-menu .top-menu:before { width: 742px; height: 544px; background: url(../images/top-menu-bg01-pc.png) no-repeat center bottom; background-size: 100%; right: 0; left: auto; }
.top-menu .top-menu:after { content: ''; width: 694px; height: 544px; background: url(../images/top-menu-bg02-pc.png) no-repeat center bottom; background-size: 100%; z-index: -1; position: absolute; bottom: 0; left: 0; mix-blend-mode: color-burn; }
.top-menu .top-menu-head { margin-bottom: 50px; }
.top-menu .top-menu-head-comment p { font-size: 16px; }
.top-menu .top-menu-items {display: -webkit-box;display: -webkit-flex;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: space-between;justify-content: space-between;gap: 0 30px;}
.top-menu .top-menu-items:before { content: ''; width: 380px; order: 1; }
.top-menu .top-menu-items:after { content: ''; width: 380px; }
.top-menu .top-menu-items li {padding-bottom: 30px;margin-bottom: 60px;position: relative;width: calc((100% - 60px) / 3);}
.top-menu .top-menu-items li:nth-child(3n+2) { -moz-transition-delay: 0.2s; -o-transition-delay: 0.2s; -webkit-transition-delay: 0.2s; transition-delay: 0.2s; }
.top-menu .top-menu-items li:nth-child(3n) { -moz-transition-delay: 0.4s; -o-transition-delay: 0.4s; -webkit-transition-delay: 0.4s; transition-delay: 0.4s; }
.top-menu .top-menu-item-image { margin-bottom: 20px; }
.top-menu .top-menu-item-image .badge { padding: 5px 8px; font-size: 14px; }
.top-menu .top-menu-item-title { margin-bottom: 5px; font-size: 22px; }
.top-menu .top-menu-item-comment { margin: 0; }
.top-menu .top-menu-item-comment p { font-size: 15px; }
.top-menu .top-menu-item-more { position: absolute; right: 0; bottom: 0; }


/* 詳細
----------------------------------------------- */
.intro{margin-bottom: 100px;display: -webkit-flex;display: flex;-webkit-justify-content: space-between;justify-content: space-between;-webkit-align-items: flex-start;align-items: flex-start;}
.intro .imgbox{margin: 0 0 0 4vw;order: 2;/* width: min(44%, 520px); */width: 100%;max-width: 520px;}
.intro img.main{box-shadow: 30px 30px var(--pink02);/* object-fit: cover; */.introimg{width: 100%;};}
.intro img.deco{width: 68px;top: -20px;left: -20px;}
.intro img.deco02{width: 180px;top: 240px;right: -40px;}
.intro .text{width: 100%;}
.intro .read{margin-bottom: 20px;font-size: clamp(20px, 2vw, 28px);}
.intro p{padding: 0;}
.intro ul{padding: 0;}
.intro li{padding: 16px 16px 16px 20px;font-size: 15px;}
.intro li:before {top: 20px;}

.course{padding: 40px;margin-bottom: 100px;}
.course .ttl{font-size: 20px;padding-bottom: 20px;margin-bottom: 20px;}
.course ul{display: -webkit-box;display: -webkit-flex;display: flex;-webkit-justify-content: flex-start;-webkit-flex-wrap: wrap;flex-wrap: wrap;gap: 20px 20px;}
.course li{padding: 20px;margin-bottom: 0;width: calc((100% - 40px) / 3);}
.course li span{font-family: trajan-pro-3;font-optical-sizing: auto;display: block;color: var(--pink);text-align: center;}

.price{margin: 0 auto;}
.tbl02{width:100%;}
.tbl02_wra{border: 1px solid var(--pink);margin-bottom: 2vw;}
.tbl02 th,.tbl02 td{padding: 16px;}
.tbl02 th{font-size: 20px;}
.tbl02_name .jp{margin-bottom: 10px;font-size: 22px;}

.point{margin-bottom: 100px;}
.point .ttl{font-size: 24px;margin-bottom: 10px;}
.point .sub{margin-bottom: 80px;text-align: center;}
.point ul{margin: 40px auto 0;display: -webkit-flex;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: center;justify-content: center;-webkit-align-items: flex-start;align-items: flex-start;gap: 0 40px;}
.point li{margin-bottom: 70px;width: calc((100% - 80px) / 3);}
.point li:last-child,.point li:nth-last-of-type(2){margin-bottom: 60px;}
.point li .in{padding: 20px 20px 0;}
.point li .read{font-size: 15px;width: 60%;padding: 6px 0;top: -20px;}
.point li .list{padding: 0;}
.point li .list span{padding: 14px 0 14px 23px;}
.point .read{font-size: 24px;margin-bottom: 20px;}


}