@charset "UTF-8";
@font-face {
  font-family: "GenJyuuGothic";
  src: url("https://gigaplus.makeshop.jp/yemoba4818/YM-articlesaite/font/GenJyuuGothic-Heavy.ttf") format("truetype");
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "GenJyuuGothic";
  src: url("https://gigaplus.makeshop.jp/yemoba4818/YM-articlesaite/font/GenJyuuGothic-Bold.ttf") format("truetype");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "GenJyuuGothic";
  src: url("https://gigaplus.makeshop.jp/yemoba4818/YM-articlesaite/font/GenJyuuGothic-Medium.ttf") format("truetype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "GenJyuuGothic";
  src: url("https://gigaplus.makeshop.jp/yemoba4818/YM-articlesaite/font/GenJyuuGothic-P-Normal.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "GenJyuuGothic";
  src: url("https://gigaplus.makeshop.jp/yemoba4818/YM-articlesaite/font/GenJyuuGothic-Light.ttf") format("truetype");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "MOBO";
  src: url("https://gigaplus.makeshop.jp/yemoba4818/YM-articlesaite/font/MOBO-Bold.otf") format("opentype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "MOBO";
  src: url("https://gigaplus.makeshop.jp/yemoba4818/YM-articlesaite/font/MOBO-SemiBold.otf") format("opentype");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
:root {
  --teal:#00A3AD;
  --yellow:#FFD700;
  --yellow-soft:#FFEF99;
  --pink:#FF0064;
  --green:#06C755;
  --ink:#000;
  --ink-soft:#e6e6e6;
  --footer:#EFF0F1;
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  scrollbar-gutter: stable;
  scroll-padding-top: 80px;
  scroll-behavior: smooth;
}
@media (max-width: 768px) {
  html {
    scroll-padding-top: 140px;
  }
}
@media (max-width: 660px) {
  html {
    scroll-padding-top: 116px;
  }
}

html, body {
  font-family: "sofia-pro-soft", "GenJyuuGothic", sans-serif;
  font-weight: 500;
  margin: 0;
  padding: 0;
  background: #fff;
  color: var(--ink);
  -webkit-font-smoothing: antialiased;
  overflow-x: clip;
}
html.menu-open, body.menu-open {
  overflow: clip;
  overscroll-behavior: none;
}

img {
  max-width: 100%;
  display: block;
}

a {
  color: inherit;
  text-decoration: none;
}

button {
  font-family: inherit;
  cursor: pointer;
  border: none;
  background: none;
}

.container {
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 24px;
}

section {
  position: relative;
}

ul {
  list-style: none;
}

.common_btn {
  display: flex;
  position: relative;
  transform-style: preserve-3d;
  max-width: 276px;
  width: 100%;
  height: 47px;
  border: 1.5px solid black;
  border-radius: 9999px;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  color: black;
  font-size: 16px;
  font-weight: 700;
  transition: 0.3s;
  background-color: #1B85FB;
}
.common_btn::before {
  background-color: #1567C3;
}
.common_btn::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: calc(100% + 3px);
  height: calc(100% + 3px);
  border: 1.5px solid black;
  border-radius: 9999px;
  transform: translate(1px, 2px) translateZ(-1px);
  transition: 0.3s;
}
.common_btn:hover {
  transform: translate(3px, 3px);
}
.common_btn:hover::before {
  transform: translate(-1.5px, -1.5px) translateZ(-1px);
}
.common_btn .icon-circle {
  position: absolute;
  left: 10px;
  width: 29px;
  height: 29px;
  background-color: #fff;
  border: 1px solid var(--ink);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.common_btn .icon-circle img {
  width: 53%;
  height: auto;
  object-fit: contain;
}
.common_btn .arrow {
  position: absolute;
  right: 20px;
  width: 8px;
  height: 8px;
  border-top: 2px solid black;
  border-right: 2px solid black;
  transform: rotate(45deg);
}
.common_btn.is-whitepink {
  background-color: #fff;
}
.common_btn.is-whitepink::before {
  background-color: #FF0064;
}
.common_btn.is-whitegreen {
  background-color: #fff;
}
.common_btn.is-whitegreen::before {
  background-color: #06C755;
}
.common_btn.is-pinkwhite {
  background-color: #ff0064;
}
.common_btn.is-pinkwhite::before {
  background-color: #fff;
}
.common_btn.is-pinkwhite {
  color: #fff;
}
.common_btn.is-pinkwhite .arrow {
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}
.common_btn.phone-sp, .common_btn.content-sp, .common_btn.apply-sp {
  height: 24px;
  font-size: 11px;
  padding-left: 10px;
}
.common_btn.phone-sp::before, .common_btn.content-sp::before, .common_btn.apply-sp::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: calc(100% + 2px);
  height: calc(100% + 2px);
  border: 1.5px solid black;
  border-radius: 9999px;
  transform: translate(1px, 2px) translateZ(-1px);
  transition: 0.3s;
}
.common_btn.phone-sp:hover, .common_btn.content-sp:hover, .common_btn.apply-sp:hover {
  transform: translate(3px, 3px);
}
.common_btn.phone-sp:hover::before, .common_btn.content-sp:hover::before, .common_btn.apply-sp:hover::before {
  transform: translate(-1.5px, -1.5px) translateZ(-1px);
}
.common_btn.phone-sp .icon-circle, .common_btn.content-sp .icon-circle, .common_btn.apply-sp .icon-circle {
  left: 4px;
  width: 16px;
  height: 16px;
  border: 0.5px solid var(--ink);
}
.common_btn.phone-sp {
  width: 24px;
}
.common_btn.phone-sp .phone-icon-circle {
  border: none;
}
.common_btn.phone-sp .phone-icon-circle img {
  width: 13px;
  height: auto;
  margin-right: 2px;
}
.common_btn.content-sp {
  width: 70px;
}
.common_btn.content-sp span:nth-of-type(2) {
  padding-left: 5px;
}
.common_btn.apply-sp {
  width: 93px;
}
.common_btn.apply-sp span:nth-of-type(2) {
  padding-left: 5px;
}

.head-wrap {
  padding: 0 20px;
  margin: 0 auto;
  max-width: 920px;
}
.head-wrap .sec-head {
  text-align: center;
}
.head-wrap .sec-head .sec-ico {
  width: auto;
  height: 50px;
  margin: 0 auto 8px;
  display: block;
}
@media (max-width: 768px) {
  .head-wrap .sec-head .sec-ico {
    width: auto;
    height: 38px;
    margin-bottom: 0;
  }
}
.head-wrap .sec-head .sec-ico.cico {
  padding-left: 320px;
}
@media (max-width: 768px) {
  .head-wrap .sec-head .sec-ico.cico {
    padding-left: 220px;
  }
}
.head-wrap .sec-head .sec-ico.dico {
  padding-left: 110px;
}
@media (max-width: 768px) {
  .head-wrap .sec-head .sec-ico.dico {
    padding-left: 70px;
  }
}
.head-wrap .sec-head .sec-ico.fico {
  padding-left: 180px;
}
@media (max-width: 768px) {
  .head-wrap .sec-head .sec-ico.fico {
    padding-left: 120px;
  }
}
.head-wrap .sec-head .sec-ico.gico {
  padding-left: 170px;
}
@media (max-width: 768px) {
  .head-wrap .sec-head .sec-ico.gico {
    padding-left: 115px;
  }
}
.head-wrap .sec-head .sec-ico.h1ico {
  padding-left: 300px;
}
@media (max-width: 768px) {
  .head-wrap .sec-head .sec-ico.h1ico {
    padding-left: 220px;
  }
}
.head-wrap .sec-head .sec-ico.h2ico {
  padding-left: 280px;
}
@media (max-width: 768px) {
  .head-wrap .sec-head .sec-ico.h2ico {
    padding-left: 205px;
  }
}
.head-wrap .sec-head .sec-ico.applyico {
  padding-left: 270px;
}
@media (max-width: 768px) {
  .head-wrap .sec-head .sec-ico.applyico {
    padding-left: 180px;
  }
}
.head-wrap .sec-head .sec-en {
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-style: italic;
  font-size: 36px;
  color: var(--ink);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 39px;
}
.head-wrap .sec-head .sec-en .line-l, .head-wrap .sec-head .sec-en .line-r {
  display: inline-block;
  width: 100%;
  height: 2px;
  background: var(--ink);
}
@media (max-width: 768px) {
  .head-wrap .sec-head .sec-en {
    font-size: 25px;
    gap: 18px;
  }
}
.head-wrap .sec-head .sec-jp {
  margin-top: 13px;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: bold;
  font-style: normal;
  font-size: 21px;
  color: var(--ink);
}
@media (max-width: 768px) {
  .head-wrap .sec-head .sec-jp {
    font-size: 15px;
  }
}

.wrap-wide {
  position: relative;
  max-width: 1070px;
  margin: 0 auto;
  padding: 0 20px;
}

.target-line {
  position: absolute;
  top: -60px;
  left: 0;
}

@media (max-width: 900px) {
  .assurance-grid {
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }
  .assure-card.main {
    grid-column: 1/-1;
    flex-direction: column;
    text-align: center;
  }
  .plan-grid {
    grid-template-columns: 90px 1fr 1fr 1fr;
  }
  .plan-head .big {
    font-size: 28px;
  }
  .plan-cell.amount {
    font-size: 18px;
  }
  .select-benefits,
  .carriers,
  .gp-grid,
  .guide-grid,
  .reviews-grid {
    grid-template-columns: 1fr;
  }
  .phone-grid {
    grid-template-columns: 1fr 1fr;
  }
  .sec-label {
    font-size: 28px;
  }
  .hero-title {
    font-size: 40px;
  }
  .plan-cta {
    flex-direction: column;
    align-items: center;
  }
  .step {
    grid-template-columns: 80px 1fr;
    padding: 16px;
  }
}
.header {
  position: sticky;
  top: 0;
  z-index: 50;
  background: #fff;
}

.header-inner {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  padding: 0;
  max-width: none;
  width: 100%;
  margin: 0;
  height: 60px;
  background-color: #fff;
}
@media (max-width: 768px) {
  .header-inner {
    flex-wrap: wrap;
    align-items: center;
    height: auto;
  }
}

.logo {
  flex: 1;
  display: flex;
  align-items: center;
  padding: 0 8px 0 16px;
}
.logo img {
  width: 164px;
  height: auto;
}
@media (max-width: 768px) {
  .logo {
    height: 46px;
  }
  .logo img {
    width: 150px;
  }
}
@media (max-width: 400px) {
  .logo img {
    width: 100px;
  }
}

.nav {
  display: flex;
  align-items: center;
  flex: 0 0 auto;
  justify-content: center;
  gap: 20px;
}
.nav .nav-item-wrapper {
  position: static;
}
.nav .nav-item-wrapper .nav-item {
  position: relative;
  display: inline-block;
  text-decoration: none;
  color: var(--ink);
  padding: 20px 0;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: bold;
  font-style: normal;
  font-size: 14px;
}
.nav .nav-item-wrapper .nav-item::after {
  content: "";
  position: absolute;
  bottom: 10px;
  left: 0;
  width: 100%;
  height: 2px;
  background: var(--teal);
  transform: scale(0, 1);
  transition: transform 0.3s;
}
.nav .nav-item-wrapper .nav-item img {
  display: none;
}
.nav .nav-item-wrapper .mega-menu {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  opacity: 0;
  visibility: hidden;
  transition: all 0.4s ease;
  z-index: -1;
  max-height: 100vh;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  padding-top: 60px;
}
@media (max-width: 768px) {
  .nav .nav-item-wrapper .mega-menu {
    padding-top: 130px;
  }
}
@media (max-width: 660px) {
  .nav .nav-item-wrapper .mega-menu {
    padding-top: 103px;
  }
}
.nav .nav-item-wrapper .mega-menu::after {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: -2;
  pointer-events: none;
}
.nav .nav-item-wrapper .white {
  width: 100%;
  background-color: #fff;
}
.nav .nav-item-wrapper.is-open .nav-item::after {
  transform: scale(1, 1);
}
.nav .nav-item-wrapper.is-open .mega-menu {
  opacity: 1 !important;
  visibility: visible !important;
}
@media (min-width: 769px) {
  .nav .nav-item-wrapper:hover .nav-item::after {
    transform: scale(1, 1);
  }
  .nav .nav-item-wrapper:hover .mega-menu {
    opacity: 1;
    visibility: visible;
  }
}
.nav .nav-item-wrapper.is-close .mega-menu {
  opacity: 0 !important;
  visibility: hidden !important;
}
@media (max-width: 768px) {
  .nav {
    order: 3;
    flex: 0 0 100%;
    width: 100%;
    background-color: var(--teal);
    padding: 10px 20px 0;
    justify-content: space-around;
    align-items: baseline;
    gap: 0;
  }
}
@media (max-width: 768px) and (max-width: 660px) {
  .nav {
    padding: 6px 20px 0;
  }
}
@media (max-width: 768px) {
  .nav .nav-item-wrapper.is-open {
    background-color: #98DADE;
    border-radius: 4px 4px 0 0;
  }
  .nav .nav-item-wrapper.is-open .nav-item::after {
    transform: scale(1, 1);
  }
  .nav .nav-item-wrapper.is-open .mega-menu {
    opacity: 1 !important;
    visibility: visible !important;
  }
  .nav .nav-item-wrapper.is-close .mega-menu {
    opacity: 0 !important;
    visibility: hidden !important;
  }
  .nav .nav-item-wrapper .nav-item {
    text-align: center;
    padding: 12px 10px;
    font-size: 14px;
    color: #fff;
  }
}
@media (max-width: 768px) and (max-width: 660px) {
  .nav .nav-item-wrapper .nav-item {
    font-size: 11px;
    padding: 10px 5px 6px;
  }
}
@media (max-width: 768px) {
  .nav .nav-item-wrapper .nav-item::after {
    display: none;
  }
  .nav .nav-item-wrapper .nav-item img {
    display: inline-block;
    padding-bottom: 10px;
  }
}
@media (max-width: 768px) and (max-width: 660px) {
  .nav .nav-item-wrapper .nav-item img {
    padding-bottom: 6px;
  }
}
@media (max-width: 768px) {
  .nav .nav-item-wrapper .nav-item img.icon1 {
    width: auto;
    height: 31px;
    margin-top: 4px;
  }
}
@media (max-width: 768px) and (max-width: 660px) {
  .nav .nav-item-wrapper .nav-item img.icon1 {
    height: 22px;
    margin-top: 1px;
  }
}
@media (max-width: 768px) {
  .nav .nav-item-wrapper .nav-item img.icon2 {
    width: auto;
    height: 31px;
    margin-top: 4px;
  }
}
@media (max-width: 768px) and (max-width: 660px) {
  .nav .nav-item-wrapper .nav-item img.icon2 {
    height: 21px;
    margin-top: 2px;
  }
}
@media (max-width: 768px) {
  .nav .nav-item-wrapper .nav-item img.icon3 {
    width: auto;
    height: 35px;
  }
}
@media (max-width: 768px) and (max-width: 660px) {
  .nav .nav-item-wrapper .nav-item img.icon3 {
    height: 23px;
    margin-top: 0;
  }
}
@media (max-width: 768px) {
  .nav .nav-item-wrapper .nav-item img.icon4 {
    width: auto;
    height: 33px;
    margin-top: 2px;
  }
}
@media (max-width: 768px) and (max-width: 660px) {
  .nav .nav-item-wrapper .nav-item img.icon4 {
    height: 23px;
    margin-top: 0;
  }
}
@media (max-width: 768px) {
  .nav .nav-item-wrapper .nav-item img.icon5 {
    width: auto;
    height: 29px;
    margin-top: 6px;
  }
}
@media (max-width: 768px) and (max-width: 660px) {
  .nav .nav-item-wrapper .nav-item img.icon5 {
    height: 21px;
    margin-top: 2px;
  }
}
.nav .menu-close-btn {
  display: none;
}
@media (max-width: 768px) {
  .nav .menu-close-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 80px;
    height: 24px;
    background-color: var(--teal);
    border-radius: 12px;
    font-size: 12px;
    font-weight: 700;
    color: #fff;
    cursor: pointer;
    margin: 20px auto 0;
    position: relative;
    padding-left: 10px;
  }
  .nav .menu-close-btn::before, .nav .menu-close-btn::after {
    content: "";
    position: absolute;
    left: 10px;
    width: 10px;
    height: 2px;
    background-color: #fff;
  }
  .nav .menu-close-btn::before {
    transform: rotate(45deg);
  }
  .nav .menu-close-btn::after {
    transform: rotate(-45deg);
  }
}

.mega-menu-inner {
  background-color: #fff;
  max-width: 740px;
  margin: 0 auto;
  padding: 40px 20px;
}
@media (max-width: 768px) {
  .mega-menu-inner {
    max-width: 540px;
    padding: 30px 20px;
  }
}
.mega-menu-inner .box {
  border: 1px solid var(--yellow);
  border-radius: 5px;
  position: relative;
  display: block;
  text-decoration: none;
  color: inherit;
}
.mega-menu-inner .box::after {
  content: "";
  position: absolute;
  bottom: 4px;
  right: 4px;
  border-style: solid;
  border-width: 0 0 15px 15px;
  border-color: transparent transparent var(--yellow);
  border-radius: 2px;
}
.mega-menu-inner .box.fill-box::after {
  border-bottom-color: #fff;
}
.mega-menu-inner .fill-box {
  border: none;
  background-color: var(--yellow);
}

.menu-service .content-box1 {
  display: flex;
  flex-direction: column;
  gap: 20px;
  height: 100%;
  width: 100%;
}
.menu-service .content-box1 .content-box2 {
  display: flex;
  gap: 20px;
  height: 220px;
  width: 100%;
}
.menu-service .content-box1 .content-box2 a, .menu-service .content-box1 .content-box2 div {
  flex: 1;
}
.menu-service .content-box1 .content-box2 .content-box3 {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  height: 100%;
}
.menu-service .content-box1 .content-box2 .content-box3 .box {
  flex: none;
  width: calc(50% - 10px);
  height: calc(50% - 10px);
}
.menu-service .content-box1 > .box {
  height: 50px;
  width: 100%;
}
.menu-service .box {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.menu-service .box p {
  font-size: 14px;
  font-weight: 700;
}
.menu-service .box.box-right {
  justify-content: space-between;
}
.menu-service .box.box-right p {
  padding-bottom: 24px;
}
.menu-service .box.box-right:nth-of-type(1) img {
  width: 21px;
  height: auto;
  padding-top: 23px;
}
.menu-service .box.box-right:nth-of-type(2) img {
  width: 21px;
  height: auto;
  padding-top: 24px;
}
.menu-service .box.box-right:nth-of-type(3) img {
  width: 20px;
  height: auto;
  padding-top: 26px;
}
.menu-service .box.box-right:nth-of-type(4) img {
  width: 18px;
  height: auto;
  padding-top: 23px;
}
.menu-service .box.fill-box {
  gap: 10px;
}
.menu-service .box.fill-box img {
  width: 138px;
  height: auto;
  padding-top: 24px;
}
.menu-service .box.fill-box p:nth-of-type(1) {
  font-size: 26px;
  font-weight: 700;
}
.menu-service .box.fill-box p:nth-of-type(2) {
  font-size: 18px;
  font-weight: 600;
}
.menu-service .box.box-top {
  display: none;
  flex-direction: row;
  align-items: start;
}
.menu-service .box.box-top img {
  width: 77px;
  height: auto;
  margin: 20px 0 0;
  padding-top: 0;
}
.menu-service .box.box-top div {
  text-align: left;
}
.menu-service .box.box-top div p:nth-of-type(1) {
  font-size: 12px;
  padding: 31px 0 5px;
}
.menu-service .box.box-top div p:nth-of-type(2) {
  font-size: 18px;
}
.menu-service .box.box-bottom {
  flex-direction: row;
  justify-content: center;
  gap: 15px;
}
.menu-service .box.box-bottom p {
  font-size: 16px;
}
.menu-service .box.box-bottom img {
  width: 32px;
  height: auto;
  padding-bottom: 4px;
}
@media (max-width: 768px) {
  .menu-service .content-box1 {
    gap: 16px;
  }
  .menu-service .content-box1 .content-box2 {
    flex-direction: column;
    gap: 16px;
    height: 100%;
    width: 100%;
  }
  .menu-service .content-box1 .content-box2 a, .menu-service .content-box1 .content-box2 div {
    flex: initial;
  }
  .menu-service .content-box1 .content-box2 > a {
    display: none;
  }
  .menu-service .content-box1 .content-box2 .box-top {
    gap: 30px;
    display: flex;
    justify-content: center;
    height: 100px;
  }
}
@media (max-width: 768px) and (max-width: 430px) {
  .menu-service .content-box1 .content-box2 .box-top {
    gap: 10px;
  }
}
@media (max-width: 768px) {
  .menu-service .content-box1 .content-box2 .content-box3 {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    height: 216px;
  }
  .menu-service .content-box1 .content-box2 .content-box3 .box {
    flex: none;
    width: calc(50% - 8px);
    height: calc(50% - 8px);
  }
  .menu-service .content-box1 > .box p {
    font-size: 14px;
  }
}

.menu-process .content-box1 {
  display: flex;
  flex-direction: column;
  gap: 20px;
  height: 100%;
  width: 100%;
}
.menu-process .content-box1 .content-box2 {
  display: flex;
  gap: 20px;
  height: 100px;
  width: 100%;
}
.menu-process .content-box1 .content-box2 a {
  flex: 1;
  height: 100%;
}
.menu-process .content-box1 .content-box3 {
  display: flex;
  gap: 20px;
  height: 100px;
  width: 100%;
}
.menu-process .content-box1 .content-box3 a {
  flex: 1;
  height: 100%;
}
.menu-process .box {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.menu-process .box p {
  font-size: 14px;
  font-weight: 700;
}
.menu-process .box.box-right {
  justify-content: space-between;
}
.menu-process .box.box-right p {
  padding-bottom: 24px;
}
.menu-process .box.box-right:nth-of-type(1) img {
  width: 20px;
  height: auto;
  padding-top: 27px;
}
.menu-process .box.box-right:nth-of-type(2) img {
  width: 20px;
  height: auto;
  padding-top: 25px;
}
.menu-process .box.box-right:nth-of-type(3) img {
  width: 20px;
  height: auto;
  padding-top: 22px;
}
.menu-process .box.box-right:nth-of-type(3) p {
  padding-bottom: 12px;
}
.menu-process .box.box-right:nth-of-type(4) img {
  width: 18px;
  height: auto;
  padding-top: 21px;
}
.menu-process .box.box-right:nth-of-type(4) p {
  padding-bottom: 12px;
}
.menu-process .box.fill-box.box-bottom {
  flex-direction: row;
  align-items: start;
  gap: 31px;
}
.menu-process .box.fill-box.box-bottom:nth-of-type(1) img {
  width: 50px;
  height: auto;
  margin: 20px 0 0 29px;
}
.menu-process .box.fill-box.box-bottom:nth-of-type(1) div {
  text-align: left;
}
.menu-process .box.fill-box.box-bottom:nth-of-type(1) div p:nth-of-type(1) {
  font-size: 12px;
  padding: 31px 0 5px;
}
.menu-process .box.fill-box.box-bottom:nth-of-type(1) div p:nth-of-type(2) {
  font-size: 18px;
}
.menu-process .box.fill-box.box-bottom:nth-of-type(2) img {
  width: 50px;
  height: auto;
  margin: 21px 0 0 29px;
}
.menu-process .box.fill-box.box-bottom:nth-of-type(2) div {
  text-align: left;
}
.menu-process .box.fill-box.box-bottom:nth-of-type(2) div p:nth-of-type(1) {
  font-size: 12px;
  padding: 31px 0 5px;
}
.menu-process .box.fill-box.box-bottom:nth-of-type(2) div p:nth-of-type(2) {
  font-size: 18px;
}
@media (max-width: 768px) {
  .menu-process .content-box1 {
    gap: 16px;
  }
  .menu-process .content-box1 .content-box2 {
    flex-direction: column;
    gap: 16px;
    height: 100%;
    width: 100%;
  }
  .menu-process .content-box1 .content-box2 a {
    flex: initial;
    height: 100px;
  }
  .menu-process .content-box1 .content-box2 .box-bottom {
    gap: 30px;
    display: flex;
    justify-content: center;
    height: 100px;
  }
}
@media (max-width: 768px) and (max-width: 430px) {
  .menu-process .content-box1 .content-box2 .box-bottom {
    gap: 10px;
  }
}
@media (max-width: 768px) {
  .menu-process .content-box1 .content-box2 .box-bottom:nth-of-type(1) img {
    width: 48px;
    height: auto;
    margin: 20px 0 0;
  }
  .menu-process .content-box1 .content-box2 .box-bottom:nth-of-type(2) img {
    width: 47px;
    height: auto;
    margin: 20px 0 0 1px;
  }
  .menu-process .content-box1 .content-box3 {
    flex-wrap: wrap;
    gap: 16px;
    height: 216px;
    width: 100%;
  }
  .menu-process .content-box1 .content-box3 .box {
    flex: none;
    width: calc(50% - 8px);
    height: calc(50% - 8px);
  }
}

.menu-payment .content-box1 {
  display: flex;
  gap: 20px;
  height: 100px;
  width: 100%;
}
.menu-payment .content-box1 a, .menu-payment .content-box1 .content-box2 {
  flex: 1;
  height: 100%;
}
.menu-payment .content-box1 .content-box2 {
  display: flex;
  gap: 20px;
}
.menu-payment .content-box1 .content-box2 a {
  height: 100%;
}
.menu-payment .box {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.menu-payment .box p {
  font-size: 14px;
  font-weight: 700;
}
.menu-payment .box.box-right {
  justify-content: space-between;
}
.menu-payment .box.box-right p {
  padding-bottom: 24px;
}
.menu-payment .box.box-right:nth-of-type(1) img {
  width: 17px;
  height: auto;
  padding-top: 27px;
}
.menu-payment .box.box-right:nth-of-type(2) img {
  width: 15px;
  height: auto;
  padding-top: 26px;
}
.menu-payment .box.box-right:nth-of-type(3) img {
  width: 20px;
  height: auto;
  padding-top: 25px;
}
.menu-payment .box.fill-box.box-bottom {
  flex-direction: row;
  align-items: start;
  gap: 31px;
}
.menu-payment .box.fill-box.box-bottom:nth-of-type(1) img {
  width: 50px;
  height: auto;
  margin: 21px 0 0 29px;
}
.menu-payment .box.fill-box.box-bottom:nth-of-type(1) div {
  text-align: left;
}
.menu-payment .box.fill-box.box-bottom:nth-of-type(1) div p:nth-of-type(1) {
  font-size: 12px;
  padding: 31px 0 5px;
}
.menu-payment .box.fill-box.box-bottom:nth-of-type(1) div p:nth-of-type(2) {
  font-size: 18px;
}
@media (max-width: 768px) {
  .menu-payment .content-box1 {
    gap: 16px;
    flex-direction: column;
    height: 100%;
  }
  .menu-payment .content-box1 a, .menu-payment .content-box1 .content-box2 {
    flex: initial;
    height: 100px;
  }
  .menu-payment .content-box1 .box.fill-box.box-bottom {
    gap: 30px;
    display: flex;
    justify-content: center;
    height: 100px;
  }
}
@media (max-width: 768px) and (max-width: 430px) {
  .menu-payment .content-box1 .box.fill-box.box-bottom {
    gap: 10px;
  }
}
@media (max-width: 768px) {
  .menu-payment .content-box1 .box.fill-box.box-bottom img {
    width: 47px;
    height: auto;
    margin: 20px 0 0 1px;
  }
  .menu-payment .content-box1 .content-box2 {
    display: flex;
    gap: 16px;
  }
  .menu-payment .content-box1 .content-box2 a {
    height: 100px;
    flex: 1;
  }
}

.menu-news {
  max-width: 1070px;
  padding: 40px 20px;
}
.menu-news .content-box1 {
  display: flex;
  flex-direction: column;
  gap: 20px;
  height: 100%;
  width: 100%;
}
.menu-news .content-box1 .content-box2 {
  display: flex;
  gap: 20px;
}
.menu-news .content-box1 .content-box2 .left-box {
  display: none;
}
.menu-news .content-box1 .content-box2 .section-box {
  flex: 1;
}
.menu-news .content-box1 .content-box2 .section-box .section-title {
  display: flex;
  align-items: center;
  text-align: center;
  font-size: 16px;
  font-weight: 700;
}
.menu-news .content-box1 .content-box2 .section-box .section-title::before, .menu-news .content-box1 .content-box2 .section-box .section-title::after {
  content: "";
  flex: 1;
  height: 2px;
  background: var(--yellow);
}
.menu-news .content-box1 .content-box2 .section-box .section-title::before {
  margin-right: 30px;
}
.menu-news .content-box1 .content-box2 .section-box .section-title::after {
  margin-left: 30px;
}
.menu-news .content-box1 .content-box2 .section-box .article {
  position: relative;
  display: block;
  text-decoration: none;
  color: inherit;
  margin: 8px 5% 0;
  padding: 10px;
  border-radius: 5px;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  background-color: #fff;
}
.menu-news .content-box1 .content-box2 .section-box .article:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15);
}
.menu-news .content-box1 .content-box2 .section-box .article .thumnail {
  width: 100%;
  height: auto;
  aspect-ratio: 217/144;
  object-fit: cover;
}
.menu-news .content-box1 .content-box2 .section-box .article div p:nth-of-type(1) {
  font-size: 15px;
  padding: 8px 0 2px;
}
.menu-news .content-box1 .content-box2 .section-box .article div p:nth-of-type(2) {
  font-size: 16px;
}
.menu-news .content-box1 .content-box3 {
  display: flex;
  gap: 20px;
  height: 50px;
  width: 100%;
}
.menu-news .content-box1 .content-box3 .left-box {
  flex: 2;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}
.menu-news .content-box1 .content-box3 .left-box p {
  font-size: 16px;
  font-weight: 700;
}
.menu-news .content-box1 .content-box3 .right-box {
  flex: 1;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}
.menu-news .content-box1 .content-box3 .right-box p {
  font-size: 16px;
  font-weight: 700;
}
.menu-news .content-box1 .content-box4 {
  display: flex;
  gap: 61px;
  margin: 0 auto;
  padding-top: 20px;
}
.menu-news .content-box1 .content-box4 a {
  display: block;
  text-decoration: none;
  color: inherit;
  transition: opacity 0.3s ease;
}
.menu-news .content-box1 .content-box4 a:hover {
  opacity: 0.8;
}
.menu-news .content-box1 .content-box4 a:nth-of-type(1) img {
  width: 27px;
}
.menu-news .content-box1 .content-box4 a:nth-of-type(2) img {
  width: 28px;
}
.menu-news .content-box1 .content-box4 a:nth-of-type(3) img {
  width: 39px;
}
.menu-news .content-box1 .content-box4 a:nth-of-type(4) img {
  width: 24px;
}
.menu-news .content-box1 .content-box4 a img {
  height: auto;
}
@media (max-width: 768px) {
  .menu-news {
    max-width: 540px;
  }
  .menu-news .content-box1 {
    gap: 16px;
  }
  .menu-news .content-box1 .content-box2 {
    flex-direction: column;
    gap: 24px;
  }
  .menu-news .content-box1 .content-box2 .section-box {
    flex: 1;
  }
  .menu-news .content-box1 .content-box2 .left-box {
    height: 50px;
    width: 100;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .menu-news .content-box1 .content-box2 .left-box p {
    font-size: 14px;
    font-weight: 700;
  }
  .menu-news .content-box1 .content-box3 {
    display: none;
  }
  .menu-news .content-box1 .content-box4 {
    gap: 40px;
  }
}

.menu-saport .content-box1 {
  display: flex;
  flex-direction: column;
  gap: 20px;
  height: 100%;
  width: 100%;
}
.menu-saport .content-box1 .content-box2 {
  display: flex;
  gap: 20px;
  height: 100px;
  width: 100%;
}
.menu-saport .content-box1 .content-box2 a {
  flex: 1;
  height: 100%;
}
.menu-saport .content-box1 .content-box3 {
  display: flex;
  flex-direction: column;
  gap: 20px;
  height: 190px;
  width: 100%;
}
.menu-saport .content-box1 .content-box3 a, .menu-saport .content-box1 .content-box3 .content-box4 {
  flex: 1;
  width: 100%;
}
.menu-saport .content-box1 .content-box3 .content-box4 {
  display: flex;
  gap: 20px;
}
.menu-saport .content-box1 .content-box3 .content-box4 a {
  width: auto;
  height: 100%;
}
.menu-saport .box {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.menu-saport .box p {
  font-size: 14px;
  font-weight: 700;
}
.menu-saport .box.box-bottom {
  flex-direction: row;
  justify-content: center;
  gap: 10px;
}
.menu-saport .box.box-bottom p {
  font-size: 16px;
}
.menu-saport .box.box-bottom:nth-of-type(1) img {
  width: 17px;
  height: auto;
}
.menu-saport .box.box-bottom:nth-of-type(2) img {
  width: 17px;
  height: auto;
}
.menu-saport .box.fill-box.box-bottom {
  flex-direction: row;
  align-items: start;
  gap: 25px;
  justify-content: left;
}
.menu-saport .box.fill-box.box-bottom:nth-of-type(1) img {
  width: 50px;
  height: auto;
  margin: 21px 0 0 32px;
}
.menu-saport .box.fill-box.box-bottom:nth-of-type(1) div {
  text-align: left;
}
.menu-saport .box.fill-box.box-bottom:nth-of-type(1) div p:nth-of-type(1) {
  font-size: 12px;
  padding: 31px 0 5px;
}
.menu-saport .box.fill-box.box-bottom:nth-of-type(1) div p:nth-of-type(2) {
  font-size: 18px;
}
.menu-saport .box.fill-box.box-bottom:nth-of-type(2) img {
  width: 77px;
  height: auto;
  margin: 22px 0 0 20px;
}
.menu-saport .box.fill-box.box-bottom:nth-of-type(2) div {
  text-align: left;
}
.menu-saport .box.fill-box.box-bottom:nth-of-type(2) div p:nth-of-type(1) {
  font-size: 12px;
  padding: 31px 0 5px;
}
.menu-saport .box.fill-box.box-bottom:nth-of-type(2) div p:nth-of-type(2) {
  font-size: 18px;
}
@media (max-width: 768px) {
  .menu-saport .content-box1 {
    gap: 16px;
  }
  .menu-saport .content-box1 .content-box2 {
    flex-direction: column;
    gap: 16px;
    height: 100%;
    width: 100%;
  }
  .menu-saport .content-box1 .content-box2 a {
    flex: initial;
    height: 100px;
  }
  .menu-saport .content-box1 .content-box2 .box-bottom {
    gap: 30px;
    display: flex;
    justify-content: center;
    height: 100px;
  }
}
@media (max-width: 768px) and (max-width: 430px) {
  .menu-saport .content-box1 .content-box2 .box-bottom {
    gap: 10px;
  }
}
@media (max-width: 768px) {
  .menu-saport .content-box1 .content-box2 .box-bottom:nth-of-type(1) img {
    width: 48px;
    height: auto;
    margin: 20px 10px 0 0;
  }
  .menu-saport .content-box1 .content-box2 .box-bottom:nth-of-type(1) div {
    margin-right: 38px;
  }
  .menu-saport .content-box1 .content-box2 .box-bottom:nth-of-type(2) img {
    width: 77px;
    height: auto;
    margin: 20px 0 0;
    padding-top: 0;
  }
  .menu-saport .content-box1 .content-box3 {
    height: 100%;
  }
  .menu-saport .content-box1 .content-box3 .box-bottom {
    flex: initial;
    height: 50px;
  }
  .menu-saport .content-box1 .content-box3 .box-bottom p {
    font-size: 14px;
  }
  .menu-saport .content-box1 .content-box3 .content-box4 {
    flex: initial;
    height: 100px;
  }
  .menu-saport .content-box1 .content-box3 .content-box4 .box-bottom {
    flex-direction: column;
    flex: 1;
    justify-content: space-between;
  }
  .menu-saport .content-box1 .content-box3 .content-box4 .box-bottom p {
    font-size: 14px;
    padding-bottom: 24px;
  }
  .menu-saport .content-box1 .content-box3 .content-box4 .box-bottom:nth-of-type(1) img {
    width: 18px;
    height: auto;
    padding-top: 24px;
  }
  .menu-saport .content-box1 .content-box3 .content-box4 .box-bottom:nth-of-type(2) img {
    width: 20px;
    height: auto;
    padding-top: 24px;
  }
}

.header-cta {
  display: flex;
  flex: 1;
  justify-content: flex-end;
  gap: 0;
  align-self: stretch;
}
@media (max-width: 768px) {
  .header-cta {
    order: 2;
    align-items: center;
    height: 46px;
    gap: 10px;
    padding-right: 20px;
  }
}
.header-cta .header-phone-link {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  color: #fff;
  padding: 0 8px;
  width: 137px;
}
@media (max-width: 768px) {
  .header-cta .header-phone-link {
    display: none;
  }
}
.header-cta .header-phone-link .phone-num-box {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 2px 8px 4px;
  border-radius: 10px;
  font-size: 12px;
  font-weight: bold;
  line-height: 1;
  background-color: var(--pink);
}
.header-cta .header-phone-link .phone-num-box img {
  width: auto;
  height: 1em;
  object-fit: contain;
  margin-top: 2px;
}
.header-cta .header-phone-link .phone-sub-text {
  display: block;
  margin-top: 6px;
  font-size: 11px;
  color: var(--pink);
}
.header-cta .header-phone-link {
  pointer-events: none;
}
@media (max-width: 768px) {
  .header-cta .header-phone-link {
    pointer-events: auto;
  }
}
.header-cta .common_btn {
  display: none;
}
.header-cta .common_btn .line-icon-circle {
  border: none;
  left: 5px;
}
.header-cta .common_btn .line-icon-circle img {
  width: 15px;
  height: auto;
}
@media (max-width: 768px) {
  .header-cta .common_btn {
    display: flex;
  }
}

.pill-btn {
  border-radius: 0;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: bold;
  font-style: normal;
  font-size: 11px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 3px;
  flex-direction: column;
  line-height: normal;
  width: 85px;
}
@media (max-width: 1100px) {
  .pill-btn {
    width: 75px;
  }
}
.pill-btn.contact {
  background: var(--green);
  color: #fff;
  transition: background-color 0.4s ease;
}
@media (max-width: 768px) {
  .pill-btn.contact {
    display: none;
  }
}
.pill-btn.contact .ico {
  height: 15px;
  width: auto;
}
.pill-btn.contact .ico:nth-of-type(2) {
  display: none;
}
.pill-btn.contact:hover {
  background-color: #fff;
  color: var(--green);
  border: 1px solid var(--green);
}
.pill-btn.contact:hover .ico:nth-of-type(1) {
  display: none;
}
.pill-btn.contact:hover .ico:nth-of-type(2) {
  display: block;
}
.pill-btn.apply {
  background: var(--pink);
  color: #fff;
  transition: background-color 0.4s ease;
}
@media (max-width: 768px) {
  .pill-btn.apply {
    display: none;
  }
}
.pill-btn.apply .ico {
  height: 12px;
  width: auto;
}
.pill-btn.apply .ico:nth-of-type(2) {
  display: none;
}
.pill-btn.apply:hover {
  background-color: #fff;
  color: var(--pink);
  border: 1px solid var(--pink);
}
.pill-btn.apply:hover .ico:nth-of-type(1) {
  display: none;
}
.pill-btn.apply:hover .ico:nth-of-type(2) {
  display: block;
}

.campaign_header {
  display: block;
  margin-bottom: 20px;
}
.campaign_header .menubanner_pc {
  width: 100%;
  height: auto;
}
.campaign_header .menubanner_sp {
  display: none;
  width: 100%;
  height: auto;
}
@media (max-width: 768px) {
  .campaign_header {
    margin-bottom: 16px;
  }
  .campaign_header .menubanner_pc {
    display: none;
  }
  .campaign_header .menubanner_sp {
    display: block;
  }
}

.hero {
  background-image: url("../img/hero/back_anniversary.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: auto 425px;
  background-color: var(--teal);
  position: relative;
  overflow: hidden;
  padding: 0;
  height: 425px;
  text-align: center;
}
@media (max-width: 768px) {
  .hero {
    background-image: url("../img/hero/back_anniversary_ph.png");
    background-size: 100% auto;
    width: 100%;
    height: auto;
    aspect-ratio: 195/203;
    margin-top: -1px;
  }
}

.hero-anime {
  position: relative;
}
.hero-anime .character {
  position: absolute;
  top: 277px;
  left: 50%;
  margin-left: 7px;
  width: 125px;
  height: 109px;
  background-image: url("../img/hero/character.png");
  background-size: contain;
  background-repeat: no-repeat;
  transform: translateX(-50%);
  animation: sway-pause 5s ease-in-out infinite;
  z-index: 10;
}
@media (max-width: 768px) {
  .hero-anime .character {
    width: 36%;
    height: auto;
    aspect-ratio: 109/125;
    left: calc(50% + 0vw);
    top: calc(50% + 68vw);
    margin-left: 0;
  }
}

@keyframes sway-pause {
  0%, 12.5%, 25% {
    transform: translateX(-50%) rotate(0deg);
  }
  3.125% {
    transform: translateX(-52%) rotate(-3deg);
  }
  9.375% {
    transform: translateX(-48%) rotate(3deg);
  }
  15.625% {
    transform: translateX(-52%) rotate(-3deg);
  }
  21.875% {
    transform: translateX(-48%) rotate(3deg);
  }
  25.001%, 100% {
    transform: translateX(-50%) rotate(0deg);
  }
}
.item {
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0;
  animation-fill-mode: forwards;
}
@media (max-width: 768px) {
  .item {
    left: 50%;
    top: 50%;
  }
}

.item-passport {
  background-image: url("../img/hero/passport.png");
  animation: fly-left-top 2s cubic-bezier(0.17, 0.84, 0.44, 1) forwards;
  width: 89px;
  height: 100px;
}
@media (max-width: 768px) {
  .item-passport {
    animation: fly-left-top_ph 2s cubic-bezier(0.17, 0.84, 0.44, 1) forwards;
    width: 25%;
    height: auto;
    aspect-ratio: 100/89;
  }
}

.item-ticket {
  background-image: url("../img/hero/ticket.png");
  animation: fly-left-bottom 2s cubic-bezier(0.17, 0.84, 0.44, 1) forwards 0.4s;
  width: 130px;
  height: 128px;
}
@media (max-width: 768px) {
  .item-ticket {
    display: none;
  }
}

.item-phone {
  background-image: url("../img/hero/phone.png");
  animation: fly-right-top 2s cubic-bezier(0.17, 0.84, 0.44, 1) forwards 0.2s;
  width: 109px;
  height: 132px;
}
@media (max-width: 768px) {
  .item-phone {
    animation: fly-right-top_ph 2s cubic-bezier(0.17, 0.84, 0.44, 1) forwards 0.2s;
    width: 29%;
    height: auto;
    aspect-ratio: 132/109;
  }
}

.item-boomerang {
  background-image: url("../img/hero/boomerang.png");
  animation: fly-right-bottom 2s cubic-bezier(0.17, 0.84, 0.44, 1) forwards 0.7s;
  width: 124px;
  height: 119px;
}
@media (max-width: 768px) {
  .item-boomerang {
    display: none;
  }
}

@keyframes fly-left-top {
  0% {
    left: -100px;
    top: 450px;
    opacity: 0;
    transform: rotate(0deg);
  }
  100% {
    left: 50%;
    top: 50%;
    margin-left: -420px;
    margin-top: 16px;
    opacity: 1;
  }
}
@keyframes fly-left-top_ph {
  0% {
    transform: translate(-500px, 200px) rotate(0deg);
    opacity: 0;
  }
  100% {
    transform: translate(-48vw, 13vw);
    opacity: 1;
  }
}
@keyframes fly-right-top {
  0% {
    right: -100px;
    top: 550px;
    opacity: 0;
    transform: rotate(0deg);
  }
  100% {
    right: 50%;
    top: 50%;
    margin-right: -390px;
    margin-top: 234px;
    opacity: 1;
  }
}
@keyframes fly-right-top_ph {
  0% {
    transform: translate(500px, 200px) rotate(0deg);
    opacity: 0;
  }
  100% {
    transform: translate(27vw, 73vw);
    opacity: 1;
  }
}
@keyframes fly-left-bottom {
  0% {
    left: -100px;
    top: 550px;
    opacity: 0;
    transform: rotate(0deg);
  }
  100% {
    left: 50%;
    top: 50%;
    margin-left: -610px;
    margin-top: 210px;
    opacity: 1;
  }
}
@keyframes fly-right-bottom {
  0% {
    right: -100px;
    top: 200px;
    opacity: 0;
    transform: rotate(0deg);
  }
  100% {
    right: 50%;
    top: 50%;
    margin-right: -690px;
    margin-top: 120px;
    opacity: 1;
    rotate: -15deg;
  }
}
.sec-top-a {
  background: var(--yellow);
  padding: 37px 0;
}
@media (max-width: 768px) {
  .sec-top-a {
    padding: 22px 0;
  }
}

.sec-top-a-inner {
  max-width: 1070px;
  margin: 0 auto;
  padding: 0 20px;
  display: flex;
  align-items: stretch;
  gap: 20px;
}
@media (max-width: 1020px) {
  .sec-top-a-inner {
    gap: 10px;
  }
}
@media (max-width: 768px) {
  .sec-top-a-inner {
    max-width: 550px;
    flex-direction: column;
    align-items: center;
    width: 100%;
    padding: 0 20px;
    gap: 10px;
  }
}

.support-card {
  flex: 44;
  background: #fff;
  border-radius: 10px;
  height: 199px;
  padding: 20px 18px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  position: relative;
}
@media (max-width: 1020px) {
  .support-card {
    padding: 25px 4px;
  }
}
@media (max-width: 768px) {
  .support-card {
    width: 100%;
    height: 180px;
    padding: 13px 14px 14px;
    gap: 10px;
    align-items: center;
    justify-content: center;
  }
}

.support-card-badge {
  flex-shrink: 0;
  width: 129px;
}
.support-card-badge img {
  width: 100%;
  height: auto;
  display: block;
  margin-top: 8px;
}
@media (max-width: 1020px) {
  .support-card-badge {
    width: 90px;
  }
}
@media (max-width: 768px) {
  .support-card-badge {
    width: 80px;
  }
}

.support-card-body {
  width: 100%;
  display: flex;
  align-items: flex-start;
  text-align: left;
  justify-content: space-between;
}
@media (max-width: 1020px) {
  .support-card-body {
    align-items: stretch;
    justify-content: center;
    gap: 10px;
  }
}
@media (max-width: 768px) {
  .support-card-body {
    align-items: stretch;
  }
}

.support-card-text h2 {
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 900;
  font-style: normal;
  color: var(--ink);
  line-height: 1.35;
}
.support-card-text h2 .lg {
  font-size: 21px;
}
.support-card-text h2 .sm {
  font-size: 15px;
}
@media (max-width: 1020px) {
  .support-card-text h2 .lg {
    font-size: 17px;
  }
  .support-card-text h2 .sm {
    font-size: 11px;
  }
}
@media (max-width: 768px) {
  .support-card-text h2 .lg {
    font-size: 17px;
  }
  .support-card-text h2 .sm {
    font-size: 11px;
  }
}
.support-card-text p {
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: bold;
  font-style: normal;
  color: var(--ink);
  font-size: 14px;
  line-height: 1.55;
  margin-top: 6px;
}
.support-card-text p .en {
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 16px;
}
@media (max-width: 1020px) {
  .support-card-text p {
    font-size: 12px;
    line-height: 1.5;
    margin-top: 4px;
  }
  .support-card-text p .en {
    font-size: 13px;
  }
}
@media (max-width: 824px) {
  .support-card-text p .res {
    display: none;
  }
}
@media (max-width: 768px) {
  .support-card-text p {
    font-size: 11px;
    line-height: 1.5;
    margin-top: 4px;
  }
  .support-card-text p .res {
    display: block;
  }
  .support-card-text p .en {
    font-size: 13px;
  }
}

.feature-cards {
  display: flex;
  gap: 20px;
  flex: 57;
}
@media (max-width: 1020px) {
  .feature-cards {
    gap: 10px;
  }
}
@media (max-width: 768px) {
  .feature-cards {
    gap: 10px;
    width: 100%;
    justify-content: space-between;
  }
}

.feature-card {
  background: #fff;
  border-radius: 10px;
  width: 100%;
  height: 199px;
  padding: 38px 0 27px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  position: relative;
}
@media (max-width: 768px) {
  .feature-card {
    justify-content: start;
    width: 100%;
    height: auto;
    padding: 12px 4px 8px;
  }
}
.feature-card img {
  max-height: 68px;
  width: auto;
  display: block;
}
@media (max-width: 768px) {
  .feature-card img {
    max-height: 35px;
  }
}
.feature-card.has-tag {
  overflow: hidden;
  border: 2px solid #fff;
}
.feature-card.has-tag img {
  padding-left: 6px;
}

.feature-card-text {
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: bold;
  font-style: normal;
  color: var(--ink);
  font-size: 14px;
  line-height: 1.5;
  text-align: center;
  margin-top: auto;
}
.feature-card-text .en {
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 16px;
}
@media (max-width: 1020px) {
  .feature-card-text {
    font-size: 12px;
    line-height: 1.5;
    margin-top: 4px;
  }
  .feature-card-text .en {
    font-size: 13px;
  }
}
@media (max-width: 768px) {
  .feature-card-text {
    font-size: 11px;
    line-height: 1.45;
  }
  .feature-card-text .en {
    font-size: 13px;
  }
}

.feature-card-tag {
  position: absolute;
  top: -6px;
  left: -6px;
  width: 54px;
  height: 54px;
  background: var(--yellow);
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: bold;
  font-style: normal;
  color: var(--ink);
  line-height: 1.1;
  text-align: center;
}
.feature-card-tag .en {
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 14px;
}
.feature-card-tag .jp {
  font-size: 14px;
  margin-top: 1px;
}
@media (max-width: 768px) {
  .feature-card-tag {
    top: -6px;
    left: -6px;
    width: 40px;
    height: 40px;
  }
  .feature-card-tag .en {
    font-size: 10px;
  }
  .feature-card-tag .jp {
    font-size: 10px;
  }
}

.sec-top-b {
  background: #fff;
  padding: 120px 0 30px;
  overflow: hidden;
}
@media (max-width: 768px) {
  .sec-top-b {
    padding: 40px 0 40px;
  }
}

.sec-top-b-inner {
  position: relative;
}

.campaign-slider {
  visibility: hidden;
}
.campaign-slider.slick-initialized {
  visibility: visible;
}
.campaign-slider .slide {
  width: 310px;
  margin: 0 8px;
  outline: none;
}
.campaign-slider .slide img {
  width: 310px;
  height: 145px;
  display: block;
  border-radius: 10px;
  object-fit: cover;
}
.campaign-slider .slick-list {
  overflow: visible;
}
.campaign-slider .slick-track {
  display: flex;
  align-items: center;
}
.campaign-slider .b-slide-dots {
  display: flex;
  justify-content: center;
  list-style: none;
  font-size: 0;
  padding-top: 36px;
}
.campaign-slider .b-slide-dots li {
  width: 8px;
  height: 8px;
  margin: 0 5px;
  background: var(--ink-soft);
  border-radius: 50%;
  cursor: pointer;
}
.campaign-slider .b-slide-dots li.slick-active {
  transform: scale(2);
}
@media (max-width: 768px) {
  .campaign-slider .slide {
    margin: 0 10px;
  }
  .campaign-slider .slick-dots {
    margin-top: 20px;
  }
  .campaign-slider .slick-dots li {
    width: 10px;
    height: 10px;
    margin: 0 3px;
  }
  .campaign-slider .slick-dots li button {
    width: 10px;
    height: 10px;
  }
  .campaign-slider .slick-dots li button::before {
    width: 10px;
    height: 10px;
  }
}

.sec-top-c {
  background: #fff;
  padding: 60px 0 80px;
  overflow: hidden;
}
@media (max-width: 768px) {
  .sec-top-c {
    padding: 0px 0 60px;
  }
}

.c-head {
  padding-bottom: 35px;
}

.plan-table-wrapper {
  position: relative;
  width: 100%;
}
.plan-table-wrapper .scroll-hint-overlay {
  display: none;
}
@media (max-width: 599px) {
  .plan-table-wrapper .scroll-hint-overlay {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 10;
    pointer-events: none;
    transition: opacity 0.5s ease, visibility 0.5s ease;
  }
  .plan-table-wrapper .scroll-hint-overlay img {
    width: 76px;
    height: auto;
  }
  .plan-table-wrapper .scroll-hint-overlay.is-hidden {
    opacity: 0;
    visibility: hidden;
  }
}

.plan-table-scroll {
  max-width: 700px;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .plan-table-scroll {
    max-width: 560px;
  }
}
@media (max-width: 599px) {
  .plan-table-scroll {
    max-width: none;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding: 2px 20px;
  }
}

.plan-table {
  width: 700px;
  border-collapse: collapse;
  background: #fff;
  border: none;
  box-shadow: 0 0 0 2px black;
  border-radius: 10px;
  table-layout: fixed;
  overflow: hidden;
  margin: 1px 0;
}
@media (max-width: 768px) {
  .plan-table {
    width: 560px;
  }
}
.plan-table th, .plan-table td {
  padding: 0 8px;
  text-align: center;
  vertical-align: middle;
  height: 60px;
  color: var(--ink);
  border-top: none;
  border-bottom: none;
  border-left: 2px solid var(--yellow);
  border-right: none;
}
.plan-table th:first-child, .plan-table td:first-child {
  border-left: none;
}
.plan-table col:first-child, .plan-table th:first-child, .plan-table td:first-child {
  width: 178px;
}
.plan-table th[scope=row], .plan-table thead th.label-cell {
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: bold;
  font-style: normal;
  font-size: 16px;
  background: #fff;
}
.plan-table th[scope=row] .en, .plan-table thead th.label-cell .en {
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 16px;
}
.plan-table td {
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 16px;
}
.plan-table td .num {
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 34px;
  vertical-align: baseline;
}
.plan-table td .unit {
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 20px;
  margin-left: 2px;
  vertical-align: baseline;
}
.plan-table td .unit-jp {
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: bold;
  font-style: normal;
  font-size: 17px;
  margin-left: 4px;
  vertical-align: baseline;
}
.plan-table td .standard {
  display: block;
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 19px;
  line-height: 1.2;
}
.plan-table td .standard-sub {
  display: block;
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 700;
  font-style: normal;
  color: #959595;
  font-size: 11px;
  line-height: 1.2;
}
.plan-table td .en {
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 700;
  font-style: normal;
}
.plan-table .row-yellow th, .plan-table .row-yellow td {
  background: var(--yellow-soft);
}
.plan-table .row-international th, .plan-table .row-international td {
  height: 60px;
}
.plan-table .row-international .intl-row {
  display: inline-flex;
  align-items: baseline;
  gap: 2px;
  justify-content: center;
}
.plan-table .row-international .intl-target {
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: bold;
  font-style: normal;
  color: #959595;
  font-size: 10px;
  line-height: 1;
}
.plan-table .row-international .intl-target .num-sm {
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 12px;
  margin: 0 1px;
}
.plan-table .row-international .intl-main {
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 16px;
  color: var(--ink);
}
.plan-table .row-international .intl-note {
  display: block;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: bold;
  font-style: normal;
  color: #959595;
  font-size: 10px;
  margin-top: 2px;
}
.plan-table .plan-table-head th:nth-of-type(2) img {
  width: 92px;
  height: auto;
  margin: 20px 0 0 32px;
}
@media (max-width: 768px) {
  .plan-table .plan-table-head th:nth-of-type(2) img {
    margin: 20px 0 0 9px;
  }
}
.plan-table .plan-table-head th:nth-of-type(3) img {
  width: 72px;
  height: auto;
  margin: 25px 0 0 38px;
}
@media (max-width: 768px) {
  .plan-table .plan-table-head th:nth-of-type(3) img {
    margin: 25px 0 0 19px;
  }
}
.plan-table .plan-table-head th:nth-of-type(4) img {
  width: 72px;
  height: auto;
  margin: 25px 0 0 38px;
}
@media (max-width: 768px) {
  .plan-table .plan-table-head th:nth-of-type(4) img {
    margin: 25px 0 0 19px;
  }
}

.plan-note {
  max-width: 700px;
  margin: 24px auto 0;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 300;
  font-style: normal;
  font-size: 12px;
  line-height: 1.6;
  color: var(--ink);
}
@media (max-width: 768px) {
  .plan-note {
    max-width: 560px;
    padding: 0 20px;
    margin-top: 20px;
  }
}

.plan-actions {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 50px;
  margin-top: 36px;
}
@media (max-width: 768px) {
  .plan-actions {
    flex-direction: column-reverse;
    gap: 25px;
    padding: 0 20px;
    margin-top: 37px;
  }
}

.sec-top-d {
  background: #fff;
  position: relative;
  overflow: hidden;
  padding-top: 60px;
}
@media (max-width: 768px) {
  .sec-top-d {
    padding-top: 0;
  }
}

.simkichiwalk {
  position: absolute;
  width: 130px;
  height: auto;
  top: 130px;
  left: calc(50% + 60px);
  transform-origin: bottom center;
  opacity: 0;
}
.simkichiwalk.is-animated {
  animation: walkDiagonal 2.5s linear forwards;
}
@media (max-width: 768px) {
  .simkichiwalk {
    width: 93px;
    top: 100px;
  }
  .simkichiwalk.is-animated {
    animation: walkDiagonal-sp 2.5s linear forwards;
  }
}

@keyframes walkDiagonal {
  0% {
    top: -110px;
    left: calc(50% + 100px);
    transform: scale(0.5) rotate(0deg);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  22% {
    top: -99px;
    left: calc(50% + 94px);
    transform: scale(0.7) rotate(6deg);
  }
  45% {
    top: -82px;
    right: 22px;
    transform: scale(0.78) rotate(-6deg);
  }
  67% {
    top: -81px;
    right: 28px;
    transform: scale(0.9) rotate(6deg);
  }
  90% {
    top: -60px;
    left: calc(50% + 60px);
    transform: scale(1) rotate(0deg);
    opacity: 1;
  }
  100% {
    top: -60px;
    left: calc(50% + 60px);
    transform: scale(1) rotate(0deg);
    opacity: 1;
  }
}
@keyframes walkDiagonal-sp {
  0% {
    top: -10px;
    left: calc(50% + 60px);
    transform: scale(0.5) rotate(0deg);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  22% {
    top: 1px;
    left: calc(50% + 54px);
    transform: scale(0.7) rotate(6deg);
  }
  45% {
    top: 18px;
    left: calc(50% + 42px);
    transform: scale(0.78) rotate(-6deg);
  }
  67% {
    top: 19px;
    left: calc(50% + 36px);
    transform: scale(0.9) rotate(6deg);
  }
  90%, 100% {
    top: 32px;
    left: calc(50% + 20px);
    transform: scale(1) rotate(0deg);
    opacity: 1;
  }
}
.buildingsimg {
  position: relative;
  height: 270px;
  margin: 40px 0 0 30px;
  background-image: url("../img/sec-top-d/scene_buildings.png");
  background-size: 733px 270px;
  background-repeat: no-repeat;
  background-position: center;
}
@media (max-width: 768px) {
  .buildingsimg {
    display: none;
  }
}

.select-visual {
  position: relative;
  height: 630px;
  margin-top: -78px;
  background-image: url("../img/sec-top-d/scene_ground.png");
  background-size: 1920px 630px;
  background-repeat: no-repeat;
  background-position: center;
}
@media (max-width: 768px) {
  .select-visual {
    background-image: url("../img/sec-top-d/scene_sp.png");
    height: 539px;
    background-size: auto 539px;
    margin-top: 40px;
  }
}
@media (min-width: 1920px) {
  .select-visual {
    background-image: url("../img/sec-top-d/scene_ground.png");
    background-size: 100% 630px;
  }
}

.visual-teal {
  background-color: var(--teal);
  margin-top: -1px;
  height: 268px;
}

.d-content-wrap {
  padding-top: 160px;
}
@media (max-width: 768px) {
  .d-content-wrap {
    padding-top: 145px;
  }
}

.visual-logo {
  display: block;
  margin: 0 auto 35px;
  width: 220px;
  height: auto;
  position: relative;
  z-index: 3;
}
@media (max-width: 768px) {
  .visual-logo {
    width: 209px;
    margin-bottom: 20px;
  }
}

.feature-cards-d {
  display: grid;
  grid-template-columns: repeat(3, 220px);
  gap: 20px;
  justify-content: center;
  margin: 0 auto;
  padding: 0;
  list-style: none;
  position: relative;
  z-index: 3;
}
@media (max-width: 768px) {
  .feature-cards-d {
    display: flex;
    max-width: 500px;
    grid-template-columns: none;
    flex-wrap: wrap;
    gap: 8px;
    padding: 0 20px;
  }
}

.feature-card-d {
  background: #fffadc;
  border-radius: 10px;
  width: 220px;
  height: 88px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  line-height: 1.3;
}
.feature-card-d .card-top {
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: bold;
  font-style: normal;
  color: var(--ink);
  font-size: 16px;
  line-height: 29px;
}
.feature-card-d .card-top .en {
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 18px;
}
.feature-card-d .card-bottom {
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: bold;
  font-style: normal;
  color: var(--teal);
  font-size: 21px;
  line-height: 29px;
}
.feature-card-d .card-bottom .en-lg {
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 23px;
  margin-left: 2px;
}
@media (max-width: 768px) {
  .feature-card-d {
    width: calc(50% - 4px);
    height: 71px;
    border-radius: 5px;
  }
  .feature-card-d .card-top {
    font-size: 13px;
    line-height: 21px;
  }
  .feature-card-d .card-top .en {
    font-size: 15px;
  }
  .feature-card-d .card-bottom {
    font-size: 17px;
    line-height: 21px;
  }
  .feature-card-d .card-bottom .en-lg {
    font-size: 19px;
  }
}

.visual-msg {
  margin-top: 50px;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: bold;
  font-style: normal;
  color: #f5f5f5;
  font-size: 24px;
  text-align: center;
  line-height: 1.5;
  position: relative;
  z-index: 3;
}
@media (max-width: 768px) {
  .visual-msg {
    margin-top: 15px;
    font-size: 16px;
  }
}

.sec-top-e {
  background: var(--yellow);
  padding: 60px 0 80px;
  margin-top: -0.5px;
  overflow: hidden;
}
@media (max-width: 768px) {
  .sec-top-e {
    padding: 32px 0 48px;
  }
}

.sec-top-e-title {
  text-align: center;
  margin-bottom: 45px;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: bold;
  font-style: normal;
  color: var(--ink);
}
.sec-top-e-title .title-sm {
  display: block;
  font-size: 33px;
}
.sec-top-e-title .title-sm .en {
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 35px;
}
.sec-top-e-title .title-lg {
  display: block;
  font-size: 45px;
  margin-top: -10px;
  font-weight: 900;
}
.sec-top-e-title .title-lg .num {
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 69px;
  color: var(--ink);
  margin-right: 2px;
}
@media (max-width: 768px) {
  .sec-top-e-title {
    margin-bottom: 35px;
  }
  .sec-top-e-title .title-sm {
    font-size: 21px;
  }
  .sec-top-e-title .title-sm .en {
    font-size: 23px;
  }
  .sec-top-e-title .title-lg {
    font-size: 26px;
    margin-top: 0px;
  }
  .sec-top-e-title .title-lg .num {
    font-size: 36px;
  }
}

.point-card {
  background: #fff;
  border-radius: 12px;
  padding: 50px 20px;
  margin: 0 auto 32px;
  max-width: 1030px;
  position: relative;
  z-index: 1;
  transform-style: preserve-3d;
}
.point-card:last-child {
  padding-bottom: 86px;
  text-align: center;
}
@media (max-width: 768px) {
  .point-card {
    padding: 25px 15px;
    border-radius: 8px;
    margin-bottom: 20px;
  }
  .point-card:last-child {
    padding-bottom: 25px;
  }
}

.point-head {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
}
.point-head .point-num {
  width: 40px;
  height: auto;
  flex-shrink: 0;
}
.point-head .point-title {
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 900;
  font-style: normal;
  font-size: 24px;
  color: var(--ink);
  padding-bottom: 8px;
}
@media (max-width: 768px) {
  .point-head .point-title {
    font-size: 21px;
  }
}
@media (max-width: 768px) {
  .point-head {
    flex-direction: column;
    gap: 7px;
  }
}

.point-desc {
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 16px;
  line-height: 26px;
  color: var(--ink);
  text-align: center;
}
.point-desc.desc1 {
  margin: 30px 0;
}
@media (max-width: 768px) {
  .point-desc.desc1 {
    margin: 25px auto;
    max-width: 520px;
    padding: 0 10px;
  }
  .point-desc.desc1 .sp {
    display: none;
  }
}
.point-desc.desc2 {
  margin: 40px 0;
}
@media (max-width: 768px) {
  .point-desc.desc2 {
    margin: 25px auto;
    max-width: 520px;
    padding: 0 10px;
  }
}
.point-desc .en {
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 15px;
}
.point-desc .hl-yellow {
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 900;
  font-style: normal;
  color: var(--teal);
}
@media (max-width: 768px) {
  .point-desc {
    max-width: 500px;
    margin: 25px auto;
  }
}

.point-mascot {
  position: absolute;
  height: auto;
  pointer-events: none;
}
.point-mascot.mascot-01 {
  width: 102px;
  right: 35px;
  bottom: 34px;
}
@media (max-width: 1069px) {
  .point-mascot.mascot-01 {
    width: 90px;
    right: calc(50% - 380px);
    bottom: 205px;
  }
}
@media (max-width: 839px) {
  .point-mascot.mascot-01 {
    display: none;
  }
}
.point-mascot.mascot-02 {
  width: 94px;
  right: calc(50% - 290px);
  bottom: 34px;
}
.point-mascot.mascot-03 {
  left: 16px;
  top: 220px;
}
@media (max-width: 768px) {
  .point-mascot {
    display: none;
  }
}

.carrier-grid {
  display: flex;
  align-items: end;
  gap: 20px;
  max-width: 799px;
  margin: 0 auto;
}
.carrier-grid .carrier-item:nth-child(2) {
  order: 1;
}
.carrier-grid .carrier-item:nth-child(3) {
  order: 3;
}
@media (max-width: 768px) {
  .carrier-grid {
    max-width: 500px;
    align-items: stretch;
    gap: 10px;
    display: flex;
    flex-wrap: wrap;
  }
  .carrier-grid .carrier-item:nth-child(2) {
    order: 0;
  }
  .carrier-grid .carrier-item:nth-child(3) {
    order: 0;
  }
}

.carrier-item {
  flex: 1;
  background: #fff;
  border: var(--teal) solid 2px;
  border-radius: 10px;
  text-align: center;
}
@media (max-width: 768px) {
  .carrier-item {
    width: calc(50% - 5px);
    flex: none;
  }
}
.carrier-item .carrier-feature {
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: bold;
  font-style: normal;
  font-size: 16px;
  margin: 20px 0;
  background: linear-gradient(transparent 65%, #98DADE 65%);
  display: inline-block;
  padding: 0 5px;
}
.carrier-item .carrier-feature .en {
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 700;
  font-style: normal;
}
@media (max-width: 768px) {
  .carrier-item .carrier-feature {
    margin: 15px 0;
  }
}
.carrier-item .carrier-name {
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 23px;
  color: #fff;
  background-color: var(--teal);
  padding: 5px 0 6px;
  border-radius: 8px 8px 0 0;
}
@media (max-width: 768px) {
  .carrier-item .carrier-name {
    font-size: 22px;
  }
}
.carrier-item .carrier-detail {
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: bold;
  font-style: normal;
  font-size: 14px;
  color: var(--ink);
  text-align: left;
  line-height: 1.6;
  padding: 0 0 20px 6%;
}
.carrier-item .carrier-detail span {
  display: block;
}
@media (max-width: 768px) {
  .carrier-item .carrier-detail {
    text-indent: -1em;
    padding: 0 16px 15px;
  }
}
.carrier-item.carrier-item-active {
  position: relative;
  border: var(--yellow) solid 2px;
  z-index: 1;
  order: 2;
}
.carrier-item.carrier-item-active .carrier-name {
  color: var(--ink);
  background-color: var(--yellow);
  font-size: 26px;
}
@media (max-width: 768px) {
  .carrier-item.carrier-item-active .carrier-name {
    font-size: 23px;
  }
}
.carrier-item.carrier-item-active .carrier-tag {
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: bold;
  font-style: normal;
  font-size: 14px;
  color: #fff;
  padding: 4px 0;
}
@media (max-width: 768px) {
  .carrier-item.carrier-item-active .carrier-tag {
    font-size: 12px;
  }
}
.carrier-item.carrier-item-active::before {
  content: "";
  position: absolute;
  top: 41px;
  left: -2px;
  z-index: -1;
  background-color: var(--ink);
  pointer-events: none;
  width: calc(100% + 4px);
  height: 24px;
}
@media (max-width: 768px) {
  .carrier-item.carrier-item-active {
    order: 0;
    width: 100%;
    height: 235px;
    flex: none;
  }
  .carrier-item.carrier-item-active::before {
    content: "";
    position: absolute;
    top: 37.5px;
    left: -2px;
    z-index: -1;
    background-color: var(--ink);
    pointer-events: none;
    width: calc(100% + 4px);
    height: 21px;
  }
}
.carrier-item.carrier-item-active .carrier-feature {
  background: linear-gradient(transparent 65%, var(--yellow) 65%);
}
.carrier-item.carrier-item-active .carrier-feature .en {
  font-size: 24px;
  padding: 0 2px;
}
@media (max-width: 768px) {
  .carrier-item.carrier-item-active .carrier-feature {
    margin-bottom: 3px;
  }
}
.carrier-item.carrier-item-active .carrier-detail {
  text-indent: 0;
}
.carrier-item.carrier-item-active .carrier-detail .space {
  display: inline;
}
@media (max-width: 768px) {
  .carrier-item.carrier-item-active .carrier-detail {
    text-align: center;
    line-height: normal;
    padding: 0;
  }
  .carrier-item.carrier-item-active .carrier-detail .sp {
    display: none;
  }
  .carrier-item.carrier-item-active .carrier-detail .space {
    display: none;
  }
}
.carrier-item.carrier-item-active img {
  position: absolute;
  width: 77px;
  height: auto;
  bottom: 16px;
  right: 22px;
}
@media (max-width: 768px) {
  .carrier-item.carrier-item-active img {
    right: 50%;
    translate: 50%;
    width: 100px;
  }
}

.phone-need-title {
  text-align: center;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: bold;
  font-style: normal;
  font-size: 21px;
  color: var(--ink);
  margin: 0 auto;
  position: relative;
}
.phone-need-title p {
  display: inline-block;
  background-image: radial-gradient(circle, var(--teal) 1.5px, transparent 1.5px);
  background-size: 6px 3px;
  background-repeat: repeat-x;
  background-position: bottom;
  padding-bottom: 3px;
}
@media (max-width: 768px) {
  .phone-need-title {
    font-size: 18px;
  }
}

.phone-need-list {
  display: flex;
  gap: 20px 30px;
  list-style: none;
  padding: 0;
  max-width: 799px;
  margin: 35px auto;
  flex-wrap: wrap;
  width: 100%;
}
@media (max-width: 768px) {
  .phone-need-list {
    gap: 10px;
    margin: 20px auto 25px;
    max-width: 500px;
  }
}

.phone-need-item {
  display: flex;
  border-radius: 10px;
  width: calc(50% - 15px);
  height: 74px;
  font-weight: bold;
}
.phone-need-item .head {
  display: flex;
  gap: 4px;
  align-items: center;
  justify-content: center;
  border: 2px solid var(--yellow);
  border-radius: 10px 0 0 10px;
  background-color: var(--yellow);
  width: 150px;
  height: 100%;
  font-size: 19px;
}
.phone-need-item .head img {
  width: 22px;
  height: auto;
}
.phone-need-item .head .small {
  font-size: 15px;
}
.phone-need-item .body {
  display: flex;
  border: 2px solid var(--yellow);
  border-radius: 0 10px 10px 0;
  width: 100%;
  height: 100%;
  align-items: center;
  line-height: 22px;
  padding-left: 6%;
}
@media (max-width: 768px) {
  .phone-need-item {
    flex-direction: column;
    width: calc(50% - 5px);
    height: auto;
  }
  .phone-need-item .head {
    width: 100%;
    border-radius: 10px 10px 0 0;
    justify-content: left;
    font-size: 16px;
    padding: 2px 10px;
    height: auto;
  }
  .phone-need-item .head img {
    width: 17px;
    height: auto;
  }
  .phone-need-item .head .small {
    font-size: 12px;
  }
  .phone-need-item .body {
    font-size: 13px;
    border-radius: 0 0 10px 10px;
    padding: 10px 6px;
  }
}

.phone-unlimited {
  padding: 33px 0 0;
  display: flex;
  align-items: center;
  position: relative;
  justify-content: center;
  padding-right: 90px;
}
.phone-unlimited .boxs {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 9px;
  height: 100%;
}
.phone-unlimited .boxs .box {
  display: flex;
  align-items: center;
  background-color: var(--teal);
  border-radius: 5px;
  padding: 6px 10px;
  gap: 4px;
}
.phone-unlimited .boxs .box img {
  width: 18px;
  height: auto;
}
.phone-unlimited .boxs .box p {
  color: #fff;
  font-weight: bold;
}
@media (max-width: 768px) {
  .phone-unlimited .boxs {
    gap: 5px;
  }
  .phone-unlimited .boxs .box {
    padding: 6px 12px;
  }
}
.phone-unlimited .text {
  text-align: center;
  padding: 0 23px 0 40px;
}
.phone-unlimited .text .phone-unlimited-tag {
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: bold;
  font-style: normal;
  font-size: 16px;
  color: var(--ink);
}
@media (max-width: 768px) {
  .phone-unlimited .text .phone-unlimited-tag {
    font-size: 13px;
  }
}
.phone-unlimited .text .phone-unlimited-text {
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: bold;
  font-style: normal;
  font-size: 66px;
  color: var(--ink);
  line-height: 1.1;
}
@media (max-width: 768px) {
  .phone-unlimited .text {
    padding: 0;
  }
  .phone-unlimited .text .phone-unlimited-text {
    font-size: 47px;
  }
}
.phone-unlimited .phone-infinity {
  width: 84px;
  height: auto;
  grid-column: 3;
  justify-self: end;
}
@media (max-width: 768px) {
  .phone-unlimited .phone-infinity {
    display: none;
  }
}
@media (max-width: 768px) {
  .phone-unlimited {
    grid-template-columns: 1fr 1fr;
    gap: 25px;
    padding: 20px 0 0 0;
  }
  .phone-unlimited .phone-unlimited-right .phone-unlimited-text {
    font-size: 26px;
  }
  .phone-unlimited .phone-infinity {
    width: 40px;
    grid-column: 2;
  }
}

.service-tagline {
  justify-content: center;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 900;
  font-style: normal;
  font-size: 16px;
  color: var(--teal);
  padding: 48px 0 10px;
  border-radius: 4px;
  display: flex;
  align-items: center;
  gap: 4px;
}
.service-tagline .cross {
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.8rem;
  padding-bottom: 6px;
}
@media (max-width: 768px) {
  .service-tagline {
    padding: 25px 0 20px;
    flex-direction: column;
    gap: 0;
  }
  .service-tagline .cross {
    font-family: "sofia-pro-soft", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 1.8rem;
    padding-bottom: 6px;
    line-height: 0.8;
  }
}

.desc3 {
  margin: 0 auto 25px;
}
@media (max-width: 768px) {
  .desc3 {
    max-width: 520px;
    padding: 0 10px;
  }
}
@media (max-width: 768px) {
  .desc3 .sp {
    display: none;
  }
}

.service-table-wrapper {
  position: relative;
  width: 100%;
}
.service-table-wrapper .scroll-hint-overlay {
  display: none;
}
@media (max-width: 607px) {
  .service-table-wrapper .scroll-hint-overlay {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 10;
    pointer-events: none;
    transition: opacity 0.5s ease, visibility 0.5s ease;
  }
  .service-table-wrapper .scroll-hint-overlay img {
    width: 76px;
    height: auto;
  }
  .service-table-wrapper .scroll-hint-overlay.is-hidden {
    opacity: 0;
    visibility: hidden;
  }
}

.service-table-scroll {
  max-width: 700px;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .service-table-scroll {
    max-width: 538px;
  }
}
@media (max-width: 607px) {
  .service-table-scroll {
    max-width: none;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    flex-shrink: 0;
  }
}
.service-table-scroll .table_pc {
  width: 100%;
  height: auto;
}
.service-table-scroll .table_sp {
  display: none;
}
@media (max-width: 768px) {
  .service-table-scroll .table_pc {
    display: none;
  }
  .service-table-scroll .table_sp {
    display: block;
    width: 538px;
    min-width: 538px;
    height: auto;
    flex-shrink: 0;
  }
}

.sec-top-f {
  background: var(--teal);
  position: relative;
  padding: 0;
}

.sec-top-f-wave-top,
.sec-top-f-wave-bottom {
  height: 75px;
}

.sec-top-f-wave-top {
  background: url("../img/sec-top-f/wave-top-re.png");
  background-size: auto 75px;
  background-repeat: repeat;
  background-position: center;
}

.sec-top-f-wave-bottom {
  background: url("../img/sec-top-f/wave.png");
  background-size: auto 75px;
  transform: scaleY(-1);
  background-repeat: repeat;
  background-position: center;
}

.f-head {
  padding: 30px 20px 50px;
}
.f-head .sec-head .sec-en, .f-head .sec-head .sec-jp {
  color: #fff;
}
.f-head .sec-head .sec-en .line-l, .f-head .sec-head .sec-en .line-r, .f-head .sec-head .sec-jp .line-l, .f-head .sec-head .sec-jp .line-r {
  background: #fff;
}

.sec-head-on-teal {
  text-align: center;
  margin-bottom: 36px;
  color: #fff;
}
.sec-head-on-teal .sec-ico {
  width: 40px;
  height: auto;
  margin: 0 auto 8px;
  display: block;
}
.sec-head-on-teal .sec-en {
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-style: italic;
  font-size: 32px;
  color: #fff;
  line-height: 1.2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
}
.sec-head-on-teal .sec-en .line-l, .sec-head-on-teal .sec-en .line-r {
  display: inline-block;
  width: 240px;
  height: 1px;
  background: #fff;
}
@media (max-width: 768px) {
  .sec-head-on-teal .sec-en {
    font-size: 22px;
    gap: 10px;
  }
  .sec-head-on-teal .sec-en .line-l, .sec-head-on-teal .sec-en .line-r {
    width: 50px;
  }
}
.sec-head-on-teal .sec-jp {
  margin-top: 6px;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: bold;
  font-style: normal;
  font-size: 15px;
  color: #fff;
}
.sec-head-on-teal .sec-jp .en {
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 15px;
}
@media (max-width: 768px) {
  .sec-head-on-teal .sec-jp {
    font-size: 12px;
  }
  .sec-head-on-teal .sec-jp .en {
    font-size: 12px;
  }
}
@media (max-width: 768px) {
  .sec-head-on-teal {
    margin-bottom: 20px;
  }
}

.good-point-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px 20px;
}
@media (max-width: 768px) {
  .good-point-list {
    grid-template-columns: 1fr;
    gap: 12px;
    max-width: 500px;
    margin: 0 auto;
  }
}

.good-point-card {
  background: #fff;
  border-radius: 10px;
  border: 2px solid var(--ink);
  padding: 16px 30px 16px 60px;
  display: flex;
  align-items: center;
  gap: 16px;
  position: relative;
  justify-content: center;
  min-height: 100px;
}
@media (max-width: 940px) {
  .good-point-card {
    padding: 14px 20px 14px 40px;
    gap: 5px;
  }
}
@media (max-width: 768px) {
  .good-point-card {
    padding: 14px 14px 14px 50px;
    gap: 25px;
    min-height: 84px;
  }
}
@media (max-width: 450px) {
  .good-point-card {
    gap: 10px;
  }
}
@media (max-width: 380px) {
  .good-point-card {
    padding: 12px 12px 12px 45px;
    gap: 5px;
  }
}
.good-point-card:nth-of-type(1) .gp-illust {
  width: 113px;
  height: auto;
  margin: 0 23px 0 22px;
}
@media (max-width: 1035px) {
  .good-point-card:nth-of-type(1) .gp-illust {
    width: 93px;
    margin: 0 23px 0 22px;
  }
}
@media (max-width: 768px) {
  .good-point-card:nth-of-type(1) .gp-illust {
    width: 80px;
    margin: 0 8px 0 7px;
  }
}
.good-point-card:nth-of-type(2) .gp-illust {
  width: 158px;
  height: auto;
}
@media (max-width: 1035px) {
  .good-point-card:nth-of-type(2) .gp-illust {
    width: 138px;
  }
}
@media (max-width: 768px) {
  .good-point-card:nth-of-type(2) .gp-illust {
    width: 102px;
  }
}
.good-point-card:nth-of-type(3) .gp-illust {
  width: 110px;
  height: auto;
  margin: 0 24px 0 24px;
}
@media (max-width: 1035px) {
  .good-point-card:nth-of-type(3) .gp-illust {
    width: 90px;
    margin: 0 24px 0 24px;
  }
}
@media (max-width: 768px) {
  .good-point-card:nth-of-type(3) .gp-illust {
    width: 76px;
    margin: 0 13px 0 13px;
  }
}
.good-point-card:nth-of-type(4) .gp-illust {
  width: 111px;
  height: auto;
  margin: 0 24px 0 23px;
}
@media (max-width: 1035px) {
  .good-point-card:nth-of-type(4) .gp-illust {
    width: 83px;
    margin: 0 28px 0 27px;
  }
}
@media (max-width: 768px) {
  .good-point-card:nth-of-type(4) .gp-illust {
    width: 72px;
    margin: 0 12px 0 11px;
  }
}
.good-point-card:nth-of-type(5) .gp-illust {
  width: 125px;
  height: auto;
  margin: 0 7px 0 26px;
}
@media (max-width: 1035px) {
  .good-point-card:nth-of-type(5) .gp-illust {
    width: 93px;
    margin: 0 13px 0 32px;
  }
}
@media (max-width: 768px) {
  .good-point-card:nth-of-type(5) .gp-illust {
    width: 84px;
    margin: 0 2px 0 16px;
  }
}
.good-point-card:nth-of-type(6) .gp-illust {
  width: 72px;
  height: auto;
  margin: 0 43px 0 43px;
}
@media (max-width: 1035px) {
  .good-point-card:nth-of-type(6) .gp-illust {
    width: 60px;
    margin: 0 39px 0 39px;
  }
}
@media (max-width: 768px) {
  .good-point-card:nth-of-type(6) .gp-illust {
    width: 50px;
    margin: 0 35px 0 17px;
  }
}

.gp-num {
  position: absolute;
  top: -10px;
  left: 18px;
  height: 53px;
  width: 44px;
  background-image: url("../img/sec-top-f/flag.png");
  background-size: 100% 100%;
  background-repeat: no-repeat;
  padding-top: 5px;
  display: flex;
  flex-direction: column;
  align-items: center;
  color: #fff;
}
.gp-num .gp-num-label {
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 9px;
}
.gp-num .gp-num-value {
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 32px;
  line-height: 0.8;
}
@media (max-width: 768px) {
  .gp-num {
    height: 40px;
    width: 33px;
    padding: 4px 0 0;
  }
  .gp-num .gp-num-label {
    font-size: 8px;
  }
  .gp-num .gp-num-value {
    font-size: 20px;
  }
}

.gp-text {
  display: inline-block;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: bold;
  font-style: normal;
  color: var(--ink);
  font-size: 14px;
  line-height: 1.5;
  display: flex;
  flex-direction: column;
  max-width: 220px;
  width: 100%;
}
.gp-text .gp-text-sub {
  font-size: 19px;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 700;
  font-style: normal;
}
.gp-text .gp-text-sub .en {
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 21px;
}
.gp-text .gp-text-sub sup {
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 12px;
  vertical-align: super;
  margin-left: 1px;
}
.gp-text .gp-text-hl {
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 900;
  font-style: normal;
  color: var(--teal);
  font-size: 22px;
  line-height: 1.3;
}
.gp-text .gp-text-hl .en {
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 23px;
}
.gp-text .gp-text-hl sup {
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 12px;
  color: var(--ink);
  vertical-align: super;
  margin-left: 1px;
}
.gp-text .gp-text-hl.gp-text-hl-inline {
  display: inline;
  font-size: 21px;
  line-height: inherit;
}
.gp-text .gp-text-hl.gp-text-hl-inline .en {
  font-size: 23px;
}
@media (max-width: 1035px) {
  .gp-text {
    font-size: 13px;
  }
  .gp-text .gp-text-sub {
    font-size: 17px;
  }
  .gp-text .gp-text-sub .en {
    font-size: 13px;
  }
  .gp-text .gp-text-hl {
    font-size: 19px;
  }
  .gp-text .gp-text-hl .en {
    font-size: 18px;
  }
  .gp-text .gp-text-hl.gp-text-hl-inline {
    font-size: 18px;
  }
  .gp-text .gp-text-hl.gp-text-hl-inline .en {
    font-size: 16px;
  }
}
@media (max-width: 768px) {
  .gp-text {
    font-size: 12px;
    max-width: 170px;
  }
  .gp-text .gp-text-sub {
    font-size: 12px;
  }
  .gp-text .gp-text-sub .en {
    font-size: 13px;
  }
  .gp-text .gp-text-sub sup {
    vertical-align: baseline !important;
  }
  .gp-text .gp-text-hl {
    font-size: 16px;
  }
  .gp-text .gp-text-hl .en {
    font-size: 18px;
  }
  .gp-text .gp-text-hl sup {
    vertical-align: baseline !important;
  }
  .gp-text .gp-text-hl.gp-text-hl-inline {
    font-size: 14px;
  }
  .gp-text .gp-text-hl.gp-text-hl-inline .en {
    font-size: 16px;
  }
}
@media (max-width: 380px) {
  .gp-text {
    font-size: 11px;
    max-width: 170px;
  }
  .gp-text .gp-text-sub {
    font-size: 11px;
  }
  .gp-text .gp-text-sub .en {
    font-size: 12px;
  }
  .gp-text .gp-text-hl {
    font-size: 15px;
  }
  .gp-text .gp-text-hl .en {
    font-size: 17px;
  }
  .gp-text .gp-text-hl.gp-text-hl-inline {
    font-size: 13px;
  }
  .gp-text .gp-text-hl.gp-text-hl-inline .en {
    font-size: 15px;
  }
}

.gp-notes {
  list-style: none;
  padding: 0;
  margin: 24px 0 0;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: normal;
  font-style: normal;
  color: #fff;
  font-size: 12px;
  line-height: 1.7;
}
.gp-notes li {
  margin: 0;
}
.gp-notes .note-num {
  display: inline-block;
}
.gp-notes .note-link {
  color: #fff;
  text-decoration: underline;
  text-decoration-thickness: 0.5px;
}
.gp-notes .note-link:hover {
  opacity: 0.6;
}
@media (max-width: 768px) {
  .gp-notes {
    font-size: 11px;
    margin-top: 16px;
  }
}

.inline-icon {
  display: inline;
  height: 0.8em;
  width: auto;
  vertical-align: middle;
  margin: 0 0 3px 4px;
}

.sec-top-g {
  background: #fff;
  padding: 60px 0 80px;
  overflow: hidden;
}
@media (max-width: 768px) {
  .sec-top-g {
    padding: 40px 0 60px;
  }
}

@media (max-width: 768px) {
  .wrap-g {
    padding: 0;
    margin: 0 auto;
    max-width: 920px;
  }
}

.sec-head .sec-ico {
  width: 40px;
  height: auto;
  margin: 0 auto 8px;
  display: block;
}
.sec-head .sec-en {
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-style: italic;
  font-size: 36px;
  color: var(--ink);
  line-height: 1.2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 38px;
}
.sec-head .sec-en .line-l, .sec-head .sec-en .line-r {
  display: inline-block;
  width: 297px;
  height: 1px;
  background: var(--ink);
}
.sec-head .sec-jp {
  margin-top: 8px;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: bold;
  font-style: normal;
  font-size: 21px;
  color: var(--ink);
}

.g-tabs {
  display: flex;
  align-items: end;
  justify-content: center;
  gap: 30px;
  position: relative;
  z-index: 2;
  height: 70px;
}
@media (max-width: 768px) {
  .g-tabs {
    height: 50px;
    gap: 10px;
  }
}

.g-tab {
  width: 356px;
  height: 50px;
  border: none;
  background: #fff3d3;
  color: #959595;
  border-radius: 10px 10px 0 0;
  cursor: pointer;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: bold;
  font-style: normal;
  font-size: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  transition: background-color 0.3s ease, color 0.3s ease, height 0.3s ease;
  padding: 0;
}
.g-tab .en {
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 30px;
}
.g-tab .jp {
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: bold;
  font-style: normal;
  font-size: 28px;
}
.g-tab.is-active {
  height: 70px;
  background: var(--yellow);
  color: var(--ink);
  margin-bottom: -1px;
  align-items: center;
}
.g-tab.is-active .en {
  font-size: 40px;
}
.g-tab.is-active .jp {
  font-size: 38px;
}
@media (max-width: 768px) {
  .g-tab {
    width: 100%;
    height: 43px;
  }
  .g-tab .en {
    font-family: "sofia-pro-soft", sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size: 20px;
  }
  .g-tab .jp {
    font-family: "GenJyuuGothic", sans-serif;
    font-weight: bold;
    font-style: normal;
    font-size: 18px;
  }
  .g-tab.is-active {
    height: 55px;
    background: var(--yellow);
    color: var(--ink);
    margin-bottom: -1px;
    align-items: center;
  }
  .g-tab.is-active .en {
    font-size: 25px;
  }
  .g-tab.is-active .jp {
    font-size: 23px;
  }
}
@media (max-width: 1070px) {
  .g-tab {
    width: 320px;
  }
}

.g-panel-wrap {
  background: var(--yellow);
  border-radius: 10px;
  padding: 80px 20px;
  position: relative;
  z-index: 1;
}
@media (max-width: 650px) {
  .g-panel-wrap {
    border-radius: 0 0 10px 10px;
    padding: 25px 20px;
  }
}

.g-panel {
  display: none;
}
.g-panel.is-active {
  display: block;
}

.g-steps {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 82px;
}

.g-step {
  position: relative;
  max-width: 700px;
  width: 100%;
  height: 100%;
  padding: 35px 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 35px;
}
@media (max-width: 768px) {
  .g-step {
    padding: 30px 30px 5px;
    gap: 15px;
  }
  .g-step:last-of-type {
    padding-bottom: 25px;
  }
}
@media (max-width: 430px) {
  .g-step {
    align-items: start;
  }
}

.tab-esim .g-step:nth-of-type(1) .window-shape {
  position: absolute;
  height: 280px;
  width: 100%;
  top: 0;
  left: 0;
  background-image: url("../img/sec-top-g/windowsim1.png");
  background-size: 100% 280px;
  background-repeat: no-repeat;
  background-position: top center;
}
@media (max-width: 768px) {
  .tab-esim .g-step:nth-of-type(1) .window-shape {
    height: calc(100% + 49px);
    background-size: 100% 100%;
  }
}
.tab-esim .g-step:nth-of-type(2) .window-shape {
  position: absolute;
  height: 432px;
  width: 100%;
  top: 0;
  left: 0;
  background-image: url("../img/sec-top-g/windowsim2.png");
  background-size: 100% 432px;
  background-repeat: no-repeat;
  background-position: top center;
}
@media (max-width: 768px) {
  .tab-esim .g-step:nth-of-type(2) .window-shape {
    height: calc(100% + 49px);
    background-size: 100% 100%;
  }
}
.tab-esim .g-step:nth-of-type(3) .window-shape {
  position: absolute;
  height: 432px;
  width: 100%;
  top: 0;
  left: 0;
  background-image: url("../img/sec-top-g/windowsim3.png");
  background-size: 100% 432px;
  background-repeat: no-repeat;
  background-position: top center;
}
@media (max-width: 768px) {
  .tab-esim .g-step:nth-of-type(3) .window-shape {
    height: calc(100% + 49px);
    background-size: 100% 100%;
  }
}
.tab-esim .g-step:nth-of-type(4) .window-shape {
  position: absolute;
  height: 294px;
  width: 100%;
  top: 0;
  left: 0;
  background-image: url("../img/sec-top-g/windowsim4.png");
  background-size: 100% 294px;
  background-repeat: no-repeat;
  background-position: top center;
}
@media (max-width: 768px) {
  .tab-esim .g-step:nth-of-type(4) .window-shape {
    height: calc(100% + 49px);
    background-size: 100% 100%;
  }
}
.tab-esim .g-step:last-of-type {
  background-color: #fff;
  border-radius: 10px;
}

.tab-sim .g-step:nth-of-type(1) .window-shape {
  position: absolute;
  height: 280px;
  width: 100%;
  top: 0;
  left: 0;
  background-image: url("../img/sec-top-g/windowsim1.png");
  background-size: 100% 280px;
  background-repeat: no-repeat;
  background-position: top center;
}
@media (max-width: 768px) {
  .tab-sim .g-step:nth-of-type(1) .window-shape {
    height: calc(100% + 49px);
    background-size: 100% 100%;
  }
}
.tab-sim .g-step:nth-of-type(2) .window-shape {
  position: absolute;
  height: 450px;
  width: 100%;
  top: 0;
  left: 0;
  background-image: url("../img/sec-top-g/windowsimcard2.png");
  background-size: 100% 450px;
  background-repeat: no-repeat;
  background-position: top center;
}
@media (max-width: 768px) {
  .tab-sim .g-step:nth-of-type(2) .window-shape {
    height: calc(100% + 49px);
    background-size: 100% 100%;
  }
}
.tab-sim .g-step:nth-of-type(3) .window-shape {
  position: absolute;
  height: 257px;
  width: 100%;
  top: 0;
  left: 0;
  background-image: url("../img/sec-top-g/windowsimcard3.png");
  background-size: 100% 257px;
  background-repeat: no-repeat;
  background-position: top center;
}
@media (max-width: 768px) {
  .tab-sim .g-step:nth-of-type(3) .window-shape {
    height: calc(100% + 49px);
    background-size: 100% 100%;
  }
}
.tab-sim .g-step:nth-of-type(4) .window-shape {
  position: absolute;
  height: 294px;
  width: 100%;
  top: 0;
  left: 0;
  background-image: url("../img/sec-top-g/windowsim4.png");
  background-size: 100% 294px;
  background-repeat: no-repeat;
  background-position: top center;
}
@media (max-width: 768px) {
  .tab-sim .g-step:nth-of-type(4) .window-shape {
    height: calc(100% + 49px);
    background-size: 100% 100%;
  }
}
.tab-sim .g-step:last-of-type {
  background-color: #fff;
  border-radius: 10px;
}

.g-step-head {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 20px;
}
.g-step-head img {
  width: 36px;
  height: auto;
  display: block;
}
.g-step-head div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  color: var(--teal);
  gap: 2px;
}
@media (max-width: 768px) {
  .g-step-head {
    gap: 16px;
  }
  .g-step-head img {
    width: 32px;
    height: auto;
    display: block;
  }
}

.g-step-label {
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 18px;
  line-height: 1;
  display: inline-flex;
  align-items: baseline;
  gap: 1px;
  order: -1;
}
.g-step-label .step-num {
  font-size: 28px;
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 900;
  font-style: normal;
}
@media (max-width: 768px) {
  .g-step-label {
    font-size: 13px;
  }
  .g-step-label .step-num {
    font-size: 23px;
  }
}

.g-step-name {
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: bold;
  font-style: normal;
  font-weight: 900;
  font-size: 21px;
  line-height: 26px;
  color: var(--teal);
}
.g-step-name .en {
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 23px;
}

.g-step-desc {
  position: relative;
  max-width: 572px;
  width: 100%;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 16px;
  line-height: normal;
  color: var(--ink);
  text-align: left;
}
.g-step-desc .link {
  color: #46c9f4;
  text-decoration: underline;
}
.g-step-desc .link:hover {
  opacity: 0.8;
}
@media (max-width: 768px) {
  .g-step-desc {
    font-size: 13px;
  }
}

.g-callout {
  width: 430px;
  border: 2px solid var(--yellow);
  border-radius: 10px;
  padding: 16px 0 18px;
  display: flex;
  align-items: start;
  justify-content: space-between;
  position: relative;
}
@media (max-width: 768px) {
  .g-callout {
    max-width: 300px;
    width: 100%;
    padding: 12px 0 12px;
  }
}

.g-callout-illust1 {
  width: 94px;
  height: auto;
  display: block;
  margin: 7px 0 0 27px;
}
@media (max-width: 768px) {
  .g-callout-illust1 {
    width: 74px;
    margin: 17px 0 0 25px;
  }
}
@media (max-width: 400px) {
  .g-callout-illust1 {
    width: 70px;
    margin: 17px 0 0 15px;
  }
}

.g-callout-illust2 {
  width: 103px;
  height: auto;
  display: block;
  margin: 7px 0 0 31px;
}
@media (max-width: 768px) {
  .g-callout-illust2 {
    width: 94px;
    margin: 7px 0 0 25px;
  }
}
@media (max-width: 400px) {
  .g-callout-illust2 {
    width: 80px;
    margin: 10px 0 0 15px;
  }
}

.g-callout-illust3 {
  width: 94px;
  height: auto;
  display: block;
  margin: 13px 0 0 27px;
}
@media (max-width: 768px) {
  .g-callout-illust3 {
    width: 74px;
    margin: 26px 0 0 25px;
  }
}
@media (max-width: 400px) {
  .g-callout-illust3 {
    width: 70px;
    margin: 30px 0 0 15px;
  }
}

.g-callout-body {
  display: flex;
  width: 268px;
  flex-direction: column;
  align-items: center;
  gap: 21px;
}
.g-callout-body.simcard {
  gap: 14px;
}
@media (max-width: 768px) {
  .g-callout-body {
    max-width: 160px;
    width: 100%;
    gap: 8px;
  }
  .g-callout-body.simcard {
    gap: 8px;
  }
  .g-callout-body.simcard .sp {
    display: none;
  }
}

.g-callout-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 30px;
  width: 100%;
  background: var(--yellow);
  border-radius: 5px 0 0 5px;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: bold;
  font-style: normal;
  font-size: 14px;
  color: var(--ink);
  white-space: nowrap;
}
.g-callout-pill .en {
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 16px;
}
@media (max-width: 768px) {
  .g-callout-pill {
    font-size: 11px;
  }
  .g-callout-pill .en {
    font-size: 13px;
  }
}

.g-callout-text {
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 14px;
  line-height: 23px;
  color: var(--ink);
  text-align: center;
}
.g-callout-text .underline {
  text-decoration: underline var(--yellow) 2px;
}
@media (max-width: 768px) {
  .g-callout-text {
    font-size: 12px;
    padding: 0 15px;
  }
  .g-callout-text .sp {
    display: none;
  }
}

.g-actions {
  display: flex;
  justify-content: center;
  margin-top: 42px;
}

.btn-apply {
  width: 285px;
  height: 51px;
  background: var(--pink);
  color: #fff;
  border-radius: 999px;
  border: 1px solid var(--pink);
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: bold;
  font-style: normal;
  font-size: 17px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  text-decoration: none;
  position: relative;
  transition: background-color 0.3s ease, color 0.3s ease;
}
.btn-apply .btn-apply-icon {
  width: 22px;
  height: auto;
}
.btn-apply .btn-arrow {
  position: absolute;
  right: 22px;
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
  height: 14px;
}
.btn-apply:hover {
  background: #fff;
  color: var(--pink);
}

.sec-top-h {
  background: var(--teal);
  position: relative;
  overflow: hidden;
}

.sec-top-h-wave-top {
  height: 75px;
  background: url("../img/sec-top-f/wave.png");
  background-size: auto 75px;
  background-repeat: repeat;
  background-position: center;
}

.sec-top-h-wave-bottom {
  height: 75px;
  background: url("../img/sec-top-f/wave.png");
  background-size: auto 75px;
  transform: scaleY(-1);
  background-repeat: repeat;
  background-position: center;
}

.h-head {
  padding: 0 0 35px;
}
.h-head .sec-head .sec-en, .h-head .sec-head .sec-jp {
  color: #fff;
}
.h-head .sec-head .sec-en .line-l, .h-head .sec-head .sec-en .line-r, .h-head .sec-head .sec-jp .line-l, .h-head .sec-head .sec-jp .line-r {
  background: #fff;
}

.h-block-guide {
  margin-bottom: 80px;
}
@media (max-width: 768px) {
  .h-block-guide {
    margin-bottom: 40px;
  }
}

.h-handbook {
  width: 100%;
  margin: 0 auto;
  background: var(--yellow);
  border-radius: 10px;
  display: flex;
  justify-content: center;
  aspect-ratio: 1030/574;
  overflow: hidden;
}
@media (max-width: 768px) {
  .h-handbook {
    aspect-ratio: auto;
    background: none;
  }
}

.h-toc {
  display: flex;
  flex-direction: column;
  list-style: none;
  margin: 0;
  padding: 2.8155% 3%;
  width: 28.932%;
  height: 100%;
  flex-shrink: 0;
  background: var(--yellow-soft);
}
@media (max-width: 768px) {
  .h-toc {
    display: none;
  }
}

.h-toc-item {
  flex: 1;
  display: flex;
  align-items: center;
  gap: 6px;
  cursor: pointer;
  transition: color 0.2s ease, font-weight 0.2s ease;
}
.h-toc-item:not(:last-child) {
  border-bottom: 3px dotted #fff;
}
.h-toc-item .h-toc-num {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  width: 48px;
  height: 32px;
  padding-left: 4px;
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-style: italic;
  font-size: 22px;
  color: var(--ink);
  line-height: 1;
  transition: background-color 0.2s ease, clip-path 0.2s ease;
}
.h-toc-item .h-toc-text {
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: bold;
  font-style: normal;
  font-size: 16px;
}
@media (max-width: 1030px) {
  .h-toc-item .h-toc-text {
    font-size: 1.5534vw;
  }
}
.h-toc-item .h-toc-text {
  line-height: 1.25;
  color: var(--ink);
}
.h-toc-item.is-active .h-toc-num {
  background: var(--yellow);
  clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 50%, calc(100% - 10px) 100%, 0 100%);
}
.h-toc-item:hover:not(.is-active) .h-toc-text {
  color: #444;
}

.h-pages {
  width: 42.1359%;
  max-width: 100%;
  aspect-ratio: 340/489;
  flex-shrink: 1;
  margin: 4.0776% 4.5631%;
  background: #fff;
  border-radius: 10px;
  position: relative;
  overflow: hidden;
}
@media (max-width: 768px) {
  .h-pages {
    max-width: 340px;
    width: 100%;
    margin: 0;
  }
}

.h-page {
  position: relative;
  width: 100%;
  height: 100%;
  display: grid;
  grid-template-rows: 1fr auto;
  overflow: hidden;
}
.h-page[hidden] {
  display: none;
}
.h-page .h-page-imgwrap {
  position: relative;
  width: 100%;
  height: 100%;
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-width: thin;
  scrollbar-color: var(--ink-soft) transparent;
}
.h-page .h-page-imgwrap::-webkit-scrollbar {
  width: 4px;
}
.h-page .h-page-imgwrap::-webkit-scrollbar-track {
  background: transparent;
}
.h-page .h-page-imgwrap::-webkit-scrollbar-thumb {
  background: var(--ink-soft);
  border-radius: 3px;
}
.h-page .h-page-imgwrap .scroll-hint-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
  z-index: 10;
  opacity: 1;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
.h-page .h-page-imgwrap .scroll-hint-overlay img {
  width: 70px;
  height: auto;
}
.h-page .h-page-imgwrap .scroll-hint-overlay img:nth-of-type(1) {
  display: none;
}
@media (max-width: 768px) {
  .h-page .h-page-imgwrap .scroll-hint-overlay img:nth-of-type(1) {
    display: block;
  }
}
.h-page .h-page-imgwrap .scroll-hint-overlay img:nth-of-type(2) {
  display: block;
}
@media (max-width: 768px) {
  .h-page .h-page-imgwrap .scroll-hint-overlay img:nth-of-type(2) {
    display: none;
  }
}
.h-page .h-page-imgwrap .scroll-hint-overlay.is-hidden {
  opacity: 0;
  visibility: hidden;
}
.h-page .content-wrap {
  width: 100%;
  height: auto;
  display: block;
  padding: 10% 5% 5%;
  text-align: center;
}
.h-page .content-wrap .head {
  display: flex;
  gap: 5%;
  align-items: flex-start;
  padding: 0 4% 12%;
  text-align: left;
}
.h-page .content-wrap .head .num {
  line-height: 0.8;
  font-size: 30px;
  color: var(--yellow);
  font-weight: bold;
  text-shadow: 1px 1px 0 #000, -1px -1px 0 #000, -1px 1px 0 #000, 1px -1px 0 #000, 0px 1px 0 #000, 0 -1px 0 #000, -1px 0 0 #000, 1px 0 0 #000;
}
@media (max-width: 1070px) {
  .h-page .content-wrap .head .num {
    font-size: 2.8vw;
  }
}
@media (max-width: 768px) {
  .h-page .content-wrap .head .num {
    font-size: 30px;
  }
}
@media (max-width: 380px) {
  .h-page .content-wrap .head .num {
    font-size: 7.89vw;
  }
}
.h-page .content-wrap .head .title {
  font-size: 21px;
  font-weight: 700;
  line-height: 1.3;
}
@media (max-width: 1070px) {
  .h-page .content-wrap .head .title {
    font-size: 1.86vw;
  }
}
@media (max-width: 768px) {
  .h-page .content-wrap .head .title {
    font-size: 21px;
  }
}
@media (max-width: 380px) {
  .h-page .content-wrap .head .title {
    font-size: 5.43vw;
  }
}
.h-page .content-wrap .page1-img {
  width: 90%;
  height: auto;
  margin: 0 auto;
}
.h-page .content-wrap .page3-img {
  width: 80%;
  height: auto;
  margin: 0 auto;
}
.h-page .content-wrap .page5-img {
  margin: 0 auto 6%;
}
.h-page .content-wrap .big-read {
  padding: 14% 0;
}
.h-page .content-wrap .big-read p {
  font-weight: 700;
  display: inline;
  background: linear-gradient(transparent 65%, #98DADE 65%);
  line-height: 1.5;
  font-size: 16px;
}
@media (max-width: 1070px) {
  .h-page .content-wrap .big-read p {
    font-size: 1.5vw;
  }
}
@media (max-width: 768px) {
  .h-page .content-wrap .big-read p {
    font-size: 16px;
  }
}
@media (max-width: 380px) {
  .h-page .content-wrap .big-read p {
    font-size: 4.21vw;
  }
}
.h-page .content-wrap .read {
  width: 90%;
  margin: 0 auto;
  line-height: 1.6;
  font-size: 16px;
}
@media (max-width: 1070px) {
  .h-page .content-wrap .read {
    font-size: 1.5vw;
  }
}
@media (max-width: 768px) {
  .h-page .content-wrap .read {
    font-size: 16px;
  }
}
@media (max-width: 380px) {
  .h-page .content-wrap .read {
    font-size: 4.21vw;
  }
}
.h-page .content-wrap .read .lists {
  padding-top: 5%;
  display: inline-block;
  text-align: left;
}
.h-page .content-wrap .read .check-list {
  padding-top: 14%;
}
.h-page .content-wrap .read .check-list li {
  display: flex;
  align-items: start;
  text-align: left;
  padding-bottom: 4%;
}
.h-page .content-wrap .read .check-list li:last-child {
  padding-bottom: 0;
}
.h-page .content-wrap .read .check-list li::before {
  content: "";
  display: inline-block;
  width: 4%;
  aspect-ratio: 1/1;
  margin: 3% 2% 0 0;
  flex-shrink: 0;
  background-image: url("../img/sec-top-h/checkmark.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.h-page .content-wrap .read .check-list li .bold {
  font-weight: 700;
}
.h-page .content-wrap .read .check-list li .bold .normal {
  font-weight: 500;
}
.h-page .content-wrap .checkpoint {
  display: flex;
  flex-direction: column;
  align-items: start;
  padding-top: 14%;
}
.h-page .content-wrap .checkpoint .title {
  font-weight: 700;
  background-color: var(--yellow);
  padding: 1% 6%;
  border-radius: 8px 8px 0 0;
  font-size: 16px;
}
@media (max-width: 1070px) {
  .h-page .content-wrap .checkpoint .title {
    font-size: 1.5vw;
  }
}
@media (max-width: 768px) {
  .h-page .content-wrap .checkpoint .title {
    font-size: 16px;
  }
}
@media (max-width: 380px) {
  .h-page .content-wrap .checkpoint .title {
    font-size: 4.21vw;
  }
}
.h-page .content-wrap .checkpoint .read {
  background-color: var(--yellow-soft);
  width: 100%;
  padding: 4% 8%;
  border-radius: 0 8px 8px 8px;
  text-align: left;
}
.h-page .content-wrap .bubble {
  position: sticky;
  top: 0;
  background-color: #fff;
  z-index: 5;
  padding: 6% 0 4%;
  display: flex;
  justify-content: center;
  gap: 28%;
}
.h-page .content-wrap .bubble img {
  width: 20%;
}
.h-page .content-wrap .graph-wrap {
  padding-top: 10%;
}
.h-page .content-wrap .graph-wrap.firstgraph {
  padding-top: 4%;
}
.h-page .content-wrap .graph-wrap img {
  margin: 0 auto;
}
.h-page .content-wrap .graph-wrap img.media1 {
  width: 30%;
  height: auto;
  margin-bottom: 6%;
}
.h-page .content-wrap .graph-wrap img.media2 {
  width: 10%;
  height: auto;
  margin-bottom: 6%;
}
.h-page .content-wrap .graph-wrap img.media3 {
  width: 10%;
  height: auto;
  margin-bottom: 1%;
}
.h-page .content-wrap .graph-wrap img.media4 {
  width: 8%;
  height: auto;
  margin-bottom: 1%;
}
.h-page .content-wrap .graph-wrap img.media5 {
  width: 25%;
  height: auto;
  margin-bottom: 6%;
}
.h-page .content-wrap .graph-wrap .graph {
  width: 100%;
  aspect-ratio: 286/35;
  display: flex;
  background-image: url("../img/sec-top-h/graph1.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.h-page .content-wrap .graph-wrap .graph div {
  padding-top: 2%;
  text-align: center;
  flex: 1;
  font-size: 12px;
  font-weight: 700;
}
@media (max-width: 1070px) {
  .h-page .content-wrap .graph-wrap .graph div {
    font-size: 1.12vw;
  }
}
@media (max-width: 768px) {
  .h-page .content-wrap .graph-wrap .graph div {
    font-size: 12px;
  }
}
@media (max-width: 380px) {
  .h-page .content-wrap .graph-wrap .graph div {
    font-size: 3.16vw;
  }
}
.h-page .content-wrap .graph-wrap .graph div .num {
  font-size: 18px;
}
@media (max-width: 1070px) {
  .h-page .content-wrap .graph-wrap .graph div .num {
    font-size: 1.68vw;
  }
}
@media (max-width: 768px) {
  .h-page .content-wrap .graph-wrap .graph div .num {
    font-size: 18px;
  }
}
@media (max-width: 380px) {
  .h-page .content-wrap .graph-wrap .graph div .num {
    font-size: 4.74vw;
  }
}
.h-page .content-wrap .graph-wrap .graph div.ja {
  font-size: 14px;
  padding-top: 3%;
}
@media (max-width: 1070px) {
  .h-page .content-wrap .graph-wrap .graph div.ja {
    font-size: 1.31vw;
  }
}
@media (max-width: 768px) {
  .h-page .content-wrap .graph-wrap .graph div.ja {
    font-size: 14px;
  }
}
@media (max-width: 380px) {
  .h-page .content-wrap .graph-wrap .graph div.ja {
    font-size: 3.68vw;
  }
}
.h-page .content-wrap .graph-wrap .top-attention {
  text-align: left;
  font-size: 12px;
  font-weight: 300;
  padding-bottom: 3%;
}
@media (max-width: 1070px) {
  .h-page .content-wrap .graph-wrap .top-attention {
    font-size: 1.12vw;
  }
}
@media (max-width: 768px) {
  .h-page .content-wrap .graph-wrap .top-attention {
    font-size: 12px;
  }
}
@media (max-width: 380px) {
  .h-page .content-wrap .graph-wrap .top-attention {
    font-size: 3.16vw;
  }
}
.h-page .content-wrap .graph-wrap .top-attention.top-ate2 {
  padding-top: 3%;
}
.h-page .content-wrap .graph-wrap .bottom-attention {
  text-align: right;
  font-size: 12px;
  font-weight: 300;
  padding-top: 3%;
}
@media (max-width: 1070px) {
  .h-page .content-wrap .graph-wrap .bottom-attention {
    font-size: 1.12vw;
  }
}
@media (max-width: 768px) {
  .h-page .content-wrap .graph-wrap .bottom-attention {
    font-size: 12px;
  }
}
@media (max-width: 380px) {
  .h-page .content-wrap .graph-wrap .bottom-attention {
    font-size: 3.16vw;
  }
}
.h-page .content-wrap .boxs .box {
  width: 100%;
  height: auto;
  position: relative;
  aspect-ratio: 286/140;
  background-image: url("../img/sec-top-h/box.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  margin-top: 15%;
}
.h-page .content-wrap .boxs .box:nth-of-type(2) {
  background-image: url("../img/sec-top-h/box-ye.png");
}
.h-page .content-wrap .boxs .box p:nth-of-type(1) {
  position: absolute;
  top: -4%;
  left: 50%;
  transform: translateX(-50%);
  font-size: 12px;
  font-weight: 900;
  display: inline;
  background: linear-gradient(transparent 90%, var(--ink) 90%);
}
@media (max-width: 1070px) {
  .h-page .content-wrap .boxs .box p:nth-of-type(1) {
    font-size: 1.12vw;
  }
}
@media (max-width: 768px) {
  .h-page .content-wrap .boxs .box p:nth-of-type(1) {
    font-size: 12px;
  }
}
@media (max-width: 380px) {
  .h-page .content-wrap .boxs .box p:nth-of-type(1) {
    font-size: 3.16vw;
  }
}
.h-page .content-wrap .boxs .box p:nth-of-type(2) {
  font-size: 12px;
  padding: 10% 0 4%;
}
@media (max-width: 1070px) {
  .h-page .content-wrap .boxs .box p:nth-of-type(2) {
    font-size: 1.12vw;
  }
}
@media (max-width: 768px) {
  .h-page .content-wrap .boxs .box p:nth-of-type(2) {
    font-size: 12px;
  }
}
@media (max-width: 380px) {
  .h-page .content-wrap .boxs .box p:nth-of-type(2) {
    font-size: 3.16vw;
  }
}
.h-page .content-wrap .boxs .box p:nth-of-type(2) .en {
  font-size: 15px;
}
@media (max-width: 1070px) {
  .h-page .content-wrap .boxs .box p:nth-of-type(2) .en {
    font-size: 1.4vw;
  }
}
@media (max-width: 768px) {
  .h-page .content-wrap .boxs .box p:nth-of-type(2) .en {
    font-size: 15px;
  }
}
@media (max-width: 380px) {
  .h-page .content-wrap .boxs .box p:nth-of-type(2) .en {
    font-size: 3.95vw;
  }
}
.h-page .content-wrap .boxs .box p:nth-of-type(3) {
  font-size: 21px;
  font-weight: 900;
}
@media (max-width: 1070px) {
  .h-page .content-wrap .boxs .box p:nth-of-type(3) {
    font-size: 1.96vw;
  }
}
@media (max-width: 768px) {
  .h-page .content-wrap .boxs .box p:nth-of-type(3) {
    font-size: 21px;
  }
}
@media (max-width: 380px) {
  .h-page .content-wrap .boxs .box p:nth-of-type(3) {
    font-size: 5.53vw;
  }
}
.h-page .content-wrap .boxs .box p:nth-of-type(3) .num {
  font-size: 43px;
  color: var(--yellow);
  font-weight: bold;
  text-shadow: 1px 1px 0 #000, -1px -1px 0 #000, -1px 1px 0 #000, 1px -1px 0 #000, 0px 1px 0 #000, 0 -1px 0 #000, -1px 0 0 #000, 1px 0 0 #000;
}
@media (max-width: 1070px) {
  .h-page .content-wrap .boxs .box p:nth-of-type(3) .num {
    font-size: 4.02vw;
  }
}
@media (max-width: 768px) {
  .h-page .content-wrap .boxs .box p:nth-of-type(3) .num {
    font-size: 43px;
  }
}
@media (max-width: 380px) {
  .h-page .content-wrap .boxs .box p:nth-of-type(3) .num {
    font-size: 11.32vw;
  }
}

.h-page-cover {
  align-items: center;
  text-align: center;
  background: url("../img/sec-top-h/表紙.png");
  background-size: 100%;
}

.h-cover-cta {
  display: inline-flex;
  position: absolute;
  bottom: 10%;
  left: 50%;
  transform: translateX(-50%);
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 50%;
  height: 8%;
  background: var(--teal);
  color: #fff;
  border-radius: 999px;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: bold;
  font-style: normal;
  font-size: 16px;
}
@media (max-width: 1070px) {
  .h-cover-cta {
    font-size: 1.5vw;
  }
}
@media (max-width: 768px) {
  .h-cover-cta {
    font-size: 16px;
  }
}
@media (max-width: 380px) {
  .h-cover-cta {
    font-size: 4.21vw;
  }
}
.h-cover-cta {
  text-decoration: none;
  transition: opacity 0.25s ease;
}
.h-cover-cta .cta-arrow {
  width: 8%;
  height: auto;
}
.h-cover-cta:hover {
  opacity: 0.85;
}

.h-page-nav {
  position: relative;
  width: 100%;
  padding: 15px 10px;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  z-index: 2;
  box-shadow: 0 -4px 4px rgba(0, 0, 0, 0.05);
}
.h-page-nav .scroll-arrow {
  display: block;
  margin: 0 auto;
  width: 6%;
  height: auto;
  animation: bounceUpDown 2s ease-in-out infinite;
}
.h-page-nav button {
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: bold;
  font-style: normal;
  font-size: 12px;
  background: var(--teal);
  color: #fff;
  border: none;
  border-radius: 999px;
  padding: 6px 14px;
  cursor: pointer;
  transition: opacity 0.25s ease;
}
.h-page-nav button:hover {
  opacity: 0.85;
}
.h-page-nav .h-nav-no {
  background: #fff;
  padding: 4px 10px;
}

@keyframes bounceUpDown {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(60%);
  }
}
.h-handbook-logo {
  width: 28.932%;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--yellow-soft);
}
.h-handbook-logo img {
  width: 65%;
  height: auto;
}
@media (max-width: 768px) {
  .h-handbook-logo {
    display: none;
  }
}

.f-slider-wrap {
  padding-bottom: 40px;
}
@media (max-width: 1070px) {
  .f-slider-wrap {
    width: 680px;
    margin: 0 auto;
  }
}
@media (max-width: 768px) {
  .f-slider-wrap {
    width: 330px;
    padding-bottom: 0px;
  }
}
@media (max-width: 370px) {
  .f-slider-wrap {
    width: 310px;
    padding-bottom: 0px;
  }
}

.f-slider {
  position: relative;
  display: block;
  width: 100%;
  height: auto;
}
.f-slider .slide-arrow {
  position: absolute;
  bottom: 0;
  cursor: pointer;
  margin: auto;
  height: 30px;
  width: 30px;
  left: 50%;
  z-index: 10;
}
.f-slider .prev-arrow {
  transform: translateX(calc(-50% - 130px)) translateY(10px) rotate(180deg);
}
.f-slider .next-arrow {
  transform: translateX(calc(-50% + 130px)) translateY(10px);
}
.f-slider .slide, .f-slider .slick-slide {
  width: 330px;
  margin: 0 10px;
}
.f-slider .slide .voice-card, .f-slider .slick-slide .voice-card {
  height: 415px;
  background-color: #fff;
  border-radius: 10px;
  padding: 18px 25px 30px;
}
.f-slider .slide .voice-card .num, .f-slider .slick-slide .voice-card .num {
  display: flex;
  justify-content: center;
  align-items: baseline;
  column-gap: 5px;
  font-size: 21px;
  font-weight: bold;
  font-style: italic;
  line-height: 1;
  padding-bottom: 6px;
}
.f-slider .slide .voice-card .num span, .f-slider .slick-slide .voice-card .num span {
  font-size: 35px;
  color: var(--yellow);
  text-shadow: 1px 1px 0 #000, -1px -1px 0 #000, -1px 1px 0 #000, 1px -1px 0 #000, 0px 1px 0 #000, 0 -1px 0 #000, -1px 0 0 #000, 1px 0 0 #000;
}
.f-slider .slide .voice-card .head, .f-slider .slick-slide .voice-card .head {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: flex-end;
  column-gap: 8px;
  margin-bottom: 18px;
}
.f-slider .slide .voice-card .head .icon, .f-slider .slick-slide .voice-card .head .icon {
  width: 50px;
}
.f-slider .slide .voice-card .head .icon img, .f-slider .slick-slide .voice-card .head .icon img {
  width: 100%;
  height: auto;
}
.f-slider .slide .voice-card .head .name, .f-slider .slick-slide .voice-card .head .name {
  font-size: 12px;
  font-weight: 400;
  padding-bottom: 6px;
}
.f-slider .slide .voice-card .head .hashtag, .f-slider .slick-slide .voice-card .head .hashtag {
  display: flex;
  flex-wrap: wrap;
  font-size: 12px;
  gap: 6px;
  font-weight: 400;
  padding-bottom: 6px;
}
.f-slider .slide .voice-card .head .hashtag li, .f-slider .slick-slide .voice-card .head .hashtag li {
  display: list-item;
  unicode-bidi: isolate;
}
.f-slider .slide .voice-card .head .hashtag li::before, .f-slider .slick-slide .voice-card .head .hashtag li::before {
  content: "#";
}
.f-slider .slide .voice-card .star, .f-slider .slick-slide .voice-card .star {
  display: flex;
}
.f-slider .slide .voice-card .star figure, .f-slider .slick-slide .voice-card .star figure {
  width: 15px;
  height: 14px;
}
.f-slider .slide .voice-card .title, .f-slider .slick-slide .voice-card .title {
  padding: 15px 0 12px;
  margin-bottom: 16px;
  font-size: 16px;
  font-weight: 500;
  border-bottom: 2px solid rgb(51, 51, 51);
}
.f-slider .slide .voice-card .comment, .f-slider .slick-slide .voice-card .comment {
  font-size: 13px;
  font-weight: 400;
  line-height: 2;
}
@media (max-width: 370px) {
  .f-slider .slide, .f-slider .slick-slide {
    width: 310px;
  }
}
@media (max-width: 768px) {
  .f-slider .slick-dotted.slick-slider {
    margin-bottom: 15px !important;
  }
}
.f-slider .f-slide-dots {
  display: flex;
  justify-content: center;
  list-style: none;
  font-size: 0;
  padding-top: 36px;
}
.f-slider .f-slide-dots li {
  width: 8px;
  height: 8px;
  margin: 0 5px;
  background: white;
  border-radius: 50%;
  cursor: pointer;
}
.f-slider .f-slide-dots li.slick-active {
  transform: scale(2);
}

.sec-top-i {
  padding: 120px 0;
}
@media (max-width: 768px) {
  .sec-top-i .line_pc {
    display: none;
  }
}
.sec-top-i .line_sp {
  display: none;
}
@media (max-width: 768px) {
  .sec-top-i .line_sp {
    display: block;
    max-width: 500px;
    width: 100%;
    margin: 0 auto;
  }
}
.sec-top-i .button-wrap {
  display: flex;
  justify-content: center;
  margin-top: 20px;
}
@media (max-width: 768px) {
  .sec-top-i {
    padding: 56px 0 66px;
  }
}

.footer {
  text-align: center;
  background-color: #eff0f1;
}

.footer_read {
  padding: 50px 0 26px;
}
.footer_read .boxs .box {
  float: none;
  width: 100%;
}
.footer_read .box_img img {
  display: inline-block;
}
.footer_read .box_clm {
  padding: 20px 0 45px;
}
.footer_read .box_clm ul {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.footer_read .box_clm ul li {
  font-size: 107%;
  font-weight: 300;
  display: inline-block;
}
.footer_read .box_nav ul li {
  font-size: 94%;
  font-weight: 300;
  display: inline-block;
  margin: 0 10px;
}
.footer_read .box_nav ul li a {
  text-decoration: underline;
}
@media (max-width: 768px) {
  .footer_read .box_img a img {
    width: 150px;
    height: auto;
  }
  .footer_read .box_nav ul li {
    font-size: 12px;
    margin: 0 6px 10px;
  }
}

.footer_copy {
  padding: 25px 30px;
  background-color: #00a3ad;
}
.footer_copy p {
  font-size: 94%;
  color: #fff;
}

.footer_gotop {
  position: absolute;
  top: -26px;
  left: 0;
  width: 100%;
}
.footer_gotop a {
  display: inline-block;
}
.footer_gotop a img {
  max-width: 100%;
  display: inline-block;
}
.footer_gotop a span {
  font-size: 94%;
  font-style: normal;
  display: block;
  margin-top: 6px;
  text-transform: uppercase;
}

.side_nav {
  position: fixed;
  z-index: 90;
  right: 85px;
  bottom: 135px;
}
.side_nav ul li {
  position: relative;
  margin-bottom: 15px;
}
.side_nav ul li:last-child {
  margin-bottom: 0;
}
.side_nav ul li img {
  position: relative;
  z-index: 10;
  filter: drop-shadow(0px 0px 15px rgba(0, 0, 0, 0.16));
}
.side_nav ul li .close {
  position: absolute;
  z-index: 12;
  top: 0;
  right: -10px;
  display: block;
  width: 28px;
  height: 28px;
  cursor: pointer;
  background-image: url(./img/common/side_ico_00@2x.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 28px;
}

.common_sns {
  margin-top: 60px;
}
.common_sns.__header {
  margin: -28px 0 42px;
}
.common_sns.__header ul {
  gap: 50px;
}
.common_sns.__header ul li svg path {
  fill: #fff;
}
.common_sns ul {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 100px;
}
@media (max-width: 768px) {
  .common_sns ul {
    gap: 44px;
  }
}

.footer_press {
  padding-top: 100px;
  width: 100%;
}
.footer_press .inner {
  display: flex;
  gap: 25px;
  width: 100%;
}
.footer_press .inner .section-box {
  background-color: #fff;
  border-radius: 10px;
  flex: 1;
  padding: 21px 27px;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.footer_press .inner .section-box:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15);
}
.footer_press .inner .section-box .section-title {
  display: flex;
  align-items: center;
  text-align: center;
  justify-content: center;
  font-size: 16px;
  font-weight: 700;
}
.footer_press .inner .section-box span {
  display: block;
  width: 100%;
  height: 1px;
  background: var(--ink);
  opacity: 0.2;
  margin: 7px 0 12px;
}
.footer_press .inner .section-box .article {
  position: relative;
  display: block;
  text-decoration: none;
  color: inherit;
  border-radius: 5px;
  background-color: #fff;
}
.footer_press .inner .section-box .article .thumnail {
  width: 100%;
  height: auto;
  aspect-ratio: 217/144;
  object-fit: cover;
}
.footer_press .inner .section-box .article div {
  text-align: left;
}
.footer_press .inner .section-box .article div p:nth-of-type(1) {
  font-size: 15px;
  padding: 8px 0 4px;
}
.footer_press .inner .section-box .article div p:nth-of-type(2) {
  font-size: 16px;
  text-decoration: underline var(--ink) 1px;
}
@media (max-width: 768px) {
  .footer_press {
    max-width: 400px;
    margin: 0 auto;
  }
  .footer_press .inner {
    flex-direction: column;
  }
}

.footer-inline-icon {
  display: inline;
  height: 0.8em;
  width: auto;
  vertical-align: middle;
  margin: 0 5px 2px 0;
}

@media (max-width: 768px) {
  main.plan .wrap-wide {
    max-width: 500px;
  }
}

.p-fv .plan-head {
  padding-bottom: 120px;
}
@media (max-width: 768px) {
  .p-fv .plan-head {
    padding-bottom: 60px;
  }
}

.c-headline {
  display: table;
  margin: 120px auto 40px;
  font-size: 21px;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  padding-bottom: 3px;
  border-bottom: 1px solid var(--ink);
}
@media (max-width: 768px) {
  .c-headline {
    margin: 60px auto 30px;
  }
}

.c-anchor {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
  max-width: 920px;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .c-anchor {
    gap: 10px;
  }
}
.c-anchor__item {
  flex: 1 1 250px;
  max-width: 280px;
  display: flex;
  align-items: center;
  gap: 10px;
  border: 2px solid var(--teal);
  border-radius: 8px;
  padding: 14px 18px;
  color: var(--ink);
  font-family: "sofia-pro-soft", "GenJyuuGothic", sans-serif;
  font-weight: 700;
  font-size: 14px;
  background: #fff;
  transition: background 0.2s, color 0.2s;
}
@media (max-width: 768px) {
  .c-anchor__item {
    gap: 4px;
    max-width: calc((100% - 20px) / 3);
    flex-direction: column;
    padding: 10px 0 2px;
    font-size: 12px;
  }
}
.c-anchor__item:hover {
  background: var(--teal);
  color: #fff;
}
.c-anchor__item:hover .c-anchor__icon img {
  filter: brightness(0) invert(1);
}
.c-anchor__item:hover .c-anchor__arrow {
  color: #fff;
}
.c-anchor__icon {
  flex: 0 0 23px;
  width: 23px;
  height: 23px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.c-anchor__icon img {
  width: 23px;
  height: 23px;
  object-fit: contain;
}
.c-anchor__arrow {
  margin-left: auto;
  color: var(--teal);
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 900;
  font-style: normal;
  font-size: 10px;
}
@media (max-width: 768px) {
  .c-anchor__arrow {
    display: none;
  }
}
.c-anchor__uarrow {
  display: none;
  color: var(--teal);
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 900;
  font-style: normal;
  font-size: 10px;
}
@media (max-width: 768px) {
  .c-anchor__uarrow {
    display: inline;
  }
}
.c-anchor .sp {
  display: none;
}
@media (max-width: 768px) {
  .c-anchor .sp {
    display: inline;
  }
}

.c-btn {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  background: #fff;
  border: 2px solid var(--ink);
  border-radius: 999px;
  padding: 14px 30px;
  font-family: "sofia-pro-soft", "GenJyuuGothic", sans-serif;
  font-weight: 900;
  font-size: 15px;
  color: var(--ink);
  box-shadow: 4px 4px 0 var(--pink);
  transition: transform 0.12s, box-shadow 0.12s;
}
.c-btn:hover {
  transform: translate(4px, 4px);
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.22);
}
.c-btn__arrow {
  margin-left: 2px;
  font-size: 17px;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 900;
  font-style: normal;
  line-height: 1;
}

.c-btnarea {
  text-align: center;
  margin-top: 28px;
}
.c-btnarea--pair {
  display: flex;
  gap: 120px;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: 30px;
}
@media (max-width: 768px) {
  .c-btnarea--pair {
    gap: 35px;
    margin-top: 15px;
  }
}

.c-accordion {
  max-width: 1030px;
  margin: 40px auto 0;
  width: 100%;
}
@media (max-width: 768px) {
  .c-accordion {
    margin: 80px auto 0;
  }
}
.c-accordion__item {
  border-bottom: 1.5px solid var(--ink);
}
.c-accordion__item:first-child {
  border-top: 1.5px solid var(--ink);
}
.c-accordion__item[open] .c-accordion__mark {
  transform: rotate(45deg);
}
.c-accordion__head {
  list-style: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  padding: 18px 10px;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 16px;
}
.c-accordion__head::-webkit-details-marker {
  display: none;
}
.c-accordion__mark {
  margin-left: auto;
  font-size: 22px;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 900;
  font-style: normal;
  color: var(--ink);
}
.c-accordion__body {
  padding-right: 24px;
  font-size: 12px;
  font-weight: 300;
  color: var(--ink);
  line-height: 1.6;
  padding-left: calc(1.2em + 10px);
  text-indent: -1.2em;
}
.c-accordion__body:last-child {
  padding-bottom: 20px;
}
.c-accordion__body .link {
  color: #46c9f4;
  text-decoration: underline;
}
.c-accordion__body .link:hover {
  opacity: 0.8;
}

.c-plus {
  text-align: center;
  font-size: 60px;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 900;
  font-style: normal;
  margin: 60px 0;
}
@media (max-width: 768px) {
  .c-plus {
    font-size: 50px;
    margin: 50px 0;
  }
}

.c-pagetop {
  text-align: center;
  padding: 30px 0 0;
}
.c-pagetop__link {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  color: var(--ink);
  font-size: 11px;
  font-family: "sofia-pro-soft", "GenJyuuGothic", sans-serif;
  font-weight: 700;
}
.c-pagetop__circle {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: var(--teal);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
}

.c-article__heading {
  text-align: center;
  font-size: 15px;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 900;
  font-style: normal;
  margin-bottom: 14px;
}
.c-article__photo {
  background: #fff;
  border-radius: 8px;
  aspect-ratio: 16/9;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #bbb;
  font-size: 12px;
}
.c-article__date {
  font-size: 12px;
  color: #888888;
  margin: 12px 0 4px;
}
.c-article__title {
  font-size: 13.5px;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  line-height: 1.6;
}
.c-article__title a:hover {
  text-decoration: underline;
}

.c-sns {
  display: flex;
  justify-content: center;
  gap: 22px;
  padding: 18px 0 4px;
}
.c-sns__item {
  font-size: 13px;
  font-family: "sofia-pro-soft", "GenJyuuGothic", sans-serif;
  font-weight: 700;
  color: var(--ink);
}
.c-sns__item:hover {
  color: var(--teal);
}

.p-fv {
  text-align: center;
  padding: 70px 0 0px;
}
.p-fv__icon {
  width: 58px;
  height: auto;
  margin: 0 auto 6px;
}
.p-fv__en {
  font-family: "sofia-pro-soft", sans-serif;
  font-weight: 500;
  font-style: normal;
  font-style: italic;
  font-size: 38px;
  color: var(--ink);
  display: inline-flex;
  align-items: center;
  gap: 22px;
}
.p-fv__en::before, .p-fv__en::after {
  content: "";
  width: 120px;
  height: 2px;
  background: var(--ink);
}
@media (max-width: 768px) {
  .p-fv__en {
    font-size: 28px;
  }
  .p-fv__en::before, .p-fv__en::after {
    width: 50px;
  }
}
@media (max-width: 480px) {
  .p-fv__en {
    font-size: 22px;
    gap: 10px;
  }
  .p-fv__en::before, .p-fv__en::after {
    width: 24px;
  }
}
.p-fv__heading {
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: bold;
  font-style: normal;
  font-size: 19px;
  margin-top: 6px;
  color: var(--ink);
}

.p-cycle__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 36px;
}
@media (max-width: 768px) {
  .p-cycle__list {
    display: none;
  }
}
.p-cycle__card {
  border: 2px solid var(--ink);
  border-radius: 14px;
  padding: 32px 40px 30px;
}
@media (max-width: 480px) {
  .p-cycle__card {
    padding: 28px 18px 26px;
  }
}
.p-cycle__badge {
  width: 62px;
  height: auto;
  margin: 0 auto 14px;
}
.p-cycle__heading {
  text-align: center;
  color: var(--teal);
  font-size: 19px;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 900;
  font-style: normal;
  margin-bottom: 30px;
}
.p-cycle__pay {
  width: 100%;
  max-width: 412px;
  margin: 0 auto 30px;
}
.p-cycle__text {
  font-size: 16px;
  line-height: 1.6;
  margin-bottom: 1px;
}
.p-cycle__text strong {
  color: var(--teal);
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 700;
  font-style: normal;
}
.p-cycle__link {
  color: #46C9F4;
  text-decoration: underline;
}
.p-cycle__link:hover {
  opacity: 0.7;
}
.p-cycle__photo {
  max-width: 350px;
  width: 100%;
  margin: 30px auto 0;
}
.p-cycle__notice {
  width: 100%;
  max-width: 428px;
  margin: 30px auto 0;
}
.p-cycle__example {
  background: var(--yellow-soft);
  border-radius: 10px;
  padding: 22px 24px;
  margin-top: 30px;
}
.p-cycle__example dl {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 4px 14px;
}
.p-cycle__example dt {
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 900;
  font-style: normal;
  font-size: 14.5px;
  white-space: nowrap;
}
.p-cycle__example dd {
  font-size: 16px;
  margin-bottom: 16px;
}
.p-cycle__example dd:last-child {
  margin-bottom: 0;
}
.p-cycle__example dd b {
  display: block;
  margin-bottom: -10px;
}
.p-cycle .btn-wrap {
  display: flex;
  justify-content: center;
  margin: 30px auto 0;
}
.p-cycle .p-accordion {
  display: none;
  max-width: 1030px;
  margin: 0 auto 0;
}
@media (max-width: 768px) {
  .p-cycle .p-accordion {
    display: block;
  }
}
.p-cycle .p-accordion__item {
  border: 2px solid var(--ink);
  border-radius: 10px;
  margin-bottom: 10px;
}
.p-cycle .p-accordion__item[open] .c-accordion__mark {
  transform: rotate(45deg);
}
.p-cycle .p-accordion__head {
  list-style: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  padding: 14px;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 18px;
}
.p-cycle .p-accordion__head::-webkit-details-marker {
  display: none;
}
.p-cycle .p-accordion__head .bar {
  font-weight: 500;
  padding: 0 5px 2px;
}
.p-cycle .p-accordion__inner {
  max-width: 400px;
  margin: 0 auto;
  padding: 20px 20px 32px;
}
.p-cycle .p-accordion__pay {
  width: 100%;
  margin: 0 auto 30px;
}
.p-cycle .p-accordion__text {
  font-size: 16px;
  line-height: 1.6;
  margin-bottom: 1px;
}
.p-cycle .p-accordion__text strong {
  color: var(--teal);
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 700;
  font-style: normal;
}
.p-cycle .p-accordion__link {
  color: #46C9F4;
  text-decoration: underline;
}
.p-cycle .p-accordion__link:hover {
  opacity: 0.7;
}
.p-cycle .p-accordion__notice {
  width: 100%;
  margin: 30px auto 0;
}
.p-cycle .p-accordion__mark {
  margin-left: auto;
  font-size: 22px;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 900;
  font-style: normal;
  color: var(--ink);
}
.p-cycle .p-accordion__body {
  padding-right: 20px;
  font-size: 12px;
  font-weight: 300;
  color: var(--ink);
  line-height: 1.6;
  padding-left: calc(1.2em + 10px);
  text-indent: -1.2em;
}
.p-cycle .p-accordion__body:last-child {
  padding-bottom: 20px;
}
.p-cycle .p-accordion__body .link {
  color: #46c9f4;
  text-decoration: underline;
}
.p-cycle .p-accordion__body .link:hover {
  opacity: 0.8;
}

.p-fees .c-headline {
  margin-bottom: 60px;
}
@media (max-width: 768px) {
  .p-fees .c-headline {
    margin-bottom: 40px;
  }
}
.p-fees__wrap {
  position: relative;
  width: 100%;
  padding: 46px 20px 50px;
  border: 2px solid var(--ink);
  border-radius: 10px;
}
@media (max-width: 768px) {
  .p-fees__wrap {
    padding: 30px 20px 20px;
  }
}
.p-fees__wrap p {
  position: absolute;
  top: -14px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 21px;
  font-weight: 900;
  padding: 0 40px;
  background-color: #fff;
}
@media (max-width: 768px) {
  .p-fees__wrap p {
    top: -10px;
    font-size: 17px;
    padding: 0 20px;
  }
}
.p-fees__photo {
  max-width: 800px;
  width: 100%;
  height: auto;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .p-fees__photo {
    display: none;
  }
}
.p-fees__photo_sp {
  display: none;
  max-width: 360px;
  width: 100%;
  height: auto;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .p-fees__photo_sp {
    display: block;
  }
}
.p-fees__label {
  display: block;
  text-align: center;
  background: var(--yellow-soft);
  color: var(--ink);
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 16px;
  padding: 12px;
  border: 1px solid var(--ink);
  border-radius: 999px;
  margin: 40px 20px;
}
@media (max-width: 768px) {
  .p-fees__label {
    margin: 35px 20px;
  }
}
.p-fees__lead {
  font-size: 16px;
  max-width: 1020px;
  line-height: 1.6;
  padding: 20px;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .p-fees__lead {
    padding: 0 20px 20px;
  }
}

.p-plan__banner {
  border: 2px solid var(--ink);
  border-radius: 10px;
  overflow: hidden;
}
.p-plan__banner-head {
  background: var(--ink);
  color: #fff;
  text-align: center;
  padding: 18px;
  font-size: 22px;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 900;
  font-style: normal;
}
@media (max-width: 768px) {
  .p-plan__banner-head {
    font-size: 20px;
    padding: 14px;
  }
}
.p-plan__banner-head small {
  font-size: 16px;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 700;
  font-style: normal;
}
@media (max-width: 768px) {
  .p-plan__banner-head small {
    display: block;
    margin-top: 8px;
  }
}
.p-plan__banner-sub {
  text-align: center;
  padding: 16px;
  font-size: 18px;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 900;
  font-style: normal;
  color: var(--teal);
}
@media (max-width: 768px) {
  .p-plan__banner-sub {
    padding: 10px 30px;
    display: block;
    margin-top: 6px;
    font-size: 16px;
    line-height: 1.6;
  }
}
.p-plan__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 30px;
  margin-top: 40px;
}
@media (max-width: 768px) {
  .p-plan__list {
    grid-template-columns: 1fr;
    gap: 35px;
    margin-top: 35px;
  }
}
.p-plan__table {
  width: 100%;
}
@media (max-width: 768px) {
  .p-plan__table {
    display: none;
  }
}
.p-plan__table_sp {
  width: 100%;
  display: none;
}
@media (max-width: 768px) {
  .p-plan__table_sp {
    display: block;
  }
}
.p-plan__aside {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  margin-top: 50px;
}
@media (max-width: 900px) {
  .p-plan__aside {
    margin-top: 35px;
  }
}
.p-plan__note {
  background: var(--yellow-soft);
  border-radius: 12px;
  padding: 15px;
  font-size: 16px;
  margin-right: 80px;
  line-height: 1.6;
}
.p-plan__note strong {
  color: var(--pink);
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 700;
  font-style: normal;
}
.p-plan__note .mr {
  margin-right: 110px;
}
@media (max-width: 900px) {
  .p-plan__note {
    font-size: 14px;
  }
}
@media (max-width: 768px) {
  .p-plan__note {
    margin-right: 55px;
  }
  .p-plan__note .mr {
    margin-right: 60px;
  }
}
.p-plan__photo {
  position: absolute;
  width: 148px;
  top: 90px;
  right: 30px;
}
@media (max-width: 900px) {
  .p-plan__photo {
    width: 110px;
    top: 80px;
    right: 50px;
  }
}
@media (max-width: 768px) {
  .p-plan__photo {
    width: 100px;
    top: 40px;
    right: 10px;
  }
}
@media (max-width: 460px) {
  .p-plan__photo {
    width: 100px;
    top: 86px;
    right: 10px;
  }
}

.p-option__frame {
  position: relative;
  border: 2px solid var(--ink);
  border-radius: 10px;
  padding: 6px;
  margin-top: 30px;
  background-color: var(--yellow);
}
.p-option__tab {
  position: absolute;
  top: -14px;
  left: 50%;
  transform: translateX(-50%);
  background: #fff;
  padding: 0 40px;
  font-size: 21px;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 900;
  font-style: normal;
}
@media (max-width: 768px) {
  .p-option__tab {
    top: -10px;
    font-size: 17px;
    padding: 0 20px;
  }
}
.p-option__innner {
  background-color: #fff;
  border-radius: 4px;
  padding: 50px 20px;
}
@media (max-width: 768px) {
  .p-option__innner {
    padding: 50px 20px 20px;
  }
}
.p-option__heading {
  text-align: center;
  font-size: 27px;
  font-family: "GenJyuuGothic", sans-serif;
  font-weight: 900;
  font-style: normal;
  margin-bottom: 30px;
}
@media (max-width: 768px) {
  .p-option__heading {
    line-height: 1.6;
  }
}
.p-option__heading span {
  background: linear-gradient(transparent 60%, var(--yellow) 60%);
}
.p-option__heading .sp {
  display: none;
}
@media (max-width: 768px) {
  .p-option__heading .sp {
    display: inline;
  }
}
.p-option__lead {
  text-align: center;
  font-size: 16px;
  margin-bottom: 56px;
}
.p-option__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 26px;
  max-width: 880px;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .p-option__list {
    grid-template-columns: 1fr;
  }
}
.p-option__item {
  width: 100%;
}
@media (max-width: 768px) {
  .p-option__item {
    display: none;
  }
}
.p-option__item_sp {
  display: none;
  max-width: 360px;
  width: 100%;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .p-option__item_sp {
    display: block;
  }
}
.p-option .btn-wrap {
  display: flex;
  justify-content: center;
  margin: 46px auto 0;
}

.p-short__photo {
  width: 100%;
  margin-top: 120px;
}
@media (max-width: 768px) {
  .p-short__photo {
    display: none;
  }
}
.p-short__photo_sp {
  width: 100%;
  margin-top: 60px;
  display: none;
}
@media (max-width: 768px) {
  .p-short__photo_sp {
    display: block;
  }
}
.p-short__banner {
  width: 100%;
}
@media (max-width: 768px) {
  .p-short__banner {
    display: none;
  }
}
.p-short__banner_sp {
  width: 100%;
  display: none;
}
@media (max-width: 768px) {
  .p-short__banner_sp {
    display: block;
  }
}
.p-short .banner_title {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin: 120px 0 10px;
}
@media (max-width: 768px) {
  .p-short .banner_title {
    margin: 56px 0 10px;
  }
}
.p-short .banner_title .bar {
  font-size: 40px;
  font-weight: 900;
  margin-top: 10px;
}
@media (max-width: 768px) {
  .p-short .banner_title .bar {
    font-size: 50px;
    font-weight: 400;
    margin-top: 27px;
  }
}
@media (max-width: 400px) {
  .p-short .banner_title .bar {
    font-size: 40px;
    font-weight: 400;
    margin-top: 27px;
  }
}
.p-short .banner_title .bar:nth-of-type(1) {
  transform: scaleX(-1);
}
.p-short .banner_title .title {
  text-align: center;
  font-weight: 700;
  line-height: 1.4;
}
@media (max-width: 400px) {
  .p-short .banner_title .title {
    font-size: 14px;
  }
}
.p-short .banner_title .title p:nth-of-type(2) {
  font-size: 18px;
  font-weight: 900;
}
@media (max-width: 400px) {
  .p-short .banner_title .title p:nth-of-type(2) {
    font-size: 16px;
  }
}
.p-short .banner_title .title p:nth-of-type(2) .yellowline {
  background: linear-gradient(transparent 65%, var(--yellow) 65%);
}
.p-short .banner_title .title p:nth-of-type(2) .big {
  font-size: 21px;
}
@media (max-width: 400px) {
  .p-short .banner_title .title p:nth-of-type(2) .big {
    font-size: 18px;
  }
}
.p-short .banner_title .title p:nth-of-type(2) .sp {
  display: none;
}
@media (max-width: 768px) {
  .p-short .banner_title .title p:nth-of-type(2) .sp {
    display: inline;
  }
}
.p-short__note {
  text-align: center;
  margin-top: 14px;
  font-size: 12px;
  color: #888888;
  line-height: 1.7;
}
.p-short .btn-wrap {
  display: flex;
  justify-content: center;
  margin: 40px auto 160px;
}
@media (max-width: 768px) {
  .p-short .btn-wrap {
    margin: 35px auto 90px;
  }
}

.top_a {
  background: #fff;
}
@media (max-width: 768px) {
  .top_a .wrap-wide {
    max-width: 540px;
  }
}
.top_a__band {
  position: relative;
  width: 1030px;
  max-width: 100%;
}
.top_a__band img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.top_a {
  /* ヘッダー帯 */
}
.top_a__header {
  position: relative;
  width: 1030px;
  max-width: 100%;
  margin-top: 40px;
}
.top_a__title {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  color: #fff;
  background-color: var(--teal);
  border-radius: 10px 10px 0 0;
  font-weight: 700;
  font-size: 21px;
  white-space: nowrap;
  padding-top: 6px;
}
@media (max-width: 768px) {
  .top_a__title {
    font-size: 15px;
    gap: 6px;
  }
}
.top_a__title-en {
  font-style: italic;
  font-weight: 700;
  font-size: 37px;
  line-height: 1;
  text-shadow: 1px 1px 0 #000, -1px -1px 0 #000, -1px 1px 0 #000, 1px -1px 0 #000, 0px 1px 0 #000, 0 -1px 0 #000, -1px 0 0 #000, 1px 0 0 #000;
  margin-bottom: 6px;
}
@media (max-width: 768px) {
  .top_a__title-en {
    font-size: 25px;
  }
}
.top_a__subtitle {
  width: 100%;
  text-align: center;
  color: #fff;
  font-weight: 700;
  font-size: 16px;
  background-color: var(--ink);
  border-radius: 0 0 10px 10px;
  padding: 10px 10px;
}
@media (max-width: 768px) {
  .top_a__subtitle {
    font-size: 12px;
  }
}
.top_a {
  /* eSIMとは */
}
.top_a__about {
  position: relative;
  width: 629px;
  height: 240px;
  max-width: 100%;
  margin: 40px auto 0;
}
@media (max-width: 768px) {
  .top_a__about {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 14px;
    text-align: center;
    margin: 16px auto 0;
  }
}
.top_a__about .wrap {
  position: absolute;
  left: 173px;
  top: 95px;
}
.top_a__about .wrap > img {
  height: 212px;
  width: auto;
  display: none;
}
@media (max-width: 768px) {
  .top_a__about .wrap > img {
    display: block;
  }
}
@media (max-width: 768px) {
  .top_a__about .wrap {
    left: auto;
    top: auto;
    position: relative;
    text-align: left;
    display: flex;
    gap: 15px;
  }
}
.top_a__about .wrap-flex {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.top_a__about-heading {
  margin: 0;
  line-height: 1;
  padding-bottom: 4px;
  font-weight: 900;
  font-size: 21px;
  color: var(--ink);
  background: linear-gradient(transparent calc(100% - 8px), #98DADE 0);
  background-size: 95px 8px;
  background-repeat: no-repeat;
  background-position: left bottom;
}
@media (max-width: 768px) {
  .top_a__about-heading {
    position: static;
    display: inline-block;
    font-size: 16px;
  }
}
.top_a__about-text {
  margin: 10px 0;
  font-weight: 500;
  font-size: 16px;
  color: var(--ink);
  white-space: nowrap;
}
@media (max-width: 768px) {
  .top_a__about-text {
    position: static;
    white-space: normal;
    margin: 6px 0;
    font-size: 13px;
  }
}
.top_a__about-note {
  margin: 0;
  font-weight: 300;
  font-size: 12px;
  color: var(--ink);
  white-space: nowrap;
}
@media (max-width: 768px) {
  .top_a__about-note {
    position: static;
    white-space: normal;
  }
}
.top_a__phone {
  position: absolute;
  left: 0;
  top: 0;
  width: 142px;
  z-index: 2;
}
@media (max-width: 768px) {
  .top_a__phone {
    display: none;
  }
}
.top_a__offer {
  position: absolute;
  left: 49px;
  top: 4px;
  width: 580px;
  height: auto;
  z-index: 1;
}
@media (max-width: 768px) {
  .top_a__offer {
    position: relative;
    left: auto;
    top: auto;
    width: 100%;
  }
}
.top_a__offer-bg {
  inset: 0;
  width: 100%;
  height: auto;
}
@media (max-width: 768px) {
  .top_a__offer-bg {
    display: none;
  }
}
.top_a__offer-bgsp {
  inset: 0;
  width: 100%;
  height: auto;
  display: none;
}
@media (max-width: 768px) {
  .top_a__offer-bgsp {
    display: block;
  }
}
.top_a__pills {
  display: flex;
  gap: 35px;
  margin-top: 22px;
}
@media (max-width: 768px) {
  .top_a__pills {
    position: static;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 0;
  }
}
.top_a__pill {
  position: relative;
  height: auto;
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 5px 64px 5px 13px;
  background-color: var(--yellow-soft);
}
@media (max-width: 768px) {
  .top_a__pill {
    width: 100%;
    padding: 4px 0 4px 13px;
    max-width: 200px;
  }
}
.top_a__pill-icon {
  position: relative;
  z-index: 1;
  width: 15px;
  height: 15px;
}
.top_a__pill-label {
  position: relative;
  z-index: 1;
  font-weight: 700;
  font-size: 14px;
  line-height: 26px;
  color: var(--teal);
}
.top_a {
  /* 最短1時間バンド（旧: 24時間） */
}
.top_a__band24 {
  position: relative;
  width: 100%;
  height: 53px;
  background-color: var(--yellow);
  border-radius: 10px;
  margin: 40px 0 0;
}
.top_a__band24-text {
  position: relative;
  z-index: 1;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2px;
  color: var(--ink);
  font-weight: 700;
  font-size: 21px;
  white-space: nowrap;
  padding: 4px 10px 0;
}
@media (max-width: 768px) {
  .top_a__band24-text {
    font-size: 15px;
  }
}
.top_a__band24-text .top_a__band24-en {
  font-weight: 700;
  font-size: 30px;
  margin-bottom: 6px;
}
@media (max-width: 768px) {
  .top_a__band24-text .top_a__band24-en {
    font-size: 22px;
  }
}
.top_a__band24-text .top_a__band24-num {
  font-weight: 700;
  font-size: 36px;
  margin-bottom: 7px;
}
@media (max-width: 768px) {
  .top_a__band24-text .top_a__band24-num {
    font-size: 26px;
  }
}
.top_a__band24-text .top_a__band24-ast {
  align-self: flex-start;
  margin-top: 12px;
  font-size: 14px;
  line-height: 1;
}
@media (max-width: 768px) {
  .top_a__band24-text .top_a__band24-ast {
    font-size: 11px;
  }
}
.top_a .ast-text {
  font-size: 12px;
  font-weight: 300;
  text-align: right;
  margin: 16px 0 40px;
}
@media (max-width: 768px) {
  .top_a .ast-text {
    font-size: 10px;
    margin: 8px 0 20px;
  }
}
.top_a {
  /* LINE 設定サポート枠 */
}
.top_a__support {
  width: 100%;
  margin-bottom: 58px;
}
.top_a__support .btn-wrap {
  display: flex;
  justify-content: center;
  margin-top: 20px;
}
.top_a__support-sp {
  display: none;
}
@media (max-width: 768px) {
  .top_a__support {
    margin-bottom: 38px;
  }
  .top_a__support-pc {
    display: none;
  }
  .top_a__support-sp {
    display: block;
  }
}
.top_a {
  /* 3STEP */
}
.top_a__steps {
  display: flex;
  justify-content: center;
  gap: 20px;
  width: 100%;
  height: auto;
  align-items: stretch;
}
@media (max-width: 768px) {
  .top_a__steps {
    flex-direction: column;
    align-items: center;
    gap: 14px;
  }
}
.top_a__step {
  position: relative;
  width: calc((100% - 136px) / 3);
  max-width: 300px;
  padding-top: 18px;
}
@media (max-width: 768px) {
  .top_a__step {
    width: 100%;
    max-width: 400px;
  }
}
.top_a__step-sep {
  display: flex;
  align-items: center;
  align-self: center;
}
@media (max-width: 768px) {
  .top_a__step-sep {
    transform: rotate(90deg);
  }
}
.top_a__step-badge {
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  z-index: 2;
  width: 137px;
  height: 39px;
  background: var(--teal);
  border: 2px solid var(--ink);
  border-radius: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  color: #fff;
  font-weight: 700;
  line-height: 1;
  overflow: hidden;
}
.top_a__step-badge .label {
  font-size: 19px;
  line-height: 1;
}
.top_a__step-badge .num {
  font-size: 27px;
  line-height: 1;
  margin-bottom: 4px;
}
.top_a__step-card {
  background: #fff;
  border: 2px solid var(--ink);
  border-radius: 10px;
  height: 100%;
  padding: 40px 20px 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 24px;
}
@media (max-width: 1070px) {
  .top_a__step-card {
    min-height: 0;
  }
}
.top_a__step-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}
.top_a__step-icon {
  height: 78px;
  width: auto;
}
.top_a__step-title {
  margin: 0;
  font-weight: 700;
  font-size: 21px;
  line-height: 29px;
  color: var(--ink);
}
.top_a__step-text {
  margin: 0;
  width: 100%;
  max-width: 250px;
  font-weight: 500;
  font-size: 16px;
  line-height: 26px;
  color: var(--ink);
}
.top_a__step-text strong {
  font-weight: 700;
  color: var(--teal);
}
@media (max-width: 768px) {
  .top_a__step-text {
    max-width: 300px;
  }
}
.top_a__step-link {
  color: var(--ink);
  text-decoration: none;
}
.top_a__step-link-cyan {
  color: #46C9F4;
  text-decoration: underline;
}
.top_a__step-link-cyan:hover {
  opacity: 0.7;
}
.top_a__step-arrow {
  align-self: center;
  height: auto;
  width: 28px;
}
@media (max-width: 1070px) {
  .top_a__step-arrow {
    height: auto;
    width: 24px;
  }
}

/* =========================================================
   top_b … 配送について（Figma node 5005:6622 に忠実）
   ========================================================= */
.top_b {
  position: relative;
  margin-top: 120px;
  margin-bottom: 60px;
  background: #00A3AD;
}
@media (max-width: 768px) {
  .top_b {
    margin-top: 60px;
  }
  .top_b .wrap-wide {
    max-width: 540px;
  }
}
.top_b {
  /* セクションヘッダー */
}
.top_b__head {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 25px;
  margin-top: 30px;
}
.top_b__head-icon {
  width: 96px;
  height: auto;
}
.top_b__head-title {
  margin: 0;
  font-weight: 900;
  font-size: 24px;
  color: #fff;
}
@media (max-width: 768px) {
  .top_b__head {
    margin-top: 0px;
  }
  .top_b__head-icon {
    width: 76px;
  }
  .top_b__head-title {
    font-size: 21px;
  }
}
.top_b__lead {
  margin: 40px 0;
  font-weight: 700;
  font-size: 21px;
  line-height: 26px;
  color: #fff;
  text-align: center;
}
.top_b__lead .sp {
  display: none;
}
@media (max-width: 768px) {
  .top_b__lead {
    font-size: 16px;
    margin: 30px 0;
  }
  .top_b__lead .sp {
    display: inline;
  }
}
@media (max-width: 768px) {
  .top_b__box-img {
    display: none;
  }
}
.top_b__box-img-sp {
  display: none;
  max-width: 400px;
  margin: 0 auto;
  width: 100%;
}
@media (max-width: 768px) {
  .top_b__box-img-sp {
    display: block;
  }
}
.top_b {
  /* 注意事項（黄色い帯） */
}
.top_b__notice {
  width: 100%;
  background-color: var(--yellow);
  border-radius: 10px;
  padding: 13px 30px;
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: center;
  gap: 2px;
  text-align: center;
}
.top_b__notice .main {
  font-weight: 700;
  font-size: 21px;
  line-height: 26px;
  color: var(--ink);
}
.top_b__notice .sub {
  font-weight: 500;
  font-size: 19px;
  color: var(--ink);
}
@media (max-width: 768px) {
  .top_b__notice {
    padding: 13px 10px;
  }
  .top_b__notice .main {
    font-size: 15px;
  }
  .top_b__notice .sub {
    font-size: 13px;
  }
}
.top_b {
  /* 下部カード型リンク・コンテンツ群 */
}
.top_b__cards {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 20px;
  margin: 58px 0 40px;
}
@media (max-width: 1070px) {
  .top_b__cards {
    flex-wrap: wrap;
  }
}
@media (max-width: 768px) {
  .top_b__cards {
    margin: 38px 0 20px;
  }
}
.top_b__cards__type-img {
  width: 100%;
  max-width: 330px;
}
@media (max-width: 768px) {
  .top_b__cards__type-img {
    max-width: 400px;
  }
}
.top_b {
  /* 注記・フットノート */
}
.top_b__footnote {
  margin: 0;
  font-weight: 400;
  font-size: 12px;
  line-height: 20px;
  color: #fff;
  text-align: left;
  align-self: stretch;
}

/* =========================================================
   top_c … 盗難補償について（Figma node 1877:41054 に忠実）
   ========================================================= */
.top_c {
  background: #fff;
  margin-bottom: 150px;
}
@media (max-width: 768px) {
  .top_c {
    margin-bottom: 80px;
  }
  .top_c .wrap-wide {
    max-width: 540px;
  }
}
.top_c {
  /* セクションヘッダー */
}
.top_c__head {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 25px;
}
.top_c__head-icon {
  width: 84px;
  height: auto;
}
.top_c__head-title {
  margin: 0;
  font-weight: 900;
  font-size: 24px;
  color: var(--ink);
}
@media (max-width: 768px) {
  .top_c__head {
    margin-top: 0px;
  }
  .top_c__head-icon {
    width: 66px;
  }
  .top_c__head-title {
    font-size: 21px;
  }
}
.top_c__notice {
  width: 100%;
  background: var(--yellow);
  border-radius: 10px;
  padding: 13px 20px;
  text-align: center;
  font-weight: 700;
  font-size: 21px;
  line-height: 26px;
  color: var(--ink);
  margin: 40px 0;
}
@media (max-width: 768px) {
  .top_c__notice {
    font-size: 16px;
    margin: 30px 0;
  }
}
.top_c__lead {
  font-weight: 700;
  font-size: 21px;
  color: var(--ink);
  text-align: center;
}
@media (max-width: 768px) {
  .top_c__lead {
    font-size: 17px;
  }
}
.top_c {
  /* 補償プランカード */
}
.top_c__plan {
  position: relative;
  width: 1030px;
  max-width: 100%;
  margin-top: 68px;
  background: #fff;
  border: 2px solid #FFD700;
  border-radius: 10px 10px 0 0;
  padding: 60px 50px 40px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 35px;
}
@media (max-width: 768px) {
  .top_c__plan {
    padding: 46px 20px 32px;
    margin-top: 58px;
    gap: 20px;
  }
}
.top_c__plan-title {
  position: absolute;
  top: -28px;
  left: 50%;
  transform: translateX(-50%);
  min-width: 249px;
  height: 56px;
  padding: 0 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  border-radius: 100px;
  background: #FFD700;
  color: var(--ink);
  font-weight: 900;
  font-size: 21px;
  white-space: nowrap;
}
.top_c__plan-title .en {
  font-weight: 700;
  font-size: 24px;
}
.top_c__plan-title .note {
  font-size: 16px;
}
@media (max-width: 768px) {
  .top_c__plan-title {
    flex-direction: column;
    font-size: 16px;
    padding: 0 16px;
  }
  .top_c__plan-title .en {
    font-size: 18px;
  }
  .top_c__plan-title .note {
    font-size: 13px;
  }
}
.top_c__plan-desc {
  margin: 0;
  text-align: center;
  font-weight: 500;
  font-size: 16px;
  line-height: 26px;
  color: var(--ink);
}
.top_c__plan-desc strong {
  display: inline-block;
  font-weight: 700;
  color: #00A3AD;
}
.top_c__plan-hl {
  margin: 0;
  font-weight: 700;
  font-size: 16px;
  color: #00A3AD;
  text-align: center;
}
@media (max-width: 768px) {
  .top_c__plan .top_c__rate-img {
    display: none;
  }
}
.top_c__plan .top_c__rate-img-sp {
  display: none;
  max-width: 400px;
  width: 100%;
  height: auto;
}
@media (max-width: 768px) {
  .top_c__plan .top_c__rate-img-sp {
    display: block;
  }
}
.top_c__plan .c-accordion {
  margin: 0 auto;
}
.top_c__plan--sim {
  border: 2px solid var(--ink);
  border-radius: 10px 10px 10px 10px;
}
.top_c__plan--sim .top_c__plan-title {
  color: #fff;
  background-color: var(--ink);
}
.top_c {
  /* 加入条件・リンク */
}
.top_c__terms {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 15px;
}
@media (max-width: 768px) {
  .top_c__terms {
    gap: 20px;
  }
}
.top_c__terms-bar {
  width: 100%;
  background: #FFEF99;
  border: 1px solid var(--ink);
  border-radius: 1000px;
  padding: 6px;
  text-align: center;
  font-weight: 700;
  font-size: 16px;
  color: var(--ink);
}
.top_c__terms-bar .en {
  font-weight: 700;
  font-size: 18px;
}
.top_c__terms-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #46C9F4;
  font-weight: 500;
  font-size: 16px;
  text-decoration: underline;
}
.top_c__terms-link:hover {
  opacity: 0.7;
}
.top_c__terms-link img {
  height: 1em;
  margin: 2px 0 0 1px;
}
@media (max-width: 768px) {
  .top_c__terms-link {
    font-size: 12px;
  }
  .top_c__terms-link img {
    height: 1em;
    margin: 1px 0 0 0;
  }
}
.top_c__terms-text {
  margin-top: 10px;
  text-align: center;
  font-weight: 500;
  font-size: 16px;
  line-height: 26px;
  color: var(--ink);
}
@media (max-width: 768px) {
  .top_c__terms-text {
    margin-top: 0px;
  }
}
.top_c {
  /* 補償の流れ */
}
.top_c__flow {
  width: 1030px;
  max-width: 100%;
  background: #FFD700;
  border-radius: 0 0 10px 10px;
  padding: 47px 50px 50px;
}
@media (max-width: 768px) {
  .top_c__flow {
    padding: 32px 20px;
  }
}
.top_c__flow-title {
  width: 100%;
  height: 36px;
  background: var(--ink);
  color: #fff;
  border-radius: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 16px;
}
@media (max-width: 768px) {
  .top_c__flow-title {
    max-width: 400px;
    margin: 0 auto;
  }
}
.top_c__flow-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 30px;
  margin-top: 26px;
}
@media (max-width: 768px) {
  .top_c__flow-grid {
    grid-template-columns: 1fr;
    gap: 20px;
    max-width: 400px;
    margin: 20px auto 0;
  }
}
.top_c {
  /* 各ステップカード */
}
.top_c__step {
  position: relative;
  background: #fff;
  border: 2px solid var(--ink);
  border-radius: 10px;
  padding: 24px 30px 20px;
  min-height: 312px;
  display: flex;
  flex-direction: column;
}
.top_c__step .top_c__terms-link {
  margin-top: 16px;
  font-size: 16px;
}
@media (max-width: 768px) {
  .top_c__step .top_c__terms-link {
    font-size: 16px;
  }
}
@media (max-width: 768px) {
  .top_c__step {
    min-height: 0;
  }
}
.top_c__step-badge {
  position: relative;
  flex-shrink: 0;
  width: 76px;
  height: 77px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-weight: 700;
}
.top_c__step-badge img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.top_c__step-head {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 12px;
}
@media (max-width: 480px) {
  .top_c__step-head {
    gap: 12px;
  }
}
.top_c__step-title {
  flex: 1;
  margin: 0;
  font-weight: 700;
  font-size: 18px;
  line-height: 26px;
  color: #00A3AD;
}
.top_c__step-text {
  margin: 0;
  font-weight: 500;
  font-size: 16px;
  line-height: 1.6;
  color: var(--ink);
}
.top_c__step-note {
  margin: 16px 0 0;
  font-weight: 400;
  font-size: 12px;
  line-height: 1.6;
  color: var(--ink);
}
.top_c__futankin-img {
  width: 100%;
  max-width: 304px;
  margin: 16px auto 0;
}

.campaign_delivery {
  margin: 60px 0 100px;
}
.campaign_delivery .title {
  background-color: var(--teal);
  border-radius: 10px;
  text-align: center;
  padding: 14px;
}
.campaign_delivery .title p {
  font-size: 21px;
  font-weight: 700;
  color: #fff;
}
.campaign_delivery .campaignplan_pc {
  margin: 30px 0;
  width: 100%;
  height: auto;
}
.campaign_delivery .campaignplan_sp {
  display: none;
  width: 100%;
  height: auto;
}
.campaign_delivery .campaignfriend {
  display: block;
}
.campaign_delivery .campaignfriend .campaignfriend_pc {
  width: 100%;
  height: auto;
}
.campaign_delivery .campaignfriend .campaignfriend_sp {
  display: none;
  width: 100%;
  height: auto;
}
@media (max-width: 768px) {
  .campaign_delivery {
    margin: 40px 0 60px;
  }
  .campaign_delivery .title {
    padding: 14px;
    max-width: 500px;
    margin: 0 auto;
  }
  .campaign_delivery .title p {
    font-size: 18px;
  }
  .campaign_delivery .campaignplan_pc {
    display: none;
  }
  .campaign_delivery .campaignplan_sp {
    display: block;
    max-width: 500px;
    padding: 30px 0px;
    margin: 0 auto;
  }
  .campaign_delivery .campaignfriend {
    display: block;
  }
  .campaign_delivery .campaignfriend .campaignfriend_pc {
    display: none;
  }
  .campaign_delivery .campaignfriend .campaignfriend_sp {
    display: block;
    max-width: 500px;
    margin: 0 auto;
  }
}

.a-top_a {
  padding: 30px 0 120px;
  background-color: #fff;
  background-image: radial-gradient(circle at 3px 2.8px, color-mix(in srgb, var(--yellow-soft) 35%, transparent) 3px, transparent 3.6px), radial-gradient(circle at 16px 15.9px, color-mix(in srgb, var(--yellow-soft) 35%, transparent) 3px, transparent 3.6px);
  background-size: 27px 27px;
}
@media (max-width: 768px) {
  .a-top_a .wrap-wide {
    max-width: 500px;
  }
}
@media (max-width: 768px) {
  .a-top_a .sp {
    display: none;
  }
}
.a-top_a .usp {
  display: none;
}
@media (max-width: 600px) {
  .a-top_a .usp {
    display: inline;
  }
}
.a-top_a__lead {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.6;
  margin: 60px 0;
  text-align: center;
  text-decoration: underline;
  color: var(--ink);
}
@media (max-width: 768px) {
  .a-top_a__lead {
    margin: 30px 0;
  }
}
.a-top_a__nav {
  display: flex;
  width: 100%;
  margin: 0 auto;
  gap: 60px;
}
@media (max-width: 768px) {
  .a-top_a__nav {
    flex-direction: column;
    max-width: 320px;
    gap: 20px;
  }
}
.a-top_a__navitem {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.3;
  position: relative;
  display: flex;
  align-items: center;
  flex: 1;
  justify-content: center;
  padding: 14px 14px 14px 30px;
  text-align: center;
  color: var(--ink);
  border: 2px solid var(--ink);
  border-radius: 5px;
  background: #fff;
}
.a-top_a__navitem:first-child {
  margin-left: 30px;
}
@media (max-width: 768px) {
  .a-top_a__navitem {
    margin-left: 30px;
  }
}
.a-top_a__navitem .c-check {
  position: absolute;
  top: 50%;
  left: -31px;
  width: 63px;
  height: auto;
  transform: translateY(-50%);
}
.a-top_a__cards {
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 700px;
  margin: 60px auto;
  gap: 50px;
}
@media (max-width: 768px) {
  .a-top_a__cards {
    margin: 35px auto;
    gap: 30px;
  }
}
.a-top_a__card {
  display: flex;
  align-items: center;
  flex-direction: column;
  width: 100%;
  padding: 40px;
  border: 2px solid var(--ink);
  border-radius: 10px;
  background: #fff;
  scroll-margin-top: 90px;
  gap: 30px;
}
@media (max-width: 768px) {
  .a-top_a__card {
    padding: 24px 20px 30px;
    gap: 20px;
  }
}
.a-top_a__card-head {
  display: flex;
  align-items: center;
  gap: 14px;
}
@media (max-width: 768px) {
  .a-top_a__card-head {
    flex-direction: column;
  }
}
.a-top_a__card-title {
  font-size: 21px;
  font-weight: 700;
  line-height: 29px;
  margin: 0;
  color: var(--ink);
}
.a-top_a__card-text {
  font-size: 16px;
  font-weight: 500;
  line-height: 26px;
  margin: 0;
  text-align: center;
  color: var(--ink);
}
@media (max-width: 768px) {
  .a-top_a__card-text {
    max-width: 320px;
  }
}
.a-top_a__card-desc {
  font-size: 16px;
  font-weight: 500;
  line-height: 26px;
  width: 100%;
  max-width: 598px;
  padding: 12px 20px;
  text-align: center;
  color: var(--ink);
  border-radius: 5px;
  background: #efefef;
}
@media (max-width: 768px) {
  .a-top_a__card-desc {
    font-size: 14px;
    max-width: 320px;
    padding: 12px;
  }
}
.a-top_a__devices {
  display: flex;
  justify-content: center;
  width: 100%;
  gap: 18px;
}
@media (max-width: 768px) {
  .a-top_a__devices {
    align-items: center;
    flex-direction: column;
    gap: 28px;
  }
}
.a-top_a__device {
  display: flex;
  align-items: center;
  flex: 0 1 290px;
  flex-direction: column;
  max-width: 290px;
  gap: 14px;
}
@media (max-width: 768px) {
  .a-top_a__device {
    max-width: 320px;
  }
}
.a-top_a__device-os {
  font-size: 21px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 34px;
  color: var(--ink);
  border-radius: 5px;
  background: #ffd700;
}
.a-top_a__device-model {
  font-size: 14px;
  font-weight: 500;
  line-height: 26px;
  margin: 0;
  text-align: center;
  color: var(--ink);
}
.a-top_a__device-model b, .a-top_a__device-model strong, .a-top_a__device-model .is-lg {
  font-size: 16px;
  font-weight: 500;
}
.a-top_a__device-note {
  font-size: 14px;
  font-weight: 500;
  line-height: 26px;
  margin: 0;
  text-align: center;
  color: var(--ink);
}
.a-top_a__device-note u {
  text-decoration: underline;
}
.a-top_a__device-foot {
  font-size: 12px;
  font-weight: 500;
  line-height: 20px;
  width: 100%;
  margin: 0;
  color: #00a3ad;
}
@media (max-width: 768px) {
  .a-top_a__device-foot {
    text-align: center;
  }
}
.a-top_a__device-mini {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.6;
  margin: 0;
  text-align: center;
  color: var(--ink);
}
.a-top_a__freq {
  width: 100%;
  height: auto;
  padding: 19px 10px;
  text-align: center;
  border: 2px solid var(--ink);
}
@media (max-width: 768px) {
  .a-top_a__freq {
    width: 90%;
  }
}
.a-top_a__freq span {
  margin-left: 25px;
}
.a-top_a__freq p:last-child {
  font-weight: 700;
  font-style: italic;
  padding: 1px 0 0 34px;
  color: var(--teal);
}
.a-top_a__freq p:last-child span {
  margin-left: 18px;
}
.a-top_a__recommend {
  position: relative;
  width: 100%;
  margin-top: 20px;
  padding: 12px 16px;
  border-radius: 5px;
  background: #98dade;
}
@media (max-width: 768px) {
  .a-top_a__recommend {
    margin-top: 6px;
  }
}
.a-top_a__recommend-title {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  margin: 0 0 8px;
  text-align: center;
  color: var(--ink);
}
@media (max-width: 768px) {
  .a-top_a__recommend-title {
    font-size: 14px;
  }
}
.a-top_a__recommend-title span {
  background: linear-gradient(transparent 60%, #ffd700 60%);
}
.a-top_a__recommend-text {
  font-size: 12px;
  font-weight: 500;
  line-height: 1.6;
  margin: 0;
  padding-right: 80px;
  color: var(--ink);
}
.a-top_a__recommend-text strong {
  font-weight: 800;
  color: #e7322a;
}
@media (max-width: 768px) {
  .a-top_a__recommend-text {
    padding-right: 106px;
  }
}
.a-top_a__recommend-mascot {
  position: absolute;
  right: -18px;
  bottom: -26px;
  width: 102px;
  height: auto;
}
@media (max-width: 768px) {
  .a-top_a__recommend-mascot {
    right: 6px;
    bottom: 5px;
  }
}
@media (max-width: 365px) {
  .a-top_a__recommend-mascot {
    right: 8px;
    bottom: 14px;
  }
}
.a-top_a__pays {
  display: flex;
  justify-content: center;
  width: 100%;
  gap: 20px;
}
@media (max-width: 768px) {
  .a-top_a__pays {
    align-items: center;
    flex-direction: column;
    gap: 28px;
  }
}
.a-top_a__pay {
  display: flex;
  align-items: center;
  flex: 0 1 290px;
  flex-direction: column;
  max-width: 290px;
  gap: 18px;
}
.a-top_a__pay-title {
  font-size: 16px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 34px;
  color: var(--ink);
  border-radius: 5px;
  background: #ffd700;
}
.a-top_a__pay-text {
  font-size: 16px;
  font-weight: 500;
  line-height: 26px;
  margin: 0;
  text-align: center;
  color: var(--ink);
}
.a-top_a__pay-note {
  font-size: 14px;
  font-weight: 500;
  line-height: 26px;
  margin: 0;
  text-align: center;
  color: var(--ink);
}
.a-top_a__pay-sub {
  font-size: 16px;
  font-weight: 500;
  line-height: 26px;
  padding: 0 20px;
  text-align: center;
  color: var(--ink);
}
.a-top_a__pay-sub--em {
  font-weight: 700;
  color: #00a3ad;
}
@media (max-width: 480px) {
  .a-top_a__pay-sub {
    font-size: 14px;
  }
}

.c-check {
  position: relative;
  display: flex;
  align-items: center;
  flex-direction: column;
  flex-shrink: 0;
  justify-content: center;
  width: 63px;
  height: 60px;
  color: #fff;
  background: url("../assets/application/check-badge.svg") center/contain no-repeat;
}
.c-check__label {
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
}
.c-check__num {
  font-size: 30px;
  font-weight: 700;
  line-height: 1;
}

.c-brands {
  width: 100%;
  padding: 0 30px;
}
.c-brands img {
  display: block;
  height: auto;
}

.a-top_b {
  position: relative;
  margin: 0 0 120px;
  padding-bottom: 60px;
  background: #00a3ad;
}
@media (max-width: 768px) {
  .a-top_b {
    margin: 0 0 80px;
  }
}
@media (max-width: 768px) {
  .a-top_b .sp {
    display: none;
  }
}
.a-top_b__inner {
  position: relative;
  display: flow-root;
  max-width: 1070px;
  margin: 0 auto;
  padding: 0 20px;
}
@media (max-width: 768px) {
  .a-top_b__inner {
    padding: 0;
  }
}
.a-top_b__tabs {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  max-width: 1030px;
  height: 70px;
  margin: -70px auto 0;
  gap: 18px;
}
@media (max-width: 768px) {
  .a-top_b__tabs {
    height: 50px;
    margin-top: -50px;
    gap: 8px;
  }
}
.a-top_b__tab {
  font-size: 22px;
  font-weight: 700;
  flex: 0 1 356px;
  height: 50px;
  cursor: pointer;
  transition: background 0.2s, color 0.2s, height 0.2s;
  text-align: center;
  color: #fff;
  border: 0;
  border-radius: 10px 10px 0 0;
  background: #98dade;
}
.a-top_b__tab .en {
  font-size: 24px;
  font-weight: 700;
}
.a-top_b__tab.is-active {
  height: 70px;
  color: #fff;
  background: #00a3ad;
}
@media (max-width: 768px) {
  .a-top_b__tab {
    font-size: 15px;
    height: 38px;
  }
  .a-top_b__tab.is-active {
    height: 50px;
  }
  .a-top_b__tab .en {
    font-size: 17px;
  }
}
.a-top_b__intro {
  font-size: 16px;
  font-weight: 700;
  line-height: 26px;
  margin: 60px 0 0;
  text-align: center;
  color: #fff;
}
.a-top_b__intro a {
  display: inline-flex;
  align-items: center;
  text-decoration: underline;
  gap: 5px;
}
.a-top_b__intro a img {
  height: 1em;
  margin: 1px 0 0;
}
@media (max-width: 768px) {
  .a-top_b__intro {
    margin: 25px 0 0;
  }
}
.a-top_b__card {
  display: flex;
  justify-content: center;
  max-width: 1030px;
  margin: 40px auto 0;
  padding: 60px;
  border-radius: 10px;
  background: #fff;
  gap: 86px;
}
@media (max-width: 1070px) {
  .a-top_b__card {
    padding: 40px;
    gap: 40px;
  }
}
@media (max-width: 768px) {
  .a-top_b__card {
    align-items: center;
    flex-direction: column;
    margin: 25px auto 0;
    padding: 30px 30px;
    gap: 35px;
  }
}
.a-top_b__left {
  display: flex;
  flex: 0 0 285px;
  flex-direction: column;
  width: 285px;
  gap: 20px;
}
.a-top_b__left .c-accordion {
  margin-top: 0;
}
.a-top_b__left .c-accordion__head {
  padding: 10px;
}
@media (max-width: 768px) {
  .a-top_b__left .c-accordion {
    margin-top: 15px;
  }
}
@media (max-width: 768px) {
  .a-top_b__left {
    flex: 1 1 auto;
    width: 100%;
  }
}
.a-top_b__product {
  width: 100%;
  height: auto;
  border-radius: 4px;
}
@media (max-width: 768px) {
  .a-top_b__product {
    width: 75%;
    margin: 0 auto;
  }
}
.a-top_b__simsize {
  width: 282px;
  max-width: 100%;
  height: auto;
}
@media (max-width: 768px) {
  .a-top_b__simsize {
    width: 100%;
  }
}
.a-top_b__acc {
  width: 282px;
  max-width: 100%;
}
.a-top_b__acc-body {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.7;
  padding: 0 10px 14px;
  color: var(--ink);
}
.a-top_b__acc-body p {
  margin: 0;
}
.a-top_b__acc-body a {
  text-decoration: underline;
  color: #46c9f4;
}
.a-top_b__acc-body .is-label {
  font-weight: 700;
  margin-top: 8px;
}
.a-top_b__acc-body .is-indent {
  padding-left: 1em;
}
.a-top_b__acc-body .is-em {
  font-weight: 700;
  color: #00a3ad;
}
.a-top_b__band {
  display: grid;
  align-items: center;
  width: 218px;
  max-width: 100%;
  margin: 14px auto 4px;
  padding: 19px 21px;
  border: 2px solid var(--ink);
  grid-template-columns: 108px auto;
  row-gap: 11px;
}
.a-top_b__band-label {
  font-size: 16px;
  font-weight: 500;
  font-style: italic;
  line-height: 1.1;
  white-space: nowrap;
  color: var(--ink);
}
.a-top_b__band-label--5g {
  color: #00a3ad;
}
.a-top_b__band-val {
  font-size: 21px;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
  color: var(--ink);
}
.a-top_b__band-val--5g {
  color: #00a3ad;
}
.a-top_b__right {
  display: flex;
  align-items: center;
  flex: 1 1 0;
  flex-direction: column;
  width: 100%;
  max-width: 421px;
  gap: 20px;
}
@media (max-width: 768px) {
  .a-top_b__right {
    flex: 1 1 auto;
    gap: 35px;
  }
}
.a-top_b__bar {
  font-size: 14px;
  font-weight: 700;
  line-height: 18px;
  width: 100%;
  margin: 0;
  padding: 9px 12px;
  text-align: center;
  color: var(--ink);
  border-radius: 5px;
  background: #ffd700;
}
@media (max-width: 768px) {
  .a-top_b__bar {
    font-size: 12px;
  }
}
.a-top_b__selects {
  display: flex;
  flex-direction: column;
  width: 100%;
  gap: 16px;
}
.a-top_b__select {
  position: relative;
  display: block;
}
.a-top_b__select select {
  font-size: 14px;
  font-weight: 500;
  width: 100%;
  height: 45px;
  padding: 0 40px 0 19px;
  cursor: pointer;
  color: var(--ink);
  border: 1px solid var(--ink);
  border-radius: 5px;
  background: #fff;
  -webkit-appearance: none;
  appearance: none;
}
.a-top_b__select select:invalid {
  color: #a7a7a7;
}
.a-top_b__select select:focus {
  border-color: #00a3ad;
  outline: none;
}
.a-top_b__select select:focus-visible {
  border-color: #00a3ad;
  outline: none;
  box-shadow: 0 0 0 1px #00a3ad;
}
.a-top_b__select::after {
  position: absolute;
  top: 50%;
  right: 18px;
  width: 13px;
  height: 8px;
  content: "";
  transform: translateY(-50%);
  background: var(--ink);
  clip-path: polygon(0 0, 100% 0, 50% 100%);
}
.a-top_b__btn {
  font-size: 18px;
  font-weight: 700;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 285px;
  max-width: 100%;
  min-height: 59px;
  cursor: pointer;
  transition: transform 0.12s, box-shadow 0.12s, opacity 0.2s;
  color: #fff;
  border: 0;
  border-radius: 999px;
}
.a-top_b__btn .en {
  font-size: 20px;
  font-weight: 700;
}
.a-top_b__btn:not(:disabled):hover {
  opacity: 0.92;
}
.a-top_b__btn:not(:disabled):active {
  transform: translateY(4px);
  box-shadow: none;
}
.a-top_b__btn:disabled {
  opacity: 1;
}
.a-top_b__btn-ico {
  position: absolute;
  top: 50%;
  left: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  transform: translateY(-50%);
  border-radius: 50%;
  background: #fff;
}
.a-top_b__btn-ico ion-icon {
  font-size: 18px;
}
.a-top_b__btn-next {
  font-size: 16px;
  position: absolute;
  top: 50%;
  right: 16px;
  transform: translateY(-50%);
  color: #fff;
}
.a-top_b__btn--cart {
  cursor: default;
  background: #a7a7a7;
  box-shadow: 0 4px 0 #7e7e7e;
}
.a-top_b__btn--cart .top_b__btn-ico ion-icon {
  color: #a7a7a7;
}
.a-top_b__btn--cart.is-ready {
  cursor: pointer;
  background: #ff0064;
  box-shadow: 0 4px 0 #c2004c;
}
.a-top_b__btn--cart.is-ready .top_b__btn-ico ion-icon {
  color: #ff0064;
}
.a-top_b__btn--multi {
  background: #ff0064;
  box-shadow: 0 4px 0 #c2004c;
}
.a-top_b__btn--multi .top_b__btn-ico ion-icon {
  color: #ff0064;
}
.a-top_b__notes {
  width: 100%;
  margin-top: 4px;
}
.a-top_b__notes p {
  font-size: 12px;
  font-weight: 400;
  line-height: 20px;
  margin: 0;
  color: var(--ink);
}
.a-top_b__notes p.is-link {
  font-weight: 500;
  color: #46c9f4;
}
.a-top_b__notes a {
  text-decoration: underline;
  color: #46c9f4;
}
.a-top_b__notes .is-ext {
  font-size: 10px;
  display: inline-flex;
  vertical-align: middle;
  color: #46c9f4;
}
.a-top_b__setphone {
  width: 280px;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}
.a-top_b__setlead {
  font-size: 14px;
  font-weight: 700;
  line-height: 1.7;
  width: 100%;
  margin: 0;
  text-align: center;
  color: #00a3ad;
}
.a-top_b__panel[hidden] {
  display: none;
}
@media (max-width: 768px) {
  .a-top_b__panel {
    max-width: 440px;
    margin: 0 auto;
    padding: 0 20px;
  }
}
.a-top_b__placeholder {
  font-size: 18px;
  font-weight: 700;
  max-width: 1030px;
  margin: 40px auto 0;
  padding: 60px;
  text-align: center;
  color: #00a3ad;
  border-radius: 10px;
  background: #fff;
}

.js-application-purchase:disabled {
  background-color: #808080;
}

.application-modal {
  overflow-y: auto;
  width: min(760px, 100% - 40px);
  max-height: calc(100dvh - 40px);
  margin: auto;
  padding: 32px;
  color: var(--ink);
  border: 0;
  border-radius: 10px;
  background: #eff0f1;
}
.application-modal::backdrop {
  background: rgba(0, 0, 0, 0.5);
}
.application-modal__close {
  font-size: 0;
  position: absolute;
  top: 8px;
  right: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  cursor: pointer;
  border: 0;
  border-radius: 50%;
  background: #fff;
}
.application-modal__close::before, .application-modal__close::after {
  position: absolute;
  width: 18px;
  height: 3px;
  content: "";
  background: var(--ink);
}
.application-modal__close::before {
  transform: rotate(45deg);
}
.application-modal__close::after {
  transform: rotate(-45deg);
}
.application-modal__title {
  display: flex;
  flex-direction: column;
  padding: 14px 48px;
  text-align: center;
  border-radius: 10px;
  background: #00a3ad;
  gap: 4px;
}
.application-modal__title strong {
  font-size: 22px;
  color: #ffd700;
}
.application-modal__title span {
  font-size: 16px;
  font-weight: 700;
  color: #fff;
}
.application-modal__body {
  margin-top: 24px;
  padding: 30px 35px;
  border-radius: 10px;
  background: #fff;
}
.application-modal__body h2 {
  font-size: 20px;
  font-weight: 700;
  display: inline;
  background: linear-gradient(to bottom, transparent 60%, rgba(217, 217, 217, 0.3) 60%);
}
.application-modal__prices {
  margin-top: 18px;
}
.application-modal__prices > div {
  display: grid;
  align-items: center;
  padding: 8px 35px;
  grid-template-columns: 1fr 1fr;
}
.application-modal__prices > div.is-total {
  margin-top: 8px;
  padding-top: 16px;
  border-top: 2px solid var(--ink);
}
.application-modal__prices dt {
  font-size: 18px;
  font-weight: 700;
}
.application-modal__prices dd {
  display: flex;
  align-items: baseline;
  justify-content: flex-end;
  margin: 0;
  gap: 6px;
}
.application-modal__prices dd strong {
  font-size: 38px;
  font-weight: 700;
}
.application-modal__prices dd span {
  font-size: 16px;
  font-weight: 700;
}
.application-modal__actions {
  display: grid;
  margin-top: 24px;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}
.application-modal__actions a {
  font-size: 16px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 54px;
  padding: 10px;
  text-align: center;
  border: 1px solid var(--ink);
  border-radius: 10px;
  transition: background-color 200ms 0s ease;
}
.application-modal__actions a:first-child {
  color: #fff;
  background: #00a3ad;
}
.application-modal__actions a:first-child:hover {
  background-color: rgba(0, 163, 173, 0.7);
}
.application-modal__actions a:last-child:hover {
  background-color: #ffd700;
}
@media (max-width: 600px) {
  .application-modal {
    width: calc(100% - 24px);
    max-height: calc(100dvh - 24px);
    padding: 44px 16px 24px;
  }
  .application-modal__title {
    padding: 14px 10px;
  }
  .application-modal__title strong, .application-modal__title span {
    font-size: 14px;
  }
  .application-modal__body {
    padding: 20px 15px;
  }
  .application-modal__body h2 {
    font-size: 16px;
  }
  .application-modal__prices > div {
    padding: 7px 4px;
  }
  .application-modal__prices dt {
    font-size: 14px;
  }
  .application-modal__prices dd strong {
    font-size: 30px;
  }
  .application-modal__prices dd span {
    font-size: 14px;
  }
  .application-modal__actions {
    grid-template-columns: 1fr;
  }
  .application-modal__actions a {
    font-size: 14px;
  }
}

.sec_qa_nav > .wrap,
.sec_qa_ban > .wrap,
.sec_qa_list > .wrap {
  position: relative;
  width: 100%;
  max-width: 1070px;
  margin: 0 auto;
  padding-inline: 20px;
}

.sec_qa_nav {
  padding: 100px 0 60px;
}
.sec_qa_nav .tit_l {
  margin-bottom: 70px;
  text-align: center;
}
.sec_qa_nav .tit_l img {
  width: 40px;
  height: auto;
  margin: 0 auto 8px;
}
.sec_qa_nav .tit_l .f_sof {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  gap: 40px;
}
.sec_qa_nav .tit_l .f_sof i {
  display: block;
  flex: 1;
  max-width: 340px;
  height: 3px;
  background: var(--ink);
}
.sec_qa_nav .tit_l .f_sof strong {
  font-size: 38px;
  font-weight: 600;
  line-height: 1.2;
  white-space: nowrap;
}
.sec_qa_nav .tit_l h2 {
  font-size: 22px;
  font-weight: 700;
  line-height: 1.4;
  margin-top: 6px;
}
.sec_qa_nav .qa_search_wrap {
  margin-bottom: 60px;
  text-align: center;
}
.sec_qa_nav .qa_search_wrap > p {
  max-width: 500px;
  margin: 10px auto 0;
  font-size: 15px;
  line-height: 1.6;
}
.sec_qa_nav .qa_search_box {
  position: relative;
  max-width: 500px;
  margin: 0 auto 30px;
}
.sec_qa_nav .qa_search_box input[name=qa_search] {
  width: 100%;
  height: 46px;
  padding: 10px 48px 10px 14px;
  font: inherit;
  font-size: 16px;
  color: var(--ink);
  border: 1px solid #ccc;
  border-radius: 4px;
  background: #fff;
  appearance: none;
}
.sec_qa_nav .qa_search_box input[name=qa_search]:focus {
  border-color: var(--ink);
  outline: 2px solid var(--yellow);
  outline-offset: 2px;
}
.sec_qa_nav .qa_search_box input[name=qa_search]::placeholder {
  color: #999;
}
.sec_qa_nav .qa_search_box .search_btn {
  position: absolute;
  top: 0;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  color: #666;
  transition: opacity 0.2s;
}
.sec_qa_nav .qa_search_box .search_btn:hover {
  opacity: 0.7;
}
.sec_qa_nav .qa_search_box .search_btn .iconify {
  width: 21px;
  height: 21px;
}
.sec_qa_nav .qa_nav {
  text-align: center;
}
.sec_qa_nav .qa_nav h3 {
  font-size: 17px;
  font-weight: 700;
  text-decoration: underline;
}
.sec_qa_nav .qa_nav ul {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 22px;
  gap: 24px 34px;
}
.sec_qa_nav .qa_nav li {
  min-width: 0;
}
.sec_qa_nav .qa_nav a {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 60px;
  padding: 8px 12px;
  color: var(--teal);
  border: 3px solid var(--teal);
  border-radius: 10px;
  transition: color 0.2s, background-color 0.2s;
}
.sec_qa_nav .qa_nav a:hover, .sec_qa_nav .qa_nav a:focus-visible {
  color: #fff;
  background: var(--teal);
}
.sec_qa_nav .qa_nav p {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  gap: 8px;
}
.sec_qa_nav .qa_nav strong {
  font-size: 17px;
  font-weight: 700;
  line-height: 1.4;
}
.sec_qa_nav .qa_nav .iconify {
  flex: 0 0 auto;
  width: 28px;
  height: 28px;
}

.sec_qa_ban {
  margin-bottom: 110px;
  text-align: center;
}
.sec_qa_ban a {
  display: block;
  transition: opacity 0.2s;
}
.sec_qa_ban a:hover {
  opacity: 0.85;
}
.sec_qa_ban img {
  width: 100%;
  height: auto;
  margin: 0 auto;
}
.sec_qa_ban .sp_ionly {
  display: none;
}

.sec_qa_list .qa_list {
  margin-bottom: 100px;
}
.sec_qa_list .qa_list_head {
  position: relative;
}
.sec_qa_list .qa_list_head .target_line {
  position: absolute;
  top: -110px;
  left: 0;
}
.sec_qa_list .qa_list_head h2 {
  display: flex;
  align-items: center;
  width: min(495px, 70%);
  min-height: 54px;
  margin: 0;
  padding: 8px 24px;
  color: #fff;
  border: 2px solid var(--teal);
  border-radius: 10px 10px 0 0;
  background: var(--teal);
  gap: 18px;
}
.sec_qa_list .qa_list_head strong {
  font-size: 21px;
  font-weight: 700;
  line-height: 1.4;
}
.sec_qa_list .qa_list_head .iconify {
  flex: 0 0 auto;
  width: 30px;
  height: 30px;
}
.sec_qa_list .qa_list_body {
  padding: 36px 48px 44px;
  border: 2px solid var(--teal);
  border-radius: 0 10px 10px 10px;
}
.sec_qa_list .qa_lists dl {
  margin: 0;
  padding-left: 24px;
  border-bottom: 1px solid #b3b3b3;
}
.sec_qa_list .qa_lists dl:last-child {
  border-bottom: 0;
}
.sec_qa_list .qa_lists dt {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 84px;
  padding: 24px 64px 24px 0;
  cursor: pointer;
}
.sec_qa_list .qa_lists dt:focus-visible {
  outline: 2px solid var(--yellow);
  outline-offset: 2px;
}
.sec_qa_list .qa_lists dt strong {
  font-size: 18px;
  font-weight: 600;
  line-height: 1.7;
}
.sec_qa_list .qa_lists dt .iconify {
  position: absolute;
  top: 50%;
  right: 24px;
  width: 32px;
  height: 32px;
  color: var(--teal);
  transform: translateY(-50%);
}
.sec_qa_list .qa_lists dt .iconify.op {
  opacity: 0;
}
.sec_qa_list .qa_lists dt .iconify.cl {
  opacity: 1;
}
.sec_qa_list .qa_lists dt.open .iconify.op {
  opacity: 1;
}
.sec_qa_list .qa_lists dt.open .iconify.cl {
  opacity: 0;
}
.sec_qa_list .qa_lists dd {
  display: none;
  margin: 0;
}
.sec_qa_list .qa_lists dd[hidden] {
  display: none;
}
.sec_qa_list .qa_lists .qa_slide_head.open + .qa_slide_body {
  display: block;
}
.sec_qa_list .qa_lists .qa_slide_content {
  font-size: 16px;
  font-weight: 500;
  line-height: 2;
  margin-bottom: 36px;
  padding: 20px;
  background: #e6f6f7;
}
.sec_qa_list .qa_lists .qa_slide_content p {
  font: inherit;
  line-height: inherit;
  margin: 0;
  padding: 0;
  background: transparent;
}
.sec_qa_list .qa_lists .qa_slide_content p:empty {
  display: none;
}
.sec_qa_list .qa_lists .qa_slide_content a {
  color: var(--teal);
  text-decoration: underline;
}
.sec_qa_list .qa_lists .qa_slide_content img {
  height: auto;
}
.sec_qa_list .qa_lists .qa_slide_content iframe {
  width: 100%;
  height: auto;
}
.sec_qa_list .qa_lists .qa_slide_content .wp-embed-aspect-16-9 iframe {
  aspect-ratio: 16/9;
}
.sec_qa_list .qa_lists .qa_slide_content .wp-embed-aspect-4-3 iframe {
  aspect-ratio: 4/3;
}
.sec_qa_list mark {
  padding: 0 2px;
  font-weight: 700;
  color: var(--ink);
  border-radius: 2px;
  background: #ffeb3b;
}
.sec_qa_list .qa_gotop {
  margin-top: 20px;
  text-align: right;
}
.sec_qa_list .qa_gotop a {
  display: inline-block;
  text-decoration: underline;
}

@media (max-width: 809px) {
  .sec_qa_nav {
    padding: 70px 0 36px;
  }
  .sec_qa_nav .tit_l {
    margin-bottom: 45px;
  }
  .sec_qa_nav .tit_l .f_sof {
    gap: 16px;
  }
  .sec_qa_nav .tit_l .f_sof strong {
    font-size: 27px;
  }
  .sec_qa_nav .tit_l .f_sof i {
    height: 2px;
  }
  .sec_qa_nav .tit_l h2 {
    font-size: 17px;
  }
  .sec_qa_nav .qa_search_wrap {
    margin-bottom: 30px;
  }
  .sec_qa_nav .qa_nav ul {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px 12px;
  }
  .sec_qa_nav .qa_nav a {
    min-height: 58px;
    padding: 7px 6px;
    border-width: 2px;
  }
  .sec_qa_nav .qa_nav p {
    gap: 4px;
  }
  .sec_qa_nav .qa_nav strong {
    font-size: 14px;
  }
  .sec_qa_nav .qa_nav .iconify {
    width: 24px;
    height: 24px;
  }
  .sec_qa_ban {
    margin-bottom: 70px;
  }
  .sec_qa_ban .pc_only {
    display: none;
  }
  .sec_qa_ban .sp_ionly {
    display: block;
  }
  .sec_qa_list .qa_list {
    margin-bottom: 70px;
  }
  .sec_qa_list .qa_list_head .target_line {
    top: -100px;
  }
  .sec_qa_list .qa_list_head h2 {
    width: min(280px, 82%);
    min-height: 50px;
    padding: 8px 14px;
    gap: 8px;
  }
  .sec_qa_list .qa_list_head strong {
    font-size: 16px;
  }
  .sec_qa_list .qa_list_head .iconify {
    width: 25px;
    height: 25px;
  }
  .sec_qa_list .qa_list_body {
    padding: 18px;
  }
  .sec_qa_list .qa_lists dl {
    padding-left: 0;
  }
  .sec_qa_list .qa_lists dt {
    min-height: 72px;
    padding: 20px 42px 20px 2px;
  }
  .sec_qa_list .qa_lists dt strong {
    font-size: 15px;
  }
  .sec_qa_list .qa_lists dt .iconify {
    right: 5px;
    width: 25px;
    height: 25px;
  }
  .sec_qa_list .qa_lists .qa_slide_content {
    font-size: 14px;
    line-height: 1.9;
    margin-bottom: 20px;
    padding: 16px;
  }
}
@media (max-width: 430px) {
  .sec_qa_nav .qa_nav strong {
    font-size: 12px;
  }
  .sec_qa_nav .qa_nav .iconify {
    width: 21px;
    height: 21px;
  }
}

/*# sourceMappingURL=style.css.map */
