@charset "UTF-8";

#pages .content {
  height: auto;
  margin-bottom: 0;
  padding: 0;
  overflow: visible;
  transform: none;
  transition: none;
  -webkit-backface-visibility: visible;
  backface-visibility: visible;
}
#pages .content.aga-ed{
  margin-top: 100px;
}
@media screen and (max-width: 768px){
  #pages .content.aga-ed{
    margin-top: 60px;
  }
}
@media screen and (max-width: 500px){
  #pages .content.aga-ed{
    margin-top: 50px;
  }
}

*{
    box-sizing: border-box;
    font-feature-settings: 'palt';
}

.wrap{
  overflow: inherit;
}

article{
  overflow: unset;
}
body{
  font-weight:400;
}

button{
    padding:0;
}

html{
  scroll-behavior: smooth;
}

img{
    width:100%;
}

a{
    text-decoration:none;
}

.all-content{
    width:100%;
    overflow: hidden;
}

.inline-b{
    display:inline-block;
}

.sp, .tb, .tb-only{
    display:none !important;
}

#pages .inner{
  width:100%;;
}

@media screen and (max-width:768px){
    .tb, .tb-only{
        display:inherit !important;
    }

    .pc{
        display:none;
    }
}

@media screen and (max-width:480px){
    .tb-only{
        display:none !important;
    }

    .sp{
        display:inherit !important;
    }

    .sp-none{
        display:none !important;
    }
}

/* fonts */
p, span, h1, h2, h3,h4, h5, h6, dl, dt, dd, ul, li, a, th, td{
    font-family: "Noto Sans JP", sans-serif;
    letter-spacing: 0.06em;
    font-weight:400;
}

.lato{
    font-family: "Lato", sans-serif;
}

.serif{
    font-family: "Noto Serif JP", serif;
}

.sans{
    font-family: "Noto Sans JP", sans-serif;
}


p.yellow,
span.yellow{
  position: relative;
  z-index: 2;
  display: inline;
  background:#faf0be;
}

p.yellow-bottom,
span.yellow-bottom{
    position:relative;
    z-index:5;
}

p.yellow-bottom::after,
span.yellow-bottom::after{
    content:"";
    width:101%;
    height:35%;
    background-color:#faf0be;
    position:absolute;
    left:50%;
    transform: translateX(-50%);
    bottom:0;
    z-index:-1;
}

p.yellow-bottom,
span.yellow-bottom {
  position: relative;
  z-index: 5;
  background: linear-gradient(transparent 60%,
      #faf0be 60%,
      #faf0be 95%,
      transparent 95%);
  background-repeat: repeat;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}

p.yellow-bottom::after,
span.yellow-bottom::after {
  content: none;
}


p.blue,
span.blue,
a.blue{
    color:#00a0aa;
}

 .top-txt {
   text-align: center;
   font-size: 20px;
   line-height: 2.1;
 }

 @media screen and (max-width: 1300px) {
   .top-txt {
     font-size: 1.538vw;
   }
 }

 @media screen and (max-width: 768px) {
   .top-txt {
     font-size: 2.4vw;
     text-align: left;
   }
 }

 @media screen and (max-width: 480px) {
   .top-txt {
     font-size: 4vw;
   }
 }

/* いろ */

.bg-yellow{
  background-color:#fafaf5;
  background:#fafaf5;
}

.bg-white{
  background-color:#fff;
  background:#fff;
}

.bg-img{
  background-image:url(../img/about-info-back.jpg);
  background-size: 100% auto;
  background-repeat: repeat-y;
}

@media screen and (max-width:480px){
  .bg-img {
      background-size: 300%;
      background-position: center;
    }
}


/* コンテンツ幅 */

.wd-18{
    max-width:1080px !important;
    margin:0 auto;
}

.wd-18.center{
  width:90% !important;
  margin:0 auto;
}

.wd-880{
  max-width:880px;
}

.wd-880.center {
  width: 90%;
  margin: 0 auto;
}

.pd-15 {
  padding: 150px 0!important;
}

.pb-15 {
  padding-bottom: 150px!important;
}

.pt-15 {
  padding-top: 150px!important;
}

.pd-10 {
  padding: 100px 0!important;
}

.pt-10 {
  padding-top: 100px!important;
}

.pb-10 {
  padding-bottom: 100px!important;
}

.pd-70{
  padding:70px 0!important;
}

.pt-70{
  padding-top:70px!important;
}

.pb-70{
  padding-bottom:70px!important;
}

.mr-15 {
  margin: 150px 0!important;
}

.mb-15 {
  margin-bottom: 150px!important;
}

.mt-15 {
  margin-top: 150px!important;
}

.mr-10 {
  margin: 100px 0!important;
}

.mt-10 {
  margin-top: 100px!important;
}

.mb-10 {
  margin-bottom: 100px!important;
}

.mr-70 {
  margin: 70px 0!important;
}

.mt-70 {
  margin-top: 70px!important;
}

.mb-70 {
  margin-bottom: 70px!important;
}

.mr-50 {
  margin: 50px 0!important;
}

.mt-50 {
  margin-top: 50px!important;
}

.mb-50 {
  margin-bottom: 50px!important;
}


@media screen and (max-width: 1300px) {
  .pd-15 {
    padding: 11.5vw 0!important;
  }

  .pb-15 {
    padding-bottom: 11.5vw!important;
  }

  .pt-15 {
    padding-top: 11.5vw!important;
  }

  .pd-10 {
    padding: 7.7vw 0!important;
  }

  .pt-10 {
    padding-top: 7.7vw!important;
  }

  .pb-10 {
    padding-bottom: 7.7vw!important;
  }

  .pd-70 {
    padding: 5.367vw 0!important;
  }

  .pt-70 {
    padding-top: 5.367vw!important;
  }

  .pb-70 {
    padding-bottom: 5.367vw!important;
  }

  .mr-15 {
  margin: 11.5vw 0!important;
}

.mb-15 {
  margin-bottom: 11.5vw!important;
}

.mt-15 {
  margin-top: 11.5vw!important;
}

  .mr-10 {
    margin: 7.667vw 0!important;
  }

  .mt-10 {
    margin-top: 7.667vw!important;
  }

  .mb-10 {
    margin-bottom: 7.667vw!important;
  }

  .mr-70 {
    margin: 5.367vw 0!important;
  }

  .mt-70 {
    margin-top: 5.367vw!important;
  }

  .mb-70 {
    margin-bottom: 5.367vw!important;
  }
  
  .mr-50 {
    margin: 3.8vw 0!important;
  }

  .mt-50 {
    margin-top: 3.8vw!important;
  }

  .mb-50 {
    margin-bottom: 3.8vw!important;
  }
}

@media screen and (max-width: 768px) {
  .pd-15 {
    padding: 13vw 0!important;
  }

  .pb-15 {
    padding-bottom: 13vw!important;
  }

  .pt-15 {
    padding-top: 13vw!important;
  }

  .pd-10 {
    padding: 10vw 0!important;
  }

  .pt-10 {
    padding-top: 10vw!important;
  }

  .pb-10 {
    padding-bottom: 10vw!important;
  }

  .pd-70 {
    padding: 7vw 0!important;
  }

  .pt-70 {
    padding-top: 7vw!important;
  }

  .pb-70 {
    padding-bottom:7vw!important;
  }

  .mr-15 {
    margin: 13vw 0!important;
  }

  .mb-15 {
    margin-bottom: 13vw!important;
  }

  .mt-15 {
    margin-top: 13vw!important;
  }

  .mr-10 {
    margin: 10vw 0!important;
  }

  .mt-10 {
    margin-top: 10vw!important;
  }

  .mb-10 {
    margin-bottom: 10vw!important;
  }

  .mr-70 {
    margin: 7vw 0!important;
  }

  .mt-70 {
    margin-top: 7vw!important;
  }

  .mb-70 {
    margin-bottom: 7vw!important;
  }

  .mr-50 {
    margin: 4.5vw 0!important;
  }

  .mt-50 {
    margin-top: 4.5vw!important;
  }

  .mb-50 {
    margin-bottom: 4.5vw!important;
  }
}

@media screen and (max-width: 480px) {
  .pd-15 {
    padding: 14.5vw 0!important;
  }

  .pb-15 {
    padding-bottom: 14.5vw!important;
  }

  .pt-15 {
    padding-top: 14.5vw!important;
  }

  .pd-10 {
    padding: 12vw 0!important;
  }

  .pt-10 {
    padding-top: 12vw!important;
  }

  .pb-10 {
    padding-bottom: 12vw !important;
  }

  .pd-70 {
    padding:8vw 0!important;
  }

  .pt-70 {
    padding-top: 8vw!important;
  }

  .pb-70 {
    padding-bottom:8vw!important;
  }

  .mr-15 {
    margin: 14.5vw 0!important;
  }

  .mb-15 {
    margin-bottom: 14.5vw!important;
  }

  .mt-15 {
    margin-top: 14.5vw!important;
  }

  .mr-10 {
    margin: 12vw 0!important;
  }

  .mt-10 {
    margin-top: 12vw!important;
  }

  .mb-10 {
    margin-bottom: 12vw!important;
  }

  .mr-70 {
    margin: 8vw 0!important;
  }

  .mt-70 {
    margin-top: 8vw !important;
  }

  .mb-70 {
    margin-bottom: 8vw!important;
  }

  .mr-50 {
    margin: 4.5vw 0!important;
  }

  .mt-50 {
    margin-top: 4.5vw!important;
  }

  .mb-50 {
    margin-bottom: 4.5vw!important;
  }
}


/* page-共通 */

#page-head{
    width:100%;
    background-repeat: no-repeat;
    background-size:cover;
    background-position: center;
    height:400px;
    overflow: hidden;
}

#page-head .content{
    display:flex;
    flex-direction: column;
    height:100%;
}

#page-head h1{
    color:#fff;
    padding-bottom:62px;
    margin:0;
    margin-top:auto;
}

#page-head.menu h1{
    padding-bottom:50px;
}

#page-head h1 .en{
    font-family: "Lato", sans-serif;
    font-weight: 300;
    font-style: normal;
    padding-left:30px;
    position:relative;
    font-size:20px;
    letter-spacing:0.04em;
    line-height:1;
}

#page-head h1 .en::after{
    content:"";
    width:20px;
    height:1px;
    background:rgba(255,255,255,0.5);
    position:absolute;
    left:0;
    top:50%;
    transform: translateY(-50%);
}

#page-head h1 .jp{
    font-family: "Noto Serif JP", serif;
    font-size:45px;
    line-height:1;
    margin-top:13px;
}

#page-head h1 .sub{
    font-size:30px;
    margin-top:13px;
}

@media screen and (max-width: 1300px) {
  #page-head{
    height:30.769vw;
  }

  #page-head h1{
    padding-bottom:4.769vw;
  }

  #page-head.menu h1{
    padding-bottom:3.846vw;
  }

  #page-head h1 .en{
    padding-left:2.308vw;
    font-size:1.538vw;
  }

  #page-head h1 .en::after{
    width:1.538vw;
    height:0.077vw;
  }

  #page-head h1 .jp{
    font-size:3.462vw;
    margin-top:1vw;
  }

  #page-head h1 .sub{
    font-size:2.308vw;
    margin-top:1vw;
  }
}

@media screen and (max-width: 768px) {
  #page-head{
    height:48vw;
  }

  #page-head h1{
    padding-bottom:9vw;
  }

  #page-head.menu h1{
    padding-bottom:8vw;
  }

  #page-head h1 .en{
    padding-left:3.6vw;
    font-size:2.8vw;
  }

  #page-head h1 .en::after{
    width:2.4vw;
    height:0.13vw;
  }

  #page-head h1 .jp{
    font-size:5.8vw;
    margin-top:1.56vw;
  }

  #page-head h1 .sub{
    font-size:3.6vw;
    margin-top:1.56vw;
  }
}

@media screen and (max-width: 480px) {
  #page-head{
    height:50vw;
  }

  #page-head h1{
    padding-bottom:11vw;
  }

  #page-head.menu h1{
    padding-bottom:7.5vw;
  }

  #page-head h1 .en{
    padding-left:5.333vw;
    font-size:3.5vw;
  }

  #page-head h1 .en::after{
    width:3.8vw;
    height:0.208vw;
  }

  #page-head h1 .jp{
    font-size:7vw;
    margin-top:2.9vw;
  }

  #page-head h1 .sub{
    font-size:4.2vw;
    margin-top:2.667vw;
  }
}

#page-head.about{
    background-image:url(../img/about-head.jpg);
}

#page-head.list{
background-image:url(../img/list-head.jpg);
}

#page-head.flow{
    background-image:url(../img/flow-head.jpg);
}

#page-head.menu{
    background-image:url(../img/menu-head.jpg);
}

#page-head.faq{
    background-image:url(../img/faq-head.jpg);
}

#page-head.reserve {
  background-image: url(../img/reservation-head.jpg);
}

#page-head.privacy_policy {
  background-image: url(../img/privacy_policy-head.jpg);
}

#page-head.column {
  background-image: url(../img/column-head.jpg);
}

#page-head.news {
  background-image: url(../img/news-head.jpg);
}

#page-head.case {
  background-image: url(../img/case-head.jpg);
  background-position:70% top;
}

#brunch{
    margin-top:30px;
}

#brunch .content span,
#brunch .content a{
    font-size:16px;
    line-height:1;
    letter-spacing:0.04em;
}

@media screen and (max-width: 1300px) {
  #brunch {
    margin-top: 2.308vw;
  }

  #brunch .content span,
  #brunch .content a {
    font-size: 1.231vw;
  }
}

@media screen and (max-width: 768px) {
  #brunch {
    margin-top: 3.6vw;
  }

  #brunch .content span,
  #brunch .content a {
    font-size: 1.92vw;
  }
}

@media screen and (max-width: 480px) {
  #brunch {
    margin-top: 5.333vw;
  }

  #brunch .content span,
  #brunch .content a {
    font-size: 3.5vw;
  }
}

/* h3 */

h3.center{
    text-align: center;
    margin-bottom:70px;
}

h3 .en{
    font-family: "Lato", sans-serif;
    font-weight: 300;
    font-style: normal;
    color:#00a0aa;
    font-size:20px;
    letter-spacing:0.04em;
    padding:0 30px;
    position:relative;
}

h3 .en::before{
    content:"";
    width:20px;
    height:1px;
    background:rgba(0, 160, 170, 0.5);
    position:absolute;
    left: 0;
}

h3 .en::after{
    content:"";
    width:20px;
    height:1px;
    background:rgba(0, 160, 170, 0.5);
    position:absolute;
    right: 0;
}

h3 .en::before,
h3 .en::after{
    top:50%;
    transform: translateY(-50%);
}

h3 .jp{
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-size:40px;
    letter-spacing:0.04em;
    line-height:1;
    margin-top:15px;
    display: block;
    line-height:1.5;
}

h3 .sub{
  font-size:16px;
  margin-top:25px;
  display:inline-block;
}


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

    h3.center{
    margin-bottom:5.384vw;
}
  h3 .en{
    font-size: 1.538vw;
    padding: 0 2.308vw;
  }

  h3 .en::before,
  h3 .en::after{
    width: 1.538vw;
  }

  h3 .jp{
    font-size: 3.077vw;
    margin-top: 1.538vw;
    line-height:1.3;
  }

  h3 .sub {
    font-size: 1.9vw;
    margin-top: 25px;
  }
}


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

h3.center{
    margin-bottom:7vw;
}

h3 .en{
    font-size:2.3vw;
    padding:0 2.6vw;
}

h3 .en::before{
    width:2.2vw;
}

h3 .en::after{
    width:2.2vw;
}


h3 .jp{
    font-size:3.77vw;
    margin-top:2.6vw; 
}

h3 .sub {
  font-size: 3vw;
  margin-top: 3.034vw;
}
}

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

    h3.center{
    margin-bottom:10vw;
}

h3 .en{
    font-size:4vw;
    padding:0 5.2vw;
}

h3 .en::before{
    width:4.1vw;
}

h3 .en::after{
    width:4.1vw;
}


h3 .jp{
    font-size:5.3vw;
    margin-top:3.4vw; 
}

h3 .sub {
  font-size: 3.6vw;
  margin-top: 3.034vw;
  line-height:1.5;
}
}


/* 写真の表示切り替え */

.a-blur-photo {
  position: relative;
  overflow: hidden;
  background: #fff;
  container-type: inline-size;
}

.a-blur-photo__img {
  display: block;
  width: 100%;
  height: auto;
  transition: filter 0.3s ease;
}

/* オーバーレイ */
.a-blur-photo__overlay {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #b3b3b4;
  transition: opacity 0.3s ease, visibility 0.5s ease;
}

.a-blur-photo__overlay.is-hidden {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.a-blur-photo__inner {
  width: 100%;
  text-align: center;
}

/* 閉じるボタン */
.a-blur-photo__close {
  appearance: none;
  position: absolute;
  top: 0;
  left:0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0);
  line-height: 1;
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

.a-blur-photo__close.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.a-blur-photo__close:hover {
  opacity: 0.3;
}

/* アイコン */
.a-blur-photo__icon {
  width: 8.7%;
  height: auto;
  margin: 0 auto;
}

.a-blur-photo__lead {
  margin-top: clamp(10px, 2.5cqw, 20px);
  margin-bottom: clamp(13px, 3.375cqw, 27px) !important;
  font-size: clamp(10px, 2cqw, 16px);
  line-height: 1;
}

.a-blur-photo__box {
  padding:5% 1%;
  background: #fff;
  width: 65%;
  margin: 0 auto;
}


@media screen and (max-width:480px){
  .a-blur-photo__box {
      width: 80%;
    }
}


.a-blur-photo__box .text-area {
  text-align: left;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin: 0 auto;
  width: fit-content;
}

.a-blur-photo__box p {
  margin: 0;
  font-size: clamp(11px, 2.5cqw, 20px);
  line-height: 1.1;
  color: #111;
  text-align: left;
}

.a-blur-photo__box p .big {
  font-size: clamp(15px, 3.25cqw, 26px);
}

.a-blur-photo__box p+p {
  margin-top: clamp(14px, 2.5cqw, 20px);
}

.a-marker {
  background: linear-gradient(transparent 60%, #f8ec00 60%);
}

/* 表示ボタン */
.a-blur-photo__btn {
  appearance: none;
  border: 1px solid rgba(0, 0, 0, 0.8);
  background: #b3b3b4;
  padding: clamp(5px, 1.25cqw, 10px) clamp(12px, 3.125cqw, 25px);
  font-size: clamp(11px, 2cqw, 16px);
  line-height: 1;
  cursor: pointer;
  transition: 0.3s ease;
  display: flex;
  align-items: center;
  gap: clamp(5px, 1.25cqw, 10px);
  margin: 0 auto;
  margin-top: clamp(12px, 3.75cqw, 30px);
  color: #000;
}

.a-blur-photo__btn span {
  display: block;
}

.a-blur-photo__btn .arrow {
  width: clamp(13px, 1.875cqw, 15px);
  height: clamp(13px, 1.875cqw, 15px);
  border-radius: 50%;
  border: 1px solid rgba(0, 0, 0, 0.5);
  position: relative;
  transition: 0.3s;
}

.a-blur-photo__btn .arrow::after {
  content: "";
  width: clamp(3px, 0.5cqw, 4px);
  height: clamp(3px, 0.5cqw, 4px);
  border-right: 1px solid rgba(0, 0, 0, 0.5);
  border-top: 1px solid rgba(0, 0, 0, 0.5);
  position: absolute;
  rotate: 45deg;
  top: 55%;
  left: 21%;
  transform: translate(-50%, -50%);
  transition: 0.3s;
}

.a-blur-photo__btn:hover {
  background: #fff;
}

@media screen and (max-width:768px) {
  
    .a-blur-photo__btn .arrow::after {
      width: clamp(4.5px, 0.5cqw, 6px);
      height: clamp(4.5px, 0.5cqw, 6px);
    }

    .a-blur-photo__lead {
      font-size: clamp(10px, 4cqw, 16px);
      line-height: 1.2;
    }

    .a-blur-photo__btn {
      font-size: clamp(10px, 4cqw, 16px);
    }

        .a-blur-photo__box p {
          margin: 0;
          font-size: clamp(10px,4cqw,16px);
          line-height: 1.1;
          color: #111;
          text-align: left;
        }
    
        .a-blur-photo__box p .big {
          font-size: clamp(13px, 4.2cqw, 24px);
        }

        .a-blur-photo__icon{
          width:12%;
        }
}

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

  /* .a-blur-photo__btn .arrow::after {
    width: clamp(4.5px, 0.5cqw, 6px);
    height: clamp(4.5px, 0.5cqw, 6px);
  } */

  .a-blur-photo__lead {
    font-size: clamp(0px, 3.5cqw, 14px);
  }

  .a-blur-photo__btn {
    font-size: clamp(0px, 3.5cqw, 14px);
  }

  .a-blur-photo__box{
    padding:3%;
  }

  .a-blur-photo__box p {
    margin: 0;
    font-size: clamp(0px, 3.8cqw, 15px);
    line-height: 1.1;
    color: #111;
    text-align: left;
  }

  .a-blur-photo__box p .big {
    font-size: clamp(0px, 4.5cqw, 18px);
  }

}


/* about */




    /* about-h2 */

    .about-h2{
        font-size:30px;
        font-weight:500;
        text-align: center;
        letter-spacing:0.05em;
        line-height:1.6;
        margin-top:110px;
    }

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

    .about-h2{
        font-size:2.3vw;
        margin-top:8.3vw;
    }
    }

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

    .about-h2{
        font-size:3.5vw;
    }
    }

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

    .about-h2{
        font-size:5.2vw;
        margin-top:12vw;
    }
    }

    /* about-feature */

    #feature{
        padding:150px 0;
    }


    #feature .content .feature-txt{
        margin-top:50px;
        text-align: center;
        font-size:18px;
        line-height:2.3;
        text-align: center;
    }

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

    #feature{
        padding:11.5vw 0;
    }

    #feature .content .feature-txt{
        margin-top:3.8vw;
        font-size:1.4vw;
    }
    }

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

    #feature{
        padding:13vw 0;
    }

    #feature .content .feature-txt{
        margin-top:4.5vw;
        font-size:2.5vw;
    }
    }

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

    #feature{
        padding:10vw 0;
    }

    #feature .content .feature-txt{
        margin-top:4.5vw;
        font-size:4vw;
        line-height:2;
        text-align: left;
    }

    #feature .feature-img{
      width:60%;
      margin:0 auto;
    }
    }

    /* information */

    #information{
        padding:150px 0;
        background-image:url(../img/about-info-back.jpg);
        background-size: cover;
        background-repeat: no-repeat;
    }

    #information.bg-none{
      background-image:none;
    }

    #information .content .info-wrap{
        width:780px;
        margin:0 auto;
    }

    #information .content .info-wrap .a-info .info-title{
        display:block;
        width:100%;
        text-align: center;
        font-size:24px;
        font-weight:500;
        letter-spacing:0.12em;
        line-height:1;
        color:#fff;
        background-color:#00a0aa;
        padding:10px 0;
    }

    #information .content .info-wrap .a-info + .a-info{
        margin-top:100px;
    }

    #information .content .info-wrap .a-info dl .a-data{
        display:flex;
        padding:30px 0;
        border-bottom:1px solid #c8c8c8;
        align-items: flex-start;
    }

    #information .content .info-wrap .a-info dl .a-data dt{
        display:block;
        width:140px;
    }

    #information .content .info-wrap .a-info dl .a-data dd{
    width:calc(100% - 140px);
    }

    #information .content .info-wrap .a-info dl .a-data dt,
    #information .content .info-wrap .a-info dl .a-data dd{
        font-size:16px;
        letter-spacing:0.06em;
        line-height:1.87;
    }

     #information .content .info-wrap .a-info dl .a-data dd a.href-color{
        color:#00a0aa;
        border-bottom:1px solid #00a0aa;
        transition: 0.3s;
     }

    #information .content .info-wrap .a-info dl .a-data dd a.href-color:hover{
      color:#000;
      border-bottom:1px solid #000;
    }

    #information .content .info-wrap .a-info dl .a-data dd a.href-line{
        color:#000;
        border-bottom:1px solid #000;
        transition:0.3s;
     }

      #information .content .info-wrap .a-info dl .a-data dd a.href-line:hover{
      color:#00a0aa;
      border-bottom:1px solid #00a0aa;
      }

      #information .content .info-wrap .a-info dl .a-data .tel_btn{
      color:#000;
      }

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

    #information{
        padding:11.5vw 0;
    }

    #information .content .info-wrap{
        width:60vw;
    }

    #information .content .info-wrap .a-info .info-title{
        font-size:1.8vw;
        padding:0.8vw 0;
    }

    #information .content .info-wrap .a-info + .a-info{
        margin-top:7.7vw;
    }

    #information .content .info-wrap .a-info dl .a-data{
        padding:2.3vw 0;
    }

    #information .content .info-wrap .a-info dl .a-data dt{
        width:10.8vw;
    }

    #information .content .info-wrap .a-info dl .a-data dd{
    width:calc(100% - 10.8vw);
    }

    #information .content .info-wrap .a-info dl .a-data dt,
    #information .content .info-wrap .a-info dl .a-data dd{
        font-size:1.2vw;
    }
    }

    @media screen and (max-width:768px){
    #information{
        padding:13vw 0;
    }

    #information .content .info-wrap{
        width:80vw;
    }

    #information .content .info-wrap .a-info .info-title{
        font-size:3vw;
        padding:1vw 0;
    }

    #information .content .info-wrap .a-info + .a-info{
        margin-top:8vw;
    }

    #information .content .info-wrap .a-info dl .a-data{
        padding:3vw 0;
    }

    #information .content .info-wrap .a-info dl .a-data dt,
    #information .content .info-wrap .a-info dl .a-data dd{
        font-size:2vw;
    }

        #information .content .info-wrap .a-info dl .a-data dt {
          width: 14vw;
        }
    
        #information .content .info-wrap .a-info dl .a-data dd {
          width: calc(100% - 14vw);
        }
    }

    @media screen and (max-width:480px){
    #information{
        padding:10vw 0;
    }

    #information .content .info-wrap{
        width:83vw;
    }

    #information .content .info-wrap .a-info .info-title{
        font-size:4.5vw;
        padding:2vw 0;
    }

    #information .content .info-wrap .a-info + .a-info{
        margin-top:10vw;
    }

    #information .content .info-wrap .a-info dl .a-data{
        padding:4vw 0;
    }

    #information .content .info-wrap .a-info dl .a-data dt{
        width:20vw;
    }

    #information .content .info-wrap .a-info dl .a-data dd{
    width:calc(100% - 20vw);
    }

    #information .content .info-wrap .a-info dl .a-data dt,
    #information .content .info-wrap .a-info dl .a-data dd{
        font-size:4vw;
    }
    }

    /* map */

    .a-info .g-map{
      margin-top:30px;
    }

    .a-info .g-map,
    .a-info .g-map iframe{
      width:100%;
    }

    .a-info .g-map iframe {
      width: 100%;
      max-height:370px;
      height:28.5vw;
    }

    @media screen and (max-width: 1300px) {
  .a-info .g-map{
    margin-top:2.308vw;
  }

  .a-info .g-map iframe {
    max-height:28.462vw;
    height:28.5vw;
  }
}

@media screen and (max-width: 768px) {
  .a-info .g-map{
    margin-top:3.6vw;
  }

  .a-info .g-map iframe {
    max-height:none;
    height:42vw;
  }
}

@media screen and (max-width: 480px) {
  .a-info .g-map{
    margin-top:5.333vw;
  }

  .a-info .g-map iframe {
    height:53.333vw;
  }
}

     /* media */

    #media{
        background-color:#fafaf5;
        padding:150px 0;
    }

    #media .content .media-wrap .a-media{
    display:flex;
    align-self: flex-start;
    justify-content: space-between;
    gap:3%;
    background:#fff;
    width:calc(100% - 15px);
    margin-left:auto;
    padding: 30px 36px 30px 0px;
    }

    #media .content .media-wrap .a-media + .a-media{
    margin-top:50px;
    }

    #media .content .media-wrap .a-media .left{
        width:56%;
    }

    #media .content .media-wrap .a-media.l-wide .left{
        width:78%;
    }

    #media .content .media-wrap .a-media .right{
        width:40%;
    }

        #media .content .media-wrap .a-media.l-wide .right{
        width:15%;
    }

    #media .content .media-wrap .a-media .right.icon{
        position:relative;
    }

    #media .content .media-wrap .a-media .right.icon::after{
        content:"";
        background-image:url(../img/about-media04-01.png);
        width:140px;
        height:140px;
        background-size: contain;
        background-repeat: no-repeat;
        position:absolute;
        top:15px;
        left:-100px;
    }


    #media .content .media-wrap .a-media .left .tag{
        background-color:#00a0aa;
        color:#fff;
        display:block;
        width:fit-content;
        line-height:1;
        padding:9px 15px;
        font-size:20px;
        letter-spacing:0.06em;
        position:relative;
        transform: translateX(-15px);
    }

    #media .content .media-wrap .a-media .left .tag::before{
        content:"";
        width: 15px;
        height: 8px;
        background: #006e78;
        clip-path: polygon(0 0, 100% 0, 100% 100%);
        position:absolute;
        left:0;
        bottom:-7.5px;
    }

    #media .content .media-wrap .a-media .left .content{
        padding-left:32px;
    }

    #media .content .media-wrap .a-media .left .content .date{
    font-size:16px;
    letter-spacing:0.06em;
    line-height:1;
    margin-top:30px;
    }

    #media .content .media-wrap .a-media .left .content .title{
        font-size:24px;
        font-weight:500;
        color:#00a0aa;
        letter-spacing:0.05em; 
        margin-top:15px;
        line-height:1.5;
    }

    #media .content .media-wrap .a-media .left .content .txt{
        font-size:16px;
        line-height:1.7;
        letter-spacing:0.04em;
        margin-top:30px;
    }

    #media .content .media-wrap .a-media .left .content .txt a{
      border-bottom:1px solid #00a0aa;
      transition:0.3s;
    }

    #media .content .media-wrap .a-media .left .content .txt a:hover{
      color:#000;
      border-bottom:1px solid #000;
    }

    #media .content .media-wrap .a-media .left .content ul{
        margin-top:40px;
    }

    #media .content .media-wrap .a-media .left .content ul li a span{
        display:block;
        font-size:16px;
        color:#000;
        transition:0.3s;
        letter-spacing:0;
    }

    #media .content .media-wrap .a-media .left .content ul li a span.num{
        padding:5px 14px;
        line-height:1;
        border:1px solid #000;
        transition:0.3s;
        white-space: nowrap;
    }

    #media .content .media-wrap .a-media .left .content ul li a{
        display:flex;
        align-items: center;
        gap:20px;
        transition:0.3s;
    }

    #media .content .media-wrap .a-media .left .content ul li a .inner_flex{
      display: flex;
        align-items: center;
        gap: 20px;
    }


    #media .content .media-wrap .a-media .left .content ul li + li{
        margin-top:20px;
    }

    #media .content .media-wrap .a-media .left .content ul li a .btn{
        width:19px;
        height:19px;
        min-width:19px;
        border-radius:100px;
        border:1px solid #000;
        position:relative;
        transition:0.3s;
    }

    #media .content .media-wrap .a-media .left .content ul li a .btn::before{
        content:"";
        width:4px;
        height:4px;
        border-top:1px solid #000;
        border-right:1px solid #000;
        position:absolute;
        left:30%;
        top:53%;
        transform: rotate(45deg) translate(-50%, -50%);
        transition:0.3s;
    }

    #media .content .media-wrap .a-media .left .content ul li a:hover span{
        color:#00a0aa;
    }

    #media .content .media-wrap .a-media .left .content ul li a:hover span.num{
        border:1px solid #00a0aa;
    }

    #media .content .media-wrap .a-media .left .content ul li a:hover .btn{
        background-color:#00a0aa;
        border:1px solid #00a0aa;
    }

    #media .content .media-wrap .a-media .left .content ul li a:hover .btn::before{
        border-top:1px solid #fff;
        border-right:1px solid #fff;
    }

    @media screen and (max-width:1300px){
    #media{
        padding:11.5vw 0;
     }

    #media .content .media-wrap .a-media{
    width:calc(100% - 1vw);
    padding: 2.3vw 2.8vw 2.3vw 0px;
    }

    #media .content .media-wrap .a-media + .a-media{
    margin-top:3.8vw;
    }

    #media .content .media-wrap .a-media .right.icon::after{
        width:10.7vw;
        height:10.7vw;
        top:1vw;
        left:-7.7vw;
    }


    #media .content .media-wrap .a-media .left .tag{
        padding:0.7vw 1.1vw;
        font-size:1.5vw;
        transform: translateX(-1vw);
    }

    #media .content .media-wrap .a-media .left .tag::before{
        width: 1vw;
        height: 0.6vw;
        bottom:-0.6vw;
    }

    #media .content .media-wrap .a-media .left .content{
        padding-left:2.5vw;
    }

    #media .content .media-wrap .a-media .left .content .date{
        font-size:1.2vw;
        margin-top:2.3vw;
    }

    #media .content .media-wrap .a-media .left .content .title{
        font-size:1.8vw;
        margin-top:1vw;
    }

    #media .content .media-wrap .a-media .left .content .txt{
        font-size:1.2vw;
        margin-top:2.3vw;
    }

    #media .content .media-wrap .a-media .left .content ul{
        margin-top:3vw;
    }

    #media .content .media-wrap .a-media .left .content ul li a span{
        font-size:1.2vw;
    }

    #media .content .media-wrap .a-media .left .content ul li a span.num{
        padding:0.4vw 1vw;
    }

    #media .content .media-wrap .a-media .left .content ul li a{
        gap:1.5vw;
    }

    #media .content .media-wrap .a-media .left .content ul li a .inner_flex {
      gap: 1.5vw;
    }


    #media .content .media-wrap .a-media .left .content ul li + li{
        margin-top:1.5vw;
    }

    #media .content .media-wrap .a-media .left .content ul li a .btn{
        width:1.4vw;
        height:1.4vw;
        min-width:1.4vw;
        border-radius:7.7vw;
    }

    #media .content .media-wrap .a-media .left .content ul li a .btn::before{
        width:0.3vw;
        height:0.3vw;
    }
    }

    @media screen and (max-width:768px){
    #media{
        padding:13vw 0;
     }

    #media .content .media-wrap .a-media{
    width:calc(100% - 2vw);
    padding: 4vw 4vw 4vw 0px;
    }

    #media .content .media-wrap .a-media .left{
        width:100%;
    }

    #media .content .media-wrap .a-media.l-wide .left{
        width:100%;
    }

    #media .content .media-wrap .a-media .right{
        width:0;
    }

    #media .content .media-wrap .a-media.l-wide .right{
        width:0;
    }

    #media .content .media-wrap .a-media + .a-media{
    margin-top:4.5vw;
    }

    #media .content .media-wrap .a-media .sp-img.icon{
    position:relative;
    }

    #media .content .media-wrap .a-media .sp-img.icon::after{
        content:"";
        position:absolute;
        background-image:url(../img/about-media04-01.png);
        width:20vw;
        height:20vw;
        top:1.3vw;
        left:-5.3vw;
        background-size: contain;
        background-repeat: no-repeat;
    }


    #media .content .media-wrap .a-media .left .tag{
        padding:1vw 2vw;
        font-size:3vw;
        transform: translateX(-2vw);
    }

    #media .content .media-wrap .a-media .left .tag::before{
        width: 2vw;
        height: 1vw;
        bottom:-1vw;
    }

    #media .content .media-wrap .a-media .left .content{
        padding-left:4vw;
        margin-top:2vw;
    }

    #media .content .media-wrap .a-media .left .content .date{
        font-size:2.5vw;
        margin-top:2.8vw;
    }

    #media .content .media-wrap .a-media .left .content .title{
        font-size:3.5vw;
        margin-top:1vw;
    }

    #media .content .media-wrap .a-media .left .content .txt{
        font-size:2.5vw;
        margin-top:2.8vw;
    }

    #media .content .media-wrap .a-media .left .content ul{
        margin-top:3vw;
    }

    #media .content .media-wrap .a-media .left .content ul li a span{
        font-size:2.5vw;
    }

    #media .content .media-wrap .a-media .left .content ul li a span.num{
        padding:0.8vw 1.3vw;
    }

      #media .content .media-wrap .a-media .left .content ul .li-title{
        margin-top:-0.6vw;
      }

    #media .content .media-wrap .a-media .left .content ul li a,
    #media .content .media-wrap .a-media .left .content ul li a .inner_flex{
        gap:2vw;
        align-items: flex-start;
    }

    


    #media .content .media-wrap .a-media .left .content ul li + li{
        margin-top:1.8vw;
    }

    #media .content .media-wrap .a-media .left .content ul li a .btn{
        width:3vw;
        height:3vw;
        min-width:3vw;
    }

    #media .content .media-wrap .a-media .left .content ul li a .btn::before{
        width:0.7vw;
        height:0.7vw;
    }
    }

    @media screen and (max-width:480px){
    #media{
        padding:10vw 0;
     }

    #media .content .media-wrap .a-media{
    width:calc(100% - 3vw);
    padding: 5vw 5vw 5vw 0px;
    }

    #media .content .media-wrap .a-media + .a-media{
    margin-top:6vw;
    }

    #media .content .media-wrap .a-media .sp-img.icon::after{
        width:27vw;
        height:27vw;
        top:2vw;
        left:-6vw;
    }


    #media .content .media-wrap .a-media .left .tag{
        padding:1.6vw 3vw;
        font-size:4.3vw;
        transform: translateX(-3vw);
        line-height:1.2;
    }

    #media .content .media-wrap .a-media .left .tag::before{
        width: 3vw;
        height: 1.6vw;
        bottom:-1.6vw;
    }

    #media .content .media-wrap .a-media .left .content{
        padding-left:5vw;
        margin-top:3.5vw;
    }

    #media .content .media-wrap .a-media .left .content .date{
        font-size:3.6vw;
        margin-top:3.5vw;
    }

    #media .content .media-wrap .a-media .left .content .title{
        font-size:4.5vw;
        margin-top:1vw;
    }

    #media .content .media-wrap .a-media .left .content .txt{
        font-size:3.8vw;
        margin-top:2.8vw;
    }

    #media .content .media-wrap .a-media .left .content ul{
        margin-top:5vw;
    }

    #media .content .media-wrap .a-media .left .content ul li a span{
        font-size:3.6vw;
    }

    #media .content .media-wrap .a-media .left .content ul li a span.num{
        padding:1vw 1.8vw;
        width:fit-content;
        display:bloxk;
        margin-bottom:1.3vw;
    }

    #media .content .media-wrap .a-media .left .content ul li a{
        display:block;
    }

        #media .content .media-wrap .a-media .left .content ul li a .inner_flex {
          gap: 3vw;
        }


    #media .content .media-wrap .a-media .left .content ul li + li{
        margin-top:4vw;
    }

    #media .content .media-wrap .a-media .left .content ul li a .btn{
        width:4vw;
        height:4vw;
        min-width:4vw;
        margin-top:0.5vw;
    }

    #media .content .media-wrap .a-media .left .content ul li a .btn::before{
        width:0.9vw;
        height:0.9vw;
    }
    }

    /* list */

    #list_btn .content .txt{
        text-align: center;
        font-size:16px;
        letter-spacing:0.1em;
        line-height:1.9;
    }

    /* btn-area */
.btn-area{
  width: 100%;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
  margin-top:95px;
}

.btn-area .a-btn{
  width: 247.5px;
  height: 90px;
  border: 1px solid rgba(0,0,0,0.4);
  background: #fff;
  text-decoration: none;
  color: #222;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  box-sizing: border-box;
  transition: 0.3s;
}

.btn-area .a-btn.multi span{
  top: 12px;
}

.btn-area .a-btn span{
  display: block;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: 0.04em;
  transition: 0.3s;
  position: absolute;
  top: 25px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  padding: 0 10px;
  box-sizing: border-box;
}

.btn-area .a-btn::after{
  content: "";
  width: 9px;
  height: 9px;
  border-right: 1px solid rgba(0,0,0,0.4);
  border-bottom: 1px solid rgba(0,0,0,0.4);
  position: absolute;
  left: 50%;
  bottom: 15px;
  transform: translateX(-50%) rotate(45deg);
  box-sizing: border-box;
  transition: 0.3s;
}

.btn-area .a-btn:hover{
  background: #00a0aa;
  border-color: #00a0aa;
}

.btn-area .a-btn:hover span{
  color: #fff;
}

.btn-area .a-btn:hover::after{
  border-color: #fff;
}

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

    #list_btn .content .txt{
    font-size: 1.231vw;
    }

  .btn-area{
    max-width: 83.077vw;
    gap: 2.308vw;
    margin-top:7.308vw;
  }

  .btn-area .a-btn{
    width: 19.038vw;
    height: 6.923vw;
  }

  .btn-area .a-btn.multi span{
    top: 0.923vw;
  }

  .btn-area .a-btn span{
    font-size: 1.231vw;
    top: 1.923vw;
    padding: 0 0.769vw;
  }

  .btn-area .a-btn::after{
    width: 0.692vw;
    height: 0.692vw;
    bottom: 1.154vw;
  }
}

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

  #list_btn .content .txt{
    font-size: 2.3vw;
    width:90%;
    margin:0 auto;
  }

  .btn-area{
    width: 90%;
    margin: 12.370vw auto 0;
    gap: 3.906vw;
  }

  .btn-area .a-btn{
    width: calc((100% - 7.813vw) / 3);
    height: 11.719vw;
  }

  .btn-area .a-btn span{
    font-size: 2vw;
    top: 3.255vw;
    padding: 0 1.302vw;
  }

  .btn-area .a-btn.multi span{
    top: 1.563vw;
  }

  .btn-area .a-btn::after{
    width: 1.172vw;
    height: 1.172vw;
    bottom: 1.953vw;
  }
}

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

  #list_btn .content .txt{
    font-size: 4vw;
    line-height: 1.8;
    text-align: left;
  }

  .btn-area{
    width:100%;
    margin: 10vw auto 0;
    gap: 3vw;
  }

  .btn-area .a-btn{
    width: calc((100% - 3vw) / 2);
    height: 18vw;
  }

  .btn-area .a-btn span{
    font-size:3.6vw;
    top: 5vw;
    padding: 0 2.083vw;
    line-height: 1.45;
  }

    .btn-area .a-btn span.sp-small {
      font-size:3.2vw;
    }

    

  .btn-area .a-btn.multi span{
    top: 2.3vw;
  }

  .btn-area .a-btn::after{
    width: 1.875vw;
    height: 1.875vw;
    bottom: 3.125vw;
  }
}
    /* price_list */
    
    .price_wrap {
      margin: 0 auto;
      width: 100%;
    }

    .price_table{
      max-width:800px;
      margin:0 auto;
      width:100% !important;
    }

    .price_wrap .price_table {
      border-collapse: collapse;
      table-layout: fixed;
      border: 1px solid rgba(0,0,0,0.3);
    }

    .price_wrap .price_table td {
      border: 1px solid rgba(0,0,0,0.3);
      vertical-align: middle;
      padding: 16px;
      box-sizing: border-box;
      font-size: 18px;
      line-height: 1.75;
      letter-spacing:0.1em;
    }

    /* =========================
       列幅
    ========================= */
    .price_wrap .col_01 {
      width: 8%;
    }

    .price_wrap .col_02 {
      width: 40%;
    }

    .price_wrap .col_03 {
      width: 53%;
    }

    /* 2列部分 */
    .price_wrap .cell_desc_wide {
      width: 48%;
    }

    .price_wrap .cell_price {
      width: 52%;
      white-space: nowrap;
      font-size: 18px;
      line-height: 1.5;
      background:#fff;
    }

    .price_wrap .cell_price .small {
      font-size: 16px;
      font-weight:300;
    }

    /* 説明セル */
    .price_wrap .cell_desc_wide,
    .price_wrap .cell_desc {
      font-size: 18px; /* 22px */
      line-height: 1.7;
      background:#fafaf5;
    }


    /* 注釈 */
    .price_wrap .price_note {
      display: block;
      margin-top: 6px;
      color: #d20000;
      font-size: 16px;
      line-height: 1.6;
      letter-spacing:0.1em;
    }

    .price_wrap tr .mr{
        display:block;
        margin-top:15px;
        line-height:1.8;
        letter-spacing:0.1em;
        font-weight:300;
        font-size:16px;
    }



    /* 縦見出し */
    .price_wrap .cell_vertical {
      padding: 0 !important;
      background: #e6dec0 !important;
      text-align: center;
    }

    .price_wrap .cell_vertical .dot {
    display: inline-block;
    transform: translateX(0.25em);
    }

    /* .price_wrap .cell_vertical > span {
    display: inline-block;
    writing-mode: vertical-rl;
    -webkit-writing-mode: vertical-rl;
    text-orientation: upright;
    -webkit-text-orientation: upright;
    padding: 18px 0;
    font-size: 18px;
    line-height: 1;
    letter-spacing: 0.1em;
    text-align: center;
    font-feature-settings: "vert";
    } */

    .price_wrap .cell_vertical .price_kome {
    writing-mode: horizontal-tb;
    -webkit-writing-mode: horizontal-tb;
    display: inline-block;
    font-size: 14px;
    letter-spacing: 0;
    }

    .price_wrap .vertical-text {
          display: inline-block;
          text-align: center;
        }
      
            .price_wrap .vertical-text>span {
          display: block;
          line-height: 1.2;
        }
      
        /* ※だけ横書き */
            .price_wrap  .vertical-text .price_kome {
          writing-mode: horizontal-tb;
          display: block;
          font-size: 14px;
          letter-spacing: 0;
          margin-top: 6px;
        }
    /* リスト */
    .price_wrap .price_list {
      margin: 0;
      padding: 0;
      list-style: none;
    }

    /* ２列のみ */

    .price_wrap .cell_desc.wh {
      background:#fff;
    }

    .price_wrap  .price_table .cell_top {
     vertical-align: top;
    }
    .price_wrap .price_small {
      font-size: 14px;
    }

    .price_wrap .price_free {
    display: block;
    color: #00a0aa;
    font-size: 18px;
    line-height: 1.4;
    }
    .price_wrap .price_subtext.small{
    font-size:16px;
    letter-spacing:0.08em;
    }

    .price_wrap .price_subtext.nowrap{
        white-space: nowrap;
    }

    /* 表パターン３ */
    .price_wrap .price_table_std .std_col_01 {
    width: 31%;;
    }

    .price_wrap .price_table_std .std_col_02 {
    width: 17%;
    }

    .price_wrap .price_table_std .std_col_03 {
    width: 52%;
    }

    /* 2列時は 250 + 130 = 380px */
    .price_wrap .price_table_std .cell_desc_wide {
    width: 48%;
    }

    .price_wrap .price_table_std .cell_group {
    background: #fafaf5;
    font-size: 18px;
    line-height: 1.7;
    vertical-align: top;
    padding-top: 18px;
    }

    .price_wrap .price_table_std .cell_subhead {
    background: #f0e6c8;
    font-size: 18px;
    line-height: 1.7;
    text-align: center;
    white-space: nowrap;
    }

    .price_wrap .price_table_std .cell_price {
    white-space: normal;
    }

    .price_wrap .price_table_std .price_subtext {
    font-size: 16px;
    font-weight: 300;
    letter-spacing: 0.08em;
    }

    .price_wrap .price_table_std .cell_top {
    vertical-align: top;
    }

    /* =========================
       表ごとの個別調整用クラス例
    ========================= */


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


  .price_wrap .price_table {
    border: 1px solid rgba(0,0,0,0.3);
  }

  .price_wrap .price_table td {
    border: 1px solid rgba(0,0,0,0.3);
    padding: 1.231vw;
    font-size: 1.385vw;
  }

  /* .price_wrap .col_01 {
    width: 4.615vw;
  }

  .price_wrap .col_02 {
    width: 24.615vw;
  }

  .price_wrap .col_03 {
    width: 32.308vw;
  }

  .price_wrap .cell_desc_wide {
    width: 29.231vw;
  } */

  .price_wrap .cell_price {
    font-size: 1.385vw;
  }

    .price_wrap .cell_price .small {
    font-size: 1.231vw;
}

  .price_wrap .cell_desc_wide,
  .price_wrap .cell_desc {
    font-size: 1.385vw;
  }

  .price_wrap .price_note {
    margin-top: 0.462vw;
    font-size: 1.231vw;
  }

  .price_wrap tr .mr{
    margin-top: 1.154vw;
    font-size:1.231vw;
  }

  .price_wrap .price_small {
    font-size: 1.077vw;
  }

  .price_wrap .cell_vertical > span {
    padding: 1.385vw 0;
    font-size: 1.385vw;
  }

  .price_wrap .cell_vertical .price_kome {
    font-size: 1.077vw;
  }

  /* ２列のみ */
   .price_wrap .price_small {
    font-size: 1.077vw;
  }

  .price_wrap .price_free {
    font-size: 1.385vw;
  }

    .price_wrap .price_subtext.small{
    font-size: 1.231vw;
  }

    /* .price_wrap .price_table_std .std_col_01 {
    width: 19.231vw;
  }

  .price_wrap .price_table_std .std_col_02 {
    width: 10vw;
  }

  .price_wrap .price_table_std .std_col_03 {
    width: 32.308vw;
  }

  .price_wrap .price_table_std .cell_desc_wide {
    width: 29.231vw;
  } */

  .price_wrap .price_table_std .cell_group {
    font-size: 1.385vw;
    padding-top: 1.385vw;
  }

  .price_wrap .price_table_std .cell_subhead {
    font-size: 1.385vw;
  }

  .price_wrap .price_table_std .price_subtext {
    font-size: 1.231vw;
  }
}

@media screen and (max-width: 768px) {
  .price_wrap {
    width: 100%;
  }


  .price_wrap .price_table td {
    font-size: 2vw;
    padding:2vw;
  }

  .price_wrap .cell_price {
    font-size: 2vw;
  }

  .price_wrap .cell_desc_wide,
  .price_wrap .cell_desc {
    font-size: 2vw;
  }

  .price_wrap .cell_price .small,
  .price_wrap tr .mr,
  .price_wrap .price_note,
  .price_wrap .price_subtext.small,
  .price_wrap .price_table_std .price_subtext,
  .price_wrap .price_small,
  .price_wrap .cell_vertical .price_kome {
    font-size: 1.8vw;
  }

  .price_wrap .price_free,
  .price_wrap .cell_vertical > span,
  .price_wrap .price_table_std .cell_group,
  .price_wrap .price_table_std .cell_subhead {
    font-size: 2vw;
  }

}

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

  .price_wrap.sp-big{
    overflow-x: scroll;
  }

.price_wrap.sp-big .price_table {
    min-width: 550px;
    margin-bottom:2vw;
  }

  .price_wrap .price_table td {
    font-size: 3.6vw;
    letter-spacing:0.01em;
    padding:2vw;
  }

  .price_wrap .cell_price {
    font-size: 3.6vw;
    width: 44.56vw;
    white-space: wrap;
  }

  .price_wrap .cell_desc_wide,
  .price_wrap .cell_desc {
    font-size: 3.6vw;
  }

  .price_wrap .cell_price .small,
  .price_wrap tr .mr,
  .price_wrap .price_note,
  .price_wrap .price_subtext.small,
  .price_wrap .price_table_std .price_subtext,
  .price_wrap .price_small,
  .price_wrap .cell_vertical .price_kome {
    font-size: 3vw;
  }

  .price_wrap .price_free,
  .price_wrap .cell_vertical > span,
  .price_wrap .price_table_std .cell_group,
  .price_wrap .price_table_std .cell_subhead {
    font-size: 3.6vw;
  }

  /* =========================
     通常の3列表
     左 + 中 = 45.44vw / 右 = 44.56vw
  ========================= */
  .price_wrap .col_01 {
    width: 8vw;
  }

  .price_wrap .col_02 {
    width: 36vw;
  }

  .price_wrap .col_03 {
    width: 42vw;
  }

  .price_wrap .cell_desc_wide {
    width: 50%;
  }

  .cell_desc_wide {
    width: 40%;
  }

  .cell_desc {
    width: 60%;
  }

  /* =========================
     2列表
     左 = 45.44vw / 右 = 44.56vw
  ========================= */
  .price_wrap.price_wrap_2col .cell_desc_wide,
  .price_wrap .price_table_2col .cell_desc_wide {
    width: 50%;
  }

  
  .price_wrap.price_wrap_2col .cell_price,
  .price_wrap .price_table_2col .cell_price {
    width: 50%;
  }

    .price_wrap.price_wrap_2col.sp-big .cell_desc_wide,
    .price_wrap.sp-big .price_table_2col.cell_desc_wide {
      width: 35%;
    }

     .price_wrap.price_wrap_2col.sp-big .cell_price,
     .price_wrap.sp-big .price_table_2col.cell_price {
       width: 60%;
     }

  /* =========================
     別パターンの3列表
     左 + 中 = 45.44vw / 右 = 44.56vw
  ========================= */
  .price_wrap .price_table_std .std_col_01 {
    width: 29vw;
  }

  .price_wrap .price_table_std .std_col_02 {
    width: 18vw;
  }

  .price_wrap .price_table_std .std_col_03 {
    width: 41vw;
  }

  .price_wrap .price_table_std .cell_desc_wide {
    width: 45vw;
  }

    .price_wrap .price_subtext.nowrap {
      white-space: wrap;
    }
}


/* medical examination */

#medical{
    padding:150px 0;
}

#medical .content .txt{
    width:90%;
    margin:0 auto;
    margin-top:70px;
    font-size:16px;
    text-align: center;
    line-height:1.7;
    letter-spacing:0.04em;
    margin-bottom:30px;
}

@media screen and (max-width: 1300px) {
  #medical{
    padding: 11.538vw 0;
  }

  #medical .content .txt{
    margin-top: 5.385vw;
    font-size: 1.231vw;
    margin-bottom: 2.308vw;
  }
}

@media screen and (max-width: 768px) {
  #medical{
    padding: 13vw 0;
  }

  #medical .content .txt{
    margin-top: 5vw;
    font-size: 2vw;
    margin-bottom:7vw; 
  }
}

@media screen and (max-width: 480px) {
  #medical{
    padding: 14.5vw 0;
  }

  #medical .content .txt{
    margin-top: 7vw;
    font-size: 4vw;
    text-align: left;
  }
}

.background-img{
    background-image:url(../img/list_back.jpg);
    background-size:100% auto;
    background-repeat: repeat-y;
    padding:150px 0;
}

.background-img section + section{
    padding-top:150px;
}

/* male */


.content .a-list + .a-list{
    margin-top:150px;
}

.content .a-list.mt{
    margin-top:70px;
}

.content .a-list .list-top{
    max-width:800px;
    width:100%;
    margin:0 auto;
    margin-top:70px;
    margin-bottom:50px;
}

.content .a-list .list-top .title{
    display:block;
    width:100%;
    max-width:800px;
    margin:0 auto;
    text-align: center;
    background:#00a0aa;
    color:#fff;
    font-size:24px;
    font-weight:500;
    letter-spacing:0.12em;
    line-height:1;
    padding:13px 0;
}

.content .a-list .list-top .txt{
    margin-top:50px;
    text-align: center;
    font-size:16px;
    line-height:1.8;
    letter-spacing:0.04em;
}

.content .a-list .list-top .txt.al-left{
    text-align: left;
}


.content .a-list .list-top .txt.left{
    text-align: left;
    font-size:20px;
    font-weight:400;
    line-height:1;
    letter-spacing:0.1em;
    padding-left:20px;
    position:relative;
}

.content .a-list .list-top .txt.left:before{
    content:"";
    width:10px;
    height:30px;
    background-color:#00a0aa;
    position:absolute;
    left:0;
    top:50%;
    transform: translateY(-50%);
}


.content .a-list .list-bottom{
    max-width:800px;
    margin:0 auto;
    width:100%;
    margin-top:30px;
}

.content .a-list .list-bottom .small{
    font-size:12px;
    font-weight:300;
    line-height:2;
    letter-spacing:0.04em;
}

.content .a-list .list-bottom .small .blue{
    color:#00a0aa;
    font-weight:500;
    letter-spacing:0.04em;
}

.content .a-list .list-bottom .large{
    font-size:22px;
    letter-spacing:0.1em; 
    text-align: center;
    margin-top:70px;
}

.content .a-list .list-bottom .large .blue{
    color:#00a0aa;
}

.content .a-list .list-bottom .cta{
    margin-top:20px;
}

.content .a-list .list-bottom .cta a{
    display:block;
    margin:0 auto;
    text-align: center;
    width:250px;
    background-color:#00a0aa;
    color:#fff;
    padding:15px 0;
    font-size:16px;
    font-weight:500;
    letter-spacing:0.06em;
    position:relative;
}

.content .a-list .list-bottom .cta a::after{
    content:"";
    width:9px;
    height:9px;
    border-top:1px solid rgba(255,255,255,0.6);
    border-right:1px solid rgba(255,255,255,0.6);
    rotate:45deg;
    position:absolute;
    top:50%;
    transform: translateY(-50%);
    right:20px;
}

@media screen and (max-width: 1300px) {
.background-img{
    padding:11.538vw 0;
}

.background-img section + section{
    padding-top: 11.538vw;
  }


  .content .a-list + .a-list{
    margin-top:11.538vw;
}

.content .a-list.mt{
    margin-top:5.385vw;
}

  .content .a-list .list-top{
    margin-top: 5.385vw;
    margin-bottom: 3.846vw;
  }

  .content .a-list  .list-top .title{
    font-size: 1.846vw;
    padding: 1vw 0;
  }

  .content .a-list  .list-top .txt{
    margin-top: 3.846vw;
    font-size: 1.231vw;
  }

    .content .a-list .list-top .txt.left{
    font-size: 1.538vw;
    padding-left: 1.538vw;
  }

  .content .a-list .list-top .txt.left:before{
    width: 0.769vw;
    height: 2.308vw;
  }

  .content .a-list  .list-bottom{
    margin-top:2.3vw;
  }

  .content .a-list  .list-bottom .small{
    font-size: 0.923vw;
  }

  .content .a-list  .list-bottom .large{
    font-size: 1.692vw;
    margin-top: 5.385vw;
  }

  .content .a-list .list-bottom .cta{
    margin-top: 1.538vw;
  }

  .content .a-list  .list-bottom .cta a{
    width: 19.231vw;
    padding: 1.154vw 0;
    font-size: 1.231vw;
  }

  .content .a-list  .list-bottom .cta a::after{
    width: 0.692vw;
    height: 0.692vw;
    right: 1.538vw;
  }
}

@media screen and (max-width: 768px) {
.background-img{
    padding:13vw 0;
}

.background-img section + section{
    padding-top: 13vw;
  }


  .content .a-list + .a-list{
    margin-top:13vw;
}

.content .a-list.mt{
    margin-top:5.385vw;
}

  .content .a-list .list-top{
    max-width: 1000px;
    width:100%;
    margin:0 auto;
    margin-top: 7vw;
    margin-bottom: 5vw;
  }

  .content .a-list  .list-top .title{
    max-width: 1000px;
    width:100%;
    margin:0 auto;
    font-size: 3.246vw;
    padding: 1.4vw 0;
  }

  .content .a-list  .list-top .txt{
    margin-top: 5vw;
    font-size: 2vw;
  }

    .content .a-list .list-top .txt.left{
    font-size:2.8vw;
    padding-left:2.8vw;
  }

  .content .a-list .list-top .txt.left:before{
    width: 1.3vw;
    height: 3.9vw;
  }

  .content .a-list  .list-bottom{
    max-width: 1000px;
    width:100%;
    margin:0 auto;
    margin-top:3vw;
  }

  .content .a-list  .list-bottom .small{
    font-size: 1.6vw;
  }

  .content .a-list  .list-bottom .large{
    font-size: 2.5vw;
    margin-top: 7vw;
  }

  .content .a-list .list-bottom .cta{
    margin-top: 5vw;
  }

  .content .a-list  .list-bottom .cta a{
    width: 44.8vw;
    padding: 2.3vw 0;
    font-size: 2.6vw;
  }

  .content .a-list  .list-bottom .cta a::after{
    width: 0.692vw;
    height: 0.692vw;
    right: 1.538vw;
  }
}

@media screen and (max-width: 480px) {
.background-img{
    padding:14.5vw 0;
}

.background-img section + section{
    padding-top: 14.5vw;
  }


  .content .a-list + .a-list{
    margin-top:14.5vw;
}

.content .a-list.mt{
    margin-top:14.5vw;
}

  .content .a-list .list-top{
    margin-top: 10vw;
    margin-bottom: 7vw;
  }

  .content .a-list  .list-top .title{
    font-size: 4.5vw;
    padding: 1.9vw 0;
  }

  .content .a-list  .list-top .txt{
    margin-top: 7vw;
    font-size: 4vw;
    text-align: left;
  }

    .content .a-list .list-top .txt.left{
    font-size:4.5vw;
    padding-left:3.4vw;
  }

  .content .a-list .list-top .txt.left:before{
    width: 1.9vw;
    height: 5.8vw;
    top:2.6vw;
  }

  .content .a-list  .list-bottom{
    margin-top:3vw;
  }

  .content .a-list  .list-bottom .small{
    font-size: 3vw;
  }

  .content .a-list  .list-bottom .large{
    font-size: 4vw;
    line-height:1.6;
    margin-top: 10vw;
  }

  .content .a-list .list-bottom .cta{
    margin-top: 7vw;
  }

  .content .a-list  .list-bottom .cta a{
    width: 49vw;
    padding: 3vw 0;
    font-size: 3.3vw;
  }

  .content .a-list  .list-bottom .cta a::after{
    width: 0.692vw;
    height: 0.692vw;
    right: 1.538vw;
  }
}


/* profile */

#profile{
    padding-bottom:45px;
    background: linear-gradient(to bottom, transparent 62%, #fafaf5 62%);
}

#doctor01, #doctor02{
  scroll-margin-top:50px;
}

#profile .content{
    max-width:880px;
    width:90%;
    margin:0 auto;
}

#profile .content .prof-wrap{
    width:100%;
    display:flex;
    justify-content: space-between;
}

#profile .content .prof-wrap .a-doctor{
    width:48.2%;
}

#profile .content .prof-wrap .a-doctor .name{
    font-size:20px;
    letter-spacing:0.08em;
    line-height:1;
    padding:7px 13px;
    background:#00a0aa;
    color:#fff;
    display:block;
    width:fit-content;
    height:fit-content;
}

#profile .content .prof-wrap .a-doctor .name-flex{
margin-top: 30px;
display:flex;
justify-content: space-between;
align-items: center;
}

#profile .content .prof-wrap .a-doctor .name-flex a{
  display:block;
height: 34px;
  width:auto;
  transition:0.3s;
}

#profile .content .prof-wrap .a-doctor .name-flex a:hover{
  opacity:0.7;
}

#profile .content .prof-wrap .a-doctor .name-flex a img{
  display: block;
  width: auto;
  height:100%;
}


#profile .content .prof-wrap .a-doctor .role{
    font-size:18px;
    letter-spacing:0.08em;
    margin-top:20px;
}

#profile .content .prof-wrap .a-doctor .detail{
    font-size:16px;
    line-height:1.8;
    letter-spacing:0.08em;
    margin-top:30px;
}

@media screen and (max-width: 1300px) {
  #profile{
    padding-bottom: 3.462vw;
  }

  #profile .content{
    max-width: 67.692vw;
  }

  #profile .content .prof-wrap .a-doctor .name{
    font-size: 1.538vw;
    padding: 0.538vw 1vw;
  }

    #profile .content .prof-wrap .a-doctor .name-flex {
      margin-top: 2.308vw;
    }

  #profile .content .prof-wrap .a-doctor .name-flex a {
    height: 2.6vw;
  }

  #profile .content .prof-wrap .a-doctor .role{
    font-size: 1.385vw;
    margin-top: 1.538vw;
  }

  #profile .content .prof-wrap .a-doctor .detail{
    font-size: 1.231vw;
    margin-top: 2.308vw;
  }
}

@media screen and (max-width: 768px) {
  #profile{
    padding-bottom: 7vw;
  }

  #profile .content{
    max-width: 1000px;
    width:90%;
    margin:0 auto;    
  }

  #profile .content .prof-wrap .a-doctor .name{
    font-size: 2.8vw;
    padding: 1vw 1.5vw;
    width:80%;
    text-align: center;
  }

  #profile .content .prof-wrap .a-doctor .name-flex {
    margin-top: 2.5vw;
  }

  #profile .content .prof-wrap .a-doctor .name-flex a {
    height: 4.8vw;
  }

  #profile .content .prof-wrap .a-doctor .role{
    font-size: 2.2vw;
    margin-top: 2vw;
  }

  #profile .content .prof-wrap .a-doctor .detail{
    font-size: 2vw;
    margin-top: 2vw;
  }
}

@media screen and (max-width: 480px) {
  #profile{
    padding-bottom: 12vw;
  }

  #profile .content .prof-wrap{
    display:block;
    margin-top: 10vw;
  }

    #profile .content .prof-wrap .a-doctor{
    width:90%;
    margin:0 auto;
    }

    #profile .content .prof-wrap .a-doctor .img{
      width:85%;
      margin:0 auto;
    }

    #profile .content .prof-wrap .a-doctor + .a-doctor{
    margin-top:7vw;
    }

  #profile .content .prof-wrap .a-doctor .name{
    font-size: 4.5vw;
    padding: 2.5vw 1.5vw;
  }

    #profile .content .prof-wrap .a-doctor .name-flex {
    margin-top: 3.2vw;
  }

  #profile .content .prof-wrap .a-doctor .name-flex a {
    height: 9.3vw;
  }

  #profile .content .prof-wrap .a-doctor .role{
    font-size: 4vw;
    margin-top: 3vw;
  }

  #profile .content .prof-wrap .a-doctor .detail{
    font-size: 3.5vw;
    margin-top: 3vw;
  }
}


/* greeting and philisophy */

#gnp .gnp-wrap .a-gnp{
    position:relative;
    padding:100px 0;
}

#gnp .gnp-wrap .a-gnp + .a-gnp{
    margin-top:120px;
}

#gnp .gnp-wrap .a-gnp::before{
    content:"";
    width:73%;
    height:100%;
    background-repeat: no-repeat; 
    background-size:cover;
    position:absolute;
    top:50%;
    left:0;
    transform: translateY(-50%);
    z-index:-10;
}

#gnp .gnp-wrap .a-gnp.left::before{
    left:auto;
    right:0;
}

#gnp .gnp-wrap .a-gnp.gnp01::before{
    background-image:url(../img/gnp01.jpg);
}

#gnp .gnp-wrap .a-gnp.gnp02::before{
    background-image:url(../img/gnp02.jpg);
}

#gnp .gnp-wrap .a-gnp.gnp03::before{
    background-image:url(../img/gnp03.jpg);
}


#gnp .wd-18{
    width:90%;
    margin:0 auto;
}

#gnp .content .gnp-wrap .a-gnp .inner{
    width:60%;
}

#gnp .content .gnp-wrap .a-gnp.right .inner{
    margin-left:auto;
}

#gnp .content .gnp-wrap .a-gnp .inner .title{
    font-size:30px;
    font-weight:500;
    letter-spacing:0.06em;
    line-height:1.5;
    color:#00a0aa;
}

#gnp .content .gnp-wrap .a-gnp .inner .txt{
    margin-top:40px;
    font-size:16px;
    letter-spacing:0.06em;
    line-height:2;
    text-align: justify;
}

#gnp .gnp-btn-area{
    display:flex;
    flex-direction: column;
    gap:20px;
    width:322px;
    margin-top:50px;
}
#gnp .gnp-btn-area a{
    display:block;
    padding:10px;
    border:1px solid #000;
    color:#000;
    font-size:16px;
    letter-spacing:0.08em;
    position:relative;
    line-height:1;
    transition:0.3s;
}

#gnp .gnp-btn-area a::after{
    content:"";
    width:8px;
    height:8px;
    border-top:1px solid #000;
    border-right:1px solid #000;
    rotate:45deg;
    position:absolute;
    top:50%;
    transform: translateY(-50%);
    right:25px;
transition: 0.3s;
}

#gnp .gnp-btn-area a:hover{
  background:#000;
color:#fff;
}

#gnp .gnp-btn-area a:hover::after{
      border-top: 1px solid #fff;
        border-right: 1px solid #fff;
}

#gnp .gnp-aga{
    width:90%;
    margin:0 auto;
    margin-top:120px;
}

#gnp .gnp-aga .inner{
   background:#fafaf5; 
   padding:50px 20px;
}

#gnp .gnp-aga .inner .icon{
    width:40px;
    height:auto;
    margin:0 auto;
    display:block;
}

#gnp .gnp-aga .inner .title{
    font-size:20px;
    font-weight:500;
    color:#00a0aa;
    letter-spacing:0.08em;
    text-align: center;
    margin-top:10px;
}

#gnp .gnp-aga .inner .txt{
    text-align: center;
    line-height:2;
    letter-spacing:0.06em;
    font-size:16px;
    margin-top:30px;
}

#gnp .gnp-aga .bottom-txt{
    text-align: center;
    font-size:20px;
    line-height:2;
    letter-spacing:0.06em;
    margin-top:50px;
}

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

  #gnp .gnp-wrap .a-gnp{
    padding: 7.692vw 0;
  }

  #gnp .gnp-wrap .a-gnp + .a-gnp{
    margin-top: 9.231vw;
  }

  #gnp .content .gnp-wrap .a-gnp .inner .title{
    font-size: 2.308vw;
  }

  #gnp .content .gnp-wrap .a-gnp .inner .txt{
    margin-top: 3.077vw;
    font-size: 1.231vw;
  }

  #gnp .gnp-btn-area{
    gap: 1.538vw;
    width: 24.769vw;
    margin-top: 3.846vw;
  }

  #gnp .gnp-btn-area a{
    padding: 0.769vw;
    font-size: 1.231vw;
  }

  #gnp .gnp-btn-area a::after{
    width: 0.615vw;
    height: 0.615vw;
    right: 1.923vw;
  }

  #gnp .gnp-aga{
    margin-top: 9.231vw;
  }

  #gnp .gnp-aga .inner{
    padding: 3.846vw 1.538vw;
  }

  #gnp .gnp-aga .inner .icon{
    width: 3.077vw;
  }

  #gnp .gnp-aga .inner .title{
    font-size: 1.538vw;
    margin-top: 0.769vw;
  }

  #gnp .gnp-aga .inner .txt{
    font-size: 1.231vw;
    margin-top: 2.308vw;
  }

  #gnp .gnp-aga .bottom-txt{
    font-size: 1.538vw;
    margin-top: 3.846vw;
  }
}

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

  #gnp .gnp-wrap .a-gnp{
    padding: 12vw 0;
  }

  #gnp .gnp-wrap .a-gnp + .a-gnp{
    margin-top: 12vw;
  }

  #gnp .gnp-wrap .a-gnp::before{
    width:80%;
}

#gnp .content .gnp-wrap .a-gnp .inner{
    width:80%;
}


  #gnp .content .gnp-wrap .a-gnp .inner .title{
    font-size: 3.7vw;
    letter-spacing:0.05em;
  }

  #gnp .content .gnp-wrap .a-gnp .inner .txt{
    margin-top: 3vw;
    font-size: 2.2vw;
  }

  #gnp .gnp-btn-area{
    gap: 2vw;
    width: 45vw;
    margin-top: 5vw;
  }

  #gnp .gnp-btn-area a{
    padding: 1.5vw 2vw;
    font-size: 2.2vw;
  }

  #gnp .gnp-btn-area a::after{
    width: 1vw;
    height: 1vw;
    right:2.4vw;
  }

  #gnp .gnp-aga{
    margin-top: 12vw;
  }

  #gnp .gnp-aga .inner{
    padding: 5vw 3vw;
  }

  #gnp .gnp-aga .inner .icon{
    width: 6vw;
  }

  #gnp .gnp-aga .inner .title{
    font-size: 3.2vw;
    margin-top: 1.7vw;
  }

  #gnp .gnp-aga .inner .txt{
    font-size: 2.2vw;
    margin-top: 2.5vw;
    text-align: left;
  }

  #gnp .gnp-aga .bottom-txt{
    font-size: 2.6vw;
    margin-top: 7vw;
  }
}

@media screen and (max-width: 480px) {
  #gnp .gnp-wrap .a-gnp{
    padding: 15vw 0;
  }

  #gnp .gnp-wrap .a-gnp + .a-gnp{
    margin-top: 15vw;
  }

  /* #gnp .gnp-wrap .a-gnp::before{
    width:80%;
} */

#gnp .content .gnp-wrap .a-gnp .inner{
    width:90%; 
    margin:0 auto;
}


  #gnp .content .gnp-wrap .a-gnp .inner .title{
    font-size: 5.2vw;
    letter-spacing:0.03em;
  }

  #gnp .content .gnp-wrap .a-gnp .inner .txt{
    margin-top: 5vw;
    font-size: 4vw;
  }

  #gnp .gnp-btn-area{
    gap: 4vw;
    width: 90%;
    margin-top: 7vw;
  }

  #gnp .gnp-btn-area a{
    padding: 2vw 2vw;
    font-size: 3.6vw;
  }

  #gnp .gnp-btn-area a::after{
    width: 1.6vw;
    height: 1.6vw;
    right:3.4vw;
  }

  #gnp .gnp-aga{
    margin-top: 15vw;
  }

  #gnp .gnp-aga .inner{
    padding: 7vw 5vw;
  }

  #gnp .gnp-aga .inner .icon{
    width: 8vw;
  }

  #gnp .gnp-aga .inner .title{
    font-size: 4.5vw;
    margin-top: 2.4vw;
  }

  #gnp .gnp-aga .inner .txt{
    font-size: 4vw;
    margin-top: 4vw;
  }

  #gnp .gnp-aga .bottom-txt{
    font-size: 4vw;
    margin-top: 10vw;
    text-align: left;
  }
}

/* history */
#history,
#history-02 {
  background-image: url(../img/list_back.jpg);
  background-size: 100% auto;
  background-repeat: repeat-y;
}

#std-representative .content,
#history .content,
#history-02 .content {
  width: 90%;
  margin: 0 auto;
}

#std-representative .content .flex,
#history .content .flex,
#history-02 .content .flex {
  display: flex;
  justify-content: space-between;
}

#std-representative .content .flex .left,
#history .content .flex .left,
#history-02 .content .flex .left {
  width: 20%;
}

#history .content .flex .right,
#history-02 .content .flex .right {
  width: 74%;
}

#std-representative .content .flex .right {
  width: 67.6%;
}

/* 目次 */
#std-representative .content .flex .left.menu .title,
#history .content .flex .left.menu .title,
#history-02 .content .flex .left.menu .title {
  font-size: 30px;
  letter-spacing: 0.06em;
  line-height: 1;
}

#history .content .flex .left.menu .menu-list,
#history-02 .content .flex .left.menu .menu-list {
  margin-top: 40px;
}

#std-representative .content .flex .left.menu .menu-list li+li,
#history .content .flex .left.menu .menu-list li+li,
#history-02 .content .flex .left.menu .menu-list li+li {
  margin-top: 25px;
}

#std-representative .content .flex .left.menu .menu-list li a,
#history .content .flex .left.menu .menu-list li a,
#history-02 .content .flex .left.menu .menu-list li a {
  font-size: 18px;
  color: #000;
  transition: 0.3s;
  width: 160px;
  display: block;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.career_arrow,
.career_arrow::before{
  transition:0.3s;
}

#std-representative .content .flex .left.menu .menu-list li a {
  width: 200px;
}

#std-representative .content .flex .left.menu .menu-list li a:hover,
#history .content .flex .left.menu .menu-list li a:hover,
#history-02 .content .flex .left.menu .menu-list li a:hover {
  color: #00a0aa;
}

#std-representative .content .flex .left.menu .menu-list li a:hover .career_arrow,
#history .content .flex .left.menu .menu-list li a:hover .career_arrow,
#history-02 .content .flex .left.menu .menu-list li a:hover .career_arrow {
  border-color: #00a0aa;
}

#std-representative .content .flex .left.menu .menu-list li a:hover .career_arrow::before,
#history .content .flex .left.menu .menu-list li a:hover .career_arrow::before,
#history-02 .content .flex .left.menu .menu-list li a:hover .career_arrow::before {
  border-color: #00a0aa;
}

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

  #std-representative .content .flex .left.menu .title,
  #history .content .flex .left.menu .title,
  #history-02 .content .flex .left.menu .title {
    font-size: 2.308vw;
  }

  #history .content .flex .left.menu .menu-list,
  #history-02 .content .flex .left.menu .menu-list {
    margin-top: 3.077vw;
  }

  #std-representative .content .flex .left.menu .menu-list li+li,
  #history .content .flex .left.menu .menu-list li+li,
  #history-02 .content .flex .left.menu .menu-list li+li {
    margin-top: 1.923vw;
  }

  #std-representative .content .flex .left.menu .menu-list li a,
  #history .content .flex .left.menu .menu-list li a,
  #history-02 .content .flex .left.menu .menu-list li a {
    font-size: 1.385vw;
    width: 12.308vw;
  }

  #std-representative .content .flex .left.menu .menu-list li a {
    width: 15.385vw;
  }
}

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

  #std-representative .content .flex .left.menu .title,
  #history .content .flex .left.menu .title,
  #history-02 .content .flex .left.menu .title {
    font-size: 2.6vw;
  }

  #history .content .flex .left.menu .menu-list,
  #history-02 .content .flex .left.menu .menu-list {
    margin-top: 4vw;
  }

  #std-representative .content .flex .left.menu .menu-list li+li,
  #history .content .flex .left.menu .menu-list li+li,
  #history-02 .content .flex .left.menu .menu-list li+li {
    margin-top: 2.4vw;
  }

  #std-representative .content .flex .left.menu .menu-list li a,
  #history .content .flex .left.menu .menu-list li a,
  #history-02 .content .flex .left.menu .menu-list li a {
    font-size: 2vw;
    width: 17vw;
  }

  #std-representative .content .flex .left.menu .menu-list li a {
    width: 24vw;
  }
}

@media screen and (min-width: 481px) {

  #history .career_sp_accordion_body,
  #history-02 .career_sp_accordion_body {
    display: none !important;
  }
}

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

  #std-representative .content .flex .right {
    width: 62%;
  }

  #std-representative .content .flex .left.menu .title,
  #history .content .flex .left.menu .title,
  #history-02 .content .flex .left.menu .title {
    font-size: 3.6vw;
  }

  #history .content .flex .left.menu .title,
  #history-02 .content .flex .left.menu .title{
  text-align: center;
  font-size:4.5vw;
  }

  #history .content .flex .left.menu .menu-list,
  #history-02 .content .flex .left.menu .menu-list {
    margin-top: 0;
  }

  #history .content .flex .left.menu .menu-list li+li,
  #history-02 .content .flex .left.menu .menu-list li+li {
    margin-top: 3.4vw;
  }

        #std-representative .content .flex .left.menu .menu-list li+li{
          margin:0;
        }

  #std-representative .content .flex .left.menu .menu-list li a,
  #history .content .flex .left.menu .menu-list li a,
  #history-02 .content .flex .left.menu .menu-list li a {
    font-size: 2.7vw;
    letter-spacing: 0.02em;
    width: 23vw;
  }

    #std-representative .content .flex .left.menu .menu-list li a{
      font-size:3.75vw;
      padding:5vw;
      line-height:1;
    }

    #std-representative .content .flex .left.menu .menu-list li + li{
      border-top:1px solid #dadbdb;
    } 

  #std-representative .content .flex .left.menu .menu-list li{
    margin:0;
  }

  #std-representative .content .flex .left.menu .menu-list li a {
    width: 28vw;
  }

  #history, #history-02{
    background-size:300%;
    background-position:center;
  }

}

/*  */
/* =========================
  spポップアップ用
========================= */
/* =========================
std-representative popup
========================= */

    #std-representative .std-popup__close span {
      opacity: 0;
    }

@media screen and (max-width: 480px) {
  #std-representative .content .flex {
    display: block;
  }

  #std-representative .content .flex .left.menu {
    width: 100%;
  }

  #std-representative .content .flex .left.menu .menu-list {
    width: 100%;
  }

  #std-representative .content .flex .left.menu .menu-list li a {
    width: 100%;
    font-size:4vw;
  }

  #std-representative .content .flex .right {
    display: none;
  }

  #std-representative .std-popup {
    position: fixed;
    inset: 0;
    z-index: 3000;
    display: none;
  }

  #std-representative .std-popup.is-open {
    display: block;
  }

  #std-representative .std-popup__bg {
    position: absolute;
    inset: 0;
    z-index:1;
  }

  #std-representative .std-popup__box {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height:80%;
    overflow-y: auto;
    background: rgba(255,255,255,0.95);
    z-index:2;
    }

    .std-popup__content .inner{
      padding: 7vw 5vw;
    }


  #std-representative .std-popup__close {
    position: sticky;
    top: 3vw;
    display: block;
    margin-left: auto;
    margin-right: 3vw;
    border: none;
    font-size: 8vw;
    line-height: 1;
    cursor: pointer;
    width: 10vw;
    height: 10vw;
    background: rgba(0,0,0,0.3);
    border-radius:50%;
    transition:0.3s;
    z-index:10;
  }



  #std-representative .std-popup__close span{
    font-weight:100;
    font-size:5vw;
    color:#fff;
    display:block;
opacity: 0;
  }

  #std-representative .std-popup.is-open .std-popup__close span {
    opacity: 1;
  }

  #std-representative .std-popup__content .a-sec {
    display: block !important;
    margin-top: 0 !important;
  }

  /* STDポップアップ 内容がスクロール可能な時のヒント（画面上部に下向き矢印） */
  .std-popup-scroll-hint {
    position: fixed;
    bottom: 10vh;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.6);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 999999;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.3s ease;
  }
  .std-popup-scroll-hint.is-visible {
    opacity: 1;
    animation: std-scroll-hint-bounce 1.4s ease-in-out infinite;
  }
  .std-popup-scroll-hint span {
    font-size: 30px;
    line-height: 1;
    display: block;
    transform: translateY(-1px);
  }
  @keyframes std-scroll-hint-bounce {
    0%, 100% { transform: translateX(-50%) translateY(0); }
    50%      { transform: translateX(-50%) translateY(10px); }
  }

    #history .content .flex .left.menu .menu-list li+li,
    #history-02 .content .flex .left.menu .menu-list li+li {
      border-top: 1px solid #dadbdb;
    }
  
    #history .content .flex .left.menu .menu-list li:last-child,
    #history-02 .content .flex .left.menu .menu-list li:last-child {
      border-bottom: 1px solid #dadbdb;
    }

}

body.is-std-popup-open {
  overflow: hidden;
}



/* リスト設定ここから(経歴) */

.career_section .career_list{
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
}

.career_section + .career_section{
  margin-top: 65px;
}

.career_heading{
  font-size: 20px;
  line-height: 1;
  letter-spacing: 0.06em;
  color: #00a0aa;
  margin: 0 0 30px;
  padding-left: 15px;
  position: relative;
}

.career_section .small-title{
    font-size:16px;
    margin-top:30px;
    margin-bottom:15px;
    letter-spacing:0.06em;
    line-height:1;
}

.career_heading::before{
  content: "";
  width: 5px;
  height: 25px;
  background: #00a0aa;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}

/* =========================
   リスト本体
========================= */
.career_item + .career_item{
  margin-top: 10px;
}

.career_item_box{
  padding: 20px;
}

.career_item:nth-child(odd) .career_item_box{
  background: #fafaf5;
}

.career_item:nth-child(even) .career_item_box{
  background: #fff;
}

/* =========================
   テキスト共通
========================= */
.career_text,
.career_caption{
  font-size: 16px;
  line-height: 2;
  letter-spacing: 0.06em;
  color: #000;
  margin: 0;
}

/* =========================
   リンクあり / なし
========================= */
.career_link,
.career_plain{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  min-height: 30px;
}

.career_link{
  text-decoration: none;
  transition: 0.3s;
}

.career_link .career_text{
  transition: 0.3s;
}

.career_arrow{
  width: 15px;
  height: 15px;
  border: 1px solid #000;
  border-radius: 50%;
  flex-shrink: 0;
  position: relative;
  transition: 0.3s;
}

.career_arrow::before{
  content: "";
  width: 4px;
  height: 4px;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-69%, -52%) rotate(45deg);
  transition: 0.3s;
}

.career_link:hover .career_text{
  color: #00a0aa;
}

.career_link:hover .career_arrow{
  border-color: #00a0aa;
}

.career_link:hover .career_arrow::before{
  border-color: #00a0aa;
}

/* =========================
   画像共通
========================= */
.career_media{
  margin-top: 30px;
}

.career_media_single img{
  width: 100%;
  height: auto;
  display: block;
}

/* 画像2枚 */
.career_media_double{
  display: flex;
  width:100%;
  justify-content: space-between;
  gap: 4%;
  margin-top: 30px;
  align-items: stretch;
}

.career_media_double .career_media_img.left-img{
  width: 37%;
}

.career_media_double .career_media_img.right-img{
  width: 59%;
}

.career_media_double .career_media_img{
  height: 238px;
  overflow: hidden;
}

.career_media_double .career_media_img img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* =========================
   キャプション
========================= */
.career_caption{
  margin-top: 30px;
}

.career_caption_wrap_double{
  display: flex;
  justify-content: space-between;
  gap: 4%;
  margin-top: 30px;
}

.career_caption_wrap_double .career_caption:first-child{
  width: 37%;
  margin-top: 0;
}

.career_caption_wrap_double .career_caption:last-child{
  width: 59%;
  margin-top: 0;
}

/* =========================
   横並び1リスト
========================= */
.career_row_side_image{
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 30px;
}

.career_row_side_image .career_text_side{
  width: 60%;
  flex-shrink: 0;
}

.career_row_side_image .career_media{
  width: 40%;
  margin-top: 0;
}

.career_row_side_image .career_media img{
  width: 100%;
  display: block;
}

/* =========================
   1300px以下
========================= */
@media screen and (max-width: 1300px){
  .career_section + .career_section{
    margin-top: 5vw;
  }

  .career_heading{
    font-size: 1.538vw;
    margin: 0 0 2.308vw;
    padding-left: 1.154vw;
  }

    .career_section .small-title{
    font-size: 1.231vw;
    margin-top: 2.308vw;
    margin-bottom: 1.154vw;
  }

  .career_heading::before{
    width: 0.385vw;
    height: 1.923vw;
  }

  .career_item + .career_item{
    margin-top: 0.769vw;
  }

  .career_item_box{
    padding: 1.538vw;
  }

  .career_text,
  .career_caption{
    font-size: 1.231vw;
  }

  .career_link,
  .career_plain{
    gap: 1.538vw;
    min-height: 2.308vw;
  }

  .career_arrow{
    width: 1.154vw;
    height: 1.154vw;
  }

  .career_arrow::before{
    width: 0.308vw;
    height: 0.308vw;
  }

  .career_media{
    margin-top: 2.308vw;
  }

  .career_media_double{
    margin-top: 2.308vw;
  }

  .career_media_double .career_media_img{
    height: 18.308vw;
  }

  .career_caption{
    margin-top: 2.308vw;
  }

  .career_caption_wrap_double{
    margin-top: 2.308vw;
  }

  .career_row_side_image{
    gap: 2.308vw;
  }

}

@media screen and (max-width: 768px){
  .career_section + .career_section{
    margin-top: 7vw;
  }

  .career_heading{
    font-size: 2.8vw;
    margin: 0 0 3.2vw;
    padding-left: 2vw;
  }

    .career_section .small-title{
    font-size: 2vw;
    margin-top: 3vw;
    margin-bottom: 2vw;
  }

  .career_heading::before{
    width: 0.654vw;
    height: 3.2vw;
  }

  .career_item + .career_item{
    margin-top: 2vw;
  }

  .career_item_box{
    padding: 2vw;
  }

  .career_text,
  .career_caption{
    font-size: 2vw;
  }

  .career_link,
  .career_plain{
    gap: 2vw;
    min-height: 2.308vw;
  }

  .career_arrow{
    width: 2vw;
    height: 2vw;
  }

  .career_arrow::before{
    width: 0.46vw;
    height: 0.46vw;
  }

  .career_media{
    margin-top: 3vw;
  }

  .career_media_double{
    margin-top: 3vw;
  }

  .career_media_double .career_media_img{
    height: 24vw;
  }

  .career_caption{
    margin-top: 3vw;
  }

  .career_caption_wrap_double{
    margin-top: 3vw;
  }

  .career_row_side_image{
    gap: 3vw;
  }

}

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

#history .content .flex .right{
    width:70%;
}

  .career_heading{
    font-size: 4vw;
    margin: 0 0 3.4vw;
    padding-left: 2.8vw;
    display:none;
  }

    .career_section .small-title{
    font-size: 2.7vw;
    margin-top: 5vw;
    margin-bottom: 3vw;
  }

  .career_heading::before{
    width: 1vw;
    height: 4vw;
  }

  .career_item + .career_item{
    margin-top: 3vw;
  }

  .career_item_box{
    padding: 3vw;
  }

  .career_text{
    font-size: 2.7vw;
  }

  .career_link,
  .career_plain{
    gap: 3vw;
  }

  .career_arrow{
    width: 3.4vw;
    height: 3.4vw;
  }

  .career_arrow::before{
    width: 1vw;
    height: 1vw;
  }

    .career_arrow::before {
      top: 51%;
      left: 51%;
    }

  .career_media{
    margin-top: 4vw;
  }

  .career_media_double{
    margin-top: 4vw;
  }

  .career_caption{
    margin-top: 4vw;
    font-size:3vw;
  }

  .career_caption_wrap_double{
    margin-top: 4vw;
  }

  .career_row_side_image{
    gap: 4vw;
  }


    #history .content .flex,
    #history-02 .content .flex {
      display: block;
    }
  
    #history .content .flex .left.menu,
    #history-02 .content .flex .left.menu {
      width: 100%;
    }
  
    #history .content .flex .left.menu .menu-list,
    #history-02 .content .flex .left.menu .menu-list {
      width: 100%;
    }
  
    #history .content .flex .left.menu .menu-list li,
    #history-02 .content .flex .left.menu .menu-list li {
      width: 100%;
    }
  
    #history .content .flex .left.menu .menu-list li a,
    #history-02 .content .flex .left.menu .menu-list li a{
      width: 100%;
      font-size: 4vw;
    }

    #history .content .flex .left.menu .menu-list li a:not(.career_link),
    #history-02 .content .flex .left.menu .menu-list li a:not(.career_link) {
      padding: 5vw 3vw;
    }
  
    .career_text {
      font-size: 3.6vw;
    }
  
    #history .content .flex .right,
    #history-02 .content .flex .right {
      display: none;
    }
  
    #history .career_sp_accordion_body,
    #history-02 .career_sp_accordion_body {
      display: grid;
      grid-template-rows: 0fr;
      transition: grid-template-rows 0.3s ease;
    }
  
    #history .career_sp_accordion_inner,
    #history-02 .career_sp_accordion_inner {
      overflow: hidden;
    }
  
    #history .career_accordion_item.is_open .career_sp_accordion_body,
    #history-02 .career_accordion_item.is_open .career_sp_accordion_body {
      grid-template-rows: 1fr;
    }
  
    #history .career_sp_accordion_body {
      padding-top: 0;
    }
  
    #history-02 .career_sp_accordion_body {
      padding-top: 0;
    }
  
    #history .career_accordion_item.is_open .career_sp_accordion_body,
    #history-02 .career_accordion_item.is_open .career_sp_accordion_body {
      padding-top: 4vw;
    }

    #history .content .flex .right{
      width:100%;
    }

    #history .career_accordion_trigger .career_arrow,
    #history-02 .career_accordion_trigger .career_arrow {
      transform: rotate(90deg);
      transition: transform 0.3s ease;
    }

    #history .career_accordion_item.is_open .career_accordion_trigger .career_arrow,
    #history-02 .career_accordion_item.is_open .career_accordion_trigger .career_arrow {
      transform: rotate(-90deg);
    }

}

.career_item.work-history-btm{
  margin-top:300px;
  background:none;
}

.career_item.work-history-btm .career_item_box{
  background:none;
  padding:0;
}

@media screen and (max-width:1300px){
  .career_item.work-history-btm {
      margin-top: 23vw;
    }
}

@media screen and (max-width:768px) {
  .career_item.work-history-btm {
    margin-top: 26vw;
  }
}

@media screen and (max-width:48px) {
  .career_item.work-history-btm {
    margin-top: 18vw;
  }
}





/* houkei_features */

#circumcised-features{
    background-image:url(../img/list_back.jpg);
    background-size:100% auto;
    background-repeat: repeat-y;
}

#circumcised-features .features-wrap .a-item{
    display:flex;
    width:91.5%;
    margin-left:auto;
    gap:4%;
    align-items: center;
}

#circumcised-features .features-wrap .a-item + .a-item{
    margin-top:100px;
}

#circumcised-features .features-wrap .a-item.reverse{
    margin-left:0;
    flex-direction: row-reverse;
}

#circumcised-features .features-wrap .a-item .left{
    width:44.5%;
}

#circumcised-features .features-wrap .a-item .right{
    width:51.5%;
}

#circumcised-features .features-wrap .a-item .left .title{
    font-size:32px;
    font-weight:600;
    line-height:1.7;
    position:relative;
    padding-bottom:40px;
}

#circumcised-features .features-wrap .a-item .left .title::after{
    content:"";
    width:50px;
    height:1px;
    background-color:rgba(0, 160, 170, 0.5);
    position:absolute;
    left:0;
    bottom:0;
}

#circumcised-features .features-wrap .a-item .left .txt{
    margin-top:40px;
    font-size:18px;
    line-height:2.1;
    letter-spacing:0.02em;
}

#circumcised-features .features-wrap .bottom_txt{
    font-size:18px;
    line-height:2.1;
    text-align: center;
    margin-top:70px;
}

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

  
  #circumcised-features .features-wrap .a-item+.a-item {
    margin-top: 7.692vw;
  }

  #circumcised-features .features-wrap .a-item .left .title {
    font-size: 2.462vw;
    padding-bottom: 3.077vw;
  }

  #circumcised-features .features-wrap .a-item .left .title::after {
    width: 3.846vw;
  }

  #circumcised-features .features-wrap .a-item .left .txt {
    margin-top: 3.077vw;
    font-size: 1.385vw;
  }

  #circumcised-features .features-wrap .bottom_txt {
    font-size: 1.385vw;
    margin-top: 5.385vw;
  }
}

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

    #circumcised-features .features-wrap .a-item,
    #circumcised-features .features-wrap .a-item.reverse {
        display: block;
        width: 90%;
        margin-left:0;
        margin:0 auto;
      }
    
      #circumcised-features .features-wrap .a-item .left {
        width: 100%;
      }

    

  #circumcised-features .features-wrap .a-item+.a-item {
    margin-top: 9vw;
  }

  #circumcised-features .features-wrap .a-item .left .title {
    font-size: 3.4vw;
    padding-bottom: 4vw;
  }

  #circumcised-features .features-wrap .a-item .left .title::after {
    width: 4.5vw;
  }

  #circumcised-features .features-wrap .a-item .left .txt {
    margin-top: 3.077vw;
    font-size: 2vw;
  }

  #circumcised-features .features-wrap .bottom_txt {
    font-size: 2.2vw;
    text-align: left;
    width:90%;
    margin:0 auto;
    margin-top: 7vw;
  }

  #circumcised-features .features-wrap .a-item .left .img{
    height:52vw;
    width:100%;
    margin-top:3.5vw;
  }

  #circumcised-features .features-wrap .a-item .left .img img{
    height: 52vw;
    width: 100%;
    object-fit: cover;
    object-position: center;
  }
}

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

  #circumcised-features .features-wrap .a-item+.a-item {
    margin-top: 11.16vw;
  }

  #circumcised-features .features-wrap .a-item .left .title {
    font-size: 4.5vw;
    padding-bottom: 4.96vw;
  }

  #circumcised-features .features-wrap .a-item .left .title::after {
    width: 5.58vw;
  }

  #circumcised-features .features-wrap .a-item .left .txt {
    margin-top: 3.816vw;
    font-size: 4vw;
  }

  #circumcised-features .features-wrap .bottom_txt {
    font-size: 3.8vw;
    width: 90%;
    margin-top: 8.68vw;
  }

  #circumcised-features .features-wrap .a-item .left .img {
    height: 62vw;
    margin-top: 4.34vw;
  }

  #circumcised-features .features-wrap .a-item .left .img img {
    height: 62vw;
  }
}



/* faqアンカーエリア */

#faq-nav .anchor_btns{
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

#faq-nav .anchor_btn{
  width: 163px;
  height: 80px;
  color: #000;
  text-decoration: none;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  transition: 0.2s;
}

#faq-nav .anchor_btn__text{
  display: block;
  width: 100%;
  padding: 0 10px;
  box-sizing: border-box;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.3;
}

#faq-nav .anchor_btn:hover{
  background: #00a0aa;
  color: #fff;
}

#faq-nav .anchor_btn:hover .anchor_btn__text{
  color: #fff;
}

/* 現在地を最初から青にしたい場合 */
#faq-nav .anchor_btn.is_current{
  background: #00a0aa;
  border:1px solid #00a0aa;
  color: #fff;
}

#faq-nav .anchor_btn.is_current .anchor_btn__text{
  color: #fff;
}

@media screen and (max-width: 1300px){
  #faq-nav .anchor_btns{
    gap: 1.538vw;
  }

  #faq-nav .anchor_btn{
    width: 12.538vw;
    height: 6.154vw;
  }

  #faq-nav .anchor_btn__text{
    padding: 0 0.769vw;
    font-size: 1.231vw;
  }
}

@media screen and (max-width: 768px) {
  #faq-nav .anchor_btns {
    width: 100%;
    margin: 0 auto;
    gap: 1.2vw;
  }

  #faq-nav .anchor_btn {
    width: calc((100% - 4.8vw) / 4);
    height: 10.997vw;
  }

  #faq-nav .anchor_btn__text {
    padding: 0 0.5vw;
    font-size: 2.1vw;
  }
}

@media screen and (max-width: 480px) {
  #faq-nav .anchor_btns {
    margin: 0 auto;
    gap: 2vw;
  }

  #faq-nav .anchor_btn {
    width: calc((100% - 4vw) / 2);
    height: 15.495vw;
  }

  #faq-nav .anchor_btn__text {
    padding: 0 1vw;
    font-size: 3.6vw;
  }
}

.faq_bg{
  background-image:url(../img/about-info-back.jpg);
  background-size: 100% auto;
  background-repeat: repeat-y;
}

/* グランセンサー */

/* gs-features */


#gs-features .content,
#buck-features .content {
  width: 90%;
  margin: 0 auto;
}

#gs-features .feature-wrap,
#buck-features .feature-wrap {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
}

#gs-features .feature-wrap .a-feature.note,
#buck-features .feature-wrap .a-feature.note {
  grid-column: span 2;
  background: none;
  box-shadow: none;
  display: flex;
  padding: 0;
  padding-left: 15px;
}

#buck-features .feature-wrap .a-feature.note{
  grid-column: span 3;
  padding:0;
}

#gs-features .feature-wrap .a-feature.note p,
#buck-features .feature-wrap .a-feature.note p {
  display: block;
  margin-top: auto;
  font-size: 14px;
  line-height: 1.4;
  letter-spacing: 0.02em;
}

#buck-features .feature-wrap .a-feature.note p{
  margin:0;
}

#gs-features .feature-wrap .a-feature,
#buck-features .feature-wrap .a-feature {
  width: 100%;
  background: #fff;
  box-shadow: 1.5px 1.5px 3px rgba(0, 0, 0, 0.25);
  position: relative;
  padding: 20px 30px;
  padding-bottom: 25px;
  box-sizing: border-box;
  min-height: 372px;
}


#buck-features .feature-wrap .a-feature.note{
  min-height:0;
}


#gs-features .feature-wrap .a-feature .num,
#buck-features .feature-wrap .a-feature .num {
  font-weight: 600;
  font-size: 11px;
  letter-spacing: 0.08em;
  background-color: #fff;
  display: block;
  width: fit-content;
  margin: 0 auto;
  padding: 5px 13px;
  border-radius: 100px;
  margin-top: 25px;
  border:1px solid #00a0aa;
}

#gs-features .feature-wrap .a-feature .title,
#buck-features .feature-wrap .a-feature .title {
  margin-top: 15px;
  font-size: 22px;
  font-weight: 600;
  text-align: center;
}

#gs-features .feature-wrap .a-feature .title span,
#buck-features .feature-wrap .a-feature .title span{
  font-weight: 600;
}

#gs-features .feature-wrap .a-feature .txt,
#buck-features .feature-wrap .a-feature .txt {
  font-size: 16px;
  margin-top: 15px;
  line-height: 1.75;
}

#gs-features .feature-wrap .a-feature .badge,
#buck-features .feature-wrap .a-feature .badge {
  width: 90px;
  height: 90px;
  background-color: #00a0aa;
  border-radius: 50%;
  color: #fff;
  text-align: center;
  font-size: 17px;
  font-weight: 600;
  padding-top: 30px;
  position: absolute;
  top: -20px;
  left: -20px;
}

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

  #gs-features .feature-wrap,
  #buck-features .feature-wrap {
    gap: 2.308vw;
  }

  #gs-features .feature-wrap .a-feature.note,
  #buck-features .feature-wrap .a-feature.note {
    padding-left: 1.154vw;
  }

  #gs-features .feature-wrap .a-feature.note p,
  #buck-features .feature-wrap .a-feature.note p {
    font-size: 1.077vw;
  }

  #gs-features .feature-wrap .a-feature,
  #buck-features .feature-wrap .a-feature {
    box-shadow: 0.115vw 0.115vw 0.231vw rgba(0, 0, 0, 0.25);
    padding: 1.538vw 2.308vw;
    padding-bottom: 1.923vw;
    min-height: 28.615vw;
  }

  #gs-features .feature-wrap .a-feature .num,
  #buck-features .feature-wrap .a-feature .num {
    font-size: 0.846vw;
    padding: 0.45vw 1vw;
    margin-top: 1.923vw;
  }

  #gs-features .feature-wrap .a-feature .title,
  #buck-features .feature-wrap .a-feature .title {
    margin-top: 1.154vw;
    font-size: 1.692vw;
  }

  #gs-features .feature-wrap .a-feature .txt,
  #buck-features .feature-wrap .a-feature .txt {
    font-size: 1.231vw;
    margin-top: 1.154vw;
  }

  #gs-features .feature-wrap .a-feature .badge,
  #buck-features .feature-wrap .a-feature .badge {
    width: 6.923vw;
    height: 6.923vw;
    font-size: 1.308vw;
    padding-top: 2.3vw;
    top: -1.538vw;
    left: -1.538vw;
  }
}

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

  #gs-features .feature-wrap,
  #buck-features .feature-wrap {
    grid-template-columns: repeat(2, 1fr);
    gap: 3.546vw;
  }

  #gs-features .feature-wrap .a-feature.note,
  #buck-features .feature-wrap .a-feature.note {
    grid-column: span 2;
    padding-left: 1.773vw;
  }

  #gs-features .feature-wrap .a-feature.note p,
  #buck-features .feature-wrap .a-feature.note p {
    font-size: 1.7vw;
    margin-top: 0;
  }

  #gs-features .feature-wrap .a-feature,
  #buck-features .feature-wrap .a-feature {
    box-shadow: 0.177vw 0.177vw 0.355vw rgba(0, 0, 0, 0.25);
    padding: 2.362vw 3.546vw;
    padding-bottom: 2.954vw;
    min-height: 0;
  }

  #gs-features .feature-wrap .a-feature .num,
  #buck-features .feature-wrap .a-feature .num {
    font-size: 1.3vw;
    padding: 0.7vw 1.536vw;
    margin-top: 2.954vw;
  }

  #gs-features .feature-wrap .a-feature .title,
  #buck-features .feature-wrap .a-feature .title {
    margin-top: 1.773vw;
    font-size: 2.6vw;
  }

  #gs-features .feature-wrap .a-feature .txt,
  #buck-features .feature-wrap .a-feature .txt {
    font-size: 1.891vw;
    margin-top: 1.773vw;
  }

  #gs-features .feature-wrap .a-feature .badge,
  #buck-features .feature-wrap .a-feature .badge {
    width: 10.637vw;
    height: 10.637vw;
    font-size: 2.01vw;
    padding-top: 3.5vw;
    top: -2.362vw;
    left: -2.362vw;
  }
}

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

  #gs-features .feature-wrap,
  #buck-features .feature-wrap {
    grid-template-columns: repeat(2, 1fr);
    gap: 4.774vw;
  }

  #gs-features .feature-wrap .a-feature.note,
  #buck-features .feature-wrap .a-feature.note {
    grid-column: span 2;
    padding-left: 2.387vw;
  }

  #gs-features .feature-wrap .a-feature.note p,
  #buck-features .feature-wrap .a-feature.note p {
    font-size:3vw;
    margin-top: 0;
  }

  #gs-features .feature-wrap .a-feature,
  #buck-features .feature-wrap .a-feature {
    box-shadow: 0.238vw 0.238vw 0.478vw rgba(0, 0, 0, 0.25);
    padding:5vw 3vw;
    padding-bottom: 3.976vw;
  }


  #gs-features .feature-wrap .a-feature .num,
  #buck-features .feature-wrap .a-feature .num {
    font-size: 3vw;
    padding: 1vw 2.068vw;
    margin-top: 3.976vw;
  }

  #gs-features .feature-wrap .a-feature .title,
  #buck-features .feature-wrap .a-feature .title {
    margin-top: 2.386vw;
    font-size: 4vw;
    line-height: 1.6;
  }

  #gs-features .feature-wrap .a-feature .txt,
  #buck-features .feature-wrap .a-feature .txt {
    font-size: 3.6vw;
    margin-top: 2.386vw;
  }

  #gs-features .feature-wrap .a-feature .badge,
  #buck-features .feature-wrap .a-feature .badge {
    width: 14.319vw;
    height: 14.319vw;
    font-size: 3vw;
    padding-top:4.6vw;
    top: -3.179vw;
    left: -3.179vw;
  }
}
/* gransensor introduction */

#gs-intro .content{
  width:90%;
  margin:0 auto;
}
.intro-top .title,
.mid-title{
  text-align: center;
  font-size:33px;
  font-weight:600;
  line-height:1.6;
}

.intro-top .txt{
  text-align: center;
  font-size:18px;
  line-height:2.1;
  margin-top:40px;
}

#gs-intro .gs-intro-top{
  margin-bottom:65px;
}

#gs-intro .gs-flex{
  margin-top:60px;
}

#gs-intro .gs-flex .wrap{
  display:grid;
  grid-template-columns: repeat(4, 1fr);
  margin-top:30px;
  gap:20px;
}

#gs-intro .gs-flex .wrap .a-item{
  background-color:#fff;
  padding:20px 30px;
}

#gs-intro .gs-flex .wrap .a-item .img img{
  width:100%;
}

#gs-intro .gs-flex .wrap .a-item .title{
  margin-top:18px;
}

#gs-intro .gs-flex .wrap .a-item .detail_btn{
  display:block;
  width:fit-content;
  margin:0 auto;
  color:#000;
  font-size:16px;
  border-bottom:1px solid rgba(0,0,0,0.5);
  line-height:2;
  padding:0 5px;
  margin-top:15px;
  transition:0.3s;
}

#gs-intro .gs-flex .wrap .a-item .detail_btn:hover{
  color:#00a0aa;
  border-bottom:1px solid rgba(0, 160, 170, 0.5);
}

#gs-intro .gs_box-bottom.txt{
  margin-top:50px;
}

#gs-intro .gs_box-bottom.txt a{
  color:#000;
  transition:0.3s;
  padding:0 5px;
  line-height:2;
  border-bottom:1px solid rgba(0,0,0,0.5);
}

#gs-intro .gs_box-bottom.txt a:hover{
  color:#00a0aa;
}

#gs-intro .box_yellow + .box_yellow{
  margin-top:100px;
}

#gs-intro .box_yellow .btn-wrap{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
}


@media screen and (max-width: 1300px) {
.intro-top .title,
.mid-title {
    font-size: 2.538vw;
  }

    .intro-top .txt {
    font-size: 1.385vw;
    margin-top: 3.077vw;
  }

  #gs-intro .gs-intro-top {
    margin-bottom: 5vw;
  }

  #gs-intro .gs-flex {
    margin-top: 4.615vw;
  }

  #gs-intro .gs-flex .wrap {
    margin-top: 2.308vw;
    gap: 1.538vw;
  }

  #gs-intro .gs-flex .wrap .a-item {
    padding: 1.538vw 2.308vw;
  }

  #gs-intro .box_yellow p.txt.center{
    text-align: left;
  }

  #gs-intro .box_yellow p.title{
    line-height:1.4;
  }

  #gs-intro .gs-flex .wrap .a-item .title {
    margin-top: 1.385vw;
  }

  #gs-intro .gs-flex .wrap .a-item .detail_btn {
    font-size: 1.231vw;
    padding: 0 0.385vw;
    margin-top: 1.154vw;
  }

  #gs-intro .gs_box-bottom.txt {
    margin-top: 3.846vw;
  }

  #gs-intro .gs_box-bottom.txt a {
    padding: 0 0.385vw;
  }

  #gs-intro .box_yellow+.box_yellow {
    margin-top: 7.692vw;
  }
}

@media screen and (max-width: 768px) {
  .intro-top .title,
  .mid-title {
    font-size: 3.96vw;
  }

    .intro-top .txt {
    font-size: 2.16vw;
    margin-top: 4.8vw;
    text-align: left;
  }

  #gs-intro .gs-intro-top {
    margin-bottom: 7.8vw;
  }

  #gs-intro .gs-flex {
    margin-top: 7.2vw;
  }

  #gs-intro .gs-flex .wrap {
    grid-template-columns: repeat(2, 1fr);
    margin-top: 3.6vw;
    gap: 2.4vw;
  }

  #gs-intro .gs-flex .wrap .a-item {
    padding: 2.4vw 3.6vw;
  }

  #gs-intro .gs-flex .wrap .a-item .title {
    margin-top: 2.16vw;
  }

  #gs-intro .gs-flex .wrap .a-item .detail_btn {
    font-size: 1.92vw;
    padding: 0 0.6vw;
    margin-top: 1.8vw;
  }

  #gs-intro .gs_box-bottom.txt {
    margin-top: 6vw;
  }

  #gs-intro .gs_box-bottom.txt a {
    padding: 0 0.6vw;
  }

  #gs-intro .box_yellow+.box_yellow {
    margin-top: 12vw;
  }

  #gs-intro .box_yellow .btn-wrap {
    grid-template-columns: repeat(2, 1fr);
    gap: 2.4vw;
  }
}

@media screen and (max-width: 480px) {
  .intro-top .title,
  .mid-title {
    font-size: 4.5vw;
  }

    .intro-top .txt {
    font-size: 4vw;
    margin-top: 8vw;
  }

  #gs-intro .gs-intro-top {
    margin-bottom: 13vw;
  }

  #gs-intro .gs-flex .wrap {
    grid-template-columns: repeat(2, 1fr);
    margin-top: 6vw;
    gap: 2vw;
    margin-top: 12vw;
  }

  #gs-intro .gs-flex .wrap .a-item {
    padding: 4vw;
  }

  #gs-intro .gs-flex .wrap .a-item .title {
    margin-top: 3.6vw;
    font-size:4.5vw;
  }

    #gs-intro .gs-flex .wrap .a-item .txt{
      font-size:3.6vw;
    }

  #gs-intro .gs-flex .wrap .a-item .detail_btn {
    font-size: 2.8vw;
    padding: 0 1vw;
    margin-top: 3vw;
  }

  #gs-intro .gs_box-bottom.txt {
    margin-top: 10vw;
  }

  #gs-intro .gs_box-bottom.txt a {
    padding: 0 1vw;
  }

    #gs-intro .box_yellow{
      padding:10vw 7vw;
    }

  #gs-intro .box_yellow+.box_yellow {
    margin-top: 20vw;
  }

  #gs-intro .box_yellow .btn-wrap {
    grid-template-columns: 1fr;
    gap: 2vw;
    margin-top:5vw;
  }
}

/* buck-intro */

.intro-wrap-content .wrap .a-item {
  margin-top: 50px;
}

.intro-wrap-content .wrap .a-item .intro-img {
  float: right;
  width: 48%;
  margin-left: 4%;
  margin-bottom: 10px;
  display: block;
}

.intro-wrap-content .wrap .a-item.reverse .intro-img {
  float: left;
  margin-left: 0;
  margin-right: 4%;
}

.intro-wrap-content .wrap .a-item .txt {
  font-size: 18px;
  line-height: 2.1;
}

.intro-wrap-content .wrap .a-item::after {
  content: "";
  display: block;
  clear: both;
}

@media screen and (max-width: 1300px) {
  .intro-wrap-content .wrap .a-item {
    margin-top: 3.846vw;
  }

  .intro-wrap-content .wrap .a-item .intro-img {
    margin-bottom: 0.769vw;
  }

  .intro-wrap-content .wrap .a-item .txt {
    font-size: 1.385vw;
  }
}

@media screen and (max-width: 768px) {
  .intro-wrap-content .wrap .a-item {
    margin-top: 6vw;
  }

  .intro-wrap-content .wrap .a-item .intro-img {
    width: 48%;
    margin-left: 4%;
    margin-bottom: 1.2vw;
  }

  .intro-wrap-content .wrap .a-item.reverse .intro-img {
    margin-right: 4%;
  }

  .intro-wrap-content .wrap .a-item .txt {
    font-size: 2.16vw;
  }
}

@media screen and (max-width: 480px) {
  .intro-wrap-content .wrap .a-item {
    margin-top: 8.889vw;
  }

  .intro-wrap-content .wrap .a-item .intro-img {
    width: 100%;
    float: none;
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 4vw;
  }

  .intro-wrap-content .wrap .a-item.reverse .intro-img {
    float: none;
    margin-right: 0;
  }

  .intro-wrap-content .wrap .a-item .txt {
    font-size: 4vw;
  }

    #buck-intro .intro-top .title,
    #buck-intro .mid-title{
      font-size:5vw;
    }
}
/* mechanism */

#gs-mechanism{
  background: #fafaf5;
}

#gs-mechanism .mechanism-wrap,
#buck-mechanism .mechanism-wrap {
  display: flex;
  gap: 30px;
  position: relative;
}

#gs-mechanism .mechanism-wrap .a-item.wh,
#buck-mechanism .mechanism-wrap .a-item.wh {
  background: #fff;
}

#gs-mechanism .mechanism-wrap .arrow,
#buck-mechanism .mechanism-wrap .arrow {
  position: absolute;
  rotate: -90deg;
  left: 50%;
  top: 35%;
  transform: translate(-50%, -50%);
  width: 67px;
  height: auto;
  z-index: 10;
}

#gs-mechanism .mechanism-btm,
#buck-mechanism .mechanism-btm {
  margin-top: 50px;
}

#gs-mechanism .mechanism-btm .txt,
#buck-mechanism .mechanism-btm .txt {
  font-size: 18px;
  line-height: 1.8;
  text-align: center;
}

#gs-mechanism .mechanism-btm .txt.mid,
#buck-mechanism .mechanism-btm .txt.mid {
  font-size: 25px;
}

#gs-mechanism .mechanism-btm .txt.big,
#buck-mechanism .mechanism-btm .txt.big {
  font-size: 30px;
  font-weight: 600;
}

#gs-mechanism .mechanism-btm .txt.wh,
#buck-mechanism .mechanism-btm .txt.wh {
  color: #fff;
}

#gs-mechanism .mechanism-btm .txt.bl_mark,
#buck-mechanism .mechanism-btm .txt.bl_mark {
  padding: 15px 30px;
  background-color: #00a0aa;
  display: block;
  width: fit-content;
  margin: 0 auto;
  line-height: 1;
}

#gs-mechanism .mechanism-btm .txt.txt01,
#gs-mechanism .mechanism-btm .txt.txt05,
#buck-mechanism .mechanism-btm .txt.txt01,
#buck-mechanism .mechanism-btm .txt.txt05 {
  margin: 50px auto;
}

#gs-mechanism .mechanism-btm .txt.txt03,
#buck-mechanism .mechanism-btm .txt.txt03 {
  margin-top: 10px;
}

#gs-mechanism .mechanism-btm .txt.txt04,
#buck-mechanism .mechanism-btm .txt.txt04 {
  margin-top: 120px;
}

#gs-mechanism .mechanism-btm .txt.txt03+.txt03,
#buck-mechanism .mechanism-btm .txt.txt03+.txt03 {
  margin-top: 20px;
}

#gs-mechanism .mechanism-btm .box,
#buck-mechanism .mechanism-btm .box {
  background: #fff;
  padding: 30px;
  width: 81%;
  margin: 0 auto;
  margin-top: 30px;
}

#buck-mechanism .mechanism-btm .box{
  background:#fafaf5;
  position:relative;
  margin-bottom:75px;
}

#buck-mechanism .mechanism-btm .box .arrow{
  position: absolute;
    left: 50%;
    transform: translateX(-50%);
    width: 67px;
    height: auto;
    z-index: 10;
    bottom:-39px;
}

#gs-mechanism .mechanism-btm .box .inner,
#buck-mechanism .mechanism-btm .box .inner {
  display: flex;
  align-items: center;
  gap: 10%;
}

#gs-mechanism .mechanism-btm .box .inner .left,
#buck-mechanism .mechanism-btm .box .inner .left {
  width: 60%;
}

#gs-mechanism .mechanism-btm .box .inner .right,
#buck-mechanism .mechanism-btm .box .inner .right {
  width: 30%;
}

#gs-mechanism .mechanism-btm .box .inner .left .title,
#buck-mechanism .mechanism-btm .box .inner .left .title {
  font-size: 27px;
  font-weight: 600;
}

#gs-mechanism .mechanism-btm .box .inner .left .txt,
#buck-mechanism .mechanism-btm .box .inner .left .txt {
  text-align: left;
  margin-top: 20px;
}

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

  #gs-mechanism .mechanism-wrap,
  #buck-mechanism .mechanism-wrap {
    gap: 2.308vw;
  }

  #gs-mechanism .mechanism-wrap .arrow,
  #buck-mechanism .mechanism-wrap .arrow {
    width: 5.154vw;
  }

  #buck-mechanism .mechanism-btm .box .arrow {
    width: 5.154vw;
    bottom: -3vw;
  }

  #gs-mechanism .mechanism-btm,
  #buck-mechanism .mechanism-btm {
    margin-top: 3.846vw;
  }

  #gs-mechanism .mechanism-btm .txt,
  #buck-mechanism .mechanism-btm .txt {
    font-size: 1.385vw;
  }

  #gs-mechanism .mechanism-btm .txt.mid,
  #buck-mechanism .mechanism-btm .txt.mid {
    font-size: 1.923vw;
  }

  #gs-mechanism .mechanism-btm .txt.big,
  #buck-mechanism .mechanism-btm .txt.big {
    font-size: 2.308vw;
  }

  #gs-mechanism .mechanism-btm .txt.bl_mark,
  #buck-mechanism .mechanism-btm .txt.bl_mark {
    padding: 1.154vw 2.308vw;
  }

  #gs-mechanism .mechanism-btm .txt.txt01,
  #gs-mechanism .mechanism-btm .txt.txt05,
  #buck-mechanism .mechanism-btm .txt.txt01,
  #buck-mechanism .mechanism-btm .txt.txt05 {
    margin: 3.846vw auto;
  }

  #gs-mechanism .mechanism-btm .txt.txt03,
  #buck-mechanism .mechanism-btm .txt.txt03 {
    margin-top: 0.769vw;
  }

  #gs-mechanism .mechanism-btm .txt.txt04,
  #buck-mechanism .mechanism-btm .txt.txt04 {
    margin-top: 9.231vw;
  }

  #gs-mechanism .mechanism-btm .txt.txt03+.txt03,
  #buck-mechanism .mechanism-btm .txt.txt03+.txt03 {
    margin-top: 1.538vw;
  }

  #gs-mechanism .mechanism-btm .box,
  #buck-mechanism .mechanism-btm .box {
    padding: 2.308vw;
    margin-top: 2.308vw;
  }

  #gs-mechanism .mechanism-btm .box .inner .left .title,
  #buck-mechanism .mechanism-btm .box .inner .left .title {
    font-size: 2.077vw;
  }

  #gs-mechanism .mechanism-btm .box .inner .left .txt,
  #buck-mechanism .mechanism-btm .box .inner .left .txt {
    margin-top: 1.538vw;
  }
}

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

  #gs-mechanism .mechanism-wrap,
  #buck-mechanism .mechanism-wrap {
    flex-direction: column;
    gap: 3.369vw;
    width: 77%;
    margin: 0 auto;
  }

  #gs-mechanism .mechanism-wrap .arrow,
  #buck-mechanism .mechanism-wrap .arrow {
    rotate: 0deg;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 8vw;
    display: block;
    margin: 0 auto;
  }

  #buck-mechanism .mechanism-btm .box .arrow {
    width: 8vw;
    bottom: -5vw;
  }

  #gs-mechanism .mechanism-btm,
  #buck-mechanism .mechanism-btm {
    margin-top: 5.624vw;
  }

  #gs-mechanism .mechanism-btm .txt,
  #buck-mechanism .mechanism-btm .txt {
    font-size: 2.16vw;
    text-align: left;
  }

  #gs-mechanism .mechanism-btm .txt.mid,
  #buck-mechanism .mechanism-btm .txt.mid {
    font-size: 2.7vw;
    text-align: center;
  }

  #gs-mechanism .mechanism-btm .txt.mid.sp-left,
  #buck-mechanism .mechanism-btm .txt.mid.sp-left {
    text-align: left;
  }

  #gs-mechanism .mechanism-btm .txt.big,
  #buck-mechanism .mechanism-btm .txt.big {
    font-size: 3vw;
  }

  #gs-mechanism .mechanism-btm .txt.bl_mark,
  #buck-mechanism .mechanism-btm .txt.bl_mark {
    padding: 1.8vw 3.6vw;
  }

  #gs-mechanism .mechanism-btm .txt.txt01,
  #gs-mechanism .mechanism-btm .txt.txt05,
  #buck-mechanism .mechanism-btm .txt.txt01,
  #buck-mechanism .mechanism-btm .txt.txt05 {
    margin: 5.624vw auto;
  }

  #gs-mechanism .mechanism-btm .txt.txt03,
  #buck-mechanism .mechanism-btm .txt.txt03 {
    margin-top: 1.124vw;
  }

  #gs-mechanism .mechanism-btm .txt.txt04,
  #buck-mechanism .mechanism-btm .txt.txt04 {
    margin-top: 13.497vw;
    text-align: left;
  }

  #gs-mechanism .mechanism-btm .txt.txt03+.txt03,
  #buck-mechanism .mechanism-btm .txt.txt03+.txt03 {
    margin-top: 2.249vw;
  }

  #gs-mechanism .mechanism-btm .box,
  #buck-mechanism .mechanism-btm .box {
    width: 95%;
    padding: 3.369vw;
    margin-top: 3.369vw;
  }

  #gs-mechanism .mechanism-btm .box .inner,
  #buck-mechanism .mechanism-btm .box .inner {
    gap: 11.239vw;
  }

  #gs-mechanism .mechanism-btm .box .inner .left .title,
  #buck-mechanism .mechanism-btm .box .inner .left .title {
    font-size: 3.239vw;
  }

  #gs-mechanism .mechanism-btm .box .inner .left .txt,
  #buck-mechanism .mechanism-btm .box .inner .left .txt {
    margin-top: 2.249vw;
  }
}

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

  #gs-mechanism .mechanism-wrap,
  #buck-mechanism .mechanism-wrap {
    flex-direction: column;
    gap: 4.982vw;
    width: 100%;
  }

  #gs-mechanism .mechanism-wrap .arrow,
  #buck-mechanism .mechanism-wrap .arrow {
    rotate: 0deg;
    width: 12vw;
  }

  #buck-mechanism .mechanism-btm .box .arrow {
    width: 12vw;
    bottom: -9vw;
  }

  #gs-mechanism .mechanism-btm,
  #buck-mechanism .mechanism-btm {
    margin-top: 8.32vw;
  }

  #gs-mechanism .mechanism-btm .txt,
  #buck-mechanism .mechanism-btm .txt {
    font-size: 4vw;
  }

  #gs-mechanism .mechanism-btm .txt.mid,
  #buck-mechanism .mechanism-btm .txt.mid {
    font-size: 4.2vw;
  }

  #gs-mechanism .mechanism-btm .txt.big,
  #buck-mechanism .mechanism-btm .txt.big {
    font-size: 4.1vw;
  }

  #gs-mechanism .mechanism-btm .txt.bl_mark,
  #buck-mechanism .mechanism-btm .txt.bl_mark {
    padding: 2vw 3vw;
  }

  #gs-mechanism .mechanism-btm .txt.txt01,
  #gs-mechanism .mechanism-btm .txt.txt05,
  #buck-mechanism .mechanism-btm .txt.txt01,
  #buck-mechanism .mechanism-btm .txt.txt05 {
    margin: 8.32vw auto;
  }

  #gs-mechanism .mechanism-btm .txt.txt03,
  #buck-mechanism .mechanism-btm .txt.txt03 {
    margin-top: 1.664vw;
  }

  #gs-mechanism .mechanism-btm .txt.txt04,
  #buck-mechanism .mechanism-btm .txt.txt04 {
    margin-top: 19.955vw;
  }

  #gs-mechanism .mechanism-btm .txt.txt03+.txt03,
  #buck-mechanism .mechanism-btm .txt.txt03+.txt03 {
    margin-top: 3.329vw;
  }

  #gs-mechanism .mechanism-btm .box,
  #buck-mechanism .mechanism-btm .box {
    width: 95%;
    padding: 7vw 5vw;
    margin-top: 4.982vw;
  }

  #gs-mechanism .mechanism-btm .box .inner,
  #buck-mechanism .mechanism-btm .box .inner {
    flex-direction: column;
    gap: 5vw;
  }

  #gs-mechanism .mechanism-btm .box .inner .left,
  #buck-mechanism .mechanism-btm .box .inner .left {
    width: 100%;
  }

  #gs-mechanism .mechanism-btm .box .inner .right,
  #buck-mechanism .mechanism-btm .box .inner .right {
    width: 60%;
  }

  #gs-mechanism .mechanism-btm .box .inner .left .title,
  #buck-mechanism .mechanism-btm .box .inner .left .title {
    font-size: 4.5vw;
  }

  #gs-mechanism .mechanism-btm .box .inner .left .txt,
  #buck-mechanism .mechanism-btm .box .inner .left .txt {
    margin-top: 3.329vw;
  }
}

/* buck-mechanism */

.mechanism-wrap02{
  display:flex;
  gap:4%;
  align-items: center;
  margin-bottom:50px;
}

.mechanism-wrap02 .left,
.mechanism-wrap02 .right{
  width:48%;
}

.mechanism-wrap02 .left .title{
  font-size:27px;
  font-weight:600;
  line-height:1.6;
  text-align: center;
}

.mechanism-wrap02 .left .txt{
  font-size:16px;
  line-height:2.2;
  margin-top:30px;
}

#buck-mechanism .mechanism-btm .txt.al-left{
  text-align: left;
}

@media screen and (max-width: 1300px) {
  .mechanism-wrap02 {
    gap: 3.077vw;
    margin-bottom: 3.846vw;
  }

  .mechanism-wrap02 .left .title {
    font-size: 2.077vw;
  }

  .mechanism-wrap02 .left .txt {
    font-size: 1.231vw;
    margin-top: 2.308vw;
  }
}

@media screen and (max-width: 768px) {
  .mechanism-wrap02 {
    flex-direction: column-reverse;
    gap: 4.8vw;
    margin-bottom: 6vw;
  }

  .mechanism-wrap02 .left {
    width: 100%;
  }

  .mechanism-wrap02 .right {
    width: 70%;
    margin: 0 auto;
  }

  .mechanism-wrap02 .left .title {
    font-size: 3.239vw;
  }

  .mechanism-wrap02 .left .txt {
    font-size: 1.92vw;
    margin-top: 2.5vw;
  }
}

@media screen and (max-width: 480px) {
  .mechanism-wrap02 {
    flex-direction: column-reverse;
    gap: 7.111vw;
    margin-bottom: 8.889vw;
  }

  .mechanism-wrap02 .left {
    width: 100%;
  }

  .mechanism-wrap02 .right {
    width: 100%;
    margin: 0 auto;
  }

  .mechanism-wrap02 .left .title {
    font-size: 4.798vw;
  }

  .mechanism-wrap02 .left .txt {
    font-size: 2.844vw;
    margin-top: 5.333vw;
  }
}


/* gs-surgery */
#gs-surgery .gs-surgery-top .txt.txt01,
#gs-surgery .gs-surgery-btm .txt,
#buck-surgery .gs-surgery-top .txt.txt01,
#buck-surgery .gs-surgery-btm .txt {
  text-align: center;
  font-size: 20px;
  line-height: 2.1;
}

#gs-surgery .gs-surgery-top .txt.txt02,
#buck-surgery .gs-surgery-top .txt.txt02 {
  font-size: 25px;
  text-align: center;
  line-height: 1.75;
  margin-top: 45px;
}

#gs-surgery .gs_surgery-box,
#buck-surgery .gs_surgery-box {
  margin-top: 70px;
}

#gs-surgery .gs-surgery-btm,
#buck-surgery .gs-surgery-btm {
  margin-top: 50px;
  margin-bottom: 90px;
}

#gs-surgery .gs_surgery-box,
#buck-surgery .gs_surgery-box {
  background-color: #fafaf5;
  padding: 60px 75px 40px 75px;
  position: relative;
  margin-top: 70px;
}

#buck-surgery .gs_surgery-box {
  background-color: #fff;
}

#buck-surgery .gs_surgery-box .left .img{
  position:relative;
}


#gs-surgery .gs_surgery-box .title,
#buck-surgery .gs_surgery-box .title {
  font-size: 20px;
  background-color: #00a0aa;
  line-height: 1;
  color: #fff;
  position: absolute;
  left: 0;
  top: 0;
  padding: 10px 12px;
}

#gs-surgery .gs_surgery-box .left p,
#gs-surgery .gs_surgery-box .right p,
#buck-surgery .gs_surgery-box .left p,
#buck-surgery .gs_surgery-box .right p {
  text-align: center;
  font-size: 22px;
  margin-top: 25px;
}

#gs-surgery .gs_surgery-box .arrow,
#buck-surgery .gs_surgery-box .arrow {
  position: absolute;
  rotate: -90deg;
  left: 56%;
  top: 35%;
  transform: translate(-50%, -50%);
  width: 67px;
  height: auto;
  z-index: 10;
}

/* チャットセクションはcommon-content.cssへ */

#gs-surgery .example,
#buck-surgery .example {
  width: 65%;
  margin: 0 auto;
  margin-top: 50px;
}

#gs-surgery .example .img,
#buck-surgery .example .img {
  margin-top: 0;
}

#gs-surgery .example p:not(.a-blur-photo__lead, .text-area p),
#buck-surgery .example p:not(.a-blur-photo__lead, .text-area p) {
  font-size: 20px;
  font-weight: 500;
  text-align: center;
  margin: 30px auto;
}

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

  #gs-surgery .gs-surgery-top .txt.txt01,
  #gs-surgery .gs-surgery-btm .txt,
  #buck-surgery .gs-surgery-top .txt.txt01,
  #buck-surgery .gs-surgery-btm .txt {
    font-size: 1.538vw;
  }

  #gs-surgery .gs-surgery-top .txt.txt02,
  #buck-surgery .gs-surgery-top .txt.txt02 {
    font-size: 1.923vw;
    margin-top: 3.462vw;
  }

  #gs-surgery .gs_surgery-box,
  #buck-surgery .gs_surgery-box {
    margin-top: 5.385vw;
    padding: 4.615vw 5.769vw 3.077vw 5.769vw;
  }

  #gs-surgery .gs-surgery-top .title,
  #buck-surgery .gs-surgery-top .title {
    font-size: 1.538vw;
  }

  #gs-surgery .gs_surgery-box .title,
  #buck-surgery .gs_surgery-box .title {
    font-size: 1.538vw;
  }

  #gs-surgery .gs_surgery-box .left p,
  #gs-surgery .gs_surgery-box .right p,
  #buck-surgery .gs_surgery-box .left p,
  #buck-surgery .gs_surgery-box .right p {
    font-size: 1.692vw;
    margin-top: 1.923vw;
  }

  #gs-surgery .gs-surgery-btm,
  #buck-surgery .gs-surgery-btm {
    margin-top: 3.846vw;
    margin-bottom: 6.923vw;
  }

  #gs-surgery .example,
  #buck-surgery .example {
    margin-top: 3.846vw;
  }

  #gs-surgery .example p:not(.a-blur-photo__lead, .text-area p),
  #buck-surgery .example p:not(.a-blur-photo__lead, .text-area p) {
    font-size: 1.538vw;
    margin: 2.308vw auto;
  }

  #gs-surgery .gs_surgery-box .arrow,
  #buck-surgery .gs_surgery-box .arrow {
    width: 5.154vw;
  }
}

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

  #gs-surgery .gs-surgery-top .txt.txt01,
  #gs-surgery .gs-surgery-btm .txt,
  #buck-surgery .gs-surgery-top .txt.txt01,
  #buck-surgery .gs-surgery-btm .txt {
    font-size: 2.4vw;
    text-align: left;
  }

  #gs-surgery .gs-surgery-top .txt.txt02,
  #buck-surgery .gs-surgery-top .txt.txt02 {
    font-size: 3vw;
    margin-top: 5.4vw;
  }

  #gs-surgery .gs_surgery-box .title,
  #buck-surgery .gs_surgery-box .title {
    font-size: 3vw;
  }

  #gs-surgery .gs_surgery-box .left p,
  #gs-surgery .gs_surgery-box .right p,
  #buck-surgery .gs_surgery-box .left p,
  #buck-surgery .gs_surgery-box .right p {
    font-size: 2.4vw;
    margin-top: 3vw;
  }

  #gs-surgery .gs_surgery-box,
  #buck-surgery .gs_surgery-box {
    margin-top: 8.4vw;
    flex-direction: column;
    gap: 15vw;
    padding: 7.2vw 9vw 4.8vw 9vw;
    overflow:scroll;
  }

  #gs-surgery .gs_surgery-box .left,
  #buck-surgery .gs_surgery-box .left{
    min-width:800px;
  }

  #gs-surgery .gs_surgery-box .right,
  #buck-surgery .gs_surgery-box .right {
    width: 55%;
  }

  #gs-surgery .gs-surgery-top .title,
  #buck-surgery .gs-surgery-top .title {
    font-size: 2.4vw;
  }

  #gs-surgery .gs-surgery-btm,
  #buck-surgery .gs-surgery-btm {
    margin-top: 6vw;
    margin-bottom: 10.8vw;
  }

  #gs-surgery .example,
  #buck-surgery .example {
    margin-top: 6vw;
  }

  #gs-surgery .example p:not(.a-blur-photo__lead, .text-area p),
  #buck-surgery .example p:not(.a-blur-photo__lead, .text-area p) {
    font-size: 2.4vw;
    margin: 3.6vw auto;
    line-height: 1.6;
  }

  #gs-surgery .gs_surgery-box .arrow,
  #buck-surgery .gs_surgery-box .arrow {
    rotate: 0deg;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 8vw;
    display: block;
    margin: 0 auto;
  }
}

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

  #gs-surgery .gs-surgery-top .txt.txt01,
  #gs-surgery .gs-surgery-btm .txt,
  #buck-surgery .gs-surgery-top .txt.txt01,
  #buck-surgery .gs-surgery-btm .txt {
    font-size: 4vw;
  }

  #gs-surgery .gs-surgery-top .txt.txt02,
  #buck-surgery .gs-surgery-top .txt.txt02 {
    font-size: 4vw;
    margin-top: 8vw;
  }

  #gs-surgery .gs_surgery-box,
  #buck-surgery .gs_surgery-box {
    margin-top: 12.444vw;
    padding: 10.667vw 13.333vw 7.111vw 13.333vw;
  }


  #gs-surgery .gs-surgery-top .title,
  #buck-surgery .gs-surgery-top .title {
    font-size: 3.5vw;
  }

  #gs-surgery .gs_surgery-box .left,
  #buck-surgery .gs_surgery-box .left{
    min-width:600px;
  }

  #gs-surgery .gs-surgery-btm,
  #buck-surgery .gs-surgery-btm {
    margin-top: 8.889vw;
    margin-bottom: 16vw;
  }

  #gs-surgery .gs_surgery-box .left,
  #gs-surgery .gs_surgery-box .right,
  #buck-surgery .gs_surgery-box .left,
  #buck-surgery .gs_surgery-box .right {
    width: 100%;
  }

  #gs-surgery .gs_surgery-box .right,
  #buck-surgery .gs_surgery-box .right {
    width: 75%;
  }

  #gs-surgery .example,
  #buck-surgery .example {
    margin-top: 8.889vw;
    width: 95%;
  }

  #gs-surgery .example p:not(.a-blur-photo__lead, .text-area p),
  #buck-surgery .example p:not(.a-blur-photo__lead, .text-area p) {
    font-size: 4.2vw;
    margin: 5.333vw auto;
  }

  #gs-surgery .gs_surgery-box .arrow,
  #buck-surgery .gs_surgery-box .arrow {
    rotate: 0deg;
    width: 12vw;
  }
}

#gs-surgery .gs-surgery02 .title,
#buck-surgery .gs-surgery02 .title {
  font-size: 30px;
  padding-left: 15px;
  position: relative;
}

#gs-surgery .gs-surgery02 .title::before,
#buck-surgery .gs-surgery02 .title::before {
  content: "";
  width: 5px;
  height: 40px;
  background-color: #00a0aa;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}

#gs-surgery .gs-surgery02 .sub_ttl,
#buck-surgery .gs-surgery02 .sub_ttl {
  font-size: 18px;
  margin-top: 25px;
}

#gs-surgery .gs-surgery02 .inner,
#buck-surgery .gs-surgery02 .inner {
  margin-top: 50px;
  display: flex;
  gap: 3%;
  position: relative;
}

#gs-surgery .gs-surgery02 .inner .left,
#gs-surgery .gs-surgery02 .inner .right,
#buck-surgery .gs-surgery02 .inner .left,
#buck-surgery .gs-surgery02 .inner .right {
  width: 48.5%;
  background: #fafaf5;
}

#buck-surgery .gs-surgery02 .inner .left,
#buck-surgery .gs-surgery02 .inner .right{
  background:#fff;
}

#gs-surgery .gs-surgery02 .inner .arrow,
#buck-surgery .gs-surgery02 .inner .arrow {
  position: absolute;
  rotate: -90deg;
  left: 50%;
  top: 35%;
  transform: translate(-50%, -50%);
  width: 67px;
  height: auto;
  z-index: 10;
}

#gs-surgery .gs-surgery02 .gs_surgery02-btm,
#buck-surgery .gs-surgery02 .gs_surgery02-btm {
  margin-top: 50px;
}

#gs-surgery .gs-surgery02 .gs_surgery02-btm .title02,
#buck-surgery .gs-surgery02 .gs_surgery02-btm .title02 {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 20px;
  font-weight: 500;
  line-height: 1;
}

#gs-surgery .gs-surgery02 .gs_surgery02-btm .title02 .q_icon,
#buck-surgery .gs-surgery02 .gs_surgery02-btm .title02 .q_icon {
  width: 40px;
  height: auto;
}

#gs-surgery .gs-surgery02 .gs_surgery02-btm .txt,
#buck-surgery .gs-surgery02 .gs_surgery02-btm .txt {
  font-size: 18px;
  line-height: 2.2;
  margin-top: 20px;
}

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

  #gs-surgery .gs-surgery02 .title,
  #buck-surgery .gs-surgery02 .title {
    font-size: 2.308vw;
    padding-left: 1.154vw;
  }

  #gs-surgery .gs-surgery02 .title::before,
  #buck-surgery .gs-surgery02 .title::before {
    width: 0.385vw;
    height: 3.077vw;
  }

  #gs-surgery .gs-surgery02 .sub_ttl,
  #buck-surgery .gs-surgery02 .sub_ttl {
    font-size: 1.385vw;
    margin-top: 1.923vw;
  }

  #gs-surgery .gs-surgery02 .inner,
  #buck-surgery .gs-surgery02 .inner {
    margin-top: 3.846vw;
  }

  #gs-surgery .gs-surgery02 .inner .arrow,
  #buck-surgery .gs-surgery02 .inner .arrow {
    width: 5.154vw;
  }

  #gs-surgery .gs-surgery02 .gs_surgery02-btm,
  #buck-surgery .gs-surgery02 .gs_surgery02-btm {
    margin-top: 3.846vw;
  }

  #gs-surgery .gs-surgery02 .gs_surgery02-btm .title02,
  #buck-surgery .gs-surgery02 .gs_surgery02-btm .title02 {
    gap: 0.769vw;
    font-size: 1.538vw;
  }

  #gs-surgery .gs-surgery02 .gs_surgery02-btm .title02 .q_icon,
  #buck-surgery .gs-surgery02 .gs_surgery02-btm .title02 .q_icon {
    width: 3.077vw;
  }

  #gs-surgery .gs-surgery02 .gs_surgery02-btm .txt,
  #buck-surgery .gs-surgery02 .gs_surgery02-btm .txt {
    font-size: 1.385vw;
    margin-top: 1.538vw;
  }
}

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

  #gs-surgery .gs-surgery02 .title,
  #buck-surgery .gs-surgery02 .title {
    font-size: 3vw;
    padding-left: 1.8vw;
  }

  #gs-surgery .gs-surgery02 .title::before,
  #buck-surgery .gs-surgery02 .title::before {
    width: 0.6vw;
    height: 4.8vw;
  }

  #gs-surgery .gs-surgery02 .sub_ttl,
  #buck-surgery .gs-surgery02 .sub_ttl {
    font-size: 2.16vw;
    margin-top: 3vw;
  }

  #gs-surgery .gs-surgery02 .inner,
  #buck-surgery .gs-surgery02 .inner {
    margin-top: 6vw;
    display: block;
    width: 100%;
  }

  #gs-surgery .gs-surgery02 .inner .left,
  #gs-surgery .gs-surgery02 .inner .right,
  #buck-surgery .gs-surgery02 .inner .left,
  #buck-surgery .gs-surgery02 .inner .right {
    width: 80%;
    margin: 0 auto;
  }

  #gs-surgery .gs-surgery02 .inner .right,
  #buck-surgery .gs-surgery02 .inner .right {
    margin-top: 6vw;
  }

  #gs-surgery .gs-surgery02 .inner .arrow,
  #buck-surgery .gs-surgery02 .inner .arrow {
    display: block;
    width: 8.04vw;
    margin: 4vw auto;
    rotate: 0deg;
    top: 47%;
  }

  #gs-surgery .gs-surgery02 .gs_surgery02-btm,
  #buck-surgery .gs-surgery02 .gs_surgery02-btm {
    margin-top: 6vw;
  }

  #gs-surgery .gs-surgery02 .gs_surgery02-btm .title02,
  #buck-surgery .gs-surgery02 .gs_surgery02-btm .title02 {
    gap: 1.2vw;
    font-size: 2.4vw;
  }

  #gs-surgery .gs-surgery02 .gs_surgery02-btm .title02 .q_icon,
  #buck-surgery .gs-surgery02 .gs_surgery02-btm .title02 .q_icon {
    width: 4.8vw;
  }

  #gs-surgery .gs-surgery02 .gs_surgery02-btm .txt,
  #buck-surgery .gs-surgery02 .gs_surgery02-btm .txt {
    font-size: 2.16vw;
    margin-top: 2.4vw;
  }
}

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

  #gs-surgery .gs-surgery02 .title,
  #buck-surgery .gs-surgery02 .title {
    font-size: 4.5vw;
    padding-left: 2.667vw;
    letter-spacing:0.01em;
  }

#buck-surgery .gs-surgery02 .title{
  line-height:1.4;
}

  #gs-surgery .gs-surgery02 .title::before,
  #buck-surgery .gs-surgery02 .title::before {
    width: 0.889vw;
    height: 5vw;
  }

  #buck-surgery .gs-surgery02 .title::before {
    transform: none;
    top: 0.3vw;
  }

  #gs-surgery .gs-surgery02 .sub_ttl,
  #buck-surgery .gs-surgery02 .sub_ttl {
    font-size: 4vw;
    margin-top: 4.444vw;
    line-height:1.8;
  }

  #gs-surgery .gs-surgery02 .inner,
  #buck-surgery .gs-surgery02 .inner {
    margin-top: 8.889vw;
    display: block;
    width: 100%;
  }

  #gs-surgery .gs-surgery02 .inner .left,
  #gs-surgery .gs-surgery02 .inner .right,
  #buck-surgery .gs-surgery02 .inner .left,
  #buck-surgery .gs-surgery02 .inner .right {
    width: 100%;
  }

  #gs-surgery .gs-surgery02 .inner .right,
  #buck-surgery .gs-surgery02 .inner .right {
    margin-top: 8.889vw;
  }

  #gs-surgery .gs-surgery02 .inner .arrow,
  #buck-surgery .gs-surgery02 .inner .arrow {
    display: block;
    width: 11.911vw;
    margin: 5.926vw auto;
    rotate: 0deg;
    top: 46%;
  }

  #gs-surgery .gs-surgery02 .gs_surgery02-btm,
  #buck-surgery .gs-surgery02 .gs_surgery02-btm {
    margin-top: 8.889vw;
  }

  #gs-surgery .gs-surgery02 .gs_surgery02-btm .title02,
  #buck-surgery .gs-surgery02 .gs_surgery02-btm .title02 {
    gap: 1.777vw;
    font-size: 4.2vw;
  }

  #gs-surgery .gs-surgery02 .gs_surgery02-btm .title02 .q_icon,
  #buck-surgery .gs-surgery02 .gs_surgery02-btm .title02 .q_icon {
    width: 7.111vw;
  }

  #gs-surgery .gs-surgery02 .gs_surgery02-btm .txt,
  #buck-surgery .gs-surgery02 .gs_surgery02-btm .txt {
    font-size: 4vw;
    margin-top: 3.555vw;
  line-height: 1.8;
  }
}
/* gs-list */

.box_yellow.gs-list{
  padding:90px;
}

.box_yellow.gs-list .txt{
  text-align: center;
  margin:30px 0;
}

.box_yellow.gs-list .txt.btm{
  margin-bottom:0;
}

.gs_compare_wrap {
  width: 100%;
  box-sizing: border-box;
}

.gs_compare_table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  background: #fff;
}

.gs_compare_table .col_left {
  width: 24.4%;
}

.gs_compare_table .col_mid,
.gs_compare_table .col_right {
  width: 37.7%;
}

.gs_compare_table th,
.gs_compare_table td {
  border: 1px solid rgba(0, 0, 0, 0.3);
  padding: 30px;
  font-size: 16px;
  line-height: 1.75;
  text-align: left;
  vertical-align: middle;
  box-sizing: border-box;
  background: #fff;
  letter-spacing:0em;
  font-weight:400;
}

.gs_compare_table th {
  background: #fff;
}

.gs_compare_table .head {
  background: #f5f5f5;
  text-align: center;
  padding: 20px;
}

.gs_compare_table .empty {
  background: #fafaf5;
  border-top:1px solid #fafaf5;
  border-left: 1px solid #fafaf5;
  padding: 0;
}

.gs_compare_table td.blue {
  background: #e6f5f5;
}

.gs_compare_table td.center {
  text-align: center;
}

.gs_compare_table tr.row_top th,
.gs_compare_table tr.row_top td {
  vertical-align: top;
}

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

  .box_yellow.gs-list {
      padding: 6.923vw;
    }

  .box_yellow.gs-list .txt {
    margin: 2.308vw 0;
  }
  
  .box_yellow.gs-list .txt.btm {
    margin-bottom: 0;
  }

  .gs_compare_table th,
  .gs_compare_table td {
    padding: 2.308vw;
    font-size: 1.231vw;
    border: 1px solid rgba(0, 0, 0, 0.3);
  }

  .gs_compare_table .head {
    padding: 1.538vw;
  }
}

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

  .box_yellow.gs-list {
      padding: 6.923vw;
    }

  .box_yellow.gs-list .title{
    line-height:1.4;
  }

  .box_yellow.gs-list .txt.center {
    text-align: left;
    margin: 2.7vw 0;
    }

  .box_yellow.gs-list .txt.btm {
    margin-bottom: 0;
  }
  
  .gs_compare_wrap {
    overflow-x: auto;
  }

  .gs_compare_table .col_left {
    width: 30%;
  }

  .gs_compare_table .col_mid,
  .gs_compare_table .col_right {
    width: 35%;
  }

  .gs_compare_table th,
  .gs_compare_table td {
    padding: 2.5vw 1.5vw;
    font-size: 2vw;
    line-height: 1.6;
    border: 1px solid rgba(0, 0, 0, 0.3);
  }

  .gs_compare_table .head {
    padding: 2vw;
  }
}

@media screen and (max-width: 480px) {
  .box_yellow.gs-list {
      padding: 10vw 6vw;
      width:100%;
    }

    .box_yellow.gs-list .txt {
      margin: 4vw 0;
    }

    .box_yellow.gs-list .txt.btm {
      margin-bottom: 0;
    }

    .gs_compare_wrap table{
      overflow-x:scroll;
      min-width:510px;
    }


  .gs_compare_table th,
  .gs_compare_table td {
    padding: 3.5vw;
    font-size: 3.4vw;
    line-height: 1.6;
    border: 1px solid rgba(0, 0, 0, 0.3);
  }

  .gs_compare_table .head {
    padding: 2.8vw;
  }
}

/* gs newtreatment01 */

.newtreatment-sec .top-txt {
  font-size: 18px;
  line-height: 1.8;
  text-align: center;
}


.newtreatment-sec .gs_nt01-wrap {
  margin-top: 50px;
}

.newtreatment-sec .gs_nt01-wrap .inner {
  display: flex;
  gap: 1.2%;
  justify-content: center;
}

.newtreatment-sec .gs_nt01-wrap .inner .a-item {
  width: 19%;
}


.newtreatment-sec .gs_nt01-wrap .inner .a-item .txt {
  text-align: center;
  font-size: 16px;
  line-height: 1.7;
  letter-spacing: 0.04em;
  margin-top: 15px;
}


.newtreatment-sec .gs_nt01-wrap .inner .a-item .img,
.newtreatment-sec .gs_nt01-wrap .inner .a-item .img img {
  border-radius: 50%;
}

.newtreatment-sec .gs_nt01-wrap .inner .a-item.item01 .img {
  border: 1px solid #00bec8;
}

.newtreatment-sec .gs_nt01-wrap .inner .a-item.item02 .img {
  border: 1px solid #00aabe;
}

.newtreatment-sec .gs_nt01-wrap .inner .a-item.item03 .img {
  border: 1px solid #008cb4;
}

.newtreatment-sec .gs_nt01-wrap .inner .a-item.item04 .img {
  border: 1px solid #0078aa;
}

.newtreatment-sec .gs_nt01-wrap .inner .a-item.item05 .img {
  border: 1px solid #0060a8;
}

.newtreatment-sec .gs_nt01-wrap .inner .a-item.item06 .img {
  border: 1px solid #0060a8;
}

.newtreatment-sec .box_yellow {
  padding: 60px 195px;
}

.newtreatment-sec .box_yellow .gs_nt01-img {
  margin-bottom: 30px;
}

.newtreatment-sec .box_yellow .gs_nt01-img img {
  width: 100%;
}


@media screen and (max-width: 1300px) {
  .newtreatment-sec .top-txt {
    font-size: 1.385vw;
  }

  .newtreatment-sec .gs_nt01-wrap {
    margin-top: 3.846vw;
  }

  .newtreatment-sec .gs_nt01-wrap .inner .a-item .txt {
    font-size: 1.231vw;
    margin-top: 1.154vw;
  }

  .newtreatment-sec .box_yellow {
    padding: 4.615vw 15vw;
  }

  .newtreatment-sec .box_yellow .gs_nt01-img {
    margin-bottom: 2.308vw;
  }
}

@media screen and (max-width: 768px) {
  .newtreatment-sec .top-txt {
    font-size: 2.16vw;
  }

  .newtreatment-sec .gs_nt01-wrap {
    margin-top: 6vw;
  }

  .newtreatment-sec .gs_nt01-wrap .inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 2vw 2vw;
  }

  .newtreatment-sec .gs_nt01-wrap .inner .a-item {
    width: 27%;
  }

  .newtreatment-sec .gs_nt01-wrap .inner .a-item .txt {
    font-size: 1.8vw;
    margin-top: 1.8vw;
  }

  .newtreatment-sec .gs_nt01-wrap .inner .item01 {
    order: 1;
  }

  .newtreatment-sec .gs_nt01-wrap .inner .item03 {
    order: 2;
  }

  .newtreatment-sec .gs_nt01-wrap .inner .item05 {
    order: 3;
  }

  .newtreatment-sec .gs_nt01-wrap .inner .item02 {
    order: 4;
  }

  .newtreatment-sec .gs_nt01-wrap .inner .item04 {
    order: 5;
  }

  .newtreatment-sec .box_yellow {
    padding: 7.2vw 10vw;
  }

  .newtreatment-sec .box_yellow .gs_nt01-img {
    margin-bottom: 3.6vw;
  }

  .newtreatment-sec .box_yellow p.txt.center {
    text-align: left;
  }
}

@media screen and (max-width: 480px) {
  .newtreatment-sec .top-txt {
    font-size: 4vw;
    text-align: left;
  }

  .newtreatment-sec .gs_nt01-wrap {
    margin-top: 8.889vw;
  }

  .newtreatment-sec .gs_nt01-wrap .inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 2.963vw 4%;
  }

  .newtreatment-sec .gs_nt01-wrap .inner .a-item {
    width: 46%;
  }

  .newtreatment-sec .gs_nt01-wrap .inner .a-item .txt {
    font-size: 3.6vw;
    margin-top: 2.667vw;
  }

.newtreatment-sec .gs_nt01-wrap .inner .item01 {
  order: 1;
}

.newtreatment-sec .gs_nt01-wrap .inner .item02 {
  order: 2;
}

.newtreatment-sec .gs_nt01-wrap .inner .item03 {
  order: 3;
}

.newtreatment-sec .gs_nt01-wrap .inner .item04 {
  order: 4;
}

.newtreatment-sec .gs_nt01-wrap .inner .item05 {
  order: 5;
}

.newtreatment-sec .gs_nt01-wrap .inner .item06 {
  order: 6;
}

  .newtreatment-sec .box_yellow {
    padding: 10.667vw 6vw;
  }

  .newtreatment-sec .box_yellow .gs_nt01-img {
    margin-bottom: 5.333vw;
  }
}

#potash-features .newtreatment-sec .top-txt .txt02,
#potash-features .newtreatment-sec .top-txt .txt02 span {
  font-weight: 600;
  font-size: 25px;
  margin-top: 40px;
  line-height: 1.8;
}

#potash-features .newtreatment-sec .gs_nt01-wrap .inner {
  display: flex;
  gap: 0.2%;
  justify-content: center;
}

#potash-features .newtreatment-sec .gs_nt01-wrap .inner .a-item {
  width: 16.5%;
}

#potash-features .newtreatment-sec .gs_nt01-wrap .inner .a-item .txt {
  font-size: 14px;
  white-space: nowrap;
}

#potash-features .newtreatment-sec .gs_nt01-wrap .inner .a-item .img {
  overflow: hidden;
}

#potash-features .newtreatment-sec .gs_nt01-wrap .inner .a-item .img {
  width: 95%;
  margin: 0 auto;
}

#potash-features .newtreatment-sec .btm-txt {
  text-align: center;
  margin-top: 60px;
  font-size: 14px;
  line-height: 2;
}

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

  #potash-features .newtreatment-sec .top-txt .txt02,
  #potash-features .newtreatment-sec .top-txt .txt02 span {
    font-size: 1.9vw;
    margin-top: 3.1vw;
  }

  #potash-features .newtreatment-sec .gs_nt01-wrap .inner .a-item {
    width: 16.5%;
  }

  #potash-features .newtreatment-sec .gs_nt01-wrap .inner .a-item .txt {
    font-size: 1.1vw;
  }

  #potash-features .newtreatment-sec .btm-txt {
    margin-top: 4.6vw;
    font-size: 1.1vw;
  }
}

@media screen and (max-width:768px){
    #potash-features .newtreatment-sec .gs_nt01-wrap .inner {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 2vw 2vw;
      }
    
    #potash-features .newtreatment-sec .gs_nt01-wrap .inner .a-item {
        width: 27%;
      }
    
      #potash-features .newtreatment-sec .gs_nt01-wrap .inner .a-item .txt {
        font-size: 1.8vw;
        margin-top: 1.8vw;
      }

      #potash-features .newtreatment-sec .top-txt .txt02,
      #potash-features .newtreatment-sec .top-txt .txt02 span{
        font-size:2.5vw;
        margin-top:4vw;
      }

      #potash-features .newtreatment-sec .btm-txt{
        font-size:1.9vw;
        text-align: left;
        margin-top: 7vw;
      }
    
         #potash-features .newtreatment-sec .gs_nt01-wrap .inner .item01 {
        order: 1;
      }
    
        #potash-features .newtreatment-sec .gs_nt01-wrap .inner .item02 {
        order: 2;
      }
    
        #potash-features .newtreatment-sec .gs_nt01-wrap .inner .item03 {
        order: 3;
      }
    
        #potash-features .newtreatment-sec .gs_nt01-wrap .inner .item04 {
        order: 4;
      }
    
      #potash-features .newtreatment-sec .gs_nt01-wrap .inner .item05 {
        order: 5;
      }

      #potash-features .newtreatment-sec .gs_nt01-wrap .inner .item06 {
        order: 6;
      }
}

@media screen and (max-width:480px) {
  #potash-features .newtreatment-sec .gs_nt01-wrap .inner {
    gap:2.963vw 4%
  }

  #potash-features .newtreatment-sec .gs_nt01-wrap .inner .a-item {
    width: 46%;
  }

  #potash-features .newtreatment-sec .gs_nt01-wrap .inner .a-item .txt {
    font-size: 3.4vw;
    margin-top: 2.6vw;
  }

  #potash-features .newtreatment-sec .gs_nt01-wrap .inner .a-item.item03 .txt{
    font-size:3vw;
  }

  #potash-features .newtreatment-sec .top-txt .txt02,
  #potash-features .newtreatment-sec .top-txt .txt02 span {
    font-size: 4.5vw;
    margin-top: 6vw;
  }

    #potash-features .newtreatment-sec .gs_nt01-wrap .inner .a-item .img{
      width:100%;
    }

  #potash-features .newtreatment-sec .btm-txt {
    font-size: 3vw;
    text-align: left;
    margin-top: 10vw;
  }
}




/* gs kodawari */

.kodawari-sec {
  background: #fafaf5;
}

.kodawari-sec .txt {
  font-size: 18px;
  line-height: 2.2;
}

.kodawari-sec .gs_nt02-top .txt {
  text-align: center;
}

.kodawari-sec .gs_nt02-box .inner {
  display: flex;
  gap: 4%;
  margin-top: 50px;
}

.kodawari-sec .gs_nt02-box .inner .a-item {
  background: #fff;
  padding: 30px;
  width: 48%;
}

.kodawari-sec .gs_nt02-box .inner .a-item .title {
  font-size: 25px;
  font-weight: 600;
  text-align: center;
  margin-top: 35px;
  line-height: 1;
}

.kodawari-sec .gs_nt02-box .inner .a-item .txt {
  font-size: 16px;
  margin-top: 25px;
  line-height: 1.87;
}

.kodawari-sec .gs_nt02-box .gs_nt02-btm .title {
  font-size: 20px;
  font-weight: 500;
  padding-left: 15px;
  position: relative;
  line-height: 1.4;
}

.kodawari-sec .gs_nt02-box .gs_nt02-btm .title::before {
  content: "";
  width: 6px;
  height: 22px;
  background-color: #00a0aa;
  position: absolute;
  left: 0;
  top: 4px;
}

.kodawari-sec .gs_nt02-box .gs_nt02-btm .txt {
  margin-top: 30px;
}

@media screen and (max-width: 1300px) {
  .kodawari-sec .txt {
    font-size: 1.385vw;
  }

  .kodawari-sec .gs_nt02-box .inner {
    margin-top: 3.846vw;
  }

  .kodawari-sec .gs_nt02-box .inner .a-item {
    padding: 2.308vw;
  }

  .kodawari-sec .gs_nt02-box .inner .a-item .title {
    font-size: 1.923vw;
    margin-top: 2.692vw;
  }

  .kodawari-sec .gs_nt02-box .inner .a-item .txt {
    font-size: 1.231vw;
    margin-top: 1.923vw;
  }

  .kodawari-sec .gs_nt02-box .gs_nt02-btm .title {
    font-size: 1.538vw;
    padding-left: 1.154vw;
  }

  .kodawari-sec .gs_nt02-box .gs_nt02-btm .title::before {
    width: 0.462vw;
    height: 1.692vw;
    top: 0.308vw;
  }

  .kodawari-sec .gs_nt02-box .gs_nt02-btm .txt {
    margin-top: 2.308vw;
  }
}

@media screen and (max-width: 768px) {
  .kodawari-sec .txt {
    font-size: 2.16vw;
  }

  .kodawari-sec .gs_nt02-box .inner {
    display: flex;
    gap: 2%;
    margin-top: 6vw;
  }

  .kodawari-sec .gs_nt02-box .inner .a-item {
    padding: 3.2vw;
    width: 49%;
  }

  .kodawari-sec .gs_nt02-box .inner .a-item .title {
    font-size: 2.8vw;
    margin-top: 4.2vw;
  }

  .kodawari-sec .gs_nt02-box .inner .a-item .txt {
    font-size: 1.92vw;
    margin-top: 3vw;
  }

  .kodawari-sec .gs_nt02-box .gs_nt02-btm .title {
    font-size: 2.4vw;
    padding-left: 1.8vw;
    line-height: 1.6;
  }

  .kodawari-sec .gs_nt02-box .gs_nt02-btm .title::before {
    width: 0.72vw;
    height: 2.64vw;
    top: 0.65vw;
  }

  .kodawari-sec .gs_nt02-box .gs_nt02-btm .txt {
    margin-top: 3.6vw;
  }
}

@media screen and (max-width: 480px) {
  .kodawari-sec .txt {
    font-size: 4vw;
    line-height: 1.6;
    text-align: left;
  }

  .kodawari-sec .gs_nt02-top .txt{
  text-align: left;
  }

  .kodawari-sec .gs_nt02-box .inner {
    display: block;
    margin-top: 8.889vw;
  }

  .kodawari-sec .gs_nt02-box .inner .a-item {
    padding: 5.333vw;
    width: 100%;
  }

  .kodawari-sec .gs_nt02-box .inner .a-item+.a-item {
    margin-top: 4vw;
  }

  .kodawari-sec .gs_nt02-box .inner .a-item .title {
    font-size: 4.5vw;
    margin-top: 6.222vw;
  }

  .kodawari-sec .gs_nt02-box .inner .a-item .txt {
    font-size: 4vw;
    margin-top: 4.444vw;
  }

  .kodawari-sec .gs_nt02-box .gs_nt02-btm .title {
    font-size: 4.2vw;
    padding-left: 2.667vw;
  }

  .kodawari-sec .gs_nt02-box .gs_nt02-btm .title::before {
    width: 1.067vw;
    height: 3.911vw;
    top: 1vw;
  }

  .kodawari-sec .gs_nt02-box .gs_nt02-btm .txt {
    margin-top: 5.333vw;
  }
}


/* 早漏 */



/* 早漏・治療法方 */


.brunch-content .head .icon{
  width:40px;
  margin:0 auto;
}

.brunch-content .head p{
  text-align: center;
  font-size:20px;
  line-height:1;
  margin-top:10px;
}

.brunch-content .brunch-img{
  margin-top:30px;
  margin-bottom:-3px;
}

@media screen and (max-width:1300px){
  .brunch-content .head .icon {
      width: 3.0777vw;
    }
}

@media screen and (max-width:768px) {
  .brunch-content .head .icon {
    width: 4vw;
  }


}

@media screen and (max-width:480px) {
  .brunch-content .head .icon {
    width: 7vw;
  }
}

/* 手術方法 */

#frenectomy-surgery .surgery-img{
  width:81.5%;
  margin:0 auto;
  padding:50px 145px;
  margin-top:50px;
}

#frenectomy-surgery .sample-img{
  margin: 0 auto;
  margin-top:80px;
  width:45.4%;
}

@media screen and (max-width: 1300px) {
  #frenectomy-surgery .surgery-img {
    padding: 3.846vw 11.154vw;
    margin-top: 3.846vw;
  }

  #frenectomy-surgery .sample-img {
    margin-top: 6.154vw;
  }
}

@media screen and (max-width: 768px) {
  #frenectomy-surgery .surgery-img {
    width: 90%;
    padding: 6vw 10vw;
    margin-top: 6vw;
  }

  #frenectomy-surgery .sample-img {
    width: 80%;
    margin-top: 9.6vw;
  }
}

@media screen and (max-width: 480px) {
  #frenectomy-surgery .surgery-img {
    width: 100%;
    padding: 8.889vw 6vw;
    margin-top: 8.889vw;
  }

  #frenectomy-surgery .sample-img {
    width: 100%;
    margin-top: 12vw;
  }
}



/* リスク */

.risk-sec .risk-wrap{
  display:flex;
  gap:4%;
}

.risk-sec .risk-wrap .a-item{
  width:48%;
  padding:30px;
  box-shadow: 0 0 3px rgba(0,0,0,0.2);
}

#grumbling-risk.risk-sec .risk-wrap .a-item {
  box-shadow: none;
}

.risk-sec .risk-wrap .a-item .title{
  font-size:25px;
  font-weight:600;
  line-height:1;
  text-align: center;
  margin-top:35px;
}

.risk-sec .risk-wrap .a-item p.txt {
  font-size:16px;
  line-height:1.875;
  margin-top: 25px;
}

.risk-sec .box_yellow .btn.blue01{
  margin-top:30px;
}

@media screen and (max-width: 1300px) {
  .risk-sec .risk-wrap {
    gap: 3.077vw;
  }

  .risk-sec .risk-wrap .a-item {
    padding: 2.308vw;
    box-shadow: 0 0 0.231vw rgba(0, 0, 0, 0.2);
  }

    #grumbling-risk.risk-sec .risk-wrap .a-item {
      box-shadow: none;
    }

  .risk-sec .risk-wrap .a-item .title {
    font-size: 1.923vw;
    margin-top: 2.692vw;
  }

  .risk-sec .risk-wrap .a-item p.txt {
    font-size: 1.231vw;
    margin-top: 1.923vw;
  }

  .risk-sec .box_yellow .btn.blue01 {
    margin-top: 2.308vw;
  }
}

@media screen and (max-width: 768px) {
  .risk-sec .risk-wrap {
    gap: 4.8vw;
  }

  .risk-sec .risk-wrap .a-item {
    padding: 3.6vw;
    box-shadow: 0 0 0.36vw rgba(0, 0, 0, 0.2);
  }

  .risk-sec .risk-wrap .a-item .title {
    font-size: 2.7vw;
    margin-top: 3.7vw;
  }

  .risk-sec .risk-wrap .a-item p.txt {
    font-size: 1.92vw;
    margin-top: 2.7vw;
  }

  .risk-sec .box_yellow .btn.blue01 {
    margin-top: 3.6vw;
  }
}

@media screen and (max-width: 480px) {
  .risk-sec .risk-wrap {
    display: block;
  }

  .risk-sec .risk-wrap .a-item {
    width: 100%;
    padding: 5.333vw;
    box-shadow: 0 0 0.533vw rgba(0, 0, 0, 0.2);
  }

    #grumbling-risk.risk-sec .risk-wrap .a-item {
      box-shadow: none;
    }

  .risk-sec .risk-wrap .a-item+.a-item {
    margin-top: 4vw;
  }

  .risk-sec .risk-wrap .a-item .title {
    font-size: 4.5vw;
    margin-top: 5vw;
  }

  .risk-sec .risk-wrap .a-item p.txt {
    font-size: 4vw;
    margin-top: 3.5vw;
  }

  .risk-sec .box_yellow .btn.blue01 {
    margin-top: 7vw;
  }
}


/* ぶつぶつ */

/* features */

.feature02 .wrap{
  display:flex;
  gap:30px;
  flex-wrap: wrap;
  justify-content: center;
  
}


.feature02 .wrap .a-item .btm{
  padding:30px;
}

.feature02 .wrap .a-item{
  width: calc((100% - 30px * 2) / 3);
}

#std-features.feature02 .wrap .a-item{
  box-shadow: 0 0 3px rgba(0,0,0,0.2);
  
}

 .feature02 .wrap .btm .title{
  text-align: center;
  font-weight:500;
  font-size:22px;
}

 .feature02 .wrap .btm p.txt{
  font-size:16px;
  line-height:1.8;
  margin-top:20px;
}


.feature02 .btm-content .txt01{
  text-align: center;
  margin:40px 0;
  font-size:16px;
  line-height:1.8;
}

.feature02 .btm-content .txt02 {
  text-align: center;
  font-size: 20px;
  line-height: 2;
  font-weight:500;
  letter-spacing:0.08em;
}

@media screen and (max-width: 1300px) {
  .feature02 .wrap {
    gap: 2.308vw;
  }

  .feature02 .wrap .a-item {
    width: calc((100% - 2.308vw * 2) / 3);
  }


  .feature02 .wrap .a-item .btm {
    padding: 2.308vw;
  }

  .feature02 .wrap .btm .title {
    font-size: 1.692vw;
  }

  .feature02 .wrap .btm p.txt {
    font-size: 1.231vw;
    margin-top: 1.538vw;
  }

  .feature02 .btm-content .txt01 {
    margin: 3.077vw 0;
    font-size: 1.231vw;
  }

  .feature02 .btm-content .txt02 {
    font-size: 1.538vw;
  }
}

@media screen and (max-width: 768px) {
  .feature02 .wrap {
    gap: 3.6vw;
    justify-content: flex-start;
  }

  .feature02 .wrap .a-item {
    width: calc((100% - 3.6vw) / 2);
  }

  .feature02 .wrap .a-item .btm {
    padding: 3.6vw;
  }

  .feature02 .wrap .btm .title {
    font-size: 2.64vw;
  }

  .feature02 .wrap .btm p.txt {
    font-size: 1.92vw;
    margin-top: 2.4vw;
  }

  .feature02 .btm-content .txt01 {
    text-align: left;
    margin: 4.8vw 0;
    font-size: 1.92vw;
  }

  .feature02 .btm-content .txt02 {
    text-align: left;
    font-size: 2.4vw;
  }
}

@media screen and (max-width: 480px) {
  .feature02 .wrap {
    gap: 5.333vw;
  }

  .feature02 .wrap .a-item {
    width: 90%;
    margin:0 auto;
  }

  .feature02 .wrap .a-item .btm {
    padding: 5.333vw;
  }

  .feature02 .wrap .btm .title {
    font-size: 4.5vw;
  }

  .feature02 .wrap .btm p.txt {
    font-size: 4vw;
    margin-top: 1vw;
  }

  .feature02 .btm-content .txt01 {
    text-align: left;
    margin: 7.111vw 0;
    font-size: 4vw;
  }

  .feature02 .btm-content .txt02 {
    text-align: left;
    font-size: 4.5vw;
  }
}

/* ターゲット target */

.target-sec .anchor-wrap{
  display:grid;
  grid-template-columns: repeat(4, 1fr);
}

.target-sec .anchor-wrap .a-item a{
  text-align: center;
  padding-bottom:60px;
  position:relative;
  display:block;
  width:100%;
}

.target-sec .anchor-wrap .a-item{
  border-left: 1px solid rgba(0, 0, 0, 0.5);
}

.target-sec .anchor-wrap .a-item:nth-last-child(1){
  border-right: 1px solid rgba(0, 0, 0, 0.5);
}


.target-sec .anchor-wrap .a-item .num{
  font-size:40px;
  font-weight:300;
  letter-spacing:0.04em;
  line-height:1;
}

.target-sec .anchor-wrap .a-item a .title{
  font-size:20px;
  font-weight:300;
  line-height:1.75;
  color:#000;
  margin-top:20px;
  transition:0.3s;
}

.target-sec .anchor-wrap .a-item a .title.lh2{
  line-height:3.5;
}

.target-sec .anchor-wrap .a-item a .arrow{
  width:10px;
  height:10px;
  border-left:1px solid #00a0aa;
  border-bottom:1px solid #00a0aa;
  rotate: -45deg;
  display:block;
  position:absolute;
  left:50%;
  transform: translateX(-50%);
  bottom:5%;
}

.target-sec .anchor-wrap .a-item a:hover .title{
  color:#00a0aa;
}

.target-sec .target-wrap .a-item .title{
  display:flex;
  background:#00a0aa;
  color:#fff;
  width:auto;
  margin:0 auto;
  width:100%;
  justify-content: center;
  align-items: center;
  gap:7px;
  padding:10px 0;
}

.target-sec .target-wrap .a-item .title .num{
  font-size:35px;
  font-weight:300;
  line-height:1;
}

.target-sec .target-wrap .a-item .title .line{
  width:30px;
  height:1px;
  background:#fff; 
}

.target-sec .target-wrap .a-item .title .name{
  font-size:24px;
  font-weight:500;
  letter-spacing:0.12em;
}

.target-sec .target-wrap .a-item .head-txt{
  margin-top:30px;
  font-size:18px;
  line-height:2;
}

.target-sec .target-wrap .a-item .flex{
  margin-top:50px;
  display:flex;
  align-items: flex-end;
  gap:3%;
}

.target-sec .target-wrap .a-item .flex .left{
  width:38%;
}

.target-sec .target-wrap .a-item .flex .right {
  width: 59%;
}

/* ターゲット表 */

.cause_table_wrap {
  width: 100%;
}

.cause_table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}

.cause_table .col_left {
  width: 20%;
}

.cause_table .col_right {
  width: 80%;
}

.cause_table th,
.cause_table td {
  border: 1px solid rgba(0, 0, 0, 0.3);
  padding: 30px;
  font-size: 16px;
  line-height: 1.8;
  text-align: left;
  vertical-align: top;
  box-sizing: border-box;
}

.cause_table th {
  background: #fafaf5;
}

@media screen and (max-width: 1300px) {
  .target-sec .anchor-wrap .a-item a {
    padding-bottom: 4.615vw;
  }

  .target-sec .anchor-wrap .a-item .num {
    font-size: 3.077vw;
  }

  .target-sec .anchor-wrap .a-item a .title {
    font-size: 1.538vw;
    margin-top: 1.538vw;
  }

  .target-sec .anchor-wrap .a-item a .arrow {
    width: 0.769vw;
    height: 0.769vw;
  }

  .target-sec .target-wrap .a-item .title {
    gap: 0.538vw;
    padding: 0.769vw 0;
  }

  .target-sec .target-wrap .a-item .title .num {
    font-size: 2.692vw;
  }

  .target-sec .target-wrap .a-item .title .line {
    width: 2.308vw;
  }

  .target-sec .target-wrap .a-item .title .name {
    font-size: 1.846vw;
  }

  .target-sec .target-wrap .a-item .head-txt {
    margin-top: 2.308vw;
    font-size: 1.385vw;
  }

  .target-sec .target-wrap .a-item .flex {
    margin-top: 3.846vw;
  }

  .cause_table th,
  .cause_table td {
    padding: 2.308vw;
    font-size: 1.231vw;
  }
}

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

  .target-sec .anchor-wrap .a-item a {
    padding-bottom: 6vw;
    padding-top: 3vw;
  }

  .target-sec .anchor-wrap .a-item .num {
    font-size: 4.5vw;
  }

  .target-sec .anchor-wrap .a-item a .title {
    font-size: 2.1vw;
    margin-top: 2.4vw;
  }

  .target-sec .anchor-wrap .a-item a .arrow {
    width: 1.2vw;
    height: 1.2vw;
  }

  .target-sec .target-wrap .a-item .title {
    gap: 1vw;
    padding: 1.5vw 0;
  }

  .target-sec .target-wrap .a-item .title .num {
    font-size: 3.8vw;
  }

  .target-sec .target-wrap .a-item .title .line {
    width: 3.3vw;
  }

  .target-sec .target-wrap .a-item .title .name {
    font-size: 2.6vw;
  }

  .target-sec .target-wrap .a-item .head-txt {
    margin-top: 3.6vw;
    font-size: 2.16vw;
  }

  .target-sec .target-wrap .a-item .flex {
    margin-top: 6vw;
  }

    .target-sec .target-wrap .a-item .flex .left{
      width:35%;
    }

    .target-sec .target-wrap .a-item .flex .right{
      width:62%;
    }


  .cause_table th,
  .cause_table td {
    padding: 3.2vw 2.6vw;
    font-size: 1.92vw;
    line-height: 1.7;
  }
}

@media screen and (max-width: 480px) {
  .target-sec .anchor-wrap {
    gap:9vw 0;
    position:relative;
    display:block;
    margin:0 auto;
  }

    .target-sec .anchor-wrap::after{
      height:0px;
    }

    .target-sec .anchor-wrap .a-item:nth-last-child(1) {
      border-right:none;
    }

    .target-sec .anchor-wrap .a-item{
    border-left:none;
    border-right:none;
    }

  .target-sec .anchor-wrap .a-item + .a-item {
    border-top: 1px solid rgba(0, 0, 0, 0.5);
  }

  .target-sec .anchor-wrap .a-item a {
    padding:3.5vw 2vw;
    display:flex;
    align-items: center;
  }

  .target-sec .anchor-wrap .a-item .num {
    font-size: 7.111vw;
    margin-right:3vw;
  }

  .target-sec .anchor-wrap .a-item a .title {
    font-size: 4.5vw;
    margin-top: 0;
    line-height:1;
  }

    .target-sec .anchor-wrap .a-item a .title.lh2{
      line-height:1;
    }

  .target-sec .anchor-wrap .a-item a .arrow {
    width: 1.777vw;
    height: 1.777vw;
    position:static;
    margin-left:auto;
  }

  .target-sec .target-wrap .a-item .title {
    gap: 1.6vw;
    padding: 1.777vw 0;
  }

  .target-sec .target-wrap .a-item .title .num {
    font-size: 5.8vw;
  }

  .target-sec .target-wrap .a-item .title .line {
    width: 5vw;
  }

  .target-sec .target-wrap .a-item .title .name {
    font-size: 4.5vw;
  }

  .target-sec .target-wrap .a-item .head-txt {
    margin-top: 5.333vw;
    font-size: 4vw;
  }

  .target-sec .target-wrap .a-item .flex {
    margin-top: 6vw;
    display: block;
  }

  .cause_table th,
  .cause_table td {
    padding: 4vw 2.5vw;
    font-size: 3.4vw;
    line-height: 1.6;
  }


    
    .target-sec .target-wrap .a-item .flex .left {
      width: 50%;
      margin: 0 auto;
    }

    .target-sec .target-wrap .a-item .flex .right {
      width: 90%;
      margin: 0 auto;
      margin-top: 8vw;
    }

  .cause_table .col_left {
    width: 30%;
  }

  .cause_table .col_right {
    width: 70%;
  }
}

/* 湾曲症 */

/* 手術方法 surgery */

#curvature-surgery .a-surgery .head-txt,
#nipple-surgery .a-surgery .head-txt {
  font-size: 18px;
  line-height: 2.1;
  margin-top: 40px;
}

#curvature-surgery .a-surgery .a-img,
#nipple-surgery .a-surgery .a-img {
  background: #fff;
  padding: 50px;
  margin-top: 50px;
}

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

  #curvature-surgery .a-surgery .head-txt,
  #nipple-surgery .a-surgery .head-txt {
    font-size: 1.385vw;
    margin-top: 3.077vw;
  }

  #curvature-surgery .a-surgery .a-img,
  #nipple-surgery .a-surgery .a-img {
    padding: 3.846vw;
    margin-top: 3.846vw;
  }
}

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

  #curvature-surgery .a-surgery .head-txt,
  #nipple-surgery .a-surgery .head-txt {
    font-size: 2.16vw;
    margin-top: 4.8vw;
  }

  #curvature-surgery .a-surgery .a-img,
  #nipple-surgery .a-surgery .a-img {
    padding: 6vw;
    margin-top: 6vw;
    overflow: auto;
  }

  #curvature-surgery .a-surgery .a-img img,
  #nipple-surgery .a-surgery .a-img img {
    min-width: 800px;
  }
}

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

  #curvature-surgery .a-surgery .head-txt,
  #nipple-surgery .a-surgery .head-txt {
    font-size: 4vw;
    margin-top: 7.111vw;
  }

  #curvature-surgery .a-surgery .a-img,
  #nipple-surgery .a-surgery .a-img {
    padding: 8.889vw;
    margin-top: 5vw;
  }

  #curvature-surgery .a-surgery .a-img img,
  #nipple-surgery .a-surgery .a-img img {
    min-width: 660px;
  }
}

/* 特徴 features */

.flex.type03{
  display:grid;
  grid-template-columns: repeat(2, 1fr);
  width:81.5%;
  gap:5%;
  margin:0 auto;
}

.flex.type03 .a-item{
  box-shadow: 0 0 3px rgba(0,0,0,0.2);
}

.flex.type03 .a-item .btm{ 
  padding:30px;
}

.flex.type03 .a-item .btm .title{
  font-size:26px;
  font-weight:500;
  line-height:1;
  text-align: center;
}

.flex.type03 .a-item .btm p.txt {
  font-size:18px;
  line-height:2.1;
  margin-top:30px;
}

#curvature-features .top-content{
  position:relative;
}

#curvature-features .top-content::after {
  content:"";
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 50vw solid transparent;
  border-left: 50vw solid transparent;
  border-top: 100px solid #fff;
  border-bottom: 0;
  position:absolute;
  top:100%;
  left:0;
  z-index:5;
}

#curvature-features .btm-content .box_yellow{
  padding:0;
  padding-top:70px;
}

#curvature-features .btm-content .box_yellow .title{
  font-size:30px;
}

#curvature-features .btm-content .box_yellow .txt{
  text-align: center;
  font-size:20px;
  line-height:2;
  margin-top:45px;
}

.flex.type04{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:2%;
  margin-top:50px;
}

.flex.type04 .a-item{
  padding: 30px;
}

.flex.type04 .a-item .img img{
  width:100%;
}

.flex.type04 .a-item .title,
#curvature-features .box_yellow .flex.type04 .a-item .title{
  font-size:22px;
  font-weight:500;
  text-align: center;
  margin-top:30px;
}

.flex.type04 .a-item .txt,
#curvature-features .box_yellow .flex.type04 .a-item .txt{
  font-size:16px;
  line-height:1.8;
  text-align: left;
  margin-top:20px;
  letter-spacing:0.04em;
}

#curvature-features .btm-content .box_yellow .txt.btm-txt{
  margin-top:35px;
}

@media screen and (max-width: 1300px) {
  .flex.type03 {
    gap: 3.846vw;
  }

  .flex.type03 .a-item {
    box-shadow: 0 0 0.231vw rgba(0, 0, 0, 0.2);
  }

  .flex.type03 .a-item .btm {
    padding: 2.308vw;
  }

  .flex.type03 .a-item .btm .title {
    font-size: 2vw;
  }

  .flex.type03 .a-item .btm p.txt {
    font-size: 1.385vw;
    margin-top: 2.308vw;
  }

  #curvature-features .top-content::after {
    border-top: 7.692vw solid #fff;
  }

  #curvature-features .btm-content .box_yellow {
    padding: 0;
    padding-top: 5.385vw;
  }

  #curvature-features .btm-content .box_yellow .title {
    font-size: 2.308vw;
  }

  #curvature-features .btm-content .box_yellow .txt {
    font-size: 1.538vw;
    margin-top: 3.462vw;
  }

  .flex.type04 {
    margin-top: 3.846vw;
  }

  .flex.type04 .a-item {
    padding: 2.308vw;
  }

.flex.type04 .a-item .title,
  #curvature-features .box_yellow .flex.type04 .a-item .title {
    font-size: 1.692vw;
    margin-top: 2.308vw;
  }

.flex.type04 .a-item .txt,
  #curvature-features .box_yellow .flex.type04 .a-item .txt {
    font-size: 1.231vw;
    margin-top: 1.538vw;
  }

  #curvature-features .btm-content .box_yellow .txt.btm-txt {
    margin-top: 2.692vw;
  }
}

@media screen and (max-width: 768px) {
  .flex.type03 {
    width: 95%;
    gap: 4%;
  }

  .flex.type03 .a-item {
    box-shadow: 0 0 0.36vw rgba(0, 0, 0, 0.2);
  }

  .flex.type03 .a-item .btm {
    padding: 3.6vw;
  }

  .flex.type03 .a-item .btm .title {
    font-size: 2.9vw;
  }

  .flex.type03 .a-item .btm p.txt {
    font-size: 2.16vw;
    margin-top: 2.8vw;
  }

  #curvature-features .top-content::after {
    border-top: 12vw solid #fff;
  }

  #curvature-features .btm-content .box_yellow {
    padding: 0;
    padding-top: 8.4vw;
  }

.flex.type04 .a-item .title,
  #curvature-features .btm-content .box_yellow .title {
    font-size: 2.8vw;
    line-height:1.5;
  }

.flex.type04 .a-item .txt,
  #curvature-features .btm-content .box_yellow .txt {
    font-size: 1.9vw;
    margin-top: 1.7vw;
  }

  .flex.type04 {
    grid-template-columns: repeat(2, 1fr);
    gap: 3vw;
    margin-top: 6vw;
  }

  .flex.type04 .a-item {
    padding: 3.6vw;
  }

  #curvature-features .box_yellow .flex.type04 .a-item .title {
    font-size: 2.64vw;
    margin-top: 3.6vw;
  }

  #curvature-features .box_yellow .flex.type04 .a-item .txt {
    font-size: 1.92vw;
    margin-top: 2.4vw;
  }

  #curvature-features .btm-content .box_yellow .txt.btm-txt {
    margin-top: 4.2vw;
    text-align: left;
  }
}

@media screen and (max-width: 480px) {
  .flex.type03 {
    grid-template-columns: 1fr;
    width: 80%;
    gap: 7.111vw;
  }

  .flex.type03 .a-item {
    box-shadow: 0 0 0.533vw rgba(0, 0, 0, 0.2);
  }

  .flex.type03 .a-item .btm {
    padding: 5.333vw;
  }

  .flex.type03 .a-item .btm .title {
    font-size: 4.5vw;
  }

  .flex.type03 .a-item .btm p.txt {
    font-size: 4vw;
    margin-top: 4vw;
  }

  #curvature-features .top-content::after {
    border-top: 17.778vw solid #fff;
  }

  #curvature-features .btm-content .box_yellow {
    padding: 0;
    padding-top: 12.444vw;
  }

  #curvature-features .btm-content .box_yellow .title {
    font-size: 4.5vw;
  }

  #curvature-features .btm-content .box_yellow .txt {
    font-size: 4vw;
    margin-top: 8vw;
    text-align: left;
  }

  .flex.type04 {
    grid-template-columns: 1fr;
    gap: 4.444vw;
    margin-top: 8.889vw;
  }

  .flex.type04 .a-item {
    padding: 5.333vw;
  }

.flex.type04 .a-item .title,
#curvature-features .box_yellow .flex.type04 .a-item .title {
    font-size: 4.5vw;
    margin-top: 5.333vw;
  }


  .flex.type04 .a-item .txt,
  #curvature-features .box_yellow .flex.type04 .a-item .txt {
    font-size: 4vw;
    margin-top: 3vw;
  }

  #curvature-features .btm-content .box_yellow .txt.btm-txt {
    margin-top: 6.222vw;
    text-align: left;
  }
}

/* vasectomy パイプカット */

/* 手術方法 */

#vasectomy-surgery .surgery-img{
  margin-top:50px; 
}

#vasectomy-surgery .box{
  width:81.5%;
  margin:0 auto;
  padding:60px 60px;
}

#vasectomy-surgery .box .area01{
  text-align: center;
  position:relative;
  width:fit-content;
  margin:0 auto;
}

#vasectomy-surgery .box .area01 .sub{
  font-size:16px;
  font-weight:500;
  line-height:1.6;
}

#vasectomy-surgery .box .area01 .title {
  font-size: 28px;
  font-weight: 500;
  line-height: 1;
  margin-top:10px;
}

#vasectomy-surgery .box .area01 .doctor_pic{
  position:absolute;
  left:109%;
  top:50%;
  transform: translateY(-50%);
  width:140px;
}

#vasectomy-surgery .box .area01 .doctor_pic img{
  width:140px;
  height:auto;
}

#vasectomy-surgery .box .area01 .doctor_pic .name{
  font-size:16px;
  line-height:1;
  text-align: center;
  margin-top:10px;
}


#vasectomy-surgery .box .area02{
  display:flex;
  gap:2%;
  margin-top:45px;
}

#vasectomy-surgery .box .area02 .a-item{
  width:49%;
  text-align: center;
  padding:20px 0;
}

#vasectomy-surgery .box .area02 .a-item p{
  font-size:16px;
  line-height:1.5;
  letter-spacing:0.12em;
}

#vasectomy-surgery .box .area02 .a-item p .big {
  font-size: 20px;
  font-weight:500;
letter-spacing: 0.08em;
}

#vasectomy-surgery .btm-txt{
  font-size:24px;
  font-weight:600;
  letter-spacing:0.08em;
  line-height:1.8;
  text-align: center;
  margin-top:60px;
}

@media screen and (max-width: 1300px) {
  #vasectomy-surgery .surgery-img {
    margin-top: 3.846vw;
  }

  #vasectomy-surgery .box {
    width: 81.5%;
    margin: 0 auto;
    padding: 4.615vw 4.615vw;
  }

  #vasectomy-surgery .box .area01 .sub {
    font-size: 1.231vw;
  }

  #vasectomy-surgery .box .area01 .title {
    font-size: 2.154vw;
    margin-top: 0.769vw;
  }

  #vasectomy-surgery .box .area01 .doctor_pic {
    width: 10.769vw;
  }

  #vasectomy-surgery .box .area01 .doctor_pic .name {
    font-size: 1.231vw;
    margin-top: 0.769vw;
  }

  #vasectomy-surgery .box .area02 {
    margin-top: 3.462vw;
  }

  #vasectomy-surgery .box .area02 .a-item {
    padding: 1.538vw 0;
  }

  #vasectomy-surgery .box .area02 .a-item p {
    font-size: 1.231vw;
  }

  #vasectomy-surgery .box .area02 .a-item p .big {
    font-size: 1.538vw;
  }

  #vasectomy-surgery .btm-txt {
    font-size: 1.846vw;
    margin-top: 4.615vw;
  }
}

@media screen and (max-width: 768px) {
  #vasectomy-surgery .surgery-img {
    margin-top: 6vw;
    overflow-x: scroll;
  }

  #vasectomy-surgery .surgery-img img{
    min-width:800px;
  }

  #vasectomy-surgery .box {
    width: 95%;
    padding: 7.2vw 4.8vw;
  }

  #vasectomy-surgery .box .area01 .sub {
    font-size: 1.8vw;
  }

  #vasectomy-surgery .box .area01 .title {
    font-size: 2.8vw;
    margin-top: 1.2vw;
  }

  #vasectomy-surgery .box .area01 .doctor_pic {
    left: 103%;
    width: 15vw;
  }


  #vasectomy-surgery .box .area01 .doctor_pic .name {
    font-size: 1.6vw;
    margin-top: 1.2vw;
  }

  #vasectomy-surgery .box .area02 {
    margin-top: 5.4vw;
  }

  #vasectomy-surgery .box .area02 .a-item {
    padding: 2.4vw 0;
  }

  #vasectomy-surgery .box .area02 .a-item p {
    font-size: 1.92vw;
  }

  #vasectomy-surgery .box .area02 .a-item p .big {
    font-size: 2.4vw;
  }

  #vasectomy-surgery .btm-txt {
    font-size: 2.6vw;
    margin-top: 7.2vw;
  }
}

@media screen and (max-width: 480px) {
  #vasectomy-surgery .surgery-img {
    margin-top: 8.889vw;
  }

     #vasectomy-surgery .surgery-img img {
       min-width: 660px;
     }

  #vasectomy-surgery .box {
    width: 100%;
    padding: 10.667vw 4vw;
  }

  #vasectomy-surgery .box .area01 {
    width: 100%;
  }

  #vasectomy-surgery .box .area01 .sub {
    font-size: 3.2vw;
  }

  #vasectomy-surgery .box .area01 .title {
    font-size: 4.5vw;
    margin-top: 1vw;
    line-height: 1.2;
  }

  #vasectomy-surgery .box .area01 .doctor_pic {
    position: static;
    transform: none;
    margin:0 auto;
    margin-top: 5vw;
    width: 32vw;
  }


  #vasectomy-surgery .box .area01 .doctor_pic .name {
    font-size: 4vw;
    margin-top: 2.222vw;
  }

  #vasectomy-surgery .box .area02 {
    gap: 2%;
    margin-top: 5vw;
  }

  #vasectomy-surgery .box .area02 .a-item {
    width: 49%;
    padding: 5vw 1vw;
  }

  #vasectomy-surgery .box .area02 .a-item p {
    font-size: 3vw;
  }

  #vasectomy-surgery .box .area02 .a-item p .big {
    font-size: 4vw;
  }

  #vasectomy-surgery .btm-txt {
    font-size: 4.2vw;
    margin-top: 8.889vw;
    text-align:left;
  }
}


/* リスク risk */

#vasectomy-risk .flex.type04 .a-item{
  border:1px solid rgba(0,0,0,0.5);
}

#vasectomy-risk .btm-box{
  width:100%;
  padding:50px 0;
  margin-top:50px;
}

#vasectomy-risk .btm-box p{
  text-align: center;
  font-size:20px;
  line-height:2;
  letter-spacing:0.08em;
  margin-bottom: 50px;
}

@media screen and (max-width: 1300px) {
  #vasectomy-risk .btm-box {
    padding: 3.846vw 0;
    margin-top: 3.846vw;
  }

  #vasectomy-risk .btm-box p {
    font-size: 1.538vw;
    margin-bottom: 3.846vw;
  }
}

@media screen and (max-width: 768px) {
  #vasectomy-risk .btm-box {
    padding: 6vw 3vw;
    margin-top: 6vw;
  }

  #vasectomy-risk .btm-box p {
    font-size: 2.4vw;
    margin-bottom: 6vw;
  }
}

@media screen and (max-width: 480px) {
  #vasectomy-risk .btm-box {
    padding: 8vw 6vw;
    margin-top: 8vw;
  }

  #vasectomy-risk .btm-box p {
    font-size: 4vw;
    margin-bottom: 8vw;
    text-align: left;
  }
}






/* 乳頭縮小 nipple */


/* about */

#nipple-about .box_yellow{
  width:81.5%;
  margin-left:auto;
  margin-right:auto;
}


#nipple-about .box_yellow .title{
  line-height:1.6;
}

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

  #nipple-about .box_yellow {
    width: 90%;
  }

}

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

  #nipple-about .box_yellow {
      width: 100%;
    }

  #nipple-about .box_yellow .title {
      text-align: left;
    }
}


/* 手術方法 */

#nipple-surgery .a-surgery .a-img{
  padding:30px;
}

.a-surgery .surgery-btm{
  text-align: center;
  font-size:18px;
  line-height:2.1;
}

#nipple-surgery .a-surgery .surgery-btm {
  padding:40px 30px;
}

@media screen and (max-width: 1300px) {
  #nipple-surgery .a-surgery .a-img {
    padding: 2.308vw;
  }

  .a-surgery .surgery-btm {
    font-size: 1.385vw;
  }

  #nipple-surgery .a-surgery .surgery-btm {
    padding: 3.077vw 2.308vw;
  }
}

@media screen and (max-width: 768px) {
  #nipple-surgery .a-surgery .a-img {
    padding: 3.6vw;
  }

  .a-surgery .surgery-btm {
    font-size: 2vw;
    text-align: left;
  }

  #nipple-surgery .a-surgery .surgery-btm {
    padding: 4vw 3.6vw;
  }
}

@media screen and (max-width: 480px) {
  #nipple-surgery .a-surgery .a-img {
    padding: 5.333vw;
  }

  .a-surgery .surgery-btm {
    font-size: 4vw;
  }

  #nipple-surgery .a-surgery .surgery-btm {
    padding: 6vw 5.333vw;
  }
}

/* プライバシーポリシー privacy policy */

#privacy_policy{
  max-width:900px;
  width:90%;
  margin:0 auto;
}


#privacy_policy .top,
#privacy_policy .a-list .txt{
  font-size:16px;
  line-height:2.1;
}

#privacy_policy .inner{
  margin-top:95px;
}

#privacy_policy .a-list .title{
  width:100%;
  font-size:22px;
  line-height:1;
  font-weight:500;
  padding-bottom:15px;
  border-bottom:1px solid #000;
}

#privacy_policy .a-list .txt{
  padding-top:30px;
}

#privacy_policy .a-list ol{
  list-style:decimal;
  list-style-position: inside;
}

@media screen and (max-width: 1300px) {
  #privacy_policy {
    max-width: 69.231vw;
    width: 90%;
  }

  #privacy_policy .top,
  #privacy_policy .a-list .txt {
    font-size: 1.231vw;
  }

  #privacy_policy .inner {
    margin-top: 7.308vw;
  }

  #privacy_policy .a-list .title {
    font-size: 1.692vw;
    padding-bottom: 1.154vw;
    border-bottom: 0.077vw solid #000;
  }

  #privacy_policy .a-list .txt {
    padding-top: 2.308vw;
  }
}

@media screen and (max-width: 768px) {
  #privacy_policy {
    width: 85%;
    max-width:none;
  }

  #privacy_policy .top,
  #privacy_policy .a-list .txt {
    font-size: 1.92vw;
  }

  #privacy_policy .inner {
    margin-top: 11.4vw;
  }

  #privacy_policy .a-list .title {
    font-size: 2.64vw;
    padding-bottom: 1.8vw;
    border-bottom: 0.13vw solid #000;
  }

  #privacy_policy .a-list .txt {
    padding-top: 3.6vw;
  }
}

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

  #privacy_policy .top,
  #privacy_policy .a-list .txt {
    font-size: 4vw;
  }

  #privacy_policy .inner {
    margin-top: 16.889vw;
  }

  #privacy_policy .a-list .title {
    font-size: 4.5vw;
    line-height: 1.4;
    padding-bottom: 2.667vw;
    border-bottom: 0.208vw solid #000;
  }

  #privacy_policy .a-list .txt {
    padding-top: 5.333vw;
  }
}


/* gid 性別適合手術 */

.orchiectomy-surgery{
  padding:50px 100px;
  position:relative;
}

.orchiectomy-surgery .img{
  /* min-width 768px以下を800px, 480以下を660px */
  /* overflow scroll */
}

.orchiectomy-surgery .txt{
  font-size:16px;
  line-height:2;
  margin-top:40px;
}

.orchiectomy-surgery .label{
  font-size:20px;
  line-height:1;
  color:#fff;
  background:#00a0aa;
  padding:8px 15px;
  position:absolute;
  top:0;
  left:0;
}

#gid-orchiectomy .btm-txt{
  text-align: center;
  font-size:25px;
  font-weight:600;
  line-height:1.7;
  margin-top:50px;
}

@media screen and (max-width: 1300px) {
  .orchiectomy-surgery {
    padding: 3.846vw 7.692vw;
  }

  .orchiectomy-surgery .txt {
    font-size: 1.231vw;
    margin-top: 3.077vw;
  }

  .orchiectomy-surgery .label {
    font-size: 1.538vw;
    padding: 0.615vw 1.154vw;
  }

  #gid-orchiectomy .btm-txt {
    font-size: 1.923vw;
    margin-top: 3.846vw;
  }
}

@media screen and (max-width: 768px) {
  .orchiectomy-surgery {
    padding: 6vw 12vw;
  }

  .orchiectomy-surgery .img {
    overflow: auto;
  }

  .orchiectomy-surgery .img img {
    min-width: 800px;
  }

  .orchiectomy-surgery .txt {
    font-size: 1.92vw;
    margin-top: 4.8vw;
  }

  .orchiectomy-surgery .label {
    font-size: 2.4vw;
    padding: 0.96vw 1.8vw;
  }

  #gid-orchiectomy .btm-txt {
    font-size: 2.6vw;
    margin-top: 6vw;
  }
}

@media screen and (max-width: 480px) {
  .orchiectomy-surgery {
    padding: 8.889vw 5.333vw;
  }

  .orchiectomy-surgery .img img {
    min-width: 660px;
  }

  .orchiectomy-surgery .txt {
    font-size: 4vw;
    margin-top: 7.111vw;
  }

  .orchiectomy-surgery .label {
    font-size: 3.555vw;
    padding: 1.778vw 2.667vw;
  }

  #gid-orchiectomy .btm-txt {
    font-size: 4vw;
    margin-top: 8.889vw;
  text-align: left;
  }
}


/* bodychanges */

.flex.type05{
  display:grid;
  grid-template-columns: repeat(4, 1fr);
  gap:2.7%;
}

#gid-bodychanges .flex.type05{
  margin-top:50px;
}

.flex.type05 .a-item{
  box-shadow: 0 0 3px rgba(0,0,0,0.2);
}

.flex.type05 .a-item .btm{
  padding:20px;  
}


.flex.type05 .a-item .btm .title{
  font-size:20px;
  font-weight:600;
  text-align: center;
}

.flex.type05 .a-item .btm .txt {
  font-size: 16px;
  line-height:1.75;
  margin-top:15px;
}

@media screen and (max-width: 1300px) {
  #gid-bodychanges .flex.type05 {
    margin-top: 3.846vw;
  }

  .flex.type05 .a-item .btm {
    padding: 1.538vw;
  }

  .flex.type05 .a-item .btm .title {
    font-size: 1.538vw;
  }

  .flex.type05 .a-item .btm .txt {
    font-size: 1.231vw;
    margin-top: 1.154vw;
  }
}

@media screen and (max-width: 768px) {
  .flex.type05 {
    width:80%;
    margin:0 auto;
    grid-template-columns: repeat(2, 1fr);
    gap: 4%;
    margin-bottom:3.5vw;
  }

  #gid-bodychanges .flex.type05 {
    margin-top: 6vw;
  }

  .flex.type05 .a-item .btm {
    padding: 2.4vw;
  }

  .flex.type05 .a-item .btm .title {
    font-size: 2.4vw;
  }

  .flex.type05 .a-item .btm .txt {
    font-size: 1.92vw;
    margin-top: 1.8vw;
  }
}

@media screen and (max-width: 480px) {
  .flex.type05 {
    width:100%;
  margin-bottom: 4.8vw;
  }

  #gid-bodychanges .flex.type05 {
    margin-top: 8.889vw;
  }

  .flex.type05 .a-item .btm {
    padding: 3.6vw;
  }

  .flex.type05 .a-item .btm .title {
    font-size: 4vw;
  }

  .flex.type05 .a-item .btm .txt {
    font-size: 3.6vw;
    margin-top: 1vw;
  }
}


/* risk リスク */

.flex.type06{
  display:grid;
  grid-template-columns: repeat(2, 1fr);
  gap:4.1%;
}

.flex.type06 .a-item{
  padding:30px;
}

.flex.type06 .a-item .title{
  text-align:center;
  font-size:25px;
  font-weight:600;
  line-height:1;
  margin:40px 0 30px 0;
}

.flex.type06 .a-item .txt {
  font-size:16px;
  line-height:1.8;
  letter-spacing:0.04em;
}

#gid-risk .btm-txt{
  font-size:20px;
  line-height:2;
  letter-spacing:0.08em;
  text-align: center;
}

@media screen and (max-width: 1300px) {
  .flex.type06 .a-item {
    padding: 2.308vw;
  }

  .flex.type06 .a-item .title {
    font-size: 1.923vw;
    margin: 3.077vw 0 2.308vw 0;
  }

  .flex.type06 .a-item .txt {
    font-size: 1.231vw;
  }

  #gid-risk .btm-txt {
    font-size: 1.538vw;
  }
}

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

  .flex.type06 {
      gap: 3%;
    }

  .flex.type06 .a-item {
    padding: 2.8vw;
  }

  .flex.type06 .a-item .title {
    font-size: 2.6vw;
    margin: 3.8vw 0 2.6vw 0;
  }

  .flex.type06 .a-item .txt {
    font-size: 1.92vw;
  }

  #gid-risk .btm-txt {
    font-size: 2.4vw;
    text-align: left;
  }
}

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

  .flex.type06 {
    grid-template-columns: 1fr;
      gap: 4.5vw;
    }

  .flex.type06 .a-item {
    padding: 5vw;
  }

  .flex.type06 .a-item .title {
    font-size: 4.2vw;
    margin: 3vw 0 1.5vw 0;
  }

  .flex.type06 .a-item .txt {
    font-size: 4vw;
  }

  #gid-risk .btm-txt {
    font-size: 3.555vw;
  }
}


/* 性感染症 */


/* 代表的な性感染症　representative */

.a-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}

.a-table th,
.a-table td {
  border: 1px solid rgba(0, 0, 0, 0.3);
  font-size: 16px;
  line-height: 1.8;
  text-align: left;
  vertical-align: top;
  padding: 30px;
}

.a-table th {
  width: 27.4%;
}

.a-table td {
  width: 72.6%;
}

#std-representative .right .inner p:not(.a-blur-photo__lead, .text-area p, .title ,.sub-title) {
  font-size:16px;
  line-height:1.8;
}

#std-representative .right .inner .title{
  width:100%;
  background:#00a0aa;
  font-size:20px;
  font-weight:500;
  line-height:1;
  color:#fff;
  padding:12px 0;
  text-align: center;
  margin-bottom:30px;
}

#std-representative .right .inner .sub-title{
  font-size:25px;
  line-height:1;
  padding-left:15px;
  position:relative;
  margin-bottom:15px;
}

#std-representative .right .inner .sub-title::before{
  content:"";
  width:5px;
  height:30px;
  background:#00a0aa;
  position:absolute;
  left:0;
  top:55%;
  transform: translateY(-50%);
}


#std-representative .right .inner .a-table{
  margin-top:30px;
}

#std-representative .right .inner .a-table th{
  font-weight:400;
}

#std-representative .right .inner .box{
  padding:30px;
}

#std-representative .right .inner .box .box-title{
  font-size:20px;
  font-weight:500;
  line-height:1.4;
  text-align: center;
  margin-bottom:30px;
}

#std-representative .right .inner .box .box-txt{
  line-height:1.9;
}

#std-representative .right .inner .box .btn.blue01{
  margin-top:30px;
}

#std-representative .right .inner .pic-wrap{
  display:flex;
  gap:4%;
  flex-wrap:wrap;
}

#std-representative .right .inner .pic-wrap .a-pic{
  width:calc(92% / 3);
}

.mt-20{
  margin-top:20px;
}

#std-representative .right .inner .pic-wrap .a-blur-photo img:not(.blur-icon){
  height:190px;
  object-fit:contain;
}

#std-representative .right .inner .pic-wrap .a-blur-photo .a-blur-photo__icon{
  width:20%;
}


#std-representative .right .inner .pic-wrap .a-blur-photo .a-blur-photo__lead,
#std-representative .right .inner .pic-wrap .a-blur-photo .a-blur-photo__btn{
  font-size:12px;
}

#std-representative .right .inner .pic-wrap .a-blur-photo .a-blur-photo__btn .arrow::after{
  width:4px;
  height:4px;
  left:22%;
}

#std-representative .right .inner .pic-wrap .a-blur-photo .a-blur-photo__lead {
  line-height: 1.4;
  margin-top: 5px;
  margin-bottom: 7px !important;
}


#std-representative .right .inner .pic-wrap .a-blur-photo .text-area p{
  font-size:13px;
}

#std-representative .right .inner .pic-wrap .a-blur-photo .text-area p.big {
  font-size: 15px;
}

#std-representative .right .inner .pic-wrap .a-blur-photo .a-blur-photo__btn{
  margin-top:7px;
}

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

  .a-table th,
  .a-table td {
    font-size: 1.231vw;
    padding: 2.308vw;
  }

  #std-representative .right .inner p:not(.a-blur-photo__lead, .text-area p,.title, .sub-title)
   {
    font-size: 1.231vw;
  }

  #std-representative .right .inner .title {
    font-size: 1.538vw;
    padding: 0.923vw 0;
    margin-bottom: 2.308vw;
  }

  #std-representative .right .inner .sub-title {
    font-size: 1.923vw;
    padding-left: 1.154vw;
    margin-bottom: 1.154vw;
  }

  #std-representative .right .inner .sub-title::before {
    width: 0.385vw;
    height: 2.308vw;
  }

  #std-representative .right .inner .a-table {
    margin-top: 2.308vw;
  }

     #std-representative .right .inner .box {
       padding: 2.308vw;
     }
  
     #std-representative .right .inner .box .box-title {
       font-size: 1.538vw;
       margin-bottom: 2.308vw;
     }
  
     #std-representative .right .inner .box .btn.blue01 {
       margin-top: 2.308vw;
     }

    #std-representative .right .inner .pic-wrap.mt-20 {
      margin-top: 1.538vw;
    }


  #std-representative .right .inner .pic-wrap .a-blur-photo img:not(.blur-icon) {
    height: 14.615vw;
  }

  #std-representative .right .inner .pic-wrap .a-blur-photo .a-blur-photo__lead,
  #std-representative .right .inner .pic-wrap .a-blur-photo .a-blur-photo__btn {
    font-size: 0.9vw;
  }

  #std-representative .right .inner .pic-wrap .a-blur-photo .a-blur-photo__btn .arrow::after {
    width: 0.308vw;
    height: 0.308vw;
  }

    #std-representative .right .inner .pic-wrap .a-blur-photo .text-area p {
      font-size: 1vw;
    }
  
    #std-representative .right .inner .pic-wrap .a-blur-photo .text-area p.big {
      font-size:1.15vw;
    }
}

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

  .a-table th,
  .a-table td {
    font-size: 1.92vw;
    padding: 3vw;
  }

  #std-representative .right .inner p:not(.a-blur-photo__lead, .text-area p, .title, .sub-title) {
    font-size: 1.92vw;
  }

  #std-representative .right .inner .title {
    font-size: 2.4vw;
    padding: 1.44vw 0;
    margin-bottom: 3.6vw;
  }

  #std-representative .right .inner .sub-title {
    font-size: 2.6vw;
    padding-left: 1.8vw;
    margin-bottom: 1.8vw;
  }

  #std-representative .right .inner .sub-title::before {
    width: 0.6vw;
    height: 3.6vw;
  }

  #std-representative .right .inner .a-table {
    margin-top: 3.6vw;
    overflow: auto;
  }

  #std-representative .right .inner .box {
  padding: 3.6vw;
  }

  #std-representative .right .inner .box .box-title {
  font-size: 2.4vw;
  margin-bottom: 3.6vw;
  }

  #std-representative .right .inner .box .btn.blue01 {
  margin-top: 3.6vw;
  }

  #std-representative .right .inner .pic-wrap {
    gap: 3vw 4%;
  }

#std-representative .right .inner .pic-wrap .a-pic {
  width: calc(96%/2);
}

#std-representative .right .inner .pic-wrap .a-pic.pic01 {
  width: 100%;
}

  #std-representative .right .inner .pic-wrap.mt-20 {
    margin-top: 2.4vw;
  }


#std-representative .right .inner .pic-wrap .a-blur-photo img:not(.blur-icon) {
  height: auto;
  object-fit: unset;
}

#std-representative .right .inner .pic-wrap .a-blur-photo .a-blur-photo__icon {
  width: 12%;
}

#std-representative .right .inner .pic-wrap .a-blur-photo .a-blur-photo__lead {
    margin-top: clamp(14px, 2.5cqw, 20px);
      margin-bottom: clamp(18px, 3.375cqw, 27px) !important;
      line-height: 1;
}

#std-representative .right .inner .pic-wrap .a-blur-photo .a-blur-photo__lead,
#std-representative .right .inner .pic-wrap .a-blur-photo .a-blur-photo__btn {
  font-size: clamp(10px, 4cqw, 16px);
}

#std-representative .right .inner .pic-wrap .a-blur-photo .a-blur-photo__btn .arrow::after {
  width: clamp(3px, 0.5cqw, 4px);
  height: clamp(3px, 0.5cqw, 4px);
  left: 21%;
}


#std-representative .right .inner .pic-wrap .a-blur-photo .a-blur-photo__lead {
  line-height: 1.3;
  margin-top: clamp(14px, 2.5cqw, 20px);
  margin-bottom: clamp(18px, 3.375cqw, 27px) !important;
}


#std-representative .right .inner .pic-wrap .a-blur-photo .text-area p {
  font-size: clamp(10px, 4cqw, 16px);
}

#std-representative .right .inner .pic-wrap .a-blur-photo .text-area p.big {
  font-size: clamp(13px, 4.2cqw, 24px);
}

#std-representative .right .inner .pic-wrap .a-blur-photo .a-blur-photo__btn {
  margin-top: clamp(18px, 3.75cqw, 30px);
}
}

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

  .a-table th,
  .a-table td {
    font-size: 3vw;
    padding: 2vw;
  }

  #std-representative .right .inner p:not(.a-blur-photo__lead, .text-area p, .title, .sub-title) {
    font-size: 3vw;
  }

  #std-representative .right .inner .title {
    font-size: 3.555vw;
    padding: 2.667vw 0;
    margin-bottom: 5.333vw;
  }

  #std-representative .right .inner .sub-title {
    font-size: 4.5vw;
    padding-left: 2.667vw;
    margin-bottom: 2.667vw;
  }

  #std-representative .right .inner .sub-title::before {
    width: 0.889vw;
    height: 5.333vw;
  }

  #std-representative .right .inner .a-table {
    margin-top: 5.333vw;
  }

    #std-representative .right .inner .box {
      padding: 5.333vw;
    }
  
    #std-representative .right .inner .box .box-title {
      font-size: 3.555vw;
      margin-bottom: 5.333vw;
    }
  
    #std-representative .right .inner .box .btn.blue01 {
      margin-top: 5.333vw;
    }


  #std-representative .right .inner .pic-wrap.mt-20 {
    margin-top: 3.555vw;
  }

  #std-representative .right .inner .pic-wrap .a-blur-photo .a-blur-photo__lead {
  font-size: clamp(0px, 3.5cqw, 14px);
  }

      #std-representative .right .inner .pic-wrap .a-blur-photo .a-blur-photo__btn {
  font-size: clamp(0px, 3.5cqw, 14px);
  }

      #std-representative .right .inner .pic-wrap .a-blur-photo .a-blur-photo__box {
  padding: 3%;
  }

      #std-representative .right .inner .pic-wrap .a-blur-photo .a-blur-photo__box p {
  margin: 0;
  font-size: clamp(0px, 3.8cqw, 15px);
  line-height: 1.1;
  color: #111;
  text-align: left;
  }

  #std-representative .right .inner .pic-wrap .a-blur-photo .a-blur-photo__box p .big {
  font-size: clamp(0px, 4.2cqw, 18px);
  }

  }


#std-representative .std-popup__content .inner p:not(.a-blur-photo__lead, .text-area p, .title, .sub-title) {
  font-size: 16px;
  line-height: 1.8;
}

#std-representative .std-popup__content .inner .title {
  width: 100%;
  background: #00a0aa;
  font-size: 20px;
  font-weight: 500;
  line-height: 1;
  color: #fff;
  padding: 12px 0;
  text-align: center;
  margin-bottom: 30px;
}

#std-representative .std-popup__content .inner .sub-title {
  font-size: 25px;
  line-height: 1;
  padding-left: 15px;
  position: relative;
  margin-bottom: 15px;
}

#std-representative .std-popup__content .inner .sub-title::before {
  content: "";
  width: 5px;
  height: 30px;
  background: #00a0aa;
  position: absolute;
  left: 0;
  top: 55%;
  transform: translateY(-50%);
}

#std-representative .std-popup__content .inner .a-table {
  margin-top: 30px;
}

#std-representative .std-popup__content .inner .box {
  padding: 30px;
}

#std-representative .std-popup__content .inner .box .box-title {
  font-size: 20px;
  font-weight: 500;
  line-height: 1.4;
  text-align: center;
  margin-bottom: 30px;
}

#std-representative .std-popup__content .inner .box .box-txt {
  line-height: 1.9;
}

#std-representative .std-popup__content .inner .box .btn.blue01 {
  margin-top: 30px;
}

#std-representative .std-popup__content .inner .pic-wrap {
  display:flex;
  flex-wrap:wrap;
  gap: 4%;
}

#std-representative .std-popup__content .inner .pic-wrap .a-pic{
  width:calc(96%/3);
}

#std-representative .std-popup__content .inner .pic-wrap.mt-20 {
  margin-top: 20px;
}

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

  #std-representative .std-popup__content .a-table th,
  #std-representative .std-popup__content .a-table td {
    font-size: 3vw;
    padding: 2vw;
    font-weight:300;
  }

  #std-representative .std-popup__content .inner p:not(.a-blur-photo__lead, .text-area p, .title, .sub-title) {
    font-size: 3.8vw;
  }

  #std-representative .std-popup__content .inner .title {
    font-size: 4.5vw;
    padding: 2.667vw 0;
    margin-bottom: 5.333vw;
  }

  #std-representative .std-popup__content .inner .sub-title {
    font-size: 4.5vw;
    padding-left: 2.667vw;
    margin-bottom: 2.667vw;
  }

  #std-representative .std-popup__content .inner .sub-title::before {
    width: 0.889vw;
    height: 5.333vw;
  }

  #std-representative .std-popup__content .inner .a-table {
    margin-top: 5.333vw;
  }

  #std-representative .std-popup__content .inner .box {
    padding: 5.333vw;
  }

  #std-representative .std-popup__content .inner .box .box-title {
    font-size: 3.555vw;
    margin-bottom: 5.333vw;
  }

  #std-representative .std-popup__content .inner .box .btn.blue01 {
    margin-top: 5.333vw;
  }

    #std-representative .std-popup__content .inner .pic-wrap{
      gap:3vw 4%;
    }

      
#std-representative .std-popup__content .inner .pic-wrap .a-pic {
  width: calc(96%/2);
}

#std-representative .std-popup__content .inner .pic-wrap .a-pic.pic01 {
  width: 100%;
}

  #std-representative .std-popup__content .inner .pic-wrap.mt-20 {
    margin-top: 3.555vw;
  }
}


/* 症状から推測される性病　symptoms */

.symptoms-table {
  width: 74%;
  margin:0 auto;
  border-collapse: collapse;
  table-layout: fixed;
}

.symptoms-table th,
.symptoms-table td {
  border: 1px solid rgba(0, 0, 0, 0.3);
  font-size: 16px;
  line-height: 1.8;
  padding: 30px 20px;
  vertical-align: middle;
}

.symptoms-table th.category {
  width: 6%;
  background: #fafafa;
  text-align: center;
  padding: 30px 0;
  letter-spacing: 0.1em;
}


.symptoms-table td {
  text-align: left;
  width:47%;
}

.symptoms-table td{
  background:#fff;
  width:47%;
}

.symptoms-table .vertical-text {
  display: inline-block;
  text-align: center;
}

.symptoms-table .vertical-text>span {
  display: block;
  line-height: 1.2;
}

.symptoms-table .kakko {
  display: block;
  transform: rotate(90deg);
  transform-origin: center;
}


.symptoms-table td.disease {
  background: #e6f5f5;
  color: #00a0aa;
  font-size: 20px;
  font-weight: 500;
}

@media screen and (max-width: 1300px) {
  .symptoms-table {
    width: 74%;
  }

  .symptoms-table th,
  .symptoms-table td {
    border: 1px solid rgba(0, 0, 0, 0.3);
    font-size: 1.231vw;
    padding: 2.308vw 1.538vw;
  }

  .symptoms-table th.category {
    padding: 2.308vw 0;
  }

  .symptoms-table th.category .tr-x {
    transform: translateX(15%);
  }

  .symptoms-table td.disease {
    font-size: 1.538vw;
  }
}

@media screen and (max-width: 768px) {
  .symptoms-table {
    width: 95%;
  }

  .symptoms-table th,
  .symptoms-table td {
    font-size: 1.92vw;
    padding: 3.4vw 2vw;
  }

  .symptoms-table th.category {
    padding: 3.2vw 0;
    width:7%;
  }

  .symptoms-table td.disease {
    font-size: 2.2vw;
    width:45%;
  }
}

@media screen and (max-width: 480px) {
  .symptoms-table {
    width: 100%;
  }

  .symptoms-table th,
  .symptoms-table td {
    font-size: 3.6vw;
    padding: 4vw 3vw;
  }

  .symptoms-table th.category {
    padding: 5vw 0;
    width:10%;
  }

.symptoms-table td{
  width:45%;
}

  .symptoms-table td.disease {
    font-size: 4vw;
    width:45%;
  }
}

/* features */

#std-features .btm-content{
  padding:50px;
  width:81.5%;
  margin:0 auto;
  margin-top:80px;
}

#std-features .btm-content .title{
  font-size: 20px;
  font-weight: 500;
  text-align: center;
}

#std-features .btm-content .box-wrap{
  display:flex; 
  gap:1.7%;
  margin-top:30px;
}

#std-features .btm-content .box-wrap .a-item{
  width:calc((100% - 1.7% * 2)/3);
  padding:23px;
  text-align: center;
}

#std-features .btm-content .box-wrap .a-item .box_ttl{
  font-size:16px;
  line-height:1;
}

#std-features .btm-content .box-wrap .a-item .box-txt{
  margin-top:13px;
  line-height:1;
  font-size:20px;
  font-weight:500;
}

#std-features .btm-content .btm{
  font-size:16px;
  line-height:1.6;
  margin-top:30px;
}

@media screen and (max-width: 1300px) {
  #std-features .btm-content {
    padding: 3.846vw;
    width: 81.5%;
    margin-top: 6.154vw;
  }

  #std-features .btm-content .title {
    font-size: 1.538vw;
  }

  #std-features .btm-content .box-wrap {
    margin-top: 2.308vw;
  }

  #std-features .btm-content .box-wrap .a-item {
    padding: 1.769vw;
  }

  #std-features .btm-content .box-wrap .a-item .box_ttl {
    font-size: 1.231vw;
  }

  #std-features .btm-content .box-wrap .a-item .box-txt {
    margin-top: 1vw;
    font-size: 1.538vw;
  }

  #std-features .btm-content .btm {
    font-size: 1.231vw;
    margin-top: 2.308vw;
  }
}

@media screen and (max-width: 768px) {
  #std-features .btm-content {
    width: 100%;
    padding: 6vw;
    margin-top: 9.6vw;
  }

  #std-features .btm-content .title {
    font-size: 2.4vw;
  }

  #std-features .btm-content .box-wrap {
    gap: 2%;
    margin-top: 3.6vw;
  }

  #std-features .btm-content .box-wrap .a-item {
    width: calc((100% - 2% * 2)/3);
    padding: 2vw;
  }

  #std-features .btm-content .box-wrap .a-item .box_ttl {
    font-size: 1.92vw;
  }

  #std-features .btm-content .box-wrap .a-item .box-txt {
    margin-top: 1.56vw;
    font-size: 2.2vw;
  }

  #std-features .btm-content .btm {
    font-size: 1.92vw;
    margin-top: 3.6vw;
  }
}

@media screen and (max-width: 480px) {
  #std-features .btm-content {
    width: 90%;
    padding: 8.889vw 5.333vw;
    margin-top: 14.222vw;
  }

  #std-features .btm-content .title {
    font-size: 4.5vw;
  }

  #std-features .btm-content .box-wrap {
    gap: 3vw;
    margin-top: 5.333vw;
    flex-wrap: wrap;
  }

  #std-features .btm-content .box-wrap .a-item {
    width: calc((100% - 3vw)/2);
    padding: 4.889vw 3.556vw;
  }

    #std-features .btm-content .box-wrap .a-item:nth-child(3){
      width:100%;
    }

  #std-features .btm-content .box-wrap .a-item .box_ttl {
    font-size: 4vw;
  }

  #std-features .btm-content .box-wrap .a-item .box-txt {
    margin-top: 1.5vw;
    font-size: 4.5vw;
  }

  #std-features .btm-content .btm {
    font-size: 3.2vw;
    margin-top: 5.333vw;
  }
}


/* ed *

/* medicine お薬/ */

#ed-medicine .other-surgery-wrap{
  padding-top:18px;
}

#ed-medicine .other-surgery-wrap .a-item .img-wrap{
  display:grid;
  grid-template-columns: repeat(2,1fr);
  gap:5%;
  margin-bottom:25px;
}

#ed-medicine .other-surgery-wrap .a-item .txt{
  display:flex;
  justify-content: space-between;
}

#ed-medicine .other-surgery-wrap .a-item .txt {
  margin: 0;
}

#ed-medicine .other-surgery-wrap .a-item{
  margin-top:25px;
}

#ed-medicine .other-surgery-wrap .a-item .txt {
  padding: 15px 0;
}

#ed-medicine .other-surgery-wrap .a-item .txt + .txt{
  border-top:1px dashed rgba(0,0,0,0.5);
}


#ed-medicine .other-surgery-wrap .a-item.item02 .title::after,
#ed-medicine .other-surgery-wrap .a-item.item03 .title::after{
  content:none;
}

#ed-medicine .btm-txt{
  font-size:14px;
  width:90%;
  margin:0 auto;
  max-width:1080px;
margin-top: 30px;
}

@media screen and (max-width: 1300px) {
  #ed-medicine .other-surgery-wrap {
    padding-top: 1.385vw;
  }

  #ed-medicine .other-surgery-wrap .a-item .img-wrap {
    gap: 5%;
    margin-bottom: 1.923vw;
  }

  #ed-medicine .other-surgery-wrap .a-item {
    margin-top: 1.923vw;
  }

    #ed-medicine .other-surgery-wrap .a-item .txt{
      padding: 1.154vw 0;
    }

  #ed-medicine .other-surgery-wrap .a-item .txt+.txt {
    border-top: 0.077vw dashed rgba(0, 0, 0, 0.5);
  }

  #ed-medicine .btm-txt {
    font-size: 1.077vw;
    margin-top: 2.308vw;
  }
}

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

}


#ed-medicine .top-sec{
  position:relative;
}

#ed-medicine .top-sec::after{
  content:"";
  width: 0;
    height: 0;
    border-style: solid;
    border-right: 50vw solid transparent;
    border-left: 50vw solid transparent;
    border-top: 100px solid #fff;
    border-bottom: 0;
    position:absolute;
    top:100%;
    left:0;
    z-index:1;
}

#ed-medicine .btm-sec .btm-title{
  text-align: center;
  font-size:32px;
  font-weight:500;
  letter-spacing:0.08em;
}

#ed-medicine .btm-sec .fs-01{
  font-size:16px;
  line-height:1.9;
}

#ed-medicine .btm-sec .fs-02{
  font-size:18px;
  padding-left:15px;
  position:relative;
}

#ed-medicine .btm-sec .fs-03{
  font-size:14px;
  line-height:2;
}

#ed-medicine .btm-sec .fs-02::before{
  content:"";
  width:3.5px;
  height:28px;
  background:#00a0aa;
  position:absolute;
  left:0;
  top:8%;
}

#ed-medicine .btm-sec .mt-30{
  margin-top:30px;
}

#ed-medicine .btm-sec .fs-01 {
  margin-top: 15px;
}

#ed-medicine .btm-sec .mt-50{
  margin-top:50px;
}

@media screen and (max-width: 1300px) {
  #ed-medicine .top-sec::after {
    border-right: 50vw solid transparent;
    border-left: 50vw solid transparent;
    border-top: 7.7vw solid #fff;
  }

  #ed-medicine .btm-sec .btm-title {
    font-size: 2.462vw;
  }

  #ed-medicine .btm-sec .fs-01 {
    font-size: 1.231vw;
  }

  #ed-medicine .btm-sec .fs-02 {
    font-size: 1.385vw;
    padding-left: 1.154vw;
  }

  #ed-medicine .btm-sec .fs-03 {
    font-size: 1.077vw;
  }

  #ed-medicine .btm-sec .fs-02::before {
    width: 0.269vw;
    height: 2.154vw;
  }

  #ed-medicine .btm-sec .mt-30 {
    margin-top: 2.308vw;
  }

  #ed-medicine .btm-sec .fs-01 {
    margin-top: 1.154vw;
  }

  #ed-medicine .btm-sec .mt-50 {
    margin-top: 3.846vw;
  }
}

@media screen and (max-width: 768px) {
  #ed-medicine .top-sec::after {
    border-right: 50vw solid transparent;
    border-left: 50vw solid transparent;
    border-top: 12vw solid #fff;
  }

  #ed-medicine .btm-sec .btm-title {
    font-size: 3.84vw;
  }

  #ed-medicine .btm-sec .fs-01 {
    font-size: 1.92vw;
  }

  #ed-medicine .btm-sec .fs-02 {
    font-size: 2.16vw;
    padding-left: 1.8vw;
  }

  #ed-medicine .btm-sec .fs-03 {
    font-size: 1.68vw;
  }

  #ed-medicine .btm-sec .fs-02::before {
    width: 0.42vw;
    height: 3.36vw;
  }

  #ed-medicine .btm-sec .mt-30 {
    margin-top: 3.6vw;
  }

  #ed-medicine .btm-sec .fs-01 {
    margin-top: 1.8vw;
  }

  #ed-medicine .btm-sec .mt-50 {
    margin-top: 6vw;
  }
}

@media screen and (max-width: 480px) {
  #ed-medicine .top-sec::after {
    border-right: 50vw solid transparent;
    border-left: 50vw solid transparent;
    border-top: 15vw solid #fff;
  }

  #ed-medicine .btm-sec .btm-title {
    font-size: 4.5vw;
  }

  #ed-medicine .btm-sec .fs-01 {
    font-size: 4vw;
  }

  #ed-medicine .btm-sec .fs-02 {
    font-size: 4.5vw;
    padding-left: 2.667vw;
    line-height:1.6;
  }

  #ed-medicine .btm-sec .fs-03 {
    font-size: 3vw;
  }

  #ed-medicine .btm-sec .fs-02::before {
    width: 0.778vw;
    height: 4.978vw;
    top:1.3vw;
  }

  #ed-medicine .btm-sec .mt-30 {
    margin-top: 5.333vw;
  }

  #ed-medicine .btm-sec .mt-15 {
    margin-top: 2.667vw !important;
  }

  #ed-medicine .btm-sec .mt-50 {
    margin-top: 8.889vw;
  }
}


/* aga  */

/* about AGAについて */

#aga-about .inner .txt{
  font-size:16px;
  line-height:1.8;
}

#aga-about .inner .img02{
  width:71%;
  margin:0 auto;
  margin-top:40px;
}

#aga-about .inner .flex,
#aga-about .inner .cnt{
  margin-top:35px;
}


#aga-about .inner .cnt .img03{
  max-width:calc((100% - 2.7%) /2);
  margin-right:2.7%;
  float: left;
}

#aga-about .inner .cnt .txt02{
  font-size:18px;
  line-height:2.2;
}


#aga-about .inner .flex::after{
  content:"";
  display:block;
  clear:both;
}

#aga-about .btm-box{
  width:81.5%;
  margin-left: auto;
  margin-right: auto;
  padding:40px;
}

#aga-about .btm-box p{
  font-size:24px;
  font-weight:500;
  text-align: center;
}

@media screen and (max-width: 1300px) {
  #aga-about .inner .txt {
    font-size: 1.231vw;
  }

  #aga-about .inner .img02 {
    margin-top: 3.077vw;
  }

  #aga-about .inner .flex {
    margin-top: 2.692vw;
  }

  #aga-about .inner .flex .txt02 {
    font-size: 1.385vw;
  }

  #aga-about .btm-box {
    width: 81.5%;
    padding: 3.077vw;
  }

  #aga-about .btm-box p {
    font-size: 1.846vw;
  }
}

@media screen and (max-width: 768px) {
  #aga-about .inner .txt {
    font-size: 1.92vw;
  }

    #aga-about .inner .img01{
      overflow: scroll;
    }

    #aga-about .inner .img01 img {
      min-width:800px;
    }

  #aga-about .inner .img02 {
    width: 85%;
    margin-top: 4.8vw;
  }

  #aga-about .inner .flex {
    margin-top: 4.2vw;
  }

  #aga-about .inner .cnt .img03 {
    min-width:55%;
    margin-right: 4%;
  }

  #aga-about .inner .cnt .txt02 {
    font-size: 2.16vw;
  }

  #aga-about .btm-box {
    width: 100%;
    padding: 4vw;
  }

  #aga-about .btm-box p {
    font-size: 2.6vw;
  }
}

@media screen and (max-width: 480px) {
  #aga-about .inner .txt {
    font-size: 4vw;
  }

    #aga-about .inner .img01 img {
      min-width: 660px;
    }

  #aga-about .inner .img02 {
    width: 100%;
    margin-top: 7.111vw;
  }

  #aga-about .inner .flex {
    margin-top: 6.222vw;
  }

  #aga-about .inner .cnt .img03 {
    max-width: 100%;
    width: 100%;
    margin-right: 0;
    margin-bottom: 4.444vw;
    float: none;
  }

  #aga-about .inner .cnt .txt02 {
    font-size: 4vw;
    line-height: 2;
  }

  #aga-about .btm-box {
    width: 100%;
    padding: 5.333vw;
  }

  #aga-about .btm-box p {
    font-size: 4.5vw;
    line-height:1.8;
  }
}


/* 20260407追加 */

#pe-medicaltreatment .btm-box{
  padding:30px 45px;
}

#pe-medicaltreatment .btm-box .ttl{
  font-size:30px;
  font-weight:500;
  letter-spacing:0.08em;
  text-align: center;
}

#pe-medicaltreatment .btm-box .txt{
  margin-top:25px;
  font-size:16px;
  line-height:1.8;
}

@media screen and (max-width: 1300px) {
  #pe-medicaltreatment .btm-box {
    padding: 2.308vw 3.462vw;
  }

  #pe-medicaltreatment .btm-box .ttl {
    font-size: 2.308vw;
  }

  #pe-medicaltreatment .btm-box .txt {
    margin-top: 1.923vw;
    font-size: 1.231vw;
  }
}

@media screen and (max-width: 768px) {
  #pe-medicaltreatment .btm-box {
    padding: 3.6vw 5.4vw;
  }

  #pe-medicaltreatment .btm-box .ttl {
    font-size: 3.6vw;
  }

  #pe-medicaltreatment .btm-box .txt {
    margin-top: 3vw;
    font-size: 1.92vw;
  }
}

@media screen and (max-width: 480px) {
  #pe-medicaltreatment .btm-box {
    padding: 5.333vw 8vw;
    margin-top:15vw;
  }

  #pe-medicaltreatment .btm-box .ttl {
    font-size: 5.333vw;
  }

  #pe-medicaltreatment .btm-box .txt {
    margin-top: 4.444vw;
    font-size: 4vw;
  }
}


.houkei-example .content .ttl_sample{
  font-size:30px;
  padding-left:15px;
  position:relative;
}

.houkei-example .content .ttl_sample::before{
  content:"";
  width:5px;
  height:40px;
  background:#00a0aa;
  position:absolute;
  left:0;
  top:50%;
  transform: translateY(-50%);
}

.houkei-example .content .sample-wrap{
  display:grid;
  grid-template-columns: repeat(3,1fr);
  gap:70px 2.7%;
  margin-top:30px;
}

.houkei-example .content .sample-wrap .a-item .item_btm{
  margin-top:15px;
}
.houkei-example .add-article{
  margin-top: 30px;
  font-size: 18px;
}
.houkei-example .add-article a{
  border-bottom: 1px solid #000;
  transition: 0.3s;
}

.houkei-example .content .sample-wrap .a-item .item_btm .item_ttl{
  font-size:16px;
  margin-top:20px;
  margin-bottom:15px;
}

.houkei-example .content .sample-wrap .a-item .item_btm .item_data{
  display:flex;
  align-items: center;
}

.houkei-example .content .sample-wrap .a-item .item_btm .item_data+.item_data{
  margin-top:5px;
}

.houkei-example .content .sample-wrap .a-item .item_btm .item_data .label{
  font-size:16px;
  line-height:1;
  background:#00a0aa;
  color:#fff;
  padding:7px;
  margin-right:10px;
}

.houkei-example .content .sample-wrap .a-item .item_btm .item_data .before{
  font-size: 16px;
}

.houkei-example .content .sample-wrap .a-item .item_btm .item_data .arrow{
  width:11px;
  height:auto;
  margin:auto 5px;
}

.houkei-example .content .sample-wrap .a-item .item_btm .item_data .arrow img{
  vertical-align: middle;
}

.houkei-example .content .sample-wrap .a-item .item_btm .item_data .after{
  font-size:20px;
  font-weight:500;
  margin-right:13px;
}

.houkei-example .content .sample-wrap .a-item .item_btm .item_data .after .small{
  font-size:16px;
}

.houkei-example .content .sample-wrap .a-item .item_btm .item_data .result{
  font-size:16px;
  line-height:1;
  padding:7px;
  border:1px solid #000;
}

@media screen and (max-width: 1300px) {
  .houkei-example .content .ttl_sample {
    font-size: 2.308vw;
    padding-left: 1.154vw;
  }

  .houkei-example .content .ttl_sample::before {
    width: 0.385vw;
    height: 3.077vw;
  }

  .houkei-example .content .sample-wrap {
    grid-template-columns: repeat(3, 1fr);
    column-gap: 2.7%;
    row-gap: 5.385vw;
    margin-top: 2.308vw;
  }

  .houkei-example .content .sample-wrap .a-item .item_btm {
    margin-top: 1.154vw;
  }

  .houkei-example .content .sample-wrap .a-item .item_btm .item_ttl {
    font-size: 1.231vw;
    margin-top: 1.538vw;
    margin-bottom:1.1vw;
  }

  .houkei-example .content .sample-wrap .a-item .item_btm .item_data+.item_data {
    margin-top: 0.385vw;
  }

  .houkei-example .content .sample-wrap .a-item .item_btm .item_data .label {
    font-size: 1.231vw;
    padding: 0.538vw;
    margin-right: 0.769vw;
  }

  .houkei-example .content .sample-wrap .a-item .item_btm .item_data .before {
    font-size: 1.231vw;
  }

  .houkei-example .content .sample-wrap .a-item .item_btm .item_data .arrow {
    width: 0.846vw;
    margin: auto 0.385vw;
  }

  .houkei-example .content .sample-wrap .a-item .item_btm .item_data .after {
    font-size: 1.538vw;
    margin-right: 1vw;
  }

  .houkei-example .content .sample-wrap .a-item .item_btm .item_data .after .small {
    font-size: 1.231vw;
  }

  .houkei-example .content .sample-wrap .a-item .item_btm .item_data .result {
    font-size: 1.231vw;
    padding: 0.538vw;
    border: 1px solid #000;
  }
}

@media screen and (max-width: 768px) {
  .houkei-example .content .ttl_sample {
    font-size: 3.6vw;
    padding-left: 1.8vw;
  }

  .houkei-example .content .ttl_sample::before {
    width: 0.6vw;
    height: 4.8vw;
  }

  .houkei-example .content .sample-wrap {
    grid-template-columns: repeat(2, 1fr);
    column-gap: 4%;
    row-gap: 8.4vw;
    margin-top: 3.6vw;
  }

  .houkei-example .content .sample-wrap .a-item .item_btm {
    margin-top: 1.8vw;
  }

  .houkei-example .content .sample-wrap .a-item .item_btm .item_ttl {
    font-size:2.5vw;
    margin-top: 2.4vw;
    margin-bottom:1.8vw;
  }

  .houkei-example .content .sample-wrap .a-item .item_btm .item_data+.item_data {
    margin-top: 0.6vw;
  }

  .houkei-example .content .sample-wrap .a-item .item_btm .item_data .label {
    font-size: 1.92vw;
    padding: 0.84vw;
    margin-right: 1.2vw;
  }

  .houkei-example .content .sample-wrap .a-item .item_btm .item_data .before {
    font-size: 1.92vw;
  }

  .houkei-example .content .sample-wrap .a-item .item_btm .item_data .arrow {
    width: 1.32vw;
    margin: auto 0.6vw;
  }

  .houkei-example .content .sample-wrap .a-item .item_btm .item_data .after {
    font-size: 2.4vw;
    margin-right: 1.56vw;
  }

  .houkei-example .content .sample-wrap .a-item .item_btm .item_data .after .small {
    font-size: 1.92vw;
  }

  .houkei-example .content .sample-wrap .a-item .item_btm .item_data .result {
    font-size: 1.92vw;
    padding: 0.84vw;
  }
}

@media screen and (max-width: 480px) {
  .houkei-example .content .ttl_sample {
    font-size: 5.333vw;
    padding-left: 2.667vw;
  }

  .houkei-example .content .ttl_sample::before {
    width: 0.889vw;
    height: 7.111vw;
  }

  .houkei-example .content .sample-wrap {
    grid-template-columns: 1fr;
    column-gap: 0;
    row-gap: 12.444vw;
    margin-top: 5.333vw;
  }

  .houkei-example .content .sample-wrap .a-item .item_btm {
    margin-top: 2.667vw;
  }

  .houkei-example .content .sample-wrap .a-item .item_btm .item_ttl {
    font-size: 4.5vw;
    margin-top: 3.556vw;
    margin-bottom:2.8vw;
  }

  .houkei-example .content .sample-wrap .a-item .item_btm .item_data+.item_data {
    margin-top: 0.889vw;
  }

  .houkei-example .content .sample-wrap .a-item .item_btm .item_data .label {
    font-size: 4vw;
    padding: 1.556vw;
    margin-right: 1.778vw;
  }

  .houkei-example .content .sample-wrap .a-item .item_btm .item_data .before {
    font-size: 4vw;
  }

  .houkei-example .content .sample-wrap .a-item .item_btm .item_data .arrow {
    width: 2.7vw;
    margin: auto 0.889vw;
  }

  .houkei-example .content .sample-wrap .a-item .item_btm .item_data .after {
    font-size: 4.5vw;
    margin-right: 2.311vw;
  }

  .houkei-example .content .sample-wrap .a-item .item_btm .item_data .after .small {
    font-size: 4vw;
  }

  .houkei-example .content .sample-wrap .a-item .item_btm .item_data .result {
    font-size: 4vw;
    padding: 1.556vw;
    border: 1px solid #000;
  }
}

.houkei-example .a-blur-photo__icon{
  width:21%;
}

.houkei-example .a-blur-photo__lead{
  font-size:clamp(14px, 2.5cqw, 16px);
  line-height:1.7;
}

.houkei-example .a-blur-photo__btn{
  padding:clamp(8px, 1.5cqw, 10px) clamp(12px, 3.4cqw, 16px);
}

.houkei-example .a-blur-photo__btn span{
  font-size: clamp(14px, 2.5cqw, 16px);
}


.houkei-example .a-item img:not(.blur-icon, .arrow img){
  height:260px;
  object-fit: contain;
}

@media screen and (max-width: 1300px) {
  .houkei-example .a-item img:not(.blur-icon, .arrow img) {
    height: 20vw;
  }

    .houkei-example .a-blur-photo__lead {
      font-size: clamp(12px, 2.5cqw, 16px);
      line-height: 1.7;
    }
  
    .houkei-example .a-blur-photo__btn {
      padding: clamp(7px, 1.5cqw, 10px) clamp(12px, 3.4cqw, 16px);
    }
  
    .houkei-example .a-blur-photo__btn span {
      font-size: clamp(12px, 2.5cqw, 16px);
    }

}

@media screen and (max-width: 768px) {
  .houkei-example .a-item img:not(.blur-icon, .arrow img) {
    height: 31.2vw;
  }

    .houkei-example .a-blur-photo__icon{
      width:15%;
    }

    .houkei-example .a-blur-photo__lead,
    .houkei-example .a-blur-photo__btn span{
      font-size: clamp(0px, 4cqw, 16px);
    }
  
    .houkei-example .a-blur-photo__btn {
      padding: clamp(7px, 1.5cqw, 10px) clamp(9px, 4.923cqw, 15px);
    }
  
}

@media screen and (max-width: 480px) {
  .houkei-example .a-item img:not(.blur-icon, .arrow img) {
    height: 57.778vw;
  }

  .houkei-example .a-blur-photo__lead {
  font-size: clamp(0px, 3.5cqw, 14px);
  }

  .houkei-example .a-blur-photo__btn {
  font-size: clamp(0px, 3.5cqw, 14px);
  }

  .houkei-example .a-blur-photo__box {
  padding: 3%;
  }

  .houkei-example .a-blur-photo__box p {
  margin: 0;
  font-size: clamp(0px, 3.8cqw, 15px);
  line-height: 1.1;
  color: #111;
  text-align: left;
  }

  .houkei-example .a-blur-photo__box p .big {
  font-size: clamp(0px, 4.5cqw, 18px);
  }
}



#gs-about .btm_box,
#potash-about .btm_box {
  background: #f5f5f5;
  padding: 50px;
}

#gs-about .btm_box .box_ttl,
#potash-about .btm_box .box_ttl {
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 0.08em;
  padding-left: 22px;
  position: relative;
}

#gs-about .btm_box .box_ttl:before,
#potash-about .btm_box .box_ttl:before {
  content: "";
  width: 6px;
  height: 22px;
  background: #00a0aa;
  position: absolute;
  left: 0;
  top: 7.5px;
}

#gs-about .btm_box .box_txt,
#potash-about .btm_box .box_txt {
  font-size: 18px;
  line-height: 2.3;
  margin-top: 30px;
}

#gs-about .btm_box .box_txt a,
#potash-about .btm_box .box_txt a {
  border-bottom: 1px solid #000;
  transition: 0.3s;
}

#gs-about .btm_box .box_txt a:hover,
#potash-about .btm_box .box_txt a:hover {
  color: #00a0aa;
  border-bottom: 1px solid #00a0aa;
}


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

  #gs-about .btm_box,
  #potash-about .btm_box {
    padding: 3.846vw;
  }

  #gs-about .btm_box .box_ttl,
  #potash-about .btm_box .box_ttl {
    font-size: 1.538vw;
    padding-left: 1.692vw;
  }

  #gs-about .btm_box .box_ttl:before,
  #potash-about .btm_box .box_ttl:before {
    width: 0.462vw;
    height: 1.692vw;
    top: 0.577vw;
  }

  #gs-about .btm_box .box_txt,
  #potash-about .btm_box .box_txt {
    font-size: 1.385vw;
    margin-top: 2.308vw;
  }

  #gs-about .btm_box .box_txt a,
  #potash-about .btm_box .box_txt a {
    border-bottom: 0.077vw solid #000;
  }

  #gs-about .btm_box .box_txt a:hover,
  #potash-about .btm_box .box_txt a:hover {
    border-bottom: 0.077vw solid #00a0aa;
  }
}

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

  #gs-about .btm_box,
  #potash-about .btm_box {
    padding: 6vw;
  }

  #gs-about .btm_box .box_ttl,
  #potash-about .btm_box .box_ttl {
    font-size: 2.4vw;
    padding-left: 2.64vw;
  }

  #gs-about .btm_box .box_ttl:before,
  #potash-about .btm_box .box_ttl:before {
    width: 0.72vw;
    height: 2.64vw;
    top: 0.9vw;
  }

  #gs-about .btm_box .box_txt,
  #potash-about .btm_box .box_txt {
    font-size: 2.16vw;
    margin-top: 3.6vw;
  }
}

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

  #gs-about .btm_box,
  #potash-about .btm_box {
    padding: 8.889vw 5.333vw;
  }

  #gs-about .btm_box .box_ttl,
  #potash-about .btm_box .box_ttl {
    font-size: 4.5vw;
    padding-left: 3.911vw;
    line-height: 1.5;
  }

  #gs-about .btm_box .box_ttl:before,
  #potash-about .btm_box .box_ttl:before {
    width: 1.067vw;
    height: 3.911vw;
    top: 1vw;
  }

  #gs-about .btm_box .box_txt,
  #potash-about .btm_box .box_txt {
    font-size: 4vw;
    margin-top: 5.333vw;
    line-height: 1.8;
  }

  #gs-about .btm_box .box_txt a,
  #potash-about .btm_box .box_txt a {
    border-bottom: 0.208vw solid #000;
  }

  #gs-about .btm_box .box_txt a:hover,
  #potash-about .btm_box .box_txt a:hover {
    border-bottom: 0.208vw solid #00a0aa;
  }
}

@media screen and (max-width:480px){
	  #gnp .gnp-wrap .a-gnp::before{
    width:85%;
}
	#gnp .gnp-wrap .a-gnp.gnp02::before{
    background-position: 50%;
  }

    #gnp .gnp-wrap .a-gnp.gnp03::before {
      background-position: 65%;
    }
}


#history .left,
#history-02 .left
 {
  position: relative;
}

#history .pc-stick,
#history-02 .pc-stickyy {
  width: 100%;
}

#history .pc-sticky.is-fixed,
#history-02 .pc-sticky.is-fixed {
  position: fixed;
  top: 20px;
  width: calc(20% * 0.9);
}

#history .pc-sticky.is-bottom,
#history-02 .pc-sticky.is-bottom {
  position: absolute;
  top: auto;
  bottom: 0;
}


/* カリ高リミッター解除法 */

/* detail */

#potash-detail .txt02,
#potash-detail .txt02 span{
  font-size:25px;
  font-weight:600;
  text-align: center;
  line-height:1.8;
}

#potash-detail .detail-img{
  margin-top:80px;
}

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

  #potash-detail .txt02,
  #potash-detail .txt02 span {
    font-size: 1.9vw;
  }

  #potash-detail .detail-img {
    margin-top: 6.2vw;
  }
}

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

  #potash-detail .txt02,
  #potash-detail .txt02 span {
    font-size: 2.6vw;
  }

  #potash-detail .detail-img {
    margin-top: 9vw;
  }
}


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

  #potash-detail .txt02,
  #potash-detail .txt02 span {
    font-size: 4vw;
    text-align: left;
  }

  #potash-detail .detail-img {
    margin-top: 12vw;
    overflow-x: scroll;
  }

    #potash-detail .detail-img img{
      min-width:600px;
    }
}


/* 20260512 追加モーダル */

.custom-modal-overlay {
  position: fixed;
  inset: 0;
  z-index: 999999;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.8);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

.custom-modal-overlay.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.custom-modal {
  position: relative;
  width: 81%;
  max-width:880px;
  max-height: 90vh;
  overflow-y: auto;
  background: #fff;
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.4);
}

html.is-modal-open,
body.is-modal-open {
  overflow: hidden;
}

.custom-modal.modal01{
  background:#fafaf5;
  padding:40px 50px 60px 40px;
}

.custom-modal.modal01 .inner-box{
  background:#fff;
  margin:25px auto;
  padding:40px 70px;
}

.custom-modal .fs-30 {
  font-size: 30px;
}

.custom-modal .fs-20{
  font-size:20px;
}

.custom-modal .fs-16{
  font-size:16px;
}

.custom-modal .fw-mid{
  font-weight:500;
}

.custom-modal.modal01 .txt-ttl,
.custom-modal.modal01 .title01{
    text-align: center;
}

.custom-modal.modal01 .txt01,
.custom-modal.modal01 .txt02{
  line-height:2;
  margin-top:20px;
}

.custom-modal.modal01 .txt02{
  margin-top:15px;
}

.custom-modal.modal01 .title02{
  position:relative;
  padding-left:15px;
}

.custom-modal.modal01 .title02::before{
  content:"";
  width:6px;
  height:22px;
  background:#00a0aa;
  position:absolute;
  left:0;
  top:7px;
}

.custom-modal.modal02{
  padding:75px 50px 80px 50px;
}

.custom-modal.modal02 .title{
  text-align: center;
  line-height:1;
  position:relative;
  z-index:0;
}

.custom-modal.modal02 .title::before{
  content:"";
  width:17.3px;
  height:80px;
  background-image:url(../img/ttl-back-caution.png);
  background-size: contain;
  background-repeat: no-repeat;
  position:absolute;
  left:50%;
  top:50%;
  transform: translate(-50%, -50%);
  z-index:-1;
}

.custom-modal.modal02 .txt{
  line-height:2;
}

.custom-modal.modal02 .sub-ttl{
  text-align: center;
  margin-top:50px;
  margin-bottom:30px;
}

.custom-modal.modal02 .modal-list{
  margin-top:50px;
}

.custom-modal.modal02 .modal-list li{
  padding-left:30px;
  position:relative;
}

.custom-modal.modal02 .modal-list li + li{
  margin-top:20px;
}

.custom-modal.modal02 .modal-list li::before{
  content:"";
  width:25px;
  height:26px;
  background-image:url(../img/modal-check.png);
  background-size: contain;
  background-repeat: no-repeat;
  position:absolute;
  left:0;
  top:0;
}

@media screen and (max-width: 1300px) {
  .custom-modal {
    max-width: 67.7vw;
    box-shadow: 0 0 2.3vw rgba(0, 0, 0, 0.4);
  }

  .custom-modal.modal01 {
    padding: 3.1vw 3.8vw 4.6vw 3.1vw;
  }

  .custom-modal.modal01 .inner-box {
    margin: 1.9vw auto;
    padding: 3.1vw 5.4vw;
  }

  .custom-modal .fs-30 {
    font-size: 2.3vw;
  }

  .custom-modal .fs-20 {
    font-size: 1.5vw;
  }

  .custom-modal .fs-16 {
    font-size: 1.2vw;
  }

  .custom-modal.modal01 .txt01,
  .custom-modal.modal01 .txt02 {
    margin-top: 1.5vw;
  }

  .custom-modal.modal01 .txt02 {
    margin-top: 1.2vw;
  }

  .custom-modal.modal01 .title02 {
    padding-left: 1.2vw;
  }

  .custom-modal.modal01 .title02::before {
    width: 0.5vw;
    height: 1.7vw;
    top: 0.5vw;
  }

  .custom-modal.modal02 {
    padding: 5.8vw 3.8vw 6.2vw 3.8vw;
  }

  .custom-modal.modal02 .title::before {
    width: 1.3vw;
    height: 6.2vw;
  }

  .custom-modal.modal02 .sub-ttl {
    margin-top: 3.8vw;
    margin-bottom: 2.3vw;
  }

  .custom-modal.modal02 .modal-list {
    margin-top: 3.8vw;
  }

  .custom-modal.modal02 .modal-list li {
    padding-left: 2.3vw;
  }

  .custom-modal.modal02 .modal-list li+li {
    margin-top: 1.5vw;
  }

  .custom-modal.modal02 .modal-list li::before {
    width: 1.9vw;
    height: 2vw;
  }
}

@media screen and (max-width: 768px) {
  .custom-modal {
    max-width: 90%;
    box-shadow: 0 0 3.7vw rgba(0, 0, 0, 0.4);
  }

  .custom-modal-content,
  .custom-modal .fs-16 {
    font-size: 2vw;
  }

  .custom-modal .fs-20 {
    font-size: 2.4vw;
  }

  .custom-modal .fs-30 {
    font-size: 2.8vw;
  }

  .custom-modal.modal01 {
    padding: 5vw 6.1vw 7.4vw 5vw;
  }

  .custom-modal.modal01 .inner-box {
    margin: 3vw auto;
    padding: 5vw 7vw;
  }

  .custom-modal.modal01 .txt01,
  .custom-modal.modal01 .txt02 {
    margin-top: 2.4vw;
  }

  .custom-modal.modal01 .txt02 {
    margin-top: 1.9vw;
  }

  .custom-modal.modal01 .title02 {
    padding-left: 1.9vw;
  }

  .custom-modal.modal01 .title02::before {
    width: 0.8vw;
    height: 2.7vw;
    top: 0.8vw;
  }

  .custom-modal.modal02 {
    padding: 9.3vw 6.1vw 9.9vw 6.1vw;
  }

  .custom-modal.modal02 .title::before {
    width: 2.1vw;
    height: 9.9vw;
  }

  .custom-modal.modal02 .sub-ttl {
    margin-top: 6.1vw;
    margin-bottom: 3.7vw;
  }

  .custom-modal.modal02 .modal-list {
    margin-top: 6.1vw;
  }

  .custom-modal.modal02 .modal-list li {
    padding-left: 3.7vw;
  }

  .custom-modal.modal02 .modal-list li+li {
    margin-top: 2.4vw;
  }

  .custom-modal.modal02 .modal-list li::before {
    width: 3vw;
    height: 3.2vw;
  }
}

@media screen and (max-width: 480px) {
  .custom-modal {
    box-shadow: 0 0 6.7vw rgba(0, 0, 0, 0.4);
  }

  .custom-modal-content,
  .custom-modal .fs-16 {
    font-size: 3.2vw;
  }

  .custom-modal .fs-20 {
    font-size: 3.6vw;
  }

  .custom-modal .fs-30 {
    font-size: 4.3vw;
  }

  .custom-modal.modal01 {
    padding: 7vw 5vw;
  }

  .custom-modal.modal01 .inner-box {
    margin: 5.3vw auto;
    padding: 8.7vw 4.3vw;
  }

  .custom-modal.modal01 .txt01,
  .custom-modal.modal01 .txt02 {
    margin-top: 4.2vw;
  }

  .custom-modal.modal01 .txt02 {
    margin-top: 3.3vw;
  }

  .custom-modal.modal01 .title02 {
    padding-left: 3.3vw;
  }

  .custom-modal.modal01 .title02::before {
    width: 1.4vw;
    height: 4.7vw;
    top: 1.4vw;
  }

  .custom-modal.modal02 {
    padding: 16.1vw 6vw 15vw 6vw;
  }

  .custom-modal.modal02 .title::before {
    width: 3.6vw;
    height: 17.2vw;
  }

  .custom-modal.modal02 .sub-ttl {
    margin-top: 10.6vw;
    margin-bottom: 4vw;
  }

  .custom-modal.modal02 .modal-list {
    margin-top: 7vw;
  }

  .custom-modal.modal02 .modal-list li {
    padding-left: 5vw;
  }

  .custom-modal.modal02 .modal-list li+li {
    margin-top: 3vw;
  }

  .custom-modal.modal02 .modal-list li::before {
    width: 4vw;
    height: 5.6vw;
    top:0.5vw;
  }
}


/* 20260520追記 */

/* ed */

.ed-flex01{
  display:flex;
  width:66%;
  margin:0 auto;
  gap:8%;
  margin-top:35px;
  margin-bottom:55px;
  align-items: center;
}

.ed-flex01 .left{
  width:37%;
}

.ed-flex01 .right{
  width:55%;
}

.ed-flex01 .right .txt{
  color:#000;
  line-height:1.8;
  font-size:16px;
}

.ed-flex01 .right .big{
  font-size:22px;
  font-weight:500;
  line-height:1;
  margin-top:20px;
}

.ed-flex01 .right .label{
  font-size:25px;
  font-weight:600;
  color:#fff;
  line-height:1;
  padding:7px 11px;
  background:#00a0aa;
  display:block;
  width:fit-content;
  margin-bottom:30px;
  letter-spacing:0.1em;
}

.comparison-table-wrap {
  width: 90%;
  max-width: 900px;
  margin: 0 auto;
}

.comparison-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  font-size: 16px;
  line-height: 1.8;
}

.comparison-table th,
.comparison-table td {
  padding: 30px;
  border: 1px solid rgba(0, 0, 0, 0.3);
  vertical-align: top;
  text-align: left;
  background: #fff;
  color: #000;
}

.comparison-table thead th {
  background: #f5f5f5;
  text-align: center;
  vertical-align: middle;
  padding-top: 15px;
  padding-bottom: 15px;
}

.comparison-table tbody th {
  width: 25%;
  background: #f5f5f5;
}

.comparison-table tbody td:nth-child(3) {
  background: #e6f5f5;
}

.comparison-table__blank {
  border: none !important;
  background: transparent !important;
}

.comparison-table ul {
  margin: 0;
}

.comparison-table li {
  margin: 0;
}

.ed-nsec02{
  margin-top:190px;
}

.ed-nsec02 .big{
  font-size:24px;
  font-weight:500;
  letter-spacing:0.1em;
  text-align: center;
  line-height:1.8;
}

.ed-nsec02 .nsec02-img{
  width:60%;
  margin:50px auto;
}

.ed-nsec02 .txt{
  width:72%;
  margin:0 auto;
  line-height:1.75;
  font-size:16px;
}

.ed-nsec-wh{
  background:#fff;
  padding:45px;
}

@media screen and (max-width: 1300px) {
  .ed-flex01 {
    margin-top: 2.7vw;
    margin-bottom: 4.2vw;
  }

  .ed-flex01 .right .txt {
    font-size: 1.2vw;
  }

  .ed-flex01 .right .big {
    font-size: 1.7vw;
    margin-top: 1.5vw;
  }

  .ed-flex01 .right .label {
    font-size: 1.9vw;
    padding: 0.5vw 0.8vw;
    margin-bottom: 2.3vw;
  }

  .comparison-table-wrap {
    max-width: 69.2vw;
  }

  .comparison-table {
    font-size: 1.2vw;
  }

  .comparison-table th,
  .comparison-table td {
    padding: 2.3vw;
  }

  .comparison-table thead th {
    padding-top: 1.2vw;
    padding-bottom: 1.2vw;
  }

  .ed-nsec02 {
    margin-top: 14.6vw;
  }

  .ed-nsec02 .big {
    font-size: 1.8vw;
  }

  .ed-nsec02 .nsec02-img {
    margin: 3.8vw auto;
  }

  .ed-nsec-wh {
    padding: 3.5vw;
  }

  .ed-nsec02 .txt {
    font-size: 1.2vw;
  }
}

@media screen and (max-width: 768px) {
  .ed-flex01 {
    margin-top: 4.2vw;
    margin-bottom: 6.6vw;
    width:80%;
  }

  .ed-flex01 .right .txt {
    font-size: 1.9vw;
  }

  .ed-flex01 .right .big {
    font-size: 2.6vw;
    margin-top: 2.4vw;
  }

  .ed-flex01 .right .label {
    font-size: 3vw;
    padding: 0.8vw 1.3vw;
    margin-bottom: 3.6vw;
  }

  .comparison-table-wrap {
    max-width: none;
  }

  .comparison-table {
    font-size: 1.9vw;
  }

  .comparison-table th,
  .comparison-table td {
    padding: 2.5vw;
  }

  .comparison-table thead th {
    padding-top: 1.8vw;
    padding-bottom: 1.8vw;
  }

  .ed-nsec02 {
    margin-top: 15vw;
  }

  .ed-nsec02 .big {
    font-size: 2.9vw;
  }

  .ed-nsec02 .nsec02-img {
    width:70%;
    margin: 6vw auto;
  }

  .ed-nsec-wh {
    padding: 5.4vw;
  }

    .ed-nsec02 .txt {
      font-size: 1.9vw;
      width: 80%;
    }
}

@media screen and (max-width: 480px) {
  .ed-flex01 {
    margin-top: 6.2vw;
    margin-bottom: 9.7vw;
    width:100%;
    align-items: flex-start;
  }

  .ed-flex01 .right .txt {
    font-size: 3.6vw;
  }

  .ed-flex01 .right .big {
    font-size: 4vw;
    margin-top: 2.5vw;
  }

  .ed-flex01 .right .label {
    font-size: 4vw;
    padding: 1.2vw 1.9vw;
    margin-bottom: 4vw;
  }

  .comparison-table-wrap{
    width:100%;
  }
  .comparison-table {
    font-size: 3vw;
  }

  .comparison-table th,
  .comparison-table td {
    padding: 3vw;
  }

  .comparison-table thead th {
    padding-top: 1.5vw;
    padding-bottom: 1.5vw;
  }

  .ed-nsec02 {
    margin-top: 13vw;
  }

  .ed-nsec02 .big {
    font-size: 4vw;
  }

  .ed-nsec02 .nsec02-img {
    margin: 8.8vw auto;
    width:90%;
  }

  .ed-nsec-wh {
    padding: 8vw;
  }

    .ed-nsec02 .txt {
      font-size: 3.8vw;
      width: 100%;
    }
}

/* スクロールヒント */

.scroll-hint {
  position: relative;
  z-index:99999;
}

.scroll-hint__inner {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.scroll-hint-icon-wrap{
  z-index:99999 !important;
}


.page-template-grumbling .a-2, .page .entry-content .a-2{
  background-color: #f5fafe;
}
.page-template-grumbling .attention, .page .entry-content .attention{
  padding: 40px;
  margin: 80px 0 0px 0px;
  background-color: #FAFAF5;
  font-weight: 300;
}
@media screen and (max-width: 500px){
  .page-template-grumbling .attention, .page .entry-content .attention{
    padding: 30px 30px;
  }
}
.page-template-grumbling .attention a, .page .entry-content .attention a{
  text-decoration: none;
  border-bottom: none;
}
.page-template-grumbling .attention a, .page .entry-content .attention a{
  color: #333;
  font-size: 16px;
  line-height: 28px;
}
@media screen and (max-width: 500px){
  .page-template-grumbling .attention a, .page .entry-content .attention a{
    font-size: 14px;
  }
}

/* =========================
   経歴セクション アコーディオン
   （.career_heading をクリックで .career_list を開閉）
========================= */
.career_section .career_heading{
  cursor: pointer;
  user-select: none;
  padding-right: 48px;
}

/* 右端の丸ボタン（back-to-top ボタンのミニ版）：矢印は白い ↓ / ↑ */
.career_section .career_heading::after{
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background-color: #00a0aa;
  /* background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23ffffff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 4 L10 14 M6 10 L10 14 L14 10'/%3E%3C/svg%3E"); */
  background-image:url(../img/arw-wht.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 8px auto;
  transform: translateY(-50%);
  transition: transform 0.3s ease, background-color 0.2s ease;
}

.career_section .career_heading:hover::after{
  background-color: #008c95;
}

.career_section.is_open .career_heading::after{
  transform: translateY(-50%) rotate(180deg);
}

/* .career_body（JSで動的生成するラッパー）を開閉。
   ※ section 内に .career_list が複数ある（所属医局・学会 等）ケースをまとめて開閉するため */
.career_section .career_body{
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease;
}

/* =========================
   参考文献ボックス
   （HTML 側 <div class="attention a-2 references"><p class="reference-heading">…</p><p>…</p></div> を装飾）
========================= */
.references{
  background: #e9eff0;
  border-radius: 6px;
  padding: 24px 28px;
  margin-top: 40px;
}

.references .reference-heading{
  color: #00a0aa;
  font-size: 20px;
  font-weight: 700;
  padding-left: 14px;
  border-left: 5px solid #00a0aa;
  margin: 0 0 18px;
  line-height: 1.2;
}

.references p:not(.reference-heading){
  margin: 0;
  line-height: 2;
  font-size: 15px;
}

.references a{
  color: #4a90e2;
  text-decoration: underline;
  word-break: break-word;
}

.references a:hover{
  color: #2b6bb8;
}

@media screen and (max-width: 767px){
  .references{
    padding: 18px 20px;
    margin-top: 30px;
  }
  .references .reference-heading{
    font-size: 17px;
    padding-left: 10px;
    border-left-width: 4px;
    margin-bottom: 14px;
  }
  .references p:not(.reference-heading){
    font-size: 13px;
    line-height: 1.9;
  }
}

/* =========================
   2つの banner セクション間の余白調整
   1つ目: padding-bottom 30px / 2つ目: padding-top 0
   （.pd-70 が padding: 70px 0 !important を持つため、こちらも !important で上書き）
========================= */
#banner + #banner-2 {
  padding-top: 0 !important;
  padding-bottom: 70px !important;
}
#banner:has(+ #banner-2) {
  padding-bottom: 30px !important;
}