@charset "UTF-8";
html {
  box-sizing: border-box;
  overflow-y: scroll;
  -webkit-text-size-adjust: 100%;
}

*, :after, :before {
  background-repeat: no-repeat;
  box-sizing: inherit;
}

:after, :before {
  text-decoration: inherit;
  vertical-align: inherit;
}

* {
  padding: 0;
  margin: 0;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

hr {
  overflow: visible;
}

article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, summary {
  display: block;
}

summary {
  display: list-item;
}

small {
  font-size: 80%;
}

[hidden], template {
  display: none;
}

abbr[title] {
  border-bottom: 1px dotted;
  text-decoration: none;
}

a {
  background-color: transparent;
  -webkit-text-decoration-skip: objects;
}

a:active, a:hover {
  outline-width: 0;
}

code, kbd, pre, samp {
  font-family: monospace;
}

b, strong {
  font-weight: bolder;
}

dfn {
  font-style: italic;
}

mark {
  background-color: #ff0;
  color: #000;
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

input {
  border-radius: 0;
}

[role=button], [type=button], [type=reset], [type=submit], button {
  cursor: pointer;
}

[disabled] {
  cursor: default;
}

[type=number] {
  width: auto;
}

[type=search] {
  -webkit-appearance: textfield;
}

[type=search]::-webkit-search-cancel-button, [type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

textarea {
  overflow: auto;
  resize: vertical;
}

button, input, optgroup, select, textarea {
  font: inherit;
}

optgroup {
  font-weight: 700;
}

button {
  overflow: visible;
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button::-moz-focus-inner {
  border-style: 0;
  padding: 0;
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button:-moz-focusring {
  outline: 1px dotted ButtonText;
}

[type=reset], [type=submit], button, html [type=button] {
  -webkit-appearance: button;
}

button, select {
  text-transform: none;
}

button, input, select, textarea {
  background-color: transparent;
  border-style: none;
  color: inherit;
}

select {
  -moz-appearance: none;
  -webkit-appearance: none;
}

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

select::-ms-value {
  color: currentColor;
}

legend {
  border: 0;
  color: inherit;
  display: table;
  max-width: 100%;
  white-space: normal;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

img {
  border-style: none;
}

progress {
  vertical-align: baseline;
}

svg:not(:root) {
  overflow: hidden;
}

audio, canvas, progress, video {
  display: inline-block;
}

@media screen {
  [hidden~=screen] {
    display: inherit;
  }
  [hidden~=screen]:not(:active):not(:focus):not(:target) {
    position: absolute !important;
    clip: rect(0 0 0 0) !important;
  }
}
[aria-busy=true] {
  cursor: progress;
}

[aria-controls] {
  cursor: pointer;
}

[aria-disabled] {
  cursor: default;
}

::-moz-selection {
  background-color: #b3d4fc;
  color: #000;
  text-shadow: none;
}

::selection {
  background-color: #b3d4fc;
  color: #000;
  text-shadow: none;
}

.join {
  --category-color: #ff6d34;
}

.club {
  --category-color: #00b3d0;
}

.volunteer {
  --category-color: #00a759;
}

html {
  font-size: 62.5%;
  -webkit-font-smoothing: antialiased;
  scroll-behavior: auto !important;
}

body {
  position: relative;
  overflow-x: hidden;
  background-color: #f2f2f2;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  font-size: 1.6rem;
  font-feature-settings: "palt";
}
body.is-fixed {
  width: 100%;
  height: 100vh;
  overflow: hidden;
}

@media (max-width: 1280px) {
  html {
    font-size: 0.78125vw;
  }
}
@media screen and (max-width: 767px) {
  html {
    font-size: 2.6666666667vw;
  }
  body {
    font-size: 1.4rem;
  }
}
* {
  color: var(--text-color, #333);
  letter-spacing: 0.1em;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 700;
}

p {
  line-height: 1.8;
}

em, address {
  font-style: normal;
}

a {
  color: var(--text-color, inherit);
  text-decoration: none;
}
a:hover:not([class]) {
  opacity: 0.8;
}

ul, ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: top;
}

input, textarea, select {
  font-family: inherit;
  font-size: inherit;
}

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

[data-color=orange] {
  --theme-color: #ff6d34;
}

[data-color=blue] {
  --theme-color: #00b3d0;
}

[data-color=green] {
  --theme-color: #00a759;
}

[data-color=yellow] {
  --theme-color: #ffac3c;
}

[data-category=浜脇・今津] {
  --area-color: #00b3d0;
  --area-color-rgb: 0, 179, 208;
}

[data-category=大社] {
  --area-color: #e63178;
  --area-color-rgb: 230, 49, 120;
}

[data-category=広田] {
  --area-color: #00a759;
  --area-color-rgb: 0, 167, 89;
}

[data-category=甲東] {
  --area-color: #ffac3c;
  --area-color-rgb: 255, 172, 60;
}

[data-category=上甲子園] {
  --area-color: #ff6d34;
  --area-color-rgb: 255, 109, 52;
}

[data-category=鳴尾・甲子園] {
  --area-color: #f5525a;
  --area-color-rgb: 245, 82, 90;
}

[data-category=塩瀬] {
  --area-color: #5d5fef;
  --area-color-rgb: 93, 95, 239;
}

[data-category=山口] {
  --area-color: #00b396;
  --area-color-rgb: 0, 179, 150;
}

[data-category=オンライン] {
  --area-color: #8a4fff;
  --area-color-rgb: 138, 79, 255;
}

[data-category=その他] {
  --area-color: #b06a3f;
  --area-color-rgb: 176, 106, 63;
}

@media screen and (min-width: 768px) {
  .tabOnly {
    display: none !important;
  }
}
@media screen and (max-width: 767px) {
  .pcOnly {
    display: none !important;
  }
}
.decoration-container {
  position: relative;
}
.decoration-object {
  position: absolute;
  z-index: 9;
}
.decoration-object img {
  width: 100%;
}

.mx-auto {
  margin-right: auto;
  margin-left: auto;
}

.mt-0 {
  margin-top: 0 !important;
}
.mt-5 {
  margin-top: 0.5em;
}
.mt-10 {
  margin-top: 1em;
}
.mt-15 {
  margin-top: 1.5em;
}
.mt-20 {
  margin-top: 2em;
}
.mt-sm {
  margin-top: 3.2rem;
}
.mt-md {
  margin-top: 8rem;
}
.mt-lg {
  margin-top: 12rem;
}

.mb-0 {
  margin-bottom: 0 !important;
}
.mb-5 {
  margin-bottom: 0.5em;
}
.mb-10 {
  margin-bottom: 1em;
}
.mb-15 {
  margin-bottom: 1.5em;
}
.mb-20 {
  margin-bottom: 2em;
}
.mb-sm {
  margin-bottom: 3rem;
}
.mb-md {
  margin-bottom: 8rem;
}
.mb-lg {
  margin-bottom: 12rem;
}

.ms-auto {
  margin-left: auto;
}

.pt-0 {
  padding-top: 0 !important;
}

.pb-0 {
  padding-bottom: 0 !important;
}

.bg-01 {
  background-color: #e9e0d0;
}
.bg-02 {
  background-color: #ff6d34;
}
.bg-dark {
  transition: background-color 0.3s;
}
.bg-dark.is-active {
  background-color: #798389;
  --text-color: #fff;
}
.bg-gray {
  transition: background-color 0.3s;
}
.bg-gray.is-active {
  background-color: #eff1f4;
}
.bg-white {
  background-color: #fff;
}

.w-100 {
  width: 100%;
}
.w-fit {
  width: fit-content;
}
.w-auto {
  width: auto;
}
.w-sm {
  max-width: 64rem;
}
.w-md {
  max-width: 83.8rem;
}

.hr-01 {
  margin-top: 5rem;
  margin-bottom: 5rem;
  border: none;
  border-top: 1px solid #ccc;
}

.text-serif {
  font-weight: 900;
}
.text-en {
  font-family: "Montserrat", sans-serif;
}
.text-unset {
  font-family: initial;
}
.text-center {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .text-center-pc {
    text-align: center;
  }
}
.text-start {
  text-align: left;
}
.text-end {
  text-align: right;
}
.text-primary {
  --text-color: #ff6d34;
}
.text-secondary {
  --text-color: #fa8500;
}
.text-white {
  --text-color: #fff;
}
.text-black {
  --text-color: #000;
}
.text-gray {
  --text-color: #666;
}
.text-xs {
  font-size: 1rem;
}
.text-sm {
  font-size: 1.2rem;
}
.text-lg {
  font-size: 2rem;
}
.text-xl {
  font-size: 2.4rem;
}
.text-xxl {
  font-size: 3.2rem;
}
.text-light {
  font-weight: 300;
}
.text-normal {
  font-weight: 400;
}
.text-medium {
  font-weight: 500;
}
.text-semibold {
  font-weight: 600;
}
.text-bold {
  font-weight: 700;
}
.text-extrabold {
  font-weight: 800;
}
.text-black {
  font-weight: 900;
}
.text-lh-18 {
  line-height: 1.8;
}

.d-none {
  display: none !important;
}
.d-block {
  display: block !important;
}
.d-inline {
  display: inline !important;
}
.d-inline-block {
  display: inline-block !important;
}
.d-flex {
  display: flex !important;
}
.d-grid {
  display: grid !important;
}

.flex-row {
  flex-direction: row;
}
.flex-column {
  flex-direction: column;
}
.flex-wrap {
  flex-wrap: wrap;
}
.flex-nowrap {
  flex-wrap: nowrap;
}
.flex-center {
  align-items: center;
  justify-content: center;
}
.flex-between {
  justify-content: space-between;
}
.flex-around {
  justify-content: space-around;
}
.flex-evenly {
  justify-content: space-evenly;
}
.flex-start {
  justify-content: flex-start;
}
.flex-end {
  justify-content: flex-end;
}

.img-cover {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.img-fluid {
  width: var(--width-pc, auto);
  height: auto;
}

@media screen and (max-width: 767px) {
  .img-fluid {
    width: var(--width-sp, auto);
  }
}
@media screen and (max-width: 767px) {
  .mt-md {
    margin-top: 4rem;
  }
  .mt-lg {
    margin-top: 6rem;
  }
}
.c-breadcrumbs {
  margin-top: 4.8rem;
  margin-bottom: 12rem;
  font-size: 1.2rem;
}
.c-breadcrumbs__inner {
  display: flex;
  gap: 0.25em 0.8rem;
  flex-wrap: wrap;
}
.c-breadcrumbs__inner > span {
  display: inline-flex;
  gap: 0.8rem;
  align-items: center;
}
.c-breadcrumbs__inner > span:not(:last-child)::after {
  content: "";
  width: 0.8rem;
  height: 1px;
  margin-top: 2px;
  display: inline-block;
  background-color: #000;
}
.c-breadcrumbs__inner * {
  letter-spacing: 0;
}
.c-breadcrumbs__inner .current-item {
  color: rgba(65, 65, 76, 0.5);
}

.c-navi__01 {
  margin-top: 7rem;
}
.c-navi__01--list {
  display: flex;
  gap: 6rem;
  justify-content: center;
}
.c-navi__01--item {
  width: 26.8rem;
  min-width: fit-content;
  display: flex;
  align-items: center;
  flex-direction: column;
  row-gap: 3.2rem;
}
.c-navi__01 .c-btn__01 {
  width: 100%;
  margin-top: 0;
}
.c-navi__01--description {
  width: 24rem;
  padding: 1.6rem 2rem;
  position: relative;
  display: flex;
  align-items: center;
  flex: 1;
  justify-content: center;
  border-radius: 1.6rem;
  background-color: #fff;
  text-align: center;
  line-height: 1.6;
}
.c-navi__01--description::before {
  content: "";
  width: 1.8rem;
  height: 1.6rem;
  position: absolute;
  bottom: 100%;
  left: calc(50% - 0.9rem);
  background-color: #fff;
  clip-path: polygon(50% 0, 100% 100%, 0 100%);
}
.c-navi__anchor--list {
  display: flex;
  gap: 1.6rem;
  align-items: center;
  justify-content: center;
}
.c-navi__anchor--item {
  width: calc((100% - 4.8rem) / 4);
}
.c-navi__anchor--link {
  width: 100%;
  height: 5.2rem;
  display: flex;
  align-items: center;
  border: 1px solid var(--theme-color, #b3b3b3);
  border-radius: 2.6rem;
  background-color: #fff;
}
.c-navi__anchor--text {
  flex: 1;
  color: var(--theme-color, #b3b3b3);
  text-align: center;
  font-weight: 700;
  font-size: 1.4rem;
}
.c-navi__anchor--icon {
  margin-right: 2.4rem;
}

@media screen and (min-width: 768px) {
  .c-navi__anchor--link {
    transition: background-color 0.3s;
  }
  .c-navi__anchor--link--text {
    transition: color 0.3s;
  }
  .c-navi__anchor--link--icon * {
    transition: fill 0.3s, stroke 0.3s;
  }
  .c-navi__anchor--link:hover {
    background-color: var(--theme-color, #b3b3b3);
  }
  .c-navi__anchor--link:hover .c-navi__anchor--text {
    color: #fff;
  }
  .c-navi__anchor--link:hover .c-navi__anchor--icon {
    --theme-color: #fff;
  }
}
@media screen and (max-width: 767px) {
  .c-navi__01 {
    margin-top: 3.2rem;
  }
  .c-navi__01--list {
    gap: 3.2rem;
    flex-direction: column;
  }
  .c-navi__01--item {
    width: 100%;
    row-gap: 1.8rem;
  }
  .c-navi__01--description {
    width: auto;
    min-width: 22.4rem;
    padding: 0.4rem 2rem;
    border-radius: 0.8rem;
  }
  .c-navi__01--description::before {
    content: "";
    width: 1.2rem;
    height: 1rem;
    left: calc(50% - 0.6rem);
  }
  .c-navi__anchor--list.sp-col2 {
    gap: 0.8rem;
    flex-wrap: wrap;
  }
  .c-navi__anchor--list.sp-col2 .c-navi__anchor--item {
    width: calc((100% - 0.8rem) / 2);
  }
  .c-navi__anchor--list.sp-col2 .c-navi__anchor--link {
    height: 6.2rem;
    border-radius: 0.8rem;
  }
  .c-navi__anchor--list.sp-col2 .c-navi__anchor--text {
    font-size: 1.2rem;
    line-height: 1.2;
  }
  .c-navi__anchor--list.sp-col2 .c-navi__anchor--icon {
    width: 1.2rem;
    margin-right: 1.6rem;
  }
}
.c-pager__archive {
  margin-top: 8rem;
}
.c-pager__archive--inner {
  display: flex;
  gap: 0 1rem;
  align-items: center;
  justify-content: center;
}
.c-pager__archive .page-numbers {
  width: 4rem;
  border-radius: 50%;
  background-color: #fff;
  text-align: center;
  letter-spacing: 0;
  font-weight: 700;
  font-size: 2.4rem;
  aspect-ratio: 1;
}
.c-pager__archive .page-numbers.dots {
  width: auto;
  background: none;
  pointer-events: none;
}
.c-pager__archive .page-numbers.current {
  background-color: var(--theme-color, #ff6d34);
  color: #fff;
  pointer-events: none;
}
.c-pager__archive .page-numbers.prev, .c-pager__archive .page-numbers.next {
  background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 13 6' fill='none'><path fill='%23333' d='M12 5.182v.75a.75.75 0 0 0 .547-1.263L12 5.182ZM8.456.305a.75.75 0 1 0-1.094 1.026l.547-.513.547-.513ZM0 5.182v.75h12v-1.5H0v.75Zm12 0 .547-.513L8.457.305l-.548.513-.547.513 4.09 4.364.548-.513Z'/></svg>");
  background-position: center;
  background-size: 37.5% auto;
  background-repeat: no-repeat;
}
.c-pager__archive .page-numbers.prev {
  transform: scaleX(-1);
}

@media screen and (min-width: 768px) {
  .c-pager__archive .page-numbers {
    transition: background-color 0.3s, color 0.3s, background-image 0.3s;
  }
  .c-pager__archive .page-numbers:hover {
    background-color: #333;
    color: #fff;
  }
  .c-pager__archive .page-numbers:hover.prev, .c-pager__archive .page-numbers:hover.next {
    background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 13 6' fill='none'><path fill='white' d='M12 5.182v.75a.75.75 0 0 0 .547-1.263L12 5.182ZM8.456.305a.75.75 0 1 0-1.094 1.026l.547-.513.547-.513ZM0 5.182v.75h12v-1.5H0v.75Zm12 0 .547-.513L8.457.305l-.548.513-.547.513 4.09 4.364.548-.513Z'/></svg>");
  }
}
@media screen and (max-width: 767px) {
  .c-pager__archive {
    margin-top: 5.6rem;
  }
  .c-pager__archive .page-numbers {
    width: 3.2rem;
    font-size: 1.8rem;
  }
}
.c-list__space li + li {
  margin-top: 0.5em;
}
.c-list__disc li {
  padding-left: 1em;
  text-indent: -1em;
}
.c-list__disc li::before {
  content: "・";
}
.c-list__note li {
  padding-left: 1em;
  text-indent: -1em;
}
.c-list__note li::before {
  content: "※";
}

.c-btn__01 {
  width: 24rem;
  max-width: 100%;
  height: 4.5rem;
  min-height: fit-content;
  margin-top: 3.2rem;
  padding: 0.8rem 0;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid var(--category-color, #ff6d34);
  border-radius: 9.9rem;
  background-color: var(--category-color, #ff6d34);
  --text-color: #fff;
}
.c-btn__01--text {
  flex: 1;
  text-align: center;
  letter-spacing: 0.2em;
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 1.4;
}
.c-btn__01--arrow {
  width: 1.8rem;
  height: 1.8rem;
  margin-right: 2.4rem;
  background: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 13 6' fill='none'><path fill='white' d='M12 5.182v.75a.75.75 0 0 0 .547-1.263L12 5.182ZM8.456.305a.75.75 0 1 0-1.094 1.026l.547-.513.547-.513ZM0 5.182v.75h12v-1.5H0v.75Zm12 0 .547-.513L8.457.305l-.548.513-.547.513 4.09 4.364.548-.513Z'/></svg>") no-repeat center 45%/contain;
}
.c-btn__01--icon {
  width: 2.2rem;
  height: auto;
  margin-right: 2.4rem;
  line-height: 1;
}
.c-btn__01--icon svg {
  vertical-align: bottom;
}
.c-btn__01.is-wide {
  width: 37.2rem;
}
.c-btn__01.is-lg {
  width: 49.2rem;
  height: 8rem;
  border-radius: 4rem;
}
.c-btn__01.is-lg .c-btn__01--icon {
  margin-left: 4rem;
  line-height: 1;
}
.c-btn__01.is-lg .c-btn__01--text {
  font-size: 2.4rem;
}
.c-btn__01.is-lg .c-btn__01--arrow {
  margin-right: 4rem;
}
.c-btn__01.is-white {
  border: none;
  background-color: #fff;
  --text-color: var(--category-color, #ff6d34);
}
.c-btn__01.is-white .c-btn__01--arrow {
  background: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 13 6' fill='none'><path fill='%23FF6D34' d='M12 5.182v.75a.75.75 0 0 0 .547-1.263L12 5.182ZM8.456.305a.75.75 0 1 0-1.094 1.026l.547-.513.547-.513ZM0 5.182v.75h12v-1.5H0v.75Zm12 0 .547-.513L8.457.305l-.548.513-.547.513 4.09 4.364.548-.513Z'/></svg>") no-repeat center 45%/contain;
}
.c-btn__01.is-white:not(:hover) .c-btn__01--arrow.is-blue {
  background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 13 6' fill='none'><path fill='%2300B3D0' d='M12 5.182v.75a.75.75 0 0 0 .547-1.263L12 5.182ZM8.456.305a.75.75 0 1 0-1.094 1.026l.547-.513.547-.513ZM0 5.182v.75h12v-1.5H0v.75Zm12 0 .547-.513L8.457.305l-.548.513-.547.513 4.09 4.364.548-.513Z'/></svg>");
}
.c-btn__01.is-white:not(:hover) .c-btn__01--arrow.is-green {
  background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 13 6' fill='none'><path fill='%2300A759' d='M12 5.182v.75a.75.75 0 0 0 .547-1.263L12 5.182ZM8.456.305a.75.75 0 1 0-1.094 1.026l.547-.513.547-.513ZM0 5.182v.75h12v-1.5H0v.75Zm12 0 .547-.513L8.457.305l-.548.513-.547.513 4.09 4.364.548-.513Z'/></svg>");
}
.c-btn__01.is-border {
  height: 3.2rem;
  border: 1px solid #999;
  background-color: #fff;
  --text-color: #333;
}
.c-btn__01.is-border .c-btn__01--arrow {
  background: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 13 6' fill='none'><path fill='%23333' d='M12 5.182v.75a.75.75 0 0 0 .547-1.263L12 5.182ZM8.456.305a.75.75 0 1 0-1.094 1.026l.547-.513.547-.513ZM0 5.182v.75h12v-1.5H0v.75Zm12 0 .547-.513L8.457.305l-.548.513-.547.513 4.09 4.364.548-.513Z'/></svg>") no-repeat center 45%/contain;
}
.c-btn__01.is-back {
  flex-direction: row-reverse;
}
.c-btn__01.is-back .c-btn__01--arrow {
  margin-right: 0;
  margin-left: 2.4rem;
  transform: scaleX(-1);
}
.c-btn__02 {
  position: relative;
  display: inline-block;
  overflow: hidden;
  color: var(--category-color, #ff6d34);
}
.c-btn__02 * {
  color: inherit;
}
.c-btn__02 img {
  display: block;
  transition: opacity 0.3s;
}
.c-btn__02::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-image: var(--hover-image);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0;
  transition: opacity 0.3s;
  pointer-events: none;
}
.c-btn__02 .c-arrow__01 {
  position: absolute;
  right: 0.5rem;
  bottom: 0.5rem;
  z-index: 1;
}
.c-btn__grid {
  display: flex;
  gap: 1.6rem 2.5rem;
  justify-content: center;
}
.c-btn__grid.left {
  justify-content: left;
}
.c-btn__grid.right {
  justify-content: right;
}

.c-arrow__01 {
  width: 4rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 2px solid currentColor;
  border-radius: 50%;
  background-color: #fff;
  line-height: 1;
  aspect-ratio: 1;
}
.c-arrow__01 svg {
  width: 40%;
}

.link[target=_blank] {
  display: inline-flex;
  gap: 0 0.4rem;
  align-items: center;
}
.link[target=_blank]::after {
  content: "";
  width: 1em;
  height: 1em;
  background-image: url("data:image/svg+xml,<svg viewBox='0 0 15 15' xmlns='http://www.w3.org/2000/svg'><path fill='%23333333' d='M12 6.615C11.8011 6.615 11.6103 6.69402 11.4697 6.83467C11.329 6.97532 11.25 7.16609 11.25 7.365V12.75C11.25 12.9489 11.171 13.1397 11.0303 13.2803C10.8897 13.421 10.6989 13.5 10.5 13.5H2.25C2.05109 13.5 1.86032 13.421 1.71967 13.2803C1.57902 13.1397 1.5 12.9489 1.5 12.75V4.5C1.5 4.30109 1.57902 4.11032 1.71967 3.96967C1.86032 3.82902 2.05109 3.75 2.25 3.75H7.635C7.83391 3.75 8.02468 3.67098 8.16533 3.53033C8.30598 3.38968 8.385 3.19891 8.385 3C8.385 2.80109 8.30598 2.61032 8.16533 2.46967C8.02468 2.32902 7.83391 2.25 7.635 2.25H2.25C1.65326 2.25 1.08097 2.48705 0.65901 2.90901C0.237053 3.33097 0 3.90326 0 4.5V12.75C0 13.3467 0.237053 13.919 0.65901 14.341C1.08097 14.7629 1.65326 15 2.25 15H10.5C11.0967 15 11.669 14.7629 12.091 14.341C12.5129 13.919 12.75 13.3467 12.75 12.75V7.365C12.75 7.16609 12.671 6.97532 12.5303 6.83467C12.3897 6.69402 12.1989 6.615 12 6.615ZM14.94 0.465C14.8639 0.281738 14.7183 0.136106 14.535 0.0599999C14.4448 0.0215692 14.348 0.00118499 14.25 0H9.75C9.55109 0 9.36032 0.0790176 9.21967 0.21967C9.07902 0.360322 9 0.551088 9 0.75C9 0.948912 9.07902 1.13968 9.21967 1.28033C9.36032 1.42098 9.55109 1.5 9.75 1.5H12.4425L4.7175 9.2175C4.6472 9.28722 4.59141 9.37017 4.55333 9.46157C4.51525 9.55296 4.49565 9.65099 4.49565 9.75C4.49565 9.84901 4.51525 9.94704 4.55333 10.0384C4.59141 10.1298 4.6472 10.2128 4.7175 10.2825C4.78722 10.3528 4.87017 10.4086 4.96157 10.4467C5.05296 10.4847 5.15099 10.5043 5.25 10.5043C5.34901 10.5043 5.44704 10.4847 5.53843 10.4467C5.62983 10.4086 5.71278 10.3528 5.7825 10.2825L13.5 2.5575V5.25C13.5 5.44891 13.579 5.63968 13.7197 5.78033C13.8603 5.92098 14.0511 6 14.25 6C14.4489 6 14.6397 5.92098 14.7803 5.78033C14.921 5.63968 15 5.44891 15 5.25V0.75C14.9988 0.651992 14.9784 0.555167 14.94 0.465Z'/></svg>");
}

@media screen and (min-width: 768px) {
  .c-btn__01 {
    transition: background-color 0.3s;
  }
  .c-btn__01--text {
    transition: color 0.3s;
  }
  .c-btn__01--arrow {
    transition: background-image 0.3s;
  }
  .c-btn__01--icon path {
    transition: fill 0.3s, stroke 0.3s;
  }
  .c-btn__01.is-mid {
    width: 30rem;
  }
  .c-btn__01:hover {
    background-color: #fff;
    --text-color: var(--category-color, #ff6d34);
  }
  .c-btn__01:hover .c-btn__01--icon:not(.is-stroke) path {
    fill: var(--category-color, #ff6d34);
  }
  .c-btn__01:hover .c-btn__01--icon.is-stroke path {
    stroke: var(--category-color, #ff6d34);
  }
  .c-btn__01:hover .c-btn__01--arrow {
    background: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 13 6' fill='none'><path fill='%23ff6d34' d='M12 5.182v.75a.75.75 0 0 0 .547-1.263L12 5.182ZM8.456.305a.75.75 0 1 0-1.094 1.026l.547-.513.547-.513ZM0 5.182v.75h12v-1.5H0v.75Zm12 0 .547-.513L8.457.305l-.548.513-.547.513 4.09 4.364.548-.513Z'/></svg>") no-repeat center 45%/contain;
  }
  .c-btn__01:hover .c-btn__01--arrow.is-blue {
    background: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 13 6' fill='none'><path fill='%2300b3d0' d='M12 5.182v.75a.75.75 0 0 0 .547-1.263L12 5.182ZM8.456.305a.75.75 0 1 0-1.094 1.026l.547-.513.547-.513ZM0 5.182v.75h12v-1.5H0v.75Zm12 0 .547-.513L8.457.305l-.548.513-.547.513 4.09 4.364.548-.513Z'/></svg>") no-repeat center 45%/contain;
  }
  .c-btn__01:hover .c-btn__01--arrow.is-green {
    background: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 13 6' fill='none'><path fill='%2300a759' d='M12 5.182v.75a.75.75 0 0 0 .547-1.263L12 5.182ZM8.456.305a.75.75 0 1 0-1.094 1.026l.547-.513.547-.513ZM0 5.182v.75h12v-1.5H0v.75Zm12 0 .547-.513L8.457.305l-.548.513-.547.513 4.09 4.364.548-.513Z'/></svg>") no-repeat center 45%/contain;
  }
  .c-btn__01:hover.is-white {
    background-color: var(--category-color, #ff6d34);
    --text-color: #fff;
  }
  .c-btn__01:hover.is-white .c-btn__01--arrow {
    background: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 13 6' fill='none'><path fill='%23ffffff' d='M12 5.182v.75a.75.75 0 0 0 .547-1.263L12 5.182ZM8.456.305a.75.75 0 1 0-1.094 1.026l.547-.513.547-.513ZM0 5.182v.75h12v-1.5H0v.75Zm12 0 .547-.513L8.457.305l-.548.513-.547.513 4.09 4.364.548-.513Z'/></svg>") no-repeat center 45%/contain;
  }
  .c-btn__01:hover.is-border {
    border-color: #333;
    background-color: #333;
    --text-color: #fff;
  }
  .c-btn__01:hover.is-border .c-btn__01--arrow {
    background: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 13 6' fill='none'><path fill='white' d='M12 5.182v.75a.75.75 0 0 0 .547-1.263L12 5.182ZM8.456.305a.75.75 0 1 0-1.094 1.026l.547-.513.547-.513ZM0 5.182v.75h12v-1.5H0v.75Zm12 0 .547-.513L8.457.305l-.548.513-.547.513 4.09 4.364.548-.513Z'/></svg>") no-repeat center 45%/contain;
  }
  .c-btn__02:hover img {
    opacity: 0;
  }
  .c-btn__02:hover::before {
    opacity: 1;
  }
}
@media screen and (max-width: 767px) {
  .c-btn__01--text {
    font-size: 1.6rem;
  }
  .c-btn__01--arrow {
    width: 1.6rem;
    height: 1.6rem;
    margin-right: 1.6rem;
  }
  .c-btn__01.is-wide {
    width: 100%;
  }
  .c-btn__01.is-lg {
    height: 6rem;
  }
  .c-btn__01.is-lg .c-btn__01--icon {
    margin-left: 2rem;
  }
  .c-btn__01.is-lg .c-btn__01--text {
    font-size: 2rem;
  }
  .c-btn__01.is-lg .c-btn__01--arrow {
    margin-right: 2rem;
  }
  .c-btn__02 .c-arrow__01 {
    width: 3rem;
    right: 0.4rem;
    bottom: 0.4rem;
  }
  .c-btn__grid {
    align-items: center;
    flex-direction: column;
  }
  .c-btn__grid.sp-reverse {
    flex-direction: column-reverse;
  }
}
input::-webkit-input-placeholder {
  color: var(--placeholder-color, #ccc);
}
input:-ms-input-placeholder {
  color: var(--placeholder-color, #ccc);
}
input::-moz-placeholder {
  color: var(--placeholder-color, #ccc);
}
input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 1000px #fff inset;
}

textarea {
  vertical-align: bottom;
}
textarea::-webkit-input-placeholder {
  color: var(--placeholder-color, #ccc);
}
textarea:-ms-input-placeholder {
  color: var(--placeholder-color, #ccc);
}
textarea::-moz-placeholder {
  color: var(--placeholder-color, #ccc);
}
textarea:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 1000px #fff inset;
}

.c-form__label {
  display: flex;
  gap: 1em;
  align-items: center;
  font-size: 1.6rem;
}
.c-form__required {
  padding: 0.25rem 0.4em;
  border-radius: 0.4rem;
  background-color: var(--category-color, #ff6d34);
  color: #fff;
  font-size: 1.4rem;
  line-height: 1;
  white-space: nowrap;
  flex-shrink: 0;
}
.c-form__error {
  margin-top: 0.5em;
  display: block;
  color: #e8380d;
  font-size: 87.5%;
}
.c-form__errorWrap {
  width: 100%;
}
.c-form__item > .c-form__errorWrap {
  margin-top: 0.5em;
}
.c-form__item p:not(:last-child) {
  margin-bottom: 0.5em;
}
.c-form__control {
  width: 100%;
  padding: 0 1em;
  border-radius: 0.4rem;
  background-color: #fff;
  box-shadow: 0 0 0.4rem rgba(0, 0, 0, 0.04);
}
.c-form__control:has(input[type=radio]), .c-form__control:has(input[type=checkbox]) {
  padding: 0;
  border-radius: 0;
  background-color: transparent;
  box-shadow: none;
}
.c-form__control:has(input[type=radio]) label {
  display: flex;
  align-items: center;
  gap: 0.5em;
}
.c-form__control:has(input[type=radio]) input[type=radio] {
  margin-top: 0;
}
.c-form__control.is-error {
  border-color: #e8380d;
  box-shadow: 0 0 0 2px rgba(232, 56, 13, 0.15);
}
.c-form__control--short {
  width: 6.4rem;
  min-width: 6.4rem;
  padding: 0 0.5em;
  text-align: center;
}
.c-form__control--zip {
  width: 12rem;
  max-width: 100%;
}
.c-form__control--amount6 {
  width: 12ch;
  min-width: 12ch;
  max-width: 100%;
}
.c-form__control--textarea {
  height: 23.6rem;
  padding: 1em;
  resize: none;
}
.c-form__policy {
  margin-top: 6rem;
}
.c-form__policy--box {
  padding: 5.6rem 4.8rem;
  border: 1px solid #b3b3b3;
  background-color: #fff;
}
.c-form__policy--title {
  margin-bottom: 1.5em;
  font-size: 2.4rem;
}
.c-form__policy--content {
  max-height: 23.5rem;
  overflow-y: scroll;
  padding-right: 1.2rem;
  scrollbar-gutter: stable;
}
.c-form__policy--doui {
  margin-top: 4rem;
}
.c-form__submit {
  margin-top: 6rem;
}
.c-form__submit--confirm {
  margin-top: 8rem;
  display: flex;
  align-items: center;
  gap: 8rem;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .c-form__submit--confirm {
    gap: 1.6rem;
    align-items: center;
    flex-direction: column-reverse;
  }
}
.c-form__submit--confirm > * {
  margin: 0;
}
.c-form__submit--confirm .c-btn__01 {
  margin-top: 0;
}
@media screen and (min-width: 768px) {
  .c-form__submit--confirm button.c-btn__01 {
    width: 30rem;
  }
  .c-form__submit--confirm button.c-btn__01 .c-btn__01--text {
    white-space: nowrap;
  }
}
@media screen and (max-width: 767px) {
  .c-form__submit--confirm .c-btn__01 {
    position: relative;
  }
  .c-form__submit--confirm .c-btn__01 .c-btn__01--text {
    flex: 0 1 auto;
    white-space: nowrap;
  }
  .c-form__submit--confirm .c-btn__01 .c-btn__01--arrow {
    position: absolute;
    right: 1.6rem;
    margin-right: 0;
  }
  .c-form__submit--confirm .c-btn__01.is-back .c-btn__01--arrow {
    left: 1.6rem;
    right: auto;
    margin-left: 0;
  }
}
.c-form__confirm--inner {
  padding: 8rem;
  border-radius: 1.6rem;
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  .c-form__confirm--inner {
    margin: 0 -2.8rem;
    padding: 2.8rem;
    border-radius: 0;
  }
}
.c-form__confirm--label {
  font-size: 1.4rem;
  color: #888;
  margin: 0;
}
.c-form__confirm--value {
  font-size: 1.6rem;
  word-break: break-all;
  margin: 0;
}
.c-form__complete--title {
  margin-bottom: 7.2rem;
  font-size: 3.2rem;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .c-form__complete--title {
    margin-bottom: 4.8rem;
    font-size: 2rem;
  }
}
.c-form__complete--text {
  text-align: center;
  font-size: 1.6rem;
}
@media screen and (max-width: 767px) {
  .c-form__complete--text {
    text-align: left;
  }
}
.c-form__complete .c-btn__01 {
  margin-top: 7.2rem;
}
@media screen and (max-width: 767px) {
  .c-form__complete .c-btn__01 {
    margin-top: 4.8rem;
  }
}

@media screen and (min-width: 768px) {
  .c-form__confirm--inner .c-form__box > .c-form__confirm--label,
  .c-form__confirm--inner .c-form__box > .c-form__confirm--value {
    align-self: start;
  }
}
@media screen and (max-width: 767px) {
  .c-form__confirm--label {
    margin-bottom: 0.4em;
  }
  .c-form__confirm--value + .c-form__confirm--label {
    margin-top: 2em;
  }
}
.wpcf7-acceptance .wpcf7-list-item {
  position: relative;
}
.wpcf7-acceptance .wpcf7-list-item label {
  display: inline-flex;
  align-items: center;
  column-gap: 1em;
}
.wpcf7-acceptance .wpcf7-list-item-label::before {
  content: "";
  width: 0.75em;
  height: 0.5em;
  position: absolute;
  top: 0.2em;
  left: 0.25em;
  border-bottom: 2px solid var(--category-color, #ff6d34);
  border-left: 2px solid var(--category-color, #ff6d34);
  opacity: 0;
  visibility: hidden;
  transform: rotate(-45deg);
}
.wpcf7-acceptance .wpcf7-list-item-label a {
  text-decoration: underline;
}
.wpcf7-acceptance input[type=checkbox] {
  width: 1.25em;
  border: 1px solid #d9d9d9;
  background-color: #fff;
  appearance: none;
  aspect-ratio: 1;
}
.wpcf7-acceptance input[type=checkbox]:checked {
  border-color: #333;
}
.wpcf7-acceptance input[type=checkbox]:checked + .wpcf7-list-item-label::before {
  opacity: 1;
  visibility: visible;
}

#organization_type {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}
#organization_type > label {
  display: flex;
  align-items: center;
  gap: 0.5em;
}

.p-privacy__lead {
  margin: 0 0 2.8rem;
  line-height: 2;
}
.p-privacy__section + .p-privacy__section {
  margin-top: 3.6rem;
}
.p-privacy__title {
  margin: 0 0 1.2rem;
  line-height: 1.6;
}
.p-privacy p {
  line-height: 2;
}
.p-privacy p + p {
  margin-top: 0.75em;
}
.p-privacy__list {
  margin-top: 0.8rem;
}
.p-privacy__list li {
  line-height: 2;
}
.p-privacy__list li + li {
  margin-top: 0.6em;
}

@media screen and (min-width: 768px) {
  .c-form__box {
    display: grid;
    gap: 3.2rem 4rem;
    grid-template-columns: 18rem 1fr;
    align-items: start;
  }
  .c-form__box > .c-form__errorWrap {
    grid-column: 2;
    margin-top: -2.6rem;
  }
}
@media screen and (max-width: 767px) {
  .c-form__label {
    margin-bottom: 0.5em;
  }
  .c-form__label:not(:first-child) {
    margin-top: 2rem;
  }
  .c-form__control {
    padding: 0.5em 1em;
  }
  .c-form__control--textarea {
    height: 28rem;
  }
  .c-form__policy {
    margin-top: 2.4rem;
  }
  .c-form__policy--box {
    padding: 3.2rem 1.6rem;
  }
  .c-form__policy--title {
    font-size: 1.8rem;
  }
  .c-form__policy--content {
    padding-right: 0.8rem;
  }
  .c-form__submit {
    margin-top: 4rem;
  }
  .p-privacy__lead {
    margin-bottom: 2rem;
  }
  .p-privacy__section + .p-privacy__section {
    margin-top: 2.4rem;
  }
  .p-privacy__title {
    margin-bottom: 0.8rem;
  }
  .p-privacy p {
    line-height: 1.9;
  }
  .p-privacy__list li {
    line-height: 1.9;
  }
}
.c-search__panel {
  margin-bottom: 8rem;
  padding: 4rem;
  border-radius: 1.6rem;
  background-color: #fff;
}
.c-search__item + .c-search__item {
  margin-top: 4rem;
}
.c-search__item--label {
  margin-bottom: 1.25em;
  padding: 0 1.25em;
  display: flex;
  gap: 1rem;
  align-items: center;
  border-radius: 0.6rem;
  background-color: #ff6d34;
  color: #fff;
  font-weight: 700;
  font-size: 1.6rem;
}
.c-search__item--control {
  padding: 0 1.25em;
  display: flex;
  gap: 1.6rem 3.2rem;
  flex-wrap: wrap;
}
.c-search__item--hint {
  width: 1.6rem;
  line-height: 0;
}
.c-search__input-wrapper {
  position: relative;
  display: flex;
  align-items: center;
}
.c-search__icon {
  width: 2.4rem;
  height: 2.4rem;
  position: absolute;
  left: 1.6rem;
  color: #999;
  pointer-events: none;
}
.c-search__input {
  width: 100%;
  padding: 0.5em 1em 0.5em 3em;
  border: none;
  border-radius: 0.6rem;
  background-color: #e6e6e6;
  color: #333;
  font-size: 1.6rem;
  line-height: 1.5;
}
.c-search__input::placeholder {
  color: #999;
}
.c-search__input:focus {
  outline: 2px solid #ff6d34;
  outline-offset: 2px;
}
.c-search__checkbox-label {
  line-height: 1;
  cursor: pointer;
}
.c-search__checkbox-label input[type=checkbox] {
  width: 0;
  height: 0;
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.c-search__checkbox-label span {
  padding-left: 2.6rem;
  position: relative;
  color: #333;
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 1;
}
.c-search__checkbox-label span::before {
  content: "";
  width: 1em;
  height: 1em;
  position: absolute;
  top: 50%;
  left: 0;
  border: 1px solid #333;
  background-color: #fff;
  transition: border-color 0.3s, background-color 0.3s;
  transform: translateY(-50%);
}
.c-search__checkbox-label span::after {
  content: "";
  width: 0.6rem;
  height: 1rem;
  position: absolute;
  top: calc(50% - 0.6rem);
  left: 0.5rem;
  border: solid #333;
  border-width: 0 2px 2px 0;
  opacity: 0;
  transition: transform 0.2s, opacity 0.2s;
  transform: rotate(45deg) scale(0);
}
.c-search__checkbox-label input[type=checkbox]:checked + span::after {
  opacity: 1;
  transform: rotate(45deg) scale(1);
}
.c-search__checkbox-label:hover span::before {
  border-color: #ff6d34;
}
.c-search__checkbox-icon {
  display: flex;
  gap: 0.4rem;
  align-items: center;
}
.c-search__actions {
  margin-top: 5.6rem;
  display: flex;
  gap: 1.6rem;
  align-items: center;
  flex-wrap: wrap;
  flex-direction: column;
}
.c-search__btn {
  width: 46.4rem;
  height: 4.4rem;
  padding: 0 1.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #ff6d34;
  border-radius: 0.4rem;
  text-align: center;
  font-weight: 700;
  font-size: 2.4rem;
}
.c-search__btn-add {
  --text-color: #ff6d34;
}
.c-search__btn-add .c-search__btn--text {
  flex: 1;
}
.c-search__btn-add .c-search__btn--icon {
  width: 2.6rem;
  position: relative;
  border-radius: 50%;
  background-color: #ff6d34;
  aspect-ratio: 1;
}
.c-search__btn-add .c-search__btn--icon::before, .c-search__btn-add .c-search__btn--icon::after {
  content: "";
  width: 50%;
  height: 3px;
  position: absolute;
  top: 50%;
  left: 50%;
  background-color: white;
  transform: translate(-50%, -50%);
}
.c-search__btn-add .c-search__btn--icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
}
.c-search__btn-submit {
  background-color: #ff6d34;
  column-gap: 0.8rem;
  --text-color: #fff;
}
.c-search__btn-submit.is-loading {
  pointer-events: none;
  cursor: wait;
  color: var(--text-color, currentColor);
}
.c-search__btn-submit.is-loading .c-search__btn--icon {
  display: none;
}
.c-search__btn-submit.is-loading::before {
  content: "";
  width: 1.6rem;
  height: 1.6rem;
  display: block;
  flex-shrink: 0;
  border: 2px solid var(--text-color, currentColor);
  border-right-color: transparent;
  border-radius: 50%;
  animation: puremiyaSearchSpin 0.8s linear infinite;
}
.c-search__btn-icon {
  flex-shrink: 0;
}
.c-searchModal__title {
  margin-bottom: 1em;
  color: #ff6d34;
  text-align: center;
  font-weight: 700;
  font-size: 3.2rem;
}
.c-searchModal__title--dark {
  color: #333;
}
.c-searchModal__group + .c-searchModal__group {
  margin-top: 3.2rem;
}
.c-searchModal__level {
  padding: 0 1.25em;
  display: flex;
  gap: 1.6rem 3.2rem;
  flex-wrap: wrap;
}
.c-searchModal__level-item span {
  padding-left: 0;
}
.c-searchModal__level-icon {
  color: #ccc;
  font-size: 2rem;
}
.c-searchModal__level-icon.is-active {
  color: #ff6d34;
}
.c-searchModal__actions {
  margin-top: 4rem;
  text-align: center;
}
.c-searchModalArea__list {
  display: grid;
  gap: 2.4rem;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.c-searchModalArea__item {
  display: flex;
  flex-direction: column;
}
.c-searchModalArea__item--title {
  width: 15.2rem;
  margin: 0 auto -1.2rem;
  border-radius: 1.2rem;
  background-color: var(--area-color, #ccc);
  color: #fff;
  text-align: center;
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 2.4rem;
}
.c-searchModalArea__item--description {
  padding: 3.2rem 1.6rem 1.6rem;
  flex: 1;
  border-radius: 1.2rem;
  background-color: rgba(var(--area-color-rgb), 0.08);
  font-weight: 700;
  font-size: 1.6rem;
}
.c-searchModalArea .c-list__note {
  margin-top: 3.2rem;
  font-size: 1.4rem;
}
.c-searchModalArea .c-list__note li + li {
  margin-top: 0.25em;
}

@keyframes puremiyaSearchSpin {
  to {
    transform: rotate(360deg);
  }
}
@media screen and (min-width: 768px) {
  .c-search__btn-add {
    transition: background-color 0.3s;
  }
  .c-search__btn-add .c-search__btn--text {
    transition: color 0.3s;
  }
  .c-search__btn-add .c-search__btn--icon {
    transition: background-color 0.3s;
  }
  .c-search__btn-add:hover {
    background-color: #ff6d34;
    --text-color: #fff;
  }
  .c-search__btn-add:hover .c-search__btn--icon {
    background-color: #fff;
  }
  .c-search__btn-add:hover .c-search__btn--icon::before, .c-search__btn-add:hover .c-search__btn--icon::after {
    background-color: #ff6d34;
  }
  .c-search__btn-submit {
    transition: background-color 0.3s, color 0.3s;
  }
  .c-search__btn-submit:hover {
    background-color: #fff;
    --text-color: #ff6d34;
  }
}
@media screen and (max-width: 767px) {
  .c-search__panel {
    margin-right: -2.8rem;
    margin-bottom: 3.2rem;
    margin-left: -2.8rem;
    padding: 3.2rem 2.8rem;
  }
  .c-search__item + .c-search__item {
    margin-top: 3.2rem;
  }
  .c-search__item--control {
    padding: 0;
  }
  .c-search__icon {
    width: 1.8rem;
    height: 1.8rem;
  }
  .c-search__input {
    font-size: 1.4rem;
  }
  .c-search__actions {
    margin-top: 3.2rem;
    gap: 1.2rem;
  }
  .c-search__btn {
    width: 100%;
    height: 3.4rem;
    font-size: 1.6rem;
  }
  .c-search__btn-add .c-search__btn--icon {
    width: 1.6rem;
  }
  .c-search__btn-add .c-search__btn--icon::before, .c-search__btn-add .c-search__btn--icon::after {
    height: 1px;
  }
  .c-search__btn-submit .c-search__btn--icon {
    width: 1.8rem;
    height: auto;
  }
  .c-searchModal__title {
    font-size: 2rem;
  }
  .c-searchModalArea__list {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  .c-searchModalArea .c-list__note {
    margin-top: 2.4rem;
  }
}
.c-heading__01 {
  font-weight: 900;
  font-size: 3.2rem;
  line-height: 2;
}
.c-heading__02 {
  margin-bottom: 2em;
  font-size: 2.4rem;
  line-height: 1.5;
}

@media screen and (max-width: 767px) {
  .c-heading__01 {
    margin-bottom: 8rem;
  }
  .c-heading__01--label {
    font-size: 2.4rem;
  }
  .c-heading__01--main {
    font-size: 6.4rem;
  }
  .c-heading__01--text:last-of-type {
    padding-bottom: 0.5em;
  }
  .c-heading__02 {
    margin-bottom: 1.6em;
    font-size: 2rem;
  }
}
.c-table__01--content {
  display: grid;
  grid-template-columns: 25rem 1fr;
}
.c-table__01--head, .c-table__01--detail {
  padding: 2.5rem;
}
.c-table__01--head {
  margin-bottom: -0.1rem;
  border-bottom: 2px solid var(--theme-color, #ff6d34);
  text-align: center;
  font-weight: 600;
}
.c-table__01--detail {
  border-bottom: 1px solid #ccc;
}

.c-modal__content {
  width: 103.2rem;
  max-width: 90%;
  position: fixed;
  top: 50%;
  left: 50%;
  z-index: 9999;
  display: none;
  border-radius: 0.8rem;
  background-color: #fff;
  transform: translateX(-50%) translateY(-50%);
}
.c-modal__content--inner {
  max-height: calc(100vh - 10rem);
  padding: 5.6rem 4rem;
  overflow-y: auto;
}
.c-modal__close {
  width: 4.8rem;
  position: absolute;
  top: 5.6rem;
  right: 3rem;
  display: block;
  border-radius: 0.8rem;
  background-color: rgba(255, 255, 255, 0.8);
  aspect-ratio: 1;
}
.c-modal__close::before, .c-modal__close::after {
  content: "";
  width: 60%;
  height: 2px;
  position: absolute;
  top: 50%;
  left: 50%;
  background-color: #999;
  transform: translate(-50%, -50%) rotate(45deg);
}
.c-modal__close::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

.js-modal__trigger:hover {
  cursor: pointer;
}
.js-bg__layer {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 998;
  background-color: rgba(0, 0, 0, 0.8);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s;
}
.js-bg__layer.is-show {
  opacity: 1;
  visibility: visible;
}

@media screen and (max-width: 767px) {
  .c-modal__content--full {
    max-width: 100%;
    border-radius: 0;
  }
  .c-modal__content--full .c-modal__content--inner {
    padding-right: 2.8rem;
    padding-left: 2.8rem;
  }
  .c-modal__content--inner {
    padding: 2rem 2rem 4rem;
  }
  .c-modal__close {
    top: 0.5rem;
    right: 0.5rem;
  }
}
.c-tab__menu {
  margin-bottom: 4rem;
  display: flex;
  gap: 5.6rem;
  justify-content: center;
}
.c-tab__menu--item {
  width: 23.4rem;
  height: 4.4rem;
  border-radius: 2.2rem;
  background-color: #fff;
  color: #ff6d34;
  font-weight: 700;
  font-size: 2.4rem;
}
.c-tab__menu--item.is-active {
  background-color: #ff6d34;
  color: #fff;
  pointer-events: none;
}
.c-tab__panel {
  margin-top: 2.4rem;
}
.c-tab__panel--box {
  display: none;
}
.c-tab__panel--box.is-active {
  display: block;
}

@media screen and (min-width: 768px) {
  .c-tab__menu--item {
    transition: background-color 0.3s, color 0.3s;
  }
  .c-tab__menu--item:hover {
    background-color: #ff6d34;
    color: #fff;
  }
}
@media screen and (max-width: 767px) {
  .c-tab__menu {
    margin-bottom: 3.2rem;
    gap: 1rem;
  }
  .c-tab__menu--item {
    width: 16.4rem;
    height: 3.4rem;
    font-size: 1.6rem;
  }
}
.c-slider__01--card .pic {
  margin-bottom: 1.6rem;
  display: block;
  overflow: hidden;
  aspect-ratio: 296/400;
}
.c-slider__01--card .pic img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.c-slider__01--card .pic.asp-auto {
  aspect-ratio: auto;
}
.c-slider__01--card .tag {
  padding: 0 0.8rem;
  display: inline-block;
  border-radius: 0.3rem;
  background-color: var(--theme-color, #ff6d34);
  color: #fff;
  font-weight: 500;
  font-size: 1.2rem;
}
.c-slider__01--card .tag + .name {
  margin-top: 0.8rem;
}
.c-slider__01--card .name {
  font-weight: 500;
  line-height: 1.75;
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  white-space: wrap;
  -webkit-line-clamp: 2;
}
.c-slider__01 .swiper {
  overflow: visible !important;
}
.c-slider__01 .swiper-wrapper {
  height: auto;
}
.c-slider__01 .swiper-slide {
  width: 29.6rem;
}
.c-slider__01--control {
  margin-top: 8rem;
  padding: 2rem 0;
}
.c-slider__02--card .pic {
  display: block;
  overflow: hidden;
  aspect-ratio: 1/0.5;
}
.c-slider__02--card .pic img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.c-slider__02 .swiper {
  overflow: visible !important;
}
.c-slider__02 .swiper-wrapper {
  height: auto;
}
.c-slider__02 .swiper-slide {
  width: 83.2rem;
}
.c-slider__02--control {
  margin-top: 4rem;
}
.c-slider__03--card .pic {
  display: block;
  overflow: hidden;
  aspect-ratio: 1/0.68;
}
.c-slider__03--card .pic img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.c-slider__03--card .pic + p {
  margin-top: 2.4rem;
}
.c-slider__03 .swiper {
  overflow: visible !important;
}
.c-slider__03 .swiper-wrapper {
  height: auto;
}
.c-slider__03 .swiper-slide {
  width: 36rem;
}
.c-slider__03--control {
  margin-top: 10rem;
}

/* Swiperページネーション進捗バー */
.swiper-pagination-progress {
  width: 10rem;
  height: 2px;
  position: relative;
  display: inline-block;
  background-color: #fff;
  vertical-align: middle;
}

.swiper-pagination-progress::after {
  content: "";
  width: var(--swiper-progress, 0%);
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #ff6d34;
  transition: width linear;
}

@keyframes swiper-progress-animation {
  from {
    width: 0;
  }
  to {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .c-slider__01 {
    position: relative;
  }
  .c-slider__01 .btn__01 {
    position: absolute;
    right: 0;
    bottom: 0;
  }
}
@media screen and (max-width: 767px) {
  .c-slider__01--control {
    margin-top: 2.5rem;
    padding: 0;
  }
  .c-slider__01 .btn__01 {
    margin-top: 4rem;
  }
  .c-slider__02 .swiper-slide {
    width: 100%;
  }
  .c-slider__02--control {
    margin-top: 3.5rem;
  }
}
.c-loading {
  width: 100%;
  height: 100dvh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  display: block;
  background-color: #fff;
  opacity: 1;
  visibility: visible;
  transition: opacity 0.5s, visibility 0.5s;
}
.c-loading.is-hidden {
  opacity: 0;
  visibility: hidden;
}
.c-loading__text {
  width: 36.8rem;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.c-loading__layer {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #263e4c;
}
.c-loading__counter {
  position: absolute;
  right: 6rem;
  bottom: 6rem;
  font-weight: 600;
  font-size: 2rem;
}

.c-card__list {
  display: grid;
}
.c-card__list.col3 {
  gap: 4rem 2.4rem;
  grid-template-columns: repeat(3, 1fr);
}
.c-card__list .swiper-slide {
  box-sizing: border-box;
}
.c-card__01 {
  padding: 2rem;
  display: flex;
  overflow: hidden;
  flex-direction: column;
  border-radius: 1.2rem;
  background-color: #fff;
}
.c-card__01.bg-gray {
  background-color: #f2f2f2;
}
.c-card__01--image {
  margin-bottom: 0.75em;
  position: relative;
  display: block;
  display: flex;
  overflow: hidden;
  align-items: center;
  justify-content: center;
  border-radius: 0.8rem;
  background-color: #eff1f4;
  aspect-ratio: 288/184;
}
.c-card__01--image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.c-card__01--image .c-card__01--label {
  padding: 0.25em 0.75em;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 0.8rem 0 0.8rem 0;
  background-color: var(--area-color, #333);
  color: #fff;
  text-align: center;
  font-weight: 700;
  font-size: 1.6rem;
}
.c-card__01--image .c-card__01--label-other {
  margin-left: 0.2em;
  font-size: 0.8em;
}
.c-card__01--image .c-card__01--label-main,
.c-card__01--image .c-card__01--label-other {
  color: #fff;
}
.c-card__01--image[data-status=end]::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  background-color: rgba(0, 0, 0, 0.25);
}
.c-card__01--image[data-status=end]::after {
  content: "終了しました";
  padding: 0.25em 0.5em;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  border-radius: 0.4rem;
  background-color: #ff6d34;
  color: #fff;
  white-space: nowrap;
  font-weight: 700;
  font-size: 2.4rem;
  transform: translate(-50%, -50%);
}
.c-card__01--title {
  margin-bottom: 0.75em;
  font-weight: 700;
  font-size: 1.6rem;
}
.c-card__01--tags {
  margin-bottom: 1.6rem;
  display: flex;
  gap: 0.8rem 0.8rem;
  flex-wrap: wrap;
}
.c-card__01--tags-other {
  margin-top: 1.6rem;
  margin-bottom: 0;
}
.c-card__01--tag {
  padding: 0.25em 0.5em;
  border-radius: 0.4rem;
  background-color: #f2f2f2;
  font-weight: 700;
  font-size: 1.4rem;
  line-height: 1.2;
}
.c-card__01--tag.is-dark {
  background-color: #333;
  color: #fff;
}
.c-card__01--tag-round {
  padding: 0 1rem;
  border: 1px solid #ff6d34;
  border-radius: 1em;
  background-color: #fff;
  color: #ff6d34;
  font-weight: 700;
  font-size: 1.4rem;
}
.c-card__01--tag-round::before {
  content: "#";
}
.c-card__01--tag-round.no-hash::before {
  content: none;
}
.c-card__01--tag-square {
  padding: 0.2rem 1rem;
  border: 1px solid #b3b3b3;
  border-radius: 0.4rem;
  background-color: #fff;
  font-weight: 700;
  font-size: 1.4rem;
}
.c-card__01--tag-square::before {
  content: "#";
}
.c-card__01--tag-square.no-hash::before {
  content: none;
}
.c-card__01--column {
  margin-bottom: 2rem;
  display: flex;
  gap: 1em;
  align-items: center;
  justify-content: space-between;
}
.c-card__01--column .c-card__01--tags {
  margin-bottom: 0;
}
.c-card__01--favorite {
  width: 2.4rem;
  flex: none;
}
.c-card__01--info {
  display: grid;
  gap: 1.6rem 1.4rem;
  grid-template-columns: auto 1fr;
  align-items: start;
  font-size: 1.4rem;
}
.c-card__01--info dt {
  padding: 0 0.5em;
  border-radius: 1.5em;
  background-color: #ff6d34;
  color: #fff;
  text-align: center;
  font-weight: 700;
  font-size: 1.4rem;
}
.c-card__01--info .c-card__01--level-title {
  padding: 0 0.5em;
  border: 1px solid #ff6d34;
  border-radius: 0.4rem;
  background-color: #fff;
  color: #ff6d34;
}
.c-card__01--info .c-card__01--level-icons {
  display: flex;
  gap: 0.5em;
  line-height: 1;
}
.c-card__01--footer {
  margin-top: auto;
}
.c-card__01 .c-btn__01 {
  width: 23.8rem;
  height: 3.2rem;
  min-height: 0;
}
.c-card__01 .c-btn__01--text {
  letter-spacing: 0.1em;
  font-size: 1.6rem;
}
.c-card__01[href] img {
  transition: transform 0.3s;
}
.c-card__01[href]:hover {
  opacity: 1;
}
.c-card__01[href]:hover img {
  transform: scale(1.1);
}

@media screen and (max-width: 767px) {
  .c-card__list.sp-col1 {
    gap: 3.2rem 0;
    grid-template-columns: 1fr;
  }
  .c-card__01 {
    padding: 1.6rem;
  }
  .c-card__01--info dt {
    width: 7.7rem;
  }
  .c-card__01 .c-btn__01 {
    width: 24.5rem;
  }
}
.c-module__news {
  list-style: none;
}
.c-module__news--item {
  display: flex;
  align-items: start;
}
.c-module__news--item + .c-module__news--item {
  margin-top: 2.4rem;
}
.c-module__news--info {
  position: relative;
  display: flex;
  column-gap: 1.5rem;
}
.c-module__news--date {
  width: 10rem;
  flex: 1;
  font-weight: 700;
  font-size: 1.6rem;
}
.c-module__news--category {
  width: 13.8rem;
  min-height: 4rem;
  padding: 0.4rem 0.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.4rem;
  background-color: var(--category-color, #333);
  text-align: center;
  font-weight: 700;
  font-size: 1.4rem;
  line-height: 1.2;
  --text-color: #fff;
}
.c-module__news--title {
  flex: 1;
  line-height: 1.8;
}

@media screen and (min-width: 768px) {
  .c-module__news--item {
    align-items: center;
  }
  .c-module__news--info {
    margin-top: 0.25rem;
    margin-right: 2rem;
    padding-right: 2rem;
    align-items: center;
  }
  .c-module__news--info::after {
    content: "";
    width: 1px;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    background-color: #000;
  }
}
@media screen and (max-width: 767px) {
  .c-module__news--item {
    flex-direction: column;
    row-gap: 0.8rem;
  }
  .c-module__news--info {
    width: 100%;
    flex-direction: column;
    row-gap: 0.5rem;
  }
  .c-module__news--category {
    width: fit-content;
    min-height: 0;
    font-size: 1.2rem;
  }
  .c-module__news--category br {
    display: none;
  }
}
.l-header {
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 998;
}
.l-header__inner {
  padding: 3.2rem 2.6rem;
  display: flex;
  gap: 0 3.2rem;
  align-items: center;
  justify-content: space-between;
}
.l-header__title {
  width: 14.2em;
  margin-right: auto;
  font-size: 1rem;
  line-height: 1;
}
.l-header__title img {
  width: 100%;
}
.l-header__nav {
  display: flex;
  gap: 0 3.2rem;
  align-items: center;
}
.l-header__menu {
  display: flex;
  gap: 0 2.4rem;
}
.l-header__sns {
  display: flex;
  gap: 0 3.2rem;
  align-items: center;
}
.l-header__favorite {
  display: inline-flex;
  align-items: center;
  column-gap: 0.8rem;
}
.l-header__favorite--text {
  letter-spacing: 0;
}
.l-header__contact {
  height: 4.8rem;
  padding: 0 3.2rem;
  display: flex;
  gap: 0 1.6rem;
  align-items: center;
  border-radius: 2.4rem;
  background-color: #fff;
  letter-spacing: 0;
  font-size: 1.2rem;
}
.l-header__hamburger {
  width: 2.4rem;
  height: 2.4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  font-size: 1rem;
  cursor: pointer;
}
.l-header__hamburger--icon {
  width: 100%;
  height: 2rem;
  position: relative;
}
.l-header__hamburger--icon > span {
  width: 100%;
  height: 2px;
  position: absolute;
  right: 0;
  border-radius: 1px;
  background-color: #333;
  transition: all 0.3s;
}
.l-header__hamburger--icon > span:nth-child(1) {
  top: 0;
}
.l-header__hamburger--icon > span:nth-child(2) {
  top: calc(50% - 1px);
}
.l-header__hamburger--icon > span:nth-child(3) {
  top: calc(100% - 2px);
}

@media screen and (min-width: 768px) {
  .l-header__menu a {
    padding: 0.4rem 1.2rem;
    border-radius: 2.4rem;
    background-color: #f2f2f2;
  }
  .l-header__favorite--text {
    padding: 0.4rem 1.2rem;
    border-radius: 2.4rem;
    background-color: #f2f2f2;
  }
}
@media screen and (max-width: 767px) {
  .l-header {
    background-color: #f2f2f2;
  }
  .l-header__inner {
    padding: 1.6rem 2.8rem;
  }
  .l-header__title {
    width: 9.4rem;
  }
  .l-header__nav {
    display: none;
  }
}
.l-siteMenu {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
  display: none;
}
.l-siteMenu__overlay {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #666;
  cursor: pointer;
  mix-blend-mode: multiply;
}
.l-siteMenu__panel {
  width: calc(100% - 2.8rem);
  height: 100%;
  padding: 1.6rem 2.8rem 4rem;
  position: absolute;
  top: 0;
  right: 0;
  display: flex;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  flex-direction: column;
  background-color: #f2f2f2;
}
.l-siteMenu__header {
  margin-bottom: 3.6rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.l-siteMenu__logo {
  width: 9.3rem;
  display: block;
}
.l-siteMenu__logo img {
  width: 100%;
  height: auto;
}
.l-siteMenu__close {
  width: 2rem;
  height: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.l-siteMenu__close svg {
  width: 100%;
  height: 100%;
}
.l-siteMenu__list {
  display: flex;
  gap: 1.2rem;
  flex-direction: column;
}
.l-siteMenu__item {
  padding-bottom: 1.2rem;
  position: relative;
}
.l-siteMenu__item::after {
  content: "";
  width: calc(100% - 4.2rem);
  height: 1px;
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #b3b3b3;
}
.l-siteMenu__link {
  display: flex;
  gap: 1.6rem;
  align-items: center;
  justify-content: space-between;
}
.l-siteMenu__link--text {
  color: #333;
  letter-spacing: 0.1em;
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 1.4;
}
.l-siteMenu__link--arrow {
  width: 3rem;
  height: 3rem;
  flex-shrink: 0;
  border: 1px solid #b3b3b3;
  border-radius: 50%;
  background-color: #fff;
  background-image: url("data:image/svg+xml,<svg width='15' height='5' viewBox='0 0 15 5' fill='none' xmlns='http://www.w3.org/2000/svg'><path fill='%23333333' d='M10.286 0.116344C10.5468 -0.0653021 10.9295 -0.0303615 11.1408 0.193992L14.8639 4.14791C15.0115 4.3046 15.0419 4.52064 14.9411 4.70269C14.8402 4.88447 14.6267 4.99989 14.3926 5H0.607853C0.272145 5 0 4.7658 0 4.4769C0.000151582 4.18811 0.272239 3.95379 0.607853 3.95379H13.1163L10.1958 0.851957C9.98483 0.627519 10.0254 0.298138 10.286 0.116344Z'/></svg>");
  background-position: center center;
  background-size: 1.5rem 0.5rem;
  background-repeat: no-repeat;
}
.l-siteMenu__sns {
  margin-top: 3.6rem;
  display: flex;
  gap: 4.5rem;
  justify-content: center;
}
.l-siteMenu__sns--item {
  display: block;
}
.l-siteMenu__sns--item svg {
  width: auto;
  height: 3.8rem;
}

.l-header.is-open .l-header__hamburger--icon > span:nth-child(1) {
  top: calc(50% - 1px);
  transform: rotate(45deg);
}
.l-header.is-open .l-header__hamburger--icon > span:nth-child(2) {
  opacity: 0;
}
.l-header.is-open .l-header__hamburger--icon > span:nth-child(3) {
  top: calc(50% - 1px);
  transform: rotate(-45deg);
}

.l-main {
  position: relative;
}
.l-main__block {
  margin-bottom: 12rem;
}
.l-main__block[class*=bg-] {
  padding-top: 12rem;
  padding-bottom: 12rem;
}
.l-main__space {
  padding-top: 12rem;
}
.l-main__container {
  max-width: 113.2rem;
  margin-right: auto;
  margin-left: auto;
  padding-right: 5rem;
  padding-left: 5rem;
}
.l-main__container + .l-main__container {
  margin-top: 8rem;
}
.l-main__container.is-full {
  max-width: 100%;
  padding-right: 3rem;
  padding-left: 3rem;
}
.l-main__title {
  margin-bottom: 6rem;
  padding-top: 14rem;
}
.l-main__title--text {
  font-size: 3.2rem;
}
.l-main__title--text::after {
  content: "";
  width: 1em;
  height: 0.6rem;
  margin: 1.5em auto 0;
  display: block;
  background-color: var(--category-color, #ff6d34);
}
.l-main__title--description {
  margin-top: 6rem;
  font-size: 1.6rem;
}

@media screen and (max-width: 767px) {
  .l-main {
    padding-top: 7.6rem;
  }
  .l-main__block {
    margin-bottom: 4rem;
  }
  .l-main__block[class*=bg-] {
    padding-top: 5.6rem;
    padding-bottom: 5.6rem;
  }
  .l-main__container {
    padding-right: 2.8rem;
    padding-left: 2.8rem;
  }
  .l-main__container + .l-main__container {
    margin-top: 4rem;
  }
  .l-main__title {
    margin-bottom: 3.2rem;
    padding-top: 8rem;
  }
  .l-main__title--text {
    font-size: 2rem;
  }
  .l-main__title--text::after {
    width: 2.4rem;
    height: 0.4rem;
  }
  .l-main__title--description {
    margin-top: 3.2rem;
  }
}
.l-common__contact--btn {
  width: 100%;
  height: 13rem;
  display: flex;
  gap: 1.6rem;
  align-items: center;
  justify-content: center;
  border-radius: 1.6rem;
}
.l-common__contact--btn--icon {
  width: 5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background-color: #fff;
  aspect-ratio: 1;
}
.l-common__contact--btn--icon svg {
  width: 2.7rem;
}
.l-common__contact--btn--text {
  letter-spacing: 0;
  font-weight: 700;
}
.l-common__contact--btn--text span {
  letter-spacing: 0;
  font-size: 2.8rem;
}
.l-common__headline {
  margin-bottom: 16rem;
}
.l-common__headline .heading__01 {
  margin-bottom: 0;
}
.l-common__headline .heading__01--label {
  font-size: 9.6rem;
}
.l-common__headline .heading__01--main {
  font-size: 2rem;
}
.l-common__headline--column {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.l-common__headline--visual {
  width: 100%;
  max-width: 57.6rem;
  overflow: hidden;
  border-radius: 0.8rem;
  aspect-ratio: 1/0.625;
}
.l-common__headline--navi {
  margin-top: 4.8rem;
  padding: 3.6rem 5.6rem;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}
.l-common__headline--navi ul {
  display: flex;
  gap: 4rem;
  font-size: 1.4rem;
}
.l-common__headline--navi a {
  display: inline-flex;
  gap: 0.8rem;
  align-items: center;
  transition: all 0.3s;
}
.l-common__headline--navi a::before {
  content: "";
  width: 0.6rem;
  border-right: 2px solid;
  border-bottom: 2px solid;
  transform: rotate(45deg);
  aspect-ratio: 1;
}
.l-common__headline--navi a:hover {
  opacity: 1;
  --text-color: #e60012;
}
.l-common__headline--navi .is-current {
  pointer-events: none;
  --text-color: #e60012;
}
.l-common__recruit {
  position: relative;
  z-index: 2;
}
.l-common__recruit--column {
  padding-top: 21.6rem;
  padding-bottom: 21.6rem;
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.l-common__recruit--column::before {
  content: "";
  height: 100%;
  position: absolute;
  top: 0;
  right: calc(50% - 50vw);
  left: calc(50% - 50vw);
  z-index: -1;
  background-color: rgba(65, 65, 76, 0.2);
  opacity: 0;
  transition: opacity 0.3s;
}
.l-common__recruit--column:hover::before {
  opacity: 1;
}
.l-common__recruit--catch {
  display: flex;
  flex-direction: column;
}
.l-common__recruit--catch .text-en {
  font-size: 8.8rem;
  line-height: 1;
}
.l-common__recruit--catch .text-jp {
  margin-top: 1em;
  letter-spacing: 0.3em;
  font-size: 2.4rem;
  line-height: 1.6;
}
.l-common__recruit--bg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

@media screen and (min-width: 768px) {
  .common__contact--column {
    display: grid;
    grid-template-columns: 1fr 50.4rem;
    align-items: center;
  }
  .common__contact--header .heading__01 {
    margin-bottom: 4.8rem;
  }
  .common__contact--header p {
    font-size: 2rem;
  }
  .common__navi--item .image img {
    transition: transform 0.3s;
  }
  .common__navi--item:hover .image img {
    transform: scale(1.1);
  }
}
@media screen and (max-width: 767px) {
  .common__contact--header p {
    font-size: 1.8rem;
  }
  .common__contact--btn {
    height: 10.4rem;
    margin-top: 5.6rem;
  }
  .common__contact--btn--icon {
    width: 4rem;
  }
  .common__contact--btn--text {
    font-size: 1.2rem;
  }
  .common__contact--btn--text span {
    font-size: 2rem;
  }
  .common__headline {
    margin-bottom: 8rem;
  }
  .common__headline .heading__01--label {
    font-size: 4.8rem;
  }
  .common__headline .heading__01--main {
    font-size: 1.4rem;
  }
  .common__headline--column {
    display: block;
  }
  .common__headline--visual {
    margin-top: 8rem;
  }
  .common__headline--navi {
    margin-top: 0;
    padding: 4rem 0;
    border-top: 0;
  }
  .common__headline--navi ul {
    display: grid;
    gap: 0.75em 0;
    grid-template-columns: repeat(2, 1fr);
  }
  .common__headline--navi a {
    display: flex;
    justify-content: flex-end;
    flex-direction: row-reverse;
  }
  .common__recruit--column {
    padding-top: 10rem;
    padding-bottom: 10rem;
    position: relative;
  }
  .common__recruit--catch .text-en {
    font-weight: 600;
    font-size: 5.6rem;
  }
  .common__recruit--catch .text-jp {
    letter-spacing: 0.15em;
    font-size: 1.6rem;
  }
  .common__recruit .arrow-01 {
    position: absolute;
    right: 0;
    bottom: 2rem;
  }
}
.l-single__block {
  padding-top: 14.6rem;
}
.l-single__header {
  margin-bottom: 5.6rem;
}
.l-single__header--meta {
  margin-top: 1.6rem;
  display: flex;
  gap: 1.6rem 2.4rem;
  align-items: center;
  justify-content: space-between;
}
.l-single__header--tags {
  margin-top: 0;
}
.l-single__header--share {
  margin-left: auto;
  display: flex;
  gap: 2.4rem;
  align-items: center;
}
.l-single__header--share dt {
  padding: 0 0.5em;
  border: 1px solid #333;
  border-radius: 0.4rem;
  background-color: #fff;
  font-weight: 700;
  font-size: 1.4rem;
}
.l-single__header--share dd {
  display: flex;
  gap: 2.4rem;
  align-items: center;
}
.l-single__header--title {
  font-size: 3.2rem;
}
.l-single__header .c-module__news--date {
  margin-bottom: 0.25em;
  display: inline-block;
}
.l-single__header .c-module__news--category {
  width: auto;
  min-width: 12.7rem;
  min-height: 0;
  padding: 0.25em 1em;
  display: inline-block;
}
.l-single__content {
  padding: 8rem;
  border-radius: 1.6rem;
  background-color: #fff;
}
.l-single__content figure {
  margin-bottom: 5rem;
  overflow: hidden;
  border-radius: 0.8rem;
}
.l-single__overview {
  display: grid;
  grid-template-areas: "visual title" "visual content";
  gap: 2.4rem 4rem;
  grid-template-columns: 51.2rem 1fr;
  grid-template-rows: auto 1fr;
  align-items: start;
}
.l-single__overview--visual {
  width: 100%;
  grid-area: visual;
}
.l-single__overview--headline {
  display: flex;
  align-items: flex-start;
  column-gap: 5.8rem;
  grid-area: title;
}
.l-single__overview--title {
  font-size: 3.2rem;
}
.l-single__overview--status {
  width: 7.2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background-color: #333;
  color: #fff;
  font-weight: 700;
  aspect-ratio: 1;
}
.l-single__overview--content {
  grid-area: content;
}
.l-single__overview--tags {
  display: flex;
  gap: 1.6rem;
  flex-wrap: wrap;
}
.l-single__overview--tag {
  padding: 0.25em 0.75em;
  display: inline-block;
  border-radius: 0.4rem;
  background-color: var(--area-color, #333);
  color: #fff;
  font-weight: 700;
  line-height: 1.2;
}
.l-single__overview--info {
  display: grid;
  gap: 1.6rem 1.4rem;
  grid-template-columns: auto 1fr;
  align-items: start;
}
.l-single__overview--info dt {
  width: 6.8rem;
  margin-top: 0.15em;
  padding: 0 0.5em;
  border-radius: 1.5em;
  background-color: #ff6d34;
  color: #fff;
  text-align: center;
  font-weight: 700;
  font-size: 1.4rem;
}
.l-single__overview--column {
  width: 100%;
  margin-bottom: 4rem;
  display: flex;
  gap: 1em;
  align-items: flex-start;
  justify-content: space-between;
}
.l-single__overview--column .c-card__01--favorite {
  width: 3rem;
  line-height: 1;
}
.l-single__overview--label {
  padding: 0.1em 0.75em;
  display: inline-block;
  border-radius: 0.4rem;
  background-color: var(--category-color, #ff6d34);
  color: #fff;
  font-weight: 700;
  font-size: 1.4rem;
}
.l-single__overview--description {
  margin-top: 3.6rem;
}
.l-single__overview--sns {
  margin-top: 3.6rem;
  display: flex;
  gap: 4rem;
}
.l-single__overview--share {
  margin-top: 3.6rem;
  display: flex;
  gap: 2.4rem;
  align-items: center;
}
.l-single__overview--share dt {
  padding: 0 0.5em;
  border: 1px solid #333;
  border-radius: 0.4rem;
  background-color: #fff;
  font-weight: 700;
  font-size: 1.4rem;
}
.l-single__overview--share dd {
  display: flex;
  gap: 2.4rem;
  align-items: center;
}
.l-single__slider {
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 767px) {
  .l-single__slider .js-singleSlider-thumbs {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  .l-single__slider .js-singleSlider-thumbs {
    display: block;
  }
  .l-single__slider .js-singleSlider-pagination {
    display: none;
  }
}
.l-single__slider {
  row-gap: 1.6rem;
}
.l-single__slider .js-singleSlider-main {
  width: 100%;
  overflow: hidden;
  border-radius: 0.8rem;
}
.l-single__slider .js-singleSlider-main .swiper-slide {
  width: 100%;
  position: relative;
  overflow: hidden;
  aspect-ratio: 512/328;
}
.l-single__slider .js-singleSlider-main .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.l-single__slider .js-singleSlider-thumbs {
  width: 100%;
}
.l-single__slider .js-singleSlider-thumbs .swiper-slide {
  overflow: hidden;
  border-radius: 0.8rem;
  cursor: pointer;
  transition: opacity 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease;
  aspect-ratio: 160/103;
}
.l-single__slider .js-singleSlider-thumbs .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.l-single__description {
  margin-top: 6rem;
}
.l-single__pannel {
  margin-top: 8rem;
  padding: 0 8.6rem;
  border-radius: 1.6rem;
  background-color: #fff;
}
.l-single__pannel + .l-single__pannel {
  margin-top: 6rem;
}
.l-single__pannel--header {
  padding: 5.6rem 0;
  position: relative;
  cursor: pointer;
}
.l-single__pannel--arrow {
  width: 2.4rem;
  margin-left: auto;
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  transform: translateY(-50%);
  aspect-ratio: 1;
}
.l-single__pannel--arrow::before, .l-single__pannel--arrow::after {
  content: "";
  width: 100%;
  height: 4px;
  position: absolute;
  top: 50%;
  left: 50%;
  background-color: #1f1f1f;
  transform: translate(-50%, -50%);
}
.l-single__pannel--arrow::after {
  transition: transform 0.3s ease-in-out;
  transform: translate(-50%, -50%) rotate(90deg);
}
.l-single__pannel.is-open .l-single__pannel--arrow::after {
  transform: translate(-50%, -50%) rotate(180deg);
}
.l-single__pannel--title {
  text-align: center;
  font-size: 2.4rem;
}
.l-single__pannel--body {
  padding-bottom: 5.6rem;
}
.l-single__footer {
  margin-top: 8rem;
}

@media screen and (max-width: 767px) {
  .l-single__block {
    padding-top: 8rem;
  }
  .l-single__header {
    margin-bottom: 3.2rem;
    text-align: center;
  }
  .l-single__header--meta {
    margin-top: 1rem;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
  }
  .l-single__header--tags {
    margin-top: 0;
  }
  .l-single__header--share {
    margin-left: 0;
    gap: 1.2rem;
    flex-direction: row;
    align-items: center;
    justify-content: center;
  }
  .l-single__header--share dt {
    font-size: 1.2rem;
  }
  .l-single__header--share dd {
    gap: 1.6rem;
  }
  .l-single__header--title {
    text-align: center;
    font-size: 2.4rem;
  }
  .l-single__content {
    margin-right: -2.8rem;
    margin-left: -2.8rem;
    padding: 2.8rem;
    border-radius: 0;
  }
  .l-single__content figure {
    margin-bottom: 2.4rem;
  }
  .l-single__overview {
    grid-template-areas: "title" "visual" "content";
    gap: 3.2rem 0;
    grid-template-columns: minmax(0, 1fr);
  }
  .l-single__overview--headline {
    column-gap: 3.6rem;
  }
  .l-single__overview--title {
    text-align: center;
    font-size: 2.4rem;
  }
  .l-single__overview--status {
    width: 5.6rem;
    font-size: 1.4rem;
  }
  .l-single__overview--info dt {
    width: 8rem;
  }
  .l-single__overview--tags {
    margin-bottom: 0;
  }
  .l-single__overview--column {
    margin-bottom: 3.2rem;
  }
  .l-single__overview--column .c-card__01--favorite svg {
    width: 2.4rem;
    height: auto;
  }
  .l-single__overview--description {
    margin-top: 2.8rem;
  }
  .l-single__slider {
    --swiper-pagination-bullet-horizontal-gap: .6rem;
    --swiper-pagination-bullet-inactive-color: #fff;
    --swiper-pagination-bullet-inactive-opacity: 1;
    --swiper-pagination-color: #ff6d34;
  }
  .l-single__slider .js-singleSlider-pagination {
    display: flex;
    justify-content: center;
    font-size: 1rem;
    line-height: 1;
  }
  .l-single__description {
    margin-top: 3.2rem;
  }
  .l-single__pannel {
    margin-top: 3.2rem;
    margin-right: -2.8rem;
    margin-left: -2.8rem;
    padding: 0 2.8rem;
    border-radius: 0;
  }
  .l-single__pannel + .l-single__pannel {
    margin-top: 3.2rem;
  }
  .l-single__pannel--header {
    padding: 3.2rem 0;
  }
  .l-single__pannel--arrow {
    width: 1.8rem;
  }
  .l-single__pannel--body {
    padding-bottom: 4rem;
  }
  .l-single__footer {
    margin-top: 5.6rem;
  }
}
.l-footer {
  padding-top: 6rem;
  position: relative;
  z-index: 2;
  background-color: #fff;
}
.l-footer__logo {
  width: 38.6rem;
  margin: 0 auto;
  text-align: center;
}
.l-footer__banner {
  margin-top: 4rem;
  padding: 0 2.8rem;
}
.l-footer__banner--list {
  display: flex;
  gap: 0 4rem;
  justify-content: center;
}
.l-footer__banner--item {
  width: 26.5rem;
}
.l-footer__banner--link {
  display: block;
}
.l-footer__info {
  margin-top: 6rem;
  padding: 3.2rem 0;
  background-color: #f2f2f2;
  text-align: center;
}
.l-footer__info--name {
  font-weight: 700;
  font-size: 2rem;
}
.l-footer__info--name span {
  margin-right: 1em;
  padding: 0 0.5em;
  border-radius: 0.4rem;
  background-color: #333;
  font-size: 1.6rem;
  --text-color: #fff;
}
.l-footer__info--buttons {
  margin-top: 2rem;
  display: flex;
  gap: 0.75em 4rem;
  justify-content: center;
}
.l-footer__info--link {
  display: inline-flex;
  align-items: center;
  column-gap: 1.2rem;
}
.l-footer__copyright {
  padding: 0.25em 0.5em;
  background-color: #333;
  text-align: right;
  font-size: 1.4rem;
  --text-color: #fff;
}

.home .l-footer {
  padding-top: 0 !important;
}

@media screen and (min-width: 768px) {
  .l-footer__banner--link {
    position: relative;
    overflow: hidden;
    border-radius: 0.6rem;
  }
  .l-footer__banner--link::before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #b3b3b3;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
    mix-blend-mode: multiply;
  }
  .l-footer__banner--link:hover::before {
    opacity: 1;
    visibility: visible;
  }
}
@media screen and (max-width: 767px) {
  .l-footer {
    padding-top: 4rem;
  }
  .l-footer__logo {
    width: 28rem;
  }
  .l-footer__banner {
    margin-top: 2.8rem;
  }
  .l-footer__banner--list {
    gap: 0 2rem;
  }
  .l-footer__info {
    margin-top: 4rem;
    padding: 2.4rem 0;
  }
  .l-footer__info--name {
    display: flex;
    align-items: center;
    flex-direction: column;
    font-size: 1.4rem;
    row-gap: 0.5em;
  }
  .l-footer__info--name span {
    margin-right: 0.8rem;
    padding: 0.15em 0.5em;
    font-size: 1.4rem;
  }
  .l-footer__info--buttons {
    align-items: center;
    flex-direction: column;
  }
  .l-footer__info--link {
    column-gap: 0.8rem;
  }
  .l-footer__copyright {
    text-align: center;
    font-size: 1.2rem;
  }
}
.p-home__hero {
  margin-bottom: 9rem;
  padding-top: 12rem;
}
.p-home__heroLead {
  display: flex;
  gap: 0 2.6rem;
  align-items: center;
  justify-content: center;
}
.p-home__heroLead--image {
  position: relative;
}
.p-home__heroLead--image-object {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}
.p-home__heroNavi {
  margin-top: 3.4rem;
  display: flex;
  gap: 0 4.4rem;
  justify-content: center;
}
.p-home__heroNavi--item {
  width: 24rem;
  display: flex;
  flex-direction: column;
  row-gap: 3.2rem;
}
.p-home__heroNavi--link {
  position: relative;
  color: var(--category-color);
}
.p-home__heroNavi--link * {
  color: inherit;
}
.p-home__heroNavi--link img {
  width: 100%;
}
.p-home__heroNavi--arrow {
  width: 4.8rem;
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 3px solid;
  border-radius: 50%;
  background-color: currentColor;
  line-height: 1;
  aspect-ratio: 1;
}
.p-home__heroNavi--arrow svg {
  width: 40%;
}
.p-home__heroNavi--comment {
  width: 100%;
  height: 100%;
  padding: 1em 1.25em;
  position: relative;
  border-radius: 1.2rem;
  background-color: #fff;
}
.p-home__heroNavi--comment::before {
  content: "";
  width: 1.8rem;
  height: 1.6rem;
  position: absolute;
  bottom: 100%;
  left: calc(50% - 0.9rem);
  background-color: #fff;
  clip-path: polygon(50% 0, 100% 100%, 0 100%);
}
.p-home__heroNavi--comment p {
  line-height: 1.6;
}
.p-home__heroNavi [data-status=disabled] {
  pointer-events: none;
}
.p-home__heroNavi [data-status=disabled] .p-home__heroNavi--arrow::before {
  content: "";
  width: calc(100% + 6px);
  height: calc(100% + 6px);
  position: absolute;
  top: -3px;
  left: -3px;
  border-radius: 50%;
  background-color: #b3b3b3;
  mix-blend-mode: multiply;
}
.p-home__hero--object01 {
  width: 14.7rem;
  bottom: 8.4rem;
  left: -6rem;
}
.p-home__hero--object02 {
  width: 15rem;
  right: -6rem;
  bottom: 0;
}
.p-home__about {
  padding-bottom: 6rem;
  position: relative;
  z-index: 1;
}
.p-home__about::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  border-radius: 50vw 50vw 0 0;
  background-color: #fff;
  filter: drop-shadow(0 0 8px rgba(0, 0, 0, 0.04));
}
.p-home__aboutCard {
  padding: 6rem 6rem;
  border-radius: 1.6rem;
  background-color: #fff;
  box-shadow: 0 0 1.2rem 0 rgba(0, 0, 0, 0.12);
}
.p-home__aboutCard--title {
  margin-bottom: 0.5em;
  font-size: 2.8rem;
}
.p-home__aboutCard--image {
  width: 30rem;
  position: relative;
  aspect-ratio: 300/405;
  --swiper-pagination-bullet-horizontal-gap: 6px;
  --swiper-pagination-bullet-inactive-color: #f2f2f2;
  --swiper-pagination-bullet-inactive-opacity: 1;
  --swiper-theme-color: #ff6d34;
}
.p-home__aboutCard--image::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  outline: 2px solid #fff;
  outline-offset: -1rem;
  border-radius: 15rem 15rem 0.8rem 0.8rem;
  pointer-events: none;
}
.p-home__aboutCard--image .swiper {
  overflow: hidden;
  border-radius: 15rem 15rem 0.8rem 0.8rem;
}
.p-home__aboutCard--image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-home__aboutCard--image .swiper-pagination {
  bottom: -2rem !important;
  font-size: 0;
}
.p-home__about--object01 {
  width: 8.3rem;
  top: -3.3rem;
  left: -3.5rem;
}
.p-home__about--object02 {
  width: 18.5rem;
  right: -8rem;
  bottom: 4rem;
}
.p-home__about--object03 {
  width: 9.1rem;
  top: -1.7rem;
  right: 7rem;
}
.p-home__about--object04 {
  width: 11.4rem;
  bottom: 8.6rem;
  left: -7rem;
}
.p-home__videoCard {
  padding: 6rem 6rem;
  border-radius: 1.6rem;
  background-color: #f2f2f2;
}
.p-home__videoCard--title {
  margin-bottom: 1.5em;
  font-size: 2.8rem;
}
.p-home__videoCard--column {
  display: flex;
  gap: 0 6rem;
}
.p-home__videoCard--video {
  width: 39.6rem;
  max-width: 100%;
  position: relative;
  overflow: hidden;
  border-radius: 0.8rem;
  background-color: #fff;
  aspect-ratio: 16/9;
}
.p-home__videoCard--video-button {
  width: 5.4rem;
  height: 5.4rem;
  position: absolute;
  top: 50%;
  left: 50%;
  background-color: #fff;
  transform: translate(-50%, -50%);
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}
.p-home__videoCard--video img, .p-home__videoCard--video iframe {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-home__videoCard--video:hover {
  cursor: pointer;
}
.p-home__videoCard--image img {
  object-fit: contain;
}
.p-home__video--object01 {
  width: 13.1rem;
  top: -3.8rem;
  left: -6.8rem;
}
.p-home__video--object02 {
  width: 17.9rem;
  right: -10.7rem;
  bottom: -1.5rem;
}
.p-home__video--object03 {
  width: 10.8rem;
  bottom: 6rem;
  left: -5.8rem;
}
.p-home__video--object04 {
  width: 7.4rem;
  top: 5.1rem;
  right: -3.6rem;
}
.p-home__video--object01-1 {
  width: 14.2rem;
  top: -2.8rem;
  left: -4.8rem;
}
.p-home__video--object01-2 {
  width: 10.8rem;
  top: 5.1rem;
  right: -3.6rem;
}
.p-home__video--object01-3 {
  width: 16.6rem;
  right: -3.6rem;
  bottom: -2.4rem;
}
.p-home__video--object02-1 {
  width: 17.4rem;
  top: -6rem;
  left: -6.8rem;
}
.p-home__video--object02-2 {
  width: 17.9rem;
  right: -10.7rem;
  bottom: -5.5rem;
}
.p-home__video--object02-3 {
  width: 10.8rem;
  bottom: 6rem;
  left: -5.8rem;
}
.p-home__video--object02-4 {
  width: 7.4rem;
  top: 5.1rem;
  right: -3.6rem;
}
.p-home__newsCard {
  padding: 6rem 6rem;
  border-radius: 1.6rem;
  background-color: #fef4d7;
}
.p-home__newsCard--title {
  margin-bottom: 1.5em;
  font-size: 2.8rem;
}
.p-home__news .c-btn__01 {
  margin-top: 4.8rem;
}
.p-home__news--object01 {
  width: 15.4rem;
  top: 3.2rem;
  left: -9.7rem;
}
.p-home__news--object02 {
  width: 4.6rem;
  top: -1.8rem;
  left: 9.8rem;
}
.p-home__news--object03 {
  width: 16.8rem;
  right: -6.2rem;
  bottom: 3rem;
}
.p-home__news--object04 {
  width: 7.4rem;
  top: 4.3rem;
  right: -2.6rem;
}
.p-home__news--object05 {
  width: 8.4rem;
  bottom: 5.8rem;
  left: 8.4rem;
}

@media screen and (min-width: 768px) {
  .p-home__heroLead {
    margin: 0 -4.8rem;
  }
  .p-home__heroLead--logo {
    width: 48.2rem;
  }
  .p-home__heroLead--image {
    flex: 1;
  }
  .p-home__heroLead--image img {
    width: 100%;
  }
  .p-home__heroNavi--link img {
    transition: transform 0.3s;
  }
  .p-home__heroNavi--link:hover img {
    transform: scale(1.1);
  }
  .p-home__heroNavi--link:hover .p-home__heroNavi--arrow {
    background-color: #fff;
  }
  .p-home__heroNavi--link:hover .p-home__heroNavi--arrow svg path {
    fill: currentColor;
  }
  .p-home__heroNavi--arrow {
    transition: background-color 0.3s;
  }
  .p-home__heroNavi--arrow svg path {
    transition: fill 0.3s;
  }
  .p-home__about .l-main__container + .l-main__container {
    margin-top: 9rem;
  }
  .p-home__aboutCard {
    padding: 6rem 3.4rem;
  }
  .p-home__aboutCard--inner {
    padding-left: 36.4rem;
    position: relative;
  }
  .p-home__aboutCard--image {
    position: absolute;
    bottom: 0;
    left: 0;
  }
  .p-home__videoCard--text {
    flex: 1;
  }
}
@media screen and (max-width: 767px) {
  .p-home__hero {
    margin-bottom: 4rem;
    padding-top: 8rem;
  }
  .p-home__heroLead {
    flex-direction: column;
    row-gap: 2rem;
  }
  .p-home__heroLead--logo {
    width: 23rem;
  }
  .p-home__heroNavi {
    display: grid;
    gap: 1.2rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .p-home__heroNavi--item {
    width: 100%;
  }
  .p-home__heroNavi--arrow {
    width: 2.8rem;
    right: 0.6rem;
    bottom: 0.6rem;
  }
  .p-home__heroNavi--comment {
    display: none;
  }
  .p-home__hero--object03 {
    width: 13.8rem;
    right: 2.8rem;
    bottom: -1.2rem;
  }
  .p-home__about {
    padding-bottom: 4rem;
  }
  .p-home__about::before {
    height: calc(100% - 54.8rem);
    top: 54.8rem;
  }
  .p-home__aboutCard {
    padding: 4rem 3.4rem 6.4rem;
    box-shadow: 0 0 0.6rem 0 rgba(0, 0, 0, 0.12);
  }
  .p-home__aboutCard--title {
    margin-bottom: 0.75em;
    font-size: 2.4rem;
  }
  .p-home__aboutCard--text .c-btn__01 {
    width: 17.2rem;
    height: 3rem;
    margin: 3.2rem auto 0;
  }
  .p-home__aboutCard--image {
    width: 22rem;
    margin: 3.2rem auto 0;
  }
  .p-home__aboutCard--image::before {
    outline-offset: -0.8rem;
  }
  .p-home__videoCard {
    padding: 4rem 3.2rem;
  }
  .p-home__videoCard--title {
    margin-bottom: 1em;
    font-size: 2.4rem;
  }
  .p-home__videoCard--column {
    flex-direction: column;
    row-gap: 2.4rem;
  }
  .p-home__newsCard {
    padding: 4rem 3.2rem;
  }
  .p-home__newsCard--title {
    margin-bottom: 1em;
    font-size: 2.4rem;
  }
  .p-home__news .c-btn__01 {
    margin-top: 3.2rem;
  }
}
.p-joinHome__hero {
  padding-top: 10rem;
  position: relative;
  z-index: 2;
}
.p-joinHome__hero--inner {
  padding-top: 2.4rem;
  position: relative;
}
.p-joinHome__hero--title {
  width: 27.4rem;
  display: block;
}
.p-joinHome__hero--visual {
  width: 54rem;
  margin: 0 auto;
  position: relative;
}
.p-joinHome__hero--visual-object {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}
.p-joinHome__hero--object01 {
  width: 13.8rem;
  bottom: -2rem;
  left: 7rem;
}
.p-joinHome__heroNavi--list {
  display: flex;
  gap: 1rem;
}
.p-joinHome__heroNavi--buttons {
  margin-top: 2.7rem;
  display: flex;
  gap: 1.2rem;
  align-items: center;
}
.p-joinHome__heroNavi .c-btn__01 {
  width: 19.6rem;
  height: 6rem;
  border: 2px solid #ff6d34;
}
.p-joinHome__heroNavi .c-btn__01--text {
  letter-spacing: 0.1em;
  font-size: 1.6rem;
}
.p-joinHome__support {
  margin-bottom: 7rem;
  padding: 3.2rem;
  display: flex;
  gap: 2.4rem;
  align-items: center;
  justify-content: center;
  border-radius: 1.6rem;
  background-color: #f2f2f2;
}
.p-joinHome__support--title {
  display: flex;
  gap: 1.6rem;
  align-items: center;
}
.p-joinHome__support--title-icon {
  width: 5rem;
}
.p-joinHome__support--title-text {
  font-size: 2.8rem;
  line-height: 1.2;
}
.p-joinHome__support--sentence {
  margin-top: 1.6rem;
}
.p-joinHome__support--sentence strong {
  color: var(--category-color, #ff6d34);
  font-weight: 700;
}
.p-joinHome__support .c-btn__01 {
  width: 34rem;
  height: 6rem;
}
.p-joinHome__support .c-btn__01--text {
  letter-spacing: 0.1em;
  font-size: 1.6rem;
}
.p-joinHome__news {
  padding-bottom: 6rem;
  position: relative;
  z-index: 1;
}
.p-joinHome__news::before {
  content: "";
  width: 100%;
  position: absolute;
  top: -39rem;
  bottom: 0;
  left: 0;
  z-index: -1;
  border-radius: 50vw 50vw 0 0;
  background-color: #fff;
  filter: drop-shadow(0 0 8px rgba(0, 0, 0, 0.04));
}
.p-joinHome__newsCard {
  padding: 6rem 6rem;
  border-radius: 1.6rem;
  background-color: #fef4d7;
}
.p-joinHome__newsCard--title {
  margin-bottom: 1.25em;
  font-size: 2.8rem;
}
.p-joinHome__news .c-btn__01 {
  margin-top: 4.8rem;
}
.p-joinHome__news--object01 {
  width: 11.5rem;
  top: 7rem;
  left: -4.8rem;
}
.p-joinHome__news--object02 {
  width: 3.9rem;
  top: 3.1rem;
  right: 12.7rem;
}
.p-joinHome__news--object03 {
  width: 8.6rem;
  top: -4.1rem;
  right: -1.4rem;
}
.p-joinHome__news--object04 {
  width: 19.4rem;
  bottom: -4.8rem;
  left: -7.4rem;
}
.p-joinHome__news--object05 {
  width: 9.1rem;
  right: -3.7rem;
  bottom: 10.4rem;
}
.p-joinHome__events--title {
  margin-bottom: 1.25em;
  font-size: 2.8rem;
}
.p-joinHome__eventsSlider {
  margin-top: 3.2rem;
  position: relative;
  --swiper-theme-color: #ff6d34;
}
.p-joinHome__eventsSlider .c-card__list.col3 {
  display: flex;
  gap: 0;
}
.p-joinHome__eventsSlider-button {
  width: 2rem;
  height: 5.6rem;
  position: absolute;
  top: calc(50% - 2.8rem);
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--category-color, #ff6d34);
}
.p-joinHome__eventsSlider-prev {
  right: 100%;
  border-radius: 1.2rem 0 0 1.2rem;
}
.p-joinHome__eventsSlider-next {
  left: 100%;
  border-radius: 0 1.2rem 1.2rem 0;
}
.p-joinHome__eventsSlider-pagination {
  margin: 0;
}

.p-joinClub__list .c-card__01--info dt {
  min-width: 7.7rem;
}
.p-joinClub__map {
  width: 100%;
  display: flex;
  flex-direction: row-reverse;
}
.p-joinClub__map.is-card-hidden .p-joinClub__map--info {
  width: 0;
  display: none;
  border-radius: 0;
  background-color: transparent;
}
.p-joinClub__map.is-card-hidden .p-joinClub__map--object {
  border-radius: 1.2rem;
}
.p-joinClub__map--object {
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 0 1.2rem 1.2rem 0;
}
.p-joinClub__map--info {
  width: 32.8rem;
  overflow: hidden;
  border-radius: 1.2rem 0 0 1.2rem;
  background-color: #fff;
}
.p-joinClub__map--info #map-info-card {
  opacity: 0;
  visibility: hidden;
  transform: translateX(-1.2rem) scale(0.98);
  pointer-events: none;
}
.p-joinClub__map--info #map-info-card.is-active {
  visibility: visible;
  pointer-events: auto;
}
.p-joinClub__map--info #map-info-card.is-active.is-entering {
  animation: mapCardReveal 0.36s ease-out forwards;
}
@keyframes mapCardReveal {
  0% {
    opacity: 0;
    transform: translateX(-1.2rem) scale(0.98);
  }
  100% {
    opacity: 1;
    transform: translateX(0) scale(1);
  }
}
.p-joinClub__schedule {
  display: grid;
  gap: 3.2rem 6rem;
  grid-template-columns: 1fr 1fr;
}
.p-joinClub__schedule--item {
  display: flex;
  gap: 2.4rem;
  align-items: center;
}
.p-joinClub__schedule--icon {
  width: 4rem;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background-color: #333;
  color: #fff;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1;
  aspect-ratio: 1;
}
.p-joinClub__schedule--icon.saturday {
  background-color: #00b3d0;
}
.p-joinClub__schedule--icon.sunday {
  background-color: #e63178;
}
.p-joinClub__schedule--iconSvg {
  width: 100%;
  height: 100%;
  display: block;
}
.p-joinClub__schedule--time {
  flex: 0 0 auto;
  font-weight: 700;
  font-size: 2.4rem;
  white-space: nowrap;
}
.p-joinClub__schedule--label {
  flex: 1 1 auto;
  min-width: 0;
  max-width: 16.8rem;
  border-radius: 0.4rem;
  background-color: #ff6d34;
  color: #fff;
  text-align: center;
  font-size: 1.8rem;
  line-height: 1.6;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.p-joinClub__schedule--remarks {
  margin-top: 5rem;
}
.p-joinClub__schedule--frequency {
  width: fit-content;
  height: 5.6rem;
  margin: 0 auto 5.6rem;
  padding: 0 3.2rem;
  display: flex;
  align-items: center;
  border-radius: 2.8rem;
  background-color: #f2f2f2;
  font-weight: bold;
}
.p-joinClub__schedule--frequency dt {
  margin-right: 1.6rem;
  padding-right: 1.6rem;
  border-right: 1px solid;
  font-size: 1.8rem;
}
.p-joinClub__schedule--frequency dd {
  font-size: 2.4rem;
}
.p-joinClub__activity {
  display: grid;
  gap: 3.2rem 3.2rem;
  grid-template-columns: 12.6rem 1fr;
  align-items: start;
}
.p-joinClub__activity dt {
  padding: 0.28em 0;
  border-radius: 1.5em;
  background-color: #ff6d34;
  color: #fff;
  text-align: center;
  font-weight: 700;
  line-height: 1.1;
}
.p-joinClub__activity dd {
  padding-top: 0.2rem;
  word-break: break-all;
}
.p-joinClub__activity--entry-link {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  color: #1d4ed8;
  text-decoration: none;
  font-weight: 500;
  line-height: 1.5;
  transition: color 0.2s ease;
}
.p-joinClub__activity--entry-link-icon {
  width: 1.4rem;
  height: 1.4rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: rgba(29, 78, 216, 0.8);
  flex: 0 0 1.4rem;
}
.p-joinClub__activity--entry-link-icon svg {
  width: 1.4rem;
  height: 1.4rem;
  display: block;
}
.p-joinClub__activity--entry-link-text {
  border-bottom: 1px solid rgba(29, 78, 216, 0.35);
  padding-bottom: 0.02em;
  word-break: break-all;
  transition: border-color 0.2s ease;
}
.p-joinClub__activity--entry-link:hover {
  color: #1e40af;
}
.p-joinClub__activity--entry-link:hover .p-joinClub__activity--entry-link-icon {
  color: #1e40af;
}
.p-joinClub__activity--entry-link:hover .p-joinClub__activity--entry-link-text {
  border-bottom-color: currentColor;
}
.p-joinClub__activity--entry-link:focus-visible {
  outline: 2px solid rgba(29, 78, 216, 0.35);
  outline-offset: 0.2rem;
  border-radius: 0.2rem;
}
.p-joinClub__activity--contact-links {
  margin-top: 0.8rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem 1.2rem;
}
.p-joinClub__activity--contact-link {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  color: #1d4ed8;
  text-decoration: none;
  font-weight: 600;
  line-height: 1.4;
  transition: color 0.2s ease;
}
.p-joinClub__activity--contact-link .p-joinClub__activity--contact-icon {
  width: 1.8rem;
  height: 1.8rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background-color: rgba(29, 78, 216, 0.12);
  color: #1d4ed8;
  flex: 0 0 1.8rem;
}
.p-joinClub__activity--contact-link .p-joinClub__activity--contact-icon svg {
  width: 1.1rem;
  height: 1.1rem;
  display: block;
}
.p-joinClub__activity--contact-link:hover {
  color: #1e40af;
  text-decoration: underline;
  text-decoration-thickness: 0.08em;
  text-underline-offset: 0.18em;
}
.p-joinClub__activity--contact-link:hover .p-joinClub__activity--contact-icon {
  background-color: rgba(30, 64, 175, 0.16);
  color: #1e40af;
}
.p-joinClub__activity--contact-link:focus-visible {
  outline: 2px solid rgba(29, 78, 216, 0.35);
  outline-offset: 0.2rem;
  border-radius: 0.2rem;
}
.p-joinClub__activity--contact-link.is-tel {
  color: #0f766e;
}
.p-joinClub__activity--contact-link.is-tel .p-joinClub__activity--contact-icon {
  background-color: rgba(15, 118, 110, 0.14);
  color: #0f766e;
}
.p-joinClub__activity--contact-link.is-tel:hover {
  color: #115e59;
}
.p-joinClub__activity--contact-link.is-tel:hover .p-joinClub__activity--contact-icon {
  background-color: rgba(17, 94, 89, 0.2);
  color: #115e59;
}
.p-joinClub__activity--contact-link.is-tel:focus-visible {
  outline-color: rgba(15, 118, 110, 0.35);
}
.p-joinClub__activity--contact-link.is-mail {
  color: #1d4ed8;
}
.p-joinClub__activity--contact-link.is-mail .p-joinClub__activity--contact-icon {
  background-color: rgba(29, 78, 216, 0.12);
  color: #1d4ed8;
}
.p-joinClub__activity--contact-link.is-mail:hover {
  color: #1e40af;
}
.p-joinClub__activity--contact-link.is-mail:hover .p-joinClub__activity--contact-icon {
  background-color: rgba(30, 64, 175, 0.16);
  color: #1e40af;
}
.p-joinClub__activity--contact-link.is-mail:focus-visible {
  outline-color: rgba(29, 78, 216, 0.35);
}
.p-joinClub__activity--button {
  width: 40rem;
  height: 6rem;
  margin: 5rem auto 0;
  padding: 0 2.4rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border: 1px solid #ff6d34;
  border-radius: 0.8rem;
  font-weight: 700;
  font-size: 2rem;
  --text-color: #ff6d34;
}
.p-joinClub__mapSingle {
  width: 100%;
  height: 42rem;
  overflow: hidden;
  border-radius: 1.2rem;
}
.p-joinClub__mapSingle iframe {
  width: 100%;
  height: 100%;
}
.p-joinClub__recruitment + .p-joinClub__recruitment {
  margin-top: 4rem;
}
.p-joinClub__recruitment--title {
  width: 12.8rem;
  margin: 0 auto 2.4rem;
  display: block;
  border-radius: 1.4rem;
  background-color: #00a759;
  color: #fff;
  text-align: center;
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 2.8rem;
}
.p-joinClub__recruitment--info {
  display: grid;
  gap: 2.4rem 3.2rem;
  grid-template-columns: 12.6rem 1fr;
  align-items: start;
}
.p-joinClub__recruitment--info dt {
  border-radius: 0.4rem;
  background-color: #f2f2f2;
  text-align: center;
  font-weight: 700;
  line-height: 1.625;
}
.p-joinClub__recruitment--info dd {
  padding-top: 0.2rem;
}
.p-joinClub__recruitment--button .c-btn__01 {
  width: 40rem;
  height: 6rem;
  border-color: #00a759;
  border-radius: 0.8rem;
  --text-color: #00a759;
}
.p-joinClub__recruitment--button .c-btn__01--text {
  padding-left: 2.4rem;
  text-align: left;
}
.p-joinClub__recruitment--button .c-btn__01:not(:hover) .c-btn__01--arrow {
  background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 13 6' fill='none'><path fill='%2305A759' d='M12 5.182v.75a.75.75 0 0 0 .547-1.263L12 5.182ZM8.456.305a.75.75 0 1 0-1.094 1.026l.547-.513.547-.513ZM0 5.182v.75h12v-1.5H0v.75Zm12 0 .547-.513L8.457.305l-.548.513-.547.513 4.09 4.364.548-.513Z'/></svg>") !important;
}

.c-search__checkbox-label input[type=checkbox]:focus + span::before,
.c-search__checkbox-label input[type=checkbox]:focus-visible + span::before {
  border-color: #ff6d34;
  box-shadow: 0 0 0 3px rgba(255, 109, 52, 0.24);
}

.p-joinClub--volunteer {
  --volunteer-club-accent: #00a759;
  --volunteer-club-accent-light: #e8f8ef;
}
.p-joinClub--volunteer .c-search__item--label,
.p-joinClub--volunteer .c-search__btn-submit,
.p-joinClub--volunteer .c-tab__menu--item.is-active {
  background-color: var(--volunteer-club-accent);
}
.p-joinClub--volunteer .c-tab__menu--item.is-active {
  color: #fff !important;
}
.p-joinClub--volunteer .c-search__input:focus {
  outline-color: var(--volunteer-club-accent);
}
.p-joinClub--volunteer .c-search__checkbox-label:hover span::before {
  border-color: var(--volunteer-club-accent);
}
.p-joinClub--volunteer .c-search__checkbox-label input[type=checkbox]:focus + span::before,
.p-joinClub--volunteer .c-search__checkbox-label input[type=checkbox]:focus-visible + span::before {
  border-color: var(--volunteer-club-accent);
  box-shadow: 0 0 0 3px rgba(0, 167, 89, 0.24);
}
.p-joinClub--volunteer .c-search__checkbox-label input[type=checkbox]:checked + span::before {
  border-color: var(--volunteer-club-accent);
  background-color: var(--volunteer-club-accent-light);
}
.p-joinClub--volunteer .c-search__checkbox-label input[type=checkbox]:checked + span::after {
  border-color: var(--volunteer-club-accent);
}
.p-joinClub--volunteer .c-search__btn,
.p-joinClub--volunteer .c-tab__menu--item {
  border-color: var(--volunteer-club-accent);
  color: var(--volunteer-club-accent);
}
.p-joinClub--volunteer .c-search__btn-add {
  --text-color: var(--volunteer-club-accent);
}
.p-joinClub--volunteer .c-search__btn-add .c-search__btn--icon {
  background-color: var(--volunteer-club-accent);
}
.p-joinClub--volunteer .c-searchModal__title,
.p-joinClub--volunteer .c-searchModal__level-icon.is-active {
  color: var(--volunteer-club-accent);
}
.p-joinClub--volunteer .c-search__btn-clear {
  color: var(--volunteer-club-accent);
}

@media screen and (min-width: 768px) {
  .p-joinClub--volunteer .c-search__btn-add:hover {
    background-color: var(--volunteer-club-accent);
  }
  .p-joinClub--volunteer .c-search__btn-add:hover .c-search__btn--icon::before,
  .p-joinClub--volunteer .c-search__btn-add:hover .c-search__btn--icon::after {
    background-color: var(--volunteer-club-accent);
  }
  .p-joinClub--volunteer .c-search__btn-submit:hover {
    background-color: #fff;
    color: var(--volunteer-club-accent);
    --text-color: var(--volunteer-club-accent);
  }
  .p-joinClub--volunteer .c-search__btn-submit:hover .c-search__btn--icon path {
    fill: var(--volunteer-club-accent);
  }
  .p-joinClub--volunteer .c-tab__menu--item:hover {
    background-color: var(--volunteer-club-accent);
    color: #fff;
  }
}
@media screen and (min-width: 768px) {
  .p-joinHome__hero {
    margin-bottom: 8rem;
  }
  .p-joinHome__hero--title {
    position: absolute;
    top: 0;
    left: 0;
  }
  .p-joinHome__heroNavi {
    position: absolute;
    top: 0;
    right: 0;
  }
  .p-joinHome__heroNavi--list {
    width: 25.2rem;
    flex-direction: column;
  }
  .p-joinHome__heroNavi--list > *:nth-child(2) {
    margin-left: auto;
  }
  .p-joinHome__heroNavi--list .c-btn__02 {
    width: 19rem;
  }
  .p-joinHome__heroNavi--buttons {
    flex-direction: column;
  }
  .p-joinHome__eventsSlider {
    overflow: visible;
  }
  .p-joinHome__eventsSlider-pagination {
    display: none;
  }
  .p-joinHome__eventsSlider .c-card__list.col3 {
    display: grid;
    gap: 4rem 2.4rem;
    grid-template-columns: repeat(3, 1fr);
    transform: none !important;
  }
  .p-joinClub__map {
    height: 62rem;
  }
  .p-joinClub__map--object {
    flex: 1;
  }
  .p-joinClub__activity--button {
    transition: background-color 0.3s, color 0.3s;
  }
  .p-joinClub__activity--button:hover {
    background-color: #ff6d34;
    --text-color: #fff;
  }
  .p-joinClub__recruitment--button .c-btn__01:hover {
    border-color: #00a759;
    background-color: #00a759;
  }
}
@media screen and (max-width: 767px) {
  .p-joinHome__hero {
    padding-top: 5.6rem;
  }
  .p-joinHome__hero--title {
    width: 27.8rem;
    margin: 0 auto 2rem;
  }
  .p-joinHome__hero--title img {
    width: 100%;
  }
  .p-joinHome__hero--visual {
    width: 27.2rem;
  }
  .p-joinHome__heroNavi {
    margin-top: 2rem;
  }
  .p-joinHome__heroNavi--list {
    gap: 1.2rem;
  }
  .p-joinHome__heroNavi--item {
    flex: 1;
  }
  .p-joinHome__heroNavi--item .c-btn__02 {
    width: 100%;
  }
  .p-joinHome__heroNavi--item .c-btn__02 img {
    width: 100%;
  }
  .p-joinHome__heroNavi--buttons {
    margin-top: 2rem;
  }
  .p-joinHome__heroNavi--buttons .c-btn__01 {
    width: 100%;
    border-radius: 0.8rem;
  }
  .p-joinHome__heroNavi--buttons .c-btn__01--text {
    font-size: 1.4rem;
  }
  .p-joinHome__support {
    margin-bottom: 4rem;
    padding: 4rem 3.2rem;
    gap: 2.4rem;
    flex-direction: column;
    border-radius: 1.2rem;
  }
  .p-joinHome__support--title-text {
    font-size: 2.4rem;
  }
  .p-joinHome__support--sentence {
    margin-top: 1.6rem;
  }
  .p-joinHome__support--sentence strong {
    color: var(--category-color, #ff6d34);
    font-weight: 700;
  }
  .p-joinHome__support .c-btn__01 {
    width: 24rem;
    height: 5.2rem;
  }
  .p-joinHome__support .c-btn__01--text {
    font-size: 1.4rem;
  }
  .p-joinHome__news {
    padding-bottom: 4rem;
  }
  .p-joinHome__news::before {
    top: -46.5rem;
  }
  .p-joinHome__newsCard {
    padding: 4rem 3.4rem;
  }
  .p-joinHome__newsCard--title {
    margin-bottom: 1em;
    font-size: 2.4rem;
  }
  .p-joinHome__news .c-btn__01 {
    margin-top: 3.2rem;
  }
  .p-joinHome__eventsSlider-pagination {
    margin-top: 1.6rem;
    display: flex;
    justify-content: center;
  }
  .p-joinClub__map {
    padding: 1.6rem 1.6rem 2.4rem;
    gap: 2.4rem;
    flex-direction: column;
    border-radius: 1.2rem 1.2rem;
    background-color: #fff;
  }
  .p-joinClub__map--object {
    height: 36rem;
    border-radius: 0.8rem;
  }
  .p-joinClub__map--info {
    width: 100%;
    border-radius: 0;
  }
  .p-joinClub__map--info .c-card__01 {
    padding: 0;
    position: relative;
    display: grid;
    grid-template-areas: "title title" "image info" "column info" "tags tags" "footer footer";
    grid-template-columns: 1fr 1fr;
    align-items: flex-start;
    border-radius: 0;
    column-gap: 1.2rem;
  }
  .p-joinClub__map--info .c-card__01--image {
    border-radius: 0.4rem;
    grid-area: image;
  }
  .p-joinClub__map--info .c-card__01--label {
    font-size: 1rem;
  }
  .p-joinClub__map--info .c-card__01--title {
    padding-right: 3.2rem;
    grid-area: title;
  }
  .p-joinClub__map--info .c-card__01--label {
    padding: 0.15em 0.5em;
    border-radius: 0.4rem;
    background-color: var(--area-color, #333);
    color: #fff;
    text-align: center;
    font-weight: 700;
    font-size: 1rem;
  }
  .p-joinClub__map--info .c-card__01--label-main, .p-joinClub__map--info .c-card__01--label-other {
    color: #fff;
  }
  .p-joinClub__map--info .c-card__01--column {
    margin-bottom: 0;
    gap: 0.4rem;
    align-items: flex-start;
    flex-direction: column;
    grid-area: column;
  }
  .p-joinClub__map--info .c-card__01--favorite {
    position: absolute;
    top: 0;
    right: 0;
  }
  .p-joinClub__map--info .c-card__01--info {
    gap: 0.4rem 0;
    grid-template-columns: 1fr;
    grid-area: info;
  }
  .p-joinClub__map--info .c-card__01--info dt {
    width: 6rem;
    font-size: 1rem;
    line-height: 2rem;
  }
  .p-joinClub__map--info .c-card__01--info dd {
    font-size: 1.2rem;
  }
  .p-joinClub__map--info .c-card__01--tags {
    grid-area: tags;
  }
  .p-joinClub__map--info .c-card__01--tag {
    font-size: 1rem;
  }
  .p-joinClub__map--info .c-card__01--footer {
    grid-area: footer;
  }
  .p-joinClub__map.is-card-hidden .p-joinClub__map--object {
    border-radius: 0.8rem;
  }
  .p-joinClub__schedule {
    gap: 2.4rem;
    grid-template-columns: 1fr;
  }
  .p-joinClub__schedule--item {
    gap: 1.6rem;
  }
  .p-joinClub__schedule--icon {
    width: 2.8rem;
    font-size: 1.6rem;
  }
  .p-joinClub__schedule--time {
    font-size: 2rem;
  }
  .p-joinClub__schedule--label {
    max-width: 12.4rem;
    padding: 0.2em 0.25em;
    font-size: 1.4rem;
  }
  .p-joinClub__schedule--remarks {
    margin-top: 3.2rem;
  }
  .p-joinClub__schedule--frequency {
    height: 4.8rem;
    padding: 0 2.4rem;
    border-radius: 2.4rem;
  }
  .p-joinClub__schedule--frequency dt {
    font-size: 1.6rem;
  }
  .p-joinClub__schedule--frequency dd {
    font-size: 2rem;
  }
  .p-joinClub__activity {
    gap: 2.4rem 1.6rem;
    grid-template-columns: 10.4rem 1fr;
  }
  .p-joinClub__activity--button {
    width: 100%;
    margin-top: 3.2rem;
    font-size: 1.6rem;
  }
  .p-joinClub__mapSingle {
    height: 45rem;
  }
  .p-joinClub__recruitment--title {
    width: 10.4rem;
    margin-bottom: 2rem;
    font-size: 1.6rem;
  }
  .p-joinClub__recruitment--info {
    gap: 2.4rem 1.6rem;
    grid-template-columns: 10.4rem 1fr;
  }
}
.p-clubHome__hero {
  padding-top: 10rem;
  position: relative;
  z-index: 2;
}
.p-clubHome__hero--inner {
  padding-top: 6.4rem;
  position: relative;
}
.p-clubHome__hero--title {
  width: 45.1rem;
  display: block;
}
.p-clubHome__hero--visual {
  width: 56.1rem;
  margin: 0 auto;
  position: relative;
}
.p-clubHome__hero--visual-object {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}
.p-clubHome__hero--object01 {
  width: 18rem;
  bottom: -2rem;
  left: 4.6rem;
}
.p-clubHome__heroNavi--list {
  display: flex;
  gap: 1rem;
}
.p-clubHome__heroNavi--buttons {
  margin-top: 2.7rem;
  display: flex;
  gap: 1.2rem;
  align-items: center;
}
.p-clubHome__heroNavi .c-btn__01 {
  width: 19.6rem;
  height: 6rem;
  border: 2px solid var(--category-color, #ff6d34);
  --text-color: var(--category-color, #ff6d34);
}
.p-clubHome__heroNavi .c-btn__01--text {
  letter-spacing: 0.1em;
  font-size: 1.6rem;
}
.p-clubHome__news {
  padding-bottom: 6rem;
  position: relative;
  z-index: 1;
}
.p-clubHome__news::before {
  content: "";
  width: 100%;
  position: absolute;
  top: -37rem;
  bottom: 0;
  left: 0;
  z-index: -1;
  border-radius: 50vw 50vw 0 0;
  background-color: #fff;
  filter: drop-shadow(0 0 8px rgba(0, 0, 0, 0.04));
}
.p-clubHome__newsCard {
  padding: 6rem 6rem;
  border-radius: 1.6rem;
  background-color: #fef4d7;
}
.p-clubHome__newsCard--title {
  margin-bottom: 1.25em;
  font-size: 2.8rem;
}
.p-clubHome__news .c-btn__01 {
  margin-top: 4.8rem;
}
.p-clubHome__news--object01 {
  width: 11.5rem;
  top: 7rem;
  left: -4.8rem;
}
.p-clubHome__news--object03 {
  width: 10.7rem;
  top: -4.1rem;
  right: -3.5rem;
}
.p-clubHome__news--object04 {
  width: 17.9rem;
  bottom: -3.8rem;
  left: -4.8rem;
}
.p-clubHome__news--object05 {
  width: 9.1rem;
  right: -3.7rem;
  bottom: 10.4rem;
}
.p-clubHome__footer .c-btn__01 {
  width: 48.2rem;
}

.p-clubInfo__list {
  display: flex;
  flex-direction: column;
  row-gap: 6.8rem;
}
.p-clubInfo__item {
  padding: 3.2rem;
  position: relative;
  border-radius: 1.6rem;
  background-color: #fff;
}
.p-clubInfo__item:not(:last-child)::after {
  content: "";
  width: 4rem;
  height: 2rem;
  position: absolute;
  top: calc(100% + 2.4rem);
  left: calc(50% - 2rem);
  z-index: 1;
  background-color: var(--category-color, #ff6d34);
  clip-path: polygon(0 0, 100% 0, 50% 100%);
}
.p-clubInfo__item--title {
  text-align: center;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1.5;
}
.p-clubInfo__item--description {
  margin-top: 2.4rem;
  text-align: center;
}
.p-clubInfo__buttons {
  margin-top: 3.2rem;
  display: flex;
  gap: 8rem;
  justify-content: center;
}
.p-clubInfo__buttons li {
  width: 26.8rem;
}
.p-clubInfo__buttons .c-btn__01 {
  width: 100%;
  margin-top: 0;
}

.p-clubForm__section + .p-clubForm__section {
  margin-top: 4.8rem;
  padding-top: 4.8rem;
  border-top: 1px solid #999;
}
.p-clubForm__section .c-form__label[for^=schedule_][for$=_start_time] + .c-form__item {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.6rem;
}
.p-clubForm__section .c-form__label[for^=schedule_][for$=_start_time] + .c-form__item .c-form__control {
  width: auto;
  min-width: 7.6rem;
}
.p-clubForm__section .c-form__label[for^=schedule_][for$=_start_time] + .c-form__item .p-clubForm__scheduleTimeStart,
.p-clubForm__section .c-form__label[for^=schedule_][for$=_start_time] + .c-form__item .p-clubForm__scheduleTimeEnd {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
}
.p-clubForm__section .c-form__label[for^=schedule_][for$=_start_time] + .c-form__item .p-clubForm__scheduleWeeks {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 1.2rem;
  margin-top: 0.6rem;
}
.p-clubForm__section .c-form__label[for^=schedule_][for$=_start_time] + .c-form__item .p-clubForm__scheduleWeeks label {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
}
.p-clubForm__section input.c-form__control,
.p-clubForm__section select.c-form__control {
  min-height: 4.4rem;
  padding-top: 0.55rem;
  padding-bottom: 0.55rem;
}
.p-clubForm__section input[type=number] {
  text-align: right;
}
.p-clubForm__section input[name="instructor_staff[male_instructors]"],
.p-clubForm__section input[name="instructor_staff[female_instructors]"],
.p-clubForm__section input[name="activity_group[capacity][max_capacity]"],
.p-clubForm__section input[name="activity_group[activity_start_group][activity_start_month]"],
.p-clubForm__section input[name$="[age]"] {
  width: 7.2rem;
  max-width: 100%;
}
.p-clubForm__section input[name="activity_group[capacity][max_capacity]"]:disabled {
  background-color: #f2f2f2;
  color: #777;
  cursor: not-allowed;
  opacity: 1;
}
.p-clubForm__section input[name="entry_type[form_url]"].is-readonly {
  background-color: #f2f2f2;
  color: #777;
  cursor: not-allowed;
  opacity: 1;
}
.p-clubForm__section input[name="activity_group[activity_start_group][activity_start_year]"] {
  width: 10rem;
  max-width: 100%;
}
.p-clubForm__section input.c-form__control--zip {
  width: 16rem;
  max-width: 100%;
}
.p-clubForm__section input[name="representative_info[phone]"],
.p-clubForm__section input[name=public_phone] {
  width: 20ch;
  max-width: 100%;
}
.p-clubForm__section #activity_status,
.p-clubForm__section #is_recruiting {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}
.p-clubForm__section #has_capacity_limit {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  flex-wrap: wrap;
}
.p-clubForm__section #activity_area {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: 0.6rem 1.2rem;
}
.p-clubForm__section #activity_area label {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  .p-clubForm__section #activity_area {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
.p-clubForm__section #activity_status label,
.p-clubForm__section #is_recruiting label {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
}
.p-clubForm__section #jh_facility_request_has_preference .p-clubForm__jhGuide {
  margin: 0.2rem 0 0;
  white-space: normal;
}
.p-clubForm__section #jh_facility_request_has_preference .p-clubForm__jhGuide a {
  display: inline;
}
.p-clubForm__section .p-clubForm__jhPrefLabel {
  display: inline-flex;
  justify-self: start;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.2;
  color: #111;
  align-items: center;
  padding: 0.6rem 1rem;
  border-radius: 1.2rem;
  background-color: #fff;
}
.p-clubForm__section .p-clubForm__jhPrefRow {
  display: grid;
  gap: 1rem 1.2rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.p-clubForm__section .p-clubForm__jhPrefField {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  padding-left: 0.4rem;
  min-width: 0;
}
.p-clubForm__section .p-clubForm__jhPrefFieldLabel {
  flex: 0 0 auto;
  width: 5.6rem;
  font-size: 1.4rem;
  color: #666;
  white-space: nowrap;
}
.p-clubForm__section .p-clubForm__jhPrefField .c-form__control {
  flex: 1 1 auto;
  min-width: 0;
}

@media screen and (max-width: 767px) {
  .p-clubForm__section + .p-clubForm__section {
    margin-top: 3.2rem;
    padding-top: 3.2rem;
  }
  .p-clubForm__section input.c-form__control,
  .p-clubForm__section select.c-form__control {
    min-height: 4.6rem;
  }
  .p-clubForm__section .c-form__label[for^=schedule_][for$=_start_time] + .c-form__item {
    align-items: flex-start;
    flex-direction: column;
    gap: 0.4rem;
  }
  .p-clubForm__section .c-form__label[for^=schedule_][for$=_start_time] + .c-form__item .p-clubForm__scheduleTimeEnd {
    margin-left: 0;
  }
  .p-clubForm__section .c-form__label[for^=schedule_][for$=_start_time] + .c-form__item .p-clubForm__scheduleWeeks {
    margin-top: 0.4rem;
  }
  .p-clubForm__section .p-clubForm__jhPrefRow {
    grid-template-columns: 1fr;
    gap: 0.8rem;
  }
}
@media screen and (min-width: 768px) {
  .p-clubHome__hero {
    margin-bottom: 6rem;
  }
  .p-clubHome__hero--title {
    position: absolute;
    top: 0;
    left: 0;
  }
  .p-clubHome__hero--visual {
    left: 2.8rem;
  }
  .p-clubHome__heroNavi {
    position: absolute;
    right: 0;
    bottom: 5.6rem;
  }
  .p-clubHome__heroNavi--list {
    width: 25.2rem;
    flex-direction: column;
  }
  .p-clubHome__heroNavi--list > * {
    margin-left: auto;
  }
  .p-clubHome__heroNavi--list .c-btn__02 {
    width: 19rem;
  }
  .p-clubHome__heroNavi--buttons {
    flex-direction: column;
  }
}
@media screen and (max-width: 767px) {
  .p-clubHome__hero {
    padding-top: 5.6rem;
  }
  .p-clubHome__hero--inner {
    padding-top: 4rem;
  }
  .p-clubHome__hero--title {
    width: 25.2rem;
    margin: 0 auto 2.8rem;
  }
  .p-clubHome__hero--title img {
    width: 100%;
  }
  .p-clubHome__hero--visual {
    width: 27.2rem;
  }
  .p-clubHome__heroNavi {
    margin-top: 2rem;
    display: grid;
    gap: 1.2rem;
    grid-template-columns: 1fr 1fr;
    align-items: center;
  }
  .p-clubHome__heroNavi--list {
    gap: 1.2rem;
  }
  .p-clubHome__heroNavi--item {
    width: 100%;
  }
  .p-clubHome__heroNavi--item .c-btn__02 {
    width: 100%;
  }
  .p-clubHome__heroNavi--item .c-btn__02 img {
    width: 100%;
  }
  .p-clubHome__heroNavi--buttons {
    margin-top: 0;
    flex-direction: column;
  }
  .p-clubHome__heroNavi--buttons .c-btn__01 {
    width: 100%;
    border-radius: 0.8rem;
  }
  .p-clubHome__heroNavi--buttons .c-btn__01--text {
    font-size: 1.4rem;
  }
  .p-clubHome__heroNavi--buttons .c-btn__01--arrow {
    width: 1.2rem;
    margin-right: 1.2rem;
  }
  .p-clubHome__news {
    padding-bottom: 4rem;
  }
  .p-clubHome__news::before {
    top: -36rem;
  }
  .p-clubHome__newsCard {
    padding: 4rem 3.4rem;
  }
  .p-clubHome__newsCard--title {
    margin-bottom: 1em;
    font-size: 2.4rem;
  }
  .p-clubHome__news .c-btn__01 {
    margin-top: 3.2rem;
  }
}
.p-clubCheck {
  display: flex;
  gap: 4rem;
  flex-direction: column;
}
.p-clubCheck__card {
  padding: 5.6rem;
  display: flex;
  gap: 4rem;
  flex-direction: column;
  border-radius: 1.6rem;
  background-color: #fff;
  box-shadow: 0 0 0.4rem rgba(0, 0, 0, 0.04);
}
.p-clubCheck__header {
  display: flex;
  gap: 2.4rem;
  align-items: center;
}
.p-clubCheck__number {
  width: 4rem;
  height: 4rem;
  display: flex;
  align-items: center;
  flex: none;
  justify-content: center;
  border-radius: 50%;
  background-color: #00b3d0;
  color: #fff;
  letter-spacing: 0.1em;
  font-weight: 700;
  font-size: 2rem;
  line-height: 1.5;
}
.p-clubCheck__question {
  color: #3b3b3b;
  letter-spacing: 0.1em;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1.5;
}
.p-clubCheck__options {
  display: flex;
  gap: 3.2rem;
  align-items: center;
  justify-content: center;
}
.p-clubCheck__option {
  display: flex;
  gap: 1.6rem;
  align-items: center;
  cursor: pointer;
}
.p-clubCheck__option input[type=radio] {
  display: none;
}
.p-clubCheck__radio {
  width: 2rem;
  height: 2rem;
  position: relative;
  border: 1px solid #d9d9d9;
  border-radius: 50%;
  background-color: #fff;
  transition: border-color 0.2s;
}
.p-clubCheck__radio::after {
  content: "";
  width: 0.8rem;
  height: 0.8rem;
  position: absolute;
  top: 50%;
  left: 50%;
  border-radius: 50%;
  background-color: #00b3d0;
  opacity: 0;
  transition: opacity 0.2s;
  transform: translate(-50%, -50%);
}
.p-clubCheck__option input[type=radio]:checked + .p-clubCheck__radio {
  border-color: #00b3d0;
}
.p-clubCheck__option input[type=radio]:checked + .p-clubCheck__radio::after {
  opacity: 1;
}
.p-clubCheck__label {
  color: #1f1f1f;
  letter-spacing: 0.1em;
  font-weight: 500;
  font-size: 1.6rem;
}
.p-clubCheck__info {
  padding: 4rem;
  display: none;
  gap: 1.5em;
  flex-direction: column;
  border-radius: 0.8rem;
  background-color: rgba(0, 179, 208, 0.06);
}
.p-clubCheck__info.is-visible {
  display: flex;
}
.p-clubCheck__info--title {
  color: #3b3b3b;
  letter-spacing: 0.1em;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1.5;
}
.p-clubCheck__info--text {
  color: #333;
  letter-spacing: 0.1em;
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .p-clubCheck {
    gap: 2.4rem;
  }
  .p-clubCheck__card {
    padding: 2.4rem 1.6rem;
    gap: 2.4rem;
  }
  .p-clubCheck__header {
    gap: 1.6rem;
  }
  .p-clubCheck__number {
    width: 3.2rem;
    height: 3.2rem;
  }
  .p-clubCheck__question {
    font-size: 1.8rem;
  }
  .p-clubCheck__options {
    gap: 1.6rem 3.2rem;
    flex-wrap: wrap;
  }
  .p-clubCheck__options.sp-justify-left {
    justify-content: flex-start;
  }
  .p-clubCheck__option {
    gap: 1.2rem;
  }
  .p-clubCheck__info {
    padding: 3.2rem 1.6rem;
    gap: 1.6rem;
  }
  .p-clubCheck__info--title {
    font-size: 1.8rem;
  }
  .p-clubCheck__info--text {
    font-size: 1.4rem;
  }
  .p-clubInfo__list {
    row-gap: 4.8rem;
  }
  .p-clubInfo__item {
    margin: 0 -2.8rem;
    padding: 4rem 2.8rem;
    border-radius: 0;
  }
  .p-clubInfo__item:not(:last-child)::after {
    width: 3.2rem;
    height: 1.6rem;
    top: calc(100% + 1.6rem);
    left: calc(50% - 1.6rem);
  }
  .p-clubInfo__item--title {
    font-size: 2rem;
  }
  .p-clubInfo__item--description {
    text-align: left;
  }
  .p-clubInfo__buttons {
    margin-top: 2.4rem;
    flex-direction: column;
    row-gap: 1.6rem;
  }
  .p-clubInfo__buttons li {
    width: 100%;
  }
}
.p-volunteerHome__hero {
  padding-top: 10rem;
  position: relative;
  z-index: 2;
}
.p-volunteerHome__hero--inner {
  padding-top: 4.4rem;
  position: relative;
}
.p-volunteerHome__hero--title {
  width: 48.6rem;
  display: block;
}
.p-volunteerHome__hero--visual {
  width: 52.6rem;
  margin: 0 auto;
  position: relative;
}
.p-volunteerHome__hero--visual-object {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}
.p-volunteerHome__hero--object01 {
  width: 14.6rem;
  bottom: -3rem;
  left: 6.4rem;
}
.p-volunteerHome__heroNavi--list {
  display: flex;
  gap: 1rem;
}
.p-volunteerHome__heroNavi--buttons {
  margin-top: 2.7rem;
  display: flex;
  gap: 1.2rem;
  align-items: center;
}
.p-volunteerHome__heroNavi .c-btn__01 {
  width: 19.6rem;
  height: 6rem;
  border: 2px solid var(--category-color, #ff6d34);
  --text-color: var(--category-color, #ff6d34);
}
.p-volunteerHome__heroNavi .c-btn__01--text {
  letter-spacing: 0.1em;
  font-size: 1.6rem;
}
.p-volunteerHome__news {
  padding-bottom: 6rem;
  position: relative;
  z-index: 1;
}
.p-volunteerHome__news::before {
  content: "";
  width: 100%;
  position: absolute;
  top: -35.5rem;
  bottom: 0;
  left: 0;
  z-index: -1;
  border-radius: 50vw 50vw 0 0;
  background-color: #fff;
  filter: drop-shadow(0 0 8px rgba(0, 0, 0, 0.04));
}
.p-volunteerHome__newsCard {
  padding: 6rem 6rem;
  border-radius: 1.6rem;
  background-color: #fef4d7;
}
.p-volunteerHome__newsCard--title {
  margin-bottom: 1.25em;
  font-size: 2.8rem;
}
.p-volunteerHome__news .c-btn__01 {
  margin-top: 4.8rem;
}
.p-volunteerHome__news--object01 {
  width: 11.5rem;
  top: 7rem;
  left: -4.8rem;
}
.p-volunteerHome__news--object03 {
  width: 13.1rem;
  top: -1.2rem;
  right: -5.4rem;
}
.p-volunteerHome__news--object04 {
  width: 18.9rem;
  bottom: -3.8rem;
  left: -6.6rem;
}
.p-volunteerHome__news--object05 {
  width: 9.1rem;
  right: -3.7rem;
  bottom: 10.4rem;
}

@media screen and (min-width: 768px) {
  .p-volunteerHome__hero {
    margin-bottom: 10rem;
  }
  .p-volunteerHome__hero--title {
    position: absolute;
    top: 0;
    left: 0;
  }
  .p-volunteerHome__hero--visual {
    top: 3rem;
    left: 1.2rem;
  }
  .p-volunteerHome__heroNavi {
    position: absolute;
    top: 0;
    right: 0;
  }
  .p-volunteerHome__heroNavi--list {
    width: 25.2rem;
    flex-direction: column;
  }
  .p-volunteerHome__heroNavi--list > *:nth-child(2) {
    margin-left: auto;
  }
  .p-volunteerHome__heroNavi--list .c-btn__02 {
    width: 19rem;
  }
  .p-volunteerHome__heroNavi--buttons {
    flex-direction: column;
  }
  .p-volunteerHome__news::before {
    border-radius: 50vw 50vw 0 0/68rem 68rem 0 0;
  }
}
@media screen and (max-width: 767px) {
  .p-volunteerHome__hero {
    padding-top: 5.6rem;
  }
  .p-volunteerHome__hero--inner {
    padding-top: 4rem;
  }
  .p-volunteerHome__hero--title {
    width: 27rem;
    margin: 0 auto 1.8rem;
  }
  .p-volunteerHome__hero--title img {
    width: 100%;
  }
  .p-volunteerHome__hero--visual {
    width: 26.6rem;
  }
  .p-volunteerHome__heroNavi {
    margin-top: 2rem;
  }
  .p-volunteerHome__heroNavi--list {
    gap: 1.2rem;
  }
  .p-volunteerHome__heroNavi--item {
    flex: 1;
  }
  .p-volunteerHome__heroNavi--item .c-btn__02 {
    width: 100%;
  }
  .p-volunteerHome__heroNavi--item .c-btn__02 img {
    width: 100%;
  }
  .p-volunteerHome__heroNavi--buttons {
    margin-top: 2rem;
  }
  .p-volunteerHome__heroNavi--buttons .c-btn__01 {
    width: 100%;
    border-radius: 0.8rem;
  }
  .p-volunteerHome__heroNavi--buttons .c-btn__01--text {
    font-size: 1.4rem;
  }
  .p-volunteerHome__news {
    padding-bottom: 4rem;
  }
  .p-volunteerHome__news::before {
    top: -45rem;
  }
  .p-volunteerHome__newsCard {
    padding: 4rem 3.4rem;
  }
  .p-volunteerHome__newsCard--title {
    margin-bottom: 1em;
    font-size: 2.4rem;
  }
  .p-volunteerHome__news .c-btn__01 {
    margin-top: 3.2rem;
  }
}
.p-disclosure {
  max-width: 103.2rem;
  margin: 0 auto;
}
.p-disclosure__section + .p-disclosure__section {
  margin-top: 12rem;
}
.p-disclosure__section.is-open .p-disclosure__toggle::after {
  transform: translate(-50%, -50%) rotate(180deg);
}
.p-disclosure__header {
  margin-bottom: 4rem;
  padding-right: 2.4rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
}
.p-disclosure__title {
  color: #3b3b3b;
  letter-spacing: 0.1em;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1;
}
.p-disclosure__toggle {
  width: 1.6rem;
  margin-left: auto;
  position: relative;
  display: block;
  flex: none;
  aspect-ratio: 1;
}
.p-disclosure__toggle::before, .p-disclosure__toggle::after {
  content: "";
  width: 100%;
  height: 4px;
  position: absolute;
  top: 50%;
  left: 50%;
  background-color: #1f1f1f;
  transform: translate(-50%, -50%);
}
.p-disclosure__toggle::after {
  transition: transform 0.3s ease-in-out;
  transform: translate(-50%, -50%) rotate(90deg);
}
.p-disclosure__line {
  height: 0.1rem;
  margin-bottom: 4rem;
  background-color: #3b3b3b;
}
.p-disclosure__content {
  overflow: hidden;
  transition: max-height 0.3s ease-out;
}
.p-disclosure__list {
  display: grid;
  gap: 3.2rem;
  grid-template-columns: repeat(2, 1fr);
}
.p-disclosure__link {
  padding: 2.4rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-radius: 0.8rem;
  background-color: #fff;
}
.p-disclosure__link--text {
  color: #333;
  letter-spacing: 0.1em;
  font-weight: 700;
  font-size: 2rem;
  line-height: 1.8;
}
.p-disclosure__link--icon {
  width: 2.1rem;
  height: 2.7rem;
  margin-left: 1.6rem;
  display: flex;
  align-items: center;
  flex-shrink: 0;
  justify-content: center;
}
.p-disclosure__link--icon svg {
  width: 100%;
  height: 100%;
}

@media screen and (min-width: 768px) {
  .p-disclosure__header .p-disclosure__toggle {
    transition: opacity 0.3s;
  }
  .p-disclosure__header:hover .p-disclosure__toggle {
    opacity: 0.7;
  }
}
@media screen and (max-width: 767px) {
  .p-disclosure__section + .p-disclosure__section {
    margin-top: 3.2rem;
  }
  .p-disclosure__header {
    margin-bottom: 2.4rem;
    padding-right: 0;
  }
  .p-disclosure__title {
    font-size: 1.8rem;
  }
  .p-disclosure__line {
    margin-bottom: 2.4rem;
  }
  .p-disclosure__list {
    gap: 1.6rem;
    grid-template-columns: 1fr;
  }
  .p-disclosure__link {
    padding: 1.6rem;
    border-radius: 1.2rem;
    box-shadow: 0 0 0.4rem 0 rgba(0, 0, 0, 0.03);
  }
  .p-disclosure__link--text {
    font-size: 1.6rem;
    line-height: 1.5;
  }
}
.p-about {
  max-width: 103.2rem;
  margin: 0 auto;
}
.p-about__section + .p-about__section {
  margin-top: 12rem;
}
.p-about__grid {
  display: grid;
  grid-template-areas: "title image" "text image";
  gap: 4rem 6rem;
  grid-template-columns: 1fr 39.6rem;
  grid-template-rows: auto 1fr;
  align-items: start;
}
.p-about__grid.is-reverse {
  grid-template-areas: "image title" "image text";
  grid-template-columns: 39.6rem 1fr;
}
.p-about__grid.is-align-center {
  align-items: center;
}
.p-about__title {
  color: #3b3b3b;
  letter-spacing: 0.1em;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1.5;
  grid-area: title;
}
.p-about__text {
  color: #333;
  text-align: justify;
  letter-spacing: 0.1em;
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 1.8;
  grid-area: text;
}
.p-about__text .c-btn__01 {
  margin-top: 4rem;
}
.p-about__image {
  overflow: hidden;
  border-radius: 0.8rem;
  grid-area: image;
}
.p-about__image img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}
.p-about__video {
  grid-area: image;
}

@media screen and (max-width: 767px) {
  .p-about__section + .p-about__section {
    margin-top: 5.6rem;
  }
  .p-about__grid {
    grid-template-areas: "title" "image" "text";
    gap: 2.4rem;
    grid-template-columns: 1fr;
  }
  .p-about__grid.is-reverse {
    grid-template-areas: "title" "image" "text";
    grid-template-columns: 1fr;
  }
  .p-about__title {
    text-align: center;
    font-size: 2rem;
  }
  .p-about__image {
    width: 100%;
  }
  .p-about__video {
    width: 100%;
  }
}
.p-news__filter {
  margin-bottom: 4rem;
  display: flex;
  gap: 3.2rem;
  align-items: center;
  flex-wrap: wrap;
  justify-content: center;
}
.p-news__filter--item {
  display: flex;
  gap: 1rem;
  align-items: center;
  cursor: pointer;
}
.p-news__filter--checkbox {
  width: 1.6rem;
  height: 1.6rem;
  margin: 0;
  flex: none;
  border: 1px solid #000;
  border-radius: 0;
  background-color: #fff;
  cursor: pointer;
  appearance: none;
}
.p-news__filter--checkbox:checked {
  background-image: url("data:image/svg+xml,%3Csvg width='19' height='14' viewBox='0 0 19 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7.07107 9.19171L16.2635 -0.000679672L18.3848 2.12064L7.07107 13.4343L0 6.36328L2.12132 4.24196L7.07107 9.19171Z' fill='%23333'/%3E%3C/svg%3E");
  background-position: center;
  background-size: 100%;
  background-repeat: no-repeat;
}
.p-news__filter--label {
  min-width: 11.2rem;
  padding: 0.6rem 0.8rem;
  display: inline-block;
  border-radius: 0.4rem;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  letter-spacing: 0.14em;
  font-weight: 700;
  font-size: 1.4rem;
  line-height: 1;
}
.p-news__filter--label-join {
  background-color: #ff6d34;
}
.p-news__filter--label-club {
  background-color: #00b3d0;
}
.p-news__filter--label-volunteer {
  background-color: #00a759;
}
.p-news__list {
  display: flex;
  flex-direction: column;
  row-gap: 4rem;
}
.p-news__list--item {
  padding: 3.2rem 5.6rem;
  display: flex;
  align-items: center;
  border-radius: 1.6rem;
  background-color: #fff;
  column-gap: 5.6rem;
}
.p-news__list--inner {
  display: flex;
  align-items: center;
  column-gap: 2rem;
}
.p-news__list--info {
  display: flex;
  gap: 0 2.4rem;
  align-items: center;
}
.p-news__list--info .c-module__news--category {
  padding: 1rem 0.6rem;
  font-size: 1.2rem;
  line-height: 1.2;
}
.p-news__list--date {
  display: inline-block;
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 1;
}
.p-news__list--arrow {
  width: 4rem;
  margin-left: auto;
  flex: none;
  border: 1px solid #b3b3b3;
  border-radius: 50%;
  background: #fff url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 13 6' fill='none'><path fill='%23333' d='M12 5.182v.75a.75.75 0 0 0 .547-1.263L12 5.182ZM8.456.305a.75.75 0 1 0-1.094 1.026l.547-.513.547-.513ZM0 5.182v.75h12v-1.5H0v.75Zm12 0 .547-.513L8.457.305l-.548.513-.547.513 4.09 4.364.548-.513Z'/></svg>") no-repeat center 45%/37.5% auto;
  aspect-ratio: 1;
}

@media screen and (min-width: 768px) {
  .p-news__list--info {
    padding-right: 2rem;
    border-right: 1px solid #333;
  }
  .p-news__list--info .c-module__news--category {
    width: 12rem;
  }
  .p-news__list--item:hover .p-news__list--arrow {
    border-color: #333;
    background-color: #333;
    background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 13 6' fill='none'><path fill='white' d='M12 5.182v.75a.75.75 0 0 0 .547-1.263L12 5.182ZM8.456.305a.75.75 0 1 0-1.094 1.026l.547-.513.547-.513ZM0 5.182v.75h12v-1.5H0v.75Zm12 0 .547-.513L8.457.305l-.548.513-.547.513 4.09 4.364.548-.513Z'/></svg>");
  }
  .p-news__list--arrow {
    transition: background-color 0.3s, background-image 0.3s, border-color 0.3s;
  }
}
@media screen and (max-width: 767px) {
  .p-news__filter {
    margin-bottom: 2.4rem;
    gap: 1.6rem;
    justify-content: flex-start;
  }
  .p-news__filter--label {
    min-width: 0;
    font-size: 1.2rem;
  }
  .p-news__list {
    row-gap: 2.4rem;
  }
  .p-news__list--item {
    padding: 2.4rem 1.6rem;
    border-radius: 1.2rem;
    column-gap: 2.4rem;
  }
  .p-news__list--inner {
    align-items: start;
    flex-direction: column;
  }
  .p-news__list--info {
    margin-bottom: 1.2rem;
    align-items: start;
    flex-direction: column;
  }
  .p-news__list--info .c-module__news--category {
    width: auto;
    padding: 0.4rem 1rem;
  }
  .p-news__list--date {
    margin-bottom: 0.75em;
  }
  .p-news__list--title {
    letter-spacing: 0.18em;
  }
  .p-news__list--arrow {
    width: 3.2rem;
  }
}
.p-faq__search {
  margin-bottom: 6rem;
  padding: 3.2rem;
  display: flex;
  align-items: center;
  flex-direction: column;
  border-radius: 1.6rem;
  background-color: #fff;
  row-gap: 3.2rem;
}
.p-faq__search--input {
  width: 100%;
  height: 4rem;
  padding-left: 1.6rem;
  display: flex;
  gap: 0.8rem;
  align-items: center;
  border-radius: 0.6rem;
  background-color: #e6e6e6;
  letter-spacing: 0;
}
.p-faq__search--icon {
  width: 2rem;
  height: auto;
  flex: none;
  color: #999;
}
.p-faq__search--field {
  width: 100%;
  height: 100%;
  padding-right: 1.6rem;
  border: none;
  background-color: transparent;
  color: #333;
  letter-spacing: 0.1em;
  font-size: 1.6rem;
  line-height: 1.8;
}
.p-faq__search--field::placeholder {
  color: #999;
}
.p-faq__search--field:focus {
  outline: none;
}
.p-faq__search--button {
  width: 46.4rem;
  max-width: 100%;
  height: 4.4rem;
  padding-right: 1.6rem;
  display: flex;
  gap: 0.8rem;
  align-items: center;
  justify-content: center;
  border: none;
  border: 1px solid var(--category-color, #ff6d34);
  border-radius: 0.4rem;
  background-color: var(--category-color, #ff6d34);
  letter-spacing: 0.1em;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1.8;
  cursor: pointer;
  transition: opacity 0.3s ease-in-out, background-color 0.3s ease-in-out, color 0.3s ease-in-out;
  --text-color: #fff;
}
.p-faq__search--button:hover {
  background-color: #fff;
  --text-color: var(--category-color, #ff6d34);
}
.p-faq__search--button .p-faq__search--icon {
  width: 2.2rem;
  color: #fff;
}
.p-faq__result {
  margin: 6rem 0;
  text-align: center;
  font-weight: 700;
  font-size: 2.4rem;
}
.p-faq__list {
  display: flex;
  flex-direction: column;
  row-gap: 4rem;
}
.p-faq__list--item {
  padding: 5.6rem 5.6rem;
  border-radius: 1.6rem;
  background-color: #fff;
}
.p-faq__list--question, .p-faq__list--answer {
  padding-left: 6.4rem;
  position: relative;
}
.p-faq__list--question::before, .p-faq__list--answer::before {
  content: "";
  width: 4rem;
  padding-bottom: 0.2em;
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background-color: #333;
  color: #fff;
  font-weight: 700;
  font-size: 2rem;
  line-height: 1;
  aspect-ratio: 1;
}
.p-faq__list--question {
  padding-top: 0.2rem;
  display: flex;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1.5;
  cursor: pointer;
  column-gap: 1em;
}
.p-faq__list--question::before {
  content: "Q";
  background-color: var(--category-color, #ff6d34);
}
.p-faq__list--question.is-open .p-faq__list--arrow::after {
  transform: translate(-50%, -50%) rotate(180deg);
}
.p-faq__list--arrow {
  width: 1.6rem;
  margin-left: auto;
  position: relative;
  display: block;
  flex: none;
  aspect-ratio: 1;
}
.p-faq__list--arrow::before, .p-faq__list--arrow::after {
  content: "";
  width: 100%;
  height: 4px;
  position: absolute;
  top: 50%;
  left: 50%;
  background-color: #1f1f1f;
  transform: translate(-50%, -50%);
}
.p-faq__list--arrow::after {
  transition: transform 0.3s ease-in-out;
  transform: translate(-50%, -50%) rotate(90deg);
}
.p-faq__list--answer {
  margin-top: 3.2rem;
  display: none;
}
.p-faq__list--answer::before {
  content: "A";
}
.p-faq__no-results {
  margin-top: 4rem;
  padding: 3.2rem;
  color: #666;
  text-align: center;
  font-size: 1.6rem;
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
  .p-faq__search {
    margin-right: -2.8rem;
    margin-bottom: 3.2rem;
    margin-left: -2.8rem;
    padding: 1.6rem 2.8rem;
    border-radius: 0;
    row-gap: 1.6rem;
  }
  .p-faq__search--input {
    height: 3.4rem;
  }
  .p-faq__search--icon {
    width: 1.8rem;
  }
  .p-faq__search--field {
    font-size: 1.4rem;
  }
  .p-faq__search--button {
    width: 100%;
    height: 3.4rem;
    font-size: 1.6rem;
  }
  .p-faq__search--button .p-faq__search--icon {
    width: 1.8rem;
  }
  .p-faq__result {
    margin: 3.2rem 0;
    font-size: 1.8rem;
  }
  .p-faq__list {
    row-gap: 2.4rem;
  }
  .p-faq__list--item {
    padding: 2.4rem 1.6rem;
    border-radius: 1.2rem;
  }
  .p-faq__list--question, .p-faq__list--answer {
    padding-left: 4.8rem;
  }
  .p-faq__list--question::before, .p-faq__list--answer::before {
    width: 3.2rem;
  }
  .p-faq__list--question {
    font-size: 1.8rem;
  }
  .p-faq__list--answer {
    margin-top: 2rem;
  }
  .p-faq__no-results {
    margin-top: 2.4rem;
    padding: 2.4rem 1.6rem;
    font-size: 1.4rem;
  }
}
.hidden-fields-container {
  border: none;
}

.screen-reader-response {
  margin-bottom: 3.2rem;
  display: none;
}

.wpcf7-not-valid-tip {
  margin-top: 0.5em;
  display: inline-block;
  color: #ff6d34;
  font-size: 87.5%;
}

.p-contact__navi {
  padding: 3.2rem;
  border-radius: 1.6rem;
  background-color: #fff;
}
.p-contact__navi .c-heading__02 {
  margin-bottom: 1em;
}
.p-contact__navi--sentence strong {
  color: var(--category-color, #ff6d34);
  font-weight: 700;
}

@media screen and (max-width: 767px) {
  .p-contact__navi .c-btn__01--text {
    font-size: 1.4rem;
  }
}
.p-community__lead {
  margin-bottom: 5.6rem;
}
.p-community__about--inner {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
}
.p-community__about--text {
  width: 61.8rem;
}
.p-community__about--text strong {
  color: #ff6d34;
}
.p-community__about--title {
  margin-bottom: 5rem;
  display: flex;
  align-items: flex-end;
  font-size: 3.2rem;
}
.p-community__about--image {
  width: 21.5rem;
  margin-right: 9rem;
}
.p-community__about--buttons {
  margin-top: 2.4rem;
  display: flex;
  gap: 6rem;
  justify-content: center;
}
.p-community__video {
  margin-top: 5.6rem;
  padding: 6rem 5.6rem;
  border-radius: 1.6rem;
  background-color: #fff;
}
.p-community__video--inner {
  position: relative;
  display: grid;
  gap: 12.8rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.p-community__video--inner::before {
  content: "";
  width: 1px;
  height: 100%;
  position: absolute;
  top: 0;
  left: 50%;
  background-color: #b3b3b3;
  transform: translateX(-50%);
}
.p-community__video--card {
  display: flex;
  gap: 3.2rem;
  flex-direction: column;
  text-align: center;
}
.p-community__video--text {
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1.5;
}
.p-community__video--text small {
  font-size: 2rem;
}
.p-community__block {
  padding: 6rem 5.6rem;
  border-top: 1.2rem solid var(--theme-color, #b3b3b3);
  border-bottom: 1.2rem solid var(--theme-color, #b3b3b3);
  border-radius: 0.8rem;
  background-color: #fff;
}
.p-community__block--inner + .p-community__block--inner {
  margin-top: 6rem;
  padding-top: 6rem;
  border-top: 1px solid rgba(179, 179, 179, 0.5);
}
.p-community__block--title {
  margin-bottom: 5.6rem;
  padding-left: 1em;
  position: relative;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1.5;
}
.p-community__block--title::before {
  content: "";
  width: 0.6rem;
  height: calc(100% - 0.5em);
  position: absolute;
  top: 0.35em;
  left: 0;
  border-radius: 0.3rem;
  background-color: var(--theme-color, #b3b3b3);
}
.p-community__schedule--image-caption {
  margin-top: 0.5em;
  font-size: 1.4rem;
}
.p-community__schedule--image-caption strong {
  color: var(--theme-color);
}
.p-community__schedule .c-list__disc {
  margin-top: 5.6rem;
}
.p-community__background--item {
  padding: 4rem;
  border-radius: 1.2rem;
  background-color: #f0fafc;
}
.p-community__background--item + .p-community__background--item {
  margin-top: 2.4rem;
}
.p-community__background--item-inner {
  display: flex;
  gap: 4rem;
  align-items: center;
}
.p-community__background--item-text {
  flex: 1;
}
.p-community__background--item-title {
  margin-bottom: 1em;
  font-size: 2.4rem;
}
.p-community__background--item-note {
  font-size: 1.4rem;
}
.p-community__background--item-caption {
  margin-top: 1.5em;
  font-size: 1.4rem;
}
.p-community__background--item p:not(:last-child) {
  margin-bottom: 1em;
}
.p-community__background--item p strong {
  color: var(--theme-color);
}
.p-community__background--item-image.image01 {
  margin: 0 1.6rem;
}
.p-community__background--decoration01 {
  width: 18.8rem;
  top: -3rem;
  right: -7rem;
}
.p-community__aboutClub--inner {
  display: grid;
  grid-template-areas: "title image" "text image";
  gap: 0 4rem;
  grid-template-columns: 1fr 49rem;
  grid-template-rows: auto 1fr;
}
.p-community__aboutClub--title {
  grid-area: title;
}
.p-community__aboutClub--text {
  grid-area: text;
}
.p-community__aboutClub--text p:not(:last-child) {
  margin-bottom: 1em;
}
.p-community__aboutClub--text strong {
  color: var(--theme-color);
}
.p-community__aboutClub--image {
  position: relative;
  grid-area: image;
}
.p-community__aboutClub--image-caption {
  position: absolute;
  right: 0;
  bottom: 0;
  font-size: 1.4rem;
}
.p-community__aboutPoint--list {
  margin: 2.4rem 0;
  display: grid;
  gap: 2.4rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.p-community__aboutPoint--item {
  padding: 4rem;
  border-radius: 1.2rem;
  background-color: rgba(0, 167, 89, 0.08);
}
.p-community__aboutPoint--item-title {
  margin-bottom: 1.5em;
  display: flex;
  gap: 1.6rem;
  align-items: center;
  font-size: 2.4rem;
  --text-color: #00a759;
}
.p-community__aboutPoint--item strong {
  color: var(--theme-color);
}
.p-community__about--decoration01 {
  width: 13rem;
  top: -11.4rem;
  right: -9.5rem;
}
.p-community__about--decoration02 {
  width: 17.5rem;
  top: 37.8rem;
  left: -16.2rem;
}
.p-community__about--decoration03 {
  width: 17.9rem;
  top: -6rem;
  right: -16rem;
}
.p-community__after .c-list__note {
  font-size: 1.4rem;
}
.p-community__afterDesign--title {
  margin-bottom: 2.4rem;
  display: flex;
  gap: 2.4rem;
  align-items: center;
  flex-direction: column;
}
.p-community__afterDesign--title-label {
  padding: 0.15em 1em;
  border-radius: 2em;
  background-color: var(--theme-color);
  color: #fff;
  font-size: 2.4rem;
  line-height: 1.5;
}
.p-community__afterDesign--title-text {
  font-size: 2.4rem;
  line-height: 1.5;
}
.p-community__afterDesign--list {
  display: grid;
  gap: 1.6rem;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.p-community__afterDesign--item {
  padding: 1.4rem 0;
  display: flex;
  gap: 1.2rem;
  flex-direction: column;
  border-radius: 1.2rem;
  background-color: rgba(255, 161, 34, 0.08);
  text-align: center;
  font-weight: 700;
  font-size: 1.4rem;
  --text-color: #ffa122;
}
.p-community__afterDesign--item-icon {
  width: 100%;
  height: 6.2rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.p-community__afterDesign--item-text {
  display: flex;
  align-items: center;
  flex: 1;
  justify-content: center;
}
.p-community__afterDesign--item p {
  line-height: 1.2;
}
.p-community__afterExample--title {
  margin-bottom: 3.2rem;
  font-size: 2rem;
}
.p-community__afterExample--image-caption {
  margin-top: 1.5em;
  font-size: 1.4rem;
  line-height: 1.8;
}
.p-community__after--decoration01 {
  width: 16.6rem;
  top: -11.6rem;
  right: -12.9rem;
}
.p-community__after--decoration02 {
  width: 19.7rem;
  bottom: -11rem;
  left: -14.7rem;
}
.p-community__after--decoration03 {
  width: 11.1rem;
  right: -11.6rem;
  bottom: 0;
}

@media screen and (max-width: 767px) {
  .p-community__about--inner {
    flex-direction: column;
  }
  .p-community__about--text {
    width: 100%;
    font-size: 1.6rem;
  }
  .p-community__about--title {
    margin-bottom: 3.2rem;
    font-size: 1.8rem;
  }
  .p-community__about--title img {
    width: 20rem;
  }
  .p-community__about--image {
    width: 100%;
    margin-top: 2.4rem;
    margin-right: 0;
  }
  .p-community__about--buttons {
    gap: 1.6rem;
    flex-direction: column;
  }
  .p-community__about--buttons .c-btn__01 {
    margin: 0;
  }
  .p-community__schedule--image-inner {
    overflow-x: scroll;
  }
  .p-community__schedule--image-inner img {
    width: 67.5rem;
    max-width: none;
  }
  .p-community__schedule .c-list__disc {
    margin-top: 4rem;
  }
  .p-community__video {
    margin-top: 4rem;
    margin-right: -2.8rem;
    margin-left: -2.8rem;
    padding: 3.2rem 2.8rem;
    border-radius: 0;
  }
  .p-community__video--inner {
    gap: 3.2rem;
    grid-template-columns: minmax(0, 1fr);
  }
  .p-community__video--inner::before {
    content: none;
  }
  .p-community__video--text {
    font-size: 2rem;
  }
  .p-community__video--text small {
    font-size: 1.6rem;
  }
  .p-community__block {
    margin-right: -2.8rem;
    margin-left: -2.8rem;
    padding: 4rem 2.8rem;
    border-radius: 0;
  }
  .p-community__block--inner + .p-community__block--inner {
    margin-top: 4rem;
    padding-top: 4rem;
  }
  .p-community__block--title {
    margin-bottom: 4rem;
    font-size: 2rem;
    line-height: 1.3;
  }
  .p-community__block--title::before {
    width: 0.4rem;
    height: calc(100% - 0.25em);
    top: 0.15em;
  }
  .p-community__background--item {
    padding: 4rem 2.8rem;
  }
  .p-community__background--item-inner {
    flex-direction: column;
  }
  .p-community__background--item-title {
    font-size: 2rem;
  }
  .p-community__aboutClub--inner {
    grid-template-areas: "title" "text" "image";
    grid-template-columns: 1fr;
    grid-template-rows: auto 1fr auto;
  }
  .p-community__aboutClub--image {
    margin-top: 4rem;
  }
  .p-community__aboutPoint--list {
    margin: 2.4rem 0;
    grid-template-columns: minmax(0, 1fr);
  }
  .p-community__aboutPoint--item {
    padding: 2.8rem;
  }
  .p-community__aboutPoint--item-title {
    margin-bottom: 1em;
    gap: 0.8rem;
    font-size: 2rem;
  }
  .p-community__aboutPoint--item-title img {
    width: 4rem;
  }
  .p-community__aboutOther--image-inner {
    overflow-x: scroll;
  }
  .p-community__aboutOther--image-inner img {
    width: 66.6rem;
    max-width: none;
  }
  .p-community__afterDesign--title {
    margin-bottom: 4rem;
    gap: 2rem;
  }
  .p-community__afterDesign--title-label {
    padding: 0.15em 1em;
    border-radius: 2em;
    font-size: 2rem;
  }
  .p-community__afterDesign--title-text {
    font-size: 2rem;
    line-height: 1.3;
  }
  .p-community__afterDesign--list {
    gap: 0.8rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .p-community__afterDesign--item {
    padding: 1.8rem 0;
    gap: 0.6rem;
    font-size: 1.2rem;
  }
  .p-community__afterExample--image-inner {
    overflow-x: scroll;
  }
  .p-community__afterExample--image-inner img {
    width: 69.6rem;
    max-width: none;
  }
}
