@charset "utf-8";

/* スタイルシート
作成者：Hatomi Inc.
作成日：R8.3.17
-------------------------------------------------------------------------------------*/

/* =========================================================
  Responsive BR
========================================================= */

/* デフォルト無効 */
.br-701-800,
.br-801-900,
.br-901-1000{
  display:none;
}

/* 701〜800 */
@media (min-width:701px) and (max-width:800px){
  .br-701-800{
    display:inline;
  }
}

/* 801〜900 */
@media (min-width:801px) and (max-width:900px){
  .br-801-900{
    display:inline;
  }
}

/* 901〜1000 */
@media (min-width:801px) and (max-width:900px){
  .br-901-1000{
    display:inline;
  }
}

/* br-smallview */
@media (max-width:1000px){
  .br-smallview{
    display:none;
  }
}



/* =========================================================
  Section Title
========================================================= */

.sectionTitle{
  margin: 0 0;
}

.sectionTitle__head{
  margin: 0;
  padding: 1.4rem 1rem;
  background: #DDE9D3;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
@media (max-width: 700px){
  .sectionTitle__head{
    padding: 1.3rem 1rem;
    gap: 1rem;
  }
}
/*
@media (max-width: 500px){
  .sectionTitle__head{
    align-items: flex-start;
    flex-direction: column;
  }
}
*/
@media (max-width: 480px){
  .sectionTitle__head{
    padding: 1.3rem 1rem;
  }
}

.sectionTitle__ja{
  position: relative;
  display: inline-block;
  padding-left: 1.125rem;
  color: #000;
  font-size: 1.3rem;
  font-weight: 700;
  line-height: 1.4;
	 white-space: nowrap;
}
@media (max-width: 700px){
  .sectionTitle__ja{
    font-size: 1.3rem;
    padding-left: 1rem;
  }
}
@media (max-width: 480px){
  .sectionTitle__ja{
    font-size: 1rem;
    padding-left: 0.875rem;
  }
}

.sectionTitle__ja::before{
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 0.3125rem;
  height: 1.875rem;
  background: #7AC943;
  transform: translateY(-50%);
}
@media (max-width: 700px){
  .sectionTitle__ja::before{
    height: 1.625rem;
  }
}
@media (max-width: 480px){
  .sectionTitle__ja::before{
    width: 0.25rem;
    height: 1.25rem;
  }
}

.sectionTitle__en{
  flex: 0 0 auto;
  color: #7AC943;
  font-size: .9rem;
  font-weight: 700;
  line-height: 1.4;
  font-style: italic;
  white-space: nowrap;
}
@media (max-width: 700px){
  .sectionTitle__en{
    font-size: .8rem;
    white-space: normal;
    align-self: flex-end;
  }
}
@media (max-width: 480px){
  .sectionTitle__en{
    font-size: 0.8rem;
  }
}

.sectionTitle__note{
  display: inline-block;
  margin-left: 0.5em;
  font-size: 0.6em;
  font-weight: 700;
  line-height: 1.4;
  vertical-align: baseline;
}
@media (max-width: 700px){
  .sectionTitle__note{
    font-size: 0.62em;
  }
}
@media (max-width: 480px){
  .sectionTitle__note{
    margin-left: 0.4em;
    font-size: 0.68em;
  }
}
/* =========================================================
  Section Box Title
========================================================= */

.sectionBoxTitle{
  display: flex;
  align-items: center;
  gap: 0.6rem;
  margin: 0 0 2rem;
}
@media (max-width: 700px){
  .sectionBoxTitle{
    margin-bottom: 2rem;
  }
}
@media (max-width: 480px){
  .sectionBoxTitle{
    margin-bottom: 2rem;
  }
}

.sectionBoxTitle__icon{
  flex: 0 0 auto;
  width: 0.9rem;
  height: 0.9rem;
  background: #79BE49;
}
@media (max-width: 480px){
  .sectionBoxTitle__icon{
    width: 0.75rem;
    height: 0.75rem;
  }
}

.sectionBoxTitle__text{
  font-size: 1.15rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
@media (max-width: 700px){
  .sectionBoxTitle__text{
    font-size: 1.1rem;
  }
}
@media (max-width: 480px){
  .sectionBoxTitle__text{
    font-size: 1.05rem;
  }
}


/* =========================================================
  Pill Arrow Button
========================================================= */

.pillArrowBtn{
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;

  width: 17rem;
  min-height: 3.75rem;

  padding: 0.9rem 2.8rem 0.9rem 1.6rem;

  background: #F4EBE2;
  border-radius: 999px;
  text-decoration: none;

  transition: opacity .25s ease;
}

@media (max-width: 700px){
  .pillArrowBtn{
    min-height: 3.25rem;
    padding: 0.75rem 2.6rem 0.75rem 1.25rem;
  }
}

@media (max-width: 480px){
  .pillArrowBtn{
    width: 100%;
  }
}


/* テキスト */

.pillArrowBtn__text{
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
}

@media (max-width: 700px){
  .pillArrowBtn__text{
    font-size: 1rem;
  }
}

@media (max-width: 480px){
  .pillArrowBtn__text{
    font-size: .9rem;
  }
}


/* 矢印 */

.pillArrowBtn__icon{
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);

  width: 1.4rem;
  height: 1.4rem;

  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;

  transition: transform .25s ease;

  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Ccircle cx='13' cy='13' r='12.5' fill='%23fff' stroke='%2379be49'/%3E%3Cline x1='7.4' y1='13' x2='17.9' y2='13' stroke='%2379be49' stroke-width='1.5' stroke-linecap='round'/%3E%3Cline x1='18.6' y1='13' x2='14.7' y2='16.9' stroke='%2379be49' stroke-width='1.5' stroke-linecap='round'/%3E%3Cline x1='14.7' y1='9.1' x2='18.6' y2='13' stroke='%2379be49' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");
}

@media (max-width: 700px){
  .pillArrowBtn__icon{
    width: 1.25rem;
    height: 1.25rem;
  }
}

@media (max-width: 480px){
  .pillArrowBtn__icon{
    width: 1.125rem;
    height: 1.125rem;
  }
}


.pillArrowBtn:hover .pillArrowBtn__icon{
  transform: translate(3px,-50%);
}

/* =========================================================
  Doctor Philosophy
========================================================= */

.doctorPhilosophy{
  position: relative;
  padding: 2.5rem 0 5rem;
  background: #fff;
  --grid-size: 36px;
  --grid-dot: 1px;
  --grid-color: 188, 188, 188;
  --grid-opacity: 0.1;
}
@media (max-width: 900px){
  .doctorPhilosophy{
    padding: 2.25rem 0 4rem;
  }
}
@media (max-width: 700px){
  .doctorPhilosophy{
    padding: 2rem 0 3.5rem;
  }
}
@media (max-width: 480px){
  .doctorPhilosophy{
    padding: 1.5rem 0 3rem;
  }
}

.doctorPhilosophy::before{
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    radial-gradient(circle, rgba(var(--grid-color), var(--grid-opacity)) var(--grid-dot), transparent var(--grid-dot)),
    radial-gradient(circle, rgba(var(--grid-color), var(--grid-opacity)) var(--grid-dot), transparent var(--grid-dot));
  background-size: var(--grid-size) 6px, 6px var(--grid-size);
  background-position: 0 0, 0 0;
  background-repeat: repeat;
  pointer-events: none;
  z-index: 0;
}
@media (max-width: 900px){
  .doctorPhilosophy::before{}
}
@media (max-width: 700px){
  .doctorPhilosophy::before{}
}
@media (max-width: 480px){
  .doctorPhilosophy::before{}
}

.doctorPhilosophy::after{
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 11rem;
  background: linear-gradient(to bottom, rgba(255,255,255,0) 0%, rgba(255,255,255,0.82) 55%, rgba(255,255,255,1) 100%);
  pointer-events: none;
  z-index: 1;
}
@media (max-width: 900px){
  .doctorPhilosophy::after{
    height: 9rem;
  }
}
@media (max-width: 700px){
  .doctorPhilosophy::after{
    height: 7rem;
  }
}
@media (max-width: 480px){
  .doctorPhilosophy::after{
    height: 6rem;
  }
}

.doctorPhilosophy .column__inner{
  position: relative;
  z-index: 2;
  container-type: inline-size;
}
@media (max-width: 900px){
  .doctorPhilosophy .column__inner{}
}
@media (max-width: 700px){
  .doctorPhilosophy .column__inner{}
}
@media (max-width: 480px){
  .doctorPhilosophy .column__inner{}
}

.doctorPhilosophy__inner{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 3.5rem;
}
@media (max-width: 900px){
  .doctorPhilosophy__inner{
    gap: 2rem;
  }
}
@media (max-width: 700px){
  .doctorPhilosophy__inner{
    display: block;
  }
}
@media (max-width: 480px){
  .doctorPhilosophy__inner{}
}

.doctorPhilosophy__content{
  flex: 1 1 auto;
  min-width: 0;
}
@media (max-width: 900px){
  .doctorPhilosophy__content{}
}
@media (max-width: 700px){
  .doctorPhilosophy__content{}
}
@media (max-width: 480px){
  .doctorPhilosophy__content{}
}

.doctorPhilosophy__head{
  position: relative;
  margin-bottom: 3rem;
  padding-left: 3rem;
}
@media (max-width: 900px){
  .doctorPhilosophy__head{
    margin-bottom: 2.5rem;
    padding-left: 2.5rem;
  }
}
@media (max-width: 700px){
  .doctorPhilosophy__head{
    margin-bottom: 2rem;
    padding-left: 2rem;
  }
}
@media (max-width: 480px){
  .doctorPhilosophy__head{
    margin-bottom: 1.5rem;
    padding-left: 1.5rem;
  }
}

.doctorPhilosophy__head::before{
  content: "";
  position: absolute;
  top: 0.35rem;
  left: 0;
  width: 0.3125rem;
  height: 2.875rem;
  background: #77c943;
}
@media (max-width: 900px){
  .doctorPhilosophy__head::before{
    height: 2.4rem;
  }
}
@media (max-width: 700px){
  .doctorPhilosophy__head::before{
    top: 0.2rem;
    height: 2rem;
  }
}
@media (max-width: 480px){
  .doctorPhilosophy__head::before{
    width: 0.25rem;
    height: 1.65rem;
  }
}

.doctorPhilosophy__title{
  margin: 0;
  color: #111;
  font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
  font-size: 2.25rem;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 0.15em;
}
@media (max-width: 900px){
  .doctorPhilosophy__title{
    font-size: 1.95rem;
  }
}
@media (max-width: 700px){
  .doctorPhilosophy__title{
    font-size: 1.65rem;
  }
}
@media (max-width: 480px){
  .doctorPhilosophy__title{
    font-size: 1.35rem;
  }
}

.doctorPhilosophy__list{
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (max-width: 900px){
  .doctorPhilosophy__list{}
}
@media (max-width: 700px){
  .doctorPhilosophy__list{}
}
@media (max-width: 480px){
  .doctorPhilosophy__list{}
}

.doctorPhilosophy__item{
  display: grid;
  grid-template-columns: 4.25rem minmax(0, 1fr);
  align-items: start;
  column-gap: 1.75rem;
}
@media (max-width: 900px){
  .doctorPhilosophy__item{
    grid-template-columns: 3.75rem minmax(0, 1fr);
    column-gap: 1.25rem;
  }
}
@media (max-width: 700px){
  .doctorPhilosophy__item{
    grid-template-columns: 3.25rem minmax(0, 1fr);
    column-gap: 1rem;
  }
}
@media (max-width: 480px){
  .doctorPhilosophy__item{
    grid-template-columns: 2.75rem minmax(0, 1fr);
    column-gap: 0.875rem;
  }
}

.doctorPhilosophy__item + .doctorPhilosophy__item{
  margin-top: 2.25rem;
}
@media (max-width: 900px){
  .doctorPhilosophy__item + .doctorPhilosophy__item{
    margin-top: 1.75rem;
  }
}
@media (max-width: 700px){
  .doctorPhilosophy__item + .doctorPhilosophy__item{
    margin-top: 1.35rem;
  }
}
@media (max-width: 480px){
  .doctorPhilosophy__item + .doctorPhilosophy__item{
    margin-top: 1rem;
  }
}

.doctorPhilosophy__num{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.5rem;
  height: 4rem;
  background: #abd883;
  color: #fff;
  font-family: "Times New Roman", serif;
  font-size: 2.125rem;
  font-weight: 700;
  line-height: 1;
}
@media (max-width: 900px){
  .doctorPhilosophy__num{
    width: 3.25rem;
    height: 3.5rem;
    font-size: 1.85rem;
  }
}
@media (max-width: 700px){
  .doctorPhilosophy__num{
    width: 2.5rem;
    height: 3.0rem;
    font-size: 1.7rem;
  }
}
@media (max-width: 480px){
  .doctorPhilosophy__num{
    width: 2.25rem;
    height: 2.5rem;
    font-size: 1.3rem;
  }
}

.doctorPhilosophy__body{
  padding-bottom: 1.15rem;
  border-bottom: 1px dashed #cfcfcf;
}
@media (max-width: 900px){
  .doctorPhilosophy__body{
    padding-bottom: 1rem;
  }
}
@media (max-width: 700px){
  .doctorPhilosophy__body{
    padding-bottom: 0.875rem;
  }
}
@media (max-width: 480px){
  .doctorPhilosophy__body{
    padding-bottom: 0.75rem;
  }
}

.doctorPhilosophy__text{
  margin: 0;
  color: #111;
  font-family: "Yu Mincho", "Hiragino Mincho ProN", serif;
  font-weight: 500;
  line-height: 1.65;
  letter-spacing: 0.04em;
}
@media (max-width: 900px){
  .doctorPhilosophy__text{}
}
@media (max-width: 700px){
  .doctorPhilosophy__text{}
}
@media (max-width: 480px){
  .doctorPhilosophy__text{}
}

.doctorPhilosophy__textLg{
  font-size: 1.5rem;
}
@media (max-width: 900px){
  .doctorPhilosophy__textLg{
    font-size: 1.3rem;
  }
}
@media (max-width: 700px){
  .doctorPhilosophy__textLg{
    font-size: 1.15rem;
  }
}
@media (max-width: 480px){
  .doctorPhilosophy__textLg{
    font-size: 1.05rem;
  }
}

.doctorPhilosophy__textSm{
  font-size: 1rem;
}
@media (max-width: 900px){
  .doctorPhilosophy__textSm{
    font-size: 0.95rem;
  }
}
@media (max-width: 700px){
  .doctorPhilosophy__textSm{
    font-size: 0.92rem;
  }
}
@media (max-width: 480px){
  .doctorPhilosophy__textSm{
    font-size: 0.9rem;
  }
}

.doctorPhilosophy__textAccent{
  color: #8fd85b;
  font-size: 1.5rem;
}
@media (max-width: 900px){
  .doctorPhilosophy__textAccent{
    font-size: 1.3rem;
  }
}
@media (max-width: 700px){
  .doctorPhilosophy__textAccent{
    font-size: 1.15rem;
  }
}
@media (max-width: 480px){
  .doctorPhilosophy__textAccent{
    font-size: 1.05rem;
  }
}

.doctorPhilosophy__media{
  flex: 0 0 40%;
  max-width: 31.25rem;
}
@media (max-width: 900px){
  .doctorPhilosophy__media{
    flex-basis: 38%;
    max-width: 25rem;
  }
}
@media (max-width: 700px){
  .doctorPhilosophy__media{
    max-width: 32rem;
    margin: 2rem auto 0;
  }
}
@media (max-width: 480px){
  .doctorPhilosophy__media{
    margin-top: 1.5rem;
  }
}

.doctorPhilosophy__image{
  margin: 0;
}
@media (max-width: 900px){
  .doctorPhilosophy__image{}
}
@media (max-width: 700px){
  .doctorPhilosophy__image{}
}
@media (max-width: 480px){
  .doctorPhilosophy__image{}
}

.doctorPhilosophy__image img{
  display: block;
  width: 100%;
  height: auto;
}
@media (max-width: 900px){
  .doctorPhilosophy__image img{}
}
@media (max-width: 700px){
  .doctorPhilosophy__image img{}
}
@media (max-width: 480px){
  .doctorPhilosophy__image img{}
}

.doctorPhilosophy__copy{
  margin: 3.5rem 0 0;
  width: 100%;
  color: #d6ebc4;
  font-family: "Times New Roman", serif;
  line-height: 1;
  letter-spacing: -0.02em;
  /*white-space: nowrap;*/
  overflow: hidden;
}
@media (max-width: 900px){
  .doctorPhilosophy__copy{
    margin-top: 3rem;
  }
}
@media (max-width: 700px){
  .doctorPhilosophy__copy{
    margin-top: 2rem;
  }
}
@media (max-width: 480px){
  .doctorPhilosophy__copy{
    margin-top: 1.5rem;
  }
}

.doctorPhilosophy__copyText{
  display: inline-block;
  white-space: nowrap;
  font-size: 100px; /* JSで上書き*/
}
@media (max-width: 900px){
  .doctorPhilosophy__copyText{}
}
@media (max-width: 700px){
  .doctorPhilosophy__copyText{}
}
@media (max-width: 480px){
  .doctorPhilosophy__copyText{}
}




/* =========================================================
  Doctor Message
========================================================= */

.doctorMessage{
  padding: 2.5rem 0 5rem;
}
@media (max-width: 900px){
  .doctorMessage{
    padding: 2rem 0 4rem;
  }
}
@media (max-width: 700px){
  .doctorMessage{
    padding: 1.75rem 0 3.5rem;
  }
}
@media (max-width: 480px){
  .doctorMessage{
    padding: 1.5rem 0 3rem;
  }
}

.doctorMessage__lead{
  display: grid;
  grid-template-columns: 18rem minmax(0, 1fr);
  gap: 4.5rem;
  margin-top: 3rem;
}
@media (max-width: 900px){
  .doctorMessage__lead{
    grid-template-columns: 15rem minmax(0, 1fr);
    gap: 2.5rem;
    margin-top: 2.5rem;
  }
}
@media (max-width: 700px){
  .doctorMessage__lead{
    grid-template-columns: 1fr;
    gap: 2rem;
    margin-top: 2rem;
  }
}
@media (max-width: 480px){
  .doctorMessage__lead{
    margin-top: 1.5rem;
    gap: 1.5rem;
  }
}

.doctorMessage__profile{
  text-align: center;
}
@media (max-width: 900px){
  .doctorMessage__profile{}
}
@media (max-width: 700px){
  .doctorMessage__profile{
    max-width: 18rem;
    margin: 0 auto;
  }
}
@media (max-width: 480px){
  .doctorMessage__profile{
    max-width: 15rem;
  }
}

.doctorMessage__photo{
  margin: 0;
}
@media (max-width: 900px){
  .doctorMessage__photo{}
}
@media (max-width: 700px){
  .doctorMessage__photo{}
}
@media (max-width: 480px){
  .doctorMessage__photo{}
}

.doctorMessage__photo img{
  display: block;
  width: 100%;
  height: auto;
	 border-radius: 50%;
}
@media (max-width: 900px){
  .doctorMessage__photo img{}
}
@media (max-width: 700px){
  .doctorMessage__photo img{}
}
@media (max-width: 480px){
  .doctorMessage__photo img{}
}

.doctorMessage__nameBlock{
  margin-top: 1.25rem;
}
@media (max-width: 900px){
  .doctorMessage__nameBlock{
    margin-top: 1rem;
  }
}
@media (max-width: 700px){
  .doctorMessage__nameBlock{}
}
@media (max-width: 480px){
  .doctorMessage__nameBlock{
    margin-top: 0.875rem;
  }
}

.doctorMessage__position{
  margin: 0;
  color: #111;
  font-size: .9rem;
  line-height: 1.5;
  letter-spacing: 0.03em;
}
@media (max-width: 900px){
  .doctorMessage__position{
    font-size: 1rem;
  }
}
@media (max-width: 700px){
  .doctorMessage__position{}
}
@media (max-width: 480px){
  .doctorMessage__position{
    font-size: 0.95rem;
  }
}




.doctorMessage__name{
  margin-top: 0;
  font-size: 1.65rem;
  font-weight: 500;
  letter-spacing: .2em;
  text-align: center;
	 line-height: 1.2;
}

.doctorMessage__name ruby{
  display: inline-flex;
  flex-direction: column-reverse;
  align-items: center;
  margin: 0 0;
}

.doctorMessage__name rt{
  display: block;
  font-size: .4em;
  line-height: 1;
  margin-bottom: .25em;
  letter-spacing: .4em;
}






.doctorMessage__leadBody{
  min-width: 0;
}
@media (max-width: 900px){
  .doctorMessage__leadBody{}
}
@media (max-width: 700px){
  .doctorMessage__leadBody{}
}
@media (max-width: 480px){
  .doctorMessage__leadBody{}
}

.doctorMessage__text{
  color: #111;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0.02em;
}
@media (max-width: 900px){
  .doctorMessage__text{
    font-size: 1rem;
    line-height: 1.8;
  }
}
@media (max-width: 700px){
  .doctorMessage__text{
    font-size: 0.95rem;
    line-height: 1.8;
  }
}
@media (max-width: 480px){
  .doctorMessage__text{
    font-size: 0.9rem;
    line-height: 1.75;
  }
}

.doctorMessage__text p{
  margin: 0;
}
@media (max-width: 900px){
  .doctorMessage__text p{}
}
@media (max-width: 700px){
  .doctorMessage__text p{}
}
@media (max-width: 480px){
  .doctorMessage__text p{}
}

.doctorMessage__text p + p{
  margin-top: 1.6em;
}
@media (max-width: 900px){
  .doctorMessage__text p + p{}
}
@media (max-width: 700px){
  .doctorMessage__text p + p{}
}
@media (max-width: 480px){
  .doctorMessage__text p + p{}
}

.doctorMessage__leadBtnWrap{
  margin-top: 2.25rem;
}
@media (max-width: 900px){
  .doctorMessage__leadBtnWrap{
    margin-top: 2rem;
  }
}
@media (max-width: 700px){
  .doctorMessage__leadBtnWrap{
    margin-top: 1.5rem;
  }
}
@media (max-width: 480px){
  .doctorMessage__leadBtnWrap{
    margin-top: 1.25rem;
  }
}

.doctorMessage__leadBtn{
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 15.5rem;
  min-height: 4rem;
  padding: 1rem 3.5rem 1rem 1.5rem;
  border-radius: 999px;
  background: #eee5dc;
  color: #111;
  text-decoration: none;
  transition: opacity .25s ease;
	 border: none;
}
@media (max-width: 900px){
  .doctorMessage__leadBtn{
    min-width: 14rem;
    min-height: 3.75rem;
    padding: 0.95rem 3.25rem 0.95rem 1.25rem;
  }
}
@media (max-width: 700px){
  .doctorMessage__leadBtn{}
}
@media (max-width: 480px){
  .doctorMessage__leadBtn{
    min-width: 13rem;
    min-height: 3.5rem;
    padding: 0.875rem 3rem 0.875rem 1.125rem;
  }
}

.doctorMessage__leadBtn:hover{
  opacity: .9;
}
@media (max-width: 900px){
  .doctorMessage__leadBtn:hover{}
}
@media (max-width: 700px){
  .doctorMessage__leadBtn:hover{}
}
@media (max-width: 480px){
  .doctorMessage__leadBtn:hover{}
}

.doctorMessage__leadBtnLabel{
  display: block;
  width: 100%;
  color: #111;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
}
@media (max-width: 900px){
  .doctorMessage__leadBtnLabel{
    font-size: 0.95rem;
  }
}
@media (max-width: 700px){
  .doctorMessage__leadBtnLabel{}
}
@media (max-width: 480px){
  .doctorMessage__leadBtnLabel{
    font-size: 0.9rem;
  }
}

.doctorMessage__leadBtnIcon{
  position: absolute;
  top: 50%;
  right: 1.25rem;
  width: 1.6rem;
  height: 1.6rem;
  transform: translateY(-50%);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  transition: transform .25s ease;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cg%3E%3Ccircle cx='13' cy='13' r='12.5' fill='%23FFFFFF' stroke='%2379BE49' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10'/%3E%3Cg%3E%3Cline x1='7.4' y1='13' x2='17.9' y2='13' fill='none' stroke='%2379BE49' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10'/%3E%3Cline x1='18.6' y1='13' x2='14.7' y2='16.9' fill='none' stroke='%2379BE49' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10'/%3E%3Cline x1='14.7' y1='9.1' x2='18.6' y2='13' fill='none' stroke='%2379BE49' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}
@media (max-width: 900px){
  .doctorMessage__leadBtnIcon{
    right: 1rem;
    width: 1.5rem;
    height: 1.5rem;
  }
}
@media (max-width: 700px){
  .doctorMessage__leadBtnIcon{}
}
@media (max-width: 480px){
  .doctorMessage__leadBtnIcon{
    width: 1.4rem;
    height: 1.4rem;
  }
}

.doctorMessage__leadBtn:hover .doctorMessage__leadBtnIcon{
  transform: translateY(-50%) translateX(6px);
}
@media (max-width: 900px){
  .doctorMessage__leadBtn:hover .doctorMessage__leadBtnIcon{}
}
@media (max-width: 700px){
  .doctorMessage__leadBtn:hover .doctorMessage__leadBtnIcon{}
}
@media (max-width: 480px){
  .doctorMessage__leadBtn:hover .doctorMessage__leadBtnIcon{}
}


/* =========================================================
  Doctor Message Card
========================================================= */

.doctorMessageCard{
  margin-top: 4rem;
  padding: 2rem 2.25rem 1.75rem;
  border: 4px solid #ddd;
  border-radius: 1rem;
  background: #fff;
}
@media (max-width: 900px){
  .doctorMessageCard{
    margin-top: 3rem;
    padding: 1.5rem 1.5rem 1.5rem;
  }
}
@media (max-width: 700px){
  .doctorMessageCard{
    margin-top: 2.5rem;
    padding: 1.25rem 1.25rem 1.25rem;
    border-width: 3px;
  }
}
@media (max-width: 480px){
  .doctorMessageCard{
    margin-top: 2rem;
    padding: 1rem 1rem 1rem;
    border-width: 2px;
    border-radius: 0.75rem;
  }
}

.doctorMessageCard__head{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding-bottom: 1rem;
  border-bottom: 1px dashed #cfcfcf;
}
@media (max-width: 900px){
  .doctorMessageCard__head{
    padding-bottom: 0.875rem;
  }
}
@media (max-width: 700px){
  .doctorMessageCard__head{
    display: block;
  }
}
@media (max-width: 480px){
  .doctorMessageCard__head{
    padding-bottom: 0.75rem;
  }
}

.doctorMessageCard__titleWrap{
  display: flex;
  align-items: center;
  gap: 0.75rem;
  min-width: 0;
}
@media (max-width: 900px){
  .doctorMessageCard__titleWrap{
    gap: 0.625rem;
  }
}
@media (max-width: 700px){
  .doctorMessageCard__titleWrap{}
}
@media (max-width: 480px){
  .doctorMessageCard__titleWrap{
    gap: 0.5rem;
  }
}

.doctorMessageCard__titleIcon{
  flex: 0 0 auto;
  width: 2rem;
  height: 1.85rem;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 37.6 34.7'%3E%3Cg%3E%3Cpath fill='%2379BE49' d='M7.7,27.6c-3.7-2.1-6.8-5.8-7.5-10.2C-1.5,7.6,7.9,0.9,16.7,0.1c8.9-0.8,20,4.2,20.9,14c0.9,10.3-10.1,16.9-19.3,16.5c-2.2,1.5-4.5,2.8-7.1,3.6c-1.7,0.5-3.7,1.1-5-0.5c-1.5-1.9,0.3-3.8,1.2-5.5C7.4,28.1,7.7,27.7,7.7,27.6z M12.3,9.1c-1.5,0.3-1.5,2.4,0,2.7l12.9,0c1.6-0.3,1.6-2.4,0-2.7L12.3,9.1z M12.5,13.9c-1.7,0.2-1.7,2.5-0.1,2.8l12.8,0c1.7-0.3,1.6-2.7-0.2-2.8L12.5,13.9z M12.3,18.8c-1.7,0.4-1.5,2.7,0.3,2.8c2.3,0.1,4.7-0.1,7,0c1.7-0.2,1.8-2.5,0.1-2.8L12.3,18.8z'/%3E%3Cpath fill='%23FFFFFF' d='M12.5,13.9l12.6,0c1.8,0.1,1.9,2.5,0.2,2.8l-12.8,0C10.8,16.4,10.8,14.1,12.5,13.9z'/%3E%3Cpath fill='%23FFFFFF' d='M12.3,9.1l13,0c1.6,0.3,1.5,2.5,0,2.7l-12.9,0C10.8,11.5,10.8,9.4,12.3,9.1z'/%3E%3Cpath fill='%23FFFFFF' d='M12.3,18.8l7.4,0c1.6,0.3,1.6,2.6-0.1,2.8c-2.3-0.1-4.7,0.2-7,0C10.8,21.4,10.7,19.2,12.3,18.8z'/%3E%3C/g%3E%3C/svg%3E");
}
@media (max-width: 900px){
  .doctorMessageCard__titleIcon{
    width: 1.75rem;
    height: 1.625rem;
  }
}
@media (max-width: 700px){
  .doctorMessageCard__titleIcon{
    width: 1.5rem;
    height: 1.4rem;
  }
}
@media (max-width: 480px){
  .doctorMessageCard__titleIcon{
    width: 1.35rem;
    height: 1.25rem;
  }
}

.doctorMessageCard__title{
  margin: 0;
  color: #77c943;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
@media (max-width: 900px){
  .doctorMessageCard__title{
    font-size: 1.15rem;
  }
}
@media (max-width: 700px){
  .doctorMessageCard__title{
    font-size: 1.15rem;
  }
}
@media (max-width: 480px){
  .doctorMessageCard__title{
    font-size: 1.05rem;
  }
}

.doctorMessageCard__date{
  margin: 0;
  color: #555;
  font-size: 0.95rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.02em;
  white-space: nowrap;
}
@media (max-width: 900px){
  .doctorMessageCard__date{
    font-size: 0.875rem;
  }
}
@media (max-width: 700px){
  .doctorMessageCard__date{
    margin-top: 0.5rem;
  }
}
@media (max-width: 480px){
  .doctorMessageCard__date{
    font-size: 0.8125rem;
  }
}

.doctorMessageCard__body{
  display: grid;
  grid-template-columns: 17rem minmax(0, 1fr);
  gap: 2.5rem;
  padding-top: 1.5rem;
}
@media (max-width: 900px){
  .doctorMessageCard__body{
    grid-template-columns: 13rem minmax(0, 1fr);
    gap: 1.5rem;
    padding-top: 1.25rem;
  }
}
@media (max-width: 850px){
  .doctorMessageCard__body{
    grid-template-columns: 1fr;
    gap: 1.25rem;
    padding-top: 2rem;
  }
}
@media (max-width: 480px){
  .doctorMessageCard__body{
    gap: 1rem;
  }
}

.doctorMessageCard__image{
  margin: 0;
}
@media (max-width: 900px){
  .doctorMessageCard__image{}
}
@media (max-width: 850px){
  .doctorMessageCard__image{
    max-width: 80%;
			 margin: 0 auto;
  }
}
@media (max-width: 480px){
  .doctorMessageCard__image{
    max-width: 100%;
  }
}

.doctorMessageCard__image img{
  display: block;
  width: 100%;
  height: auto;
  border-radius: 0.5rem;
}
@media (max-width: 900px){
  .doctorMessageCard__image img{}
}
@media (max-width: 700px){
  .doctorMessageCard__image img{}
}
@media (max-width: 480px){
  .doctorMessageCard__image img{}
}

.doctorMessageCard__content{
  min-width: 0;
}
@media (max-width: 900px){
  .doctorMessageCard__content{}
}
@media (max-width: 700px){
  .doctorMessageCard__content{}
}
@media (max-width: 480px){
  .doctorMessageCard__content{}
}

.doctorMessageCard__text{
  color: #111;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.02em;
}
@media (max-width: 900px){
  .doctorMessageCard__text{
    font-size: 0.95rem;
  }
}
@media (max-width: 700px){
  .doctorMessageCard__text{
    font-size: 0.9rem;
  }
}
@media (max-width: 480px){
  .doctorMessageCard__text{
    font-size: 0.875rem;
    line-height: 1.75;
  }
}

.doctorMessageCard__text p{
  margin: 0;
}
@media (max-width: 900px){
  .doctorMessageCard__text p{}
}
@media (max-width: 700px){
  .doctorMessageCard__text p{}
}
@media (max-width: 480px){
  .doctorMessageCard__text p{}
}

.doctorMessageCard__text p + p{
  margin-top: 1.5em;
}
@media (max-width: 900px){
  .doctorMessageCard__text p + p{}
}
@media (max-width: 700px){
  .doctorMessageCard__text p + p{}
}
@media (max-width: 480px){
  .doctorMessageCard__text p + p{}
}

.doctorMessageCard__btnWrap{
  margin-top: 2rem;
  text-align: right;
}
@media (max-width: 900px){
  .doctorMessageCard__btnWrap{
    margin-top: 1.5rem;
  }
}
@media (max-width: 700px){
  .doctorMessageCard__btnWrap{
    text-align: left;
  }
}
@media (max-width: 480px){
  .doctorMessageCard__btnWrap{
    margin-top: 1.25rem;
  }
}

.doctorMessageCard__btn{
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 15.5rem;
  min-height: 4rem;
  padding: 1rem 3.5rem 1rem 1.5rem;
  border-radius: 999px;
  background: #eee5dc;
  color: #111;
  text-decoration: none;
  transition: opacity .25s ease;
}
@media (max-width: 900px){
  .doctorMessageCard__btn{
    min-width: 14rem;
    min-height: 3.75rem;
    padding: 0.95rem 3.25rem 0.95rem 1.25rem;
  }
}
@media (max-width: 700px){
  .doctorMessageCard__btn{}
}
@media (max-width: 480px){
  .doctorMessageCard__btn{
    min-width: 13rem;
    min-height: 3.5rem;
    padding: 0.875rem 3rem 0.875rem 1.125rem;
  }
}

.doctorMessageCard__btn:hover{
  opacity: .9;
}
@media (max-width: 900px){
  .doctorMessageCard__btn:hover{}
}
@media (max-width: 700px){
  .doctorMessageCard__btn:hover{}
}
@media (max-width: 480px){
  .doctorMessageCard__btn:hover{}
}

.doctorMessageCard__btnLabel{
  display: block;
  width: 100%;
  color: #111;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
}
@media (max-width: 900px){
  .doctorMessageCard__btnLabel{
    font-size: 0.95rem;
  }
}
@media (max-width: 700px){
  .doctorMessageCard__btnLabel{}
}
@media (max-width: 480px){
  .doctorMessageCard__btnLabel{
    font-size: 0.9rem;
  }
}

.doctorMessageCard__btnIcon{
  position: absolute;
  top: 50%;
  right: 1.25rem;
  width: 1.6rem;
  height: 1.6rem;
  transform: translateY(-50%);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  transition: transform .25s ease;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cg%3E%3Ccircle cx='13' cy='13' r='12.5' fill='%23FFFFFF' stroke='%2379BE49' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10'/%3E%3Cg%3E%3Cline x1='7.4' y1='13' x2='17.9' y2='13' fill='none' stroke='%2379BE49' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10'/%3E%3Cline x1='18.6' y1='13' x2='14.7' y2='16.9' fill='none' stroke='%2379BE49' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10'/%3E%3Cline x1='14.7' y1='9.1' x2='18.6' y2='13' fill='none' stroke='%2379BE49' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}
@media (max-width: 900px){
  .doctorMessageCard__btnIcon{
    right: 1rem;
    width: 1.5rem;
    height: 1.5rem;
  }
}
@media (max-width: 700px){
  .doctorMessageCard__btnIcon{}
}
@media (max-width: 480px){
  .doctorMessageCard__btnIcon{
    width: 1.4rem;
    height: 1.4rem;
  }
}

.doctorMessageCard__btn:hover .doctorMessageCard__btnIcon{
  transform: translateY(-50%) translateX(6px);
}
@media (max-width: 900px){
  .doctorMessageCard__btn:hover .doctorMessageCard__btnIcon{}
}
@media (max-width: 700px){
  .doctorMessageCard__btn:hover .doctorMessageCard__btnIcon{}
}
@media (max-width: 480px){
  .doctorMessageCard__btn:hover .doctorMessageCard__btnIcon{}
}



/* =========================================================
  Doctor Profile Modal
========================================================= */

.doctorProfileModal{
  position: fixed;
  inset: 0;
  z-index: 10000;
  opacity: 0;
  pointer-events: none;
  transition: opacity .35s ease;
}
@media (max-width: 900px){
  .doctorProfileModal{}
}
@media (max-width: 700px){
  .doctorProfileModal{}
}
@media (max-width: 480px){
  .doctorProfileModal{}
}

.doctorProfileModal.is-open{
  opacity: 1;
  pointer-events: auto;
}
@media (max-width: 900px){
  .doctorProfileModal.is-open{}
}
@media (max-width: 700px){
  .doctorProfileModal.is-open{}
}
@media (max-width: 480px){
  .doctorProfileModal.is-open{}
}

.doctorProfileModal__overlay{
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
  opacity: 0;
  transition: opacity .4s ease;
}
@media (max-width: 900px){
  .doctorProfileModal__overlay{}
}
@media (max-width: 700px){
  .doctorProfileModal__overlay{}
}
@media (max-width: 480px){
  .doctorProfileModal__overlay{}
}

.doctorProfileModal.is-open .doctorProfileModal__overlay{
  opacity: 1;
}
@media (max-width: 900px){
  .doctorProfileModal.is-open .doctorProfileModal__overlay{}
}
@media (max-width: 700px){
  .doctorProfileModal.is-open .doctorProfileModal__overlay{}
}
@media (max-width: 480px){
  .doctorProfileModal.is-open .doctorProfileModal__overlay{}
}

.doctorProfileModal__dialog{
  position: relative;
  width: min(92vw, 52rem);
  max-height: calc(100vh - 4rem);
  margin: 2rem auto;
  overflow-y: auto;
  background: #f3f7df;
  border-radius: 1rem;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.18);
  transform: translateY(30px) scale(.98);
  opacity: 0;
  transition:
    transform .45s cubic-bezier(.22, 1, .36, 1),
    opacity .35s ease;
}
@media (max-width: 900px){
  .doctorProfileModal__dialog{
    width: min(92vw, 44rem);
  }
}
@media (max-width: 700px){
  .doctorProfileModal__dialog{
    max-height: calc(100vh - 2rem);
    margin: 1rem auto;
  }
}
@media (max-width: 480px){
  .doctorProfileModal__dialog{
    width: min(94vw, 32rem);
    border-radius: 0.75rem;
  }
}

.doctorProfileModal.is-open .doctorProfileModal__dialog{
  transform: translateY(0) scale(1);
  opacity: 1;
}
@media (max-width: 900px){
  .doctorProfileModal.is-open .doctorProfileModal__dialog{}
}
@media (max-width: 700px){
  .doctorProfileModal.is-open .doctorProfileModal__dialog{}
}
@media (max-width: 480px){
  .doctorProfileModal.is-open .doctorProfileModal__dialog{}
}

.doctorProfileModal__inner{
  padding: 2.5rem 2rem 2rem;
}
@media (max-width: 900px){
  .doctorProfileModal__inner{
    padding: 2rem 1.5rem 1.5rem;
  }
}
@media (max-width: 700px){
  .doctorProfileModal__inner{
    padding: 1.75rem 1.25rem 1.25rem;
  }
}
@media (max-width: 480px){
  .doctorProfileModal__inner{
    padding: 1.5rem 1rem 1rem;
  }
}

.doctorProfileModal__close{
  position: absolute;
  top: 0.75rem;
  right: 0.75rem;
  width: 2.5rem;
  height: 2.5rem;
  border: none;
  border-radius: 999px;
  background: #fff;
  color: #111;
  font-size: 1.5rem;
  line-height: 1;
  cursor: pointer;
  transition:
    background .25s ease,
    transform .25s ease,
    opacity .25s ease;
}
@media (max-width: 900px){
  .doctorProfileModal__close{}
}
@media (max-width: 700px){
  .doctorProfileModal__close{
    top: 0.5rem;
    right: 0.5rem;
  }
}
@media (max-width: 480px){
  .doctorProfileModal__close{
    width: 2.25rem;
    height: 2.25rem;
    font-size: 1.3rem;
  }
}

.doctorProfileModal__close:hover{
  background: #f7f7f7;
  transform: scale(1.04);
}
@media (max-width: 900px){
  .doctorProfileModal__close:hover{}
}
@media (max-width: 700px){
  .doctorProfileModal__close:hover{}
}
@media (max-width: 480px){
  .doctorProfileModal__close:hover{}
}

.doctorProfileModal__title{
  margin: 0;
  color: #111;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.4;
}
@media (max-width: 900px){
  .doctorProfileModal__title{
    font-size: 1.35rem;
  }
}
@media (max-width: 700px){
  .doctorProfileModal__title{
    font-size: 1.2rem;
  }
}
@media (max-width: 480px){
  .doctorProfileModal__title{
    font-size: 1.1rem;
  }
}

.doctorProfileModal__name{
  margin: 1rem 0 0;
  color: #111;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.12em;
}
@media (max-width: 900px){
  .doctorProfileModal__name{
    font-size: 1.7rem;
  }
}
@media (max-width: 700px){
  .doctorProfileModal__name{
    font-size: 1.45rem;
  }
}
@media (max-width: 480px){
  .doctorProfileModal__name{
    font-size: 1.25rem;
  }
}

.doctorProfileModal__ruby{
  margin: 0.4rem 0 0;
  color: #111;
  font-size: 0.95rem;
  font-weight: 700;
  line-height: 1.5;
}
@media (max-width: 900px){
  .doctorProfileModal__ruby{
    font-size: 0.9rem;
  }
}
@media (max-width: 700px){
  .doctorProfileModal__ruby{
    font-size: 0.875rem;
  }
}
@media (max-width: 480px){
  .doctorProfileModal__ruby{
    font-size: 0.8125rem;
  }
}

.doctorProfileModal__history{
  margin: 1.5rem 0 0;
  padding: 1.5rem 1.5rem 1.25rem 2rem;
  list-style: none;
  background: rgba(255,255,255,.45);
}
@media (max-width: 900px){
  .doctorProfileModal__history{
    padding: 1.25rem 1.25rem 1rem 1.75rem;
  }
}
@media (max-width: 700px){
  .doctorProfileModal__history{
    margin-top: 1.25rem;
    padding: 1rem 1rem 0.875rem 1.5rem;
  }
}
@media (max-width: 480px){
  .doctorProfileModal__history{
    padding: 0.875rem 0.875rem 0.75rem 1.25rem;
  }
}

.doctorProfileModal__history li{
  position: relative;
  margin: 0;
  color: #444;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.7;
}
@media (max-width: 900px){
  .doctorProfileModal__history li{
    font-size: 0.95rem;
  }
}
@media (max-width: 700px){
  .doctorProfileModal__history li{
    font-size: 0.9rem;
  }
}
@media (max-width: 480px){
  .doctorProfileModal__history li{
    font-size: 0.875rem;
  }
}

.doctorProfileModal__history li + li{
  margin-top: 0.2rem;
}
@media (max-width: 900px){
  .doctorProfileModal__history li + li{}
}
@media (max-width: 700px){
  .doctorProfileModal__history li + li{}
}
@media (max-width: 480px){
  .doctorProfileModal__history li + li{}
}

.doctorProfileModal__history li::before{
  content: "・";
  position: absolute;
  left: -1.1rem;
  top: 0.05rem;
  color: #6da03a;
  font-size: 0.85em;
}
@media (max-width: 900px){
  .doctorProfileModal__history li::before{}
}
@media (max-width: 700px){
  .doctorProfileModal__history li::before{
    left: -0.95rem;
  }
}
@media (max-width: 480px){
  .doctorProfileModal__history li::before{
    left: -0.8rem;
  }
}

.doctorProfileModal__license{
  margin: 1.5rem 0 0;
  color: #111;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.7;
}
@media (max-width: 900px){
  .doctorProfileModal__license{
    font-size: 0.95rem;
  }
}
@media (max-width: 700px){
  .doctorProfileModal__license{
    font-size: 0.9rem;
  }
}
@media (max-width: 480px){
  .doctorProfileModal__license{
    font-size: 0.875rem;
  }
}


/* =========================================================
  Doctor Message Links
========================================================= */

.doctorMessageLinks{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 3rem;
  margin-top: 4rem;
}
@media (max-width: 900px){
  .doctorMessageLinks{
    gap: 2rem;
    margin-top: 3rem;
  }
}
@media (max-width: 700px){
  .doctorMessageLinks{
    gap: 1rem;
    margin-top: 3rem;
  }
}
@media (max-width: 650px){
  .doctorMessageLinks{
    grid-template-columns: 1fr;
    gap: 1.25rem;
    margin-top: 2.5rem;
  }
}
@media (max-width: 480px){
  .doctorMessageLinks{
    gap: 1rem;
    margin-top: 2rem;
  }
}

.doctorMessageLinks__btn{
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 4.8125rem;
  padding: 1.25rem 1rem 1.25rem 1rem;
  border-radius: 0.875rem;
  text-decoration: none;
  transition: opacity .25s ease;
}
@media (max-width: 900px){
  .doctorMessageLinks__btn{
    min-height: 4.5rem;
    padding: 1rem 1rem 1rem 1rem;
  }
}
@media (max-width: 700px){
  .doctorMessageLinks__btn{
    min-height: 4rem;
    padding: 1rem 1rem 1rem 1rem;
  }
}
@media (max-width: 480px){
  .doctorMessageLinks__btn{
    min-height: 3.75rem;
    padding: 0.875rem 1rem 0.875rem 1rem;
    border-radius: 0.75rem;
  }
}







.doctorMessageLinks__btn:hover{
  opacity: .88;
}
@media (max-width: 900px){
  .doctorMessageLinks__btn:hover{}
}
@media (max-width: 700px){
  .doctorMessageLinks__btn:hover{}
}
@media (max-width: 480px){
  .doctorMessageLinks__btn:hover{}
}

.doctorMessageLinks__btn--blue{
  background: #3FA9F5;
}
@media (max-width: 900px){
  .doctorMessageLinks__btn--blue{}
}
@media (max-width: 700px){
  .doctorMessageLinks__btn--blue{}
}
@media (max-width: 480px){
  .doctorMessageLinks__btn--blue{}
}

.doctorMessageLinks__btn--orange{
  background: #FF931E;
}
@media (max-width: 900px){
  .doctorMessageLinks__btn--orange{}
}
@media (max-width: 700px){
  .doctorMessageLinks__btn--orange{}
}
@media (max-width: 480px){
  .doctorMessageLinks__btn--orange{}
}

.doctorMessageLinks__label{
  display: block;
  width: 100%;
  color: #fff;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.02em;
  text-align: center;
}
@media (max-width: 900px){
  .doctorMessageLinks__label{
    font-size: 1rem;
  }
}
@media (max-width: 700px){
  .doctorMessageLinks__label{
    font-size: 0.9rem;
  }
}
@media (max-width: 480px){
  .doctorMessageLinks__label{
    font-size: 0.9rem;
  }
}

.doctorMessageLinks__icon{
  position: absolute;
  top: 50%;
  right: 1.5rem;
  width: 1.7rem;
  height: 1.7rem;
  transform: translateY(-50%);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  transition: transform .25s ease;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28'%3E%3Cg%3E%3Cg%3E%3Cline x1='7' y1='14' x2='20' y2='14' fill='none' stroke='%23FFFFFF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cline x1='21' y1='14' x2='16.1' y2='18.9' fill='none' stroke='%23FFFFFF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cline x1='16.1' y1='9.1' x2='21' y2='14' fill='none' stroke='%23FFFFFF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/g%3E%3Ccircle cx='14' cy='14' r='13.5' fill='none' stroke='%23FFFFFF' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/g%3E%3C/svg%3E");
}
@media (max-width: 900px){
  .doctorMessageLinks__icon{
    right: 1.25rem;
    width: 1.7rem;
    height: 1.7rem;
  }
}
@media (max-width: 700px){
  .doctorMessageLinks__icon{
    right: 1rem;
    width: 1.5rem;
    height: 1.5rem;
  }
}
@media (max-width: 480px){
  .doctorMessageLinks__icon{
    right: 0.875rem;
    width: 1.3rem;
    height: 1.3rem;
  }
}

.doctorMessageLinks__btn:hover .doctorMessageLinks__icon{
  transform: translateY(-50%) translateX(4px);
}
@media (max-width: 900px){
  .doctorMessageLinks__btn:hover .doctorMessageLinks__icon{}
}
@media (max-width: 700px){
  .doctorMessageLinks__btn:hover .doctorMessageLinks__icon{}
}
@media (max-width: 480px){
  .doctorMessageLinks__btn:hover .doctorMessageLinks__icon{}
}

.doctorMessageLinks__btn:focus-visible .doctorMessageLinks__icon{
  transform: translateY(-50%) translateX(4px);
}
@media (max-width: 900px){
  .doctorMessageLinks__btn:focus-visible .doctorMessageLinks__icon{}
}
@media (max-width: 700px){
  .doctorMessageLinks__btn:focus-visible .doctorMessageLinks__icon{}
}
@media (max-width: 480px){
  .doctorMessageLinks__btn:focus-visible .doctorMessageLinks__icon{}
}


/* =========================================================
  Doctor List
========================================================= */

.doctorList{
  padding: 2.5rem 0 5rem;
}
@media (max-width: 900px){
  .doctorList{
    padding: 2rem 0 4rem;
  }
}
@media (max-width: 700px){
  .doctorList{
    padding: 1.75rem 0 3.5rem;
  }
}
@media (max-width: 480px){
  .doctorList{
    padding: 1.5rem 0 3rem;
  }
}

.doctorList__block{
  margin-top: 3rem;
}
@media (max-width: 900px){
  .doctorList__block{
    margin-top: 2.5rem;
  }
}
@media (max-width: 700px){
  .doctorList__block{
    margin-top: 2rem;
  }
}
@media (max-width: 480px){
  .doctorList__block{
    margin-top: 1.5rem;
  }
}

.doctorList__list{
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (max-width: 900px){
  .doctorList__list{}
}
@media (max-width: 700px){
  .doctorList__list{}
}
@media (max-width: 480px){
  .doctorList__list{}
}

.doctorList__item{
  display: grid;
  grid-template-columns: 8rem 12rem 1fr;
  align-items: center;
  column-gap: 3rem;
  padding: 1.75rem 0;
  border-bottom: 1px dashed #333;
}
@media (max-width: 900px){
  .doctorList__item{
    grid-template-columns: 7rem 12rem 1fr;
    column-gap: 2rem;
    padding: 1.5rem 0;
  }
}
@media (max-width: 700px){
  .doctorList__item{
    grid-template-columns: 6rem 1fr;
    column-gap: 1.25rem;
    row-gap: 0.4rem;
    padding: 1.25rem 0;
  }
}
@media (max-width: 480px){
  .doctorList__item{
    grid-template-columns: 5.5rem 1fr;
    column-gap: 1rem;
    row-gap: 0.35rem;
    padding: 1rem 0;
  }
}

/* ===============================
  役職・診療科（サブ情報）
=============================== */
.doctorList__role{
  color: #111;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
}
@media (max-width: 900px){
  .doctorList__role{
    font-size: 0.85rem;
  }
}
@media (max-width: 700px){
  .doctorList__role{
    grid-row: 1 / 3;
    font-size: 0.8rem;
    align-self: center;
  }
}
@media (max-width: 480px){
  .doctorList__role{
    font-size: 0.75rem;
  }
}

/* ===============================
  名前（メイン）
=============================== */
.doctorList__name{
  color: #111;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.04em;
}
@media (max-width: 900px){
  .doctorList__name{
    font-size: 1.1rem;
  }
}
@media (max-width: 700px){
  .doctorList__name{
    font-size: 1.05rem;
  }
}
@media (max-width: 480px){
  .doctorList__name{
    font-size: 1rem;
  }
}

.doctorList__name a{
  position: relative;
  padding-right: 1.2em;
}

.doctorList__name a::after {
  content: "\f105";
  font-family: "dashicons";
  display: inline-block;
  margin-left: 0.3em;
  font-size: 0.9em;
  vertical-align: middle;
	 color: #7AC943;
}

/* ===============================
  ふりがな（サブ）
=============================== */
.doctorList__ruby{
  color: #111;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
}
@media (max-width: 900px){
  .doctorList__ruby{
    font-size: 0.85rem;
  }
}
@media (max-width: 700px){
  .doctorList__ruby{
    grid-column: 2 / 3;
    font-size: 0.8rem;
  }
}
@media (max-width: 480px){
  .doctorList__ruby{
    font-size: 0.75rem;
  }
}
