@charset "UTF-8";

/*CSSDocument*/


/* share
===============================================================*/

.clearfix:after {
content: " ";  
display: block; 
visibility: hidden; 
clear: both; 
height: 0.1px; 
font-size: 0.1em; 
line-height: 0; 
}
.clearfix { display: inline-block; }
/* exlude MacIE5 \*/
* html .clearfix { height: 1% }
.clearfix {display:block;}
/* end MacIE5 */


.clear{ clear:both;}
@media screen and (max-width: 1200px) {
}


/*-- メインビジュアル --*/
/* .p-main__parallax {
  height: 100vh;
  background-image: url("../images/kv_pc.jpg");
  background-attachment: fixed;
  background-position: right center;
  background-size: cover;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 3rem;
}
.p-main__sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
@media screen and (max-width:768px){
  .p-main__parallax {
    height: 100vh;
    background-image: url(../images/kv_sp.jpg);
    background-attachment: fixed;
    background-position: center;
    background-size: cover;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 3rem;
  }
} */

.p-main {
  background-image: url('../images/kv_bg.jpg');
  background-repeat: no-repeat;
  background-position: left 30% center;
  background-size: cover;
  height: 100vh;
  width: 100%;
  position: relative;
}
.p-mainInner {
  color: #fff;
  position: absolute;
  right: min(6.25vw, 120px);
  bottom: min(7.81vw, 150px);
}
.p-mainCatch {
  font-family: "Shippori Mincho B1", serif;
  font-size: min(3.125vw, 60px);
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: .1em;
}
.p-mainTitle {
  margin-top: min(4.84vw, 93px);
}
.p-mainTitle__sub {
  font-size: min(2.08vw, 40px);
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: .16em;
}
.p-mainTitle__main {
  font-family: "Shippori Mincho B1", serif;
  font-size: min(7.29vw, 140px);
  font-weight: 700;
  line-height: 1;
  letter-spacing: .22em;
}
@media screen and (max-width: 560px){
  .p-main {
    background-image: url('../images/kv_bg_sp.jpg');
    background-position: bottom 50% right;
  }
  .p-mainInner {
    right: auto;
    left: 20px;
    bottom: 38px;
  }
  .p-mainCatch {
    font-size: min(6.42vw, 36px);
  }
  .p-mainTitle {
    margin-top: min(7.14vw, 40px);
  }
  .p-mainTitle__sub {
    font-size: min(4.1vw, 23px);
  }
  .p-mainTitle__main {
    font-size: min(15vw, 84px);
  }
}


/*-- メインタイトルアニメーション --*/
.c-mainTitle__reveal {
  position: relative;
  display: inline-block;
  overflow: hidden;
  margin-bottom: 60px;
}
.c-mainTitle__text {
  position: relative;
  z-index: 1;
  /* color: transparent; */
  font-size: 30px;
  letter-spacing: 0.22em;
  line-height: 1.7;
  /* ← 最初はアニメーションなし */
}
.c-mainTitle__mask {
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: black;
  z-index: 2;
  /* ← 最初はアニメーションなし */
}

.c-bgWhite {
  background-color: #fff;
}

/* ==== 発火時にアニメーション ==== */
.c-mainTitle__reveal.animate .c-mainTitle__mask {
  animation: slideMask 0.8s ease forwards;
}
.c-mainTitle__reveal.animate .c-mainTitle__text {
  animation: revealText 0.8s ease forwards 0.5s;
}

@keyframes slideMask {
  to {
    left: 100%;
  }
}
@keyframes revealText {
  to {
    color: black;
  }
}
@media screen and (max-width:768px){
  .c-mainTitle__text {
    font-size: 26px;;
  }
  .c-mainTitle__reveal {
    margin-bottom: 40px;
  }
}


/*-- こんな方におすすめ --*/
.p-recommend {
  padding: 140px 0;
}
.p-recommend__list li {
  max-width: 600px;
  width: 100%;
}
.p-recommend__list {
  display: grid;
  grid-template-columns: 50% 50%;
  gap: 0; /* 隙間は線で表現するので不要 */
  position: relative;
  margin: 0 auto;
}
.p-recommend__title {
  font-size: 26px;
  letter-spacing: 0.1em;
  line-height: 1.3;
  text-align: left;
  display: flex;
  align-items: center; /* 縦中央 */
  position: relative;
  padding-left: 40px;
}
.p-recommend__title:before {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);  
  content: '';
  display: inline-block;
  width: 17px;
  height: 17px;
  background-image: url("../images/icon_checkbox.png");
  background-size: contain;
  vertical-align: middle;
}
.p-recommend__title:after {
  content: '';
  position: absolute;
  left: 2px;
  top: 34%;
  display: inline-block;
  width: 21px;
  height: 16px;
  background-image: url("../images/icon_check.png");
  background-size: contain;
  vertical-align: middle;
}
.p-recommend__sub {
  text-align: left;
  padding-left: 40px;
}
.p-recommend__subTxt {
  background: url("../images/icon_left.png") no-repeat left,url("../images/icon_right.png") no-repeat right;
  background-size: 10px 38px,10px 38px;
  padding: 11px 20px;
  display: inline-block;
  margin-top: 40px;
  font-size: 16px;
  line-height: 1.3;
}
.p-recommend__box {
  padding: 50px 20px;
  text-align: center;
  position: relative;
}
.p-recommend__bottomRight {
  width: 100%;
  height: 1px;
  background: linear-gradient(to right, #000 0%, #000 95%, #fff 95%, #fff 100%);
}
.p-recommend__bottomLeft {
  width: 100%;
  height: 1px;
  background: linear-gradient(to left, #000 0%, #000 95%, #fff 95%, #fff 100%);
}
.p-recommend__borderRight {
  width: 1px;
  height: 245px;
  background:linear-gradient(to bottom, #000 0%, #000 90%, #FFF 90%, #FFF 100%);
  position: absolute;
  top: 0;
  right: 50%;
}
.p-recommend__borderRight02 {
  width: 1px;
  height: 245px;
  background:linear-gradient(to bottom, #FFF 0%, #FFF 10% ,#000 10%, #000 90%, #FFF 90%, #FFF 100%);
  position: absolute;
  top: 245px;
  right: 50%;
}
.p-recommend__borderRight03 {
  width: 1px;
  height: 245px;
  background:linear-gradient(to top, #000 0%, #000 90%, #FFF 90%, #FFF 100%);
  position: absolute;
  top: 490px;
  right: 50%;
}
@media screen and (max-width:1050px){
  .p-recommend__title {
    font-size: 24px;
  }
  .p-recommend__subTxt {
    font-size: 14px;
  }
}
@media screen and (max-width:915px){
  .p-recommend__list {
    display: block;
  }
  .p-recommend__list li {
    max-width: 100%;
    border-bottom: 1px solid #000;
  }
  .p-recommend__borderRight,
  .p-recommend__borderRight02,
  .p-recommend__borderRight03,
  .p-recommend__bottomRight,
  .p-recommend__bottomLeft {
    display: none;
  }
}
@media screen and (max-width:768px){
  .p-recommend {
    padding: 80px 0;
  }
  .p-recommend__title {
    font-size: 18px;
    padding-left: 25px;
  }
  .p-recommend__subTxt {
    font-size: 16px;
    margin-top: 20px;
  }
  .p-recommend__title:before {
    width: 12px;
    height: 12px;
  }
  .p-recommend__title:after {
    width: 15px;
    height: 12px;
  }
  .p-recommend__box {
    padding: 28px 0px;
  }
  .p-recommend__sub {
    padding-left: 25px;
  }
}


/*-- XERF --*/
.p-product {
  padding: 60px 0 120px;
}
.p-product__box {
  background: url("../images/xerf_bg.png") #f3f2f1 no-repeat;
  background-position: 100% 0%;
  padding: 70px 60px;
  position: relative;
  border-radius: 15px;
}
.p-product__wrap {
  display : -webkit-box;     /* old Android */
  display : -webkit-flex;    /* Safari etc. */
  display : -ms-flexbox;     /* IE10        */
  display : flex;
}
.p-product__mainTitle {
  font-size: 103px;
  position: absolute;
  top:-64px;
  left: 30px;
  font-family: "Shippori Mincho B1", serif;
  font-weight: 700;
  font-style: normal;
  letter-spacing: 0.22em;
}
.p-product__subTitle {
  font-size: 50px;
}
.p-product__item img {
  width: 186px;
  height: 429px;
}
.p-product__title {
  font-size: 26px;
  margin-bottom: 60px;
  line-height: 1.7;
}
.p-product__txtarea {
  margin-left: 60px;
}
.p-product__list li {
  position: relative;
  padding-left: 1em; /* ← アイコン分の余白を作る */
  margin-bottom: 20px;
  line-height: 1.9;
  font-size: 16px;
}
.p-product__list li:before {
  content: '';
  display: inline-block;
  width: 7px;
  height: 7px;
  background-image: url("../images/title_icon.png");
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  left: 0;
  top: 12px;   /* 縦位置を微調整 */
}
.p-product__titleSp {
  display: inline-block;
}
.p-product__spOnly {
  display: none;
}
@media screen and (max-width:1200px){
  .p-product__box {
    background-position : 120% 0;
  }
}
@media screen and (max-width:1055px){
  .p-product__box {
    background: #f3f2f1;
  }
}
@media screen and (max-width:768px){
  .p-product {
    padding: 60px 0 0;
  }
  .p-product__mainTitle {
    font-size: 52px;
  }
  .p-product__subTitle {
    font-size: 26px;
  }
  .p-product__box {
    padding: 38px 15px 30px;
  }
  .p-product__title {
    font-size: 18px;
    margin-top: 40px;
    margin-bottom: 0;
  }
  .p-product__item img {
    width: 93px;
    height: 215px;
  }
  .p-product__pcOnly {
    display: none;
  }
  .p-product__spOnly {
    display: block;
  }
  .p-product__titleSp {
    display: block;
  }
  .p-product__txtarea {
    margin-left: 15px;
  }
  .p-product__list {
    margin-top: 30px;
  }
  .p-product__list li {
    font-size: 15px;
    line-height: 1.4;
  }
  .p-product__list li:before {
    top: 8px;
  }
  .p-product__mainTitle {
    left: 15px;
    top: -32px;
  }
}


/*-- 概要 --*/
.p-about {
  padding: 140px 0;
}
.p-about__txt {
  font-size: 18px;
  line-height: 2;
}
@media screen and (max-width:768px){
  .p-about {
    padding: 105px 0;
  }
}


/*-- ドクター紹介 --*/
.p-doctor {
  padding: 0;
}
.p-doctorSec + .p-doctorSec {
  margin-top: 80px;
}
.p-doctorContent {
  display: flex;
  box-sizing: border-box;
  padding: 0 30px;
  box-sizing: content-box;
}
.p-doctorContent.p-doctorContent--ohyama {
}
.p-doctorContent.p-doctorContent--gondo {
  flex-direction: row-reverse;
}
.p-doctor__imageArea {
  /* background-color: #fff;
  padding: 0; */
  /* position: relative;
  z-index: -1; */
}
.p-doctorImageFrame {
  height: 845px;
  width: calc(50vw - 196px);
  /* position: relative;
  background-color: transparent;
  overflow: hidden; */
}
.p-doctorContent.p-doctorContent--gondo .p-doctorImageFrame {
  height: 994px;
}
.p-doctorImageFrame img {
  border-radius: 15px;
  object-fit: cover;
  height: 100%;
}
.p-doctorContent.p-doctorContent--ohyama .p-doctorImageFrame img {
  object-position: right top;
}
.p-doctorContent.p-doctorContent--gondo .p-doctorImageFrame img {
  object-position: left top;
}
/* .p-doctorImageFrame::before  {
  position: absolute;
  content: '';
  top: 80px;
  box-sizing: border-box;
}
.p-doctorContent.p-doctorContent--ohyama .p-doctorImageFrame::before {
  left: 30px;
  margin: auto;
  background-image: url('../images/doctor_ohyama.jpg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: auto 100%;
  width: calc(50vw - 196px);
  height: 845px;
  z-index: -1;
}
.p-doctorContent.p-doctorContent--gondo .p-doctorImageFrame::before {
  right: 30px;
  background-image: url('../images/doctor_gondo.jpg');
  background-repeat: no-repeat;
  background-position: right 30% center;
  background-size: cover;
  width: calc(50vw - 196px);
  height: 994px;
  z-index: -2;
} */
.p-doctor__txtArea {
  width: calc(50vw + 196px);
  background-color: #fff;
  box-sizing: border-box;
}
.p-doctorContent.p-doctorContent--ohyama .p-doctor__txtArea {
  padding: 50px calc(50vw - 600px) 0 70px;
}
.p-doctorContent.p-doctorContent--gondo .p-doctor__txtArea {
  padding: 50px 70px 0 calc(50vw - 600px);
}

.p-doctor__name {
  font-size: 50px;
  letter-spacing: 0.22em;
  line-height: 1.3;
  margin-bottom: 60px;
}
.p-doctor__name span {
  font-size: 30px;
  letter-spacing: 0.22em;
  margin-bottom: 25px;
  display: inline-block;
}
.p-doctor__subTitle {
  font-size: 20px;
  letter-spacing: 0.22em;
  margin-bottom: 20px;
}
.p-doctor__societyList {
  font-size: 16px;
  margin-left: 25px;
  margin-bottom: 40px;
}
.p-doctor__societyList li {
  margin-bottom: 15px;
}
.p-doctor__timelineItem {
  display: flex;
  gap: 20px;
  margin-bottom: 15px;
}
.p-doctor__timelineYear {
  width: 100px;
}
.p-doctor__timelineEvents p {
  margin-bottom: 7px;
}
@media screen and (max-width:1592px){
  .p-doctor__imageArea {
    width: calc(100% - 566px);
  }
  .p-doctorImageFrame {
    height: 845px;
    width: 100%;
  }
  .p-doctorContent.p-doctorContent--gondo .p-doctorImageFrame {
    height: 994px;
  }
  .p-doctorImageFrame img {
    border-radius: 15px;
    object-fit: cover;
    height: 100%;
  }
  .p-doctor__txtArea {
    width: 566px;
  }
}
@media screen and (max-width:1050px){
  .p-doctor__imageArea {
    width: calc(100% - 450px);
  }
  .p-doctorImageFrame {
    height: 670px;
    width: 100%;
  }
  .p-doctorContent.p-doctorContent--gondo .p-doctorImageFrame {
    height: 838px;
  }
  .p-doctorImageFrame img {
    border-radius: 15px;
    object-fit: cover;
    height: 100%;
  }
  .p-doctorContent.p-doctorContent--ohyama .p-doctorImageFrame img {
    object-position: 90% top;
  }
  .p-doctorContent.p-doctorContent--gondo .p-doctorImageFrame img {
    object-position: 15% top;
  }
  .p-doctor__txtArea {
    width: 450px;
  }
  .p-doctorContent.p-doctorContent--ohyama .p-doctor__txtArea {
    padding: 20px 0 0 50px;
  }
  .p-doctorContent.p-doctorContent--gondo .p-doctor__txtArea {
    padding: 20px 50px 0 0;
  }
  .p-doctor__name {
    font-size: 40px;
    margin-bottom: 60px;
  }
  .p-doctor__name span {
    font-size: 24px;
    margin-bottom: 25px;
  }
  
}
@media screen and (max-width:768px){
  .p-doctorSec + .p-doctorSec {
    margin-top: 50px;
  }
  .p-doctorContent {
    padding: 0 20px;
    flex-direction: column;
  }
  .p-doctorContent.p-doctorContent--gondo {
    flex-direction: column;
  }
  .p-doctor__imageArea {
    width: 100%;
  }
  .p-doctorImageFrame {
    height: auto;
    width: 100%;
  }
  .p-doctorContent.p-doctorContent--gondo .p-doctorImageFrame {
    height: auto;
  }
  .p-doctorImageFrame img {
    border-radius: 10px;
    height: auto;
    width: 100%;
    object-fit: cover;
  }
  .p-doctor__name span {
    font-size: 15px;
    margin-bottom: 0;
  }
  .p-doctor__name {
    font-size: 25px;
    margin-top: 0;
    margin-bottom: 40px;
  }
  .p-doctor__timelineYear {
    width: 70px;
  }
  .p-doctor__txtArea {
    width: 100%;
    margin-bottom: 0;
  }
  .p-doctorContent.p-doctorContent--ohyama .p-doctor__txtArea {
    padding: 20px 0 0;
  }
  .p-doctorContent.p-doctorContent--gondo .p-doctor__txtArea {
    padding: 20px 0 0;
  }
}


/*-- 症例紹介 --*/
.p-case {
  padding: 140px 0;
}
.p-case__title {
  font-size: 22px;
  letter-spacing: 0.22em;
  margin-bottom: 40px;
}
.p-case__title:before {
  content: '';
  display: inline-block;
  width: 10px;
  height: 10px;
  background-image: url("../images/title_icon.png");
  background-size: contain;
  vertical-align: middle;
  margin-right: 16px;
  margin-top: -6px;
}
.p-caseWrap {
  margin-bottom: 100px;
}
.p-case__tagList {
  display : -webkit-box;     /* old Android */
  display : -webkit-flex;    /* Safari etc. */
  display : -ms-flexbox;     /* IE10        */
  display : flex;
  margin-bottom: 20px;
}
.p-case__tagList li {
  background: #e3e3e3;
  margin-right: 20px;
  font-size: 20px;
  padding: 14px 20px;
  border-radius: 30px;
  min-width: 100px;
  text-align: center;
  color: #505050;
  letter-spacing: 0.22em;
}
.p-case__picBox {
  display : -webkit-box;     /* old Android */
  display : -webkit-flex;    /* Safari etc. */
  display : -ms-flexbox;     /* IE10        */
  display : flex;
}
.p-case__before,
.p-case__after {
  position: relative;
}
.p-case__picDescription {
  position: absolute;
  top: 0;
  left: 0;
  background: #000;
  color: #FFF;
  font-size: 18px;
  font-family: "Shippori Mincho B1", serif;
  font-weight: 400;
  font-style: normal;
  padding: 10px 20px;
}
.p-case__picTxt {
  text-align: right;
  color: #101010;
  font-size: 18px;
  margin: 15px 0;
  letter-spacing: 0.22em;
}
.p-case__caseWrap {
  border:1px solid #cdcdcd;
  padding: 30px 20px 0 20px;
  border-radius: 15px;
  max-width: 1050px;
  margin: 40px auto 0;
  
}
.p-case__caseItem {
  display : -webkit-box;     /* old Android */
  display : -webkit-flex;    /* Safari etc. */
  display : -ms-flexbox;     /* IE10        */
  display : flex;
  margin-bottom: 30px;
}
.p-case__caseName {
  width: 178px;
  border-right: 1px solid #cdcdcd;
  font-size: 20px;
  letter-spacing: 0.22em;
  font-family: "Shippori Mincho B1", serif;
  font-weight: 500;
  font-style: normal;
}
.p-case__caseTxt {
  font-size: 18px;
  margin-left: 18px;
  line-height: 1.3;
}
@media screen and (max-width:960px){
  .p-case__caseName {
    font-size: 16px;
  }
  .p-case__caseTxt {
    font-size: 16px;
  }
}
@media screen and (max-width:768px){
  .p-case {
    padding: 80px 0;
  }
  .p-case__title {
    font-size: 18px;
    margin-bottom: 30px;
  }
  .p-case__title:before {
    margin-right: 7px;
    margin-top: -1px;
  }
  .p-caseWrap {
    margin-bottom: 50px;
  }
  .p-case__tagList {
    -webkit-flex-wrap: wrap;          /* Safari etc. */
    -ms-flex-wrap    : wrap;          /* IE10        */
    flex-wrap        : wrap;
  }
  .p-case__tagList li {
    font-size: 15px;
    padding: 10px;
    margin-right: 10px;
    margin-bottom: 10px;
  }
  .p-case__picBox {
    display: block;
  }
  .p-case__picTxt {
    font-size: 11px;
    letter-spacing: 0.15em;
    text-align: center;
  }
  .p-case__caseItem {
    display: block;
    border-bottom: 1px solid #cdcdcd;
    padding-bottom: 20px;
    margin-bottom: 20px;
  }
  .p-case__caseTxt {
    margin-left: 0;
  }
  .p-case__caseName {
    border-right: none;
    margin-bottom: 10px;
  }
  .p-case__caseWrap {
    padding: 20px;
    margin: 20px auto 0;
  }
  .p-case__caseWrap .p-case__caseItem:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
  }
}


/*-- イメージ画像 --*/
.p-image {

  /* display: flex;
  min-height: 100vh;
  background: url("../images/image.jpg") no-repeat center center;
  background-size: auto 100%;
  background-attachment: fixed; */
  margin: 0 auto;
  max-width: 893px;
}


/*-- 料金 --*/
.p-price {
  padding-top: 140px;
}
.p-priceContent {
  margin: 0 auto;
  max-width: 700px;

}
.p-priceList {
  font-family: "Shippori Mincho B1", serif;
}
.p-priceList > li {
  display: flex;
  align-items: center;
  border-top: 1px solid #cdcdcd;
}
.p-priceListLabel {
  font-size: 24px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: .22em;
  width: 158px;
  min-height: 62px;
  position: relative;
  display: flex;
  align-items: center;
  box-sizing: border-box;
  padding: 5px 16px;
}
.p-priceListLabel::before {
  position: absolute;
  content: '';
  left: 0;
  right: 0;
  top: -1px;
  margin: auto;
  width: 100%;
  height: 1px;
  background-color: #000;
}
.p-priceListPrice1,
.p-priceListPrice2 {
  font-size: 20px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: .22em;
  position: relative;
}
.p-priceListPrice1 {
  width: 300px;
  padding: 5px 15px 5px 58px;
  box-sizing: border-box;
}
.p-priceListPrice2 {
  width: 242px;
  padding: 5px 15px;
  box-sizing: border-box;
}
.p-priceListPrice1::before ,
.p-priceListPrice2::before {
  position: absolute;
  left: 0;
  right: 0;
  top: -15px;
  margin: auto;
  color: #101010;
  font-size: 22px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: .22em;
  -webkit-transform: translate(0%, -100%);
  transform: translate(0%, -100%);
  text-align: center;
  display: none;
}
.p-priceListPrice1::before {
  content: '1回';
}
.p-priceListPrice2::before {
  content: '2回目以降';
}
.p-priceList > li:first-of-type .p-priceListPrice1::before,
.p-priceList > li:first-of-type .p-priceListPrice2::before {
  display: block;
}
.p-priceListPrice1 strong,
.p-priceListPrice2 strong {
  font-size: 24px;
  font-weight: 500;
  letter-spacing: .1em;
}
.p-priceListPrice1 small,
.p-priceListPrice2 small {
  font-size: 18px;
  font-weight: 500;
  letter-spacing: .22em;
}
.p-priceListAnnotationBlock {
  margin-top: 20px;
}
.p-priceListAnnotationBlock > li {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: .14em;
}
.p-priceListAnnotationBlock > li + li {
  margin-top: 10px;
}
@media screen and (max-width: 768px){
  .p-price {
    padding: 80px 0 0;
  }
  .p-priceContent {
    margin: 0 auto;
    max-width: 700px;

  }
  .p-priceList > li {
    flex-direction: column;
    align-items: center;
    border-top: none;
  }
  .p-priceList > li + li {
    margin-top: 15px;
  }
  .p-priceListLabel {
    font-size: 18px;
    width: 100%;
    min-height: 45px;
    position: relative;
    display: flex;
    align-items: center;
    box-sizing: border-box;
    padding: 5px 0;
    border-bottom: 1px solid #000;
  }
  .p-priceListLabel::before {
    left: 0;
    right: auto;
    top: -1px;
    margin: auto;
    width: 100%;
    height: 1px;
    background-color: #000;
    display: none;
  }
  .p-priceListPrice1,
  .p-priceListPrice2 {
    font-size: 14px;
    position: relative;
    border-bottom: 1px solid #cdcdcd;
    width: 100%;
    padding: 5px 10px 5px 150px;
    min-height: 45px;
    text-align: center;
  }
  .p-priceListPrice1::before ,
  .p-priceListPrice2::before {
    left: 10px;
    right: auto;
    top: 8px;
    bottom: 0;
    margin: auto;
    font-size: 16px;
    -webkit-transform: translate(0%, 0%);
    transform: translate(0%, 0%);
    text-align: left;
    display: block;
  }
  .p-priceListPrice1 strong,
  .p-priceListPrice2 strong {
    font-size: 20px;
  }
  .p-priceListPrice1 small,
  .p-priceListPrice2 small {
    font-size: 13px;
  }
  .p-priceListAnnotationBlock {
    margin-top: 20px;
  }
  .p-priceListAnnotationBlock > li {
    font-size: 15px;
  }
  .p-priceListAnnotationBlock > li + li {
    margin-top: 5px;
  }
}



/*-- よくある質問 --*/
.p-faq {
  padding: 140px 0;
}
.p-faqContent {

}
.p-faqList > li + li {
  margin-top: 70px;
}
.p-faqListQBlock {
  font-size: 24px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: .22em;
  color: #101010;
  font-family: "Shippori Mincho B1", serif;
  position: relative;
  padding-top: 20px;
  padding-left: 60px;
  box-sizing: border-box;
  margin-bottom: 40px;
}
.p-faqListQBlock::before {
  position: absolute;
  content: 'Q.';
  left: 0;
  top: 0;
  font-size: 40px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: .22em;
  color: #8a8a8a;
}
.p-faqListABlock {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: .14em;
  padding-left: 95px;
  box-sizing: border-box;
  position: relative;
}
.p-faqListABlock::before {
  position: absolute;
  content: '';
  left: 20px;
  top: 14px;
  background-color: #101010;
  width: 60px;
  height: 1px;
}
.p-faqListATxtBlock {
}
.p-faqListATxtBlock > p + p {
  margin-top: 20px;
}
.p-faqBtnBlock {
  margin-top: 130px;
}
.p-faqBtnBlock > a {
  font-family: "Shippori Mincho B1", serif;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #000;
  color: #fff;
  width: 420px;
  height: 98px;
  margin: 0 auto;
  font-size: 28px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: .14em;
}
@media screen and (max-width: 768px){
  .p-faq {
    padding: 80px 0 120px;
  }
  .p-faqContent {

  }
  .p-faqList > li + li {
    margin-top: 45px;
  }
  .p-faqListQBlock {
    font-size: 18px;
    padding-top: 6px;
    padding-left: 36px;
    margin-bottom: 24px;
  }
  .p-faqListQBlock::before {
    font-size: 23px;
  }
  .p-faqListABlock {
    font-size: 15px;
    padding-left: 45px;
  }
  .p-faqListABlock::before {
    left: 0;
    top: 14px;
    width: 30px;
    height: 1px;
  }
  .p-faqListATxtBlock {
  }
  .p-faqListATxtBlock > p + p {
    margin-top: 25px;
  }
  .p-faqBtnBlock {
    margin-top: 60px;
  }
  .p-faqBtnBlock > a {
    max-width: 473px;
    width: 90%;
    height: 70px;
    margin: 0 auto;
    font-size: 18px;
  }
}



/* UTILITY */
.u-fontShipporiMinB1Regular {
  font-family: "Shippori Mincho B1", serif;
  font-weight: 400;
  font-style: normal;
}
.u-fontShipporiMinB1Medium {
  font-family: "Shippori Mincho B1", serif;
  font-weight: 500;
  font-style: normal;
}
.u-fontShipporiMinB1Bold {
  font-family: "Shippori Mincho B1", serif;
  font-weight: 700;
  font-style: normal;
}
@media screen and (max-width: 750px) {.u-pcOnly { display: none !important;}}
@media screen and (min-width: 751px) {.u-spOnly { display: none !important;}}
