@charset "UTF-8";
.spD {
  display: none;
}
@media screen and (max-width: 640px) {
  .spD {
    display: block;
  }
}

@media screen and (max-width: 640px) {
  .pcD {
    display: none;
  }
}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
  box-sizing: border-box;
}

html {
  line-height: 1.5;
  -webkit-text-size-adjust: 100%;
}

body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  -webkit-font-smoothing: antialiased;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th, td {
  text-align: left;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}

q:before, q:after,
blockquote:before, blockquote:after {
  content: "";
}

img, svg, video, canvas, audio, iframe, embed, object {
  display: block;
  max-width: 100%;
}

a {
  text-decoration: none;
  color: inherit;
}

a img {
  border: none;
}

button,
input,
select,
textarea {
  font: inherit;
  color: inherit;
  margin: 0;
}

button {
  background: none;
  border: none;
  cursor: pointer;
}

textarea {
  resize: vertical;
}

[disabled] {
  cursor: not-allowed;
}

input[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

::-webkit-input-placeholder {
  opacity: 0.7;
}

:-ms-input-placeholder {
  opacity: 0.7;
}

::placeholder {
  opacity: 0.7;
}

b,
strong {
  font-weight: bolder;
}

i,
em {
  font-style: italic;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}

body,
html {
  background: #fff;
  max-width: 750px;
  margin: 0 auto;
  font-family: "Noto Sans CJK JP", sans-serif;
  color: #333;
}

.main {
  margin: 0 auto;
  width: 100%;
  position: relative;
}
.main .pt24 {
  padding-top: min(3.2vw, 24px);
}
.main .mt8 {
  margin-top: min(1.0666666667vw, 8px);
}
.main .mt16 {
  margin-top: min(2.1333333333vw, 16px);
}
.main .ml1 {
  margin-left: 1em;
}
.main .ml2, .main .inquiry__answer-txt--dot li.ml2, .main .inquiry__answer-txt--kome li.ml2, .main .inquiry__answer-txt--asterisk li.ml2 {
  margin-left: 2em;
}
.main .ml2 span, .main .inquiry__answer-txt--dot li.ml2 span {
  display: block;
  font-size: min(2.1333333333vw, 16px);
}
.main .kome {
  margin-left: 1.4em;
  position: relative;
  width: fit-content;
}
.main .kome::before {
  content: "※";
  position: absolute;
  font-size: inherit;
  left: -1.4em;
  top: 0;
}
.main .kome-s, .main .inquiry__answer-txt li, .main .question__answer-txt li {
  margin-left: 1em;
  position: relative;
}
.main .kome-s::before, .main .inquiry__answer-txt li::before, .main .question__answer-txt li::before {
  content: "※";
  position: absolute;
  font-size: inherit;
  left: -1em;
  top: 0;
}
.main .kome-dot, .main .inquiry__answer-txt--dot li, .main .question__answer-txt--dot li {
  margin-left: 1em;
  position: relative;
}
.main .kome-dot::before, .main .inquiry__answer-txt--dot li::before, .main .question__answer-txt--dot li::before {
  content: "・";
  position: absolute;
  font-size: inherit;
  left: -1em;
  top: 0;
}
.main .kome-asterisk, .main .inquiry__answer-txt--asterisk li, .main .question__answer-txt--asterisk li {
  margin-left: 1em;
  position: relative;
}
.main .kome-asterisk::before, .main .inquiry__answer-txt--asterisk li::before, .main .question__answer-txt--asterisk li::before {
  content: "＊";
  position: absolute;
  font-size: inherit;
  left: -1em;
  top: 0;
}
.main .txt-indent {
  text-indent: -1.6em;
  margin-left: 1.6em;
}
.main .pl-indent {
  padding-left: 1em;
}
.main .js-accordion_content {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transform-origin: top;
  transition: max-height 250ms ease-in-out, opacity 250ms ease-in-out, transform 250ms ease-in-out;
}
.main .js-accordion_content.is-visible {
  opacity: 1;
  transform: translateY(0);
  max-height: none;
}
.main .kv {
  width: 100%;
}
.main .banner {
  width: 100%;
  max-width: 750px;
  border-top: solid 5px #C4540A;
  padding: min(2.9333333333vw, 22px) 0 min(1.3333333333vw, 10px);
  background-color: #fff;
  background-image: url("../images/banner_overlay.png");
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  position: fixed;
  bottom: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  z-index: 99;
  transform: translateY(100%);
  transition: transform 250ms ease-out;
}
.main .banner.is-visible {
  transform: translateY(0);
}
.main .banner__close {
  position: absolute;
  top: min(1.0666666667vw, 8px);
  right: min(2.8vw, 21px);
  width: min(5.8666666667vw, 44px);
  height: min(5.8666666667vw, 44px);
  border-radius: 50%;
  background-color: #C4540A;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.main .banner__close::before, .main .banner__close::after {
  content: "";
  position: absolute;
  width: min(0.6666666667vw, 5px);
  height: 55%;
  background-color: #fff;
  border-radius: min(3.3333333333vw, 25px);
}
.main .banner__close::before {
  transform: rotate(45deg);
}
.main .banner__close::after {
  transform: rotate(-45deg);
}
.main .banner__txt {
  font-size: min(3.2vw, 24px);
  line-height: 1.6666666667;
}
.main .banner__txt a {
  color: #003CFF;
  text-decoration: underline;
}
.main .banner__txt-01 {
  padding-bottom: min(2.6666666667vw, 20px);
}
.main .banner__txt-02 {
  padding-top: min(1.7333333333vw, 13px);
}
.main .banner__btn {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: min(2.6666666667vw, 20px);
}
.main .banner__btn-closed {
  pointer-events: none;
}
.main .banner__btn a img {
  width: min(42vw, 315px);
}
.main .catchcopy {
  padding: min(3.2vw, 24px) 0;
  width: 100%;
  text-align: center;
  font-weight: 500;
  background-image: url("../images/icon_cc.png");
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
  position: relative;
  z-index: 5;
  line-height: 1.5714285714;
}
.main .catchcopy p {
  font-size: min(3.7333333333vw, 28px);
  height: min(11.4666666667vw, 86px);
  z-index: 10;
  position: inherit;
}
.main .catchcopy p span {
  font-size: min(4.8vw, 36px);
  line-height: 1.2222222222;
}
.main .catchcopy__border {
  z-index: 1;
  width: min(42vw, 315px);
  height: min(2vw, 15px);
  position: absolute;
  left: 50%;
  bottom: min(2.6666666667vw, 20px);
  background: #FFCBE1;
  transform: translateX(-50%);
}
.main .intro {
  position: relative;
  padding: min(8.6666666667vw, 65px) 0 min(6.4vw, 48px);
}
.main .intro__title {
  position: absolute;
  top: 0;
  z-index: 10;
  width: min(89.3333333333vw, 670px);
  left: 50%;
  transform: translateX(-50%);
}
.main .intro__x {
  position: absolute;
  width: min(10.6666666667vw, 80px);
  top: min(40vw, 300px);
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
}
.main .intro__content {
  display: flex;
  justify-content: center;
}
.main .intro__item {
  margin: 0 auto;
  padding-top: min(11.2vw, 84px);
  display: flex;
  flex-direction: column;
  align-items: center;
  width: min(50vw, 375px);
  position: relative;
}
.main .intro__item-pink {
  background: url("../images/intro_bg-pink.png") center/contain no-repeat;
}
.main .intro__item-green {
  background: url("../images/intro_bg-green.png") center/contain no-repeat;
}
.main .intro__item-title {
  font-size: min(4.5333333333vw, 34px);
  font-weight: 700;
  text-align: center;
  padding-bottom: min(3.2432432432vw, 24px);
  line-height: 1.3823529412;
}
.main .intro__item-title-pink {
  color: #EE007E;
}
.main .intro__item-title-green {
  color: #018999;
}
.main .intro__item-icon {
  width: min(19.4666666667vw, 146px);
  padding-bottom: min(3.2vw, 24px);
}
.main .intro__item-text {
  font-size: min(3.7333333333vw, 28px);
  font-weight: 500;
  padding: 0 min(4.2666666667vw, 32px) min(4.2666666667vw, 32px);
  line-height: 1.6785714286;
}
.main .intro__item-markup {
  position: absolute;
  top: min(42.6666666667vw, 320px);
  left: min(4.2666666667vw, 32px);
  font-size: min(2.6666666667vw, 20px);
  font-weight: 500;
}
.main .tabs {
  padding: 0 min(5.3333333333vw, 40px) min(10.6666666667vw, 80px);
}
.main .tabs__selector {
  display: flex;
  justify-content: center;
  gap: min(2.6666666667vw, 20px);
}
.main .tabs--open .selector {
  height: min(36vw, 270px) !important;
}
.main .tabs--open .selector .selector__ttl {
  padding-bottom: 0 !important;
}
.main .tabs .selector {
  cursor: pointer;
  width: 100%;
  height: min(47.3333333333vw, 355px);
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: min(1.7333333333vw, 13px);
  transition: height 250ms ease;
  position: relative;
}
.main .tabs .selector--01 {
  background-image: url("../images/tab01_bg.png");
  background-size: cover;
  background-position: top;
  background-repeat: no-repeat;
}
.main .tabs .selector--02 {
  background-image: url("../images/tab02_bg.png");
  background-size: cover;
  background-position: top;
  background-repeat: no-repeat;
}
.main .tabs .selector__icon {
  width: min(14.6666666667vw, 110px);
  padding-bottom: min(1.7333333333vw, 13px);
}
.main .tabs .selector__ttl {
  color: #fff;
  font-size: min(4.2666666667vw, 32px);
  font-weight: 600;
  padding-bottom: min(2.4vw, 18px);
  text-align: center;
  line-height: 1.1875;
}
.main .tabs .selector__ttl span {
  font-size: min(3.7333333333vw, 28px);
  line-height: 1.3571428571;
}
.main .tabs .selector__btn {
  background: #fff;
  border-radius: min(4.1333333333vw, 31px);
  font-size: min(3.7333333333vw, 28px);
  font-weight: 600;
  line-height: 1.2857142857;
  padding: min(1.2vw, 9px) min(1.6vw, 12px) min(1.6vw, 12px) min(2.5333333333vw, 19px);
  display: flex;
  align-items: center;
  gap: min(1.4666666667vw, 11px);
  text-wrap: nowrap;
}
.main .tabs .selector__btn figure img {
  margin-top: min(0.2666666667vw, 2px);
  width: min(4.5333333333vw, 34px);
  vertical-align: middle;
}
.main .tabs .selector__btn--01 {
  color: #FF3D91;
}
.main .tabs .selector__btn--02 {
  color: #01AF99;
}
.main .tabs .selector__markup {
  position: absolute;
  top: min(12.6666666667vw, 95px);
  left: min(2.6666666667vw, 20px);
  color: #fff;
  font-size: min(2.6666666667vw, 20px);
  font-weight: 500;
}
.main .tabs__content {
  padding: min(5.3333333333vw, 40px) min(2.6666666667vw, 20px);
  display: none;
  opacity: 0;
  transform-origin: top;
  transform: translateY(10px);
  transition: opacity 250ms ease, transform 250ms ease;
  border-bottom-left-radius: min(2vw, 15px);
  border-bottom-right-radius: min(2vw, 15px);
  position: relative;
}
.main .tabs__content.is-visible {
  display: block;
  opacity: 1;
  transform: translateY(0);
}
.main .tabs__content-pink {
  background-image: url("../images/tab01_contentBg.png");
  background-size: cover;
  background-position: top center;
  background-repeat: no-repeat;
  background-color: #FF3D91;
}
.main .tabs__content-pink .tabs__content--inner {
  padding-bottom: min(5.3333333333vw, 40px);
}
.main .tabs__content-pink .tabs__content--cc {
  border-color: #FF3D91;
}
.main .tabs__content-green {
  background-image: url("../images/tab02_contentBg.png");
  background-size: cover;
  background-position: top center;
  background-repeat: no-repeat;
  background-color: #01AF99;
}
.main .tabs__content-green .tabs__content--inner {
  padding-bottom: min(13.2vw, 99px);
}
.main .tabs__content-green .tabs__content--cc {
  border-color: #01AF99;
}
.main .tabs__content--ttl {
  color: #fff;
  text-align: center;
  font-size: min(4.8vw, 36px);
  font-weight: 600;
  padding-bottom: min(5.3333333333vw, 40px);
  line-height: 1.4444444444;
}
.main .tabs__content--inner {
  background: #fff;
  border-radius: min(2vw, 15px);
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
}
.main .tabs__content--icon {
  position: absolute;
  width: min(19.3333333333vw, 145px);
  top: min(17.6vw, 132px);
  z-index: 1;
}
.main .tabs__content--icon-pink {
  left: min(6.6666666667vw, 50px);
}
.main .tabs__content--icon-green {
  right: min(6.6666666667vw, 50px);
}
.main .tabs__content--float {
  position: absolute;
  z-index: 1;
  top: min(32.5333333333vw, 244px);
  left: min(25.3333333333vw, 190px);
  font-size: min(2.6666666667vw, 20px);
  font-weight: 500;
  line-height: 2.1;
}
.main .tabs__content--cc {
  position: relative;
  z-index: 2;
  padding-bottom: min(3.2vw, 24px);
  width: 100%;
  border-bottom: min(1.0666666667vw, 8px);
  border-style: dotted;
  width: min(78vw, 585px);
}
.main .tabs__content--cc p {
  padding-top: min(12.5333333333vw, 94px);
  font-size: min(4.6666666667vw, 35px);
  font-weight: 600;
  text-align: center;
  line-height: 1.4571428571;
}
.main .tabs__content--cc p span {
  margin-left: min(1.3333333333vw, 10px);
  font-size: min(4.2666666667vw, 32px);
  line-height: 1.4375;
}
.main .tabs__content--method {
  padding: min(7.0666666667vw, 53px) 0 min(4.2666666667vw, 32px);
  width: min(45.6vw, 342px);
  margin: 0 auto;
}
.main .tabs__content--step {
  padding-top: min(6.4vw, 48px);
}
.main .tabs__content--step-01 {
  padding-top: 0;
}
.main .tabs__content--step-ttl {
  width: min(18.1333333333vw, 136px);
  padding-bottom: min(3.2vw, 24px);
  margin: 0 auto;
}
.main .tabs__content--step-txt {
  font-size: min(4.2666666667vw, 32px);
  line-height: 1.4375;
  text-align: left;
  width: min(73.3333333333vw, 550px);
  margin: 0 auto;
}
.main .tabs__content--step-txt a {
  color: #003CFF;
  text-decoration: underline;
}
.main .tabs__content--step-txt--s {
  width: min(73.3333333333vw, 550px);
  margin: 0 auto;
  font-size: min(3.7333333333vw, 28px);
  line-height: 1.4285714286;
}
.main .tabs__content--step-txt-nw {
  width: min(77.0666666667vw, 578px);
  margin: 0 auto;
}
.main .tabs__content--step-txt-nw p {
  font-size: min(4vw, 30px);
}
.main .tabs__content--step-txt-nw p a {
  font-size: min(4.2666666667vw, 32px);
}
.main .tabs__content--step-img {
  width: min(73.2vw, 549px);
  height: auto;
  margin: min(3.2vw, 24px) auto 0;
}
.main .tabs__content--step-closed {
  width: min(76.4vw, 573px);
  font-size: min(4.8vw, 36px);
  font-weight: 600;
  margin: min(3.2vw, 24px) auto;
  line-height: 1.4444444444;
  color: #333333;
  background: #CFCFCF;
  border-radius: min(5.6vw, 42px);
  padding: min(2.1333333333vw, 16px) 0;
  text-align: center;
  pointer-events: none;
}
.main .tabs__content--step-btn {
  width: min(76.4vw, 573px);
  background: #009200;
  border-radius: min(5.6vw, 42px);
  color: #fff;
  font-size: min(4.8vw, 36px);
  font-weight: 600;
  text-align: center;
  margin: min(3.2vw, 24px) auto;
  position: relative;
  z-index: 10;
  box-shadow: min(0.9333333333vw, 7px) min(1.0666666667vw, 8px) 0 #005D00;
  cursor: pointer;
  line-height: 1.4444444444;
}
.main .tabs__content--step-btn a {
  display: block;
  padding: min(2.1333333333vw, 16px) 0;
}
.main .tabs__content--step-btn::after {
  content: "";
  position: absolute;
  top: 50%;
  right: min(4vw, 30px);
  transform: translateY(-50%);
  width: min(9.8666666667vw, 74px);
  height: min(8.4vw, 63px);
  background-image: url("../images/icon_play.png");
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
}
.main .tabs__content--prize-ttl {
  width: min(25.7333333333vw, 193px);
  margin: 0 auto;
  padding-bottom: min(3.2vw, 24px);
  padding-top: min(8vw, 60px);
}
.main .tabs__content--prize--inner {
  width: min(73.3333333333vw, 550px);
  margin: 0 auto;
  padding: min(1.0666666667vw, 8px) min(4.1333333333vw, 31px) min(3.2vw, 24px);
  border-radius: min(2vw, 15px);
  margin-bottom: min(4.2666666667vw, 32px);
  box-sizing: border-box;
}
.main .tabs__content--prize--inner-pink {
  background: #FEF5F9;
}
.main .tabs__content--prize--inner-green {
  background: #EBFCFC;
}
.main .tabs__content--prize--inner-ttl {
  margin: 0 auto;
  width: 100%;
  padding-bottom: min(1.0666666667vw, 8px);
  border-bottom: min(1.0666666667vw, 8px);
  border-style: dotted;
}
.main .tabs__content--prize--inner-ttl img {
  width: min(24.1333333333vw, 181px);
  margin: 0 auto;
}
.main .tabs__content--prize--inner-ttl-pink {
  border-color: #FF3D91;
}
.main .tabs__content--prize--inner-ttl-green {
  border-color: #01AF99;
}
.main .tabs__content--prize--inner-points .logo {
  margin: 0 auto;
  width: min(34.6666666667vw, 260px);
  padding: min(3.2vw, 24px) 0;
}
.main .tabs__content--prize--inner-points p {
  font-size: min(3.7333333333vw, 28px);
  font-weight: 500;
  text-align: center;
  line-height: 1.4285714286;
}
.main .tabs__content--prize--inner-points .points img {
  width: min(52.5333333333vw, 394px);
  margin: min(-1.6vw, -12px) auto 0;
}
.main .tabs__content--prize--inner-points .kome-s, .main .tabs__content--prize--inner-points .inquiry__answer-txt li, .main .inquiry__answer-txt .tabs__content--prize--inner-points li, .main .tabs__content--prize--inner-points .question__answer-txt li, .main .question__answer-txt .tabs__content--prize--inner-points li {
  margin-top: min(1.3333333333vw, 10px);
  width: fit-content;
}
.main .inquiry__answer.is-visible {
  padding: min(3.7333333333vw, 28px) min(3.7333333333vw, 28px) min(3.4666666667vw, 26px);
}
.main .question__answer.is-visible {
  padding: min(3.7333333333vw, 28px) min(3.7333333333vw, 28px) min(2.4vw, 18px);
}
.main .inquiry, .main .question {
  margin: 0 min(5.3333333333vw, 40px) min(10.6666666667vw, 80px);
  padding-bottom: 0;
  background: #FEF5E6;
  border-radius: min(2vw, 15px);
  overflow: hidden;
}
.main .inquiry__selector, .main .question__selector {
  position: relative;
  padding: min(4.4vw, 33px) min(2.6666666667vw, 20px) min(3.7333333333vw, 28px);
  cursor: pointer;
}
.main .inquiry__selector--ttl-q img, .main .question__selector--ttl-q img {
  width: min(49.8666666667vw, 374px);
  margin: 0 auto;
}
.main .inquiry__selector--ttl-i img, .main .question__selector--ttl-i img {
  width: min(34.1333333333vw, 256px);
  margin: 0 auto;
}
.main .inquiry__selector--icon, .main .question__selector--icon {
  position: absolute;
  top: 50%;
  right: min(2.6666666667vw, 20px);
  transform: translateY(-50%);
  width: min(5.8666666667vw, 44px);
  height: min(5.8666666667vw, 44px);
  border-radius: 50%;
  flex-shrink: 0;
  margin-left: auto;
}
.main .inquiry__selector--icon::before, .main .question__selector--icon::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: min(5.0666666667vw, 38px);
  height: min(1vw, 7.5px);
  background: #C4540A;
  border-radius: min(6.6666666667vw, 50px);
  transform: translate(-50%, -50%);
}
.main .inquiry__selector--icon::after, .main .question__selector--icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: min(5.0666666667vw, 38px);
  height: min(1vw, 7.5px);
  background: #C4540A;
  border-radius: min(6.6666666667vw, 50px);
  transform: translate(-50%, -50%) rotate(90deg);
  transition: transform 0.3s ease;
}
.main .inquiry__selector.is-open .inquiry__selector--icon::after, .main .inquiry__selector.is-open .question__selector--icon::after, .main .question__selector.is-open .inquiry__selector--icon::after, .main .question__selector.is-open .question__selector--icon::after {
  transform: translate(-50%, -50%) rotate(0deg);
}
.main .inquiry__answer, .main .question__answer {
  margin: 0 min(2.6666666667vw, 20px);
  padding: 0;
  border-radius: min(2vw, 15px);
  background: #fff;
  opacity: 0;
  transform: scaleY(0);
  transform-origin: top;
  transition: opacity 250ms ease, padding 0.25ms ease, transform 250ms ease;
}
.main .inquiry__answer.is-visible, .main .question__answer.is-visible {
  transform: scaleY(1);
  margin: 0 min(2.6666666667vw, 20px) min(3.7333333333vw, 28px);
  opacity: 1;
}
.main .inquiry__answer-txt, .main .question__answer-txt {
  padding-bottom: min(6.6666666667vw, 50px);
}
.main .inquiry__answer-txt:last-child, .main .question__answer-txt:last-child {
  padding-bottom: 0;
}
.main .inquiry__answer-txt h3, .main .question__answer-txt h3 {
  font-size: min(4.5333333333vw, 34px);
  font-weight: 700;
}
.main .inquiry__answer-txt p, .main .inquiry__answer-txt li, .main .question__answer-txt p, .main .question__answer-txt li {
  font-size: min(4.2666666667vw, 32px);
}
.main .inquiry__answer-txt--mt50, .main .question__answer-txt--mt50 {
  margin-top: min(6.6666666667vw, 50px);
}
.main .inquiry__answer-txt a, .main .question__answer-txt a {
  word-wrap: break-word;
  color: #003CFF;
  text-decoration: underline;
}
.main .contact {
  padding: 0 min(5.3333333333vw, 40px) min(10.6666666667vw, 80px);
}
.main .contact__ttl {
  padding-bottom: min(4.2666666667vw, 32px);
}
.main .contact__cc {
  text-align: center;
  font-size: min(4.2666666667vw, 32px);
  line-height: 1.4375;
}
.main .contact__mail {
  font-family: "Noto Sans JP", sans-serif;
  text-align: center;
  font-size: min(4.2666666667vw, 32px);
  line-height: 1.4375;
  margin: min(3.2vw, 24px) auto min(5.3333333333vw, 40px);
  color: #003CFF;
  text-decoration: underline;
}
.main .contact__border {
  width: 100%;
  border-bottom: min(1.0666666667vw, 8px);
  border-color: #C4540A;
  border-style: dotted;
  margin-bottom: min(5.3333333333vw, 40px);
}
.main .contact__info--txt {
  padding-bottom: min(4.2666666667vw, 32px);
}
.main .contact__info--txt:last-child {
  padding-bottom: 0;
}
.main .contact__info--txt h2 {
  color: #C4540A;
  font-size: min(4vw, 30px);
  padding-bottom: min(2.1333333333vw, 16px);
  line-height: 1.3333333333;
}
.main .contact__info--txt p {
  font-size: min(3.7333333333vw, 28px);
  line-height: 1.4285714286;
}
.main .footer {
  width: 100%;
  text-align: center;
  background: #C4540A;
  padding: min(4.2666666667vw, 32px) 0;
}
.main .footer p {
  color: #fff;
  font-size: min(3.2vw, 24px);
  line-height: 1.4583333333;
}