@charset "UTF-8";
*,
*::before,
*::after {
  box-sizing: border-box;
}

html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
ol,
dl,
li,
dt,
dd,
p,
div,
span,
img,
a,
table,
tr,
th,
td {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: normal;
  font-size: 100%;
  vertical-align: baseline;
}

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

ol,
ul {
  list-style: none;
}

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

a {
  color: inherit;
  text-decoration: none;
}

button {
  margin: 0;
  padding: 0;
  border: none;
  box-shadow: none;
  background: transparent;
  cursor: pointer;
  font: inherit;
}

input,
select,
textarea {
  font: inherit;
  color: inherit;
  vertical-align: top;
}

option {
  color: black;
}

body {
  background: #F9F6EB;
  color: #333;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.235;
}
body.is-fixed {
  position: fixed;
  width: 100%;
  overflow: hidden;
  top: 0;
  left: 0;
}

a {
  transition: opacity 0.2s ease-in;
}

.u-hidden-sp {
  display: none;
}
@media screen and (min-width: 1100px) {
  .u-hidden-sp {
    display: initial;
  }
}

@media screen and (min-width: 768px) and (max-width: 1099.98px) {
  .u-hidden-tb {
    display: none;
  }
}

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

.a-fadeIn {
  opacity: 0;
  transform: translateY(-20px);
  transition: opacity 1s ease-out 0.5s, transform 1s ease-out 0.5s;
}
.a-fadeIn.is-show {
  opacity: 1;
  transform: translateY(0);
}

.l-inner {
  padding-inline: 20px;
  max-width: 1320px;
  margin-inline: auto;
}

.l-main {
  margin-top: 118px;
}
@media screen and (min-width: 652px) and (max-width: 1099.98px) {
  .l-main {
    margin-top: 62px;
  }
}
@media screen and (min-width: 1100px) {
  .l-main {
    margin-top: 60px;
  }
}

.l-mainContents {
  padding-inline: 20px;
  max-width: 1320px;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  gap: 61px;
}
@media screen and (min-width: 1100px) {
  .l-mainContents {
    flex-direction: row;
    gap: 59px;
  }
}

.l-mainBody {
  flex-grow: 1;
}
@media screen and (min-width: 1100px) {
  .l-mainBody {
    width: calc(100% - 59px - 340px);
  }
}

@media screen and (min-width: 1100px) {
  .l-side {
    flex-shrink: 0;
    width: 340px;
    height: -moz-fit-content;
    height: fit-content;
    padding-top: 7px;
  }
}

.p-loading {
  position: fixed;
  z-index: 9999;
  inset: 0;
  width: 100%;
  height: 100vh;
  background: #F9F6EB;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 66px;
  transition: opacity 0.5s ease;
}

.p-loading__hatImage img {
  width: 90px;
  height: 82px;
  transform: translateY(-20%);
  animation: bound 1s linear infinite;
}
@media screen and (min-width: 1100px) {
  .p-loading__hatImage img {
    width: 180px;
    height: 164px;
  }
}

@keyframes bound {
  0% {
    transform: translateY(-20%);
  }
  40% {
    transform: translateY(0) scale(1, 1);
  }
  50% {
    transform: translateY(0) scale(1.1, 0.9);
  }
  60% {
    transform: translateY(0) scale(1, 1);
  }
  100% {
    transform: translateY(-20%);
  }
}
.p-loading__catchphrase {
  display: flex;
  overflow: hidden;
}
.p-loading__catchphrase span {
  display: inline-block;
  color: #CB2C25;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 32px;
  font-weight: 900;
  line-height: 1.11111;
  transform: translateY(110%);
  animation: slide 1.8s linear infinite;
  animation-delay: calc(0.04s * var(--char-index));
}
@media screen and (min-width: 1100px) {
  .p-loading__catchphrase span {
    font-size: 36px;
  }
}

@keyframes slide {
  0% {
    transform: translateY(110%);
  }
  7% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(0);
  }
  67% {
    transform: translateY(110%);
  }
  100% {
    transform: translateY(110%);
  }
}
.l-header {
  position: fixed;
  z-index: 120;
  top: 0;
  left: 0;
  width: 100%;
}
.l-header.is-checked .p-header__sub {
  display: none;
}

.p-header__contents {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
  background: #F9F6EB;
  box-shadow: 0 4px 8px 0 rgba(91, 77, 50, 0.15);
}
@media screen and (min-width: 1100px) {
  .p-header__contents {
    padding-block: 10px;
  }
}

.p-header__left {
  display: flex;
  align-items: center;
  gap: 30px;
}

@media screen and (max-width: 1329.98px) {
  .p-header__searchFormArea {
    display: none;
  }
}

.p-header__searchForm {
  position: relative;
}
.p-header__searchForm input {
  width: 220px;
  padding: 9px 0 9px 20px;
  border-radius: 25px;
  border: 1px solid #C1B9B2;
  background: rgba(255, 255, 255, 0.95);
}
.p-header__searchForm input::-moz-placeholder {
  color: #CCC;
  font-size: 14px;
  line-height: 1;
}
.p-header__searchForm input::placeholder {
  color: #CCC;
  font-size: 14px;
  line-height: 1;
}
.p-header__searchForm input::-webkit-search-cancel-button {
  -webkit-appearance: none;
  display: none;
}
.p-header__searchForm button {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 16.4px;
  width: 16.9px;
  aspect-ratio: 1/1;
  background: url(../img/icon-mushimegane_black.svg) no-repeat center center/contain;
}

.p-header__logo img {
  width: 215px;
  height: 30px;
}
@media screen and (min-width: 1100px) {
  .p-header__logo img {
    width: 286px;
    height: 40px;
  }
}

.p-header__right {
  display: flex;
  align-items: center;
  gap: 30px;
}
@media screen and (max-width: 370px) {
  .p-header__right {
    gap: clamp(0.625rem, -7.375rem + 40vw, 1.875rem);
  }
}
@media screen and (min-width: 1100px) and (max-width: 1130px) {
  .p-header__right {
    gap: clamp(1rem, -31.083rem + 46.67vw, 1.875rem);
  }
}

@media screen and (min-width: 1330px) {
  .p-header__searchButton {
    display: none;
  }
}

.p-header__nav {
  display: none;
}
@media screen and (min-width: 1100px) {
  .p-header__nav {
    display: flex;
    align-items: center;
    gap: 30px;
  }
}
@media screen and (min-width: 1100px) and (max-width: 1130px) {
  .p-header__nav {
    gap: clamp(1rem, -31.083rem + 46.67vw, 1.875rem);
  }
}

.p-header__menu {
  display: flex;
  align-items: center;
  gap: 16px;
}
.p-header__menu .menu-item-home {
  display: none;
}

.p-header__bookingLink img {
  display: block;
  width: 100px;
  height: 44.3px;
}

.p-header__menu-button {
  width: 24px;
  height: 23px;
  position: relative;
}
.p-header__menu-button span {
  position: absolute;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 2px;
  background: #F79448;
}
.p-header__menu-button span:nth-child(1) {
  top: calc(50% - 9px);
}
.p-header__menu-button span:nth-child(2) {
  top: 50%;
}
.p-header__menu-button span:nth-child(3) {
  top: calc(50% + 9px);
}
.p-header__menu-button.is-checked span {
  transform: translate(-50%, -50%);
}
.p-header__menu-button.is-checked span:nth-child(1) {
  top: 50%;
  transform: translate(-50%, -50%) rotate(-45deg);
}
.p-header__menu-button.is-checked span:nth-child(2) {
  display: none;
}
.p-header__menu-button.is-checked span:nth-child(3) {
  top: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
}

.p-header__sub {
  overflow-x: scroll;
}
@media screen and (min-width: 1100px) {
  .p-header__sub {
    position: absolute;
    z-index: 100;
    top: 60px;
    left: 50%;
    transform: translateX(-50%);
    overflow-x: auto;
  }
}
.p-header__sub::-webkit-scrollbar {
  display: none;
}

.p-header-sub__list {
  display: flex;
  gap: 30px;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  background: #CB2C25;
  padding: 21px 21px 20px;
  overflow: hidden;
}
@media screen and (min-width: 652px) {
  .p-header-sub__list {
    border-radius: 0 0 10px 10px;
  }
}
@media screen and (min-width: 1100px) {
  .p-header-sub__list {
    gap: 0;
    padding: 0;
    background: none;
  }
}
.p-header-sub__list a {
  display: block;
  text-align: center;
  white-space: nowrap;
  color: #FFF;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.07143;
  transition: background-color 0.2s ease;
}
@media screen and (min-width: 1100px) {
  .p-header-sub__list a {
    width: 213px;
    padding: 19px 0 18px;
    background: #CB2C25;
  }
}
@media (any-hover: hover) {
  .p-header-sub__list a:hover {
    opacity: 1;
    background: #BA120A;
  }
}

.l-searchHeader {
  position: fixed;
  z-index: 130;
  top: 0;
  left: 0;
  width: 100%;
  padding-top: 21px;
  padding-bottom: 20px;
  background: #F9F6EB;
  transform: translateY(-110%);
  transition: transform 0.5s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 15px;
}
.l-searchHeader.is-active {
  transform: translateY(0);
}

.l-search-overlay {
  position: fixed;
  z-index: 125;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: rgba(16, 16, 16, 0.5);
  display: none;
}
.l-search-overlay.is-active {
  display: block;
}

.l-drawer {
  background: #F9F6EB;
  position: fixed;
  z-index: 100;
  top: 0;
  right: 0;
  width: 100%;
  height: 100vh;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
  padding: 80px 20px 60px;
  overflow-y: scroll;
}
.l-drawer.is-checked {
  opacity: 1;
  pointer-events: auto;
}

.p-drawer__nav {
  display: flex;
  flex-direction: column;
  gap: 29px;
}

.p-drawer__menu {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.p-drawer__menu a {
  display: block;
  padding: 22px 39px 22px 15px;
  border-radius: 8px;
  background: #FFF;
  box-shadow: -2px 0 2px 0 rgba(114, 100, 72, 0.05), 2px 0 2px 0 rgba(114, 100, 72, 0.05), 0 2px 2px 0 rgba(114, 100, 72, 0.05);
  font-size: 18px;
  font-weight: 500;
  line-height: 1.11111;
  position: relative;
}
.p-drawer__menu a::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 15px;
  width: 24px;
  aspect-ratio: 1/1;
  border-radius: 50%;
  background: #CB2C25 url(../img/icon_white-arrow.svg) no-repeat center center/10px 6px;
}

.p-drawer__subMenu {
  display: flex;
  flex-direction: column;
  gap: 34px;
}
.p-drawer__subMenu a {
  color: #222;
  font-size: 18px;
  line-height: 1;
}

.l-footerMain {
  padding-top: 60px;
  padding-bottom: 58px;
  background: #FFF;
}
@media screen and (min-width: 1100px) {
  .l-footerMain {
    padding-top: 61px;
    padding-bottom: 60px;
  }
}

.p-footerMain__head {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media screen and (min-width: 768px) {
  .p-footerMain__head {
    flex-direction: row;
    align-items: flex-end;
  }
}
.p-footerMain__head img {
  width: 138.5px;
  height: 30px;
}
@media screen and (min-width: 768px) {
  .p-footerMain__head img {
    flex-shrink: 0;
  }
}

.p-footerMain__headText {
  line-height: 1.5;
}
@media screen and (min-width: 768px) {
  .p-footerMain__headText {
    flex-grow: 1;
  }
}

.p-footerMain__kodawari {
  margin-top: 31px;
}

.c-footerMain-head {
  font-family: "Montserrat", sans-serif;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.33333;
  padding-bottom: 14px;
  border-bottom: 1px solid #E6DEC7;
}

.p-footerMain-kodawari__categories {
  margin-top: 16px;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
  gap: 20px;
}
@media screen and (min-width: 1100px) {
  .p-footerMain-kodawari__categories {
    margin-top: 15px;
    display: flex;
    flex-wrap: wrap;
    gap: 20px 75px;
  }
}
.p-footerMain-kodawari__categories a {
  display: inline-block;
  font-weight: 600;
  line-height: 1.125;
}

.p-footerMain__area {
  margin-top: 30px;
}

.p-footerMain__areaList {
  margin-top: 15px;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
  gap: 20px 6px;
}
@media screen and (min-width: 1100px) {
  .p-footerMain__areaList {
    grid-template-columns: repeat(5, 1fr);
    gap: 20px 23px;
  }
}

.p-footerMain__areaName {
  font-weight: 600;
  line-height: 1.125;
}

.p-footerMain-area__categories {
  margin-top: 7px;
  padding-left: 9px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
@media screen and (min-width: 1100px) {
  .p-footerMain-area__categories {
    width: 180px;
  }
}
.p-footerMain-area__categories a {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  padding-left: 21px;
  position: relative;
  font-size: 14px;
}
@media screen and (min-width: 768px) {
  .p-footerMain-area__categories a {
    white-space: nowrap;
  }
}
.p-footerMain-area__categories a::before {
  content: "└";
  position: absolute;
  top: 0;
  left: 0;
}

.p-footerMain__tag {
  margin-top: 30px;
}

.p-footerMain-tag__list {
  margin-top: 14px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.p-footerMain-tag__item {
  display: block;
  font-size: 14px;
}
.p-footerMain-tag__item::before {
  content: "#";
  color: #CB2C25;
}

.l-footerNav {
  padding-top: 12px;
  padding-bottom: 12px;
  background: #FBE8D6;
}
@media screen and (min-width: 1100px) {
  .l-footerNav {
    padding-top: 7px;
    padding-bottom: 8px;
  }
}

.p-footerNav__menu {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.p-footerNav__menu li:not(:last-child)::after {
  content: "｜";
}
.p-footerNav__menu a {
  color: #666666;
  font-size: 15px;
  line-height: 1.66667;
}

.p-footerCopyright {
  padding-top: 7px;
  padding-bottom: 12px;
  background: #CB2C25;
  text-align: center;
}
.p-footerCopyright small {
  color: #FFF;
  font-family: "Montserrat", sans-serif;
  font-size: 10px;
  line-height: 1.5;
}

.c-redButton {
  display: block;
  max-width: 300px;
  padding: 22px 58px 21px 55px;
  border-radius: 30px;
  background: #CB2C25;
  text-align: center;
  color: #FFF;
  font-weight: 500;
  line-height: 0.9375;
  position: relative;
  border: 1px solid #CB2C25;
  transition: color 0.2s ease, background-color 0.2s ease;
}
.c-redButton::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 28.3px;
  width: 13.3px;
  height: 13px;
  background: url(../img/arrow-toRight.svg) no-repeat center center/contain;
}
@media (any-hover: hover) {
  .c-redButton:hover {
    color: #CB2C25;
    background: #FFF;
  }
  .c-redButton:hover::after {
    background: url(../img/arrow-toRight_red.svg) no-repeat center center/contain;
  }
}

.c-whiteButton {
  display: block;
  max-width: 300px;
  padding: 22px 58px 21px 55px;
  border-radius: 30px;
  background: #FFF;
  text-align: center;
  color: #CB2C25;
  font-weight: 500;
  line-height: 0.9375;
  position: relative;
  border: 1px solid #FFF;
  transition: color 0.2s ease, background-color 0.2s ease;
}
.c-whiteButton::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 28.3px;
  width: 13.3px;
  height: 13px;
  background: url(../img/arrow-toRight_red.svg) no-repeat center center/contain;
}
@media (any-hover: hover) {
  .c-whiteButton:hover {
    color: #FFF;
    background: #CB2C25;
  }
  .c-whiteButton:hover::after {
    background: url(../img/arrow-toRight.svg) no-repeat center center/contain;
  }
}

.c-swiper__prev,
.c-swiper__next {
  top: 44% !important;
  width: 32px !important;
  height: 32px !important;
  border-radius: 50%;
  background: #CB2C25 url(../img/icon_white-arrow.svg) no-repeat center center/7.85px 13.3px;
  transition: opacity 0.2s ease;
}
.c-swiper__prev svg,
.c-swiper__next svg {
  display: none;
}
@media screen and (min-width: 768px) {
  .c-swiper__prev,
  .c-swiper__next {
    top: 48% !important;
    width: 60px !important;
    height: 60px !important;
    background: #CB2C25 url(../img/icon_white-arrow.svg) no-repeat center center/14.7px 25px;
  }
}
@media (any-hover: hover) {
  .c-swiper__prev:hover,
  .c-swiper__next:hover {
    opacity: 0.7;
  }
}

.c-swiper__prev {
  left: 10px !important;
  transform: rotate(180deg);
}
@media screen and (min-width: 768px) {
  .c-swiper__prev {
    left: 20px !important;
  }
}

.c-swiper__next {
  right: 10px !important;
}

.c-swiper__pagination .swiper-pagination-bullet {
  width: 10px;
  height: 10px;
  background: #cccccc;
  border-radius: 5px;
  margin-inline: 5px !important;
  opacity: 0.8 !important;
}
.c-swiper__pagination .swiper-pagination-bullet-active {
  width: 40px;
  background: #CB2C25;
}

.c-contents__wave {
  position: absolute;
  left: 0;
  width: 100%;
  height: 26px;
  overflow: hidden;
}
.c-contents__wave::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../img/white-wave.svg) left top/auto 100% repeat-x;
}
.c-contents__wave--top {
  top: -25px;
}
.c-contents__wave--bottom {
  bottom: -25px;
  transform: rotate(180deg);
}

.c-sideCategories {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.c-sideCategories.is-hidden li:nth-child(n+6) {
  display: none;
}
.c-sideCategories.is-show li:nth-child(n+6) {
  display: block;
}
.c-sideCategories.p-sideOsusume__categories a {
  transition: background-color 0.3s ease;
}
@media (any-hover: hover) {
  .c-sideCategories.p-sideOsusume__categories a:hover {
    background: #FBE8D6;
  }
}

.c-sideCategory {
  display: block;
  padding: 14px 20px;
  border-radius: 3px;
  color: #222;
  font-size: 17px;
  line-height: 1.64706;
  position: relative;
  background: #F9F6EB;
  transition: background-color 0.3s ease;
}
.c-sideCategory::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(-45deg);
  right: 27px;
  width: 7px;
  aspect-ratio: 1/1;
  border-bottom: 1px solid #222;
  border-right: 1px solid #222;
}
@media screen and (min-width: 1100px) {
  .c-sideCategory::after {
    right: 33px;
  }
}
@media (any-hover: hover) {
  .c-sideCategory:hover {
    background: #FBE8D6;
  }
}

.l-whiteSide .c-sideCategory {
  background: #FFF;
}
@media (any-hover: hover) {
  .l-whiteSide .c-sideCategory:hover {
    background: #FBE8D6;
  }
}

.c-sideButton {
  margin: 22px auto 0;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 9px;
}
.c-sideButton .icon {
  display: block;
  width: 18px;
  aspect-ratio: 1/1;
  border-radius: 50%;
  background: #CB2C25;
  position: relative;
}
.c-sideButton .icon::before, .c-sideButton .icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 9px;
  height: 1px;
  background: #FFF;
}
.c-sideButton .icon::before {
  transform: translate(-50%, -50%);
}
.c-sideButton .icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
}
.c-sideButton .text {
  color: #333;
  font-size: 17px;
  line-height: 1.01202;
}
.c-sideButton.showButton.is-hidden {
  display: flex;
}
.c-sideButton.showButton.is-show {
  display: none;
}
.c-sideButton.closeButton.is-hidden {
  display: none;
}
.c-sideButton.closeButton.is-show {
  display: flex;
}

.c-general-banner {
  display: block;
  width: 100%;
  aspect-ratio: 1280/300;
}
.c-general-banner img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.c-pageHead {
  padding-top: 25px;
  padding-bottom: 24px;
}
@media screen and (min-width: 768px) {
  .c-pageHead {
    padding-top: 81px;
  }
}

.c-page__breadcrumb > span {
  color: #444;
  font-size: 12px;
  line-height: 1.25;
}
.c-page__breadcrumb > span a {
  transition: color 0.2s ease;
}
@media (any-hover: hover) {
  .c-page__breadcrumb > span a:hover {
    color: #CB2C25;
  }
}
.c-page__breadcrumb .arrow {
  display: inline-block;
  margin-inline: 9px;
  width: 5.887px;
  height: 10px;
  background: url(../img/arrow-breadcrumb.svg) no-repeat center center/contain;
}

.c-page__title {
  margin-top: 43px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.16667;
}
@media screen and (min-width: 768px) {
  .c-page__title {
    font-size: 36px;
  }
}
.c-page__title.p-rankPage__title {
  margin-top: 0;
}

.c-articleCard {
  background: #FFF;
  padding: 15px;
  border-radius: 8px;
  box-shadow: -2px 0 2px 0 rgba(114, 100, 72, 0.05), 2px 0 2px 0 rgba(114, 100, 72, 0.05), 0 2px 2px 0 rgba(114, 100, 72, 0.05);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
}
@media screen and (min-width: 768px) {
  .c-articleCard {
    padding: 30px;
    flex-direction: row;
    align-items: start;
    gap: 30px;
  }
}

.c-articleCard__image {
  width: 100%;
  aspect-ratio: 320/212.5;
  border-radius: 8px;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .c-articleCard__image {
    flex-shrink: 0;
    width: 320px;
  }
}
.c-articleCard__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.6s ease;
}

.c-articleCard__body {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .c-articleCard__body {
    padding-top: 20px;
  }
}

.c-articleCard__date {
  font-family: "Montserrat", sans-serif;
  font-size: 13.087px;
  font-weight: 500;
  line-height: 1.14286;
}

.c-articleCard__eventPeriod {
  display: inline-flex;
  color: #CB2C25;
}
.c-articleCard__eventPeriod dt {
  font-weight: 500;
  line-height: 1.25;
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  .c-articleCard__eventPeriod dt {
    line-height: 1.5;
  }
}
.c-articleCard__eventPeriod dt::after {
  content: "：";
}
.c-articleCard__eventPeriod dd {
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
  line-height: 1.25;
}
@media screen and (min-width: 768px) {
  .c-articleCard__eventPeriod dd {
    line-height: 1.5;
  }
}

.c-articleCard__heading {
  font-weight: 400;
  line-height: 1.75272;
}

.c-articleCard__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 9.35px;
}
.c-articleCard__tags li {
  font-size: 13.087px;
  line-height: 1;
}
.c-articleCard__tags li::before {
  content: "#";
  color: #CB2C25;
}

.c-pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 15px;
}
.c-pagination .page-numbers {
  width: 50px;
  height: 50px;
  border-radius: 4px;
  background: #FFF;
  display: grid;
  place-items: center;
  color: #666;
  font-family: "Montserrat", sans-serif;
  font-size: 22px;
  font-weight: 500;
  line-height: 1.27273;
}
@media screen and (max-width: 767.98px) {
  .c-pagination .page-numbers {
    width: 20px;
    height: 20px;
    font-size: 16px;
  }
}
.c-pagination .page-numbers.current {
  background: #CB2C25;
  color: #FFF;
}
.c-pagination .page-numbers.dots, .c-pagination .page-numbers.prev, .c-pagination .page-numbers.next {
  background: none;
  position: relative;
}

.c-pagination-linkPrev,
.c-pagination-linkNext {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 10.597px;
  height: 18px;
  background: url(../img/arrow-pagination.svg) no-repeat center center/contain;
  pointer-events: none;
}

.c-pagination-linkPrev {
  transform: translate(-50%, -50%) rotate(180deg);
}

.c-pagination-linkNext {
  transform: translate(-50%, -50%);
}

.c-pagination-first,
.c-pagination-last {
  width: 50px;
  height: 50px;
  position: relative;
}
@media screen and (max-width: 767.98px) {
  .c-pagination-first,
  .c-pagination-last {
    width: 20px;
    height: 20px;
  }
}
.c-pagination-first::after,
.c-pagination-last::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 17.8px;
  height: 18px;
  background: url(../img/wRed-arrow.svg) no-repeat center center/contain;
  pointer-events: none;
}

.c-pagination-first::after {
  transform: translate(-50%, -50%) rotate(180deg);
}

.c-pagination-last::after {
  transform: translate(-50%, -50%);
}

.p-fixFooter {
  position: fixed;
  z-index: 80;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 10px;
  background: rgba(203, 44, 37, 0.9);
  transition: opacity 0.3s ease;
}
@media screen and (min-width: 768px) {
  .p-fixFooter {
    padding-top: 12px;
    padding-bottom: 13px;
  }
}
.p-fixFooter.is-hidden {
  opacity: 0;
  pointer-events: none;
}

.p-fixFooter__button {
  display: block;
  margin-inline: auto;
  padding: 10px;
  max-width: 320px;
  border-radius: 30px;
  background: #FFF;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-fixFooter__button {
    display: flex;
    justify-content: center;
    gap: 10px;
    padding-top: 15px;
    padding-bottom: 15px;
    max-width: 580px;
  }
}
.p-fixFooter__button::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: -6px;
  width: 40px;
  aspect-ratio: 1/1;
  background: url(../img/fixFooter-icon.webp) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .p-fixFooter__button::before {
    left: -16px;
    width: 60px;
  }
}
.p-fixFooter__button .red-bar {
  display: none;
}
@media screen and (min-width: 768px) {
  .p-fixFooter__button .red-bar {
    display: block;
    width: 1px;
    height: 30px;
    background: #CB2C25;
  }
}

.p-fixFooter-button__text-sp {
  display: flex;
  justify-content: center;
  align-items: baseline;
  gap: 5px;
  color: #CB2C25;
  font-weight: 600;
  line-height: 1.875;
}
@media screen and (min-width: 768px) {
  .p-fixFooter-button__text-sp {
    display: none;
  }
}
.p-fixFooter-button__text-sp .fontEn {
  font-family: "Montserrat", sans-serif;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.55556;
}

.p-fixFooter-button__text-pc {
  display: none;
}
@media screen and (min-width: 768px) {
  .p-fixFooter-button__text-pc {
    display: block;
    color: #CB2C25;
    font-size: 24px;
    font-weight: 600;
    line-height: 1.25;
  }
  .p-fixFooter-button__text-pc .fontEn {
    font-family: "Montserrat", sans-serif;
    font-size: 24px;
    font-weight: 600;
    line-height: 1.25;
  }
}

.p-hero {
  height: 223.9185750636vw;
  max-height: 1280px;
  position: relative;
}
@media screen and (min-width: 1100px) {
  .p-hero {
    height: 821px;
  }
}

.p-hero__catchphrase {
  display: flex;
  flex-direction: column;
  gap: 4px;
  height: 100%;
  justify-content: center;
  padding: 0 20px 43.8636363636%;
  position: relative;
  z-index: 20;
}
@media screen and (min-width: 768px) and (max-width: 1099.98px) {
  .p-hero__catchphrase {
    padding-bottom: 56.25%;
  }
}
@media screen and (min-width: 1100px) {
  .p-hero__catchphrase {
    padding-bottom: 78px;
    justify-content: flex-end;
    gap: 22px;
    max-width: clamp(51.125rem, -49.978rem + 147.06vw, 82.375rem);
    margin-inline: auto;
  }
}
.p-hero__catchphrase h1 {
  color: #CB2C25;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 32px;
  font-weight: 700;
  line-height: 1.4375;
}
@media screen and (max-width: 370px) {
  .p-hero__catchphrase h1 {
    font-size: clamp(1.625rem, -0.775rem + 12vw, 2rem);
  }
}
@media screen and (min-width: 1100px) {
  .p-hero__catchphrase h1 {
    font-size: 3.125vw;
    line-height: 1.66667;
  }
}
.p-hero__catchphrase p {
  font-size: 18px;
  font-weight: 500;
  line-height: 2.51;
}
@media screen and (max-width: 370px) {
  .p-hero__catchphrase p {
    font-size: clamp(1rem, 0.2rem + 4vw, 1.125rem);
  }
}
@media screen and (min-width: 1100px) {
  .p-hero__catchphrase p {
    font-size: 1.25vw;
    line-height: 2.3;
  }
}

.p-hero__bgImages {
  position: absolute;
  z-index: 15;
  inset: 0;
}

.p-hero__bgImg {
  position: absolute;
}
.p-hero__bgImg--leftTop {
  top: 0;
  left: 0;
  width: 61.0687022901%;
  aspect-ratio: 240/169;
}
@media screen and (min-width: 768px) {
  .p-hero__bgImg--leftTop {
    width: 26.5625%;
  }
}
.p-hero__bgImg--leftTop img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-hero__bgImg--cloudsTop {
  top: 91px;
  right: 20px;
  width: 40.7124681934%;
  aspect-ratio: 160/116;
  max-width: 330px;
}
@media screen and (min-width: 1100px) {
  .p-hero__bgImg--cloudsTop {
    top: 158px;
    left: clamp(9.75rem, -15.402rem + 36.59vw, 28.5rem);
    aspect-ratio: 330/240;
    width: 17.1875%;
  }
}
.p-hero__bgImg--cloudsTop img {
  position: absolute;
}
.p-hero__bgImg--cloudsTop .top-smallCloud {
  z-index: 3;
  top: 0;
  left: 12.5%;
  width: 18.4375%;
  height: 26.2931034483%;
}
.p-hero__bgImg--cloudsTop .top-middleCloud {
  z-index: 3;
  bottom: 0;
  left: 0;
  width: 31.125%;
  height: 42.9310344828%;
}
.p-hero__bgImg--cloudsTop .top-largeCloud {
  z-index: 3;
  top: 10.8620689655%;
  right: 0;
  width: 41.0625%;
  height: 57.5%;
}
.p-hero__bgImg--cloudsTop .top-hat {
  position: absolute;
  z-index: 5;
  bottom: 19.1379310345%;
  right: 26.125%;
  width: 42.75%;
  height: 53.8793103448%;
}
.p-hero__bgImg--main {
  bottom: 44px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  aspect-ratio: 393/385;
  max-width: 960px;
}
@media screen and (min-width: 1100px) {
  .p-hero__bgImg--main {
    bottom: auto;
    top: 50%;
    left: auto;
    transform: translate(0, -50%);
    right: 5px;
    width: 46.3541666667%;
    aspect-ratio: 890/890;
  }
}
@media screen and (min-width: 1950px) {
  .p-hero__bgImg--main {
    right: calc(50% - 960px);
  }
}
.p-hero__bgImg--main picture {
  position: absolute;
}
.p-hero__bgImg--main picture img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-hero__bgImg--main .main-bottomPic {
  z-index: 1;
  bottom: 6.7532467532%;
  right: 1.8829516539%;
  width: 34.1730279898%;
  aspect-ratio: 1/1;
}
@media screen and (min-width: 1100px) {
  .p-hero__bgImg--main .main-bottomPic {
    bottom: 11.6071428571%;
    right: 1.4606741573%;
    width: 36.8539325843%;
  }
}
.p-hero__bgImg--main .main-and {
  z-index: 3;
  top: 4.1558441558%;
  right: 4.5547073791%;
  width: 100%;
  aspect-ratio: 393/360;
  position: relative;
}
@media screen and (min-width: 1100px) {
  .p-hero__bgImg--main .main-and {
    top: -3.8202247191%;
    right: 0;
    max-width: 801px;
    aspect-ratio: 1/1;
  }
}
.p-hero__bgImg--main .main-and .main-and--front {
  position: absolute;
  inset: 0;
}
.p-hero__bgImg--main .main-icon1 {
  z-index: 5;
  top: 21.8181818182%;
  left: 13.5877862595%;
  width: 18.9058524173%;
  aspect-ratio: 74.3/105;
}
@media screen and (min-width: 1100px) {
  .p-hero__bgImg--main .main-icon1 {
    top: 22.9213483146%;
    left: 16.6292134831%;
    width: 13.7078651685%;
    aspect-ratio: 147/208;
  }
}
.p-hero__bgImg--main .main-icon2 {
  z-index: 5;
  top: 31.5844155844%;
  right: 25.5470737913%;
  width: 17.6844783715%;
  aspect-ratio: 69.5/91.7;
}
@media screen and (min-width: 1100px) {
  .p-hero__bgImg--main .main-icon2 {
    top: 28.9887640449%;
    right: 35.1685393258%;
    width: 12.9662921348%;
    aspect-ratio: 139/183;
  }
}
.p-hero__bgImg--main .main-icon3 {
  z-index: 5;
  bottom: 30.1818181818%;
  left: 33.0025445293%;
  width: 21.7811704835%;
  aspect-ratio: 85.6/108.6;
}
@media screen and (min-width: 1100px) {
  .p-hero__bgImg--main .main-icon3 {
    bottom: 40.1123595506%;
    left: 28.4269662921%;
    width: 15.8595505618%;
    aspect-ratio: 170/215.75;
  }
}
.p-hero__bgImg--main .main-icon4 {
  z-index: 5;
  bottom: 16.2857142857%;
  left: 12.7480916031%;
  width: 10.8142493639%;
  aspect-ratio: 42.5/77.2;
}
@media screen and (min-width: 1100px) {
  .p-hero__bgImg--main .main-icon4 {
    bottom: 26.6292134831%;
    left: 21.0112359551%;
    width: 5.595505618%;
    aspect-ratio: 60/107.8;
  }
}
.p-hero__bgImg--main .main-icon5 {
  z-index: 5;
  bottom: 21.5584415584%;
  right: 15.2162849873%;
  width: 17.1755725191%;
  aspect-ratio: 67.5/56;
}
@media screen and (min-width: 1100px) {
  .p-hero__bgImg--main .main-icon5 {
    bottom: 35.7303370787%;
    right: 20.8988764045%;
    width: 12.1280898876%;
    aspect-ratio: 130/108;
  }
}
.p-hero__bgImg--main .main-icon6 {
  z-index: 5;
  bottom: 0;
  left: 33.2315521628%;
  width: 27.7353689567%;
  aspect-ratio: 109/69.5;
}
@media screen and (min-width: 1100px) {
  .p-hero__bgImg--main .main-icon6 {
    bottom: 11.0112359551%;
    left: 34.7191011236%;
    width: 21.1764044944%;
    aspect-ratio: 227/145;
  }
}
.p-hero__bgImg--cloudsBottom {
  bottom: -70px;
  left: 20.5px;
  width: 20.3562340967%;
  aspect-ratio: 80/74.6;
  max-width: 165px;
}
.p-hero__bgImg--cloudsBottom img {
  position: absolute;
}
@media screen and (min-width: 1100px) {
  .p-hero__bgImg--cloudsBottom {
    bottom: -93px;
    left: 37.6%;
    transform: translateX(-50%);
    aspect-ratio: 165/123;
  }
}
.p-hero__bgImg--cloudsBottom .bottom-smallCloud {
  bottom: 0;
  right: 0;
  width: 35.625%;
  height: 38.8739946381%;
}
.p-hero__bgImg--cloudsBottom .bottom-middleCloud {
  top: 0;
  left: 0;
  width: 59.875%;
  height: 64.2091152815%;
}

.js-opAni-shake {
  animation: shake 3s ease-in-out infinite;
}
.js-opAni-shake.fDelay {
  animation-delay: 0.5s;
}
.js-opAni-shake.sDelay {
  animation-delay: 1.5s;
}
.js-opAni-shake.tDelay {
  animation-delay: 2.5s;
}

@keyframes shake {
  0% {
    transform: translateY(0);
  }
  15% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-20%);
  }
  85% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(0);
  }
}
.p-topPickup {
  padding-bottom: 74px;
}
@media screen and (min-width: 768px) {
  .p-topPickup {
    padding-bottom: 94px;
  }
}

.p-topPickup__title {
  text-align: center;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.75;
}
@media screen and (min-width: 768px) {
  .p-topPickup__title {
    font-size: 32px;
    line-height: 1.3125;
  }
}

.p-topPickup__swiper {
  margin-top: 21px;
  padding-bottom: 46px !important;
}
@media screen and (min-width: 768px) {
  .p-topPickup__swiper {
    margin-top: 30px;
  }
}

.p-topPickup__slide {
  width: 250px !important;
}
@media screen and (min-width: 768px) {
  .p-topPickup__slide {
    width: 500px !important;
  }
}
@media (any-hover: hover) {
  .p-topPickup__slide a:hover .p-topPickup-card__image img {
    transform: scale(1.1);
  }
}

.p-topPickup-card {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
@media screen and (min-width: 768px) {
  .p-topPickup-card {
    gap: 20px;
  }
}

.p-topPickup-card__image {
  width: 100%;
  aspect-ratio: 250/166.5;
  border-radius: 8px;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .p-topPickup-card__image {
    aspect-ratio: 500/333;
    border-radius: 5.3333px;
  }
}
.p-topPickup-card__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.6s ease;
}

.p-topPickup-card__heading {
  font-weight: 400;
  line-height: 1.5;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 3;
}
@media screen and (min-width: 768px) {
  .p-topPickup-card__heading {
    font-size: 18px;
    line-height: 1.44444;
    -webkit-line-clamp: 2;
  }
}

.p-topMainContents {
  background: #FFF;
  position: relative;
  padding-top: 71px;
  padding-bottom: 53px;
}
@media screen and (min-width: 1100px) {
  .p-topMainContents {
    padding-top: 102px;
    padding-bottom: 29px;
  }
}

.p-topArea {
  padding-bottom: 35px;
}
@media screen and (min-width: 1100px) {
  .p-topArea {
    padding-bottom: 40px;
  }
}

.p-topArea__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.75;
  padding-left: 32px;
  position: relative;
}
@media screen and (max-width: 390px) {
  .p-topArea__title {
    font-size: clamp(1.125rem, -0.589rem + 8.57vw, 1.5rem);
  }
}
@media screen and (min-width: 768px) {
  .p-topArea__title {
    font-size: 32px;
    line-height: 1.3125;
    padding-left: 40px;
  }
}
.p-topArea__title::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 5px;
  width: 16.4px;
  height: 21.3px;
  background: url(../img/icon-map.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .p-topArea__title::before {
    width: 21.8px;
    height: 28.4px;
  }
}

.p-topArea__headText {
  margin-top: 10px;
  font-size: 18px;
  line-height: 1.55556;
}
@media screen and (max-width: 390px) {
  .p-topArea__headText {
    font-size: clamp(1rem, 0.429rem + 2.86vw, 1.125rem);
  }
}

.p-topArea__map {
  margin-top: 12px;
  position: relative;
}
@media screen and (min-width: 1100px) {
  .p-topArea__map {
    margin-top: 40px;
  }
}

.p-topArea-map__image {
  position: relative;
  z-index: 10;
  width: 100%;
  aspect-ratio: 353/345;
}
.p-topArea-map__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-topArea-map__buttons {
  position: absolute;
  z-index: 15;
  inset: 0;
}

.p-topArea-map__button {
  color: #FFF;
  font-size: 11.628px;
  font-weight: 500;
  line-height: 0.875;
  padding: 5.55px 6.35px 5.12px 21.8px;
  border-radius: 4.36px;
  position: absolute;
  transition: transform 0.2s ease, opacity 0.2s ease;
}
@media screen and (min-width: 768px) {
  .p-topArea-map__button {
    font-size: 28.988px;
    padding: 14px 18px 14px 55px;
    border-radius: 10px;
  }
}
.p-topArea-map__button::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 6px;
}
@media screen and (min-width: 768px) {
  .p-topArea-map__button::before {
    left: 15px;
  }
}
.p-topArea-map__button.hokkaido {
  background: #5A7CB9;
  top: 13.9130434783%;
  right: 17.5637393768%;
}
@media screen and (min-width: 768px) {
  .p-topArea-map__button.hokkaido {
    right: 17.5637393768%;
  }
}
.p-topArea-map__button.hokkaido::before {
  width: 13.639px;
  height: 13.639px;
  background: url(../img/hokkaido_icon.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .p-topArea-map__button.hokkaido::before {
    width: 28.333px;
    height: 29.75px;
  }
}
.p-topArea-map__button.tohoku {
  background: #41A4CA;
  top: 43.3913043478%;
  right: 29.7450424929%;
}
@media screen and (min-width: 768px) {
  .p-topArea-map__button.tohoku {
    right: 29.7450424929%;
  }
}
.p-topArea-map__button.tohoku::before {
  width: 12.836px;
  height: 10.892px;
  background: url(../img/tohoku_icon.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .p-topArea-map__button.tohoku::before {
    width: 32px;
    height: 27.154px;
  }
}
.p-topArea-map__button.kanto {
  background: #53B3A3;
  bottom: 31.7391304348%;
  right: 32.1246458924%;
}
@media screen and (min-width: 768px) {
  .p-topArea-map__button.kanto {
    bottom: 31.884057971%;
    right: 32.2946175637%;
  }
}
.p-topArea-map__button.kanto::before {
  width: 13.639px;
  height: 12.957px;
  background: url(../img/kanto_icon.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .p-topArea-map__button.kanto::before {
    width: 34px;
    height: 32.3px;
  }
}
.p-topArea-map__button.hokuriku {
  background: #7FB966;
  bottom: 45.5072463768%;
  left: 35.4107648725%;
}
@media screen and (min-width: 768px) {
  .p-topArea-map__button.hokuriku {
    left: 35.1274787535%;
  }
}
.p-topArea-map__button.hokuriku::before {
  width: 12.836px;
  height: 12.884px;
  background: url(../img/hokuriku_icon.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .p-topArea-map__button.hokuriku::before {
    width: 32px;
    height: 32.12px;
  }
}
.p-topArea-map__button.tokai {
  background: #EB9C4E;
  bottom: 21.4492753623%;
  left: 42.3512747875%;
}
.p-topArea-map__button.tokai::before {
  width: 12.836px;
  height: 7.198px;
  background: url(../img/tokai_icon.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .p-topArea-map__button.tokai::before {
    width: 32px;
    height: 17.943px;
  }
}
.p-topArea-map__button.kinki {
  background: #F2BD35;
  bottom: 35.3623188406%;
  left: 25.2124645892%;
}
@media screen and (min-width: 768px) {
  .p-topArea-map__button.kinki {
    bottom: 35.0724637681%;
    left: 24.6458923513%;
  }
}
.p-topArea-map__button.kinki::before {
  width: 12.836px;
  height: 11.207px;
  background: url(../img/kansai_icon.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .p-topArea-map__button.kinki::before {
    width: 32px;
    height: 27.938px;
  }
}
.p-topArea-map__button.chugoku {
  background: #DB75A4;
  bottom: 28.6956521739%;
  left: 5.9490084986%;
}
@media screen and (min-width: 768px) {
  .p-topArea-map__button.chugoku {
    bottom: 28.9855072464%;
    left: 5.6657223796%;
  }
}
.p-topArea-map__button.chugoku::before {
  width: 15.043px;
  height: 8.524px;
  background: url(../img/chugoku_icon.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .p-topArea-map__button.chugoku::before {
    width: 37.5px;
    height: 21.25px;
  }
}
.p-topArea-map__button.shikoku {
  background: #9F8C6E;
  bottom: 12.4637681159%;
  left: 24.3626062323%;
}
@media screen and (min-width: 768px) {
  .p-topArea-map__button.shikoku {
    bottom: 12.6086956522%;
    left: 24.0793201133%;
  }
}
.p-topArea-map__button.shikoku::before {
  width: 12.034px;
  height: 12.034px;
  background: url(../img/shikoku_icon.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .p-topArea-map__button.shikoku::before {
    width: 30px;
    height: 30px;
  }
}
.p-topArea-map__button.kyushu {
  background: #DC756B;
  bottom: 6.0869565217%;
  left: 12.1813031161%;
}
@media screen and (min-width: 768px) {
  .p-topArea-map__button.kyushu {
    left: 11.8980169972%;
  }
}
.p-topArea-map__button.kyushu::before {
  width: 11.232px;
  height: 11.232px;
  background: url(../img/kyushu_icon.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .p-topArea-map__button.kyushu::before {
    width: 28px;
    height: 28px;
  }
}
.p-topArea-map__button.okinawa {
  background: #A380C4;
  top: 14.0579710145%;
  left: 20.1133144476%;
}
@media screen and (min-width: 768px) {
  .p-topArea-map__button.okinawa {
    left: 19.5467422096%;
  }
}
.p-topArea-map__button.okinawa::before {
  width: 12.836px;
  height: 14.812px;
  background: url(../img/okinawa_icon.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .p-topArea-map__button.okinawa::before {
    width: 32px;
    height: 36.926px;
  }
}
@media (any-hover: hover) {
  .p-topArea-map__button:hover {
    transform: translateY(-5px);
    opacity: 0.8;
  }
}

.p-topArea__areaBox {
  margin-top: 55px;
  border-radius: 8px;
  background: #FAF7EC;
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 20px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-topArea__areaBox {
    padding: 30px;
  }
}
.p-topArea__areaBox::after {
  content: "";
  position: absolute;
  top: -16px;
  left: 60px;
  width: 52px;
  height: 20px;
  clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
  background: #FAF7EC;
}

.p-topArea-aBox__heading {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.45455;
}

.p-topArea-aBox__categories {
  display: none;
}
.p-topArea-aBox__categories.is-checked {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
@media screen and (min-width: 768px) {
  .p-topArea-aBox__categories.is-checked {
    gap: 20px;
  }
}
.p-topArea-aBox__categories a {
  display: block;
  padding: 8px 12px;
  border-radius: 18px;
  background: #FBE8D6;
  transition: background-color 0.2s ease-in;
  line-height: 1;
}
@media (any-hover: hover) {
  .p-topArea-aBox__categories a:hover {
    background: #FCD8B5;
  }
}

.p-topRanking {
  padding-top: 25px;
  padding-bottom: 30px;
}
@media screen and (min-width: 1100px) {
  .p-topRanking {
    padding-top: 38px;
    padding-bottom: 80px;
  }
}

.p-topRanking__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.61538;
  padding-left: 30px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-topRanking__title {
    font-size: 32px;
    line-height: 1.3125;
    padding-left: 40px;
  }
}
.p-topRanking__title::before {
  content: "";
  position: absolute;
  top: 55%;
  transform: translateY(-50%);
  left: 1px;
  width: 24px;
  height: 19.508px;
  background: url(../img/icon-crown.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .p-topRanking__title::before {
    width: 32px;
    height: 26px;
  }
}

.p-topRanking__buttons {
  margin-top: 20px;
  display: flex;
  gap: 2px;
  overflow-x: scroll;
  cursor: grab;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  -webkit-overflow-scrolling: touch;
}
.p-topRanking__buttons::-webkit-scrollbar {
  height: 8px;
}
.p-topRanking__buttons::-webkit-scrollbar-track {
  background: #F1A3A0;
}
.p-topRanking__buttons::-webkit-scrollbar-thumb {
  background: #CB2C25;
}
.p-topRanking__buttons.is-drag {
  cursor: grabbing;
}

.p-topRanking__button {
  color: #333;
  border-radius: 4px 4px 0 0;
  background: #FBE8D6;
  padding: 15px 24px;
  font-size: 20px;
  line-height: 0.8;
  white-space: nowrap;
}
.p-topRanking__button.is-checked {
  color: #FFF;
  background: #CB2C25;
}

.p-topRanking__box {
  padding: 28px 18px 38px;
  border-radius: 0 0 8px 8px;
  border: 2px solid #CB2C25;
  overflow: hidden;
}
@media screen and (min-width: 1100px) {
  .p-topRanking__box {
    padding-top: 13px;
  }
}

.p-topRank__swiperArea {
  display: none;
}
.p-topRank__swiperArea.is-checked {
  display: initial;
}

.p-topRank__swiper {
  padding-bottom: 43px !important;
  overflow: visible !important;
}
@media screen and (min-width: 1100px) {
  .p-topRank__swiper {
    overflow: hidden !important;
    padding-top: 15px !important;
  }
}
.p-topRank__swiper .c-swiper__prev,
.p-topRank__swiper .c-swiper__next {
  top: 36% !important;
}
@media screen and (min-width: 1100px) {
  .p-topRank__swiper .c-swiper__prev,
  .p-topRank__swiper .c-swiper__next {
    top: 32.5% !important;
    width: 32px !important;
    height: 32px !important;
    background: #CB2C25 url(../img/icon_white-arrow.svg) no-repeat center center/7.85px 13.3px;
  }
}
.p-topRank__swiper .c-swiper__prev {
  left: calc(50% - 43.5114503817vw) !important;
}
@media screen and (min-width: 1100px) {
  .p-topRank__swiper .c-swiper__prev {
    left: 22px !important;
  }
}
.p-topRank__swiper .c-swiper__next {
  right: calc(50% - 44.0203562341vw) !important;
}
@media screen and (min-width: 1100px) {
  .p-topRank__swiper .c-swiper__next {
    right: 26px !important;
  }
}

.p-topRank__slide {
  width: 100% !important;
  max-width: 313px;
}
@media screen and (min-width: 768px) {
  .p-topRank__slide {
    max-width: 260px;
  }
}
.p-topRank__slide::after {
  position: absolute;
  top: -10px;
  left: -9px;
  width: 60px;
  height: 57.7px;
  background: url(../img/ranking-badge-4.svg) no-repeat center center/contain;
  pointer-events: none;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  padding-bottom: 10px;
  color: #FFF;
  font-family: "Montserrat", sans-serif;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.16667;
}
.p-topRank__slide:nth-child(1)::after {
  content: "No.1";
  background: url(../img/ranking-badge-1.svg) no-repeat center center/contain;
}
.p-topRank__slide:nth-child(2)::after {
  content: "No.2";
  background: url(../img/ranking-badge-2.svg) no-repeat center center/contain;
}
.p-topRank__slide:nth-child(3)::after {
  content: "No.3";
  background: url(../img/ranking-badge-3.svg) no-repeat center center/contain;
}
.p-topRank__slide:nth-child(4)::after {
  content: "No.4";
}
.p-topRank__slide:nth-child(5)::after {
  content: "No.5";
}
.p-topRank__slide:nth-child(6)::after {
  content: "No.6";
}
.p-topRank__slide:nth-child(7)::after {
  content: "No.7";
}
.p-topRank__slide:nth-child(8)::after {
  content: "No.8";
}
.p-topRank__slide:nth-child(9)::after {
  content: "No.9";
}
.p-topRank__slide:nth-child(10)::after {
  content: "No.10";
}
@media (any-hover: hover) {
  .p-topRank__slide a:hover .p-topRank-card__image img {
    transform: scale(1.1);
  }
}

.p-topRank-card {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.p-topRank-card__image {
  width: 100%;
  aspect-ratio: 313/208.5;
  border-radius: 8px;
  overflow: hidden;
}
.p-topRank-card__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.6s ease;
}

.p-topRank-card__heading {
  font-size: 18px;
  font-weight: 400;
  line-height: 1.44444;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
}

.p-topRanking-box__link {
  margin: 18px auto 0;
}

.p-topBooking-sp {
  padding-top: 32px;
  padding-bottom: 59px;
}

.p-topBooking-pc {
  display: none;
}
@media screen and (min-width: 1100px) {
  .p-topBooking-pc {
    display: block;
    margin-top: 30px;
  }
}

.p-sideBooking__title {
  color: #222;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.27273;
}

.p-sideBooking__contents {
  margin-top: 19px;
  border-top: 4px solid #CB2C25;
  border-bottom: 4px solid #CB2C25;
  background: #F2F2F2;
  padding: 16px 20px 30px;
}
.p-sideBooking__contents form {
  display: block !important;
}

.input-container-input-container-da40af {
  display: flex;
  flex-direction: column;
  gap: 13px;
}
.input-container-input-container-da40af > label {
  font-size: 15px;
  font-weight: 500;
  line-height: 1.22888;
}

.search-widget-input-34bba0 {
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 6.144px;
  border: 1.229px solid #CCC;
  background: #FFF;
  width: 100%;
}
.search-widget-input-34bba0::-moz-placeholder {
  color: #333;
  font-size: 15px;
  line-height: 1.14695;
}
.search-widget-input-34bba0::placeholder {
  color: #333;
  font-size: 15px;
  line-height: 1.14695;
}
.search-widget-input-34bba0.search-widget-calendar-9fdfc9 {
  padding: 13px 11px;
}
.search-widget-input-34bba0#adult-select, .search-widget-input-34bba0.dropdown-selector-input-6d2b0e {
  padding: 12px 8px;
}
.search-widget-input-34bba0#rooms-select {
  padding: 12px 17px;
}

.search-widget-two-picker-wrapper-4ca735:nth-child(2) {
  margin-top: 19px;
  margin-bottom: 19px;
  position: relative;
}
.search-widget-two-picker-wrapper-4ca735:nth-child(2) .input-container-input-container-da40af:nth-child(2) {
  position: absolute;
  bottom: 0;
  right: 0;
  width: calc((100% - 12px) / 2);
}

.input-container-slot-239963 {
  position: relative;
}
.input-container-slot-239963::after {
  content: "";
  position: absolute;
  top: 52%;
  transform: translateY(-50%);
  right: 12px;
  width: 9.831px;
  height: 7.373px;
  clip-path: polygon(0 0, 50% 100%, 100% 0);
  background: #333;
  pointer-events: none;
}
.input-container-slot-239963:has(.search-widget-calendar-9fdfc9)::after {
  right: 17px;
  width: 16.385px;
  height: 18.669px;
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
  background: url(../img/icon-calendar.svg) no-repeat center center/contain;
}

.input-container-width-sm-88e98c .input-container-slot-239963 {
  width: calc((100% - 12px) / 2);
}

.dropdown-selector-container-ef1ce2 .search-widget-input-34bba0 {
  width: 100%;
}
.dropdown-selector-container-ef1ce2 .dropdown-dropdown-f4f232 {
  display: none;
}

.search-widget-button-wrapper-d2b715 {
  margin-top: 20px;
}
.search-widget-button-wrapper-d2b715 .button-btn-f51c1a[type=submit] {
  width: 100%;
  border-radius: 6.144px;
  background: #CB2C25 !important;
  padding: 15px 0 15px 23px;
  text-align: center;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.14695;
  position: relative;
}
.search-widget-button-wrapper-d2b715 .button-btn-f51c1a[type=submit]::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 39%;
  transform: translate(-50%, -50%);
  width: 20.803px;
  height: 20.803px;
  background: url(../img/icon-mushimegane_white.svg) no-repeat center center/contain;
}

.search-widget-day-use-wrapper-fc1ff9 {
  margin-top: 11px;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.22888;
}

.switch-switch-e8f4ca {
  width: 31.951px;
  height: 17.204px;
  border-radius: 100px;
  background: #d0cece;
  display: inline-block;
  vertical-align: middle;
  margin-right: 4px;
  padding: 2px;
  cursor: pointer;
  transition: 0.2s;
  position: relative;
}
.switch-switch-e8f4ca::after {
  border-radius: 50%;
  background: #fff;
  transition: left 0.2s ease;
  position: relative;
  display: block;
  content: "";
  width: 12.289px;
  height: 12.289px;
  left: 0;
}

.p-topPrice {
  padding: 30px 20px;
  background: #F9F6EB;
  border-radius: 8px;
  box-shadow: -2px 0 2px 0 rgba(114, 100, 72, 0.05), 2px 0 2px 0 rgba(114, 100, 72, 0.05), 0 2px 2px 0 rgba(114, 100, 72, 0.05);
}
@media screen and (min-width: 768px) {
  .p-topPrice {
    padding: 40px 30px 39px;
  }
}

.p-topPrice__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.61538;
  padding-left: 40px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-topPrice__title {
    padding-left: 40px;
    font-size: 32px;
    line-height: 1.3125;
  }
}
.p-topPrice__title::before {
  content: "";
  position: absolute;
  top: 6px;
  left: 0;
  width: 32px;
  height: 32px;
  background: url(../img/icon-money.svg) no-repeat center center/contain;
}
@media screen and (min-width: 1100px) {
  .p-topPrice__title::before {
    top: 7px;
    left: 3px;
  }
}

.p-topPrice__categories {
  margin-top: 21px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
@media screen and (min-width: 1100px) {
  .p-topPrice__categories {
    margin-top: 19px;
    gap: 20px;
  }
}
.p-topPrice__categories a {
  display: block;
  padding: 8px 12px;
  border-radius: 18px;
  background: #FBE8D6;
  font-size: 14px;
  line-height: 1.14286;
  transition: background-color 0.2s ease-in;
}
@media screen and (min-width: 768px) {
  .p-topPrice__categories a {
    font-size: 16px;
    line-height: 1;
  }
}
@media (any-hover: hover) {
  .p-topPrice__categories a:hover {
    opacity: 1;
    background: #FCD8B5;
  }
}

.p-topPrice__link {
  margin: 30px auto 0;
}

.p-topKodawari {
  margin-top: 60px;
  padding: 30px 20px;
  background: #F9F6EB;
  border-radius: 8px;
  box-shadow: -2px 0 2px 0 rgba(114, 100, 72, 0.05), 2px 0 2px 0 rgba(114, 100, 72, 0.05), 0 2px 2px 0 rgba(114, 100, 72, 0.05);
}
@media screen and (min-width: 768px) {
  .p-topKodawari {
    margin-top: 82px;
    padding: 40px 30px 50px;
  }
}

.p-topKodawari__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.61538;
  padding-left: 32px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-topKodawari__title {
    padding-left: 40px;
    font-size: 32px;
    line-height: 1.3125;
  }
}
.p-topKodawari__title::before {
  content: "";
  position: absolute;
  top: 11px;
  left: 2px;
  width: 20.3px;
  height: 20.3px;
  background: url(../img/icon-mushimegane.svg) no-repeat center center/contain;
}
@media screen and (min-width: 1100px) {
  .p-topKodawari__title::before {
    top: 7px;
    left: 3px;
    width: 27px;
    height: 27px;
  }
}

.p-topKodawari__categories {
  margin-top: 21px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
@media screen and (min-width: 1100px) {
  .p-topKodawari__categories {
    margin-top: 19px;
    gap: 20px;
  }
}
.p-topKodawari__categories a {
  display: block;
  padding: 8px 12px;
  border-radius: 18px;
  background: #FBE8D6;
  font-size: 14px;
  line-height: 1.14286;
  transition: background-color 0.2s ease-in;
}
@media screen and (min-width: 768px) {
  .p-topKodawari__categories a {
    font-size: 16px;
    line-height: 1;
  }
}
@media (any-hover: hover) {
  .p-topKodawari__categories a:hover {
    opacity: 1;
    background: #FCD8B5;
  }
}

.p-topKodawari__link {
  margin: 30px auto 0;
}

.p-topOsusume {
  margin-top: 60px;
  padding: 30px 20px;
  border-radius: 8px;
  background: #FBE8D6;
}
@media screen and (min-width: 1100px) {
  .p-topOsusume {
    margin-top: 80px;
    padding-inline: 30px;
  }
}

.p-topOsusume__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.61538;
  padding-left: 32px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-topOsusume__title {
    font-size: 32px;
    line-height: 1.3125;
    padding-left: 40px;
  }
}
.p-topOsusume__title::before {
  content: "";
  position: absolute;
  top: 9px;
  left: 1px;
  width: 22.8px;
  height: 20.25px;
  background: url(../img/icon-star.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .p-topOsusume__title::before {
    width: 30.4px;
    height: 27px;
  }
}

.p-topOsusume__categories {
  margin-top: 20px;
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 20px;
}
@media screen and (min-width: 768px) and (max-width: 1279.98px) {
  .p-topOsusume__categories {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (min-width: 1280px) {
  .p-topOsusume__categories {
    grid-template-columns: repeat(3, 1fr);
  }
}
.p-topOsusume__categories a {
  padding: 15px 31px 15px 15px;
  border-radius: 8px;
  background: #FFF;
  box-shadow: -2px 0 2px 0 rgba(114, 100, 72, 0.05), 2px 0 2px 0 rgba(114, 100, 72, 0.05), 0 2px 2px 0 rgba(114, 100, 72, 0.05);
  display: flex;
  align-items: center;
  gap: 10px;
  position: relative;
  transition: background-color 0.3s ease;
}
.p-topOsusume__categories a::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 19.5px;
  width: 6.9px;
  height: 12.4px;
  background: url(../img/icon_red-arrow.svg) no-repeat center center/contain;
  transition: background-image 0.3s ease;
}
@media (any-hover: hover) {
  .p-topOsusume__categories a:hover {
    background: #CB2C25;
  }
  .p-topOsusume__categories a:hover::after {
    background: url(../img/icon_white-arrow.svg) no-repeat center center/contain;
  }
  .p-topOsusume__categories a:hover .p-topOsusume-cat__heading {
    color: #FFF;
  }
}

.p-topOsusume-cat__icon {
  width: 60px;
  flex-shrink: 0;
  aspect-ratio: 1/1;
  border-radius: 3px;
  background: #FBE8D6;
  display: grid;
  place-items: center;
}

.p-topOsusume-cat__heading {
  flex-grow: 1;
  color: #CB2C25;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.44444;
  transition: color 0.6s ease;
}

.p-topOsusume__link {
  margin: 30px auto 0;
}

.p-topColumn {
  padding-top: 88px;
  padding-bottom: 75px;
}
@media screen and (min-width: 1100px) {
  .p-topColumn {
    padding-top: 80px;
    padding-bottom: 126px;
  }
}

.p-topColumn__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.61538;
  padding-left: 30px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-topColumn__title {
    font-size: 32px;
    line-height: 1.3125;
    padding-left: 40px;
  }
}
.p-topColumn__title::before {
  content: "";
  position: absolute;
  top: 12px;
  left: -2px;
  width: 24px;
  height: 19.5px;
  background: url(../img/icon-column.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .p-topColumn__title::before {
    top: 8px;
    left: 0px;
    width: 32px;
    height: 26px;
  }
}

.p-topColumn__headText {
  margin-top: 10px;
  font-size: 18px;
  line-height: 1.5556;
}

.p-topColumn__posts {
  margin-top: 20px;
  border-top: 2px dashed rgba(203, 44, 37, 0.5);
}
@media (any-hover: hover) {
  .p-topColumn__posts li a:hover .p-topColumn-card__image img {
    transform: scale(1.1);
  }
}

.p-topColumn-card {
  padding: 13.5px 11px 15px 0;
  border-bottom: 2px dashed rgba(203, 44, 37, 0.5);
  display: flex;
  align-items: center;
  gap: 10px;
}
@media screen and (min-width: 768px) {
  .p-topColumn-card {
    padding: 18px 0 20px;
    gap: 20px;
  }
}

.p-topColumn-card__image {
  width: 100px;
  flex-shrink: 0;
  aspect-ratio: 100/66.6;
  border-radius: 8px;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .p-topColumn-card__image {
    width: 240px;
    aspect-ratio: 240/159.84;
  }
}
.p-topColumn-card__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.6s ease;
}

.p-topColumn-card__body {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
@media screen and (min-width: 768px) {
  .p-topColumn-card__body {
    gap: 10px;
  }
}

.p-topColumn-card__date {
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
  line-height: 1.25;
}

.p-topColumn-card__heading {
  font-weight: 400;
  line-height: 1.5;
}
@media screen and (min-width: 768px) {
  .p-topColumn-card__heading {
    font-size: 18px;
    line-height: 1.7778;
  }
}
@media screen and (max-width: 767.98px) {
  .p-topColumn-card__heading {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 2;
  }
}

.p-topColumn__link {
  margin: 29px auto 0;
}

.p-topReport {
  padding: 30px 20px;
  background: #CB2C25;
  border-radius: 8px;
  position: relative;
}
@media screen and (min-width: 1100px) {
  .p-topReport {
    padding: 30px;
  }
}

.p-topReport__picture {
  position: absolute;
  top: -24px;
  right: 12px;
  width: 33.9943342776%;
  max-width: 265px;
  aspect-ratio: 120/62;
}
@media screen and (min-width: 768px) {
  .p-topReport__picture {
    top: -46px;
    right: 39px;
  }
}
.p-topReport__picture img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-topReport__title {
  color: #FFF;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.61538;
  padding-left: 32px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-topReport__title {
    font-size: 32px;
    line-height: 1.3125;
    padding-left: 40px;
  }
}
.p-topReport__title::before {
  content: "";
  position: absolute;
  top: 13px;
  left: 2px;
  width: 21px;
  height: 17.5px;
  background: url(../img/icon-saunaHat.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .p-topReport__title::before {
    top: 10px;
    width: 28px;
    height: 23.36px;
  }
}

.p-topReport__headText {
  margin-top: 8px;
  color: #FFF;
  font-size: 18px;
  line-height: 1.55556;
}

.p-topReport__swiper {
  margin-top: 20px;
  padding-bottom: 30px !important;
}
.p-topReport__swiper .c-swiper__prev,
.p-topReport__swiper .c-swiper__next {
  top: 33.7% !important;
}
@media screen and (min-width: 1100px) {
  .p-topReport__swiper .c-swiper__prev,
  .p-topReport__swiper .c-swiper__next {
    top: 32.5% !important;
    width: 32px !important;
    height: 32px !important;
    background: #CB2C25 url(../img/icon_white-arrow.svg) no-repeat center center/7.85px 13.3px;
  }
}
@media screen and (min-width: 1100px) {
  .p-topReport__swiper .c-swiper__prev {
    left: 10px !important;
  }
}
.p-topReport__swiper .c-swiper__pagination {
  bottom: -3px !important;
}
.p-topReport__swiper .c-swiper__pagination .swiper-pagination-bullet-active {
  background: #FFF;
}

.p-topReport__slide {
  max-width: 313px;
}
@media screen and (min-width: 1100px) {
  .p-topReport__slide {
    max-width: 260px;
  }
}
@media (any-hover: hover) {
  .p-topReport__slide a:hover .p-topReport-card__image img {
    transform: scale(1.1);
  }
}

.p-topReport-card {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.p-topReport-card__image {
  width: 100%;
  aspect-ratio: 313/208.5;
  border-radius: 9.631px;
  overflow: hidden;
}
.p-topReport-card__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.6s ease;
}

.p-topReport-card__body {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.p-topReport-card__date {
  color: #FFF;
  font-family: "Montserrat", sans-serif;
  line-height: 1.25;
}

.p-topReport-card__heading {
  color: #FFF;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.44444;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
}

.p-topReport__link {
  margin: 30px auto 0;
}

.p-topEvent {
  padding-top: 61px;
  padding-bottom: 59px;
}
@media screen and (min-width: 768px) {
  .p-topEvent {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}

.p-topEvent__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.61538;
  padding-left: 32px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-topEvent__title {
    font-size: 32px;
    line-height: 1.3125;
    padding-left: 40px;
  }
}
.p-topEvent__title::before {
  content: "";
  position: absolute;
  top: 9px;
  left: 0;
  width: 24px;
  height: 24px;
  background: url(../img/icon-party.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .p-topEvent__title::before {
    top: 5px;
    width: 32px;
    height: 32px;
  }
}

.p-topEvent__headText {
  margin-top: 10px;
  font-size: 18px;
  line-height: 1.55556;
}

.p-topEvent__cards {
  margin-top: 20px;
  border-top: 2px dashed rgba(203, 44, 37, 0.5);
  display: flex;
  flex-direction: column;
}
@media (any-hover: hover) {
  .p-topEvent__cards a:hover .p-topEvent-card__image img {
    transform: scale(1.1);
  }
}

.p-topEvent-card {
  padding: 13px 10px 16px 0;
  border-bottom: 2px dashed rgba(203, 44, 37, 0.5);
  display: flex;
  align-items: center;
  gap: 10px;
}
@media screen and (max-width: 330px) {
  .p-topEvent-card {
    padding-right: 0;
  }
}
@media screen and (min-width: 768px) {
  .p-topEvent-card {
    padding: 18px 0 20px;
    gap: 20px;
  }
}

.p-topEvent-card__image {
  width: 100px;
  flex-shrink: 0;
  aspect-ratio: 100/66.6;
  border-radius: 3.333px;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .p-topEvent-card__image {
    width: 240px;
    aspect-ratio: 240/159.84;
    border-radius: 8px;
  }
}
.p-topEvent-card__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.6s ease;
}

.p-topEvent-card__body {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
@media screen and (min-width: 768px) {
  .p-topEvent-card__body {
    gap: 8px;
  }
}

.p-topEvent-card__period {
  display: inline-flex;
  color: #CB2C25;
}
.p-topEvent-card__period dt {
  font-weight: 500;
  line-height: 1.25;
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  .p-topEvent-card__period dt {
    font-size: 24px;
    line-height: 1.16667;
  }
}
.p-topEvent-card__period dt::after {
  content: "：";
}
.p-topEvent-card__period dd {
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
  line-height: 1.25;
}
@media screen and (min-width: 768px) {
  .p-topEvent-card__period dd {
    font-size: 24px;
    line-height: 1.16667;
  }
}

.p-topEvent-card__heading {
  line-height: 1.5;
}
@media screen and (max-width: 767.98px) {
  .p-topEvent-card__heading {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 2;
  }
}
@media screen and (min-width: 768px) {
  .p-topEvent-card__heading {
    font-size: 18px;
    line-height: 1.77778;
  }
}

.p-topEvent__link {
  margin: 30px auto 0;
}

.p-topAmbassador {
  padding: 30px 20px 40px;
  background: #FBE8D6;
  border-radius: 8px;
}

.p-topAmbassador__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.61538;
  padding-left: 32px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-topAmbassador__title {
    font-size: 32px;
    line-height: 1.3125;
    padding-left: 40px;
  }
}
.p-topAmbassador__title::before {
  content: "";
  position: absolute;
  top: 12px;
  left: 3px;
  width: 18px;
  height: 18px;
  background: url(../img/icon-pen.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .p-topAmbassador__title::before {
    top: 9px;
    width: 24px;
    height: 24px;
  }
}

.p-topAmbassador__swiperArea {
  margin-top: 20px;
  position: relative;
}
.p-topAmbassador__swiperArea .c-swiper__prev,
.p-topAmbassador__swiperArea .c-swiper__next {
  top: 35% !important;
}
@media screen and (min-width: 1100px) {
  .p-topAmbassador__swiperArea .c-swiper__prev,
  .p-topAmbassador__swiperArea .c-swiper__next {
    top: 28% !important;
    width: 32px !important;
    height: 32px !important;
    background: #CB2C25 url(../img/icon_white-arrow.svg) no-repeat center center/7.85px 13.3px;
  }
}
.p-topAmbassador__swiperArea .c-swiper__prev {
  left: -16px !important;
}
@media screen and (min-width: 1100px) {
  .p-topAmbassador__swiperArea .c-swiper__prev {
    left: 21px !important;
  }
}
.p-topAmbassador__swiperArea .c-swiper__next {
  right: -16px !important;
}
@media screen and (min-width: 1100px) {
  .p-topAmbassador__swiperArea .c-swiper__next {
    right: 27px !important;
  }
}
.p-topAmbassador__swiperArea .swiper-pagination-bullet {
  opacity: 1 !important;
}
.p-topAmbassador__swiperArea .swiper-pagination-bullet-active {
  background: #CB2C25;
}

.p-topAmbassador__swiper {
  padding-bottom: 44px !important;
}

.p-topAmbassador__swiper-slide {
  max-width: 313px;
}
@media screen and (min-width: 1100px) {
  .p-topAmbassador__swiper-slide {
    max-width: 185px;
  }
}
@media (any-hover: hover) {
  .p-topAmbassador__swiper-slide a:hover .p-topAmbassador-card__image img {
    transform: scale(1.1);
  }
}

.p-topAmbassador-card {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.p-topAmbassador-card__image {
  width: 100%;
  aspect-ratio: 1/1;
  border-radius: 13.535px;
  overflow: hidden;
}
@media screen and (min-width: 1100px) {
  .p-topAmbassador-card__image {
    border-radius: 8px;
  }
}
.p-topAmbassador-card__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.6s ease;
}

.p-topAmbassador-card__body {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
}

.p-topAmbassador-card__heading {
  font-size: 18px;
  font-weight: 400;
  line-height: 0.88889;
}

.p-topAmbassador-card__position {
  color: #EF802B;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.14286;
}

.p-topAmbassador-card__explain {
  font-size: 14px;
  font-weight: 500;
  line-height: 2.00311;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
}

.p-topAmbassador__link {
  margin: 18px auto 0;
}

.p-topNews {
  padding-top: 61px;
}
@media screen and (min-width: 1100px) {
  .p-topNews {
    padding-top: 80px;
    padding-bottom: 57px;
  }
}

.p-topNews__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.61538;
  padding-left: 32px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-topNews__title {
    padding-left: 40px;
    font-size: 32px;
    line-height: 1.3125;
  }
}
.p-topNews__title::before {
  content: "";
  position: absolute;
  top: 12px;
  left: 2px;
  width: 20px;
  height: 18px;
  background: url(../img/icon-newspaper.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .p-topNews__title::before {
    width: 26.667px;
    height: 24px;
  }
}

.p-topNews__cards {
  margin-top: 30px;
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 30px;
}
@media screen and (min-width: 768px) and (max-width: 1099.98px) {
  .p-topNews__cards {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (min-width: 768px) {
  .p-topNews__cards {
    margin-top: 19px;
    gap: 20px;
  }
}
@media screen and (min-width: 1100px) {
  .p-topNews__cards {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (min-width: 1100px) {
  .p-topNews__cards--sp-tb {
    display: none;
  }
}
@media screen and (max-width: 1099.98px) {
  .p-topNews__cards--pc {
    display: none;
  }
}
@media (any-hover: hover) {
  .p-topNews__cards li a:hover .p-topNews-card__image img {
    transform: scale(1.1);
  }
}

.p-topNews-card {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.p-topNews-card__image {
  width: 100%;
  aspect-ratio: 353/235.1;
  border-radius: 10.086px;
  overflow: hidden;
}
.p-topNews-card__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.6s ease;
}

.p-topNews-card__date {
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
  line-height: 1.25;
}

.p-topNews-card__heading {
  margin-top: 8px;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.44444;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
}
@media screen and (min-width: 768px) {
  .p-topNews-card__heading {
    -webkit-line-clamp: 3;
  }
}

.p-topNews__link {
  margin: 33px auto 0;
}

.p-topBanner__contents {
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.p-topBanner__contents a {
  display: block;
  width: 100%;
  aspect-ratio: 353/104;
  transition: opacity 0.2s ease;
}
@media screen and (min-width: 1100px) {
  .p-topBanner__contents a {
    aspect-ratio: 340/100;
  }
}
.p-topBanner__contents a img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (any-hover: hover) {
  .p-topBanner__contents a:hover {
    opacity: 0.8;
  }
}

.p-topSideRank {
  margin-top: 31px;
}

.p-topSideRank__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.27273;
  padding-left: 30px;
  position: relative;
}
.p-topSideRank__title::before {
  content: "";
  position: absolute;
  top: 3px;
  left: 0;
  width: 24px;
  height: 19.508px;
  background: url(../img/icon-crown.svg) no-repeat center center/contain;
}
@media screen and (min-width: 1100px) {
  .p-topSideRank__title::before {
    top: 4px;
  }
}

.p-topSideRank__cards {
  margin-top: 20px;
}
.p-topSideRank__cards li:last-child .p-topSideRank-card {
  border-bottom: 1px solid #DADADA;
}
@media (any-hover: hover) {
  .p-topSideRank__cards li a:hover .p-topSideRank-card__image img {
    transform: scale(1.1);
  }
}

.p-topSideRank-card {
  border-top: 1px solid #DADADA;
  padding: 14px 0;
  display: flex;
  align-items: center;
  gap: 10px;
}
@media screen and (min-width: 1100px) {
  .p-topSideRank-card {
    padding: 19px 0 20px;
  }
}

.p-topSideRank-card__image {
  width: 100px;
  flex-shrink: 0;
  aspect-ratio: 100/65;
  border-radius: 3px;
  overflow: hidden;
}
.p-topSideRank-card__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.6s ease;
}

.p-topSideRank-card__body {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.p-topSideRank-card__number {
  color: #CB2C25;
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: 1.6px;
}
@media screen and (min-width: 1100px) {
  .p-topSideRank-card__number {
    font-size: 14px;
  }
}

.p-topSideRank-card__heading {
  line-height: 1.5;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
}
@media screen and (min-width: 1100px) {
  .p-topSideRank-card__heading {
    font-size: 12px;
  }
}

.p-topSideRank__link {
  margin-top: 22px;
  text-align: right;
  font-size: 17px;
  line-height: 1.01202;
  display: block;
  padding-right: 25px;
  position: relative;
}
@media screen and (min-width: 1100px) {
  .p-topSideRank__link {
    margin-top: 14px;
  }
}
.p-topSideRank__link::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  width: 16px;
  aspect-ratio: 1/1;
  border-radius: 50%;
  background: #CB2C25 url(../img/icon_white-arrow.svg) no-repeat center center/3.925px 6.667px;
}

.p-sideArea {
  margin-top: 32px;
}

.p-sideArea__title {
  color: #222;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.45455;
  padding-left: 30px;
  position: relative;
}
.p-sideArea__title::before {
  content: "";
  position: absolute;
  top: 5px;
  left: 4px;
  width: 16.387px;
  height: 21.33px;
  background: url(../img/icon-map.svg) no-repeat center center/contain;
}

.p-sideArea__contents {
  margin-top: 10px;
}

.p-sidePrice {
  margin-top: 34px;
}

.p-sidePrice__title {
  color: #222;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.45455;
  padding-left: 30px;
  position: relative;
}
.p-sidePrice__title::before {
  content: "";
  position: absolute;
  top: 4px;
  left: 0;
  width: 24px;
  height: 24px;
  background: url(../img/icon-money.svg) no-repeat center center/contain;
}

.p-sidePrice__contents {
  margin-top: 10px;
}
@media screen and (min-width: 1100px) {
  .p-sidePrice__contents {
    margin-top: 19px;
  }
}

.p-sideKodawari {
  margin-top: 31px;
}

.p-sideKodawari__title {
  color: #222;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.45455;
  padding-left: 30px;
  position: relative;
}
.p-sideKodawari__title::before {
  content: "";
  position: absolute;
  top: 5px;
  left: 2px;
  width: 20.314px;
  height: 20.314px;
  background: url(../img/icon-mushimegane.svg) no-repeat center center/contain;
}

.p-sideKodawari__contents {
  margin-top: 19px;
}

.p-topCoupon {
  padding-top: 97px;
}
@media screen and (min-width: 1100px) {
  .p-topCoupon {
    padding-top: 159px;
  }
}

.p-topCoupon__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.61538;
}
@media screen and (min-width: 768px) {
  .p-topCoupon__title {
    font-size: 32px;
    line-height: 1.3125;
  }
}

.p-topCoupon__image {
  margin-top: 20px;
}
@media screen and (min-width: 1100px) {
  .p-topCoupon__image {
    margin-top: 30px;
  }
}
@media (any-hover: hover) {
  .p-topCoupon__image a:hover {
    opacity: 0.8;
  }
}

.p-topKeywords {
  margin-top: 50px;
}

.p-topKeywords__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.61538;
}
@media screen and (min-width: 768px) {
  .p-topKeywords__title {
    font-size: 32px;
    line-height: 1.3125;
  }
}

.p-topKeywords__tags {
  margin-top: 20px;
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  padding-bottom: 48px;
  border-bottom: 2px dashed rgba(203, 44, 37, 0.5);
}

.p-topKeywords__tag {
  display: block;
  padding: 8px 12px;
  border-radius: 18px;
  background: #FBE8D6;
  line-height: 1;
  transition: background-color 0.2s ease;
}
.p-topKeywords__tag::before {
  content: "#";
  color: #CB2C25;
}
@media (any-hover: hover) {
  .p-topKeywords__tag:hover {
    background-color: #FCD8B5;
  }
}

.p-topCatArea {
  padding-top: 50px;
  padding-bottom: 79px;
}

.p-topCatArea__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.61538;
}
@media screen and (min-width: 768px) {
  .p-topCatArea__title {
    font-size: 32px;
    line-height: 1.3125;
  }
}

.p-topCatArea__areas {
  margin-top: 20px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.p-topCatArea__area {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media screen and (min-width: 768px) {
  .p-topCatArea__area {
    flex-direction: row;
  }
}

.p-topCatArea__areaHead {
  width: 100%;
  padding-block: 6px;
  border-radius: 8px;
  background: #CB2C25;
  text-align: center;
  color: #FFF;
  font-weight: 700;
  line-height: 1.75;
}
@media screen and (min-width: 768px) {
  .p-topCatArea__areaHead {
    width: 140px;
    flex-shrink: 0;
  }
}

.p-topCatArea__categories {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 20px;
  min-height: 32px;
}
@media screen and (min-width: 768px) {
  .p-topCatArea__categories {
    flex-grow: 1;
  }
}
.p-topCatArea__categories a {
  display: block;
  padding: 8px 12px;
  border-radius: 18px;
  background: #FBE8D6;
  line-height: 1;
  transition: background-color 0.2s ease;
}
@media (any-hover: hover) {
  .p-topCatArea__categories a:hover {
    background-color: #FCD8B5;
  }
}

.p-rankPage__head {
  margin-top: 43px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
@media screen and (min-width: 768px) {
  .p-rankPage__head {
    max-width: 880px;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }
}

.p-rankPage__selectArea {
  margin-left: auto;
}

.p-rankPage__form {
  position: relative;
}
.p-rankPage__form::after {
  content: "";
  position: absolute;
  top: 46%;
  right: 15px;
  width: 7px;
  height: 7px;
  transform: translateY(-50%) rotate(-45deg);
  border-bottom: 1.5px solid #000;
  border-left: 1.5px solid #000;
  pointer-events: none;
}

.p-rankPage__select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 200px;
  border-radius: 4px;
  border: 1px solid #C1B9B2;
  background: #FFF;
  padding: 12.7px 15px 8.57px;
  color: #222;
  font-size: 14px;
  line-height: 1;
}

.p-rankingArticles {
  margin-top: 5px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.p-rankingArticles__item {
  position: relative;
}
.p-rankingArticles__item.rank-1 .p-rankingArticles__badge {
  background: url(../img/ranking-badge-1.svg) no-repeat center center/contain;
}
.p-rankingArticles__item.rank-2 .p-rankingArticles__badge {
  background: url(../img/ranking-badge-2.svg) no-repeat center center/contain;
}
.p-rankingArticles__item.rank-3 .p-rankingArticles__badge {
  background: url(../img/ranking-badge-3.svg) no-repeat center center/contain;
}
@media (any-hover: hover) {
  .p-rankingArticles__item a:hover .c-articleCard__image img {
    transform: scale(1.1);
  }
}

.p-rankingArticles__badge {
  position: absolute;
  z-index: 10;
  top: 6px;
  left: 3px;
  width: 60px;
  height: 57.7px;
  background: url(../img/ranking-badge-4.svg) no-repeat center center/contain;
  pointer-events: none;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  padding-bottom: 10px;
}
@media screen and (min-width: 768px) {
  .p-rankingArticles__badge {
    top: 16px;
    left: 13px;
  }
}
.p-rankingArticles__badge p {
  color: #FFF;
  font-family: "Montserrat", sans-serif;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.16667;
}

.p-sideOsusume {
  margin-top: 30px;
}

.p-sideOsusume__title {
  color: #222;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.45455;
  padding-left: 38px;
  position: relative;
}
.p-sideOsusume__title::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 30.411px;
  height: 27px;
  background: url(../img/icon-star.svg) no-repeat center center/contain;
}

.p-sideOsusume__contents {
  margin-top: 20px;
}

.p-sideOsusume__categories {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.p-sideOsusume__categories a {
  padding: 15px 41px 15px 15px;
  border-radius: 8px;
  background: #FFF;
  box-shadow: -2px 0 2px 0 rgba(114, 100, 72, 0.05), 2px 0 2px 0 rgba(114, 100, 72, 0.05), 0 2px 2px 0 rgba(114, 100, 72, 0.05);
  display: flex;
  align-items: center;
  gap: 10px;
  position: relative;
}
.p-sideOsusume__categories a::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 19.5px;
  width: 6.914px;
  height: 12.41px;
  background: url(../img/icon_red-arrow.svg) no-repeat center center/contain;
}

.p-sideOsusume-cat__icon {
  width: 60px;
  flex-shrink: 0;
  height: 60px;
  border-radius: 3px;
  background: #FBE8D6;
  display: grid;
  place-items: center;
}

.p-sideOsusume-cat__heading {
  flex-grow: 1;
  color: #CB2C25;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.44444;
}

.p-archiveSearchArea {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 18px;
}
@media screen and (min-width: 768px) {
  .p-archiveSearchArea {
    grid-template-columns: repeat(2, 1fr);
    gap: 36px;
  }
}

.p-archiveSearch {
  margin-top: 5px;
  border-radius: 8px;
  overflow: hidden;
}
.p-archiveSearch.is-open .p-archiveSearch__head::after {
  top: 53%;
  transform: translateY(-50%) rotate(135deg);
}

.p-archiveSearch__head {
  width: 100%;
  padding: 10px 20px;
  background: #CB2C25;
  text-align: left;
  color: #FFF;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.27273;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-archiveSearch__head {
    padding: 12px 20px 10px 28px;
  }
}
@media screen and (min-width: 320px) and (max-width: 419.98px) {
  .p-archiveSearch__head {
    padding-inline: clamp(0.625rem, -1.375rem + 10vw, 1.25rem);
  }
}
.p-archiveSearch__head::after {
  content: "";
  position: absolute;
  top: 47%;
  right: 31px;
  width: 10px;
  height: 10px;
  border-bottom: 2px solid #FFF;
  border-left: 2px solid #FFF;
  transform: translateY(-50%) rotate(-45deg);
  pointer-events: none;
}
@media screen and (min-width: 320px) and (max-width: 419.98px) {
  .p-archiveSearch__head::after {
    right: calc(11px + clamp(0.625rem, -1.375rem + 10vw, 1.25rem));
  }
}

.p-archiveSearch__formArea,
.p-archiveSearch__form {
  height: 100%;
}

.p-archiveSearch__form {
  background: #FFF;
  padding: 20px;
}
@media screen and (min-width: 320px) and (max-width: 419.98px) {
  .p-archiveSearch__form {
    padding: clamp(0.625rem, -1.375rem + 10vw, 1.25rem);
  }
}

.p-asForm__field {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.p-asForm__label {
  font-size: 14px;
  line-height: 1;
}

.p-asForm__selectArea {
  position: relative;
}
.p-asForm__selectArea::after {
  content: "";
  position: absolute;
  top: 46%;
  right: 15px;
  width: 7px;
  height: 7px;
  transform: translateY(-50%) rotate(-45deg);
  border-bottom: 1.5px solid #000;
  border-left: 1.5px solid #000;
  pointer-events: none;
}

.p-asForm__select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 4px;
  border: 1px solid #C1B9B2;
  background: #FFF;
  width: 100%;
  padding: 11.7px 24px 12.3px 9.22px;
  font-size: 14px;
  line-height: 1;
}

.p-asForm__inputArea {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 20px;
}

.p-asForm__input {
  width: 1px;
  height: 1px;
  position: absolute;
  clip: rect(0, 0, 0, 0);
  overflow: hidden;
}
.p-asForm__input:checked + .p-asForm__inputText::before {
  border-color: #0F83C6;
}
.p-asForm__input:checked + .p-asForm__inputText::after {
  opacity: 1;
}

.p-asForm__inputText {
  padding-left: 30px;
  color: #222;
  position: relative;
}
.p-asForm__inputText:hover {
  cursor: pointer;
}
.p-asForm__inputText::before, .p-asForm__inputText::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 3px;
  width: 18px;
  height: 18px;
  border-radius: 1px;
}
.p-asForm__inputText::before {
  border: 2px solid #CCCCCC;
}
.p-asForm__inputText::after {
  z-index: 10;
  background: url(../img/search-checkIcon.svg) no-repeat center center/contain;
  opacity: 0;
}

.p-asForm__submit {
  margin: 20px auto 0;
  border-radius: 6.144px;
  background: #CB2C25;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 11px 22px 11px 15px;
  width: 195px;
  height: -moz-fit-content;
  height: fit-content;
  color: #FFF;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.22888;
}
@media screen and (min-width: 768px) {
  .p-asForm__submit {
    width: 195px;
  }
}
.p-asForm__submit::before {
  content: "";
  width: 12.696px;
  height: 12.696px;
  background: url(../img/icon-mushimegane_white.svg) no-repeat center center/contain;
}

.p-archiveList {
  margin-top: 30px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media (any-hover: hover) {
  .p-archiveList li a:hover .c-articleCard__image img {
    transform: scale(1.1);
  }
}

.p-archiveEmpty {
  margin-top: 30px;
}

.p-archivePagination {
  margin-top: 31px;
}

.c-bottomCoupon {
  margin-top: 31px;
  padding-bottom: 38px;
}
@media screen and (min-width: 768px) {
  .c-bottomCoupon {
    margin-top: 62px;
    padding-bottom: 77px;
  }
}

.p-archiveBooking__title {
  color: #222;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.27273;
}

.p-archiveBooking__contents {
  margin-top: 19px;
  border-top: 4px solid #CB2C25;
  border-bottom: 4px solid #CB2C25;
  background: #F2F2F2;
  padding: 16px 20px 30px;
}
.p-archiveBooking__contents form {
  display: block !important;
}

.p-archiveSideRank {
  margin-top: 31px;
}

.p-archiveSideRank__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.27273;
  padding-left: 30px;
  position: relative;
}
.p-archiveSideRank__title::before {
  content: "";
  position: absolute;
  top: 3px;
  left: 0;
  width: 24px;
  height: 19.508px;
  background: url(../img/icon-crown.svg) no-repeat center center/contain;
}
@media screen and (min-width: 1100px) {
  .p-archiveSideRank__title::before {
    top: 4px;
  }
}

.p-archiveSideRank__cards {
  margin-top: 20px;
}
.p-archiveSideRank__cards li:last-child .p-archiveSideRank-card {
  border-bottom: 1px solid #DADADA;
}
@media (any-hover: hover) {
  .p-archiveSideRank__cards li a:hover .p-archiveSideRank-card__image img {
    transform: scale(1.1);
  }
}

.p-archiveSideRank-card {
  border-top: 1px solid #DADADA;
  padding: 14px 0;
  display: flex;
  align-items: center;
  gap: 10px;
}
@media screen and (min-width: 1100px) {
  .p-archiveSideRank-card {
    padding: 19px 0 20px;
  }
}

.p-archiveSideRank-card__image {
  width: 100px;
  flex-shrink: 0;
  aspect-ratio: 100/65;
  border-radius: 3px;
  overflow: hidden;
}
.p-archiveSideRank-card__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.6s ease;
}

.p-archiveSideRank-card__body {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.p-archiveSideRank-card__number {
  color: #CB2C25;
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: 1.6px;
}
@media screen and (min-width: 1100px) {
  .p-archiveSideRank-card__number {
    font-size: 14px;
  }
}

.p-archiveSideRank-card__heading {
  line-height: 1.5;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
}
@media screen and (min-width: 1100px) {
  .p-archiveSideRank-card__heading {
    font-size: 12px;
  }
}

.p-archiveSideRank__link {
  margin-top: 22px;
  text-align: right;
  font-size: 17px;
  line-height: 1.01202;
  display: block;
  padding-right: 25px;
  position: relative;
}
@media screen and (min-width: 1100px) {
  .p-archiveSideRank__link {
    margin-top: 14px;
  }
}
.p-archiveSideRank__link::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  width: 16px;
  aspect-ratio: 1/1;
  border-radius: 50%;
  background: #CB2C25 url(../img/icon_white-arrow.svg) no-repeat center center/3.925px 6.667px;
}

@media screen and (max-width: 767.98px) {
  body.single .p-header-sub__list {
    padding: 10px 21px;
  }
}

@media screen and (max-width: 767.98px) {
  body.single .l-main {
    margin-top: 97px;
  }
}

body.single .l-mainContents {
  padding-inline: 0;
}
@media screen and (min-width: 768px) {
  body.single .l-mainContents {
    padding-inline: 20px;
  }
}

.p-singleArticle {
  margin-top: 5px;
  padding: 30px;
  background: #FFF;
  box-shadow: -2px 0 2px 0 rgba(114, 100, 72, 0.05), 2px 0 2px 0 rgba(114, 100, 72, 0.05), 0 2px 2px 0 rgba(114, 100, 72, 0.05);
}
@media screen and (min-width: 768px) {
  .p-singleArticle {
    padding: 60px;
    border-radius: 8px;
  }
}

.p-singleArticle__head {
  padding-bottom: 10px;
  border-bottom: 4px solid #CB2C25;
}
@media screen and (min-width: 768px) {
  .p-singleArticle__head {
    padding-bottom: 18px;
  }
}

.p-singleArticle__eventPeriod {
  display: flex;
  align-items: center;
  gap: 5.75px;
}
.p-singleArticle__eventPeriod dt {
  padding: 4px 13px 4px 10px;
  clip-path: polygon(100% 0, 93% 50%, 100% 100%, 0 100%, 0 0);
  background: #CB2C25;
  color: #FFF;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.28571;
  white-space: nowrap;
}
.p-singleArticle__eventPeriod dd {
  color: #CB2C25;
  font-family: "Montserrat", sans-serif;
  font-size: 18px;
  font-weight: 600;
  line-height: 1;
}

.p-singleArticle__title {
  margin-top: 9px;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.44;
  letter-spacing: -1px;
}
@media screen and (min-width: 768px) {
  .p-singleArticle__title {
    margin-top: 19.85px;
    font-size: 26px;
    line-height: 1.0786;
    letter-spacing: normal;
  }
}

.p-singleArticle__dates {
  margin-top: 3px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
@media screen and (min-width: 768px) {
  .p-singleArticle__dates {
    margin-top: 13px;
    flex-direction: row;
    gap: 9px;
  }
}
.p-singleArticle__dates time {
  font-family: "Montserrat", sans-serif;
  font-size: 13.087px;
  line-height: 1.14286;
}

.p-singleArticle__categories {
  margin-top: 14px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
@media screen and (min-width: 768px) {
  .p-singleArticle__categories {
    margin-top: 20px;
  }
}

.p-singleArticle__category {
  padding: 6px 10px;
  border-radius: 14px;
  background: #F2F2F2;
  font-size: 12px;
  line-height: 1.33333;
}

.p-singleArticle__tags {
  margin-top: 16px;
  display: flex;
  flex-wrap: wrap;
  gap: 9.35px;
}
@media screen and (min-width: 768px) {
  .p-singleArticle__tags {
    margin-top: 20px;
  }
}

.p-singleArticle__tag {
  font-size: 13.087px;
  line-height: 1;
}
.p-singleArticle__tag::before {
  content: "#";
  color: #CB2C25;
}

.p-singleArticle__thumbnail {
  margin-top: 22px;
  width: 100%;
  aspect-ratio: 297/194;
}
@media screen and (min-width: 768px) {
  .p-singleArticle__thumbnail {
    margin: 20px auto 0;
    width: calc(100% - 100px);
    aspect-ratio: 760/500;
  }
}
.p-singleArticle__thumbnail img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-singleArticle__leadText {
  margin-top: 37px;
}
@media screen and (min-width: 768px) {
  .p-singleArticle__leadText {
    margin-top: 30px;
  }
}
.p-singleArticle__leadText p {
  font-size: 16px;
  line-height: 1.9;
}
@media screen and (min-width: 768px) {
  .p-singleArticle__leadText p {
    font-size: 18px;
    line-height: 1.66667;
    letter-spacing: -0.36px;
  }
}
.p-singleArticle__leadText a {
  color: #0F83C6;
  line-height: 2;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-underline-position: from-font;
}
.p-singleArticle__leadText em, .p-singleArticle__leadText i {
  font-style: normal;
  background: linear-gradient(transparent 50%, #F0D2B9 50%);
}

.p-singleArticle__credits {
  margin-top: 30px;
  display: flex;
  flex-direction: column;
  gap: 23px;
}
@media screen and (min-width: 768px) {
  .p-singleArticle__credits {
    flex-direction: row;
  }
}

.p-singleArticle__credit {
  width: 100%;
  height: -moz-fit-content;
  height: fit-content;
  border-radius: 8px;
  border: 1px solid #DADADA;
  padding: 14px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-singleArticle__credit {
    width: calc((100% - 23px) / 2);
  }
}

.p-singleArticle-credit__profile {
  display: flex;
  align-items: center;
  gap: 20px;
}
@media screen and (max-width: 375px) {
  .p-singleArticle-credit__profile {
    gap: 10px;
  }
}

.p-singleArticle-credit__image {
  width: 60px;
  flex-shrink: 0;
  aspect-ratio: 1/1;
  border-radius: 4px;
  overflow: hidden;
}
.p-singleArticle-credit__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-singleArticle-credit__profileText {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.p-singleArticle-credit__name {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.33333;
}
@media screen and (max-width: 375px) {
  .p-singleArticle-credit__name {
    font-size: 15px;
    gap: 5px;
  }
}
.p-singleArticle-credit__name .label {
  padding: 6px 14px;
  border-radius: 4px;
  background: #CB2C25;
  color: #FFF;
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
  white-space: nowrap;
}
@media screen and (max-width: 375px) {
  .p-singleArticle-credit__name .label {
    padding: 6px;
    font-size: 12px;
  }
}

.p-singleArticle-credit__position {
  color: #EF802B;
  font-size: 12px;
  line-height: 1.66667;
}

.p-singleArticle-credit__explain {
  font-size: 12px;
  line-height: 1.5;
  position: relative;
  overflow: hidden;
}
.p-singleArticle-credit__explain::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(176deg, rgba(255, 255, 255, 0) 3.11%, #FFF 77.76%);
  display: none;
}
.p-singleArticle-credit__explain.is-hidden {
  max-height: 3em;
}
.p-singleArticle-credit__explain.is-hidden::after {
  display: block;
}
.p-singleArticle-credit__explain.is-show {
  max-height: none;
}
.p-singleArticle-credit__explain.is-show::after {
  display: none;
}

.p-singleArticle-credit__button {
  font-size: 12px;
  line-height: 1.43369;
  padding-left: 22px;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  position: relative;
}
.p-singleArticle-credit__button.showButton {
  position: absolute;
  bottom: 15px;
  left: 50%;
  transform: translate(-50%);
}
.p-singleArticle-credit__button::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 6px;
  width: 12px;
  aspect-ratio: 1/1;
  background: url(../img/plus-icon_button.svg) no-repeat center center/contain;
}

.p-singleArticle__content {
  position: relative;
}
.p-singleArticle__content .js-toc-button {
  display: none;
}
.p-singleArticle__content:has(#toc_container) .js-toc-button {
  position: absolute;
  z-index: 10;
  top: 350px;
  left: 50%;
  transform: translateX(-50%);
  color: #0F83C6;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.44444;
  white-space: nowrap;
  display: flex;
  align-items: center;
  gap: 4.5px;
}
.p-singleArticle__content:has(#toc_container) .js-toc-button .icon {
  width: 18px;
  height: 18px;
  background: url(../img/plus-icon_buttonBlue.svg) no-repeat center center/contain;
}
.p-singleArticle__content:has(#toc_container) .js-toc-button.is-show {
  display: none;
}
.p-singleArticle__content #toc_container {
  margin-top: 30px;
  width: 100%;
  height: 405px;
  padding: 20px;
  background: #F2F2F2;
  border: 0;
  display: block;
  overflow: hidden;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-singleArticle__content #toc_container {
    padding: 30px;
  }
}
.p-singleArticle__content #toc_container::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 200px;
  background: linear-gradient(176deg, rgba(242, 242, 242, 0) 3.11%, #F2F2F2 77.76%);
}
.p-singleArticle__content #toc_container.is-show {
  height: -moz-fit-content;
  height: fit-content;
}
.p-singleArticle__content #toc_container.is-show::after {
  display: none;
}
.p-singleArticle__content #toc_container .toc_title {
  text-align: left;
  font-size: 22px;
  font-weight: 500;
  line-height: 1.36364;
}
.p-singleArticle__content #toc_container .toc_list {
  margin-top: 15px !important;
}
.p-singleArticle__content #toc_container .toc_list > li > a {
  display: inline-block;
  width: 100%;
  color: #0F83C6;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.4;
  padding-block: 9.5px;
  border-bottom: 1px dotted #A7A7A7;
}
@media screen and (min-width: 768px) {
  .p-singleArticle__content #toc_container .toc_list > li > a {
    font-size: 19px;
  }
}
.p-singleArticle__content #toc_container .toc_list > li > ul {
  margin-top: 6px;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 6px;
  padding-bottom: 13px;
}
@media screen and (min-width: 768px) {
  .p-singleArticle__content #toc_container .toc_list > li > ul {
    margin-top: 9.5px;
    gap: 16px;
  }
}
.p-singleArticle__content #toc_container .toc_list > li > ul a {
  color: #0F83C6;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.44444;
}
@media screen and (min-width: 768px) {
  .p-singleArticle__content #toc_container .toc_list > li > ul a {
    font-size: 17px;
  }
}
.p-singleArticle__content * + * {
  margin-top: 40px;
}
.p-singleArticle__content h2 {
  margin-top: 60px;
  padding: 10px 15px 10px 49px;
  background: #CB2C25;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-singleArticle__content h2 {
    padding: 10px 15px 10px 53px;
  }
}
.p-singleArticle__content h2::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 17px;
  width: 24.5px;
  height: 20.44px;
  background: url(../img/icon-saunaHat.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .p-singleArticle__content h2::before {
    width: 28px;
    height: 23.36px;
  }
}
.p-singleArticle__content h2 span {
  color: #FFF;
  font-size: 22px;
  font-weight: 600;
  line-height: 1.30435;
}
@media screen and (min-width: 768px) {
  .p-singleArticle__content h2 span {
    font-size: 26px;
    line-height: 1.23077;
  }
}
.p-singleArticle__content h3 {
  background: #F9F6EB;
  padding: 5px 18px;
  position: relative;
}
.p-singleArticle__content h3::before {
  content: "";
  position: absolute;
  top: 0;
  left: -2px;
  width: 4px;
  height: 100%;
  background: #CB2C25;
}
.p-singleArticle__content h3 span {
  font-size: 21px;
  font-weight: 600;
  line-height: 1.3913;
}
@media screen and (min-width: 768px) {
  .p-singleArticle__content h3 span {
    font-size: 23px;
  }
}
.p-singleArticle__content figure {
  margin-top: 60px;
}
.p-singleArticle__content p {
  font-size: 16px;
  line-height: 1.9;
}
@media screen and (min-width: 768px) {
  .p-singleArticle__content p {
    font-size: 18px;
    line-height: 1.66667;
    letter-spacing: -0.36px;
  }
}
.p-singleArticle__content a {
  color: #0F83C6;
  line-height: 2;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-underline-position: from-font;
}
.p-singleArticle__content em, .p-singleArticle__content i {
  font-style: normal;
  background: linear-gradient(transparent 50%, #F0D2B9 50%);
}

.p-singleArticle__share {
  margin-top: 52px;
}

.p-singleArticle__shareHeading {
  color: #CB2C25;
  font-family: "Montserrat", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.49;
  letter-spacing: 1.4px;
}

.p-singleArticle__shareList {
  margin-top: 20px;
  display: flex;
  gap: 15px;
}
.p-singleArticle__shareList a {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  border: 1px solid rgba(87, 88, 90, 0.3);
  display: grid;
  place-items: center;
}

.p-singleArticle__links {
  margin-top: 30px;
  border-top: 1px solid #F2F2F2;
  padding-top: 30px;
}

.p-singleArticle__officialLinks {
  margin-top: 36px;
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.p-singleArticle__officialLink {
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 8px 16px;
  border-radius: 4px;
}
.p-singleArticle__officialLink img {
  width: 20px;
  height: 20px;
}
.p-singleArticle__officialLink span {
  color: #FFF;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.16667;
}
@media (any-hover: hover) {
  .p-singleArticle__officialLink:hover {
    opacity: 0.8;
  }
}
.p-singleArticle__officialLink.tiktok {
  background: #333;
}
.p-singleArticle__officialLink.line {
  background: #06C755;
}

.p-singleArticle__nav {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}
.p-singleArticle__nav > a {
  display: block;
  width: calc((100% - 5px) / 2);
}
@media screen and (min-width: 768px) {
  .p-singleArticle__nav > a {
    max-width: 350px;
  }
}
@media (any-hover: hover) {
  .p-singleArticle__nav > a:hover .p-singleArticleNav-article__image img {
    transform: scale(1.1);
  }
}

.p-singleArticleNav__prev,
.p-singleArticleNav__next {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
}

@media screen and (min-width: 768px) {
  .p-singleArticleNav__prev {
    margin-right: auto;
  }
}
.p-singleArticleNav__prev .p-singleArticleNav__linkText span::after {
  transform: translate(-50%, -50%) rotate(180deg);
}

.p-singleArticleNav__bar {
  display: none;
}
@media screen and (min-width: 768px) {
  .p-singleArticleNav__bar {
    display: block;
    width: 1px;
    height: 80px;
    background: #F2F2F2;
  }
}

@media screen and (min-width: 768px) {
  .p-singleArticleNav__next {
    margin-left: auto;
  }
}
.p-singleArticleNav__next .p-singleArticleNav__linkText {
  justify-content: flex-end;
}
.p-singleArticleNav__next .p-singleArticleNav__linkText span::after {
  transform: translate(-50%, -50%);
}

.p-singleArticleNav-article {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
@media screen and (min-width: 768px) {
  .p-singleArticleNav-article {
    flex-direction: row;
    align-items: center;
    max-width: 350px;
  }
}

.p-singleArticleNav-article__image {
  width: 100%;
  aspect-ratio: 120/78;
  border-radius: 4px;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .p-singleArticleNav-article__image {
    width: 120px;
    flex-shrink: 0;
  }
}
.p-singleArticleNav-article__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.6s ease;
}

.p-singleArticleNav-article__body {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.p-singleArticleNav-article__date {
  font-family: "Montserrat", sans-serif;
  font-size: 13.087px;
  font-weight: 500;
  line-height: 1.14286;
}

.p-singleArticleNav-article__title {
  font-size: 12px;
  font-weight: 500;
  line-height: 2;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
}

.p-singleArticleNav__linkText {
  margin-top: 21px;
  display: flex;
  align-items: center;
  gap: 6px;
  font-weight: 600;
  line-height: 0.9375;
}
.p-singleArticleNav__linkText .icon {
  display: block;
  width: 24px;
  flex-shrink: 0;
  height: 24px;
  border-radius: 50%;
  background: #CB2C25;
  position: relative;
}
.p-singleArticleNav__linkText .icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 5.887px;
  height: 10px;
  background: url(../img/icon_white-arrow.svg) no-repeat center center/contain;
}

.p-singleRanking {
  margin-top: 80px;
}

.p-singleRanking__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 26px;
  font-weight: 500;
  line-height: 1.07692;
}

.p-singleRanking__list {
  margin-top: 20px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.p-singleRanking__item {
  position: relative;
}
.p-singleRanking__item.rank-1 .p-singleRanking__badge {
  background: url(../img/ranking-badge-1.svg) no-repeat center center/contain;
}
.p-singleRanking__item.rank-2 .p-singleRanking__badge {
  background: url(../img/ranking-badge-2.svg) no-repeat center center/contain;
}
.p-singleRanking__item.rank-3 .p-singleRanking__badge {
  background: url(../img/ranking-badge-3.svg) no-repeat center center/contain;
}
@media (any-hover: hover) {
  .p-singleRanking__item a:hover .c-articleCard__image img {
    transform: scale(1.1);
  }
}

.p-singleRanking__badge {
  position: absolute;
  z-index: 10;
  top: 6px;
  left: 3px;
  width: 60px;
  height: 57.7px;
  background: url(../img/ranking-badge-4.svg) no-repeat center center/contain;
  pointer-events: none;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  padding-bottom: 10px;
}
@media screen and (min-width: 768px) {
  .p-singleRanking__badge {
    top: 16px;
    left: 13px;
  }
}
.p-singleRanking__badge p {
  color: #FFF;
  font-family: "Montserrat", sans-serif;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.16667;
}

.p-singlePickup {
  margin-top: 60px;
}

.p-singlePickup__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 26px;
  font-weight: 500;
  line-height: 1.07692;
}

.p-singlePickup__list {
  margin-top: 20px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media (any-hover: hover) {
  .p-singlePickup__list a:hover .c-articleCard__image img {
    transform: scale(1.1);
  }
}

.p-singleAuthors {
  margin-top: 59px;
}

.p-singleAuthors__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 26px;
  font-weight: 500;
  line-height: 1.07692;
}

.p-singleAuthors__credits {
  margin-top: 20px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media (any-hover: hover) {
  .p-singleAuthors__credits a:hover .p-singleAuthors-credit__image img {
    transform: scale(1.1);
  }
}

.p-singleAuthors__credit {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 10px;
  border-radius: 10px;
  background: #FFF;
  box-shadow: -2px 0 2px 0 rgba(114, 100, 72, 0.05), 2px 0 2px 0 rgba(114, 100, 72, 0.05), 0 2px 2px 0 rgba(114, 100, 72, 0.05);
}
@media screen and (min-width: 768px) {
  .p-singleAuthors__credit {
    align-items: center;
    gap: 29px;
    padding: 20px;
  }
}

.p-singleAuthors-credit__image {
  width: 100px;
  flex-shrink: 0;
  aspect-ratio: 1/1;
  border-radius: 6.667px;
  overflow: hidden;
}
.p-singleAuthors-credit__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.6s ease;
}

.p-singleAuthors-credit__body {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
@media screen and (min-width: 768px) {
  .p-singleAuthors-credit__body {
    gap: 8px;
  }
}

.p-singleAuthors-credit__name {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.55797;
}
.p-singleAuthors-credit__name .label {
  padding: 6px 14px;
  border-radius: 4px;
  background: #CB2C25;
  color: #FFF;
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
}

.p-singleAuthors-credit__position {
  color: #EF802B;
  line-height: 1.75272;
  font-size: 12px;
}
@media screen and (min-width: 768px) {
  .p-singleAuthors-credit__position {
    font-size: 16px;
  }
}

.p-singleAuthors-credit__explain {
  font-size: 12px;
  line-height: 1.5;
}

.p-singleSide,
.p-categorySide {
  height: auto;
}

.p-sideBanner {
  margin-top: 30px;
  position: sticky;
  top: 150px;
}
.p-sideBanner img {
  display: block;
}

.p-categoryMainContents {
  margin-top: 26px;
  display: flex;
  flex-direction: column;
  gap: 60px;
  padding-bottom: 118px;
}

.p-categoryOsusume__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.61538;
  padding-left: 32px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-categoryOsusume__title {
    font-size: 32px;
    line-height: 1.3125;
    padding-left: 40px;
  }
}
.p-categoryOsusume__title::before {
  content: "";
  position: absolute;
  top: 9px;
  left: 1px;
  width: 22.8px;
  height: 20.25px;
  background: url(../img/icon-star.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .p-categoryOsusume__title::before {
    width: 30.4px;
    height: 27px;
  }
}

.p-categoryPrice__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.61538;
  padding-left: 40px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-categoryPrice__title {
    padding-left: 40px;
    font-size: 32px;
    line-height: 1.3125;
  }
}
.p-categoryPrice__title::before {
  content: "";
  position: absolute;
  top: 6px;
  left: 0;
  width: 32px;
  height: 32px;
  background: url(../img/icon-money.svg) no-repeat center center/contain;
}
@media screen and (min-width: 1100px) {
  .p-categoryPrice__title::before {
    top: 7px;
    left: 3px;
  }
}

.p-categoryKodawari__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.61538;
  padding-left: 32px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-categoryKodawari__title {
    padding-left: 40px;
    font-size: 32px;
    line-height: 1.3125;
  }
}
.p-categoryKodawari__title::before {
  content: "";
  position: absolute;
  top: 11px;
  left: 2px;
  width: 20.3px;
  height: 20.3px;
  background: url(../img/icon-mushimegane.svg) no-repeat center center/contain;
}
@media screen and (min-width: 1100px) {
  .p-categoryKodawari__title::before {
    top: 7px;
    left: 3px;
    width: 27px;
    height: 27px;
  }
}

.p-categoryColumn__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.61538;
  padding-left: 30px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-categoryColumn__title {
    font-size: 32px;
    line-height: 1.3125;
    padding-left: 40px;
  }
}
.p-categoryColumn__title::before {
  content: "";
  position: absolute;
  top: 12px;
  left: -2px;
  width: 24px;
  height: 19.5px;
  background: url(../img/icon-column.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .p-categoryColumn__title::before {
    top: 8px;
    left: 0px;
    width: 32px;
    height: 26px;
  }
}

.p-categoriesList {
  margin-top: 20px;
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 20px;
}
@media screen and (min-width: 1100px) {
  .p-categoriesList {
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
  }
}
@media (any-hover: hover) {
  .p-categoriesList a:hover .p-category-card__image img {
    transform: scale(1.1);
  }
}

.p-category-card {
  padding: 10px;
  border-radius: 8px;
  background: #FFF;
  box-shadow: -2px 0 2px 0 rgba(114, 100, 72, 0.05), 2px 0 2px 0 rgba(114, 100, 72, 0.05), 0 2px 2px 0 rgba(114, 100, 72, 0.05);
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media screen and (min-width: 768px) {
  .p-category-card {
    padding: 20px;
    flex-direction: row;
    align-items: center;
    gap: 40px;
  }
}

.p-category-card__image {
  width: 100%;
  aspect-ratio: 240/159.373;
  border-radius: 8px;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .p-category-card__image {
    flex-shrink: 0;
    width: 41.3793103448%;
  }
}
.p-category-card__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.6s ease;
}

.p-category-card__body {
  display: flex;
  flex-direction: column;
  gap: 10px;
  flex-grow: 1;
}

.p-category-card__bodyHead {
  display: flex;
  align-items: center;
  gap: 10px;
}

.p-category-card__icon {
  width: 60px;
  flex-shrink: 0;
  height: 60px;
  background: #FBE8D6;
  border-radius: 3px;
  display: grid;
  place-items: center;
}

.p-category-card__heading {
  flex-grow: 1;
  color: #CB2C25;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.40217;
}
@media screen and (min-width: 1100px) {
  .p-category-card__heading {
    font-size: 20px;
  }
}

.p-category-card__text {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.75272;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 3;
}

.p-categoryArea {
  padding-top: 89px;
  padding-bottom: 86px;
  background: #FFF;
  position: relative;
}

.p-categoryArea__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.75;
  padding-left: 32px;
  position: relative;
}
@media screen and (max-width: 390px) {
  .p-categoryArea__title {
    font-size: clamp(1.125rem, -0.589rem + 8.57vw, 1.5rem);
  }
}
@media screen and (min-width: 768px) {
  .p-categoryArea__title {
    font-size: 32px;
    line-height: 1.3125;
    padding-left: 40px;
  }
}
.p-categoryArea__title::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 5px;
  width: 16.4px;
  height: 21.3px;
  background: url(../img/icon-map.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .p-categoryArea__title::before {
    width: 21.8px;
    height: 28.4px;
  }
}

.p-categoryArea__areas {
  margin-top: 20px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.p-category-bottomCoupon {
  margin-top: 51px;
}
@media screen and (min-width: 768px) {
  .p-category-bottomCoupon {
    margin-top: 102px;
  }
}

.p-catSingleMain {
  margin-top: 170.5px;
}

.p-catSingleContent {
  margin-top: 30px;
  padding: 20px 10px;
  border-radius: 8px;
  background: #FFF;
  box-shadow: -2px 0 2px 0 rgba(114, 100, 72, 0.05), 2px 0 2px 0 rgba(114, 100, 72, 0.05), 0 2px 2px 0 rgba(114, 100, 72, 0.05);
}
@media screen and (min-width: 768px) {
  .p-catSingleContent {
    padding: 50px 60px;
  }
}

.p-catSingleContent__title {
  padding: 8px 15px;
  border-radius: 8px;
  background: #CB2C25;
  color: #FFF;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 28px;
  font-weight: 700;
  line-height: 1.33333;
}
@media screen and (min-width: 768px) {
  .p-catSingleContent__title {
    padding: 12px 20px;
    font-size: 36px;
  }
}

.p-catSingleContent__image {
  margin-top: 30px;
  width: 100%;
  aspect-ratio: 3/2;
  border-radius: 8px;
  overflow: hidden;
}
.p-catSingleContent__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-catSingleContent__contents {
  margin-top: 20px;
}
.p-catSingleContent__contents p {
  color: #222;
  line-height: 2.2;
}
.p-catSingleContent__contents a {
  color: #0F83C6;
  line-height: 2.2;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-underline-position: from-font;
}
.p-catSingleContent__contents em, .p-catSingleContent__contents i {
  font-style: normal;
  background: linear-gradient(transparent 50%, #F0D2B9 50%);
}

.p-catSinglePickup {
  margin-top: 60px;
  padding-bottom: 106px;
}

.p-catSinglePickup__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.3125;
}
@media screen and (min-width: 768px) {
  .p-catSinglePickup__title {
    font-size: 32px;
  }
}

.p-catSinglePickup__list {
  margin-top: 30px;
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 20px;
}
@media screen and (min-width: 1100px) {
  .p-catSinglePickup__list {
    gap: 30px;
  }
}
@media (any-hover: hover) {
  .p-catSinglePickup__list li a:hover .p-catSinglePickup-articleCard__image img {
    transform: scale(1.1);
  }
}

.p-catSinglePickup-articleCard {
  padding: 10px;
  border-radius: 8px;
  background: #FFF;
  box-shadow: -2px 0 2px 0 rgba(114, 100, 72, 0.05), 2px 0 2px 0 rgba(114, 100, 72, 0.05), 0 2px 2px 0 rgba(114, 100, 72, 0.05);
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media screen and (min-width: 768px) {
  .p-catSinglePickup-articleCard {
    padding: 20px;
    flex-direction: row;
    align-items: center;
    gap: 40px;
  }
}

.p-catSinglePickup-articleCard__image {
  width: 100%;
  aspect-ratio: 240/159.373;
  border-radius: 8px;
  overflow: hidden;
  flex-shrink: 0;
}
@media screen and (min-width: 768px) {
  .p-catSinglePickup-articleCard__image {
    width: 21.8712029162%;
  }
}
.p-catSinglePickup-articleCard__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.6s ease;
}

.p-catSinglePickup-articleCard__body {
  display: flex;
  flex-direction: column;
  gap: 10px;
  flex-grow: 1;
}

.p-catSinglePickup-articleCard__date {
  font-family: "Montserrat", sans-serif;
  font-size: 13.087px;
  font-weight: 500;
  line-height: 1.14286;
}

.p-catSinglePickup-articleCard__heading {
  font-weight: 400;
  line-height: 1.75272;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 3;
}

.p-catSinglePickup-articleCard__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 9.35px;
}
.p-catSinglePickup-articleCard__tags li {
  font-size: 13.087px;
  line-height: 1;
}
.p-catSinglePickup-articleCard__tags li::before {
  content: "#";
  color: #CB2C25;
}

.p-catSingleArticles {
  padding-top: 60px;
  padding-bottom: 56px;
  position: relative;
}

.p-catSingleArticles__head {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media screen and (min-width: 768px) {
  .p-catSingleArticles__head {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }
}

.p-catSingleArticles__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.3125;
}
@media screen and (min-width: 768px) {
  .p-catSingleArticles__title {
    font-size: 32px;
  }
}

.p-catSingleArticles__selectArea {
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
}
.p-catSingleArticles__selectArea::after {
  content: "";
  position: absolute;
  top: 46%;
  right: 15px;
  width: 7px;
  height: 7px;
  transform: translateY(-50%) rotate(-45deg);
  border-bottom: 1.5px solid #000;
  border-left: 1.5px solid #000;
  pointer-events: none;
}

.p-catSingleArticles__select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 4px;
  border: 1px solid #C1B9B2;
  background: #FFF;
  width: 200px;
  padding: 13.7px 72px 9.57px 16px;
  color: #222;
  font-size: 14px;
  line-height: 1;
}

.p-catSingleArticles__cards {
  margin-top: 20px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media (any-hover: hover) {
  .p-catSingleArticles__cards a:hover .c-articleCard__image img {
    transform: scale(1.1);
  }
}

.p-catSingleArticles__pagination {
  margin-top: 30px;
}
.p-catSingleArticles__pagination .c-pagination .page-numbers {
  background: #F9F6EB;
}
.p-catSingleArticles__pagination .c-pagination .page-numbers.current {
  background: #CB2C25;
}
.p-catSingleArticles__pagination .c-pagination .page-numbers.dots, .p-catSingleArticles__pagination .c-pagination .page-numbers.prev, .p-catSingleArticles__pagination .c-pagination .page-numbers.next {
  background: none;
}

.p-catSingle-bottomCoupon {
  margin-top: 51px;
}
@media screen and (min-width: 1100px) {
  .p-catSingle-bottomCoupon {
    margin-top: 102px;
  }
}

.p-authorsArchive__mainContents {
  margin-top: 6px;
}

.p-authorsArchive__buttons {
  display: flex;
  gap: 20px;
}
@media screen and (min-width: 768px) {
  .p-authorsArchive__buttons {
    gap: 30px;
  }
}

.p-authorsArchive__button {
  width: calc((100% - 30px) / 2);
  padding: 10px 25px 10px 30px;
  border-radius: 8px;
  background: #FBE8D6;
  text-align: center;
  color: #333;
  font-size: 22px;
  font-weight: 600;
  line-height: 1.45455;
}
@media screen and (min-width: 768px) {
  .p-authorsArchive__button {
    padding: 24px 25px 24px 30px;
  }
}
.p-authorsArchive__button.is-checked {
  background: #CB2C25;
  color: #FFF;
}

.p-authorsArchive__list {
  display: none;
}
.p-authorsArchive__list.is-checked {
  margin-top: 40px;
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 30px;
}
@media screen and (min-width: 1320px) {
  .p-authorsArchive__list.is-checked {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (any-hover: hover) {
  .p-authorsArchive__list a:hover .p-authorsCard__image img {
    transform: scale(1.1);
  }
}

.p-authorsCard {
  border-radius: 8px;
  background: #FFF;
  box-shadow: -2px 0 2px 0 rgba(114, 100, 72, 0.05), 2px 0 2px 0 rgba(114, 100, 72, 0.05), 0 2px 2px 0 rgba(114, 100, 72, 0.05);
  padding: 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
}
@media screen and (min-width: 768px) {
  .p-authorsCard {
    flex-direction: row;
    padding: 40px;
    gap: 40px;
  }
}

.p-authorsCard__image {
  width: 100%;
  aspect-ratio: 1/1;
  border-radius: 8px;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .p-authorsCard__image {
    width: 240px;
    flex-shrink: 0;
  }
}
.p-authorsCard__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.6s ease;
}

.p-authorsCard__body {
  flex-grow: 1;
  width: 100%;
}

.p-authorsCard__position {
  color: #EF802B;
  font-weight: 500;
  line-height: 1.75272;
}

.p-authorsCard__name {
  margin-top: 10px;
  color: #222;
  font-size: 24px;
  font-weight: 500;
  line-height: 1.16848;
}

.p-authorsCard__explain {
  margin-top: 10px;
  color: #222;
  line-height: 2;
}

.p-authorsCard__linkText {
  margin-top: 30px;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 6px;
  color: #222;
  font-weight: 600;
  line-height: 1;
}
.p-authorsCard__linkText .icon {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #CB2C25;
  position: relative;
}
.p-authorsCard__linkText .icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 5.887px;
  height: 10px;
  background: url(../img/icon_white-arrow.svg) no-repeat center center/contain;
}

.p-authorsArchive__pagination {
  display: none;
}
.p-authorsArchive__pagination.is-checked {
  display: block;
}

.p-authorsArchive__bottomCoupon {
  margin-top: 51px;
}
@media screen and (min-width: 768px) {
  .p-authorsArchive__bottomCoupon {
    margin-top: 102px;
  }
}

.p-authorsSingleArticleArea {
  margin-top: 6px;
  padding-bottom: 106px;
}

.p-authorsSingleArticle {
  padding: 20px;
  border-radius: 8px;
  background: #FFF;
  box-shadow: -2px 0 2px 0 rgba(114, 100, 72, 0.05), 2px 0 2px 0 rgba(114, 100, 72, 0.05), 0 2px 2px 0 rgba(114, 100, 72, 0.05);
  display: flex;
  flex-direction: column;
  gap: 30px;
}
@media screen and (min-width: 768px) {
  .p-authorsSingleArticle {
    padding: 50px 60px;
    gap: 60px;
  }
}
@media screen and (min-width: 1100px) {
  .p-authorsSingleArticle {
    flex-direction: row;
  }
}

.p-authorsSingleArticle__profile {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
}
@media screen and (min-width: 768px) and (max-width: 1099.98px) {
  .p-authorsSingleArticle__profile {
    flex-direction: row;
    align-items: start;
    gap: 40px;
  }
}
@media screen and (min-width: 1100px) {
  .p-authorsSingleArticle__profile {
    width: 400px;
    flex-shrink: 0;
  }
}

.p-authorsSingleArticle__image {
  width: 100%;
  max-width: 400px;
  aspect-ratio: 1/1;
  border-radius: 8px;
  overflow: hidden;
}
.p-authorsSingleArticle__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-authorsSingleArticle__profileText {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
@media screen and (min-width: 768px) and (max-width: 1099.98px) {
  .p-authorsSingleArticle__profileText {
    padding-top: 20px;
  }
}

.p-authorsSingleArticle__name {
  font-size: 24px;
  font-weight: 500;
  line-height: 1.16848;
  text-align: center;
}
@media screen and (min-width: 768px) and (max-width: 1099.98px) {
  .p-authorsSingleArticle__name {
    text-align: left;
  }
}

.p-authorsSingleArticle__position {
  color: #EF802B;
  font-weight: 500;
  line-height: 1.75272;
  text-align: center;
}
@media screen and (min-width: 768px) and (max-width: 1099.98px) {
  .p-authorsSingleArticle__position {
    text-align: left;
  }
}

.p-authorsSingleArticle__body {
  flex-grow: 1;
}

.p-authorsSingleArticle__contents p {
  color: #222;
  line-height: 2;
}
.p-authorsSingleArticle__contents a {
  color: #0F83C6;
  line-height: 2;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-underline-position: from-font;
}

.p-authorsSingleArticle__sns {
  margin-top: 40px;
  display: flex;
  justify-content: center;
  gap: 15px;
}
@media screen and (min-width: 768px) and (max-width: 1099.98px) {
  .p-authorsSingleArticle__sns {
    margin-top: 30px;
    justify-content: flex-end;
  }
}
@media screen and (min-width: 1100px) {
  .p-authorsSingleArticle__sns {
    margin-top: 20px;
    justify-content: start;
  }
}
.p-authorsSingleArticle__sns a {
  width: 50px;
  aspect-ratio: 1/1;
  border-radius: 50%;
  border: 1px solid rgba(51, 51, 51, 0.3);
  display: grid;
  place-items: center;
}

.p-authorsSingleArticle-sns__facebook img {
  width: 8.313px;
  height: 15.833px;
}

.p-authorsSingleArticle-sns__x img {
  width: 14px;
  height: 12.642px;
}

.p-authorsSingleArticle-sns__instagram img {
  width: 16.666px;
  height: 16.666px;
}

.p-authorsSingleArchives {
  padding-top: 60px;
  padding-bottom: 60px;
  background: #FFF;
  position: relative;
}

.p-authorsSingleArchives__title {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.61538;
  padding-left: 32px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-authorsSingleArchives__title {
    font-size: 32px;
    line-height: 1.3125;
    padding-left: 40px;
  }
}
.p-authorsSingleArchives__title::before {
  content: "";
  position: absolute;
  top: 12px;
  left: 3px;
  width: 18px;
  height: 18px;
  background: url(../img/icon-pen.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .p-authorsSingleArchives__title::before {
    top: 9px;
    width: 24px;
    height: 24px;
  }
}

.p-authorsSingleArchives__list {
  margin-top: 20px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.p-authorsSingleArchives__list .c-articleCard {
  background: #F9F6EB;
}
@media (any-hover: hover) {
  .p-authorsSingleArchives__list a:hover .c-articleCard__image img {
    transform: scale(1.1);
  }
}

.p-authorsSingleArchives__pagination .page-numbers {
  background: #F9F6EB;
}
.p-authorsSingleArchives__pagination .page-numbers.current {
  background: #CB2C25;
  color: #FFF;
}
.p-authorsSingleArchives__pagination .page-numbers.dots, .p-authorsSingleArchives__pagination .page-numbers.prev, .p-authorsSingleArchives__pagination .page-numbers.next {
  background: none;
  position: relative;
}

.p-authorsSingle__bottomCoupon {
  margin-top: 53px;
}
@media screen and (min-width: 768px) {
  .p-authorsSingle__bottomCoupon {
    margin-top: 106px;
  }
}

.p-conceptTop {
  padding-bottom: 98.727735369vw;
  position: relative;
}
@media screen and (min-width: 768px) and (max-width: 1099.98px) {
  .p-conceptTop {
    padding-bottom: 758.229px;
  }
}
@media screen and (min-width: 1100px) {
  .p-conceptTop {
    padding-bottom: 230px;
  }
}
.p-conceptTop .c-pageHead {
  position: relative;
  z-index: 20;
}

.p-conceptTop__catchphrase {
  margin-top: 71px;
  display: flex;
  flex-direction: column;
  gap: 21px;
  position: relative;
  z-index: 20;
}
@media screen and (min-width: 768px) {
  .p-conceptTop__catchphrase {
    margin-top: 92px;
  }
}

.p-conceptTop__catchphraseMain {
  color: #CB2C25;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 32px;
  font-weight: 700;
  line-height: 1.8;
}
@media screen and (max-width: 370px) {
  .p-conceptTop__catchphraseMain {
    font-size: clamp(1.625rem, -0.775rem + 12vw, 2rem);
  }
}
@media screen and (min-width: 768px) {
  .p-conceptTop__catchphraseMain {
    line-height: 2.5;
  }
}

.p-conceptTop__catchphraseSub {
  font-size: 18px;
  font-weight: 500;
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  .p-conceptTop__catchphraseSub {
    font-size: 20px;
    line-height: 2.4;
  }
}

.p-conceptTop__bgImages {
  position: absolute;
  z-index: 15;
  inset: 0;
}

.p-conceptTop__bgImg {
  position: absolute;
  overflow: hidden;
}
.p-conceptTop__bgImg--leftTop {
  top: 0;
  left: 0;
  width: 19.3384223919%;
  aspect-ratio: 176/546;
  max-width: 176px;
  opacity: 0.3;
}
@media screen and (min-width: 1100px) {
  .p-conceptTop__bgImg--leftTop {
    top: 4.4914705247%;
    opacity: 1;
  }
}
@media screen and (min-width: 1920px) {
  .p-conceptTop__bgImg--leftTop {
    width: 9.1666666667%;
    max-width: none;
  }
}
.p-conceptTop__bgImg--leftTop img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-conceptTop__bgImg--main {
  bottom: 30px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  aspect-ratio: 393/385;
  max-width: 825px;
}
@media screen and (min-width: 768px) {
  .p-conceptTop__bgImg--main {
    left: auto;
    right: 0;
  }
}
@media screen and (min-width: 768px) and (max-width: 1099.98px) {
  .p-conceptTop__bgImg--main {
    transform: translateX(0);
  }
}
@media screen and (min-width: 1100px) {
  .p-conceptTop__bgImg--main {
    bottom: 51%;
    transform: translate(0, 50%);
    max-width: 960px;
    width: 50%;
    aspect-ratio: 960/945;
  }
}
@media screen and (min-width: 1950px) {
  .p-conceptTop__bgImg--main {
    right: calc(50% - 960px);
  }
}
.p-conceptTop__bgImg--main picture {
  position: absolute;
}
.p-conceptTop__bgImg--main picture img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-conceptTop__bgImg--main .main-bottomPic {
  z-index: 1;
  bottom: 6.7532467532%;
  right: 0;
  width: 34.1730279898%;
  aspect-ratio: 406/500;
}
@media screen and (min-width: 1100px) {
  .p-conceptTop__bgImg--main .main-bottomPic {
    bottom: 1.5873015873%;
    width: 42.2916666667%;
  }
}
.p-conceptTop__bgImg--main .main-and {
  position: absolute;
  z-index: 3;
  top: 4.1558441558%;
  right: 4.5547073791%;
  width: 84.9363867684%;
  aspect-ratio: 333.8/318.7;
}
@media screen and (min-width: 1100px) {
  .p-conceptTop__bgImg--main .main-and {
    top: -5.291005291%;
    right: 4.0211640212%;
    width: 100%;
    aspect-ratio: 960/885;
  }
}
.p-conceptTop__bgImg--main .main-icon1 {
  z-index: 5;
  top: 21.8181818182%;
  left: 13.5877862595%;
  width: 18.9058524173%;
  aspect-ratio: 74.3/105;
}
@media screen and (min-width: 1100px) {
  .p-conceptTop__bgImg--main .main-icon1 {
    top: 24.8677248677%;
    left: 13.6458333333%;
    width: 15.3125%;
    aspect-ratio: 147/208;
  }
}
.p-conceptTop__bgImg--main .main-icon2 {
  z-index: 5;
  top: 31.5844155844%;
  right: 25.5470737913%;
  width: 17.6844783715%;
  aspect-ratio: 69.5/91.7;
}
@media screen and (min-width: 1100px) {
  .p-conceptTop__bgImg--main .main-icon2 {
    top: 31.746031746%;
    right: 32.6041666667%;
    width: 14.4791666667%;
    aspect-ratio: 139/183;
  }
}
.p-conceptTop__bgImg--main .main-icon3 {
  z-index: 5;
  bottom: 30.1818181818%;
  left: 33.0025445293%;
  width: 21.7811704835%;
  aspect-ratio: 85.6/108.6;
}
@media screen and (min-width: 1100px) {
  .p-conceptTop__bgImg--main .main-icon3 {
    bottom: 32.9735449735%;
    left: 26.9270833333%;
    width: 17.7083333333%;
    aspect-ratio: 170/215.75;
  }
}
.p-conceptTop__bgImg--main .main-icon4 {
  z-index: 5;
  bottom: 16.2857142857%;
  left: 12.7480916031%;
  width: 10.8142493639%;
  aspect-ratio: 42.5/77.2;
}
@media screen and (min-width: 1100px) {
  .p-conceptTop__bgImg--main .main-icon4 {
    bottom: 17.6825396825%;
    left: 18.59375%;
    width: 6.25%;
    aspect-ratio: 60/107.8;
  }
}
.p-conceptTop__bgImg--main .main-icon5 {
  z-index: 5;
  bottom: 21.5584415584%;
  right: 15.2162849873%;
  width: 17.1755725191%;
  aspect-ratio: 67.5/56;
}
@media screen and (min-width: 1100px) {
  .p-conceptTop__bgImg--main .main-icon5 {
    bottom: 27.9365079365%;
    right: 16.4583333333%;
    width: 13.5416666667%;
    aspect-ratio: 130/108;
  }
}
.p-conceptTop__bgImg--main .main-icon6 {
  z-index: 5;
  bottom: 0;
  left: 33.2315521628%;
  width: 27.7353689567%;
  aspect-ratio: 109/69.5;
}
@media screen and (min-width: 1100px) {
  .p-conceptTop__bgImg--main .main-icon6 {
    left: 33.8541666667%;
    width: 23.6458333333%;
    aspect-ratio: 227/145;
  }
}

.p-conceptMainContents {
  background: #FFF;
  position: relative;
}

.p-conceptMainContents-overlay {
  overflow: hidden;
}

.p-conceptFeatures {
  padding-top: 50px;
  padding-bottom: 45px;
}
@media screen and (min-width: 768px) {
  .p-conceptFeatures {
    padding-top: 100px;
    padding-bottom: 90px;
  }
}

.p-conceptFeatures__title {
  position: relative;
}

.p-conceptFeatures__titleJa {
  position: absolute;
  top: 46%;
  left: 50%;
  transform: translate(-50%, 0);
  color: #CB2C25;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: clamp(1.125rem, 0.321rem + 4.02vw, 2.25rem);
  font-weight: 700;
  line-height: 1.16667;
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  .p-conceptFeatures__titleJa {
    transform: translate(-50%, -50%);
    font-size: 36px;
  }
}

.p-conceptFeatures__titleEn {
  text-align: center;
  color: #FBE8D6;
  font-family: "Montserrat", sans-serif;
  font-size: clamp(3.125rem, 0.893rem + 11.16vw, 6.25rem);
  font-weight: 800;
  line-height: 1;
}
@media screen and (min-width: 768px) and (max-width: 1099.98px) {
  .p-conceptFeatures__titleEn {
    font-size: clamp(6.25rem, -2.425rem + 18.07vw, 10rem);
  }
}
@media screen and (min-width: 1100px) {
  .p-conceptFeatures__titleEn {
    padding-left: 20px;
    font-size: 160px;
  }
}

.p-conceptFeatures__list {
  margin-top: 54px;
  display: flex;
  flex-direction: column;
  gap: 55px;
}
@media screen and (min-width: 768px) {
  .p-conceptFeatures__list {
    margin-top: 108px;
    gap: 110px;
  }
}

.p-conceptFeatures__item {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 1100px) {
  .p-conceptFeatures__item {
    flex-direction: row;
  }
}
.p-conceptFeatures__item.item-reverse {
  flex-direction: column-reverse;
}
@media screen and (min-width: 1100px) {
  .p-conceptFeatures__item.item-reverse {
    flex-direction: row;
  }
}

.p-conceptFeatures-item__images {
  position: relative;
  z-index: 10;
  height: 305px;
}
@media screen and (min-width: 1100px) {
  .p-conceptFeatures-item__images {
    flex-grow: 1;
    height: auto;
  }
}

.p-conceptFeatures-item__img {
  position: absolute;
}
.p-conceptFeatures-item__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-conceptFeatures-item__img.image-cloud1 {
  top: 34px;
  right: 29px;
  width: clamp(115px, 20.81818vw, 229px);
  aspect-ratio: 229/166;
}
@media screen and (min-width: 1100px) {
  .p-conceptFeatures-item__img.image-cloud1 {
    top: 120px;
    right: 56px;
  }
}
.p-conceptFeatures-item__img.image-icon1 {
  bottom: 60px;
  right: 0;
  width: clamp(120px, 21.81818vw, 240px);
  aspect-ratio: 240/305;
  transform: translateY(0);
}
@media screen and (min-width: 1100px) {
  .p-conceptFeatures-item__img.image-icon1 {
    bottom: 0;
  }
}
.p-conceptFeatures-item__img.image-cloud2 {
  top: 34px;
  left: 29px;
  width: clamp(115px, 20.81818vw, 229px);
  aspect-ratio: 229/166;
}
@media screen and (min-width: 1100px) {
  .p-conceptFeatures-item__img.image-cloud2 {
    top: 134px;
    left: auto;
    right: 113px;
  }
}
.p-conceptFeatures-item__img.image-icon2 {
  bottom: 60px;
  left: 0;
  width: clamp(100px, 18.18182vw, 200px);
  aspect-ratio: 200/283;
  transform: translateY(0);
}
@media screen and (min-width: 1100px) {
  .p-conceptFeatures-item__img.image-icon2 {
    bottom: 0;
  }
}
.p-conceptFeatures-item__img.image-cloud3 {
  top: 34px;
  right: 29px;
  width: clamp(115px, 20.81818vw, 229px);
  aspect-ratio: 229/166;
}
@media screen and (min-width: 1100px) {
  .p-conceptFeatures-item__img.image-cloud3 {
    top: 122px;
    right: 43px;
  }
}
.p-conceptFeatures-item__img.image-icon3 {
  bottom: 60px;
  right: 3px;
  width: clamp(150px, 27.27273vw, 300px);
  aspect-ratio: 300/210;
  transform: translateY(0);
}
@media screen and (min-width: 1100px) {
  .p-conceptFeatures-item__img.image-icon3 {
    bottom: 18px;
  }
}

.a-shake {
  animation: shake 3s ease-in-out infinite;
}

@keyframes shake {
  0% {
    transform: translateY(0);
  }
  15% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-20%);
  }
  85% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(0);
  }
}
.p-cfCard {
  flex-shrink: 0;
  width: 100%;
  max-width: 880px;
  padding: 20px;
  border-radius: 20px;
  background: #F9F6EB;
  position: relative;
  z-index: 15;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .p-cfCard {
    flex-direction: row;
    gap: 50px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1099.98px) {
  .p-cfCard {
    padding: 50px 20px;
  }
}
@media screen and (min-width: 1100px) {
  .p-cfCard {
    width: 68.75%;
    padding: 50px;
    margin-inline: 0;
  }
}

.js-cfCard-left .p-cfCard {
  transform: translate(-100%, 70%) rotate(-45deg);
  transition: transform 1s ease;
}
.js-cfCard-left.is-show .p-cfCard {
  transform: translate(0, 0) rotate(0);
}

.js-cfCard-right .p-cfCard {
  transform: translate(100%, 70%) rotate(45deg);
  transition: transform 1s ease;
}
.js-cfCard-right.is-show .p-cfCard {
  transform: translate(0, 0) rotate(0);
}

.p-cfCard__number {
  position: absolute;
  top: 10px;
  left: 10px;
  width: 12.8205128205%;
  aspect-ratio: 100/96.2;
  background: url(../img/cf-list-numberBg.svg) no-repeat center center/contain;
  display: grid;
  place-items: center;
  color: #FFF;
  font-family: "Montserrat", sans-serif;
  font-size: clamp(1.5rem, 0.339rem + 5.8vw, 3.125rem);
  font-weight: 500;
  line-height: 1;
}
@media screen and (min-width: 1100px) {
  .p-cfCard__number {
    top: 20px;
    left: 20px;
  }
}

.p-cfCard__image {
  width: 100%;
  aspect-ratio: 1/1;
  border-radius: 8px;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .p-cfCard__image {
    width: 44.1025641026%;
    flex-shrink: 0;
    aspect-ratio: 344/460;
    border-radius: 20px;
  }
}
.p-cfCard__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-cfCard__body {
  flex-grow: 1;
}

.p-cfCard__heading {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.33333;
}
@media screen and (min-width: 768px) {
  .p-cfCard__heading {
    font-size: 24px;
  }
}

.p-cfCard__text {
  margin-top: 29px;
  color: #222;
  line-height: 2;
}

.p-conceptBottom {
  padding-top: 80px;
}
@media screen and (min-width: 768px) {
  .p-conceptBottom {
    padding-top: 140px;
    padding-bottom: 53px;
  }
}

.p-conceptBottom__contents {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 40px;
}
@media screen and (min-width: 1100px) {
  .p-conceptBottom__contents {
    flex-direction: row;
  }
}

.p-conceptBottom__image,
.p-conceptBottom__textArea {
  width: 100%;
}
@media screen and (min-width: 1100px) {
  .p-conceptBottom__image,
  .p-conceptBottom__textArea {
    width: calc((100% - 40px) / 2);
  }
}

.p-conceptBottom__image picture {
  margin-inline: auto;
  display: block;
  width: 84.8387096774%;
  aspect-ratio: 526/456;
}
@media screen and (min-width: 1100px) {
  .p-conceptBottom__image picture {
    margin-left: 37px;
    margin-right: 0;
  }
}
.p-conceptBottom__image picture img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-conceptBottom__textArea {
  display: flex;
  flex-direction: column;
  gap: 37px;
}
@media screen and (min-width: 1100px) {
  .p-conceptBottom__textArea {
    padding-top: 17px;
  }
}

.p-conceptBottom__heading {
  color: #CB2C25;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.7;
}
@media screen and (min-width: 768px) {
  .p-conceptBottom__heading {
    font-size: 28px;
  }
}

.p-conceptBottom__text {
  font-size: 16px;
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .p-conceptBottom__text {
    font-size: 20px;
    line-height: 2.4;
  }
}

.p-news__mainContents {
  margin-top: 31px;
  padding-top: 60px;
  padding-bottom: 60px;
  background: #FFF;
  position: relative;
}
.p-news__mainContents .c-pagination .page-numbers {
  background: #F9F6EB;
}
.p-news__mainContents .c-pagination .page-numbers.current {
  background: #CB2C25;
}
.p-news__mainContents .c-pagination .page-numbers.dots, .p-news__mainContents .c-pagination .page-numbers.prev, .p-news__mainContents .c-pagination .page-numbers.next {
  background: none;
}

.p-newsArchive__list {
  border-top: 1px dashed rgba(203, 44, 37, 0.5);
}

.p-newsCard {
  padding: 20px;
  border-bottom: 1px dashed rgba(203, 44, 37, 0.5);
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.p-newsCard__head {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
@media screen and (min-width: 768px) {
  .p-newsCard__head {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    gap: 19px;
  }
}

.p-newsCard__date {
  font-family: "Montserrat", sans-serif;
  font-size: 13.087px;
  font-weight: 500;
  line-height: 1.14286;
}

.p-newsCard__categories {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.p-newsCard__categories li {
  padding: 5.609px 9.348px;
  border-radius: 13.087px;
  background: #FBE8D6;
  font-size: 11.217px;
  font-weight: 600;
  line-height: 1.33333;
}

.p-newsCard__title {
  font-weight: 400;
  line-height: 1.75272;
}

.p-newsSide {
  padding-top: 0;
}

.p-newsSideCategory__title {
  color: #222;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.45455;
}

.p-newsSideCategory__list {
  margin-top: 20px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.p-newsArticle__head {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding-bottom: 20px;
  border-bottom: 4px solid #CB2C25;
}

.p-newsArticle__date {
  font-family: "Montserrat", sans-serif;
  font-size: 13.087px;
  font-weight: 500;
  line-height: 1.14286;
}

.p-newsArticle__title {
  font-size: 26px;
  font-weight: 600;
  line-height: 1.0786;
}

.p-newsArticle__categories {
  margin-top: 20px;
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}
.p-newsArticle__categories li {
  padding: 6px 10px;
  border-radius: 14px;
  background: #CB2C25;
  color: #FFF;
  font-size: 12px;
  line-height: 1.33333;
}

.p-newsArticle__tags {
  margin-top: 20px;
  display: flex;
  gap: 9.35px;
}
.p-newsArticle__tags li {
  font-size: 13.087px;
  line-height: 1;
}
.p-newsArticle__tags li::before {
  content: "#";
}

.p-newsArticle__thumbnail {
  margin-top: 20px;
  width: 100%;
  aspect-ratio: 880/579;
}
.p-newsArticle__thumbnail img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-newsArticle__content {
  margin-top: 30px;
}
.p-newsArticle__content * + * {
  margin-top: 32px;
}
.p-newsArticle__content h2 {
  font-size: 24px;
  font-weight: 600;
  line-height: 1.33333;
  padding-left: 20px;
  position: relative;
  margin-bottom: 30px;
}
.p-newsArticle__content h2::before {
  content: "";
  position: absolute;
  top: 0;
  left: -2px;
  width: 4px;
  height: 100%;
  background: #CB2C25;
}
.p-newsArticle__content h3 {
  padding-top: 10px;
  padding-bottom: 9px;
  border-bottom: 1px dashed #CB2C25;
  font-size: 22px;
  font-weight: 600;
  line-height: 1.45455;
}
.p-newsArticle__content h4 {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.6;
}
.p-newsArticle__content h5 {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.77778;
}
.p-newsArticle__content h6 {
  font-size: 16px;
  font-weight: 700;
  line-height: 2;
}
.p-newsArticle__content p {
  line-height: 2;
}
.p-newsArticle__content a {
  color: #0F83C6;
  line-height: 2;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-underline-position: from-font;
}
.p-newsArticle__content em {
  font-style: normal;
  background: linear-gradient(transparent 50%, #F0D2B9 50%);
}

.p-newsArticle__link {
  margin: 30px auto 0;
}
.p-newsArticle__link::after {
  right: auto;
  left: 28.3px;
  transform: translateY(-50%) rotate(180deg);
}

.p-newsArchive__bottomCoupon {
  margin-top: 53px;
}
@media screen and (min-width: 768px) {
  .p-newsArchive__bottomCoupon {
    margin-top: 106px;
  }
}

.p-contact__headText {
  margin-top: 1px;
  text-align: center;
  font-size: 18px;
  line-height: 2.2;
}
@media screen and (max-width: 767.98px) {
  .p-contact__headText {
    text-align: left;
  }
}

.p-contact__form {
  margin: 37px auto 0;
  max-width: 840px;
  background: #FBE8D6;
  border-radius: 10px;
  padding: 39.4px 40.5px;
}
@media screen and (max-width: 767.98px) {
  .p-contact__form {
    padding-inline: 15px;
  }
}

.p-thanks__image {
  margin: 5px auto 0;
  display: block;
  width: 159.998px;
  height: 116.496px;
}
.p-thanks__image img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-thanks__text {
  margin-top: 40px;
  text-align: center;
  font-size: 18px;
  line-height: 1.7778;
}

.p-thanks__linkButton {
  margin: 30px auto 0;
}

.p-textArea {
  margin-top: 6px;
  padding-bottom: 18px;
}

.p-textContents {
  border-radius: 8px;
  background: #FFF;
  box-shadow: -2px 0 2px 0 rgba(114, 100, 72, 0.05), 2px 0 2px 0 rgba(114, 100, 72, 0.05), 0 2px 2px 0 rgba(114, 100, 72, 0.05);
  padding: 20px 10px;
  line-height: 2;
}
@media screen and (min-width: 1100px) {
  .p-textContents {
    padding: 48px 60px 50px;
  }
}
.p-textContents a {
  color: #0F83C6;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-underline-position: from-font;
}

.p-terms__mainList {
  margin-top: 86px;
  display: flex;
  flex-direction: column;
  gap: 45.5px;
}

.p-terms__mainTitle {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 6.5px;
}

.p-terms__pText {
  padding-left: 24px;
  position: relative;
}
.p-terms__pText::before {
  position: absolute;
  top: 0;
  left: 5px;
}

.p-terms__pointList li:nth-child(1)::before {
  content: "1.";
}
.p-terms__pointList li:nth-child(2)::before {
  content: "2.";
}
.p-terms__pointList li:nth-child(3)::before {
  content: "3.";
}
.p-terms__pointList li:nth-child(4)::before {
  content: "4.";
}

.p-terms__bText {
  padding-left: 24px;
  position: relative;
}
.p-terms__bText::before {
  position: absolute;
  top: 0;
  left: 0;
}

.p-terms__bracketList.mBlock8 {
  margin-block: 8px;
}
.p-terms__bracketList.mTop8 {
  margin-top: 8px;
}
.p-terms__bracketList li:nth-child(1)::before {
  content: "(1)";
}
.p-terms__bracketList li:nth-child(2)::before {
  content: "(2)";
}
.p-terms__bracketList li:nth-child(3)::before {
  content: "(3)";
}
.p-terms__bracketList li:nth-child(4)::before {
  content: "(4)";
}
.p-terms__bracketList li:nth-child(5)::before {
  content: "(5)";
}
.p-terms__bracketList li:nth-child(6)::before {
  content: "(6)";
}
.p-terms__bracketList li:nth-child(7)::before {
  content: "(7)";
}

.p-privacy__mainList {
  display: flex;
  flex-direction: column;
  gap: 80px;
  color: #222;
}

.p-privacy__headArea {
  display: flex;
  flex-direction: column;
  gap: 40.5px;
}

.p-privacy__pItem {
  padding-left: 24px;
  position: relative;
}
.p-privacy__pItem::before {
  position: absolute;
  top: 0;
  left: 5px;
}

.p-privacy__pointList li:nth-child(1)::before {
  content: "1.";
}
.p-privacy__pointList li:nth-child(2)::before {
  content: "2.";
}
.p-privacy__pointList li:nth-child(3)::before {
  content: "3.";
}
.p-privacy__pointList li:nth-child(4)::before {
  content: "4.";
}
.p-privacy__pointList li:nth-child(5)::before {
  content: "5.";
}
.p-privacy__pointList li:nth-child(6)::before {
  content: "6.";
}

.p-privacy__poc dl > div {
  display: flex;
}
.p-privacy__poc dl > div dt::after {
  content: "：";
}

.p-privacy__heading {
  font-weight: 700;
}
.p-privacy__heading::before {
  content: "＜";
}
.p-privacy__heading::after {
  content: "＞";
}

.p-privacy__treatArea,
.p-privacy__dataArea {
  display: flex;
  flex-direction: column;
  gap: 40.5px;
}

.p-privacy__treatArea h3 {
  font-weight: 700;
}
@media screen and (min-width: 1100px) {
  .p-privacy__treatArea h3 {
    line-height: 3;
  }
}

.p-privacy__hgroup {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.p-privacy__hgroup h2, .p-privacy__hgroup p {
  font-weight: 700;
}
.p-privacy__hgroup h2 {
  font-size: 24px;
  line-height: 1.3333;
}

.p-privacy__circleList li {
  padding-left: 16px;
  position: relative;
}
.p-privacy__circleList li::before {
  position: absolute;
  top: 0;
  left: 0;
}
.p-privacy__circleList li:nth-child(1)::before {
  content: "①";
}
.p-privacy__circleList li:nth-child(2)::before {
  content: "②";
}
.p-privacy__circleList li:nth-child(3)::before {
  content: "③";
}
.p-privacy__circleList li:nth-child(4)::before {
  content: "④";
}
.p-privacy__circleList li:nth-child(5)::before {
  content: "⑤";
}
.p-privacy__circleList li:nth-child(6)::before {
  content: "⑥";
}
.p-privacy__circleList li:nth-child(7)::before {
  content: "⑦";
}
.p-privacy__circleList li:nth-child(8)::before {
  content: "⑧";
}
.p-privacy__circleList li:nth-child(9)::before {
  content: "⑨";
}

.p-privacy__treatNote p + p {
  margin-top: 8px;
}

.p-privacy__unnumberList li {
  padding-left: 16px;
  position: relative;
}
.p-privacy__unnumberList li::before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}

.p-privacy__dataList {
  display: flex;
  flex-direction: column;
  gap: 40.5px;
}
.p-privacy__dataList h3, .p-privacy__dataList h4 {
  font-weight: 700;
}
.p-privacy__dataList h3 {
  margin-bottom: 9px;
}
.p-privacy__dataList li:nth-child(1) h3::before {
  content: "1.";
}
.p-privacy__dataList li:nth-child(2) h3::before {
  content: "2.";
}
.p-privacy__dataList li:nth-child(3) h3::before {
  content: "3.";
}
.p-privacy__dataList li:nth-child(4) h3::before {
  content: "4.";
}
.p-privacy__dataList li:nth-child(5) h3::before {
  content: "5.";
}
.p-privacy__dataList li:nth-child(6) h3::before {
  content: "6.";
}
.p-privacy__dataList h4 {
  margin-top: 9px;
  margin-bottom: 6px;
}
.p-privacy__dataList .p-privacy__unnumberList li {
  margin-top: 7.5px;
}

.p-privacy__cookie h3 {
  font-weight: 700;
  margin-bottom: 8px;
}
.p-privacy__cookie p + p {
  margin-top: 8px;
}

.p-company__mainList {
  margin-top: 46px;
  display: flex;
  flex-direction: column;
  gap: 45.5px;
}

.p-company__mainTitle {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 6.5px;
}

.p-company__unnumberList li {
  padding-left: 16px;
  position: relative;
}
.p-company__unnumberList li::before {
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}