﻿.section-important {
  margin-top: 0;
}
.point-block__number {
  display: flex;
  align-items: center;
  margin: 0 0 0 calc(50% - 50vw);
  padding-left: calc(50vw - 50%);
  position: relative;
  background-color: var(--main-color);
  color: #fff;
  font-weight: bold;
  height: 100%;
}
.point-block__title {
  display: flex;
  align-items: center;
  color: var(--main-color);
  font-weight: bold;
  height: 100%;
}
.point-block__lead {
  font-weight: bold;
}
.point-block__image {
  text-align: center;
}
.point-block .media-block__title {
  background-image: repeating-linear-gradient(90deg, #dfcca9, #dfcca9 6px, transparent 6px, transparent 12px);
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: 100% 1px;
  line-height: 1;
}
.point-block .media-block__title-en {
  color: var(--main-color);
}
.important-point01 .media-block {
  align-items: flex-start;
}
.point-block .tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.point-block .tags .tag {
  border-radius: 3px;
  color: #fff;
  background-color: #8AA3AC;
  line-height: 1;
}
.point-block .media-block__summary {
  font-weight: bold;
}
.material-wrap {
  overflow: hidden;
}
.material-block .accordion-content::before {
  display: none;
}
.material-block .accordion-title {
  position: relative;
  background-color: var(--color-lgray);
  overflow: hidden;
  font-weight: bold;
}
.material-block .accordion-title::after,
.material-block .accordion-title::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 21px;
  width: 16px;
  height: 2px;
  background: #B4B4B4;
  transform: translateY(-50%);
  transition: transform 0.3s;
  border-radius: 2px;
}
.material-block .accordion-title::before {
  transform: translateY(-50%) rotate(90deg);
}
.material-wrap[open] .accordion-title::after {
  transform: translateY(-50%) rotate(45deg);
}
.material-wrap[open] .accordion-title::before {
  transform: translateY(-50%) rotate(-45deg);
}
.material-content .content-item {
  background-color: var(--color-lgray);
  border-radius: 10px;
  box-sizing: border-box;
}
.material-name {
  font-weight: bold;
}
.series-image-block img {
  margin: 0 auto;
}
@media (min-width: 769px) {
  .point-block__header {
    display: flex;
    align-items: center;
    height: 95px;
    margin-bottom: 40px;
  }
  .point-block__number {
    padding-right: 30px;
    border-radius: 0 10px 10px 0;
    font-size: 24px;
  }
  .point-block__title {
    padding-left: 30px;
    font-size: 30px;
  }
  .point-block__lead {
    margin: 0 auto 40px;
    font-size: 24px;
  }
  .point-block .media-block__title {
    margin: 0 auto 30px;
    padding-bottom: 15px;
  }
  .point-block .media-block__title-ja {
    margin-right: 17px;
    font-size: 24px;
  }
  .point-block .tags {
    margin: 0 auto 20px;
  }
  .point-block .tags .tag {
    padding: 7px;
    font-size: 13px;
  }
  .point-block .media-block__summary {
    margin: 0 auto 15px;
    font-size: 18px;
  }
  .point-block .media-block__link {
    margin-top: 30px;
  }
  .important-point02 .media-block__heading {
    margin: 0 auto 15px;
    font-size: 24px;
  }
  .material-block {
    margin-bottom: 80px;
  }
  .material-content {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    padding: 40px;
  }
  .material-content .content-item {
    display: flex;
    flex-direction: column;
    padding: 20px;
    width: calc((100% - 20px * 2) / 3);
  }
  .material-content .content-item img {
    border-radius: 10px;
  }
  .material-text {
    flex-grow: 1;
  }
  .point-block .material-content .media-block__link {
    margin: 30px auto 0;
  }
  .material-name {
    margin: 15px 0;
    font-size: 19px;
  }
}
@media (max-width: 768px) {
  .point-block__number {
    display: inline-flex;
    margin-left: calc(-15 / 375 * 100vw);
    padding: 0 calc(15 / 375 * 100vw);
    height: calc(40 / 375 * 100vw);
    border-radius: 0 5px 5px 0;
  }
  .point-block__title {
    margin: calc(10 / 375 * 100vw) auto calc(15 / 375 * 100vw);
    font-size: calc(20 / 375 * 100vw);
  }
  .point-block__lead {
    margin-bottom: calc(20 / 375 * 100vw);
    font-size: calc(18 / 375 * 100vw);
  }
  .point-block .media-block__title {
    margin-bottom: calc(15 / 375 * 100vw);
    padding: 0 0 calc(15 / 375 * 100vw) 0;
    font-size: calc(18 / 375 * 100vw);
  }
  .point-block .media-block__title-en {
    margin-left: calc(15 / 375 * 100vw);
    font-size: calc(12 / 375 * 100vw);
  }
  .point-block .tags {
    margin-bottom: calc(15 / 375 * 100vw);
    gap: calc(5 / 375 * 100vw);
  }
  .point-block .tags .tag {
    padding: calc(5 / 375 * 100vw);
    font-size: calc(13 / 375 * 100vw);
  }
  .point-block .media-block__summary {
    margin-bottom: calc(10 / 375 * 100vw);
    font-size: calc(16 / 375 * 100vw);
  }
  .material-block {
    margin-bottom: calc(40 / 375 * 100vw);
  }
  .material-content {
    padding: calc(15 / 375 * 100vw) calc(10 / 375 * 100vw);
  }
  .material-content .content-item {
    margin-bottom: calc(20 / 375 * 100vw);
    padding: calc(15 / 375 * 100vw) calc(15 / 375 * 100vw) calc(20 / 375 * 100vw);
  }
  .material-content .content-item img {
    border-radius: calc(5 / 375 * 100vw);
  }
  .material-name {
    margin: calc(15 / 375 * 100vw) 0 calc(10 / 375 * 100vw);
    font-size: calc(18 / 375 * 100vw);
  }
  .material-text {
    margin-bottom: calc(20 / 375 * 100vw);
  }
  .point-block .media-block__link {
    margin-top: calc(30 / 375 * 100vw);
  }
}

.section-series-pickup {
  background-color: #F9FBEA;
}
.block-series-pickup .block-series__item {
  background-color: #fff;
  border-radius: 10px;
}
.block-series__color {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 5px;
  width: 100%;
}
.block-series__title {
  font-weight: bold;
}
.color-tip {
  border: 1px solid #ddd;
  border-radius: 50vh;
  width: calc((100% - 5px * 9) / 10);
  aspect-ratio: 1;
}
.color-tip.color-white {
  background-color: #ffffff;
}
.color-tip.color-ivory {
  background-color: #fffbf5;
}
.color-tip.color-blue-light {
  background-color: #b4ddf2;
}
.color-tip.color-blue {
  background-color: #8091db;
}
.color-tip.color-blue-dark {
  background-color: #2f56ae;
}
.color-tip.color-pink-light {
  background-color: #ffc0cb;
}
.color-tip.color-pink {
  background-color: #dd698f;
}
.color-tip.color-pink-bright {
  background-color: #f583c7;
}
.color-tip.color-pink-pale {
  background-color: #ffdfe3;
}
.color-tip.color-coral {
  background-color: #ff9e8c;
}
.color-tip.color-yellow {
  background-color: #fbff76;
}
.color-tip.color-cyan {
  background-color: #58b5cc;
}
.color-tip.color-green-light {
  background-color: #b0dba8;
}
.color-tip.color-green-pale {
  background-color: #bae1cd;
}
.color-tip.color-gray {
  background-color: #9a9a9a;
}
.color-tip.color-gray-dark {
  background-color: #4d4d4d;
}
.color-tip.color-purple {
  background-color: #c087c0;
}
.color-tip.color-beige {
  background-color: #cab9a3;
}
.color-tip.color-brown {
  background-color: #7e604a;
}
.color-tip.color-red-brown {
  background-color: #9a4343;
}
@media (min-width: 769px) {
  .section-series-pickup {
    padding: 100px 0 125px;
  }
  .section-series-pickup .block__text {
    margin: 0 auto 35px;
  }
  .section-series-pickup .block__buttons {
    display: flex;
    justify-content: center;
    margin: 0 auto 60px;
  }
  .section-series-pickup .block__buttons .link-button {
    width: 400px;
  }
  .block-series-pickup {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
  }
  .block-series-pickup .block-series__item {
    display: flex;
    flex-direction: column;
    padding: 20px;
    width: calc((100% - 20px * 2) / 3);
  }
  .block-series__title {
    margin: 20px auto 15px;
    font-size: 18px;
  }
  .block-series__material {
    padding: 15px;
    border-radius: 10px;
    background-color: var(--color-lgray);
  }
  .block-series__color {
    margin: 15px auto 30px;
  }
  .block-series__link  {
    margin: auto auto 0;
  }
}
@media (max-width: 768px) {
  .section-series-pickup {
    padding: calc(50 / 375 * 100vw) 0;
  }
  .section-series-pickup .block__buttons {
    display: flex;
    justify-content: center;
    margin: 0 auto calc(30 / 375 * 100vw);
  }
  .block-series-pickup {
    display: flex;
    flex-direction: column;
    gap: calc(20 / 375 * 100vw);
  }
  .block-series-pickup .block-series__item {
    padding: calc(15 / 375 * 100vw) calc(15 / 375 * 100vw) calc(20 / 375 * 100vw);
  }
  .block-series__title {
    margin: calc(15 / 375 * 100vw) auto calc(10 / 375 * 100vw);
    font-size: calc(16 / 375 * 100vw);
  }
  .block-series__material {
    padding: calc(12 / 375 * 100vw) calc(15 / 375 * 100vw);
    border-radius: calc(15 / 375 * 100vw);
    background-color: var(--color-lgray);
  }
  .block-series__color {
    margin: calc(15 / 375 * 100vw) auto calc(20 / 375 * 100vw);
  }
  .block-series__link  {
    margin: auto auto 0;
  }
}


.howto-categories {
  background-color: #FBF7EF;
}
.category-title {
  padding: 0;
  font-weight: bold;
}
.category-wrap {
  display: flex;
}
.category-wrap .category-item {
  display: flex;
  align-items: center;
  border: 1px solid #ddd;
  border-radius: 50vh;
  background-color: #fff;
}
.feature-item {
  background-color: #f8f9e9; 
  text-align: center;
  position: relative;
}
.feature-item__number {
  position: absolute;
  background-color: var(--main-color);
  color: #fff;
  font-weight: bold;
  border-radius: 50%;
  text-align: center;
}
.feature-item__text {
  color: #333;
  font-weight: bold;
  text-align: left;
}
.gift-select {
  display: flex;
}
@media (min-width: 769px) {
  .howto__block:not(:last-child) {
    margin-bottom: 60px;
  }
  .howto__title {
    font-size: 24px;
  }
  .howto-categories {
    padding: 40px;
    border-radius: 10px;
  }
  .category-title {
    margin: 0 auto 15px;
    font-size: 20px;
  }
  .category-wrap {
    flex-wrap: wrap;
    gap: 20px;
  }
  .category-wrap .category-item {
    padding: 0 25px;
    width: calc((100% - 20px * 3) / 4);
    height: 50px;
  }
  .category-wrap .category-item figure {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 37px;
  }
  .category-wrap .category-item img {
    max-width: 100%;
    max-height: 100%;
  }
  .category-wrap .category-item span {
    margin-left: 18px;
  }
  .howto__title + .section__media {
    margin-top: 20px;
  }
  .howto__block__content {
    align-items: flex-start;
  }
  .howto__block__content .media-block__image {
    margin: 0 0 0 37px;
  }
  .howto__block__content .media-block__description {
    margin-bottom: 0;
  }
  .features {
    display: flex;
    gap: 20px;
    margin-top: 20px;
  }
  .feature-item {
    border-radius: 10px;
    padding: 20px;
    width: calc((100% - 20px * 2) / 3);
  }
  .feature-item__number {
    top: -10px;
    left: 10px;
    width: 57px;
    height: 57px;
    line-height: 57px;
    font-size: 26px;
  }
  .feature-item__icon {
    margin-bottom: 15px;
  }
  .feature-item__icon img {
    height: 120px;
  }
  .feature-item__text {
    font-size: 17px;
  }
  .gift-select {
    margin: 0 auto;
    gap: calc(64 / 1200 * 100%);
    width: calc(964 / 1200 * 100%);
  }
  .gift-select .gift-select__item {
    display: flex;
    flex-direction: column;
    width: calc((100% - (64 / 1200 * 100%)) / 2);
  }
  .block-series__img {
    margin: 0;
  }
  .gift-select .gift-select__item .block__buttons {
    display: flex;
    justify-content: center;
    margin-top: auto;
  }
  .gift-select .gift-select__item .block__buttons .link-button {
    margin-top: 20px;
    width: calc(400 / 450 * 100%);
  }
}
@media (max-width: 768px) {
  .howto__block:not(:last-child) {
    margin-bottom: calc(40 / 375 * 100vw);
  }
  .howto__title {
    font-size: calc(18 / 375 * 100vw);
  }
  .howto-categories {
    padding: calc(30 / 375 * 100vw) calc(15 / 375 * 100vw);
    border-radius: calc(5 / 375 * 100vw);
  }
  .categories-content:not(:last-child) {
    margin-bottom: calc(20 / 375 * 100vw);
  }
  .category-title {
    margin: 0 auto calc(10 / 375 * 100vw);
    font-size: calc(16 / 375 * 100vw);
  }
  .category-wrap {
    flex-direction: column;
    gap: calc(10 / 375 * 100vw);
  }
  .category-wrap .category-item {
    padding: 0 calc(20 / 375 * 100vw);
    height: calc(45 / 375 * 100vw);
    width: 100%;
  }
  .category-wrap .category-item figure {
    display: flex;
    align-items: center;
    justify-content: center;
    width: calc(35 / 375 * 100vw);
    height: calc(35 / 375 * 100vw);
  }
  .category-wrap .category-item img {
    max-width: 100%;
    max-height: 100%;
  }
  .category-wrap .category-item span {
    margin-left: calc(10 / 375 * 100vw);
  }
  .features {
    display: flex;
    flex-direction: column;
    gap: calc(20 / 375 * 100vw);
  }
  .feature-item {
    border-radius: calc(5 / 375 * 100vw);
    padding: calc(20 / 375 * 100vw) calc(15 / 375 * 100vw);
  }
  .feature-item__number {
    top: calc(-4 / 375 * 100vw);
    left: calc(-4 / 375 * 100vw);
    width: calc(43 / 375 * 100vw);
    height: calc(43 / 375 * 100vw);
    line-height: calc(43 / 375 * 100vw);
    font-size: calc(20 / 375 * 100vw);
  }
  .feature-item__icon {
    margin-bottom: calc(10 / 375 * 100vw);
  }
  .feature-item__icon img {
    width: calc(140 / 375 * 100vw);
  }
  .feature-item__text {
    font-size: calc(16 / 375 * 100vw);
  }
  .gift-select {
    flex-direction: column;
    margin: 0 auto;
    gap: calc(35 / 375 * 100vw);
  }
  .gift-select .gift-select__item .block__buttons {
    display: flex;
    justify-content: center;
    margin-top: calc(20 / 375 * 100vw);
  }
}

.towel-map{
  position: relative;
  display: flex;
  justify-content: center;
}

.towel-map .tile{
  position: absolute;
  text-align: center;
  background: #ECFAFF;
  color: #222;
}
.towel-map .tile a,
  .towel-map .tile p {
  display: flex;
  justify-content: center;
  padding-top: 1.87%;
  height: 100%;
  width: 100%;
  font-weight: 600;
  text-decoration: none;
}

.towel-map .tile.layer-01 {
  background: #ECFAFF;
}
.towel-map .tile.layer-02 {
  background: #D6EFF8;
}
.towel-map .tile.layer-03 {
  background: #C6E7F3;
}
.towel-map .tile.layer-04 {
  background: #BADFEC;
}

.towel-map-img {
  padding-top: 0.175%;
  height: 93.875%;
}

.tile--body-bath{
  left: 0;
  top: 3.7%;
  width: 37.98%;
  height: 90.25%;
  z-index: 1;
}
.tile--bath{
  left: 6.71%;
  top: 15%;
  width: 31.26%;
  height: 78.87%;
  z-index: 2;
}
.tile--mini-bath{
  left: 12.27%;
  top: 33.75%;
  width: 25.70%;
  height: 60.12%;
  z-index: 3;
}
.tile--hand{
  left: 19.51%;
  top: 44.37%;
  width: 18.46%;
  height: 49.5%;
  z-index: 4;
}
.tile--bathmat{
  right: 0;
  top: 3.7%;
  width: 32.52%;
  height: 25.12%;
}
.towel-map .tile--bathmat a {
  align-items: center;
}
.tile--hair{
  left: 61.38%;
  top: 36%;
  width: 18.25%;
  height: 57.12%;
}
.tile--wash{
  display: flex;
  flex-direction: column;
  left: 61.38%;
  top: 72.5%;
  width: 15.63%;
  height: 21.37%;
}
.towel-map .tile--wash a{
  height: auto;
}
.tile--sports{
  right: 0;
  top: 31.62%;
  width: 15.63%;
  height: 62.25%;
}
.tile--face{
  right: 2.72%;
  top: 42.25%;
  width: 16.68%;
  height: 51.62%;
}
.tile--hankachi{
  right: 7.24%;
  top: 79.37%;
  width: 12.17%;
  height: 14.5%;
}
.tile--pocket{
  right: 13.22%;
  top: 79.37%;
  width: 6.08%;
  height: 14.5%;
}
.link--hankachi {
  position: absolute;
  right: 9.12%;
  bottom: 22.87%;
  font-weight: bold;
}
.link--hankachi::before {
  content: '';
  position: absolute;
  right: 23.8%;
  top: 100%;
  width: 1px;
  background-color: #000;
  transform: rotate(330deg);
}
.link--pocket {
  position: absolute;
  right: 9.96%;
  bottom: 0%;
  font-weight: bold;
}
.link--pocket::before {
  content: '';
  position: absolute;
  right: 41.95%;
  bottom: 100%;
  width: 1px;
  background-color: #000;
}
@media (min-width: 769px) {
  .towel-map{
    margin: 0 auto;
    width: calc(626 / 1200 * 100%);
    height: calc(526 / 1200 * 100%);
    aspect-ratio: 626 / 526;
  }
  .towel-map .tile a,
  .towel-map .tile p {
    font-size: 13px;
    letter-spacing: -0.06em;
  }
  .link--hankachi {
    font-size: 13px;
    letter-spacing: -0.06em;
  }
  .link--pocket {
    font-size: 13px;
    letter-spacing: -0.06em;
  }
  .link--hankachi::before {
    height: 25px;
  }
  .link--pocket::before {
    height: 30px;
  }
}
@media (max-width: 768px) {
  .towel-map{
    margin: 0 auto;
    width: calc(332 / 375 * 100vw);
    height: calc(279 / 375 * 100vw);
    aspect-ratio: 332 / 279;
  }
  .towel-map .tile a,
  .towel-map .tile p {
    font-size: calc(7 / 375 * 100vw);
    letter-spacing: -0.06em;
  }
  .link--hankachi {
    font-size: calc(7 / 375 * 100vw);
    letter-spacing: -0.06em;
  }
  .link--pocket {
    font-size: calc(7 / 375 * 100vw);
    letter-spacing: -0.06em;
  }
  .link--hankachi::before {
    height: calc(15 / 375 * 100vw);
  }
  .link--pocket::before {
    height: calc(15 / 375 * 100vw);
  }
}
.howto__intro-item {
  background-color: #F8F8F8; 
  text-align: center;
  position: relative;
}
.howto__intro-item__number {
  position: absolute;
  background-color: var(--main-color);
  color: #fff;
  font-weight: bold;
  border-radius: 50%;
  text-align: center;
}
.howto__intro-item__title {
  font-weight: bold;
}
.howto__intro-item__text {
  color: #333;
  text-align: left;
}
.howto__block .block__buttons {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
@media (min-width: 769px) {
  .howto__intro {
    display: flex;
    gap: 20px;
    margin: 20px auto 40px;
  }
  .howto__intro-item {
    border-radius: 10px;
    padding: 20px;
    width: calc((100% - 20px * 2) / 3);
  }
  .howto__intro-item__number {
    top: -10px;
    left: 10px;
    width: 57px;
    height: 57px;
    line-height: 57px;
    font-size: 26px;
  }
  .howto__intro-item__icon {
    margin-bottom: 15px;
  }
  .howto__intro-item__icon img {
    border-radius: 10px;
  }
  .howto__intro-item__title {
    font-size: 20px;
  }
  .howto__intro-item__text {
    font-size: 16px;
  }
  .howto__block .block__buttons .link-button {
    margin-top: 20px;
    width: 400px;
  }
}
@media (max-width: 768px) {
  .howto__intro {
    display: flex;
    flex-direction: column;
    gap: calc(20 / 375 * 100vw);
    margin: 0 auto calc(20 / 375 * 100vw);
  }
  .howto__intro-item {
    border-radius: calc(5 / 375 * 100vw);
    padding: calc(20 / 375 * 100vw) calc(15 / 375 * 100vw);
  }
  .howto__intro-item__number {
    top: calc(-4 / 375 * 100vw);
    left: calc(-4 / 375 * 100vw);
    width: calc(43 / 375 * 100vw);
    height: calc(43 / 375 * 100vw);
    line-height: calc(43 / 375 * 100vw);
    font-size: calc(20 / 375 * 100vw);
  }
  .howto__intro-item__icon {
    margin-bottom: calc(10 / 375 * 100vw);
  }
  .howto__intro-item__icon img {
    border-radius: 10px;
  }
  .howto__intro-item__title {
    font-size: calc(16 / 375 * 100vw);
  }
  .howto__intro-item__text {
    font-size: calc(16 / 375 * 100vw);
  }
  .howto__block .block__buttons .link-button {
    margin-top: calc(15 / 375 * 100vw);
  }
}

.towel-link a {
  position: relative;
  display: block;
}
.towel-link p {
  margin-top: -30px;
  padding-right: 10px;
  font-weight: bold;
  text-align: right;
}