@charset "UTF-8";
/*WEBフォントの読み込み*/
@import url("https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@400;500;700;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Murecho:wght@100..900&display=swap");
/*==============================================
/* 1. リセットCSS
/* normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css
/* ============================================= */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%; }

body {
  margin: 0;
  padding: 0; }

main {
  display: block; }

h1, h2, h3, h4, h5, h6 {
  margin: 0; }

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible; }

pre {
  font-family: monospace, monospace;
  font-size: 1em; }

a {
  background-color: transparent; }

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted; }

b,
strong {
  font-weight: bolder; }

code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

small {
  font-size: 80%; }

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

img {
  border-style: none; }

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0; }

button,
input {
  overflow: visible; }

button,
select {
  text-transform: none; }

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; }

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

fieldset {
  padding: 0.35em 0.75em 0.625em; }

legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal; }

progress {
  vertical-align: baseline; }

textarea {
  overflow: auto; }

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  padding: 0; }

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px; }

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit; }

details {
  display: block; }

summary {
  display: list-item; }

template {
  display: none; }

[hidden] {
  display: none; }

/*==============================================
/* 2. 要素スタイルの定義
/* ============================================= */
/*----------------------------*/
/*全要素
/*----------------------------*/
* {
  box-sizing: border-box; }

/*----------------------------*/
/*構造
/*----------------------------*/
body {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.0625rem;
  position: relative;
  line-height: 1.8;
  margin: 0;
  color: #333333;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%; }

@media screen and (max-width: 812px) {
  body {
    font-size: 0.875rem; } }
/*構造化タグのdisplay属性のブロック可*/
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

/* マーク・強調：figure*/
figure {
  margin: 1em 0; }

/*----------------------------*/
/*見出し
/*----------------------------*/
/* -- H2 --*/
h2 {
  font-size: 2.5rem;
  font-weight: 600; }

@media screen and (max-width: 812px) {
  h2 {
    font-size: 1.875rem; } }
/* -- H3 --*/
h3 {
  font-size: 2.1875rem;
  font-weight: 600; }

@media screen and (max-width: 812px) {
  h3 {
    font-size: 1.6875rem; } }
/* -- H4 --*/
h4 {
  font-size: 1.875rem;
  font-weight: 600; }

@media screen and (max-width: 812px) {
  h4 {
    font-size: 1.375rem; } }
/* -- H5 --*/
h5 {
  font-size: 1.5rem;
  font-weight: 600; }

@media screen and (max-width: 812px) {
  h5 {
    font-size: 1.125rem; } }
/* -- H6 --*/
h6 {
  font-size: 1.25rem;
  font-weight: 600; }

@media screen and (max-width: 812px) {
  h6 {
    font-size: 1rem; } }
/*----------------------------*/
/*リスト関連（UL/OL/DL）
/*----------------------------*/
/* -- UL：箇条書き --*/
ul {
  margin: 0;
  padding: 0;
  list-style: none;
  font-weight: 500; }

ul li {
  margin-left: 1.5em;
  list-style: disc;
  text-indent: 0px; }

li {
  margin-bottom: 0.5em; }
  li:last-child {
    margin-bottom: 0; }

/* -- OL：番号付きリスト -- */
ol {
  margin: 0;
  padding: 0;
  list-style: none;
  font-weight: 500; }

ol li {
  margin-left: 1.5em;
  list-style: decimal;
  text-indent: 0px; }

/* -- DL：説明リスト --*/
dl {
  margin: 0; }

dt {
  font-weight: bold; }

dd {
  box-sizing: border-box;
  padding-left: 0.8em;
  margin: 0; }

/*----------------------------*/
/*テーブル・表組（TABEL）
/*----------------------------*/
table {
  border-collapse: collapse;
  border-spacing: 0; }

table th, table td {
  border: 1px solid #333333;
  vertical-align: middle;
  padding: 8px; }

table th {
  font-weight: bold; }

table td {
  text-align: left; }

/*----------------------------*/
/*テキスト・リンク関連
/*----------------------------*/
/* -- a：リンク --*/
a {
  cursor: pointer;
  text-decoration: none;
  color: #258CC4; }

a:not([href]) {
  cursor: text; }

/* -- p：段落 --*/
p {
  line-height: 1.8;
  font-weight: 500; }

/* -- blockquote：引用 --*/
blockquote {
  position: relative;
  background-color: #EFEFEF;
  padding: 2.5em 1.5em;
  margin: 1em 0;
  border-radius: 6px;
  font-style: italic; }

blockquote:before {
  content: "“";
  display: inline-block;
  position: absolute;
  left: 0.5em;
  top: 0.5em;
  font-size: 200%; }

blockquote:after {
  content: "”";
  display: inline-block;
  position: absolute;
  right: 1.0em;
  bottom: 0.5em;
  font-size: 200%;
  line-height: 1; }

/* -- strong：強調 --*/
strong {
  font-weight: bold; }

/* -- em：斜体 --*/
em {
  font-style: italic; }

/* -- 下線 --*/
ins {
  text-decoration: underline; }

/* -- 削除：del --*/
del {
  text-decoration: line-through double; }

/* -- 取り消し：s --*/
s {
  text-decoration: line-through; }

/* -- 水平線：hr --*/
hr {
  border-width: 1px 0px 0px 0px;
  border-style: solid;
  height: 0px; }

/* マーク・強調：mark*/
mark {
  background-color: #ff9;
  color: #000; }

/*----------------------------*/
/*外部ソース読込関連（iframe）
/*----------------------------*/
iframe {
  max-width: 100%; }

@media screen and (max-width: 814px) {
  iframe {
    width: 100%; } }
/*----------------------------*/
/*画像スタイル関連
/*----------------------------*/
img {
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 100%;
  object-fit: contain; }

/*----------------------------*/
/*動画スタイル関連
/*----------------------------*/
video {
  width: auto;
  max-width: 100%;
  height: auto;
  object-fit: contain; }

/*----------------------------*/
/*フォーム関連（入力：input・select・textarea）
/*----------------------------*/
/* -- 一律設定 --*/
input {
  vertical-align: middle;
  -webkit-appearance: none;
  appearance: none; }

input[type="text"],
input[type="tel"],
input[type="email"],
input[type="number"],
input[type="search"],
input[type="date"],
input[type="month"],
textarea {
  font-family: var(--font-default);
  line-height: 2.2em;
  padding: 8px 3px;
  border: solid #CDCDCD 2px;
  background-color: #FFF;
  color: inherit;
  border-radius: 3px;
  font-size: 1.125rem; }

input[type="text"]:before {
  content: "aaa"; }

/*readonly 設定*/
input[type="text"]:read-only,
input[type="tel"]:read-only,
input[type="email"]:read-only,
input[type="number"]:read-only,
input[type="search"]:read-only,
input[type="date"]:read-only,
input[type="month"]:read-only,
textarea:read-only,
select:disabled {
  background-color: #F9F9F9; }

/*disabled 設定*/
input[type="text"]:disabled,
input[type="tel"]:disabled,
input[type="email"]:disabled,
input[type="number"]:disabled,
input[type="search"]:disabled,
input[type="date"]:disabled,
input[type="month"]:disabled,
textarea:disabled,
select:disabled {
  background-color: #F9F9F9; }

/* -- input::placeholder：プレースホルダー --*/
input::placeholder {
  color: #ADADAD; }

/* -- textarea：テキストエリア --*/
textarea {
  line-height: 2.0rem;
  padding: 2px 5px;
  width: 100%; }

/* -- select：セレクトボックス --*/
select {
  -webkit-appearance: none;
  appearance: none;
  height: 2.1em;
  line-height: 2.1em;
  padding: 8px 3px;
  padding-right: 1.2em;
  border: solid #CDCDCD 2px;
  background-color: #FFF;
  background-image: url(images/ui_icon/icon_ui_selectArrow__black.svg);
  background-size: 0.50em;
  background-repeat: no-repeat;
  background-position: right 6px center;
  color: inherit;
  border-radius: 3px;
  font-size: 1.125rem;
  max-width: calc( 100% - ( 8px + 1em ) );
  box-sizing: content-box; }

/* -- input[type="checkbox"]：チェックボックス--*/
input[type="checkbox"] {
  /* 表示無効化*/
  filter: alpha(opacity=0);
  -moz-opacity: 0;
  opacity: 0;
  -webkit-appearance: none;
  appearance: none;
  position: absolute; }

input[type="checkbox"] + label {
  display: inline-block;
  position: relative;
  min-height: 2.2em;
  line-height: 2.2em;
  vertical-align: middle;
  padding: 8px 8px;
  padding-left: 40px;
  cursor: pointer;
  border: solid 2px transparent; }

input[type="checkbox"] + label:before {
  position: absolute;
  top: 50%;
  left: 7px;
  transform: translateY(-50%);
  content: "";
  width: 20px;
  height: 20px;
  border: 2px solid #686868;
  border-radius: 5px;
  background-color: #FFF; }

/*チェックされているとき*/
input[type="checkbox"]:checked + label:after {
  content: "";
  position: absolute;
  top: 50%;
  left: -3px;
  transform: rotate(45deg) translate(-3px, calc((50% + 12px) * -1));
  width: 10px;
  height: 20px;
  border: solid 2px transparent;
  border-bottom: 4px solid #686868;
  border-right: 4px solid #686868;
  border-radius: 2px;
  background: transparent;
  box-shadow: none; }

/*無効化されているとき*/
input[type="checkbox"]:disabled + label {
  color: #DFDFDF;
  cursor: default; }

input[type="checkbox"]:disabled + label:before {
  border: 1px solid #DFDFDF;
  background-color: #DFDFDF; }

/*フォーカスされているとき*/
input[type="checkbox"]:focus + label {
  border: solid 2px #DFDFDF; }

@media screen and (max-width: 814px) {
  input[type="checkbox"] + label {
    display: block; } }
/* -- input[type="radio"]：ラジオボタン --*/
input[type="radio"] {
  /* 表示無効化*/
  filter: alpha(opacity=0);
  -moz-opacity: 0;
  opacity: 0;
  -webkit-appearance: none;
  appearance: none;
  position: absolute;
  font-size: 1.125rem; }

input[type="radio"] + label {
  display: inline-block;
  position: relative;
  min-height: 2.2em;
  line-height: 2.2em;
  vertical-align: middle;
  padding: 9px 8px;
  padding-left: 40px;
  cursor: pointer;
  border: solid 2px transparent; }

input[type="radio"] + label:before {
  position: absolute;
  top: 50%;
  left: 5px;
  transform: translateY(-50%);
  content: "";
  width: 25px;
  height: 25px;
  border: 1px solid #686868;
  border-radius: 1em;
  background-color: #FFFFFF; }

/*チェックされているとき*/
input[type="radio"]:checked + label:after {
  position: absolute;
  top: calc(50% + 4px);
  left: calc(4px + 5px);
  transform: translateY(calc((50% + 4px) * -1));
  content: "";
  width: 19px;
  height: 19px;
  border: none;
  background-color: #686868;
  border-radius: 1em; }

/*無効化されているとき*/
input[type="radio"]:disabled + label {
  color: #DFDFDF;
  cursor: default; }

input[type="radio"]:disabled + label:before {
  border: 1px solid #DFDFDF;
  background-color: #DFDFDF; }

/*フォーカスされているとき*/
input[type="radio"]:focus + label {
  border: solid 2px #DFDFDF; }

@media screen and (max-width: 814px) {
  input[type="radio"] + label {
    display: block; } }
/* -- input[type="number"]：数値入力--*/
input[type="number"] {
  text-align: right;
  padding-right: 0; }

/* -- input[type="date"]：年月日（カレンダー）- --*/
input[type="date"] {
  text-align: right; }

/* -- input[type="month"]：年月（カレンダー）- --*/
input[type="month"] {
  text-align: right; }

/* -- input[type="text"]：テキスト --*/
/*設定なし*/
/* -- input[type="tel"]：電話番号 --*/
/*設定なし*/
/* -- input[type="email"]：E-mail --*/
/*設定なし*/
/* -- input[type="search"]：検索 --*/
/*設定なし*/
/*----------------------------*/
/*フォーム関連（ボタン：submit・button）
/*----------------------------*/
/*共通設定*/
input[type="submit"],
input[type="button"],
button {
  /* iOSでのデフォルトスタイルをリセット */
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  border: solid 1px #252525;
  /* 装飾 */
  padding: 10px 20px;
  background-color: #FFF;
  border: none;
  font-weight: normal;
  min-height: 30px;
  cursor: pointer;
  font-size: 1rem;
  cursor: pointer;
  transition: opacity 0.3s;
  opacity: 1; }

input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration,
button::-webkit-search-decoration {
  display: none; }

input[type="submit"]:focus,
input[type="button"]:focus,
button:focus {
  outline-offset: -2px; }

input[type="submit"]:hover,
input[type="button"]:hover,
button:hover {
  opacity: 0.6; }

/*----------------------------*/
/*フォーム関連（レイアウト関連：fieldset・legend）
/*----------------------------*/
fieldset {
  border: none;
  padding: 0;
  margin: 0; }

fieldset + fieldset {
  margin-top: 10px; }

.c-font--murecho {
  font-family: "Murecho", sans-serif; }

.c-text--blue {
  color: #258CC4; }

.c-text--white {
  color: #ffffff; }

.c-fukidashi {
  text-align: center;
  margin: 0; }
.c-fukidashi__text {
  margin: 3px 0 10px 0;
  position: relative;
  display: inline-block;
  color: #333333;
  font-weight: bold;
  font-size: min(calc(18 / 1480 * 100vw), 18px); }
  @media screen and (max-width: 1024px) {
    .c-fukidashi__text {
      font-size: 1rem; } }
  .c-fukidashi__text::before {
    content: "";
    display: block;
    width: 20px;
    height: 20px;
    position: absolute;
    top: 10px;
    left: -20px;
    border-top: 2px solid #333333;
    transform: rotate(55deg);
    transform-origin: 0% 0%; }
  .c-fukidashi__text::after {
    content: "";
    display: block;
    width: 20px;
    height: 20px;
    position: absolute;
    top: 10px;
    right: -20px;
    border-top: 2px solid #333333;
    transform: rotate(-55deg);
    transform-origin: 100% 0%; }

.kome,
.c-kome {
  font-size: 0.875rem;
  color: #898989;
  padding-left: calc(1em + 3px);
  font-weight: 500;
  position: relative;
  margin: 0; }
  @media screen and (max-width: 1024px) {
    .kome,
    .c-kome {
      font-size: 0.75rem; } }
  .kome::before,
  .c-kome::before {
    content: "※";
    font-size: 1em;
    display: block;
    position: absolute;
    top: 0;
    left: 0; }

.focus,
.c-focus {
  background: #ecf6fb;
  padding: 1.5em;
  border-radius: 16px;
  font-weight: 500; }
  @media screen and (max-width: 812px) {
    .focus,
    .c-focus {
      padding: 1em 1.3em; } }

.attention,
.c-attention {
  background: #FBDDDB;
  padding: 1.5em;
  border-radius: 16px;
  font-weight: 500; }
  @media screen and (max-width: 812px) {
    .attention,
    .c-attention {
      padding: 1em 1.3em; } }

.bikou,
.c-bikou {
  background: #f6f6f6;
  padding: 1.5em;
  border-radius: 16px;
  font-weight: 500; }
  @media screen and (max-width: 812px) {
    .bikou,
    .c-bikou {
      padding: 1em 1.3em; } }

.text_catch,
.c-text_catch {
  font-size: 110%;
  font-weight: bold; }

.c-dl-dot {
  display: grid;
  grid-auto-columns: 1fr;
  grid-auto-rows: 1fr;
  grid-template-columns: auto auto;
  grid-template-rows: repeat(auto-fill, auto);
  gap: 1em 0;
  margin: 1em 0; }
.c-dl-dot > * {
  font-weight: normal;
  margin: 0;
  float: left; }
.c-dl-dot > dd {
  padding-left: 0; }
.c-dl-dot > *:nth-child(odd) {
  font-weight: bold; }
  .c-dl-dot > *:nth-child(odd):after {
    display: inline-block;
    content: "・・・";
    letter-spacing: -0.3em;
    padding: 0 1em;
    font-weight: normal; }

.c-linkbtn {
  display: inline-block;
  height: 72px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-right: calc(32px + 1em);
  background: #ffffff;
  font-size: min(calc(25 / 1480 * 100vw), 25px);
  font-weight: 500;
  text-align: center;
  color: #FABE00;
  border: 2px solid #FABE00;
  border-radius: 8px;
  position: relative;
  transition-duration: 0.3s; }
  @media screen and (max-width: 1024px) {
    .c-linkbtn {
      font-size: 1.125rem; } }
  .c-linkbtn::after {
    content: "";
    display: block;
    width: 32px;
    height: 32px;
    top: 50%;
    right: 0.5em;
    position: absolute;
    transform: translateY(-50%);
    transition-duration: 0.3s; }
  .c-linkbtn:hover {
    background: #FABE00;
    color: #ffffff; }
  .c-linkbtn::after {
    background: url("images/icon/icon_arrow__bg__yellow.svg");
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat; }
  .c-linkbtn:hover {
    background: #FABE00;
    color: #ffffff; }
    .c-linkbtn:hover::after {
      background: url("images/icon/icon_arrow__bg__white.svg");
      background-position: center;
      background-size: contain;
      background-repeat: no-repeat; }
.c-linkbtn--account {
  display: inline-block;
  height: 72px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-right: calc(32px + 1em);
  background: #ffffff;
  font-size: min(calc(25 / 1480 * 100vw), 25px);
  font-weight: 500;
  text-align: center;
  color: #FABE00;
  border: 2px solid #FABE00;
  border-radius: 8px;
  position: relative;
  transition-duration: 0.3s;
  background: #FABE00;
  color: #ffffff !important;
  padding-left: calc(32px + 1em);
  position: relative;
  max-width: 400px; }
  @media screen and (max-width: 1024px) {
    .c-linkbtn--account {
      font-size: 1.125rem; } }
  .c-linkbtn--account::after {
    content: "";
    display: block;
    width: 32px;
    height: 32px;
    top: 50%;
    right: 0.5em;
    position: absolute;
    transform: translateY(-50%);
    transition-duration: 0.3s; }
  .c-linkbtn--account:hover {
    background: #FABE00;
    color: #ffffff; }
  .c-linkbtn--account::before {
    content: "";
    display: block;
    width: 48px;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 0.5em;
    transform: translateY(-50%);
    background: url("images/btn_img__account.png");
    background-position: bottom;
    background-size: contain;
    background-repeat: no-repeat; }
  .c-linkbtn--account::after {
    background: url("images/icon/icon_arrow__bg__white.svg");
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat; }
  .c-linkbtn--account:hover {
    background: #ffffff;
    color: #FABE00 !important; }
    @media screen and (max-width: 812px) {
      .c-linkbtn--account:hover {
        background: #FABE00;
        color: #ffffff !important; } }
    .c-linkbtn--account:hover::after {
      background: url("images/icon/icon_arrow__bg__yellow.svg");
      background-position: center;
      background-size: contain;
      background-repeat: no-repeat; }
      @media screen and (max-width: 812px) {
        .c-linkbtn--account:hover::after {
          background: url("images/icon/icon_arrow__bg__white.svg");
          background-position: center;
          background-size: contain;
          background-repeat: no-repeat; } }
.c-linkbtn--ib {
  display: inline-block;
  height: 72px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-right: calc(32px + 1em);
  background: #ffffff;
  font-size: min(calc(25 / 1480 * 100vw), 25px);
  font-weight: 500;
  text-align: center;
  color: #FABE00;
  border: 2px solid #FABE00;
  border-radius: 8px;
  position: relative;
  transition-duration: 0.3s;
  padding-left: calc(43px + 0.5em);
  max-width: 400px; }
  @media screen and (max-width: 1024px) {
    .c-linkbtn--ib {
      font-size: 1.125rem; } }
  .c-linkbtn--ib::after {
    content: "";
    display: block;
    width: 32px;
    height: 32px;
    top: 50%;
    right: 0.5em;
    position: absolute;
    transform: translateY(-50%);
    transition-duration: 0.3s; }
  .c-linkbtn--ib:hover {
    background: #FABE00;
    color: #ffffff; }
  .c-linkbtn--ib::before {
    content: "";
    display: block;
    width: 56px;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 0.5em;
    transform: translateY(-50%);
    background: url("images/btn_img__ib.png");
    background-position: bottom;
    background-size: contain;
    background-repeat: no-repeat; }
  .c-linkbtn--ib::after {
    background: url("images/icon/icon_arrow__bg__yellow.svg");
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat; }
  .c-linkbtn--ib:hover {
    background: #FABE00;
    color: #ffffff; }
    @media screen and (max-width: 812px) {
      .c-linkbtn--ib:hover {
        background: #ffffff;
        color: #FABE00; } }
    .c-linkbtn--ib:hover::after {
      background: url("images/icon/icon_arrow__bg__white.svg");
      background-position: center;
      background-size: contain;
      background-repeat: no-repeat; }
      @media screen and (max-width: 812px) {
        .c-linkbtn--ib:hover::after {
          background: url("images/icon/icon_arrow__bg__yellow.svg");
          background-position: center;
          background-size: contain;
          background-repeat: no-repeat; } }

.c-basicBtn {
  display: inline-block;
  border: 2px solid #258CC4;
  padding: 0.5em 0 0.5em 1em;
  padding-right: calc(32px + 1em);
  border-radius: 9999px;
  background: #ffffff;
  text-align: center;
  font-weight: 500;
  position: relative;
  transition: 0.3s;
  color: #258CC4; }
  .c-basicBtn::after {
    content: "";
    display: block;
    width: 32px;
    height: 32px;
    position: absolute;
    top: 50%;
    right: 0.5em;
    transform: translateY(-50%);
    transition: 0.3s; }
  .c-basicBtn::after {
    background: url("images/icon/icon_arrow__bg__blue.svg");
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat; }
  .c-basicBtn:hover {
    background: #258CC4;
    color: #ffffff; }
    .c-basicBtn:hover:after {
      background: url("images/icon/icon_arrow__bg__white__blue.svg");
      background-position: center;
      background-size: contain;
      background-repeat: no-repeat; }
  .c-basicBtn[target="_blank"]:after {
    width: 32px;
    height: 32px;
    background-image: url(images/icon/icon_gaibu__bg__blue.svg);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat; }
  .c-basicBtn[target="_blank"]:hover:after {
    width: 32px;
    height: 32px;
    background-image: url(images/icon/icon_gaibu__bg__white.svg);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat; }
  .c-basicBtn[href$=".pdf"]::after {
    width: 32px;
    height: 32px;
    background-image: url(images/icon/icon_pdf__bg__blue.svg);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat; }
  .c-basicBtn[href$=".pdf"]:hover::after {
    width: 32px;
    height: 32px;
    background-image: url(images/icon/icon_pdf__bg__white.svg);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat; }
.c-basicBtn--color {
  display: inline-block;
  border: 2px solid #258CC4;
  padding: 0.5em 0 0.5em 1em;
  padding-right: calc(32px + 1em);
  border-radius: 9999px;
  background: #ffffff;
  text-align: center;
  font-weight: 500;
  position: relative;
  transition: 0.3s;
  color: #ffffff;
  background: #258CC4; }
  .c-basicBtn--color::after {
    content: "";
    display: block;
    width: 32px;
    height: 32px;
    position: absolute;
    top: 50%;
    right: 0.5em;
    transform: translateY(-50%);
    transition: 0.3s; }
  .c-basicBtn--color::after {
    background: url("images/icon/icon_arrow__bg__white__blue.svg");
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat; }
  .c-basicBtn--color:hover {
    background: #ffffff;
    color: #258CC4; }
    .c-basicBtn--color:hover::after {
      background: url("images/icon/icon_arrow__bg__blue.svg");
      background-position: center;
      background-size: contain;
      background-repeat: no-repeat; }
  .c-basicBtn--color[target="_blank"]::after {
    width: 32px;
    height: 32px;
    background-image: url(images/icon/icon_gaibu__bg__white.svg);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat; }
  .c-basicBtn--color[target="_blank"]:hover::after {
    width: 32px;
    height: 32px;
    background-image: url(images/icon/icon_gaibu__bg__blue.svg);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat; }
  .c-basicBtn--color[href$=".pdf"]::after {
    width: 32px;
    height: 32px;
    background-image: url(images/icon/icon_pdf__bg__white.svg);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat; }
  .c-basicBtn--color[href$=".pdf"]:hover::after {
    width: 32px;
    height: 32px;
    background-image: url(images/icon/icon_pdf__bg__blue.svg);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat; }

.c-midashi {
  font-family: "Murecho", sans-serif;
  margin-bottom: 32px;
  position: relative; }
  @media screen and (max-width: 812px) {
    .c-midashi {
      text-align: center; } }
  .c-midashi__sub {
    font-size: 13px;
    letter-spacing: 0.05em;
    font-weight: 500;
    color: #258CC4;
    position: relative;
    display: inline-block;
    line-height: 1.8;
    margin-bottom: 8px;
    gap: 8px; }
    @media screen and (max-width: 812px) {
      .c-midashi__sub {
        justify-content: center;
        font-size: 12px; } }
    .c-midashi__sub::before {
      content: "";
      display: block;
      width: 30px;
      height: 2px;
      background: #258CC4;
      position: absolute;
      top: 50%;
      left: -24px;
      transform: translateX(-50%); }
    .c-midashi__sub__icon {
      min-width: 27px;
      min-height: 24px;
      position: absolute;
      top: 50%;
      right: -32px;
      transform: translateY(-50%); }

.c-midashi--dot {
  font-family: "Murecho", sans-serif;
  margin-bottom: 32px;
  position: relative;
  text-align: center; }
  .c-midashi--dot::after {
    content: "・・・";
    position: absolute;
    display: block;
    font-size: 1.5625rem;
    letter-spacing: -0.4em;
    color: #258CC4;
    font-weight: 900;
    bottom: -1em;
    left: 50%;
    transform: translateX(-50%); }

.o-bg--blue {
  background-color: #C8E7F2; }

.o-bg--gray {
  background-color: #f6f6f6; }

.o-bg--shadow {
  border-radius: 16px;
  padding: 3% 5%;
  background: #ffffff;
  box-shadow: rgba(0, 0, 0, 0.09) 0px 3px 12px; }
  @media screen and (max-width: 812px) {
    .o-bg--shadow {
      flex-direction: column;
      padding: 2em 5%; } }

.o-bg__soshoku--top {
  position: relative; }
.o-bg__soshoku--top::before {
  content: "";
  display: block;
  position: absolute;
  width: 50vw;
  height: 50vw;
  max-width: 525px;
  max-height: 525px;
  z-index: -1; }
.o-bg__soshoku--top::before {
  top: 0;
  left: 0;
  background: url("images/bg_img__top__left.png");
  background-size: contain;
  background-position: top;
  background-repeat: no-repeat; }
.o-bg__soshoku--bottom {
  position: relative; }
.o-bg__soshoku--bottom::before {
  content: "";
  display: block;
  position: absolute;
  width: 50vw;
  height: 50vw;
  max-width: 525px;
  max-height: 525px;
  z-index: -1; }
.o-bg__soshoku--bottom::before {
  bottom: 0;
  left: 0;
  background: url("images/bg_img__bottom__left.png");
  background-size: contain;
  background-position: bottom;
  background-repeat: no-repeat; }
.o-bg__soshoku--right {
  position: relative; }
.o-bg__soshoku--right::before {
  content: "";
  display: block;
  position: absolute;
  width: 50vw;
  height: 50vw;
  max-width: 525px;
  max-height: 525px;
  z-index: -1; }
.o-bg__soshoku--right::before {
  bottom: 0;
  right: 0;
  background: url("images/bg_img__bottom__right.png");
  background-size: contain;
  background-position: bottom;
  background-repeat: no-repeat; }

.o-bg__soshoku2 {
  position: relative;
  overflow-y: hidden; }
.o-bg__soshoku2::before {
  content: "";
  display: block;
  position: absolute;
  width: 50vw;
  height: 50vw;
  max-width: 525px;
  max-height: 525px;
  z-index: 1;
  top: 0;
  left: 0;
  background: url("images/bg_img2__top.png");
  background-size: contain;
  background-position: top;
  background-repeat: no-repeat; }
.o-bg__soshoku2::after {
  content: "";
  display: block;
  position: absolute;
  width: 50vw;
  height: 50vw;
  max-width: 525px;
  max-height: 525px;
  z-index: 1;
  bottom: 0;
  right: 0;
  background: url("images/bg_img2__bottom.png");
  background-size: contain;
  background-position: bottom;
  background-repeat: no-repeat; }
.o-bg__soshoku2__content {
  position: relative;
  z-index: 2; }

.o-imgList {
  display: flex;
  justify-content: space-between;
  gap: 5%; }
  @media screen and (max-width: 812px) {
    .o-imgList {
      flex-direction: column;
      gap: 50px; } }
  .o-imgList__item {
    width: 100%;
    list-style: none;
    padding: 2%;
    margin: 0;
    background: #ffffff;
    border: 2px solid #333333;
    border-radius: 16px;
    position: relative; }
    @media screen and (max-width: 812px) {
      .o-imgList__item {
        max-width: 400px;
        margin: auto;
        padding: 24px; } }
  .o-imgList__point {
    font-family: "Murecho", sans-serif;
    width: 6vw;
    max-width: 80px;
    min-width: 60px;
    height: 6vw;
    max-height: 80px;
    min-height: 60px;
    position: absolute;
    left: -2vw;
    top: -2vw;
    background: #ffffff;
    border: 2px solid #333333;
    border-radius: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font-size: 0.75rem;
    font-weight: 600;
    text-align: center;
    line-height: 1.1; }
    @media screen and (max-width: 812px) {
      .o-imgList__point {
        width: 72px;
        height: 72px;
        left: 16px;
        top: -36px; } }
  .o-imgList .point-number {
    display: block;
    font-size: min(calc(23 / 1200 * 100vw), 23px);
    line-height: 1; }
    @media screen and (max-width: 812px) {
      .o-imgList .point-number {
        font-size: 1.25rem; } }
  .o-imgList__img {
    display: block;
    width: 80%;
    margin: 0 auto; }
  .o-imgList__midashi {
    font-size: 1.3125rem;
    font-weight: 600;
    text-align: center;
    margin: 8px 0; }
  .o-imgList__caption {
    margin: 0; }

/*+++++++++++++++++++
  o-news-list
  お知らせ一覧
  ++++++++++++++++++　*/
.o-data {
  font-family: "Murecho", sans-serif;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-bottom: 3px; }
.o-data time {
  font-size: 0.875rem;
  color: #969797;
  font-weight: 500; }
.o-data span {
  font-size: 0.8125rem;
  padding: 3px 1em 4px 1em;
  border-radius: 9999px;
  line-height: 1;
  color: #ffffff;
  font-weight: 400; }
  @media screen and (max-width: 812px) {
    .o-data span {
      font-size: 0.6875rem; } }
.o-data--new {
  background: #d5410f; }
.o-data--campaign {
  background: #FABE00; }
.o-data--service {
  background: #88c231; }
.o-data--other {
  background: #005776; }
.o-data--important {
  background: #e9546b; }
.o-data--saga {
  background: #88c231; }
.o-data--eat {
  background: #FABE00; }
.o-data--diary {
  background: #005776; }
.o-data--bank {
  background: #258cc4; }
.o-data--leisure {
  background: #ed6c00; }

.o-news__inner {
  display: grid;
  grid-template-columns: auto 1fr 1fr;
  grid-template-rows: 110px auto;
  gap: 24px 10%;
  grid-template-areas: "midashi news news" "moreBtn news news"; }
  @media screen and (max-width: 812px) {
    .o-news__inner {
      display: block; } }
.o-news .o-news__midashi {
  grid-area: midashi; }
.o-news .o-news__list {
  grid-area: news; }
  @media screen and (max-width: 812px) {
    .o-news .o-news__list {
      margin-bottom: 40px; } }
.o-news .o-news__linkbtn {
  grid-area: moreBtn; }
.o-news__item {
  display: inline-block;
  width: 100%;
  border-bottom: 1px solid #EFEFEF;
  padding: 1em 8px;
  font-weight: 500;
  margin-left: 0;
  color: #333333;
  transition-duration: 0.2s; }
  .o-news__item:hover {
    background: #f6f6f6; }
  .o-news__item .o-news__text {
    width: 100%;
    align-items: center;
    display: inline-block; }
  .o-news__item[href^="https://"][target="_blank"] .o-news__text::after {
    content: url(images/icon/icon_gaibu__blue.svg);
    display: inline-block;
    width: 1em;
    margin-left: 0.1em;
    vertical-align: middle;
    /* アイコンをテキストの中央に配置 */ }
  .o-news__item[href$=".pdf"] .o-news__text::after {
    content: url(images/icon/icon_pdf__blue.svg);
    display: inline-block;
    width: 1.2em;
    margin-left: 0.1em;
    vertical-align: middle;
    /* アイコンをテキストの中央に配置 */ }
.o-news__text {
  display: block;
  width: 100%; }
@media screen and (max-width: 812px) {
  .o-news__linkbtn {
    text-align: center; } }

/*+++++++++++++++++++
  o-blog-list
  キャンペーンブログ
  ++++++++++++++++++　*/
.o-blog__list {
  display: flex;
  flex-wrap: wrap;
  gap: 5%;
  margin-bottom: 60px; }
  @media screen and (max-width: 812px) {
    .o-blog__list {
      margin-bottom: 40px; } }
.o-blog__item {
  display: flex;
  gap: 24px;
  width: calc(95% / 2);
  padding: 1.5em 0;
  font-weight: 500;
  border-bottom: 1px solid #EFEFEF;
  box-sizing: border-box;
  color: #333333;
  transition-duration: 0.2s; }
  @media screen and (max-width: 812px) {
    .o-blog__item {
      width: 100%; } }
  .o-blog__item:hover {
    background: #f6f6f6; }
.o-blog__text {
  width: calc(100% - 204px); }
  @media screen and (max-width: 812px) {
    .o-blog__text {
      width: 100%; } }
.o-blog__thum {
  width: 180px;
  height: 135px;
  object-fit: cover; }
  @media screen and (max-width: 812px) {
    .o-blog__thum {
      min-width: 140px;
      height: 105px; } }
  .o-blog__thum img {
    width: 100%;
    object-fit: cover; }

/*+++++++++++++++++++
  o-pager
  お知らせ・ブログのページャー
  ++++++++++++++++++　*/
.o-pager {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  margin-top: 64px; }
  @media screen and (max-width: 812px) {
    .o-pager {
      margin-top: 48px; } }
  .o-pager__link {
    font-family: "Murecho", sans-serif;
    display: inline-block; }
  .o-pager__link--num {
    width: 24px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #258CC4; }
    .o-pager__link--num .this-num {
      line-height: 0;
      padding-bottom: 2px;
      font-size: 1.25rem;
      font-weight: 500; }
      @media screen and (max-width: 812px) {
        .o-pager__link--num .this-num {
          font-size: 1.125rem; } }
  .o-pager__link--current {
    border-bottom: 2px solid #258CC4; }
  .o-pager__link--prev {
    width: 32px;
    height: 32px;
    background: url("images/icon/icon_arrow__bg__blue.svg");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    transform: rotate(180deg); }
  .o-pager__link--next {
    width: 32px;
    height: 32px;
    background: url("images/icon/icon_arrow__bg__blue.svg");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat; }
  .o-pager__ellipsis {
    display: inline-block;
    line-height: 0;
    color: #258CC4;
    font-weight: 500; }

/*+++++++++++++++++++
  o-schedule
  スケジュール
  ++++++++++++++++++　*/
.o-schedule__inner {
  overflow-y: auto; }
.o-schedule__content {
  display: flex;
  gap: 3%;
  justify-content: center;
  margin: 1em 0; }
.o-schedule__item {
  width: 190px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: center;
  box-sizing: border-box; }
.o-schedule__flow {
  font-family: "Murecho", sans-serif;
  display: block;
  width: 100%;
  padding: 3px;
  text-align: center;
  font-weight: 600;
  background: #ffffff;
  border: 2px solid #333333;
  border-radius: 8px;
  position: relative; }
  .o-schedule__flow::after {
    content: "";
    display: block;
    width: 2px;
    height: 16px;
    background: #333333;
    position: absolute;
    bottom: -24px;
    left: 50%;
    transform: translateY(-50%); }
.o-schedule__kikan {
  font-family: "Murecho", sans-serif;
  width: 150px;
  height: 150px;
  background: #ffffff;
  border-radius: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: #258CC4;
  font-weight: 500;
  font-size: 1.5rem;
  letter-spacing: 0.05em;
  font-weight: 600;
  line-height: 1.2;
  margin-top: 8px;
  position: relative;
  z-index: 1; }
  .o-schedule__kikan::before {
    content: "";
    display: block;
    width: 75px;
    height: 4px;
    background: linear-gradient(to right, #258CC4 2px, transparent 2px);
    background-size: 7px 2px;
    background-repeat: repeat-x;
    background-position: right bottom;
    position: absolute;
    top: 50%;
    right: -113px;
    transform: translateX(-50%);
    z-index: -1; }
  .o-schedule__kikan--small {
    font-size: 1rem; }
.o-schedule .o-schedule__item:first-child .o-schedule__kikan {
  background: #258CC4;
  color: #ffffff; }
.o-schedule .o-schedule__item:last-child .o-schedule__kikan {
  background: #258CC4;
  color: #ffffff; }
  .o-schedule .o-schedule__item:last-child .o-schedule__kikan::before {
    display: none; }
.o-schedule__text {
  font-weight: 500;
  text-align: center; }

.l-inner {
  width: 100%;
  height: 100%;
  max-width: 1200px;
  padding: 0 3%;
  padding-top: 72px;
  padding-top: clamp(36px, 6vw, 72px);
  padding-bottom: 72px;
  padding-bottom: clamp(36px, 6vw, 72px);
  margin: 0 auto; }
  @media screen and (max-width: 812px) {
    .l-inner {
      padding: 64px 16px; } }

.l-inner--intro {
  width: 100%;
  height: 100%;
  max-width: 1200px;
  padding: 0 3%;
  padding-top: clamp(36px, 6vw, 72px);
  margin: 0 auto; }
  @media screen and (max-width: 812px) {
    .l-inner--intro {
      padding: 64px 16px 0 16px; } }

.l-header {
  font-family: "Murecho", sans-serif;
  width: 100%;
  box-sizing: border-box;
  position: fixed;
  top: 0;
  left: 0;
  background: #ffffff;
  box-shadow: rgba(33, 35, 38, 0.1) 0px 10px 10px -10px;
  font-weight: 500;
  z-index: 1000; }
.l-header__inner {
  height: 110px;
  padding-left: 1em;
  display: flex;
  justify-content: space-between;
  align-items: center; }
  @media screen and (max-width: 1024px) {
    .l-header__inner {
      height: 65px; } }
.l-header__logo {
  width: 20%;
  max-width: 375px;
  min-width: 200px; }
  @media screen and (max-width: 812px) {
    .l-header__logo {
      width: calc(100% - 195px);
      max-width: 200px;
      min-width: inherit; } }
  .l-header__logo a {
    display: flex;
    align-items: center;
    justify-content: center; }
  .l-header__logo img {
    width: 100%; }
.l-header__menu {
  width: 80%;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 3%; }
  @media screen and (max-width: 1024px) {
    .l-header__menu {
      width: auto; } }
.l-header__btn {
  width: 220px;
  display: flex;
  align-items: center; }
  @media screen and (max-width: 1024px) {
    .l-header__btn {
      width: 195px; } }
.l-header__btn__item {
  display: inline-block;
  width: 110px;
  height: 110px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  transition-duration: 0.3s;
  box-sizing: border-box; }
  @media screen and (max-width: 1024px) {
    .l-header__btn__item {
      height: 65px;
      width: 65px; } }
  .l-header__btn__item:hover {
    opacity: 0.7; }
  .l-header__btn__item[target="_blank"]::after {
    display: none; }
.l-header__btn--account {
  background: #258CC4; }
  .l-header__btn--account img {
    width: 70%; }
.l-header__btn--internet {
  background: #F8B500; }
  .l-header__btn--internet img {
    width: 80%; }
.l-header__btn--menuBtn {
  display: none; }
  @media screen and (max-width: 1024px) {
    .l-header__btn--menuBtn {
      display: flex;
      flex-flow: column;
      justify-content: space-around;
      transition: 0.4s;
      position: relative;
      padding: 20px; }
      .l-header__btn--menuBtn span {
        width: 100%;
        height: 3px;
        background: #258CC4;
        border-radius: 9999px;
        transition: 0.4s;
        position: relative;
        z-index: -1; }
      .l-header__btn--menuBtn span:nth-child(2) {
        width: 100%; } }
.l-header__btn--menuBtn.is-menu-open span:nth-child(1) {
  transform: translateY(8px) rotate(-45deg); }
.l-header__btn--menuBtn.is-menu-open span:nth-child(2) {
  width: 0;
  opacity: 0; }
.l-header__btn--menuBtn.is-menu-open span:nth-child(3) {
  transform: translateY(-8px) rotate(45deg); }

.l-header--pc {
  width: calc(97% - 220px);
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  font-size: clamp(10px, 1.23vw, 17px); }
  @media screen and (max-width: 1024px) {
    .l-header--pc {
      display: none; } }
.l-header--pc__contact {
  display: flex;
  align-items: center;
  gap: 5px;
  color: #ffffff;
  background: #333333;
  padding: 2px 1em;
  border-radius: 8px;
  margin-bottom: 8px;
  transition-duration: 0.3s; }
  .l-header--pc__contact img {
    width: 18px; }
  .l-header--pc__contact:hover {
    opacity: 0.7; }
.l-header--pc__link {
  width: 100%;
  text-align: right; }
  .l-header--pc__link a {
    display: inline-block;
    color: #333333;
    margin-left: 3%;
    transition-duration: 0.2s; }
  .l-header--pc__link a:first-child {
    margin-left: 0; }
  .l-header--pc__link a:hover {
    color: #258CC4; }

.l-content_margin {
  margin-top: 110px; }
  @media screen and (max-width: 1024px) {
    .l-content_margin {
      margin-top: 65px; } }
  .l-content_margin section:first-of-type .l-inner {
    padding-top: 0; }

.l-header--sp {
  display: none; }
  @media screen and (max-width: 1024px) {
    .l-header--sp {
      display: block;
      width: 100%;
      max-height: calc(100vh - 65px);
      position: absolute;
      top: 65px;
      background: #ffffff;
      border-top: 2px solid #e6e6e6;
      height: 0;
      overflow-y: scroll;
      opacity: 0;
      z-index: 900;
      transition-duration: 0.3s; } }
  .l-header--sp__item {
    height: 60px;
    width: 100%;
    padding: 0 16px;
    display: flex;
    align-items: center;
    border-bottom: 2px solid #e6e6e6;
    position: relative;
    color: #333333; }
    .l-header--sp__item::after {
      content: "";
      display: block;
      position: absolute;
      top: 50%;
      right: 16px;
      transform: translateY(-50%);
      height: 32px;
      width: 32px;
      background: url("images/icon/icon_arrow__bg__white__blue.svg");
      background-position: center;
      background-size: contain;
      background-repeat: no-repeat; }
  .l-header--sp__contact {
    background: #333333 !important;
    color: #ffffff;
    border-bottom: 2px solid #333333 !important; }
    .l-header--sp__contact::after {
      background: url("images/icon/icon_arrow__bg__black.svg");
      background-position: center;
      background-size: contain;
      background-repeat: no-repeat; }
    .l-header--sp__contact img {
      width: 24px;
      margin-right: 5px; }

.l-footer__inner {
  position: relative; }
  @media screen and (max-width: 812px) {
    .l-footer__inner {
      padding-bottom: 80px; } }
  .l-footer__inner::before {
    content: "";
    display: block;
    position: absolute;
    bottom: -11px;
    left: 5%;
    width: 200px;
    height: 150px;
    background: url("images/footer__img_01.png");
    background-size: contain;
    background-position: bottom;
    background-repeat: no-repeat; }
    @media screen and (max-width: 1024px) {
      .l-footer__inner::before {
        width: 120px;
        height: 100px;
        bottom: -7px; } }
    @media screen and (max-width: 812px) {
      .l-footer__inner::before {
        width: 102px;
        height: 85px;
        bottom: -5px; } }
  .l-footer__inner::after {
    content: "";
    display: block;
    position: absolute;
    bottom: -11px;
    right: 5%;
    width: 200px;
    height: 150px;
    background: url("images/footer__img_02.png");
    background-size: contain;
    background-position: bottom;
    background-repeat: no-repeat; }
    @media screen and (max-width: 1024px) {
      .l-footer__inner::after {
        width: 120px;
        height: 100px;
        bottom: -7px; } }
    @media screen and (max-width: 812px) {
      .l-footer__inner::after {
        width: 102px;
        height: 85px;
        bottom: -7px; } }
.l-footer-contact {
  border-top: 2px solid #333333;
  border-bottom: 2px solid #333333;
  background: #C8E7F2;
  position: relative; }
  .l-footer-contact__telBtn {
    font-family: "Murecho", sans-serif;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    width: 100%;
    max-width: 710px;
    height: 150px;
    background: #ffffff;
    border: 2px solid #333333;
    border-radius: 16px;
    color: #333333;
    transition-duration: 0.2s; }
    .l-footer-contact__telBtn:hover {
      opacity: 0.8; }
  .l-footer-contact__address {
    font-weight: 600;
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    gap: 8px; }
    .l-footer-contact__address::before {
      content: "";
      display: block;
      width: 24px;
      height: 2px;
      background: #333333; }
    .l-footer-contact__address::after {
      content: "";
      display: block;
      width: 24px;
      height: 2px;
      background: #333333; }
  .l-footer-contact__tel {
    display: flex;
    align-items: center;
    gap: 16px;
    font-weight: 700;
    font-size: clamp(30px, 8vw, 50px);
    letter-spacing: 0.01em;
    line-height: 0; }
    @media screen and (max-width: 812px) {
      .l-footer-contact__tel {
        gap: 8px; } }
    .l-footer-contact__tel img {
      width: 1em;
      margin-top: 3px; }
  .l-footer-contact__time {
    font-family: "Murecho", sans-serif;
    font-weight: 500;
    font-size: 1.125rem; }
  .l-footer-contact__category {
    background: #333333;
    padding: 3px 8px;
    border-radius: 8px;
    color: #ffffff;
    margin-right: 8px;
    font-size: 1rem; }
    @media screen and (max-width: 1024px) {
      .l-footer-contact__category {
        font-size: 0.875rem; } }
.l-footer__topBtn {
  display: inline-block;
  position: absolute;
  bottom: -36px;
  right: 3%;
  width: 72px;
  height: 72px;
  background: #ffffff;
  background-image: url("images/footer__top.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  border-radius: 100%;
  border: 2px solid #333333;
  overflow: hidden; }
  @media screen and (max-width: 1024px) {
    .l-footer__topBtn {
      width: 56px;
      height: 56px; } }
.l-footer__logo {
  height: 136px;
  display: flex;
  justify-content: center;
  align-items: center; }
  @media screen and (max-width: 1024px) {
    .l-footer__logo {
      height: 80px; } }
  .l-footer__logo img {
    width: 60%;
    max-width: 375px; }
    @media screen and (max-width: 1024px) {
      .l-footer__logo img {
        max-width: 250px; } }

.p-top.campaign-end .p-top-campBnr__link {
  cursor: default; }
  .p-top.campaign-end .p-top-campBnr__link:hover {
    opacity: 1; }
  .p-top.campaign-end .p-top-campBnr__link::before {
    content: "募集受付は終了しました";
    display: block;
    width: 100%;
    text-align: center;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-family: "Murecho", sans-serif;
    font-size: min(calc(40 / 1200 * 100vw), 40px);
    font-weight: 600;
    text-shadow: 0 0 20px rgba(0, 0, 0, 0.6);
    color: #ffffff;
    z-index: 1; }
    @media screen and (max-width: 812px) {
      .p-top.campaign-end .p-top-campBnr__link::before {
        font-size: 1.0625rem; } }
  .p-top.campaign-end .p-top-campBnr__link::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: #333333;
    opacity: 0.5; }

.p-top-kv {
  width: 100%;
  height: 35vw;
  max-height: 665px;
  min-height: 430px;
  margin-top: 110px;
  background: #008FD3;
  background-image: url("images/main_top.png");
  background-repeat: no-repeat;
  background-size: auto 100%;
  background-position: right; }
  @media screen and (max-width: 1024px) {
    .p-top-kv {
      background-image: url("images/main_top__sp.png");
      background-position: center bottom;
      background-size: auto 90%;
      height: 75vh;
      max-height: 720px;
      min-height: 530px;
      margin-top: 65px; } }
.p-top-kv__contentBox {
  margin: 0 auto;
  max-width: 1480px;
  height: 100%;
  display: flex;
  align-items: center;
  padding: 3%; }
  @media screen and (max-width: 1024px) {
    .p-top-kv__contentBox {
      align-items: flex-start;
      padding: 65px 5% 24px 5%; } }
.p-top-kv__content {
  width: 50%;
  color: #ffffff; }
  @media screen and (max-width: 1024px) {
    .p-top-kv__content {
      width: 100%;
      text-align: center; } }
.p-top-kv__catch {
  font-size: min(calc(25 / 1480 * 100vw), 25px);
  margin: 0;
  display: flex;
  align-items: center; }
  @media screen and (max-width: 1024px) {
    .p-top-kv__catch {
      font-size: 1.125rem;
      justify-content: center; } }
  .p-top-kv__catch::after {
    content: "";
    display: block;
    height: 1.2em;
    width: 1.2em;
    background: url("images/main_top_catch__icon.png");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    margin-left: 3px; }
.p-top-kv__title {
  display: inline-block;
  font-size: min(calc(60 / 1480 * 100vw), 60px);
  line-height: 1.6;
  background-image: linear-gradient(to right, #ffffff 2px, transparent 2px);
  background-size: 7px 2px;
  background-repeat: repeat-x;
  background-position: right bottom; }
  @media screen and (max-width: 1024px) {
    .p-top-kv__title {
      font-size: 2.1875rem; } }
.p-top-kv__linkBox {
  padding: 1em 2em 1.5em 2em;
  background-color: rgba(255, 255, 255, 0.8);
  border-radius: 16px;
  margin-top: 32px;
  display: flex;
  gap: 5%;
  justify-content: center; }
  @media screen and (max-width: 1024px) {
    .p-top-kv__linkBox {
      display: none; } }
  .p-top-kv__linkBox__item {
    width: calc(95% / 2); }
  .p-top-kv__linkBox__link {
    width: 100%; }
.p-top-kv__linkBox--sp {
  display: none; }
  @media screen and (max-width: 1024px) {
    .p-top-kv__linkBox--sp {
      width: 100%;
      margin-top: -24px;
      margin-bottom: -24px;
      background: #ffffff;
      border-radius: 24px;
      box-shadow: rgba(17, 17, 26, 0.05) 0px 4px 16px, rgba(17, 17, 26, 0.05) 0px 8px 32px;
      padding: 2.5em 16px 3em 16px;
      display: flex;
      flex-direction: column;
      gap: 24px;
      align-items: center; } }
  .p-top-kv__linkBox--sp__item {
    width: 100%; }
  .p-top-kv__linkBox--sp__link {
    margin: 0 auto; }

.p-top-news {
  margin-top: 24px; }

.p-top-campBnr::after {
  content: "";
  display: block;
  width: 100%;
  height: 50%;
  position: absolute;
  bottom: 0;
  left: 0;
  background: #C8E7F2;
  z-index: -1; }
.p-top-campBnr .l-inner {
  padding-right: 0;
  padding-left: 0; }
.p-top-campBnr__inner {
  padding: 40px 7% 56px 7%;
  margin: 0 8px;
  background: #ffffff;
  box-shadow: rgba(17, 17, 26, 0.05) 0px 4px 16px, rgba(17, 17, 26, 0.05) 0px 8px 32px;
  border-radius: 16px;
  line-height: 0;
  position: relative; }
  @media screen and (max-width: 812px) {
    .p-top-campBnr__inner {
      padding: 2em 5% 3em 5%; } }
.p-top-campBnr__link {
  display: inline-block;
  border-radius: 8px;
  overflow: hidden;
  width: 100%;
  height: auto;
  object-fit: cover;
  line-height: 0;
  transition-duration: 0.2s;
  position: relative; }
  .p-top-campBnr__link:hover {
    opacity: 0.8; }
.p-top-campBnr__img {
  width: 100%; }
.p-top-campBnr .c-midashi {
  margin-bottom: 8px; }
  @media screen and (max-width: 812px) {
    .p-top-campBnr .c-midashi__sub {
      justify-content: flex-start; } }
.p-top-campBnr.o-bg__soshoku--bottom::before {
  bottom: 50%; }
.p-top-campBnr__soushoku--right {
  position: absolute;
  width: 65px;
  bottom: -65px;
  right: 5%; }
  @media screen and (max-width: 812px) {
    .p-top-campBnr__soushoku--right {
      width: 50px; } }
.p-top-campBnr__soushoku--left {
  position: absolute;
  width: 120px;
  bottom: -65px;
  left: 5%; }
  @media screen and (max-width: 812px) {
    .p-top-campBnr__soushoku--left {
      width: 100px; } }

.p-top-about__read {
  display: flex;
  align-items: center;
  gap: 5%; }
.p-top-about__readText {
  width: calc(95% / 2);
  padding-bottom: 72px; }
  @media screen and (max-width: 812px) {
    .p-top-about__readText {
      width: 100%; } }
.p-top-about__readImg {
  width: calc(95% / 2); }
.p-top-about__ul {
  margin-top: -48px;
  position: relative;
  z-index: 1; }
  @media screen and (max-width: 812px) {
    .p-top-about__ul {
      margin-top: 0px; } }

.p-top-blog .c-midashi__title span {
  position: relative;
  padding-right: 136px; }
  @media screen and (max-width: 812px) {
    .p-top-blog .c-midashi__title span {
      padding-right: 0; } }
.p-top-blog .c-midashi__title span::after {
  content: "";
  position: absolute;
  display: block;
  width: 120px;
  height: 120px;
  bottom: 0;
  right: 0;
  background: url("images/blog_img.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: bottom; }
  @media screen and (max-width: 812px) {
    .p-top-blog .c-midashi__title span::after {
      width: 100px;
      height: 100px;
      bottom: calc(1em + 24px);
      right: -3%; } }

.p-top-kinri {
  background: #258CC4; }
.p-top-kinri .c-midashi {
  color: #ffffff; }
.p-top-kinri .c-midashi__sub {
  color: #ffffff; }
  .p-top-kinri .c-midashi__sub::before {
    background: #ffffff; }
.p-top-kinri__inner {
  position: relative; }
  .p-top-kinri__inner::before {
    content: "";
    position: absolute;
    display: block;
    width: 30%;
    max-width: 300px;
    height: 267px;
    top: -80px;
    right: 3%;
    background: url("images/kinri_img.png");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: right; }
    @media screen and (max-width: 812px) {
      .p-top-kinri__inner::before {
        display: none; } }
.p-top-kinri__list {
  display: flex;
  gap: 24px;
  flex-wrap: wrap; }
  @media screen and (max-width: 812px) {
    .p-top-kinri__list {
      gap: 16px; } }
.p-top-kinri__item {
  width: calc((100% - 48px) / 3);
  background: #ffffff;
  border-radius: 8px;
  list-style: none;
  padding: 0;
  margin: 0; }
  @media screen and (max-width: 812px) {
    .p-top-kinri__item {
      width: 100%; } }
.p-top-kinri__link {
  display: flex;
  align-items: center;
  height: 100%;
  width: 100%;
  padding: 1em;
  padding-right: calc(1em + 24px);
  color: #333333;
  font-weight: 500;
  position: relative;
  transition-duration: 0.3s; }
  .p-top-kinri__link::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 1em;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    margin-left: 0.5em;
    background-image: url("images/icon/icon_arrow__blue.svg");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat; }
  .p-top-kinri__link[target="_blank"]::after {
    background-image: url(images/icon/icon_gaibu__blue.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat; }
  .p-top-kinri__link[href$=".pdf"]::after {
    width: 24px;
    height: 30px;
    background-image: url(images/icon/icon_pdf__blue.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat; }
  .p-top-kinri__link:hover {
    opacity: 0.9;
    color: #258CC4; }

.p-top-faq {
  background: #f6f6f6; }
.p-top-faq__inner {
  padding-left: 48px;
  padding-right: 48px; }
  @media screen and (max-width: 812px) {
    .p-top-faq__inner {
      padding-left: 16px;
      padding-right: 16px; } }
.p-top-faq__content {
  border-radius: 16px;
  padding: 3% 48px;
  box-shadow: rgba(17, 17, 26, 0.05) 0px 4px 16px, rgba(17, 17, 26, 0.05) 0px 8px 32px;
  background: #ffffff;
  position: relative; }
  @media screen and (max-width: 812px) {
    .p-top-faq__content {
      border-radius: 8px;
      padding: 5%; } }
.p-top-faq__faq {
  background: #005776;
  margin-bottom: 24px;
  border-radius: 16px;
  color: #ffffff;
  padding: 0 3%;
  cursor: pointer;
  overflow: hidden;
  transition-duration: 0.2s; }
  @media screen and (max-width: 812px) {
    .p-top-faq__faq {
      border-radius: 8px;
      margin-bottom: 16px; } }
  .p-top-faq__faq:last-of-type {
    margin-bottom: 0; }
  .p-top-faq__faq:hover {
    opacity: 0.8; }
  .p-top-faq__faq:hover.is-active {
    opacity: 1; }
@media screen and (max-width: 812px) {
  .p-top-faq__midashi {
    text-align: left;
    padding-left: 5%; } }
.p-top-faq__midashi .c-midashi__title span {
  position: relative;
  padding-right: 136px; }
  @media screen and (max-width: 812px) {
    .p-top-faq__midashi .c-midashi__title span {
      padding-right: 95px; } }
.p-top-faq__midashi .c-midashi__title span::after {
  content: "";
  position: absolute;
  display: block;
  width: 120px;
  height: 120px;
  bottom: 0;
  right: 0;
  background: url("images/faq_img.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: bottom; }
  @media screen and (max-width: 812px) {
    .p-top-faq__midashi .c-midashi__title span::after {
      width: 95px;
      height: 95px; } }
.p-top-faq__layout {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0.8em 0; }
.p-top-faq__icon {
  width: 40px;
  height: 40px; }
  @media screen and (max-width: 812px) {
    .p-top-faq__icon {
      width: 35px;
      height: 35px; } }
.p-top-faq--q {
  padding-right: calc(3% + 20px);
  position: relative; }
  .p-top-faq--q::before {
    content: "";
    display: block;
    width: 20px;
    height: 2px;
    background: #ffffff;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    transition-duration: 0.3s; }
  .p-top-faq--q::after {
    content: "";
    display: block;
    width: 20px;
    height: 2px;
    background: #ffffff;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%) rotate(90deg);
    transition-duration: 0.3s; }
.p-top-faq--a {
  height: 0;
  overflow: hidden;
  transition-duration: 0.3s; }
.p-top-faq--a__inner {
  background-image: linear-gradient(to right, #ffffff 2px, transparent 2px);
  background-size: 7px 2px;
  background-repeat: repeat-x;
  background-position: right top; }
  @media screen and (max-width: 1024px) {
    .p-top-faq--a__inner {
      align-items: flex-start;
      margin-top: 0; } }
.p-top-faq__faq.is-active .p-top-faq--q::after {
  top: 50%;
  transform: translateY(-50%) rotate(0deg); }
.p-top-faq__faq.is-active .p-top-faq--a {
  height: 100%; }
.p-top-faq__soushoku--right {
  position: absolute;
  width: 65px;
  bottom: -30px;
  top: 50%;
  transform: translateY(-50%);
  right: -32px; }
  @media screen and (max-width: 812px) {
    .p-top-faq__soushoku--right {
      display: none; } }
.p-top-faq__soushoku--left {
  position: absolute;
  width: 65px;
  bottom: -30px;
  left: -32px; }
  @media screen and (max-width: 812px) {
    .p-top-faq__soushoku--left {
      display: none; } }

.p-campain.campaign-end .p-campain-campBnr__img {
  cursor: default;
  position: relative; }
  .p-campain.campaign-end .p-campain-campBnr__img::before {
    content: "募集受付は終了しました";
    display: block;
    width: 100%;
    text-align: center;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-family: "Murecho", sans-serif;
    font-size: min(calc(40 / 1200 * 100vw), 40px);
    font-weight: 600;
    text-shadow: 0 0 20px rgba(0, 0, 0, 0.6);
    color: #ffffff;
    z-index: 1; }
    @media screen and (max-width: 812px) {
      .p-campain.campaign-end .p-campain-campBnr__img::before {
        font-size: 1.0625rem; } }
  .p-campain.campaign-end .p-campain-campBnr__img::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: #333333;
    opacity: 0.5; }
.p-campain.campaign-end .p-campain-applyBtn {
  display: none; }
.p-campain.campaign-end .p-campain-btnArea__btn {
  width: auto; }
.p-campain__read {
  text-align: center; }
  @media screen and (max-width: 812px) {
    .p-campain__read {
      text-align: left; } }

.p-campain-campBnr__img {
  border-radius: 8px;
  overflow: hidden;
  line-height: 0; }
  .p-campain-campBnr__img img {
    width: 100%; }

.p-campain-about {
  border-radius: 16px;
  padding: 3% 5%;
  box-shadow: rgba(0, 0, 0, 0.09) 0px 3px 12px; }
  @media screen and (max-width: 812px) {
    .p-campain-about {
      padding: 5%; } }
.p-campain-about__smallText {
  font-size: 1.0625rem; }
  @media screen and (max-width: 812px) {
    .p-campain-about__smallText {
      font-size: 0.875rem; } }
.p-campain-about__item {
  display: flex;
  gap: 24px;
  align-items: center;
  font-family: "Murecho", sans-serif;
  margin-bottom: 24px;
  padding: 1em;
  background: #f6f6f6;
  border-radius: 8px; }
  @media screen and (max-width: 812px) {
    .p-campain-about__item {
      flex-direction: column;
      gap: 16px;
      padding: 1em; } }
.p-campain-about__category {
  text-align: center;
  font-weight: 600;
  padding: 8px;
  background: #258CC4;
  border-radius: 8px;
  color: #ffffff;
  width: 20%;
  min-width: 164px; }
  @media screen and (max-width: 812px) {
    .p-campain-about__category {
      flex-direction: column;
      width: 100%; } }
.p-campain-about__gaiyo {
  font-family: "Murecho", sans-serif;
  font-size: min(calc(28 / 1200 * 100vw), 28px);
  letter-spacing: 0.03em;
  line-height: 1.2;
  font-weight: 600;
  margin: 0; }
  @media screen and (max-width: 812px) {
    .p-campain-about__gaiyo {
      font-size: 1.1875rem;
      text-align: center;
      line-height: 1.4; } }

.p-campain-point {
  display: flex;
  gap: 24px;
  padding: 2em 0;
  align-items: flex-start;
  border-bottom: 1px solid #EFEFEF; }
  @media screen and (max-width: 812px) {
    .p-campain-point {
      flex-direction: column;
      align-items: center;
      padding: 0 0 2em 0;
      margin-bottom: 48px; } }
.p-campain-point__text p {
  margin-bottom: 0; }
.p-campain-point__img {
  width: 175px; }
  @media screen and (max-width: 812px) {
    .p-campain-point__img {
      width: 60%;
      max-width: 230px; } }
.p-campain-point__number {
  font-size: 0.875rem;
  font-weight: 600;
  color: #258CC4;
  letter-spacing: 0.07em; }
  @media screen and (max-width: 812px) {
    .p-campain-point__number {
      display: block;
      text-align: center; } }
.p-campain-point__catch {
  font-size: 1.5rem;
  font-weight: 600; }
  @media screen and (max-width: 812px) {
    .p-campain-point__catch {
      font-size: 1.125rem;
      text-align: center; } }

.p-campain-btnArea__item {
  display: flex;
  gap: 24px;
  justify-content: center; }
  @media screen and (max-width: 812px) {
    .p-campain-btnArea__item {
      flex-direction: column;
      align-items: center; } }
.p-campain-btnArea__btn {
  width: 40%; }
  @media screen and (max-width: 812px) {
    .p-campain-btnArea__btn {
      width: 100%; } }
  .p-campain-btnArea__btn a {
    width: 100%;
    text-align: left; }

.p-campain-gift__img {
  width: 100%;
  max-height: 600px; }

.p-detail .l-inner--intro .c-midashi {
  margin-bottom: 1.8em; }
  @media screen and (max-width: 812px) {
    .p-detail .l-inner--intro .c-midashi__title {
      text-align: left; } }
.p-detail .o-data {
  margin-top: 24px; }

.p-detail__inner {
  font-weight: 500; }
.p-detail__inner::after {
  content: "";
  display: block;
  clear: both; }
.p-detail__inner h3,
.p-detail__inner h4,
.p-detail__inner h5,
.p-detail__inner h6,
.p-detail__inner h7 {
  font-family: "Murecho", sans-serif;
  font-weight: 600; }
.p-detail__inner h3 {
  border-bottom: 2px solid #EFEFEF;
  margin-bottom: 24px;
  text-align: center; }
.p-detail__inner h4 {
  margin-bottom: 24px;
  position: relative;
  text-align: center; }
  .p-detail__inner h4::after {
    content: "・・・";
    position: absolute;
    display: block;
    font-size: 1.5625rem;
    letter-spacing: -0.4em;
    color: #258CC4;
    font-weight: 900;
    bottom: -1em;
    left: 50%;
    transform: translateX(-50%); }
.p-detail__inner h5, .p-detail__inner h6 {
  margin-bottom: 16px; }
  .p-detail__inner h5::before, .p-detail__inner h6::before {
    content: "■";
    display: inline-block;
    margin-right: 0.3em;
    font-size: 1em;
    color: #258CC4; }
.p-detail__inner table {
  margin-bottom: 24px;
  max-width: 100%; }
.p-detail__inner table th {
  color: #ffffff;
  background: #258CC4;
  border: 1px solid #EFEFEF; }
.p-detail__inner table td {
  border: 1px solid #EFEFEF;
  font-weight: 500;
  background: #ffffff; }
.p-detail__inner ul {
  font-weight: 500;
  margin-bottom: 24px; }
.p-detail__inner a {
  display: inline-block;
  transition-duration: 0.1s; }
  .p-detail__inner a[target="_blank"]::after {
    content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    background-image: url(images/icon/icon_gaibu__blue.svg);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    margin-left: 5px;
    position: relative;
    top: 0.1em; }
  .p-detail__inner a[href$=".pdf"]::after {
    content: "";
    display: inline-block;
    width: 1.2em;
    height: 1.2em;
    background-image: url(images/icon/icon_pdf__blue.svg);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    margin-left: 5px;
    position: relative;
    top: 0.2em; }
  .p-detail__inner a:hover {
    opacity: 0.7; }

.u-margin--top--large {
  margin-top: 80px; }

.u-margin--top--medium {
  margin-top: 24px; }

.u-margin--top--small {
  margin-top: 16px; }

.u-margin--bottom--large {
  margin-bottom: 80px; }

.u-margin--bottom--medium {
  margin-bottom: 24px; }

.u-margin--bottom--small {
  margin-bottom: 16px; }

.u-margin--auto {
  margin: auto; }

.u-color_red,
.color_red {
  color: #E72D0F; }

.u-color_pink,
.color_pink {
  color: #EC708C; }

.u-color_green,
.color_green {
  color: #57A533; }

.u-color_blue,
.color_blue {
  color: #258CC4; }

.u-text--center {
  text-align: center !important; }

.u-text--left {
  text-align: left !important; }

.u-text--right {
  text-align: right !important; }

.u-font--bold {
  font-weight: bold !important; }

.u-font--normal {
  font-weight: normal !important; }

.u-font--large {
  font-size: 120% !important; }

.u-font--nomal {
  font-size: 100% !important; }

.u-font--small {
  font-size: 80% !important; }

@media screen and (max-width: 812px) {
  .u-only--pc {
    display: none !important; } }
@media screen and (min-width: 813px) {
  .u-only--sp {
    display: none !important; } }
