@charset "UTF-8";
/*!
Theme Name: youroufukushikyougikai
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: youroufukushikyougikai
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

youroufukushikyougikai is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
.br-catch {
  display: none;
}

@media screen and (max-width: 1350px) {
  .br-catch {
    display: inline;
  }
}
.br-catch-none {
  display: inline;
}

@media screen and (max-width: 1350px) {
  .br-catch-none {
    display: none;
  }
}
/*!
Theme Name: youroufukushikyougikai
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: youroufukushikyougikai
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

youroufukushikyougikai is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
* {
  box-sizing: border-box;
}

html {
  font-size: 100%;
  box-sizing: border-box;
}

body {
  font-family: dnp-shuei-mgothic-std, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Yu Gothic", sans-serif;
  font-size: 17px;
  line-height: 1.7;
  color: #4f473d;
  background-color: #faf8f6;
  font-weight: 400;
  margin: 0;
}

h1, h2, h3, h4, h5, h6 {
  font-family: dnp-shuei-mgothic-std, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W6", "Yu Gothic", sans-serif;
  font-weight: 700;
  color: #4f473d;
  line-height: 1.4;
}

h1 {
  font-size: 2rem;
}

h2 {
  font-size: 1.6rem;
}

h3 {
  font-size: 1.3rem;
}

h4 {
  font-size: 1.1rem;
}

a {
  color: #fca919;
  text-decoration: none;
  transition: 0.2s ease-out;
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}

.l-wrap {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 10px;
  padding-right: 10px;
}

.ml-10 {
  margin-left: 10px !important;
}

.mr-10 {
  margin-right: 10px !important;
}

.mt-10 {
  margin-top: 10px !important;
}

.mb-10 {
  margin-bottom: 10px !important;
}

.pl-10 {
  padding-left: 10px !important;
}

.pr-10 {
  padding-right: 10px !important;
}

.pt-10 {
  padding-top: 10px !important;
}

.pb-10 {
  padding-bottom: 10px !important;
}

.ml-20 {
  margin-left: 20px !important;
}

.mr-20 {
  margin-right: 20px !important;
}

.mt-20 {
  margin-top: 20px !important;
}

.mb-20 {
  margin-bottom: 20px !important;
}

.pl-20 {
  padding-left: 20px !important;
}

.pr-20 {
  padding-right: 20px !important;
}

.pt-20 {
  padding-top: 20px !important;
}

.pb-20 {
  padding-bottom: 20px !important;
}

.ml-30 {
  margin-left: 30px !important;
}

.mr-30 {
  margin-right: 30px !important;
}

.mt-30 {
  margin-top: 30px !important;
}

.mb-30 {
  margin-bottom: 30px !important;
}

.pl-30 {
  padding-left: 30px !important;
}

.pr-30 {
  padding-right: 30px !important;
}

.pt-30 {
  padding-top: 30px !important;
}

.pb-30 {
  padding-bottom: 30px !important;
}

.ml-40 {
  margin-left: 40px !important;
}

.mr-40 {
  margin-right: 40px !important;
}

.mt-40 {
  margin-top: 40px !important;
}

.mb-40 {
  margin-bottom: 40px !important;
}

.pl-40 {
  padding-left: 40px !important;
}

.pr-40 {
  padding-right: 40px !important;
}

.pt-40 {
  padding-top: 40px !important;
}

.pb-40 {
  padding-bottom: 40px !important;
}

.ml-50 {
  margin-left: 50px !important;
}

.mr-50 {
  margin-right: 50px !important;
}

.mt-50 {
  margin-top: 50px !important;
}

.mb-50 {
  margin-bottom: 50px !important;
}

.pl-50 {
  padding-left: 50px !important;
}

.pr-50 {
  padding-right: 50px !important;
}

.pt-50 {
  padding-top: 50px !important;
}

.pb-50 {
  padding-bottom: 50px !important;
}

.ml-60 {
  margin-left: 60px !important;
}

.mr-60 {
  margin-right: 60px !important;
}

.mt-60 {
  margin-top: 60px !important;
}

.mb-60 {
  margin-bottom: 60px !important;
}

.pl-60 {
  padding-left: 60px !important;
}

.pr-60 {
  padding-right: 60px !important;
}

.pt-60 {
  padding-top: 60px !important;
}

.pb-60 {
  padding-bottom: 60px !important;
}

.ml-70 {
  margin-left: 70px !important;
}

.mr-70 {
  margin-right: 70px !important;
}

.mt-70 {
  margin-top: 70px !important;
}

.mb-70 {
  margin-bottom: 70px !important;
}

.pl-70 {
  padding-left: 70px !important;
}

.pr-70 {
  padding-right: 70px !important;
}

.pt-70 {
  padding-top: 70px !important;
}

.pb-70 {
  padding-bottom: 70px !important;
}

.ml-80 {
  margin-left: 80px !important;
}

.mr-80 {
  margin-right: 80px !important;
}

.mt-80 {
  margin-top: 80px !important;
}

.mb-80 {
  margin-bottom: 80px !important;
}

.pl-80 {
  padding-left: 80px !important;
}

.pr-80 {
  padding-right: 80px !important;
}

.pt-80 {
  padding-top: 80px !important;
}

.pb-80 {
  padding-bottom: 80px !important;
}

.glightbox img:hover {
  opacity: 0.7;
}

/*!
Theme Name: youroufukushikyougikai
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: youroufukushikyougikai
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

youroufukushikyougikai is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
main {
  position: relative;
  z-index: 1;
}

/* ===========================
   ヘッダー部分
   =========================== */
.l-header {
  position: sticky;
  top: 0;
  z-index: 9;
  background: transparent;
  box-shadow: none;
  transition: background-color 0.25s ease, box-shadow 0.25s ease, backdrop-filter 0.25s ease;
}
.l-header.is-sticky {
  background: rgba(255, 255, 255, 0.95);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
  backdrop-filter: blur(6px);
}
.l-header__inner {
  width: 100%;
  gap: 20px;
  margin: 0 auto;
  padding: 18px 24px 14px;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
}
@media screen and (max-width: 1000px) {
  .l-header__inner {
    align-items: center;
    gap: 16px;
    padding: 10px;
  }
}
.l-header {
  /* ロゴ */
}
.l-header__logo a {
  display: flex;
  align-items: center;
  gap: 14px;
}
@media screen and (max-width: 768px) {
  .l-header__logo a {
    gap: 0;
  }
}
.l-header__logo-mark {
  max-width: 70px;
  flex-shrink: 0;
}
@media screen and (max-width: 768px) {
  .l-header__logo-mark {
    max-width: 46px;
  }
}
.l-header__logo-mark img {
  width: 100%;
  height: auto;
  display: block;
}
.l-header__logo-text {
  display: flex;
  flex-direction: column;
  color: #4f473d;
  gap: 4px;
}
.l-header__logo-sub {
  font-size: 1.1rem;
  letter-spacing: 2px;
  line-height: 1;
  padding-left: 2px;
}
@media screen and (max-width: 768px) {
  .l-header__logo-sub {
    font-size: 0.8rem;
  }
}
.l-header__logo-main {
  font-family: dnp-shuei-mgothic-std, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W6", "Yu Gothic", sans-serif;
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: 1px;
  line-height: 1.2;
}
@media screen and (max-width: 768px) {
  .l-header__logo-main {
    font-size: 1rem;
  }
}
.l-header {
  /* 右側エリア */
}
.l-header__nav-area {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 10px;
  margin-left: 32px;
  flex-grow: 1;
}
@media screen and (max-width: 1000px) {
  .l-header__nav-area {
    display: none;
  }
}
.l-header__top-links {
  display: flex;
  gap: 10px;
}
@media screen and (max-width: 1000px) {
  .l-header__top-links {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .l-header__main-links {
    order: 2;
    width: 100%;
  }
}

.c-header-top-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 18px;
  border-radius: 8px;
  background-color: #fee9c3;
  color: #4f473d;
  white-space: nowrap;
}
.c-header-top-btn:hover {
  background-color: #4f473d;
  color: #fff;
}
.c-header-top-btn__icon {
  font-size: 0.98rem;
  line-height: 1;
}

.c-header-main-links {
  display: inline-flex;
  align-items: stretch;
  border-radius: 8px;
  background-color: #fff;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.08);
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .c-header-main-links {
    width: 100%;
    display: none;
  }
}
.c-header-main-links__item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 14px;
  font-size: 1.1rem;
  color: #4f473d;
  position: relative;
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  .c-header-main-links__item {
    flex: 1 1 auto;
    justify-content: center;
    padding-inline: 10px;
  }
}
.c-header-main-links__item:not(:last-child) {
  border-right: 2px dotted rgba(79, 71, 61, 0.3);
}
.c-header-main-links__item:hover {
  background-color: #4f473d;
  color: #fff;
}
.c-header-main-links__icon {
  color: #fca919;
  font-size: 1.1rem;
}
.c-header-main-links__label {
  letter-spacing: 0.02em;
}

.c-menu-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-flow: column;
  width: 106px;
  height: 100px;
  gap: 8px;
  padding: 14px 10px 10px 10px;
  border-radius: 10px;
  border: none;
  cursor: pointer;
  background-color: #66a789;
  color: #fff;
  font-size: 0.95rem;
  font-weight: 700;
  flex-shrink: 0;
}
@media screen and (max-width: 768px) {
  .c-menu-btn {
    align-self: flex-end;
    width: 76px;
    height: 68px;
  }
}
.c-menu-btn:hover {
  opacity: 0.8;
}
.c-menu-btn__icon {
  width: 42px;
  height: 30px;
  position: relative;
  display: inline-block;
}
.c-menu-btn__icon span {
  position: absolute;
  left: 0;
  right: 0;
  height: 2px;
  border-radius: 2px;
  background-color: #fff;
  transition: 0.2s ease-in-out;
}
.c-menu-btn__icon span:nth-child(1) {
  top: 2px;
}
.c-menu-btn__icon span:nth-child(2) {
  top: 14px;
}
.c-menu-btn__icon span:nth-child(3) {
  top: 26px;
}
@media screen and (max-width: 768px) {
  .c-menu-btn__icon span:nth-child(1) {
    top: 2px;
  }
  .c-menu-btn__icon span:nth-child(2) {
    top: 10px;
  }
  .c-menu-btn__icon span:nth-child(3) {
    top: 20px;
  }
}
.c-menu-btn__label {
  letter-spacing: 0.08em;
}
@media screen and (max-width: 768px) {
  .c-menu-btn__label {
    font-size: 12px;
  }
}
.c-menu-btn.is-active .c-menu-btn__icon span:nth-child(1) {
  top: 8px;
  transform: rotate(45deg);
}
.c-menu-btn.is-active .c-menu-btn__icon span:nth-child(2) {
  opacity: 0;
}
.c-menu-btn.is-active .c-menu-btn__icon span:nth-child(3) {
  top: 8px;
  transform: rotate(-45deg);
}

/* ===========================
   メニュー部分
   =========================== */
.c-drawer {
  position: fixed;
  inset: 0;
  z-index: 999;
  pointer-events: none;
}
.c-drawer__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.35);
  opacity: 0;
  transition: opacity 0.25s ease-out;
  z-index: 1;
}
.c-drawer__inner {
  position: absolute;
  top: 0;
  right: 0;
  width: min(320px, 80%);
  height: 100%;
  background-color: #fff;
  box-shadow: -4px 0 12px rgba(0, 0, 0, 0.15);
  transform: translateX(100%);
  transition: transform 0.25s ease-out;
  padding: 20px 20px 40px;
  display: flex;
  flex-direction: column;
  z-index: 2;
  pointer-events: auto;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
.c-drawer__close {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 26px;
  height: 26px;
  border: none;
  background: transparent;
  cursor: pointer;
}
.c-drawer__close span {
  position: absolute;
  inset: 50%;
  width: 100%;
  height: 2px;
  background: #4f473d;
  border-radius: 1px;
}
.c-drawer__close span:first-child {
  transform: translate(-50%, -50%) rotate(45deg);
}
.c-drawer__close span:last-child {
  transform: translate(-50%, -50%) rotate(-45deg);
}
.c-drawer__list {
  margin-top: 56px;
}
@media screen and (max-width: 768px) {
  .c-drawer__list {
    margin-top: 40px;
  }
}
.c-drawer__item + .c-drawer__item {
  margin-top: 16px;
}
.c-drawer__item a {
  display: block;
  padding-bottom: 6px;
  border-bottom: 1px solid #dddddd;
  color: #4f473d;
  font-size: 1rem;
}
@media screen and (max-width: 768px) {
  .c-drawer__item a {
    line-height: 1;
  }
}
.c-drawer__item a:hover {
  color: #fca919;
}
.c-drawer__item.parent a {
  border-bottom: none;
}
.c-drawer__item.sub {
  margin-top: 8px;
  margin-left: 10px;
  list-style: none;
}
.c-drawer__item.sub a {
  border-bottom: none;
  font-size: 0.9rem;
}
.c-drawer__item.disaster a {
  color: #e44e1f;
}
.c-drawer.is-open {
  pointer-events: auto;
}
.c-drawer.is-open .c-drawer__overlay {
  opacity: 1;
}
.c-drawer.is-open .c-drawer__inner {
  transform: translateX(0);
}

/* ドロワー表示中は背景スクロール固定 */
.u-body-fixed {
  overflow: hidden;
}

/* ===========================
  下層ヘッダー部分
   =========================== */
.pageHead {
  position: relative;
  overflow: hidden;
  padding: 56px 0 72px;
}
@media screen and (max-width: 1024px) {
  .pageHead {
    padding: 48px 0 64px;
  }
}
@media screen and (max-width: 768px) {
  .pageHead {
    padding: 20px 0 60px;
  }
}
.pageHead__inner {
  position: relative;
  z-index: 2;
}
.pageHead__title {
  margin: 0;
  text-align: center;
  font-size: 28px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.08em;
  padding-top: 80px;
  padding-bottom: 70px;
  line-height: 1.5;
}
@media screen and (max-width: 1024px) {
  .pageHead__title {
    padding-top: 40px;
    padding-bottom: 30px;
    font-size: 26px;
  }
}
@media screen and (max-width: 768px) {
  .pageHead__title {
    padding-top: 20px;
    padding-bottom: 10px;
    font-size: 22px;
  }
}
.pageHead__titleLine {
  display: block;
  width: 60px;
  height: 5px;
  margin: 10px auto 0;
  border-radius: 999px;
  background: #fca919;
}
.pageHead__breadcrumb {
  position: absolute;
  left: 0;
  bottom: -50px;
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  font-size: 0.9rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: #6b4b12;
}
@media screen and (max-width: 1024px) {
  .pageHead__breadcrumb {
    bottom: -40px;
  }
}
@media screen and (max-width: 768px) {
  .pageHead__breadcrumb {
    bottom: -30px;
    left: 4px;
    font-size: 11px;
  }
}
.pageHead__breadcrumbLink {
  color: inherit;
  text-decoration: none;
}
.pageHead__breadcrumbLink:hover {
  text-decoration: underline;
}
.pageHead__breadcrumbSep {
  opacity: 0.8;
}
.pageHead__breadcrumbCurrent {
  color: inherit;
}
.pageHead__wave {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  line-height: 0;
}
.pageHead__wave img {
  display: block;
  width: 100%;
  height: auto;
}

/* ===========================
   フッター部分
   =========================== */
.f-contact {
  padding: 240px 0 56px;
  background-color: #faf8f6;
  position: relative;
}
@media screen and (max-width: 768px) {
  .f-contact {
    padding: 100px 0 0px;
  }
}
.f-contact__inner {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 40px;
  padding: 0 20px;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 1024px) {
  .f-contact__inner {
    gap: 32px;
  }
}
@media screen and (max-width: 768px) {
  .f-contact__inner {
    flex-direction: column;
    gap: 24px;
    padding: 0 16px;
  }
}
.f-contact__bgdot {
  position: absolute;
  right: 0;
  bottom: -100px;
  width: 300px;
  z-index: 0;
}
.f-contact__bgdot.right {
  position: absolute;
  left: 0;
  bottom: 120px;
  width: 250px;
  z-index: 0;
}
@media screen and (max-width: 768px) {
  .f-contact__bgdot.right {
    display: none;
  }
}
.f-contact {
  /* 左側 ----------------------------------------- */
}
.f-contact__info {
  display: flex;
  gap: 24px;
  flex-flow: column;
}
@media screen and (max-width: 768px) {
  .f-contact__info {
    flex-direction: column;
    gap: 16px;
  }
}
.f-contact__brand {
  display: flex;
  gap: 12px;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .f-contact__brand {
    gap: 10px;
  }
}
.f-contact__brand-img {
  width: 64px;
  height: auto;
}
@media screen and (max-width: 768px) {
  .f-contact__brand-img {
    width: 40px;
  }
}
.f-contact__brand-text {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.6;
  color: #4f473d;
  margin: 0;
  letter-spacing: 1px;
  line-height: 1.3;
}
@media screen and (max-width: 768px) {
  .f-contact__brand-text {
    font-size: 1.2rem;
  }
}
.f-contact__brand-text span {
  font-size: 1.1rem;
  letter-spacing: 1px;
}
@media screen and (max-width: 768px) {
  .f-contact__brand-text span {
    font-size: 0.9rem;
  }
}
.f-contact__address {
  color: #4f473d;
  line-height: 1.5;
  font-size: 1.2rem;
}
@media screen and (max-width: 768px) {
  .f-contact__address {
    font-size: 1rem;
  }
}
.f-contact {
  /* 右側 ----------------------------------------- */
}
.f-contact__detail {
  flex: 1 1 50%;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  text-align: right;
  gap: 16px;
}
@media screen and (max-width: 768px) {
  .f-contact__detail {
    align-items: flex-start;
    text-align: left;
    width: 100%;
  }
}
.f-contact__btns {
  display: flex;
  gap: 12px;
  margin-bottom: 4px;
}
@media screen and (max-width: 768px) {
  .f-contact__btns {
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px;
    align-self: center;
  }
}
.f-contact__btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
@media screen and (max-width: 768px) {
  .f-contact__btn {
    font-size: 0.9rem !important;
    min-width: 150px !important;
  }
}
.f-contact__btn i {
  font-size: 1.6rem;
  line-height: 1;
  display: inline-block;
}
.f-contact__tel {
  font-size: 1.4rem;
  line-height: 1.9;
  color: #4f473d;
}
@media screen and (max-width: 768px) {
  .f-contact__tel {
    font-size: 1.3rem;
  }
}
.f-contact__tel-line {
  font-weight: 700;
  margin: 0;
}
.f-contact__open {
  margin-top: 4px;
  font-size: 1.2rem;
}
@media screen and (max-width: 768px) {
  .f-contact__open {
    font-size: 0.88rem;
  }
}

@media screen and (max-width: 768px) {
  .footer {
    padding: 24px 0 0;
  }
}
.footer__bg {
  padding: 10px 0 40px;
  background-color: #fca919;
  color: #fff;
  font-size: 1.3rem;
  margin-top: -2px;
}
.footer__nav {
  display: flex;
  justify-content: space-around;
  align-items: flex-start;
  gap: 48px;
  flex-wrap: nowrap;
}
@media screen and (max-width: 1024px) {
  .footer__nav {
    gap: 32px;
  }
}
@media screen and (max-width: 768px) {
  .footer__nav {
    flex-wrap: wrap;
    gap: 16px 24px;
    justify-content: start;
    padding-left: 20px;
  }
}
.footer__list {
  list-style: none;
  padding-left: 0;
}
.footer__item a {
  font-size: 1.14rem;
  line-height: 1.4;
}
@media screen and (max-width: 768px) {
  .footer__item a {
    font-size: 1rem;
  }
}
.footer__item + .footer__item {
  margin-top: 8px;
}
@media screen and (max-width: 768px) {
  .footer__item + .footer__item {
    margin-top: 6px;
  }
}
.footer__item.sub {
  padding-left: 2rem;
}
.footer__link {
  position: relative;
  display: block;
  width: 100%;
  padding: 6px 0 6px 14px;
  color: #fff;
  text-decoration: none;
  letter-spacing: 0.08em;
  line-height: 1.9;
  transition: opacity 0.2s ease;
}
@media screen and (max-width: 768px) {
  .footer__link {
    font-size: 1rem;
    padding: 1px 0 1px 8px;
  }
}
.footer__link::before {
  content: "›";
  position: absolute;
  left: 0;
  top: 0;
  font-size: 1.1rem;
  line-height: 1.9;
}
@media screen and (max-width: 768px) {
  .footer__link::before {
    line-height: 1.1;
  }
}
.footer__link:hover {
  color: #4f473d;
}
.footer {
  /* コピーライト帯 -------------------------------------- */
}
.footer__copy-wrap {
  margin-top: 80px;
  padding: 0 20px;
}
@media screen and (max-width: 768px) {
  .footer__copy-wrap {
    margin-top: 20px;
    padding: 0 16px;
  }
}
.footer__copy {
  width: 100%;
  margin: 0 auto;
  padding: 6px 24px;
  border-radius: 999px;
  background-color: rgba(255, 255, 255, 0.25);
  color: #fff;
  font-size: 0.9rem;
  text-align: center;
  letter-spacing: 0.16em;
}
@media screen and (max-width: 768px) {
  .footer__copy {
    font-size: 0.8rem;
  }
}

.pagetop {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 999;
  width: 52px;
  height: 52px;
  background-color: rgba(255, 255, 255, 0.88);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #e44e1f;
  font-size: 2.4rem;
  cursor: pointer;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
  /* ホバー */
}
.pagetop:hover {
  transform: translateY(-3px);
}
@media screen and (max-width: 768px) {
  .pagetop {
    right: 16px;
    bottom: 16px;
    width: 44px;
    height: 44px;
    font-size: 2rem;
  }
}
.pagetop.is-show {
  opacity: 1;
  visibility: visible;
}

@media screen and (max-width: 768px) {
  .table-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}

/* ここがキモ：テーブルを横に伸ばす */
.table-wrap table {
  border-collapse: collapse;
}
@media screen and (max-width: 768px) {
  .table-wrap table {
    width: -moz-max-content;
    width: max-content;
    min-width: 100%;
  }
}

/* セル内の自動改行を止める */
.table-wrap th,
.table-wrap td {
  white-space: inherit;
  word-break: break-all;
}
@media screen and (max-width: 768px) {
  .table-wrap th,
  .table-wrap td {
    white-space: nowrap;
  }
}

/*!
Theme Name: youroufukushikyougikai
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: youroufukushikyougikai
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

youroufukushikyougikai is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
/* タイトル -------------------- */
.title__01 {
  text-align: center;
  margin-bottom: 50px;
}
.title__01 span {
  display: inline-block;
  font-size: 2.1rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  padding-bottom: 8px;
  position: relative;
}
.title__01 span::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -4px;
  transform: translateX(-50%);
  width: 64px;
  height: 4px;
  border-radius: 999px;
  background: #fca919;
}
@media screen and (max-width: 768px) {
  .title__01 {
    margin-bottom: 24px;
  }
  .title__01 span {
    font-size: 1.4rem;
    letter-spacing: 0.16em;
  }
}

.title__02 {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 1.5rem;
  font-weight: 700;
  color: #2b2b2b;
  letter-spacing: 0.02em;
  margin-bottom: 40px;
}
@media screen and (max-width: 768px) {
  .title__02 {
    font-size: 1.2rem;
    margin-bottom: 20px;
  }
}
.title__02 .titleBar {
  width: 6px;
  height: 46px;
  border-radius: 999px;
  background: #66a789;
  flex: 0 0 auto;
}
@media screen and (max-width: 768px) {
  .title__02 .titleBar {
    height: 24px;
  }
}

/*　ボタン */
.btn__01 { /* 白色背景 */
  display: inline-flex;
  justify-content: center;
  min-width: 300px;
  align-items: center;
  gap: 10px;
  padding: 8px 28px;
  border: 1.4px solid #4f473d;
  border-radius: 40px;
  font-size: 1.4rem;
  font-weight: 600;
  color: #4f473d;
  background: #fff;
  transition: all 0.3s ease;
  cursor: pointer;
}
.btn__01 i {
  font-size: 1.2rem;
  transition: inherit;
}
.btn__01:hover {
  background: #4f473d;
  color: #fff;
}
.btn__01:hover i {
  color: #fff;
}
@media screen and (max-width: 768px) {
  .btn__01 {
    font-size: 1.1rem;
    min-width: 200px;
    padding: 4px 18px;
  }
}
.btn__01.backhome {
  display: flex;
  max-width: 300px;
  margin: 40px auto 0;
  text-align: center;
  font-weight: normal;
  border: none;
}

.btn__02 { /* 緑色背景 */
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 24px;
  border-radius: 999px;
  background-color: #66a789;
  color: #fff;
  font-size: 1.3rem;
  font-weight: 600;
  text-decoration: none;
  letter-spacing: 0.08em;
  transition: transform 0.2s ease, box-shadow 0.2s ease, opacity 0.2s ease;
}
.btn__02:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.18);
  opacity: 0.95;
}
.btn__02 i {
  padding-right: 8px;
}
@media screen and (max-width: 768px) {
  .btn__02 {
    font-size: 1.08rem;
    letter-spacing: 0.02em;
  }
}

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

.u-sp-only {
  display: none;
}
@media screen and (max-width: 768px) {
  .u-sp-only {
    display: block;
  }
}

.pdlr10 {
  padding: 0 10px;
}

.f-s {
  font-size: 90%;
}

.c-pillNav {
  padding: 20px 0;
  background: #fee9c3;
  margin: 40px auto;
}
@media screen and (max-width: 1024px) {
  .c-pillNav {
    padding: 18px 0;
  }
}
@media screen and (max-width: 768px) {
  .c-pillNav {
    padding: 14px 0;
  }
}
.c-pillNav__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px 24px;
  margin: 0;
  padding: 0;
  list-style: none;
}
@media screen and (max-width: 1024px) {
  .c-pillNav__list {
    gap: 14px 18px;
  }
}
@media screen and (max-width: 768px) {
  .c-pillNav__list {
    grid-template-columns: 1fr;
    gap: 12px;
  }
}
.c-pillNav__inner {
  padding: 0 20px;
}
.c-pillNav__link {
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 56px;
  padding: 14px 22px;
  border-radius: 999px;
  background: #fff;
  text-decoration: none;
}
@media screen and (max-width: 768px) {
  .c-pillNav__link {
    min-height: 34px;
    padding: 8px 18px;
  }
}
.c-pillNav__link:hover {
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
  transform: translateY(-1px);
}
.c-pillNav__link:active {
  transform: translateY(0);
}
.c-pillNav__link:focus-visible {
  outline-offset: 3px;
}
.c-pillNav__icon {
  flex: 0 0 auto;
  width: 0;
  height: 0;
  margin-right: 12px;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 9px solid #e44e1f;
}
@media screen and (max-width: 768px) {
  .c-pillNav__icon {
    margin-right: 10px;
    border-left-width: 5px;
    border-right-width: 5px;
    border-top-width: 8px;
  }
}
.c-pillNav__text {
  font-size: 1.1rem;
  font-weight: 700;
  line-height: 1.2;
  color: #4f473d;
}
@media screen and (max-width: 768px) {
  .c-pillNav__text {
    font-size: 1rem;
    font-weight: normal;
  }
}

/* ==========================
  共通：セクション見出し（左ライン）
========================== */
.c-sectionTitle {
  position: relative;
  display: flex;
  align-items: center;
  gap: 14px;
  font-size: 1.1rem;
  margin: 0 0 30px;
  padding: 22px 24px;
  background: #fff;
}
@media screen and (max-width: 768px) {
  .c-sectionTitle {
    padding: 8px 10px;
    gap: 12px;
  }
}
.c-sectionTitle__bar {
  flex: 0 0 auto;
  width: 6px;
  height: 34px;
  border-radius: 999px;
  background: #66a789;
}
.c-sectionTitle__text {
  font-size: 1.5rem;
  font-weight: 800;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 768px) {
  .c-sectionTitle__text {
    font-size: 1.1rem;
  }
}

/* ==========================
  共通：このセクション枠
========================== */
.c-infoSection {
  margin-top: 80px;
}
.c-infoSection + .c-infoSection {
  margin-top: 120px;
}
@media screen and (max-width: 768px) {
  .c-infoSection + .c-infoSection {
    margin-top: 40px;
  }
}
.c-infoSection:last-of-type {
  margin-bottom: 80px;
}
.c-infoSection__desc + .c-infoSection__desc {
  margin-top: 20px;
}
.c-infoSection__block {
  margin-top: 50px;
  padding: 0 20px;
}
@media screen and (max-width: 768px) {
  .c-infoSection__block {
    padding: 0 10px;
    margin-top: 40px;
  }
}
.c-infoSection__lead {
  margin: 0 0 30px;
  font-size: 1.4rem;
  font-weight: 800;
  padding: 0 10px 4px;
  border-bottom: 2px dotted #fca919;
}
@media screen and (max-width: 768px) {
  .c-infoSection__lead {
    margin-bottom: 14px;
    font-size: 1.1rem;
  }
}
.c-infoSection__grid {
  display: grid;
  grid-template-columns: 1fr 40%;
  -moz-column-gap: 56px;
       column-gap: 56px;
  align-items: start;
}
@media screen and (max-width: 1024px) {
  .c-infoSection__grid {
    grid-template-columns: 1fr 420px;
    -moz-column-gap: 32px;
         column-gap: 32px;
  }
}
@media screen and (max-width: 768px) {
  .c-infoSection__grid {
    grid-template-columns: 1fr;
    row-gap: 18px;
  }
}
.c-infoSection__details {
  padding: 0 10px;
  margin-top: 10px;
}
@media screen and (max-width: 768px) {
  .c-infoSection__details {
    padding: 0 5px;
  }
}
.c-infoSection__content {
  margin-bottom: 20px;
  min-width: 0;
}
@media screen and (max-width: 768px) {
  .c-infoSection__content {
    order: 2;
  }
}
.c-infoSection__desc {
  margin: 0;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .c-infoSection__desc {
    line-height: 1.8;
  }
}
.c-infoSection__media {
  margin: 0;
}
@media screen and (max-width: 768px) {
  .c-infoSection__media {
    order: 1;
  }
}
.c-infoSection__media.komarigoto {
  align-items: end;
}
.c-infoSection__media.komarigoto img {
  max-width: 150px;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .c-infoSection__media.komarigoto img {
    max-width: 100px;
  }
}
.c-infoSection__img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 10px;
}

.c-pillHeading {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 280px;
  padding: 6px 18px;
  border-radius: 999px;
  margin: 0 0 18px;
  background: #fdc25c;
  font-size: 1.1rem;
  font-weight: 800;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 768px) {
  .c-pillHeading {
    min-width: 220px;
    padding: 5px 18px;
    font-size: 0.9rem;
    margin: 0 0 8px;
  }
}

.c-infoBlock + .c-infoBlock {
  margin-top: 54px;
}
@media screen and (max-width: 768px) {
  .c-infoBlock + .c-infoBlock {
    margin-top: 30px;
  }
}
.c-infoBlock__text {
  margin: 0;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  .c-infoBlock__text {
    line-height: 1.6;
    font-size: 1rem;
  }
}
.c-infoBlock__text + .c-infoBlock__text {
  margin-top: 20px;
}
.c-infoBlock__note {
  margin: 10px 0 0;
}
@media screen and (max-width: 768px) {
  .c-infoBlock__note {
    font-size: 0.9rem;
  }
}

.c-docLink {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 14px 0 0;
}
.c-docLink a {
  text-decoration: underline;
}
.c-docLink a:hover {
  text-decoration: none;
}
.c-docLink__dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #e44e1f;
  flex: 0 0 auto;
  display: inline-block;
}
.c-docLink__link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #4f473d;
  letter-spacing: 1.6px;
}

.c-contactInfo {
  padding: 28px 0;
  background-color: #faf8f6;
}
.c-contactInfo__title {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 18px;
  letter-spacing: 1.4px;
}
.c-contactInfo__flex {
  display: flex;
  gap: 100px;
}
@media screen and (max-width: 768px) {
  .c-contactInfo__flex {
    flex-flow: column;
    gap: 20px;
  }
}
.c-contactInfo__body {
  display: flex;
  -moz-column-gap: 40px;
       column-gap: 40px;
  row-gap: 12px;
  color: #4f473d;
}
@media screen and (max-width: 768px) {
  .c-contactInfo__body {
    flex-flow: column;
    row-gap: 16px;
  }
}
.c-contactInfo__org {
  margin: 0;
}
.c-contactInfo__list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  row-gap: 8px;
}
@media screen and (max-width: 768px) {
  .c-contactInfo__list {
    row-gap: 0;
  }
}
.c-contactInfo__item {
  display: flex;
  gap: 8px;
  letter-spacing: 1.4px;
  align-items: baseline;
}
.c-contactInfo__label {
  font-weight: 700;
}
.c-contactInfo__value {
  color: #4f473d;
  text-decoration: none;
}
.c-contactInfo__value a:hover {
  text-decoration: underline;
}

/* ==========================
  共通：留意事項リスト（緑ドット）
========================== */
.c-noteList {
  margin: 10px 0;
  padding: 0;
  list-style: none;
  display: grid;
  row-gap: 18px;
}
@media screen and (max-width: 768px) {
  .c-noteList {
    row-gap: 14px;
  }
}
.c-noteList.simple {
  row-gap: 0;
}
.c-noteList__item {
  display: grid;
  grid-template-columns: 12px 1fr;
  -moz-column-gap: 12px;
       column-gap: 12px;
  align-items: start;
  margin-bottom: 20px;
}
.c-noteList__dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #66a789;
  margin-top: 0.5em;
  display: inline-block;
}
.c-noteList__body {
  margin-bottom: 1rem;
}
.c-noteList__title {
  margin: 0 0 6px;
  color: #4f473d;
  font-size: 1.08rem;
}
@media screen and (max-width: 768px) {
  .c-noteList__title {
    font-size: 1.04rem;
  }
}
.c-noteList__text {
  margin: 0 0 0 2rem;
  color: #4f473d;
  font-size: 1rem;
}
@media screen and (max-width: 768px) {
  .c-noteList__text {
    margin: 0 0 0 1rem;
  }
}

.c-refLinks {
  margin-top: 32px;
  color: #4f473d;
}
.c-refLinks__lead {
  margin: 0 0 14px;
}
.c-refLinks__list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  grid-template-columns: repeat(3, auto);
  -moz-column-gap: 40px;
       column-gap: 40px;
  row-gap: 12px;
}
@media screen and (max-width: 768px) {
  .c-refLinks__list {
    grid-template-columns: 1fr;
    row-gap: 10px;
  }
}
.c-refLinks__item {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
.c-refLinks__dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #e44e1f;
  flex-shrink: 0;
  display: inline-block;
}
.c-refLinks__link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #4f473d;
  text-decoration: underline;
}
.c-refLinks__link:hover {
  text-decoration: none;
}
.c-refLinks__link:focus-visible {
  outline: 2px solid #e44e1f;
  outline-offset: 2px;
}
.c-refLinks__icon {
  font-size: 0.9em;
  line-height: 1;
}

/* ==========================
  Component: 縦並びリンクリスト（サイト内遷移）
========================== */
.c-linkList {
  color: #4f473d;
  margin: 0 0 0 10px;
}
.c-linkList__list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  row-gap: 12px;
}
.c-linkList__item {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 20px;
}
.c-linkList__dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #e44e1f;
  flex-shrink: 0;
}
.c-linkList__link {
  color: #4f473d;
  text-decoration: underline;
}
.c-linkList__link:hover {
  text-decoration: none;
}
.c-linkList__link:focus-visible {
  outline: 2px solid #e44e1f;
  outline-offset: 2px;
}

/* ==========================
  テキストの「・」リスト（新規最小）
========================== */
.c-textList {
  margin: 16px 0 60px 10px;
  padding: 0;
  list-style: none;
  display: grid;
  row-gap: 10px;
}
.c-textList__item {
  position: relative;
  padding-left: 1.2em;
}
.c-textList__item::before {
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
}

/* ==========================
  サービス内容の2カラム枠（新規最小）
========================== */
.c-serviceGrid {
  margin-top: 18px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: 56px;
       column-gap: 56px;
  row-gap: 22px;
}
@media screen and (max-width: 768px) {
  .c-serviceGrid {
    grid-template-columns: 1fr;
    -moz-column-gap: 0;
         column-gap: 0;
    row-gap: 18px;
  }
}
.c-serviceGrid__col {
  display: grid;
  row-gap: 26px;
}
@media screen and (max-width: 768px) {
  .c-serviceGrid__col {
    row-gap: 20px;
  }
}

.c-serviceGroup__title {
  margin: 0 0 20px;
  color: #4f473d;
  font-weight: 700;
}

.c-greenList {
  margin: 0 0 20px 1rem;
  padding: 0;
  list-style: none;
  display: grid;
  row-gap: 10px;
}
@media screen and (max-width: 768px) {
  .c-greenList {
    margin: 0 0 20px 0;
  }
}
.c-greenList__item {
  position: relative;
  padding-left: 1.4em;
}
.c-greenList__item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 14px;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background-color: #66a789;
  transform: translateY(-50%);
}

/* ==========================
  料金表（2カラム・点線の縦線・薄い見出し帯）
========================== */
.c-priceTableWrap {
  overflow-x: auto;
}

.c-priceTable {
  width: 100%;
  border-collapse: collapse;
  background-color: #fff;
}
.c-priceTable.page-about {
  margin-top: 40px;
}
.c-priceTable.page-about th, .c-priceTable.page-about td {
  text-align: center;
}
.c-priceTable.page-about .t-left {
  text-align: left;
}
.c-priceTable th,
.c-priceTable td {
  padding: 18px 22px;
  color: #4f473d;
  vertical-align: middle;
  font-weight: normal;
}
.c-priceTable thead th {
  padding: 8px 22px;
  background-color: #fee9c3;
  text-align: center;
  font-weight: normal;
}
.c-priceTable tbody th {
  font-weight: normal;
  text-align: left;
}
.c-priceTable {
  /* 横線（オレンジ） */
}
.c-priceTable tbody tr + tr th,
.c-priceTable tbody tr + tr td {
  border-top: 1px solid #fca919;
}
.c-priceTable {
  /* 左右の境界：点線の縦線 */
}
.c-priceTable th + th,
.c-priceTable td + td,
.c-priceTable td {
  border-left: 2px dotted #f8e2bd;
}
@media screen and (max-width: 768px) {
  .c-priceTable th,
  .c-priceTable td {
    padding: 14px 14px;
  }
}

/* ==========================
  利用料金：横並び3つ（シンプル）
========================== */
.c-feeRow {
  margin-top: 16px;
  display: grid;
  grid-template-columns: repeat(3, max-content);
  -moz-column-gap: 56px;
       column-gap: 56px;
  row-gap: 10px;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .c-feeRow {
    grid-template-columns: 1fr;
    -moz-column-gap: 0;
         column-gap: 0;
    row-gap: 8px;
  }
}
.c-feeRow__item {
  color: #4f473d;
}
@media screen and (max-width: 768px) {
  .c-feeRow__item {
    white-space: normal;
  }
}

@media screen and (max-width: 768px) {
  .table-wrap th, .table-wrap td {
    white-space: nowrap;
  }
}

/* ==========================
  小さめ2カラム表（燃料代など）
========================== */
.c-miniTableWrap {
  margin-top: 14px;
  max-width: 520px;
}

.c-miniTable {
  width: 100%;
  border-collapse: collapse;
  background-color: #fff;
}
.c-miniTable th,
.c-miniTable td {
  padding: 14px 18px;
  text-align: center;
  color: #4f473d;
}
.c-miniTable thead th {
  background-color: #fee9c3;
  font-weight: 700;
}
.c-miniTable th + th,
.c-miniTable td + td {
  border-left: 2px dotted #f8e2bd;
}
@media screen and (max-width: 768px) {
  .c-miniTable {
    max-width: 100%;
  }
  .c-miniTable th,
  .c-miniTable td {
    padding: 12px 12px;
  }
}

/* ==========================
  サロン一覧：軽い2カラム表
========================== */
.c-simpleTableWrap {
  margin-top: 18px;
  overflow-x: auto;
}

.c-simpleTable {
  width: 100%;
  border-collapse: collapse;
  background-color: #fff;
}
.c-simpleTable .center {
  text-align: center !important;
}
.c-simpleTable th,
.c-simpleTable td {
  padding: 18px 22px;
  vertical-align: middle;
  color: #4f473d;
}
.c-simpleTable th {
  width: 32%;
  background-color: #fee9c3;
  font-weight: 700;
  text-align: left;
}
@media screen and (max-width: 768px) {
  .c-simpleTable th {
    width: auto;
  }
}
.c-simpleTable {
  /* 縦の点線（列の区切り） */
}
.c-simpleTable td {
  border-left: 2px dotted #f8e2bd;
}
.c-simpleTable {
  /* 行の区切り（線） */
}
.c-simpleTable tr + tr th,
.c-simpleTable tr + tr td {
  border-top: 0.5px solid #fca919;
}
@media screen and (max-width: 768px) {
  .c-simpleTable th,
  .c-simpleTable td {
    padding: 14px 14px;
  }
}

/* =============================
  Number Item（事業内容 01/02/03）
============================= */
.c-numberItem {
  margin-top: 24px;
}
.c-numberItem:not(:last-child) {
  padding-bottom: 24px;
}
.c-numberItem__head {
  display: inline-flex;
  padding: 0 20px 0 10px;
  align-items: center;
  gap: 12px;
  margin-bottom: 8px;
  border-bottom: 1px dotted #66a789;
}
.c-numberItem__num {
  font-weight: 600;
  font-size: 1.6rem;
  color: #66a789;
  line-height: 1;
  min-width: 1em;
}
.c-numberItem__title {
  font-size: 1.2rem;
  color: #4f473d;
  line-height: 1.6;
  margin: 0;
  font-weight: normal;
}
.c-numberItem__text {
  font-size: inherit;
  color: #4f473d;
  line-height: 1.8;
  margin-bottom: 0;
  margin-top: 0;
  margin-left: calc(2.4em + 12px);
}
@media screen and (max-width: 768px) {
  .c-numberItem__head {
    gap: 10px;
  }
  .c-numberItem__num {
    font-size: 1.5rem;
  }
  .c-numberItem__text {
    margin-left: 0;
  }
}

/* =============================
  Definition Table（事業所のご案内）
============================= */
.c-defTable {
  width: 100%;
  border-collapse: collapse;
  background: #fff;
}
.c-defTable th,
.c-defTable td {
  padding: 22px 24px;
  vertical-align: middle;
  color: #4f473d;
  line-height: 1.8;
  border-bottom: 1px dotted #fca919;
}
.c-defTable tr:last-child th,
.c-defTable tr:last-child td {
  border-bottom: none;
}
.c-defTable th {
  width: 34%;
  background: #fee9c3;
  font-weight: normal;
  text-align: left;
}
.c-defTable td {
  background: #fff;
}
@media screen and (max-width: 768px) {
  .c-defTable {
    /* SPは横スクロール前提で「つぶれ」を防ぐ */
    min-width: 760px;
  }
}

/* =============================
  infoSection note / cta
============================= */
.c-infoSection__note {
  margin-top: 26px;
  text-align: center;
  color: #4f473d;
  line-height: 1.8;
}
.c-infoSection__cta {
  margin-top: 18px;
  margin-bottom: 40px;
  display: flex;
  justify-content: center;
}
.c-infoSection {
  /* 画像と表を同じボリュームに見せたい時 */
}
.c-infoSection__grid--equal {
  grid-template-columns: 1fr 1.4fr;
}
@media screen and (max-width: 768px) {
  .c-infoSection__grid--equal {
    grid-template-columns: 1fr;
    row-gap: 18px;
  }
}

/* =============================
  c-defTable コンパクト版（今回用）
============================= */
.c-defTable--compact th,
.c-defTable--compact td {
  padding: 18px 20px;
}
.c-defTable--compact th {
  width: 30%;
}
@media screen and (max-width: 768px) {
  .c-defTable--compact {
    min-width: 760px;
  }
}

/* =============================
  CTA Button（丸み＋グリーン）
============================= */
.c-refBtn {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 14px 26px;
  border-radius: 9999px;
  background: #66a789;
  border: 1.8px solid #66a789;
  color: #fff;
  text-decoration: none;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .c-refBtn {
    padding: 10px 20px;
  }
}
.c-refBtn__icon, .c-refBtn__ext {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.4rem;
}
.c-refBtn__text {
  font-size: 1.2rem;
}
@media screen and (max-width: 768px) {
  .c-refBtn__text {
    font-size: 1rem;
  }
}
.c-refBtn:hover {
  background-color: #fff;
  color: #66a789;
}
@media screen and (max-width: 768px) {
  .c-refBtn {
    width: min(80%, 420px);
    justify-content: center;
  }
}

/* =============================
  short stay section add-on
============================= */
.c-infoSection__facility {
  margin-top: 34px;
}
.c-infoSection__facility:first-of-type {
  margin-top: 24px;
}
@media screen and (max-width: 768px) {
  .c-infoSection__facility {
    margin-top: 26px;
  }
}
.c-infoSection__contact {
  margin-top: 40px;
  margin-bottom: 80px;
}
@media screen and (max-width: 768px) {
  .c-infoSection__contact {
    margin-top: 28px;
  }
}

.c-linkSection {
  margin-top: 80px;
}
@media screen and (max-width: 768px) {
  .c-linkSection {
    margin-top: 40px;
  }
}
.c-linkSection__inner {
  /* 必要ならここで左右の詰めなど */
}
.c-linkSection {
  /* 見出しとリストの距離 */
}
.c-linkSection .c-linkList {
  margin-top: 28px;
}
@media screen and (max-width: 768px) {
  .c-linkSection .c-linkList {
    margin-top: 22px;
  }
}

.c-infoList {
  display: grid;
  row-gap: 48px;
}
@media screen and (max-width: 768px) {
  .c-infoList {
    row-gap: 28px;
  }
}
.c-infoList__item {
  margin-bottom: 30px;
}
.c-infoList__title {
  display: inline-block;
  position: relative;
  margin: 0 0 14px;
  padding: 0 10px 4px 10px;
  font-size: 1.2rem;
  font-weight: normal;
  letter-spacing: 0.12em;
}
@media screen and (max-width: 768px) {
  .c-infoList__title {
    font-size: 1.1rem;
    padding: 0 6px 4px 6px;
  }
}
.c-infoList__title::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  border-top: 3px dotted #66a789;
}
.c-infoList__text {
  margin: 0;
  line-height: 2;
  padding-left: 2em;
}
@media screen and (max-width: 768px) {
  .c-infoList__text {
    padding-left: 0;
    font-size: 1rem;
  }
}
.c-infoList .c-docLink {
  padding-left: 2em;
}
@media screen and (max-width: 768px) {
  .c-infoList .c-docLink {
    padding-left: 0.6em;
  }
}
.c-infoList .c-docLink__link {
  font-weight: normal;
}

.c-contactBox {
  margin-top: 10px;
}
.c-contactBox__name {
  margin: 0 0 14px;
  font-size: 1.3rem;
  font-weight: 700;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 768px) {
  .c-contactBox__name {
    font-size: 1.1rem;
  }
}
.c-contactBox__line {
  margin: 0;
  line-height: 2;
}
.c-contactBox__line .telno {
  font-size: 1.3rem;
  letter-spacing: 1px;
}
.c-contactBox__tel {
  margin-top: 18px;
  margin-bottom: 18px;
  display: grid;
  row-gap: 6px;
}
.c-contactBox__label {
  font-weight: 700;
}
.c-contactBox__alert {
  margin: 22px 0 0;
  color: #e44e1f;
  font-weight: 700;
  line-height: 1.9;
}
.c-contactBox__docs {
  margin-top: 18px;
  display: grid;
  row-gap: 10px;
}
@media screen and (max-width: 768px) {
  .c-contactBox__name {
    margin-bottom: 10px;
  }
  .c-contactBox__tel {
    margin-top: 14px;
    margin-bottom: 14px;
  }
  .c-contactBox__alert {
    margin-top: 16px;
  }
}

/*!
Theme Name: youroufukushikyougikai
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: youroufukushikyougikai
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

youroufukushikyougikai is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
/* --------------------------
topページ
----------------------------- */
.home .mv {
  position: relative;
  height: 60vh;
}
.home .mv__slider,
.home .mv .swiper,
.home .mv .swiper-wrapper,
.home .mv .swiper-slide {
  height: 100%;
}
.home .mv .swiper-slide img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.home .mv .swiper-pagination-bullet {
  background-color: rgba(255, 255, 255, 0.7);
  opacity: 1;
  width: 12px;
  height: 12px;
  margin: 0 6px !important;
  transition: 0.3s ease;
}
.home .mv .swiper-pagination-bullet-active {
  background-color: #e44e1f;
  width: 14px;
  height: 14px;
}
.home .mv__catch {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .home .mv__catch {
    width: 100%;
    padding: 0 20px;
  }
}
@media screen and (max-width: 768px) {
  .home .mv__catch span {
    display: none;
  }
}
.home .mv__catch p {
  color: #4f473d;
  text-shadow: 0 0 18px rgb(255, 255, 255), 0 0 32px rgb(255, 255, 255), 0 0 48px rgb(255, 255, 255), 0 0 70px rgb(255, 255, 255);
  font-size: 2.4rem;
  font-weight: 600;
  letter-spacing: 0.15em;
}
@media screen and (max-width: 1024px) {
  .home .mv__catch p {
    font-size: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .home .mv__catch p {
    font-size: 1.6rem;
    letter-spacing: 0.08em;
    line-height: 1.5;
  }
}
.home {
  /* お知らせブロック -------------------- */
}
.home .news {
  padding: 80px 0;
  position: relative;
}
.home .news__bgimg.left {
  position: absolute;
  width: 260px;
  left: 0;
  top: 0;
}
.home .news__bgimg.right {
  position: absolute;
  width: 310px;
  right: 0;
  top: 0;
}
.home .news__inner {
  margin: 0 auto;
  padding: 0 20px;
}
.home .news {
  /* タブ */
}
.home .news__tabs {
  display: flex;
  gap: 8px;
  padding-left: 40px;
  flex-wrap: wrap;
  position: relative;
}
.home .news__tab {
  flex: 0 0 auto;
  min-width: 160px;
  padding: 18px 18px 10px;
  border-radius: 6px 6px 0 0;
  border: none;
  color: #fff;
  font-size: 1.18rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  cursor: pointer;
  line-height: 1;
  font-family: dnp-shuei-mgothic-std, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Yu Gothic", sans-serif;
}
.home .news__tab:hover {
  opacity: 0.7;
}
.home .news__tab:nth-child(1) {
  background: #4f473d;
}
.home .news__tab:nth-child(2) {
  background: #fca919;
}
.home .news__tab:nth-child(3) {
  background: #e44e1f;
}
.home .news__tab:nth-child(4) {
  background: #66a789;
}
.home .news {
  /* 一覧ボックス */
}
.home .news__box {
  position: relative;
  background: #fff;
  border-radius: 12px;
  border: 3px solid #f0ece7;
  padding: 32px 32px 28px;
  transition: border-color 0.25s;
}
.home .news {
  /* 枠色バリエーション */
}
.home .news__box--info {
  border-color: #fca919;
}
.home .news__box--event {
  border-color: #e44e1f;
}
.home .news__box--salon {
  border-color: #66a789;
}
.home .news__list {
  border-top: 1px solid #f0ece7;
  list-style: none;
}
.home .news {
  /* li（枠） */
}
.home .news__item {
  border-bottom: 1px solid #f0ece7;
}
.home .news {
  /* ★ 行全体クリック用リンク */
}
.home .news__link {
  display: grid;
  grid-template-columns: 120px 120px 1fr;
  align-items: center;
  gap: 16px;
  padding: 18px 0;
  text-decoration: none;
  color: inherit;
}
.home .news__label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 90px;
  padding: 8px 12px 6px;
  border-radius: 999px;
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  line-height: 1;
}
.home .news__label--salon {
  background: #66a789;
}
.home .news__label--event {
  background: #e44e1f;
}
.home .news__label--info {
  background: #fca919;
}
.home .news__date {
  font-size: 1.4rem;
  color: #66625d;
}
.home .news__title {
  font-size: 1.4rem;
  color: #4f473d;
  transition: color 0.2s;
}
.home .news {
  /* ホバー時 */
}
.home .news__link:hover .news__title {
  text-decoration: underline;
}
.home .news {
  /* 一覧ボタン */
}
.home .news__more {
  margin-top: 24px;
  text-align: right;
}
.home .news__more-link {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 10px 26px 10px 22px;
  border-radius: 999px;
  border: 1px solid #7a6b5c;
  background: #fff;
  font-size: 1.4rem;
  color: #33312e;
  text-decoration: none;
}
.home .news__panel {
  display: none;
}
.home .news__panel.is-active {
  display: block;
}
.home .news__more-icon {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  border: 1px solid #7a6b5c;
  position: relative;
}
.home .news__more-icon::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 52%;
  width: 6px;
  height: 6px;
  border-right: 2px solid #7a6b5c;
  border-bottom: 2px solid #7a6b5c;
  transform: translate(-50%, -50%) rotate(-45deg);
}
.home .news {
  /* タブレット */
}
@media screen and (max-width: 1024px) {
  .home .news__box {
    padding: 24px 20px 22px;
  }
  .home .news__link {
    grid-template-columns: 110px 110px 1fr;
  }
}
.home .news {
  /* SP */
}
@media screen and (max-width: 768px) {
  .home .news {
    padding: 56px 0;
  }
  .home .news__tabs {
    margin-bottom: 0;
    padding-left: 0;
    gap: 0;
  }
  .home .news__tab {
    font-size: 1rem;
    padding: 10px;
    min-width: auto;
    margin-right: 4px;
    width: 48%;
  }
  .home .news__tab:first-child, .home .news__tab:nth-child(2) {
    margin-bottom: 2px;
  }
  .home .news__panel .news__list > .news__item:nth-of-type(n + 3) {
    display: none;
  }
  .home .news__box {
    padding: 20px 16px 18px;
  }
  .home .news__list {
    padding-left: 0;
  }
  .home .news__link {
    grid-template-columns: 100px auto;
  }
  .home .news__link .news__title {
    grid-column: 1/-1;
  }
  .home .news__date {
    font-size: 0.9rem;
  }
  .home .news__title {
    font-size: 1.1rem;
  }
  .home .news__more {
    text-align: center;
  }
  .home .news__label {
    width: -moz-max-content;
    width: max-content;
    display: inline-flex;
    flex: 0 0 auto;
    font-size: 0.8rem;
  }
  .home .news__bgimg.right {
    width: 210px;
    top: auto;
    bottom: 0;
  }
  .home .news__bgimg.left {
    width: 185px;
  }
}
.home {
  /* サービス一覧 -------------------- */
}
.home .service {
  padding: 80px 0;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .home .service {
    padding: 60px 0;
  }
}
@media screen and (max-width: 768px) {
  .home .service {
    padding: 40px 0;
  }
}
.home .service__bg {
  background-color: #fca919;
  padding: 40px 0;
}
.home .service__inner {
  margin: 0 auto;
  padding: 0 20px;
}
@media screen and (max-width: 768px) {
  .home .service__inner {
    padding: 0 16px;
  }
}
.home .service__bgimg {
  width: 100%;
}
.home .service__bgimg.top {
  margin-bottom: -1px;
}
.home .service__bgimg.bottom {
  margin-top: -1px;
}
.home .service__bgdot {
  position: absolute;
}
.home .service__bgdot.left {
  width: 184px;
  left: 0;
  top: 104px;
}
@media screen and (max-width: 768px) {
  .home .service__bgdot.left {
    top: 0;
    width: 144px;
  }
}
.home .service__bgdot.right {
  width: 310px;
  right: 0;
  bottom: 40px;
}
@media screen and (max-width: 768px) {
  .home .service__bgdot.right {
    width: 220px;
  }
}
.home .service .title__01 {
  text-align: center;
  margin-bottom: 40px;
}
@media screen and (max-width: 768px) {
  .home .service .title__01 {
    margin-bottom: 24px;
  }
}
.home .service .title__01 span::after {
  background-color: #fff;
}
.home .service__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
@media screen and (max-width: 1024px) {
  .home .service__list {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
}
@media screen and (max-width: 768px) {
  .home .service__list {
    grid-template-columns: 1fr;
    gap: 16px;
  }
}
.home .service__item {
  display: flex;
  flex-direction: column;
  border-radius: 18px;
  overflow: hidden;
  background-color: #fff;
  text-decoration: none;
  color: inherit;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}
@media screen and (max-width: 768px) {
  .home .service__item {
    border-radius: 14px;
  }
}
.home .service__item:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.12);
}
.home .service__item:hover .service__icon {
  bottom: 0;
  right: 0;
}
.home .service__img {
  min-height: 138px;
  padding: 24px 16px 0px;
  background-color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.home .service__img img {
  width: 120px;
  margin: auto auto 0;
  line-height: 0;
  display: block;
}
.home .service__body {
  position: relative;
  padding: 18px 24px 18px;
  background-color: #fee9c3;
  display: flex;
  align-items: center;
  min-height: 80px;
  height: 100%;
}
@media screen and (max-width: 768px) {
  .home .service__body {
    padding: 14px 18px 14px;
  }
}
.home .service__text {
  text-align: center;
  font-size: 1.3rem;
  font-weight: 700;
  line-height: 1.6;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .home .service__text {
    font-size: 1.2rem;
  }
}
.home .service__icon {
  position: absolute;
  padding: 8px 0 0 6px;
  right: 0;
  bottom: 0;
  width: 56px;
  height: 56px;
  background-color: #66a789;
  border-radius: 100% 0 0 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 1.6rem;
  transition: transform 0.25s ease;
}
@media screen and (max-width: 768px) {
  .home .service__icon {
    width: 48px;
    height: 48px;
    font-size: 1.8rem;
  }
}
.home {
  /* 会費と募金 -------------------- */
}
.home .support {
  padding: 80px 0;
  background-color: #faf8f6;
}
@media screen and (max-width: 1024px) {
  .home .support {
    padding: 60px 0;
  }
}
@media screen and (max-width: 768px) {
  .home .support {
    padding: 40px 0;
  }
}
.home .support__inner {
  margin: 0 auto;
  padding: 0px;
}
@media screen and (max-width: 768px) {
  .home .support__inner {
    padding: 0 16px;
  }
}
.home .support__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 70px;
}
@media screen and (max-width: 768px) {
  .home .support__list {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}
.home .support__item {
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: 24px;
  overflow: hidden;
  background-color: #fff;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06);
  text-decoration: none;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.home .support__item:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.12);
}
.home .support__item:hover .support__icon {
  right: 0px;
  bottom: 0px;
}
.home .support__thumb {
  width: 100%;
  aspect-ratio: 4/3;
}
.home .support__thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.home .support__content {
  position: relative;
  background-color: #fca919;
  padding: 24px 28px 28px;
  min-height: 170px;
}
@media screen and (max-width: 768px) {
  .home .support__content {
    padding: 8px 20px 24px;
    min-height: auto;
  }
}
.home .support__title {
  margin-bottom: 30px;
  text-align: center;
  position: relative;
}
.home .support__title span {
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-align: center;
  position: relative;
}
@media screen and (max-width: 768px) {
  .home .support__title span {
    font-size: 1.3rem;
  }
}
.home .support__title span::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -10px;
  transform: translateX(-50%);
  width: 64px;
  height: 4px;
  border-radius: 999px;
  background: #fff;
}
.home .support__text {
  font-size: 1.2rem;
  line-height: 1.8;
  color: #4f473d;
}
@media screen and (max-width: 768px) {
  .home .support__text {
    font-size: 1.1rem;
  }
}
.home .support__icon {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 56px;
  height: 56px;
  background-color: #66a789;
  border-radius: 100% 0 0 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  transition: right 0.25s ease, bottom 0.25s ease;
  font-size: 1.4rem;
  padding: 8px 0 0 8px;
}
@media screen and (max-width: 768px) {
  .home .support__icon {
    width: 48px;
    height: 48px;
  }
  .home .support__icon::before {
    font-size: 1.8rem;
  }
}
.home {
  /* 広報 -------------------- */
}
.home .magazine__bg {
  padding: 80px 0;
  background-color: #fee9c3;
}
@media screen and (max-width: 1024px) {
  .home .magazine__bg {
    padding: 60px 0;
  }
}
@media screen and (max-width: 768px) {
  .home .magazine__bg {
    padding: 40px 0;
  }
}
.home .magazine__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 48px;
  padding: 0 20px;
}
@media screen and (max-width: 768px) {
  .home .magazine__inner {
    flex-direction: column;
    align-items: center;
    gap: 32px;
    padding: 0 16px;
  }
}
.home .magazine__balloon {
  position: relative;
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 1024px) {
  .home .magazine__balloon {
    flex: 0 0 320px;
  }
}
@media screen and (max-width: 768px) {
  .home .magazine__balloon {
    flex: 0 0 auto;
    width: 100%;
  }
}
.home .magazine__balloon::after {
  content: "";
  position: absolute;
  right: -30px;
  top: 50%;
  /* 三角形 */
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 30px 0 30px 40px;
  border-color: transparent transparent transparent #fcf0da;
  /* ===== SP：下向き三角 ===== */
}
@media screen and (max-width: 768px) {
  .home .magazine__balloon::after {
    right: auto;
    top: auto;
    left: 50%;
    bottom: -30px;
    transform: translateX(-50%);
    border-width: 40px 30px 0 30px;
    border-color: #fcf0da transparent transparent transparent;
  }
}
.home .magazine__balloon-body {
  width: 100%;
  aspect-ratio: 1/1;
  border-radius: 50%;
  background-color: #fcf0da;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 32px 32px 40px;
}
@media screen and (max-width: 768px) {
  .home .magazine__balloon-body {
    padding: 24px 24px 32px;
  }
}
.home .magazine__heading {
  font-size: 1.8rem;
  letter-spacing: 0.18em;
  margin-bottom: 12px;
}
@media screen and (max-width: 768px) {
  .home .magazine__heading {
    font-size: 1.4rem;
  }
}
.home .magazine__underline {
  display: inline-block;
  width: 72px;
  height: 4px;
  border-radius: 4px;
  background-color: #e44e1f;
  margin-bottom: 16px;
}
.home .magazine__lead {
  font-size: 1.4rem;
  line-height: 1.9;
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .home .magazine__lead {
    font-size: 1rem;
  }
}
.home .magazine__cover {
  flex: 1;
  background-color: #fff;
  border-radius: 24px;
  padding: 20px 20px 24px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
  text-align: center;
  display: block;
  text-decoration: none;
  color: inherit;
  cursor: pointer;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}
@media screen and (max-width: 1024px) {
  .home .magazine__cover {
    flex: 0 0 340px;
  }
}
@media screen and (max-width: 768px) {
  .home .magazine__cover {
    width: 100%;
    padding: 24px 16px 24px;
  }
}
.home .magazine__cover:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.12);
}
.home .magazine__cover-inner {
  border-radius: 16px;
  overflow: hidden;
  margin-bottom: 12px;
}
.home .magazine__cover-inner img {
  max-width: 310px;
  width: 100%;
  display: block;
  margin: auto;
}
.home .magazine__meta {
  display: inline-block;
  margin: 4px 0 0;
  padding: 4px 18px;
  border-radius: 8px;
  background-color: #333;
  color: #fff;
  font-size: 1.2rem;
  letter-spacing: 0.12em;
}

/* 協力バナー -------------------- */
.partner {
  padding: 140px 0 140px;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .partner {
    padding: 48px 0 64px;
  }
}
@media screen and (max-width: 768px) {
  .partner {
    padding: 40px 0 56px;
  }
}
.partner__dot {
  position: absolute;
  top: -40px;
  left: 0;
  width: 220px;
  overflow: hidden;
  z-index: -1;
}
.partner__inner {
  margin: 0 auto;
  padding: 0 20px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .partner__inner {
    padding: 0 16px;
  }
}
.partner__list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px 32px;
  align-items: stretch;
}
@media screen and (max-width: 1024px) {
  .partner__list {
    gap: 20px 24px;
  }
}
@media screen and (max-width: 768px) {
  .partner__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px 16px;
    padding: 0;
  }
}
.partner__item {
  list-style: none;
}
.partner__link {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 88px;
  padding: 8px 20px;
  background-color: #fff;
  border: 1px solid #e5d8c8;
  border-radius: 4px;
  text-decoration: none;
  transition: box-shadow 0.2s ease, transform 0.2s ease, border-color 0.2s ease;
}
@media screen and (max-width: 1024px) {
  .partner__link {
    height: 80px;
    padding: 10px 16px;
  }
}
@media screen and (max-width: 768px) {
  .partner__link {
    height: 72px;
    padding: 8px 12px;
  }
}
.partner__link:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06);
}
.partner__link img {
  max-width: 100%;
  max-height: 100%;
  height: auto;
  display: block;
}

.soshikizu {
  width: 80%;
  background: #fff;
  padding: 40px;
  border-radius: 16px;
}
@media screen and (max-width: 768px) {
  .soshikizu {
    width: 100%;
    padding: 5px;
  }
}

.salonlist table {
  table-layout: fixed;
  margin-bottom: 40px;
}
.salonlist th,
.salonlist td {
  word-break: break-word;
}
.salonlist th:nth-child(1),
.salonlist td:nth-child(1) {
  width: 31%;
}
.salonlist th:nth-child(2),
.salonlist td:nth-child(2) {
  width: 25%;
}
.salonlist th:nth-child(3),
.salonlist td:nth-child(3) {
  width: 25%;
}
.salonlist th:nth-child(4),
.salonlist td:nth-child(4) {
  width: 19%;
  text-align: center;
}

.p-memberMv {
  position: relative;
}
.p-memberMv__bg {
  background: url("./img/bg-kaihi.png") center bottom/cover no-repeat;
  padding: 120px 0 80px;
}
@media screen and (max-width: 768px) {
  .p-memberMv__bg {
    padding: 30px 10px 0px;
    background: none;
  }
}
.p-memberMv__inner {
  position: relative;
  z-index: 1;
}
.p-memberMv__content {
  max-width: 820px;
  margin: auto;
}
.p-memberMv__content p {
  line-height: 2.2;
  margin-bottom: 40px;
}
@media screen and (max-width: 768px) {
  .p-memberMv__content p {
    line-height: 1.8;
    margin-bottom: 20px;
  }
}

.p-download .file-list {
  padding: 0 20px 0 40px;
}
@media screen and (max-width: 768px) {
  .p-download .file-list {
    padding: 0 10px 0 18px;
  }
}

.p-access .c-infoSection {
  scroll-margin-top: 30px;
}
.p-access .c-infoSection__grid.accessbox {
  grid-template-columns: 1fr 54%;
  -moz-column-gap: 20px;
       column-gap: 20px;
}
@media screen and (max-width: 768px) {
  .p-access .c-infoSection__grid.accessbox {
    display: flex;
    flex-flow: column;
  }
}
.p-access .c-defTable--compact.c-defTable {
  background-color: transparent;
}
@media screen and (max-width: 768px) {
  .p-access .c-defTable--compact.c-defTable {
    min-width: auto;
  }
}
.p-access .c-defTable--compact.c-defTable th,
.p-access .c-defTable--compact.c-defTable td {
  background-color: transparent;
}
@media screen and (max-width: 768px) {
  .p-access .c-defTable--compact.c-defTable th,
  .p-access .c-defTable--compact.c-defTable td {
    display: block;
    padding: 4px;
  }
}
.p-access .c-defTable--compact.c-defTable th:last-child,
.p-access .c-defTable--compact.c-defTable td:last-child {
  border-bottom: 1px dotted #fca919;
}
.p-access .c-defTable--compact.c-defTable th {
  width: 26%;
  background: transparent;
  border-bottom: 1px dotted #fca919;
}
.p-access .c-defTable--compact.c-defTable th:last-child {
  border-bottom: 1px dotted #fca919;
}
@media screen and (max-width: 768px) {
  .p-access .c-defTable--compact.c-defTable th {
    width: 100%;
    border-bottom: none;
    padding-bottom: 0;
  }
}
@media screen and (max-width: 768px) {
  .p-access .c-defTable--compact.c-defTable td {
    border-top: none;
    padding-top: 0;
    padding-left: 1rem;
  }
}
.p-access .p-access__map {
  margin-top: 28px;
  border-radius: 10px;
  overflow: hidden;
}
.p-access .p-access__map iframe {
  display: block;
  width: 100%;
  height: 420px;
  border: 0;
}
@media screen and (max-width: 768px) {
  .p-access .p-access__map iframe {
    height: 300px;
  }
}

.p-contact {
  padding-top: 100px;
  margin-bottom: 80px;
}
.p-contact .wpcf7 form {
  margin: 0;
}
.p-contact .wpcf7-response-output {
  margin: 20px 0 0;
  padding: 12px 14px;
  font-size: 1.1rem;
}
.p-contact .wpcf7-spinner {
  margin-left: 10px;
}
.p-contact__lead {
  text-align: center;
  color: #4f473d;
  line-height: 1.9;
  margin: 0 0 44px;
}
@media screen and (max-width: 768px) {
  .p-contact__lead {
    margin-bottom: 28px;
    line-height: 1.8;
  }
}
.p-contact__form {
  max-width: 980px;
  margin: 0 auto;
}
.p-contact {
  /* 1行 */
}
.p-contact__row {
  display: grid;
  grid-template-columns: 260px 1fr;
  align-items: center;
  -moz-column-gap: 40px;
       column-gap: 40px;
  padding: 26px 0;
}
@media screen and (max-width: 768px) {
  .p-contact__row {
    grid-template-columns: 1fr;
    row-gap: 10px;
    padding: 18px 0;
  }
}
.p-contact__row {
  /* テキストエリア行だけ上寄せ */
}
.p-contact__row.is-textarea {
  align-items: start;
}
.p-contact__row.is-textarea .p-contact__label {
  padding-top: 10px;
}
.p-contact__label {
  display: flex;
  align-items: center;
  gap: 14px;
  color: #4f473d;
}
.p-contact__label label {
  font-weight: 700;
  letter-spacing: 0.06em;
}
.p-contact {
  /* 必須/任意タグ */
}
.p-contact__tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 52px;
  height: 26px;
  padding: 0 10px;
  font-size: 1.1rem;
  letter-spacing: 0.08em;
}
.p-contact__tag.is-required {
  background: #4f473d;
  color: #fff;
}
.p-contact__tag.is-optional {
  background: #fff;
  color: #4f473d;
}
@media screen and (max-width: 768px) {
  .p-contact__tag {
    min-width: 48px;
    height: 24px;
    font-size: 1rem;
  }
}
.p-contact__field input,
.p-contact__field textarea {
  width: 100%;
  border: 1px solid #dddddd;
  background: #fff;
  padding: 14px 16px;
  font-size: 1.2rem;
  color: #4f473d;
  border-radius: 2px;
  outline: none;
}
@media screen and (max-width: 768px) {
  .p-contact__field input,
  .p-contact__field textarea {
    padding: 12px 14px;
  }
}
.p-contact__field input:focus,
.p-contact__field textarea:focus {
  border-color: #66a789;
}
.p-contact__field {
  /* スクショの「郵便番号だけ短い」 */
}
.p-contact__field #zip {
  max-width: 240px;
}
@media screen and (max-width: 768px) {
  .p-contact__field #zip {
    max-width: 100%;
  }
}
.p-contact__field textarea {
  min-height: 320px;
  resize: vertical;
}
@media screen and (max-width: 768px) {
  .p-contact__field textarea {
    min-height: 240px;
  }
}
.p-contact__privacy {
  text-align: center;
  margin: 24px 0 34px;
}
.p-contact__privacy a {
  color: #4f473d;
  text-decoration: underline;
}
.p-contact__privacy a:hover {
  text-decoration: none;
}
@media screen and (max-width: 768px) {
  .p-contact__privacy {
    margin: 18px 0 26px;
  }
}
.p-contact__submit {
  text-align: center;
}
.p-contact__submit .wpcf7-submit.btn__02, .p-contact__submit .p-404 .p-searchBox input.wpcf7-submit[type=submit], .p-404 .p-searchBox .p-contact__submit input.wpcf7-submit[type=submit], .p-contact__submit .p-search .p-searchBox input.wpcf7-submit[type=submit], .p-search .p-searchBox .p-contact__submit input.wpcf7-submit[type=submit] {
  color: #fff;
  padding-left: 2rem;
  background-repeat: no-repeat;
  background-position: left 1.6rem center;
  background-size: 1.2rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23ffffff' d='M6.2 3.2a1 1 0 0 1 1.4 0l4.1 4.1a1 1 0 0 1 0 1.4l-4.1 4.1a1 1 0 1 1-1.4-1.4L9.6 8 6.2 4.6a1 1 0 0 1 0-1.4z'/%3E%3C/svg%3E");
}
.p-contact__submit .wpcf7-spinner {
  vertical-align: middle;
  margin-left: 0.8rem;
}
.p-contact .btn__02, .p-contact .p-404 .p-searchBox input[type=submit], .p-404 .p-searchBox .p-contact input[type=submit], .p-contact .p-search .p-searchBox input[type=submit], .p-search .p-searchBox .p-contact input[type=submit] {
  min-width: 360px;
  padding: 16px 28px;
  border: none;
}
@media screen and (max-width: 768px) {
  .p-contact .btn__02, .p-contact .p-404 .p-searchBox input[type=submit], .p-404 .p-searchBox .p-contact input[type=submit], .p-contact .p-search .p-searchBox input[type=submit], .p-search .p-searchBox .p-contact input[type=submit] {
    min-width: 86%;
    padding: 14px 22px;
  }
}

.p-pri .privacy__wrap {
  padding-top: 100px;
  padding-bottom: 100px;
  max-width: 1010px;
  margin: auto;
}
@media screen and (max-width: 768px) {
  .p-pri .privacy__wrap {
    padding-top: 40px;
    padding-bottom: 40px;
    width: 98%;
  }
}
.p-pri .privacy__wrap dl dt {
  border-left: 4px solid #66a789;
  padding-left: 10px;
  margin-bottom: 10px;
}
.p-pri .privacy__wrap dl dd {
  margin-bottom: 60px;
}
@media screen and (max-width: 768px) {
  .p-pri .privacy__wrap dl dd {
    margin-bottom: 40px;
    margin-left: 10px;
    font-size: 0.94rem;
  }
}
.p-pri .privacy__wrap .btn__01.contact {
  font-size: 1rem;
  min-width: 240px;
}

.p-recruit__toptext {
  text-align: center;
  margin-top: 40px;
}
.p-recruit .nodata {
  text-align: center;
  padding: 90px 0;
  font-size: 1.2rem;
}
.p-recruitSection {
  padding: 0 20px 40px;
}
@media screen and (max-width: 768px) {
  .p-recruitSection {
    padding: 0 10px 20px;
  }
}
.p-recruit__lead {
  padding: 80px 0;
  text-align: center;
  margin-bottom: 2.4rem;
}
@media screen and (max-width: 768px) {
  .p-recruit__lead {
    padding: 40px 0 10px;
  }
}
.p-recruit__header {
  margin: 0 auto 3.2rem;
  max-width: 92rem;
}
.p-recruit__section {
  padding: 0 40px;
  margin: 0 auto 4rem;
}
@media screen and (max-width: 768px) {
  .p-recruit__section {
    padding: 0 10px;
    margin: 0 auto 20px;
  }
}
.p-recruit__contactBox {
  max-width: 900px;
  margin: 2.4rem auto 0;
  padding: 2.4rem;
  background: #fff;
  border-radius: 1.2rem;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-recruit__contactBox {
    width: 90%;
    padding: 20px 18px;
  }
}
.p-recruit__contactBox .c-sectionTitle {
  text-align: center;
  justify-content: center;
  font-size: 1.3rem;
  background: #66a789;
  display: inline-block;
  border-radius: 90px;
  padding: 6px 40px;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .p-recruit__contactBox .c-sectionTitle {
    font-size: 1.1rem;
  }
}
@media screen and (max-width: 768px) {
  .p-recruit__contactBox .p-recruit__tel {
    margin-bottom: 4px;
  }
}
@media screen and (max-width: 768px) {
  .p-recruit__contactBox .p-recruit__fax {
    margin-top: 4px;
  }
}
@media screen and (max-width: 768px) {
  .p-recruit__contactBox .p-recruit__btn {
    margin-top: 10px;
  }
}
.p-recruit__btn {
  margin-top: 2.4rem;
  text-align: center;
}
.p-recruit__tit01 {
  font-weight: bold;
  font-size: 1.16rem;
}
@media screen and (max-width: 768px) {
  .p-recruit__tit01 {
    font-size: 1.08rem;
    margin-bottom: 5px;
  }
}
.p-recruit__contents {
  padding: 40px 20px 80px;
}
@media screen and (max-width: 768px) {
  .p-recruit__contents {
    padding: 40px 8px 60px;
  }
}
.p-recruit__contents .c-defTable {
  background-color: transparent;
}
.p-recruit .p-recruitTable {
  width: 100%;
  border-collapse: collapse;
}
.p-recruit .p-recruitTable th,
.p-recruit .p-recruitTable td {
  padding: 2rem 2rem 0.5rem;
  vertical-align: top;
  border-bottom: 1.8px dotted #d0c5b6;
}
@media screen and (max-width: 768px) {
  .p-recruit .p-recruitTable th,
  .p-recruit .p-recruitTable td {
    font-size: 0.98rem;
    padding: 8px 10px;
    display: block;
    width: 100%;
  }
}
.p-recruit .p-recruitTable th {
  width: 18rem;
  text-align: left;
  vertical-align: middle;
}
@media screen and (max-width: 768px) {
  .p-recruit .p-recruitTable th {
    border-bottom: none;
    padding-bottom: 0;
    padding-top: 12px;
  }
}
@media screen and (max-width: 768px) {
  .p-recruit .p-recruitTable td {
    padding-left: 20px;
    padding-top: 4px;
    line-height: 1.4;
  }
}
@media screen and (max-width: 768px) {
  .p-recruit .p-recruitTable tr {
    display: block;
  }
}

.p-search__lead {
  text-align: center;
}
.p-search .p-searchBox {
  max-width: 700px;
  margin: 60px auto;
  text-align: center;
}
.p-search .p-searchBox form {
  display: flex;
  gap: 10px;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .p-search .p-searchBox form {
    flex-direction: column;
    gap: 15px;
  }
}
.p-search .p-searchBox input[type=search] {
  flex: 1;
  padding: 18px 20px;
  font-size: 1.6rem;
  border: 1px solid #dddddd;
  border-radius: 6px;
}
.p-search .p-searchBox input[type=submit] {
  padding: 0 30px;
  height: 56px;
}

.p-searchSitemap {
  margin-top: 80px;
}
.p-searchSitemap__wrap {
  padding: 0 20px;
}
.p-searchSitemap__nav {
  display: flex;
  gap: 60px;
  margin-top: 30px;
}
@media screen and (max-width: 768px) {
  .p-searchSitemap__nav {
    flex-direction: column;
    gap: 30px;
  }
}
.p-searchSitemap__col {
  flex: 1;
}
.p-searchSitemap__col ul {
  list-style: none;
  padding: 0;
}
.p-searchSitemap__col li {
  margin-bottom: 12px;
}
.p-searchSitemap__col a {
  text-decoration: none;
  color: #4f473d;
  font-size: 1.16rem;
  line-height: 1.6;
}
.p-searchSitemap__col a:hover {
  text-decoration: underline;
}
.p-searchSitemap__col .is-sub {
  padding-left: 15px;
  font-size: 1.3rem;
  opacity: 0.85;
}

.p-searchResult .content__wrap {
  padding: 0 40px;
}
@media screen and (max-width: 768px) {
  .p-searchResult .content__wrap {
    padding: 0 20px;
  }
}
.p-searchResult__item .list {
  margin-bottom: 10px;
}
.p-searchResult__item .list a {
  color: #4f473d;
  text-decoration: underline;
  font-size: 1.1rem;
}
.p-searchResult__item .list a:hover {
  text-decoration: none;
}
.p-searchResult__item .list a i {
  padding-right: 4px;
}

.p-404__toptext {
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-404__toptext {
    margin-top: 0;
  }
}
.p-404__actions {
  display: flex;
  gap: 15px;
  margin-top: 20px;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .p-404__actions {
    flex-direction: column;
    align-items: center;
  }
}
.p-404__btn a {
  width: 250px;
  font-size: 1.1rem;
}
@media screen and (max-width: 768px) {
  .p-404__btn a {
    width: 200px;
    font-size: 0.9rem;
  }
}
.p-404__links {
  margin-top: 15px;
  padding-left: 1.2em;
}
.p-404__links li {
  margin-bottom: 10px;
}
.p-404__links a {
  color: #4f473d;
  text-decoration: underline;
}
.p-404 .p-searchBox {
  max-width: 640px;
  margin: 40px auto;
  text-align: center;
}
.p-404 .p-searchBox form {
  display: flex;
  gap: 10px;
  justify-content: center;
}
.p-404 .p-searchBox input[type=search] {
  flex: 1;
  padding: 14px 16px;
  font-size: 1.5rem;
  border: 1px solid #dddddd;
  border-radius: 6px;
}
.p-404 .p-searchBox input[type=submit] {
  height: 48px;
  padding: 0 24px;
  font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
  .p-404 .p-searchBox {
    max-width: 90%;
    margin: 30px auto;
  }
  .p-404 .p-searchBox form {
    flex-direction: column;
    gap: 10px;
  }
  .p-404 .p-searchBox input[type=search] {
    padding: 10px 14px;
    font-size: 1.4rem;
  }
  .p-404 .p-searchBox input[type=submit] {
    height: 42px;
    font-size: 1.3rem;
  }
}

.p-bokinMV {
  position: relative;
}
.p-bokinMV__bg {
  padding: 120px 0 80px;
}
.p-bokinMV__bg::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: url("./img/bokin_mv.jpg") center bottom/cover no-repeat;
  background-size: cover;
  filter: blur(10px);
  z-index: -1;
  transform: scale(1.1);
}
@media screen and (max-width: 768px) {
  .p-bokinMV__bg {
    padding: 30px 10px 0px;
    background: none;
  }
}
.p-bokinMV__inner {
  position: relative;
  z-index: 1;
}
.p-bokinMV__content {
  max-width: 980px;
  margin: auto;
  background: rgba(255, 255, 255, 0.65);
  padding: 20px 40px;
}
@media screen and (max-width: 768px) {
  .p-bokinMV__content {
    padding: 15px 20px;
  }
}
.p-bokinMV__content p {
  line-height: 2.2;
  margin-bottom: 40px;
}
@media screen and (max-width: 768px) {
  .p-bokinMV__content p {
    line-height: 1.8;
    margin-bottom: 20px;
  }
}

.p-bokin .topflex {
  display: flex;
  gap: 40px;
}
.p-bokin .topflex__img {
  width: 400px;
}
.p-bokin .topflex__content {
  flex: 1;
}

.donation-guide {
  margin: 20px auto;
}
.donation-guide .donation-item {
  display: flex;
  margin: 0;
  border-bottom: none;
}
@media screen and (max-width: 768px) {
  .donation-guide .donation-item {
    flex-direction: column;
  }
}
.donation-guide .donation-item dt {
  width: 300px;
  padding: 20px 15px;
  font-weight: bold;
  display: flex;
  align-items: center;
  background-color: #fee9c3;
  border-bottom: 1px solid #fdc25c;
}
@media screen and (max-width: 768px) {
  .donation-guide .donation-item dt {
    width: 100%;
    padding: 10px 10px;
  }
}
.donation-guide .donation-item dd {
  flex: 1;
  padding: 20px 15px;
  margin: 0;
  background-color: #fff;
  border-bottom: 1px solid #fdc25c;
}
.donation-guide .price-list {
  list-style: none;
  padding: 0;
  margin: 10px 0 0 0;
}
.donation-guide .price-list li {
  display: flex;
  justify-content: space-between;
  max-width: 350px;
  border-bottom: 1px dotted #ccc;
}

/*!
Theme Name: youroufukushikyougikai
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: youroufukushikyougikai
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

youroufukushikyougikai is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
.disasterArchive {
  padding: 40px 0;
}
@media screen and (max-width: 1024px) {
  .disasterArchive {
    padding: 32px 0;
  }
}
@media screen and (max-width: 768px) {
  .disasterArchive {
    padding: 24px 0;
  }
}
.disasterArchive__inner {
  margin: 0 auto;
  padding: 0 20px;
}
@media screen and (max-width: 768px) {
  .disasterArchive__inner {
    padding: 0 16px;
  }
}
.disasterArchive__header {
  margin-bottom: 24px;
}
@media screen and (max-width: 768px) {
  .disasterArchive__header {
    margin-bottom: 16px;
  }
}
.disasterArchive__title {
  font-size: 2rem;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .disasterArchive__title {
    font-size: 1.5rem;
  }
}
.disasterArchive__lead {
  margin: 40px auto;
  line-height: 1.7;
  text-align: center;
  font-size: 1.1rem;
}
.disasterArchive__list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
}
.disasterArchive__empty {
  padding: 24px 0;
}
.disasterArchive__pager {
  margin-top: 24px;
}

.disasterCard {
  overflow: hidden;
  background: #fff;
  padding: 0 10px;
  border-radius: 8px;
  position: relative;
  border: 2px solid #fff;
}
.disasterCard:hover {
  border-color: #fee9c3;
}
.disasterCard.is-important {
  border-width: 2px;
}
.disasterCard__link {
  display: block;
  padding: 16px;
  text-decoration: none;
  color: inherit;
}
@media screen and (max-width: 768px) {
  .disasterCard__link {
    padding: 14px;
  }
}
.disasterCard__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-bottom: 8px;
}
.disasterCard__date {
  font-weight: 700;
}
.disasterCard__badge {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 0.875rem;
  background-color: #e44e1f;
  color: #fff;
}
.disasterCard__badge.is-important {
  font-weight: 700;
}
.disasterCard__title {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.4;
  position: relative;
  padding-left: 16px;
}
.disasterCard__title::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 6px;
  height: 1.6em;
  background-color: #66a789;
  border-radius: 999px;
}
.disasterCard__excerpt {
  margin-top: 8px;
  line-height: 1.7;
}

.disasterSingle {
  padding: 40px 0;
}
@media screen and (max-width: 768px) {
  .disasterSingle {
    padding: 24px 0;
  }
}
.disasterSingle__inner {
  margin: 0 auto 140px;
  padding: 0 20px;
}
@media screen and (max-width: 768px) {
  .disasterSingle__inner {
    padding: 0 16px;
  }
}
.disasterSingle__header {
  padding: 18px 16px;
  background-color: #fff;
  border-radius: 12px;
  margin-top: 80px;
}
.disasterSingle__header.is-important {
  border-width: 2px;
}
.disasterSingle__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
}
.disasterSingle__date {
  font-weight: 700;
}
.disasterSingle__badge {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 0.875rem;
  background-color: #e44e1f;
  color: #fff;
}
.disasterSingle__badge.is-important {
  font-weight: 700;
}
.disasterSingle__title {
  font-size: 1.6rem;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .disasterSingle__title {
    font-size: 1.3rem;
  }
}
.disasterSingle__content {
  margin-top: 40px;
  line-height: 1.9;
}
.disasterSingle__content p {
  margin-top: 14px;
  font-size: 1.1rem;
}
.disasterSingle__attachment {
  margin-top: 40px;
}
.disasterSingle__attachmentLink {
  position: relative;
  padding-left: 1.6em;
  display: inline-block;
  text-decoration: underline;
  color: #4f473d;
}
.disasterSingle__attachmentLink::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.35em;
  width: 0.9em;
  height: 0.9em;
  border-radius: 50%;
  background-color: #66a789;
}
.disasterSingle__attachmentLink:hover {
  text-decoration: none;
  font-weight: bold;
}
.disasterSingle__nav {
  margin-top: 26px;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 12px;
}
@media screen and (max-width: 768px) {
  .disasterSingle__nav {
    display: flex;
    justify-content: space-between;
  }
}
@media screen and (max-width: 768px) {
  .disasterSingle__navItem {
    text-align: center;
  }
}
.disasterSingle__navItem:nth-child(1) {
  text-align: left;
}
@media screen and (max-width: 768px) {
  .disasterSingle__navItem:nth-child(1) {
    text-align: center;
  }
}
.disasterSingle__navItem:nth-child(3) {
  text-align: right;
}
@media screen and (max-width: 768px) {
  .disasterSingle__navItem:nth-child(3) {
    text-align: center;
  }
}
.disasterSingle__navItem a {
  background: #fee9c3;
  padding: 20px 50px;
  border-radius: 90px;
  color: #4f473d;
}
@media screen and (max-width: 768px) {
  .disasterSingle__navItem a {
    padding: 6px 10px;
  }
}

.disasterBtn {
  padding: 40px 0;
}
@media screen and (max-width: 1024px) {
  .disasterBtn {
    padding: 32px 0;
  }
}
@media screen and (max-width: 768px) {
  .disasterBtn {
    padding: 24px 0;
  }
}
.disasterBtn__inner {
  margin: 0 auto;
  padding: 0 20px;
}
@media screen and (max-width: 768px) {
  .disasterBtn__inner {
    padding: 0 16px;
  }
}
.disasterBtn__link {
  margin: 0 auto;
  max-width: 760px;
  min-height: 120px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  padding: 26px 28px;
  border-radius: 10px;
  text-decoration: none;
  color: #fff;
  background: #e44e1f;
}
@media screen and (max-width: 768px) {
  .disasterBtn__link {
    min-height: auto;
    padding: 18px 16px;
    gap: 14px;
  }
}
.disasterBtn i {
  font-size: 2rem;
}
.disasterBtn__text {
  display: grid;
  gap: 8px;
  text-align: left;
}
@media screen and (max-width: 768px) {
  .disasterBtn__text {
    gap: 6px;
  }
}
.disasterBtn__label {
  font-size: 1.8rem;
  font-weight: 800;
  line-height: 1.2;
}
@media screen and (max-width: 768px) {
  .disasterBtn__label {
    font-size: 1.25rem;
  }
}
.disasterBtn__sub {
  font-size: 1.1rem;
  font-weight: 600;
  line-height: 1.5;
  opacity: 0.95;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
@media screen and (max-width: 768px) {
  .disasterBtn__sub {
    font-size: 1rem;
    -webkit-line-clamp: 3;
  }
}

/*!
Theme Name: youroufukushikyougikai
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: youroufukushikyougikai
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

youroufukushikyougikai is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
.backnumber {
  padding: 40px 0 80px;
}
@media screen and (max-width: 1024px) {
  .backnumber {
    padding: 32px 0 64px;
  }
}
@media screen and (max-width: 768px) {
  .backnumber {
    padding: 24px 0 56px;
  }
}
.backnumber__toptext {
  margin: 80px auto 60px;
  text-align: center;
  font-size: 1.1rem;
}
@media screen and (max-width: 768px) {
  .backnumber__toptext {
    font-size: 0.8rem;
  }
}
.backnumber__head {
  margin-bottom: 18px;
}
@media screen and (max-width: 768px) {
  .backnumber__head {
    margin-bottom: 14px;
  }
}
.backnumber__title {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 1.5rem;
  font-weight: 700;
  color: #2b2b2b;
  letter-spacing: 0.02em;
  margin-bottom: 40px;
}
@media screen and (max-width: 768px) {
  .backnumber__title {
    font-size: 1.25rem;
    gap: 10px;
  }
}
.backnumber__titleBar {
  width: 6px;
  height: 46px;
  border-radius: 999px;
  background: #66a789;
  flex: 0 0 auto;
}
@media screen and (max-width: 768px) {
  .backnumber__titleBar {
    height: 24px;
  }
}
.backnumber__layout {
  display: grid;
  grid-template-columns: 1fr 260px;
  gap: 32px;
  margin-bottom: 90px;
}
@media screen and (max-width: 1024px) {
  .backnumber__layout {
    grid-template-columns: 1fr 240px;
    gap: 24px;
  }
}
@media screen and (max-width: 768px) {
  .backnumber__layout {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
.backnumber__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 26px 26px;
  list-style: none;
  padding: 0;
  margin: 0;
}
@media screen and (max-width: 1024px) {
  .backnumber__grid {
    gap: 20px;
  }
}
@media screen and (max-width: 768px) {
  .backnumber__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
  }
}
.backnumber__bottom {
  margin-top: 46px;
  display: flex;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .backnumber__bottom {
    margin-top: 32px;
  }
}
.backnumber__bottom .btn__01 {
  border: none;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.03);
}
.backnumber__home {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 14px 22px;
  border-radius: 999px;
  background: #fff;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06);
  text-decoration: none;
  color: #2b2b2b;
  font-weight: 700;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 768px) {
  .backnumber__home {
    padding: 12px 18px;
    font-size: 0.95rem;
  }
}
.backnumber__home:hover {
  opacity: 0.85;
}
.backnumber__homeIcon {
  width: 28px;
  height: 28px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  background: #2b2b2b;
  color: #fff;
  font-size: 1.1rem;
  line-height: 1;
}

/* ===== card ===== */
.bn-card {
  display: block;
  text-decoration: none;
  color: inherit;
}
.bn-card__thumb {
  background: #fff;
  border-radius: 18px;
  padding: 14px;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.06);
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .bn-card__thumb {
    padding: 10px;
    border-radius: 16px;
  }
}
.bn-card__thumb img {
  width: 100%;
  aspect-ratio: 3/4;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  display: block;
  background: #fff;
  border-radius: 10px;
}
.bn-card__date {
  margin: -12px auto 0;
  width: calc(100% - 28px);
  background: #4a3f35;
  color: #fff;
  text-align: center;
  font-weight: 700;
  padding: 8px 10px;
  border-radius: 8px;
  font-size: 0.95rem;
  letter-spacing: 0.03em;
  box-shadow: 0 10px 18px rgba(0, 0, 0, 0.08);
}
@media screen and (max-width: 768px) {
  .bn-card__date {
    width: calc(100% - 20px);
    font-size: 0.82rem;
    padding: 7px 8px;
    border-radius: 7px;
  }
}
.bn-card:hover .bn-card__thumb {
  transform: translateY(-2px);
  transition: transform 0.2s ease;
}

/* ===== side ===== */
.bn-side {
  position: relative;
  padding-left: 26px;
  padding-top: 20px;
  padding-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .bn-side {
    padding-left: 0;
  }
}
.bn-side::before {
  content: "";
  position: absolute;
  left: 0;
  top: 4px;
  bottom: 0;
  width: 1px;
  background: rgba(0, 0, 0, 0.12);
}
@media screen and (max-width: 768px) {
  .bn-side::before {
    display: none;
  }
}
.bn-side__title {
  font-size: 1rem;
  font-weight: 800;
  margin: 0 0 12px;
  padding-top: 10px;
  padding-bottom: 10px;
  border-bottom: 2.2px dotted #fca919;
  color: #2b2b2b;
}
.bn-side__list {
  list-style: none;
  padding: 0;
  margin: 0 0 18px;
}
.bn-side__item {
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}
.bn-side__link {
  position: relative;
  display: block;
  padding: 12px 10px 12px 26px;
  text-decoration: none;
  color: #2b2b2b;
  font-weight: 600;
}
.bn-side__link::before {
  content: "";
  position: absolute;
  left: 10px;
  top: 50%;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #ef7b2d;
  transform: translateY(-50%);
}
.bn-side__link:hover {
  opacity: 0.85;
}
.bn-side__link.is-active {
  font-weight: 800;
}
.bn-side__select {
  margin-top: 14px;
}
.bn-side__dropdown {
  width: 100%;
  height: 44px;
  border-radius: 6px;
  border: 1px solid rgba(0, 0, 0, 0.18);
  background: #fff;
  padding: 0 12px;
  font-weight: 600;
}
@media screen and (max-width: 768px) {
  .bn-side__dropdown {
    height: 42px;
  }
}

.bn-single {
  background: #fbf7ef;
  padding: 40px 0 80px;
}
@media screen and (max-width: 1024px) {
  .bn-single {
    padding: 32px 0 64px;
  }
}
@media screen and (max-width: 768px) {
  .bn-single {
    padding: 24px 0 56px;
  }
}
.bn-single__inner {
  margin: 80px auto 0;
}
.bn-single__head {
  text-align: left;
  margin-bottom: 18px;
}
@media screen and (max-width: 768px) {
  .bn-single__head {
    margin-bottom: 14px;
  }
}
.bn-single__title {
  font-size: 1.6rem;
  font-weight: 800;
  margin: 0 0 6px;
  color: #2b2b2b;
}
@media screen and (max-width: 768px) {
  .bn-single__title {
    font-size: 1.25rem;
  }
}
.bn-single__meta {
  margin: 0;
  font-weight: 700;
  color: rgba(0, 0, 0, 0.65);
}
.bn-single__layout {
  display: grid;
  grid-template-columns: 1fr 280px;
  gap: 28px;
}
@media screen and (max-width: 1024px) {
  .bn-single__layout {
    grid-template-columns: 1fr 240px;
    gap: 22px;
  }
}
@media screen and (max-width: 768px) {
  .bn-single__layout {
    grid-template-columns: 1fr;
    gap: 16px;
  }
}
.bn-single__pdf {
  background: #fff;
  border-radius: 18px;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.06);
  overflow: hidden;
}
.bn-single__pdf iframe {
  width: 100%;
  height: 820px;
  border: 0;
  display: block;
}
@media screen and (max-width: 1024px) {
  .bn-single__pdf iframe {
    height: 720px;
  }
}
@media screen and (max-width: 768px) {
  .bn-single__pdf iframe {
    height: 520px;
  }
}
.bn-single__actions {
  margin-top: 16px;
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  .bn-single__actions {
    gap: 10px;
  }
}
.bn-single__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 16px;
  border-radius: 10px;
  background: #2b2b2b;
  color: #fff;
  text-decoration: none;
  font-weight: 800;
  letter-spacing: 0.02em;
  min-width: auto;
}
@media screen and (max-width: 768px) {
  .bn-single__btn {
    width: 100%;
    padding: 12px 14px;
  }
}
.bn-single__btn:hover {
  opacity: 0.85;
}
.bn-single__btn.is-sub {
  background: #fff;
  color: #2b2b2b;
  border: 1px solid rgba(0, 0, 0, 0.18);
}
.bn-single__btnNote {
  margin-left: 8px;
  font-weight: 600;
  font-size: 0.85em;
  opacity: 0.85;
}
.bn-single__notice {
  background: #fff;
  border-radius: 12px;
  padding: 14px 16px;
  border: 1px solid rgba(0, 0, 0, 0.1);
  font-weight: 700;
}
.bn-single__content {
  margin-top: 18px;
  background: #fff;
  border-radius: 18px;
  padding: 18px 20px;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.05);
}
@media screen and (max-width: 768px) {
  .bn-single__content {
    padding: 16px;
    border-radius: 16px;
  }
}
.bn-single__content p {
  line-height: 1.9;
}
.bn-single__cover {
  background: #fff;
  border-radius: 18px;
  padding: 14px;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.06);
}
.bn-single__cover img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 10px;
}
.bn-single__coverDummy {
  width: 100%;
  aspect-ratio: 3/4;
  border-radius: 10px;
  background: rgba(0, 0, 0, 0.06);
  display: grid;
  place-items: center;
  font-weight: 800;
  color: rgba(0, 0, 0, 0.55);
}
.bn-single__back {
  margin-top: 14px;
}
@media screen and (max-width: 768px) {
  .bn-single__back {
    margin-top: 10px;
  }
}
.bn-single__backLink {
  display: inline-flex;
  justify-content: center;
  width: 100%;
  padding: 12px 14px;
  min-width: auto;
  font-size: 1rem;
  border: none;
  margin-top: 80px;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.02);
}
.bn-single__backLink:hover {
  opacity: 0.85;
}

/*!
Theme Name: youroufukushikyougikai
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: youroufukushikyougikai
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

youroufukushikyougikai is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
@media screen and (max-width: 1024px) {
  .single {
    padding: 32px 0 64px;
  }
}
@media screen and (max-width: 768px) {
  .single {
    padding: 24px 0 56px;
  }
}
.single__side {
  position: relative;
  padding-left: 26px;
  padding-top: 20px;
  padding-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .single__side {
    padding-left: 0;
  }
}
.single__side::before {
  content: "";
  position: absolute;
  left: 0;
  top: 4px;
  bottom: 0;
  width: 1px;
  background: rgba(0, 0, 0, 0.12);
}
@media screen and (max-width: 768px) {
  .single__side::before {
    display: none;
  }
}
.single__side__title {
  font-size: 1rem;
  font-weight: 800;
  margin: 0 0 12px;
  padding-top: 10px;
  padding-bottom: 10px;
  border-bottom: 2.2px dotted #fca919;
  color: #2b2b2b;
}
.single__side__list {
  list-style: none;
  padding: 0;
  margin: 0 0 18px;
}
.single__side__item {
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}
.single__side__link {
  position: relative;
  display: block;
  padding: 12px 10px 12px 26px;
  text-decoration: none;
  color: #2b2b2b;
  font-weight: 600;
}
.single__side__link::before {
  content: "";
  position: absolute;
  left: 10px;
  top: 50%;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #ef7b2d;
  transform: translateY(-50%);
}
.single__side__link:hover {
  opacity: 0.85;
}
.single__side__link.is-active {
  font-weight: 800;
}
.single__side__select {
  margin-top: 14px;
}
.single__side__dropdown {
  width: 100%;
  height: 44px;
  border-radius: 6px;
  border: 1px solid rgba(0, 0, 0, 0.18);
  background: #fff;
  padding: 0 12px;
  font-weight: 600;
}
@media screen and (max-width: 768px) {
  .single__side__dropdown {
    height: 42px;
  }
}
.single__inner {
  margin: 80px auto 0;
}
.single__head {
  text-align: left;
  margin-bottom: 18px;
}
@media screen and (max-width: 768px) {
  .single__head {
    margin-bottom: 14px;
  }
}
.single__title {
  font-size: 1.6rem;
  font-weight: 800;
  margin: 0 0 6px;
  color: #2b2b2b;
}
@media screen and (max-width: 768px) {
  .single__title {
    font-size: 1.25rem;
  }
}
.single__meta {
  margin: 0;
  font-weight: 700;
  color: rgba(0, 0, 0, 0.65);
}
.single__layout {
  display: grid;
  grid-template-columns: 1fr 280px;
  gap: 28px;
}
@media screen and (max-width: 1024px) {
  .single__layout {
    grid-template-columns: 1fr 240px;
    gap: 22px;
  }
}
@media screen and (max-width: 768px) {
  .single__layout {
    grid-template-columns: 1fr;
    gap: 16px;
  }
}
.single__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 16px;
  border-radius: 10px;
  background: #2b2b2b;
  color: #fff;
  text-decoration: none;
  font-weight: 800;
  letter-spacing: 0.02em;
  min-width: auto;
}
@media screen and (max-width: 768px) {
  .single__btn {
    width: 100%;
    padding: 12px 14px;
  }
}
.single__btn:hover {
  opacity: 0.85;
}
.single__btn.is-sub {
  background: #fff;
  color: #2b2b2b;
  border: 1px solid rgba(0, 0, 0, 0.18);
}
.single__btnNote {
  margin-left: 8px;
  font-weight: 600;
  font-size: 0.85em;
  opacity: 0.85;
}
.single__notice {
  background: #fff;
  border-radius: 12px;
  padding: 14px 16px;
  border: 1px solid rgba(0, 0, 0, 0.1);
  font-weight: 700;
}
.single__content {
  padding: 18px 0;
}
@media screen and (max-width: 768px) {
  .single__content {
    padding: 16px;
    border-radius: 16px;
  }
}
.single__content p {
  line-height: 1.9;
}
.single__back {
  margin-top: 14px;
}
@media screen and (max-width: 768px) {
  .single__back {
    margin-top: 10px;
  }
}
.single__backLink {
  display: inline-flex;
  justify-content: center;
  width: 100%;
  padding: 12px 14px;
  min-width: auto;
  font-size: 1rem;
  border: none;
  margin-top: 80px;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.02);
}
.single__backLink:hover {
  opacity: 0.85;
}

/*!
Theme Name: youroufukushikyougikai
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: youroufukushikyougikai
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

youroufukushikyougikai is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
.archive {
  display: grid;
  gap: 16px;
}
@media screen and (max-width: 768px) {
  .archive {
    gap: 12px;
  }
}
.archive__item {
  overflow: hidden;
  margin-bottom: 20px;
}
.archive__item:hover {
  opacity: 0.7;
}
.archive__link {
  display: grid;
  grid-template-columns: 220px 1fr;
  gap: 16px;
  padding: 14px;
  text-decoration: none;
  color: inherit;
}
@media screen and (max-width: 1024px) {
  .archive__link {
    grid-template-columns: 200px 1fr;
  }
}
@media screen and (max-width: 768px) {
  .archive__link {
    grid-template-columns: 1fr;
    gap: 12px;
  }
}
.archive__link:hover {
  opacity: 0.9;
}
.archive__thumb img {
  width: 100%;
  height: 100%;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 12px;
}
@media screen and (max-width: 768px) {
  .archive__thumb img {
    height: auto;
  }
}
.archive__thumbDummy {
  width: 100%;
  aspect-ratio: 16/10;
  border-radius: 12px;
  background: rgba(0, 0, 0, 0.06);
  display: grid;
  place-items: center;
  font-weight: 800;
  color: rgba(0, 0, 0, 0.55);
}
.archive__meta {
  display: flex;
  align-items: center;
  gap: 2px;
  margin: 0 0 8px;
  font-size: 0.9rem;
  font-weight: 700;
  color: rgba(0, 0, 0, 0.65);
}
.archive__meta time {
  white-space: nowrap;
  font-weight: 600;
}
.archive__meta .news__label {
  font-size: 0.8rem;
  line-height: 1;
}
.archive__title {
  margin: 0 0 8px;
  font-size: 1.1rem;
  font-weight: 800;
  line-height: 1.45;
  color: #2b2b2b;
}
@media screen and (max-width: 768px) {
  .archive__title {
    font-size: 1.05rem;
  }
}
.archive__excerpt {
  margin: 0;
  line-height: 1.8;
  color: rgba(0, 0, 0, 0.75);
}
.archive__pager {
  margin-top: 18px;
}

/* ==========================
  Archive Pager
========================== */
.archive__pager {
  margin-top: 60px;
  text-align: center;
}
.archive__pager .pagination {
  display: inline-block;
}
.archive__pager .nav-links {
  display: flex;
  align-items: center;
  gap: 10px;
}
.archive__pager .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  height: 40px;
  padding: 0 12px;
  border-radius: 20px;
  background-color: #fff;
  border: 1px solid #f8e2bd;
  color: #4f473d;
  font-size: 1.2rem;
  font-weight: 500;
  text-decoration: none;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
.archive__pager .page-numbers:hover {
  background-color: #fee9c3;
  border-color: #fca919;
}
.archive__pager {
  /* 現在のページ */
}
.archive__pager .page-numbers.current {
  background-color: #fca919;
  border-color: #fca919;
  color: #fff;
  font-weight: 700;
  pointer-events: none;
}
.archive__pager {
  /* 前へ・次へ */
}
.archive__pager .page-numbers.prev,
.archive__pager .page-numbers.next {
  font-size: 1.6rem;
  padding: 0 14px;
}
@media screen and (max-width: 768px) {
  .archive__pager {
    margin-top: 40px;
  }
  .archive__pager .nav-links {
    gap: 6px;
  }
  .archive__pager .page-numbers {
    min-width: 36px;
    height: 36px;
    font-size: 1.3rem;
  }
}/*# sourceMappingURL=style.css.map */