@charset "UTF-8";
/*=======================================
font
=======================================*/
/*---
icon font
---*/
/*★remixicon*/
@import url("https://cdn.jsdelivr.net/npm/remixicon@2.5.0/fonts/remixicon.css");
/*body*/
body {
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  color: #3A3939;
  overflow-x: hidden;
}

img {
  image-rendering: -webkit-optimize-contrast;
}

/*======================*/
/*form*/
:root {
  --form_bd: #ccc;
  --form_bg: #fff;
}

/*======================
//form リセット
======================*/
input[type=text],
input[type=tel],
input[type=password],
input[type=email],
input[type=number],
input[type=url] {
  padding: 0;
  border: none;
  border-radius: 0;
  outline: none;
  background: none;
  box-sizing: border-box;
  font-size: clamp(1.4rem, 1.17vw, 1.6rem);
}

select {
  -webkit-appearance: none;
  appearance: none;
  border: none;
  outline: none;
  background: transparent;
  box-sizing: border-box;
  font-size: clamp(1.4rem, 1.17vw, 1.6rem);
}
select option {
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
}

select::-ms-expand {
  display: none;
}

button,
input[type=submit],
input[type=reset],
input[type=search],
input[type=date] {
  -webkit-appearance: none;
  appearance: none;
  padding: 0;
  border: none;
  outline: none;
  background: transparent;
  box-sizing: border-box;
  font-size: clamp(1.4rem, 1.17vw, 1.6rem);
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
}

textarea {
  -webkit-appearance: none;
  appearance: none;
  resize: none;
  padding: 0;
  border: 0;
  outline: none;
  background: transparent;
  box-sizing: border-box;
  font-size: clamp(1.4rem, 1.17vw, 1.6rem);
}

/*======================
//form style
======================*/
input[type=text],
input[type=tel],
input[type=password],
input[type=email],
input[type=number],
input[type=url] {
  border: 1px solid var(--form_bd);
  background: var(--form_bg);
  padding-block: 0.6em;
  padding-inline: 0.6em;
  border-radius: 3px;
  margin-block: 0.1em;
}

textarea {
  border: 1px solid var(--form_bd);
  background: var(--form_bg);
  padding-block: 0.6em;
  padding-inline: 0.6em;
  border-radius: 3px;
  margin-block: 0.1em;
}

/*===============
select_box
==============*/
/*01*/
.select_box01 {
  position: relative;
  display: inline-block;
  border: 1px solid var(--form_bd);
  background: var(--form_bg);
  padding-block: 0;
  padding-inline: 0;
  border-radius: 3px;
  margin-block: 0.1em;
}
.select_box01::before {
  font-family: remixicon !important;
  font-style: normal;
  content: "\ea4d";
  position: absolute;
  right: 8px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  margin: auto 0 auto auto;
  font-size: 2rem;
  color: #3A3939;
  pointer-events: none;
  color: #6098bd;
}
.select_box01 select {
  padding-block: 0.6em;
  padding-inline: 0.6em 2.5em;
}

/*===============
目のパスワード   */
#fieldPassword {
  border: 1px solid var(--form_bd);
  background: var(--form_bg);
  padding-block: 0;
  padding-inline: 0;
  border-radius: 3px;
  margin-block: 0.1em;
  inline-size: 100%;
  display: flex;
  align-items: center;
}
#fieldPassword #buttonEye {
  font-size: 1.2em;
  inline-size: 40px;
  display: grid;
  place-items: center;
}
#fieldPassword #buttonEye::before {
  color: #6098bd;
}
#fieldPassword #textPassword {
  border: none;
  background: transparent;
  inline-size: calc(100% - 40px);
  -webkit-margin-after: 0;
          margin-block-end: 0;
}

/*===============
datepicker
==============*/
.xdsoft_datetimepicker .xdsoft_label > .xdsoft_select.xdsoft_yearselect {
  white-space: nowrap;
}

.datepicker_box {
  position: relative;
  display: inline-block;
  inline-size: -webkit-max-content;
  inline-size: max-content;
}
.datepicker_box::before {
  font-family: remixicon !important;
  font-style: normal;
  content: "\eb21";
  position: absolute;
  right: 8px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  margin: auto 0 auto auto;
  font-size: 2rem;
  color: #3A3939;
  pointer-events: none;
  color: #6098bd;
}
.datepicker_box [id^=datepicker_] {
  inline-size: 10em;
}

.kara {
  padding-inline: 0.5em;
}
@media print, screen and (min-width: 768px) {
  .kara br {
    display: none;
  }
}

.form_ti_tx {
  white-space: nowrap;
}
.form_ti_tx::after {
  content: ":";
  display: inline-block;
  padding-inline: 0.2em;
}

/*==========================
btn
==========================*/
[class^=btn0] > input,
[class^=btn0] > button,
[class^=btn0] > a {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.4em;
  font-weight: 700;
  color: #fff;
  inline-size: 100%;
  border-radius: 3px;
  text-decoration: none;
  padding: 0.5em;
  cursor: pointer;
  transition: 0.4s;
}
[class^=btn0] + .forget_tx {
  -webkit-margin-before: 16px;
          margin-block-start: 16px;
}

.btn01 > input,
.btn01 > button,
.btn01 > a {
  background: #6098bd;
}
.btn01 > input:hover, .btn01 > input:active,
.btn01 > button:hover,
.btn01 > button:active,
.btn01 > a:hover,
.btn01 > a:active {
  background: #366381;
}
.btn01 + .forget_tx {
  -webkit-margin-before: 16px;
          margin-block-start: 16px;
}

.btn02 > input,
.btn02 > button,
.btn02 > a {
  background: #bcc5cc;
}
.btn02 > input:hover, .btn02 > input:active,
.btn02 > button:hover,
.btn02 > button:active,
.btn02 > a:hover,
.btn02 > a:active {
  background: #8293a0;
}
.btn02 + .forget_tx {
  -webkit-margin-before: 16px;
          margin-block-start: 16px;
}

/*=======================================
body
=======================================*/
:root {
  --footer_size: 80px;
  --h_pd: 40px;
}

.body {
  background: #5f98bd;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  inline-size: 100vw;
  min-block-size: 100vh;
  min-block-size: 100dvh;
  padding-inline: 8vw;
  padding-block: var(--h_pd) 0;
}

.cts_wrap {
  border-radius: 10px;
  inline-size: min(100%, 960px);
  min-block-size: calc(100vh - (var(--footer_size) + var(--h_pd)));
  min-block-size: calc(100dvh - (var(--footer_size) + var(--h_pd)));
  background: #fff;
  background: linear-gradient(45deg, rgba(255, 255, 255, 0.8) 0%, white 50%, rgba(255, 255, 255, 0.8) 100%);
  padding: clamp(20px, 2.05vw, 28px) clamp(16px, 2.05vw, 28px) 32px;
  box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
}

/*=======================================
heaer
=======================================*/
.cts_header {
  -webkit-border-after: 1px solid #bcc5cc;
          border-block-end: 1px solid #bcc5cc;
  -webkit-padding-after: 0.5em;
          padding-block-end: 0.5em;
  -webkit-margin-after: clamp(24px, 2.34vw, 32px);
          margin-block-end: clamp(24px, 2.34vw, 32px);
  display: flex;
  flex-direction: column;
  gap: 16px;
}
@media print, screen and (min-width: 768px) {
  .cts_header {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    -webkit-padding-after: 0.8em;
            padding-block-end: 0.8em;
  }
}

.mianlogo {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5em;
  white-space: nowrap;
  text-align: start;
}
@media print, screen and (min-width: 768px) {
  .mianlogo {
    justify-content: flex-start;
  }
}
.mianlogo img {
  inline-size: clamp(48px, 4.1vw, 56px);
  block-size: auto;
}
.mianlogo .logo_tx {
  display: flex;
  flex-direction: column;
  inline-size: -webkit-max-content;
  inline-size: max-content;
}
.mianlogo .logo_tx .logo_name {
  font-weight: 700;
  font-size: clamp(2rem, 1.52vw, 2.08rem);
}
.mianlogo .logo_tx .subtitle {
  -webkit-margin-before: 0.2em;
          margin-block-start: 0.2em;
  padding-inline: 1em;
  background: #dce8f1;
  border-radius: 100px;
  font-size: clamp(1rem, 1.02vw, 1.4rem);
  inline-size: 100%;
  text-align: center;
}

.nav_list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 16px;
}
.nav_list > li {
  font-size: 1.4rem;
  white-space: nowrap;
  text-align: start;
  line-height: 1.2;
}
.nav_list > li > a {
  text-decoration: none;
  color: #6098bd;
}
.nav_list > li > a::before {
  color: #6098bd;
}
.nav_list > li > a:hover {
  color: #366381;
  text-decoration: underline;
  transition: 0.2s;
}
.nav_list > li > a:hover::before {
  color: #366381;
}
.nav_list > li.user {
  inline-size: 100%;
  -webkit-padding-end: 8px;
          padding-inline-end: 8px;
}
.nav_list > li.user .user_name {
  font-weight: 700;
  -webkit-margin-end: 0.3em;
          margin-inline-end: 0.3em;
}
@media print, screen and (min-width: 768px) {
  .nav_list > li.user {
    inline-size: -webkit-max-content;
    inline-size: max-content;
  }
}
.nav_list > li.mypage > a::before {
  font-family: remixicon !important;
  font-style: normal;
  content: "\f25f";
  display: inline-block;
  vertical-align: middle;
  -webkit-margin-end: 0.2em;
          margin-inline-end: 0.2em;
}
.nav_list > li.logout > a::before {
  font-family: remixicon !important;
  font-style: normal;
  content: "\eeda";
  display: inline-block;
  vertical-align: middle;
  -webkit-margin-end: 0.2em;
          margin-inline-end: 0.2em;
}

/*=======================================
footer
=======================================*/
.copyright {
  font-size: clamp(1.2rem, 1.02vw, 1.4rem);
  color: #fff;
}

.footer {
  inline-size: 100%;
  block-size: var(--footer_size);
  display: flex;
  justify-content: center;
  align-items: center;
}

/*=======================================
nav
=======================================*/
.mypage_nav {
  -webkit-margin-after: clamp(16px, 1.76vw, 24px);
          margin-block-end: clamp(16px, 1.76vw, 24px);
}
.mypage_nav > ul {
  display: flex;
  gap: 16px;
}
@media print, screen and (min-width: 768px) {
  .mypage_nav > ul {
    justify-content: center;
  }
}
.mypage_nav > ul > li {
  position: relative;
}
.mypage_nav > ul > li > a {
  text-decoration: none;
  color: #6098bd;
}
.mypage_nav > ul > li > a:hover {
  color: #366381;
  text-decoration: underline;
}
.mypage_nav > ul > li.active > a {
  pointer-events: none;
  color: #366381;
}
.mypage_nav > ul > li:not(:last-of-type) {
  -webkit-padding-end: 16px;
          padding-inline-end: 16px;
}
.mypage_nav > ul > li:not(:last-of-type)::before {
  content: "";
  inline-size: 1px;
  block-size: 0.8em;
  display: block;
  background: #6098bd;
  position: absolute;
  inset: 50% 0 auto auto;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

[class^=title0] + .mypage_nav {
  -webkit-margin-before: -0.5em;
          margin-block-start: -0.5em;
}

/*=============================
text
=============================*/
.cts_p {
  text-align: start;
}
.cts_p.tx_cent {
  text-align: center;
}
.cts_p + .cts_p {
  -webkit-margin-before: 1em;
          margin-block-start: 1em;
}
@media print, screen and (min-width: 992px) {
  .cts_p.l_cent {
    text-align: center;
  }
}
.cts_p + [class^=btn0] {
  -webkit-margin-before: 2em;
          margin-block-start: 2em;
}

/*TextRight*/
.tx_right {
  text-align: end;
}

/*TextLeft*/
.tx_left {
  text-align: start;
}

/*TextCenter*/
.tx_cent {
  text-align: center;
}

/*center/left*/
.l_cent {
  text-align: start;
}
@media print, screen and (min-width: 992px) {
  .l_cent {
    text-align: center;
  }
}

/*left/center*/
.cent_l {
  text-align: center;
}
@media print, screen and (min-width: 992px) {
  .cent_l {
    text-align: start;
  }
}

/*bold*/
.tx_bold {
  font-weight: 700;
}

/*Textmaincolor*/
.tx_main {
  color: #6098bd;
}

/*TextRed*/
.tx_red {
  color: #ce3d3d;
}

/*TextGray*/
.tx_red {
  color: #bcc5cc;
}

/*s text*/
.s_tx {
  font-size: clamp(1.2rem, 1.02vw, 1.4rem);
}

.s_em {
  font-size: 0.8em;
}

/*big text*/
.b_tx {
  font-size: clamp(1.6rem, 1.32vw, 1.8rem);
}

.b_em {
  font-size: 1.2em;
}

.em_tx {
  font-size: clamp(1.6rem, 1.32vw, 1.8rem);
  margin-block: 2em;
}

/*marker*/
.marker {
  background: linear-gradient(transparent 60%, #ffff66 60%);
}

.attention {
  color: #ce3d3d;
  background: #fff;
  border-radius: 10px;
  margin-block: 1em;
  padding: 1em;
}
.attention i {
  font-size: 3em;
  line-height: 1;
}
.attention p {
  font-weight: 700;
}

/*=============================*/
/*== 幅 ==*/
/*=============================*/
.w100 {
  inline-size: 100%;
}

.max_40 {
  max-inline-size: 40px;
}

.max_60 {
  max-inline-size: 60px;
}

.max_80 {
  max-inline-size: 80px;
}

.max_160 {
  max-inline-size: 160px;
}

.max_240 {
  max-inline-size: 240px;
}

.max_360 {
  max-inline-size: 360px;
}

.max_400 {
  max-inline-size: 400px;
}

.max_560 {
  max-inline-size: 560px;
}

.min_40 {
  min-inline-size: 40px;
}

.min_60 {
  min-inline-size: 60px;
}

.min_80 {
  min-inline-size: 80px;
}

.min_160 {
  min-inline-size: 160px;
}

.min_240 {
  min-inline-size: 240px;
}

.min_360 {
  min-inline-size: 360px;
}

.min_400 {
  min-inline-size: 400px;
}

.min_560 {
  min-inline-size: 560px;
}

/*=============================*/
/*== Margin ==*/
/*=============================*/
/*MarginTop*/
.margin_t06 {
  -webkit-margin-before: 6px;
          margin-block-start: 6px;
}

.margin_t08 {
  -webkit-margin-before: 8px;
          margin-block-start: 8px;
}

.margin_t10 {
  -webkit-margin-before: 10px;
          margin-block-start: 10px;
}

.margin_t16 {
  -webkit-margin-before: 16px;
          margin-block-start: 16px;
}

.margin_t24 {
  -webkit-margin-before: 24px;
          margin-block-start: 24px;
}

.margin_t32 {
  -webkit-margin-before: 32px;
          margin-block-start: 32px;
}

.margin_t40 {
  -webkit-margin-before: 40px;
          margin-block-start: 40px;
}

.margin_t56 {
  -webkit-margin-before: 56px;
          margin-block-start: 56px;
}

/*MarginBottom*/
.margin_b06 {
  -webkit-margin-after: 6px;
          margin-block-end: 6px;
}

.margin_b08 {
  -webkit-margin-after: 8px;
          margin-block-end: 8px;
}

.margin_b10 {
  -webkit-margin-after: 10px;
          margin-block-end: 10px;
}

.margin_b16 {
  -webkit-margin-after: 16px;
          margin-block-end: 16px;
}

.margin_b24 {
  -webkit-margin-after: 24px;
          margin-block-end: 24px;
}

.margin_b32 {
  -webkit-margin-after: 32px;
          margin-block-end: 32px;
}

.margin_b40 {
  -webkit-margin-after: 40px;
          margin-block-end: 40px;
}

.margin_b56 {
  -webkit-margin-after: 56px;
          margin-block-end: 56px;
}

/*MarginRight*/
.margin_r06 {
  -webkit-margin-end: 6px;
          margin-inline-end: 6px;
}

.margin_r10 {
  -webkit-margin-end: 10px;
          margin-inline-end: 10px;
}

.margin_r16 {
  -webkit-margin-end: 16px;
          margin-inline-end: 16px;
}

.margin_r24 {
  -webkit-margin-end: 24px;
          margin-inline-end: 24px;
}

/*MarginLeft*/
.margin_l06 {
  -webkit-margin-start: 6px;
          margin-inline-start: 6px;
}

.margin_l10 {
  -webkit-margin-start: 10px;
          margin-inline-start: 10px;
}

.margin_l16 {
  -webkit-margin-start: 16px;
          margin-inline-start: 16px;
}

.margin_l24 {
  -webkit-margin-start: 24px;
          margin-inline-start: 24px;
}

/*==========================
layout
==========================*/
/*枠===========*/
.section_wrap {
  -webkit-padding-start: clamp(20px, 2.93vw, 40px);
          padding-inline-start: clamp(20px, 2.93vw, 40px);
  -webkit-padding-end: clamp(20px, 2.93vw, 40px);
          padding-inline-end: clamp(20px, 2.93vw, 40px);
  -webkit-padding-before: clamp(40px, 5.86vw, 80px);
          padding-block-start: clamp(40px, 5.86vw, 80px);
  -webkit-padding-after: clamp(40px, 5.86vw, 80px);
          padding-block-end: clamp(40px, 5.86vw, 80px);
}
.section_wrap.tb_nospace {
  -webkit-padding-before: 0;
          padding-block-start: 0;
  -webkit-padding-after: 0;
          padding-block-end: 0;
}
.section_wrap .section_inner {
  inline-size: 100%;
  max-inline-size: 1140px;
  margin-inline: auto auto;
}

.inner_max {
  padding-block: 0;
  padding-inline: calc(50% - 50vw);
  inline-size: 100vw;
}

/*card============*/
:root {
  --lay_gap_sp: 16px;
  --lay_gap_md:24px;
}

/*1 →　2*/
.ly_card_2column {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  gap: var(--lay_gap_sp);
}
.ly_card_2column > div,
.ly_card_2column > li,
.ly_card_2column > figure,
.ly_card_2column > section,
.ly_card_2column > article,
.ly_card_2column > dt,
.ly_card_2column > dd {
  inline-size: 100%;
}
@media print, screen and (min-width: 768px) {
  .ly_card_2column {
    flex-direction: row;
    gap: var(--lay_gap_md);
  }
  .ly_card_2column > div,
  .ly_card_2column > li,
  .ly_card_2column > figure,
  .ly_card_2column > section,
  .ly_card_2column > article,
  .ly_card_2column > dt,
  .ly_card_2column > dd {
    inline-size: calc(50% - var(--lay_gap_md) / 2);
  }
}

/*1 →　3*/
.ly_card_3column {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  gap: var(--lay_gap_sp);
}
.ly_card_3column > div,
.ly_card_3column > li,
.ly_card_3column > figure,
.ly_card_3column > section,
.ly_card_3column > article,
.ly_card_3column > dt,
.ly_card_3column > dd {
  inline-size: 100%;
}
@media print, screen and (min-width: 768px) {
  .ly_card_3column {
    flex-direction: row;
    gap: var(--lay_gap_md);
  }
  .ly_card_3column > div,
  .ly_card_3column > li,
  .ly_card_3column > figure,
  .ly_card_3column > section,
  .ly_card_3column > article,
  .ly_card_3column > dt,
  .ly_card_3column > dd {
    inline-size: calc(33.3333333333% - var(--lay_gap_md) * 2 / 3);
  }
}

/*1 → 2 → 4*/
.ly_card_4column {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  gap: var(--lay_gap_sp);
}
.ly_card_4column > div,
.ly_card_4column > li,
.ly_card_4column > figure,
.ly_card_4column > section,
.ly_card_4column > article,
.ly_card_4column > dt,
.ly_card_4column > dd {
  inline-size: 100%;
}
@media print, screen and (min-width: 768px) {
  .ly_card_4column {
    flex-direction: row;
    gap: var(--lay_gap_md);
  }
  .ly_card_4column > div,
  .ly_card_4column > li,
  .ly_card_4column > figure,
  .ly_card_4column > section,
  .ly_card_4column > article,
  .ly_card_4column > dt,
  .ly_card_4column > dd {
    inline-size: calc(50% - var(--lay_gap_md) / 2);
  }
}
@media print, screen and (min-width: 992px) {
  .ly_card_4column > div,
  .ly_card_4column > li,
  .ly_card_4column > figure,
  .ly_card_4column > section,
  .ly_card_4column > article,
  .ly_card_4column > dt,
  .ly_card_4column > dd {
    inline-size: calc(25% - var(--lay_gap_md) * 3 / 4);
  }
}

/*2*/
.ly_2column {
  display: flex;
  flex-wrap: wrap;
  gap: var(--lay_gap_sp);
}
.ly_2column > div,
.ly_2column > li,
.ly_2column > figure,
.ly_2column > section,
.ly_2column > article,
.ly_2column > dt,
.ly_2column > dd {
  inline-size: calc(50% - var(--lay_gap_sp) / 2);
}
@media print, screen and (min-width: 768px) {
  .ly_2column {
    gap: var(--lay_gap_md);
  }
  .ly_2column > div,
  .ly_2column > li,
  .ly_2column > figure,
  .ly_2column > section,
  .ly_2column > article,
  .ly_2column > dt,
  .ly_2column > dd {
    inline-size: calc(50% - var(--lay_gap_md) / 2);
  }
}

/*2→3*/
.ly_2_3column {
  display: flex;
  flex-wrap: wrap;
  gap: var(--lay_gap_sp);
}
.ly_2_3column > div,
.ly_2_3column > li,
.ly_2_3column > figure,
.ly_2_3column > section,
.ly_2_3column > article,
.ly_2_3column > dt,
.ly_2_3column > dd {
  inline-size: calc(50% - var(--lay_gap_sp) / 2);
}
@media print, screen and (min-width: 992px) {
  .ly_2_3column {
    gap: var(--lay_gap_md);
  }
  .ly_2_3column > div,
  .ly_2_3column > li,
  .ly_2_3column > figure,
  .ly_2_3column > section,
  .ly_2_3column > article,
  .ly_2_3column > dt,
  .ly_2_3column > dd {
    inline-size: calc(33.3333333333% - var(--lay_gap_md) * 2 / 3);
  }
}

/*golden ratio*/
.ly_gold {
  display: flex;
  flex-direction: column;
  gap: 24px 40px;
}
.ly_gold.s_top .ly_gold_s {
  order: -1;
}
.ly_gold.b_top .ly_gold_b {
  order: -1;
}
@media print, screen and (min-width: 768px) {
  .ly_gold {
    flex-direction: row;
    justify-content: space-between;
  }
  .ly_gold.align_cent {
    align-items: center;
  }
  .ly_gold .ly_gold_s {
    inline-size: 50%;
    order: 0;
  }
  .ly_gold .ly_gold_b {
    inline-size: calc(50% - 40px);
    order: 0;
  }
  .ly_gold.s_top .ly_gold_s {
    order: 0;
  }
  .ly_gold.b_top .ly_gold_b {
    order: 0;
  }
}
@media print, screen and (min-width: 992px) {
  .ly_gold .ly_gold_s {
    inline-size: 38%;
  }
  .ly_gold .ly_gold_b {
    inline-size: calc(62% - 40px);
  }
}

/*half*/
.ly_half {
  display: flex;
  flex-direction: column;
}
@media print, screen and (min-width: 768px) {
  .ly_half {
    flex-direction: row;
  }
  .ly_half > div,
  .ly_half > li,
  .ly_half > figure,
  .ly_half > section,
  .ly_half > article,
  .ly_half > dt,
  .ly_half > dd {
    inline-size: 50%;
  }
}

/*btn_layout*/
.ly_btn_box {
  display: flex;
  flex-direction: column;
  gap: 10px 16px;
}
@media print, screen and (min-width: 768px) {
  .ly_btn_box {
    flex-direction: row;
    justify-content: center;
  }
  .ly_btn_box > li {
    min-inline-size: 240px;
  }
  .ly_btn_box.tx_left {
    justify-content: flex-start;
  }
  .ly_btn_box.tx_right {
    justify-content: flex-end;
  }
}

/*==========================
other
==========================*/
.bg_color01 {
  background: #dce8f1;
}

.bg_color02 {
  background: #5f98bd;
}

/*anchorlink============*/
/*<a id="name" class="anchor" ></a>===========*/
a.anchor {
  display: block;
  position: relative;
  top: -100px;
  visibility: hidden;
}

/*ClearFix============*/
.clearfix {
  zoom: 1;
}
.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

/*Float============*/
/*FloatLeft*/
.float_left {
  float: inline-start;
}

/*FloatRight*/
.float_right {
  float: inline-end;
}

/*ClearBoth*/
.clearboth {
  clear: both;
}

/*phbox============*/
:root {
  --float_space: 30px;
  --img_top: 16px;
}

.phbox_right,
.phbox_left {
  text-align: center;
  -webkit-margin-after: var(--img_top);
          margin-block-end: var(--img_top);
}
.phbox_right img,
.phbox_left img {
  max-inline-size: 100%;
  block-size: auto;
}
.phbox_right img + *:not(figcaption),
.phbox_left img + *:not(figcaption) {
  -webkit-margin-before: var(--img_top);
          margin-block-start: var(--img_top);
}
.phbox_right > a,
.phbox_left > a {
  display: block;
}
.phbox_right > a + *,
.phbox_left > a + * {
  -webkit-margin-before: var(--img_top);
          margin-block-start: var(--img_top);
}

.ov_hidden {
  overflow: hidden;
}

@media print, screen and (min-width: 768px) {
  .phbox_right {
    float: right;
    -webkit-margin-start: var(--float_space);
            margin-inline-start: var(--float_space);
    -webkit-margin-after: 0;
            margin-block-end: 0;
  }
  .phbox_left {
    float: left;
    -webkit-margin-end: var(--float_space);
            margin-inline-end: var(--float_space);
    -webkit-margin-after: 0;
            margin-block-end: 0;
  }
}
/*レスポンシブblock/none============*/
@media print, screen and (min-width: 768px) {
  .pc_none {
    display: none;
  }
}

.sp_none {
  display: none;
}
@media print, screen and (min-width: 768px) {
  .sp_none {
    display: inline-block;
  }
}

/*tel============*/
.tel-link a {
  text-decoration: underline;
  color: inherit;
}
.tel-link a:hover {
  opacity: 0.8;
}

/*img_fluid============*/
.img_fluid {
  max-inline-size: 100%;
  block-size: auto;
}

/*==========================
parts
==========================*/
/*Pagetop============*/
#pagetop {
  position: fixed;
  inset-inline-end: 20px;
  z-index: 998;
  opacity: 0;
  transition-duration: 0.5s;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
}
#pagetop.active {
  opacity: 1;
  -webkit-transform: translate(0, -20px);
          transform: translate(0, -20px);
}

/*pagetitle============*/
#pagetitle {
  background: #989898;
}

/*pankuzu============*/
#pankuzu {
  inline-size: -webkit-max-content;
  inline-size: max-content;
  clear: both;
}
#pankuzu ol {
  list-style: none;
}
#pankuzu ol li {
  float: left;
  font-size: clamp(1rem, 0.81vw, 1.1rem);
  padding-block: 0;
  padding-inline: 10px 7px;
  background: url(../img/common_img/icon_pankuzu.gif) no-repeat 0 50%;
}
#pankuzu ol li em {
  font-style: normal;
}
#pankuzu ol li:first-child {
  background: none;
}
#pankuzu ol li a:link, #pankuzu ol li a:visited, #pankuzu ol li a:hover, #pankuzu ol li a:active {
  text-decoration: underline;
}

/*PageNavi============*/
:root {
  --pagenavi_bd_span: #bcc5cc;
  --pagenavi_bd_a: #bcc5cc;
  --pagenavi_tx_span: #fff;
  --pagenavi_tx_a: #3A3939;
  --pagenavi_span: #bcc5cc;
  --pagenavi_a: rgba(188, 197, 204,0.2);
  --pagenavi_pdd_b: 3px;
  --pagenavi_pdd_in: 10px;
}

.pagenavi {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  margin-block: 2em;
}
.pagenavi li span {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-block: var(--pagenavi_pdd_b);
  padding-inline: var(--pagenavi_pdd_in);
  color: var(--pagenavi_tx_span);
  border: 1px solid var(--pagenavi_bd_span);
  background: var(--pagenavi_span);
}
.pagenavi li a {
  display: flex;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  padding-block: var(--pagenavi_pdd_b);
  padding-inline: var(--pagenavi_pdd_in);
  color: var(--pagenavi_tx_a);
  border: 1px solid var(--pagenavi_bd_a);
  background: var(--pagenavi_a);
  transition: 0.2s;
}
.pagenavi li a:hover {
  opacity: 0.6;
}

/*Line============*/
hr.line_01 {
  block-size: 1px;
  clear: both;
  margin-block: 36px;
  margin-inline: 0;
  border: none;
  -webkit-border-before: 1px dotted #ccc;
          border-block-start: 1px dotted #ccc;
}

/*title============*/
.title01 {
  font-size: clamp(1.8rem, 1.61vw, 2.2rem);
  font-weight: 700;
  color: #6098bd;
  -webkit-margin-after: 1em;
          margin-block-end: 1em;
  line-height: 1.4;
}

.title02 {
  font-size: clamp(1.6rem, 1.32vw, 1.8rem);
  text-align: start;
  -webkit-border-start: 4px solid #6098bd;
          border-inline-start: 4px solid #6098bd;
  font-weight: 700;
  padding: 0.2em 0 0.2em 0.5em;
  line-height: 1.4;
  -webkit-margin-after: 1em;
          margin-block-end: 1em;
}

/*table============*/
:root {
  --tbl_pd_sp_b: 0.5em;
  --tbl_pd_sp_in: 1em;
  --tbl_pd_pc_b:0.5em;
  --tbl_pd_pc_in: 1em;
}

/*table01*/
.sheet_basic {
  inline-size: 100%;
  border-collapse: collapse;
  border: 1px solid #666;
  -webkit-border-after: none;
          border-block-end: none;
}
.sheet_basic tr th,
.sheet_basic tr td {
  -webkit-border-after: 1px solid #666;
          border-block-end: 1px solid #666;
  padding-block: var(--tbl_pd_sp_b);
  padding-inline: var(--tbl_pd_sp_in);
  display: block;
}
@media print, screen and (min-width: 768px) {
  .sheet_basic tr th,
  .sheet_basic tr td {
    display: table-cell;
    padding-block: var(--tbl_pd_pc_b);
    padding-inline: var(--tbl_pd_pc_in);
  }
  .sheet_basic tr th {
    -webkit-border-end: 1px solid #666;
            border-inline-end: 1px solid #666;
  }
}

/*table02*/
.table_basic {
  inline-size: 100%;
  border-collapse: collapse;
  border: 1px solid #666;
  -webkit-border-after: none;
          border-block-end: none;
  background: #fff;
}
.table_basic tr th,
.table_basic tr td {
  display: table-cell;
  padding-block: var(--tbl_pd_sp_b);
  padding-inline: var(--tbl_pd_sp_in);
  border: 1px solid #666;
}
@media print, screen and (min-width: 768px) {
  .table_basic tr th,
  .table_basic tr td {
    padding-block: var(--tbl_pd_pc_b);
    padding-inline: var(--tbl_pd_pc_in);
  }
}
.table_basic tr th {
  background: #dce8f1;
}
.table_basic tr.end {
  background: #ececec;
}
.table_basic tr.end th,
.table_basic tr.end td {
  color: rgba(58, 57, 57, 0.6);
}

.nowrap {
  white-space: nowrap;
}

tr.nowrap > th,
tr.nowrap > td {
  white-space: nowrap;
}

/*list=============*/
/*pdf*/
.pdf_link > li {
  line-height: 1.4;
  position: relative;
  -webkit-padding-start: 1.4em;
          padding-inline-start: 1.4em;
  text-align: start;
}
.pdf_link > li + li {
  -webkit-margin-before: 8px;
          margin-block-start: 8px;
}
.pdf_link > li::before {
  font-family: remixicon !important;
  font-style: normal;
  content: "\eceb";
  display: block;
  position: absolute;
  inset: 0 auto auto 0;
  color: #ce3d3d;
  font-size: 1.2em;
}

/*※*/
.note_list {
  text-align: start;
}
.note_list > li {
  line-height: 1.4;
  position: relative;
  -webkit-padding-start: 1.4em;
          padding-inline-start: 1.4em;
}
.note_list > li + li {
  -webkit-margin-before: 8px;
          margin-block-start: 8px;
}
.note_list > li::before {
  content: "※";
  position: absolute;
  inset: 0 auto auto 0;
}
.note_list.s_tx > li {
  font-size: clamp(1.2rem, 1.02vw, 1.4rem);
}

/*※に番号リスト*/
ol.note_list {
  counter-reset: number;
}
ol.note_list > li {
  list-style: none;
  -webkit-padding-start: 2.6em;
          padding-inline-start: 2.6em;
}
ol.note_list > li::before {
  counter-increment: number;
  content: "0" counter(number);
  position: absolute;
  inset: 0.4em auto auto 1.3em;
  font-size: 1.2rem;
}
ol.note_list > li::after {
  content: "※";
  position: absolute;
  inset: 0 auto auto 0;
}
ol.note_list > li:nth-child(n+10)::before {
  content: counter(number);
}

/*番号リスト*/
.num_list {
  counter-reset: number;
  text-align: start;
}
.num_list > li {
  line-height: 1.4;
  position: relative;
  list-style: none;
  -webkit-padding-start: 1.8em;
          padding-inline-start: 1.8em;
}
.num_list > li + li {
  -webkit-margin-before: 8px;
          margin-block-start: 8px;
}
.num_list > li::before {
  counter-increment: number;
  content: "0" counter(number) ".";
  position: absolute;
  inset: 0 auto auto 0;
}
.num_list > li:nth-child(n+10)::before {
  content: counter(number) ".";
}

/*input_list*/
.input_list {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 16px;
}
.input_list > li {
  white-space: nowrap;
}
.input_list > li input[type=checkbox],
.input_list > li input[type=radio] {
  -webkit-margin-end: 0.2em;
          margin-inline-end: 0.2em;
}

.list_basic01 {
  text-align: start;
}
.list_basic01 > li {
  position: relative;
  -webkit-padding-start: 0.8em;
          padding-inline-start: 0.8em;
}
.list_basic01 > li::before {
  content: "";
  display: block;
  inline-size: 6px;
  block-size: 6px;
  background: #6098bd;
  border-radius: 100px;
  position: absolute;
  inset: 0.6em 0 0 0;
}
.list_basic01 > li + li {
  -webkit-margin-before: 0.4em;
          margin-block-start: 0.4em;
}
.list_basic01.s_tx > li {
  font-size: clamp(1.2rem, 1.02vw, 1.4rem);
}