:where(.etumo-main){
  --color-mine-shaft: #363636;
  --color-white: #ffffff;
  --color-killarney: #3a6f44;
  --color-primrose: #d6eea1;
  --color-pistachio: #83be00;
  --color-mantis: #71c85f;
  --color-alto: #cecece;
  --color-blaze-orange: #ff6200;
  --color-yellow-sea: #ffb20c;
  --color-ochre: #d87c26;
  --color-beryl-green: #d6e7c6;
  --color-atomic-tangerine: #ff9757;
  --color-sulu: #cbec83;
  --color-tusk: #eaf5d3;
  --color-silver-chalice: #adadad;
  --color-frost: #ecf5d9;

  --content-width-desktop: 120rem;
  --content-width-mobile: calc((360 / 390) * 100vw);
  --content-width: min(var(--content-width-desktop), var(--content-width-mobile));

  --shadow-black: 0 .2rem .4rem 0 rgba(21, 21, 21, .1);
  --shadow-green: 0 0 .5rem .1rem var(--color-beryl-green);
  --shadow-float-black: drop-shadow(0 4px 4px rgba(0, 0, 0, .25));

  --letter-spacing: 0;
  --gradation-orange: linear-gradient(90deg, var(--color-blaze-orange) 0%, var(--color-yellow-sea) 100%);
  --hover-duration: .4s;
  --hover-scale-image: scale(1.1);
  --hover-opacity: .6;
  --hover-ease: ease-in-out;

  --icon-link-arrow: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" width="6" height="10" viewBox="0 0 6 11" fill="none"><path d="M3.72973 5.5L0 1.66667L1.13514 0.5L6 5.5L1.13514 10.5L0 9.33333L3.72973 5.5Z" fill="white"/></svg>');
  --icon-link-arrow-in-circle: url('data:image/svg+xml;charset=UTF-8,<svg width="6" height="8" viewBox="0 0 6 8" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M3.72973 4L0 0.933333L1.13514 0L6 4L1.13514 8L0 7.06667L3.72973 4Z" fill="white"/></svg>');
  --icon-circle-mail: url('data:image/svg+xml;charset=UTF-8,<svg width="30" height="30" viewBox="0 0 30 30" fill="none" xmlns="http://www.w3.org/2000/svg"><rect width="30" height="30" rx="15" fill="white"/><path d="M7.5 22.5C7.01875 22.5 6.60677 22.3286 6.26406 21.9859C5.92135 21.6432 5.75 21.2312 5.75 20.75V10.25C5.75 9.76875 5.92135 9.35677 6.26406 9.01406C6.60677 8.67135 7.01875 8.5 7.5 8.5H21.5C21.9812 8.5 22.3932 8.67135 22.7359 9.01406C23.0786 9.35677 23.25 9.76875 23.25 10.25V20.75C23.25 21.2312 23.0786 21.6432 22.7359 21.9859C22.3932 22.3286 21.9812 22.5 21.5 22.5H7.5ZM14.5 16.375L7.5 12V20.75H21.5V12L14.5 16.375ZM14.5 14.625L21.5 10.25H7.5L14.5 14.625ZM7.5 12V10.25V20.75V12Z" fill="%23FF9757"/></svg>');

  font-family: Noto Sans JP, sans-serif;
  line-height: normal;
  color: var(--color-mine-shaft);
}
:where(.etumo-main) *,
:where(.etumo-main) *:before,
:where(.etumo-main) *:after{letter-spacing:var(--letter-spacing, auto)}
:where(.etumo-main) img,
:where(.etumo-main) video{display:block;max-width:100%;height:auto}
:where(.etumo-main) a{color:var(--color-mine-shaft)}
:where(.etumo-main) a:hover{text-decoration:none}
:where(.etumo-main) a:hover img{opacity:1}
:where(.etumo-main) em{font-style:normal}
:where(.etumo-main) ol{position:unset}

/* ---------------- Contact ---------------- */
#contact .cmn-sec-2{padding:63px 20px 55px;margin-bottom:90px;color:#fff;background:url(../images/bg_contact.png) no-repeat center center/cover}
#contact .cmn-sec-2 .blks-1 .heading{margin-bottom:10px;color:#fff}
#contact .cmn-sec-2 .blks-1 .heading__main{margin-bottom:8px;font-size:2.4rem;line-height:1.5;text-align:center}
#contact .cmn-sec-2 .blks-1 .heading__sub{text-align:center}
#contact .cmn-sec-2 .blks-1 .txt{margin-bottom:46px;font-size:1.6rem;text-align:center}
#contact .cmn-sec-2 .blks-1 .btn a{display:flex;align-items:center;justify-content:center;width:396px;height:81px;margin:0 auto;font-size:2rem;color:#fff;background-color:#0000004d;border:solid 2px #fff;transition:opacity .3s}
#contact .cmn-sec-2 .blks-1 .btn a:hover{text-decoration:none;opacity:.8}
#contact .cmn-sec-2 .blks-1 .btn a span{position:relative;display:block;padding-left:72px}
#contact .cmn-sec-2 .blks-1 .btn a span:before{position:absolute;top:0;bottom:0;left:0;display:block;width:41px;height:37px;margin:auto 0;content:"";background:url(../images/icon_contact.png) no-repeat 0 0/100% 100%}
@media screen and (max-width: 767px){
  #contact .cmn-sec-2{padding:48px 16px;margin-bottom:60px}
  #contact .cmn-sec-2 .blks-1 .heading{margin-bottom:8px}
  #contact .cmn-sec-2 .blks-1 .heading__main{margin-bottom:6px;font-size:1.86rem}
  #contact .cmn-sec-2 .blks-1 .txt{margin-bottom:30px;font-size:1.38rem}
  #contact .cmn-sec-2 .blks-1 .btn a{width:auto;height:60px;font-size:1.62rem;border:solid 1px #fff}
  #contact .cmn-sec-2 .blks-1 .btn a span{padding-left:50px}
  #contact .cmn-sec-2 .blks-1 .btn a span:before{width:29px;height:26px}
}

/* ---------------- Utilities ---------------- */
@media screen and (min-width: 48em),print{.u-etumo-none-desktop{display:none}}
@media screen and (max-width: 47.99em){.u-etumo-none-mobile{display:none}}
.u-etumo-inline-block{display:inline-block}
.u-etumo-mt4{margin-top:.4rem}
.u-etumo-mt8{margin-top:.8rem}
.u-etumo-mt12{margin-top:1.2rem}
.u-etumo-mt16{margin-top:1.6rem}
.u-etumo-mt20{margin-top:2rem}
.u-etumo-mt24{margin-top:2.4rem}
.u-etumo-mt28{margin-top:2.8rem}
.u-etumo-mt32{margin-top:3.2rem}
.u-etumo-mt36{margin-top:3.6rem}
.u-etumo-mt40{margin-top:4rem}
.u-etumo-mt44{margin-top:4.4rem}
.u-etumo-mt48{margin-top:4.8rem}
.u-etumo-mt52{margin-top:5.2rem}
.u-etumo-mt56{margin-top:5.6rem}
.u-etumo-mt60{margin-top:6rem}
.u-etumo-mt64{margin-top:6.4rem}
.u-etumo-mt68{margin-top:6.8rem}
.u-etumo-mt72{margin-top:7.2rem}
.u-etumo-mt76{margin-top:7.6rem}
.u-etumo-mt80{margin-top:8rem}
.u-etumo-mt84{margin-top:8.4rem}
.u-etumo-mt88{margin-top:8.8rem}
.u-etumo-mt92{margin-top:9.2rem}
.u-etumo-mt96{margin-top:9.6rem}
.u-etumo-mt100{margin-top:10rem}

@media screen and (max-width: 47.99em){
  .u-etumo-mt4-mobile{margin-top:.4rem}
  .u-etumo-mt8-mobile{margin-top:.8rem}
  .u-etumo-mt12-mobile{margin-top:1.2rem}
  .u-etumo-mt16-mobile{margin-top:1.6rem}
  .u-etumo-mt20-mobile{margin-top:2rem}
  .u-etumo-mt24-mobile{margin-top:2.4rem}
  .u-etumo-mt28-mobile{margin-top:2.8rem}
  .u-etumo-mt32-mobile{margin-top:3.2rem}
  .u-etumo-mt36-mobile{margin-top:3.6rem}
  .u-etumo-mt40-mobile{margin-top:4rem}
  .u-etumo-mt44-mobile{margin-top:4.4rem}
  .u-etumo-mt48-mobile{margin-top:4.8rem}
  .u-etumo-mt52-mobile{margin-top:5.2rem}
  .u-etumo-mt56-mobile{margin-top:5.6rem}
  .u-etumo-mt60-mobile{margin-top:6rem}
  .u-etumo-mt64-mobile{margin-top:6.4rem}
  .u-etumo-mt68-mobile{margin-top:6.8rem}
  .u-etumo-mt72-mobile{margin-top:7.2rem}
  .u-etumo-mt76-mobile{margin-top:7.6rem}
  .u-etumo-mt80-mobile{margin-top:8rem}
  .u-etumo-mt84-mobile{margin-top:8.4rem}
  .u-etumo-mt88-mobile{margin-top:8.8rem}
  .u-etumo-mt92-mobile{margin-top:9.2rem}
  .u-etumo-mt96-mobile{margin-top:9.6rem}
  .u-etumo-mt100-mobile{margin-top:10rem}
}
@media screen and (min-width: 48em),print{
  .u-etumo-mt4-desktop{margin-top:.4rem}
  .u-etumo-mt8-desktop{margin-top:.8rem}
  .u-etumo-mt12-desktop{margin-top:1.2rem}
  .u-etumo-mt16-desktop{margin-top:1.6rem}
  .u-etumo-mt20-desktop{margin-top:2rem}
  .u-etumo-mt24-desktop{margin-top:2.4rem}
  .u-etumo-mt28-desktop{margin-top:2.8rem}
  .u-etumo-mt32-desktop{margin-top:3.2rem}
  .u-etumo-mt36-desktop{margin-top:3.6rem}
  .u-etumo-mt40-desktop{margin-top:4rem}
  .u-etumo-mt44-desktop{margin-top:4.4rem}
  .u-etumo-mt48-desktop{margin-top:4.8rem}
  .u-etumo-mt52-desktop{margin-top:5.2rem}
  .u-etumo-mt56-desktop{margin-top:5.6rem}
  .u-etumo-mt60-desktop{margin-top:6rem}
  .u-etumo-mt64-desktop{margin-top:6.4rem}
  .u-etumo-mt68-desktop{margin-top:6.8rem}
  .u-etumo-mt72-desktop{margin-top:7.2rem}
  .u-etumo-mt76-desktop{margin-top:7.6rem}
  .u-etumo-mt80-desktop{margin-top:8rem}
  .u-etumo-mt84-desktop{margin-top:8.4rem}
  .u-etumo-mt88-desktop{margin-top:8.8rem}
  .u-etumo-mt92-desktop{margin-top:9.2rem}
  .u-etumo-mt96-desktop{margin-top:9.6rem}
  .u-etumo-mt100-desktop{margin-top:10rem}
}
.u-etumo-mb4{margin-bottom:.4rem}
.u-etumo-mb8{margin-bottom:.8rem}
.u-etumo-mb12{margin-bottom:1.2rem}
.u-etumo-mb16{margin-bottom:1.6rem}
.u-etumo-mb20{margin-bottom:2rem}
.u-etumo-mb24{margin-bottom:2.4rem}
.u-etumo-mb28{margin-bottom:2.8rem}
.u-etumo-mb32{margin-bottom:3.2rem}
.u-etumo-mb36{margin-bottom:3.6rem}
.u-etumo-mb40{margin-bottom:4rem}
.u-etumo-mb44{margin-bottom:4.4rem}
.u-etumo-mb48{margin-bottom:4.8rem}
.u-etumo-mb52{margin-bottom:5.2rem}
.u-etumo-mb56{margin-bottom:5.6rem}
.u-etumo-mb60{margin-bottom:6rem}
.u-etumo-mb64{margin-bottom:6.4rem}
.u-etumo-mb68{margin-bottom:6.8rem}
.u-etumo-mb72{margin-bottom:7.2rem}
.u-etumo-mb76{margin-bottom:7.6rem}
.u-etumo-mb80{margin-bottom:8rem}
.u-etumo-mb84{margin-bottom:8.4rem}
.u-etumo-mb88{margin-bottom:8.8rem}
.u-etumo-mb92{margin-bottom:9.2rem}
.u-etumo-mb96{margin-bottom:9.6rem}
.u-etumo-mb100{margin-bottom:10rem}
@media screen and (max-width: 47.99em){
  .u-etumo-mb4-mobile{margin-bottom:.4rem}
  .u-etumo-mb8-mobile{margin-bottom:.8rem}
  .u-etumo-mb12-mobile{margin-bottom:1.2rem}
  .u-etumo-mb16-mobile{margin-bottom:1.6rem}
  .u-etumo-mb20-mobile{margin-bottom:2rem}
  .u-etumo-mb24-mobile{margin-bottom:2.4rem}
  .u-etumo-mb28-mobile{margin-bottom:2.8rem}
  .u-etumo-mb32-mobile{margin-bottom:3.2rem}
  .u-etumo-mb36-mobile{margin-bottom:3.6rem}
  .u-etumo-mb40-mobile{margin-bottom:4rem}
  .u-etumo-mb44-mobile{margin-bottom:4.4rem}
  .u-etumo-mb48-mobile{margin-bottom:4.8rem}
  .u-etumo-mb52-mobile{margin-bottom:5.2rem}
  .u-etumo-mb56-mobile{margin-bottom:5.6rem}
  .u-etumo-mb60-mobile{margin-bottom:6rem}
  .u-etumo-mb64-mobile{margin-bottom:6.4rem}
  .u-etumo-mb68-mobile{margin-bottom:6.8rem}
  .u-etumo-mb72-mobile{margin-bottom:7.2rem}
  .u-etumo-mb76-mobile{margin-bottom:7.6rem}
  .u-etumo-mb80-mobile{margin-bottom:8rem}
  .u-etumo-mb84-mobile{margin-bottom:8.4rem}
  .u-etumo-mb88-mobile{margin-bottom:8.8rem}
  .u-etumo-mb92-mobile{margin-bottom:9.2rem}
  .u-etumo-mb96-mobile{margin-bottom:9.6rem}
  .u-etumo-mb100-mobile{margin-bottom:10rem}
}
@media screen and (min-width: 48em),print{
  .u-etumo-mb4-desktop{margin-bottom:.4rem}
  .u-etumo-mb8-desktop{margin-bottom:.8rem}
  .u-etumo-mb12-desktop{margin-bottom:1.2rem}
  .u-etumo-mb16-desktop{margin-bottom:1.6rem}
  .u-etumo-mb20-desktop{margin-bottom:2rem}
  .u-etumo-mb24-desktop{margin-bottom:2.4rem}
  .u-etumo-mb28-desktop{margin-bottom:2.8rem}
  .u-etumo-mb32-desktop{margin-bottom:3.2rem}
  .u-etumo-mb36-desktop{margin-bottom:3.6rem}
  .u-etumo-mb40-desktop{margin-bottom:4rem}
  .u-etumo-mb44-desktop{margin-bottom:4.4rem}
  .u-etumo-mb48-desktop{margin-bottom:4.8rem}
  .u-etumo-mb52-desktop{margin-bottom:5.2rem}
  .u-etumo-mb56-desktop{margin-bottom:5.6rem}
  .u-etumo-mb60-desktop{margin-bottom:6rem}
  .u-etumo-mb64-desktop{margin-bottom:6.4rem}
  .u-etumo-mb68-desktop{margin-bottom:6.8rem}
  .u-etumo-mb72-desktop{margin-bottom:7.2rem}
  .u-etumo-mb76-desktop{margin-bottom:7.6rem}
  .u-etumo-mb80-desktop{margin-bottom:8rem}
  .u-etumo-mb84-desktop{margin-bottom:8.4rem}
  .u-etumo-mb88-desktop{margin-bottom:8.8rem}
  .u-etumo-mb92-desktop{margin-bottom:9.2rem}
  .u-etumo-mb96-desktop{margin-bottom:9.6rem}
  .u-etumo-mb100-desktop{margin-bottom:10rem}
}

/* ---------------- Headings ---------------- */
.etumo-head-02{width:fit-content;padding-bottom:.8rem;margin-inline:auto;color:var(--color-killarney);text-align:center;border-bottom:.4rem dotted var(--color-primrose);font-weight:700;line-height:1.4}
@media screen and (min-width: 48em),print{.etumo-head-02{font-size:3.6rem}}
@media screen and (max-width: 47.99em){.etumo-head-02{font-size:2.4rem}}
.etumo-head-02.etumo-head-02--white{color:var(--color-white);border-bottom-color:var(--color-white)}
@media screen and (min-width: 48em),print{.etumo-overview-01 .etumo-head-02{margin-left:0}}

/* ---------------- Sections & Layout ---------------- */
@media screen and (min-width: 48em),print{.etumo-section{padding-top:7rem;padding-bottom:7.2rem}}
@media screen and (max-width: 47.99em){.etumo-section{padding-top:3.8rem;padding-bottom:4.8rem}}
.etumo-section.etumo-section--lime{background-color:var(--color-tusk)}
.etumo-section.etumo-section--green{background-color:var(--color-mantis)}
.etumo-section.etumo-section--bottom-none{padding-bottom:0}
.etumo-section.etumo-section--gradation-green-to-white{background:linear-gradient(180deg,var(--color-frost) 0%,var(--color-white) 100%)}
.etumo-section.etumo-section--gradation-white-to-green{background:linear-gradient(180deg,var(--color-white) 19.5%,var(--color-frost) 83.24%)}
.etumo-layout{max-width:var(--content-width);margin-inline:auto}
.etumo-layout.etumo-layout--narrow{max-width:min(100rem,var(--content-width-mobile))}
.etumo-layout.etumo-layout--tiny{max-width:min(110rem,var(--content-width-mobile))}
.etumo-layout.etumo-layout--card-04{max-width:min(var(--content-width-desktop),84.6153846154%)}
.etumo-layout.etumo-layout--tiny-more{max-width:min(90rem,var(--content-width-mobile))}

/* ---------------- News ---------------- */
.etumo-news{font-weight:500;line-height:1.8}
.etumo-news__item{border-bottom:1px solid var(--color-alto)}
.etumo-news__link{display:grid}
@media screen and (min-width: 48em),print{.etumo-news__link{grid-template-columns:auto 1fr;align-items:center}}
.etumo-news:not(.etumo-news--pickup) .etumo-news__link{font-size:1.4rem}
@media screen and (min-width: 48em),print{.etumo-news:not(.etumo-news--pickup) .etumo-news__link{column-gap:8rem;padding-block:1.9rem}}
@media screen and (max-width: 47.99em){.etumo-news:not(.etumo-news--pickup) .etumo-news__link{padding-block:1.6rem}}
.etumo-news.etumo-news--pickup .etumo-news__link{border-radius:.6rem;box-shadow:0 0 .6rem 1px var(--color-beryl-green)}
@media screen and (min-width: 48em),print{.etumo-news.etumo-news--pickup .etumo-news__link{column-gap:5rem;padding:2.2rem 1.6rem 2.2rem 1.4rem;font-size:1.6rem}}
@media screen and (max-width: 47.99em){.etumo-news.etumo-news--pickup .etumo-news__link{padding:1rem;font-size:1.4rem}}
.etumo-news__time{font-weight:400}
@media (hover: hover){
  .etumo-news__text:is(:where(:any-link,:enabled,summary):hover *){text-decoration:underline}
}
.etumo-news__text:is(:where(:any-link,:enabled,summary):focus-visible *){text-decoration:underline}

/* ---------------- Link Buttons ---------------- */
.etumo-link{
  display:grid;grid-template-columns:1fr auto;column-gap:1rem;align-items:center;
  width:100%;padding:.8rem 2rem .8rem 7.2rem;font-size:1.6rem;font-weight:700;line-height:2;
  color:var(--color-white);border-radius:9999px;box-shadow:var(--shadow-black)
}
@media screen and (min-width: 48em),print{.etumo-link{font-size:1.6rem}}
@media screen and (max-width: 47.99em){.etumo-link{font-size:1.4rem}}
.etumo-link:after{
  width:.6rem;height:1rem;content:"";background-color:currentColor;
  -webkit-mask-image:var(--icon-link-arrow);mask-image:var(--icon-link-arrow);
  -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
  -webkit-mask-position:center;mask-position:center;
  -webkit-mask-size:contain;mask-size:contain
}
.etumo-link.etumo-link--emphasis{
  background-image:linear-gradient(90deg,var(--color-blaze-orange) 0%,var(--color-yellow-sea) 51%,var(--color-blaze-orange) 100%);
  background-size:200% auto;transition:background-position var(--hover-duration) var(--hover-ease)
}
@media (hover: hover){
  .etumo-link.etumo-link--emphasis:where(:any-link,:enabled,summary):hover{background-position:right center}
}
.etumo-link.etumo-link--emphasis:where(:any-link,:enabled,summary):focus-visible{background-position:right center}
.etumo-link:not(.etumo-link--emphasis){background-color:var(--color-pistachio);transition:background-color var(--hover-duration)}
@media (hover: hover){
  .etumo-link:not(.etumo-link--emphasis):where(:any-link,:enabled,summary):hover{background-color:var(--color-killarney)}
}
.etumo-link:not(.etumo-link--emphasis):where(:any-link,:enabled,summary):focus-visible{background-color:var(--color-killarney)}
.etumo-link.etumo-link--anchor:after{transform:rotate(90deg)}
@media screen and (min-width: 48em),print{.etumo-mv .etumo-link{max-width:35.5rem}}
@media screen and (max-width: 47.99em){.etumo-mv .etumo-link{padding:.3rem .8rem .3rem 1.6rem}}
.etumo-link:not(.etumo-mv .etumo-link){max-width:22.4rem;margin-inline:auto}
@media screen and (min-width: 48em),print{
  .etumo-mv.etumo-mv--apply .etumo-link,
  .etumo-mv.etumo-mv--reserve .etumo-link,
  .etumo-mv.etumo-mv--ecolife .etumo-link,
  .etumo-mv.etumo-mv--mynum .etumo-link{margin-top:4rem}
}
@media screen and (max-width: 47.99em){
  .etumo-mv.etumo-mv--apply .etumo-link,
  .etumo-mv.etumo-mv--reserve .etumo-link,
  .etumo-mv.etumo-mv--ecolife .etumo-link,
  .etumo-mv.etumo-mv--mynum .etumo-link{max-width:22.4rem}
}
@media screen and (max-width: 47.99em){.etumo-mv.etumo-mv--apply .etumo-link{margin-top:17.7rem}}
@media screen and (min-width: 48em),print{.etumo-mv.etumo-mv--reserve .etumo-link{margin-left:6rem}}
@media screen and (max-width: 47.99em){.etumo-mv.etumo-mv--reserve .etumo-link{margin-top:19.3rem}}
@media screen and (min-width: 48em),print{.etumo-mv.etumo-mv--ecolife .etumo-link{margin-left:5rem}}
@media screen and (max-width: 47.99em){.etumo-mv.etumo-mv--ecolife .etumo-link{margin-top:2.8rem;margin-left:7.6rem}}
@media screen and (min-width: 48em),print{.etumo-mv.etumo-mv--mynum .etumo-link{margin-left:15.4rem}}
@media screen and (max-width: 47.99em){.etumo-mv.etumo-mv--mynum .etumo-link{margin-top:14.2rem;margin-left:4.4rem}}

/* ---------------- QA ---------------- */
.etumo-qa{display:grid;row-gap:2rem}
.etumo-qa__item{overflow:hidden;border-radius:.6rem;box-shadow:var(--shadow-black)}
.etumo-qa__question,.etumo-qa__answer{display:grid;grid-template-columns:auto 1fr;grid-auto-flow:column;column-gap:1.2rem}
@media screen and (min-width: 48em),print{.etumo-qa__question,.etumo-qa__answer{font-size:1.8rem}}
@media screen and (max-width: 47.99em){.etumo-qa__question,.etumo-qa__answer{font-size:1.4rem}}
.etumo-qa__question{align-items:center;font-weight:700;background-color:var(--color-sulu)}
@media screen and (min-width: 48em),print{.etumo-qa__question{padding:1.4rem 2rem}}
@media screen and (max-width: 47.99em){.etumo-qa__question{padding:1.2rem}}
.etumo-qa__answer{line-height:1.8;background-color:var(--color-white)}
@media screen and (min-width: 48em),print{.etumo-qa__answer{padding:2.2rem 2rem}}
@media screen and (max-width: 47.99em){.etumo-qa__answer{padding:1rem 1.2rem}}
.etumo-qa__icon{display:grid;place-content:center;aspect-ratio:1/1;line-height:1;border-radius:9999px}
@media screen and (min-width: 48em),print{.etumo-qa__icon{width:3.2rem;font-size:2rem}}
@media screen and (max-width: 47.99em){.etumo-qa__icon{width:2.7rem;font-size:1.4rem}}
.etumo-qa__question .etumo-qa__icon{background-color:var(--color-white)}
.etumo-qa__answer .etumo-qa__icon{color:var(--color-white);background-color:var(--color-pistachio)}
.etumo-qa__question-inner{display:grid}
@media screen and (min-width: 48em),print{.etumo-qa__question-inner{grid-template-columns:auto 1fr;column-gap:1.4rem;align-items:center}}
@media screen and (max-width: 47.99em){.etumo-qa__question-inner{row-gap:.4rem}}
.etumo-qa__tag{display:grid;align-items:center;width:fit-content;height:fit-content;font-weight:400;line-height:1;color:var(--color-killarney);background-color:var(--color-frost);border-radius:.4rem}
@media screen and (min-width: 48em),print{.etumo-qa__tag{padding:.6rem 1rem;font-size:1.2rem}}
@media screen and (max-width: 47.99em){.etumo-qa__tag{padding:.4rem .8rem;font-size:1rem}}

/* ---------------- Video ---------------- */
.etumo-video{--border-radius:.6rem;width:100%;max-width:80rem;padding:1.6rem;margin-inline:auto;background-color:var(--color-white);border-radius:var(--border-radius);box-shadow:var(--shadow-green)}
.etumo-video__video{width:100%;border-radius:var(--border-radius)}

/* ---------------- Cards 03 ---------------- */
.etumo-card-03{display:grid;row-gap:2rem;column-gap:3.8rem}
@media screen and (min-width: 48em),print{.etumo-card-03{grid-template-columns:repeat(3,1fr);grid-auto-flow:column}}
@media screen and (max-width: 47.99em){.etumo-card-03{grid-template-rows:repeat(3,1fr);grid-auto-flow:row}}
.etumo-card-03__item{background-color:var(--color-white);border-radius:.6rem;box-shadow:var(--shadow-green)}
@media screen and (min-width: 48em),print{.etumo-card-03__item{padding:4.2rem 2.4rem 2rem}}
@media screen and (max-width: 47.99em){.etumo-card-03__item{padding:3.2rem 2.4rem 2rem}}
.etumo-card-03__section.etumo-card-03__section--headfirst{display:grid;grid-template-rows:minmax(6rem,auto) auto 1fr;max-height:100%}
.etumo-card-03__image{display:block;margin-inline:auto}
.etumo-card-03__head{text-align:center;font-weight:700;line-height:1}
@media screen and (min-width: 48em),print{.etumo-card-03__head{font-size:2rem;margin-top:3.5rem}}
@media screen and (max-width: 47.99em){.etumo-card-03__head{font-size:1.8rem;margin-top:2.5rem}}
.etumo-card-03__head.etumo-card-03__head--first{min-height:4.5rem;margin-top:0}
.etumo-card-03__text{padding-top:1.2rem}

/* ---------------- Backgrounds ---------------- */
.etumo-bg-01{background-repeat:no-repeat;background-position:top center}
.etumo-bg-01.etumo-bg-01--curve-green-to-white{background-image:linear-gradient(to bottom,transparent 20%,var(--color-white) 100%),url(../images/bg_circle_green.svg)}
.etumo-bg-01.etumo-bg-01--curve-white{background-image:url(../images/bg_circle_clipped.svg)}
.etumo-bg-01.etumo-bg-01--gradation-white-to-green{background-image:linear-gradient(to bottom,transparent 10%,var(--color-tusk) 100%)}
.etumo-bg-01.etumo-bg-01--gradation-white-to-green-triangle{--triangle-size-desktop:15rem;--triangle-size-mobile:8rem;background-image:linear-gradient(to bottom,transparent 10%,var(--color-tusk) 100%);position:relative}
@media screen and (min-width: 48em),print{.etumo-bg-01.etumo-bg-01--gradation-white-to-green-triangle{margin-bottom:var(--triangle-size-desktop)}}
@media screen and (max-width: 47.99em){.etumo-bg-01.etumo-bg-01--gradation-white-to-green-triangle{margin-bottom:var(--triangle-size-mobile)}}
.etumo-bg-01.etumo-bg-01--gradation-white-to-green-triangle:after{
  content:"";position:absolute;display:block;border-left:50vw solid transparent;border-right:50vw solid transparent
}
@media screen and (min-width: 48em),print{.etumo-bg-01.etumo-bg-01--gradation-white-to-green-triangle:after{border-top:var(--triangle-size-desktop) solid var(--color-tusk)}}
@media screen and (max-width: 47.99em){.etumo-bg-01.etumo-bg-01--gradation-white-to-green-triangle:after{border-top:var(--triangle-size-mobile) solid var(--color-tusk)}}

/* ---------------- Block 01 ---------------- */
.etumo-block-01{display:grid}
@media screen and (min-width: 48em),print{.etumo-block-01{row-gap:8rem}}
@media screen and (max-width: 47.99em){.etumo-block-01{row-gap:6rem}}
.etumo-block-01__section{display:grid;column-gap:7.6rem;align-items:start}
@media screen and (min-width: 48em),print{
  .etumo-block-01__section{grid-auto-flow:column}
  .etumo-block-01__item:nth-child(odd) .etumo-block-01__section{grid-template-areas:"picture content"}
  .etumo-block-01__item:nth-child(2n) .etumo-block-01__section{grid-template-areas:"content picture"}
}
@media screen and (min-width: 48em),print{.etumo-block-01__picture{grid-area:picture;width:100%;max-width:31.8rem}}
@media screen and (max-width: 47.99em){.etumo-block-01__picture{display:block;margin-inline:auto}}
@media screen and (min-width: 48em),print{.etumo-block-01__content{grid-area:content;margin-top:1.8rem}}
.etumo-block-01__head{font-weight:700;line-height:1.4}
@media screen and (min-width: 48em),print{.etumo-block-01__head{display:grid;row-gap:1.4rem;font-size:3.6rem}}
@media screen and (max-width: 47.99em){.etumo-block-01__head{margin-top:2rem;font-size:1.8rem;text-align:center}}
.etumo-block-01__number{font-size:11rem;font-weight:700;line-height:1;color:var(--color-pistachio)}
@media screen and (max-width: 47.99em){
  .etumo-block-01__number{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;white-space:nowrap;border-width:0;clip:rect(0,0,0,0)}
}
.etumo-block-01__text{line-height:1.8}
@media screen and (min-width: 48em),print{.etumo-block-01__text{margin-top:1.4rem;font-size:1.8rem}}
@media screen and (max-width: 47.99em){.etumo-block-01__text{margin-top:1rem;font-size:1.4rem}}

/* ---------------- Box ---------------- */
.etumo-box-01{width:100%;background-color:var(--color-white);border-radius:.6rem;box-shadow:var(--bg-green)}
@media screen and (min-width: 48em),print{.etumo-box-01{padding:4.8rem 9rem 6rem}}
@media screen and (max-width: 47.99em){.etumo-box-01{padding:3rem 2rem 2.6rem}}

/* ---------------- Cards 02 ---------------- */
.etumo-card-02{display:flex;column-gap:2.6rem;justify-content:center}
@media screen and (min-width: 48em),print{.etumo-card-02{flex-wrap:wrap;row-gap:4rem}}
@media screen and (max-width: 47.99em){.etumo-card-02{flex-direction:column;row-gap:2rem}}
.etumo-card-02__item{max-width:30.8rem}
@media screen and (max-width: 47.99em){.etumo-card-02__item{margin-inline:auto}}
.etumo-card-02.etumo-card-02--large .etumo-card-02__item{max-width:37.7rem}
.etumo-card-02__link{display:block;height:100%;overflow:hidden;background-color:var(--color-white);border-radius:.6rem;box-shadow:var(--shadow-green)}
.etumo-card-02__picture{display:block;height:fit-content;overflow:hidden}
.etumo-card-02__image{display:block;width:100%;height:20rem;object-fit:cover;transition:transform var(--hover-duration)}
@media (hover: hover){
  .etumo-card-02__image:is(:where(:any-link,:enabled,summary):hover *){transform:var(--hover-scale-image)}
}
.etumo-card-02.etumo-card-02--large .etumo-card-02__image{height:23rem}
.etumo-card-02__content{padding:1.4rem 1.4rem 3.2rem}
.etumo-card-02__tag{display:block;width:fit-content;font-weight:500;line-height:1;color:var(--color-killarney);border:1px solid var(--color-killarney);border-radius:9999px;transition:color var(--hover-duration),background-color var(--hover-duration)}
@media (hover: hover){
  .etumo-card-02__tag:is(:where(:any-link,:enabled,summary):hover *){color:var(--color-white);background-color:var(--color-killarney)}
}
@media screen and (min-width: 48em),print{.etumo-card-02__tag{padding:.6rem 2rem;font-size:1.4rem}}
@media screen and (max-width: 47.99em){.etumo-card-02__tag{padding:.8rem 1.6rem;font-size:1.2rem}}
.etumo-card-02__head{position:relative;display:grid;grid-template-columns:repeat(2,auto);column-gap:.8rem;align-items:center;width:fit-content;font-weight:700;line-height:1}
@media screen and (min-width: 48em),print{.etumo-card-02__head{font-size:2rem;margin-top:2.2rem}}
@media screen and (max-width: 47.99em){.etumo-card-02__head{font-size:1.8rem;margin-top:1.4rem}}
.etumo-card-02__head-icon{display:grid;place-content:center;width:2rem;height:2rem;background-color:var(--color-pistachio);border-radius:9999px;transition:background-color var(--hover-duration) var(--hover-ease)}
@media (hover: hover){
  .etumo-card-02__head-icon:is(:where(:any-link,:enabled,summary):hover *){background-color:var(--color-killarney)}
}
.etumo-card-02__head-icon:after{display:block;width:.6rem;height:.8rem;content:"";background-image:var(--icon-link-arrow-in-circle);background-repeat:no-repeat;background-position:center;background-size:contain}
@media screen and (min-width: 48em),print{.etumo-card-02__text{margin-top:1.2rem}}
@media screen and (max-width: 47.99em){.etumo-card-02__text{margin-top:.8rem;line-height:1.7}}

/* ---------------- Cards 01 ---------------- */
.etumo-card-01{display:grid;row-gap:2rem;width:100%}
@media screen and (min-width: 48em),print{.etumo-card-01{grid-template-columns:repeat(2,1fr);column-gap:3rem}}
@media screen and (min-width: 62em),print{.etumo-card-01{grid-template-columns:repeat(4,1fr)}}
@media screen and (min-width: 62em),print{.etumo-card-01.etumo-card-01--three{grid-template-columns:repeat(3,1fr);justify-self:center;max-width:89rem}}
.etumo-card-01__item{overflow:hidden;background-color:var(--color-white);border-radius:.6rem;box-shadow:0 0 .4rem 1px var(--color-beryl-green)}
.etumo-card-01__link{display:block;height:100%}
.etumo-card-01__head{line-height:1.2!important;text-align:center;font-weight:700;line-height:1}
@media screen and (min-width: 48em),print{.etumo-card-01__head{font-size:2rem}}
@media screen and (max-width: 47.99em){.etumo-card-01__head{font-size:1.8rem}}
.etumo-card-01__section{display:grid;grid-template-rows:auto 1fr;height:100%}
.etumo-card-01__section-inner{position:relative}
.etumo-card-01__logo{position:absolute;right:.8rem;z-index:5}
@media screen and (min-width: 48em),print{.etumo-card-01__logo{top:.6rem}}
@media screen and (max-width: 47.99em){.etumo-card-01__logo{bottom:1.8rem;width:10.2rem;height:auto}}
.etumo-card-01__picture{display:block;height:100%;overflow:hidden}
.etumo-card-01__image{width:100%;height:100%;object-fit:cover;transition:transform var(--hover-duration)}
@media (hover: hover){
  .etumo-card-01__image:is(:where(:any-link,:enabled,summary):hover *){transform:var(--hover-scale-image)}
}
.etumo-card-01__content{position:relative;display:grid;grid-template-rows:auto 1fr;padding:0 1.6rem 2rem}
@media screen and (min-width: 48em),print{.etumo-card-01__content{row-gap:1.7rem}}
@media screen and (max-width: 47.99em){.etumo-card-01__content{row-gap:1.2rem}}
.etumo-card-01__content:before{position:absolute;bottom:100%;width:100%;height:1rem;content:"";background-image:linear-gradient(to top,var(--color-white) 0%,transparent 100%)}
.etumo-card-01__content-inner{display:grid;grid-template-rows:1fr auto;row-gap:1rem}
.etumo-card-01__text{font-size:1.4rem;line-height:1.8}
.etumo-card-01__more{display:grid;grid-template-columns:1fr auto;column-gap:.9rem;align-items:center;width:100%;max-width:16.4rem;margin-inline:auto;font-weight:700;line-height:1;color:var(--color-white);text-align:center;background-color:var(--color-pistachio);border-radius:9999px;transition:background-color var(--hover-duration)}
@media screen and (min-width: 48em),print{.etumo-card-01__more{padding:1rem 1.6rem 1rem 2.4rem;font-size:1.6rem}}
@media screen and (max-width: 47.99em){.etumo-card-01__more{padding:1.5rem 1.6rem 1.5rem 2.4rem;font-size:1.4rem}}
@media (hover: hover){
  .etumo-card-01__more:is(:where(:any-link,:enabled,summary):hover *){background-color:var(--color-killarney)}
}
.etumo-card-01__more:after{width:.6rem;height:1rem;content:"";background-color:currentColor;-webkit-mask-image:var(--icon-link-arrow);mask-image:var(--icon-link-arrow);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain}

/* ---------------- Caption ---------------- */
@media screen and (min-width: 48em),print{.etumo-caption{font-size:1.8rem;line-height:1.8}}
@media screen and (max-width: 47.99em){.etumo-caption{font-size:1.4rem;line-height:1.7}}

/* ---------------- Overview ---------------- */
.etumo-overview-01{display:grid;column-gap:8.6rem}
@media screen and (min-width: 48em),print{.etumo-overview-01{grid-template-areas:"image head" "image caption";row-gap:2rem;align-items:center;padding-left:2.6rem}}
@media screen and (max-width: 47.99em){.etumo-overview-01{row-gap:2.5rem}}
@media screen and (min-width: 48em),print{.etumo-overview-01__head{grid-area:head;margin-top:auto}}
@media screen and (min-width: 48em),print{.etumo-overview-01__image{grid-area:image}}
@media screen and (max-width: 47.99em){.etumo-overview-01__image{width:100%;max-width:23rem}}
@media screen and (min-width: 48em),print{.etumo-overview-01__caption{grid-area:caption;margin-bottom:auto}}

/* ---------------- Head 03 ---------------- */
.etumo-head-03{font-weight:700;line-height:1}
@media screen and (min-width: 48em),print{.etumo-head-03{font-size:2rem}}
@media screen and (max-width: 47.99em){.etumo-head-03{font-size:1.8rem}}
.etumo-head-03.etumo-head-03--dot{display:grid;grid-template-columns:auto 1fr;column-gap:1rem;align-items:center}
.etumo-head-03.etumo-head-03--dot:before{width:1.2rem;height:1.2rem;content:"";background-color:var(--color-pistachio);border-radius:9999px}

/* ---------------- Float (Follow Button) 修正済み ---------------- */
/* 右下の追従ボタンを縦長にする専用調整 */
.follow-button {
  position: fixed;
  right: 16px;          /* 右下に固定（left を right に変更） */
  bottom: 16px;
  width: 64px;          /* 縦ボタンの幅（任意で調整） */
  height: 190px;        /* 約5cm相当の高さ */
  display: flex;
  flex-direction: column;   /* 中身を縦方向に並べる */
  align-items: center;
  justify-content: center;
  gap: 8px;

  border-radius: 32px;
  background: var(--color-pistachio);
  color: #fff;
  box-shadow: var(--shadow-black);
  z-index: 9999;
}

/* アイコン／テキストの例（必要に応じて調整） */
.follow-button .icon {
  transform: none;
  width: 24px;
  height: 24px;
}

.follow-button .label {
  writing-mode: vertical-rl; /* 縦書きにしたい場合 */
  text-orientation: mixed;
  font-weight: 700;
  font-size: 1.4rem;
  line-height: 1.8;
}

/* ホバー演出 */
@media (hover: hover) {
  .follow-button:hover {
    background: var(--color-killarney);
  }
}
.follow-button:focus-visible {
  outline: 2px solid var(--color-primrose);
  outline-offset: 2px;
}



.etumo-float{
  position:fixed;
  right:0;
  bottom:10rem;
  z-index:100;
  display:flex;                 /* grid → flex */
  flex-direction:row;
  gap:.6rem;
  align-items:center;
  justify-content:center;
  font-weight:600;
  line-height:1.1;
  color:var(--color-white);
  letter-spacing:.1em;
  background-image:linear-gradient(to bottom,var(--color-blaze-orange) 0%,var(--color-yellow-sea) 51%,var(--color-blaze-orange) 100%);
  background-size:auto 200%;
  border-top-left-radius:2rem;
  border-bottom-left-radius:2rem;
  box-shadow:2px 4px 1px 0 var(--color-ochre);
  filter:var(--shadow-float-black);
  transition:background-position var(--hover-duration) var(--hover-ease);

  /* 伸び防止 */
  writing-mode:horizontal-tb;   /* デフォルトで横書き */
  white-space:nowrap;           /* 折り返し防止 */
  max-width:90vw;
  max-height:100vh;
  overflow:hidden;
}
@media screen and (min-width: 48em), print{
  .etumo-float{padding:1.2rem 1.6rem;font-size:1.8rem}
}
@media screen and (max-width: 47.99em){
  .etumo-float{
    bottom:8rem;                /* モバイル下部UIとの干渉回避 */
    padding:.8rem 1.2rem;
    font-size:1.4rem;
    border-top-left-radius:1.6rem;
    border-bottom-left-radius:1.6rem;
  }
}
@media (hover: hover){
  .etumo-float:where(:any-link,:enabled,summary):hover{background-position:center bottom}
}
.etumo-float:where(:any-link,:enabled,summary):focus-visible{background-position:center bottom}
.etumo-float:before{
  width:2.2rem;height:2.2rem;content:"";
  background-image:var(--icon-circle-mail);
  background-repeat:no-repeat;background-position:center;background-size:contain;
  display:inline-block;flex:0 0 auto;
}
/* 大画面で縦書きを復活させたい場合（任意） */
@media screen and (min-width: 62em), print{
  .etumo-float.--vertical-lg{
    writing-mode:vertical-lr;
    flex-direction:column;
    white-space:normal;
    padding:2rem 1.6rem;
    font-size:2rem;
  }
}

/* ---------------- Navigation ---------------- */
.etumo-nav{background-color:var(--color-mantis)}
.etumo-nav__list{display:grid}
@media screen and (min-width: 62em),print{.etumo-nav__list{grid-auto-flow:column}}
@media screen and (min-width: 48em) and (max-width: 61.99em){.etumo-nav__list{grid-template-columns:repeat(3,1fr);gap:.8rem;padding-block:.8rem}}
@media screen and (max-width: 47.99em){.etumo-nav__list{grid-template-columns:repeat(2,1fr);gap:.8rem;padding-block:.8rem}}
.etumo-nav__link{color:var(--color-white);text-align:center;transition:opacity var(--hover-duration) var(--hover-ease)}
@media screen and (min-width: 62em),print{.etumo-nav__link{display:block;height:100%;padding:2.3rem 11%;font-size:1.6rem;line-height:1.5}}
@media screen and (min-width: 48em) and (max-width: 61.99em){.etumo-nav__link{display:grid;align-items:center;min-height:6rem;padding:.5rem;font-size:1.4rem}}
@media screen and (max-width: 47.99em){.etumo-nav__link{display:grid;align-items:center;min-height:6rem;padding:.5rem;font-size:1.4rem}}
@media (hover: hover){
  .etumo-nav__link:where(:any-link,:enabled,summary):hover{opacity:var(--hover-opacity)}
}
.etumo-nav__link:where(:any-link,:enabled,summary):focus-visible{opacity:var(--hover-opacity)}
.etumo-nav__item--current .etumo-nav__link{color:var(--color-mantis);background-color:var(--color-white)}

.etumo-nav-page-desktop{--nav-height:4.5rem;--nav-fixed-top:16rem}
@media screen and (min-width: 62em),print{.etumo-nav-page-desktop{height:var(--nav-height);margin-top:6.8rem}}
@media screen and (max-width: 61.99em){.etumo-nav-page-desktop{display:none}}
@media screen and (min-width: 62em),print{
  .etumo-nav-page-desktop__list{display:grid;grid-template-columns:repeat(5,1fr);width:100%;max-width:var(--content-width);margin-inline:auto;background-color:var(--color-frost);border-radius:9999px;filter:var(--shadow-float-black)}
  .etumo-nav-page-desktop.etumo-nav-page-desktop--6 .etumo-nav-page-desktop__list{grid-template-columns:repeat(6,1fr)}
  .etumo-nav-page-desktop.is-fixed .etumo-nav-page-desktop__list{position:fixed;top:var(--nav-fixed-top);left:50%;z-index:105;transform:translate(-50%)}
  .etumo-nav-page-desktop__link{display:grid;align-items:center;height:100%;padding:.8rem 5%;font-size:2rem;color:var(--color-killarney);text-align:center;transition:opacity var(--hover-duration) var(--hover-ease)}
  .etumo-nav-page-desktop__link:where(:any-link,:enabled,summary):focus-visible{opacity:var(--hover-opacity)}
  .etumo-nav-page-desktop__link[aria-pressed=true]{color:var(--color-white);background-color:var(--color-pistachio);border-radius:9999px}
}

@media screen and (min-width: 62em),print{.etumo-nav-page-mobile{display:none}}
@media screen and (max-width: 61.99em){
  .etumo-nav-page-mobile{position:fixed;bottom:0;z-index:105;width:100%;font-size:1.6rem;line-height:1.5;background-color:var(--color-pistachio)}
  .etumo-nav-page-mobile__summary{display:grid;place-content:center;padding:1.8rem;box-shadow:0 .4rem .4rem #777a9f40}
  .etumo-nav-page-mobile__summary-inner{display:grid;grid-template-columns:1fr auto;column-gap:1.2rem;align-items:center;width:fit-content;color:var(--color-white)}
  .etumo-nav-page-mobile__summary-inner:after{width:1.5rem;height:.9rem;content:"";background-color:currentColor;-webkit-mask-image:var(--icon-link-arrow);mask-image:var(--icon-link-arrow);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain;transform:rotate(270deg);transition:transform var(--hover-duration) var(--hover-ease)}
  .etumo-nav-page-mobile__details[open] .etumo-nav-page-mobile__summary-inner:after{transform:rotate(90deg)}
  .etumo-nav-page-mobile__list{overflow:hidden}
  .etumo-nav-page-mobile__item:not(:last-child){border-bottom:1px solid var(--color-white)}
  .etumo-nav-page-mobile__link{display:block;padding:1.5rem;color:var(--color-white);text-align:center}
}

/* ---------------- Figure ---------------- */
.etumo-figure{display:block}
.etumo-figure__content{margin-inline:auto}

/* ---------------- Cards 04 ---------------- */
.etumo-card-04{display:grid;padding-bottom:1.6rem}
@media screen and (min-width: 48em),print{.etumo-card-04{grid-template-rows:repeat(2,auto);grid-template-columns:repeat(3,1fr);row-gap:3.8rem;column-gap:3rem}}
@media screen and (max-width: 47.99em){.etumo-card-04{grid-auto-flow:row;row-gap:2.6rem}}
@media screen and (min-width: 48em),print{.etumo-card-04.etumo-card-04--column2{grid-template-columns:repeat(2,1fr);max-width:76.4rem;margin-inline:auto}}
.etumo-card-04__item{position:relative;height:100%}
.etumo-card-04__picture,.etumo-card-04__image{width:100%}
.etumo-card-04__logo{position:absolute}
@media screen and (min-width: 48em),print{.etumo-card-04__logo{top:-3rem;left:-1.5rem}}
@media screen and (max-width: 47.99em){.etumo-card-04__logo{top:-1.2rem;left:-1.5rem}}
.etumo-card-04__box{display:grid;grid-template-rows:auto 1fr;height:100%;overflow:hidden;background:var(--color-white);border-radius:.6rem;box-shadow:0 0 .5rem 1px var(--color-beryl-green)}
.etumo-card-04__content{display:block;width:100%;padding:0 2rem 2rem;margin-inline:center}
.etumo-card-04__content-inner{display:flex;align-items:center;justify-content:center;height:100%}
.etumo-card-04__text{font-weight:500}
@media screen and (min-width: 48em),print{.etumo-card-04__text{font-size:1.8rem;line-height:3.4rem!important}}
@media screen and (max-width: 47.99em){.etumo-card-04__text{font-size:1.4rem;line-height:2.6rem}}

/* ---------------- Block 02 ---------------- */
.etumo-block-02{display:grid;height:auto}
@media screen and (min-width: 48em),print{.etumo-block-02{row-gap:5rem}}
@media screen and (max-width: 47.99em){.etumo-block-02{row-gap:2rem}}
.etumo-block-02__item{display:grid;overflow:hidden}
@media screen and (min-width: 48em),print{.etumo-block-02__item{grid-template-columns:2.9fr 7.1fr;column-gap:4.6rem;height:auto}}
@media screen and (min-width: 48em),print{.etumo-block-02__image{width:auto;max-height:20rem}}
@media screen and (max-width: 47.99em){.etumo-block-02__image{width:100%}}
.etumo-block-02__content{padding:0 1.4rem 1.4rem;overflow:hidden}
@media screen and (min-width: 48em),print{.etumo-block-02__content{display:flex;align-items:center}}
.etumo-block-02__title{font-weight:700;line-height:1.4}
@media screen and (min-width: 48em),print{.etumo-block-02__title{display:grid;row-gap:1.4rem;font-size:3.6rem}}
@media screen and (max-width: 47.99em){.etumo-block-02__title{margin-top:2rem;font-size:1.8rem}}

/* ---------------- List ---------------- */
.etumo-list{display:block;margin-inline:auto;background-color:var(--color-white);border-radius:.6rem}
@media screen and (min-width: 48em),print{.etumo-list{max-width:54.7rem}}
@media screen and (min-width: 48em),print{.etumo-list__content{padding:3.6rem 4.7rem}}
@media screen and (max-width: 47.99em){.etumo-list__content{padding:2rem 1.5rem}}
.etumo-list__item{display:grid;grid-template-columns:1fr 1fr}
@media screen and (min-width: 48em),print{.etumo-list__item{row-gap:2.2rem}}
@media screen and (max-width: 47.99em){.etumo-list__item{row-gap:2.1rem}}
.etumo-list__text{position:relative;display:flex;align-items:center;padding-left:3rem;font-weight:500}
@media screen and (min-width: 48em),print{.etumo-list__text{font-size:18px}}
@media screen and (max-width: 47.99em){.etumo-list__text{font-size:14px}}
.etumo-list__text:before{position:absolute;top:50%;content:"";background:var(--color-pistachio);border-radius:999rem}
@media screen and (min-width: 48em),print{.etumo-list__text:before{left:1.1rem;width:1rem;height:1rem;transform:translateY(-50%)}}
@media screen and (max-width: 47.99em){.etumo-list__text:before{left:1.5rem;width:.6rem;height:.6rem;transform:translateY(-50%)}}

/* ---------------- Icon Star ---------------- */
.etumo-icon-star{display:flex;justify-content:center}
.etumo-icon-star__content{position:relative;display:inline-block;justify-self:center;width:fit-content;margin-right:3rem;margin-left:3rem}
@media screen and (min-width: 48em),print{
  .etumo-icon-star__image-01,.etumo-icon-star__image-02{position:absolute;top:0}
  .etumo-icon-star__image-01{left:-6.5rem}
  .etumo-icon-star__image-02{right:-6rem}
}
@media screen and (max-width: 47.99em){
  .etumo-icon-star__image-01,.etumo-icon-star__image-02{display:none}
}

/* ---------------- Icon Circle ---------------- */
.etumo-icon-circle{position:relative}
.etumo-icon-circle .etumo-qa,
.etumo-icon-circle .etumo-head-02,
.etumo-icon-circle .etumo-link{position:relative;z-index:1}
.etumo-icon-circle__image-01,
.etumo-icon-circle__image-02-desktop,
.etumo-icon-circle__image-02-mobile{position:absolute;z-index:0}
.etumo-icon-circle__image-01{top:0;left:0}
@media screen and (min-width: 48em),print{.etumo-icon-circle__image-02-desktop{top:50%;right:0}}
@media screen and (max-width: 47.99em){.etumo-icon-circle__image-02-desktop{display:none}}
@media screen and (min-width: 48em),print{.etumo-icon-circle__image-02-mobile{display:none}}
@media screen and (max-width: 47.99em){.etumo-icon-circle__image-02-mobile{top:95%;right:0}}

/* ---------------- Filter ---------------- */
.etumo-filter__form{display:flex;flex-wrap:wrap;gap:1rem}
.etumo-filter__input[type=radio]{display:none}
.etumo-filter__label{font-weight:700;color:var(--color-killarney);cursor:pointer;border:1px solid var(--color-killarney);border-radius:9999px;box-shadow:0 2px 4px #0000001a}
@media screen and (min-width: 48em),print{.etumo-filter__label{padding:1.4rem 3.8rem;font-size:1.6rem}}
@media screen and (max-width: 47.99em){.etumo-filter__label{padding:1.4rem 2.4rem;font-size:1.4rem}}
.etumo-filter__input:checked+.etumo-filter__label{color:var(--color-white);background-color:var(--color-pistachio);border-color:var(--color-pistachio)}

/* ---------------- MV ---------------- */
.etumo-mv{position:relative}
@media screen and (min-width: 48em),print{.etumo-mv{height:50rem}}
@media screen and (max-width: 47.99em){.etumo-mv:not(.etumo-mv.etumo-mv--other){height:39rem}}
@media screen and (max-width: 47.99em){.etumo-mv.etumo-mv--other{height:20rem}}
.etumo-mv__layout{position:relative;max-width:min(144rem,var(--content-width-mobile));margin-inline:auto}
.etumo-mv.etumo-mv--apply .etumo-mv__logo,
.etumo-mv.etumo-mv--reserve .etumo-mv__logo,
.etumo-mv.etumo-mv--ecolife .etumo-mv__logo,
.etumo-mv.etumo-mv--mynum .etumo-mv__logo{display:block}
@media screen and (min-width: 48em),print{
  .etumo-mv.etumo-mv--apply .etumo-mv__logo,
  .etumo-mv.etumo-mv--reserve .etumo-mv__logo,
  .etumo-mv.etumo-mv--ecolife .etumo-mv__logo,
  .etumo-mv.etumo-mv--mynum .etumo-mv__logo{padding-top:4rem}
}
@media screen and (max-width: 47.99em){
  .etumo-mv.etumo-mv--apply .etumo-mv__logo,
  .etumo-mv.etumo-mv--reserve .etumo-mv__logo,
  .etumo-mv.etumo-mv--ecolife .etumo-mv__logo,
  .etumo-mv.etumo-mv--mynum .etumo-mv__logo{padding-top:1.8rem;margin-left:.4rem}
}
.etumo-mv__logo-image{display:block}
@media screen and (min-width: 48em),print{.etumo-mv__logo-image{width:28%}}
@media screen and (min-width: 48em),print{
  .etumo-mv.etumo-mv--apply .etumo-mv__logo-image,
  .etumo-mv.etumo-mv--reserve .etumo-mv__logo-image,
  .etumo-mv.etumo-mv--ecolife .etumo-mv__logo-image,
  .etumo-mv.etumo-mv--mynum .etumo-mv__logo-image{width:23%}
}
.etumo-mv__content{position:absolute}
@media screen and (min-width: 48em),print{.etumo-mv.etumo-mv--top .etumo-mv__content{top:14rem;right:6rem}}
@media screen and (max-width: 47.99em){.etumo-mv.etumo-mv--top .etumo-mv__content{top:5.4rem;right:.8rem}}
@media screen and (max-width: 47.99em){
  .etumo-mv.etumo-mv--apply .etumo-mv__content,
  .etumo-mv.etumo-mv--reserve .etumo-mv__content,
  .etumo-mv.etumo-mv--ecolife .etumo-mv__content,
  .etumo-mv.etumo-mv--mynum .etumo-mv__content{width:100%}
}
@media screen and (min-width: 48em),print{.etumo-mv.etumo-mv--apply .etumo-mv__content{top:19.5rem;left:2rem}}
@media screen and (max-width: 47.99em){.etumo-mv.etumo-mv--apply .etumo-mv__content{top:7.3rem;left:50%;max-width:26.4rem;transform:translate(-50%)}}
@media screen and (min-width: 48em),print{.etumo-mv.etumo-mv--reserve .etumo-mv__content{top:13.5rem;right:2.6rem}}
@media screen and (max-width: 47.99em){.etumo-mv.etumo-mv--reserve .etumo-mv__content{top:7rem;right:.7rem;max-width:28.4rem}}
@media screen and (min-width: 48em),print{.etumo-mv.etumo-mv--ecolife .etumo-mv__content{top:7.8rem;right:2.2rem}}
@media screen and (max-width: 47.99em){.etumo-mv.etumo-mv--ecolife .etumo-mv__content{top:8.4rem;right:2.5rem;max-width:30.4rem}}
@media screen and (min-width: 48em),print{.etumo-mv.etumo-mv--mynum .etumo-mv__content{top:8.5rem;right:-3.6rem}}
@media screen and (max-width: 47.99em){.etumo-mv.etumo-mv--mynum .etumo-mv__content{top:7rem;right:-2.4rem}}
@media screen and (min-width: 48em),print{.etumo-mv.etumo-mv--other .etumo-mv__content{top:18.5rem;right:3.6rem}}
@media screen and (max-width: 47.99em){.etumo-mv.etumo-mv--other .etumo-mv__content{top:8rem;right:1.9rem}}
@media screen and (min-width: 48em),print{
  .etumo-mv.etumo-mv--apply .etumo-mv__head,
  .etumo-mv.etumo-mv--reserve .etumo-mv__head,
  .etumo-mv.etumo-mv--ecolife .etumo-mv__head,
  .etumo-mv.etumo-mv--mynum .etumo-mv__head{margin-top:2rem}
}
@media screen and (max-width: 47.99em){
  .etumo-mv.etumo-mv--apply .etumo-mv__head,
  .etumo-mv.etumo-mv--reserve .etumo-mv__head,
  .etumo-mv.etumo-mv--ecolife .etumo-mv__head,
  .etumo-mv.etumo-mv--mynum .etumo-mv__head{margin-top:1rem}
}
@media screen and (max-width: 47.99em){.etumo-mv.etumo-mv--reserve .etumo-mv__head{margin-left:2rem}}
.etumo-mv__text{display:block}
@media screen and (min-width: 48em),print{.etumo-mv.etumo-mv--top .etumo-mv__text{margin-top:2.5rem}}
@media screen and (max-width: 47.99em){.etumo-mv.etumo-mv--top .etumo-mv__text{margin-top:1rem}}
@media screen and (min-width: 48em),print{
  .etumo-mv.etumo-mv--apply .etumo-mv__text,
  .etumo-mv.etumo-mv--reserve .etumo-mv__text,
  .etumo-mv.etumo-mv--ecolife .etumo-mv__text,
  .etumo-mv.etumo-mv--mynum .etumo-mv__text{margin-left:3.2rem}
}
@media screen and (max-width: 47.99em){
  .etumo-mv.etumo-mv--apply .etumo-mv__text,
  .etumo-mv.etumo-mv--reserve .etumo-mv__text,
  .etumo-mv.etumo-mv--ecolife .etumo-mv__text,
  .etumo-mv.etumo-mv--mynum .etumo-mv__text{margin-left:2rem}
}
@media screen and (max-width: 47.99em){.etumo-mv.etumo-mv--reserve .etumo-mv__text{margin-left:5.2rem}}
.etumo-mv__background-image{position:absolute;top:50%;z-index:-1;width:100%;height:100%;object-fit:cover;transform:translateY(-50%)}

/* ---------------- Splide ---------------- */
@keyframes splide-loading{0%{transform:rotate(0)}to{transform:rotate(1turn)}}
.splide__track--draggable{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}
.splide__track--fade>.splide__list>.splide__slide{margin:0!important;opacity:0;z-index:0}
.splide__track--fade>.splide__list>.splide__slide.is-active{opacity:1;z-index:1}
.splide--rtl{direction:rtl}
.splide__track--ttb>.splide__list{display:block}
.splide__container{box-sizing:border-box;position:relative}
.splide__list{backface-visibility:hidden;display:flex;height:100%;margin:0!important;padding:0!important}
.splide.is-initialized:not(.is-active) .splide__list{display:block}
.splide__pagination{align-items:center;display:flex;flex-wrap:wrap;justify-content:center;margin:0;pointer-events:none}
.splide__pagination li{display:inline-block;line-height:1;list-style-type:none;margin:0;pointer-events:auto}
.splide:not(.is-overflow) .splide__pagination{display:none}
.splide__progress__bar{width:0}
.splide{position:relative;visibility:hidden}
.splide.is-initialized,.splide.is-rendered{visibility:visible}
.splide__slide{backface-visibility:hidden;box-sizing:border-box;flex-shrink:0;list-style-type:none!important;margin:0;position:relative}
.splide__slide img{vertical-align:bottom}
.splide__spinner{animation:splide-loading 1s linear infinite;border:2px solid #999;border-left-color:transparent;border-radius:50%;bottom:0;contain:strict;display:inline-block;height:20px;left:0;margin:auto;position:absolute;right:0;top:0;width:20px}
.splide__sr{clip:rect(0 0 0 0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}
.splide__toggle.is-active .splide__toggle__play,.splide__toggle__pause{display:none}
.splide__toggle.is-active .splide__toggle__pause{display:inline}
.splide__track{overflow:hidden;position:relative;z-index:0}

/* ========== 追従ボタン(.etumo-float)の修正 ========== */

/* 既存のスタイルをリセット（念のため） */
.etumo-float {
  all: unset; /* いったん全てのスタイルを解除 */
}

/* 縦書き問い合わせボタンの基本スタイル（PC表示） */
.etumo-float {
  /* 位置設定 */
  position: fixed;
  bottom: 220px; /* 画面下からの距離 */
  right: 5px;  /* 画面右からの距離 */
  z-index: 1000; /* 他の要素より手前に表示 */

  /* サイズと形状 */
  display: flex;
  align-items: center;
  justify-content: center;
  height: 250px; /* PCでの高さ（約5cm程度） */
  width: auto;   /* 幅は文字数に応じて自動調整 */
  padding: 15px 12px; /* 内側の余白（上下:15px, 左右:12px） */
  box-sizing: border-box;

  /* テキストの縦書き設定 */
  writing-mode: vertical-rl; /* テキストを縦書き（右から左へ） */
  letter-spacing: 0.1em;     /* 文字と文字の間隔を少し広げる */
  white-space: nowrap;       /* 改行を防ぐ */

  /* デザイン */
  background-color: var(--color-pistachio, #83be00); /* 背景色 */
  color: var(--color-white, #ffffff); /* 文字色 */
  font-size: 1.8rem; /* 文字サイズ */
  font-weight: bold;
  text-decoration: none;
  border-radius: 8px; /* 角の丸み */
  box-shadow: var(--shadow-black, 0 .2rem .4rem 0 rgba(21, 21, 21, .1)); /* 影 */
  
  /* クリック可能な領域であることを示す */
  cursor: pointer;

  /* アニメーション */
  transition: opacity 0.3s ease-in-out;
}

/* ホバー時のエフェクト */
.etumo-float:hover {
  opacity: 0.8;
  text-decoration: none;
  color: var(--color-white, #ffffff); /* ホバー時も文字色を維持 */
}

/* スマートフォン表示（画面幅767px以下）の調整 */
@media screen and (max-width: 767px) {
  .etumo-float {
    height: 120px; /* スマホでの高さを少し小さく */
    padding: 10px 8px;
    font-size: 1.6rem;
    right: 10px;
    bottom: 10px;
  }
}
/* 非表示状態のスタイルを追加 */
.etumo-float.is-hidden {
  opacity: 0; /* 透明にする */
  visibility: hidden; /* クリックできなくする */
  pointer-events: none; /* マウスイベントを無効にする */
}



/* ========== 追従お問い合わせボタン(#sticky-contact)のスタイル ========== */

/* ボタン全体のコンテナ */
#sticky-contact {
  /* 位置設定 */
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 1000;
}

/* リンク要素(aタグ)のスタイル */
#sticky-contact a {
  /* レイアウト設定 */
  display: flex;
  flex-direction: column; /* 子要素を縦に並べる */
  align-items: center;    /* 水平方向の中央揃え */
  justify-content: center;/* 垂直方向の中央揃え */

  /* サイズと形状 */
  width: 60px;  /* ボタンの幅を固定 */
  height: 150px; /* ボタンの高さを固定（約5cm程度） */
  padding: 15px 0;
  box-sizing: border-box;

  /* デザイン */
  background-color: var(--color-pistachio, #83be00);
  color: var(--color-white, #ffffff);
  text-decoration: none;
  border-radius: 8px;
  box-shadow: var(--shadow-black, 0 .2rem .4rem 0 rgba(21, 21, 21, .1));

  /* アニメーション */
  transition: opacity 0.3s ease-in-out;
}

/* ホバー時のエフェクト */
#sticky-contact a:hover {
  opacity: 0.8;
}

/* アイコン(SVG)のスタイル */
#sticky-contact svg {
  width: 28px;
  height: 28px;
  margin-bottom: 8px; /* アイコンとテキストの間隔 */
}

/* テキスト(span)のスタイル */
#sticky-contact span {
  font-size: 1.6rem;
  font-weight: bold;
  
  /* 縦書きにする */
  writing-mode: vertical-rl;
  letter-spacing: 0.1em;
}

/* スマートフォン表示（画面幅767px以下）の調整 */
@media screen and (max-width: 767px) {
  .etumo-float {
    /* 1. サイズを縦横に伸ばす */
    height: 150px; /* 縦の長さを 120px -> 150px に変更 */
    padding: 15px 10px; /* 左右の余白を 8px -> 10px、上下を 10px -> 15px に変更 */

    /* 2. 位置を少し上にあげる */
    bottom: 80px; /* 下からの距離を 10px -> 80px に変更 */

    /* 既存のスタイル（必要に応じて調整） */
    font-size: 1.6rem; /* 文字サイズはそのまま */
    right: 10px; /* 右からの距離はそのまま */
  }
}