@charset "UTF-8";
#contents.smileplusr { font-size: 16px; }
#contents.smileplusr *, #contents.smileplusr *:before, #contents.smileplusr *:after { box-sizing: border-box; }
#contents.smileplusr .sizeSS { font-size: 12px; }
#contents.smileplusr .sizeS { font-size: 14px; }
#contents.smileplusr .sizeN { font-size: 16px; }
#contents.smileplusr .sizeM { font-size: 18px; }
#contents.smileplusr .sizeL { font-size: 20px; }
#contents.smileplusr .sizeLL { font-size: 24px; }
@media screen and (max-width: 767px) { #contents.smileplusr { font-size: 3.6vw; }
  #contents.smileplusr .sizeSS { font-size: 3vw; }
  #contents.smileplusr .sizeS { font-size: 3.2vw; }
  #contents.smileplusr .sizeN { font-size: 3.6vw; }
  #contents.smileplusr .sizeM { font-size: 4vw; }
  #contents.smileplusr .sizeL { font-size: 4.2vw; }
  #contents.smileplusr .sizeLL { font-size: 4.6vw; } }

#contents img.liquid { width: 100%; height: auto; }

@media screen and (min-width: 768px) { .pc-only { display: block; }
  .sp-only { display: none; } }
@media screen and (max-width: 767px) { .pc-only { display: none; }
  .sp-only { display: block; }
  img { max-width: 100%; height: auto; }
  .spmb40 { margin-bottom: 5vw !important; } }
.red { color: #e60012; }

a { transition: all 0.3s ease-in; }
a:hover { opacity: .8; }

a.linkBtn { display: inline-block; position: relative; text-align: center; font-size: 23px; background-color: #008577; color: #FFF !important; border-radius: 9999px; padding: 10px 70px; font-weight: bold; width: 100%; max-width: 640px; }
@media screen and (max-width: 767px) { a.linkBtn { min-width: inherit; width: 100%; font-size: 4.6vw; padding: 3vw 10vw; } }
a.linkBtn:hover { text-decoration: none; }
a.linkBtn::after { content: ""; display: inline-block; vertical-align: middle; color: #FFF; line-height: 1; width: .6em; height: .6em; border: 0.1em solid currentColor; border-left: 0; border-bottom: 0; box-sizing: border-box; position: absolute; right: 20px; top: 50%; transform: translateY(-75%) rotate(135deg); }
a.linkBtn.pink { background-color: #e9557e; }
a.linkBtn.registration { background-image: url("/myepson/smileplussc/images/icon-registration.png"); background-repeat: no-repeat; background-size: 27px auto; background-position: left 16px center; }
a.linkBtn.repair { background-image: url("/myepson/smileplussc/images/icon-mente.png"); background-repeat: no-repeat; background-size: 28px auto; background-position: left 16px center; }
a.linkBtn.setting { background-image: url("/myepson/smileplussc/images/icon-setting.png"); background-repeat: no-repeat; background-size: 26px auto; background-position: left 7px center; }
a.linkBtn.question { background-image: url("/myepson/smileplussc/images/icon-qa.png"); background-repeat: no-repeat; background-size: 28px auto; background-position: left 16px center; }
a.linkBtn.blank::after { content: none; }
a.linkBtn.blank .icon { width: 17px; height: 17px; border: 0; position: absolute; right: 20px; top: 50%; transform: translateY(-50%); }

a.link { padding-left: 20px; font-weight: bold; position: relative; font-size: 17px; }
@media screen and (max-width: 767px) { a.link { font-size: 3.6vw; } }
a.link::before { content: ""; display: inline-block; width: 17px; height: 17px; background: url(/common/img/ico_img_01.svg) no-repeat center top; background-size: 17px 17px; position: absolute; top: 0; left: 0; }
a.link.anchor::before { background-image: url(/common/img/ico_img_04.svg); }

a.popup { font-style: normal; width: 15px; height: 15px; background-color: #008577; border-radius: 100%; color: #FFF; display: inline-flex; justify-content: center; align-items: center; font-size: 10px; line-height: 1; font-weight: normal; margin: 0 0 0 3px; }
a.popup:hover { text-decoration: none; }

#contents .headSection .innerBlock { margin-bottom: 40px; width: 1240px; }
@media screen and (max-width: 767px) { #contents .headSection .innerBlock { width: 100%; margin-bottom: 0; } }
#contents .headSection .innerBlock h1 { font-size: 24px; font-weight: bold; line-height: 1.2; }
@media screen and (max-width: 767px) { #contents .headSection .innerBlock h1 { font-size: 4.6vw; } }

/* section */
.section { padding: 0; }
.section * { box-sizing: border-box; }
.section + .section { margin-top: 80px; }
@media screen and (max-width: 767px) { .section + .section { margin-top: 10vw; } }
.section-lead .call { text-align: center; color: #333; font-weight: bold; font-size: 28px; }
.section-lead .call .emph { color: #008577; font-weight: bold; font-size: 36px; }
.section-lead .call .min { font-size: 22px; }
@media screen and (max-width: 767px) { .section-lead .call { font-size: 3.8vw; } }
.section-lead .call .bbl { display: inline-block; padding: 0 70px; position: relative; }
@media screen and (max-width: 767px) { .section-lead .call .bbl { padding: 0 8vw; } }
.section-inner { margin: 0 auto; }
@media screen and (min-width: 768px) { .section-inner { width: 1240px; } }
.section-title { margin: 0 0 35px 0; padding: 15px; font-size: 28px; line-height: 1.3; background-color: #008577; color: #FFF; text-align: center; position: relative; }
@media screen and (max-width: 767px) { .section-title { font-size: 4.4vw; margin-bottom: 5vw; } }
.section-title-bdr { margin: 0 0 35px 0; padding-bottom: .15em; font-size: 22px; line-height: 1.3; color: #008577; text-align: center; position: relative; }
@media screen and (max-width: 767px) { .section-title-bdr { font-size: 4vw; margin-bottom: 5vw; } }
.section-title-bdr:after { content: ""; position: absolute; top: 50%; left: 0; width: 100%; height: 2px; margin-top: -1px; background-color: #008577; }
.section-title-bdr span { position: relative; z-index: 1; display: inline-block; background-color: #FFF; padding: 0 15px; }
.section-text { margin-bottom: 1.5em; font-size: 16px; line-height: 1.625; }
.section-text .em { color: #008577; font-size: 22px; font-weight: bold; }
.section-btn { margin-top: 1.8em; font-size: 18px; display: flex; flex-wrap: wrap; justify-content: center; }
@media screen and (max-width: 767px) { .section-btn { font-size: 4vw; } }
.section-btn.line2 li { width: 350px; margin: 0 10px; }
@media screen and (max-width: 767px) { .section-btn.line2 li { width: 100%; margin: 0 0 3vw 0; } }
.section-btn li { width: 520px; }
@media screen and (max-width: 767px) { .section-btn li { width: 100%; } }
.section-btn li.movie-section-01 { display: flex; justify-content: center; align-items: center; font-weight: bold; }
@media screen and (min-width: 768px) { .section-btn li.movie-section-01 { width: 260px; flex-basis: 260px; background-color: #cccccc; margin-right: 10px; } }
@media screen and (max-width: 767px) { .section-btn li.movie-section-01 { margin-bottom: 2vw; } }
.section-btn li.movie-section-02 { width: 520px; }
@media screen and (max-width: 767px) { .section-btn li.movie-section-02 { width: 100%; } }
.section-btn li.movie-section-02 a img.movieicon { width: 50px; height: 36px; position: absolute; left: 20px; }
@media screen and (max-width: 767px) { .section-btn li.movie-section-02 a img.movieicon { width: 8vw; height: auto; left: 3vw; } }
.section-btn li.movie-section-02.movie { margin-bottom: 0; }
@media screen and (max-width: 767px) { .section-btn li.movie-section-02.movie { margin-bottom: 2vw; } }
.section-btn li.movie-section-02.movie a.blank { background-image: none; }
.section-btn li.movie-section-02.movie a.blank img.icon { width: 15px; height: 15px; display: inline-block; position: absolute; right: 19px; top: 50%; margin-top: -6px; }
@media screen and (max-width: 767px) { .section-btn li.movie-section-02.movie a.blank img.icon { right: 3vw; margin-top: 0; } }
@media screen and (min-width: 768px) { .section-btn li.movie-section-02 + .movie-section-02 { padding-top: 10px; } }
.section-btn a { display: flex; justify-content: center; align-items: center; margin: 0 auto; width: 100%; height: 64px; background-color: #008577; background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg  xmlns='http://www.w3.org/2000/svg' viewBox='0 0 19 19' %3E%3Cg%3E%3Cpath fill='%23ffffff' d='M18.9,10c0-.2.1-.3.1-.5h0c0-.2,0-.4-.1-.5h0c0-.2-.2-.4-.3-.5L11.6,1.4c-.6-.6-1.5-.6-2.1,0s-.6,1.5,0,2.1l4.4,4.4H1.5c-.8,0-1.5.7-1.5,1.5s.7,1.5,1.5,1.5h12.4l-4.4,4.5c-.6.6-.6,1.5,0,2.1.3.3.7.4,1.1.4s.8-.1,1.1-.5l6.9-7.1h0c.1-.2.2-.3.3-.5,0,0,0,0,0,0h0Z' /%3E%%3C/g%3E%3C/svg%3E"); background-repeat: no-repeat; background-size: 18px 18px; background-position: right 18px center; border-radius: 5px; font-size: inherit; font-weight: bold; line-height: 1; color: #fff; text-decoration: none; text-align: center; position: relative; }
@media screen and (max-width: 767px) { .section-btn a { height: auto; min-height: 12vw; max-width: 85vw; padding: 3vw 10vw; } }
.section-btn a.sky { background-color: #41a5d7; }
.section-btn a.blank { background-image: none; }
.section-btn a.blank .icon { width: 17px; height: 17px; border: 0; position: absolute; right: 20px; top: 50%; transform: translateY(-50%); }
.section-btn + h3 { margin-top: 40px; }
.section-btn-box { gap: 2%; padding: 0 20px; }
@media screen and (max-width: 767px) { .section-btn-box { padding: 0; } }
.section-btn-box li { background-color: #FFF; border-radius: 5px; padding: 10px; text-align: center; margin: 0; }
@media screen and (max-width: 767px) { .section-btn-box li { padding: 3vw; } }
.section-btn-box li h4 { font-size: 15px; margin-bottom: 10px; }
@media screen and (max-width: 767px) { .section-btn-box li h4 { font-size: 3.8vw; } }
.section-btn-box li a { width: 100%; height: auto; padding: 10px 25px; background-position: right 10px center; background-size: 14px 14px; }
.section-btn-box li ul { display: flex; flex-wrap: wrap; gap: 2%; }
@media screen and (max-width: 767px) { .section-btn-box li ul { gap: 2vw; } }
.section-btn-box li ul li { width: 49%; margin: 0; padding: 0; }
@media screen and (max-width: 767px) { .section-btn-box li ul li { width: 100%; } }
.section-btn-box li.ecotank { border: 2px solid #62a626; width: 40%; }
@media screen and (max-width: 767px) { .section-btn-box li.ecotank { width: 100%; margin-bottom: 3vw; } }
.section-btn-box li.ecotank h4 { color: #62a626; }
.section-btn-box li.ecotank a { background-color: #62a626; }
.section-btn-box li.cartridge { border: 2px solid #3e9ecf; width: 58%; }
@media screen and (max-width: 767px) { .section-btn-box li.cartridge { width: 100%; } }
.section-btn-box li.cartridge h4 { color: #3e9ecf; }
.section .btnList { display: flex; flex-wrap: wrap; justify-content: center; gap: 2%; }
@media screen and (max-width: 767px) { .section .btnList { gap: 2vw; margin-bottom: 5vw !important; } }
.section .btnList li { width: 49%; }
@media screen and (max-width: 767px) { .section .btnList li { width: 100%; } }
@media screen and (max-width: 767px) { .section .linkList { margin-bottom: 10vw !important; } }
.section .linkList li:not(:last-child) { margin-bottom: 10px; }
@media screen and (max-width: 767px) { .section .linkList li:not(:last-child) { margin-bottom: 2vw; } }

/* mainvisual */
.mainvisual { margin: 0 auto 30px; }
@media screen and (min-width: 768px) { .mainvisual { width: 1240px; } }

.movie-page-menu { background-color: #f2f4f6; padding: 40px; margin: 60px 0 20px; }
@media screen and (max-width: 767px) { .movie-page-menu { padding: 5vw; margin: 10vw 0 5vw; } }
.movie-page-menu h3 { font-size: 22px; border-bottom: 1px solid #008577; text-align: center; color: #008577; }
@media screen and (max-width: 767px) { .movie-page-menu h3 { font-size: 4.4vw; } }
.movie-page-menu .section-btn { margin-top: 1.0rem; }
.movie-page-menu .section-btn a { background-color: #41a5d7; }

.smile-flow { margin: 0 auto; display: flex; flex-wrap: wrap; justify-content: center; margin-bottom: 50px; }
@media screen and (min-width: 768px) { .smile-flow { width: 1240px; }
  .smile-flow.flow3 dl { width: 33.33333%; } }
.smile-flow dl { padding: 0 20px; position: relative; font-size: 14px; width: calc(100% / 4); }
@media screen and (max-width: 767px) { .smile-flow dl { width: 100%; padding: 20px 0; font-size: 3.6vw; display: flex; flex-wrap: wrap; gap: 2vw; } }
.smile-flow dl:first-child { padding-left: 0; }
@media screen and (max-width: 767px) { .smile-flow dl:first-child { padding-top: 0; } }
.smile-flow dl:last-child { padding-right: 0; }
@media screen and (max-width: 767px) { .smile-flow dl:last-child { padding-bottom: 0; } }
@media screen and (min-width: 768px) { .smile-flow dl:not(:last-child) { border-right: 1px dotted #008577; } }
@media screen and (max-width: 767px) { .smile-flow dl:not(:last-child) { border-bottom: 1px dotted #008577; } }
.smile-flow dl:not(:last-child)::after { content: ""; display: inline-block; width: 26px; height: 26px; background: url("/myepson/smileplussc/images/arrow-right.png") no-repeat center center; background-size: 26px 26px; position: absolute; }
@media screen and (min-width: 768px) { .smile-flow dl:not(:last-child)::after { top: 50%; right: -13px; transform: translateY(-50%); } }
@media screen and (max-width: 767px) { .smile-flow dl:not(:last-child)::after { bottom: -13px; left: 50%; transform: translateX(-50%) rotate(90deg); } }
.smile-flow dl dt { font-weight: bold; color: #008577; }
@media screen and (min-width: 768px) { .smile-flow dl dt { margin-bottom: 15px; } }
@media screen and (max-width: 767px) { .smile-flow dl dt { font-size: 4vw; order: 1; width: 100%; text-align: left !important; } }
.smile-flow dl dd { margin-bottom: 10px; text-align: justify; text-align: center; }
.smile-flow dl dd.img { min-height: 156px; }
@media screen and (max-width: 767px) { .smile-flow dl dd.img { min-height: inherit; order: 3; width: calc(40% - 1vw); } }
.smile-flow dl dd.text { text-align: left; }
@media screen and (max-width: 767px) { .smile-flow dl dd.text { width: calc(60% - 1vw); order: 2; }
  .smile-flow dl dd.text.textFull { width: 100%; } }

.close-btn a { display: inline-block; background-color: #EBEBEB; color: #333; font-size: 84%; padding: 3px 10px; }
.close-btn a:hover { text-decoration: none; opacity: .8; }
.close-btn a:before { content: "×"; margin-right: 5px; }

.mfp-close:focus { border: 2px solid #008577; }

.listCaution li { padding-left: 3em; position: relative; font-size: .8rem; line-height: 1.6; text-indent: -3em; }
@media screen and (max-width: 767px) { .listCaution li { font-size: 3vw; } }

.popupbox { background-color: #FFF; border-radius: 20px; padding: 20px; text-align: center; box-sizing: border-box; width: 460px; }
@media screen and (max-width: 767px) { .popupbox { width: 90%; } }

.mfp-hide { display: none !important; }


/* 20260903 */
.btnList.col5 {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 10px;
}
.btnList.col5 li {
  display: flex;
  width: auto;
}
.btnList.col5 li a.linkBtn {
  font-size: 17px;
  padding: 6px 12px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-feature-settings: "palt";
}
.linkBtn.premium {
  background-image: url(/myepson/smileplussc/images/icon-premium.png);
  background-repeat: no-repeat;
  background-size: 28px auto;
  background-position: left 16px center;
}
.comingsoon-wrap .dotList {
  margin-top: 20px;
}

.comingsoon-wrap .dotList dd {
  padding-left: 1em;
  line-height: 1.6;
  position: relative;
}

.comingsoon-wrap .dotList dd::before {
  display: inline-block;
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
}
button.linkBtn { display: inline-block; position: relative; text-align: center; font-size: 23px; background-color: #008577; color: #FFF !important; border-radius: 9999px; padding: 10px 70px; font-weight: bold; width: 100%; max-width: 640px; }
@media screen and (max-width: 767px) { button.linkBtn { min-width: inherit; width: 100%; font-size: 4.6vw; padding: 3vw 10vw; } }
button.linkBtn:hover { text-decoration: none; }
button.linkBtn::after { content: ""; display: inline-block; vertical-align: middle; color: #FFF; line-height: 1; width: .6em; height: .6em; border: 0.1em solid currentColor; border-left: 0; border-bottom: 0; box-sizing: border-box; position: absolute; right: 20px; top: 50%; transform: translateY(-75%) rotate(135deg); }
button.linkBtn.pink { background-color: #e9557e; }
button.linkBtn.registration { background-image: url("/myepson/smileplussc/images/icon-registration.png"); background-repeat: no-repeat; background-size: 35px auto; background-position: left 20px center; }
button.linkBtn.repair { background-image: url("/myepson/smileplussc/images/icon-mente.png"); background-repeat: no-repeat; background-size: 35px auto; background-position: left 20px center; }
button.linkBtn.setting { background-image: url("/myepson/smileplussc/images/icon-setting.png"); background-repeat: no-repeat; background-size: 35px auto; background-position: left 20px center; }
button.linkBtn.question { background-image: url("/myepson/smileplussc/images/icon-qa.png"); background-repeat: no-repeat; background-size: 35px auto; background-position: left 20px center; }
button.linkBtn.blank::after { content: none; }
button.linkBtn.blank .icon { width: 17px; height: 17px; border: 0; position: absolute; right: 20px; top: 50%; transform: translateY(-50%); }
button.linkBtn:disabled {
  background-color: #ccc !important;
  color: #464646 !important;
  box-shadow: none;
  border: 2px solid #7e7e7e;
}

button.linkBtn:disabled .icon img {
  filter: grayscale(100%);
}

button.linkBtn:disabled:hover {
  opacity: unset;
  transform: unset;
}
@media screen and (max-width: 767px) {
  .btnList.col5 li {
    width: 100%;
  }
  .comingsoon-wrap .dotList {
    margin-top: 10px;
  }
}

/* 202610 MyPrintStory */
.my-print-story-step {
  margin-top: 56px;
}
.my-print-story-step-panel {
  display: flex;
  gap: 56px;
  justify-content: space-between;
}
.my-print-story-step-panel > li {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 20px;
  border-radius: 30px;
  background: #FFF1A3;
  border: 2px solid #000;
  padding: 0 20px 20px;
  text-align: center;
  background-image: url(/myepson/smileplussc/images/bg-myprintstory-step.svg);
  background-position: top center;
  background-repeat: repeat-x;
  background-size: 100% auto;
}
.my-print-story-step-panel > li:not(:last-child)::after {
  content: "";
  position: absolute;
  display: block;
  aspect-ratio: 48 / 38;
  width: 48px;
  right: -48px;
  top: 50%;
  transform: translateY(-50%);
  background-image: url(/myepson/smileplussc/images/icn-arrow.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.my-print-story-step-batch {
  font-weight: 600;
  color: #fff;
  background-color: #008577;
  width: 96px;
  aspect-ratio: 1 / 1;
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  line-height: 1.2;
  margin: -20px auto 0;
  padding-top: 10px;
  border: 2px solid #000;
}
.my-print-story-step-batch .num {
  font-size: 36px;
}
.my-print-story-step-text {
  font-weight: 600;
  margin-bottom: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1;
  flex-direction: column;
}
.my-print-story-step-text .note {
  margin-top: 10px;
  font-weight: normal;
  letter-spacing: -0.07em;
}
.my-print-story-step-image img {
  border-radius: 5px;
  width: 100%;
}
.my-print-story-step-btn {
  text-align: center;
  margin-top: min(48px, 10vw);
}
.my-print-story-step-btn > a {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  text-decoration: none;
  justify-content: center;
  font-size: 22px;
  font-weight: 600;
  padding: 20px 20px;
  width: min(380px, 90%);
  color: #fff;
  background-color: #000;
  font-size: min(18px, 3.6vw);
  box-shadow: 2px 4px 0px 0px rgba(0, 0, 0, 0.25);
  border-radius: 100px;
  margin: auto;
  transition: all 0.2s ease-in;
}
.my-print-story-step-btn > a:hover {
  opacity: 0.8;
  text-decoration: none;
  transform: translateY(2px);
  box-shadow: none;
}
.my-print-story-step-btn .iconWrap {
  position: absolute;
  display: inline-block;
  top: 50%;
  transform: translateY(-50%);
  right: 20px;
  width: 20px;
  height: 20px;
}
@media screen and (max-width: 767px) {
  .my-print-story-step-panel {
    flex-direction: column;
  }
  .my-print-story-step-panel {
    gap: 80px;
  }
  .my-print-story-step-panel > li:not(:last-child)::after {
    top: auto;
    right: auto;
    bottom: -36px;
    left: 50%;
    transform: translateX(-50%) rotate(90deg);
    width: 40px;
  }
  .my-print-story-step-btn > a {
    padding: 3.5vw 2vw;
    justify-content: center;
    font-size: 16px;
  }
}



/* smileplussc */
a.link-text {
  text-decoration: none !important;
}
a.link-text:hover {
  color: #005AB4;
  text-decoration: underline !important;
  opacity: unset;
}
span.bold {
  font-weight: bold;
}
.pt12 {
  padding-top: 12px;
}
.pl120 {
  padding-left: 120px;
}
.linkList > li > a {
  color: #008577;
}
.linkList > li > a::before {
  color: #008577;
}
.linkList > li > a.link::before {
  content: "";
  display: inline-block;
  width: 17px;
  height: 17px;
  background: url(/common/img/ico_img_07.svg) no-repeat center top;
  background-size: 17px 17px;
  position: absolute;
  top: 0;
  left: 0;
}
.linkList > li > a.link.anchor::before {
  transform: rotate(90deg);
}
h2.section-title {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 15px;
  margin-bottom: 0;
}
h2.section-title::before {
  content: "";
  display: block;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.section.registration h2.section-title::before {
  width: 27px;
  aspect-ratio: 27 / 27;
  background-image: url(/myepson/smileplussc/images/icon-registration.png);
}
.section.repair h2.section-title::before {
  width: 28px;
  aspect-ratio: 28 / 28;
  background-image: url(/myepson/smileplussc/images/icon-mente.png);
}
.section.setting h2.section-title::before {
  width: 28px;
  aspect-ratio: 28 / 25;
  background-image: url(/myepson/smileplussc/images/icon-setting.png);
}
.section.premium h2.section-title::before {
  width: 36px;
  aspect-ratio: 28 / 21;
  background-image: url(/myepson/smileplussc/images/icon-premium.png);
}
.section.question h2.section-title::before {
  width: 28px;
  aspect-ratio: 28 / 28;
  background-image: url(/myepson/smileplussc/images/icon-qa.png);
}
.section-lead .call .bbl::before,
.section-lead .call .bbl::after {
  content: '';
  position: absolute;
  top: 48px;
  display: block;
  width: 71px;
  aspect-ratio: 142 / 136;
  background-image: url(/myepson/smileplussc/images/icon-slash.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.section-lead .call .bbl::before {
  left: -18px;
}
.section-lead .call .bbl::after {
  right: -18px;
  transform: scaleX(-1);
}
.flow-list-wrap {
  background: #f0faf9;
  padding-bottom: 40px;
}
.flow-list {
  background-color: #f0faf9;
  padding: 30px 120px 48px;
}
.flow-batch {
  font-weight: 600;
  color: #fff;
  background-color: #e95479;
  width: 80px;
  min-width: 80px;
  aspect-ratio: 1 / 1;
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  line-height: 1.2;
  padding-top: 10px;
  font-size: 14px;
}
.flow-batch .num {
  font-size: 29px;
}
.flow-list-head {
  display: flex;
  gap: 40px;
  align-items: center;
}
.flow-title-wrap {
  width: 100%;
}
.flow-title {
  color: #e95479;
  font-weight: bold;
  font-size: 20px;
  border-bottom: 1px solid #b8ccc9;
  padding: 16px 0 14px;
}
.flow-list-body {
  padding-left: 77px;
  padding-top: 12px ;
  border-left: 5px solid #cfe6e3;
  margin-left: 38px;
  display: flex;
  gap: 36px;
}
.flow-list > li:last-child .flow-list-body {
  border-left: none;
  padding-left: 83px;
}
.flow-list > li:not(:last-child) .flow-list-body {
  padding-bottom: 78px;
}
.flow-list.support {
  margin-top: 40px;
}
.flow-img-wrap.col2 {
  display: flex;
  flex-direction: column;
  gap: 36px;
}
.flow-img {
  width: 177px;
}
.flow-img-wrap.col2 .flow-img {
  width: 436px;
}
.flow-btn-wrap {
  margin-top: 32px;
  display: flex;
  align-items: start;
  gap: 16px;
  flex-direction: column;
}
.flow-btn {
  display: inline-block;
  position: relative;
  text-align: center;
  background-color: #008577;
  color: #FFF !important;
  border-radius: 9999px;
  padding: 10px 8px;
  font-weight: bold;
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  height: stretch;
  width: 100%;
  max-width: 280px;
  line-height: 1.4 !important;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg  xmlns='http://www.w3.org/2000/svg' viewBox='0 0 19 19' %3E%3Cg%3E%3Cpath fill='%23ffffff' d='M18.9,10c0-.2.1-.3.1-.5h0c0-.2,0-.4-.1-.5h0c0-.2-.2-.4-.3-.5L11.6,1.4c-.6-.6-1.5-.6-2.1,0s-.6,1.5,0,2.1l4.4,4.4H1.5c-.8,0-1.5.7-1.5,1.5s.7,1.5,1.5,1.5h12.4l-4.4,4.5c-.6.6-.6,1.5,0,2.1.3.3.7.4,1.1.4s.8-.1,1.1-.5l6.9-7.1h0c.1-.2.2-.3.3-.5,0,0,0,0,0,0h0Z' /%3E%%3C/g%3E%3C/svg%3E");
  background-repeat: no-repeat; background-size: 12px 11px; background-position: right 16px center; line-height: 1; text-decoration: none;
}
.flow-btn:hover {
  text-decoration: none;
}
.flow-btn:has(.iconWrap) {
  background-image: unset;
}
.flow-btn .iconWrap {
  position: absolute;
  display: inline-block;
  top: 50%;
  transform: translateY(-50%);
  right: 12px;
  width: 20px;
  height: 20px;
}
.flow-text.link {
  margin-top: 20px;
}
.flow-text.link > a {
  text-decoration: underline;
}
.flow-text.attention {
  color: #e60012;
  font-weight: bold;
  display: flex;
  gap: 8px;
  margin-top: 24px;
}
.flow-text.attention::before {
  content: "";
  display: block;
  width: 20px;
  aspect-ratio: 20 / 17;
  background-image: url(/myepson/smileplussc/images/icon-attention.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.flow-text.check {
  color: #008577;
  font-weight: bold;
  display: flex;
  gap: 8px;
  margin-top: 24px;
}
.flow-text.check::before {
  content: "";
  display: block;
  width: 20px;
  aspect-ratio: 20 / 20;
  background-image: url(/myepson/smileplussc/images/icon-check.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.flow-text.min {
  font-size: 14px;
}
.flow-text.attention + .flow-text.min {
  margin-top: 8px;
}
.flow-text.bold {
  font-weight: bold;
}
.flow-text.flex {
  display: flex;
  line-height: 1.7;
}
.flow-text.flex::before {
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background-color: #333;
  margin-right: 4px;
  vertical-align: middle;
  flex-shrink: 0;
  margin-top: 6px;
}
.flow-text-list {
  font-size: 14px;
  margin-top: 8px;
  font-size: 16px;
}
.flow-text-list > li {
  display: flex;
  line-height: 1.7;
}
.flow-text-list > li::before {
  content: "";
  display: inline-block;
  width: 2px;
  height: 2px;
  border-radius: 50%;
  background-color: #333;
  margin-right: 4px;
  vertical-align: middle;
  flex-shrink: 0;
  margin-top: 12px;
}
#contents.smileplusr .sizeLL .emph {
  color: #da5174;
}
.question-btn.pink {
  padding: 15px 8px;
}
.question-btn::before {
  content: "";
  display: block;
  width: 28px;
  aspect-ratio: 28 / 28;
  background-image: url(/myepson/smileplussc/images/icon-question.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  top: calc(50% - 14px);
  left: 24px;
}
.attention-wrap {
  border: 3px solid #e60012;
  border-radius: 8px;
  overflow: hidden;
  padding: 0px;
  margin: 45px auto 0;
}
.attention-wrap .title {
  background-color: #e60012;
  color: #FFF;
  font-size: 20px;
  margin-bottom: 0;
  padding: 12px 10px;
  display: flex;
  gap: 10px;
  align-items: center;
}
.attention-wrap .title::before {
  content: "";
  display: block;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: 30px;
  aspect-ratio: 60 / 50;
  background-image: url(/myepson/smileplussc/images/icon-attention-color.png);
}
.attention-wrap p {
  padding: 28px 36px;
  background-color: #fff0f1;
}
.attention-wrap ul {
  padding: 28px 36px;
  background-color: #fff0f1;
}
.attention-wrap ul li {
  line-height: 1.8;
  display: block;
  text-indent: -20px;
  padding-left: 20px;
}
.attention-wrap ul li::before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #e60012;
  margin-right: 10px;
  vertical-align: middle;
  flex-shrink: 0;
  margin-top: -4px;
}
.flow-list-wrap .attention-wrap {
  margin-inline: 40px;
}
.qa-wrap {
  background-color: #f2f4f6;
  padding: 40px 40px 48px;
}
.qa-title {
  font-size: 24px;
  font-weight: bold;
  color: #008577;
  text-align: center;
}
.qa-item {
  border: none;
  border-top: 1px solid #b8ccc9;
  border-bottom: 1px solid #b8ccc9;
  background-color: transparent;
}
.qa-item + .qa-item {
  border-top: none;
}
.qa-item + .qa-title {
  margin-top: 48px;
}
.qa-question {
  display: flex;
  align-items: start;
  padding: 20px 48px 20px 20px;
  font-size: 16px;
  font-weight: bold;
  cursor: pointer;
  position: relative;
  list-style: none;
  color: #333;
  transition: all 0.3s ease;
}
.qa-question::-webkit-details-marker {
  display: none;
}
.qa-question::after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  color: #008577;
  line-height: 1;
  width: .6em;
  height: .6em;
  border: 0.1em solid currentColor;
  border-left: 0;
  border-bottom: 0;
  box-sizing: border-box;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-75%) rotate(135deg);
  transition: transform 0.3s ease;
}
.qa-item[open] .qa-question::after {
  transform: translateY(-25%) rotate(-45deg);
}
.q-prefix {
  font-size: 24px;
  font-weight: 900;
  color: #008577;
  line-height: 1;
  margin-right: 12px;
  flex-shrink: 0;
}
.q-text {
  line-height: 1.5;
  font-size: 20px;
  margin-top: -2px;
}
.qa-answer {
  padding: 0 48px 20px 53px;
}
.qa-answer p {
  line-height: 1.7;
}
.qa-answer a {
  text-decoration: underline;
}
.qa-answer a:hover {
  text-decoration: none;
}
.qa-btn-wrap {
  margin-top: 48px;
}
.qa-btn-wrap.col2 {
  display: flex;
  gap: 20px;
  padding-inline: 60px;
}
.qa-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  width: 100%;
  height: 64px;
  background-color: #50a803;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg  xmlns='http://www.w3.org/2000/svg' viewBox='0 0 19 19' %3E%3Cg%3E%3Cpath fill='%23ffffff' d='M18.9,10c0-.2.1-.3.1-.5h0c0-.2,0-.4-.1-.5h0c0-.2-.2-.4-.3-.5L11.6,1.4c-.6-.6-1.5-.6-2.1,0s-.6,1.5,0,2.1l4.4,4.4H1.5c-.8,0-1.5.7-1.5,1.5s.7,1.5,1.5,1.5h12.4l-4.4,4.5c-.6.6-.6,1.5,0,2.1.3.3.7.4,1.1.4s.8-.1,1.1-.5l6.9-7.1h0c.1-.2.2-.3.3-.5,0,0,0,0,0,0h0Z' /%3E%%3C/g%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 12px 11px;
  background-position: right 16px center;
  border-radius: 5px;
  line-height: 1.275;
  text-decoration: none;
  font-weight: bold;
  color: #fff !important;
  text-align: center;
  font-size: 18px;
  padding: 16px 32px;
}
.qa-btn:hover {
  text-decoration: none;
}
.qa-btn.blank {
  background-image: unset;
  position: relative;
}
.qa-btn.blank .iconWrap {
  position: absolute;
  display: inline-block;
  top: 50%;
  transform: translateY(-50%);
  right: 12px;
  width: 20px;
  height: 20px;
}
.qa-question:hover {
  opacity: 0.7;
}
#contents.smileplusr .sizeM.underline {
  border-bottom: 1px solid #333;
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .sp-pl78 {
    padding-left: 78px;
  }
  .sp-mt20 {
    margin-top: 20px !important;
  }
  .btnList.col5 {
    grid-template-columns: repeat(1, 1fr);
  }
  .btnList.col5 > li > a {
    padding: 12px 60px !important;
  }
  a.linkBtn.setting {
    background-position: left 16px center;
    background-size: 28px auto;
  }
  .section-lead .call .emph {
    font-size: 4.5vw;
  }
  .section-lead .call .min {
    font-size: inherit;
  }
  .section-lead .call .bbl::before,
  .section-lead .call .bbl::after {
    top: 9vw;
    width: 14vw;
  }
  .flow-list {
    padding: 20px 8px;
  }
  .flow-batch {
    min-width: 36px;
    padding-top: 7px;
  }
  .flow-batch .num {
    font-size: 22px;
  }
  .flow-list-head {
    gap: 16px;
  }
  .flow-title {
    font-size: 18px;
    padding: 16px 0 8px;
  }
  .flow-list-body {
    margin-left: 29px;
    flex-direction: column-reverse;
    padding-left: 45px;
    gap: 20px;
  }
  .flow-btn-wrap {
    margin-top: 20px;
    flex-direction: column;
    align-items: start;
  }
  .flow-btn {
    max-width: 90%;
  }
  .flow-list > li:not(:last-child) .flow-list-body {
    padding-bottom: 40px;
  }
  .flow-list > li:last-child .flow-list-body {
    padding-left: 49px;
  }
  .flow-text-list {
    font-size: 14px;
  }
  .flow-text-list > li::before {
    margin-top: 10px;
  }
  .flow-text.flex::before {
    width: 2.8vw;
    height: 2.8vw;
    margin-top: 1.7vw;
  }
  .question-btn-wrap {
    padding-top: 20px;
  }
  .question-btn.pink {
    padding: 15px 64px;
  }
  .attention-wrap .title {
    font-size: 16px;
    padding: 8px;
  }
  .attention-wrap .title::before {
    width: 24px;
  }
  .attention-wrap p {
    padding: 18px 24px;
  }
  .attention-wrap ul {
    padding: 18px 24px;
  }
  .attention-wrap ul li {
    text-indent: -12px;
    padding-left: 12px;
  }
  .attention-wrap ul li::before {
    width: 6px;
    height: 6px;
    margin-right: 6px;
  }
  .flow-list-wrap .attention-wrap {
    margin-inline: 8px;
  }
  .qa-title {
    font-size: 17px;
  }
  .qa-wrap {
    padding: 32px 10px 36px;
  }
  .q-prefix {
    font-size: 16px;
  }
  .q-text {
    font-size: 16px;
    margin-top: -3px;
  }
  .qa-question {
    padding: 14px 40px 14px 10px;
  }
  .qa-answer {
    padding: 0 48px 20px 36px;
  }
  .qa-item + .qa-title {
    margin-top: 36px;
  }
  .qa-btn-wrap.col2 {
    padding: 0;
    flex-direction: column;
    gap: 3vw;
  }
  .qa-btn {
    font-size: inherit;
    height: 12vw;
  }
}