@charset "UTF-8";
/* =========================================================
  responsive-all.scss
  - event/2026femm 除外
  - PCでは css/index.css の先生紹介3カラムを崩さない
  - box-sizing はPCに適用しない
  - SP / Tablet でレスポンシブ補正
========================================================= */
/* =========================================================
  Variables
========================================================= */
/* =========================================================
  Mixins
========================================================= */
/* =========================================================
  Base
  ※PCの index.css を壊さないため、box-sizing はPCに適用しない
========================================================= */
html {
  -webkit-text-size-adjust: 100%;
  scroll-behavior: smooth;
}

body {
  margin: 0;
  overflow-x: hidden;
}

img,
picture,
svg {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

a {
  color: inherit;
}

/* Tablet / SP のみ border-box */
@media screen and (max-width: 1279px) {
  *,
  *::before,
  *::after {
    box-sizing: border-box;
  }
}
@media screen and (max-width: 768px) {
  html,
  body {
    width: 100% !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
  }
  body,
  body.sub-page {
    padding-top: 84px !important;
  }
  img,
  picture,
  svg {
    max-width: 100% !important;
    height: auto !important;
  }
  .pc {
    display: none !important;
  }
  .sp {
    display: block !important;
  }
  br.sp {
    display: block !important;
  }
}
@media screen and (min-width: 769px) and (max-width: 1279px) {
  .sp {
    display: none !important;
  }
}
@media screen and (min-width: 1280px) {
  .sp {
    display: none !important;
  }
}
/* =========================================================
  Color / Category
========================================================= */
.orange {
  color: #f08b6e !important;
}

.kounenkip {
  color: #ecb774 !important;
}

.funinp {
  color: #77bac0 !important;
}

.fujinp {
  color: #a99cba !important;
}

.seirip {
  color: #ec95a3 !important;
}

.cat,
.cat-news,
.cat-seiri,
.cat-pms,
.cat-kounenki,
.cat-funin,
.cat-fujin {
  color: #fff !important;
}

.cat-news {
  background-color: #5abc9b !important;
}

.cat-seiri {
  background-color: #ec95a3 !important;
}

.cat-pms {
  background-color: #f08b6e !important;
}

.cat-kounenki {
  background-color: #ecb774 !important;
}

.cat-funin {
  background-color: #77bac0 !important;
}

.cat-fujin {
  background-color: #a99cba !important;
}

@media screen and (max-width: 768px) {
  .cat,
  .cat-news,
  .cat-seiri,
  .cat-pms,
  .cat-kounenki,
  .cat-funin,
  .cat-fujin {
    display: inline-block !important;
    width: auto !important;
    min-width: 100px !important;
    padding: 0.25rem 0.8rem !important;
    border-radius: 999px !important;
    text-align: center !important;
    font-size: 0.8rem !important;
    line-height: 1.4 !important;
  }
}
/* =========================================================
  Header
========================================================= */
header {
  background: #fff;
}
header #head-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
header #head-inner h1 {
  margin: 0;
  padding: 0;
  line-height: 1;
  flex-shrink: 0;
}
header #head-inner h1 a {
  display: block;
  line-height: 1;
}
header #head-inner h1 img {
  display: block;
  width: 100%;
  height: auto;
}

/* PC：ヘッダーロゴのみ10%縮小 */
@media screen and (min-width: 1280px) {
  header #head-inner h1 {
    width: 11.7% !important;
  }
}
@media screen and (min-width: 769px) and (max-width: 1279px) {
  header {
    position: sticky !important;
    top: 0 !important;
    z-index: 1000 !important;
    padding: 10px 0 !important;
    background: #fff !important;
    box-shadow: 0 2px 14px rgba(0, 0, 0, 0.04) !important;
  }
  header #head-inner {
    width: calc(100% - 40px) !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 1rem !important;
  }
  header #head-inner h1 {
    width: clamp(135px, 16.2vw, 198px) !important;
  }
  header #head-inner nav ul {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-wrap: wrap !important;
    gap: 0.75rem 1rem !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }
  header #head-inner nav ul li {
    display: block !important;
  }
  header #head-inner nav ul li a {
    font-size: 0.9rem !important;
    white-space: nowrap !important;
    text-decoration: none !important;
  }
  header #head-inner nav ul .nayami,
  header #head-inner nav ul .spon {
    padding: 0.6rem 1rem !important;
    border-radius: 999px !important;
  }
  header #head-inner nav ul .nayami a,
  header #head-inner nav ul .spon a {
    color: #fff !important;
  }
  header #head-inner nav ul .nayami {
    background: #5abc9b !important;
  }
  header #head-inner nav ul .spon {
    background: #f08b6e !important;
  }
}
@media screen and (max-width: 768px) {
  header {
    position: fixed !important;
    inset: 0 0 auto 0 !important;
    z-index: 1000 !important;
    height: 84px !important;
    padding: 10px 0 !important;
    background: #fff !important;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.05) !important;
  }
  header #head-inner {
    width: calc(100% - 24px) !important;
    max-width: none !important;
    height: 64px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
  }
  header #head-inner h1 {
    width: 153px !important;
    max-width: 153px !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
  }
  header #head-inner h1 a {
    display: block !important;
    line-height: 1 !important;
  }
  header #head-inner h1 img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
  }
}
@media screen and (max-width: 374px) {
  header #head-inner h1 {
    width: 140px !important;
    max-width: 140px !important;
  }
}
/* =========================================================
  Drawer / Hamburger
========================================================= */
.drawer {
  position: relative;
}

.drawer-open,
.drawer-close,
.drawer-close-btn {
  display: none;
}

@media screen and (max-width: 768px) {
  .drawer {
    position: static !important;
  }
  .drawer-open,
  .drawer-close-btn {
    width: 64px !important;
    height: 84px !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    background: #f08b6e !important;
    cursor: pointer !important;
  }
  .drawer-open {
    z-index: 1003 !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }
  .drawer-close-btn {
    z-index: 1004 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }
  .drawer-open span,
  .drawer-open span::before,
  .drawer-open span::after,
  .drawer-close-btn span,
  .drawer-close-btn span::before,
  .drawer-close-btn span::after {
    content: "" !important;
    display: block !important;
    width: 34px !important;
    height: 2px !important;
    border-radius: 999px !important;
    background: #fff !important;
    position: absolute !important;
    transition: 0.35s ease !important;
  }
  .drawer-open span {
    position: relative !important;
    background: #fff !important;
  }
  .drawer-open span::before {
    top: -10px !important;
    bottom: auto !important;
    left: 0 !important;
    transform: none !important;
  }
  .drawer-open span::after {
    top: 10px !important;
    bottom: auto !important;
    left: 0 !important;
    transform: none !important;
  }
  .drawer-close-btn span {
    position: relative !important;
    background: transparent !important;
  }
  .drawer-close-btn span::before {
    top: 0 !important;
    bottom: auto !important;
    left: 0 !important;
    transform: rotate(45deg) !important;
  }
  .drawer-close-btn span::after {
    top: 0 !important;
    bottom: auto !important;
    left: 0 !important;
    transform: rotate(-45deg) !important;
  }
  .drawer-content {
    width: 100% !important;
    height: calc(100dvh - 84px) !important;
    position: fixed !important;
    top: 84px !important;
    right: 0 !important;
    left: auto !important;
    z-index: 1002 !important;
    background: rgba(255, 255, 255, 0.98) !important;
    transform: translateX(100%) !important;
    transition: transform 0.4s ease !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }
  #drawer-menu:target {
    transform: translateX(0) !important;
  }
  #drawer-menu ul {
    width: calc(100% - 40px) !important;
    margin: 2rem auto !important;
    padding: 0 !important;
    display: block !important;
    list-style: none !important;
  }
  #drawer-menu li {
    width: 100% !important;
    display: block !important;
    border-bottom: 1px dashed #ccc !important;
    letter-spacing: 0.04em !important;
  }
  #drawer-menu li a {
    display: block !important;
    padding: 1.05rem 0 !important;
    color: #1e2020 !important;
    font-size: 1rem !important;
    line-height: 1.6 !important;
    text-decoration: none !important;
  }
  #drawer-menu .nayami,
  #drawer-menu .spon {
    margin-top: 1rem !important;
    border-bottom: none !important;
    border-radius: 999px !important;
    text-align: center !important;
  }
  #drawer-menu .nayami a,
  #drawer-menu .spon a {
    padding: 0.9rem 1rem !important;
    color: #fff !important;
  }
  #drawer-menu .nayami {
    background: #5abc9b !important;
  }
  #drawer-menu .spon {
    background: #f08b6e !important;
  }
  .drawer-close {
    display: block !important;
    position: fixed !important;
    inset: 84px 0 0 0 !important;
    z-index: 1001 !important;
    background: rgba(0, 0, 0, 0.15) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transition: opacity 0.3s ease !important;
  }
  #drawer-menu:target ~ .drawer-close {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }
  #drawer-menu:target ~ .drawer-open {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }
  #drawer-menu:target ~ .drawer-close-btn {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }
}
@media screen and (max-width: 374px) {
  .drawer-open,
  .drawer-close-btn {
    width: 58px !important;
  }
  .drawer-open span,
  .drawer-open span::before,
  .drawer-open span::after,
  .drawer-close-btn span,
  .drawer-close-btn span::before,
  .drawer-close-btn span::after {
    width: 30px !important;
  }
}
/* =========================================================
  Common Containers
========================================================= */
@media screen and (min-width: 769px) and (max-width: 1279px) {
  .inner,
  .inner2,
  .page1720,
  .page1200,
  .container {
    width: calc(100% - 40px) !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}
@media screen and (max-width: 768px) {
  .inner,
  .inner2,
  .page1720,
  .page1200,
  .container,
  .wrap,
  .wrapper {
    width: calc(100% - 24px) !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  main,
  article,
  section {
    max-width: 100% !important;
  }
}
/* =========================================================
  TOP Page - Hero
========================================================= */
@media screen and (min-width: 769px) and (max-width: 1279px) {
  #hero {
    width: 100% !important;
    padding: 3rem 0 2rem !important;
    overflow: hidden !important;
  }
  #hero #hero-box {
    width: calc(100% - 40px) !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }
  #hero #hero-box > img,
  #hero #hero-box > img[src="images/project_rogo.png"] {
    width: clamp(288px, 43.2vw, 468px) !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    display: block !important;
  }
  #hero #hero-box h2 {
    font-family: "Sawarabi Mincho", serif;
    font-weight: 400;
    letter-spacing: 0.08em;
    line-height: 1.7;
    margin: 1.5rem 0 0 !important;
    font-size: clamp(1.5rem, 2.6vw, 2rem) !important;
  }
  #hero #hero-box p {
    font-family: "Sawarabi Mincho", serif;
    font-weight: 400;
    letter-spacing: 0.08em;
    line-height: 1.7;
    margin: 1.5rem 0 0 !important;
    font-size: 1rem !important;
  }
  #hero #hero-box h3 {
    font-family: "Sawarabi Mincho", serif;
    font-weight: 400;
    letter-spacing: 0.08em;
    line-height: 1.7;
    margin: 2rem 0 0 !important;
    font-size: 1.3rem !important;
  }
}
@media screen and (max-width: 768px) {
  #hero {
    width: 100% !important;
    padding: 2.5rem 0 2rem !important;
    overflow: hidden !important;
  }
  #hero #hero-box {
    width: calc(100% - 24px) !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }
  #hero #hero-box > img,
  #hero #hero-box > img[src="images/project_rogo.png"] {
    width: min(77.4vw, 324px) !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    display: block !important;
  }
  #hero #hero-box h2 {
    font-family: "Sawarabi Mincho", serif;
    font-weight: 400;
    letter-spacing: 0.08em;
    line-height: 1.7;
    margin: 1.5rem 0 0 !important;
    font-size: 1.35rem !important;
    line-height: 1.8 !important;
    letter-spacing: 0.08em !important;
    text-align: center !important;
  }
  #hero #hero-box p,
  #hero #hero-box .copy {
    font-family: "Sawarabi Mincho", serif;
    font-weight: 400;
    letter-spacing: 0.08em;
    line-height: 1.7;
    margin: 1.5rem 0 0 !important;
    font-size: 0.95rem !important;
    line-height: 2 !important;
    letter-spacing: 0.04em !important;
    text-align: center !important;
  }
  #hero #hero-box h3 {
    font-family: "Sawarabi Mincho", serif;
    font-weight: 400;
    letter-spacing: 0.08em;
    line-height: 1.7;
    margin: 2rem 0 0 !important;
    font-size: 1.15rem !important;
    line-height: 1.8 !important;
    text-align: center !important;
  }
}
/* =========================================================
  TOP Page - Information
========================================================= */
@media screen and (min-width: 769px) and (max-width: 1279px) {
  #index-info {
    padding: 3.5rem 0 !important;
  }
  #index-info .inner {
    width: calc(100% - 40px) !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  #index-info h2 {
    font-family: "Sawarabi Mincho", serif;
    font-weight: 400;
    letter-spacing: 0.08em;
    line-height: 1.7;
    font-size: 2rem !important;
  }
  #index-info #index-info-contents {
    margin-top: 2rem !important;
  }
  #index-info #index-info-contents .index-info-box {
    display: grid !important;
    grid-template-columns: 130px 110px 1fr !important;
    align-items: center !important;
    gap: 1rem !important;
    padding: 1.5rem 1rem !important;
    border-top: 1px dashed #848484 !important;
  }
  #index-info #index-info-contents .index-info-box:last-child {
    border-bottom: 1px dashed #848484 !important;
  }
  #index-info #index-info-contents .index-info-box .cat,
  #index-info #index-info-contents .index-info-box .date,
  #index-info #index-info-contents .index-info-box h3 {
    margin: 0 !important;
  }
  #index-info #index-info-contents .index-info-box h3 {
    font-size: 1rem !important;
    line-height: 1.6 !important;
    font-weight: 400 !important;
  }
}
@media screen and (max-width: 768px) {
  #index-info {
    width: 100% !important;
    padding: 3rem 0 !important;
  }
  #index-info .inner {
    width: calc(100% - 24px) !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  #index-info h2 {
    font-family: "Sawarabi Mincho", serif;
    font-weight: 400;
    letter-spacing: 0.08em;
    line-height: 1.7;
    margin: 0 !important;
    font-size: 1.7rem !important;
    text-align: center !important;
  }
  #index-info #index-info-contents {
    width: 100% !important;
    margin: 1.5rem auto 0 !important;
  }
  #index-info #index-info-contents .index-info-box {
    display: block !important;
    width: 100% !important;
    padding: 1.4rem 0.5rem !important;
    border-top: 1px dashed #848484 !important;
  }
  #index-info #index-info-contents .index-info-box:last-child {
    border-bottom: 1px dashed #848484 !important;
  }
  #index-info #index-info-contents .index-info-box .cat {
    min-width: 120px !important;
    margin: 0 0 0.6rem !important;
  }
  #index-info #index-info-contents .index-info-box .date {
    display: block !important;
    margin: 0 0 0.5rem !important;
    font-size: 0.9rem !important;
  }
  #index-info #index-info-contents .index-info-box h3 {
    margin: 0 !important;
    font-size: 1rem !important;
    line-height: 1.7 !important;
    font-weight: 400 !important;
    letter-spacing: 0.03em !important;
  }
}
/* =========================================================
  TOP Page - Consultation
========================================================= */
/* PCは基本 index.css に任せる。
   ただし、前回崩れた先生紹介3カラムはPCで明示的に元の値に戻す。 */
@media screen and (min-width: 1280px) {
  #index-consul #index-consul-dr {
    margin-top: 6rem !important;
  }
  #index-consul #index-consul-dr #index-consul-dr-contents {
    width: 900px !important;
    margin: 0 auto !important;
    margin-top: 2rem !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: stretch !important;
    gap: 0 !important;
  }
  #index-consul #index-consul-dr #index-consul-dr-contents .index-consul-dr-box {
    width: 202px !important;
    max-width: none !important;
    text-align: center !important;
    position: relative !important;
    padding-right: 5rem !important;
    margin-right: 2rem !important;
    flex: 0 0 auto !important;
    display: block !important;
    box-sizing: content-box !important;
  }
  #index-consul #index-consul-dr #index-consul-dr-contents .index-consul-dr-box::after {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    width: 1px !important;
    height: 100% !important;
    background-color: #000 !important;
    display: block !important;
  }
  #index-consul #index-consul-dr #index-consul-dr-contents .index-consul-dr-box:last-child {
    padding-right: 0 !important;
    margin-right: 0 !important;
  }
  #index-consul #index-consul-dr #index-consul-dr-contents .index-consul-dr-box:last-child::after {
    display: none !important;
  }
  #index-consul #index-consul-dr #index-consul-dr-contents .index-consul-dr-box > img {
    width: 100% !important;
    max-width: 202px !important;
    height: auto !important;
    display: block !important;
    margin: 0 auto !important;
  }
  #index-consul #index-consul-dr #index-consul-dr-contents .index-consul-dr-box .drspec {
    margin-top: 1rem !important;
    padding: 1rem 0 !important;
    border-top: 0.1rem solid #000 !important;
    border-bottom: 0.1rem solid #000 !important;
  }
  #index-consul #index-consul-dr #index-consul-dr-contents .index-consul-dr-box .drspec .drname {
    font-size: 1.2rem !important;
    letter-spacing: 0.04rem !important;
  }
  #index-consul #index-consul-dr #index-consul-dr-contents .index-consul-dr-box .drspec .city {
    margin-top: 0.6rem !important;
    letter-spacing: 0.04rem !important;
  }
  #index-consul #index-consul-dr #index-consul-dr-contents .index-consul-dr-box .drspec .hospital {
    letter-spacing: 0.04rem !important;
  }
  #index-consul #index-consul-dr #index-consul-dr-contents .index-consul-dr-box .spec {
    height: 83px !important;
    padding: 0.6rem 0 !important;
    border-bottom: 0.1rem solid #000 !important;
    display: flex !important;
    justify-content: space-around !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 0 !important;
    box-sizing: content-box !important;
  }
  #index-consul #index-consul-dr #index-consul-dr-contents .index-consul-dr-box .spec p {
    width: 110px !important;
    height: 23px !important;
    padding: 0.2rem 0 !important;
    margin: 0 !important;
    font-size: 0.9rem !important;
    border-radius: 1rem !important;
    text-align: center !important;
    line-height: 1.2 !important;
    box-sizing: content-box !important;
  }
  #index-consul #index-consul-dr #index-consul-dr-contents .index-consul-dr-box .spec p:nth-of-type(-n + 2) {
    width: 90px !important;
  }
}
/* Tablet / SP では見出し背景を強制表示 */
@media screen and (min-width: 769px) and (max-width: 1279px) {
  #index-consul {
    padding: 3.5rem 0 !important;
    background: #cdebe1 !important;
  }
  #index-consul .inner2 {
    width: calc(100% - 40px) !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  #index-consul #index-consul-top {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 2rem !important;
    margin: 0 auto !important;
  }
  #index-consul #index-consul-top h2 {
    width: 42% !important;
    margin: 0 !important;
  }
  #index-consul #index-consul-top h3 {
    width: 58% !important;
    margin: 0 !important;
    font-size: 1rem !important;
    line-height: 2 !important;
    letter-spacing: 0.06em !important;
    font-weight: 400 !important;
  }
  #index-consul #index-consul-report,
  #index-consul #index-consul-theme,
  #index-consul #index-consul-dr {
    margin-top: 4rem !important;
  }
  #index-consul #index-consul-report.index-reoort-h3 > h3,
  #index-consul #index-consul-theme.index-reoort-h3 > h3,
  #index-consul #index-consul-dr.index-reoort-h3 > h3,
  #index-consul .index-reoort-h3 > h3 {
    position: relative !important;
    isolation: isolate !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 255px !important;
    min-width: 255px !important;
    height: 68px !important;
    min-height: 68px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    background-image: url(https://wandermust.net/fmm/img/index-consul-title-bk.svg) !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: 100% 100% !important;
    background-color: transparent !important;
    font-family: "Noto Sans JP", sans-serif !important;
    font-size: 1.3rem !important;
    line-height: 1 !important;
    letter-spacing: 0.4rem !important;
    font-weight: 400 !important;
    color: #1e2020 !important;
    text-align: center !important;
    white-space: nowrap !important;
    overflow: visible !important;
    z-index: 0 !important;
  }
  #index-consul #index-consul-report.index-reoort-h3 > h3::before,
  #index-consul #index-consul-theme.index-reoort-h3 > h3::before,
  #index-consul #index-consul-dr.index-reoort-h3 > h3::before,
  #index-consul .index-reoort-h3 > h3::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    background-image: url(https://wandermust.net/fmm/img/index-consul-title-bk.svg) !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: 100% 100% !important;
    z-index: -1 !important;
    pointer-events: none !important;
  }
  #index-consul #index-consul-report-contents {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 1.4rem !important;
    margin-top: 2rem !important;
  }
  #index-consul #index-consul-report-contents .index-consul-report-box {
    width: 100% !important;
    background: #fff !important;
    border-radius: 1rem !important;
    overflow: hidden !important;
  }
  #index-consul #index-consul-report-contents .index-consul-report-box img {
    width: 100% !important;
    height: 200px !important;
    -o-object-fit: cover !important;
       object-fit: cover !important;
  }
  #index-consul #index-consul-report-contents .index-consul-report-box .index-consul-discri {
    width: calc(100% - 32px) !important;
    margin: 1.2rem auto 1.5rem !important;
  }
  #index-consul #index-consul-theme-contents {
    display: grid !important;
    grid-template-columns: repeat(5, 1fr) !important;
    gap: 1rem !important;
    padding: 2rem 1.5rem !important;
    background: #fff !important;
    border-radius: 1rem !important;
  }
  #index-consul #index-consul-theme-contents .index-consul-box {
    width: 100% !important;
    text-align: center !important;
  }
  #index-consul #index-consul-theme-contents .index-consul-box img {
    width: 90% !important;
    margin: 0 auto !important;
    display: block !important;
  }
  #index-consul #index-consul-dr-contents {
    width: 100% !important;
    display: flex !important;
    justify-content: space-between !important;
    gap: 1.5rem !important;
    margin: 2rem auto 0 !important;
  }
  #index-consul #index-consul-dr-contents .index-consul-dr-box {
    width: 33.333% !important;
    padding-right: 0 !important;
    margin-right: 0 !important;
    text-align: center !important;
  }
  #index-consul #index-consul-dr-contents .index-consul-dr-box::after {
    display: none !important;
  }
}
@media screen and (max-width: 768px) {
  #index-consul {
    width: 100% !important;
    padding: 3rem 0 !important;
    background: #cdebe1 !important;
    overflow: hidden !important;
  }
  #index-consul .inner2 {
    width: calc(100% - 24px) !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  #index-consul #index-consul-top {
    width: 100% !important;
    display: block !important;
    margin: 0 auto !important;
  }
  #index-consul #index-consul-top h2 {
    width: 100% !important;
    margin: 0 !important;
    text-align: center !important;
  }
  #index-consul #index-consul-top h2 img {
    width: min(88vw, 360px) !important;
    margin: 0 auto !important;
    display: block !important;
  }
  #index-consul #index-consul-top h3 {
    width: 100% !important;
    margin: 1.5rem 0 0 !important;
    font-size: 0.95rem !important;
    line-height: 2 !important;
    letter-spacing: 0.05em !important;
    font-weight: 400 !important;
  }
  #index-consul #index-consul-report,
  #index-consul #index-consul-theme,
  #index-consul #index-consul-dr {
    width: 100% !important;
    margin: 3rem auto 0 !important;
  }
  #index-consul #index-consul-report.index-reoort-h3 > h3,
  #index-consul #index-consul-theme.index-reoort-h3 > h3,
  #index-consul #index-consul-dr.index-reoort-h3 > h3,
  #index-consul .index-reoort-h3 > h3 {
    position: relative !important;
    isolation: isolate !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 230px !important;
    min-width: 230px !important;
    height: 61px !important;
    min-height: 61px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    background-image: url(https://wandermust.net/fmm/img/index-consul-title-bk.svg) !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: 100% 100% !important;
    background-color: transparent !important;
    font-family: "Noto Sans JP", sans-serif !important;
    font-size: 1.15rem !important;
    line-height: 1 !important;
    letter-spacing: 0.3rem !important;
    font-weight: 400 !important;
    color: #1e2020 !important;
    text-align: center !important;
    white-space: nowrap !important;
    overflow: visible !important;
    z-index: 0 !important;
  }
  #index-consul #index-consul-report.index-reoort-h3 > h3::before,
  #index-consul #index-consul-theme.index-reoort-h3 > h3::before,
  #index-consul #index-consul-dr.index-reoort-h3 > h3::before,
  #index-consul .index-reoort-h3 > h3::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    background-image: url(https://wandermust.net/fmm/img/index-consul-title-bk.svg) !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: 100% 100% !important;
    z-index: -1 !important;
    pointer-events: none !important;
  }
  #index-consul #index-consul-report-contents {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 1.5rem !important;
    margin-top: 1.5rem !important;
  }
  #index-consul #index-consul-report-contents .index-consul-report-box {
    width: 100% !important;
    margin: 0 !important;
    padding-bottom: 0 !important;
    background: #fff !important;
    border-radius: 1rem !important;
    overflow: hidden !important;
  }
  #index-consul #index-consul-report-contents .index-consul-report-box a {
    display: block !important;
    text-decoration: none !important;
  }
  #index-consul #index-consul-report-contents .index-consul-report-box img {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16/10 !important;
    -o-object-fit: cover !important;
       object-fit: cover !important;
    display: block !important;
  }
  #index-consul #index-consul-report-contents .index-consul-report-box .index-consul-discri {
    width: calc(100% - 32px) !important;
    margin: 1rem auto 1.4rem !important;
  }
  #index-consul #index-consul-report-contents .index-consul-report-box .index-consul-discri .cat {
    margin: 0 !important;
  }
  #index-consul #index-consul-report-contents .index-consul-report-box .index-consul-discri h4 {
    margin: 0.6rem 0 0 !important;
    font-size: 1rem !important;
    line-height: 1.7 !important;
    letter-spacing: 0.04em !important;
    font-weight: 400 !important;
  }
  #index-consul #index-consul-theme-contents {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 1.2rem !important;
    margin-top: 1.5rem !important;
    padding: 1.5rem 1rem !important;
    background: #fff !important;
    border-radius: 1rem !important;
  }
  #index-consul #index-consul-theme-contents .index-consul-box {
    width: 100% !important;
    text-align: center !important;
  }
  #index-consul #index-consul-theme-contents .index-consul-box a {
    display: block !important;
  }
  #index-consul #index-consul-theme-contents .index-consul-box img {
    width: min(80%, 140px) !important;
    margin: 0 auto !important;
    display: block !important;
  }
  #index-consul #index-consul-theme-contents .index-consul-box .more-consul2 {
    width: 100% !important;
    margin: 0.8rem auto 0 !important;
    padding: 0.6rem 0.4rem !important;
  }
  #index-consul #index-consul-theme-contents .index-consul-box .more-consul2 a {
    padding: 0 !important;
    font-size: 0.82rem !important;
  }
  #index-consul #index-consul-dr-contents {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 1.5rem !important;
    margin: 1.5rem auto 0 !important;
  }
  #index-consul #index-consul-dr-contents .index-consul-dr-box {
    width: 100% !important;
    max-width: 320px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    text-align: center !important;
  }
  #index-consul #index-consul-dr-contents .index-consul-dr-box::after {
    display: none !important;
  }
  #index-consul #index-consul-dr-contents .index-consul-dr-box > img {
    width: 220px !important;
    margin: 0 auto !important;
    display: block !important;
  }
  #index-consul #index-consul-dr-contents .index-consul-dr-box .drspec {
    margin-top: 1rem !important;
    padding: 1rem 0 !important;
    border-top: 1px solid #000 !important;
    border-bottom: 1px solid #000 !important;
  }
  #index-consul #index-consul-dr-contents .index-consul-dr-box .spec {
    height: auto !important;
    min-height: 70px !important;
    padding: 0.8rem 0 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 0.5rem !important;
    border-bottom: 1px solid #000 !important;
  }
  #index-consul #index-consul-dr-contents .index-consul-dr-box .spec p {
    width: auto !important;
    min-width: 90px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0.25rem 0.7rem !important;
    font-size: 0.8rem !important;
    border-radius: 999px !important;
  }
}
/* =========================================================
  TOP Page - Nayami
========================================================= */
@media screen and (max-width: 768px) {
  #index-nayami {
    width: 100% !important;
    padding: 4rem 0 3.5rem !important;
    overflow: hidden !important;
  }
  #index-nayami h2 {
    font-family: "Sawarabi Mincho", serif;
    font-weight: 400;
    letter-spacing: 0.08em;
    line-height: 1.7;
    width: calc(100% - 24px) !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-top: 0 !important;
    font-size: 1.7rem !important;
    text-align: center !important;
  }
  #index-nayami p {
    width: calc(100% - 24px) !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-top: 1.8rem !important;
    font-size: 0.95rem !important;
    line-height: 2 !important;
    letter-spacing: 0.05em !important;
    text-align: center !important;
  }
}
/* =========================================================
  Background Decorations
========================================================= */
@media screen and (max-width: 768px) {
  .bg-animations {
    position: fixed !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: -1 !important;
    pointer-events: none !important;
    overflow: hidden !important;
  }
  .ani-item {
    display: block !important;
    position: fixed !important;
    z-index: -1 !important;
    pointer-events: none !important;
    opacity: 0.65 !important;
    visibility: visible !important;
  }
  .ani-hana1 {
    width: 70vw !important;
    top: -120px !important;
    left: -36% !important;
  }
  .ani-hana2 {
    width: 32vw !important;
    top: -20px !important;
    right: -10% !important;
  }
  .ani-hana3 {
    width: 58vw !important;
    top: 260px !important;
    right: -35% !important;
  }
  .ani-hana5 {
    width: 45vw !important;
    top: 640px !important;
    left: -25% !important;
  }
  .ani-hana6 {
    width: 24vw !important;
    top: 880px !important;
    right: -8% !important;
  }
  .ani-hikari7 {
    width: 35vw !important;
    top: 90px !important;
    right: 4% !important;
  }
  .ani-hikari8 {
    width: 34vw !important;
    top: 460px !important;
    left: -12% !important;
  }
  .ani-hikari9 {
    width: 42vw !important;
    top: 720px !important;
    right: -14% !important;
  }
}
/* =========================================================
  Lower Pages Common
========================================================= */
@media screen and (min-width: 769px) and (max-width: 1279px) {
  #page {
    width: calc(100% - 40px) !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-top: 2rem !important;
  }
  #page-container,
  #page-container2 {
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
    margin-top: 3rem !important;
  }
  #page-left,
  #page-right {
    width: 100% !important;
    max-width: 100% !important;
  }
  #page-right {
    margin-top: 3rem !important;
  }
}
@media screen and (max-width: 768px) {
  #page {
    width: calc(100% - 24px) !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-top: 1.5rem !important;
  }
  .breadcrumb {
    width: 100% !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 0.4rem !important;
    font-size: 0.8rem !important;
    line-height: 1.7 !important;
  }
  #page-container,
  #page-container2 {
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
    margin-top: 2rem !important;
  }
  #page-left,
  #page-right {
    width: 100% !important;
    max-width: 100% !important;
  }
  #page-left {
    padding-bottom: 3rem !important;
  }
  #page-right {
    margin-top: 2.5rem !important;
  }
  .report-page-title h2,
  #page-left > h2,
  #page-right > h2 {
    font-family: "Sawarabi Mincho", serif;
    font-weight: 400;
    letter-spacing: 0.08em;
    line-height: 1.7;
    margin: 0 !important;
    font-size: 1.7rem !important;
    line-height: 1.7 !important;
    letter-spacing: 0.25rem !important;
    text-align: center !important;
  }
  #page-right > h2 {
    padding: 1.2rem 0 !important;
    border-top: 1px solid #000 !important;
    border-bottom: 1px solid #000 !important;
  }
}
/* =========================================================
  Report List Boxes
========================================================= */
@media screen and (min-width: 769px) and (max-width: 1279px) {
  #page-left #page-contents {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 2rem !important;
    margin-top: 3rem !important;
  }
  #page-left #page-contents::after {
    display: none !important;
  }
  #page-left #page-contents .page-report-box {
    width: 100% !important;
    margin: 0 !important;
  }
}
@media screen and (max-width: 768px) {
  #page-left #page-contents {
    width: 100% !important;
    display: block !important;
    margin-top: 2rem !important;
  }
  #page-left #page-contents::after {
    display: none !important;
  }
  #page-left #page-contents .page-report-box {
    width: 100% !important;
    margin: 0 0 1.8rem !important;
    padding: 0 !important;
    border-top: 1px solid #000 !important;
    background: transparent !important;
  }
  #page-left #page-contents .page-report-box a {
    display: block !important;
    width: 100% !important;
    text-decoration: none !important;
  }
  #page-left #page-contents .page-report-box a img {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16/10 !important;
    -o-object-fit: cover !important;
       object-fit: cover !important;
    display: block !important;
    margin: 1.4rem 0 0 !important;
    border-radius: 1rem !important;
  }
  #page-left #page-contents .page-report-box a .page-report-discri {
    width: calc(100% - 20px) !important;
    margin: 1rem auto 0 !important;
  }
  #page-left #page-contents .page-report-box a .page-report-discri .cat {
    margin: 0 !important;
  }
  #page-left #page-contents .page-report-box a .page-report-discri h3 {
    margin: 0.7rem 0 0 !important;
    font-size: 1.05rem !important;
    line-height: 1.7 !important;
    font-weight: 400 !important;
    letter-spacing: 0.04em !important;
  }
}
/* =========================================================
  Pickup Sidebar
========================================================= */
@media screen and (min-width: 769px) and (max-width: 1279px) {
  #page-right #pickup-contents {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 1.5rem !important;
    margin-top: 2rem !important;
  }
  #page-right #pickup-contents .pickup-box {
    margin: 0 !important;
  }
  #page-right #pickup-contents .pickup-box a {
    display: grid !important;
    grid-template-columns: 120px 1fr !important;
    gap: 1rem !important;
    align-items: center !important;
  }
  #page-right #pickup-contents .pickup-box .pickup-img {
    width: 120px !important;
  }
  #page-right #pickup-contents .pickup-box .pickup-img img {
    width: 120px !important;
    height: 90px !important;
    -o-object-fit: cover !important;
       object-fit: cover !important;
  }
  #page-right #pickup-contents .pickup-box .picup-title {
    width: auto !important;
  }
}
@media screen and (max-width: 768px) {
  #page-right #pickup-contents {
    width: 100% !important;
    margin-top: 1.5rem !important;
    padding-bottom: 2rem !important;
    border-bottom: 1px solid #000 !important;
  }
  #page-right #pickup-contents .pickup-box {
    width: 100% !important;
    margin: 0 0 1.2rem !important;
  }
  #page-right #pickup-contents .pickup-box a {
    display: grid !important;
    grid-template-columns: 90px 1fr !important;
    gap: 0.8rem !important;
    align-items: center !important;
    text-decoration: none !important;
  }
  #page-right #pickup-contents .pickup-box .pickup-img {
    width: 90px !important;
    border-radius: 0.8rem !important;
    overflow: hidden !important;
  }
  #page-right #pickup-contents .pickup-box .pickup-img img {
    width: 90px !important;
    height: 90px !important;
    -o-object-fit: cover !important;
       object-fit: cover !important;
    display: block !important;
  }
  #page-right #pickup-contents .pickup-box .picup-title {
    width: auto !important;
  }
  #page-right #pickup-contents .pickup-box .picup-title .cat {
    margin: 0 0 0.4rem !important;
    min-width: 80px !important;
    font-size: 0.75rem !important;
  }
  #page-right #pickup-contents .pickup-box .picup-title h3 {
    margin: 0 !important;
    font-size: 0.9rem !important;
    line-height: 1.6 !important;
    font-weight: 400 !important;
    letter-spacing: 0.03em !important;
  }
}
/* =========================================================
  Doctor Page
========================================================= */
@media screen and (min-width: 769px) and (max-width: 1279px) {
  #page-left #page-contents .dr-contents {
    padding: 2.5rem 0 !important;
  }
  #page-left #page-contents .dr-contents .dr-contents-box {
    width: 100% !important;
  }
  #page-left #page-contents .dr-contents .dr-message {
    display: grid !important;
    grid-template-columns: 220px 1fr !important;
    gap: 2rem !important;
    align-items: start !important;
  }
  #page-left #page-contents .dr-contents .dr-img {
    width: 220px !important;
  }
  #page-left #page-contents .dr-contents .dr-na-me {
    width: 100% !important;
    margin-top: 0 !important;
  }
  #page-left #page-contents .dr-contents #dr-special-contents .dr-special-box {
    width: 100% !important;
  }
}
@media screen and (max-width: 768px) {
  #page-left #page-contents .dr-contents {
    width: 100% !important;
    padding: 2rem 0 !important;
    border-top: 1px solid #000 !important;
  }
  #page-left #page-contents .dr-contents .dr-contents-box {
    width: 100% !important;
    margin: 0 auto !important;
  }
  #page-left #page-contents .dr-contents .dr-message {
    display: block !important;
    width: 100% !important;
  }
  #page-left #page-contents .dr-contents .dr-img {
    width: 220px !important;
    margin: 0 auto 1.5rem !important;
    text-align: center !important;
  }
  #page-left #page-contents .dr-contents .dr-img img {
    width: 100% !important;
    display: block !important;
  }
  #page-left #page-contents .dr-contents .dr-na-me {
    width: 100% !important;
    margin: 0 !important;
  }
  #page-left #page-contents .dr-contents .dr-na-me h3 {
    margin: 0 0 1rem !important;
    font-size: 1.2rem !important;
    line-height: 1.7 !important;
    letter-spacing: 0.05em !important;
    text-align: center !important;
  }
  #page-left #page-contents .dr-contents .dr-na-me h3 .dr,
  #page-left #page-contents .dr-contents .dr-na-me h3 .clin {
    display: inline !important;
    font-size: 0.95rem !important;
  }
  #page-left #page-contents .dr-contents .dr-na-me .dr-message-box {
    width: 100% !important;
    border-radius: 1rem !important;
    background: #def2eb !important;
  }
  #page-left #page-contents .dr-contents .dr-na-me .dr-message-box p {
    width: calc(100% - 32px) !important;
    margin: 0 auto !important;
    padding: 1.4rem 0 !important;
    font-size: 0.95rem !important;
    line-height: 1.9 !important;
  }
  #page-left #page-contents .dr-contents #dr-special-contents {
    margin-top: 2rem !important;
  }
  #page-left #page-contents .dr-contents #dr-special-contents .dr-special {
    padding: 1.5rem 0 !important;
    border-top: 1px dashed #000 !important;
  }
  #page-left #page-contents .dr-contents #dr-special-contents .dr-special .dr-special-box {
    width: 100% !important;
    margin: 0 auto !important;
  }
  #page-left #page-contents .dr-contents #dr-special-contents .dr-special .dr-special-box dl {
    display: block !important;
  }
  #page-left #page-contents .dr-contents #dr-special-contents .dr-special .dr-special-box dl dt {
    width: 150px !important;
    margin: 0 0 0.8rem !important;
    padding: 0.25rem 0 !important;
    background: #5abc9b !important;
    color: #fff !important;
    text-align: center !important;
    border-radius: 999px !important;
  }
  #page-left #page-contents .dr-contents #dr-special-contents .dr-special .dr-special-box dl dd {
    margin: 0 !important;
    font-size: 0.95rem !important;
    line-height: 1.8 !important;
    letter-spacing: 0.04em !important;
  }
}
/* =========================================================
  Single Report Pages
========================================================= */
@media screen and (min-width: 769px) and (max-width: 1279px) {
  #single-contents {
    width: calc(100% - 40px) !important;
    max-width: 1000px !important;
  }
  #single-contents #single-contents-box {
    width: 100% !important;
    max-width: 820px !important;
  }
  #sinr-b,
  #sinr-b2,
  #explanation #report-main,
  #explanation #report-dr,
  #explanation #report-end,
  #explanation #report-post {
    width: 100% !important;
    max-width: 930px !important;
  }
}
@media screen and (max-width: 768px) {
  #single-contents {
    width: calc(100% - 24px) !important;
    max-width: 100% !important;
    margin: 2rem auto 4rem !important;
  }
  #single-contents > img {
    width: 100% !important;
    border-radius: 1rem !important;
  }
  #single-contents #single-contents-box {
    width: 100% !important;
    margin: 2rem auto 0 !important;
  }
  #single-contents #single-contents-box p {
    margin: 1.6rem 0 !important;
    font-size: 0.95rem !important;
    line-height: 1.9 !important;
    letter-spacing: 0.04em !important;
  }
  .report-single-title #report-single-title-box {
    display: block !important;
    padding: 1rem 0 !important;
  }
  .report-single-title #report-single-title-box #report-single-top-icon {
    width: 100px !important;
    margin: 0 auto 1rem !important;
  }
  .report-single-title #report-single-title-box #report-single-title-box-left {
    margin: 0 !important;
  }
  .report-single-title #report-single-title-box #report-single-title-box-left #report-single-cada {
    display: block !important;
    text-align: center !important;
  }
  .report-single-title #report-single-title-box #report-single-title-box-left #report-single-cada .date {
    margin: 0.6rem 0 0 !important;
  }
  .report-single-title #report-single-title-box #report-single-title-box-left h2 {
    margin: 1rem 0 0 !important;
    font-size: 1.45rem !important;
    line-height: 1.7 !important;
    letter-spacing: 0.05em !important;
    text-align: center !important;
  }
  #single-report-main {
    margin-top: 2.5rem !important;
  }
  #sinr-b,
  #sinr-b2 {
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
    margin: 2rem auto 0 !important;
    position: relative !important;
    background: transparent !important;
  }
  #sinr-b .question-box,
  #sinr-b2 .question-box {
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    margin: 0 !important;
    padding: 1.4rem !important;
    border-radius: 1rem !important;
  }
  #sinr-b .question-box::after,
  #sinr-b2 .question-box::after {
    display: none !important;
  }
  #sinr-b .q-mark,
  #sinr-b2 .q-mark {
    position: static !important;
    display: block !important;
    margin: 0 0 0.8rem !important;
    font-size: 2.4rem !important;
    line-height: 1 !important;
  }
  #sinr-b .question-text,
  #sinr-b2 .question-text,
  #sinr-b2 .question-text2 {
    position: static !important;
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    font-size: 0.95rem !important;
    line-height: 1.9 !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
  }
  #sinr-b .profile,
  #sinr-b2 .profile {
    position: static !important;
    width: 180px !important;
    margin: 1.5rem auto 0 !important;
    text-align: center !important;
  }
  #sinr-b .profile .avatar-wrap,
  #sinr-b2 .profile .avatar-wrap {
    width: 130px !important;
    height: 130px !important;
    margin: 0 auto 1rem !important;
  }
  #sinr-b .profile .name,
  #sinr-b2 .profile .name {
    font-size: 0.95rem !important;
    line-height: 1.5 !important;
  }
  #explanation {
    margin-top: 3rem !important;
  }
  #explanation .title {
    display: block !important;
    text-align: center !important;
  }
  #explanation .title .single-repot-icon {
    width: 70px !important;
    margin: 0 auto 1rem !important;
  }
  #explanation .title .repot-title-box,
  #explanation .title .repot-title-box-kounenki,
  #explanation .title .repot-title-box-fujin {
    margin: 0 !important;
  }
  #explanation .title .report-title-disc h3 {
    font-size: 1.1rem !important;
    line-height: 1.7 !important;
  }
  #explanation #report-main,
  #explanation #report-dr,
  #explanation #report-end,
  #explanation #report-post {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  #explanation #report-main {
    margin-top: 3rem !important;
  }
  #explanation #report-main p {
    margin-bottom: 1.6rem !important;
    font-size: 0.95rem !important;
    line-height: 1.9 !important;
  }
  #explanation #report-main h4 {
    margin: 2.4rem 0 1.2rem !important;
    font-size: 1.2rem !important;
    line-height: 1.7 !important;
  }
  #explanation #report-main .pms-subtitle::before,
  #explanation #report-main .kounenki-subtitle::before,
  #explanation #report-main .funin-subtitle::before,
  #explanation #report-main .fujin-subtitle::before,
  #explanation #report-main .seiri-subtitle::before {
    width: 36px !important;
    height: 36px !important;
    margin-right: 0.6rem !important;
  }
  #explanation #report-dr {
    padding: 2rem 1rem !important;
  }
  #explanation #report-dr #report-dr-box {
    width: 100% !important;
    display: block !important;
    text-align: center !important;
  }
  #explanation #report-dr #report-dr-box #report-dr-img {
    width: 180px !important;
    margin: 0 auto 1rem !important;
  }
  #explanation #report-dr #report-dr-box #report-dr-hp {
    width: 100% !important;
    margin: 0 !important;
  }
  #explanation #report-post #postlink {
    margin-top: 2rem !important;
  }
  #explanation #report-post #postlink a {
    display: block !important;
    width: min(100%, 320px) !important;
    margin: 0 auto !important;
    padding: 1rem !important;
    text-align: center !important;
  }
}
/* =========================================================
  Concept Page
========================================================= */
@media screen and (max-width: 768px) {
  body.sub-page {
    background-attachment: fixed !important;
    background-size: 70vw auto, 50vw auto, 20vw auto, 40vw auto, 25vw auto !important;
    background-position: -70% -20%, 140% 50%, 5% 50%, 110% 15%, 5% 90% !important;
  }
  .hero,
  .hero-sub {
    width: 100% !important;
    padding: 3rem 0 !important;
    margin-bottom: 3rem !important;
    text-align: center !important;
  }
  .sub-page .hero-sub {
    padding-top: 3rem !important;
  }
  .hero-sub .container {
    width: calc(100% - 24px) !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 !important;
  }
  .hero-sub .content-block {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
  }
  .hero-sub .section-title {
    width: 100% !important;
    margin: 0 0 1.8rem !important;
    font-size: 1.4rem !important;
    line-height: 1.7 !important;
    text-align: center !important;
    letter-spacing: 0.08em !important;
  }
  .hero-sub h1,
  .hero-sub h2,
  .hero-sub h3,
  .hero-sub h4 {
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
    line-height: 1.9 !important;
  }
  .hero-sub h1 {
    font-size: 1.35rem !important;
  }
  .hero-sub h3 {
    font-size: 1.15rem !important;
  }
  .hero-sub h4 {
    margin-bottom: 1.8rem !important;
    font-size: 0.95rem !important;
  }
  .br-sp {
    display: block !important;
  }
  .hero-btn-area {
    margin-top: 1.5rem !important;
  }
  .btn-detail {
    width: min(80%, 300px) !important;
    padding: 12px 0 !important;
    margin-top: 20px !important;
    text-align: center !important;
  }
}
/* =========================================================
  Buttons
========================================================= */
@media screen and (max-width: 768px) {
  .more,
  .more2,
  .more-consul,
  .more-consul2,
  .more-consul3 {
    width: min(100%, 300px) !important;
    max-width: 300px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    border-radius: 999px !important;
  }
  .more a,
  .more2 a,
  .more-consul a,
  .more-consul2 a,
  .more-consul3 a {
    display: block !important;
    width: 100% !important;
    padding: 0.9rem 1rem !important;
    font-size: 0.95rem !important;
    line-height: 1.6 !important;
    text-align: center !important;
    text-decoration: none !important;
  }
  .more,
  .more2 {
    background: #5abc9b !important;
  }
  .more a,
  .more2 a {
    color: #fff !important;
  }
  .more-consul,
  .more-consul2,
  .more-consul3 {
    background: transparent !important;
    border: 1px solid #1e2020 !important;
  }
  .more-consul a,
  .more-consul2 a,
  .more-consul3 a {
    color: #1e2020 !important;
  }
}
/* =========================================================
  Footer
========================================================= */
@media screen and (min-width: 769px) and (max-width: 1279px) {
  footer {
    background: #5abc9b !important;
    padding: 3rem 0 !important;
  }
  footer #footer-contents {
    width: calc(100% - 40px) !important;
    max-width: 600px !important;
    margin: 0 auto !important;
    text-align: center !important;
  }
  footer #footer-contents h2 {
    width: 220px !important;
    margin: 0 auto !important;
  }
  footer #footer-contents .footer-nav {
    margin-top: 2rem !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 0.8rem 0 !important;
  }
  footer #footer-contents .footer-nav .nav-link {
    color: #fff !important;
    text-decoration: none !important;
    padding: 0 0.75rem !important;
  }
  footer #footer-contents .footer-nav .nav-link:not(:last-child) {
    border-right: 1px solid #fff !important;
  }
  footer #footer-contents #copy {
    margin-top: 1rem !important;
    color: #fff !important;
    text-align: center !important;
    letter-spacing: 0.06rem !important;
  }
}
@media screen and (max-width: 768px) {
  footer {
    width: 100% !important;
    background: #5abc9b !important;
    padding: 2.5rem 0 !important;
    text-align: center !important;
  }
  footer #footer-contents {
    width: calc(100% - 24px) !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }
  footer #footer-contents h2 {
    width: 220px !important;
    max-width: 70% !important;
    margin: 0 auto !important;
  }
  footer #footer-contents h2 img {
    width: 100% !important;
    display: block !important;
  }
  footer #footer-contents .footer-nav {
    margin-top: 1.6rem !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 0.4rem 0 !important;
  }
  footer #footer-contents .footer-nav .nav-link {
    color: #fff !important;
    text-decoration: none !important;
    padding: 0 0.75rem !important;
    font-size: 0.9rem !important;
    line-height: 1.6 !important;
  }
  footer #footer-contents .footer-nav .nav-link:not(:last-child) {
    border-right: 1px solid #fff !important;
  }
  footer #footer-contents #copy {
    margin-top: 1rem !important;
    color: #fff !important;
    font-size: 0.78rem !important;
    line-height: 1.7 !important;
    letter-spacing: 0.04em !important;
    text-align: center !important;
  }
}
/* =========================================================
  Tables / iframe / Forms
========================================================= */
@media screen and (max-width: 768px) {
  table {
    width: 100% !important;
    display: block !important;
    overflow-x: auto !important;
    white-space: nowrap !important;
  }
  iframe {
    max-width: 100% !important;
  }
  input,
  textarea,
  select,
  button {
    max-width: 100% !important;
    font: inherit !important;
  }
}
/* =========================================================
  Very Small Mobile
========================================================= */
@media screen and (max-width: 374px) {
  body {
    font-size: 0.95rem !important;
  }
  #hero #hero-box h2 {
    font-size: 1.2rem !important;
  }
  #hero #hero-box p,
  #hero #hero-box .copy {
    font-size: 0.9rem !important;
  }
  #hero #hero-box h3 {
    font-size: 1rem !important;
  }
  #index-info h2,
  #index-nayami h2 {
    font-size: 1.5rem !important;
  }
  #index-consul #index-consul-report.index-reoort-h3 > h3,
  #index-consul #index-consul-theme.index-reoort-h3 > h3,
  #index-consul #index-consul-dr.index-reoort-h3 > h3,
  #index-consul .index-reoort-h3 > h3 {
    position: relative !important;
    isolation: isolate !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 210px !important;
    min-width: 210px !important;
    height: 56px !important;
    min-height: 56px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    background-image: url(https://wandermust.net/fmm/img/index-consul-title-bk.svg) !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: 100% 100% !important;
    background-color: transparent !important;
    font-family: "Noto Sans JP", sans-serif !important;
    font-size: 1.05rem !important;
    line-height: 1 !important;
    letter-spacing: 0.25rem !important;
    font-weight: 400 !important;
    color: #1e2020 !important;
    text-align: center !important;
    white-space: nowrap !important;
    overflow: visible !important;
    z-index: 0 !important;
  }
  #index-consul #index-consul-report.index-reoort-h3 > h3::before,
  #index-consul #index-consul-theme.index-reoort-h3 > h3::before,
  #index-consul #index-consul-dr.index-reoort-h3 > h3::before,
  #index-consul .index-reoort-h3 > h3::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    background-image: url(https://wandermust.net/fmm/img/index-consul-title-bk.svg) !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: 100% 100% !important;
    z-index: -1 !important;
    pointer-events: none !important;
  }
  #index-consul #index-consul-theme-contents {
    gap: 0.8rem !important;
    padding: 1.2rem 0.8rem !important;
  }
  .more,
  .more2,
  .more-consul,
  .more-consul2,
  .more-consul3 {
    max-width: 280px !important;
  }
}/*# sourceMappingURL=responsive.css.map */