@charset "utf-8";
img { max-width: 100%; height: auto; vertical-align: bottom; }
.mt3em { margin-top: 3em; }
.mt2em { margin-top: 2em; }
.mt1em { margin-top: 1em; }

.t-black { color: #222; }
.t-blue { color: #0B3190; }
.t-navy { color: #2B3162; }
.t-gold { color: #9B7946; }

.t-bold { font-weight: bold; }
.t-center { text-align: center; }
.t-right { text-align: right; }
.t-sub { font-size: .8735em; }
.t-note { font-size: .75rem; color: #777676; }
.t-mincho { font-family: "Yu Mincho", "YuMincho", "游明朝", serif; }
.t-underline { text-decoration: underline; }

.text-block p { margin-bottom: 1em; c}

.bg-blue { background: #17325D; }
.bg-white { background: #FFF; }

.pc-only { display: none; }
@media screen and (min-width: 768px) {
  .sp-only {display: none; }
  .pc-only { display: initial; }
}

.btn-block { display: block; width: fit-content; box-shadow: 0 3px 0 #174081; border-radius: 3px; text-align: center; padding: .5em 4em; border: 1px solid #3767B2; margin: 2rem 0 0 auto; }
.btn-block::after { content: ''} 

.btn-round,
a.btn-round { width: 220px; background: linear-gradient(to right bottom, #A18B3D, #9B7946); border-radius: 2em; color: #FFF; padding: 1em; text-align: center; position: relative; }
a.btn-round::after { content: ''; width: .5em; height: .5em; display: block; position: absolute; right: 1.5em; top: 0; bottom: 0; margin: auto; transform: rotate(45deg); border-top: 1px solid #FFF; border-right: 1px solid #FFF; }

.btn-round.-center { width: 320px; display: block; margin: 3em auto 0; }


.table-std { width: 100%; table-layout: fixed; }
.table-std thead th { background: #9D8D54; vertical-align: middle; padding: 1em; color: #FFF; text-align: center;font-weight: normal;  }
.table-std thead th + th { border-left: 1px solid #FFF; }
.table-std tbody { border-left: 1px solid #E7E7E7; border-bottom: 1px solid #E7E7E7; border-right: 1px solid #E7E7E7;  }
.table-std tbody th + td,
.table-std tbody td + td { border-left: 1px solid #E7E7E7; font-size: .8735rem; }
.table-std tbody tr + tr { border-top:  1px solid #E7E7E7; }
.table-std tbody td { text-align: center; padding: 1em; vertical-align: middle; line-height: 1.5; }
.table-std tbody td span { display: block; }

.table-std tbody th { text-align: center; padding: .5em; font-weight: normal; vertical-align: middle; }
.table-std tbody th span { display: block; font-size: .835em;  }


.table-std.-treatment thead th { padding: .5em; }
.table-std.-treatment thead th:first-child { width: 30%; }
.table-std.-treatment thead th:nth-child(2) { width: 30%; }
.table-std.-treatment thead th:nth-child(3) { width: 40%; }
.table-std.-treatment tbody td + td { text-align: left; }

@media screen and (max-width: 900px) {
  .table-wrap { overflow-x: scroll; padding-bottom: 1em; }
  .table-wrap table { min-width: 800px; }
}

.mv { background: url("../img/home/mv.jpg") no-repeat right top / cover; width: 100% ;height: 100vh; min-height: 700px; display: flex; align-items: center; justify-content: center; position: relative; }
.mv .inner { }
.mv .sitename { position: absolute; color: 10vw; left: 50%; top: 100%; line-height: 0; transform: translateX(-50%); font-size: 20vw; white-space: nowrap; font-family: 'Marcellus', serif; color: #6F7E2E; opacity: .05; }
.mv .btn-scroll  { position: absolute; bottom: 3em; left: 0; right: 0; margin: auto; font-family: 'Marcellus', serif; color: #9B7946; font-size: .7rem; width: 10em; text-align: center; display: block; }
.mv .btn-scroll::after { content: ''; width: 1px; height: 120px; display: block; position: absolute; left: 0; right: 0 ; top: calc(100% + .5em); margin: auto; background: #333333; opacity: .5; }

.mv-wrap { padding-bottom: 10vw; overflow: hidden; } 

.maincopy { font-size: 1.25rem; }
.maincopy .sub{ display: block; margin-bottom: .5em; }
.maincopy .main { font-size: 3.5em; color: #2E367E; display: block; line-height: 1.1; margin-bottom: .2em; font-weight: 600;  }
.maincopy .main span{ font-size: .8em; }

.mv .lead { font-size: 1.5rem; }
.mv .feature { display: grid; grid-template-columns: repeat(3, minmax(0, 180px)); gap: 10px;margin-top: 1em ;  }
.mv .feature > li { background: linear-gradient(to right bottom, #A18B3D, #9B7946); color: #FFF; display: flex; align-items: center; justify-content: center; text-align: center; line-height: 1.5; padding: .5em;  }


@media screen and (max-width: 900px) {
  .mv { min-height: 0; background-size: 150% auto; background-position: top right; padding: 50vw 0 30vw; height: auto; }
  .maincopy .main { font-size: 10vw; }
  .maincopy .sub { font-size: 3vw; }
  .mv .lead { font-size: 3vw; }
}
@media screen and (max-width: 600px) {
  .maincopy .main { font-size: 12vw; }
  .mv .feature { gap: 5px; }
  .mv .feature { font-size: 2.5vw; }
}

.title-section {  margin: 0 auto; color: #2B3162; text-align: center; margin-bottom: 1em; }
.title-section .ja { font-size: 2.5rem; display: flex; white-space: nowrap; align-items: center; line-height: 1.3; justify-content: center; }
.title-section .ja::before,
.title-section .ja::after { content: ''; width: 3em; height: 1px; display: block; flex-shrink: 1; background: currentColor; }
.title-section .ja::before { margin-right: .5em; }
.title-section .ja::after { margin-left: .5em; }
.title-section .en { display: block; font-family: 'Marcellus', serif; font-size: 1.125rem; line-height: 1; }

.title-section-s { text-align: center; font-size: 1.6rem; color: #9B7946; font-weight: 500; }

.title-center { text-align: center; color: #2E367E; font-size: 2.5rem; }
.title-center span { display: block; font-size: 1.125rem; line-height: 1.5; }

.title-std { text-align: center; font-size: 1.5rem; font-family: 'Noto Serif JP', serif; margin-bottom: 1em; }
.title-std span {display: block; font-size: .5em; color: #1654A7; display: block; font-family: 'Cormorant Garamond', serif; line-height: 1; font-weight: 500; text-transform: capitalize; }

.title-std-s { font-size: 1.6rem; line-height: 1.5;  text-align: left; color: #9B7946; margin-bottom: 1em; }
.title-std-s.-center { text-align: center; }

.title-normal { font-size: 1.3rem; font-weight: bold; margin-bottom: .5em; text-align: center; }

@media screen and (max-width: 1200px) {
  .title-section .ja { font-size: 1.8rem; }
  .title-center { font-size: 1.8rem; }
}
@media screen and (max-width: 900px) {
  .title-section .ja { font-size: 1.5rem; }
  .title-center { font-size: 1.5rem; }
  .title-std-s { font-size: 1.3rem; }
}


.home-feature-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.home-feature-list > li { border: 3px solid #9B7946; text-align: center; min-height: 5em; display: flex; align-items: center; justify-content: center; flex-direction: column; font-size: 1.125rem; line-height: 1.5; }


@media screen and (max-width: 1200px) {
  .home-feature-list > li { font-size: 1rem; }
}
@media screen and (max-width: 900px) {
  .home-feature-list { grid-template-columns: 1fr; gap:  10px; margin: 2em auto; }
}

.concept-text p { margin-bottom: 1em; }

.concept-message { border-top: 1px solid #E4E4E4; padding-top: 60px; margin-top: 70px; display: flex; justify-content: space-between; }
.concept-message .title { color: #9B7946; font-size: 1.8rem; line-height: 1.4; margin-bottom: 1em; }
.concept-message p { margin-bottom: 1em; }
.concept-message .text { width: 60%; }
.concept-message .img { width: 35%; }
.concept-message .img img { width: 35vw; max-width: none; box-shadow: 5px 5px 10px rgba(0,0,0,.1); }

.concept-message .name { margin: 0; margin-top: 1rem; font-size: 2rem; }
.concept-message .name .role { font-size: .5em; display: block; }
.concept-message .name .en { display: block; font-size: .8735rem; font-family: 'Marcellus', serif; color: #CCCCCC; }

@media screen and (max-width: 900px) {
  .concept-message { flex-direction: column; padding-top: 40px; margin-top: 50px;}
  .concept-message .text { width: 100%; }
  .concept-message .img { width: 100%; }
  .concept-message .img img { width: 95vw; }
  
  .concept-message .title { font-size: 1.4rem; }
  .concept-message .name { font-size: 1.5rem; }
  
}


.niimi-profile { border: 3px solid #5F6385; padding: 4rem 3rem; display: flex; justify-content: space-between; }
.niimi-profile .text { width: 60%; }
.niimi-profile .img { width: 35%; }
.niimi-profile .name { font-size: .8735rem; margin-bottom: 1em; }
.niimi-profile .name span { font-size: 1.5rem; font-weight: bold; margin-right: .5em; }

@media screen and (max-width: 900px) {
  .niimi-profile  { padding: 2rem 5%; flex-direction: column; }
  .niimi-profile .text { width: 100%;  }
  .niimi-profile .img { width: 100%; max-width: 400px; margin: 2em auto 0;  }
  
}




.importance-figure { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.importance-figure .item { background: #FFF; text-align: center; padding: 1em; }
.importance-figure .title { font-size: 1.5rem; margin-bottom: .5em; }

@media screen and (max-width: 768px) {
  .importance-figure { grid-template-columns: 1fr; }
}

.importance-progress { display: flex; justify-content: space-between; }
.importance-progress .text { width: 50%; }
.importance-progress .history { width: 45%; }


.home-feature { display: flex; justify-content: space-between; margin-top: 3em; }
.home-feature .text { width: 45%; }
.home-feature .img { width: 50%; }

@media screen and (max-width: 768px) {
  .home-feature { flex-direction: column; }
  .home-feature .text { width: 100%; }
  .home-feature .img { width: 100%; margin-top: 2em; }
}
.home-method { display: flex; justify-content: space-between; margin-top: 3em; }
.home-method .text { width: 40%; }
.home-method .img { width: 55%; }

.home-method .title { color: #9B7946; font-size: 1.5rem; border-bottom: 1px solid; text-align: center; line-height: 1.5;  padding-bottom: .5em; margin-bottom: .5em;  }
.home-method .title span { font-size: 2em; display: block; }

@media screen and (max-width: 768px) {

  .home-method { flex-direction: column; }
  .home-method .text { width: 100%; }
  .home-method .img { width: 80%; margin: 2em auto 0;  }
  .home-method .title { font-size: 1rem; }
}



.tratment-head { display: flex; justify-content: space-between; margin-top: 3em; padding-bottom: 4rem; }
.tratment-head .img { width: 35%; }
.tratment-head .text { width: 60%; }
.tratment-head .head { display: flex; justify-content: space-between; align-items: flex-end; font-size: 1.5rem; border-bottom: 1px solid #E7E7E7; padding-bottom: .5em; margin-bottom: .5em;  }
.tratment-head .name { color: #9B7946; }
.tratment-head .name span{ display: block; font-size: 1.3em; line-height: 1.5; }
.tratment-head .name sub { font-size: .6em; }

@media screen and (max-width: 900px) {
  .tratment-head { flex-direction: column; }
  .tratment-head .img { width: 60%; margin: 0 auto;  }
  .tratment-head .text { width: 100%; margin-top: 2em; }
  .tratment-head .head { font-size: 1.2rem; }
}


.accordion-conts { border-top: 1px solid #E7E7E7; padding-top: 5rem; display: none; }
.accordion-button { background: #C9B87D; color: #FFF; width: 100%; text-align: center; padding: 1em ;border: none; font-size: 1.25rem; }

@media screen and (max-width: 900px) {
  .accordion-conts { padding-top: 3rem; }
  .accordion-button { font-size: 1rem; }
}


.huaier-img1 { width: 80%; margin: 3rem auto; display: block; }

.huaier-desc { display: flex; margin-top: 4rem; justify-content: space-between; }
.huaier-desc:nth-of-type(2n) { flex-direction: row-reverse; }
.huaier-desc .img { width: 40%; }
.huaier-desc .text { width: 55%; }
.huaier-desc .text p { margin-bottom: 1em ;}

@media screen and (max-width: 900px) {
  .huaier-desc:nth-child(n) { flex-direction: column; }
  .huaier-desc .img { width: 80%; margin: 2em auto 0;}
  .huaier-desc .text { width: 100%; }
}

.list-efficacy { counter-reset: listnum; }
.list-efficacy > li { counter-increment: listnum; padding-left: 120px; position: relative; min-height: 90px; }
.list-efficacy > li + li { margin-top: 3em; }

.list-efficacy > li::before { content: counter(listnum); color: #9B7946; text-align: center; line-height: 90px; width: 90px; height: 90px;  border-radius: 50%; border: 1px solid #DFE0E7; display: block; font-size: 2rem; font-family: "Yu Mincho", "YuMincho", "游明朝", serif; position: absolute; left: 0; top: 0; margin: auto; }

.list-efficacy .title-std-s { margin-bottom: .2em; }

@media screen and (max-width: 900px) {
  .list-efficacy  { margin-top: 2em; }
  .list-efficacy > li { padding-left: 80px; }
  .list-efficacy > li::before { width: 60px; height: 60px; line-height: 60px; font-size: 1.5rem; }
}
.bath-lead { text-align: center; font-size: 1.125rem; margin: 2em 0; }

.bath-msg { display: flex; justify-content: space-between; margin-top: 50px;  }
.bath-msg .text { width: 55%; }
.bath-msg .img { width: 40%; }
.bath-msg .name { margin-top: 1em; }
.bath-msg .name span { display: block; font-size: 2em; }

@media screen and (max-width: 900px) {
  .bath-lead { font-size: 1rem; }
  
  .bath-msg { flex-direction: column; }
  .bath-msg .text { width: 100%; }
  .bath-msg .img { width: 80%; margin: 2em auto 0; }
}

.cream-desc { display: flex; justify-content: space-between; align-items: flex-start; }
.cream-desc img { width: 35%; }
.cream-desc .text { width: 60%; }

.cream-desc2 { display: flex; justify-content: space-between; align-items: flex-start; }
.cream-desc2 .text { width: 60%; }
.cream-desc2 img { width: 35%; }


@media screen and (max-width: 900px) {
  .cream-desc {flex-direction: column; ; }
  .cream-desc img { width: 80%; margin: 0 auto 2em; }
  .cream-desc .text { width: 100%; }
  
  .cream-desc2 { flex-direction: column; }
  .cream-desc2 .text { width: 100%; }
  .cream-desc2 img { width: 80%; margin: 2em auto 0;  }
}
.list-conbination { border: 1px solid #F8F7F4; padding: 2rem ;}
.list-conbination .ttl { font-size: 1.3rem; color: #9B7946; margin-bottom: .2em; }
.list-conbination dl { display: grid; grid-template-columns: 4em minmax(0, 1fr); gap: 10px; align-items: flex-start; }
.list-conbination > li + li { margin-top: 2em; }
.list-conbination .action { background: #C9B87D; color: #FFF; text-align: center; border-radius: 1em;  }
.list-conbination .feature  { background: #F8F7F4; color: #9B7946; text-align: center; border-radius: 1em; }


@media screen and (max-width: 900px) {
  
  .list-conbination  { padding: 2em 5%; }
  .list-conbination .ttl { font-size: 1.125rem; }
}


.list-flow { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 2rem; counter-reset: listnum; position: relative; }
.list-flow::before { content: ''; width: 100%; height: 2px; background:#2B3162; display: block; position: absolute; left: 0; top: 110px; margin: auto; z-index: -1; }
.list-flow > li { counter-increment: listnum; }
.list-flow .step { font-size: 1.125rem; font-family: 'Marcellus', serif; color: #2B3162; margin-top: .5em; text-align: center; line-height: 1.5; }
.list-flow .step::after { content: counter(listnum, decimal-leading-zero); font-size: 1.5rem; margin-left: .2em;  }
.list-flow .title { text-align: center; font-size: 1.5rem; color: #2B3162; line-height:  }


@media screen and (max-width: 1200px) {
  .list-flow::after { top: 10vw; }
  .list-flow .step { font-size: 1rem; }
  .list-flow .title { font-size: 1.2rem; }
  
}
@media screen and (max-width: 900px) {
  .list-flow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .list-flow::before { display: none; }
}
.talbe-price { width: 90%; margin:4em auto 0; table-layout: fixed; position: relative; font-weight: bold; line-height: 1.5;  }
.talbe-price span{ display: block; font-size: .6em; font-weight: normal; }
.talbe-price::after { content: ''; width: calc((100% - 8em) / 3); height: calc(100% + 10px); border: 3px solid #9B7946; border-top-width: 10px; position: absolute; left: 8em; bottom: 0; margin: auto; box-shadow: 0 0 0 3px #FFF; }

.talbe-price th,
.talbe-price td { padding: .5em; vertical-align: middle; text-align: center; }
.talbe-price th:first-child { background: #ABAAA6; text-align: center; color: #FFF; font-weight: bold; vertical-align: middle; width: 8em; }
.talbe-price thead th:nth-child(2) { background: #9B7946; color: #FFF; text-align: center; border-left: 2px solid #FFF; padding-bottom: calc(.5em + 5px);}
.talbe-price thead th:nth-child(n + 3) { background: #444444; color: #FFF; font-weight: bold; vertical-align: middle; text-align: center; border-left: 2px solid #FFF;  }

.talbe-price tbody tr { border-top: 2px solid #FFF; }

.talbe-price tbody th + td { background: #F9F8E8; color: #9B7946; font-weight: bold; }
.talbe-price tbody td + td { border-left: 2px solid #FFF; }

.home-developer { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10vw; margin-top: 3em; }
.home-developer .img { position: relative; }
.home-developer .item:first-child .img::after { content: ''; width: 10vw; height: 100%; background: url("../img/home/multiple.svg") no-repeat center center / 50% auto; display: block; position: absolute; left: 100%; top: 0; margin: auto; }

.home-developer .text { width: 80%; margin-top: 1em; }
.home-developer .item:nth-child(1) .text { margin-left: auto; }
.home-developer .item:nth-child(1) .name { text-align: right; } 
.home-developer .item:nth-child(2) .text { margin-right: auto; }
.home-developer .name { font-size: 2rem; margin-bottom: 1em; }
.home-developer .name span { display: block; font-size: .5em; height: 3em; display: flex; align-items: center; justify-content: flex-start; }
.home-developer .item:nth-child(1) .name span { justify-content: flex-end;} 

@media screen and (max-width: 900px) {
  .home-developer { grid-template-columns: 1fr;gap: 30vw; }
  .home-developer .item { position: relative; }
  .home-developer .item:first-child .img::after { display: none; }
  .home-developer .item:first-child::after { content: ''; width: 100%; height: 30vw; background: url("../img/home/multiple.svg") no-repeat center center / auto 50%; display: block; position: absolute; top: 100%; left: 0; right: 0; margin: auto; }
  .home-developer .item:nth-child(n) .text { margin-left: auto;  margin-right: auto; }
}
.oxford-text { line-height: 2.5; }
.oxford-text p { margin-bottom: 2em; }
.oxford-text .img { float: right; width: 35%; margin-left: 5%; }
.oxford-text .img img { margin-bottom: 20px; }

.oxford-text .img.img2 { float: left; margin-right: 5%; margin-left: 0;  }

@media screen and (max-width: 900px) {
  .oxford-text { line-height: 2; }
}
.page-head { text-align: center; margin: 150px 0 80px;  }
@media screen and (min-width: 768px) {
}


.sideColumn { margin-top: 3rem; }
@media screen and (min-width: 768px) {
  .columnConts { display: grid; grid-template-columns: minmax(0, 1fr) 240px; gap: 2rem; }
  
  .sideColumn { margin-top: 0; }
}

.breadcrumb { margin: .5em 0 2em;  font-size: .75rem; text-align: center; }
.breadcrumb > li { display: inline; }
.breadcrumb > li:last-child { color: #000; }
.breadcrumb > li:not(:last-child)::after { content: '>'; margin: 0 .3em;  }
.breadcrumb img { display: inline-block; vertical-align: text-bottom; margin-right: .5em; }


.archive-subcat  { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-bottom: 2rem;  }
.archive-subcat a { display: flex; background: #EFF5FF url("../img/common/arrow-blue.svg") no-repeat right 1em  center ; ; border: 1px solid #7299D6; border-radius: 5px; padding: 0 2em 0 1em; height: 3.3em; font-weight: bold; align-items: center; line-height: 1.5; }

@media screen and (min-width: 768px) {
  .archive-subcat { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
.list-posts > li { margin-bottom: 3em; }

.list-posts .item { display: flex; flex-direction: column-reverse;  align-items: flex-start; }


.list-posts .item .title { font-size: 1.25rem;border-bottom: 2px solid #858AB5; padding-bottom: .3em; margin-bottom: .3em; } 
.list-posts .item .thumb { }
.list-posts .item .thumb img { width: 100%; display: block; aspect-ratio: 3 / 2; object-fit: cover; margin-bottom: 1em; }
.list-posts .item .time { font-size: .75rem; font-family: "Marcellus", serif; }
.list-posts .item .cat { color: #15427E; font-size: .8375rem; }

.list-posts .item .text .excerpt { text-overflow: ellipsis; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; line-height: 1.5; }
.list-posts .item .text .excerpt br { display: none; }
.list-posts .item .more { background: #2B3162; color: #FFF; border-radius: 2em; width: 140px; text-align: center; font-size: .75rem; font-family: 'Marcellus', serif; padding: .5em; margin: .5em 0 0 auto; }

@media screen and (min-width: 768px) {
  
  .list-posts .item { flex-direction: row;  justify-content: space-between; }
  .list-posts .item .text { width: 65%; }
  .list-posts .item .thumb { width: 30%; margin-top: 0; aspect-ratio: 3/ 2; background: #DDD; }
  .list-posts .item .thumb img { width: 100%; height: 100%; object-fit: cover; }
}


.list-related-posts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem;}
.list-related-posts .thumb { position: relative; width: 100%; aspect-ratio: 1 / 1; background: #DDD; box-shadow: 0 3px 6px rgba(0,0,0,.16);  }
.list-related-posts .thumb img { width: 100%; height: 100%; object-fit: cover; }
.list-related-posts .time { font-size: .835rem; font-family: 'Montserrat', sans-serif; color: #1654A7; }
.list-related-posts .title { text-overflow: ellipsis; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden;line-height: 1.5; font-weight: bold; font-size: .8735rem; }

@media screen and (min-width: 900px) {
  .list-related-posts {  grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

.post-head { margin-bottom:1.5em; }
.post-head .date { font-size: .835rem;  margin-bottom: 2em;  }
.post-head .post-title { font-size: 2.5rem; color: #2E367E;  border-bottom: 2px solid #15427E; padding-bottom: .5rem; margin-bottom: 1rem;}

@media screen and (min-width: 768px) {
  .post-head .info { display: flex; justify-content: space-between; align-items: center; flex-direction: row-reverse; margin: 0; }
  .post-head .post-title { font-size: 1.8rem; }
}
.no-post { margin: 100px 0; }

.post-body { margin-bottom: 3rem ;}
.post-body::after { content: ""; display: block; clear: both;}

.post-body .thumbnail { width: 60%; float: right; margin-left: 1rem; margin-bottom: 1rem; }
.post-body h2 { color: #15427E; font-size: 1.625rem; border-bottom: 2px solid #15427E; margin: 2em 0 1em;  font-family: "Yu Mincho", "YuMincho", "游明朝", serif;}
.post-body h3 {  color: #15427E; font-size: 1.375rem; border-bottom: 1px solid #15427E; margin: 2em 0 1em;  font-family: "Yu Mincho", "YuMincho", "游明朝", serif;}
.post-body h4 {  color: #15427E; font-size: 1.375rem; margin: 2em 0 1em;  font-family: "Yu Mincho", "YuMincho", "游明朝", serif;}
.post-body h5 { font-size: 1.2rem; margin: 2em 0 1em; color: #2B3162; font-family: "Yu Mincho", "YuMincho", "游明朝", serif;}
.post-body img { display: block; margin-bottom: 1.5em; }


.post-body ul { margin-bottom: 2em;}
.post-body ul > li { padding-left: 1.5em; }
.post-body ul > li::before { content: '・'; margin-left: -1.5em; width: 1.5em; display: inline-block;  }


.post-body table { border-collapse: separate; border-spacing: 10px 0; }
.post-body table td { border: none; padding: 2em 0 1em; border-bottom: 2px solid #D1D1D1;  }
.post-body table td:first-child {width: 30%; border-bottom: 2px solid #15427E; font-weight: bold; }

.post-body p { margin-bottom: 1em; }

.post-body blockquote { background: #F8F9FC; border: 5px solid #D1DCEE; padding: 3rem 2rem; position: relative; margin: 1em 0;  }

.post-body a { text-decoration: underline; color: #3767B2; }




.bottom-paging { display: flex; align-items: center; justify-content: center; margin-top: 3em; }
.bottom-paging > * + *::before { content: '|'; margin: 0 1em;  }

.bottom-paging .prev,
.bottom-paging .next { display: flex; align-items: center; }
.bottom-paging .disable { opacity: .5; }
.bottom-paging .prev img { vertical-align: middle; margin-right: .5em; transform: rotate(180deg); }
.bottom-paging .next img { vertical-align: middle; margin-left: .5em; }

@media screen and (max-width: 768px) {
  .post-title { font-size: 1.5rem; }
  
  .bottom-paging  { font-size: .9rem; }
}


.post-author { border: 1px solid ; padding: 2rem; display: grid; grid-template-columns: 100px minmax(0, 1fr); column-gap: 1.5rem;  }
.post-author .img img { width: 100%; display: block; aspect-ratio: 1 / 1; object-fit: cover; }
.post-author .name { font-size: 1.2rem; color: #2B3162; margin-bottom: .2em;  }
.post-author-title { font-size: 1.2rem; color: #2B3162; margin-bottom: .5em; margin-top: 100px; }

@media screen and (max-width: 768px) {
  .post-author { padding: 1rem ; grid-template-columns: 80px minmax(0, 1fr); gap: 1rem ;}
}

.title-related { border-radius: 5px; color: #FFF; font-weight: bold;font-size: 1.2rem; padding: .5em .5em .5em 2em; background: #3767B2 url(../img/common/icon-link.svg) no-repeat .5em  center / 1.2em auto; margin-bottom: .5em; }

@media screen and (min-width: 768px) {
  .title-related { font-size: 1.5rem; }
}


.title-side { font-size: 1.3rem;  border-bottom: 2px solid #858AB5; text-align: left; font-family: "Marcellus", serif; padding-bottom: .5em; }

.side-category { margin-bottom: 3em; }
.side-category > li { border-bottom: 1px solid #DDDDDD;  }
.side-category a { display: block; padding: .5em 0; }

.list-month-archive a { position: relative; padding: .5em 1.5em .5em 0; display: block; border-bottom: 1px solid #858AB5; }
.list-month-archive a::after { content: ''; width: 1.2em; height: 1.2em; display: inline-block; background: url("../img/common/right-arrow.svg") no-repeat center center / 100% 100%; position: absolute; right: 0; top: 0; bottom: 0; margin: auto; }


.wp-pagenavi { margin: 2rem 0; text-align: center; }
.wp-pagenavi > span,
.wp-pagenavi > a { width: 2rem; height: 2rem; text-align: center; line-height: calc(2rem - 2px); border: 1px solid #CCCCCC; margin: 0 2px; display: inline-block; border-radius: 2px;  }
.wp-pagenavi .current { color: #FFF; background: #858AB5; border: none; }
.wp-pagenavi .pages { width: auto; border: none; background: none; margin-right: .5em; }
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink { border: none; }


.list-qa { width: 100%; }
.list-qa .q { border-bottom: 1px solid #9B7946; padding: 1rem 2em 1rem 3rem; font-size: 1.3rem; position: relative; margin-bottom: 1em; position: relative; color: #9B7946; cursor: pointer; }
.list-qa .q::before,
.list-qa .a::before { content: 'Q.'; font-size: 1.5em; color: #9B7946; width: 2rem; position: absolute; left: .5rem; top: .4rem; margin: auto; }
.list-qa .a::before { content: 'A.'; top: 0; line-height: 1.2;  }
.list-qa .q::after { content: ''; width: .4em; height: .4em; position: absolute; right: 0; top: 1em; margin: auto; border-top: 1px solid #9B7946; border-right: 1px solid #9B7946; transform: rotate(135deg); }
.list-qa .q.open::after { transform: rotate(-45deg); }
.list-qa .a { display: none; padding: 0 0 2rem 3rem; position: relative;}

@media screen and (max-width: 768px) {
  .list-qa .q { font-size: 1.2rem; }
}
