:root{
    /*content color*/
    --blue: #027cc4;
    --green: #24ab7f;
    --salmon: #ef6b71;
    --lightsalmon: #f98e75;
    --purple: #b3b3e2;
    --mint: #68b4ad;
    --lime: #f3ffd1;

    /*calendar color*/
    --spring: #fff3ff;
    --gw: #fffce9;
    --summer: #edfdff;
    --autumn: #fdf1eb;
    --winter: #edf2fb;
    --event: #f5ffdf;
    --special: #f98e75;
    --mark: #fbb5a5;

    --comp-660: 89.1891891891891vw;
    --comp-580: 78.3783783783783vw;
    --comp-540: 72.9729729729729vw;
    --comp-520: 70.2702702702702vw;
    --comp-500: 67.5675675675675vw;
    --comp-480: 64.8648648648648vw;
    --comp-400: 54.054054054054vw;
    --comp-360: 48.6486486486486vw;
    --comp-350: 47.2972972972972vw;
    --comp-340: 45.9459459459459vw;
    --comp-330: 44.5945945945945vw;
    --comp-300: 40.5405405405405vw;
    --comp-280: 37.83783783783784vw;
    --comp-260: 35.1351351351351vw;
    --comp-250: 33.7837837837837vw;
    --comp-240: 32.4324324324324vw;
    --comp-225: 30.4054054054054vw;
    --comp-220: 29.7297297297297vw;
    --comp-200: 27.027027027027vw;
    --comp-195: 26.3513513513513vw;
    --comp-190: 25.6756756756756vw;
    --comp-185: 25vw;
    --comp-180: 24.3243243243243vw;
    --comp-175: 23.6486486486486vw;
    --comp-170: 22.9729729729729vw;
    --comp-165: 22.2972972972972vw;
    --comp-160: 21.6216216216216vw;
    --comp-155: 20.9459459459459vw;
    --comp-150: 20.2702702702702vw;
    --comp-145: 19.5945945945945vw;
    --comp-140: 18.9189189189189vw;
    --comp-135: 18.2432432432432vw;
    --comp-130: 17.5675675675675vw;
    --comp-125: 16.8918918918918vw;
    --comp-120: 16.2162162162162vw;
    --comp-115: 15.5405405405405vw;
    --comp-110: 14.8648648648648vw;
    --comp-105: 14.1891891891891vw;
    --comp-100: 13.5135135135135vw;
    --comp-95: 12.83783783783783vw;
    --comp-90: 12.1621621621621vw;
    --comp-85: 11.48648648648648vw;
    --comp-80: 10.8108108108108vw;
    --comp-75: 10.13513513513513vw;
    --comp-70: 9.459459459459459vw;
    --comp-65: 8.738738738738738vw;
    --comp-60: 8.108108108108108vw;
    --comp-55: 7.432432432432432vw;
    --comp-50: 6.756756756756756vw;
    --comp-45: 6.081081081081081vw;
    --comp-40: 5.405405405405405vw;
    --comp-35: 4.729729729729729vw;
    --comp-30: 4.054054054054054vw;
    --comp-25: 3.378378378378378vw;
    --comp-20: 2.702702702702702vw;
    --comp-15: 2.027027027027027vw;
    --comp-10: 1.351351351351351vw;
    --comp-5: 0.6756756756756756vw;
    
    --comp-96: 12.97297297297297vw;
    --comp-88: 11.89189189189189vw;
    --comp-86: 11.62162162162162vw;
    --comp-68: 9.189189189189189vw;
    --comp-64: 8.648648648648648vw;
    --comp-62: 8.378378378378378vw;
    --comp-58: 7.837837837837837vw;
    --comp-57: 7.702702702702707vw;
    --comp-56: 7.567567567567567vw;
    --comp-54: 7.297297297297297vw;
    --comp-52: 7.027027027027027vw;
    --comp-48: 6.486486486486486vw;
    --comp-46: 6.216216216216216vw;
    --comp-44: 5.945945945945945vw;
    --comp-43: 5.81081081081081vw;
    --comp-42: 5.675675675675675vw;
    --comp-39: 5.270270270270270vw;
    --comp-38: 5.135135135135135vw;
    --comp-36: 4.864864864864864vw;
    --comp-34: 4.594594594594594vw;
    --comp-33: 4.459459459459459vw;
    --comp-32: 4.324324324324324vw;
    --comp-28: 3.783783783783783vw;
    --comp-27: 3.648648648648648vw;
    --comp-26: 3.513513513513513vw;
    --comp-24: 3.243243243243243vw;
    --comp-22: 2.972972972972972vw;
    --comp-21: 2.837837837837837vw;
    --comp-19: 2.567567567567567vw;
    --comp-18: 2.432432432432432vw;
    --comp-17: 2.297297297297297vw;
    --comp-16: 2.162162162162162vw;
    --comp-14: 1.891891891891891vw;
    --comp-13-5: 1.82432432432432432vw;
    --comp-12: 1.621621621621621vw;
    --comp-8: 1.08108108108108108vw;
    --comp-7: 0.94594594594594594vw;
    --comp-4: 0.54054054054054054vw;
    --comp-3: 0.40540540540540540vw;
}

img{ height: auto;}

/*-- heading --*/
.new-fee-ttlBox{ margin-bottom: 50px;}
.new-fee-ttlBox h1{ font-size: 58px; margin: 0 auto 25px; letter-spacing: 0.15em; font-family: "Noto Serif JP", serif; font-weight: 600; font-style: normal; text-align: center;}
.new-fee-ttlBox h1 span{ background: linear-gradient(to right, #5aaecf 0%, #8cd49c 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent;}
.new-fee-ttlBox .remarks{ color: #09a045; font-size: 16px; text-align: center; line-height: 1.8;}
.new-fee-ttlBox .remarks a{ color: var(--mint); text-decoration: underline; font-weight: bold;}

/*-- calendar --*/
.wrapCalendarAll{ border-bottom: 2px solid #d5d5d5; padding-bottom: 50px; margin-bottom: 90px;}
.wrapCalendarBtn{ display: flex; gap: 15px; margin: 0 auto 110px; justify-content: center;}
.wrapCalendarBtn .year{ width: 60px; text-align: center; font-size: 16px; font-weight: bold; margin-bottom: 10px;}
.wrapCalendarBtn .calendarBtnList{ display: flex; gap: 15px;}
.wrapCalendarBtn .calendarBtnList li{ aspect-ratio: 1 / 1;}
.wrapCalendarBtn .calendarBtnList li a{ display: flex; flex-direction: column; align-items: center; justify-content: center; color: #fff; position: relative; cursor: pointer; width: 100%; height: 100%; background-color: #999999; border-radius: 50%; width: auto; height: 60px; aspect-ratio: 1 / 1; text-align: center; font-size: 24px; font-weight: bold; transition: all ease 0.3s; padding: 0 5px; box-sizing: border-box; text-wrap: nowrap;}
.wrapCalendarBtn .calendarBtnList li a::after{ content: ""; display: block; opacity: 0; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); background-color: #999999; aspect-ratio: 1 / 1; width: 10px; border-radius: 50%; transition: all ease 0.3s;}
.wrapCalendarBtn .calendarBtnList li a.active{ background-color: var(--mint);}
.wrapCalendarBtn .calendarBtnList li a.active::after{ bottom: -20px; background-color:  var(--mint); opacity: 1;}
.wrapCalendarBtn .calendarBtnList li a small{ font-size: 12px;}
.wrapCalendarAll .wrapCalendar .innerCalendarBox{ display: none;}
.wrapCalendarAll .wrapCalendar .innerCalendarBox.active{ display: block;}
.wrapCalendarAll .wrapCalendar .calendarFlex{ display: flex; flex-wrap: wrap; gap: 4px; text-align: center;}
.wrapCalendarAll .wrapCalendar .calendarFlex > *{ width: calc((100% - 24px) / 7); display: block;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-week{ background-color: #cae5e2; line-height: 1.4; border-radius: 5px 5px 0 0; font-weight: bold; font-size: 12px; padding: 3px 10px; box-sizing: border-box; }
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day .innerBtn{ text-align: center; width: 100%; height: 100%; min-height: 115px;  box-sizing: border-box; padding: 10px 10px 30px; display: block; line-height: 1; position: relative;  margin: 0 !important; letter-spacing: 0 !important; border-radius: 5px; background-color: #fff;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day a.innerBtn{ cursor: pointer; transition: all ease 0.3s; background-color: #fff;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day span.innerBtn{ background-color: #f2f2f2;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day .innerBtn::before{ content: attr(data-day); display: block; width: 100%; text-align: center; font-size: 26px; font-weight: bold; line-height: 1; margin-bottom: 5px;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day a.innerBtn::after{ content: ""; aspect-ratio: 1 / 1; width: 8px; position: absolute; left: 50%; bottom: 10px; border-bottom: 2px solid #aed7d3; border-right: 2px solid #aed7d3; transform: translateX(-50%) rotate(45deg);}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day .innerBtn > span{ font-size: 12px; font-weight: bold; line-height: 1.4;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day a.innerBtn > span{ color: #2a958b;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-week:nth-child(6),
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day a.innerBtn[data-week="土"]::before{ color: #1675aa !important;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-week:nth-child(7),
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day .innerBtn[data-week="日"]::before{ color: #ef6b71 !important;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day .innerBtn[data-week="月・祝"]::before{ color: #ef6b71 !important;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day .innerBtn[data-week="火・祝"]::before{ color: #ef6b71 !important;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day .innerBtn[data-week="水・祝"]::before{ color: #ef6b71 !important;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day .innerBtn[data-week="木・祝"]::before{ color: #ef6b71 !important;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day .innerBtn[data-week="金・祝"]::before{ color: #ef6b71 !important;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day .innerBtn[data-week="土"]{ background-color: #f1f9fb;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day .innerBtn[data-week="日"]{ background-color: #fef4f4;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day .holiday{ background-color: #fef4f4 !important;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day .holiday::before{ color: #ef6b71 !important;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day .spring{ background-color: var(--spring) !important;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day .gw{ background-color: var(--gw) !important;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day .summer{ background-color: var(--summer) !important;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day .autumn{ background-color: var(--autumn) !important;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day .winter{ background-color: var(--winter) !important;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day .event{ background-color: var(--event) !important;}

.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day .special > span{ color: var(--special) !important;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day .mark{ border: 2px solid var(--mark); padding: 8px 6px 18px; }
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day .mark > span .band{ display: inline-block; background-color: var(--special); color: #fff; padding: 1px 7px 0px; margin-bottom: 2px; border-radius: 50px; font-size: 11px;}

/*-- tab --*/
.wrapTabBox{ margin-bottom: 60px;}
.tabList{ display: flex; gap: 20px;}
.tabList li{ flex: 1;}
.tabList li a{ display: flex; flex-direction: column; justify-content: center; align-items: center; width: 100%; height: 100%; background-color: #eef8f4; color: var(--mint); font-size: 18px; font-weight: bold; padding: 20px; box-sizing: border-box; border-radius: 10px; cursor: pointer; transition: all ease 0.3s; text-align: center;}
.tabList li.active a{ background-color: var(--mint); color: #fff; text-align: center;}
.tabList li.active a,
.tabList li a > span{ display: block;}
.tabList + .caution{ font-size: 14px; margin-top: 30px; }

/*-- contents --*/
/*container*/
.date-fee-box{ display: none; border-bottom: 2px solid #d5d5d5; padding-bottom: 50px; margin-bottom: 90px;}
.wrapTabContents *:first-child{ margin-top: 0 !important;}
.wrapTabContents *:last-child{ margin-bottom: 0 !important;}

/*heading*/
.date-fee-box > hgroup{ margin: 0 auto 40px; text-align: center;}
.date-fee-box .dateTtl,
.gradeTtl{ margin-bottom: 25px; text-align: center; }
.date-fee-box .dateTtl > span,
.gradeTtl > span{ background: linear-gradient(to right, #027cc4 0%, #09a045 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; font-size: 40px; letter-spacing: 0.15em; font-family: "Noto Serif JP", serif; font-weight: 600; }
.date-fee-box .dateTime{ font-size: 20px;}
.mintTtl{ font-size: 26px; text-align: center; font-weight: bold; color: var(--mint); margin: 70px auto 30px; }
.popup:has( + .mintTtl){ text-align: center; position: relative; line-height: 1; padding-bottom: 5px; margin: 70px auto 10px;}
.popup:has( + .mintTtl) span{ display: inline-block; min-width: 140px; padding: 5px 10px 3px; line-height: 1.6; border-radius: 50px; color: #fff; vertical-align: middle; font-size: 20px; font-weight: bold;}
.popup:has( + .mintTtl)::after{ content: ""; aspect-ratio: 8 / 5; width: 8px; clip-path: polygon(0 0, 100% 0, 50% 100%); position: absolute; bottom: 1px; left: 50%; transform: translateX(-50%);}
.popup + .mintTtl{ margin-top: 0;}
.mintTtl + .ttlCatch{ text-align: center; font-size: 18px; margin: 0 auto 40px;}

/*priceBox*/
.wrapPriceBox{ display: flex; flex-wrap: wrap; column-gap: 40px; row-gap: 70px;}
.wrapPriceBox .priceBox{ width: calc(50% - 20px); border-radius: 20px; box-sizing: border-box; padding: 40px 30px; display: flex; flex-direction: column; }
.wrapPriceBox .priceBox > hgroup{ margin-bottom: 20px;}
.wrapPriceBox .priceBox > hgroup h4{ font-size: 20px; text-align: center; font-weight: bold; }
.wrapPriceBox .priceBox > hgroup .popup{ text-align: center; position: relative; line-height: 1; padding-bottom: 5px; margin: 0 auto 10px;}
.wrapPriceBox .priceBox > hgroup .popup span{ display: inline-block; min-width: 114px; padding: 5px 10px 3px; line-height: 1.6; border-radius: 50px; color: #fff; vertical-align: middle; font-size: 16px; font-weight: bold;}
.wrapPriceBox .priceBox > hgroup .popup::after{ content: ""; aspect-ratio: 8 / 5; width: 8px; clip-path: polygon(0 0, 100% 0, 50% 100%); position: absolute; bottom: 1px; left: 50%; transform: translateX(-50%);}
.wrapPriceBox .priceBox p:not([class]){ font-size: 16px; line-height: 1.8; width: 100%;}
.wrapPriceBox .priceBox p.caution{ font-size: 14px; line-height: 1.8;}
.wrapPriceBox .priceBox p.caution-sp{ font-size: 14px; line-height: 1.8; color: var(--salmon);}
.wrapPriceBox .priceBox p:not([class]) a,
.wrapPriceBox .priceBox p.caution a{ color: var(--mint); text-decoration: underline; font-weight: bold;}
.wrapPriceBox .priceBox > figure{ width: 100%; margin-top: 1em;}
.wrapPriceBox .targetListBox{ border-radius: 10px; padding: 10px; background-color: #f2f2f2; margin-bottom: 25px;}
.wrapPriceBox .targetListBox:has( > ul > .ok){ background-color: #fff;}
.wrapPriceBox .targetListBox ul{ display: flex; flex-wrap: wrap; gap: 15px;}
.wrapPriceBox .targetListBox ul li{ text-wrap: nowrap; padding: 5px 15px 3px; line-height: 1.6; box-sizing: border-box; border-radius: 50px; background-color: #fff; font-weight: bold; font-size: 14px; color: #999999;}
.wrapPriceBox .targetListBox ul li.ok{ border: 1px solid var(--lightsalmon); padding: 4px 13px 2px; color: var(--lightsalmon);}
.wrapPriceBox .targetListBox:has( > ul > .ok) ul li:not([class]),
.wrapPriceBox .targetListBox:has( > ul > .ok) ul li.ng{ background-color: #f2f2f2; }
.wrapPriceBox .targetListBox ul li::after{ content: ""; aspect-ratio: 1 / 1; width: 0.9em; margin-left: 0.5em; display: inline-block;  background-image: url(../images/fee_m/top/icon-cross.svg); background-repeat: no-repeat; background-position: center center; background-size: contain; }
.wrapPriceBox .targetListBox ul li.ok::after{ background-image: url(../images/fee_m/top/icon-circle.svg); background-repeat: no-repeat; background-position: center center; background-size: contain;}
.wrapPriceBox .priceBox span.red{ color: var(--salmon);}
.wrapPriceBox .priceBox .indent01{ text-indent: -1em; padding-left: 1em; display: inline-block; font-size: inherit; line-height: inherit;}
.wrapPriceBox .priceBox .priceList{ display: flex; gap: 5px; margin: 30px auto 0; width: 100%; justify-content: center;}
.wrapPriceBox .priceBox .priceList li{ width: calc((100% - 5px) / 3); border-radius: 30px; background-color: #fff; padding: 20px 10px; box-sizing: border-box; text-align: center;}
.wrapPriceBox .priceBox .priceList li .price{ font-weight: bold; font-size: 28px; padding-bottom: 10px; margin-bottom: 10px; line-height: 1.4;}
.wrapPriceBox .priceBox .priceList li .price small{ font-size: 14px; }
.wrapPriceBox .priceBox .priceList li .text{ font-weight: bold; font-size: 16px; line-height: 1.4;}
.wrapPriceBox .priceBox .priceList li .text small{ font-weight: normal; font-size: 12px; line-height: inherit;}
.wrapPriceBox .priceBox .priceList:has( > li > .pickup)  li::before{ content: ""; display: block; height: calc(14px * 1.4); }
.wrapPriceBox .priceBox .priceList:has( > li > .pickup) li:has( > .pickup, .pickup-long)::before{ content: none;}
.wrapPriceBox .priceBox .priceList li .pickup{ font-size: 14px; font-weight: bold; text-align: center; color: var(--salmon); line-height: 1.4; }
.wrapPriceBox .priceBox .priceList li .pickup::before{ content: "＼"; margin-right: 0.3em;}
.wrapPriceBox .priceBox .priceList li .pickup::after{ content: "／"; margin-left: 0.3em;}
.wrapPriceBox .priceBox .priceList li .pickup-long { font-size: 14px; font-weight: bold; text-align: center; color: var(--salmon); line-height: 1.4; }
.wrapPriceBox .priceBox .priceList li .pickup-long::before{ content: " "; margin-right: 0;}
.wrapPriceBox .priceBox .priceList li .pickup-long::after{ content: " "; margin-left: 0;}
.wrapPriceBox .priceBox *:has( + .btn){ margin-bottom: 30px !important;}
.wrapPriceBox .priceBox .btn{ margin-top: auto; text-align: center; }
.wrapPriceBox .priceBox .btn:has(+ .btn) { margin-bottom: 0 !important;}
.wrapPriceBox .priceBox .btn + .btn{ margin-top: 30px !important;}
.wrapPriceBox .priceBox .btn a{ min-width: 280px; max-width: 100%; display: inline-block; position: relative; box-sizing: border-box; background-color: var(--mint); border-radius: 50px; color: #fff; font-weight: bold; font-size: 16px; padding: 15px 50px 13px 20px; text-align: left; transition: all ease 0.3s; border: 1px solid var(--mint);}
.wrapPriceBox .priceBox .btn a::after{ content: ""; display: block; width: 10px; height: 10px; border-top: 1px solid #fff; border-right: 1px solid #fff; position: absolute; top: 50%; right: 25px; transform: rotate(45deg) translateY(-50%); transition: all ease 0.3s;}
.wrapPriceBox .priceBox .feeAccordionBox{ background-color: #fff; border-radius: 10px; margin-top: 30px; padding: 15px 20px; box-sizing: border-box;}
.wrapPriceBox .priceBox .feeAccordionBtn a{ font-weight: bold; font-size: 16px; display: block; position: relative; box-sizing: border-box; padding-right: 25px; cursor: pointer;}
.wrapPriceBox .priceBox .feeAccordionBtn a .icon{ display: block; aspect-ratio: 1 / 1; width: 16px; position: absolute; top: 50%; transform: translateY(-50%); right: 0; transition: all ease 0.3s;}
.wrapPriceBox .priceBox .feeAccordionBtn a .icon::before,
.wrapPriceBox .priceBox .feeAccordionBtn a .icon::after{ content: ""; display: block; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); transition: all ease 0.3s;}
.wrapPriceBox .priceBox .feeAccordionBtn a .icon::before{ width: 100%; height: 2px; }
.wrapPriceBox .priceBox .feeAccordionBtn a .icon::after{ width: 2px; height: 100%; }
.wrapPriceBox .priceBox .feeAccordionBtn.active a .icon{ transform: translateY(-50%) rotate(180deg); }
.wrapPriceBox .priceBox .feeAccordionBtn.active a .icon::after{ transform: translate(-50%, -50%) scaleY(0); opacity: 0;}
.wrapPriceBox .priceBox .feeAccordionOpenBox{ padding-top: 13px; display: none; }
.wrapPriceBox .priceBox .lineTtl01{ font-size: 16px; font-weight: bold; margin: 30px auto 10px; line-height: 1.8;}
.wrapPriceBox .priceBox .lineTtl01 span{ background-image: linear-gradient(180deg, transparent 0%, transparent 60%, var(--lime) 60%, var(--lime) 100%); }
.wrapPriceBox .priceBox .lineTtl01 + .boldTtl{ margin-top: 0;}
.wrapPriceBox .priceBox .boldTtl{ margin: 20px auto 5px; font-size: 16px; line-height: 1.6; width: 100%;}
.wrapPriceBox .priceBox .dotList{ font-size: 16px; line-height: 1.6; }
.wrapPriceBox .priceBox .dotList li{ position: relative; padding-left: 1em;}
.wrapPriceBox .priceBox .dotList li::before{ content: ""; aspect-ratio: 1 / 1; width: 10px; border-radius: 50%; position: absolute; top: 0.7em; transform: translateY(-50%); left: 0; background-color: var(--purple);}
.wrapPriceBox .priceBox .dotList + .caution{ margin-top: 10px;}
.wrapPriceBox .priceBox .dotList li a{ color: var(--mint); text-decoration: underline; font-weight: bold;}
.wrapPriceBox .priceBox .dotList li .line{ background-image: linear-gradient(180deg, transparent 0%, transparent 60%, var(--lime) 60%, var(--lime) 100%); }
.wrapPriceBox .priceBox .bnrLink{ margin: 15px auto;}
.wrapPriceBox .priceBox .bnrLink a{ display: block; }
.wrapPriceBox .priceBox .bnrLink a img{ width: 100%; height: auto; display: block; }
.wrapPriceBox .priceBox .catch{ font-weight: bold; text-align: center; margin: 30px auto 0; font-size: 18px;}
.wrapPriceBox .priceBox figure.img{ width: 100%; margin: 30px auto;}
.wrapPriceBox .priceBox figure.img figcaption{ text-align: center; font-size: 16px; line-height: 1.4; margin-top: 10px;}
.wrapPriceBox .priceBox .specialPriceBox{ display: flex; flex-wrap: wrap; justify-content: center; align-items: baseline;}
.wrapPriceBox .priceBox .specialPriceBox .pickup{ width: 100%; text-align: center; color: var(--salmon); font-weight: bold;}
.wrapPriceBox .priceBox .specialPriceBox .pickup::before{ content: "＼"; margin-right: 0.3em;}
.wrapPriceBox .priceBox .specialPriceBox .pickup::after{ content: "／"; margin-left: 0.3em;}
.wrapPriceBox .priceBox .specialPriceBox .pickup-long{ width: 100%; text-align: center; color: var(--salmon); font-weight: bold;}
.wrapPriceBox .priceBox .specialPriceBox .pickup-long::before{ content: "＼"; margin-right: 0.3em;}
.wrapPriceBox .priceBox .specialPriceBox .pickup-long::after{ content: "／"; margin-left: 0.3em;}
.wrapPriceBox .priceBox .specialPriceBox .before,
.wrapPriceBox .priceBox .specialPriceBox .after{ display: inline-block; text-wrap: nowrap; font-weight: bold;}
.wrapPriceBox .priceBox .specialPriceBox .before{ font-size: 16px;}
.wrapPriceBox .priceBox .specialPriceBox .after{ font-size: 24px; background-image: linear-gradient(180deg, transparent 0%, transparent 60%, var(--lime) 60%, var(--lime) 100%); color: var(--salmon);}
.linkList{ display: flex; flex-wrap: wrap; width: 100%; gap: 40px; margin: 70px auto 0;}
.mintTtl + .linkList{ margin-top: 0;}
.linkList li{ width: calc(50% - 20px); aspect-ratio: 490 / 180;}
.linkList li a{ display: block; width: 100%; height: 100%; overflow: hidden; position: relative; box-sizing: border-box; padding: 30px 90px 30px 30px; background-color: #000;}
.linkList li a::after{ content: ""; display: block; aspect-ratio: 1 / 1; width: 18px; border-top: 4px solid #fff; border-right: 4px solid #fff; position: absolute; top: 50%; right: 30px; z-index: 3; transform: rotate(45deg) translateY(-50%);}
.linkList li a .img{ display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; z-index: 1; transition: 0.3s all ease;}
.linkList li a .text{ display: flex; flex-direction: column; justify-content: center; width: 100%; height: 100%; position: relative; z-index: 2; color: #fff; font-weight: bold; font-size: 24px; text-shadow: #000 0 0 20px;}
.linkList li.wide{ width: 100%; aspect-ratio: 1020 / 180;}
.linkList li.bnr{ width: calc(50% - 20px); aspect-ratio: 490 / 180; border: none;}
.linkList li.bnr.wide{ width: 100%; aspect-ratio: auto; }
.linkList li.bnr a{ padding: 0; background-color: transparent; transition: 0.3s all ease;}
.linkList li.bnr a img{ width: 100%; height: auto; display: block; }
.simpleBtn{ margin: 60px auto 0; text-align: center; }
.simpleBtn:has(+ .simpleBtn) { margin-bottom: 0;}
.simpleBtn + .simpleBtn{ margin-top: 30px;}
.simpleBtn a{ min-width: 400px; max-width: 100%; display: inline-block; position: relative; box-sizing: border-box; background-color: var(--mint); border-radius: 50px; color: #fff; font-weight: bold; font-size: 16px; padding: 15px 50px 13px 20px; text-align: left; transition: all ease 0.3s; border: 1px solid var(--mint);}
.simpleBtn a::after{ content: ""; display: block; width: 10px; height: 10px; border-top: 1px solid #fff; border-right: 1px solid #fff; position: absolute; top: 50%; right: 25px; transform: rotate(45deg) translateY(-50%); transition: all ease 0.3s;}
.calendarBackBtn{ margin: 60px auto 0; text-align: center;}
.calendarBackBtn a{ cursor: pointer; min-width: 400px; max-width: 100%; margin: 0 auto; box-sizing: border-box; width: auto; display: inline-block; position: relative;}
.calendarBackBtn a .inner{ display: flex; padding: 20px 55px 20px 25px; border: 1px solid var(--mint); border-radius: 100px; gap: 15px; position: relative; background-color: #fff; transition: all ease 0.3s;}
.calendarBackBtn a .icon{ aspect-ratio: 1 / 1; width: 24px; background-color: var(--mint); mask-image: url(../images/fee_m/top/icon-date.svg); mask-repeat: no-repeat; mask-composite: center center; mask-size: contain; transition: all ease 0.3s;}
.calendarBackBtn a .text{ width: calc(100% - 24px - 15px); font-size: 18px; font-weight: bold; color: var(--mint); text-align: left; transition: all ease 0.3s;}
.calendarBackBtn a::after{ content: ""; display: block; aspect-ratio: 1 / 1; width: 10px; border-top: 1px solid var(--mint); border-right: 1px solid var(--mint); position: absolute; top: 50%; right: 25px; transform: rotate(-45deg); transition: all ease 0.3s; }
.simpleBtnList{ display: flex; margin: 60px auto 0; gap: 130px; width: 100%; justify-content: center;}
.simpleBtnList li{ width: 400px;}
.simpleBtnList li a{ width: 100%; display: inline-block; position: relative; box-sizing: border-box; background-color: var(--mint); border-radius: 50px; color: #fff; font-weight: bold; font-size: 16px; padding: 15px 50px 13px 20px; text-align: left; transition: all ease 0.3s; border: 1px solid var(--mint);}
.simpleBtnList li a::after{ content: ""; display: block; width: 10px; height: 10px; border-top: 1px solid #fff; border-right: 1px solid #fff; position: absolute; top: 50%; right: 25px; transform: rotate(45deg) translateY(-50%); transition: all ease 0.3s;}
.mintBox{ background-color: #eef8f4; display: flex; flex-wrap: wrap; gap: 60px; border-radius: 20px; padding: 30px 30px; align-items: center; }
.mintBox + .linkList{ margin-top: 40px;}
.mintBox > .textBox{ width: calc(100% - 60px - 280px);}
.mintBox > .textBox .ttl{ color: #4cc4b8; font-size: 28px; margin-bottom: 15px; }
.mintBox > .textBox .innerTextBox > *:not(:last-child){ margin-bottom: 10px;}
.mintBox > .textBox .innerTextBox .caution{ font-size: 14px;}
.mintBox > figure{ width: 280px; border-radius: 10px; overflow: hidden; }
.mintBox > figure img{ display: block;}
.starList{ display: flex; flex-wrap: wrap;}
.starList li{ font-weight: bold; font-size: 18px; line-height: 1.8; width: 100%; text-indent: -1em; padding-left: 1em;}
.starList li:before{ content: "★"; color: var(--salmon);}

/*color*/
.popup.red:has( + .mintTtl) span,
.popup.red:has( + .mintTtl)::after{ background-color: var(--salmon);}
.popup.blue:has( + .mintTtl) span,
.popup.blue:has( + .mintTtl)::after{ background-color: var(--blue);}
.popup.green:has( + .mintTtl) span,
.popup.green:has( + .mintTtl)::after{ background-color: var(--green);}
.wrapPriceBox .priceBox.blue{ background-image: url(../images/fee_m/top/bg-blue.webp); background-repeat: repeat; background-position: center top;}
.wrapPriceBox .priceBox.green{ background-image: url(../images/fee_m/top/bg-green.webp); background-repeat: repeat; background-position: center top;}
.wrapPriceBox .priceBox.yellow{ background-image: url(../images/fee_m/top/bg-yellow.webp); background-repeat: repeat; background-position: center top;}
.wrapPriceBox .priceBox.blue > hgroup h4,
.wrapPriceBox .priceBox.blue .feeAccordionBtn a,
.wrapPriceBox .priceBox.blue .lineTtl01,
.wrapPriceBox .priceBox.blue .catch{ color: var(--blue);}
.wrapPriceBox .priceBox.green > hgroup h4,
.wrapPriceBox .priceBox.green .feeAccordionBtn a,
.wrapPriceBox .priceBox.green .lineTtl01,
.wrapPriceBox .priceBox.green .catch{ color: var(--green);}
.wrapPriceBox .priceBox.yellow > hgroup h4,
.wrapPriceBox .priceBox.yellow .feeAccordionBtn a,
.wrapPriceBox .priceBox.yellow .lineTtl01,
.wrapPriceBox .priceBox.yellow .catch{ color: var(--salmon);}
.wrapPriceBox .priceBox.blue > hgroup .popup span,
.wrapPriceBox .priceBox.blue > hgroup .popup::after,
.wrapPriceBox .priceBox.blue .feeAccordionBtn a .icon::before,
.wrapPriceBox .priceBox.blue .feeAccordionBtn a .icon::after{ background-color: var(--blue);}
.wrapPriceBox .priceBox.green > hgroup .popup span,
.wrapPriceBox .priceBox.green > hgroup .popup::after,
.wrapPriceBox .priceBox.green .feeAccordionBtn a .icon::before,
.wrapPriceBox .priceBox.green .feeAccordionBtn a .icon::after{ background-color: var(--green);}
.wrapPriceBox .priceBox.yellow > hgroup .popup span,
.wrapPriceBox .priceBox.yellow > hgroup .popup::after,
.wrapPriceBox .priceBox.yellow .feeAccordionBtn a .icon::before,
.wrapPriceBox .priceBox.yellow .feeAccordionBtn a .icon::after{ background-color: var(--salmon);}
.wrapPriceBox .priceBox.blue .priceList li .price{ color: var(--blue); border-bottom: 2px dotted var(--blue);}
.wrapPriceBox .priceBox.green .priceList li .price{ color: var(--green); border-bottom: 2px dotted var(--green);}
.wrapPriceBox .priceBox.yellow .priceList li .price{ color: var(--salmon); border-bottom: 2px dotted var(--salmon);}

/*option*/
.option{ margin: 0 auto 70px;}
.option figure{ max-width: 800px; margin: 0 auto 40px;}
.option .simpleBtnList{ display: flex; width: 800px; margin: 0 auto; gap: 35px;}
.option .simpleBtnList li:first-child{ width: 280px;}
.option .simpleBtnList li:last-child{ flex: 1;}
.option .simpleBtnList li a{ width: auto; min-width: 280px; max-width: 100%;}
.option .simpleBtnList li:last-child a{ width: 100%; }

/*-- ページトップ --*/
#page-top{ width: 60px; display:none; position:fixed; right: 20px; bottom: 22px; z-index:200;}
#page-top p{ margin:0; padding:0;}
#page-top p img{ width: 100%;}
#move-page-top{ text-decoration:none; display:block; cursor:pointer; transition: opacity 0.5s;}

/*-- hover --*/
@media (any-hover: hover) {
.wrapCalendarBtn .calendarBtnList li a:hover{ background-color: var(--mint);}
.wrapCalendarBtn .calendarBtnList li a:hover::after{ bottom: -20px; background-color:  var(--mint); opacity: 1;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day a:hover.innerBtn{ opacity: 0.7;}
.tabList li a:hover{ background-color: var(--mint); color: #fff; text-align: center; }
.wrapPriceBox .priceBox > p:not([class]) a:hover,
.wrapPriceBox .priceBox > p.caution a:hover{ text-decoration: none;}
.wrapPriceBox .priceBox .dotList li a:hover{ text-decoration: none;}
.wrapPriceBox .priceBox .btn a:hover,
.simpleBtn a:hover,
.simpleBtnList li a:hover{ color: var(--mint); background-color: #fff;}
.wrapPriceBox .priceBox .btn a:hover::after,
.simpleBtn a:hover::after,
.simpleBtnList li a:hover::after{ border-color: var(--mint);}
.linkList li a:hover .img{ transform: scale(1.1); opacity: 0.8;}
.linkList li.bnr a:hover{ opacity: 0.7;}
.calendarBackBtn a:hover .inner{ background-color: var(--mint);}
.calendarBackBtn a:hover .icon{ background-color: #fff; }
.calendarBackBtn a:hover .text{ color: #fff;}
.calendarBackBtn a:hover::after{ border-color: #fff; }
#move-page-top:hover{ opacity: 0.8;}
}

@media (any-hover: hover) and (width <= 750px){
.wrapCalendarBtn .calendarBtnList li a:hover::after{ bottom: calc(min(var(--comp-20), 20px) * (-1)); background-color:  var(--mint); opacity: 1;}
}

@media (width > 750px) {
.sp{ display: none !important;}
}

@media (width <= 750px) {
#container *{ scroll-margin-top: calc(60px + min(var(--comp-15), 15px));}
.pc{ display: none !important; white-space: pre!important;}

/*-- heading --*/
.new-fee-ttlBox{ margin-bottom: min(var(--comp-50), 50px);}
.new-fee-ttlBox h1{ font-size: min(var(--comp-52), 52px); margin: 0 auto min(var(--comp-30), 30px); }
.new-fee-ttlBox .remarks{ font-size: min(var(--comp-24), 16px); }

/*-- calendar --*/
.wrapCalendar{ max-height: 100vw; overflow-y: auto;}
.wrapCalendarAll{ padding-bottom: var(--comp-110); margin-bottom: min(var(--comp-65), 90px);}
.wrapCalendarBtn{  gap: min(var(--comp-20), 20px); margin: 0 auto min(var(--comp-80), 110px); }
.wrapCalendarBtn .year{ width: min(var(--comp-70), 70px); text-align: center; font-size: min(var(--comp-20), 20px); font-weight: bold; margin-bottom: min(var(--comp-10), 10px);}
.wrapCalendarBtn .calendarBtnList{ gap: min(var(--comp-20), 20px);}
.wrapCalendarBtn .calendarBtnList li a{ width: auto; height: min(var(--comp-70), 70px); max-height: 70px; font-size: min(var(--comp-30), 24px); padding: 0 var(--comp-5); }
.wrapCalendarBtn .calendarBtnList li a::after{ width: min(var(--comp-10), 10px); }
.wrapCalendarBtn .calendarBtnList li a.active::after{ bottom: calc(min(var(--comp-20), 20px) * (-1)); background-color:  var(--mint); }
.wrapCalendarBtn .calendarBtnList li a small{ font-size: min(var(--comp-20), 12px);}
.wrapCalendarAll .wrapCalendar .calendarFlex{ display: flex; flex-wrap: wrap; gap: 4px; text-align: center;}
.wrapCalendarAll .wrapCalendar .calendarFlex > *{ width: 100%; position: relative;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-week,
.wrapCalendarAll .wrapCalendar .calendarFlex .blank{ display: none;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day:has( > a.innerBtn)::after{  content: ""; aspect-ratio: 1 / 1; width: min(var(--comp-12), 8px); position: absolute; right: min(var(--comp-30), 30px); top: 50%; border-bottom: 2px solid #aed7d3; border-right: 2px solid #aed7d3; transform: translateY(-50%) rotate(45deg); z-index: 2;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day .innerBtn{ text-align: left; min-height: 0; padding: min(var(--comp-30), 30px) min(var(--comp-40), 40px) min(var(--comp-30), 30px) min(var(--comp-20), 20px); display: flex; align-items: center; line-height: 1; position: relative;  margin: 0 !important; letter-spacing: 0 !important; border-radius: 0; background-color: #fff;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day a.innerBtn{ cursor: pointer; transition: all ease 0.3s;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day span.innerBtn{ background-color: #f2f2f2;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day .innerBtn::before{ content: attr(data-day); display: inline-block; width: auto; text-align: left; font-size: min(var(--comp-26), 26px); margin-bottom: 0; order: 1;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day a.innerBtn::after,
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day .innerBtn::after{ content: "（" attr(data-week) "）"; aspect-ratio: auto; width: auto; position: relative; left: auto; bottom: auto; border: none; transform: translateX(0) rotate(0deg); font-weight: bold; font-size: min(var(--comp-16), 10px); order: 2;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day .innerBtn > span{ font-size: min(var(--comp-20), 16px); order: 3; display: block; width: calc(100% - min(var(--comp-100), 100px)); margin-left: auto;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-week:nth-child(6),
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day a.innerBtn[data-week="土"]::before,
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day a.innerBtn[data-week="土"]::after,
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day .innerBtn[data-week="土"]::after{ color: #1675aa !important;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-week:nth-child(7),
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day .innerBtn[data-week="日"]::before,
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day a.innerBtn[data-week="日"]::after,
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day .innerBtn[data-week="日"]::after,
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day .holiday::after{ color: #ef6b71 !important;}
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day .mark{ padding: calc(min(var(--comp-30), 30px) - 2px) calc(min(var(--comp-40), 40px) - 2px)  calc(min(var(--comp-30), 30px) - 2px) calc(min(var(--comp-20), 20px) - 2px); }
.wrapCalendarAll .wrapCalendar .calendarFlex .calendar-day .mark > span .band{ display: inline-block; background-color: var(--special); color: #fff; padding: 1px min(var(--comp-10), 10px) 0px; margin-bottom: 0; margin-right: min(var(--comp-10), 10px); border-radius: 50px; font-size: inherit;}

/*-- tab --*/
.wrapTabBox{ margin-bottom: min(var(--comp-100), 80px);}
.tabList{ display: flex; flex-wrap: wrap; gap: min(var(--comp-15), 15px);}
.tabList li{ flex: none; width: 100%;}
.tabList li a{ font-size: min(var(--comp-24), 18px); padding: min(var(--comp-25), 20px); border-radius: min(var(--comp-10), 10px); }
.tabList + .caution{ font-size: min(var(--comp-22), 14px); margin-top: min(var(--comp-30), 30px); }

/*-- contents --*/
/*container*/
.date-fee-box{ display: none; border-bottom: 2px solid #d5d5d5; padding-bottom: min(var(--comp-115), 50px); margin-bottom: min(var(--comp-60), 90px);}
.wrapTabContents *:first-child{ margin-top: 0 !important;}
.wrapTabContents *:last-child{ margin-bottom: 0 !important;}

/*heading*/
.date-fee-box > hgroup{ margin: 0 auto min(var(--comp-60), 40px);}
.date-fee-box .dateTtl,
.gradeTtl{ margin-bottom: min(var(--comp-30), 25px); }
.date-fee-box .dateTtl > span,
.gradeTtl > span{ font-size: min(var(--comp-43), 40px); }
.date-fee-box .dateTime{ font-size: min(var(--comp-28), 20px);}
.mintTtl{ font-size: min(var(--comp-36), 26px); margin: min(var(--comp-90), 70px) auto min(var(--comp-40), 30px); }
.popup:has( + .mintTtl){ text-align: center; position: relative; line-height: 1; padding-bottom: calc(min(var(--comp-12), 8px) * 10 / 12); margin: 70px auto 10px;}
.popup:has( + .mintTtl) span{ display: inline-block; min-width: 0; padding:  min(var(--comp-5), 5px) min(var(--comp-30), 30px) min(var(--comp-5), 5px); border-radius: 50px; font-size: min(var(--comp-28), 20px); }
.popup:has( + .mintTtl)::after{ content: ""; aspect-ratio: 12 / 10; width: min(var(--comp-12), 8px); }
.popup + .mintTtl{ margin-top: 0;}
.mintTtl + .ttlCatch{ text-align: center; font-size: min(var(--comp-26), 18px); margin: 0 auto min(var(--comp-40), 40px);}

/*priceBox*/
.wrapPriceBox{ column-gap: 0; row-gap: min(var(--comp-80), 70px);}
.wrapPriceBox .priceBox{ width: 100%; border-radius: min(var(--comp-20), 20px); box-sizing: border-box; padding: min(var(--comp-60), 40px) min(var(--comp-35), 30px); display: block;}
.wrapPriceBox .priceBox > hgroup{ margin-bottom: min(var(--comp-30), 20px);}
.wrapPriceBox .priceBox > hgroup h4{ font-size: min(var(--comp-32), 24px); }
.wrapPriceBox .priceBox > hgroup .popup{ padding-bottom: calc(min(var(--comp-12), 8px) * 10 / 12); margin: 0 auto min(var(--comp-15), 15px);}
.wrapPriceBox .priceBox > hgroup .popup span{ padding: min(var(--comp-5), 5px) min(var(--comp-10), 10px) min(var(--comp-5), 5px); border-radius: 50px; font-size: min(var(--comp-24), 16px);}
.wrapPriceBox .priceBox > hgroup .popup::after{ content: ""; aspect-ratio: 12 / 10; width: min(var(--comp-12), 8px); }
.wrapPriceBox .priceBox p:not([class]){ font-size: min(var(--comp-24), 16px);}
.wrapPriceBox .priceBox p.caution{ font-size: min(var(--comp-22), 14px);}
.wrapPriceBox .priceBox p.caution-sp{ font-size: min(var(--comp-22), 14px);}
.wrapPriceBox .targetListBox{ border-radius: min(var(--comp-10), 10px); padding: min(var(--comp-20), 10px); margin-bottom: min(var(--comp-30), 25px);}
.wrapPriceBox .targetListBox ul{ display: flex; flex-wrap: wrap; gap: 15px;}
.wrapPriceBox .targetListBox ul li{ text-wrap: nowrap; padding: min(var(--comp-5), 5px) min(var(--comp-15), 15px) min(var(--comp-5), 5px); border-radius: 50px; font-size: min(var(--comp-24), 16px); }
.wrapPriceBox .targetListBox ul li.ok{ padding: calc(min(var(--comp-5), 5px) - 1px) calc(min(var(--comp-15), 15px) - 1px) calc(min(var(--comp-5), 5px) - 1px);}
.wrapPriceBox .targetListBox ul li::after{ content: ""; aspect-ratio: 1 / 1; width: 0.9em; margin-left: 0.5em; display: inline-block;  background-image: url(../images/fee_m/top/icon-cross.svg); background-repeat: no-repeat; background-position: center center; background-size: contain; }
.wrapPriceBox .priceBox .indent01{ text-indent: -1em; padding-left: 1em; display: inline-block; font-size: inherit; line-height: inherit;}
.wrapPriceBox .priceBox .priceList{ display: flex; flex-wrap: wrap; gap: min(var(--comp-30), 30px); margin: min(var(--comp-50), 30px) auto 0; width: 100%; }
.wrapPriceBox .priceBox .priceList li{ width: 100%; border-radius: min(var(--comp-30), 30px); padding: min(var(--comp-25), 20px) min(var(--comp-20), 10px);}
.wrapPriceBox .priceBox .priceList li .price{ font-size: min(var(--comp-42), 28px); padding-bottom: min(var(--comp-15), 10px); margin-bottom: min(var(--comp-15), 10px);}
.wrapPriceBox .priceBox .priceList li .price small{ font-size: min(var(--comp-22), 14px); }
.wrapPriceBox .priceBox .priceList li .text{ font-size: min(var(--comp-24), 16px); }
.wrapPriceBox .priceBox .priceList li .text small{ font-size: min(var(--comp-22), 14px); }
.wrapPriceBox .priceBox .priceList:has( > li > .pickup) li::before{ content: none; }
.wrapPriceBox .priceBox .priceList:has( > li > .pickup) li:has( > .pickup)::before{ content: none;}
.wrapPriceBox .priceBox .priceList li .pickup{ font-size: min(var(--comp-22), 14px); }
.wrapPriceBox .priceBox .priceList li .pickup-long{ font-size: min(var(--comp-22), 14px); }
.wrapPriceBox .priceBox *:has( + .btn){ margin-bottom: min(var(--comp-60), 30px) !important;}
.wrapPriceBox .priceBox .btn + .btn{ margin-top: min(var(--comp-60), 30px) !important;}
.wrapPriceBox .priceBox .btn a{ min-width: 0; width: min(75vw, 560px); border-radius: min(var(--comp-45), 50px); font-size: min(var(--comp-24), 16px); padding: min(var(--comp-30), 15px) min(var(--comp-110), 50px) min(var(--comp-30), 13px) min(var(--comp-50), 20px); }
.wrapPriceBox .priceBox .btn a::after{ aspect-ratio: 1 / 1; width: min(var(--comp-20), 10px); height: auto; right: min(var(--comp-60), 40px); border-width: 2px; border-left: none; border-bottom: none;  }
.wrapPriceBox .priceBox .feeAccordionBox{ border-radius: min(var(--comp-10), 10px); margin-top: var(var(--comp-60), 30px); padding: min(var(--comp-30), 30px); }
.wrapPriceBox .priceBox .feeAccordionBtn a{ font-weight: bold; font-size: min(var(--comp-24), 16px); padding-right: min(var(--comp-30), 25px); }
.wrapPriceBox .priceBox .feeAccordionBtn a .icon{ display: block; aspect-ratio: 1 / 1; width: min(var(--comp-15), 16px); transform: translateY(-50%);}
.wrapPriceBox .priceBox .feeAccordionOpenBox{ padding-top: 13px; display: none; }
.wrapPriceBox .priceBox .lineTtl01{ font-size: min(var(--comp-24), 16px); margin: min(var(--comp-40), 30px) auto min(var(--comp-10), 10px); }
.wrapPriceBox .priceBox .boldTtl{ margin: min(var(--comp-20), 20px) auto min(var(--comp-5), 5px); font-size: min(var(--comp-24), 16px);}
.wrapPriceBox .priceBox .dotList{ font-size: min(var(--comp-24), 16px); }
.wrapPriceBox .priceBox .dotList li::before{ content: ""; aspect-ratio: 1 / 1; width: min(var(--comp-15), 10px); border-radius: 50%; position: absolute; top: 0.9em; transform: translateY(-50%); left: 0; background-color: var(--purple);}
.wrapPriceBox .priceBox .dotList + .caution{ margin-top: 10px;}
.wrapPriceBox .priceBox .dotList li a{ color: var(--mint); text-decoration: underline; font-weight: bold;}
.wrapPriceBox .priceBox .dotList li .line{ background-image: linear-gradient(180deg, transparent 0%, transparent 60%, var(--lime) 60%, var(--lime) 100%); }
.wrapPriceBox .priceBox .bnrLink{ margin: min(var(--comp-30), 15px) auto;}
.wrapPriceBox .priceBox .bnrLink a{ display: block; }
.wrapPriceBox .priceBox .bnrLink a img{ width: 100%; height: auto; display: block; }
.wrapPriceBox .priceBox .catch{ margin: min(var(--comp-40), 30px) auto 0; font-size: min(var(--comp-26), 18px);}
.wrapPriceBox .priceBox figure.img{ width: 100%; margin: min(var(--comp-40), 30px) auto min(var(--comp-20), 10px);}
.wrapPriceBox .priceBox figure.img figcaption{ text-align: center; font-size: min(var(--comp-24), 16px); line-height: 1.4; margin-top: min(var(--comp-15), 10px);}
.wrapPriceBox .priceBox .specialPriceBox{ display: flex; flex-wrap: wrap; justify-content: center; align-items: baseline;}
.wrapPriceBox .priceBox .specialPriceBox .before,
.wrapPriceBox .priceBox .specialPriceBox .after{ display: inline-block; text-wrap: nowrap; font-weight: bold;}
.wrapPriceBox .priceBox .specialPriceBox .before{ font-size: min(var(--comp-24), 16px);}
.wrapPriceBox .priceBox .specialPriceBox .after{ font-size: min(24px, 30px); }
.linkList{ gap: min(var(--comp-40), 40px); margin: min(var(--comp-70), 70px) auto 0;}
.linkList li{ width: 100%; }
.linkList li a{ padding: min(var(--comp-40), 30px) min(var(--comp-100), 90px) min(var(--comp-40), 30px) min(var(--comp-40), 30px);}
.linkList li a::after{ width: min(var(--comp-25), 18px); border-top: 2px solid #fff; border-right: 2px solid #fff; top: 50%; right: min(var(--comp-40), 30px); }
.linkList li a .text{ font-size: min(var(--comp-30), 24px); }
.linkList li.wide{ width: 100%; aspect-ratio: 490 / 180;}
.linkList li.bnr{ width: 100%; }
.linkList li.bnr.wide{ width: 100%; aspect-ratio: auto; }
.simpleBtn{ margin: min(var(--comp-60), 60px) auto 0; text-align: center; }
.simpleBtn:has(+ .simpleBtn) { margin-bottom: 0;}
.simpleBtn + .simpleBtn{ margin-top: 30px;}
.simpleBtn a{  min-width: 0; width: 100%; border-radius: min(var(--comp-45), 50px); font-size: min(var(--comp-24), 16px); padding: min(var(--comp-30), 15px) min(var(--comp-110), 50px) min(var(--comp-30), 13px) min(var(--comp-50), 20px);}
.simpleBtn a::after{ aspect-ratio: 1 / 1; width: min(var(--comp-20), 10px); height: auto; top: 50%; right: min(var(--comp-60), 40px); border-width: 2px; border-left: none; border-bottom: none; }
.calendarBackBtn{ margin: min(var(--comp-60), 60px) auto 0; }
.calendarBackBtn a{ min-width: 100%; }
.calendarBackBtn a .inner{ padding: min(var(--comp-30), 20px) min(var(--comp-70), 55px) min(var(--comp-30), 20px) min(var(--comp-40), 25px); border-radius: 50px; gap: min(var(--comp-20), 15px);}
.calendarBackBtn a .icon{ width: min(var(--comp-30), 24px); }
.calendarBackBtn a .text{ width: calc(100% - 24px - 15px); font-size: min(var(--comp-28), 18px); }
.calendarBackBtn a::after{ width: 10px; border-top: 2px solid var(--mint); border-right: 2px solid var(--mint); right: min(var(--comp-30), 30px); top: 47%;}
.simpleBtnList{ flex-wrap: wrap; margin: min(var(--comp-80), 60px) auto 0; gap: min(var(--comp-40), 40px); width: 100%; }
.simpleBtnList li{ width: 100%;}
.simpleBtnList li a{ width: 100%; border-radius: min(var(--comp-45), 45px); font-size: min(var(--comp-28), 16px); padding: min(var(--comp-30), 15px) min(var(--comp-100), 50px) min(var(--comp-30), 15px) min(var(--comp-50), 20px); }
.simpleBtnList li a::after{ top: 50%; right: 25px; }
.mintBox{ gap: min(var(--comp-40), 40px); border-radius: min(var(--comp-20), 20px); padding: min(var(--comp-60), 40px) min(var(--comp-35), 30px); align-items: center;}
.mintBox + .linkList{ margin-top: min(var(--comp-40), 40px);}
.mintBox > .textBox{ width: 100%; order: 2;}
.mintBox > .textBox .ttl{ font-size: min(var(--comp-32), 28px); margin-bottom: min(var(--comp-15), 15px);}
.mintBox > .textBox .innerTextBox > *:not(:last-child){ margin-bottom: min(var(--comp-10), 10px);}
.mintBox > .textBox .innerTextBox .caution{ font-size: min(var(--comp-22), 14px);}
.mintBox > figure{ width: 100%; border-radius: min(var(--comp-10), 10px); order: 1;}
.mintBox > figure img{ display: block;}
.starList{ display: flex; flex-wrap: wrap;}
.starList li{ font-weight: bold; font-size: min(var(--comp-26), 18px); line-height: 1.8; width: 100%; text-indent: -1em; padding-left: 1em;}
.starList li:before{ content: "★"; color: var(--salmon);}

/*color*/
.popup.red:has( + .mintTtl) span,
.popup.red:has( + .mintTtl)::after{ background-color: var(--salmon);}
.popup.blue:has( + .mintTtl) span,
.popup.blue:has( + .mintTtl)::after{ background-color: var(--blue);}
.popup.green:has( + .mintTtl) span,
.popup.green:has( + .mintTtl)::after{ background-color: var(--green);}
.wrapPriceBox .priceBox.blue{ background-image: url(../images/fee_m/top/bg-blue.webp); background-repeat: repeat; background-position: center top;}
.wrapPriceBox .priceBox.green{ background-image: url(../images/fee_m/top/bg-green.webp); background-repeat: repeat; background-position: center top;}
.wrapPriceBox .priceBox.yellow{ background-image: url(../images/fee_m/top/bg-yellow.webp); background-repeat: repeat; background-position: center top;}
.wrapPriceBox .priceBox.blue > hgroup h4,
.wrapPriceBox .priceBox.blue .feeAccordionBtn a,
.wrapPriceBox .priceBox.blue .lineTtl01,
.wrapPriceBox .priceBox.blue .catch{ color: var(--blue);}
.wrapPriceBox .priceBox.green > hgroup h4,
.wrapPriceBox .priceBox.green .feeAccordionBtn a,
.wrapPriceBox .priceBox.green .lineTtl01,
.wrapPriceBox .priceBox.green .catch{ color: var(--green);}
.wrapPriceBox .priceBox.yellow > hgroup h4,
.wrapPriceBox .priceBox.yellow .feeAccordionBtn a,
.wrapPriceBox .priceBox.yellow .lineTtl01,
.wrapPriceBox .priceBox.yellow .catch{ color: var(--salmon);}
.wrapPriceBox .priceBox.blue > hgroup .popup span,
.wrapPriceBox .priceBox.blue > hgroup .popup::after,
.wrapPriceBox .priceBox.blue .feeAccordionBtn a .icon::before,
.wrapPriceBox .priceBox.blue .feeAccordionBtn a .icon::after{ background-color: var(--blue);}
.wrapPriceBox .priceBox.green > hgroup .popup span,
.wrapPriceBox .priceBox.green > hgroup .popup::after,
.wrapPriceBox .priceBox.green .feeAccordionBtn a .icon::before,
.wrapPriceBox .priceBox.green .feeAccordionBtn a .icon::after{ background-color: var(--green);}
.wrapPriceBox .priceBox.yellow > hgroup .popup span,
.wrapPriceBox .priceBox.yellow > hgroup .popup::after,
.wrapPriceBox .priceBox.yellow .feeAccordionBtn a .icon::before,
.wrapPriceBox .priceBox.yellow .feeAccordionBtn a .icon::after{ background-color: var(--salmon);}
.wrapPriceBox .priceBox.blue .priceList li .price{ color: var(--blue); border-bottom: 2px dotted var(--blue);}
.wrapPriceBox .priceBox.green .priceList li .price{ color: var(--green); border-bottom: 2px dotted var(--green);}
.wrapPriceBox .priceBox.yellow .priceList li .price{ color: var(--salmon); border-bottom: 2px dotted var(--salmon);}

/*option*/
.option{ margin: 0 auto min(var(--comp-90), 70px);}
.option figure{ max-width: 100%; margin: 0 auto min(var(--comp-60), 40px);}
.option .simpleBtnList{ width: min(75vw, 560px);; flex-wrap: wrap; gap: min(var(--comp-40), 35px);}
.option .simpleBtnList li:first-child{ width: 100%;}
.option .simpleBtnList li:last-child{ flex: none;}
.option .simpleBtnList li a{ width: auto; min-width: 100%; max-width: 100%;}
.option .simpleBtnList li:last-child a{ width: 100%; }

/*-- ページトップ --*/
#page-top{ width:10vw; display:none; position:fixed; right: 1vw; bottom: 5vw; z-index:200;}
#page-top p{ margin:0; padding:0;}
#page-top p img{ width: 100%;}
#move-page-top{ text-decoration:none; display:block; cursor:pointer; transition: opacity 0.5s;}
}
