@charset "UTF-8";
/* ///////////////////////////////////////////////

　common style for modern browser
　Version: 4.0

/////////////////////////////////////////////// */
/* Base
----------------------------------------------- */
/*
　各要素のスタイルを初期化し、デフォルトのスタイルを定義
*/
@import url("https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@400;500;700&display=swap");
*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

:where([hidden]:not([hidden=until-found])) {
  display: none !important;
}

:where(html) {
  -webkit-text-size-adjust: none;
}

@supports not (min-block-size: 100dvb) {
  :where(html) {
    block-size: 100%;
  }
}
:where(body) {
  block-size: 100%;
  block-size: 100dvb;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
}

:where(input, button, textarea, select) {
  font: inherit;
  color: inherit;
}

:where(textarea) {
  resize: vertical;
  resize: block;
}

:where(button, label, select, summary, [role=button], [role=option]) {
  cursor: pointer;
}

:where(:disabled) {
  cursor: not-allowed;
}

:where(label:has(> input:disabled), label:has(+ input:disabled)) {
  cursor: not-allowed;
}

:where(button) {
  border: none;
  background: none;
  outline: none;
  -webkit-appearance: none;
  appearance: none;
}

:where(a) {
  text-underline-offset: 0.1ex;
}

:where(ul, ol) {
  list-style: none;
}

:where(img, svg) {
  max-inline-size: 100%;
  block-size: auto;
  vertical-align: bottom;
}

:where(p, li, dt, dd, th, td, h1, h2, h3, h4, h5, h6) {
  overflow-wrap: break-word;
}

:where(hr) {
  border: none;
  border-block-start: 1px solid;
  color: inherit;
  block-size: 0;
  overflow: visible;
}

:where(table) {
  border-collapse: collapse;
  border-spacing: 0;
}

:where(picture) {
  display: block;
}

:where(i, em) {
  font-style: normal;
}

/* Module
----------------------------------------------- */
.ul-disc > li {
  list-style: disc;
  margin-left: 1.2em;
}

.ol-decimal > li {
  list-style: decimal;
  margin-left: 1.2em;
}

/* State
----------------------------------------------- */
.hidden {
  display: none;
}

.hidden-pc {
  display: none;
}

@media (max-width: 768px) {
  .hidden-pc {
    display: block;
  }
  .hidden-pc.inline {
    display: inline-block;
  }
  .hidden-tab {
    display: none;
  }
}
@media (max-width: 520px) {
  .hidden-tab {
    display: block;
  }
  .hidden-tab.inline {
    display: inline-block;
  }
  .hidden-sp {
    display: none;
  }
}
@media (orientation: landscape) and (max-width: 768px) {
  .hidden-land {
    display: none;
  }
}
/* Utillity
----------------------------------------------- */
/* Text */
.taR {
  text-align: right;
}

.taL {
  text-align: left;
}

.taC {
  text-align: center;
}

.indent {
  padding-left: 1em;
  text-indent: -1em;
}

/* Image */
a img {
  backface-visibility: hidden;
  transition: all 0.2s;
}

@media (hover: hover) {
  a:hover img {
    opacity: 0.8;
  }
}
*[class|=logo] a {
  text-decoration: none;
}

*[class|=logo] a:hover {
  text-decoration: none;
}

*[class|=logo] a:hover img {
  opacity: 1;
}

a.tel {
  text-decoration: none;
}

a.tel img {
  opacity: 1;
}

/* button */
.btn {
  display: inline-block;
  backface-visibility: hidden;
  text-decoration: none;
  transition: opacity 0.2s;
}

@media (hover: hover) {
  .btn:hover {
    text-decoration: none;
    opacity: 0.8;
  }
  .btn:hover img {
    opacity: 1;
  }
}
/*

  FONT
----------------------------------------------- */
:root {
  font-size: 1px;
  --color-blue: #060080;
  --color-skyblue: #00BBF4;
  --color-lightgreen: #BAFFC6;
  --color-lightblue: #D8FFFB;
  --color-pink: #FFACAC;
  --color-yellow: #FFF450;
  --font-gothic: "Zen Kaku Gothic New", sans-serif;
}

html {
  overflow-x: revert;
  overflow-y: revert;
}

body {
  color: var(--color-blue);
  font-size: 16rem;
  font-family: var(--font-gothic);
  font-weight: 500;
  font-feature-settings: "palt";
  letter-spacing: 0.04em;
  overflow-x: revert;
  overflow-y: revert;
}

:is(p) {
  line-height: 1.8;
}

:is(li, dt, dd, th, td, address) {
  line-height: 1.75;
}

:is(input, textarea, select) {
  font-size: 16rem;
}

:where(a) {
  color: inherit;
}

:where(a):hover {
  text-decoration: none;
}

div img {
  width: inherit;
  vertical-align: bottom;
}

/*

  LAYOUT
----------------------------------------------- */
body {
  height: auto;
}

body::before, body::after {
  position: relative;
  content: "";
  display: block;
}

/*
body::before {
  height: 42px;
  background: linear-gradient(var(--color-yellow), var(--color-yellow)) 0 0/100% 17px no-repeat, linear-gradient(var(--color-yellow), var(--color-yellow)) 0 22px/100% 2px no-repeat, linear-gradient(var(--color-yellow), var(--color-yellow)) 0 31px/100% 2px no-repeat;
}
@media (max-width: 768px) {
  body::before {
    height: 20px;
    background: linear-gradient(var(--color-yellow), var(--color-yellow)) 0 0/100% 8px no-repeat, linear-gradient(var(--color-yellow), var(--color-yellow)) 0 11px/100% 1px no-repeat, linear-gradient(var(--color-yellow), var(--color-yellow)) 0 15px/100% 1px no-repeat, linear-gradient(var(--color-yellow), var(--color-yellow)) 0 19px/100% 1px no-repeat;
  }
}
  */
body::after {
  height: 65px;
  background: linear-gradient(var(--color-yellow), var(--color-yellow)) 0 0/100% 2px no-repeat, linear-gradient(var(--color-yellow), var(--color-yellow)) 0 9px/100% 2px no-repeat, linear-gradient(var(--color-yellow), var(--color-yellow)) 0 18px/100% 2px no-repeat, linear-gradient(var(--color-yellow), var(--color-yellow)) 0 25px/100% 40px no-repeat;
}

@media (max-width: 768px) {
  body::after {
    height: 34px;
    background: linear-gradient(var(--color-yellow), var(--color-yellow)) 0 0/100% 1px no-repeat, linear-gradient(var(--color-yellow), var(--color-yellow)) 0 5px/100% 1px no-repeat, linear-gradient(var(--color-yellow), var(--color-yellow)) 0 10px/100% 1px no-repeat, linear-gradient(var(--color-yellow), var(--color-yellow)) 0 14px/100% 20px no-repeat;
  }
}
body.isOpenMenu {
  overflow: hidden;
}

.mainContents {
  padding-top: clamp(80px, 7.8125vw, 140px);
}
@media (max-width: 768px) {
  .mainContents {
    padding-top: 17.9487179487vw;
  }
}

/*
  HEADER
----------------------------------------------- */
.lp-header {
  position: sticky;
  z-index: 10;
  top: 0;
  display: flex;
  justify-content: space-between;
  border-bottom: 2px solid var(--color-blue);
  background-color: #fff;
}

@media (min-width: 769px) {
  .lp-header {
    height: min(110px, 5.7291666667vw);
  }
}
@media (max-width: 768px) {
  .lp-header {
    height: 15.3846153846vw;
  }
}
.lp-header .logo {
  align-self: center;
}

.lp-header .logo a {
  display: flex;
  justify-content: center;
  align-items: center;
}

@media (min-width: 769px) {
  .lp-header .logo {
    width: min(560px, 35.313vw);
    margin-left: min(170px, 2vw);
  }
}
@media (max-width: 768px) {
  .lp-header .logo {
    width: 95%;
    margin: 0 auto;
  }
}
.lp-header .headerNav {
  margin-left: auto;
  margin-right: min(50px, 9.375vw);
  display: flex;
  align-items: center;
  gap: min(50px, 2.6041666667vw);
}

.lp-header .headerNav li {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: min(13px, 0.6770833333vw);
}

.lp-header .headerNav li i {
  line-height: 1;
  margin-right: 0.5208333333vw;
}
@media (max-width: 768px) {
  .lp-header .headerNav li i {
    margin-right: 0;
  }
}

.lp-header .headerNav li:nth-child(1) img {
  width: min(37px, 1.927vw);
}
@media (max-width: 768px) {
  .lp-header .headerNav li:nth-child(1) img {
    width: 7.9256410256vw;
  }
}

.lp-header .headerNav li:nth-child(2) img {
  width: min(37px, 1.927vw);
}
@media (max-width: 768px) {
  .lp-header .headerNav li:nth-child(2) img {
    width: 7.9923076923vw;
  }
}

.lp-header .headerNav li:nth-child(3) img {
  width: min(45px, 2.344vw);
}
@media (max-width: 768px) {
  .lp-header .headerNav li:nth-child(3) img {
    width: 10.8256410256vw;
  }
}

.lp-header .headerNav a {
  font-size: min(25px, 1.3020833333vw);
  font-weight: 700;
  text-decoration: none;
  display: flex;
  align-items: center;
}
@media (max-width: 768px) {
  .lp-header .headerNav a {
    flex-direction: column;
  }
}

.lp-header .headerNavBottom {
  margin-top: min(10px, 0.521vw);
  margin-right: min(30px, 1.563vw);
  display: flex;
}
@media (max-width: 768px) {
  .lp-header .headerNavBottom {
    display: none;
  }
}
.lp-header .headerNavBottom li {
  padding: 0 min(20px, 1.042vw);
  position: relative;
  line-height: 1;
  display: flex;
  align-items: center;
}
.lp-header .headerNavBottom li a {
  font-size: min(18px, 0.938vw);
  font-weight: bold;
}
.lp-header .headerNavBottom li + li:before {
  content: "";
  display: inline-block;
  height: 100%;
  width: 1px;
  background-color: #050080;
  position: absolute;
  top: 0;
  left: 0;
}

.lp-header {
  position: relative;
  position: fixed;
  width: 100%;
  top: 35px;
}
.lp-header::before {
  content: "";
  display: inline-block;
  height: 42px;
  width: 100%;
  background: linear-gradient(var(--color-yellow), var(--color-yellow)) 0 0/100% 17px no-repeat, linear-gradient(var(--color-yellow), var(--color-yellow)) 0 22px/100% 2px no-repeat, linear-gradient(var(--color-yellow), var(--color-yellow)) 0 31px/100% 2px no-repeat;
  position: fixed;
  top: 0;
  left: 0;
  background-color: #fff;
}
@media (max-width: 768px) {
  .lp-header {
    top: 20px;
  }
  .lp-header::before {
    height: 20px;
    background: linear-gradient(var(--color-yellow), var(--color-yellow)) 0 0/100% 8px no-repeat, linear-gradient(var(--color-yellow), var(--color-yellow)) 0 11px/100% 1px no-repeat, linear-gradient(var(--color-yellow), var(--color-yellow)) 0 15px/100% 1px no-repeat, linear-gradient(var(--color-yellow), var(--color-yellow)) 0 19px/100% 1px no-repeat;
    background-color: #fff;
  }
}
.lp-header .fixed-header {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(0, -50%);
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}
@media (max-width: 768px) {
  .lp-header .fixed-header {
    position: fixed;
    z-index: 99;
    top: auto;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 18.4615384615vw;
    background: rgba(255, 255, 255, 0.9098039216);
    transform: translate(0, 0);
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: row;
    border-top: solid 2px #050080;
    transition: all 0.5s;
  }
}
@media (max-width: 768px) {
  .lp-header .fixed-header.active {
    bottom: 0;
    top: auto;
  }
}
@media (max-width: 768px) {
  .lp-header .fixed-header .headerNav {
    width: 80%;
    margin: 0;
    gap: 0;
  }
}
@media (max-width: 768px) {
  .lp-header .fixed-header .headerNav li {
    flex-direction: column;
    width: 26.6666666667vw;
    position: relative;
    gap: 0;
  }
}
@media (max-width: 768px) {
  .lp-header .fixed-header .headerNav li a {
    font-size: 3.3333333333vw;
  }
}
@media (max-width: 768px) {
  .lp-header .fixed-header .headerNav li + li::before {
    content: "";
    width: 1px;
    height: 8.7179487179vw;
    background: #050080;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translate(0, -50%);
  }
}
.lp-header .fixed-header .btnMenu {
  display: none;
}
@media (max-width: 768px) {
  .lp-header .fixed-header .btnMenu {
    display: grid;
    width: 20vw;
    height: 100%;
    border-radius: 0;
    right: 0;
  }
}

/*
  MENU
----------------------------------------------- */
.gnav {
  position: fixed;
  z-index: 5;
  top: min(110px, 5.7291666667vw);
  left: 0;
  right: 0;
  bottom: 0;
  padding: 150px 20px;
  overflow-y: auto;
  background-color: #fff;
  opacity: 0;
  pointer-events: none;
  transition: 0.4s;
}
@media (max-width: 768px) {
  .gnav {
    padding: 33.3333333333vw 5.1282051282vw;
  }
}

.gnav ul {
  display: grid;
  justify-content: center;
  gap: max(10px, 1.8229166667vw);
  text-align: center;
}

.gnav a {
  font-weight: 700;
  font-size: max(16px, 1.5625vw);
  text-decoration: none;
}

.isOpenMenu .gnav {
  opacity: 0.95;
  pointer-events: inherit;
}

.gnav .sns-list {
  max-width: 250px;
  margin: 50px auto 0;
  align-items: center;
  display: flex;
  justify-content: space-evenly;
  align-items: center;
}
@media (max-width: 768px) {
  .gnav .sns-list {
    max-width: 150px;
    margin: 35px auto 0;
  }
}
.gnav .sns-list a {
  width: 50px;
}
@media (max-width: 768px) {
  .gnav .sns-list a {
    width: 30px;
  }
}
.gnav .sns-list a:nth-child(2) {
  width: 50px;
}
@media (max-width: 768px) {
  .gnav .sns-list a:nth-child(2) {
    width: 30px;
  }
}
.gnav .sns-list a:nth-child(3) {
  width: 50px;
}
@media (max-width: 768px) {
  .gnav .sns-list a:nth-child(3) {
    width: 30px;
  }
}
.gnav .sns-list a img {
  width: 100%;
}

/*
  BUTTON MENU
----------------------------------------------- */
.btnMenu {
  position: absolute;
  top: 50%;
  right: clamp(5px, 2.6041666667vw, 50px);
  display: grid;
  place-items: center;
  width: min(90px, 4.688vw);
  height: min(90px, 4.688vw);
  background-color: var(--color-blue);
  border-radius: clamp(3px, 0.8854166667vw, 17px);
  transform: translate(0, -50%);
}

@media (max-width: 768px) {
  .btnMenu {
    width: 13.5897435897vw;
  }
}
.btnMenu span, .btnMenu::before, .btnMenu::after {
  content: "";
  grid-area: 1/1;
  width: min(34px, 1.7708333333vw);
  height: min(3px, 0.15625vw);
  background: #fff;
  border-radius: 999px;
  transition: 0.2s;
}

@media (max-width: 768px) {
  .btnMenu span, .btnMenu::before, .btnMenu::after {
    width: 5.8974358974vw;
    height: 0.5128205128vw;
  }
}
.btnMenu::before {
  transform: translateY(-0.6em);
}
@media (max-width: 768px) {
  .btnMenu::before {
    transform: translateY(-2.0512820513vw);
  }
}

.btnMenu::after {
  transform: translateY(0.6em);
}
@media (max-width: 768px) {
  .btnMenu::after {
    transform: translateY(2.0512820513vw);
  }
}

.isOpenMenu .btnMenu::before {
  rotate: -45deg;
  transform: none;
}

.isOpenMenu .btnMenu::after {
  rotate: 225deg;
  transform: none;
}

.isOpenMenu .btnMenu span {
  opacity: 0;
}

/*
  電話でのお問い合わせ
----------------------------------------------- */
.cta-tel {
  background-color: var(--color-yellow);
  padding-block: min(80px, 4.1666666667vw) min(140px, 7.2916666667vw);
  color: #060080;
  text-align: center;
  position: relative;
}

@media (max-width: 768px) {
  .cta-tel {
    padding-block: 30px 40px;
  }
}
/*
.cta-tel::before {
  position: absolute;
  top: -8px;
  left: 0;
  right: 0;
  content: "";
  height: 2px;
  background-color: var(--color-blue);
}
*/
.cta-tel::after {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 50px;
  content: "";
  background: url(../img/tsushin/bg-line-cta.svg) repeat-x center bottom;
  background-color: #fff;
}

@media (max-width: 768px) {
  .cta-tel::after {
    height: 25px;
    background-size: 27px;
  }
}
.cta-tel h2 {
  margin-bottom: 0.5em;
  font-size: max(26px, 2.0833333333vw);
}

.cta-tel dl {
  display: grid;
  gap: 0.1em;
  justify-items: center;
}

.cta-tel dt {
  border-bottom: 1px solid #060080;
  font-size: max(16px, 1.3020833333vw);
}

.cta-tel dd {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: max(10px, 1.0416666667vw);
  font-size: max(22px, 2.0833333333vw);
  font-weight: 400;
}

.cta-tel dd i {
  display: flex;
  justify-content: center;
  align-items: center;
}

.cta-tel .tel {
  margin: clamp(10px, 0.78125vw, 15px) 0;
}

.cta-tel .tel i {
  width: max(30px, 2.34375vw);
  transform: translateY(0.15em);
}

.cta-tel .tel a {
  text-decoration: none;
  display: block;
  width: 394.87px;
}
@media (max-width: 768px) {
  .cta-tel .tel a {
    width: 58.9743589744vw;
    line-height: 0;
  }
}

.cta-tel .mail {
  margin: clamp(10px, 0.78125vw, 15px) 0;
}

.cta-tel .mail i {
  width: max(30px, 1.9791666667vw);
}

.cta-tel .mail a {
  display: block;
  width: 404.31px;
  text-decoration: none;
}
@media (max-width: 768px) {
  .cta-tel .mail a {
    width: auto;
    line-height: 0;
  }
}

@media (max-width: 768px) {
  .cta-tel .mail a img {
    width: 71.7948717949vw;
  }
}

/*
  FOOTER
----------------------------------------------- */
.lp-footer {
  padding: min(80px, 4.1666666667vw) min(50px, 2.6041666667vw) min(40px, 2.0833333333vw);
  position: relative;
}

@media (max-width: 768px) {
  .lp-footer {
    padding: 8.9743589744vw 5.1282051282vw 5.1282051282vw;
    margin-bottom: 12vw;
  }
}
.lp-footer .logo {
  width: 90%;
  max-width: 678px;
}

@media (min-width: 769px) {
  .lp-footer .logo {
    margin-left: min(220px, 11.4583333333vw);
    margin-bottom: min(50px, 1vw);
  }
}
@media (max-width: 768px) {
  .lp-footer .logo {
    width: 100%;
    margin-bottom: 5.1282051282vw;
  }
}
.lp-footer address {
  font-style: normal;
  font-size: max(16px, 1.0416666667vw);
  line-height: 1.5;
}

@media (max-width: 768px) {
  .lp-footer address {
    font-size: 4.1025641026vw;
  }
}
.lp-footer .copyright {
  display: block;
  font-size: max(12px, 0.7291666667vw);
  line-height: 1.5;
}

@media (min-width: 769px) {
  .lp-footer .copyright {
    text-align: left;
    margin-left: min(220px, 11.4583333333vw);
  }
}
.lp-footer .pagetop {
  position: fixed;
  z-index: 2;
  opacity: 0;
  pointer-events: none;
  transition: 0.4s;
}

.lp-footer .pagetop.show {
  opacity: 1;
  pointer-events: inherit;
  z-index: 4;
}

.lp-footer .fixedLine {
  position: fixed;
  z-index: 2;
  opacity: 0;
  pointer-events: none;
  transition: 0.4s;
}

.lp-footer .fixedLine.show {
  opacity: 1;
  pointer-events: inherit;
  z-index: 4;
  right: -15px;
}

@media (min-width: 769px) {
  .lp-footer .pagetop {
    width: 120px;
    bottom: 40px;
    right: 50px;
    display: none;
  }
  .lp-footer .fixedLine {
    width: min(180px, 9.375vw);
    bottom: 80px;
    right: -200px;
  }
  .lp-footer .fixedLine.show:hover {
    right: -5px;
  }
  .lp-footer .fixedLine.show:hover img {
    opacity: 1;
  }
}
@media (max-width: 768px) {
  .lp-footer .pagetop {
    width: 17.9487179487vw;
    right: 5.1282051282vw;
    bottom: 20.5128205128vw;
  }
  .lp-footer .fixedLine {
    display: none;
    width: 28.2051282051vw;
    right: -200px;
    bottom: 46.1538461538vw;
  }
}
.lp-footer .sns-list {
  margin-left: min(220px, 11.4583333333vw);
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}
@media (max-width: 768px) {
  .lp-footer .sns-list {
    margin-left: 0;
    margin-bottom: 5.1282051282vw;
  }
}
.lp-footer .sns-list a {
  width: 35px;
}
@media (max-width: 768px) {
  .lp-footer .sns-list a {
    width: 30px;
  }
}
.lp-footer .sns-list a:nth-child(2) {
  width: 40px;
}
@media (max-width: 768px) {
  .lp-footer .sns-list a:nth-child(2) {
    width: 40px;
  }
}
.lp-footer .sns-list a:nth-child(3) {
  width: 40px;
}
@media (max-width: 768px) {
  .lp-footer .sns-list a:nth-child(3) {
    width: 40px;
  }
}
.lp-footer .sns-list a img {
  width: 100%;
}
.lp-footer .sns-list a + a {
  margin-left: 15px;
}
.lp-footer .info-Box {
  display: flex;
  align-items: flex-end;
  margin-left: min(220px, 11.4583333333vw);
  margin-bottom: min(50px, 2.6041666667vw);
}
@media (max-width: 768px) {
  .lp-footer .info-Box {
    margin-left: 0;
    margin-bottom: 10.2564102564vw;
    align-items: flex-start;
    flex-direction: column;
  }
}
.lp-footer .info-Box .link-item {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-left: 2%;
}
@media (max-width: 768px) {
  .lp-footer .info-Box .link-item {
    margin-left: 0;
    gap: 0;
  }
}
.lp-footer .info-Box .link-item > a {
  width: max(130px, 10.4166666667vw);
}
@media (max-width: 768px) {
  .lp-footer .info-Box .link-item > a {
    margin-top: 3.8461538462vw;
    width: 38.4615384615vw;
  }
}

/*
  PARTS
----------------------------------------------- */
.overlay {
  position: relative;
}

.overlay::after {
  position: absolute;
  inset: 0;
  content: "";
  background-color: var(--color-blue);
  opacity: 0.7;
  mix-blend-mode: lighten;
}

.loop-text {
  border-top: 2px solid var(--color-blue);
  border-bottom: 2px solid var(--color-blue);
  background-color: var(--color-skyblue);
  height: max(45px, 3.90625vw);
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
}

.loop-text img {
  width: max(1500px, 122.3958333333vw);
  max-width: inherit;
}

@media (max-width: 768px) {
  .loop-text {
    border-width: 1px;
  }
}
.marker {
  position: relative;
  z-index: 2;
  line-height: 1.7;
  background: linear-gradient(transparent 0.5em, #5BFFA7 0);
  /*
  &::before {
    position: absolute;
    z-index: -1;
    bottom: 0;
    left: 0;
    right: 0;
    height: .9em;
    //content: '';
    background-color: #5BFFA7;
  }
  */
}

.marker.border {
  border-bottom: min(2px, 0.1041666667vw) solid var(--color-blue);
}

.intersection {
  opacity: 0;
  translate: 0 20px;
  transition: 0.8s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.intersection.view {
  opacity: 1;
  translate: 0 0;
}
@media (max-width: 768px) {
  .intersection.view {
    font-size: 5.8974358974vw;
    margin-bottom: 5.1282051282vw;
  }
}

@media (max-width: 768px) {
  .scale {
    zoom: 0.5;
    -moz-transform: scale(0.5);
  }
}
.button-wrap {
  margin-top: 100px;
  display: flex;
  justify-content: center;
  gap: 15px;
}

@media (max-width: 768px) {
  .button-wrap {
    margin-top: 12.8205128205vw;
  }
}
.button-wrap .button {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 48%;
  height: max(56px, 4.1666666667vw);
  appearance: none;
  background: url(../img/communication/mrk-right.svg) no-repeat;
  background-position: right max(20px, 1.5625vw) center;
  background-size: max(14px, 1.0416666667vw);
  border: 2px solid var(--color-blue);
  border-radius: 9999px;
  color: var(--color-blue);
  font-size: max(18px, 1.1458333333vw);
  font-weight: 700;
  text-decoration: none;
  transition: 0.2s;
  cursor: pointer;
}
@media (max-width: 768px) {
  .button-wrap .button {
    font-size: 3.5897435897vw;
  }
}

.button-wrap .button:hover {
  /* background-position: right 25px center; */
}

.pagetitle {
  display: flex;
  align-items: center;
  padding-inline: calc(50dvw - min(540px, 28.125vw));
  height: min(280px, 14.5833333333vw);
  border-bottom: 2px solid var(--color-blue);
}

@media screen and (max-width: 1140px) {
  .pagetitle {
    padding-inline: 30px;
  }
}
@media (max-width: 768px) {
  .pagetitle {
    padding-inline: 5.1282051282vw;
  }
}
@media (max-width: 768px) {
  .pagetitle {
    height: 38.4615384615vw;
  }
}
/* メインビジュアル */
.lp-hero {
  padding-inline: calc(50dvw - min(910px, 47.3958333333vw));
  padding-block: max(30px, 2.0833333333vw);
  position: relative;
}

@media screen and (max-width: 1880px) {
  .lp-hero {
    padding-inline: 30px;
  }
}
@media (max-width: 768px) {
  .lp-hero {
    padding-inline: 5.1282051282vw;
  }
}
.lp-hero .image {
  border-radius: min(126px, 6.5625vw);
  overflow: hidden;
}

.lp-hero .image img {
  width: 100%;
}

.lp-hero > div {
  position: relative;
}
.lp-hero > div .hero-title {
  position: absolute;
  top: clamp(30px, 5.9895833333vw, 135px);
  left: clamp(40px, 7.8125vw, 170px);
  width: clamp(250px, 33.8541666667vw, 650px);
}
@media (max-width: 768px) {
  .lp-hero > div .hero-title {
    position: static;
    width: 98%;
    margin-top: 7.6923076923vw;
  }
}
.lp-hero > div .hero-title img {
  transition: 1.5s ease-in-out;
  transform: translateY(5px);
  opacity: 0;
}
.lp-hero > div .hero-title img.view {
  transform: translateY(0);
  opacity: 1;
}
.lp-hero > div .catch-icon {
  position: absolute;
  right: clamp(20px, 2.6041666667vw, 50px);
  bottom: clamp(20px, 2.6041666667vw, 50px);
  width: clamp(120px, 14.1666666667vw, 272px);
}
@media (max-width: 768px) {
  .lp-hero > div .catch-icon {
    bottom: -30.7692307692vw;
    right: 0;
    width: 37.1794871795vw;
  }
}

.main_a {
  display: block;
  position: absolute;
  bottom: 16vw;
  left: 0;
  width: min(14vw, 250px);
}

@media (max-width: 768px) {
  .main_a {
    top: 5vw;
    bottom: auto;
    left: 0;
    width: 33vw;
  }
}
.main_b {
  display: block;
  position: absolute;
  bottom: 12vw;
  left: 0;
  width: min(14vw, 250px);
}

@media (max-width: 768px) {
  .main_b {
    top: 15vw;
    bottom: auto;
    left: 0;
    width: 33vw;
  }
}
.main_c {
  display: block;
  position: absolute;
  bottom: 8vw;
  left: 0;
  width: min(14vw, 250px);
}

@media (max-width: 768px) {
  .main_c {
    top: 25vw;
    bottom: auto;
    left: 0;
    width: 33vw;
  }
}
.main_d {
  display: block;
  position: absolute;
  bottom: 4vw;
  left: 0;
  width: min(14vw, 250px);
}

@media (max-width: 768px) {
  .main_d {
    top: 35vw;
    bottom: auto;
    left: 0;
    width: 33vw;
  }
}
/* 導入部分 */
#intro {
  padding: clamp(50px, 7.8125vw, 150px) 0 clamp(80px, 9.375vw, 180px);
}
@media (max-width: 768px) {
  #intro {
    padding: 0 0 17.9487179487vw;
  }
}
#intro .flex-Box {
  display: flex;
  justify-content: space-between;
}
@media (max-width: 768px) {
  #intro .flex-Box {
    flex-direction: column;
  }
}
#intro .flex-Box figure {
  width: 46%;
}
@media (max-width: 768px) {
  #intro .flex-Box figure {
    width: 85%;
  }
}
#intro .flex-Box figure img {
  width: 100%;
}
#intro .flex-Box > div {
  width: 49%;
}
@media (max-width: 768px) {
  #intro .flex-Box > div {
    width: 100%;
  }
}
#intro .flex-Box > div p {
  font-size: clamp(15px, 1.5625vw, 30px);
  font-weight: bold;
  line-height: 2;
  margin-left: 20px;
  letter-spacing: 1px;
}
@media (max-width: 768px) {
  #intro .flex-Box > div p {
    margin-top: 7.6923076923vw;
    font-size: 3.8461538462vw;
    margin-left: 7.6923076923vw;
  }
}
#intro .flex-Box > div ul {
  margin-top: 4.1666666667vw;
}
@media (max-width: 768px) {
  #intro .flex-Box > div ul {
    width: 95%;
    margin-left: auto;
    margin-top: 12.8205128205vw;
  }
}
#intro .flex-Box > div ul li {
  background-color: var(--color-yellow);
  font-size: clamp(15px, 1.5625vw, 30px);
  font-weight: bold;
  letter-spacing: 1px;
  padding: 1.5625vw 0 1.5625vw clamp(40px, 4.4270833333vw, 85px);
  border-radius: 38px 0 0 38px;
  position: relative;
}
@media (max-width: 768px) {
  #intro .flex-Box > div ul li {
    padding: 3.8461538462vw 1.2820512821vw 3.8461538462vw 12.8205128205vw;
    font-size: 4.1025641026vw;
  }
}
#intro .flex-Box > div ul li::before {
  content: "";
  display: inline-block;
  width: 1.875vw;
  max-width: 36px;
  height: 1.875vw;
  max-height: 36px;
  background-image: url(../img/tsushin/intro_li-check.svg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  top: 50%;
  left: 1.5625vw;
  transform: translate(0, -50%);
}
@media (max-width: 768px) {
  #intro .flex-Box > div ul li::before {
    width: 5.3846153846vw;
    max-width: none;
    height: 5.3846153846vw;
    max-height: none;
    left: 5.1282051282vw;
  }
}
#intro .flex-Box > div ul li::after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 18px;
  background: linear-gradient(var(--color-yellow), var(--color-yellow)) 30px 0/100% 2px no-repeat, linear-gradient(var(--color-yellow), var(--color-yellow)) 45px 8px/100% 2px no-repeat, linear-gradient(var(--color-yellow), var(--color-yellow)) 60px 16px/100% 2px no-repeat;
  position: absolute;
  right: 0;
  bottom: -25px;
}
@media (max-width: 768px) {
  #intro .flex-Box > div ul li::after {
    bottom: -25px;
    background: linear-gradient(var(--color-yellow), var(--color-yellow)) 30px 0/100% 2px no-repeat, linear-gradient(var(--color-yellow), var(--color-yellow)) 45px 6px/100% 2px no-repeat, linear-gradient(var(--color-yellow), var(--color-yellow)) 60px 12px/100% 2px no-repeat;
  }
}
#intro .flex-Box > div ul li + li {
  margin-top: 50px;
}
@media (max-width: 768px) {
  #intro .flex-Box > div ul li + li {
    margin-top: 10.2564102564vw;
  }
}

/*　疑問　*/
#question {
  background: var(--color-yellow);
  padding: 0 0 clamp(50px, 7.8125vw, 150px);
}
#question .title-Box {
  background: #fff;
  width: 60%;
  max-width: 1154px;
  min-width: 700px;
  text-align: right;
  padding: 50px 90px 50px 0;
  border-radius: 0 0 97px 0;
  position: relative;
}
@media (max-width: 768px) {
  #question .title-Box {
    padding: 6.4102564103vw 0;
    border-radius: 0 0 17.9487179487vw 0;
    width: 80%;
    max-width: none;
    min-width: auto;
  }
}
#question .title-Box h2 {
  font-size: clamp(30px, 2.6041666667vw, 50px);
  letter-spacing: 1px;
  text-align: left;
  width: clamp(550px, 40.625vw, 780px);
  margin-left: auto;
  margin-bottom: 0;
}
@media (max-width: 768px) {
  #question .title-Box h2 {
    font-size: 6.4102564103vw;
    line-height: 1.5;
    width: 80%;
    margin: 0 auto;
  }
}
#question .title-Box::before {
  content: "";
  display: inline-block;
  width: 100%;
  height: 18px;
  background: linear-gradient(#060080, #060080) 0 0/95% 2px no-repeat, linear-gradient(#060080, #060080) -10px 8px/94% 2px no-repeat, linear-gradient(#060080, #060080) -20px 16px/93% 2px no-repeat;
  position: absolute;
  left: 0;
  top: 0;
}
@media (max-width: 768px) {
  #question .title-Box::before {
    background: linear-gradient(#060080, #060080) 0 0/85% 2px no-repeat, linear-gradient(#060080, #060080) -10px 6px/85% 2px no-repeat, linear-gradient(#060080, #060080) -20px 12px/85% 2px no-repeat;
  }
}
#question > .flex-Box {
  display: flex;
  justify-content: space-between;
  margin: 80px auto;
}
@media (max-width: 768px) {
  #question > .flex-Box {
    flex-direction: column;
    margin: 7.6923076923vw auto 12.8205128205vw;
  }
}
#question > .flex-Box ul {
  width: 50%;
  max-width: 660px;
  margin-left: auto;
  margin-right: clamp(50px, 5.2083333333vw, 100px);
}
@media (max-width: 768px) {
  #question > .flex-Box ul {
    width: 90%;
    margin: 0 auto 20.5128205128vw;
  }
}
#question > .flex-Box ul li {
  padding: 30px 0 30px;
  position: relative;
  border-bottom: solid 2px #060080;
}
@media (max-width: 768px) {
  #question > .flex-Box ul li {
    padding: 0 0 3.8461538462vw;
  }
}
#question > .flex-Box ul li::after {
  content: "";
  width: 99%;
  height: 2px;
  background-color: #060080;
  position: absolute;
  bottom: -10px;
  right: 0;
}
#question > .flex-Box ul li p {
  font-size: clamp(17px, 1.3020833333vw, 25px);
  font-weight: bold;
  line-height: 1.6;
  letter-spacing: 1px;
  position: relative;
  padding-left: 100px;
}
@media (max-width: 768px) {
  #question > .flex-Box ul li p {
    font-size: 4.6153846154vw;
    line-height: 1.5;
    padding-left: 16.6666666667vw;
  }
}
#question > .flex-Box ul li p span {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translate(0, -50%);
  height: 72px;
  border-right: solid 2px;
  width: 72px;
  display: flex;
  justify-content: center;
  align-content: center;
  flex-wrap: wrap;
}
@media (max-width: 768px) {
  #question > .flex-Box ul li p span {
    left: 0;
    top: 1.2820512821vw;
    transform: translate(0, 0);
    height: 6.4102564103vw;
    width: 10.2564102564vw;
  }
}
#question > .flex-Box ul li p span img {
  width: auto;
  height: 34.5px;
}
@media (max-width: 768px) {
  #question > .flex-Box ul li p span img {
    height: 5.2564102564vw;
  }
}
#question > .flex-Box ul li a {
  display: block;
  position: absolute;
  bottom: -48px;
  right: 0;
  z-index: 2;
  transition: all 0.3s;
}
@media (max-width: 768px) {
  #question > .flex-Box ul li a {
    width: 31.7948717949vw;
    bottom: -10vw;
  }
  #question > .flex-Box ul li a:hover {
    bottom: -39px;
  }
}
#question > .flex-Box ul li a:hover {
  bottom: -56px;
}
#question > .flex-Box ul li a:hover img {
  opacity: 1;
}
#question > .flex-Box ul li + li {
  margin-top: 34px;
}
@media (max-width: 768px) {
  #question > .flex-Box ul li + li {
    margin-top: 12.8205128205vw;
  }
}
#question > .flex-Box .flex-fig {
  width: 43%;
}
@media (max-width: 768px) {
  #question > .flex-Box .flex-fig {
    width: 95%;
    margin-left: auto;
  }
}
#question > .flex-Box .flex-fig img {
  width: 100%;
  border-radius: 130px 0 0 130px;
}
@media (max-width: 768px) {
  #question > .flex-Box .flex-fig img {
    border-radius: 20.5128205128vw 0 0 20.5128205128vw;
  }
}
#question .container {
  max-width: 1820px;
  width: 98%;
  margin: 0 auto;
  padding: 50px 0;
}
@media (max-width: 768px) {
  #question .container {
    padding: 5.1282051282vw 0;
    width: 95%;
  }
}
#question .container > ul {
  /* li */
}
#question .container > ul > li {
  background-color: #fff;
  max-width: 1366px;
  width: 95%;
  border-radius: clamp(130px, 10.4166666667vw, 200px);
  border: solid 2px #060080;
  padding: 80px clamp(50px, 10.4166666667vw, 220px) 100px;
  box-sizing: border-box;
  position: relative;
}
@media (max-width: 768px) {
  #question .container > ul > li {
    width: 100%;
    margin: 0 auto;
    padding: 3.8461538462vw 3.8461538462vw 10.2564102564vw;
    border-radius: 20.5128205128vw;
  }
}
#question .container > ul > li:nth-child(even) {
  margin-left: auto;
}
#question .container > ul > li .list-num {
  position: absolute;
  top: -40px;
  font-size: 100px;
  line-height: 1;
  left: clamp(70px, 11.4583333333vw, 220px);
  height: 115px;
  width: auto;
}
@media (max-width: 768px) {
  #question .container > ul > li .list-num {
    height: 22.5641025641vw;
    top: -7.6923076923vw;
    left: 10.2564102564vw;
  }
}
#question .container > ul > li .list-num img {
  width: auto;
  height: 100%;
  vertical-align: top;
}
#question .container > ul > li > div h3 {
  font-size: 30px;
  line-height: 45px;
  font-weight: bold;
  padding-left: clamp(165px, 10.15625vw, 195px);
  padding-bottom: 30px;
  position: relative;
}
@media (max-width: 768px) {
  #question .container > ul > li > div h3 {
    padding: 17.9487179487vw 5.1282051282vw 5.1282051282vw;
    font-size: 5.641025641vw;
    line-height: 1.6;
  }
}
#question .container > ul > li > div h3:before {
  content: "";
  width: 65px;
  height: 65px;
  background-image: url(../img/tsushin/question_slash.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: absolute;
  top: 15px;
  left: 90px;
}
@media (max-width: 768px) {
  #question .container > ul > li > div h3:before {
    width: 12.8205128205vw;
    height: 12.8205128205vw;
    top: 2.5641025641vw;
    left: 21.7948717949vw;
  }
}
#question .container > ul > li > div h3::after {
  content: "";
  width: 0;
  height: 10px;
  background: linear-gradient(#060080, #060080) 0 0/100% 2px no-repeat, linear-gradient(#060080, #060080) -10px 8px/100% 2px no-repeat;
  position: absolute;
  left: 0;
  bottom: 0;
  transition: all 1s;
}
#question .container > ul > li > div h3.view::after {
  width: 100%;
}
#question .container > ul > li > div .contents-Box {
  padding: 35px 0;
}
@media (max-width: 768px) {
  #question .container > ul > li > div .contents-Box {
    padding: 25px 0;
  }
}
#question .container > ul > li > div .contents-Box.border-b {
  border-bottom: solid 2px #060080;
}
#question .container > ul > li > div .contents-Box .point-Box + .point-Box {
  margin-top: 35px;
}
@media (max-width: 768px) {
  #question .container > ul > li > div .contents-Box .point-Box + .point-Box {
    margin-top: 6.4102564103vw;
  }
}
#question .container > ul > li > div .contents-Box > p {
  font-size: 25px;
  text-align: center;
  font-weight: bold;
  background: #fff450;
  border-radius: 22px;
  padding: 16px;
  margin-bottom: 25px;
}
@media (max-width: 768px) {
  #question .container > ul > li > div .contents-Box > p {
    font-size: 5.1282051282vw;
    line-height: 1.5;
    padding: 2.5641025641vw 3.8461538462vw;
  }
}
#question .container > ul > li > div .contents-Box .flex-Box {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media (max-width: 768px) {
  #question .container > ul > li > div .contents-Box .flex-Box {
    flex-direction: column;
  }
}
#question .container > ul > li > div .contents-Box .flex-Box .box-A {
  width: 50%;
}
@media (max-width: 768px) {
  #question .container > ul > li > div .contents-Box .flex-Box .box-A {
    width: 100%;
  }
}
#question .container > ul > li > div .contents-Box .flex-Box .box-A .point-item + .point-item {
  margin-top: 35px;
}
@media (max-width: 768px) {
  #question .container > ul > li > div .contents-Box .flex-Box .box-A .point-item + .point-item {
    margin-top: 0;
  }
}
#question .container > ul > li > div .contents-Box .flex-Box .fig-A {
  width: 48%;
}
@media (max-width: 768px) {
  #question .container > ul > li > div .contents-Box .flex-Box .fig-A {
    width: 100%;
    margin: 5.1282051282vw auto 6.4102564103vw;
  }
}
#question .container > ul > li > div .contents-Box .flex-Box .box-B {
  width: 34%;
}
@media (max-width: 768px) {
  #question .container > ul > li > div .contents-Box .flex-Box .box-B {
    width: 100%;
  }
}
#question .container > ul > li > div .contents-Box .flex-Box .fig-B {
  width: 64%;
}
@media (max-width: 768px) {
  #question .container > ul > li > div .contents-Box .flex-Box .fig-B {
    width: 100%;
    margin: 5.1282051282vw auto 1.2820512821vw;
  }
}
#question .container > ul > li > div .contents-Box .flex-Box .box-D {
  width: 43%;
}
@media (max-width: 768px) {
  #question .container > ul > li > div .contents-Box .flex-Box .box-D {
    width: 100%;
  }
}
#question .container > ul > li > div .contents-Box .flex-Box .fig-D {
  width: 55%;
}
@media (max-width: 768px) {
  #question .container > ul > li > div .contents-Box .flex-Box .fig-D {
    width: 100%;
    margin: 5.1282051282vw auto 0;
  }
}
#question .container > ul > li > div .contents-Box .flex-Box figure img {
  width: 100%;
}
#question .container > ul > li > div .contents-Box .flex-Box .box-E {
  width: 46%;
}
@media (max-width: 768px) {
  #question .container > ul > li > div .contents-Box .flex-Box .box-E {
    width: 100%;
  }
}
#question .container > ul > li > div .contents-Box .flex-Box .box-E ul li {
  padding-left: 1em;
  text-indent: -1em;
}
#question .container > ul > li > div .contents-Box .flex-Box .fig-E {
  width: 48%;
}
@media (max-width: 768px) {
  #question .container > ul > li > div .contents-Box .flex-Box .fig-E {
    width: 100%;
    margin: 5.1282051282vw auto 0;
  }
}
#question .container > ul > li > div .contents-Box .flex-Box .box-nomal {
  width: 49%;
}
@media (max-width: 768px) {
  #question .container > ul > li > div .contents-Box .flex-Box .box-nomal {
    width: 100%;
  }
}
#question .container > ul > li > div .contents-Box .flex-Box .box-nomal:nth-child(n+3) {
  margin-top: 2%;
}
#question .container > ul > li > div .contents-Box .flex-Box .box-nomal > img {
  margin: 10px auto;
  width: 100%;
}
#question .container > ul > li > div .contents-Box .box-C_ul {
  margin-top: 15px;
}
#question .container > ul > li > div .contents-Box .box-C_ul > li {
  width: 32%;
}
@media (max-width: 768px) {
  #question .container > ul > li > div .contents-Box .box-C_ul > li {
    width: 90%;
    margin: 0 auto;
  }
}
#question .container > ul > li > div .contents-Box .box-C_ul > li img {
  width: 100%;
}
#question .container > ul > li > div .contents-Box .box-C_ul > li p {
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 1px;
  margin-top: 5px;
}
@media (max-width: 768px) {
  #question .container > ul > li > div .contents-Box .box-C_ul > li p {
    font-size: 4.6153846154vw;
    line-height: 1.2;
  }
}
#question .container > ul > li > div .contents-Box .box-C_ul > li > ul li {
  width: 100%;
  font-size: 18px;
  line-height: 1.6;
}
@media (max-width: 768px) {
  #question .container > ul > li > div .contents-Box .box-C_ul > li > ul li {
    font-size: 4.6153846154vw;
  }
}
#question .container > ul > li > div .contents-Box .box-C_ul > li > ul li + li {
  margin-top: 0;
}
#question .container > ul > li > div .contents-Box .box-C_ul > li p.note {
  line-height: 0;
}
@media (max-width: 768px) {
  #question .container > ul > li > div .contents-Box .box-C_ul li + li {
    margin-top: 5.1282051282vw;
  }
}
#question .container > ul > li > div .contents-Box .box-D_ul {
  margin-top: 15px;
}
#question .container > ul > li > div .contents-Box .box-D_ul > li {
  width: 49%;
}
@media (max-width: 768px) {
  #question .container > ul > li > div .contents-Box .box-D_ul > li {
    width: 100%;
  }
}
#question .container > ul > li > div .contents-Box .box-D_ul > li img {
  width: 100%;
}
@media (max-width: 768px) {
  #question .container > ul > li > div .contents-Box .box-D_ul li + li {
    margin-top: 1.2820512821vw;
  }
}
#question .container > ul > li > div .contents-Box > div > div .point {
  display: block;
  width: 105px;
  margin-bottom: 20px;
}
@media (max-width: 768px) {
  #question .container > ul > li > div .contents-Box > div > div .point {
    margin-bottom: 2.5641025641vw;
  }
}
#question .container > ul > li > div .contents-Box > div > div .point img {
  width: 100%;
}
#question .container > ul > li > div .contents-Box > div > div h4 {
  font-size: 22px;
  line-height: 30px;
  letter-spacing: 1px;
  margin-bottom: 5px;
}
@media (max-width: 768px) {
  #question .container > ul > li > div .contents-Box > div > div h4 {
    font-size: 4.6153846154vw;
    line-height: 1.5;
  }
}
#question .container > ul > li > div .contents-Box > div > div p {
  font-size: 18px;
  line-height: 30px;
  letter-spacing: 1px;
}
@media (max-width: 768px) {
  #question .container > ul > li > div .contents-Box > div > div p {
    font-size: 4.1025641026vw;
    line-height: 1.6;
  }
}
#question .container > ul > li > div .contents-Box > div > div p + .point {
  margin-top: 34px;
}
#question .container > ul > li span.note {
  font-size: 0.8em;
  font-weight: normal;
  line-height: 1;
}
#question .container > ul .item-list + .item-list {
  margin-top: -45px;
}
@media (max-width: 768px) {
  #question .container > ul .item-list + .item-list {
    margin-top: 15.3846153846vw;
  }
}
@media (max-width: 768px) {
  #question .container > ul .l_2 .last_text {
    width: 78%;
    margin: 0 auto 5.1282051282vw;
  }
}
#question .container > ul .l_2 .last_text p {
  font-size: 26px;
  font-weight: bold;
  text-align: center;
  border-top: solid 2px #050080;
  border-bottom: solid 2px #050080;
  padding: 15px 0;
}
@media (max-width: 768px) {
  #question .container > ul .l_2 .last_text p {
    font-size: 4.6153846154vw;
    padding: 1.2820512821vw 0;
    line-height: 1.6;
  }
}
#question .container > ul .l_3 > div h3::before {
  top: -15px;
}
@media (max-width: 768px) {
  #question .container > ul .l_3 > div h3::before {
    top: 2.5641025641vw;
  }
}
#question .last-fig {
  width: 60%;
  margin-left: auto;
  margin-top: -8.3333333333vw;
}
@media (max-width: 768px) {
  #question .last-fig {
    margin-top: 2.5641025641vw;
    width: 95%;
  }
}
#question .last-fig img {
  width: 100%;
  border-radius: 130px 0 0 130px;
}
@media (max-width: 768px) {
  #question .last-fig img {
    border-radius: 20.5128205128vw 0 0 20.5128205128vw;
  }
}

/* 通信制高校に対する疑問を解決！ */
/*　お問い合わせ　*/
/* 資料請求・お問い合わせフォーム */
.contact h2 {
  margin-bottom: 0.6em;
  font-size: min(50px, 2.6041666667vw);
  text-align: center;
  line-height: 1.4;
}

@media (max-width: 768px) {
  .contact h2 {
    font-size: 6.6666666667vw;
  }
}
.contact .message {
  font-size: max(13px, 1.1458333333vw);
  text-align: center;
}

@media (min-width: 769px) {
  .contact .form {
    max-width: 690px;
    margin: min(150px, 9vw) auto 0;
  }
}
@media (max-width: 768px) {
  .contact .form {
    margin-top: 7.6923076923vw;
  }
}
.contact dl {
  display: grid;
  border-top: 1px solid var(--color-blue);
}

.contact dd {
  position: relative;
}

.contact dd .error {
  position: absolute;
  top: 0;
  left: 0;
}
@media (max-width: 768px) {
  .contact dd .error {
    position: static;
  }
}

@media (min-width: 769px) {
  .contact dl {
    grid-template-columns: auto 1fr;
  }
  .contact dl > * {
    border-bottom: 1px solid var(--color-blue);
    font-size: max(13px, 0.8333333333vw);
  }
  .contact dt {
    padding-block: 30px 15px;
    padding-right: 1.5em;
    display: flex;
    align-items: center;
    line-height: 1.5;
  }
  .contact dt.textarea_item {
    align-items: flex-start;
  }
  .contact dd {
    padding-block: 30px 15px;
  }
  .contact dd .tetareaInput {
    padding: 0 0.8em;
  }
}
@media (max-width: 768px) {
  .contact dl > * {
    font-size: 3.3333333333vw;
  }
  .contact dt {
    padding-block: 3.8461538462vw 0.7692307692vw;
  }
  .contact dd {
    padding-bottom: 2.5641025641vw;
    border-bottom: 1px solid var(--color-blue);
  }
  .contact dd .tetareaInput {
    padding-block: 2.5641025641vw 3.8461538462vw;
  }
}
.mw_wp_form_confirm dd {
  padding-block: 2.2em 0;
}

.contact input[type=text],
.contact input[type=email],
.contact textarea {
  appearance: none;
  border: none;
  box-shadow: none;
  padding: 0.7em;
  width: 100%;
  color: var(--color-blue);
}

@media (min-width: 769px) {
  .contact input[type=text],
  .contact input[type=email],
  .contact textarea {
    height: 100%;
  }
}
@media (max-width: 768px) {
  .contact input[type=text],
  .contact input[type=email],
  .contact textarea {
    height: 10.2564102564vw;
    font-size: 3.5897435897vw;
  }
}
.contact textarea {
  height: 250px;
}

@media (max-width: 768px) {
  .contact textarea {
    height: 38.4615384615vw;
  }
}
.contact .radio {
  display: flex;
  align-items: center;
  gap: 2em;
}

.contact .mwform-radio-field {
  display: inline-block;
  margin-right: 15px;
}

.contact .mwform-radio-field + .mwform-radio-field {
  margin-left: 0 !important;
}

.contact .mwform-radio-field label {
  display: flex;
  align-items: center;
}

@media (min-width: 769px) {
  .contact .radio {
    padding-left: 0.8em;
  }
}
@media (max-width: 768px) {
  .contact .radio {
    padding-block: 2.5641025641vw 3.8461538462vw;
  }
}
.contact ::placeholder {
  color: var(--color-blue);
  opacity: 0.15;
}

#contact .title-Box {
  background: var(--color-yellow);
  width: 60%;
  max-width: 1154px;
  min-width: 700px;
  text-align: right;
  padding: 50px 90px 50px 0;
  border-radius: 0 0 97px 0;
  position: relative;
}
@media (max-width: 768px) {
  #contact .title-Box {
    padding: 6.4102564103vw 0;
    border-radius: 0 0 17.9487179487vw 0;
    width: 95%;
    max-width: none;
    min-width: auto;
  }
}
#contact .title-Box h2 {
  font-size: clamp(30px, 2.6041666667vw, 50px);
  letter-spacing: 1px;
  text-align: left;
  width: clamp(580px, 44.2708333333vw, 850px);
  margin-left: auto;
  margin-bottom: 0;
}
@media (max-width: 768px) {
  #contact .title-Box h2 {
    font-size: 6.4102564103vw;
    line-height: 1.5;
    width: 80%;
    margin: 0 auto;
  }
}
#contact .title-Box h2 span {
  font-weight: normal;
  font-size: 0.5em;
  display: block;
}
#contact .title-Box::before {
  content: "";
  display: inline-block;
  width: 100%;
  height: 18px;
  background: linear-gradient(#060080, #060080) 0 0/95% 2px no-repeat, linear-gradient(#060080, #060080) -10px 8px/94% 2px no-repeat, linear-gradient(#060080, #060080) -20px 16px/93% 2px no-repeat;
  position: absolute;
  left: 0;
  top: 0;
}
@media (max-width: 768px) {
  #contact .title-Box::before {
    background: linear-gradient(#060080, #060080) 0 0/85% 2px no-repeat, linear-gradient(#060080, #060080) -10px 6px/85% 2px no-repeat, linear-gradient(#060080, #060080) -20px 12px/85% 2px no-repeat;
  }
}
#contact .container {
  max-width: 688px;
  width: 88%;
  margin: 0 auto;
}
#contact .container .form .type-Box {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 30px;
}
#contact .container .form .type-Box span {
  width: 48%;
  display: block;
}
@media (max-width: 768px) {
  #contact .container .form .type-Box span {
    width: 100%;
  }
}
#contact .container .form .type-Box span label {
  background: #050080;
  color: #fff;
  font-weight: bold;
  padding: 20px;
  border-radius: 30px;
  display: flex;
  align-items: center;
  width: 100%;
  transition: all 0.3s;
}
@media (max-width: 768px) {
  #contact .container .form .type-Box span label {
    padding: 3.8461538462vw;
  }
  #contact .container .form .type-Box span label:hover {
    background: #050080;
  }
}
#contact .container .form .type-Box span label:hover {
  background: #000;
}
#contact .container .form .type-Box span label input {
  width: 18px;
  height: 18px;
  margin-right: 15px;
}
#contact .container .form .type-Box span label span {
  width: 100%;
  font-size: 22px;
}
@media (max-width: 768px) {
  #contact .container .form .type-Box span label span {
    font-size: 4.6153846154vw;
  }
}
#contact .container .form .type-Box span + span {
  margin-left: 0;
}

#charge {
  background: #FFFBC1;
  padding-bottom: clamp(100px, 10.4166666667vw, 200px);
}
@media (max-width: 768px) {
  #charge {
    padding-bottom: 12.8205128205vw;
  }
}
#charge .title-Box {
  background: #fff;
  width: 60%;
  max-width: 1154px;
  min-width: 700px;
  text-align: right;
  padding: 50px 90px 50px 0;
  border-radius: 0 0 97px 0;
  position: relative;
}
@media (max-width: 768px) {
  #charge .title-Box {
    padding: 6.4102564103vw 0;
    border-radius: 0 0 17.9487179487vw 0;
    width: 80%;
    max-width: none;
    min-width: auto;
  }
}
#charge .title-Box h2 {
  font-size: clamp(30px, 2.6041666667vw, 50px);
  letter-spacing: 1px;
  text-align: left;
  width: clamp(550px, 40.625vw, 780px);
  margin-left: auto;
  margin-bottom: 0;
}
@media (max-width: 768px) {
  #charge .title-Box h2 {
    font-size: 6.4102564103vw;
    line-height: 1.5;
    width: 80%;
    margin: 0 auto;
  }
}
#charge .title-Box h2 span {
  font-weight: normal;
  font-size: 0.5em;
}
#charge .title-Box::before {
  content: "";
  display: inline-block;
  width: 100%;
  height: 18px;
  background: linear-gradient(#060080, #060080) 0 0/95% 2px no-repeat, linear-gradient(#060080, #060080) -10px 8px/94% 2px no-repeat, linear-gradient(#060080, #060080) -20px 16px/93% 2px no-repeat;
  position: absolute;
  left: 0;
  top: 0;
}
@media (max-width: 768px) {
  #charge .title-Box::before {
    background: linear-gradient(#060080, #060080) 0 0/85% 2px no-repeat, linear-gradient(#060080, #060080) -10px 6px/85% 2px no-repeat, linear-gradient(#060080, #060080) -20px 12px/85% 2px no-repeat;
  }
}
#charge .container {
  max-width: 1080px;
  width: 90%;
  margin: clamp(50px, 5.2083333333vw, 100px) auto 0;
}
@media (max-width: 768px) {
  #charge .container {
    margin: 7.6923076923vw auto 0;
  }
}
#charge .container .flex-Box {
  display: flex;
}
#charge .container dl > .flex-Box {
  justify-content: center;
  align-items: flex-end;
  padding: 15px 0 20px;
}
#charge .container dl > .flex-Box dt {
  font-size: clamp(25px, 1.5625vw, 30px);
  width: 180px;
  text-align: right;
  line-height: 1;
}
@media (max-width: 768px) {
  #charge .container dl > .flex-Box dt {
    font-size: 5.1282051282vw;
    width: 64.1025641026vw;
  }
}
#charge .container dl > .flex-Box dd {
  width: 400px;
  font-size: clamp(45px, 3.125vw, 60px);
  line-height: 1;
  text-align: right;
}
@media (max-width: 768px) {
  #charge .container dl > .flex-Box dd {
    font-size: 8.9743589744vw;
  }
}
#charge .container dl > .flex-Box dd span {
  font-size: clamp(25px, 1.5625vw, 30px);
}
@media (max-width: 768px) {
  #charge .container dl > .flex-Box dd span {
    font-size: 5.1282051282vw;
  }
}
#charge .container dl > .flex-Box dd span.yaku {
  margin-right: 20px;
}
#charge .container dl > .flex-Box dd span.yen {
  margin-left: 10px;
}
#charge .container dl div + div {
  border-top: dashed 2px #060080;
}
#charge .container .all-Box {
  background: #fff;
  justify-content: center;
  align-items: flex-end;
  padding: 30px 0;
  border-top: solid 2px #060080;
}
@media (max-width: 768px) {
  #charge .container .all-Box {
    flex-direction: column;
    align-items: center;
    gap: 2.5641025641vw;
    padding: 2.5641025641vw 0;
  }
}
#charge .container .all-Box p {
  font-size: clamp(25px, 1.5625vw, 30px);
  line-height: 1;
}
@media (max-width: 768px) {
  #charge .container .all-Box p {
    font-size: 6.4102564103vw;
  }
}
#charge .container .all-Box .all-charge {
  font-size: clamp(45px, 3.125vw, 60px);
  margin: 0 30px;
}
@media (max-width: 768px) {
  #charge .container .all-Box .all-charge {
    font-size: 11.5384615385vw;
  }
}
#charge .container .all-Box .all-charge span {
  font-size: clamp(25px, 1.5625vw, 30px);
}
@media (max-width: 768px) {
  #charge .container .all-Box .all-charge span {
    font-size: 6.4102564103vw;
  }
}
#charge .container .all-Box .all-charge span.yaku {
  margin-right: 20px;
}
#charge .container .all-Box .all-charge span.yen {
  margin-left: 10px;
}
#charge .container .note {
  max-width: 500px;
  width: 100%;
  margin-left: auto;
  margin-top: 10px;
}
#charge .container .note li {
  font-size: 18px;
}
@media (max-width: 768px) {
  #charge .container .note li {
    font-size: 3.0769230769vw;
    padding-left: 1em;
    text-indent: -1em;
  }
}

/* キャンパス紹介 */
/*
.campus {
  background-color: #FFF2FE;
  position: relative;
  padding-bottom: min(100px, 5.2083333333vw);
}
.campus::before, .campus::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 2px;
  background-color: var(--color-blue);
}
.campus::before {
  left: max(20px, 2.6041666667vw);
}
.campus::after {
  right: max(20px, 2.6041666667vw);
}
.campus h2 {
  padding-inline: calc(50dvw - min(500px, 26.0416666667vw));
  padding-block: min(90px, 4.6875vw) min(60px, 3.125vw);
}
@media screen and (max-width: 1060px) {
  .campus h2 {
    padding-inline: 30px;
  }
}
@media (max-width: 768px) {
  .campus h2 {
    padding-inline: 20px;
  }
}
@media (max-width: 768px) {
  .campus h2 {
    padding-block: 35px 20px;
    padding-inline: 40px;
  }
}
@media (min-width: 769px) {
  .campus h2 img {
    width: min(575px, 29.9479166667vw);
  }
}
@media (max-width: 768px) {
  .campus h2 img {
    zoom: 0.35;
    -moz-transform: scale(0.35);
  }
}
.campus .sub_title {
  position: relative;
  z-index: 2;
  border-top: 2px solid var(--color-blue);
  border-bottom: 2px solid var(--color-blue);
  background-color: #fff;
  padding-block: min(10px, 0.5208333333vw);
}
.campus .sub_title h3 {
  border-top: 2px solid var(--color-blue);
  border-bottom: 2px solid var(--color-blue);
  padding-block: 0.5em 0.55em;
  text-align: center;
  font-size: max(15px, 2.0833333333vw);
}
*/
.campus .schooling {
  display: grid;
}

@media (min-width: 769px) {
  .campus .schooling {
    grid-template-columns: repeat(2, 1fr);
    gap: min(50px, 2.6041666667vw) min(40px, 2.0833333333vw);
  }
}
@media (max-width: 768px) {
  .campus .schooling {
    gap: 7.6923076923vw;
  }
}
.campus .venue {
  position: relative;
  z-index: 3;
}

.campus .content {
  height: 100%;
  background-color: #fff;
  border: 2px solid var(--color-blue);
  border-radius: max(30px, 2.6041666667vw);
  padding: min(40px, 2.0833333333vw) min(40px, 2.0833333333vw) min(50px, 2.6041666667vw);
  display: grid;
  gap: min(24px, 1.25vw);
}

@media (min-width: 769px) {
  .campus .content {
    grid-template-rows: auto auto 1fr;
  }
}
@media (max-width: 768px) {
  .campus .content {
    padding: 5.1282051282vw;
    gap: 3.8461538462vw;
  }
}
.campus [class^=box-] {
  position: absolute;
  inset: 0;
  background-color: #fff;
  border: 2px solid var(--color-blue);
  border-radius: max(30px, 2.6041666667vw);
}

.campus .box-before {
  transform: translateY(12px);
  z-index: -2;
}

.campus .box-after {
  transform: translateY(6px);
  z-index: -1;
}

.campus .info {
  display: none;
}

.campus h4 {
  font-size: min(25px, 1.3020833333vw);
  line-height: 1.5;
}

@media (max-width: 768px) {
  .campus h4 {
    font-size: 4.6153846154vw;
  }
}
.campus address {
  margin-top: 1.1em;
  font-style: normal;
  font-size: max(14px, 1.0416666667vw);
  line-height: 1.5;
  background-color: rgba(0, 127, 255, 0.2);
}

.campus address small {
  display: inline-block;
  margin-top: 0.5em;
  font-size: min(16px, 0.8333333333vw);
}

@media (max-width: 768px) {
  .campus address small {
    font-size: 3.0769230769vw;
  }
}
.campus .map {
  position: relative;
  aspect-ratio: 16/9;
}

.campus .map iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.campus .access {
  border-top: 1px solid var(--color-blue);
  border-bottom: 1px solid var(--color-blue);
  display: grid;
  padding-bottom: 1em;
}

.campus .access dt {
  margin-bottom: 0.3em;
  justify-self: center;
  align-self: flex-start;
  padding: 0.1em 0.8em 0.2em;
  background-color: var(--color-blue);
  border-radius: 0 0 max(6px, 0.625vw) max(6px, 0.625vw);
  color: #fff;
  font-size: max(14px, 0.9375vw);
}

.campus .access dd {
  font-size: max(14px, 1.0416666667vw);
}

#campus {
  padding-bottom: 140px;
}
@media (max-width: 768px) {
  #campus {
    padding-bottom: 10.2564102564vw;
  }
}
#campus .title-Box {
  background: #FFFBC1;
  width: 60%;
  max-width: 1154px;
  min-width: 700px;
  text-align: right;
  padding: 50px 90px 50px 0;
  border-radius: 0 0 97px 0;
  position: relative;
}
@media (max-width: 768px) {
  #campus .title-Box {
    padding: 6.4102564103vw 0;
    border-radius: 0 0 17.9487179487vw 0;
    width: 95%;
    max-width: none;
    min-width: auto;
  }
}
#campus .title-Box h2 {
  font-size: clamp(30px, 2.6041666667vw, 50px);
  letter-spacing: 1px;
  text-align: left;
  width: clamp(550px, 40.625vw, 780px);
  margin-left: auto;
  margin-bottom: 0;
}
@media (max-width: 768px) {
  #campus .title-Box h2 {
    font-size: 6.4102564103vw;
    line-height: 1.5;
    width: 80%;
    margin: 0 auto;
  }
}
#campus .title-Box h2 span {
  font-weight: normal;
  font-size: 0.5em;
  display: block;
}
#campus .title-Box::before {
  content: "";
  display: inline-block;
  width: 100%;
  height: 18px;
  background: linear-gradient(#060080, #060080) 0 0/95% 2px no-repeat, linear-gradient(#060080, #060080) -10px 8px/94% 2px no-repeat, linear-gradient(#060080, #060080) -20px 16px/93% 2px no-repeat;
  position: absolute;
  left: 0;
  top: 0;
}
@media (max-width: 768px) {
  #campus .title-Box::before {
    background: linear-gradient(#060080, #060080) 0 0/85% 2px no-repeat, linear-gradient(#060080, #060080) -10px 6px/85% 2px no-repeat, linear-gradient(#060080, #060080) -20px 12px/85% 2px no-repeat;
  }
}
#campus .container {
  max-width: 1160px;
  width: 90%;
  margin: -50px auto 0;
}
@media (max-width: 1100px) {
  #campus .container {
    margin: 20px auto 0;
  }
}
#campus .container .sub-title-Box {
  width: clamp(280px, 18.125vw, 348px);
  margin-left: auto;
  text-align: right;
  padding-bottom: 40px;
  margin-bottom: 60px;
  position: relative;
}
@media (max-width: 768px) {
  #campus .container .sub-title-Box {
    padding-bottom: 7.6923076923vw;
    margin-bottom: 7.6923076923vw;
    width: 51.2820512821vw;
  }
}
#campus .container .sub-title-Box::after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 18px;
  background: linear-gradient(#060080, #060080) 0 0/100% 2px no-repeat, linear-gradient(#060080, #060080) 10px 8px/100% 2px no-repeat, linear-gradient(#060080, #060080) 20px 16px/100% 2px no-repeat;
  position: absolute;
  right: 0;
  bottom: 0;
}
#campus .container .sub-title-Box h3 {
  font-size: clamp(25px, 2.0833333333vw, 40px);
  letter-spacing: 2px;
  line-height: 1;
}
@media (max-width: 768px) {
  #campus .container .sub-title-Box h3 {
    font-size: 4.6153846154vw;
  }
}

@media (min-width: 769px) {
  .news-title img {
    width: min(256px, 13.3333333333vw);
  }
}
@media (max-width: 768px) {
  .news-title img {
    zoom: 0.4;
    -moz-transform: scale(0.4);
  }
}
.news-archive {
  padding-inline: calc(50dvw - min(660px, 34.375vw));
}

@media screen and (max-width: 1380px) {
  .news-archive {
    padding-inline: 30px;
  }
}
@media (max-width: 768px) {
  .news-archive {
    padding-inline: 5.1282051282vw;
  }
}
.news-archive .container {
  border-left: 2px solid var(--color-blue);
  border-right: 2px solid var(--color-blue);
  padding-bottom: max(50px, 4.6875vw);
  margin-bottom: 8px;
}

@media (min-width: 769px) {
  .news-archive .lp-news-list {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 768px) {
  .news-archive .lp-news-list {
    grid-template-columns: repeat(2, 1fr);
  }
}
.news-archive p {
  font-size: max(13px, 0.9375vw);
}

.wp-pagenavi {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: min(8px, 0.4166666667vw);
  padding-block: max(30px, 3.125vw);
  padding-inline: max(30px, 2.0833333333vw);
  position: relative;
  border-top: 2px solid var(--color-blue);
  margin-top: -1px;
}

.wp-pagenavi > * {
  font-size: max(14px, 1.0416666667vw);
}

.wp-pagenavi > *:not([rel=prev], [rel=next]) {
  padding: 0.9em;
}

.wp-pagenavi a {
  text-decoration: none;
}

.wp-pagenavi [rel=prev],
.wp-pagenavi [rel=next] {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background-size: max(10px, 1.0416666667vw);
  background-repeat: no-repeat;
}

.wp-pagenavi [rel=prev] {
  left: max(10px, 2.6041666667vw);
  padding-left: max(16px, 1.5625vw);
  background-image: url(../img/communication/mrk-left.svg);
  background-position: 0 50%;
}

.wp-pagenavi [rel=next] {
  right: max(10px, 2.6041666667vw);
  padding-right: max(16px, 1.5625vw);
  background-image: url(../img/communication/mrk-right.svg);
  background-position: 100% 50%;
}

.news-detail {
  padding-inline: calc(50dvw - min(660px, 34.375vw));
}

@media screen and (max-width: 1380px) {
  .news-detail {
    padding-inline: 30px;
  }
}
@media (max-width: 768px) {
  .news-detail {
    padding-inline: 5.1282051282vw;
  }
}
.news-detail .post {
  border-left: 2px solid var(--color-blue);
  border-right: 2px solid var(--color-blue);
  padding-bottom: max(50px, 5.2083333333vw);
  margin-bottom: 8px;
}

.post-header {
  padding-inline: min(120px, 6.25vw);
  padding-block: min(90px, 4.6875vw) min(70px, 3.6458333333vw);
}

@media (max-width: 768px) {
  .post-header {
    padding-inline: 5.1282051282vw;
    padding-block: 10.2564102564vw 7.6923076923vw;
  }
}
.post-header-date {
  font-size: max(13px, 1.3020833333vw);
}

.post-header-title {
  margin-top: 0.6em;
  font-size: max(22px, 2.0833333333vw);
  line-height: 1.4;
}

.wp-entry {
  padding-inline: min(120px, 6.25vw);
  margin-bottom: min(140px, 7.2916666667vw);
}

@media (max-width: 768px) {
  .wp-entry {
    padding-inline: 5.1282051282vw;
    margin-bottom: 15.3846153846vw;
  }
}
.wp-entry > *:first-child {
  margin-top: 0;
}

.wp-entry > * + * {
  margin-top: 1.6em;
}

.wp-entry img {
  width: 100%;
}

.wp-entry :is(h1, h2, h3, h4, h5, h6) {
  margin-top: 2.5em;
  font-size: max(18px, 1.3020833333vw);
  line-height: 1.4;
}

.wp-entry p {
  font-size: max(13px, 0.9375vw);
  line-height: 2;
}

.post_link {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  border-top: 2px solid var(--color-blue);
  border-bottom: 2px solid var(--color-blue);
}

.post_link > * {
  display: flex;
  align-items: center;
  height: max(60px, 6.7708333333vw);
  font-size: max(13px, 1.1979166667vw);
  text-decoration: none;
  border: 2px solid var(--color-blue);
  background-size: max(10px, 1.0416666667vw);
  background-repeat: no-repeat;
  margin: -2px;
}

.post_link > * + * {
  border-left: none;
}

.post_link .prev {
  grid-column: 1/2;
  padding-left: max(30px, 4.9479166667vw);
  padding-right: max(10px, 1.5625vw);
  background-image: url(../img/communication/mrk-left.svg);
  background-position: max(10px, 2.0833333333vw) 50%;
}

.post_link .next {
  grid-column: 2/3;
  padding-right: max(30px, 4.9479166667vw);
  padding-left: max(10px, 1.5625vw);
  background-image: url(../img/communication/mrk-right.svg);
  background-position: calc(100% - max(10px, 2.0833333333vw)) 50%;
  justify-content: flex-end;
}

@media (min-width: 769px) {
  .thanks-title img {
    width: min(713px, 37.1354166667vw);
  }
}
@media (max-width: 768px) {
  .thanks-title img {
    zoom: 0.4;
    -moz-transform: scale(0.4);
  }
}
.thanks-content {
  padding-inline: calc(50dvw - min(540px, 28.125vw));
  padding-block: min(90px, 4.6875vw) min(120px, 6.25vw);
  position: relative;
  margin-bottom: 8px;
}

@media screen and (max-width: 1140px) {
  .thanks-content {
    padding-inline: 30px;
  }
}
@media (max-width: 768px) {
  .thanks-content {
    padding-inline: 5.1282051282vw;
  }
}
@media (max-width: 1140px) {
  .thanks-content {
    padding-block: 50px 60px;
    padding-inline: 40px;
  }
}
/*
.thanks-content::before, .thanks-content::after {
  position: absolute;
  top: 0;
  bottom: 0;
  content: "";
  width: 2px;
  background-color: var(--color-blue);
}

.thanks-content::before {
  left: min(300px, 15.625vw);
}
@media (max-width: 1140px) {
  .thanks-content::before {
    left: 20px;
  }
}
.thanks-content::after {
  right: min(300px, 15.625vw);
}
@media (max-width: 1140px) {
  .thanks-content::after {
    right: 20px;
  }
}
    */
.thanks-content p {
  font-size: max(13px, 0.9375vw);
}

.loop-Box {
  padding: 150px 0;
}
@media (max-width: 768px) {
  .loop-Box {
    padding: 20.5128205128vw 0;
  }
}
.loop-Box .slider-wrapper {
  display: flex;
  overflow: hidden;
}
.loop-Box .slider-wrapper .slider {
  animation: scroll-left 50s infinite linear 0.5s both;
  display: flex;
}
.loop-Box .slider-wrapper .slider .slide {
  width: 45vw;
  margin-left: -80px;
}
@media (max-width: 768px) {
  .loop-Box .slider-wrapper .slider .slide {
    width: 85vw;
    margin-left: -10.2564102564vw;
  }
}
.loop-Box .slider-wrapper .slider .slide img {
  display: block;
  width: 100%;
  border-radius: clamp(70px, 6.7708333333vw, 130px);
}
@media (max-width: 768px) {
  .loop-Box .slider-wrapper .slider .slide img {
    border-radius: 20.5128205128vw;
  }
}
.loop-Box .slider-wrapper .slider .bottom-item {
  margin-top: 200px;
}
@media (max-width: 768px) {
  .loop-Box .slider-wrapper .slider .bottom-item {
    margin-top: 20.5128205128vw;
  }
}

@keyframes scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
.title-Box::before {
  width: 0 !important;
  transition: all 1s;
}
.title-Box.view::before {
  width: 100% !important;
}/*# sourceMappingURL=tsushin.css.map */