@charset "UTF-8";
/*=================================================================================

　変数定義

=================================================================================*/
/*—————————————————————————————————————————————————————
　横幅／高さ／余白設定
—————————————————————————————————————————————————————*/
:root {
  /* 横幅【PC幅のみ】 */
  --width-contents_max_s: 1000px;
  --width-contents_max_m: 1100px;
  --width-contents_max_l: 1260px;
  --width-modal_max: 900px;
  /* 高さ【ヘッダのみ】 */
  --height-header: 90px;
  --height-header_l: 48px;
}

/*—————————————————————————————————————————————————————
　カラー設定
—————————————————————————————————————————————————————*/
:root {
  --color-key: #2d9166;
  --color-key_l: #8d8d8d;
  --color-body_bg: #fff;
  --color-head_bg: #000;
  --color-foot_bg: #171717;
  --color-head_bg_l: #303030;
  /* テキスト */
  --color-txt: #000;
  --color-txt_sub: #333333;
  --color-txt_m: #141414;
  --color-txt_l: #6b6b6b;
  --color-txt_s: #06c755;
  --color-txt_a: #f05933;
  /* リンク */
  --color-link: #2d9166;
  /* 画像のMIX */
  --color-img_mix: #91c2ea;
  /* 背景色 */
  --color-background_a: #42ac2d;
  --color-background_b: #f4810a;
  --color-background_c: #ff5959;
  --color-background_d: #f0ece6;
  --color-background_e: #f8f5f2;
  --color-background_f: #01ba4d;
  --color-background_g: #505050;
  --color-background_h: #313131;
  --color-background_i: #fdfdfd;
  --color-background_j: #ffcb3a;
  /* 罫線 */
  --color-border: #2d9166;
  --color-border_l: #c7c7c7;
  /* フォームカラー */
  --color-form-txt: #000;
  --color-form-border: #e2e2e2;
  --color-form-placeholder: #848484;
  /* ボタンやアラートなどエレメントカラー */
  --color-default: #ffffff;
  --color-primary: #2d9166;
  --color-disable: #888888;
  /* テーブル */
  --color-table_border: #1d71c6;
  --color-table_border_tr: #cccccc;
  --color-table_thead_bg: #1d71c6;
  --color-table_txt: #333333;
  /* オーバーレイ（モーダルやドロワーの背景） */
  --color-overlay-bg: rgba(0, 0, 0, 0.8);
  --color-overlay-bg_l: rgba(0, 0, 0, 0.4);
  /* モーダルウィンドウのコンテンツ背景 */
  --color-modal-bg: #ffffff;
  /* その他ベーシックな色 */
  --color_black: #000000;
  --color_white: #ffffff;
  --color_darkgray: #333333;
  --color_gray: #969696;
  --color_red: #eb2d2d;
  --color_blue: #0059ff;
  /* グラデーション */
  --color-main-visual: linear-gradient(135deg, #8ac7f0 0%, #3a9bdd 38%, #0062b0 100%);
  --color-gradation-header: linear-gradient(90deg, #1785d0 0%, #1786d0 9%, #1786d0 20%, #1889d0 31%, #198dcf 41%, #1b99cb 51%, #1ea3c9 61%, #21b5c4 72%, #23bec2 83%, #24c1c1 92%, #24c1c1 100%);
  --color-gradation-btn: linear-gradient(136deg, #388fd5 0%, #0062b0 47%, #002e80 100%);
  --color-gradation-btn_l: linear-gradient(136deg, #38bff7 0%, #1d98dc 47%, #087bca 100%);
  --color-gradation-btn_s: linear-gradient(146deg, #91c2ea 0%, #4189d3 47%, #0062b0 100%);
}

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

html,
body {
  margin: 0;
  padding: 0;
  word-break: break-all;
}

:root {
  --txt-color: ;
  --main-color: ;
  --sub-color: ;
  --main--bg: ;
  --white: ;
}

address {
  font-style: normal;
}

body {
  overflow-x: hidden;
  color: var(--color-txt);
  font-size: clamp(0.875rem, 0.8446601942rem + 0.1294498382vw, 1rem);
  font-family: "Noto Sans Jp", sans-serif;
  font-weight: 400;
  font-style: normal;
  line-height: 1.5;
  letter-spacing: 0.05em;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  min-height: 100vh;
}

a[href^="tel:"] {
  pointer-events: none;
  cursor: default;
}
@media screen and (max-width: 600px) {
  a[href^="tel:"] {
    pointer-events: auto;
  }
}

main {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

article,
aside,
footer,
header,
nav,
section,
main {
  display: block;
}

h1,
h2,
h3,
h4,
h5,
h6,
a,
p,
span,
em,
small,
strong,
sub,
sup,
mark,
del,
ins,
strike,
abbr,
dfn,
blockquote,
q,
cite,
code,
pre,
ol,
ul,
li,
dl,
dt,
dd,
div,
section,
article,
main,
aside,
nav,
header,
hgroup,
footer,
img,
figure,
figcaption,
address,
time,
audio,
video,
canvas,
iframe,
details,
summary,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
  margin: 0;
  padding: 0;
  border: 0;
}

a {
  color: inherit;
  text-decoration: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}
@media (hover: hover) {
  a:where(:-webkit-any-link, :enabled, summary):hover {
    opacity: 0.5;
  }
}
a:focus:not(:focus-visible) {
  outline: none;
}

img {
  max-width: 100%;
  height: auto;
  display: block;
  border: none;
}

code,
kbd,
pre,
samp {
  font-size: inherit;
  font-family: monospace, sans-serif;
}

ul,
ol {
  list-style: none;
}

table {
  width: 100%;
  border-spacing: 0;
  border-collapse: collapse;
  table-layout: fixed;
}

th,
td {
  padding: 0.25rem 0.375rem;
  vertical-align: top;
  text-align: left;
}

blockquote,
q {
  quotes: none;
}

blockquote::after,
blockquote::before,
q::after,
q::before {
  content: "";
  content: none;
}

form {
  margin: 0;
  padding: 0;
}

form button {
  display: inline-block;
  margin: 0;
  padding: 0.6em 2em;
  width: auto;
  border: none;
  border-radius: 0;
  background-color: var(--color-key);
  background-image: none;
  -webkit-box-shadow: 0.0625em 0.0625em 0.1875em 0 rgba(0, 0, 0, 0.16);
          box-shadow: 0.0625em 0.0625em 0.1875em 0 rgba(0, 0, 0, 0.16);
  color: var(--color_white);
  text-decoration: none;
  font-size: 16px;
  cursor: pointer;
  -webkit-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  -webkit-appearance: none;
}

form button:focus:not(:focus-visible) {
  outline: none;
}

form button:hover {
  opacity: 0.6;
  outline: none;
}

form button ::-moz-focus-inner {
  padding: 0;
  border: none;
}

input,
textarea {
  padding: 0.40625rem 1rem;
  width: 100%;
  border: 1px solid var(--color-form-border);
  border-radius: 0.25rem;
  background-image: none;
  background-color: var(--color_white);
  font-size: 1em;
  font-family: inherit;
  -webkit-appearance: none;
}
input::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
  color: var(--color-form-placeholder);
  font-size: 1rem;
  letter-spacing: 0.1em;
  line-height: 1.6875;
}
input::-moz-placeholder, textarea::-moz-placeholder {
  color: var(--color-form-placeholder);
  font-size: 1rem;
  letter-spacing: 0.1em;
  line-height: 1.6875;
}
input:-ms-input-placeholder, textarea:-ms-input-placeholder {
  color: var(--color-form-placeholder);
  font-size: 1rem;
  letter-spacing: 0.1em;
  line-height: 1.6875;
}
input::-ms-input-placeholder, textarea::-ms-input-placeholder {
  color: var(--color-form-placeholder);
  font-size: 1rem;
  letter-spacing: 0.1em;
  line-height: 1.6875;
}
input::placeholder,
textarea::placeholder {
  color: var(--color-form-placeholder);
  font-size: 1rem;
  letter-spacing: 0.1em;
  line-height: 1.6875;
}
@media screen and (max-width: 600px) {
  input::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
    font-size: 0.875rem;
  }
  input::-moz-placeholder, textarea::-moz-placeholder {
    font-size: 0.875rem;
  }
  input:-ms-input-placeholder, textarea:-ms-input-placeholder {
    font-size: 0.875rem;
  }
  input::-ms-input-placeholder, textarea::-ms-input-placeholder {
    font-size: 0.875rem;
  }
  input::placeholder,
  textarea::placeholder {
    font-size: 0.875rem;
  }
}

textarea:hover,
textarea:focus {
  outline: none;
}

textarea:focus {
  outline: none;
  border-color: var(--color-form-border);
  -webkit-box-shadow: none;
          box-shadow: none;
}

textarea ::-moz-focus-inner {
  padding: 0;
  border: none;
}

input::-webkit-input-placeholder {
  color: var(--color-form-placeholder);
}

input::-moz-placeholder {
  color: var(--color-form-placeholder);
}

input::-ms-input-placeholder {
  color: var(--color-form-placeholder);
}

input:-ms-input-placeholder {
  color: var(--color-form-placeholder);
}

input::placeholder {
  color: var(--color-form-placeholder);
}

input:focus {
  outline: none;
  border-color: var(--color-form-border);
  -webkit-box-shadow: none;
          box-shadow: none;
}

input[type=submit],
input[type=button] {
  display: inline-block;
  margin: 0;
  padding: 0.6em 2em;
  width: auto;
  border: none;
  border-radius: 0;
  background-color: var(--color-key);
  background-image: none;
  -webkit-box-shadow: 0.0625em 0.0625em 0.1875em 0 rgba(0, 0, 0, 0.16);
          box-shadow: 0.0625em 0.0625em 0.1875em 0 rgba(0, 0, 0, 0.16);
  color: var(--color_white);
  text-decoration: none;
  font-size: 16px;
  cursor: pointer;
  -webkit-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  -webkit-appearance: none;
}

input[type=submit]:hover,
input[type=submit]:focus,
input[type=button]:hover,
input[type=button]:focus {
  outline: none;
}

input[type=submit]:hover,
input[type=button]:hover {
  opacity: 0.6;
}

input[type=submit] ::-moz-focus-inner,
input[type=button] ::-moz-focus-inner {
  padding: 0;
  border: none;
}

input[type=radio] {
  display: none;
}

input[type=radio] + span {
  position: relative;
  display: inline-block;
  margin: 0 1rem 0 0;
  padding: 0 0 0 30px;
  cursor: pointer;
}

input[type=radio] + span::before {
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  width: 1.375rem;
  height: 1.375rem;
  border: 1px solid var(--color-form-border);
  border-radius: 50%;
  background: var(--color_white);
  content: "";
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

input[type=radio] + span::after {
  opacity: 0;
  -webkit-transition: opacity 0.3s ease 0s;
  transition: opacity 0.3s ease 0s;
}

input[type=radio]:checked + span::after {
  position: absolute;
  top: 50%;
  left: 0.1875rem;
  display: block;
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  background: var(--color-key);
  content: "";
  opacity: 1;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

input[type=checkbox] {
  display: none;
}

input[type=checkbox] + span {
  position: relative;
  display: inline-block;
  margin: 0 1rem 0 0;
  padding: 0 0 0 1.875rem;
  cursor: pointer;
  -webkit-transition: all 1s ease 0s;
  transition: all 1s ease 0s;
}

input[type=checkbox] + span::before {
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  width: 1.125rem;
  height: 1.125rem;
  border: 1px solid var(--color-txt);
  border-radius: 0.125rem;
  background: var(--color_white);
  content: "";
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

input[type=checkbox] + span::after {
  opacity: 0;
  -webkit-transition: opacity 0.3s ease 0s;
  transition: opacity 0.3s ease 0s;
}

input[type=checkbox]:checked + span::after {
  position: absolute;
  top: 50%;
  left: 0.125rem;
  display: block;
  margin-top: -0.2em;
  width: 0.8125rem;
  height: 0.5rem;
  border-bottom: 0.125rem solid var(--color_white);
  border-left: 0.125rem solid var(--color_white);
  content: "";
  opacity: 1;
  -webkit-transform: translateY(-50%) rotate(-45deg);
          transform: translateY(-50%) rotate(-45deg);
}

select {
  padding: 0.625rem 2.4375rem 0.625rem 0.75rem;
  border: 1px solid var(--color-form-border);
  border-radius: 0.125rem;
  background-image: url(../img/common/icon_select_arrow.svg);
  background-position: right 0.6875rem top 55%;
  background-size: 0.8125rem;
  background-repeat: no-repeat;
  background-color: var(--color_white);
  color: var(--color-txt);
  font-family: inherit;
  cursor: pointer;
  position: relative;
  -moz-appearance: none;
  -webkit-appearance: none;
}

select::-ms-expand {
  display: none;
}

select:focus {
  outline: none;
  border-color: var(--color-form-border);
  -webkit-box-shadow: none;
          box-shadow: none;
}

option {
  color: var(--color-txt);
}

.grecaptcha-badge {
  display: none;
}

input[type=date]::-webkit-date-and-time-value {
  text-align: left;
  color: var(--color-txt);
}

.wow {
  visibility: visible !important; /* hiddenを上書き */
  opacity: 0;
}

@font-face {
  font-family: "Noto Sans Jp";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/NotoSansJP-Regular.ttf") format("truetype");
  font-display: swap;
}
@font-face {
  font-family: "Noto Sans Jp";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/NotoSansJP-Medium.ttf") format("truetype");
  font-display: swap;
}
@font-face {
  font-family: "Noto Sans Jp";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/NotoSansJP-Bold.ttf") format("truetype");
  font-display: swap;
}
@font-face {
  font-family: "Noto Sans Jp";
  font-style: normal;
  font-weight: 800;
  src: url("../fonts/NotoSansJP-ExtraBold.ttf") format("truetype");
  font-display: swap;
}
@font-face {
  font-family: "Noto Sans Jp";
  font-style: normal;
  font-weight: 900;
  src: url("../fonts/NotoSansJP-Black.ttf") format("truetype");
  font-display: swap;
}
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/Roboto-Regular.ttf") format("truetype");
  font-display: swap;
}
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/Roboto-Medium.ttf") format("truetype");
  font-display: swap;
}
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/Roboto-Bold.ttf") format("truetype");
  font-display: swap;
}
.c-table, .wp-block-post-content .wp-block-table table,
.p-editorContents .wp-block-table table {
  border: 1px solid var(--color-table_border);
  font-family: "Noto Sans JP";
}
.c-table tr, .wp-block-post-content .wp-block-table table tr,
.p-editorContents .wp-block-table table tr {
  border-bottom: 1px solid var(--color-table_border_tr);
}
@media screen and (max-width: 768px) {
  .c-table tr, .wp-block-post-content .wp-block-table table tr,
  .p-editorContents .wp-block-table table tr {
    border: none;
  }
}
.c-table tr:last-child, .wp-block-post-content .wp-block-table table tr:last-child,
.p-editorContents .wp-block-table table tr:last-child {
  border: none;
}
.c-table tr th, .wp-block-post-content .wp-block-table table tr th,
.p-editorContents .wp-block-table table tr th, .c-table tr td, .wp-block-post-content .wp-block-table table tr td,
.p-editorContents .wp-block-table table tr td {
  padding: clamp(0.75rem, 0.567961165rem + 0.7766990291vw, 1.5rem);
  vertical-align: middle;
}
.c-table tr th, .wp-block-post-content .wp-block-table table tr th,
.p-editorContents .wp-block-table table tr th {
  background-color: var(--color-table_thead_bg);
  color: var(--color_white);
  font-size: clamp(0.875rem, 0.8143203883rem + 0.2588996764vw, 1.125rem);
  line-height: 1.6666666667;
  font-weight: 500;
  letter-spacing: 0;
  width: 15.625rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .c-table tr th, .wp-block-post-content .wp-block-table table tr th,
  .p-editorContents .wp-block-table table tr th {
    text-align: left;
  }
}
.c-table tr td, .wp-block-post-content .wp-block-table table tr td,
.p-editorContents .wp-block-table table tr td {
  padding-left: clamp(0.75rem, 0.2038834951rem + 2.3300970874vw, 3rem);
}

@media screen and (max-width: 600px) {
  .c-table--column th, .c-table--column td {
    display: block;
    width: 100%;
  }
}
@media screen and (max-width: 600px) {
  .c-table--column th {
    padding-bottom: 0;
    border-bottom: none;
  }
}

.c-btn, .c-form__box input[type=submit],
.c-form__box input[type=button], .wp-block-file .wp-block-file__button {
  width: 100%;
  max-width: 21.0625rem;
  font-size: clamp(1rem, 0.9696601942rem + 0.1294498382vw, 1.125rem);
  line-height: 1.5555555556;
  letter-spacing: 0.05em;
  font-weight: 500;
  padding: 0.875rem 1.5rem 0.8125rem;
  color: var(--color_white);
  background-color: var(--color-txt);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: clamp(0.5rem, 0.3786407767rem + 0.5177993528vw, 1rem);
  border-radius: 3.25rem;
  position: relative;
}
@media screen and (max-width: 768px) {
  .c-btn, .c-form__box input[type=submit],
  .c-form__box input[type=button], .wp-block-file .wp-block-file__button {
    max-width: 17.4375rem;
    padding: 0.6875rem 1.5rem 0.4375rem;
  }
}
.c-btn::after, .c-form__box input[type=submit]::after,
.c-form__box input[type=button]::after, .wp-block-file .wp-block-file__button::after {
  content: url(../img/common/icon_btn-circle.svg);
  position: absolute;
  right: 1.5rem;
  -webkit-transition: right 0.3s;
  transition: right 0.3s;
}
.c-btn:hover::after, .c-form__box input[type=submit]:hover::after,
.c-form__box input[type=button]:hover::after, .wp-block-file .wp-block-file__button:hover::after {
  right: 1rem;
}
.c-btn--small, .wp-block-file .wp-block-file__button {
  max-width: 12.0625rem;
}
.c-btn--small::after, .wp-block-file .wp-block-file__button::after {
  content: none;
}
.c-btn--color {
  background-color: var(--color-key);
  color: var(--color_white);
}
.c-btn--color::after {
  background-image: url(../img/icon/icon_btn_next.svg);
}

.wp-block-post-content h1.wp-block-heading,
.p-editorContents h1.wp-block-heading {
  font-size: clamp(1.5rem, 1.1359223301rem + 1.5533980583vw, 3rem);
  font-weight: 700;
}
.wp-block-post-content h2.wp-block-heading,
.p-editorContents h2.wp-block-heading {
  font-size: clamp(1.25rem, 1.067961165rem + 0.7766990291vw, 2rem);
  font-weight: 700;
  border-bottom: 3px solid var(--color-key);
  padding-bottom: 0.25rem;
}
.wp-block-post-content h3.wp-block-heading,
.p-editorContents h3.wp-block-heading {
  font-size: clamp(1.125rem, 1.0339805825rem + 0.3883495146vw, 1.5rem);
  font-weight: 700;
  position: relative;
  border-left: 5px solid var(--color-key);
  padding-left: 0.5rem;
}
.wp-block-post-content h4.wp-block-heading,
.p-editorContents h4.wp-block-heading {
  font-size: clamp(1rem, 0.9393203883rem + 0.2588996764vw, 1.25rem);
  font-weight: 700;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.wp-block-post-content h4.wp-block-heading::before,
.p-editorContents h4.wp-block-heading::before {
  content: "";
  width: 0.3125rem;
  height: 0.3125rem;
  border-radius: 50%;
  background-color: var(--color-key);
}
.wp-block-post-content h5.wp-block-heading,
.p-editorContents h5.wp-block-heading {
  font-size: clamp(1rem, 0.9696601942rem + 0.1294498382vw, 1.125rem);
  font-weight: 700;
}
.wp-block-post-content h6.wp-block-heading,
.p-editorContents h6.wp-block-heading {
  font-size: clamp(1rem, 1rem + 0vw, 1rem);
  font-weight: 700;
}
.wp-block-post-content * + *,
.p-editorContents * + * {
  margin-top: clamp(1rem, 0.8786407767rem + 0.5177993528vw, 1.5rem);
}
.wp-block-post-content * + h1.wp-block-heading,
.p-editorContents * + h1.wp-block-heading {
  margin-top: clamp(1.5rem, 1.1359223301rem + 1.5533980583vw, 3rem);
}
.wp-block-post-content * + h2.wp-block-heading,
.p-editorContents * + h2.wp-block-heading {
  margin-top: clamp(1.5rem, 1.3786407767rem + 0.5177993528vw, 2rem);
}
.wp-block-post-content * + h3.wp-block-heading,
.p-editorContents * + h3.wp-block-heading {
  margin-top: clamp(1rem, 0.8786407767rem + 0.5177993528vw, 1.5rem);
}
.wp-block-post-content * + p,
.p-editorContents * + p {
  margin-top: clamp(1rem, 0.7572815534rem + 1.0355987055vw, 2rem);
}
.wp-block-post-content * + .wp-block-image,
.p-editorContents * + .wp-block-image {
  margin-top: clamp(1rem, 0.7572815534rem + 1.0355987055vw, 2rem);
}
.wp-block-post-content .wp-block-list .wp-block-list,
.p-editorContents .wp-block-list .wp-block-list {
  margin-top: clamp(0.5rem, 0.3786407767rem + 0.5177993528vw, 1rem);
}
.wp-block-post-content ul,
.wp-block-post-content ol,
.p-editorContents ul,
.p-editorContents ol {
  padding-left: clamp(1rem, 0.7572815534rem + 1.0355987055vw, 2rem);
}
.wp-block-post-content * + ul,
.wp-block-post-content * + ol,
.p-editorContents * + ul,
.p-editorContents * + ol {
  margin-top: clamp(1rem, 0.7572815534rem + 1.0355987055vw, 2rem);
}
.wp-block-post-content ul,
.p-editorContents ul {
  list-style: disc;
}
.wp-block-post-content ol,
.p-editorContents ol {
  list-style: decimal;
}
.wp-block-post-content li,
.p-editorContents li {
  position: relative;
}
.wp-block-post-content * + li,
.p-editorContents * + li {
  margin-top: clamp(0.5rem, 0.3786407767rem + 0.5177993528vw, 1rem);
}
.wp-block-post-content * + .wp-block-table,
.p-editorContents * + .wp-block-table {
  margin-top: clamp(1rem, 0.8786407767rem + 0.5177993528vw, 1.5rem);
}
.wp-block-post-content figcaption,
.p-editorContents figcaption {
  font-size: 0.75rem;
  color: #787878;
  margin-top: clamp(0.5rem, 0.3786407767rem + 0.5177993528vw, 1rem);
}
.attachment-post-thumbnail {
  width: 100%;
  aspect-ratio: 332/187;
  -o-object-fit: cover;
  object-fit: cover;
  height: auto;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.c-pagePostTitle {
  font-size: 2rem;
  font-weight: 700;
}

.wp-block-gallery {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
}
@media screen and (max-width: 600px) {
  .wp-block-gallery {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

.wp-block-gallery {
  width: 100% !important;
}
.wp-block-gallery .wp-block-image {
  aspect-ratio: 1/1;
  width: 100% !important;
}

.wp-block-file {
  margin-top: clamp(1.5rem, 1.1359223301rem + 1.5533980583vw, 3rem);
}
.wp-block-file:not(.wp-element-button) {
  font-size: clamp(0.875rem, 0.8446601942rem + 0.1294498382vw, 1rem);
}
.wp-block-file .wp-block-file__button {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin-top: 0;
}

.l-inner {
  margin: 0 auto;
  width: 90%;
  max-width: var(--width-contents_max_m);
}
@media screen and (max-width: 600px) {
  .l-inner {
    width: 100%;
    padding: 0 1rem;
  }
}
.l-inner--ss {
  max-width: var(--width-contents_max_ss);
}
.l-inner--s {
  max-width: var(--width-contents_max_s);
}
.l-inner--l {
  max-width: var(--width-contents_max_l);
}
.l-inner--xl {
  max-width: var(--width-contents_max_xl);
}

.l-outer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .l-outer {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.l-outer__side {
  width: 20%;
  max-width: var(--width-side-contents_max);
  border-right: 1px solid #707070;
}
@media screen and (max-width: 768px) {
  .l-outer__side {
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    border: none;
    position: sticky;
    top: var(--height-header);
    background-color: var(--color_white);
    z-index: 10;
  }
}
@media screen and (max-width: 600px) {
  .l-outer__side {
    top: var(--height-header_l);
  }
}
.l-outer__main {
  width: 80%;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
@media screen and (max-width: 768px) {
  .l-outer__main {
    width: 100%;
  }
}

.l-outer__side-list {
  padding: clamp(1rem, 0.1808252427rem + 3.4951456311vw, 4.375rem) clamp(1rem, 0.6359223301rem + 1.5533980583vw, 2.5rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(1rem, 0.6359223301rem + 1.5533980583vw, 2.5rem);
  position: sticky;
  top: var(--height-header);
}
@media screen and (max-width: 768px) {
  .l-outer__side-list {
    padding: 0.75rem 0.375rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    position: static;
    gap: 0.375rem;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .l-outer__side-list li {
    white-space: nowrap;
    background-color: #F5F5F5;
    border-radius: 6.25rem;
    padding: 0.75rem 1.25rem;
  }
}

.l-outer__side-link {
  font-size: clamp(0.75rem, 0.6589805825rem + 0.3883495146vw, 1.125rem);
  line-height: 1.4444444444;
  letter-spacing: 0;
  display: block;
  position: relative;
  color: var(--color-txt_sub);
}
.l-outer__side-link.is_active {
  color: var(--color-txt);
  font-weight: bold;
}

.l-section {
  position: relative;
  padding: clamp(3rem, 2.6662621359rem + 1.4239482201vw, 4.375rem) 0;
}
.l-section--top {
  padding-top: 0;
}
.l-section--pt2x {
  padding: clamp(3rem, 1.604368932rem + 5.9546925566vw, 8.75rem) 0;
}
@media screen and (max-width: 768px) {
  .l-section--pt2x {
    padding: clamp(2.25rem, 1.734223301rem + 2.2006472492vw, 4.375rem) 0;
  }
}
.l-section--notice {
  visibility: hidden;
  position: relative;
  padding: 5rem 0;
}
@media screen and (max-width: 1280px) {
  .l-section--notice {
    padding: clamp(2.25rem, 1.5825242718rem + 2.8478964401vw, 5rem) 0;
  }
}
@media screen and (max-width: 600px) {
  .l-section--notice {
    padding-top: 0px;
    margin-top: -3.75rem;
  }
}
.l-section--bg__bl {
  background-color: var(--color-body_bg);
}
.l-section--subscription {
  padding: 0;
}
.l-section--my {
  padding: 0;
  margin: clamp(2.5rem, 0.6796116505rem + 7.7669902913vw, 10rem) 0;
}
.l-section--what {
  padding: clamp(2.5rem, 1.2105582524rem + 5.501618123vw, 7.8125rem) 0 0;
}

body:has(#wpadminbar) .l-header {
  top: 2rem;
}
@media screen and (max-width: 782px) {
  body:has(#wpadminbar) .l-header {
    top: 2.875rem;
  }
}

@media screen and (max-width: 600px) {
  #wpadminbar {
    position: fixed;
  }
}

.c-accordion {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(1rem, 0.5145631068rem + 2.071197411vw, 3rem);
  width: 100%;
}

.c-accordion__box {
  border-top: 2px solid var(--color-border_l);
  border-bottom: 1px solid var(--color-border_l);
  background-color: var(--color_white);
  cursor: pointer;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.c-accordion__title {
  position: relative;
  display: grid;
  grid-template-columns: clamp(6.25rem, 5.2184466019rem + 4.4012944984vw, 10.5rem) auto 3.25rem;
  gap: clamp(1rem, 0.7572815534rem + 1.0355987055vw, 2rem);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  padding: clamp(1rem, 0.8786407767rem + 0.5177993528vw, 1.5rem) 0 clamp(1rem, 0.8786407767rem + 0.5177993528vw, 1.5rem) clamp(1rem, 0.7572815534rem + 1.0355987055vw, 2rem);
}
@media screen and (max-width: 480px) {
  .c-accordion__title {
    grid-template-columns: 5rem auto 3.25rem;
    gap: 0.5rem;
  }
}
.c-accordion__title p {
  font-size: clamp(0.875rem, 0.8143203883rem + 0.2588996764vw, 1.125rem);
  line-height: 1.6666666667;
  letter-spacing: 0.05em;
}
.c-accordion__title p span {
  color: #E83820;
  margin-left: clamp(1.5rem, 1.1359223301rem + 1.5533980583vw, 3rem);
}

.c-accordion__text {
  display: none;
  line-height: 1.8125;
}
.c-accordion__text p + p {
  margin-top: 1rem;
}
.c-accordion__text a {
  color: var(--color-key);
}

.c-accordion__text-row {
  display: grid;
  grid-template-columns: clamp(6.25rem, 5.2184466019rem + 4.4012944984vw, 10.5rem) auto;
  gap: clamp(1rem, 0.7572815534rem + 1.0355987055vw, 2rem);
  padding: clamp(1rem, 0.8786407767rem + 0.5177993528vw, 1.5rem) 0 clamp(1rem, 0.8786407767rem + 0.5177993528vw, 1.5rem) clamp(1rem, 0.7572815534rem + 1.0355987055vw, 2rem);
}
.c-accordion__text-row:nth-child(2n+1) {
  background-color: #F7F7F7;
}
@media screen and (max-width: 480px) {
  .c-accordion__text-row {
    grid-template-columns: 1fr;
  }
}

.c-accordion__btn {
  display: block;
  position: relative;
  width: 2rem;
  aspect-ratio: 1/1;
  border-radius: 50%;
  background-color: var(--color-key);
}
.c-accordion__btn::before, .c-accordion__btn::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 1rem;
  height: 0.125rem;
  background-color: var(--color_white);
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.c-accordion__btn::after {
  -webkit-transform: rotate(90deg) translate(-50%, -50%);
          transform: rotate(90deg) translate(-50%, -50%);
  -webkit-transform-origin: left top;
          transform-origin: left top;
}
.c-accordion__btn.is_open::after {
  -webkit-transform: rotate(0deg) translate(-50%, -50%);
          transform: rotate(0deg) translate(-50%, -50%);
}

/* details/summaryのデフォルト三角を消す */
.c-accordion__box > summary {
  list-style: none;
}

.c-accordion__box > summary::-webkit-details-marker {
  display: none;
}

/* クリック面は summary のみ。box 全体の pointer は外す */
.c-accordion__box {
  cursor: default;
}

/* 既存の pointer を打ち消し */
.c-accordion__title {
  cursor: pointer;
}

/* クリック手に戻す */
/* 閉じている時は .c-accordion__text を非表示、open時のみ表示 */
.c-accordion__text {
  display: none;
}

/* 既存と同じ指定でOK */
.c-accordion__box[open] .c-accordion__text {
  display: block;
}

/* フォーカスリングを summary(.c-accordion__title) で見やすく */
.c-accordion__title:focus-visible {
  outline: 2px solid var(--color-key);
  outline-offset: 2px;
}

/* プラス → マイナス化を open 属性で制御（is_openクラス不要） */
.c-accordion__box[open] .c-accordion__btn::after {
  -webkit-transform: rotate(0deg) translate(-50%, -50%);
          transform: rotate(0deg) translate(-50%, -50%);
}

/* （任意）スムース開閉：gridトリック
   ─ 使うなら block 表示の代わりに下2つに差し替え ─ */
.c-accordion__text {
  display: grid;
  grid-template-rows: 0fr;
  -webkit-transition: grid-template-rows 0.26s ease;
  transition: grid-template-rows 0.26s ease;
  transition: grid-template-rows 0.26s ease, -ms-grid-rows 0.26s ease;
}

.c-accordion__box[open] .c-accordion__text {
  grid-template-rows: 1fr;
}

.c-accordion__text > * {
  overflow: hidden;
}

.c-archive {
  margin: clamp(2rem, 1.5449029126rem + 1.9417475728vw, 3.875rem) 0;
  padding-bottom: clamp(3rem, 2.2415048544rem + 3.2362459547vw, 6.125rem);
}

.c-archive__heading {
  padding-bottom: clamp(2rem, 1.3932038835rem + 2.5889967638vw, 4.5rem);
}

.c-archive__wrap {
  padding-top: clamp(2.5rem, 1.802184466rem + 2.9773462783vw, 5.375rem);
}

.c-archive__category {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.5rem clamp(0.5rem, 0.3786407767rem + 0.5177993528vw, 1rem);
}

.c-archive__category-link {
  background-color: var(--color_white);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid var(--color-key);
  border-radius: 1rem;
  color: var(--color-key);
  padding: 0.1875rem 1.5rem;
  font-weight: 600;
}
@media (hover: hover) {
  .c-archive__category-link:where(:-webkit-any-link, :enabled, summary):hover {
    opacity: 1;
    color: var(--color_white);
    background-color: var(--color-key);
  }
}
.c-archive__category-link.is_current {
  color: var(--color_white);
  background-color: var(--color-key);
}

.c-archive__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(1rem, 0.2718446602rem + 3.1067961165vw, 4rem) clamp(1rem, 0.6055825243rem + 1.6828478964vw, 2.625rem);
  margin-top: clamp(2.5rem, 1.802184466rem + 2.9773462783vw, 5.375rem);
}
@media screen and (max-width: 768px) {
  .c-archive__list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 480px) {
  .c-archive__list {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }
}

.c-archive__item {
  background-color: var(--color_white);
  border-radius: 0.5rem;
  overflow: hidden;
}
.c-archive__item time {
  display: block;
  color: #9A98A2;
  font-size: clamp(0.75rem, 0.7196601942rem + 0.1294498382vw, 0.875rem);
  line-height: 1.2857142857;
  letter-spacing: 0.05em;
  font-weight: 500;
  white-space: nowrap;
}

.c-archive__item-cat {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.25rem;
}
.c-archive__item-cat li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.25rem clamp(0.75rem, 0.6589805825rem + 0.3883495146vw, 1.125rem);
  background-color: var(--color-key);
  border: 1px solid var(--color-key);
  border-radius: 1rem;
  color: var(--color_white);
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.4166666667;
  letter-spacing: 0.1em;
}

.c-archive__item-img {
  aspect-ratio: 339/193;
  background-color: var(--color_white);
}
.c-archive__item-img.noImage {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.c-archive__item-img.noImage img {
  width: 60%;
}
.c-archive__item-img img {
  width: 100%;
  aspect-ratio: 339/193;
  margin-bottom: 0;
}

.c-archive__item-box {
  padding: clamp(1rem, 0.9393203883rem + 0.2588996764vw, 1.25rem) clamp(1rem, 0.833131068rem + 0.71197411vw, 1.6875rem) clamp(1rem, 0.8786407767rem + 0.5177993528vw, 1.5rem) clamp(1rem, 0.833131068rem + 0.71197411vw, 1.6875rem);
}

.c-archive__item-box-upper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.5rem;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
}

.c-archive__item-box-title {
  margin-top: clamp(0.5rem, 0.3786407767rem + 0.5177993528vw, 1rem);
  font-size: clamp(0.875rem, 0.8446601942rem + 0.1294498382vw, 1rem);
  line-height: 1.8125;
  letter-spacing: 0.1em;
  font-weight: 600;
}

.c-breadcrumb {
  visibility: hidden;
  margin: clamp(1rem, 0.6359223301rem + 1.5533980583vw, 2.5rem) 0 0;
}

.c-breadcrumb__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.3125rem;
}

.c-breadcrumb__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.3125rem;
  font-family: "Noto Sans JP";
  font-weight: 500;
}
.c-breadcrumb__item::after {
  content: "＞";
}
.c-breadcrumb__item:last-child::after {
  content: none;
}
.c-breadcrumb__item a {
  color: var(--color-key);
}
.c-breadcrumb__item p {
  color: var(--color-disable);
}

.c-form--en {
  word-break: keep-all;
}
.c-form--en .c-form__label--required::after {
  content: "Required";
  width: 4.375rem;
}

.c-form__title {
  margin: 1rem auto 0;
  width: 100%;
  font-size: clamp(1.25rem, 1.067961165rem + 0.7766990291vw, 2rem);
  line-height: 1.34375;
  letter-spacing: 0.05em;
  font-weight: 700;
}

.c-form__text {
  margin: 1rem auto 0;
  width: 100%;
  font-size: clamp(0.875rem, 0.8446601942rem + 0.1294498382vw, 1rem);
  line-height: 2.1875;
  letter-spacing: 0.04em;
}

.c-form__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(1rem, 0.6359223301rem + 1.5533980583vw, 2.5rem);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  margin: clamp(1.5rem, 0.6504854369rem + 3.6245954693vw, 5rem) auto 0;
}
.c-form__box input[type=submit],
.c-form__box input[type=button] {
  padding: 0.6875rem 1.5rem 0.6875rem;
  line-height: 1;
}
.c-form__box input[type=button] {
  background: transparent 0% 0% no-repeat padding-box;
  border: 1px solid var(--color-txt);
  color: var(--color-txt);
}
.c-form__box--confirm .c-form__wrap {
  display: grid;
  grid-template-columns: 40% 60%;
  font-weight: 400;
}
@media screen and (max-width: 600px) {
  .c-form__box--confirm .c-form__wrap {
    grid-template-columns: 1fr;
  }
}

.c-form__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(0.5rem, 0.3786407767rem + 0.5177993528vw, 1rem);
  font-weight: 500;
}
.c-form__wrap--center {
  margin-top: clamp(1rem, 0.6359223301rem + 1.5533980583vw, 2.5rem);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.c-form__wrap .wpcf7-form-control.wpcf7-radio {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: clamp(1rem, 0.833131068rem + 0.71197411vw, 1.6875rem);
}
.c-form__wrap .wpcf7-list-item-label {
  font-weight: 400;
}

.c-form__label {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  gap: 1rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: clamp(1rem, 0.9696601942rem + 0.1294498382vw, 1.125rem);
  line-height: 1.6111111111;
  letter-spacing: 0.05em;
  font-weight: 500;
}
.c-form__label--required {
  display: inline-block;
}
.c-form__label--required::after {
  content: "必須";
  width: 3.4375rem;
  height: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: var(--color_white);
  background-color: #F45A45;
  font-size: clamp(0.875rem, 0.8446601942rem + 0.1294498382vw, 1rem);
  line-height: 1.25;
  letter-spacing: 0.05em;
  border-radius: 0.25rem;
  font-weight: 400;
}
@media screen and (max-width: 600px) {
  .c-form__label--note {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
    gap: 0.375rem;
  }
}
.c-form__label--note span {
  font-weight: 400;
  color: var(--color-disable);
}
.c-form__label--large {
  font-size: clamp(1rem, 0.9393203883rem + 0.2588996764vw, 1.25rem);
  line-height: 2;
  letter-spacing: 0.05em;
}

.c-form__btnWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: clamp(1rem, 0.7572815534rem + 1.0355987055vw, 2rem);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.c-form__btnWrap .wpcf7-spinner {
  display: none;
}
@media screen and (max-width: 600px) {
  .c-form__btnWrap {
    margin-top: 1rem;
  }
}

.mw_wp_form_confirm .c-form__privacy {
  display: none;
}

.c-form__text--center {
  text-align: center;
  margin-top: clamp(1rem, 0.7572815534rem + 1.0355987055vw, 2rem);
}

.c-form__privacyTextWrap {
  padding: clamp(1rem, 0.7572815534rem + 1.0355987055vw, 2rem);
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(1rem, 0.6359223301rem + 1.5533980583vw, 2.5rem);
  overflow: auto;
  max-height: clamp(9.375rem, 5.5825242718rem + 16.1812297735vw, 25rem);
  border: 1px solid var(--color-table_border_tr);
  border-radius: 0.3125rem;
}
.c-form__privacyTextWrap.scroll_none {
  max-height: unset;
  padding: 0;
  text-align: center;
  border: none;
}

.c-form__privacyText {
  font-size: clamp(0.875rem, 0.8446601942rem + 0.1294498382vw, 1rem);
  font-weight: 400;
  line-height: 2.3125;
  letter-spacing: 0.05em;
}

.c-form__privacyList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(1rem, 0.6359223301rem + 1.5533980583vw, 2.5rem);
}
.c-form__privacyList li ul {
  padding-left: 1em;
}

.c-form__privacyListItem {
  font-size: clamp(0.875rem, 0.8446601942rem + 0.1294498382vw, 1rem);
  font-weight: 400;
  line-height: 2.25;
  letter-spacing: 0;
}

.c-form__wrap input.wpcf7-not-valid,
.c-form__wrap textarea.wpcf7-not-valid,
.c-form__wrap select.wpcf7-not-valid {
  background-color: #fbebeb;
  border: 1px solid #eebbbc;
}

.wpcf7-not-valid input[type=radio] + span::before,
.wpcf7-not-valid input[type=checkbox] + span::before {
  border: 2px solid #eebbbc;
}

.wpcf7-not-valid-tip {
  margin-top: 0.25rem;
  color: #d74141;
  font-size: clamp(0.75rem, 0.7196601942rem + 0.1294498382vw, 0.875rem);
  font-weight: 400;
  line-height: 1.4285714286;
  letter-spacing: 0;
}

.wpcf7 form.invalid .wpcf7-response-output {
  text-align: center;
  border: 1px solid #eebbbc;
  background-color: #fbebeb;
  border-radius: 0.3125rem;
  color: #d74141;
  font-size: clamp(0.875rem, 0.8446601942rem + 0.1294498382vw, 1rem);
  font-weight: 600;
  line-height: 1.4444444444;
  letter-spacing: 0;
  padding: 0.625rem;
  font-weight: 400;
  margin: 0;
}

[data-class=wpcf7cf_group] .c-form__wrap {
  margin-top: clamp(1rem, 0.6359223301rem + 1.5533980583vw, 2.5rem);
}
[data-class=wpcf7cf_group] .c-form__wrap:first-child {
  margin-top: 0;
}

[data-id=form-corporation] .c-form__wrap {
  margin-top: clamp(1rem, 0.6359223301rem + 1.5533980583vw, 2.5rem) !important;
}

input.wpcf7-form-control.wpcf7-text.inquiry-details,
input.wpcf7-form-control.wpcf7-text.customer-type {
  position: absolute;
  top: 0;
  left: -50vw;
}

.page-template-page-contact .grecaptcha-badge,
.page-template-page-contact-en .grecaptcha-badge {
  display: block;
  bottom: clamp(4rem, 3.6966019417rem + 1.2944983819vw, 5.25rem) !important;
}

#autozip {
  display: none !important;
}

.c-hamburger {
  display: none;
  position: relative;
  z-index: 9999;
}
@media screen and (max-width: 1280px) {
  .c-hamburger {
    width: 1.625rem;
    cursor: pointer;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 0.3125rem;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    background: transparent;
    border: none;
    padding: 0;
  }
}
.c-hamburger span {
  background-color: var(--color-key);
  width: 100%;
  height: 0.0625rem;
  display: block;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.c-hamburger span:nth-child(2) {
  background-color: transparent;
  position: relative;
}
.c-hamburger span:nth-child(2)::before, .c-hamburger span:nth-child(2)::after {
  content: "";
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 0.0625rem;
  display: block;
  background-color: var(--color-key);
}
.c-hamburger.is_active span:first-child {
  opacity: 0;
}
.c-hamburger.is_active span:nth-child(2)::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.c-hamburger.is_active span:nth-child(2)::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.c-hamburger.is_active span:last-child {
  opacity: 0;
}

.c-title {
  margin-bottom: clamp(1.5rem, 1.3786407767rem + 0.5177993528vw, 2rem);
}
.c-title h2, .c-title h3, .c-title h4, .c-title h5, .c-title h6 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.25rem;
}
.c-title h2::after, .c-title h3::after, .c-title h4::after, .c-title h5::after, .c-title h6::after {
  content: attr(data-title);
  color: var(--color-key);
  font-family: "Roboto";
  font-size: clamp(0.75rem, 0.7196601942rem + 0.1294498382vw, 0.875rem);
  line-height: 1.4285714286;
  letter-spacing: 0.05em;
  font-weight: 400;
}
.c-title h2 {
  font-size: clamp(1.5rem, 1.3786407767rem + 0.5177993528vw, 2rem);
  line-height: 1.40625;
  letter-spacing: 0.05em;
  font-weight: 600;
}
.c-title h3 {
  font-size: clamp(1.25rem, 1.1893203883rem + 0.2588996764vw, 1.5rem);
  line-height: 1.40625;
  letter-spacing: 0.05em;
  font-weight: 600;
}
.c-title h4 {
  font-size: clamp(1.125rem, 1.0946601942rem + 0.1294498382vw, 1.25rem);
  line-height: 1.40625;
  letter-spacing: 0.05em;
  font-weight: 600;
}
.c-title h5 {
  font-size: clamp(1rem, 0.9696601942rem + 0.1294498382vw, 1.125rem);
  line-height: 1.40625;
  letter-spacing: 0.05em;
  font-weight: 600;
}
.c-title h6 {
  font-size: clamp(0.875rem, 0.8446601942rem + 0.1294498382vw, 1rem);
  line-height: 1.40625;
  letter-spacing: 0.05em;
  font-weight: 600;
}
.c-title--white .c-title__sub,
.c-title--white .c-title__main {
  color: var(--color_white) !important;
}
.c-title--white .c-title__main::before {
  background-color: var(--color_white);
}
.c-title--center {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

/* モーダル */
.modal-overlay {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(1, 1, 1, 0.7);
  z-index: 100;
}

.modal-container {
  max-height: 80vh;
  max-width: var(--width-modal_max);
  width: 90%;
  position: relative;
  background-color: #fff;
  border-radius: 1.75rem;
}

.modal-container--backgroundColorPt1 {
  background-color: #fff;
}

.modal-container--backgroundColorPt2 {
  background-color: rgba(255, 255, 255, 0.9);
}

.modal-close {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 2.5rem auto 0;
  cursor: pointer;
}
.modal-close:hover {
  opacity: 0.7;
}
.modal-close::after {
  content: none;
}
.modal-close::before {
  content: "";
  width: 1.5rem;
  height: 1.5rem;
  background-image: url(../img/common/icon_cross.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

/* モーダルアニメーション */
@-webkit-keyframes mmfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes mmfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes mmfadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes mmfadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@-webkit-keyframes mmslideIn {
  from {
    -webkit-transform: translateY(15%);
            transform: translateY(15%);
  }
  to {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes mmslideIn {
  from {
    -webkit-transform: translateY(15%);
            transform: translateY(15%);
  }
  to {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@-webkit-keyframes mmslideOut {
  from {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  to {
    -webkit-transform: translateY(-10%);
            transform: translateY(-10%);
  }
}
@keyframes mmslideOut {
  from {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  to {
    -webkit-transform: translateY(-10%);
            transform: translateY(-10%);
  }
}
.micromodal-slide {
  display: none;
}

.micromodal-slide.is-open {
  display: block;
}

.micromodal-slide[aria-hidden=false] .modal-overlay {
  -webkit-animation: mmfadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
          animation: mmfadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide[aria-hidden=false] .modal-container {
  -webkit-animation: mmslideIn 0.3s cubic-bezier(0, 0, 0.2, 1);
          animation: mmslideIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide[aria-hidden=true] .modal-overlay {
  -webkit-animation: mmfadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
          animation: mmfadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide[aria-hidden=true] .modal-container {
  -webkit-animation: mmslideOut 0.3s cubic-bezier(0, 0, 0.2, 1);
          animation: mmslideOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide .modal-container,
.micromodal-slide .modal-overlay {
  will-change: transform;
}

.c-modal {
  overflow: auto;
  max-height: 80vh;
}

.c-modal__wrap {
  padding: clamp(2rem, 1.6359223301rem + 1.5533980583vw, 3.5rem) clamp(1.5rem, 0.8932038835rem + 2.5889967638vw, 4rem);
}

.c-modal__box {
  font-family: "Noto Sans JP";
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.c-modal__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.5rem;
  width: 100%;
}
.c-modal__inner picture {
  width: 100%;
  overflow: hidden;
  border-radius: 0.625rem;
}
.c-modal__inner .c-modal__img {
  -o-object-fit: contain;
     object-fit: contain;
  margin: 0 auto;
}
.c-modal__inner .c-modal__img-sample {
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  margin: 0 auto;
}
.c-modal__inner .c-modal__title {
  font-size: 0.9375rem;
  line-height: 1.4;
  width: 100%;
}
.c-modal__inner .c-modal__text-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.4375rem;
  width: 100%;
}
.c-modal__inner .c-modal__text-sub {
  font-size: 0.8125rem;
  line-height: 1.4615384615;
  font-weight: bold;
}
.c-modal__inner .c-modal__text {
  font-size: 0.8125rem;
  line-height: 1.4615384615;
}
@media screen and (max-width: 768px) {
  .c-modal__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.c-pagination {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 5.375rem auto 0;
}

.c-pagination__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.3125rem;
}
.c-pagination__list li:has(.next) {
  margin-left: clamp(0.3125rem, -0.1425970874rem + 1.9417475728vw, 2.1875rem);
}
.c-pagination__list li:has(.prev) {
  margin-right: clamp(0.3125rem, -0.1425970874rem + 1.9417475728vw, 2.1875rem);
}

.page-numbers {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: clamp(2rem, 1.7269417476rem + 1.1650485437vw, 3.125rem);
  aspect-ratio: 1/1;
  color: var(--color-key);
  border: 1px solid var(--color-key);
  font-size: clamp(0.875rem, 0.8446601942rem + 0.1294498382vw, 1rem);
  line-height: 1.5;
  font-weight: 500;
}
.page-numbers.current {
  color: var(--color_white);
  background-color: var(--color-key);
}

.c-single {
  margin: clamp(2rem, 1.5449029126rem + 1.9417475728vw, 3.875rem) auto;
  padding-bottom: clamp(3rem, 2.2415048544rem + 3.2362459547vw, 6.125rem);
}

.c-single__inner {
  margin: clamp(2.5rem, 1.286407767rem + 5.1779935275vw, 7.5rem) 0;
}

.c-single__date {
  color: #9A98A2;
  font-family: "Roboto";
  font-size: clamp(0.75rem, 0.7196601942rem + 0.1294498382vw, 0.875rem);
  letter-spacing: 0.05em;
  line-height: 1.2857142857;
}

.c-single__title {
  margin-top: clamp(0.25rem, 0.1893203883rem + 0.2588996764vw, 0.5rem);
  font-size: clamp(1.125rem, 1.0339805825rem + 0.3883495146vw, 1.5rem);
  font-weight: 600;
  line-height: 1.6666666667;
  letter-spacing: 0.1em;
}

.c-single__category {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: clamp(0.25rem, 0.067961165rem + 0.7766990291vw, 1rem);
  margin-top: clamp(0.5rem, 0.3786407767rem + 0.5177993528vw, 1rem);
}
.c-single__category li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.25rem clamp(0.75rem, 0.6589805825rem + 0.3883495146vw, 1.125rem);
  background-color: var(--color-key);
  border: 1px solid var(--color-key);
  border-radius: 1rem;
  color: var(--color_white);
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.4166666667;
  letter-spacing: 0.1em;
}

.c-single__wrap {
  margin: clamp(2.5rem, 1.8932038835rem + 2.5889967638vw, 5rem) auto 0;
}

.c-single__navigation {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  max-width: 49.1875rem;
  margin: clamp(2.5rem, 1.286407767rem + 5.1779935275vw, 7.5rem) auto 0;
}
@media screen and (max-width: 600px) {
  .c-single__navigation {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media screen and (max-width: 600px) {
  .c-single__navigation-prev {
    grid-row: 1/2;
  }
}
.c-single__navigation-prev a {
  font-weight: 500;
  line-height: normal;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: clamp(0.5rem, 0.2572815534rem + 1.0355987055vw, 1.5rem);
}
@media screen and (max-width: 600px) {
  .c-single__navigation-prev a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}
.c-single__navigation-prev a::before {
  content: "";
  width: 3.75rem;
  height: 0.375rem;
  background-image: url(../img/common/icon_prev.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

@media screen and (max-width: 600px) {
  .c-single__navigation-back {
    margin-top: 1rem;
    grid-column: 1/3;
    grid-row: 2/3;
  }
}

@media screen and (max-width: 600px) {
  .c-single__navigation-next {
    grid-row: 1/2;
  }
}
.c-single__navigation-next a {
  font-weight: 500;
  line-height: normal;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: end;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: clamp(0.5rem, 0.2572815534rem + 1.0355987055vw, 1.5rem);
}
@media screen and (max-width: 600px) {
  .c-single__navigation-next a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: end;
  }
}
.c-single__navigation-next a::after {
  content: "";
  width: 3.75rem;
  height: 0.375rem;
  background-image: url(../img/common/icon_next.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

.c-tab {
  margin-top: clamp(2rem, 1.6359223301rem + 1.5533980583vw, 3.5rem);
}

.c-tab__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
}
.c-tab__list::before {
  content: "";
  width: 100%;
  height: 0.0625rem;
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: var(--color-border_l);
}
@media screen and (max-width: 768px) {
  .c-tab__list {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    padding: 0 2rem;
    overflow-x: auto;
  }
  .c-tab__list::before {
    content: "";
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    height: 0.0625rem;
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: var(--color-border_l);
  }
}

@media screen and (max-width: 768px) {
  .c-tab__list-large {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    padding: 0 2rem;
    overflow-x: auto;
  }
  .c-tab__list-large .c-tab__list {
    overflow-x: unset;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
  }
  .c-tab__list-large .c-tab__list::before {
    width: 100%;
    margin: 0;
  }
}

.c-tab__item {
  padding: 0.75rem clamp(1rem, 0.9393203883rem + 0.2588996764vw, 1.25rem) 1.125rem;
  min-width: clamp(6.25rem, 4.7936893204rem + 6.213592233vw, 12.25rem);
  font-size: clamp(0.875rem, 0.8446601942rem + 0.1294498382vw, 1rem);
  line-height: 1.5;
  color: var(--color-txt_sub);
  text-align: center;
  cursor: pointer;
  position: relative;
  white-space: nowrap;
}
.c-tab__item.is_active {
  font-weight: bold;
  color: var(--color-txt);
}
.c-tab__item.is_active::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.0625rem;
  background-color: var(--color-txt);
}
@media screen and (max-width: 600px) {
  .c-tab__item {
    min-width: 3.75rem;
  }
}

.c-tab__box {
  margin-top: 2rem;
}

.c-tab__body {
  display: none;
}
.c-tab__body.is_active {
  display: block;
}

.c-tab__body-note {
  margin-top: 1.25rem;
  font-size: clamp(0.6875rem, 0.6723300971rem + 0.0647249191vw, 0.75rem);
  line-height: 1.4166666667;
  padding-left: 1.2em;
  text-indent: -1.3em;
}
.c-tab__body-note + .c-tab__body-note {
  margin-top: 0;
}

.c-tab__body-text {
  font-size: clamp(0.8125rem, 0.7821601942rem + 0.1294498382vw, 0.9375rem);
  line-height: 1.8;
}
.c-heading-circle + .c-tab__body-text {
  margin-top: clamp(1rem, 0.9393203883rem + 0.2588996764vw, 1.25rem);
}

.c-tab__body-item {
  margin-top: 2rem;
}

.c-tab__body-list {
  margin-top: clamp(1rem, 0.9393203883rem + 0.2588996764vw, 1.25rem);
  display: grid;
  grid-auto-flow: column;
  grid-template-rows: repeat(6, auto);
  gap: 0.75rem 0.625rem;
  border: 1px solid var(--color-table_border);
  padding: clamp(1rem, 0.9393203883rem + 0.2588996764vw, 1.25rem);
  border-radius: 0.25rem;
}
@media screen and (max-width: 768px) {
  .c-tab__body-list {
    grid-auto-flow: row;
  }
}
.c-tab__body-list.column-1 {
  grid-auto-flow: row;
  grid-template-rows: auto;
}

.c-tab__body-list-item {
  display: grid;
  grid-template-columns: clamp(2rem, 1.8786407767rem + 0.5177993528vw, 2.5rem) auto;
  padding-bottom: clamp(0.625rem, 0.5643203883rem + 0.2588996764vw, 0.875rem);
  border-bottom: 1px dashed var(--color-table_border);
  font-size: clamp(0.8125rem, 0.7973300971rem + 0.0647249191vw, 0.875rem);
  line-height: 1.4285714286;
}
.c-tab__body-list-item.border-none {
  border-bottom: none;
  padding-bottom: 0;
}
.c-tab__body-list-item.border-none--sp {
  border-bottom: 1px dashed var(--color-table_border);
}
@media screen and (max-width: 768px) {
  .c-tab__body-list-item.border-none--sp {
    border-bottom: none;
  }
}
.c-tab__body-list-item.border-none--pc {
  border-bottom: none;
}
@media screen and (max-width: 768px) {
  .c-tab__body-list-item.border-none--pc {
    padding-bottom: clamp(0.625rem, 0.5643203883rem + 0.2588996764vw, 0.875rem);
    border-bottom: 1px dashed var(--color-table_border);
  }
}
.no_number .c-tab__body-list-item {
  grid-template-columns: 1.25rem auto;
}
.no_number .c-tab__body-list-item span {
  color: var(--color-key);
}

.c-tab__body-gallery {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem clamp(0.6875rem, 0.5509708738rem + 0.5825242718vw, 1.25rem);
  margin-top: clamp(2rem, 1.7572815534rem + 1.0355987055vw, 3rem);
}
@media screen and (max-width: 600px) {
  .c-tab__body-gallery {
    grid-template-columns: repeat(2, 1fr);
  }
}
.c-tab__body-gallery.column-3 {
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(1.5rem, 1.4848300971rem + 0.0647249191vw, 1.5625rem);
  margin-top: 0;
}
@media screen and (max-width: 600px) {
  .c-tab__body-gallery.column-3 {
    grid-template-columns: 1fr;
  }
}
.c-tab__body-gallery.column-3 .c-tab__body-gallery-item p {
  font-size: 0.75rem;
  line-height: 1.4166666667;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.c-tab__body-gallery.column-3 .c-tab__body-gallery-item p span {
  margin-top: 0.25rem;
  font-size: 1.25rem;
  line-height: 1.25;
  font-weight: bold;
}
.c-tab__body-gallery img {
  width: 100%;
}

.c-tab__body-gallery-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5rem;
}
.c-tab__body-gallery-item p {
  font-size: clamp(0.625rem, 0.5946601942rem + 0.1294498382vw, 0.75rem);
  line-height: 1.4166666667;
}

.c-tab__flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  gap: clamp(1.125rem, 0.942961165rem + 0.7766990291vw, 1.875rem);
}
@media screen and (max-width: 600px) {
  .c-tab__flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.c-tab__flex div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
  font-size: clamp(0.8125rem, 0.7821601942rem + 0.1294498382vw, 0.9375rem);
  line-height: 1.8;
  letter-spacing: 0;
  width: 100%;
  max-width: 46.875rem;
}
@media screen and (max-width: 600px) {
  .c-tab__flex div {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.c-tab__flex div a {
  color: var(--color-key);
}
.c-tab__flex div .p-products__note {
  margin-top: 0.25rem;
}
@media screen and (max-width: 600px) {
  .c-tab__flex div .p-products__note {
    margin-right: auto;
  }
}

.c-search-form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  margin: 0 auto 2rem;
  max-width: 37.5rem;
  width: 100%;
}

.c-search-form__input::-webkit-input-placeholder {
  color: inherit;
}

.c-search-form__input::-moz-placeholder {
  color: inherit;
}

.c-search-form__input:-ms-input-placeholder {
  color: inherit;
}

.c-search-form__input::-ms-input-placeholder {
  color: inherit;
}

.c-search-form__input::placeholder {
  color: inherit;
}

input[type=submit].c-search-form__btn {
  height: 2.5rem;
  line-height: inherit;
}

.c-registration-banner {
  width: 100%;
}

.c-registration-banner__img {
  display: block;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

:root {
  --border-thickness_s: 3px;
  --border-thickness_m: 4px;
  --border-thickness_l: 5px;
}

.c-qr-code {
  --border-thickness: var(--border-thickness_l);
}
@media screen and (max-width: 1280px) {
  .c-qr-code {
    --border-thickness: var(--border-thickness_m);
  }
}
@media screen and (max-width: 1024px) {
  .c-qr-code {
    --border-thickness: var(--border-thickness_s);
  }
}
@media (hover: hover) {
  .c-qr-code a:where(:-webkit-any-link, :enabled, summary):hover {
    opacity: 1;
  }
}

.c-qr-code__link {
  padding: clamp(1.125rem, 1.0946601942rem + 0.1294498382vw, 1.25rem) clamp(0.375rem, -0.0806482183rem + 1.213040182vw, 1.375rem) clamp(1.125rem, 1.0946601942rem + 0.1294498382vw, 1.25rem) clamp(0.625rem, 0.3971758908rem + 0.606520091vw, 1.125rem);
  display: grid;
  grid-template-columns: 450fr 411fr;
  gap: clamp(0.75rem, -0.2467304776rem + 2.653525398vw, 2.9375rem);
  position: relative;
  background: var(--color_white);
  border: var(--border-thickness) solid var(--color-txt_s);
}
@media screen and (max-width: 600px) {
  .c-qr-code__link {
    grid-template-columns: 1fr;
    padding: clamp(1.125rem, 1.0946601942rem + 0.1294498382vw, 1.25rem) clamp(0.875rem, 0.7536407767rem + 0.5177993528vw, 1.375rem) clamp(1.125rem, 1.0946601942rem + 0.1294498382vw, 1.25rem) clamp(0.875rem, 0.8143203883rem + 0.2588996764vw, 1.125rem);
    gap: clamp(0.75rem, 0.2190533981rem + 2.2653721683vw, 2.9375rem);
  }
}
.c-qr-code__link::before, .c-qr-code__link::after {
  content: "";
  position: absolute;
  background-color: var(--color-txt_s);
  top: calc(var(--border-thickness) * -1);
}
.c-qr-code__link::before {
  left: calc(var(--border-thickness) * -1);
  width: 0;
  height: var(--border-thickness);
}
.c-qr-code__link::after {
  right: calc(var(--border-thickness) * -1);
  width: var(--border-thickness);
  height: 0;
}
@media (hover: hover) {
  .c-qr-code__link:where(:-webkit-any-link, :enabled, summary):hover {
    border-color: transparent;
  }
  .c-qr-code__link:where(:-webkit-any-link, :enabled, summary):hover:before {
    width: calc(100% + var(--border-thickness));
    -webkit-transition: width 0.2s;
    transition: width 0.2s;
  }
  .c-qr-code__link:where(:-webkit-any-link, :enabled, summary):hover:after {
    height: calc(100% + var(--border-thickness));
    -webkit-transition: height 0.15s 0.2s;
    transition: height 0.15s 0.2s;
  }
  .c-qr-code__link:where(:-webkit-any-link, :enabled, summary):hover .c-qr-code__hover-border::before {
    width: calc(100% + var(--border-thickness));
    -webkit-transition: width 0.2s 0.35s;
    transition: width 0.2s 0.35s;
  }
  .c-qr-code__link:where(:-webkit-any-link, :enabled, summary):hover .c-qr-code__hover-border::after {
    height: calc(100% + var(--border-thickness));
    -webkit-transition: height 0.15s 0.55s;
    transition: height 0.15s 0.55s;
  }
}

.c-qr-code__hover-border {
  position: absolute;
  inset: 0;
  pointer-events: none;
}
.c-qr-code__hover-border::before, .c-qr-code__hover-border::after {
  content: "";
  position: absolute;
  background-color: var(--color-txt_s);
}
.c-qr-code__hover-border::before {
  bottom: calc(var(--border-thickness) * -1);
  right: calc(var(--border-thickness) * -1);
  width: 0;
  height: var(--border-thickness);
}
.c-qr-code__hover-border::after {
  bottom: calc(var(--border-thickness) * -1);
  left: calc(var(--border-thickness) * -1);
  width: var(--border-thickness);
  height: 0;
}

.c-qr-code__heading {
  position: absolute;
  top: -0.3125rem;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  padding: 0.25rem clamp(1.125rem, 0.9353762136rem + 0.8090614887vw, 1.90625rem);
  border-radius: 1.5rem;
  background: var(--color-background_f);
  text-align: center;
  text-wrap: nowrap;
  color: var(--color_white);
  font-size: clamp(0.875rem, 0.7233009709rem + 0.6472491909vw, 1.5rem);
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 0.1em;
}
.c-qr-code__heading:before {
  content: "";
  position: absolute;
  bottom: clamp(-0.6875rem, -0.4544902913rem - 0.1941747573vw, -0.5rem);
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 6px solid transparent;
  border-left: 6px solid transparent;
  border-top: 13px solid #01ba4d;
  border-bottom: 0;
  z-index: -1;
}

.c-qr-code__left-item {
  display: grid;
  grid-template-columns: clamp(3.8125rem, 2.5879454132rem + 3.260045489vw, 6.5rem) 1fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(0.5rem, 0.2436978772rem + 0.6823351024vw, 1.0625rem);
}
@media screen and (max-width: 600px) {
  .c-qr-code__left-item {
    grid-template-columns: clamp(3.875rem, 3.2378640777rem + 2.7184466019vw, 6.5rem) 1fr;
    gap: clamp(0.9375rem, 0.9071601942rem + 0.1294498382vw, 1.0625rem);
  }
}

.c-qr-code__line-logo-img-wrap {
  width: 100%;
}

.c-qr-code__title {
  color: var(--color-txt_s);
  font-size: clamp(1rem, 0.6013078089rem + 1.0614101592vw, 1.875rem);
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 600px) {
  .c-qr-code__title {
    font-size: clamp(1.125rem, 0.942961165rem + 0.7766990291vw, 1.875rem);
  }
}

.c-qr-code__right-item {
  display: grid;
  grid-template-columns: 1fr clamp(4rem, 2.7184893859rem + 3.4116755118vw, 6.8125rem);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.625rem;
}
@media screen and (max-width: 600px) {
  .c-qr-code__right-item {
    grid-template-columns: 1fr clamp(4.625rem, 4.0940533981rem + 2.2653721683vw, 6.8125rem);
  }
}

.c-qr-code__text-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.c-qr-code__text {
  color: var(--color-txt_sub);
  font-size: clamp(0.75rem, 0.6360879454rem + 0.3032600455vw, 1rem);
  line-height: 1.875;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .c-qr-code__text {
    line-height: 1.7;
  }
}
@media screen and (max-width: 600px) {
  .c-qr-code__text {
    font-size: clamp(0.75rem, 0.6893203883rem + 0.2588996764vw, 1rem);
    line-height: 1.6666666667;
  }
}

.c-qr-code__text--bold {
  font-weight: 700;
}

.c-qr-code__qr-code-img-wrap {
  width: 100%;
}

.p-line__img {
  display: block;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-line__main-view {
  padding-top: clamp(2.5rem, 2.2724514563rem + 0.9708737864vw, 3.4375rem);
  position: relative;
  overflow: hidden;
}
.p-line__main-view:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../img/line/webp/main-view-background--pc-01.webp) no-repeat 50% 50%/cover;
  z-index: -5;
}
@media screen and (max-width: 600px) {
  .p-line__main-view:before {
    background: url(../img/line/webp/main-view-background--sp-01.webp) no-repeat 50% 50%/cover;
  }
}
.p-line__main-view:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../img/line/webp/main-view-background--pc-02.webp) no-repeat 50% 50%/cover;
  z-index: -1;
}
@media screen and (max-width: 600px) {
  .p-line__main-view:after {
    width: clamp(38.5rem, 37.0416666667rem + 6.2222222222vw, 39.375rem);
    top: -2.375rem;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    height: auto;
    aspect-ratio: 616/179;
    background: url(../img/line/webp/main-view-background--sp-02.webp) no-repeat 50% 50%/cover;
  }
}

.p-line__main-view__inner {
  margin: 0 auto;
  width: 90%;
  max-width: var(--width-contents_max_m);
}
@media screen and (max-width: 600px) {
  .p-line__main-view__inner {
    width: 100%;
    padding: 0 0.53125rem;
  }
}

.p-line__main-view__contents {
  padding: clamp(2rem, 1.3450056861rem + 1.7437452616vw, 3.4375rem) clamp(1.75rem, 1.2373957544rem + 1.3646702047vw, 2.875rem) 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  position: relative;
}
@media screen and (max-width: 600px) {
  .p-line__main-view__contents {
    padding: 0;
  }
}
.p-line__main-view__contents:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--color-background_g);
  border-radius: 8.75rem 8.75rem 0 0;
  z-index: -4;
}
@media screen and (max-width: 1024px) {
  .p-line__main-view__contents:before {
    border-radius: 7.5rem 7.5rem 0 0;
  }
}
@media screen and (max-width: 768px) {
  .p-line__main-view__contents:before {
    border-radius: 5.9375rem 5.9375rem 0 0;
  }
}
@media screen and (max-width: 600px) {
  .p-line__main-view__contents:before {
    display: none;
  }
}
.p-line__main-view__contents:after {
  content: "";
  position: absolute;
  top: clamp(0.8125rem, 0.6416319181rem + 0.4548900682vw, 1.1875rem);
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: calc(100% - clamp(0.625rem, 0.5680439727rem + 0.1516300227vw, 0.75rem) * 2);
  height: calc(100% - clamp(0.8125rem, 0.6416319181rem + 0.4548900682vw, 1.1875rem));
  border-radius: 7.5rem 7.5rem 0 0;
  background-color: var(--color-background_h);
  z-index: -3;
}
@media screen and (max-width: 1024px) {
  .p-line__main-view__contents:after {
    border-radius: 6.4375rem 6.4375rem 0 0;
  }
}
@media screen and (max-width: 768px) {
  .p-line__main-view__contents:after {
    border-radius: 5.0625rem 5.0625rem 0 0;
  }
}
@media screen and (max-width: 600px) {
  .p-line__main-view__contents:after {
    display: none;
  }
}

.p-line__main-view__top-items {
  padding: clamp(1.375rem, 1.1756539045rem + 0.5307050796vw, 1.8125rem) clamp(1.875rem, -0.1469389689rem + 5.3828658074vw, 6.3125rem) clamp(1.4375rem, 1.2381539045rem + 0.5307050796vw, 1.875rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
}
@media screen and (max-width: 600px) {
  .p-line__main-view__top-items {
    padding: clamp(2.4375rem, 1.7083333333rem + 3.1111111111vw, 2.875rem) clamp(0.625rem, 0.4166666667rem + 0.8888888889vw, 0.75rem) clamp(1.5rem, 0.9791666667rem + 2.2222222222vw, 1.8125rem);
    gap: clamp(0.5rem, 0.2916666667rem + 0.8888888889vw, 0.625rem);
  }
}
.p-line__main-view__top-items:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 6.25rem 6.25rem 0 0;
  background-color: var(--color-background_i);
  z-index: -2;
}
@media screen and (max-width: 1024px) {
  .p-line__main-view__top-items:before {
    border-radius: 5.375rem 5.375rem 0 0;
  }
}
@media screen and (max-width: 768px) {
  .p-line__main-view__top-items:before {
    border-radius: 4.25rem 4.25rem 0 0;
  }
}
@media screen and (max-width: 600px) {
  .p-line__main-view__top-items:before {
    border-radius: 0;
  }
}

.p-line__main-view__top-item-top-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5em;
  color: var(--color-txt_sub);
  font-size: clamp(1.375rem, 1.2536407767rem + 0.5177993528vw, 1.875rem);
  font-weight: 700;
  line-height: 2.1333333333;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 600px) {
  .p-line__main-view__top-item-top-text {
    font-size: clamp(1.875rem, 1.7233009709rem + 0.6472491909vw, 2.5rem);
    line-height: 1.2;
  }
}

@media screen and (max-width: 600px) {
  .p-line__main-view__top-item-top-text--pc-only {
    display: none;
  }
}

.p-line__main-view__top-item-top-text--color {
  color: var(--color-background_a);
  font-weight: 900;
}

.p-line__main-view__top-item-center-text {
  margin-top: clamp(-0.9375rem, -0.9659780136rem + 0.0758150114vw, -0.875rem);
  color: var(--color-txt_sub);
  font-size: clamp(1.875rem, 1.7233009709rem + 0.6472491909vw, 2.5rem);
  font-weight: 900;
  line-height: 2.025;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 600px) {
  .p-line__main-view__top-item-center-text {
    margin-top: 0;
    line-height: 1.2;
  }
}

.p-line__main-view__top-item-center-text--small {
  font-size: clamp(1.25rem, 1.1893203883rem + 0.2588996764vw, 1.5rem);
}

.p-line__main-view__top-item-bottom-text-img-wrap {
  max-width: 50.5rem;
  width: 100%;
}

.p-line__main-view__center-bottom-items-wrap {
  padding: clamp(2.1875rem, 1.6565533981rem + 2.2653721683vw, 4.375rem) clamp(1.125rem, -0.6406368461rem + 4.7005307051vw, 5rem) clamp(1.4375rem, 1.0127427184rem + 1.8122977346vw, 3.1875rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(1rem, 0.6359223301rem + 1.5533980583vw, 2.5rem);
  position: relative;
}
.p-line__main-view__center-bottom-items-wrap::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--color-background_j);
  z-index: -2;
}
@media screen and (max-width: 600px) {
  .p-line__main-view__center-bottom-items-wrap {
    padding-inline: clamp(1.25rem, 0.8333333333rem + 1.7777777778vw, 1.5rem);
  }
}

.p-line__main-view__center-items {
  padding: clamp(1.625rem, 1.3822815534rem + 1.0355987055vw, 2.625rem) clamp(0.6875rem, 0.4902912621rem + 0.8414239482vw, 1.5rem) clamp(1.0625rem, 0.9411407767rem + 0.5177993528vw, 1.5625rem);
  background-color: var(--color_white);
  border-radius: 0.5rem;
  border: 6px solid var(--color-background_b);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
}

.p-line__main-view__center-item-text {
  color: var(--color-background_b);
  font-size: clamp(1.375rem, 0.7985436893rem + 2.4595469256vw, 3.75rem);
  font-weight: 800;
  line-height: 1.1166666667;
  letter-spacing: 0.05em;
}

.p-line__main-view__center-item-text--small {
  display: inline-block;
  font-size: clamp(1rem, 0.6055825243rem + 1.6828478964vw, 2.625rem);
  line-height: 1;
}

.p-line__main-view__center-item-heading {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  max-width: clamp(10.25rem, 8.9605582524rem + 5.501618123vw, 15.5625rem);
  width: 100%;
  padding: clamp(0.140625rem, -0.0072815534rem + 0.6310679612vw, 0.75rem);
  background-color: var(--color-background_b);
  border-radius: 1.75rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: var(--color_white);
  font-size: clamp(1rem, 0.8786407767rem + 0.5177993528vw, 1.5rem);
  font-weight: 900;
  line-height: 1.4583333333;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 600px) {
  .p-line__main-view__center-item-heading {
    border-radius: 0.9375rem;
  }
}

.p-line__main-view__bottom-items {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 clamp(0.75rem, 0.6360879454rem + 0.3032600455vw, 1rem);
}
@media screen and (max-width: 600px) {
  .p-line__main-view__bottom-items {
    grid-template-columns: 1fr;
    gap: clamp(1rem, 0.7916666667rem + 0.8888888889vw, 1.125rem) clamp(0.75rem, 0.6360879454rem + 0.3032600455vw, 1rem);
  }
}

.p-line__main-view__bottom-item {
  padding: 0.4375rem 0.5rem 0.5rem;
  display: grid;
  grid-row: span 2;
  grid-template-rows: subgrid;
  gap: 0.4375rem;
  background-color: var(--color_white);
  border-radius: 0.5rem;
}

.p-line__main-view__bottom-item-heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  font-size: clamp(1rem, 0.8483009709rem + 0.6472491909vw, 1.625rem);
  font-weight: 900;
  line-height: 1.3846153846;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 600px) {
  .p-line__main-view__bottom-item-heading {
    line-height: 1.1875;
  }
}

.p-line__main-view__bottom-item-heading--left {
  color: var(--color-background_c);
}

.p-line__main-view__bottom-item-heading--right {
  color: var(--color-background_a);
}

.p-line__main-view__bottom-item-text-wrap {
  min-height: clamp(5.25rem, 3.8240291262rem + 6.0841423948vw, 11.125rem);
  color: var(--color_white);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (max-width: 600px) {
  .p-line__main-view__bottom-item-text-wrap {
    min-height: auto;
  }
}

.p-line__main-view__bottom-item-text-wrap--left {
  padding: clamp(0.4375rem, 0.1796116505rem + 1.1003236246vw, 1.5rem) clamp(1rem, 0.9089805825rem + 0.3883495146vw, 1.375rem);
  background-color: var(--color-background_c);
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: clamp(0.25rem, 0.0376213592rem + 0.9061488673vw, 1.125rem);
}
@media screen and (max-width: 600px) {
  .p-line__main-view__bottom-item-text-wrap--left {
    padding-top: clamp(0.625rem, 0.2083333333rem + 1.7777777778vw, 0.875rem);
  }
}

.p-line__main-view__bottom-item-text-wrap--right {
  padding: 0.625rem;
  background-color: var(--color-background_a);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 600px) {
  .p-line__main-view__bottom-item-text-wrap--right {
    padding: clamp(0.75rem, 0.3333333333rem + 1.7777777778vw, 1rem) clamp(1rem, 0.9089805825rem + 0.3883495146vw, 1.375rem);
  }
}

.p-line__main-view__bottom-item-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(0.1875rem, 0.1590219864rem + 0.0758150114vw, 0.25rem);
  font-size: clamp(1rem, 0.8786407767rem + 0.5177993528vw, 1.5rem);
  font-weight: 700;
  line-height: 1.3333333333;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 600px) {
  .p-line__main-view__bottom-item-text {
    gap: 0;
    line-height: 1.875;
    letter-spacing: 0.02em;
  }
}

.p-line__main-view__bottom-item-text--small {
  font-size: clamp(0.8125rem, 0.7063106796rem + 0.4530744337vw, 1.25rem);
  line-height: 1.6;
}
@media screen and (max-width: 600px) {
  .p-line__main-view__bottom-item-text--small {
    font-size: clamp(1rem, 0.8786407767rem + 0.5177993528vw, 1.5rem);
    line-height: 1.875;
  }
}

.p-line__main-view__bottom-item-note-text {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  font-size: clamp(0.625rem, 0.5339805825rem + 0.3883495146vw, 1rem);
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.05em;
}

.p-line__main-view__bottom-item-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(0.5rem, 0.3006539045rem + 0.5307050796vw, 0.9375rem);
}
@media screen and (max-width: 600px) {
  .p-line__main-view__bottom-item-list {
    gap: 0;
  }
}

.p-line__main-view__bottom-item-list-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: clamp(0.125rem, 0.1098300971rem + 0.0647249191vw, 0.1875rem);
  font-weight: 700;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 600px) {
  .p-line__main-view__bottom-item-list-item {
    letter-spacing: 0.02em;
  }
}

.p-line__main-view__bottom-item-list-item--counter {
  font-size: clamp(1rem, 0.8786407767rem + 0.5177993528vw, 1.5rem);
  line-height: 1.3333333333;
}
@media screen and (max-width: 600px) {
  .p-line__main-view__bottom-item-list-item--counter {
    line-height: 1.875;
  }
}

.p-line__main-view__bottom-item-list-item---text {
  font-size: clamp(0.8125rem, 0.7063106796rem + 0.4530744337vw, 1.25rem);
  line-height: 1.6;
}
@media screen and (max-width: 600px) {
  .p-line__main-view__bottom-item-list-item---text {
    font-size: clamp(1rem, 0.8786407767rem + 0.5177993528vw, 1.5rem);
    line-height: 1.875;
  }
}

@media screen and (max-width: 600px) {
  .p-line__main-view__bottom-item-list-item---text-pc-only {
    display: none;
  }
}

.p-line__benefits {
  padding: clamp(3.75rem, 2.8398058252rem + 3.8834951456vw, 7.5rem) 0;
  background-color: var(--color-background_d);
}

.p-line__benefits__section-title {
  color: var(--color-txt_m);
  text-align: center;
  font-size: clamp(1.25rem, 1.0527912621rem + 0.8414239482vw, 2.0625rem);
  font-weight: 700;
  line-height: 1.4545454545;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 600px) {
  .p-line__benefits__section-title {
    line-height: 1.6;
  }
}

.p-line__benefits__section-title--small {
  display: inline-block;
  color: var(--color-txt_sub);
  font-size: clamp(1.1875rem, 0.9902912621rem + 0.8414239482vw, 2rem);
  font-weight: 700;
  line-height: 1.5;
}
@media screen and (max-width: 600px) {
  .p-line__benefits__section-title--small {
    line-height: 1.6842105263;
  }
}

.p-line__benefits__section-title--strong {
  display: inline-block;
  color: var(--color-background_b);
  font-size: clamp(1.5rem, 1.2572815534rem + 1.0355987055vw, 2.5rem);
  font-weight: 700;
  line-height: 1.2;
}
@media screen and (max-width: 600px) {
  .p-line__benefits__section-title--strong {
    line-height: 1.3333333333;
  }
}

.p-line__benefits__list {
  margin-top: clamp(1.5rem, 1.2572815534rem + 1.0355987055vw, 2.5rem);
  width: 100%;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: clamp(1.125rem, 1.0036407767rem + 0.5177993528vw, 1.625rem) clamp(1.125rem, -0.6288010426rem + 3.6490008688vw, 3.75rem);
}
@media screen and (max-width: 768px) {
  .p-line__benefits__list {
    margin-inline: auto;
    max-width: 33.75rem;
    grid-template-columns: 1fr;
  }
}

.p-line__benefits__list-item {
  padding: clamp(1.25rem, 1.1589805825rem + 0.3883495146vw, 1.625rem) clamp(0.875rem, -1.5469157255rem + 5.0390964379vw, 4.5rem);
  background-color: var(--color_white);
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 3;
  justify-items: center;
  gap: 0;
}
@media screen and (max-width: 768px) {
  .p-line__benefits__list-item {
    padding: clamp(1.25rem, 1.1589805825rem + 0.3883495146vw, 1.625rem) clamp(0.9375rem, 0.072815534rem + 3.6893203883vw, 4.5rem);
  }
}

.p-line__benefits__item-number {
  padding: 0.125rem 0.75rem;
  border-radius: 1.25rem;
  border: 2px solid var(--color-background_b);
  max-width: 8.125rem;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: var(--color-background_b);
  text-align: center;
  font-family: "Roboto";
  font-size: clamp(0.875rem, 0.8446601942rem + 0.1294498382vw, 1rem);
  font-weight: 700;
  line-height: 1.3125;
  letter-spacing: 0.05em;
}

.p-line__benefits__item-number--number {
  font-size: clamp(1rem, 0.9393203883rem + 0.2588996764vw, 1.25rem);
  line-height: 1.05;
  letter-spacing: 0.05em;
}

.p-line__benefits__item-title-wrap {
  margin-top: clamp(0.5625rem, 0.4259708738rem + 0.5825242718vw, 1.125rem);
  padding-inline: clamp(0.125rem, -0.000271503rem + 0.2606429192vw, 0.3125rem);
  max-width: 23.5rem;
  width: 100%;
  display: grid;
  grid-template-columns: clamp(4.6875rem, 4.3082524272rem + 1.6181229773vw, 6.25rem) 1fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(0.875rem, 0.8446601942rem + 0.1294498382vw, 1rem);
}
@media screen and (max-width: 768px) {
  .p-line__benefits__item-title-wrap {
    max-width: 20.9375rem;
    padding-inline: 0.625rem;
  }
}

.p-line__benefits__item-icon-img-container {
  width: 100%;
  aspect-ratio: 1/1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.p-line__benefits__item-icon-img-wrap--01 {
  width: 100%;
}

.p-line__benefits__item-icon-img-wrap--02 {
  width: 98%;
}

.p-line__benefits__item-icon-img-wrap--03 {
  width: 100%;
}

.p-line__benefits__item-icon-img-wrap--04 {
  width: 98%;
}

.p-line__benefits__item-title {
  color: var(--color-background_b);
  text-align: center;
  font-size: clamp(1.125rem, 1.0188106796rem + 0.4530744337vw, 1.5625rem);
  font-weight: 700;
  line-height: 1.52;
  letter-spacing: 0.05em;
}

.p-line__benefits__item-title--strong {
  display: inline-block;
  font-size: clamp(1.625rem, 1.4733009709rem + 0.6472491909vw, 2.25rem);
  line-height: 1.1666666667;
}

.p-line__benefits__item-text {
  margin-top: 0.625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  text-align: center;
  font-size: clamp(0.875rem, 0.8446601942rem + 0.1294498382vw, 1rem);
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0.05em;
}

.p-line__registration {
  padding: clamp(3.5625rem, 2.697815534rem + 3.6893203883vw, 7.125rem) 0 clamp(3.75rem, 2.8398058252rem + 3.8834951456vw, 7.5rem);
  background-color: var(--color-background_e);
}

.p-line__registration__contents {
  margin-inline: auto;
  max-width: 60rem;
}

.p-line__registration__section-title {
  text-align: center;
  color: var(--color-txt_sub);
  font-size: clamp(0.875rem, 0.7233009709rem + 0.6472491909vw, 1.5rem);
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 600px) {
  .p-line__registration__section-title {
    line-height: 1.4375;
  }
}

.p-line__registration__section-title--strong {
  display: inline-block;
  color: var(--color-background_b);
  font-size: clamp(1.375rem, 1.1626213592rem + 0.9061488673vw, 2.25rem);
  line-height: 1;
}

.p-line__registration__section-title--color {
  color: var(--color-background_b);
}

.p-line__registration__c_registration-banner-wrap {
  margin-top: clamp(1.25rem, 0.9466019417rem + 1.2944983819vw, 2.5rem);
}

.p-line__registration__qr-code-wrap {
  margin-top: clamp(2.5rem, 2.2269417476rem + 1.1650485437vw, 3.625rem);
}

.p-line__detail {
  margin-top: clamp(2.625rem, 1.4417475728rem + 5.0485436893vw, 7.5rem);
}

.p-line__detail__section-title {
  text-align: center;
  font-size: clamp(1.1875rem, 0.9902912621rem + 0.8414239482vw, 2rem);
  font-weight: 500;
  line-height: 1.875;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 600px) {
  .p-line__detail__section-title {
    line-height: 1.7368421053;
  }
}

.p-line__detail__section-title--strong {
  display: inline-block;
  color: var(--color-background_b);
  font-size: clamp(1.5rem, 1.2572815534rem + 1.0355987055vw, 2.5rem);
  font-weight: 700;
  line-height: 1.25;
  position: relative;
}
.p-line__detail__section-title--strong:before {
  content: "";
  position: absolute;
  top: calc(100% + clamp(0.25rem, 0.2044902913rem + 0.1941747573vw, 0.4375rem));
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100%;
  aspect-ratio: 458/18;
  background: url(../img/line/detail-section-title-under-line.svg) no-repeat 50% 50%/cover;
}

.p-line__detail__list {
  margin-top: clamp(2.5rem, 2.2876213592rem + 0.9061488673vw, 3.375rem);
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: clamp(1.125rem, 1.0339805825rem + 0.3883495146vw, 1.5rem) clamp(0.9375rem, 0.7287141616rem + 0.4344048653vw, 1.25rem);
}
@media screen and (max-width: 768px) {
  .p-line__detail__list {
    grid-template-columns: 1fr;
    max-width: 33.75rem;
    margin-inline: auto;
  }
}

.p-line__detail__list-item {
  padding-bottom: clamp(0.8125rem, 0.6911407767rem + 0.5177993528vw, 1.3125rem);
  display: grid;
  grid-row: span 3;
  grid-template-rows: subgrid;
  gap: 0;
  border-radius: 0.5rem;
  border: 3px solid var(--color-background_b);
  background: var(--color_white);
}

.p-line__detail__item-title {
  padding: clamp(0.5rem, 0.3483009709rem + 0.6472491909vw, 1.125rem) clamp(0.5rem, 0.4089805825rem + 0.3883495146vw, 0.875rem) clamp(0.6875rem, 0.5358009709rem + 0.6472491909vw, 1.3125rem);
  background-color: var(--color-background_b);
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: var(--color_white);
  font-size: clamp(1.5rem, 1.4393203883rem + 0.2588996764vw, 1.75rem);
  font-weight: 700;
  line-height: 1.2857142857;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 600px) {
  .p-line__detail__item-title {
    line-height: 1.1666666667;
  }
}

.p-line__detail__item-detail-heading {
  margin-top: clamp(1rem, 0.8786407767rem + 0.5177993528vw, 1.5rem);
  font-size: clamp(0.875rem, 0.8143203883rem + 0.2588996764vw, 1.125rem);
  font-weight: 500;
  line-height: 1.5555555556;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 600px) {
  .p-line__detail__item-detail-heading {
    line-height: 2;
  }
}

.p-line__detail__item-detail-heading,
.p-line__detail__item-detail-media {
  padding-inline: clamp(1.5625rem, 1.380461165rem + 0.7766990291vw, 2.3125rem);
}

.p-line__detail__item-detail-media {
  margin-top: clamp(0.6875rem, 0.3689320388rem + 1.359223301vw, 2rem);
  display: grid;
  grid-template-columns: clamp(5rem, 3.786407767rem + 5.1779935275vw, 10rem) 1fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(1rem, 0.4690533981rem + 2.2653721683vw, 3.1875rem);
}
@media screen and (max-width: 600px) {
  .p-line__detail__item-detail-media {
    grid-template-columns: 1fr;
  }
}

.p-line__detail__item-img-wrap {
  width: 100%;
}
@media screen and (max-width: 600px) {
  .p-line__detail__item-img-wrap {
    display: none;
  }
}

.p-line__detail__item-detail-list-wrap {
  height: 100%;
  padding: clamp(0.875rem, 0.8598300971rem + 0.0647249191vw, 0.9375rem) clamp(0.625rem, 0.5339805825rem + 0.3883495146vw, 1rem);
  background-color: var(--color-background_e);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
}

.p-line__detail__item-detail-list-heading {
  padding: 0.1875rem 0.9375rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 3.4375rem;
  border: 1px solid var(--color-background_b);
  background: var(--color_white);
  color: var(--color-background_b);
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.2857142857;
  letter-spacing: 0.05em;
}

.p-line__detail__item-detail-list {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.25rem;
}

.p-line__detail__item-detail-list-item,
.p-line__detail__item-detail-list-item--number {
  font-size: 0.875rem;
  line-height: 1.5;
  letter-spacing: 0.02em;
  word-break: break-word;
}

.p-line__detail__item-detail-list-item {
  position: relative;
  padding-left: clamp(0.8125rem, 0.7669902913rem + 0.1941747573vw, 1rem);
}
.p-line__detail__item-detail-list-item::before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
  font-size: 1em;
}

.p-line__detail__item-detail-list-item--number {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0.125rem;
}

.p-line__campaign {
  margin-top: clamp(3.75rem, 2.8398058252rem + 3.8834951456vw, 7.5rem);
  padding: clamp(3.75rem, 2.8398058252rem + 3.8834951456vw, 7.5rem) 0 clamp(2.4375rem, 1.8458737864rem + 2.5242718447vw, 4.875rem);
  position: relative;
}
.p-line__campaign:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../img/line/webp/campaign-background.webp) no-repeat 50% 50%/cover;
  z-index: -1;
}

.p-line__campaign__contents {
  padding: clamp(1.5rem, 1.3786407767rem + 0.5177993528vw, 2rem) clamp(0.625rem, -0.2851941748rem + 3.8834951456vw, 4.375rem);
  background-color: var(--color_white);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.p-line__campaign__heading {
  padding: clamp(0.1875rem, 0.1723300971rem + 0.0647249191vw, 0.25rem) clamp(1.125rem, 1.0339805825rem + 0.3883495146vw, 1.5rem);
  border-radius: 0.5rem;
  border: 4px solid var(--color-txt_a);
  background: var(--color-background_e);
  color: var(--color-txt_a);
  text-align: center;
  font-size: clamp(1rem, 0.8786407767rem + 0.5177993528vw, 1.5rem);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.07em;
  position: relative;
}
@media screen and (max-width: 600px) {
  .p-line__campaign__heading {
    border: 3px solid var(--color-txt_a);
  }
}
.p-line__campaign__heading::before, .p-line__campaign__heading::after {
  content: "";
  position: absolute;
  width: clamp(1.25rem, 1.1438106796rem + 0.4530744337vw, 1.6875rem);
  aspect-ratio: 1/1;
  left: 50%;
  -webkit-transform: translateX(-50%) rotate(45deg);
          transform: translateX(-50%) rotate(45deg);
}
.p-line__campaign__heading::before {
  bottom: clamp(-1.0625rem, -0.7895659591rem - 0.2274450341vw, -0.875rem);
  background: var(--color-txt_a);
}
@media screen and (max-width: 600px) {
  .p-line__campaign__heading::before {
    bottom: clamp(-0.8125rem, -0.6458333333rem - 0.4444444444vw, -0.75rem);
  }
}
.p-line__campaign__heading::after {
  bottom: clamp(-0.75rem, -0.4770659591rem - 0.2274450341vw, -0.5625rem);
  background: var(--color-background_e);
}
@media screen and (max-width: 600px) {
  .p-line__campaign__heading::after {
    bottom: clamp(-0.5625rem, -0.3958333333rem - 0.4444444444vw, -0.5rem);
  }
}

.p-line__campaign__heading-text {
  position: relative;
  z-index: 1;
}

.p-line__campaign__heading--text-small {
  position: relative;
  display: inline-block;
  font-size: clamp(0.75rem, 0.6893203883rem + 0.2588996764vw, 1rem);
  line-height: 1.875;
  letter-spacing: 0.07em;
}

.p-line__campaign__section-title {
  margin-top: clamp(1.5rem, 1.317961165rem + 0.7766990291vw, 2.25rem);
  padding-inline: clamp(3rem, 2.651092233rem + 1.4886731392vw, 4.4375rem) clamp(2.6875rem, 2.3841019417rem + 1.2944983819vw, 3.9375rem);
  text-align: center;
  color: var(--color-txt_sub);
  font-size: clamp(0.875rem, 0.6626213592rem + 0.9061488673vw, 1.75rem);
  font-weight: 500;
  line-height: 1.4285714286;
  letter-spacing: 0.1em;
  position: relative;
}
@media screen and (max-width: 600px) {
  .p-line__campaign__section-title {
    line-height: 1.5;
  }
}
.p-line__campaign__section-title:before, .p-line__campaign__section-title:after {
  content: "";
  position: absolute;
  bottom: clamp(-0.25rem, -0.1723300971rem - 0.0647249191vw, -0.1875rem);
}
.p-line__campaign__section-title:before {
  left: 0;
  width: clamp(2.125rem, 1.8671116505rem + 1.1003236246vw, 3.1875rem);
  aspect-ratio: 54/75;
  background: url(../img/line/campaign-section-title-line--left.svg) no-repeat 50% 50%/cover;
}
.p-line__campaign__section-title:after {
  right: 0;
  width: clamp(1.9375rem, 1.7099514563rem + 0.9708737864vw, 2.875rem);
  aspect-ratio: 49/75;
  background: url(../img/line/campaign-section-title-line--right.svg) no-repeat 50% 50%/cover;
}

.p-line__campaign__section-title--strong {
  display: inline-block;
  color: var(--color-txt_a);
  font-size: clamp(1.875rem, 1.6019417476rem + 1.1650485437vw, 3rem);
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width: 1366px) {
  .p-line__campaign__section-title--strong {
    line-height: 1.3333333333;
  }
}
@media screen and (max-width: 600px) {
  .p-line__campaign__section-title--strong {
    line-height: 1.4;
  }
}

.p-line__campaign__section-title--color {
  display: inline-block;
  color: var(--color-txt_a);
  font-size: clamp(1.4375rem, 1.2402912621rem + 0.8414239482vw, 2.25rem);
  font-weight: 700;
  line-height: 1.1111111111;
}

.p-line__campaign__section-title--small {
  display: inline-block;
  font-size: clamp(0.75rem, 0.567961165rem + 0.7766990291vw, 1.5rem);
  line-height: 1.3333333333;
}

.p-line__campaign__campaign-banner-wrap {
  width: 100%;
  margin-top: clamp(1.25rem, 1.067961165rem + 0.7766990291vw, 2rem);
}

.p-line__campaign__qr-code-wrap {
  width: 100%;
  margin-top: clamp(2.5rem, 2.2269417476rem + 1.1650485437vw, 3.625rem);
}

.p-line__lower-cta-section-wrap {
  margin-top: clamp(2rem, -3.3538665656rem + 14.253222138vw, 13.75rem);
}
@media screen and (max-width: 600px) {
  .p-line__lower-cta-section-wrap {
    margin-top: 0;
  }
}

.u-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.u-grid {
  display: grid;
}

.u-uppercase {
  text-transform: uppercase;
}

.u-capitalize {
  text-transform: capitalize;
}

.u-textCenter {
  text-align: center;
}

.u-bold {
  font-weight: bold;
}

.u-justify-center.u-justify-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media screen and (max-width: 600px) {
  .is-pcOnly {
    display: none;
  }
}

@media screen and (max-width: 480px) {
  .is-pc2Only {
    display: none;
  }
}

.is-spOnly {
  display: none;
}
@media screen and (max-width: 600px) {
  .is-spOnly {
    display: block;
  }
}

.is-ssmOnly {
  display: none;
}
@media screen and (max-width: 480px) {
  .is-ssmOnly {
    display: block;
  }
}

@media screen and (max-width: 1366px) {
  .is-overPc {
    display: none;
  }
}

.is-underPc {
  display: none;
}
@media screen and (max-width: 1366px) {
  .is-underPc {
    display: block;
  }
}

@media screen and (max-width: 1280px) {
  .is-overXxl {
    display: none;
  }
}

.is-underXxl {
  display: none;
}
@media screen and (max-width: 1280px) {
  .is-underXxl {
    display: block;
  }
}

@media screen and (max-width: 1024px) {
  .is-overXl {
    display: none;
  }
}

.is-underXl {
  display: none;
}
@media screen and (max-width: 1024px) {
  .is-underXl {
    display: block;
  }
}

@media screen and (max-width: 768px) {
  .is-overMd {
    display: none;
  }
}

.is-underMd {
  display: none;
}
@media screen and (max-width: 768px) {
  .is-underMd {
    display: block;
  }
}

.is-fixed {
  overflow: hidden !important;
}

@media screen and (max-width: 1100px) {
  .is-customBr--01 {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .is-customBr--01 {
    display: block;
  }
}
@media screen and (max-width: 480px) {
  .is-customBr--01 {
    display: none;
  }
}

@media screen and (max-width: 812px) {
  .is-customBr--02 {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .is-customBr--02 {
    display: block;
  }
}

@media screen and (max-width: 1024px) {
  .is-customBr--03 {
    display: none;
  }
}
@media screen and (max-width: 600px) {
  .is-customBr--03 {
    display: block;
  }
}
@media screen and (max-width: 392px) {
  .is-customBr--03 {
    display: none;
  }
}

.is-customBr--04 {
  display: none;
}
@media screen and (max-width: 785px) {
  .is-customBr--04 {
    display: block;
  }
}
@media screen and (max-width: 600px) {
  .is-customBr--04 {
    display: none;
  }
}

.is-customBr--05 {
  display: none;
}
@media screen and (max-width: 880px) {
  .is-customBr--05 {
    display: block;
  }
}
@media screen and (max-width: 600px) {
  .is-customBr--05 {
    display: none;
  }
}

.is-customBr--06 {
  display: none;
}
@media screen and (max-width: 1035px) {
  .is-customBr--06 {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  .is-customBr--06 {
    display: none;
  }
}
@media screen and (max-width: 600px) {
  .is-customBr--06 {
    display: block;
  }
}