html {
  scroll-behavior: smooth;
}

#malama {
  padding-bottom: 0;
  overflow: hidden;
}
img {
  width: 100%;
}

.malama-font {
    font-family: sans-serif !important;}

/* button--color-brown */
.button.button--color-brown {
  border: 1px solid #9F7442;
  transition: all .3s;
  cursor: pointer;
}
.button.button--color-brown {
  padding: 14px;
}
@media all and (min-width: 768px) {
  .button.button--color-brown:hover {
    color: #fff;
    background-color: #9F7442;
  }
}

/* page-top */
.page-top-heading {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 22px;
  border-bottom: 2px solid#9F7442;
  padding-bottom: 27px;
}
.page-top-heading__sub {
  font-family: 'Shippori Mincho', serif;
  font-size: 21px;
  color: #9F7442;
}
.page-top-heading::before,
.page-top-heading::after {
  content: '';
  position: absolute;
  bottom: 0;
  display: block;
  background: center / contain no-repeat url(../images/icon_tree_brown.svg);
}
@media not all and (min-width: 768px) {
  .page-top-heading__title {
    width: 196px;
  }
  .page-top-heading::before,
  .page-top-heading::after {
    width: 50px;
    height: 72px;
  }
  .page-top-heading::before {
    left: calc(50% - 165px);
  }
  .page-top-heading::after {
    right: calc(50% - 165px);
    transform: rotateY(180deg);
  }
}
@media all and (min-width: 768px) {
  .page-top-heading__title {
    width: 262px;
  }
  .page-top-heading::before,
  .page-top-heading::after {
    width: 66px;
    height: 96px;
  }
  .page-top-heading::before {
    left: calc(50% - 210px);
  }
  .page-top-heading::after {
    right: calc(50% - 210px);
    transform: rotateY(180deg);
  }
}

.page-top-text p {
  font-size: 14px;
}
@media not all and (min-width: 768px) {
  .page-top-text {
    margin-top: 15px;
  }
  .page-top-text p:first-child {
    text-align: center;
  }
  .page-top-text p + p {
    margin-top: 16px;
  }
}
@media all and (min-width: 768px) {
  .page-top-text {
    margin-top: 32px;
  }
  .page-top-text p {
    text-align: center;
  }
  .page-top-text p:first-child {
    font-weight: 700;
  }
  .page-top-text p + p {
    margin-top: 27px;
  }
}


/* page-nav */
.page-nav {
  display: flex;
}
.page-nav-item {
  flex-shrink: 0;
  list-style: none;
}
@media all and (max-width: 359px) {
  .page-nav-item--attempt a {
    padding: 18px 20px 18px 0!important;
  }
  .page-nav-item--notes a {
    padding: 18px 0 18px 20px!important;
  }
}
@media not all and (min-width: 768px) {
  .page-nav {
    position: relative;
    width: 100%;
    flex-wrap: wrap;
    justify-content: center;
    padding: 0 20px;
  }
  .page-nav::before,
  .page-nav::after {
    content: '';
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    display: block;
    width: calc(100% - 40px);
    height: 1px;
    background-color: #ccc;
  }
  .page-nav::before {
    bottom: 53px;
  }
  .page-nav::after {
    bottom: 0;
  }
  .page-nav-item--optional-tour,
  .page-nav-item--attempt,
  .page-nav-item--notes {
    position: relative;
  }
  .page-nav-item--optional-tour::before,
  .page-nav-item--optional-tour::after {
    content: '';
    position: absolute;
    top: 4px;
    display: block;
    width: 1px;
    height: 100px;
    background-color: #ccc;
  }
  .page-nav-item--optional-tour::before {
    left: 0;
  }
  .page-nav-item--optional-tour::after {
    right: 0;
  }
  .page-nav-item--notes::before {
    content: '';
    position: absolute;
    top: 18px;
    left: 0;
    display: block;
    width: 1px;
    height: 20px;
    background-color: #ccc;
  }
}
@media all and (min-width: 768px) {
  .page-nav {
    max-width: 992px;
    flex-wrap: wrap;
    justify-content: center;
    gap: 16px 0;
    margin: 0 auto;
  }
  .page-nav-item + .page-nav-item {
    border-left: 1px solid #CCCCCC;
  }
}

.page-nav-item a {
  display: block;
  position: relative;
}
.page-nav-item span {
  font-size: 14px;
  color: #7C480C;
}
.page-nav-item--malama-tour a::before,
.page-nav-item--optional-tour a::before,
.page-nav-item--hotel a::before {
  content: '';
  position: absolute;
  display: block;
  background-size: contain;
  background-repeat: no-repeat;
}
.page-nav-item--malama-tour a::before {
  background-image: url('../images/malama/icon_mhmenu1.svg');
}
.page-nav-item--optional-tour a::before {
  background-image: url('../images/malama/icon_mhmenu2.svg');
}
.page-nav-item--hotel a::before {
  background-image: url('../images/malama/icon_mhmenu3.svg');
}
.page-nav-item--malama-tour a::after,
.page-nav-item--optional-tour a::after,
.page-nav-item--hotel a::after {
  content: '';
  position: absolute;
  display: block;
  width: 11px;
  height: 11px;
  mask-repeat: no-repeat;
  -webkit-mask-repeat: no-repeat;
  mask-position: center;
  -webkit-mask-position: center;
  mask-size: contain;
  -webkit-mask-size: contain;
  background-color: #7C480C;
  mask-image: url('../images/arrow_g.svg');
  -webkit-mask-image: url('../images/arrow_g.svg');
}
@media not all and (min-width: 768px) {
  .page-nav-item span {
    display: block;
    font-size: 12px;
    line-height: 1.4;
  }
  .page-nav-item--attempt span {
    font-weight: 700;
  }
  .page-nav-item--malama-tour,
  .page-nav-item--optional-tour,
  .page-nav-item--hotel {
    width: calc(100% / 3);
  }
  .page-nav-item--malama-tour a,
  .page-nav-item--optional-tour a,
  .page-nav-item--hotel a {
    width: 100%;
    text-align: center;
    padding: 56px 20px 30px;
  }
  .page-nav-item--malama-tour a::before,
  .page-nav-item--optional-tour a::before,
  .page-nav-item--hotel a::before {
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 48px;
    height: 48px;
  }
  .page-nav-item--malama-tour a::after,
  .page-nav-item--optional-tour a::after,
  .page-nav-item--hotel a::after {
    bottom: 14px;
    left: 50%;
    transform: translateX(-50%) rotateZ(90deg);
  }
  .page-nav-item--attempt a,
  .page-nav-item--notes a {
    padding: 18px 20px;
  }
}
@media all and (min-width: 768px) {
  .page-nav-item span {
    font-size: 14px;
  }
  .page-nav-item--malama-tour a,
  .page-nav-item--optional-tour a,
  .page-nav-item--hotel a {
    padding: 4px 45px 4px 58px;
  }
  .page-nav-item--malama-tour a::before,
  .page-nav-item--optional-tour a::before,
  .page-nav-item--hotel a::before {
    top: 50%;
    left: 20px;
    transform: translateY(-50%);
    width: 32px;
    height: 32px;
  }
  .page-nav-item--malama-tour a::after,
  .page-nav-item--optional-tour a::after,
  .page-nav-item--hotel a::after {
    top: 50%;
    right: 24px;
    transform: translateY(-50%) rotateZ(90deg);
  }
  .page-nav-item--attempt a,
  .page-nav-item--notes a {
    padding: 4px 18px;
  }
}


/* section-hading */
.section-hading {
  text-align: center;
  color: #7C480C;
}
.section-hading__sub {
  display: block;
  font-size: 14px;
}
@media not all and (min-width: 768px) {
  .section-hading__sub {
    line-height: 1;
  }
}
.section-hading__title {
  font-size: 24px;
}
@media not all and (min-width: 768px) {
  .section-hading__title {
    margin-top: 8px;
  }
}
.section-lead {
  font-size: 14px;
}
@media not all and (min-width: 768px) {
  .section-lead {
    margin-top: 8px;
  }
}
@media all and (min-width: 768px) {
  .section-lead {
    text-align: center;
    margin-top: 20px;
  }
}


/* model-plan */
@media not all and (min-width: 768px) {
  #model-plan {
    margin-top: 8px;
  }
  .model-plan {
    margin-top: 30px;
  }
}
@media all and (min-width: 768px) {
  #model-plan {
    margin-top: 80px;
  }
  .model-plan {
    margin-top: 15px;
  }
}

.plan-day + .plan-day {
  margin-top: 24px;
}
.plan-day__heading {
  position: relative;
  width: 100%;
  text-align: left;
  font-size: 16px;
  font-weight: 700;
  color: #fff;
  line-height: 30px;
  background: #9F7442;
  border: none;
  outline: none;
  padding: 4px 16px 6px;
  transform: opacity .3s;
  cursor: pointer;
}
.plan-day__heading::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 16px;
  transform: translateY(-50%) rotateZ(90deg);
  display: block;
  width: 11px;
  height: 11px;
  mask-repeat: no-repeat;
  -webkit-mask-repeat: no-repeat;
  mask-position: center;
  -webkit-mask-position: center;
  mask-size: contain;
  -webkit-mask-size: contain;
  background-color: #fff;
  mask-image: url('../images/arrow_g.svg');
  -webkit-mask-image: url('../images/arrow_g.svg');
}
.plan-day.is-opened .plan-day__heading::after {
  transform: translateY(-50%) rotateZ(-90deg);
}
@media not all and (min-width: 768px) {
  .plan-day__contents {
    margin-top: 24px;
  }
}
@media all and (min-width: 768px) {
  .plan-day__heading:hover {
    opacity: .7;
  }
  .plan-day__contents {
    position: relative;
    padding-left: 34px;
    padding-bottom: 24px;
    margin-top: 16px;
    margin-left: 16px;
  }
  .plan-day__contents::before {
    content: '';
    position: absolute;
    top: 0;
    left: 7px;
    display: block;
    width: 2px;
    height: 100%;
    background-color: #9F7442;
  }
}

.schedule-item + .schedule-item {
  margin-top: 16px;
}
.schedule-item__time {
  position: relative;
  font-size: 14px;
  font-weight: 700;
  color: #7C480C;
  border-bottom: 1px solid #CCAD7C;
  padding-bottom: 4px;
}
.schedule-item__title {
  font-size: 16px;
  font-weight: 700;
  margin-top: 4px;
}
.schedule-item__detail {
  display: flex;
}
.schedule-item__image {
  position: relative;
  border-radius: 8px;
  object-fit: cover;
  overflow: hidden;
}
.schedule-item__image--his-ribbon::before {
  content: '';
  position: absolute;
  top: -2px;
  left: 12px;
  display: block;
  width: 53px;
  height: 56px;
  background: center / contain no-repeat url('../images/malama/icon_his-ribbon.png');
  z-index: 1;
}
.schedule-item .button {
  display: block;
}
@media not all and (min-width: 768px) {
  .schedule-item__detail {
    flex-direction: column;
    gap: 8px;
    margin-top: 8px;
  }
  .schedule-item__image {
    width: 100%;
  }
  .schedule-item__text {
    width: 100%;
  }
  .schedule-item .button {
    max-width: 138px;
    margin-top: 14px;
    margin-left: auto;
  }
  .schedule-item .button.button--color-brown {
    padding-top: 6px;
    padding-bottom: 6px;
  }
}
@media all and (min-width: 768px) {
  .schedule-item__time::before {
    content: '';
    position: absolute;
    top: 6px;
    left: -32px;
    display: block;
    width: 8px;
    height: 8px;
    transform: rotateZ(45deg);
    border: 2px solid #fff;
    background-color: #7C480C;
    z-index: 1;
  }
  .schedule-item__detail {
    gap: 25px;
    margin-top: 17px;
  }
  .schedule-item__image {
    width: 335px;
  }
  .schedule-item__text {
    width: calc(100% - 360px);
  }
  .schedule-item .button {
    max-width: 276px;
    margin: 32px auto 0;
  }
}

.pill-button {
  display: block;
  max-width: 280px;
}
@media not all and (min-width: 768px) {
  .pill-button {
    margin: 40px auto 0;
  }
}
@media all and (min-width: 768px) {
  .pill-button {
    margin: 64px auto 0;
  }
}


/* optional-tour */
@media not all and (min-width: 768px) {
  #optional-tour {
    margin-top: 8px;
  }
}
@media all and (min-width: 768px) {
  #optional-tour {
    margin-top: 16px;
  }
}

.optional-tour__tab {
  display: flex;
}
.optional-tour__tab li {
  width: calc(100% / 4);
  text-align: center;
  color: #7C480C;
  opacity: .6;
  border-bottom: 1px solid #9F7442;
  cursor: pointer;
  transition: opacity .3s;
}
.optional-tour__tab li.is-active,
.optional-tour__tab li:hover {
  opacity: 1;
  border-bottom: 4px solid #7C480C;
}
@media not all and (min-width: 768px) {
  .optional-tour {
    margin-top: 32px;
  }
  .optional-tour__tab li {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    padding-bottom: 12px;
  }
  .optional-tour__tab li.is-active{
    padding-bottom: 8px;
  }
}
@media all and (min-width: 768px) {
  .optional-tour {
    margin-top: 14px;
  }
  .optional-tour__tab li {
    font-size: 16px;
    font-weight: 700;
    padding: 16px 0;
  }
}

.optional-tour__contents {
  display: none;
  gap: 24px 16px;
  flex-wrap: wrap;
  margin-top: 36px;
}
.optional-tour__contents.is-active {
  display: flex;
}
@media not all and (min-width: 768px) {
.optional-tour__contents.is-active {
    flex-direction: column;
    gap: 16px;
  }
}

.optional-tour-card {
  display: flex;
  background-color: #FFFFFF;
  border-radius: 8px;
}
@media not all and (min-width: 768px) {
  .optional-tour-card {
    width: 100%;
    gap: 12px;
  }
}
@media all and (min-width: 768px) {
  .optional-tour-card {
    width: calc((100% - 48px) / 4);
    flex-direction: column;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.16);
  }
}

.optional-tour-card__thumb img {
  object-fit: cover;
}
@media not all and (min-width: 768px) {
  .optional-tour-card__thumb {
    width: calc((55 / 335) * 100%);
    flex-shrink: 0;
  }
  .optional-tour-card__thumb img {
    aspect-ratio: 1 / 1;
  }
}
@media all and (min-width: 768px) {
  .optional-tour-card__thumb img {
    aspect-ratio: 236 / 140;
    width: 100%;
    height: 100%;
  }
}

.optional-tour-card__info {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  position: relative;
}
.optional-tour-card__title {
  color: #333;
  font-weight: bold;
}
.optional-tour-card__text {
  font-size: 12px;
  margin-top: 8px;
  color: #6A6A6A;
}
@media not all and (min-width: 768px) {
  .optional-tour-card__title {
    display: block;
    font-size: 14px;
    line-height: 1.5;
    order: 0;
  }
  .optional-tour-card__text {
    order: 3;
    line-height: 1.5;
  }
}
@media all and (min-width: 768px) {
  .optional-tour-card__info {
    padding: 16px;
  }
  .optional-tour-card__title {
    font-size: 16px;
  }
}

.optional-tour-card__detail {
  display: inline-flex;
  width: 100%;
  gap: 8px;
  font-size: 0.75rem;
}
.optional-tour-card__detail.optional-tour-card__detail--time,
.optional-tour-card__detail.optional-tour-card__detail--place {
  color: #000000;
}

.optional-tour-card__detail::before {
  flex-shrink: 0;
  content: '';
  width: 11px;
  height: 11px;
  margin-top: 3px;
  background-color: #697180;
  mask-repeat: no-repeat;
  -webkit-mask-repeat: no-repeat;
  mask-position: top 0 center;
  -webkit-mask-position: top 0 center;
  mask-size: contain;
  -webkit-mask-size: contain;
}
.optional-tour-card__detail.optional-tour-card__detail--time::before {
  mask-image: url("../images/christmas/field_time.svg");
  -webkit-mask-image: url("../images/christmas/field_time.svg");
}
.optional-tour-card__detail.optional-tour-card__detail--place::before {
  mask-image: url("../images/christmas/map_pin.svg");
  -webkit-mask-image: url("../images/christmas/map_pin.svg");
}
@media not all and (min-width: 768px) {
  .optional-tour-card__detail.optional-tour-card__detail--time {
    order: 1;
    margin-top: 4px;
  }
  .optional-tour-card__detail.optional-tour-card__detail--place {
    order: 2;
    line-height: 1.5;
    margin-top: 4px;
  }
}
@media all and (min-width: 768px) {
  .optional-tour-card__detail.optional-tour-card__detail--time {
    margin-top: 16px;
  }
  .optional-tour-card__detail.optional-tour-card__detail--place {
    margin-top: 8px;
  }
}


/* hotel-index */

@media not all and (min-width: 768px) {
  #hotel-index {
    margin-top: 8px;
  }
  #hotel-index .section-lead {
    text-align: center;
  }
  .hotel-index {
    margin-top: 32px
  }
}
@media all and (min-width: 768px) {
  #hotel-index {
    margin-top: 16px;
  }
  .hotel-index {
    margin-top: 24px
  }
}

.hotel-index__list {
  border: 1px solid #9F7442;
}
.hotel-index__list li {
  text-indent: -1rem;
  padding-left: 1rem;
}
.hotel-index__list li a {
  color: #333;
}
@media not all and (min-width: 768px) {
  .hotel-index__list {
    padding: 24px;
  }
  .hotel-index__list li {
    font-size: 14px;
  }
  .hotel-index__list li + li {
    margin-top: 10px;
  }
  .hotel-index__contents {
    margin-top: 40px;
  }
}
@media all and (min-width: 768px) {
  .hotel-index__list {
    width: 660px;
    padding: 32px;
    margin: 0 auto;
  }
  .hotel-index__list li {
    font-size: 16px;
  }
  .hotel-index__list li + li {
    margin-top: 12px;
  }
  .hotel-index__contents {
    margin-top: 32px;
  }
}

@media not all and (min-width: 768px) {
  .hotel-section + .hotel-section {
    margin-top: 40px;
  }
}
@media all and (min-width: 768px) {
  .hotel-section + .hotel-section {
    margin-top: 48px;
  }
}

.hotel-data__img {
  overflow: hidden;
}
.hotel-data__title {
  font-size: 16px;
  font-weight: 700;
}
.hotel-data__place {
  display: inline-flex;
  align-items: baseline;
  gap: 5px;
  font-size: 12px;
  margin-top: 8px;
}
.hotel-data__place::before {
  content: '';
  flex-shrink: 0;
  width: 10px;
  height: 10px;
  background-color: #697180;
  mask-repeat: no-repeat;
  -webkit-mask-repeat: no-repeat;
  mask-position: top 0 center;
  -webkit-mask-position: top 0 center;
  mask-size: contain;
  -webkit-mask-size: contain;
  mask-image: url("../images/christmas/map_pin.svg");
  -webkit-mask-image: url("../images/christmas/map_pin.svg");
}
.hotel-data__text-bold {
  font-size: 14px;
  font-weight:700;
}
.hotel-data__text {
  font-size: 14px;
}
@media not all and (min-width: 768px) {
  .hotel-data__img {
    aspect-ratio: 335 / 200;
    width: 100%;
    height: 100%;
  }
  .hotel-data__img img {
    object-fit: cover;
  }
  .hotel-data__title {
    margin-top: 8px;
  }
  .hotel-data__text-bold {
    margin-top: 8px;
  }
  .hotel-data__text{
    margin-top: 4px;
  }
}
@media all and (min-width: 768px) {
  .hotel-data {
    display: flex;
    gap: 24px;
    background-color: #F4EADE;
    padding: 24px;
  }
  .hotel-data__img {
    width: 335px;
    height: 220px;
    flex-shrink: 0;
  }
  .hotel-data__text-bold {
    margin-top: 16px;
  }
  .hotel-data__text {
    margin-top: 8px;
  }
}

.hotel-section__subheading {
  width: 100%;
  font-size: 16px;
  font-weight: 700;
  color: #383838;
  border-bottom: 1px solid #9F7442;
  background: left / contain no-repeat url(../images/icon_tree_brown.svg);
  padding: 10px  40px;
}
@media not all and (min-width: 768px) {
  .hotel-section__subheading {
    margin-top: 16px;
  }
}
@media all and (min-width: 768px) {
  .hotel-section__subheading {
    margin-top: 24px;
  }
}

.hotel-point {
  background-color: #F4EADE;
  padding: 16px;
}
.hotel-point__heading {
  color: #000000;
}
.hotel-point__heading span {
  font-size: 12px;
}
.hotel-point__heading p {
  font-size: 16px;
  font-weight: 700;
}
.hotel-point__contents {
  display: flex;
  gap: 16px;
}
.hotel-point__img {
  flex-shrink: 0;
}
.hotel-point__text {
  font-size: 14px;
}
@media not all and (min-width: 768px) {
  .hotel-section__point {
    margin-top: 16px;
  }
  .hotel-point + .hotel-point {
    margin-top: 16px;
  }
  .hotel-point__contents {
    margin-top: 8px;
  }
  .hotel-point__img {
    width: 80px;
    height: 80px;
  }
}
@media all and (min-width: 768px) {
  .hotel-section__point {
    display: flex;
    gap: 24px;
    margin-top: 15px;
  }
  .hotel-section__point--2col .hotel-point{
    width: calc(50% - 12px);
  }
  .hotel-point__contents {
    margin-top: 12px;
  }
  .hotel-point__img {
    width: 120px;
    height: 120px;
  }
}

.hotel-section__information {
  margin-top: 16px;
}
.hotel-information__text {
  position: relative;
  color: #7C480C;
  font-size: 14px;
  font-weight: 700;
  text-indent: 16px;
}
.hotel-information__text::before {
  content: '';
  position: absolute;
  top: 4px;
  left: 0;
  display: block;
  width: 14px;
  height: 14px;
  background-color: #333;
  border-radius: 50%;
}
.hotel-information__detail {
  font-size: 14px;
}
@media not all and (min-width: 768px) {
  .hotel-information + .hotel-information {
    margin-top: 16px;
  }
}
@media all and (min-width: 768px) {
  .hotel-section__information {
    display: flex;
  }
  .hotel-information + .hotel-information {
    border-left: 1px solid #CCCCCC;
    padding-left: 16px;
    margin-left: 16px;
  }
  .hotel-section__information--2col .hotel-information:nth-child(1) {
    width: calc(50% - 16px);
  }
  .hotel-section__information--2col .hotel-information:nth-child(2) {
    width: calc(50% + 16px);
  }
  .hotel-section__information--3col .hotel-information:nth-child(1) {
    width: calc((100% + 16px / 3) + 16px);
  }
  .hotel-section__information--3col .hotel-information:nth-child(2),
  .hotel-section__information--3col .hotel-information:nth-child(3) {
    width: calc((100% + 16px / 3) - 16px);
  }
  .hotel-information__detail {
    padding-left: 16px;
  }
}


/* attempt */
@media not all and (min-width: 768px) {
  #attempt {
    margin-top: 8px;
  }
  .attempt {
    margin-top: 65px;
  }
}
@media all and (min-width: 768px) {
  #attempt {
    margin-top: 16px;
  }
  .attempt {
    margin-top: 86px;
  }
}
.attempt__title {
  display: flex;
  flex-direction: column;
  position: relative;
  max-width: 267px;
  font-family: 'Shippori Mincho', serif;
  text-align: center;
  margin: 0 auto 24px;
}
.attempt__flag-icon {
  position: absolute;
  bottom: 0;
  display: block;
  width: 123px;
  height: 80px;
  background-image: url('../images/icon_flag.svg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  padding-top: 10px;
}
.attempt__text {
  font-style: 14px;
}
.attempt__promise-paper {
  width: 100%;
}
.attempt__promise-paper-heading {
  text-align: center;
  font-size: 18px;
  margin-bottom: 0.3em;
  font-family: 'Shippori Mincho', serif;
}
.attempt__promise-paper-text {
  font-size: 12px;
}
@media not all and (min-width: 768px) {
  .attempt__title {
    font-size: 20px;
  }
  .attempt__flag-icon {
    left: 15px;
    font-size: 12px;
  }
  .attempt__text {
    margin-top: 16px;
  }
  .attempt__promise-paper {
    max-width: 335px;
    height: 235px;
    background-image: url('../images/bg_paper_sp.jpg');
    padding: 18px 20px 46px;
    margin: 24px auto 0;
  }
}
@media all and (min-width: 768px) {
  .attempt__title {
    font-size: 24px;
  }
  .attempt__flag-icon {
    left: 0;
    font-size: 14px;
  }
  .attempt__text {
    text-align: center;
    margin-top: 24px;
  }
  .attempt__promise-paper {
    max-width: 992px;
    height: 169px;
    background-image: url('../images/bg_paper_pc.jpg');
    padding: 32px 40px;
    margin-top: 24px;
  }
}


/* five-actions */
@media not all and (min-width: 768px) {
  #five-actions {
    margin-top: 8px;
  }
}
@media all and (min-width: 768px) {
  #five-actions {
    margin-top: 16px;
  }
}

@media not all and (min-width: 768px) {
  .five-actions {
    margin-top: 20px;
  }
}
@media all and (min-width: 768px) {
  .five-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 24px 16px;
    margin-top: 32px;
  }
}

.action-card {
  background-color: #F7EBDE;
  border-radius: 8px;
  overflow: hidden;
}
.action-card__thumb {
  position: relative;
}
.action-card__thumb::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-color: #707070;
  mix-blend-mode: multiply;
  z-index: 1;
}
.action-card__thumb img {
  aspect-ratio: 320 / 92;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.action-card__heading {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  justify-content: flex-start;
  align-items: center;
  z-index: 2;
}
.action-card__num {
  color: #fff;
  font-size: 33px;
  font-weight: 700;
}
.action-card__heading-text {
  width: 100%;
  color: #fff;
  font-weight: 700;
  text-align: center;
}
.action-card__text {
  padding: 16px;
}
@media all and (max-width: 374px) {
  .action-card__heading-text {
    font-size: 14px!important;
  }
}
@media not all and (min-width: 768px) {
  .action-card + .action-card {
    margin-top: 16px;
  }
  .action-card__heading {
    padding-right: 22px;
    padding-left: 22px;
  }
  .action-card__heading::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 16px;
    transform: translateY(-50%) rotateZ(90deg);
    display: block;
    width: 11px;
    height: 11px;
    mask-repeat: no-repeat;
    -webkit-mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-position: center;
    mask-size: contain;
    -webkit-mask-size: contain;
    background-color: #fff;
    mask-image: url('../images/arrow_g.svg');
    -webkit-mask-image: url('../images/arrow_g.svg');
  }
  .action-card.is-opened .action-card__heading::after {
    transform: translateY(-50%) rotateZ(-90deg);
  }
  .action-card__heading-text {
    font-size: 16px;
    padding-right: 42px;
    padding-left: 20px;
  }
}
@media all and (min-width: 768px) {
  .action-card {
    width: calc((100% - 32px) / 3);
  }
  .action-card__thumb {
    height: 100px;
    pointer-events: none;
  }
  .action-card__heading {
    padding-right: calc((22 / 320) * 100%);
    padding-left: calc((22 / 320) * 100%);
  }
  .action-card__heading-text {
    font-size: 16px;
    padding-right: calc((16 / 320) * 100%);
    padding-left: calc((16 / 320) * 100%);
  }
  .action-card__text {
    display: block!important;
  }
}


/* malama-topics */
@media not all and (min-width: 768px) {
  .malama-topics {
    margin-top: 8px;
  }
}
@media all and (min-width: 768px) {
  .malama-topics {
    margin-top: 16px;
  }
}
.malama-topics__heading {
  text-align: center;
  font-size: 16px;
  font-weight: 700;
}
.malama-topics__contents {
  margin-top: 16px;
}
.malama-topics__item {
  display: block;
}
.malama-topics__item.malama-topics__item--lealea {
  position: relative;
}
.malama-topics__item.malama-topics__item--lealea::before {
  content: 'HISハワイ支店のBlog';
  position: absolute;
  top: 25%;
  color: #fff;
}
.malama-topics__item .text-lealea {
  position: absolute;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media not all and (min-width: 768px) {
  .malama-topics__item {
    width: 100%;
  }
  .malama-topics__item + .malama-topics__item {
    margin-top: 16px;
  }
  .malama-topics__item.malama-topics__item--lealea::before {
    left: 50%;
    transform: translateX(-50%);
    font-size: 14px;
  }
  .malama-topics__item .text-lealea {
    top: calc(50% + 16px);
    width: 140px;
  }
  .malama-topics .pill-button {
    margin-top: 24px;
  }
}
@media all and (min-width: 768px) {
  .malama-topics__contents {
    display: flex;
    gap: 16px;
  }
  .malama-topics__item {
    width: calc((100% - 16px) / 2);
  }
  .malama-topics__item.malama-topics__item--lealea::before {
    left: calc(50% - 5em);
    font-size: 20px;
  }
  .malama-topics__item .text-lealea {
    top: calc(50% + 20px);
    width: 200px;
  }
}

@media not all and (min-width: 768px) {
  .section__btn-bottom {
    padding: 56px 0;
  }
}