@charset "UTF-8";
/*
* core
* 変数を読み込むパーシャルファイルがあり、
* 名前空間を省略したいので as *
*/
/* # news-list
------------------------------ */
@keyframes animation-news-unagi {
  80% {
    transform: translateY(0px);
  }
  85% {
    transform: translateY(8px);
  }
  90% {
    transform: translateY(0px);
  }
  95% {
    transform: translateY(8px);
  }
  100% {
    transform: translateY(0px);
  }
}
/*
* foundation
*/
/* # reset
----------------------------------- */
*,
*:before,
*:after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

article,
header,
footer,
aside,
figure,
figcaption,
nav,
section {
  display: block;
}

ul,
ol {
  list-style: none;
  list-style-type: none;
}

p,
li,
dt,
dd,
th,
td,
pre {
  word-break: break-strict;
  line-break: strict;
}

table {
  border-spacing: 0;
  border-collapse: collapse;
}

img {
  border: none;
  vertical-align: middle;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  margin: 0;
}

/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
     ========================================================================== */
/**
   * Remove the margin in all browsers.
   */
body {
  margin: 0;
}

/**
   * Correct the font size and margin on `h1` elements within `section` and
   * `article` contexts in Chrome, Firefox, and Safari.
   */
/* Grouping content
     ========================================================================== */
/**
   * 1. Add the correct box sizing in Firefox.
   * 2. Show the overflow in Edge and IE.
   */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
   * 1. Correct the inheritance and scaling of font size in all browsers.
   * 2. Correct the odd `em` font sizing in all browsers.
   */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
     ========================================================================== */
/**
   * Remove the gray background on active links in IE 10.
   */
a {
  background-color: transparent;
}

/**
   * 1. Remove the bottom border in Chrome 57-
   * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
   */
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
   * Add the correct font weight in Chrome, Edge, and Safari.
   */
b,
strong {
  font-weight: bolder;
}

/**
   * 1. Correct the inheritance and scaling of font size in all browsers.
   * 2. Correct the odd `em` font sizing in all browsers.
   */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
   * Add the correct font size in all browsers.
   */
small {
  font-size: 80%;
}

/**
   * Prevent `sub` and `sup` elements from affecting the line height in
   * all browsers.
   */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
     ========================================================================== */
/**
   * Remove the border on images inside links in IE 10.
   */
img {
  border-style: none;
}

/* Forms
     ========================================================================== */
/**
   * 1. Change the font styles in all browsers.
   * 2. Remove the margin in Firefox and Safari.
   */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
   * Show the overflow in IE.
   * 1. Show the overflow in Edge.
   */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
   * Remove the inheritance of text transform in Edge, Firefox, and IE.
   * 1. Remove the inheritance of text transform in Firefox.
   */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
   * Correct the inability to style clickable types in iOS and Safari.
   */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
   * Remove the inner border and padding in Firefox.
   */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

/**
   * Restore the focus styles unset by the previous rule.
   */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
   * Correct the padding in Firefox.
   */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
   * 1. Correct the text wrapping in Edge and IE.
   * 2. Correct the color inheritance from `fieldset` elements in IE.
   * 3. Remove the padding so developers are not caught out when they zero out
   *    `fieldset` elements in all browsers.
   */
legend {
  color: inherit; /* 2 */
  display: table; /* 1 */
  box-sizing: border-box; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
   * Add the correct vertical alignment in Chrome, Firefox, and Opera.
   */
progress {
  vertical-align: baseline;
}

/**
   * Remove the default vertical scrollbar in IE 10+.
   */
textarea {
  overflow: auto;
}

/**
   * 1. Add the correct box sizing in IE 10.
   * 2. Remove the padding in IE 10.
   */
[type=checkbox],
[type=radio] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
   * Correct the cursor style of increment and decrement buttons in Chrome.
   */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
   * 1. Correct the odd appearance in Chrome and Safari.
   * 2. Correct the outline style in Safari.
   */
[type=search] {
  outline-offset: -2px; /* 2 */
  -webkit-appearance: textfield; /* 1 */
}

/**
   * Remove the inner padding in Chrome and Safari on macOS.
   */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
   * 1. Correct the inability to style clickable types in iOS and Safari.
   * 2. Change font properties to `inherit` in Safari.
   */
::-webkit-file-upload-button {
  font: inherit; /* 2 */
  -webkit-appearance: button; /* 1 */
}

/* Interactive
     ========================================================================== */
/*
   * Add the correct display in Edge, IE 10+, and Firefox.
   */
details {
  display: block;
}

/*
   * Add the correct display in all browsers.
   */
summary {
  display: list-item;
}

/* Misc
     ========================================================================== */
/**
   * Add the correct display in IE 10+.
   */
template {
  display: none;
}

/**
   * Add the correct display in IE 10.
   */
[hidden] {
  display: none;
}

/*
* core
* 変数を読み込むパーシャルファイルがあり、
* 名前空間を省略したいので as *
*/
/* # base
----------------------------------- */
*,
*:before,
*:after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body {
  line-height: 1.6;
  width: auto;
  font-feature-settings: "palt";
  -webkit-font-smoothing: antialiased;
}

@media only screen and (max-width: 767px) {
  body {
    min-width: 100%;
  }
}
html {
  -webkit-text-size-adjust: 100%;
}
html,
body {
  height: 100%;
}

img {
  vertical-align: middle;
}

@media only screen and (max-width: 767px) {
  img {
    max-width: 100%;
  }
}
ul {
  list-style: none;
}

/* # link style
----------------------------------- */
a {
  color: #202020;
  text-decoration: none;
}

a:hover {
  text-decoration: none;
}

/* # for analyze tag
----------------------------------- */
body > img {
  display: none;
}

/* # button style
----------------------------------- */
button {
  background: none;
  cursor: pointer;
  border: none;
}

/*
* layout
*/
/*
* core
* 変数を読み込むパーシャルファイルがあり、
* 名前空間を省略したいので as *
*/
.l-header {
  position: fixed;
  top: 0;
  z-index: 1000;
  width: 100%;
  height: 10px;
}

/* # header__nav
  ------------------------------ */
.l-header__box {
  display: flex;
  gap: 40px;
  justify-content: space-between;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 200;
  background-color: #fbf5dd;
  width: 350px;
  height: 100dvh;
  padding: 80px 40px 40px;
  visibility: hidden;
  opacity: 0;
  flex-direction: column;
  transition: opacity 0.5s ease, visibility 0.5s ease;
}
.l-header__box.is-open {
  visibility: visible;
  opacity: 1;
  transition: opacity 0.5s ease, visibility 0.5s ease;
}
@media only screen and (max-width: 767px) {
  .l-header__box {
    width: 300px;
    padding: 90px 24px 40px;
  }
}

.l-header__nav {
  display: grid;
  place-items: center;
}

.l-header__nav-list {
  display: grid;
  gap: 40px;
}

.l-header__nav-link {
  color: #202020;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 28px;
  font-weight: 800;
  letter-spacing: 0.05em;
  display: inline-block;
  width: 100%;
  height: 100%;
  transition: color 0.3s ease;
}
@media only screen and (max-width: 767px) {
  .l-header__nav-link {
    font-size: 24px;
  }
}
@media (any-hover: hover) {
  .l-header__nav-link:hover {
    color: #ff7311;
    transition: color 0.3s ease;
  }
}

.l-header__bottom-container {
  display: grid;
  grid-auto-rows: min-content;
  gap: 20px;
}

.l-header__navin-sns {
  display: grid;
  grid-template-columns: repeat(3, 40px);
  grid-template-rows: 40px;
  gap: 20px;
  width: fit-content;
  margin-inline: auto;
}

.l-header__navin-sns-link {
  display: inline-block;
  width: 100%;
  height: 100%;
  transition: transform 0.3s ease;
}
@media (any-hover: hover) {
  .l-header__navin-sns-link:hover {
    transition: transform 0.3s ease;
    transform: translateY(-5px);
  }
}

.l-header__navin-sns-img {
  width: 100%;
  height: auto;
}

.l-header__copyright {
  color: #202020;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 12px;
  font-weight: 400;
  text-align: center;
  align-self: end;
  height: fit-content;
}

/* # hamburger-btn
------------------------------ */
.l-header__container {
  display: grid;
  grid-template-columns: 52px;
  gap: 14px;
  position: fixed;
  top: 20px;
  right: 20px;
  z-index: 900;
}

.l-header__button {
  display: grid;
  grid-auto-rows: min-content;
  gap: 4px;
  justify-content: center;
  align-content: center;
  background-color: #fff;
  width: 52px;
  height: 52px;
  padding-top: 2px;
  cursor: pointer;
  border: 2px solid #202020;
  border-radius: 9999px;
  transition: transform 0.3s ease;
}
.l-header__button.is-open .l-header__button-top-line {
  transition: all 0.2s ease;
  rotate: 20deg;
  translate: 2px 3px;
}
.l-header__button.is-open .l-header__button-bottom-line {
  width: 30px;
  transition: all 0.2s ease;
  rotate: -20deg;
  translate: 2px -3px;
}
@media (any-hover: hover) {
  .l-header__button:hover {
    transition: transform 0.3s ease;
    transform: translateY(-5px);
  }
}

.l-header__button-top-line {
  background-color: #202020;
  width: 30px;
  height: 2px;
  border-radius: 9999px;
  transition: all 0.2s ease;
}

.l-header__button-bottom-line {
  background-color: #202020;
  width: 20px;
  height: 2px;
  border-radius: 9999px;
  transition: all 0.2s ease;
}

.l-header__button-text {
  color: #202020;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 11px;
  font-weight: 700;
  padding-top: 2px;
}

.l-header__sns-list {
  display: grid;
  grid-template-columns: 52px;
  grid-template-rows: repeat(3, 52px);
  gap: 14px;
  width: fit-content;
}
@media only screen and (max-width: 767px) {
  .l-header__sns-list {
    display: none;
  }
}
.l-header__sns-list.is-open {
  display: none;
}

.l-header__sns-link {
  display: inline-block;
  width: 100%;
  height: 100%;
  transition: transform 0.3s ease;
}
@media (any-hover: hover) {
  .l-header__sns-link:hover {
    transition: transform 0.3s ease;
    transform: translateY(-5px);
  }
}

.l-header__sns-img {
  width: 100%;
  height: auto;
}

/* # header__nav-overlay
  ------------------------------ */
.l-header__nav-overlay {
  position: fixed;
  z-index: 100;
  background-color: rgba(0, 0, 0, 0.7);
  width: 100%;
  height: 100dvh;
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.5s ease, visibility 0.5s ease;
  inset: 0;
}
.l-header__nav-overlay.is-open {
  visibility: visible;
  opacity: 1;
  transition: opacity 0.5s ease, visibility 0.5s ease;
}

/*
* core
* 変数を読み込むパーシャルファイルがあり、
* 名前空間を省略したいので as *
*/
.l-footer {
  position: relative;
  background-color: #ff7311;
  width: calc(100% + 40px);
  margin: 0 -20px;
}
.l-footer::before {
  position: absolute;
  top: -60px;
  background-color: #ff7311;
  width: calc(100% + 40px);
  height: 80px;
  margin: 0 -20px;
  content: "";
  border-top-left-radius: 4000px 400px;
  border-top-right-radius: 4000px 400px;
}
@media only screen and (max-width: 767px) {
  .l-footer::before {
    top: -30px;
    height: 50px;
    border-top-left-radius: 100% 100px;
    border-top-right-radius: 100% 100px;
  }
}

.l-footer__container {
  display: grid;
  grid-template-columns: 220px max-content;
  justify-content: space-between;
  align-items: end;
  width: 100%;
  max-width: 670px;
  margin-inline: auto;
}
@media only screen and (max-width: 767px) {
  .l-footer__container {
    grid-template-columns: 200px max-content;
    justify-content: space-evenly;
  }
}

.l-footer__inner {
  display: grid;
  grid-template-rows: min-content max-content;
  width: 100%;
}

.l-footer__logo {
  width: 100%;
  height: auto;
  padding-top: 20px;
}

.l-footer__character {
  width: 100%;
  height: auto;
  transform: translateY(10px);
}
@media only screen and (max-width: 767px) {
  .l-footer__character {
    transform: translateY(6px);
  }
}

/* # footer-nav
------------------------------ */
.l-footer__nav {
  z-index: 100;
  padding-bottom: 45px;
}
@media only screen and (max-width: 767px) {
  .l-footer__nav {
    padding-bottom: 20px;
  }
}

.l-footer__nav-list {
  display: grid;
  grid-template-columns: repeat(2, min-content);
  row-gap: 20px;
  column-gap: 30px;
}
@media only screen and (max-width: 767px) {
  .l-footer__nav-list {
    grid-template-columns: 100%;
    row-gap: 8px;
    place-items: end;
  }
}

.l-footer__nav-link {
  color: #fbf5dd;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 0.05em;
  transition: opacity 0.3s ease;
}
@media (any-hover: hover) {
  .l-footer__nav-link:hover {
    opacity: 0.6;
    transition: opacity 0.3s ease;
  }
}
@media only screen and (max-width: 767px) {
  .l-footer__nav-link {
    font-size: 14px;
  }
}

/* # footer-copyright
------------------------------ */
.l-footer__copyright {
  position: relative;
  z-index: 10;
  background-image: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22_%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC_1%22%20data-name%3D%22%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC%201%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201440%20101.14%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20%23333%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Cpath%20class%3D%22cls-1%22%20d%3D%22M1440%2C33.88v67.26H0V30.24C216.88%2C10.72%2C453.18%2C0%2C700.46%2C0c262.19%2C0%2C512.08%2C12.06%2C739.54%2C33.88Z%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
  width: 100%;
  height: 60px;
  padding: 8px 0 20px;
}

.l-footer__copyright-text {
  color: #fff;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 12px;
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  width: max-content;
  transform: translate(-50%, -50%);
}
@media only screen and (max-width: 767px) {
  .l-footer__copyright-text {
    font-size: 10px;
  }
}

/*
* core
* 変数を読み込むパーシャルファイルがあり、
* 名前空間を省略したいので as *
*/
.l-main {
  display: grid;
  grid-auto-rows: min-content;
  gap: 60px;
  background-color: #fbf5dd;
  width: 100%;
  padding: 60px 0 80px;
  overflow: hidden;
  place-items: center;
}
@media only screen and (max-width: 767px) {
  .l-main {
    gap: 24px;
    padding: 20px 0 80px;
  }
}

.l-main--top-radius {
  border-top-left-radius: 100px;
  border-top-right-radius: 100px;
}
@media only screen and (max-width: 767px) {
  .l-main--top-radius {
    border-top-left-radius: 48px;
    border-top-right-radius: 48px;
  }
}

/*
* core
* 変数を読み込むパーシャルファイルがあり、
* 名前空間を省略したいので as *
*/
.l-section {
  display: grid;
  grid-auto-rows: min-content;
  row-gap: 60px;
  width: 100%;
  padding: 50px 40px 60px;
  margin-inline: auto;
}
@media only screen and (max-width: 767px) {
  .l-section {
    row-gap: 50px;
    padding: 40px 12px 50px;
  }
}

.l-section--gap30 {
  row-gap: 30px;
}

.l-section--orange {
  background-color: #ff7311;
}

.l-section--curved {
  width: calc(100% + 400px);
  margin: 0 -200px;
  padding: 160px 200px 160px;
  border-top-left-radius: 100% 30%;
  border-top-right-radius: 100% 30%;
  border-bottom-right-radius: 100% 30%;
  border-bottom-left-radius: 100% 30%;
}
@media only screen and (max-width: 767px) {
  .l-section--curved {
    padding: 100px 200px 100px;
  }
}

/*
* core
* 変数を読み込むパーシャルファイルがあり、
* 名前空間を省略したいので as *
*/
.l-aside {
  display: grid;
  row-gap: 40px;
  grid-auto-rows: min-content;
}

/*
* core
* 変数を読み込むパーシャルファイルがあり、
* 名前空間を省略したいので as *
*/
/**
* TODO:
* - 最終的にmax-widthを960px じゃなくて、1180pxとか1140pxでいいかも
*/
.l-wrapper {
  display: grid;
  position: relative;
  width: 100%;
  overflow-x: clip;
  place-items: center;
}
.l-wrapper.is-fixed {
  position: fixed;
  overflow: hidden;
}
.l-wrapper::after {
  position: absolute;
  z-index: -1000;
  background-color: #fbf5dd;
  width: 100%;
  height: 100%;
  content: "";
  inset: 0;
}

.l-wrapper--front {
  padding: 10px 10px 0;
}
.l-wrapper--front::after {
  background-color: #ff7311;
}

/*
* object
*/
.breadcrumb {
  display: flex;
  justify-content: flex-start;
  width: fit-content;
  padding: 10px 0 0;
  flex-wrap: wrap;
}

.breadcrumb li {
  margin-right: 20px;
  padding-bottom: 10px;
}

.breadcrumb li a {
  position: relative;
  padding-right: 15px;
}

.breadcrumb li a::after {
  position: absolute;
  top: 7px;
  right: -4px;
  width: 8px;
  height: 8px;
  content: "";
  transform: rotate(-45deg);
}

.breadcrumb li:nth-child(1) {
  padding-left: 17px;
}

.breadcrumb li:nth-child(1) a::before {
  color: var(--sub-gray);
  position: absolute;
  top: 2px;
  left: -20px;
  background-image: url("./image/home_logo.svg");
  width: 20px;
  height: 16px;
  content: "";
}

.breadcrumb li a::after:nth-last-child(1) {
  content: "";
}

.breadcrumb li span {
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0.05em;
}

.breadcrumb li span {
  line-height: 1.5;
}

/*
* core
* 変数を読み込むパーシャルファイルがあり、
* 名前空間を省略したいので as *
*/
.c-section-title {
  display: grid;
  grid-auto-rows: min-content;
  row-gap: 8px;
  place-items: center;
}

.c-section-title__heading {
  color: #ff7311;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 44px;
  font-size: 78px;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: 0.1em;
  position: relative;
  text-shadow: 3px 3px #8acbb0;
}
.c-section-title__heading::before {
  position: absolute;
  top: 20px;
  left: -30px;
  background: #ff7311;
  width: 4px;
  height: 60px;
  content: "";
  border-radius: 9999px;
  rotate: -32deg;
}
.c-section-title__heading::after {
  position: absolute;
  top: 20px;
  right: -30px;
  background: #ff7311;
  width: 4px;
  height: 60px;
  content: "";
  border-radius: 9999px;
  rotate: 32deg;
}
@media only screen and (max-width: 767px) {
  .c-section-title__heading {
    font-size: 40px;
  }
  .c-section-title__heading::before {
    top: 10px;
    left: -20px;
    height: 40px;
  }
  .c-section-title__heading::after {
    top: 10px;
    right: -20px;
    height: 40px;
  }
}

.c-section-title__heading--beige {
  color: #fbf5dd;
}
.c-section-title__heading--beige::before {
  background: #fbf5dd;
}
.c-section-title__heading--beige::after {
  background: #fbf5dd;
}

.c-section-title__ruby {
  color: #ff7311;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 18px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.2em;
}

.c-section-title__ruby--beige {
  color: #fbf5dd;
}

/*
* core
* 変数を読み込むパーシャルファイルがあり、
* 名前空間を省略したいので as *
*/
.c-area-bg {
  position: relative;
}
.c-area-bg::after {
  position: absolute;
  z-index: -900;
  background-repeat: repeat;
  background-position: center;
  background-size: 15px 15px;
  opacity: 0.8;
  content: "";
  inset: 0;
}

.c-area-bg--dot::after {
  background-image: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22_%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC_1%22%20data-name%3D%22%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC%201%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2015%2015%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20%23212020%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Ccircle%20class%3D%22cls-1%22%20cx%3D%227.5%22%20cy%3D%227.5%22%20r%3D%22.75%22%2F%3E%20%3Ccircle%20class%3D%22cls-1%22%20cx%3D%2215%22%20cy%3D%2215%22%20r%3D%22.78%22%2F%3E%20%3Ccircle%20class%3D%22cls-1%22%20cx%3D%2215%22%20r%3D%22.75%22%2F%3E%20%3Ccircle%20class%3D%22cls-1%22%20r%3D%22.75%22%2F%3E%20%3Ccircle%20class%3D%22cls-1%22%20cx%3D%220%22%20cy%3D%2215%22%20r%3D%22.75%22%2F%3E%3C%2Fsvg%3E");
}

.c-area-bg--check::after {
  background-image: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22_%E3%82%B9%E3%83%A9%E3%82%A4%E3%82%B9%22%20data-name%3D%22%E3%82%B9%E3%83%A9%E3%82%A4%E3%82%B9%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2015%2015%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20none%3B%20stroke%3A%20%23212020%3B%20stroke-miterlimit%3A%2010%3B%20stroke-width%3A%20.5px%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Crect%20class%3D%22cls-1%22%20y%3D%220%22%20width%3D%2215%22%20height%3D%2215%22%2F%3E%3C%2Fsvg%3E");
  opacity: 0.4;
}

.c-area-bg--pattern {
  position: relative;
}
.c-area-bg--pattern::before {
  position: absolute;
  z-index: -900;
  background-image: url("../../static/image/common/img_bg.webp");
  background-repeat: repeat;
  background-size: 1765px 1188px;
  width: 100%;
  height: 100%;
  opacity: 0.6;
  overflow: hidden;
  content: "";
  animation: bg-move-left-bottom 32s linear infinite;
}
.c-area-bg--pattern::after {
  background-image: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22_%E3%82%B9%E3%83%A9%E3%82%A4%E3%82%B9%22%20data-name%3D%22%E3%82%B9%E3%83%A9%E3%82%A4%E3%82%B9%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2015%2015%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20none%3B%20stroke%3A%20%23212020%3B%20stroke-miterlimit%3A%2010%3B%20stroke-width%3A%20.5px%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Crect%20class%3D%22cls-1%22%20y%3D%220%22%20width%3D%2215%22%20height%3D%2215%22%2F%3E%3C%2Fsvg%3E");
  background-size: 12px 12px;
  opacity: 0.4;
}

@keyframes bg-move-left-bottom {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -1188px 1188px;
  }
}
/*
* core
* 変数を読み込むパーシャルファイルがあり、
* 名前空間を省略したいので as *
*/
/**
* TODO:
* - ここはホバーで凹む方がいい気がする
*/
.c-btn {
  color: #202020;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 14px;
  font-weight: 500;
  display: grid;
  position: relative;
  background-color: #8acbb0;
  width: 100%;
  height: 100%;
  border: 1px solid #202020;
  border-radius: 9999px;
  box-shadow: 2px 2px 0 #202020;
  transition: all 0.3s ease;
  place-content: center;
}
.c-btn::after {
  position: absolute;
  top: 50%;
  right: 20px;
  background-image: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22_%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC_1%22%20data-name%3D%22%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC%201%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%204.95%208.1%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20%23212020%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Cpath%20class%3D%22cls-1%22%20d%3D%22M.85%2C8.1c-.21%2C0-.41-.08-.57-.24-.32-.32-.32-.83%2C0-1.15l2.67-2.67L.28%2C1.38C-.04%2C1.07-.04.55.28.24S1.11-.08%2C1.43.24l3.24%2C3.24c.32.32.32.83%2C0%2C1.15l-3.24%2C3.24c-.16.16-.37.24-.57.24Z%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 5px;
  height: 9px;
  content: "";
  transition: all 0.3s ease;
  transform: translateY(-50%);
}
@media (any-hover: hover) {
  .c-btn:hover {
    color: #fff;
    background-color: #ff7311;
    box-shadow: none;
    transition: all 0.3s ease;
    transform: translateY(2px);
  }
  .c-btn:hover::after {
    background-image: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22_%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC_1%22%20data-name%3D%22%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC%201%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%204.92%208.15%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20%23fff%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Cpath%20class%3D%22cls-1%22%20d%3D%22M.83%2C8.12c-.21%2C0-.41-.08-.57-.24-.32-.32-.32-.83%2C0-1.15l2.67-2.67L.26%2C1.4C-.06%2C1.09-.06.57.26.26S1.09-.06%2C1.41.26l3.24%2C3.24c.32.32.32.83%2C0%2C1.15l-3.24%2C3.24c-.16.16-.37.24-.57.24Z%22%2F%3E%3C%2Fsvg%3E");
    transition: all 0.3s ease;
    translate: 10px;
  }
}

/*
* core
* 変数を読み込むパーシャルファイルがあり、
* 名前空間を省略したいので as *
*/
.c-news-list {
  display: grid;
  gap: 60px;
  width: 100%;
  max-width: 800px;
  margin-inline: auto;
}

.c-news-list__item {
  position: relative;
  z-index: 100;
}
.c-news-list__item:first-of-type::after {
  position: absolute;
  top: -54px;
  right: 22px;
  z-index: -10;
  background-image: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22_%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC_1%22%20data-name%3D%22%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC%201%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2098%2081%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20%23978a79%3B%20%7D%20.cls-2%20%7B%20fill%3A%20%23b8ab99%3B%20%7D%20.cls-3%20%7B%20fill%3A%20%233e3a39%3B%20%7D%20.cls-4%20%7B%20fill%3A%20%236e6366%3B%20%7D%20.cls-5%20%7B%20fill%3A%20%2382767a%3B%20%7D%20.cls-6%20%7B%20fill%3A%20%23212020%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Cpath%20class%3D%22cls-6%22%20d%3D%22M97.54%2C47.68c-.81-14.95-12.82-23.47-20.47-27.41-1.19-2.18-8.75-15.26-19.26-18.83-10.6-3.61-15.21%2C3.16-15.25%2C3.22-.08.14-.13.29-.14.44-.11%2C3.32%2C1.04%2C6.23%2C3.43%2C8.63%2C5.09%2C5.13%2C14.75%2C7.02%2C21.89%2C7.72%2C1.8.17%2C3.44.27%2C4.81.32%2C4%2C4.52%2C11.22%2C13.8%2C11.27%2C22.16.02%2C3.47-1.22%2C6.46-3.69%2C8.9-16.05%2C15.82-33.07%2C6.15-41.26%2C1.51-6.6-3.75-5.33-9.95-3.18-15.37.66-.26%2C1.16-.65%2C1.66-1.48.64-1.08.61-1.94.2-2.83%2C2.87-6.65%2C3.52-14.03%2C1.56-18.05-2.14-4.4-8.97-11.25-16.79-12.01-7.56-.73-14.97%2C5.64-16.98%2C7.92-3.12%2C3.56-6.72%2C10.12-3.86%2C13.6%2C1.79%2C2.16%2C5.9%2C3.77%2C8.36%2C4.58-1.12%2C2.1-3.82%2C7.62-6.06%2C16.05-4.7%2C17.68%2C9.44%2C23%2C9.51%2C23.02%2C13.83%2C6.56%2C24.49%2C9.7%2C33.59%2C10.59%2C8.99.87%2C16.48-.46%2C24.02-2.91l.27-.09c10.29-3.34%2C27.52-8.92%2C26.4-29.68Z%22%2F%3E%20%3Cpath%20class%3D%22cls-3%22%20d%3D%22M35.85%2C36.6c-.11.18-.21.33-.31.44-.23.25-.52.37-1.15.52-.22.05-.46.1-.76.17l-1.1.23c-.64.14-1.44.32-1.6.2-.03-.02-.23-.2-.34-1.21-.17-1.45%2C1.01-4.56%2C1.92-6.63.86%2C1.34%2C1.61%2C2.36%2C2.21%2C3.14.4.52.69.93.91%2C1.25.3.46.45.76.48%2C1.04.03.27-.07.52-.26.84Z%22%2F%3E%20%3Cpath%20class%3D%22cls-3%22%20d%3D%22M70.61%2C75.73l-.27.08c-4.88%2C1.58-9.76%2C2.68-15.05%2C2.99-5.66.32-11.82-.25-19.04-2.15-1.76-1.16-3.36-2.39-4.8-3.7-3.33-3.06-5.83-6.53-7.52-10.52-3.12-7.38%2C1.94-24.62%2C3.52-28.35%2C1.4-3.33%2C1.65-6.14.66-7.52-.33-.47-.98-1.01-2.16-.92-10.53.76-16.83-1.03-21.73-6.21-.16-.16-.43-.18-.6%2C0-.07.07-.12.16-.13.27-.01.12.03.24.11.33%2C5.1%2C5.38%2C11.6%2C7.25%2C22.41%2C6.48.65-.04%2C1.11.14%2C1.41.55.79%2C1.1.49%2C3.73-.76%2C6.69-1.67%2C3.95-6.8%2C21.27-3.52%2C29.02%2C1.52%2C3.59%2C3.69%2C6.77%2C6.49%2C9.61%2C1.24%2C1.26%2C2.63%2C2.47%2C4.15%2C3.6-5.85-1.71-12.39-4.24-19.87-7.8-.26-.09-3.5-1.33-6.1-4.58-2.58-3.22-4.54-8.41-2.41-16.43%2C1.22-4.56%2C2.59-8.27%2C3.74-11.02%2C1.02-2.45%2C1.89-4.13%2C2.34-4.95%2C2.29.65%2C4.6%2C1.11%2C6.58%2C1.3%2C3.47.34%2C5.69-.62%2C6.95-1.48.85-.58%2C1.26-1.11%2C1.3-1.16.28-.37.2-.9-.18-1.19-.37-.28-.91-.2-1.2.16-.02.04-.22.28-.62.59-.9.69-2.8%2C1.7-6.09%2C1.38-1.34-.13-2.85-.4-4.4-.77-.83-.2-1.67-.41-2.51-.66%2C0%2C0%2C0-.01%2C0-.01-4.13-1.23-7.31-2.86-8.54-4.35-1.14-1.38-.71-3.72.38-6.09.87-1.91%2C2.18-3.84%2C3.44-5.28%2C1.85-2.12%2C8.69-8.01%2C15.53-7.35s13.36%2C6.85%2C15.42%2C11.05c1.66%2C3.39%2C1.17%2C9.6-1.14%2C15.52-.1-.14-.21-.27-.32-.42-.75-1.01-1.78-2.39-2.95-4.36-.17-.28-.45-.43-.77-.42-.31%2C0-.6.19-.73.48-.15.3-.8%2C1.67-1.45%2C3.32-.74%2C1.93-1.46%2C4.23-1.3%2C5.68.1.89.3%2C1.87%2C1.05%2C2.41.29.2.61.31.95.34.59.06%2C1.25-.1%2C2.02-.27l.74-.16c-2.05%2C5.65-2.91%2C12.21%2C4.37%2C16.34%2C1.86%2C1.05%2C4.15%2C2.36%2C6.79%2C3.58%2C3.65%2C1.7%2C7.94%2C3.23%2C12.6%2C3.72%2C7.42.8%2C15.76-1.04%2C23.91-9.08%2C2.82-2.77%2C4.23-6.17%2C4.2-10.13-.04-7.47-5.18-15.34-9.31-20.48-.46-.57-.9-1.1-1.33-1.59-.26-.31-.51-.6-.76-.88-.11-.12-.21-.24-.31-.36.26.12.52.24.8.37.55.26%2C1.13.55%2C1.75.86%2C7.31%2C3.77%2C18.7%2C11.87%2C19.47%2C25.96%2C1.06%2C19.43-14.75%2C24.56-25.21%2C27.96Z%22%2F%3E%20%3Cpath%20class%3D%22cls-1%22%20d%3D%22M70.86%2C19.95c-3.56-.22-8.33-.74-12.87-1.94-.78-1.17-1.69-2.49-2.73-3.93%2C5.99%2C3.69%2C13.28%2C4.88%2C14.85%2C5.1.17.16.42.42.75.76Z%22%2F%3E%20%3Cpath%20class%3D%22cls-1%22%20d%3D%22M68%2C17.06c-3.63-.77-10.21-2.61-14.66-6.5%2C2.45-.28%2C7.85.1%2C14.66%2C6.5Z%22%2F%3E%20%3Cpath%20class%3D%22cls-2%22%20d%3D%22M50.75%2C9.89c-.06.28.02.55.22.76%2C1.26%2C1.33%2C2.73%2C2.46%2C4.29%2C3.43%2C1.04%2C1.44%2C1.95%2C2.76%2C2.73%2C3.93-4.26-1.13-8.31-2.85-10.93-5.48-1.98-1.99-2.97-4.39-2.94-7.11.76-.98%2C4.68-5.23%2C13.12-2.36%2C7.95%2C2.69%2C14.3%2C11.55%2C17.03%2C15.87-1.65-.72-2.84-1.15-3.3-1.3-11.09-11.76-19.37-8.5-19.71-8.36-.26.11-.45.33-.52.62Z%22%2F%3E%20%3Cpath%20class%3D%22cls-5%22%20d%3D%22M95.82%2C47.78c-.77-14.09-12.16-22.19-19.47-25.96-.62-.31-1.2-.6-1.75-.86-.28-.12-.54-.25-.8-.37.11.12.21.24.31.36.24.28.5.57.76.88.43.5.87%2C1.02%2C1.33%2C1.59%2C8.73%2C8.84%2C14.34%2C20.19%2C11.3%2C28.07-5.5%2C14.19-29.79%2C11.9-30.17%2C11.86l.07-.24c-4.66-.49-8.96-2.02-12.6-3.72-3.5-.75-10.61-2.73-12.73-6.88-2.76-5.42-.41-10.05-.28-10.3-.21.1-2.73%2C1.29-4.4-.44-1.73-1.79%2C2.85-10.67%2C2.85-10.67%2C0%2C0-.02.14-.05.36.64-1.65%2C1.3-3.02%2C1.45-3.32.13-.29.42-.47.73-.48.32%2C0%2C.61.15.77.42%2C1.17%2C1.96%2C2.2%2C3.34%2C2.95%2C4.36.11.15.21.28.32.42%2C2.31-5.91%2C2.79-12.13%2C1.14-15.52-2.05-4.2-8.56-10.39-15.42-11.05s-13.67%2C5.23-15.53%2C7.35c-1.26%2C1.44-2.57%2C3.37-3.44%2C5.28.15.16.3.33.47.5.17-.17.44-.15.6%2C0%2C4.91%2C5.18%2C11.2%2C6.97%2C21.73%2C6.21%2C1.18-.09%2C1.83.45%2C2.16.92.99%2C1.38.74%2C4.19-.66%2C7.52-1.58%2C3.73-6.65%2C20.97-3.52%2C28.35%2C1.69%2C3.99%2C4.19%2C7.46%2C7.52%2C10.52%2C6.79%2C2.08%2C14.7%2C4.11%2C23.83%2C5.85%2C5.29-.31%2C10.17-1.41%2C15.05-2.99l.27-.08c10.46-3.4%2C26.27-8.52%2C25.21-27.96Z%22%2F%3E%20%3Cpath%20class%3D%22cls-2%22%20d%3D%22M29.64%2C72.38c-9.54-3.04-16.73-6.18-21.82-8.78-2.58-3.22-4.54-8.41-2.41-16.43%2C1.22-4.56%2C2.59-8.27%2C3.74-11.02%2C3.33-.95%2C7.02-1.89%2C10.12-2.43%2C4.61-.8%2C5.67-1.91%2C5.75-2.7.85-.58%2C1.26-1.11%2C1.3-1.16.28-.37.2-.9-.18-1.19-.37-.28-.91-.2-1.2.16-.02.04-.22.28-.62.59-.9.69-2.8%2C1.7-6.09%2C1.38-1.34-.13-2.85-.4-4.4-.77-.83-.2-1.67-.41-2.51-.66%2C0%2C0%2C0-.01%2C0-.01-4.13-1.23-7.31-2.86-8.54-4.35-1.14-1.38-.71-3.72.38-6.09.15.16.3.33.47.5-.07.07-.12.16-.13.27-.01.12.03.24.11.33%2C5.1%2C5.38%2C11.6%2C7.25%2C22.41%2C6.48.65-.04%2C1.11.14%2C1.41.55.79%2C1.1.49%2C3.73-.76%2C6.69-1.67%2C3.95-6.8%2C21.27-3.52%2C29.02%2C1.52%2C3.59%2C3.69%2C6.77%2C6.49%2C9.61Z%22%2F%3E%20%3Cpath%20class%3D%22cls-4%22%20d%3D%22M87.5%2C51.5c-5.5%2C14.19-29.79%2C11.9-30.17%2C11.86l.07-.24c7.42.8%2C15.76-1.04%2C23.91-9.08%2C2.82-2.77%2C4.23-6.17%2C4.2-10.13-.04-7.47-5.18-15.34-9.31-20.48%2C8.73%2C8.84%2C14.34%2C20.19%2C11.3%2C28.07Z%22%2F%3E%20%3Cpath%20class%3D%22cls-1%22%20d%3D%22M25.02%2C31.03c-.08.79-1.13%2C1.9-5.75%2C2.7-3.11.54-6.79%2C1.48-10.12%2C2.43%2C1.02-2.45%2C1.89-4.13%2C2.34-4.95%2C2.29.65%2C4.6%2C1.11%2C6.58%2C1.3%2C3.47.34%2C5.69-.62%2C6.95-1.48Z%22%2F%3E%20%3Cpath%20class%3D%22cls-4%22%20d%3D%22M44.8%2C59.4c-3.5-.75-10.61-2.73-12.73-6.88-2.76-5.42-.41-10.05-.28-10.3-.21.1-2.73%2C1.29-4.4-.44-1.73-1.79%2C2.85-10.67%2C2.85-10.67%2C0%2C0-.02.14-.05.36-.74%2C1.93-1.46%2C4.23-1.3%2C5.68.1.89.3%2C1.87%2C1.05%2C2.41.29.2.61.31.95.34.59.06%2C1.25-.1%2C2.02-.27l.74-.16c-2.05%2C5.65-2.91%2C12.21%2C4.37%2C16.34%2C1.86%2C1.05%2C4.15%2C2.36%2C6.79%2C3.58Z%22%2F%3E%20%3Cpath%20class%3D%22cls-1%22%20d%3D%22M33.79%2C75.99c-5.85-1.71-12.39-4.24-19.87-7.8-.26-.09-3.5-1.33-6.1-4.58%2C5.1%2C2.6%2C12.29%2C5.74%2C21.82%2C8.78%2C1.24%2C1.26%2C2.63%2C2.47%2C4.15%2C3.6Z%22%2F%3E%20%3Cpath%20class%3D%22cls-4%22%20d%3D%22M55.29%2C78.81c-5.66.32-11.82-.25-19.04-2.15-1.76-1.16-3.36-2.39-4.8-3.7%2C6.79%2C2.08%2C14.7%2C4.11%2C23.83%2C5.85Z%22%2F%3E%20%3Ccircle%20class%3D%22cls-6%22%20cx%3D%2211.15%22%20cy%3D%2213.85%22%20r%3D%221.23%22%2F%3E%20%3Cpath%20class%3D%22cls-6%22%20d%3D%22M25.71%2C18.93c-.07.67-.67%2C1.17-1.34%2C1.1s-1.17-.67-1.1-1.34.66-1.17%2C1.34-1.1%2C1.17.67%2C1.1%2C1.34Z%22%2F%3E%20%3Cpath%20class%3D%22cls-5%22%20d%3D%22M36.11%2C35.76c.03.27-.07.52-.26.84-.11.18-.21.33-.31.44-.23.25-.52.37-1.15.52-.22.05-.46.1-.76.17l-1.1.23c-.64.14-1.44.32-1.6.2-.03-.02-.23-.2-.34-1.21-.17-1.45%2C1.01-4.56%2C1.92-6.63.86%2C1.34%2C1.61%2C2.36%2C2.21%2C3.14.4.52.69.93.91%2C1.25.3.46.45.76.48%2C1.04Z%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  width: 96px;
  height: 80px;
  content: "";
  animation-name: animation-news-unagi;
  animation-duration: 2s;
  animation-iteration-count: infinite;
}
@media only screen and (max-width: 767px) {
  .c-news-list__item:first-of-type::after {
    width: 87px;
    height: 72px;
  }
}

.c-news-list__link {
  display: block;
  align-items: center;
  position: relative;
  background-color: #fff;
  width: 100%;
  height: 70px;
  padding: 8px 25px;
  border: 1px solid #202020;
  border-radius: 999px;
  box-shadow: 2px 2px 0 #202020;
  transition: translate 0.2s ease-in-out;
}
.c-news-list__link::before {
  position: absolute;
  top: 50%;
  right: 25px;
  background-image: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22_%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC_1%22%20data-name%3D%22%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC%201%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2019%2014.11%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20%23212020%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Cpath%20class%3D%22cls-1%22%20d%3D%22M18.96%2C7.25c.03-.06.04-.13.04-.19s-.01-.13-.04-.19c-.03-.06-.06-.12-.11-.16L12.3.15c-.2-.2-.51-.2-.71%2C0s-.2.51%2C0%2C.71l5.7%2C5.7H.5c-.28%2C0-.5.22-.5.5s.22.5.5.5h16.79l-5.7%2C5.7c-.2.2-.2.51%2C0%2C.71.1.1.23.15.35.15s.26-.05.35-.15l6.55-6.55s.08-.1.11-.16Z%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 19px;
  height: 14px;
  content: "";
  transition: translate 0.2s ease-in-out;
  transform: translateY(-50%);
}
@media (any-hover: hover) {
  .c-news-list__link:hover {
    box-shadow: none;
    transition: translate 0.2s ease-in-out;
    translate: 0 2px;
  }
  .c-news-list__link:hover::before {
    transition: translate 0.2s ease-in-out;
    translate: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .c-news-list__link {
    height: 62px;
    padding: 10px 20px;
  }
  .c-news-list__link::before {
    right: 16px;
  }
}

.c-news-list__title {
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.05em;
  display: -webkit-box;
  padding-right: 25px;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
@media only screen and (max-width: 767px) {
  .c-news-list__title {
    font-size: 14px;
    padding-right: 20px;
  }
}

.c-news-list__date {
  color: #fff;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  position: absolute;
  top: -28px;
  left: 32px;
  z-index: -10;
  background-color: #8acbb0;
  padding: 8px 15px 12px;
  border: 1px solid #202020;
  border-top-left-radius: 12px;
  border-top-right-radius: 12px;
}
@media only screen and (max-width: 767px) {
  .c-news-list__date {
    left: 28px;
    padding: 8px 10px 12px;
  }
}

/*
* core
* 変数を読み込むパーシャルファイルがあり、
* 名前空間を省略したいので as *
*/
.p-kuma-nav {
  display: grid;
  grid-template-columns: 80px 200px;
  grid-template-rows: min-content;
  gap: 10px;
  position: fixed;
  bottom: 24px;
  left: 24px;
  z-index: 800;
  visibility: hidden;
  opacity: 0;
  transition: all 0.3s ease;
}
.p-kuma-nav.is-visible {
  visibility: visible;
  opacity: 1;
  transition: all 0.3s ease;
}
.p-kuma-nav.is-visible .p-kuma-nav__wrap {
  visibility: visible;
  opacity: 1;
  transition: all 0.3s ease;
  transform: translateX(0);
}
@media only screen and (max-width: 767px) {
  .p-kuma-nav {
    grid-template-columns: 80px 190px;
  }
}

.p-kuma-nav__wrap {
  position: relative;
  width: 100%;
  padding-top: 10px;
  visibility: hidden;
  opacity: 0;
  transform: translateX(-50px);
}

.p-kuma-nav__info {
  color: #202020;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.2;
  text-align: left;
  position: absolute;
  z-index: 1;
  background-color: #fff;
  height: fit-content;
  padding: 6px 12px;
  border: 1.5px solid #202020;
  border-radius: 10px;
}

.p-kuma-nav__info-triangle-front {
  position: absolute;
  top: 36px;
  left: 7px;
  z-index: 1;
  border-width: 9px 11px 0 0;
  border-style: solid;
  border-color: #fff transparent transparent;
  transform: skew(-25deg);
  transform-origin: top;
  translate: calc(-45% - 0.4px) 100%;
  rotate: 20deg;
}

.p-kuma-nav__info-triangle-back {
  position: absolute;
  top: 33px;
  left: 6px;
  z-index: 0;
  border-width: 12px 13px 0 0;
  border-style: solid;
  border-color: #202020 transparent transparent;
  transform: skew(-25deg);
  transform-origin: top;
  translate: -45% 100%;
  rotate: 20deg;
}

.p-kuma-nav__frame {
  display: block;
  position: relative;
  background-color: #ff7311;
  width: 80px;
  height: 80px;
  overflow: hidden;
  border: solid 2px #202020;
  border-radius: 9999px;
}

.p-kuma-nav__image {
  position: absolute;
  top: 12px;
  left: 0;
  width: 90%;
  height: auto;
  scale: -1 1;
  object-fit: cover;
}

/*
* core
* 変数を読み込むパーシャルファイルがあり、
* 名前空間を省略したいので as *
*/
.c-form {
  display: grid;
  gap: 32px;
  width: 100%;
  max-width: 500px;
  margin-inline: auto;
}

.c-form__text {
  color: #202020;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
@media only screen and (max-width: 767px) {
  .c-form__text {
    font-size: 10px;
  }
}

.c-form__text--center {
  text-align: center;
}

.c-form__item {
  display: grid;
  gap: 6px;
}

.c-form__label {
  color: #202020;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.05em;
}

.c-form__input {
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  display: block;
  width: 100%;
  height: 30px;
  padding: 0 12px;
  border: 1px solid #202020;
  border-radius: 6px;
  appearance: none;
}

.c-form__input--select {
  max-width: 300px;
}

.c-form__input--textarea {
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  height: 300px;
  padding: 12px;
}

.c-form__checkbox .wpcf7-list-item {
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  display: grid;
  grid-template-columns: min-content max-content;
  gap: 6px;
  align-items: center;
  width: fit-content;
  margin-inline: auto;
}
.c-form__checkbox .wpcf7-list-item input[type=checkbox] {
  display: inline-block;
  background-color: #fff;
  width: 16px;
  height: 16px;
  border: 1px solid #202020;
  border-radius: 4px;
  appearance: none;
}
.c-form__checkbox .wpcf7-list-item input[type=checkbox]:checked::after {
  display: block;
  width: 16px;
  height: 16px;
  content: "✔︎";
  translate: 2px -2px;
}

.c-form__link {
  color: #4679f0;
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.2;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.c-form__btn {
  position: relative;
  width: 170px;
  height: 36px;
  overflow: hidden;
  border: 1px solid #202020;
  border-radius: 9999px;
  transition: background-color 0.3s ease;
  margin-inline: auto;
}
.c-form__btn input {
  color: #202020;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 14px;
  font-weight: 500;
  display: inline-block;
  background-color: #f0e95d;
  width: 100%;
  height: 100%;
  cursor: pointer;
  border: none;
}
.c-form__btn::after {
  position: absolute;
  top: 50%;
  right: 20px;
  background-image: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22_%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC_1%22%20data-name%3D%22%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC%201%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%204.95%208.1%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20%23212020%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Cpath%20class%3D%22cls-1%22%20d%3D%22M.85%2C8.1c-.21%2C0-.41-.08-.57-.24-.32-.32-.32-.83%2C0-1.15l2.67-2.67L.28%2C1.38C-.04%2C1.07-.04.55.28.24S1.11-.08%2C1.43.24l3.24%2C3.24c.32.32.32.83%2C0%2C1.15l-3.24%2C3.24c-.16.16-.37.24-.57.24Z%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 5px;
  height: 9px;
  content: "";
  transition: all 0.3s ease;
  transform: translateY(-50%);
}
@media (any-hover: hover) {
  .c-form__btn:hover input {
    color: #fff;
    background-color: #ff7311;
    transition: all 0.3s ease;
  }
  .c-form__btn:hover::after {
    background-image: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22_%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC_1%22%20data-name%3D%22%E3%83%AC%E3%82%A4%E3%83%A4%E3%83%BC%201%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%204.92%208.15%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20%23fff%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Cpath%20class%3D%22cls-1%22%20d%3D%22M.83%2C8.12c-.21%2C0-.41-.08-.57-.24-.32-.32-.32-.83%2C0-1.15l2.67-2.67L.26%2C1.4C-.06%2C1.09-.06.57.26.26S1.09-.06%2C1.41.26l3.24%2C3.24c.32.32.32.83%2C0%2C1.15l-3.24%2C3.24c-.16.16-.37.24-.57.24Z%22%2F%3E%3C%2Fsvg%3E");
    transition: all 0.3s ease;
    translate: 10px;
  }
}

.wpcf7-response-output {
  color: #202020;
  font-family: "M PLUS Rounded 1c", sans-serif;
  text-align: center;
  background-color: #fff;
  width: fit-content;
  padding: 15px 30px !important;
  border-radius: 24px;
}

.wpcf7 form.sent .wpcf7-response-output {
  border-color: #202020 !important;
  margin-inline: auto;
}

.wpcf7-not-valid-tip {
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
}

/*
* core
* 変数を読み込むパーシャルファイルがあり、
* 名前空間を省略したいので as *
*/
.c-scrollsync-button {
  display: grid;
  gap: 16px;
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 800;
}

.c-scrollsync-button__shop {
  color: #333;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 11px;
  font-weight: 700;
  display: grid;
  grid-auto-rows: min-content;
  background-color: #f0e95d;
  width: 58px;
  height: 58px;
  border: 2px solid #333;
  border-radius: 9999px;
  place-content: center;
}

.c-scrollsync-button__shop-icon {
  width: 27px;
  height: auto;
  padding-top: 4px;
}

.c-pagetop-btn {
  display: grid;
  position: relative;
  background-color: #8acbb0;
  width: 58px;
  height: 58px;
  cursor: pointer;
  border: 2px solid #333;
  border-radius: 9999px;
  justify-items: center;
}
.c-pagetop-btn::before {
  position: absolute;
  top: 10px;
  width: 16px;
  height: 16px;
  content: "";
  border-top: 2px solid #333;
  border-left: 2px solid #333;
  transition: translate 0.3s ease;
  transform: rotate(45deg);
}
@media (any-hover: hover) {
  .c-pagetop-btn:hover::before {
    transition: translate 0.3s ease;
    translate: 0 -4px;
  }
}

.c-pagetop-btn__inner {
  display: grid;
  grid-auto-rows: min-content;
  position: absolute;
  bottom: 8px;
  justify-items: center;
}

.c-pagetop-btn__text {
  color: #333;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 11px;
  font-weight: 700;
}

/*
* core
* 変数を読み込むパーシャルファイルがあり、
* 名前空間を省略したいので as *
*/
/**
* TODO:
* - about 用は切り離した方がいいかも
*/
.c-jump-character {
  display: grid;
  grid-template-columns: repeat(3, 160px);
  grid-auto-rows: 265px;
  gap: 20px;
  align-items: end;
  padding-right: 20px;
  justify-items: center;
}
@media only screen and (max-width: 767px) {
  .c-jump-character {
    grid-template-columns: repeat(3, 100px);
    grid-auto-rows: 180px;
    gap: 12px;
  }
}

.c-jump-character--about {
  grid-template-columns: repeat(3, 130px);
  grid-auto-rows: 220px;
  place-content: center;
}
@media only screen and (max-width: 767px) {
  .c-jump-character--about {
    grid-template-columns: repeat(3, 106px);
    grid-auto-rows: 180px;
  }
}

.c-jump-character__inner {
  position: relative;
  z-index: 100;
  width: 100%;
  height: 100%;
}

.c-jump-character__img {
  position: absolute;
  bottom: 10px;
  width: 100%;
  height: auto;
  animation: jump 2s linear infinite;
}

.c-jump-character__img--p-kuma {
  animation-delay: 0.2s;
  scale: -1 1;
}

.c-jump-character__img--unagi {
  animation-delay: 0.4s;
  scale: -1 1;
}

@keyframes jump {
  0% {
    transform: translateY(0);
  }
  10% {
    transform: translateY(-40px);
  }
  20% {
    transform: translateY(0);
  }
}
.c-jump-character__shadow {
  position: absolute;
  bottom: 0;
  z-index: -10;
  width: 120px;
}
@media only screen and (max-width: 767px) {
  .c-jump-character__shadow {
    width: 100px;
  }
}

.c-jump-character__shadow--about {
  width: 120px;
}

.c-jump-character__shadow--polar {
  left: 36px;
  animation: resize 2s linear infinite;
}
@media only screen and (max-width: 767px) {
  .c-jump-character__shadow--polar {
    left: 11px;
  }
}

.c-jump-character__shadow--polar-about {
  left: 26px;
}
@media only screen and (max-width: 767px) {
  .c-jump-character__shadow--polar-about {
    left: 14px;
  }
}

.c-jump-character__shadow--p-kuma {
  left: 40px;
  animation: resize 2s linear infinite;
  animation-delay: 0.2s;
}
@media only screen and (max-width: 767px) {
  .c-jump-character__shadow--p-kuma {
    left: 10px;
  }
}

.c-jump-character__shadow--p-kuma-about {
  left: 22px;
}
@media only screen and (max-width: 767px) {
  .c-jump-character__shadow--p-kuma-about {
    left: 12px;
  }
}

.c-jump-character__shadow--unagi {
  left: 26px;
  animation: resize 2s linear infinite;
  animation-delay: 0.4s;
}
@media only screen and (max-width: 767px) {
  .c-jump-character__shadow--unagi {
    left: 7px;
  }
}

.c-jump-character__shadow--unagi-about {
  left: 16px;
}
@media only screen and (max-width: 767px) {
  .c-jump-character__shadow--unagi-about {
    left: 10px;
  }
}

@keyframes resize {
  0% {
    transform: scaleX(1);
  }
  10% {
    transform: scaleX(0.6);
  }
  20% {
    transform: scaleX(1);
  }
}
.c-jump-character__thunder {
  position: absolute;
  top: 85px;
  right: -27px;
  width: 45px;
  height: auto;
  animation: jumpAndBlink 2s linear infinite;
  animation-delay: 0.4s;
}
@media only screen and (max-width: 767px) {
  .c-jump-character__thunder {
    top: 70px;
    right: -20px;
    width: 36px;
  }
}

.c-jump-character__thunder--about {
  top: 64px;
}
@media only screen and (max-width: 767px) {
  .c-jump-character__thunder--about {
    top: 50px;
  }
}

@keyframes jumpAndBlink {
  0% {
    transform: translateY(0);
  }
  10% {
    transform: translateY(-40px);
  }
  20% {
    transform: translateY(0);
  }
  45% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  55% {
    opacity: 1;
  }
  60% {
    opacity: 0;
  }
  65% {
    opacity: 1;
  }
}
/*
* core
* 変数を読み込むパーシャルファイルがあり、
* 名前空間を省略したいので as *
*/
.c-post-wysiwyg {
  color: #202020;
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-size: 14px;
  line-height: 2;
  word-break: break-word;
}
.c-post-wysiwyg * + h2 {
  margin-top: 60px;
}
@media only screen and (min-width: 768px) {
  .c-post-wysiwyg * + h2 {
    margin-top: 80px;
  }
}
.c-post-wysiwyg * + h3 {
  margin-top: 40px;
}
@media only screen and (min-width: 768px) {
  .c-post-wysiwyg * + h3 {
    margin-top: 60px;
  }
}
.c-post-wysiwyg * + h4 {
  margin-top: 20px;
}
@media only screen and (min-width: 768px) {
  .c-post-wysiwyg * + h4 {
    margin-top: 40px;
  }
}
.c-post-wysiwyg * + p {
  margin-top: 24px;
}
@media only screen and (min-width: 768px) {
  .c-post-wysiwyg * + p {
    margin-top: 34px;
  }
}
.c-post-wysiwyg * + ul {
  margin-top: 30px;
}
@media only screen and (min-width: 768px) {
  .c-post-wysiwyg * + ul {
    margin-top: 40px;
  }
}
.c-post-wysiwyg * + img,
.c-post-wysiwyg * + .wp-block-image {
  text-align: center;
  margin-top: 30px;
}
.c-post-wysiwyg h2 {
  font-size: 16px;
  font-weight: 700;
  line-height: 24px;
}
@media only screen and (min-width: 768px) {
  .c-post-wysiwyg h2 {
    font-size: 22px;
    line-height: 32px;
  }
}
.c-post-wysiwyg h3 {
  font-size: 16px;
  font-weight: 700;
}
@media only screen and (min-width: 768px) {
  .c-post-wysiwyg h3 {
    font-size: 18px;
  }
}
.c-post-wysiwyg h4 {
  font-size: 14px;
  font-weight: 700;
}
@media only screen and (min-width: 768px) {
  .c-post-wysiwyg h4 {
    font-size: 16px;
  }
}
.c-post-wysiwyg img {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  margin-right: auto;
  margin-left: auto;
}
.c-post-wysiwyg a {
  text-decoration: underline;
}
.c-post-wysiwyg p {
  letter-spacing: 0.05em;
}
.c-post-wysiwyg ul,
.c-post-wysiwyg ol {
  font-size: 16px;
  margin-bottom: 30px;
  padding-left: 1.4em;
}
.c-post-wysiwyg ul {
  list-style: disc;
}
.c-post-wysiwyg ul ul {
  margin-bottom: 0;
  list-style: circle;
}
.c-post-wysiwyg ol {
  list-style: decimal;
}
.c-post-wysiwyg ol ol {
  margin-bottom: 0;
}
.c-post-wysiwyg li {
  margin-top: 0.5em;
}
.c-post-wysiwyg hr {
  margin: 30px 0;
  border: none;
  border-top: 1px solid #888;
}
.c-post-wysiwyg pre {
  background-color: #eee;
  margin: 30px 0;
  padding: 25px 35px;
  border-radius: 6px;
  white-space: pre-wrap;
}
@media only screen and (min-width: 768px) {
  .c-post-wysiwyg pre {
    margin: 40px 0;
  }
}
.c-post-wysiwyg pre code {
  padding: 0;
  border: none;
}
.c-post-wysiwyg table {
  max-width: 100%;
  margin: 30px 0;
  table-layout: auto;
}
@media only screen and (min-width: 768px) {
  .c-post-wysiwyg table {
    margin: 40px auto;
  }
}
.c-post-wysiwyg table thead {
  border-bottom: none;
}
.c-post-wysiwyg table tfoot {
  border-top: none;
}
.c-post-wysiwyg table th {
  font-size: 14px;
  font-weight: 400;
  text-align: left;
  background-color: rgba(245, 245, 245, 0.5019607843);
  padding: 8px;
  border: 1px solid #f2f2f2;
}
@media only screen and (min-width: 768px) {
  .c-post-wysiwyg table th {
    min-width: 100px;
    max-width: 240px;
    padding: 12px;
  }
}
.c-post-wysiwyg table td {
  font-size: 14px;
  font-weight: 400;
  background-color: #fff;
  padding: 8px;
  border: 1px solid #f2f2f2;
}
@media only screen and (min-width: 768px) {
  .c-post-wysiwyg table td {
    min-width: 100px;
    max-width: 240px;
    padding: 12px;
  }
}
.c-post-wysiwyg .wp-element-caption {
  font-size: 14px;
  line-height: 28px;
  text-align: left;
  margin: 10px 0 0;
}
@media only screen and (min-width: 768px) {
  .c-post-wysiwyg {
    font-size: 16px;
  }
}
.c-post-wysiwyg h2 {
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 30px;
  font-weight: 600;
  line-height: 1.3;
  position: relative;
  z-index: 100;
  padding-bottom: 12px;
  word-break: auto-phrase;
}
.c-post-wysiwyg h2::before {
  display: block;
  position: absolute;
  bottom: -6px;
  z-index: -10;
  background-color: #e56843;
  width: 25%;
  height: 8px;
  content: "";
  border-radius: 9999px;
}
.c-post-wysiwyg h2::after {
  display: block;
  position: absolute;
  bottom: -6px;
  z-index: -20;
  background-color: #ff7311;
  width: 100%;
  height: 8px;
  content: "";
  border-radius: 9999px;
}
.c-post-wysiwyg h3 {
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 26px;
  font-weight: 500;
  line-height: 1.3;
  position: relative;
  padding-left: 18px;
}
.c-post-wysiwyg h3::before {
  position: absolute;
  top: 3px;
  left: 5px;
  background-color: #ff7311;
  width: 6px;
  height: 80%;
  content: "";
  border-radius: 9999px;
}
.c-post-wysiwyg img {
  border-radius: 8px;
}

/*
* core
* 変数を読み込むパーシャルファイルがあり、
* 名前空間を省略したいので as *
*/
.c-pagination {
  display: flex;
  gap: clamp(8px, 1.45vw, 20px);
  justify-content: center;
  align-items: center;
  width: 100%;
}
.c-pagination .page-numbers {
  color: #202020;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 18px;
  font-weight: 600;
  line-height: 1;
  display: grid;
  background-color: #fff;
  width: 40px;
  height: 40px;
  border: 1px solid #202020;
  border-radius: 9999px;
  place-content: center;
}
@media only screen and (max-width: 767px) {
  .c-pagination .page-numbers {
    font-size: 14px;
    width: 32px;
    height: 32px;
  }
}
@media (any-hover: hover) {
  .c-pagination .page-numbers:not(.dots):not(.prev):not(.next):not(.current):hover {
    color: #fff;
    background-color: #ff7311;
    transition: all 0.3s ease;
  }
}
.c-pagination .page-numbers.prev {
  transition: all 0.3s ease;
}
@media (any-hover: hover) {
  .c-pagination .page-numbers.prev:hover {
    color: #fff;
    background-color: #ff7311;
    transition: all 0.3s ease;
  }
}
.c-pagination .page-numbers.next {
  transition: all 0.3s ease;
}
@media (any-hover: hover) {
  .c-pagination .page-numbers.next:hover {
    color: #fff;
    background-color: #ff7311;
    transition: all 0.3s ease;
  }
}
.c-pagination .page-numbers.dots {
  color: transparent;
  position: relative;
  background-color: initial;
  width: 25px;
  border: none;
}
.c-pagination .page-numbers.dots::before {
  color: #202020;
  font-family: m "M PLUS Rounded 1c", sans-serif;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  width: max-content;
  content: "・ ・ ・";
  transform: translate(-50%, -50%);
}
.c-pagination .page-numbers.current {
  color: #fff;
  background-color: #8acbb0;
}

/*
* core
* 変数を読み込むパーシャルファイルがあり、
* 名前空間を省略したいので as *
*/
/**
* TODO:
* - reCAPTCHA実装後調整
*/
/* reCAPTCHA
----------------------------------------------*/
.recaptcha {
  text-align: center;
}

.recaptcha p {
  font-size: 12px;
  font-weight: normal;
  line-height: 1.4;
  letter-spacing: 0.05em;
}

.recaptcha p a {
  color: #9797d7;
  font-weight: bold;
}

/* reCAPTCHAバッジを非表示にする */
.grecaptcha-badge {
  visibility: hidden;
}

/*----------------------------------------------
|                ★ SP-size ★                 |
----------------------------------------------*/
/* reCAPTCHA
----------------------------------------------*/
.recaptcha p {
  font-size: 10px;
  letter-spacing: 0.04em;
}

/*
* core
* 変数を読み込むパーシャルファイルがあり、
* 名前空間を省略したいので as *
*/
.c-breadcrumb {
  display: grid;
  width: 100%;
  max-width: 800px;
  margin-right: auto;
  padding: 10px 20px 0;
}
@media only screen and (max-width: 767px) {
  .c-breadcrumb {
    padding: 10px 10px 0;
  }
}

.c-breadcrumb__list {
  display: flex;
  width: 100%;
  overflow: hidden;
  flex-wrap: nowrap;
}

.c-breadcrumb__item {
  color: #939393;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
  width: max-content;
  white-space: nowrap;
}
.c-breadcrumb__item::after {
  padding: 0 5px;
  content: "/";
}
.c-breadcrumb__item:last-child::after {
  content: none;
}
.c-breadcrumb__item:last-child {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.c-breadcrumb__link {
  color: #939393;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 12px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
  transition: opacity 0.3s ease;
}
@media (any-hover: hover) {
  .c-breadcrumb__link:hover {
    opacity: 0.6;
    transition: opacity 0.3s ease;
  }
}

/*
* core
* 変数を読み込むパーシャルファイルがあり、
* 名前空間を省略したいので as *
*/
.p-news-btnwrap {
  display: grid;
  grid-template-columns: 240px;
  grid-template-rows: 44px;
  width: 100%;
  place-content: center;
}

/*
* core
* 変数を読み込むパーシャルファイルがあり、
* 名前空間を省略したいので as *
*/
.p-front-about {
  display: grid;
  grid-auto-rows: min-content;
  gap: 60px;
  width: 100%;
  max-width: 960px;
  margin-inline: auto;
}

.p-front-about__inner {
  display: grid;
  grid-auto-rows: min-content;
  gap: 60px;
  place-content: center;
}

.p-front-about__heading {
  color: #fbf5dd;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 28px;
  font-weight: 900;
  letter-spacing: 0.1em;
  text-align: center;
  display: flex;
  align-items: baseline;
  width: 100%;
  max-width: 515px;
  flex-wrap: wrap;
  text-shadow: 2px 2px 0 #202020;
  -webkit-text-stroke: 1px #202020;
  margin-inline: auto;
}
@media only screen and (max-width: 767px) {
  .p-front-about__heading {
    font-size: 24px;
    line-height: 1.4;
    justify-content: center;
  }
}

.p-front-about__heading--emphasized {
  font-size: 48px;
}
@media only screen and (max-width: 767px) {
  .p-front-about__heading--emphasized {
    font-size: 40px;
  }
}

.p-front-about__heading--trans-y {
  transform: translateY(-16px);
}

.p-front-about__image {
  width: 100%;
  max-width: 440px;
  height: auto;
  margin-inline: auto;
}

.p-front-about__textwrap {
  display: grid;
  gap: 48px;
  width: 100%;
  max-width: 700px;
}
@media only screen and (max-width: 767px) {
  .p-front-about__textwrap {
    gap: 60px;
    padding: 0 10px;
  }
}

.p-front-about__textwrap-inner {
  display: grid;
  gap: 24px;
  width: 100%;
  place-items: center;
}
@media only screen and (max-width: 767px) {
  .p-front-about__textwrap-inner {
    max-width: 600px;
  }
}

.p-front-about__lower-heading {
  color: #fbf5dd;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 22px;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .p-front-about__lower-heading {
    word-break: auto-phrase;
  }
}

.p-front-about__text {
  color: #fbf5dd;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.05em;
}

.p-front-about__emphasized {
  font-weight: 800;
}

/*
* core
* 変数を読み込むパーシャルファイルがあり、
* 名前空間を省略したいので as *
*/
.p-front-character {
  display: grid;
  gap: 40px;
  width: 100%;
  place-items: center;
}
@media only screen and (max-width: 767px) {
  .p-front-character {
    max-width: 440px;
    margin-inline: auto;
  }
}

.p-front-character__item {
  display: grid;
  grid-template-columns: auto 180px;
  gap: 40px;
  align-items: center;
  width: 100%;
  max-width: 700px;
  padding: 32px;
}
@media only screen and (max-width: 767px) {
  .p-front-character__item {
    grid-template-columns: 100%;
    gap: 20px;
  }
}

@media only screen and (min-width: 768px) {
  .p-front-character__item--reverse {
    grid-template-columns: 180px auto;
  }
}

.p-front-character__item-inner {
  display: grid;
  grid-auto-rows: min-content;
  gap: 20px;
}
@media only screen and (max-width: 767px) {
  .p-front-character__item-inner {
    gap: 10px;
    grid-column: 1/2;
    grid-row: 2/3;
  }
}

@media only screen and (min-width: 768px) {
  .p-front-character__item-inner--reverse {
    text-align: end;
    grid-column: 2/3;
    grid-row: 1/3;
  }
}

@media only screen and (min-width: 768px) {
  .p-front-character__image--reverse {
    grid-column: 1/2;
    grid-row: 1/3;
  }
}

.p-front-character__name {
  color: #fff;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 36px;
  font-weight: 900;
  line-height: 1;
  text-shadow: 3px 3px 0 #202020;
  -webkit-text-stroke: 1.5px #202020;
}

.p-front-character__text {
  color: #202020;
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-size: 16px;
  font-weight: 600;
  letter-spacing: 0.1em;
  white-space: pre-line;
  word-wrap: break-word;
}

.p-front-character__image {
  width: 100%;
  max-width: 200px;
  height: auto;
}
@media only screen and (max-width: 767px) {
  .p-front-character__image {
    grid-column: 1/2;
    grid-row: 1/2;
    width: calc(100% - 40px);
    margin-inline: auto;
  }
}

/*
* core
* 変数を読み込むパーシャルファイルがあり、
* 名前空間を省略したいので as *
*/
.p-front-sponsor {
  display: grid;
  gap: 40px;
  place-items: center;
}

/**
* TODO:
* - c-title-subはscssファイル分ける
*/
.c-title-sub {
  color: #202020;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.05em;
  text-align: center;
  text-decoration: underline;
  text-underline-offset: 7px;
}

.p-front-sponsor__list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(0, 326px));
  gap: 24px;
  width: 100%;
  max-width: 676px;
  place-content: center;
}

.p-front-sponsor__item {
  display: grid;
  grid-template-columns: 84px 200px;
  gap: 12px;
  align-items: center;
  background-color: #fff;
  width: 100%;
  padding: 12px;
  border: 2px solid #202020;
  border-radius: 12px;
}

.p-front-sponsor__logo {
  width: 100%;
  height: auto;
}

.p-front-sponsor__info {
  display: grid;
  grid-auto-rows: min-content;
  gap: 4px;
}

.p-front-sponsor__name {
  color: #202020;
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.2;
  padding-bottom: 4px;
}

.p-front-sponsor__text {
  color: #202020;
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.4;
}

.p-front-sponsor__link {
  color: #4679f0;
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.2;
  text-decoration: underline;
  word-break: break-all;
  text-underline-offset: 2px;
}

/*
* core
* 変数を読み込むパーシャルファイルがあり、
* 名前空間を省略したいので as *
*/
.p-mv {
  background-color: #fbf5dd;
  width: 100%;
  height: calc(100dvh - 20px);
  margin-bottom: 60px;
  overflow: hidden;
  border-radius: 16px;
}

.p-mv__inner {
  display: grid;
  grid-auto-rows: min-content;
  gap: 36px;
  align-content: center;
  position: relative;
  z-index: 100;
  width: 100%;
  height: 100%;
  padding-bottom: 30px;
  border: 2px solid #202020;
  border-radius: 16px;
  justify-items: center;
  margin-inline: auto;
}
@media only screen and (max-width: 767px) {
  .p-mv__inner {
    gap: 20px;
  }
}

.p-mv__logo {
  width: 600px;
  height: auto;
  animation: shake 2s linear infinite;
  animation-delay: 0.4s;
}
@media only screen and (max-width: 767px) {
  .p-mv__logo {
    width: 340px;
  }
}

@keyframes shake {
  40% {
    rotate: 0deg;
  }
  45% {
    rotate: -4deg;
  }
  50% {
    rotate: 4deg;
  }
  55% {
    rotate: -4deg;
  }
  60% {
    rotate: 4deg;
  }
  65% {
    rotate: 0deg;
  }
}
.p-mv__scroll-down {
  display: grid;
  gap: 10px;
  position: absolute;
  bottom: 30px;
  left: 50%;
  width: 120px;
  height: 40px;
  transform: translateX(-50%);
  place-items: center;
}
@media only screen and (max-width: 767px) {
  .p-mv__scroll-down {
    bottom: 40px;
  }
}

.p-mv__scroll-down-text {
  width: 100%;
  height: auto;
}

.p-mv__scroll-down-arrow {
  width: 28px;
  height: auto;
  animation: scrollDown 1s linear infinite;
}

@keyframes scrollDown {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(8px);
  }
  100% {
    transform: translateY(0);
  }
}
/*
* core
* 変数を読み込むパーシャルファイルがあり、
* 名前空間を省略したいので as *
*/
.p-single-news {
  display: grid;
  gap: 32px;
  width: 100%;
  max-width: 900px;
  padding: 0 10px 80px;
  place-items: center;
}

.p-single-news__heading-container {
  position: relative;
  z-index: 100;
  background-color: #fff;
  width: 100%;
  padding: 40px;
  overflow: hidden;
  border: 2px solid #202020;
  border-radius: 24px;
  place-content: center;
}
@media only screen and (max-width: 767px) {
  .p-single-news__heading-container {
    padding: 20px;
  }
}

.p-single-news__title {
  color: #fbf5dd;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 36px;
  font-weight: 900;
  text-shadow: 2px 2px 0 #202020;
  word-break: auto-phrase;
  -webkit-text-stroke: 1px #202020;
}
@media only screen and (max-width: 767px) {
  .p-single-news__title {
    font-size: 28px;
  }
}

.p-single-news__time-container {
  display: grid;
  grid-template-columns: min-content min-content;
  gap: 16px;
  padding: 12px 0 0 4px;
}

.p-single-news__post-date {
  color: #939393;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 14px;
  font-weight: 600;
  position: relative;
  padding-left: 20px;
}
.p-single-news__post-date::before {
  position: absolute;
  top: 3px;
  left: 0;
  background-image: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22_2%22%20data-name%3D%222%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20512%20512%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20%23939393%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Cpath%20class%3D%22cls-1%22%20d%3D%22M494.56%2C55.77l-38.34-38.33c-23.25-23.26-60.96-23.25-84.23%2C0l-35.88%2C35.88%2C122.56%2C122.56%2C35.89-35.88c23.25-23.26%2C23.25-60.97%2C0-84.24Z%22%2F%3E%20%3Cpath%20class%3D%22cls-1%22%20d%3D%22M0%2C394.13v106.53c0%2C6.26%2C5.08%2C11.34%2C11.34%2C11.34h106.54c3.01%2C0%2C5.89-1.19%2C8.02-3.32L425.25%2C209.31l-122.55-122.56L3.32%2C386.11c-2.13%2C2.13-3.32%2C5.01-3.32%2C8.02Z%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 16px;
  height: 16px;
  content: "";
}

.p-single-news__modified-date {
  color: #939393;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 14px;
  font-weight: 600;
  position: relative;
  padding-left: 20px;
}
.p-single-news__modified-date::before {
  position: absolute;
  top: 3px;
  left: 0;
  background-image: url("data:image/svg+xml;charset=utf8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22_2%22%20data-name%3D%222%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20512%20511.99%22%3E%20%3Cdefs%3E%20%3Cstyle%3E%20.cls-1%20%7B%20fill%3A%20%23939393%3B%20%7D%20%3C%2Fstyle%3E%20%3C%2Fdefs%3E%20%3Cpath%20class%3D%22cls-1%22%20d%3D%22M256.08%2C0C115.02-.04%2C0%2C114.94%2C0%2C256s114.62%2C256%2C256%2C256c141.39%2C0%2C256-114.62%2C256-256S397.43.04%2C256.08%2C0ZM308.86%2C377.12l-81.46%2C42.95c-2.47%2C1.3-5.42-.58-5.27-3.37l1.55-29.6c-23.85-5.8-45.64-18.06-63.19-35.61-25.49-25.44-39.53-59.35-39.53-95.49%2C0-18.63%2C3.75-36.71%2C11.13-53.74h0c.79-1.82%2C2.91-2.66%2C4.73-1.87l25.36%2C11.02c1.82.79%2C2.66%2C2.91%2C1.87%2C4.73h0c-5.47%2C12.63-8.24%2C26.05-8.24%2C39.86%2C0%2C26.77%2C10.42%2C51.93%2C29.34%2C70.84%2C11.37%2C11.38%2C25.26%2C19.83%2C40.38%2C24.62l1.19-22.4c.14-2.64%2C2.98-4.23%2C5.3-2.98l79.95%2C43.04c2.53%2C1.36%2C2.52%2C5-.02%2C6.35l-3.11%2C1.66ZM379.89%2C309.73h0c-.79%2C1.82-2.91%2C2.66-4.73%2C1.87l-25.37-11.02c-1.82-.79-2.66-2.91-1.86-4.73h0c5.46-12.59%2C8.23-26%2C8.23-39.86%2C0-26.77-10.42-51.93-29.34-70.85-11.43-11.39-25.31-19.84-40.38-24.62l-1.19%2C22.41c-.14%2C2.63-2.97%2C4.22-5.29%2C2.97l-80-43.03c-2.54-1.36-2.52-5.01.03-6.35l3.2-1.68%2C17.15-9.08%2C64.26-33.85c2.47-1.3%2C5.41.58%2C5.26%2C3.37l-1.55%2C29.56c23.87%2C5.84%2C45.66%2C18.13%2C63.18%2C35.65%2C25.53%2C25.54%2C39.57%2C59.45%2C39.53%2C95.5%2C0%2C18.67-3.75%2C36.75-11.14%2C53.73Z%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 16px;
  height: 16px;
  content: "";
}

.p-single-news__kuma {
  position: absolute;
  right: -18px;
  bottom: -74px;
  z-index: -100;
  width: 120px;
  height: auto;
}
@media only screen and (max-width: 767px) {
  .p-single-news__kuma {
    right: -14px;
    bottom: -60px;
    width: 100px;
  }
}

/*
* core
* 変数を読み込むパーシャルファイルがあり、
* 名前空間を省略したいので as *
*/
.p-archive-breadcrumb {
  width: 100%;
  max-width: 960px;
  margin-inline: auto;
}

/*
* core
* 変数を読み込むパーシャルファイルがあり、
* 名前空間を省略したいので as *
*/
@media only screen and (max-width: 767px) {
  .u-sp-none {
    display: none;
  }
}

@media only screen and (min-width: 768px) {
  .u-pc-none {
    display: none;
  }
}

.u-fade-in {
  visibility: hidden;
  opacity: 0;
  transition: opacity 1s ease, visibility 1s ease;
}
.u-fade-in.is-visible {
  visibility: visible;
  opacity: 1;
  transition: opacity 1s ease, visibility 1s ease;
}

.u-fade-up {
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.4s ease, visibility 0.4s ease, transform 0.6s ease;
  transform: translateY(50px);
}
.u-fade-up.is-visible {
  visibility: visible;
  opacity: 1;
  transition: opacity 0.4s ease, visibility 0.4s ease, transform 0.6s ease;
  transform: translateY(0);
}

.u-fade-right {
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.4s ease, visibility 0.4s ease, transform 0.6s ease;
  transform: translateX(100px);
}
.u-fade-right.is-visible {
  visibility: visible;
  opacity: 1;
  transition: opacity 0.4s ease, visibility 0.4s ease, transform 0.6s ease;
  transform: translateX(0);
}

.u-fade-left {
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.4s ease, visibility 0.4s ease, transform 0.6s ease;
  transform: translateX(-100px);
}
.u-fade-left.is-visible {
  visibility: visible;
  opacity: 1;
  transition: opacity 0.4s ease, visibility 0.4s ease, transform 0.6s ease;
  transform: translateX(0);
}

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