@charset "utf-8";
/* CSS Document */

/* sectionの余白 */
.mkh_section-adj01{
  margin-top: 60px;
}
.mkh_section-adj02{
  margin-top: clamp(4rem, -12.511rem + 38.29vw, 12.375rem);/* 64-198 690-1040 */
}


/* mkh_map_header_wrap */
.mkh_map_header_wrap {
  max-width: 648px;
  margin-inline: auto;
  margin-top: clamp(1.5rem, -0.154rem + 6.15vw, 3rem);/* 24-48 430-820 */
  padding: 0 16px;
}
.mkh_map_CurrentList{
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: clamp(0.75rem, -0.49rem + 4.62vw, 1.5rem);/* 12-24 430-690 */
}
.mkh_map_CurrentList::before{
  position: absolute;
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  border-top: 1px solid #42413B;
}
.mkh_map_CurrentList li{
  position: relative;
  width: 100%;
  height: 50px;
  background-color: #FFFFFF;
  border: 1px solid #707070;
  border-radius: 12px;
}
.mkh_map_CurrentList li a{
  display: block;
  height: 100%;
  align-content: center;
  text-decoration: underline;
  text-decoration-color: transparent;
  border-radius: 12px;
  transition: background-color 0.2s ease;
}
.mkh_map_CurrentList li span{
  position: absolute;
  display: block;
  top: clamp(-20px, calc(-11px - 9 * ((100vw - 430px)/390)), -11px);/* -11 -20 430-820 */
  left: 2px;
  width: clamp(1.125rem, 0.464rem + 2.46vw, 2.063rem);/* 18-33 430-1040 */
  height: clamp(1.125rem, 0.464rem + 2.46vw, 2.063rem);/* 18-33 430-1040 */
  font-family: var(--font-Zenmaru);
  font-size: clamp(0.625em, -0.0641em + 2.5641vw, 1.25em);/* 10-20 430-1040 */
  font-weight: 500;
  color: #295167;
  text-align: center;
  letter-spacing: 0.1em;
  background-color: #FFFFFF;
  border: 1px solid #295267;
  border-radius: 50%;
}
.mkh_map_CurrentList li.active span{
  color: #FFFFFF;
  background-color: #295267;
}
.mkh_map_CurrentList li p{
  align-content: center;
  font-family: var(--font-Zenmaru);
  font-size: clamp(0.75em, 0.398em + 1.31vw, 1.25em);/* 12-20 430-1040 */
  font-weight: 500;
  color: #295167;
  text-align: center;
  letter-spacing: 0.05em;
  white-space: nowrap;
}

/* mkh_map_insideLink */
.mkh_map_insideLink-wrap{
  display: flex;
  justify-content: center;
  gap: clamp(3.5rem, 0.606rem + 10.77vw, 6.125rem);/* 56-98 430-820 */
  margin-top: clamp(1.5rem, 0.397rem + 4.1vw, 2.5rem);/* 24-40 430-820 */
  padding-bottom: 12px;
}
.mkh_map_insideLink{
  padding-bottom: clamp(0.5rem, -0.051rem + 2.05vw, 1rem);/* 8-16 430-820 */
  transition: opacity 0.2s ease;
  background-image: url(../img/deco_insideLinkLine.svg);
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: 100%;
}
.mkh_map_insideLink span{
  display: block;
  font-size: clamp(0.5em, 0.2244em + 1.0256vw, 0.75em);/* 8-12 430-820 */
  font-weight: 700;
  text-align: center;
  text-decoration: underline;
  text-decoration-color: transparent;
  transition: text-decoration-color 0.2s ease;
}
.mkh_map_insideLink p{
  margin-top: clamp(0.188rem, -0.157rem + 1.28vw, 0.5rem);/* 3-8 430-820 */
  padding-bottom: clamp(0.75rem, 0.337rem + 1.54vw, 1.125rem);/* 12-18 430-820 */
  font-family: var(--font-Zenmaru);
  font-size: clamp(0.75em, -0.0769em + 3.0769vw, 1.5em);/* 12-24 430-820 */
  font-weight: 500;
  color: #295167;
  line-height: calc(72 / 54);
  letter-spacing: 0.05em;
}


/* mkh_map_topwrap */
.mkh_map_topwrap{
  max-width: 1040px;
  margin-inline: auto;
  margin-top: 42px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px 48px;
}
.mkh_topDetail-wrap {
  flex: 1;
  min-width: 50%;
}
.mkh_mapTag{
  display: flex;
  align-items: center;
  width: fit-content;
  height: clamp(1.25rem, 0.147rem + 4.1vw, 2.25rem);/* 20-36 430-820 */
  padding: 0px 16px;
  font-family: var(--font-Zenmaru);
  font-size: clamp(0.6875em, 0.0673em + 2.3077vw, 1.25em);/* 11-20 430-820 */
  font-weight: 500;
  color: #FFFFFF;
  line-height: 1;
  text-align: center;
  letter-spacing: 0.1em;
  background-color: #295267;
  border-radius: 8px;
}
.mkh_map_TopHeading {
  margin-top: clamp(1rem, -0.971rem + 4.57vw, 2rem);/* 16-32 690-1040 */
  font-family: var(--font-Zenmaru);
  font-size: clamp(2em, 4vw, 3.375em);
  font-weight: 500;
  line-height: 1;
  color: #295167;
  letter-spacing: 0.05em;
}
.mkh_map_topDetailTxt {
  font-size: clamp(0.875em, 2vw, 1.125em);
  line-height: 2;
  letter-spacing: 0.1em;
  margin-top: clamp(1rem, -3.436rem + 10.29vw, 3.25rem);/* 16-52 690-1040 */
}
.mkh_map_img {
  flex: 0 1 auto;
  max-width: 470px;
}


/* mkh_map_sectionTtl-wrap */
.mkh_map_sectionTtl-wrap{
  position: relative;
  max-width: 1040px;
  margin-inline: auto;
  margin-top: clamp(1.5rem, -1.457rem + 6.86vw, 3rem);/* 24-48 690-1040 */
  margin-bottom: clamp(2rem, -7.288rem + 21.54vw, 3.75rem);/* 32-60 690-820*/
  padding: clamp(24px,3vw,32px) 24px clamp(16px,3vw,24px);
  background-color: #FBF5EA;
  border-radius: 12px;
  border-left: 3px solid #EBD79A;
  border-bottom: 7px solid #EBD79A;
}
/* mkh_map_arrowDotted */
.mkh_map_arrowDotted{
  position: absolute;
  display: inline-block;
  content: '';
  bottom: clamp(-66px, calc(-38px + (-28) * ((100vw - 690px) / 130)), -38px);;/* -38 -66 690-820*/
  left: 50%;
  transform: translateX(-50%);
  width: clamp(2.5rem, -4.798rem + 16.92vw, 3.875rem);/* 40-62 690-820*/
  height: clamp(3.25rem, -6.702rem + 23.08vw, 5.125rem);/* 52-82 690-820*/
}
.mkh_map_Dotted{
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.mkh_map_Dotted span{
  display: block;
  margin-inline: auto;
  width: 8px;
  height: 8px;
  background-color: #D7673D;
  border-radius: 50%;
  opacity: 0.2;
  transform: scale(0.6);
  animation: dotFlow 2s infinite;
}
.mkh_map_arrowDotted img{
  opacity: 0;
  transform: translateY(-12px);
  animation: arrowFlow 2s infinite;
}
.mkh_map_Dotted span:nth-child(1){ animation-delay: 0s; }
.mkh_map_Dotted span:nth-child(2){ animation-delay: 0.5s; }
.mkh_map_Dotted span:nth-child(3){ animation-delay: 1s; }
.mkh_map_Dotted span:nth-child(4){ animation-delay: 1.5s; }
@keyframes dotFlow{
  0%{opacity:.2; transform:scale(.6);}
  25%{opacity:1; transform:scale(1);}
  50%{opacity:.2; transform:scale(.6);}
  100%{opacity:.2; transform:scale(.6);}
}
@keyframes arrowFlow {
  0%   {opacity:0; transform:translateY(-12px); }
  100% {opacity:1; transform:translateY(0px); } 
}


/* mkh_map_sectionTtlのの下線部がつながっているもの */
.mkh_map_sectionTtl-block{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px 56px;
}
/* mkh_map_sectionTtlの下線部が途切れているもの */
.mkh_map_sectionTtl-separate{
  display: flex;
  justify-content: center;
  gap: 40px;
}
.mkh_map_sectionTtl-separate >*{
  flex: 1;
  width: 100%;
}
/* padding付加 */
.mkh_map_sectionTtl-pdb{
  padding-bottom: clamp(1.125rem, -1.111rem + 5.19vw, 2rem);/* 18-32 690-960 */
}
/* 下線部 */
.mkh_map_sectionTtl-underline{
  border-bottom: 3px dotted #AC8A65;
}
/* mkh_map_sectionTtl */
.mkh_map_sectionTtl{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(0.5rem, 0.087rem + 1.54vw, 0.75rem);/* 8-12 430-690 */
}
.mkh_map_sectionTtl-adj{
  padding-bottom: 0;
  border-bottom: none;
}
.mkh_map_sectionTtl-adj li{
  flex: 1;
  justify-content: center;
  padding-bottom: clamp(1.5rem, 0.222rem + 2.96vw, 2rem);/* 24-32 690-960 */
  border-bottom: 3px dotted #AC8A65;
}
.mkh_map_sectionTtl span{
  width: clamp(0.75rem, -0.49rem + 4.62vw, 1.5rem);/* 12-24 430-690 */
  height: auto;
  align-content: center;
}
.mkh_map_sectionTtl span img{
  display: block;
}
.mkh_map_sectionTtl p{
  font-size: clamp(0.75em, 0.1298em + 2.3077vw, 1.125em);/* 12-18 430-690 */
  font-weight: 700;
  color: #295167;
  letter-spacing: 0.064em;
}
/* mkh_map_sum-heading */
.mkh_map_sum-heading{
  flex: 1;
  width: fit-content;
  margin-inline: auto;
  margin-top: 24px;
  padding: 12px clamp(1rem, -0.278rem + 2.96vw, 1.5rem);/* 16-24 690-960 */
  font-family: var(--font-Zenmaru);
  font-size: clamp(1.375em, 4vw, 2.25em);/* 22-36 */
  font-weight: 900;
  color: #D7673D;
  text-align: center;
  align-content: center;
  letter-spacing: 0.064em;
  background-color: #FFFFFF;
  border-radius: 4px;
}
/* mkh_map_sum-headingが1つ以上ある場合 */
.mkh_map_sum-wrap{
  display: flex;
  gap: 16px;
  margin-top: 24px;
}
.mkh_map_sum-wrap .mkh_map_sum-heading{
  margin-top: 0;
  font-size: clamp(1.5em,3vw,1.75em);
}


/* mkh_map_sectionContent-wrap */
.mkh_map_sectionContent-wrap{
  padding-top: 24px;
}
.mkh_map_sectionContent-wrap:not(:last-of-type){
  padding-bottom: 34px;
}
.mkh_map_section-heading-wrap{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 6px 0;
  align-items: baseline;
  max-width: 1040px;
  margin-inline: auto;
  margin-bottom: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid #707070;
}
.mkh_map_section-heading {
  font-family: var(--font-Zenmaru);
  font-size: clamp(1.25rem, 0.7429rem + 1.8868vw, 1.875rem);/* 20-30 430-960 */
  font-weight: 900;
  color: #295167;
  letter-spacing: 0.064em;
}
.mkh_map_section-heading-wrap span{
  margin-inline-start: auto;
  font-size: clamp(0.875rem, 0.3679rem + 1.8868vw, 1.5rem);/* 14-24 430-960 */
  font-weight: 500;
  letter-spacing: 0.064em;
}

.mkh_map_sectionTxt{
  display: block;
  max-width: 1040px;
  margin-inline: auto;
  font-size: 0.875em;
  line-height: calc(22 / 14);
  letter-spacing: 0.1em;
}

/* セクション内スライダー */
.mkh_overflowSlide {
  max-width: 1040px;
  margin-inline: auto;
  box-sizing: content-box;
}
.mkh_sliderList li{
  max-width: clamp(166px, 23vw, 328px);
}




@media screen and (min-width:821px){
/* mkh_map_header_wrap */
  .mkh_map_CurrentList li a:hover{
    background-color: #FBF5EA;
  }
  /* mkh_map_insideLink */
  .mkh_map_insideLink:hover{
    opacity: 0.7;
  }
  .mkh_map_insideLink:hover span{
    text-decoration-color: #111111;
  }
}



@media screen and (max-width:960px){
/* mkh_map_header_wrap */
  .mkh_map_CurrentList li p{
    font-weight: 700;
  }

  /* mkh_map_insideLink */
  .mkh_map_insideLink p{
    font-weight: 700;
  }

  /* mkh_map_topwrap */
  .mkh_mapTag{
    font-weight: 700;
  }
  .mkh_map_TopHeading{
    font-weight: 700;
  }

  /* mkh_map_sectionTtl-wrap */
  /* mkh_map_sectionTtlの下線部が途切れているもの */
  .mkh_map_sectionTtl-separate{
    flex-direction: column;
    align-items: center;
  }
  .mkh_map_sectionTtl-separate >*{
    max-width: 100%;
  }
  /* mkh_map_sum-headingが1つ以上ある場合 */
  .mkh_map_sum-wrap{
    flex-wrap: wrap;
  }
  .mkh_map_sum-wrap .mkh_map_sum-heading{
    flex: inherit;
  }
}




@media screen and (max-width:820px){
  /* mkh_map_header_wrap */
  .mkh_map_CurrentList li{
    height: clamp(1.75rem, 0.234rem + 5.64vw, 3.125rem);/* 28-50 430-820 */
  }

  /* mkh_map_topwrap */
  .mkh_map_topwrap{
    flex-wrap: wrap;
    flex-direction: column-reverse;
    justify-content: center;
    margin-top: 24px;
  }
  .mkh_map_topDetailTxt{
    line-height: calc(24/14);
  }

  /* mkh_map_sectionContent-wrap */
  .mkh_map_sectionContent-wrap{
    padding-top: 32px;
  }
  .mkh_map_section-heading-wrap{
    flex-direction: column;
    border-bottom: unset;
    padding-bottom: 0;
  }
  .mkh_map_section-heading{
    width: 100%;
    padding-bottom: 8px;
    border-bottom: 1px solid #707070;
  }

  /* mkh_map_sum-heading */
  .mkh_map_sum-heading{
    text-align: start;
  }

}




@media screen and (max-width:690px){
  /* mkh_map_header_wrap */
  .mkh_map_CurrentList li{
    border-radius: 9999px;
  }

  /* mkh_map_arrowDotted */
  .mkh_map_Dotted span:nth-child(4){
    display: none;
  }
}
