@charset "UTF-8";
/* Scss Document */
/* =======================================================================
 共通項目 
======================================================================= */
/*関数*/
/* ----------------------------------------------------------- 関数
----------------------------------------------------------- */
/*サイトの横幅*/
/*media screen*/
/*文字SP*/
/*文字PC*/
/*基本フォント*/
/*游明朝*/
/*基本文字色*/
/*基本背景色PC*/
/*白*/
/*茶色*/
/*ピンク*/
/*薄茶色*/
/*茶色*/
/*茶色*/
/*黒*/
/*ピンク*/
/*黄色*/
/*ピンク*/
/*灰色*/
/*ピンク*/
/*灰色2*/
/*薄茶色*/
/*クリーム色*/
/*あずき色*/
/*ピンク*/
/*黄色*/
/*薄いピンク*/
/*薄いピンク*/
/*灰色*/
/*黒*/
/*灰色*/
/*灰色*/
/*赤*/
/*水色*/
/*薄茶色*/
/*オレンジ色*/
/*オレンジ色*/
/* ----------------------------------------------------------- 特殊フォント読込
----------------------------------------------------------- */
@font-face { font-family: 'notosansjp'; src: url(../font/NotoSansJP-Regular.otf); font-weight: normal; font-style: normal; }
@font-face { font-family: 'notosansjp_bold'; src: url(../font/NotoSansJP-Bold.otf); font-weight: bold; font-style: normal; }
@font-face { font-family: 'notoserifjp'; src: url(../font/NotoSerifJP-Regular.otf); font-weight: bold; font-style: normal; }
@font-face { font-family: 'notoserifjp_bold'; src: url(../font/NotoSerifJP-Bold.otf); font-weight: bold; font-style: normal; }
/* ----------------------------------------------------------- フォントサイズ基本
----------------------------------------------------------- */
html { font-size: calc( 100vw / 32 ); overflow-y: auto; font-family: 'notoserifjp'; color: #333333; background-color: #ffffff; padding: 0 0 14vw 0; }

@media screen and (min-width: 768px), print { html { font-size: 62.5%; overflow-y: scroll; font-family: 'notoserifjp'; color: #333333; background-color: #ffffff; padding: 0; } }
/* ----------------------------------------------------------- 構成
----------------------------------------------------------- */
body { position: relative; width: 100%; margin: 0 auto; }

section { height: auto; overflow: hidden; margin: 2rem 0 0 0; }
section.first { margin: 0 0 0 0; }

.sentence { height: auto; overflow: hidden; }

.pc_none { display: block; }

.sp_none { display: none; }

.pc_none_span { display: inline; }

.sp_none_span { display: none; }

.text_bold { font-weight: bold; }

.vertical-align-middle { vertical-align: middle; padding-bottom: 5px; }

@media screen and (min-width: 768px), print { body { position: relative; z-index: 0; overflow: hidden; min-width: 1280px; }
  section { height: auto; overflow: hidden; margin: 0 0 0 0; }
  section.first { margin: 0 0 0 0; }
  .pc_none { display: none; }
  .sp_none { display: block; }
  .pc_none_span { display: none; }
  .sp_none_span { display: inline; } }
/* -----------------------------------------------------------
　枠
----------------------------------------------------------- */
article { height: auto; width: 100%; margin: 0; padding: 0; background-color: #ffffff; position: relative; z-index: 0; }

.wrapper { height: auto; width: 100%; margin: 0; padding: 0; }

.main { height: auto; width: 96%; margin: 0 auto; padding: 2rem 0; }

.main_low { height: auto; width: 96%; margin: 0 auto; padding: 2rem 0; }

@media screen and (min-width: 768px), print { article { height: auto; width: 100%; margin: 62px 0 0 0; padding: 0; background-color: #ffffff; position: relative; z-index: 0; }
  .wrapper { height: auto; width: 100%; margin: 0; padding: 0; }
  .main { height: auto; width: 876px; margin: 0; padding: 6px 38px 46px 38px; box-sizing: border-box; background-color: #ffffff; }
  .main_low { height: auto; width: 1200px; margin: 38px auto 100px auto; padding: 0; } }
/* -----------------------------------------------------------
　ヘッダ
----------------------------------------------------------- */
header { display: block; margin: 0 0 2rem 0; height: auto; padding: 0; height: 140vw; }
header .key_visual { height: 140vw; background-position: center top !important; background-size: cover !important; }
header .key_visual .key_on { width: 90%; margin: 0 auto; height: 140vw; position: relative; }
header .key_visual .key_on section { margin: 0; background-color: rgba(255, 255, 255, 0.9); padding: 1rem 0; box-sizing: border-box; }
header .key_visual .key_on section h1 img { width: 70%; max-width: 356px; display: block; margin: 0 auto; }
header .key_visual .key_on section .head_mail { color: #7D6E4D; font-family: 'notoserifjp'; font-size: 1.4rem; text-align: center; margin: 1rem 0 0 0; }
header .key_visual .key_on section .head_tel { color: #7D6E4D; font-family: 'notoserifjp'; font-size: 1.4rem; text-align: center; margin: 0.2rem 0 0 0; }
header .key_visual .key_on section .head_tel span { font-size: 1.4rem; }
header .key_visual .key_on section .head_tel a { font-size: 1.4rem; text-decoration: none; color: #7D6E4D; }
header .key_visual .key_on .key_info { margin: 0 0 4rem 0; }
header .key_visual .key_on .key_info .key_open { background-color: #F2A6AB; color: #ffffff; width: 80%; margin: 1rem auto 0 auto; text-align: center; padding: 0.5rem 0; border-radius: 2rem; border: #ffffff 1px dashed; box-shadow: 0 0 0 5px #F2A6AB; }
header .key_visual .key_on .key_info .key_open .kot1 { font-size: 1.2rem; }
header .key_visual .key_on .key_info .key_open .kot2 { font-size: 1.4rem; }
header .key_visual .key_on .key_info .key_open .kot2 span { font-size: 1.2rem; }
header .key_visual .key_on .key_info .key_open .kot3 { font-size: 1.2rem; }
header .key_visual .key_on .key_info .key_event { background-color: #FFEAB7; color: #7B5F20; width: 80%; margin: 1rem auto 0 auto; text-align: center; padding: 0.5rem 0; border-radius: 3rem; border: #7D6E4D 1px dashed; box-shadow: 0 0 0 5px #FFEAB7; line-height: 120%; }
header .key_visual .key_on .key_info .key_event .ket1 { font-size: 1.2rem; }
header .key_visual .key_on .key_info .key_event .ket2 { font-size: 1.4rem; }
header .key_visual .key_on .key_info .key_event .ket2 span { font-size: 1.2rem; }
header .key_visual .key_on .key_info .key_event .ket3 { font-size: 1.2rem; }
header .key_visual .key_on .key_info .key_event .ket4 { font-size: 1.2rem; }
header .key_visual .key_on .catch_copy1 { width: 90%; margin: 0 auto 0.5rem auto; color: #4d4d4d; text-shadow: 4px 0px 4px #ffffff,4px 0px 4px #ffffff, -4px 0px 4px #ffffff,-4px 0px 4px #ffffff, 0px 4px 4px #ffffff,0px 4px 4px #ffffff,  0px -4px 4px #ffffff,0px -4px 4px #ffffff; }
header .key_visual .key_on .catch_copy2 { width: 90%; margin: 0 auto; text-align: right; color: #4d4d4d; text-shadow: 4px 0px 4px #ffffff,4px 0px 4px #ffffff, -4px 0px 4px #ffffff,-4px 0px 4px #ffffff, 0px 4px 4px #ffffff,0px 4px 4px #ffffff,  0px -4px 4px #ffffff,0px -4px 4px #ffffff; }
header .key_visual .key_info2 { position: absolute; bottom: 0; left: 0; right: 0; }
header .key_visual .key_info2 .key_info_access { background-color: #ef8990; color: #ffffff; text-align: center; font-size: 1.2rem; font-family: 'notoserifjp'; margin: 0 auto; width: 70%; padding: 0.4rem 0; letter-spacing: 0.1em; }
header .key_visual .key_info2 .key_info_access .kit1 { font-size: 1.2rem; }
header .key_visual .key_info2 .key_info_access .kit2 { font-size: 1.4rem; }
header .key_visual .key_info2 .key_info_access .kit3 { font-size: 1.6rem; }
header .key_visual .key_info2 .key_info_web { display: none; }
header .key_visual .catch_copy_pink { display: none; }
header .key_visual .catch_copy_yellow { display: none; }
header.low { display: block; margin: 0 0 0 0; height: auto; padding: 0; height: 48vw; }
header.low .header_frame { width: 96%; padding: 0; margin: 0 auto; }
header.low .header_frame .head_logo { width: 75%; margin: 0 0 0 2%; }
header.low .header_frame .head_logo a img { width: 100%; margin: 7vw 0 0 0; }
header.low .header_frame .head_tel { color: #7D6E4D; font-family: 'notoserifjp'; font-size: 1.4rem; text-align: center; margin: 2rem 0 0 0; }
header.low .header_frame .head_tel span { font-size: 2rem; }
header.low .header_frame .head_tel a { font-size: 2rem; text-decoration: none; color: #7D6E4D; }
header.low .header_frame .head_info .head_access { background-color: #ef8990; color: #ffffff; text-align: center; font-size: 1.2rem; font-family: 'notoserifjp'; margin: 1rem auto 0 auto; width: 70%; padding: 0.4rem 0; letter-spacing: 0.1em; }
header.low .header_frame .head_info .head_access .kit1 { font-size: 1.2rem; }
header.low .header_frame .head_info .head_access .kit2 { font-size: 1.4rem; }
header.low .header_frame .head_info .head_access .kit3 { font-size: 1.6rem; }
header.low .header_frame .head_info .head_web { display: none; }

.catch_copy_pink_sp { width: 96%; margin: 0 auto 2rem auto; background-color: #ef8990; display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-align-items: center; align-items: center; padding: 1rem 1rem 0 3rem; box-sizing: border-box; }
.catch_copy_pink_sp ul { list-style-type: disc; }
.catch_copy_pink_sp ul li { color: #ffffff; font-size: 1.1rem; line-height: 120%; margin: 0 0 1rem 0; }

.catch_copy_yellow_sp { width: 96%; margin: 0 auto 2rem auto; background-color: #f3b31c; display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-align-items: center; align-items: center; padding: 1rem 1rem 0 3rem; box-sizing: border-box; }
.catch_copy_yellow_sp ul { list-style-type: disc; }
.catch_copy_yellow_sp ul li { color: #ffffff; font-size: 1.1rem; line-height: 120%; margin: 0 0 1rem 0; }

.key_visual_low { background: url(../images/key_visual_low.jpg) no-repeat; background-size: cover; background-position: center center; width: 100%; height: 30vw; }
.key_visual_low h1 { width: 100%; height: 30vw; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; color: #333333; font-family: 'notoserifjp'; font-weight: bold; font-size: 2.2rem; text-align: center; letter-spacing: 0.1em; padding: 0; }

@media screen and (min-width: 768px), print { header { display: block; margin: 0 0 40px 0; height: auto; padding: 0; height: 800px; /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffffff+0,ffffff+10,ffffff+18,ffffff+100&1+0,0.9+10,0+18 */ background: -moz-linear-gradient(top, white 0%, rgba(255, 255, 255, 0.9) 10%, rgba(255, 255, 255, 0) 18%, rgba(255, 255, 255, 0) 100%); /* FF3.6-15 */ background: -webkit-linear-gradient(top, white 0%, rgba(255, 255, 255, 0.9) 10%, rgba(255, 255, 255, 0) 18%, rgba(255, 255, 255, 0) 100%); /* Chrome10-25,Safari5.1-6 */ background: linear-gradient(to bottom, white 0%, rgba(255, 255, 255, 0.9) 10%, rgba(255, 255, 255, 0) 18%, rgba(255, 255, 255, 0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#00ffffff',GradientType=0 ); /* IE6-9 */ }
  header .key_visual { height: 800px; background-position: center top; background-size: cover; }
  header .key_visual .key_on { width: 1200px; margin: 0 auto; height: 800px; position: relative; }
  header .key_visual .key_on section { width: 450px; height: 605px; margin: 0; background-color: rgba(255, 255, 255, 0.9); padding: 0; box-sizing: border-box; }
  header .key_visual .key_on section h1 img { width: 356px; max-width: 356px; display: block; margin: 138px auto 0 auto; }
  header .key_visual .key_on section .head_mail { color: #7D6E4D; font-family: 'notoserifjp'; font-size: 2.2rem; text-align: center; margin: 30px 0 0 0; }
  header .key_visual .key_on section .head_tel { color: #7D6E4D; font-family: 'notoserifjp'; font-size: 2.2rem; text-align: center; margin: 30px 0 0 0; }
  header .key_visual .key_on section .head_tel span { font-size: 2.2rem; }
  header .key_visual .key_on section .head_tel a { font-size: 2.2rem; text-decoration: none; }
  header .key_visual .key_on p.key_tel { color: #7D6E4D; font-family: 'notoserifjp'; font-size: 2rem; text-align: center; }
  header .key_visual .key_on .key_info { margin: 0; width: 360px; height: 210px; position: absolute; top: 520px; left: 45px; }
  header .key_visual .key_on .key_info .key_open { position: absolute; top: 8px; left: 0; right: 0; z-index: 999999; background-color: #F2A6AB; color: #ffffff; width: 192px; height: 192px; margin: 0 auto; text-align: center; padding: 28px 0 0 0; border-radius: 50%; border: #ffffff 1px dashed; box-shadow: 0 0 0 8px #F2A6AB; line-height: 260%; box-sizing: border-box; }
  header .key_visual .key_on .key_info .key_open .kot1 { font-size: 2.6rem; display: block; }
  header .key_visual .key_on .key_info .key_open .kot2 { font-size: 3.2rem; }
  header .key_visual .key_on .key_info .key_open .kot2 span { font-size: 2.2rem; }
  header .key_visual .key_on .key_info .key_open .kot3 { display: block; font-size: 2.6rem; }
  header .key_visual .key_on .key_info .key_event { position: absolute; bottom: 7px; right: 7px; z-index: 999998; background-color: #FFEAB7; color: #7B5F20; width: 153px; height: 153px; margin: 0; text-align: center; padding: 14px 0 0 0; border-radius: 50%; border: #7D6E4D 1px dashed; box-shadow: 0 0 0 7px #FFEAB7; line-height: 180%; box-sizing: border-box; }
  header .key_visual .key_on .key_info .key_event .ket1 { font-size: 2rem; }
  header .key_visual .key_on .key_info .key_event .ket2 { font-size: 2.1rem; }
  header .key_visual .key_on .key_info .key_event .ket2 span { font-size: 1.8rem; }
  header .key_visual .key_on .key_info .key_event .ket3 { font-size: 1.8rem; }
  header .key_visual .key_on .key_info .key_event .ket4 { font-size: 1.8rem; }
  header .key_visual .key_on .catch_copy1 { position: absolute; top: 205px; right: 300px; width: auto; margin: 0; color: #4d4d4d; font-size: 2.6rem; font-family: 'notoserifjp'; -ms-writing-mode: tb-rl; -webkit-writing-mode: vertical-rl; writing-mode: vertical-rl; text-shadow: 8px 0px 8px #ffffff,8px 0px 8px #ffffff, -8px 0px 8px #ffffff,-8px 0px 8px #ffffff, 0px 8px 8px #ffffff,0px 8px 8px #ffffff,  0px -8px 8px #ffffff,0px -8px 8px #ffffff; }
  header .key_visual .key_on .catch_copy2 { position: absolute; top: 340px; right: 340px; width: auto; margin: 0; text-align: right; color: #4d4d4d; font-size: 2.6rem; font-family: 'notoserifjp'; -ms-writing-mode: tb-rl; -webkit-writing-mode: vertical-rl; writing-mode: vertical-rl; text-shadow: 8px 0px 8px #ffffff,8px 0px 8px #ffffff, -8px 0px 8px #ffffff,-8px 0px 8px #ffffff, 0px 8px 8px #ffffff,0px 8px 8px #ffffff,  0px -8px 8px #ffffff,0px -8px 8px #ffffff; }
  header .key_visual .key_info2 { position: absolute; top: 14px; bottom: auto; left: auto; right: 0; width: 336px; height: 80px; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  header .key_visual .key_info2 .key_info_access { background-color: #ef8990; color: #ffffff; text-align: center; font-size: 1.6rem; font-family: 'notoserifjp'; margin: 0; width: 200px; height: 80px; padding: 5px 0; box-sizing: border-box; line-height: 140%; letter-spacing: 0.1em; }
  header .key_visual .key_info2 .key_info_access .kit1 { font-size: 1.4rem; }
  header .key_visual .key_info2 .key_info_access .kit2 { font-size: 2rem; }
  header .key_visual .key_info2 .key_info_access .kit3 { font-size: 2.4rem; }
  header .key_visual .key_info2 .key_info_web { width: 120px; height: 80px; background-color: #F3B31C; color: #ffffff; font-size: 1.8rem; font-family: 'notoserifjp'; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: column; flex-direction: column; line-height: 120%; margin: 0; text-decoration: none; }
  header .key_visual .key_info2 .key_info_web i { font-size: 5rem; }
  header .key_visual .key_info2 .key_info_web span { display: block; margin: -5px 0 0 0; }
  header .key_visual .catch_copy_pink { position: absolute; top: 510px; right: 18px; display: block; width: 660px; height: 130px; background-color: rgba(239, 137, 144, 0.75); display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-align-items: center; align-items: center; padding: 0 0 0 60px; box-sizing: border-box; }
  header .key_visual .catch_copy_pink ul { list-style-type: disc; }
  header .key_visual .catch_copy_pink ul li { color: #ffffff; font-size: 2.2rem; line-height: 140%; }
  header .key_visual .catch_copy_pink.-tp { top: 650px; }
  header .key_visual .catch_copy_yellow { position: absolute; top: 650px; right: 18px; display: block; width: 660px; height: 130px; background-color: rgba(243, 179, 28, 0.75); display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-align-items: center; align-items: center; padding: 0 0 0 60px; box-sizing: border-box; }
  header .key_visual .catch_copy_yellow ul { list-style-type: disc; }
  header .key_visual .catch_copy_yellow ul li { color: #ffffff; font-size: 2.2rem; line-height: 140%; }
  header.low { display: block; margin: 0 0 0 0; height: auto; padding: 0; height: 110px; }
  header.low .header_frame { width: 1200px; padding: 0; margin: 0 auto; position: relative; }
  header.low .header_frame .head_logo { position: absolute; top: 33px; left: 0; width: 475px; margin: 0 0 0 0; }
  header.low .header_frame .head_logo a img { width: 475px; margin: 0 0 0 0; }
  header.low .header_frame .head_tel { position: absolute; top: 36px; left: 535px; color: #7D6E4D; font-family: 'notoserifjp'; font-size: 2.2rem; text-align: center; margin: 0 0 0 0; }
  header.low .header_frame .head_tel span { font-size: 3.4rem; }
  header.low .header_frame .head_tel a { font-size: 3.4rem; text-decoration: none; color: #7D6E4D; }
  header.low .header_frame .head_info { position: absolute; top: 14px; bottom: auto; left: auto; right: 0; width: 336px; height: 80px; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  header.low .header_frame .head_info .head_access { background-color: #ef8990; color: #ffffff; text-align: center; font-size: 1.6rem; font-family: 'notoserifjp'; margin: 0; width: 200px; height: 80px; padding: 5px 0; box-sizing: border-box; line-height: 140%; letter-spacing: 0.1em; }
  header.low .header_frame .head_info .head_access .kit1 { font-size: 1.4rem; }
  header.low .header_frame .head_info .head_access .kit2 { font-size: 2rem; }
  header.low .header_frame .head_info .head_access .kit3 { font-size: 2.4rem; }
  header.low .header_frame .head_info .head_web { width: 120px; height: 80px; background-color: #F3B31C; color: #ffffff; font-size: 1.8rem; font-family: 'notoserifjp'; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: column; flex-direction: column; line-height: 120%; margin: 0; text-decoration: none; }
  header.low .header_frame .head_info .head_web i { font-size: 5rem; }
  header.low .header_frame .head_info .head_web span { display: block; margin: -5px 0 0 0; }
  .catch_copy_pink_sp { display: none; }
  .catch_copy_yellow_sp { display: none; }
  .key_visual_low { background: url(../images/key_visual_low.jpg) no-repeat; background-size: cover; background-position: center center; width: 100%; height: 120px; margin: 0 0 26px 0; }
  .key_visual_low h1 { width: 100%; height: 120px; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; color: #333333; font-family: 'notoserifjp'; font-weight: bold; font-size: 3rem; text-align: center; letter-spacing: 0.1em; padding: 0; } }
/* -----------------------------------------------------------
　メインナビ
----------------------------------------------------------- */
.main_nav_pc { display: none; }

@media screen and (min-width: 768px), print { .main_nav_pc { display: block; height: 40px; margin: 0; padding: 0; width: 100%; overflow: visible; }
  .main_nav_pc nav { width: 1200px; height: 40px; margin: 0 auto; padding: 0; }
  .main_nav_pc nav ul { list-style-type: none; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; width: auto; box-sizing: border-box; height: 40px; padding: 0; margin: 0; }
  .main_nav_pc nav ul li { display: block; text-align: center; box-sizing: border-box; height: 40px; text-align: center; font-weight: normal; margin: 0 0 0 0; border-left: #F2A6AB 1px dashed; }
  .main_nav_pc nav ul li a { text-decoration: none; color: #333333; height: 40px; width: 100%; box-sizing: border-box; margin: 0; padding: 0; letter-spacing: 0.05em; font-size: 1.5rem; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: column; flex-direction: column; text-align: center; }
  .main_nav_pc nav ul li a span { color: #C2C2C2; font-size: 1rem; display: block; margin: 8px 0 0 0; }
  .main_nav_pc nav ul li a:hover { background-color: #ef8990; color: #ffffff; transition: all 0.3s ease 0s; }
  .main_nav_pc nav ul li a:hover span { color: #ffffff; }
  .main_nav_pc nav ul li ul { width: 940px; height: auto; display: none; margin: 0 0 0 0; padding: 0 0 0 0; position: relative; z-index: 99999; }
  .main_nav_pc nav ul li ul li { display: block; text-align: center; box-sizing: border-box; width: 470px; height: 36px; text-align: left; font-weight: normal; margin: 0 0 0 0; border-left: none; }
  .main_nav_pc nav ul li ul li a { color: #333333; height: 40px; width: 100%; box-sizing: border-box; margin: 0; padding: 0 0 0 15px; letter-spacing: 0.05em; font-size: 1.6rem; display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; background-color: #FFF6F6; box-sizing: border-box; /*運用の要望により設定*/ /*リンクが設定されたら外してください*/ }
  .main_nav_pc nav ul li ul li a::before { font-family: "fontello"; content: "\00e802"; }
  .main_nav_pc nav ul li ul li a:hover { background-color: #ef8990; color: #ffffff; transition: all 0.3s ease 0s; }
  .main_nav_pc nav ul li ul li a.nolink:hover { background-color: #FFF6F6; color: #333333; transition: all 0 ease 0s; }
  .main_nav_pc nav ul li:last-child { border-right: #F2A6AB 1px dashed; }
  .main_nav_pc nav ul li.home { width: 100px; }
  .main_nav_pc nav ul li.doctor { width: 120px; }
  .main_nav_pc nav ul li.treatment { width: 120px; }
  .main_nav_pc nav ul li.treatment:hover { cursor: pointer; }
  .main_nav_pc nav ul li.clinic { width: 120px; }
  .main_nav_pc nav ul li.visit { width: 120px; }
  .main_nav_pc nav ul li.access { width: 120px; }
  .main_nav_pc nav ul li.hours { width: 120px; }
  .main_nav_pc nav ul li.recruit { width: 120px; }
  .main_nav_pc nav ul li.online { width: 130px; }
  .main_nav_pc nav ul li.price { width: 130px; }
  .main_nav_pc nav ul li.blog { width: 100px; }
  .main_nav_pc nav ul.open_nav { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; } }
/*-----------------------------------------------------------
お知らせ
----------------------------------------------------------- */
.notice_frame { width: 100%; margin: 0 0 4rem 0; box-sizing: border-box; overflow: visible; padding: 0; height: auto; }
.notice_frame h2 { background-color: #f8bec2; color: #ffffff; font-weight: normal; width: 70%; height: 30vw; margin: 0 30% 0 0; box-sizing: border-box; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: column; flex-direction: column; line-height: 100%; padding: 0 0 0 0; }
.notice_frame h2 span { font-family: 'notoserifjp'; font-size: 2.2rem; margin: 0 0 1rem 0; }
.notice_frame .notice_box { width: 96%; margin: 0 auto; position: relative; z-index: 0; }
.notice_frame .notice_box .notice_area { background-color: #FFF6F6; margin: 4rem 0 0 0; padding: 0 0 2rem 0; position: relative; }
.notice_frame .notice_box .notice_area p.subtitle { margin: 0 0 0 0; font-size: 4rem; font-family: 'notoserifjp'; color: rgba(225, 94, 103, 0.14); position: absolute; top: -3.2rem; right: 0; }
.notice_frame .notice_box .notice_area dl { height: auto; margin: 2rem auto 0 auto; width: 96%; overflow-wrap: break-word; }
.notice_frame .notice_box .notice_area dl dt { color: #ef8990; margin: 2rem 0 0.4rem 0; padding: 2rem 0.4rem 0 2rem; font-size: 1.5rem; box-sizing: border-box; font-weight: normal; letter-spacing: 0.1em; line-height: 140%; position: relative; border-top: #C3C3C3 1px dashed; }
.notice_frame .notice_box .notice_area dl dt::before { position: absolute; font-family: "fontello"; content: "\00e808"; color: #ef8990; display: block; width: 0; height: 0; margin: auto; left: 0; top: 2rem; font-size: 1.2rem; }
.notice_frame .notice_box .notice_area dl dt.open::before { border: none; font-family: "fontello"; content: "\00e808"; color: #ef8990; }
.notice_frame .notice_box .notice_area dl dt.close::before { font-family: "fontello"; content: "\00e809"; color: #ef8990; }
.notice_frame .notice_box .notice_area dl dt:first-child { padding: 2rem 0.4rem 0 2rem; border-top: none; }
.notice_frame .notice_box .notice_area dl dd { margin: 0 0 1rem 0; padding: 0 0.4rem 0 2rem; color: #333333; font-size: 1.4rem; line-height: 160%; display: none; }
.notice_frame .notice_box .notice_area dl dd.open { display: block; }

@media screen and (min-width: 768px), print { .notice_frame { width: 100%; margin: 0 0 0 0; box-sizing: border-box; overflow: auto; padding: 0 0 107px 0; height: auto; position: relative; z-index: 9999; }
  .notice_frame h2 { background-color: #f8bec2; color: #ffffff; font-weight: normal; width: auto; max-width: 33%; height: 345px; margin: 0 30% 0 0; box-sizing: border-box; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: flex-end; align-items: flex-end; -webkit-flex-direction: column; flex-direction: column; line-height: 100%; padding: 0 0 0 0; position: relative; z-index: 1; }
  .notice_frame h2 span { font-family: 'notoserifjp'; font-size: 3rem; margin: 0 56px 0 0; }
  .notice_frame .notice_box { width: 1500px; max-width: 74%; min-height: 350px; margin: -272px 0 0 0; position: relative; z-index: 0; float: right; background-color: #FFF6F6; }
  .notice_frame .notice_box .notice_area { margin: 0 0 0 170px; padding: 0 0 30px 0; width: 830px; }
  .notice_frame .notice_box .notice_area p.subtitle { margin: 0 0 0 0; font-size: 8.6rem; font-family: 'notoserifjp'; color: rgba(225, 94, 103, 0.14); position: absolute; top: -100px; right: -55px; }
  .notice_frame .notice_box .notice_area dl { height: auto; margin: 0; width: 830px; overflow-wrap: break-word; }
  .notice_frame .notice_box .notice_area dl dt { color: #ef8990; margin: 10px 0 8px 0; padding: 15px 0 0 20px; font-size: 1.8rem; box-sizing: border-box; font-weight: normal; letter-spacing: 0.1em; line-height: 140%; position: relative; border-top: #FFFEF6 1px solid; }
  .notice_frame .notice_box .notice_area dl dt::before { position: absolute; font-family: "fontello"; content: "\00e808"; color: #ef8990; display: block; width: 0; height: 0; margin: auto; left: 0; top: 15px; font-size: 2rem; }
  .notice_frame .notice_box .notice_area dl dt.open::before { border: none; font-family: "fontello"; content: "\00e808"; color: #ef8990; }
  .notice_frame .notice_box .notice_area dl dt.close::before { font-family: "fontello"; content: "\00e809"; color: #ef8990; }
  .notice_frame .notice_box .notice_area dl dt:first-child { padding: 15px 0 0 20px; }
  .notice_frame .notice_box .notice_area dl dd { margin: 0 0 15px 0; padding: 0 0 0 0; color: #333333; font-size: 1.6rem; line-height: 160%; display: none; }
  .notice_frame .notice_box .notice_area dl dd.open { display: block; } }
@media screen and (min-width: 768px) and (max-width: 1500px) { .notice_frame { width: 100%; margin: 0 0 0 0; box-sizing: border-box; overflow: auto; padding: 0 0 107px 0; height: auto; position: relative; z-index: 9999; }
  .notice_frame h2 { background-color: #f8bec2; color: #ffffff; font-weight: normal; width: 25%; max-width: 25%; height: 345px; margin: 0 30% 0 0; box-sizing: border-box; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: flex-end; align-items: flex-end; -webkit-flex-direction: column; flex-direction: column; line-height: 100%; padding: 0 0 0 0; position: relative; z-index: 1; }
  .notice_frame h2 span { font-family: 'notoserifjp'; font-size: 3rem; margin: 0 56px 0 0; }
  .notice_frame .notice_box { width: 85%; max-width: 85%; margin: -272px 0 0 0; min-height: 350px; position: relative; z-index: 0; float: right; background-color: #FFF6F6; }
  .notice_frame .notice_box .notice_area { margin: 0 0 0 170px; padding: 0 0 30px 0; width: 830px; }
  .notice_frame .notice_box .notice_area p.subtitle { margin: 0 0 0 0; font-size: 8.6rem; font-family: 'notoserifjp'; color: rgba(225, 94, 103, 0.14); position: absolute; top: -100px; right: -45px; }
  .notice_frame .notice_box .notice_area dl { height: auto; margin: 0; width: 830px; }
  .notice_frame .notice_box .notice_area dl dt { color: #ef8990; margin: 10px 0 8px 0; padding: 15px 0 0 20px; font-size: 1.8rem; box-sizing: border-box; font-weight: normal; letter-spacing: 0.1em; line-height: 140%; position: relative; border-top: #FFFEF6 1px solid; }
  .notice_frame .notice_box .notice_area dl dt::before { position: absolute; font-family: "fontello"; content: "\00e808"; color: #ef8990; display: block; width: 0; height: 0; margin: auto; left: 0; top: 15px; font-size: 2rem; }
  .notice_frame .notice_box .notice_area dl dt.open::before { border: none; font-family: "fontello"; content: "\00e808"; color: #ef8990; }
  .notice_frame .notice_box .notice_area dl dt.close::before { font-family: "fontello"; content: "\00e809"; color: #ef8990; }
  .notice_frame .notice_box .notice_area dl dt:first-child { padding: 15px 0 0 20px; }
  .notice_frame .notice_box .notice_area dl dd { margin: 0 0 15px 0; padding: 0 0 0 0; color: #333333; font-size: 1.6rem; line-height: 160%; display: none; }
  .notice_frame .notice_box .notice_area dl dd.open { display: block; } }
/*-----------------------------------------------------------
診療内容
----------------------------------------------------------- */
.treatment_frame { width: 96%; margin: 0 auto; }
.treatment_frame .treatment_bg { margin: 4rem 0 4rem 0; padding: 0 0 2rem 0; background-color: #FFFEF6; border-top: #ffffff 4rem solid; position: relative; }
.treatment_frame .treatment_bg .treatment_box { margin: -15vw 0 0 0; }
.treatment_frame .treatment_bg .treatment_box .treatment_list { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; width: 100%; }
.treatment_frame .treatment_bg .treatment_box .treatment_list a { text-decoration: none; color: #333333; width: 48%; display: block; margin: 0 0 2rem 0; }
.treatment_frame .treatment_bg .treatment_box .treatment_list a img { width: 80%; display: block; margin: 0 auto; }
.treatment_frame .treatment_bg .treatment_box .treatment_list a span { text-align: center; color: #333333; font-size: 1.2rem; display: block; line-height: 140%; }
.treatment_frame .treatment_bg p.subtitle { margin: 0 0 0 0; font-size: 4rem; font-family: 'notoserifjp'; color: rgba(125, 110, 77, 0.14); position: absolute; bottom: -1.8rem; right: 0; }
.treatment_frame .treatment_bg img.index_treatment_img { display: none; }

@media screen and (min-width: 768px), print { .treatment_frame { width: 100%; margin: 0; }
  .treatment_frame .treatment_bg { margin: 46px 0 230px 0; padding: 0 0 47px 0; background-color: #FFFEF6; border-top: #ffffff 4rem solid; position: relative; }
  .treatment_frame .treatment_bg .treatment_box { margin: -32px auto 0 auto; width: 1200px; }
  .treatment_frame .treatment_bg .treatment_box .treatment_list { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; width: 845px; position: relative; z-index: 99999; }
  .treatment_frame .treatment_bg .treatment_box .treatment_list a { text-decoration: none; color: #333333; width: 165px; display: block; margin: 0 0 40px 0; /*運用の要望により設定*/ /*リンクが設定されたら外してください*/ }
  .treatment_frame .treatment_bg .treatment_box .treatment_list a img { width: 142px; display: block; margin: 0 auto 10px auto; }
  .treatment_frame .treatment_bg .treatment_box .treatment_list a span { text-align: center; color: #333333; font-size: 1.5rem; display: block; line-height: 140%; text-shadow: 2px 0px 2px #FFFEF6, 2px 0px 2px #FFFEF6, -2px 0px 2px #FFFEF6, -2px 0px 2px #FFFEF6, 0px 2px 2px #FFFEF6, 0px 2px 2px #FFFEF6, 0px -2px 2px #FFFEF6, 0px -2px 2px #FFFEF6; }
  .treatment_frame .treatment_bg .treatment_box .treatment_list a:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  .treatment_frame .treatment_bg .treatment_box .treatment_list a.nolink:hover { opacity: 1; transition: all 0 ease 0s; }
  .treatment_frame .treatment_bg p.subtitle { margin: 0 auto; font-size: 8.6rem; font-family: 'notoserifjp'; color: rgba(125, 110, 77, 0.14); position: absolute; bottom: -60px; right: 0; left: 0; width: 1200px; text-align: right; }
  .treatment_frame .treatment_bg img.index_treatment_img { display: block; position: absolute; top: -80px; right: 0; z-index: 0; } }
@media screen and (min-width: 768px) and (max-width: 1500px) { .treatment_frame { width: 100%; margin: 0; }
  .treatment_frame .treatment_bg { margin: 46px 0 230px 0; padding: 0 0 47px 0; background-color: #FFFEF6; border-top: #ffffff 4rem solid; position: relative; }
  .treatment_frame .treatment_bg .treatment_box { margin: -32px auto 0 auto; width: 1200px; }
  .treatment_frame .treatment_bg .treatment_box .treatment_list { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; width: 845px; position: relative; z-index: 99999; }
  .treatment_frame .treatment_bg .treatment_box .treatment_list a { text-decoration: none; color: #333333; width: 165px; display: block; margin: 0 0 40px 0; }
  .treatment_frame .treatment_bg .treatment_box .treatment_list a img { width: 142px; display: block; margin: 0 auto 10px auto; }
  .treatment_frame .treatment_bg .treatment_box .treatment_list a span { text-align: center; color: #333333; font-size: 1.5rem; display: block; line-height: 140%; text-shadow: 2px 0px 2px #FFFEF6, 2px 0px 2px #FFFEF6, -2px 0px 2px #FFFEF6, -2px 0px 2px #FFFEF6, 0px 2px 2px #FFFEF6, 0px 2px 2px #FFFEF6, 0px -2px 2px #FFFEF6, 0px -2px 2px #FFFEF6; }
  .treatment_frame .treatment_bg p.subtitle { margin: 0 auto; font-size: 8.6rem; font-family: 'notoserifjp'; color: rgba(125, 110, 77, 0.14); position: absolute; bottom: -60px; right: 0; left: 0; width: 1200px; text-align: right; }
  .treatment_frame .treatment_bg img.index_treatment_img { display: block; position: absolute; top: -80px; right: -17%; z-index: 0; } }
/*-----------------------------------------------------------
ごあいさつ
----------------------------------------------------------- */
.greeting_frame { width: 100%; margin: 0 0 2rem 0; padding: 0 0 4rem 0; }
.greeting_frame h2.top_title { width: 96%; margin: 0 auto; }
.greeting_frame .greeting_bg { margin: 2rem 0 0 0; background: url("../images/index_greeting_bk.jpg") no-repeat; background-position: center bottom; padding: 0 0 4rem 0; position: relative; overflow: visible; }
.greeting_frame .greeting_bg .greeting_text { width: 96%; margin: 0 auto; }
.greeting_frame .greeting_bg .greeting_text .greeting_doctor { position: relative; }
.greeting_frame .greeting_bg .greeting_text .greeting_doctor img { width: 65%; display: block; margin: 0 auto; position: relative; z-index: 0; }
.greeting_frame .greeting_bg .greeting_text .greeting_doctor .greeting_doctor_name { background-color: rgba(242, 166, 171, 0.7); width: 80%; margin: 1rem auto 0 auto; color: #6B1A20; padding: 1rem 0; box-sizing: border-box; position: relative; z-index: 1; }
.greeting_frame .greeting_bg .greeting_text .greeting_doctor .greeting_doctor_name .clinic_name { font-size: 1.2rem; font-family: 'notoserifjp'; text-align: center; margin: 0; }
.greeting_frame .greeting_bg .greeting_text .greeting_doctor .greeting_doctor_name .doctor_name { font-size: 2rem; font-family: 'notoserifjp'; text-align: center; margin: 0; }
.greeting_frame .greeting_bg .greeting_text .greeting_doctor .greeting_doctor_name .doctor_name span { font-size: 1.2rem; margin: 0 1rem 0 0; }
.greeting_frame .greeting_bg p.subtitle { margin: 0 0 0 0; font-size: 4rem; font-family: 'notoserifjp'; color: rgba(225, 94, 103, 0.14); position: absolute; bottom: -2.2rem; right: 2%; }

@media screen and (min-width: 768px), print { .greeting_frame { width: 100%; margin: 0 0 100px 0; padding: 0 0 55px 0; }
  .greeting_frame h2.top_title { width: 1200px; margin: 0 auto; }
  .greeting_frame .greeting_bg { margin: 2rem 0 0 0; background: url("../images/index_greeting_bk.jpg") no-repeat; background-position: right bottom; padding: 0 0 50px 0; position: relative; overflow: visible; }
  .greeting_frame .greeting_bg .greeting_text { width: 1200px; margin: 0 auto; position: relative; }
  .greeting_frame .greeting_bg .greeting_text p { width: 780px; margin: 0 0 33px 20px; line-height: 180%; }
  .greeting_frame .greeting_bg .greeting_text .greeting_doctor { position: absolute; top: 0; right: 32px; width: 325px; height: 455px; }
  .greeting_frame .greeting_bg .greeting_text .greeting_doctor img { width: 272px; display: block; margin: 0 auto; position: relative; z-index: 0; }
  .greeting_frame .greeting_bg .greeting_text .greeting_doctor .greeting_doctor_name { background-color: rgba(242, 166, 171, 0.7); width: 325px; margin: 10px 0 0 0; color: #6B1A20; padding: 0 0 0 0; box-sizing: border-box; position: relative; z-index: 1; }
  .greeting_frame .greeting_bg .greeting_text .greeting_doctor .greeting_doctor_name .clinic_name { font-size: 1.8rem; font-family: 'notoserifjp'; text-align: center; margin: 0; width: 325px; }
  .greeting_frame .greeting_bg .greeting_text .greeting_doctor .greeting_doctor_name .doctor_name { font-size: 2.6rem; font-family: 'notoserifjp'; text-align: center; margin: 0 0 0 0; width: 325px; }
  .greeting_frame .greeting_bg .greeting_text .greeting_doctor .greeting_doctor_name .doctor_name span { font-size: 1.8rem; margin: 0 10px 0 0; }
  .greeting_frame .greeting_bg p.subtitle { margin: 0 auto; font-size: 8.6rem; font-family: 'notoserifjp'; color: rgba(225, 94, 103, 0.14); position: absolute; bottom: -60px; right: 0; left: 0; width: 1200px; text-align: right; } }
/*-----------------------------------------------------------
クリニックの診療について
----------------------------------------------------------- */
.about_frame { margin: 4rem 0 4rem 0; padding: 2rem 0 4rem 0; background-color: #FFF6F6; position: relative; overflow: visible; }
.about_frame h2.top_title { width: 96%; margin: 0 auto; }
.about_frame .about_bg1 { width: 96%; margin: 1rem auto 0 auto; }
.about_frame .about_bg1 .about_img img { width: 70%; max-width: 70%; display: block; margin: 0; }
.about_frame .about_bg1 .about_ct { background-color: #f8bec2; padding: 4rem 1rem 1rem 1rem; box-sizing: border-box; margin: -2rem 0 0 10%; width: 90%; }
.about_frame .about_bg1 .about_ct .about_title { color: #ffffff; border-bottom: #ffffff 1px solid; font-size: 1.6rem; font-family: 'notoserifjp'; padding: 0 0 0.5rem 0; }
.about_frame .about_bg1 .about_ct .about_text { color: #ffffff; font-size: 1.4rem; font-family: 'notoserifjp'; }
.about_frame .about_bg2 { width: 96%; margin: 4rem auto 0 auto; }
.about_frame .about_bg2 .about_img { text-align: right; }
.about_frame .about_bg2 .about_img img { width: 70%; max-width: 70%; display: block; margin: 0 0 0 30%; }
.about_frame .about_bg2 .about_ct { background-color: #f8bec2; padding: 4rem 1rem 1rem 1rem; box-sizing: border-box; margin: -2rem 10% 0 0; width: 90%; }
.about_frame .about_bg2 .about_ct .about_title { color: #ffffff; border-bottom: #ffffff 1px solid; font-size: 1.6rem; font-family: 'notoserifjp'; padding: 0 0 0.5rem 0; }
.about_frame .about_bg2 .about_ct .about_text { color: #ffffff; font-size: 1.4rem; font-family: 'notoserifjp'; }
.about_frame p.subtitle { margin: 0 0 0 0; font-size: 4rem; font-family: 'notoserifjp'; color: rgba(225, 94, 103, 0.14); position: absolute; bottom: -2.2rem; left: 2%; }

@media screen and (min-width: 768px), print { .about_frame { margin: 0 0 100px 0; padding: 47px 0 95px 0; background-color: #FFF6F6; position: relative; overflow: visible; }
  .about_frame h2.top_title { width: 1200px; margin: 0 auto; }
  .about_frame .about_bg1 { width: 100%; margin: 0; position: relative; height: 320px; }
  .about_frame .about_bg1 .about_img { width: 1200px; margin: 0 auto 0 auto; }
  .about_frame .about_bg1 .about_img img { width: 520px; max-width: 520px; display: block; margin: 0; }
  .about_frame .about_bg1 .about_ct { background-color: #f8bec2; padding: 40px 0 0 30%; box-sizing: border-box; margin: -179px 0 0 31%; width: 69%; height: 268px; }
  .about_frame .about_bg1 .about_ct .about_title { position: absolute; top: 122px; left: 50%; color: #ffffff; border-bottom: #ffffff 1px solid; font-size: 2.8rem; font-family: 'notoserifjp'; padding: 0 0 7px 25px; width: 680px; margin: 0 0 0 -79px; box-sizing: border-box; letter-spacing: 0; line-height: 120%; }
  .about_frame .about_bg1 .about_ct .about_text { position: absolute; top: 220px; left: 50%; color: #ffffff; font-size: 1.6rem; font-family: 'notoserifjp'; width: 680px; margin: 0 0 0 -79px; padding: 0 30px 0 25px; box-sizing: border-box; }
  .about_frame .about_bg2 { width: 100%; margin: 0 0 60px 0; position: relative; height: 320px; }
  .about_frame .about_bg2 .about_img { width: 1200px; margin: 0 auto 0 auto; }
  .about_frame .about_bg2 .about_img img { width: 520px; max-width: 520px; display: block; margin: 0 0 0 680px; }
  .about_frame .about_bg2 .about_ct { background-color: #f8bec2; padding: 40px 0 0 30%; box-sizing: border-box; margin: -179px 31% 0 0; width: 69%; height: 228px; }
  .about_frame .about_bg2 .about_ct .about_title { position: absolute; top: 122px; right: 50%; color: #ffffff; border-bottom: #ffffff 1px solid; font-size: 2.8rem; font-family: 'notoserifjp'; padding: 0 0 7px 25px; width: 680px; margin: 0 -79px 0 0; box-sizing: border-box; }
  .about_frame .about_bg2 .about_ct .about_text { position: absolute; top: 192px; right: 50%; color: #ffffff; font-size: 1.6rem; font-family: 'notoserifjp'; width: 680px; margin: 0 -79px 0 0; padding: 0 30px 0 25px; box-sizing: border-box; }
  .about_frame p.subtitle { margin: 0 auto; font-size: 8.6rem; font-family: 'notoserifjp'; color: rgba(225, 94, 103, 0.14); position: absolute; bottom: -60px; right: 0; left: 0; width: 1200px; text-align: left; } }
/*-----------------------------------------------------------
クリニックの特長
----------------------------------------------------------- */
.features_frame { margin: 4rem 0 4rem 0; padding: 2rem 0 4rem 0; background: url("../images/index_feature_bk.jpg") no-repeat; background-position: center top 18vw; background-size: cover; position: relative; overflow: visible; }
.features_frame h2.top_title { width: 96%; margin: 0 auto; }
.features_frame .features_area .features_box { position: relative; margin: 0 0 4rem 0; }
.features_frame .features_area .features_box img { width: 70%; display: block; margin: 0 auto; position: relative; z-index: 0; }
.features_frame .features_area .features_box .features_subtitle { background-color: rgba(255, 255, 255, 0.8); width: 85%; margin: -10vw auto 0 auto; padding: 1rem 0; box-sizing: border-box; position: relative; z-index: 1; font-size: 1.8rem; font-family: 'notoserifjp'; text-align: center; }
.features_frame .features_area .features_box .ftc1 { color: #E15E67; }
.features_frame .features_area .features_box .ftc2 { color: #F3B31C; }
.features_frame .features_area .features_box .ftc3 { color: #DEC182; }
.features_frame .features_area .features_box .features_text { width: 80%; margin: 1rem auto 0 auto; }
.features_frame .features_area .box5 { margin: 0; }
.features_frame .features_line { display: none; }
.features_frame p.subtitle { margin: 0 0 0 0; font-size: 4rem; font-family: 'notoserifjp'; color: rgba(225, 94, 103, 0.14); position: absolute; bottom: -2.2rem; right: 2%; }

@media screen and (min-width: 768px), print { .features_frame { margin: 0 0 100px 0; box-sizing: border-box; padding: 47px 0 130px 0; background: url("../images/index_feature_bk.jpg") no-repeat; background-position: center top 110px; background-size: cover; position: relative; overflow: visible; }
  .features_frame h2.top_title { width: 1200px; margin: 0 auto; }
  .features_frame .features_area { width: 1000px; margin: 40px auto 0 auto; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .features_frame .features_area .features_box { position: relative; z-index: 1; margin: 0 0 0 0; width: 450px; }
  .features_frame .features_area .features_box img { width: 400px; display: block; margin: 0 auto; position: relative; z-index: 0; }
  .features_frame .features_area .features_box .features_subtitle { background-color: rgba(255, 255, 255, 0.8); width: 450px; height: 80px; margin: -47px 0 0 0; padding: 0; box-sizing: border-box; position: relative; z-index: 1; font-size: 2.2rem; font-family: 'notoserifjp'; text-align: center; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: column; flex-direction: column; line-height: 130%; }
  .features_frame .features_area .features_box .ftc1 { color: #E15E67; }
  .features_frame .features_area .features_box .ftc2 { color: #F3B31C; }
  .features_frame .features_area .features_box .ftc3 { color: #DEC182; }
  .features_frame .features_area .features_box .features_text { width: 450px; margin: 15px 0 0 0; line-height: 160%; font-family: 'notoserifjp'; font-size: 1.6rem; }
  .features_frame .features_area .box3 { margin: 50px 0 0 0; }
  .features_frame .features_area .box4 { margin: 50px 0 0 0; }
  .features_frame .features_line { display: block; border: none; width: 100%; height: 368px; background-color: rgba(255, 255, 255, 0.5); position: absolute; bottom: 85px; z-index: 0; }
  .features_frame p.subtitle { margin: 0 auto; font-size: 8.6rem; font-family: 'notoserifjp'; color: rgba(225, 94, 103, 0.14); position: absolute; bottom: -60px; right: 0; left: 0; width: 1200px; text-align: right; } }
/*----------------------------------------------------------- 医院概要
----------------------------------------------------------- */
.googlemap { width: 100%; height: 500px; margin: 2rem 0 0 0; }

@media screen and (min-width: 768px), print { .googlemap { width: 100%; height: 500px; margin: 34px 0 0 0; } }
/*----------------------------------------------------------- 医院概要
----------------------------------------------------------- */
.overview { width: 100%; padding: 0 0 2rem 0; margin: 1rem 0 0 0; border-top: #ffffff 18vw solid; background-color: #FFF6F6; overflow: visible; }
.overview .overview_frame { width: 96%; margin: -13vw auto  0 auto; }
.overview .overview_frame h2.overview_title { text-align: center; }
.overview .overview_frame h2.overview_title img { width: 50%; max-width: 155px; display: block; margin: 0 auto; }
.overview .overview_frame .overview_left dl.overview_info { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; margin: 2rem 0 1rem 0; line-height: 140%; width: 100%; font-family: 'notoserifjp'; }
.overview .overview_frame .overview_left dl.overview_info dt { width: 20%; margin: 0 0 1rem 0; padding: 0; font-size: 1.2rem; color: #E15E67; }
.overview .overview_frame .overview_left dl.overview_info dt::before { font-family: "fontello"; content: "\00e802"; margin: 0 2px 0 0; }
.overview .overview_frame .overview_left dl.overview_info dd { width: 75%; margin: 0 0 1rem 0; padding: 0; font-size: 1.2rem; line-height: 140%; box-sizing: border-box; color: #333333; }
.overview .overview_frame .overview_left dl.overview_info dd a { color: #333333; text-decoration: none; }
.overview .overview_frame .overview_left .timetable.-doctor { margin-top: 20px; }
.overview .overview_frame .overview_right { margin: 2rem 0 0 0; }
.overview .overview_frame .overview_right .overview_main_list { border-left: #E15E67 1px solid; padding: 0 0 0 1rem; box-sizing: border-box; }
.overview .overview_frame .overview_right .overview_main_list ul { line-height: 130%; font-size: 1.4rem; list-style-type: disc; margin: 0; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; margin: 0 0 1rem 0; }
.overview .overview_frame .overview_right .overview_main_list ul li { margin: 0 0 1rem 1.8rem; padding: 0; color: #ef8990; font-size: 1.2rem; width: 40%; }
.overview .overview_frame .overview_right .overview_main_list ul li a { color: #ef8990; text-decoration: none; }
.overview .overview_frame .overview_right .overview_main_list ul li a span { display: none; }
.overview .overview_frame .overview_right .overview_main_list ul li ul { display: none; }
.overview .overview_frame .overview_right .overview_main_list ul li.treatment { display: none; }
.overview .overview_frame .overview_right .overview_aside_list { border-left: #E15E67 1px solid; padding: 0 0 0 1rem; box-sizing: border-box; }
.overview .overview_frame .overview_right .overview_aside_list ul { line-height: 130%; font-size: 1.4rem; list-style-type: disc; margin: 0; }
.overview .overview_frame .overview_right .overview_aside_list ul li { margin: 0 0 1rem 1.8rem; padding: 0; color: #ef8990; font-size: 1.2rem; }
.overview .overview_frame .overview_right .overview_aside_list ul li a { color: #ef8990; text-decoration: none; }
.overview .overview_frame .overview_right .overview_aside_list ul li a span { display: none; }
.overview .overview_frame .overview_right .overview_aside_list ul li ul { display: none; }

@media screen and (min-width: 768px), print { .overview { width: 1200px; padding: 0 0 20px; margin: 42px auto 0 auto; border-top: #ffffff 78px solid; background-color: #FFF6F6; overflow: visible; box-sizing: border-box; }
  .overview .overview_frame { width: 1200px; margin: -78px auto  0 auto; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .overview .overview_frame h2.overview_title { text-align: center; width: 100%; }
  .overview .overview_frame h2.overview_title img { width: 155px; max-width: 155px; display: block; margin: 0 auto; }
  .overview .overview_frame .overview_left { width: 460px; margin: 30px 0 0 53px; }
  .overview .overview_frame .overview_left dl.overview_info { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; margin: 0; line-height: 140%; width: 460px; font-family: 'notoserifjp'; }
  .overview .overview_frame .overview_left dl.overview_info dt { width: 115x; margin: 0 0 20px 0; padding: 0; font-size: 1.6rem; color: #E15E67; }
  .overview .overview_frame .overview_left dl.overview_info dt::before { font-family: "fontello"; content: "\00e802"; margin: 0 2px 0 0; }
  .overview .overview_frame .overview_left dl.overview_info dd { width: 345px; margin: 0 0 20px 0; padding: 0; font-size: 1.6rem; line-height: 140%; box-sizing: border-box; color: #333333; }
  .overview .overview_frame .overview_left dl.overview_info dd a { color: #333333; text-decoration: none; }
  .overview .overview_frame .overview_right { margin: 30px 0 0 0; width: 600px; display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .overview .overview_frame .overview_right .overview_main_list { border-left: #E15E67 1px solid; padding: 0 0 0 6px; box-sizing: border-box; width: 150px; height: fit-content; }
  .overview .overview_frame .overview_right .overview_main_list ul { line-height: 130%; font-size: 1.4rem; list-style-type: disc; margin: 0; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; margin: 0 0 0 0; }
  .overview .overview_frame .overview_right .overview_main_list ul li { margin: 0 0 10px 25px; padding: 0; color: #ef8990; font-size: 1.4rem; width: 100%; }
  .overview .overview_frame .overview_right .overview_main_list ul li a { color: #ef8990; text-decoration: none; }
  .overview .overview_frame .overview_right .overview_main_list ul li a span { display: none; }
  .overview .overview_frame .overview_right .overview_main_list ul li a:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  .overview .overview_frame .overview_right .overview_main_list ul li ul { display: none; }
  .overview .overview_frame .overview_right .overview_aside_list { border-left: #E15E67 1px solid; padding: 0 0 0 6px; box-sizing: border-box; width: 450px; height: fit-content; }
  .overview .overview_frame .overview_right .overview_aside_list ul { line-height: 130%; font-size: 1.4rem; list-style-type: disc; margin: 0; }
  .overview .overview_frame .overview_right .overview_aside_list ul li { margin: 0 0 10px 25px; padding: 0; color: #ef8990; font-size: 1.4rem; }
  .overview .overview_frame .overview_right .overview_aside_list ul li a { color: #ef8990; text-decoration: none; /*運用の要望により設定*/ /*リンクが設定されたら外してください*/ }
  .overview .overview_frame .overview_right .overview_aside_list ul li a span { display: none; }
  .overview .overview_frame .overview_right .overview_aside_list ul li a:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  .overview .overview_frame .overview_right .overview_aside_list ul li a.nolink:hover { opacity: 1; transition: all 0 ease 0s; }
  .overview .overview_frame .overview_right .overview_aside_list ul li ul { display: none; } }
/* -----------------------------------------------------------
　フッター
----------------------------------------------------------- */
footer { background-color: #ffffff; }
footer .footer_frame { margin: 2rem auto 0 auto; width: 96%; }
footer .footer_frame ul.footer_list { list-style-type: none; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; width: 100%; margin: 0 0 0 0; }
footer .footer_frame ul.footer_list li { width: 48%; display: block; margin: 0 0 1rem 0; }
footer .footer_frame ul.footer_list li a { color: #333333; font-size: 1rem; display: block; width: 100%; text-align: left; text-decoration: none; line-height: 130%; padding: 0 0 0 0; }
footer .footer_frame ul.footer_list li a::before { font-family: "fontello"; content: "\00e808"; color: #7D6E4D; margin: 0 0.2rem 0 0; }
footer .footer_frame ul.footer_list li.home { display: none; }
footer .footer_frame ul.footer_list li.homecare { display: none; }
footer .footer_frame a.blog_link { width: 50%; height: 12vw; margin: 1rem auto; color: #ffffff; background-color: #7D6E4D; border-radius: 0.4rem; font-size: 1rem; text-decoration: none; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; }
footer .footer_frame a.blog_link i { font-size: 2rem; }
footer .copyright { margin: 0; text-align: center; padding: 1rem 0; color: #ffffff; font-size: 1.2rem; height: auto; letter-spacing: 0.05em; background-color: #C5B89C; }
footer .copyright a { color: #ffffff; text-decoration: none; letter-spacing: 0.1em; }

.footer_link { position: fixed; bottom: 0; width: 100%; display: -webkit-flex; display: flex; -webkit-justify-content: space-around; justify-content: space-around; -webkit-flex-direction: row; flex-direction: row; padding: 0.5rem 0; background-color: #ffffff; z-index: 999999; }
.footer_link a.footer_tel { width: 45%; margin: 0; color: #ffffff; text-align: center; font-size: 1.4rem; font-weight: normal; letter-spacing: 0.1em; display: block; background-color: #ef8990; padding: 1rem 0; text-decoration: none; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; border-radius: 5px; }
.footer_link a.footer_inquiry { width: 38%; margin: 0; color: #ffffff; text-align: center; font-size: 1.4rem; font-weight: normal; letter-spacing: 0.1em; display: block; background-color: #ef8990; padding: 1rem 0; text-decoration: none; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; border-radius: 5px; }
.footer_link a.footer_inquiry i { font-size: 2.2rem; }
.footer_link .smoothScrolls { background-color: #ef8990; width: 12%; text-align: center; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; border-radius: 5px; }
.footer_link .smoothScrolls a { width: 100%; color: #ffffff; padding: 0.8rem 0; font-weight: normal; text-decoration: none; font-size: 2rem; }

@media screen and (min-width: 768px), print { footer { width: 100%; height: 30px; margin: 70px 0 0 0; }
  footer .copyright { margin: 0; text-align: center; padding: 0; color: #ffffff; font-size: 1.6rem; width: 100%; height: 30px; letter-spacing: 0.05em; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-wrap: wrap; flex-wrap: wrap; line-height: 100%; }
  footer .copyright a { color: #ffffff; text-decoration: none; letter-spacing: 0.1em; }
  .footer_link { display: none; } }
/* -----------------------------------------------------------
　ページトップへ
----------------------------------------------------------- */
#pagetop_position { display: none; }

@media screen and (min-width: 768px), print { #pagetop_position { display: block; margin: 0; padding: 0; }
  #linkpagetop a { width: 50px; height: 50px; background-color: #ef8990; border-radius: 50%; color: #ffffff; font-size: 4rem; font-weight: bold; padding: 0 0 5px 0; box-sizing: border-box; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: column; flex-direction: column; }
  #linkpagetop a:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  #pagetop { position: fixed; bottom: 5px; right: 0; z-index: 999999; left: 50%; margin: 0 0 0 550px; } }
@media screen and (min-width: 768px) and (max-width: 1500px) { #pagetop_position { display: block; }
  #pagetop { position: fixed; bottom: 5px; right: 30px; z-index: 999999; } }
/* -----------------------------------------------------------
　フェードイン
----------------------------------------------------------- */
.fadein { opacity: 0; transform: translate(0, 50px); transition: all 1000ms; }

.fadein.scrollin { opacity: 1; transform: translate(0, 0); }

.fadein_right { opacity: 0; transform: translate(0, 50px); transition: all 1000ms; }

.fadein_left { opacity: 0; transform: translate(0, 50px); transition: all 1000ms; }

.fadein_right.scrollin_right { opacity: 1; transform: translate(0, 0); }

.fadein_left.scrollin_left { opacity: 1; transform: translate(0, 0); }

.delay_01 { transition-delay: 0; }

.delay_02 { transition-delay: 0.25s; }

.delay_03 { transition-delay: 0.5s; }

.delay_04 { transition-delay: 0.75s; }

.delay_05 { transition-delay: 1s; }

@media screen and (min-width: 768px), print { .fadein { opacity: 0; transform: translate(0, 50px); transition: all 1000ms; }
  .fadein.scrollin { opacity: 1; transform: translate(0, 0); }
  .fadein_right { opacity: 0; transform: translate(50px, 0); transition: all 1000ms; }
  .fadein_left { opacity: 0; transform: translate(-50px, 0); transition: all 1000ms; }
  .fadein_right.scrollin_right { opacity: 1; transform: translate(0, 0); }
  .fadein_left.scrollin_left { opacity: 1; transform: translate(0, 0); }
  .delay_01 { transition-delay: 0; }
  .delay_02 { transition-delay: 0.5s; }
  .delay_03 { transition-delay: 0; }
  .delay_04 { transition-delay: 0.5s; }
  .delay_05 { transition-delay: 1s; }
  .poyon { animation: poyon 1.1s linear 0s 1; }
  @keyframes poyon { 0% { transform: scale(0.8, 1.4) translate(0%, -100%); }
    10% { transform: scale(0.8, 1.4) translate(0%, -15%); }
    20% { transform: scale(1.4, 0.6) translate(0%, 30%); }
    30% { transform: scale(0.9, 1.1) translate(0%, -10%); }
    40% { transform: scale(0.95, 1.2) translate(0%, -30%); }
    50% { transform: scale(0.95, 1.2) translate(0%, -10%); }
    60% { transform: scale(1.1, 0.9) translate(0%, 5%); }
    70% { transform: scale(1, 1) translate(0%, 0%); }
    100% { transform: scale(1, 1) translate(0%, 0%); } } }
.flag_wrap[data-status="closed"] { display: none; }
.flag_wrap[data-status="open"] { display: block; }

/*----------------------------------------------------------- インポート
----------------------------------------------------------- */
/*ハンバーガー*/
.drawr { display: none; position: absolute; top: 21vw; width: 100%; padding: 0; margin: 0 auto; height: auto; z-index: 999999999999; border-top: #7D6E4D 1px solid; background-color: #ffffff; }
.drawr ul.hbg { list-style-type: none; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; position: relative; z-index: 999999999999; }
.drawr ul.hbg li { width: 50%; border-bottom: #333333 1px solid; }
.drawr ul.hbg li.online { border-bottom: none; }
.drawr ul.hbg li a { color: #333333; font-size: 1.3rem; text-decoration: none; padding: 1rem; box-sizing: border-box; letter-spacing: 0.05em; line-height: 140%; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; box-sizing: border-box; }
.drawr ul.hbg li a span { display: none; }
.drawr ul.hbg li ul { display: none; }
.drawr ul.hbg li ul.open_nav { display: block; }
.drawr ul.hbg li ul li { width: 100%; border-right: none; }
.drawr ul.hbg li ul li a { display: block; background-color: #FFF6F6; color: #333333; }
.drawr ul.hbg li ul li:nth-child(odd) { border-right: none; }
.drawr ul.hbg li ul li:nth-child(odd) { border-right: none; }
.drawr ul.hbg li ul li:first-child { border-top: #333333 1px solid; }
.drawr ul.hbg li:nth-child(odd) { border-right: #333333 1px solid; box-sizing: border-box; }
.drawr ul.hbg li.online { border-bottom: #333333 1px solid; }
.drawr ul.hbg li.blog { width: 100%; border-bottom: none; border-right: none; }
.drawr ul.hbg li.treatment { width: 100%; border-right: none; border-bottom: #333333 1px solid; border-top: #333333 1px solid; }

.openNav { display: block; }

@media screen and (min-width: 768px), print { .main_nav_sp { display: none; } }
.toggle { display: none; }

.toggle-label { cursor: pointer; display: block; width: 14%; height: 12vw; padding: 0 0 4px 0; user-select: none; -webkit-tap-highlight-color: transparent; }

.toggle-label:active { -webkit-tap-highlight-color: transparent; }

.toggle-label { cursor: pointer; width: 100%; }

.toggle-label .toggle-icon, .toggle-label .toggle-icon:before, .toggle-label .toggle-icon:after { position: relative; display: block; top: 50%; left: 50%; height: 3px; width: 42px; background: #ffffff; content: ''; transition: all 500ms ease-in-out; }

.toggle-label .toggle-text { position: relative; display: block; top: calc(100% - 10px); height: 14px; font-size: 12px; color: #ffffff; text-align: center; }

.toggle-label .toggle-text:before { position: absolute; width: 100%; left: 0; content: 'MENU'; transition: all 500ms ease-in-out; visibility: visible; opacity: 1; }

.toggle-label .toggle-text:after { position: absolute; width: 100%; left: 0; content: 'CLOSE'; transition: all 500ms ease-in-out; visibility: hidden; opacity: 0; }

.toggle-label .toggle-icon { transform: translate3d(-50%, -5px, 0); }

.toggle-label .toggle-icon:before { transform: translate3d(-50%, -11.5px, 0); }

.toggle-label .toggle-icon:after { transform: translate3d(-50%, 5px, 0); }

.toggle:checked ~ .toggle-label .toggle-icon { background-color: transparent; }

.toggle:checked ~ .toggle-label .toggle-icon:before, .toggle:checked ~ .toggle-label .toggle-icon:after { top: 0; }

.toggle:checked ~ .toggle-label .toggle-icon:before { transform: translateX(-50%) rotate(45deg); top: 1.5px; }

.toggle:checked ~ .toggle-label .toggle-icon:after { transform: translateX(-50%) translateY(-10px) rotate(-45deg); top: 8.5px; }

.toggle:checked ~ .toggle-label .toggle-text:before { visibility: hidden; opacity: 0; }

.toggle:checked ~ .toggle-label .toggle-text:after { visibility: visible; opacity: 1; }

.container { display: flex; align-items: center; justify-content: center; width: 14%; position: absolute; cursor: pointer; right: 2%; top: 2vw; padding: 0 0 0.6rem 0; background-color: #ef8990; border: #ef8990 1px solid; z-index: 999999999999; }

/*見出し*/
h1 { margin: 0; }

h2.top_title { background: url("../images/h2bg.png") no-repeat; background-position: center center; background-size: 30%; min-height: 26vw; margin: 0 0 0 0; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
h2.top_title span { font-family: 'notoserifjp'; font-size: 2.2rem; color: #7B5F20; margin: 0 0 0 0; padding: 0 0 1rem 0; text-align: center; display: block; width: 100%; border-bottom: #C5B89C 1px solid; }
h2.low { background: url("../images/h2bg.png") no-repeat; background-position: center center; background-size: 30%; min-height: 26vw; margin: 0 0 0 0; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; line-height: 240%; }
h2.low span { font-family: 'notoserifjp'; font-size: 2.2rem; color: #7B5F20; margin: 0 0 0 0; padding: 0 0 1rem 0; text-align: center; display: block; width: 100%; border-bottom: #C5B89C 1px solid; }
h2.first { margin: 4rem 0 2rem 0; }

h3.low { font-size: 1.8rem; font-family: 'notosansjp'; font-weight: normal; color: #E15E67; padding: 0 0.6rem 0.6rem 5.5rem; box-sizing: border-box; margin: 1.5rem 0 1rem 0; overflow: hidden; position: relative; overflow: visible; border-bottom: #FCE8E9 2rem solid; box-sizing: border-box; line-height: 130%; }
h3.low span { display: block; margin: 0 0 -1.5rem 0; }
h3.low img { position: absolute; bottom: -1.5rem; left: 2%; width: 15%; }
h3.first { margin: 1.5rem 0 1rem 0; }

h4 { font-size: 1.7rem; font-family: 'notoserifjp'; font-weight: normal; color: #7B5F20; padding: 4vw 0 0.4rem 3.4rem; box-sizing: border-box; border-bottom: #7D6E4D 1px solid; margin: 1.5rem 0 1rem 0; line-height: 120%; background: url("../images/icon_h4.png"); background-position: left bottom 0.5rem; background-size: 10%; background-repeat: no-repeat; overflow: visible; }
h4.first { margin: 0 0 1rem 0; }

h5 { font-size: 1.6rem; font-family: 'notoserifjp'; font-weight: normal; color: #ef8990; border-bottom: #ef8990 1px dashed; padding: 0 0 0.4rem 0.4rem; box-sizing: border-box; margin: 1.5rem 0 1rem 0; line-height: 120%; }
h5.first { margin: 0 0 1rem 0; }

p { font-size: 1.4rem; margin: 0 0 2rem 0; line-height: 140%; letter-spacing: 0.05em; }
p.large_text { font-size: 1.4rem; }

@media screen and (min-width: 768px), print { h1 { margin: 0; }
  h2.top_title { background: url("../images/h2bg.png") no-repeat; background-position: center center; background-size: 163px; min-height: 140px; margin: 0 0 0 0; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
  h2.top_title span { font-family: 'notoserifjp'; font-size: 3rem; color: #7B5F20; margin: 0 0 0 0; padding: 0 0 16px 0; text-align: center; display: block; width: 100%; border-bottom: #C5B89C 1px solid; }
  h2.low { background: url("../images/h2bg.png") no-repeat; background-position: center center; background-size: 163px; min-height: 140px; margin: 80px 0 30px 0; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; line-height: 240%; }
  h2.low span { font-family: 'notoserifjp'; font-size: 3rem; color: #7B5F20; margin: 0 0 0 0; padding: 0 0 16px 0; text-align: center; display: block; width: 100%; border-bottom: #C5B89C 1px solid; }
  h2.first { margin: 0 0 30px 0; }
  h3.low { font-size: 2.4rem; font-family: 'notosansjp'; font-weight: normal; color: #E15E67; padding: 22px 0 0 88px; box-sizing: border-box; margin: 60px 0 30px 0; overflow: hidden; position: relative; overflow: visible; border-bottom: #FCE8E9 25px solid; box-sizing: border-box; line-height: 100%; }
  h3.low span { display: block; margin: 0 0 -14px 0; }
  h3.low img { position: absolute; bottom: -20px; left: 10px; width: 62px; }
  h3.first { margin: 0 0 1rem 0; }
  h4 { font-size: 2.2rem; font-family: 'notoserifjp'; font-weight: normal; color: #7B5F20; padding: 10px 0 12px 58px; box-sizing: border-box; border-bottom: #7D6E4D 1px solid; margin: 40px 0 20px 0; line-height: 120%; background: url("../images/icon_h4.png"); background-position: left 10px bottom 10px; background-size: 35px; background-repeat: no-repeat; overflow: visible; }
  h4.first { margin: 0 0 20px 0; }
  h5 { font-size: 2rem; font-family: 'notoserifjp'; font-weight: normal; color: #ef8990; border-bottom: #ef8990 1px dashed; padding: 0 0 12px 12px; box-sizing: border-box; margin: 40px 0 20px 0; line-height: 140%; }
  h5.first { margin: 0 0 20px 0; }
  p { font-size: 1.6rem; margin: 0 0 2rem 0; line-height: 160%; letter-spacing: 0.05em; }
  p.large_text { font-size: 1.9rem; } }
/*イメージ*/
/* -----------------------------------------------------------
　イメージ
----------------------------------------------------------- */
.img_right { margin: 0 0 1rem 0; text-align: center; }
.img_right img { width: 70%; height: auto; }

.img_right2 { margin: 0 0 1rem 0; text-align: center; }
.img_right2 img { width: 70%; height: auto; }
.img_right2 figcaption { text-align: center; font-size: 1.4rem; margin: 1rem 0 0 0; }

.img_doctor { margin: 0 0 1rem 0; text-align: center; }
.img_doctor img { width: 70%; height: auto; }

.img_center { margin: 0 0 1rem 0; text-align: center; }
.img_center img { width: 100%; height: auto; }

.img_center2 { margin: 0 0 1rem 0; text-align: center; }
.img_center2 img { width: 70%; height: auto; }
.img_center2 figcaption { text-align: center; font-size: 1.4rem; margin: 1rem 0 0 0; }

/*画像右*/
.img_right_frame { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-flex-direction: column; flex-direction: column; margin: 0 0 1rem 0; }
.img_right_frame div.right { order: 1; width: 100%; text-align: center; }
.img_right_frame div.right img { width: 80%; height: auto; margin: 0 0 1rem 0; }
.img_right_frame div.left { order: 2; width: 100%; }
.img_right_frame div.left .doctor_name { text-align: right; }

/*画像左*/
.img_left_frame { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-flex-direction: column; flex-direction: column; margin: 0 0 1rem 0; }
.img_left_frame div.left { order: 1; width: 100%; text-align: center; }
.img_left_frame div.left img { width: 80%; height: auto; margin: 0 0 1rem 0; }
.img_left_frame div.right { order: 2; width: 100%; line-height: 120%; }

/*二つ*/
.img_two { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-flex-direction: column; flex-direction: column; }
.img_two img { width: 70%; margin: 0 auto 20px auto; display: block; }

.top_doctor_name { font-size: 1.5rem; text-align: right; }
.top_doctor_name span { font-size: 1.8rem; }

.doctor_name2 { text-align: right; }

@media screen and (min-width: 768px), print { .img_right { float: right; margin: 0 0 10px 20px; }
  .img_right img { width: 300px; height: auto; }
  .img_right2 { float: right; margin: 0 0 10px 20px; }
  .img_right2 img { width: 330px; height: auto; }
  .img_right2 figcaption { text-align: center; font-size: 1.6rem; margin: 15px 0 0 0; }
  .img_doctor { float: right; margin: 0 0 10px 20px; }
  .img_doctor img { width: 350px; height: auto; }
  .img_center { float: none; margin: 0 0 10px 0; text-align: center; }
  .img_center img { width: auto; height: auto; }
  .img_center2 { margin: 0 0 10px 0; text-align: center; }
  .img_center2 img { width: auto; height: auto; }
  .img_center2 figcaption { text-align: center; font-size: 1.6rem; margin: 15px 0 0 0; }
  /*画像右*/
  .img_right_frame { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; margin: 0 0 3rem 0; }
  .img_right_frame div.right { order: 2; width: 350px; text-align: center; }
  .img_right_frame div.right img { width: 350px; height: auto; margin: 0; }
  .img_right_frame div.left { order: 1; width: 445px; line-height: 120%; }
  .img_right_frame div.left .doctor_name { text-align: right; }
  /*画像左*/
  .img_left_frame { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; margin: 0 0 0 0; }
  .img_left_frame div.left { order: 1; width: 350px; text-align: left; }
  .img_left_frame div.left img { width: 350px; height: auto; margin: 10px 0; }
  .img_left_frame div.right { order: 2; width: 445px; line-height: 120%; }
  /*二つ*/
  .img_two { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; }
  .img_two img { width: 540px; margin: 0 auto 20px auto; display: block; }
  .top_doctor_name { font-size: 1.8rem; text-align: right; }
  .top_doctor_name span { font-size: 2.2rem; } }
/*リスト*/
/* -----------------------------------------------------------
　リスト
----------------------------------------------------------- */
/*標準*/
ul.list_normal { line-height: 130%; font-size: 1.4rem; list-style-type: disc; margin: 0 0 1rem 0; }
ul.list_normal li { margin: 0 0 1.4rem 1.8rem; padding: 0; }

/*画像●*/
ul.list_maru { padding: 0; margin: 0 0 1rem 0; }
ul.list_maru li { line-height: 130%; font-size: 1.4rem; list-style-type: none; margin: 0 0 10px 0; box-sizing: border-box; background: url(../images/maru.png) no-repeat; background-position: left 0.6rem top 0.8rem; background-size: 8px; padding: 0 0 0 1.8rem; line-height: 140%; }
ul.list_maru li ul { margin: 1rem 0 0 0; }
ul.list_maru li ul li { background: none; list-style-type: none; margin: 0 0 10px 0; padding: 0 0 0 0; }
ul.list_maru li a { color: #ef8990; text-decoration: none; }
ul.list_maru li a.link { font-weight: bold; font-size: 1.8rem; }
ul.list_maru li span { font-weight: bold; font-size: 1.8rem; }

ul.list_maru_three { padding: 0; margin: 0; }
ul.list_maru_three li { line-height: 130%; font-size: 1.4rem; list-style-type: none; margin: 0 0 10px 0; box-sizing: border-box; background: url(../images/maru.png) no-repeat; background-position: left 0.6rem top 0.8rem; background-size: 8px; padding: 0 0 0 1.8rem; line-height: 140%; }
ul.list_maru_three li a { color: #7D6E4D; }
ul.list_maru_three li a { color: #ef8990; text-decoration: none; }
ul.list_maru_three li span { color: #ef8990; }

ul.list_maru_two { padding: 0; margin: 0; }
ul.list_maru_two li { line-height: 130%; font-size: 1.4rem; list-style-type: none; margin: 0 0 10px 0; box-sizing: border-box; background: url(../images/maru.png) no-repeat; background-position: left 0.6rem top 0.8rem; background-size: 8px; padding: 0 0 0 1.8rem; line-height: 140%; }
ul.list_maru_two li a { color: #7D6E4D; }
ul.list_maru_two li a { color: #ef8990; text-decoration: none; }
ul.list_maru_two li span { color: #ef8990; }

/*なし*/
ul.list_none { line-height: 160%; font-size: 1.4rem; list-style-type: none; margin: 0; }
ul.list_none li { margin: 0 0 15px 0; padding: 0 0 0 5px; }
ul.list_none li span { color: #fedc50; margin: 0 0.5rem 0 0; }

/*数値*/
ul.list_num { box-sizing: border-box; width: 100%; }
ul.list_num li { line-height: 130%; font-size: 1.4rem; list-style-type: decimal; margin: 0 0 10px 2rem; box-sizing: border-box; width: 90%; }

/*概要*/
ul.list_overview { box-sizing: border-box; width: 100%; }
ul.list_overview li { line-height: 130%; font-size: 1.4rem; list-style-type: disc; margin: 0 0 10px 25px; box-sizing: border-box; width: 90%; }

/*2列*/
ul.list_normal_two { display: flex; justify-content: space-between; flex-direction: column; }
ul.list_normal_two li { box-sizing: border-box; line-height: 130%; font-size: 1.4rem; list-style-type: disc; margin: 0 0 10px 25px; }

@media screen and (min-width: 768px), print { /*標準*/
  ul.list_normal { line-height: 160%; font-size: 1.6rem; list-style-type: disc; margin: 0; }
  ul.list_normal li { margin: 0 0 1.4rem 25px; padding: 0; }
  ul.list_normal li ul { box-sizing: border-box; width: 100%; }
  ul.list_normal li ul li { line-height: 130%; font-size: 1.6rem; list-style-type: none; margin: 0 0 0.8rem 1.8rem; box-sizing: border-box; width: auto; }
  /*画像●*/
  ul.list_maru { padding: 0; }
  ul.list_maru li { line-height: 160%; font-size: 1.6rem; list-style-type: none; margin: 0 0 15px 0; box-sizing: border-box; background: url(../images/maru.png) no-repeat; background-position: left 5px top 10px; background-size: 8px; padding: 0 0 0 25px; }
  ul.list_maru li ul { margin: 2rem 0 0 0; }
  ul.list_maru li ul li { background: none; list-style-type: none; margin: 0 0 10px 0; padding: 0 0 0 0; line-height: 160%; }
  ul.list_maru li a { color: #ef8990; text-decoration: underline; }
  ul.list_maru li a.link { font-weight: bold; font-size: 2.1rem; }
  ul.list_maru li a.link:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  ul.list_maru li span { font-weight: bold; font-size: 2.1rem; }
  ul.list_maru_two { padding: 0; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  ul.list_maru_two li { width: 45%; line-height: 100%; font-size: 1.6rem; list-style-type: none; margin: 0 0 15px 0; box-sizing: border-box; background: url(../images/maru.png) no-repeat; background-position: left 5px top 10px; background-size: 8px; padding: 0 0 0 25px; line-height: 160%; }
  ul.list_maru_two li a { color: #ef8990; text-decoration: underline; }
  ul.list_maru_two li a:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  ul.list_maru_two li span { color: #ef8990; }
  ul.list_maru_three { padding: 0; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  ul.list_maru_three li { width: 32%; line-height: 100%; font-size: 1.6rem; list-style-type: none; margin: 0 0 15px 0; box-sizing: border-box; background: url(../images/maru.png) no-repeat; background-position: left 5px top 10px; background-size: 8px; padding: 0 0 0 25px; line-height: 160%; }
  ul.list_maru_three li a { color: #ef8990; text-decoration: underline; }
  ul.list_maru_three li a:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  ul.list_maru_three li span { color: #ef8990; }
  /*なし*/
  ul.list_none { line-height: 160%; font-size: 1.6rem; list-style-type: none; }
  ul.list_none li { margin: 0 0 15px 0; }
  ul.list_none li span { color: #fedc50; margin: 0 5px 0 0; }
  /*数値*/
  ul.list_num { box-sizing: border-box; width: 100%; }
  ul.list_num li { line-height: 130%; font-size: 1.6rem; list-style-type: decimal; margin: 0 0 10px 25px; box-sizing: border-box; width: 90%; }
  /*概要*/
  ul.list_overview li { line-height: 130%; font-size: 1.6rem; list-style-type: disc; margin: 0 0 10px 25px; }
  ul.list_normal_two { display: flex; justify-content: space-between; flex-direction: row; flex-wrap: wrap; }
  ul.list_normal_two li { width: 45%; box-sizing: border-box; line-height: 130%; font-size: 1.6rem; list-style-type: disc; margin: 0 0 10px 25px; } }
/*アンカーリンク*/
ul.link_anchor { line-height: 160%; font-size: 1.4rem; list-style-type: none; margin: 0 0 3rem; }
ul.link_anchor li { margin: 0 0 1rem 0; }
ul.link_anchor li:last-of-type { margin: 0; }
ul.link_anchor li a { color: #ef8990; text-decoration: none; }
ul.link_anchor li a::before { display: inline-block; margin-right: 0.3em; font-family: "fontello"; content: "\e809"; }

@media screen and (min-width: 768px), print { ul.link_anchor { font-size: 1.6rem; display: flex; flex-wrap: wrap; justify-content: center; gap: 1.5rem 2rem; }
  ul.link_anchor li { white-space: nowrap; margin: 0; }
  ul.link_anchor li a:hover { opacity: 0.6; transition: all 0.3s ease 0s; } }
/* -----------------------------------------------------------
　定義リスト
----------------------------------------------------------- */
dl.bio_list { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.4rem; box-sizing: border-box; margin: 0 0 2rem 0; line-height: 160%; }
dl.bio_list dt { width: 100%; margin: 0 0 0 0; font-family: 'notoserifjp_bold'; font-weight: bold; }
dl.bio_list dd { width: 100%; margin: 0 0 2rem 0; }

dl.num_list { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.4rem; box-sizing: border-box; margin: 0 0 1rem 0; line-height: 120%; }
dl.num_list dt { width: 6%; margin: 0 0 1rem 0; }
dl.num_list dd { width: 94%; margin: 0 0 1rem 0; }

@media screen and (min-width: 768px), print { dl.bio_list { display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.6rem; box-sizing: border-box; line-height: 160%; width: 1200px; }
  dl.bio_list dt { width: 100px; margin: 0 0 20px 0; font-weight: normal; font-family: 'notoserifjp'; }
  dl.bio_list dd { width: 1100px; margin: 0 0 20px 0; }
  dl.num_list { display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.6rem; box-sizing: border-box; line-height: 160%; width: 600px; margin: 0 0 20px 0; }
  dl.num_list dt { width: 25px; margin: 0 0 10px 0; font-weight: normal; }
  dl.num_list dd { width: 575px; margin: 0 0 10px 0; } }
/*アサイド*/
aside { display: none; }

@media screen and (min-width: 768px), print { aside { display: block; width: 270px; }
  aside p.aside_title { width: 270px; height: 54px; background-color: #FFEAB7; font-size: 2rem; font-weight: normal; color: #ffffff; letter-spacing: 0.2em; margin: 0 0 6px 0; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
  aside ul.aside_list { list-style-type: none; }
  aside ul.aside_list li { margin: 0 0 0 0; width: 270px; }
  aside ul.aside_list li a { width: 270px; height: 50px; margin: 0; padding: 0 0 0 50px; box-sizing: border-box; color: #333333; font-size: 2rem; background: url(../images/aside_arrow.png) no-repeat; background-position: left 18px center; border-bottom: #C2C2C2 1px solid; text-decoration: none; display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-align-items: center; align-items: center; letter-spacing: 0.05em; }
  aside ul.aside_list li a:hover { opacity: 0.6; transition: all 0.3s ease 0s; } }
/*診療時間*/
/* -----------------------------------------------------------
　診療時間
----------------------------------------------------------- */
table.timetable { padding: 0; margin: 0 auto; vertical-align: middle; width: 100%; text-align: center; border-collapse: collapse; box-sizing: border-box; line-height: 140%; border-bottom: #F2A6AB 2px solid; }
table.timetable tr th { box-sizing: border-box; font-weight: normal; font-size: 3.4vw; padding: 0.8rem 0; vertical-align: middle; color: #ffffff; background-color: #F2A6AB; width: 8%; }
table.timetable tr td { box-sizing: border-box; font-weight: normal; font-size: 3.4vw; padding: 0.8rem 0; vertical-align: middle; color: #333333; background-color: #ffffff; border-bottom: #F2A6AB 1px solid; }
table.timetable tr td.time { width: 25%; text-align: center; color: #333333; box-sizing: border-box; }
table.timetable tr td i { color: #333333; }
table.timetable.-doctor { table-layout: auto; border-color: #F3B31C; }
table.timetable.-doctor tr th { background-color: #F3B31C; width: auto; }
table.timetable.-doctor tr th.time { width: 10%; white-space: nowrap; padding: 0 10px; }
table.timetable.-doctor tr td { border-color: #F3B31C; }
table.timetable.-doctor tr td.time { width: 10%; }

p.notice_time { font-size: 3.4vw; margin: 0.6rem 0 0 0; width: 100%; color: #333333; box-sizing: border-box; }

dl.notice_time { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 3.3vw; box-sizing: border-box; margin: 0.6rem 0 0 0; line-height: 160%; color: #333333; }
dl.notice_time dt { width: 8%; margin: 0 0 1rem 0; }
dl.notice_time dd { width: 92%; margin: 0 0 1rem 0; }

.hours table.timetable tr th { font-size: 3.4vw; }
.hours table.timetable tr td { font-size: 3.8vw; }

@media screen and (min-width: 768px), print { table.timetable { padding: 0; margin: 0 auto; vertical-align: middle; width: 100%; text-align: center; border-collapse: collapse; box-sizing: border-box; line-height: 140%; }
  table.timetable tr th { box-sizing: border-box; font-weight: normal; font-size: 1.4rem; padding: 9px 0; vertical-align: middle; color: #ffffff; background-color: #F2A6AB; width: 10%; }
  table.timetable tr td { box-sizing: border-box; font-weight: normal; font-size: 1.4rem; padding: 11px 0; vertical-align: middle; color: #333333; background-color: #ffffff; border-bottom: #F2A6AB 1px solid; }
  table.timetable tr td.time { width: 25%; text-align: center; color: #333333; box-sizing: border-box; font-size: 1.4rem; }
  table.timetable tr td i { color: #333333; }
  table.timetable.-doctor tr th.time { width: 25%; }
  table.timetable.-doctor tr td { min-width: 40px; line-height: 1.3; }
  table.timetable.-doctor tr td.time { width: 25%; }
  p.notice_time { font-size: 1.4rem; margin: 8px 0 0 0; width: 100%; color: #333333; box-sizing: border-box; }
  dl.notice_time { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.4rem; box-sizing: border-box; margin: 8px 0 0 0; padding: 0 0 0 12px; line-height: 150%; color: #333333; width: 100%; }
  dl.notice_time dt { width: 6%; margin: 0 0 0 0; }
  dl.notice_time dd { width: 94%; margin: 0 0 0 0; }
  .hours table.timetable tr th { font-size: 1.9rem; }
  .hours table.timetable tr td { font-size: 1.9rem; }
  .hours dl.notice_time { width: 100%; font-size: 1.6rem; }
  .hours dl.notice_time dt { width: 3%; margin: 0 0 0 0; }
  .hours dl.notice_time dd { width: 97%; margin: 0 0 0 0; } }
/*下層*/
/*矢印*/
.arrow { width: 0; height: 0; border-left: 60px solid transparent; border-right: 60px solid transparent; border-top: 30px solid #F2A6AB; text-align: center; display: block; margin: 30px auto; }

.arrow2 { width: 0; height: 0; border-left: 60px solid transparent; border-right: 60px solid transparent; border-top: 30px solid #7D6E4D; text-align: center; display: block; margin: 30px auto; }

.link_text { color: #ef8990; }

.btn_basic { color: #ffffff; background-color: #ef8990; padding: 1rem 2rem; border-radius: 5px; text-align: center; font-size: 1.4rem; display: block; text-decoration: none; margin: 0 auto; width: fit-content; }

.bnr { max-width: 90%; height: auto; }
.bnr:hover { opacity: 0.6; transition: all 0.3s ease 0s; }

.underline_text { text-decoration: underline; }

.red_text { color: red !important; }

.pink_text { color: #F2A6AB !important; }

.blod_pink { font-weight: bold; color: #ff0000; }

.text_bold { font-weight: bold; }

.text_bold2 { font-weight: bold; font-size: 1.6rem; }

.tar { text-align: right; }

.tac { text-align: center; }

.m0 { margin: 0 auto !important; }

.emphasis { background-color: #FFF6F6; padding: 1rem; box-sizing: border-box; margin: 0 0 2rem 0; }
.emphasis p.last { margin: 0; }

.text_answer { margin: 1rem 0 1rem 0; font-size: 1.8rem; padding: 0 1rem; box-sizing: border-box; line-height: 140%; font-family: 'notosansjp'; font-weight: normal; color: #E15E67; }
.text_answer span { background: linear-gradient(transparent 60%, #FCE8E9 40%); }

@media screen and (min-width: 768px), print { /*矢印*/
  .arrow { width: 0; height: 0; border-left: 60px solid transparent; border-right: 60px solid transparent; border-top: 30px solid #F2A6AB; text-align: center; display: block; margin: 30px auto; }
  .arrow2 { width: 0; height: 0; border-left: 60px solid transparent; border-right: 60px solid transparent; border-top: 30px solid #7D6E4D; text-align: center; display: block; margin: 30px auto; }
  .text_bold { font-weight: bold; }
  .text_bold2 { font-weight: bold; font-size: 2rem; }
  .link_text { color: #ef8990; }
  .link_text:hover { opacity: 0.6; }
  .btn_basic { padding: 2rem 4rem; border-radius: 10px; font-size: 1.6rem; letter-spacing: 0.05rem; transition: 0.2s; }
  .btn_basic:hover { opacity: 0.7; }
  .red_text { color: red; }
  .underline_text { text-decoration: underline; }
  .emphasis { background-color: #FFF6F6; padding: 20px; box-sizing: border-box; margin: 0 0 30px 0; }
  .emphasis p.last { margin: 0; }
  .tar { text-align: right; }
  .text_answer { margin: 1rem 0 1rem 0; font-size: 2.4rem; padding: 0 1rem; box-sizing: border-box; line-height: 140%; font-family: 'notosansjp'; font-weight: normal; color: #E15E67; }
  .text_answer span { background: linear-gradient(transparent 60%, #FCE8E9 40%); }
  .blod_pink { font-weight: bold; color: #ff0000; } }
/* -----------------------------------------------------------
　院長紹介
----------------------------------------------------------- */
.low_greeting_box .doctor_img img { width: 65%; display: block; margin: 0 auto; }
.low_greeting_box .doctor_img .low_greeting_name { background-color: rgba(242, 166, 171, 0.7); width: 96%; margin: 1rem auto 0 auto; color: #6B1A20; padding: 1rem 0; }
.low_greeting_box .doctor_img .low_greeting_name .clinic_name { font-size: 1.2rem; font-family: 'notoserifjp'; text-align: center; margin: 0; }
.low_greeting_box .doctor_img .low_greeting_name .doctor_name { font-size: 2rem; font-family: 'notoserifjp'; text-align: center; margin: 0; }
.low_greeting_box .doctor_img .low_greeting_name .doctor_name span { font-size: 1.2rem; margin: 0 1rem 0 0; }

@media screen and (min-width: 768px), print { .low_greeting_box { width: 1200px; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .low_greeting_box .low_greeting_text { width: 750px; }
  .low_greeting_box .doctor_img { width: 425px; }
  .low_greeting_box .doctor_img img { width: 272px; display: block; margin: 0 auto; }
  .low_greeting_box .doctor_img .low_greeting_name { background-color: rgba(242, 166, 171, 0.7); width: 425px; margin: 10px 0 0 0; color: #6B1A20; padding: 1rem 0; }
  .low_greeting_box .doctor_img .low_greeting_name .clinic_name { font-size: 1.8rem; font-family: 'notoserifjp'; text-align: center; margin: 0; width: 425px; }
  .low_greeting_box .doctor_img .low_greeting_name .doctor_name { font-size: 2.6rem; font-family: 'notoserifjp'; text-align: center; margin: 0 0 0 0; width: 425px; }
  .low_greeting_box .doctor_img .low_greeting_name .doctor_name span { font-size: 1.8rem; margin: 0 10px 0 0; } }
/*----------------------------------------------------------- 診療時間・アクセス
----------------------------------------------------------- */
iframe.accessmap { width: 100%; height: 500px; margin: 0 auto; }

.access_tel { color: #333333; font-size: 1.6rem; }
.access_tel i { color: #333333; font-weight: bold; font-size: 1.6rem; }
.access_tel span { color: #333333; font-weight: bold; font-size: 1.6rem; }
.access_tel a { color: #333333; font-weight: bold; font-size: 1.6rem; }

.access_text a { color: #333333; }
.access_text a:hover { opacity: 0.6; }

.route_box { width: 100%; }
.route_box figure img { width: 100%; }
.route_box table.route_table { padding: 0; margin: 1rem 0 0 0; vertical-align: middle; width: 100%; text-align: center; border-collapse: collapse; box-sizing: border-box; line-height: 140%; font-size: 3.8vw; }
.route_box table.route_table tr { padding: 0px; width: 100%; margin: 0 auto 1rem auto; border-collapse: collapse; box-sizing: border-box; line-height: 140%; }
.route_box table.route_table tr th { background-color: #FFF6F6; vertical-align: middle; text-align: center; width: auto; padding: 0.8rem 0.4rem; border: #333333 1px solid; width: auto; font-weight: normal; color: #333333; box-sizing: border-box; }
.route_box table.route_table tr td { vertical-align: middle; text-align: center; border: #333333 1px solid; padding: 0.8rem; background-color: #ffffff; width: auto; color: #333333; box-sizing: border-box; }
.route_box table.route_table caption { caption-side: bottom; font-size: 3.8vw; margin: 0.6rem 0 0 0; width: 100%; color: #333333; box-sizing: border-box; text-align: left; }

@media screen and (min-width: 768px), print { iframe.accessmap { width: 100%; height: 500px; margin: 0; }
  .access_tel { color: #333333; font-size: 1.9rem; }
  .access_tel i { color: #333333; font-weight: bold; font-size: 1.9rem; }
  .access_tel span { color: #333333; font-weight: bold; font-size: 1.9rem; }
  .access_tel a { color: #333333; font-weight: bold; font-size: 1.9rem; }
  .access_mail { font-size: 1.7rem; }
  .route_box { width: 100%; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .route_box figure { width: 48%; }
  .route_box figure img { width: 100%; }
  .route_box table.route_table { padding: 0; margin: 0 0 0 0; vertical-align: middle; width: 48%; text-align: center; border-collapse: collapse; box-sizing: border-box; line-height: 140%; font-size: 1.8rem; }
  .route_box table.route_table tr { padding: 0px; width: 100%; margin: 0 auto 1rem auto; border-collapse: collapse; box-sizing: border-box; line-height: 140%; font-size: 1.8rem; }
  .route_box table.route_table tr th { background-color: #FFF6F6; vertical-align: middle; text-align: center; width: auto; padding: 14px; border: #333333 1px solid; width: auto; font-weight: normal; color: #333333; box-sizing: border-box; }
  .route_box table.route_table tr td { vertical-align: middle; text-align: center; border: #333333 1px solid; padding: 14px; background-color: #ffffff; width: auto; color: #333333; box-sizing: border-box; }
  .route_box table.route_table caption { caption-side: bottom; font-size: 1.8rem; margin: 12px 0 0 0; width: 100%; color: #333333; box-sizing: border-box; text-align: left; line-height: 100%; height: 30px; } }
/* -----------------------------------------------------------
　初めての方へ
----------------------------------------------------------- */
a.low_bana { display: block; text-decoration: none; width: 70%; margin: 1rem auto; background-color: #7D6E4D; color: #ffffff; font-size: 1.6rem; text-align: center; padding: 1rem 0; }

@media screen and (min-width: 768px), print { a.low_bana { display: block; text-decoration: none; width: 400px; margin: 1rem auto; background-color: #7D6E4D; color: #ffffff; font-size: 2rem; text-align: center; padding: 2rem 0; }
  a.low_bana:hover { opacity: 0.6; } }
/* -----------------------------------------------------------
　クリニック紹介
----------------------------------------------------------- */
.machine_frame { width: 100%; margin: 0; }
.machine_frame .machine_box { margin: 0 0 3rem 0; }
.machine_frame .machine_box .machine_title { font-size: 1.8rem; font-family: 'Kosugimaru'; color: #ffffff; background-color: #F2A6AB; border-radius: 0.5rem; padding: 0.6rem 0.8rem; box-sizing: border-box; margin: 2rem 0 1rem 0; }
.machine_frame .machine_box img { width: 80%; display: block; margin: 0 auto 1rem auto; }
.machine_frame .machine_box .machine_text { text-align: justify; width: 80%; margin: 0 auto; }

.machine_box_back img { width: 80%; display: block; margin: 0 auto 1rem auto; }

.machine_frame2 { width: 96%; margin: 0 auto; border: #7D6E4D 2px solid; border-radius: 0.5rem; }
.machine_frame2 .machine_box { margin: 0 0 3rem 0; padding: 0 1rem; box-sizing: border-box; }
.machine_frame2 .machine_box .machine_title { font-size: 1.7rem; font-family: 'Kosugimaru'; color: #ef8990; background-color: #f2f2f2; border-bottom: #ef8990 1px solid; border-radius: 0.5rem; padding: 0.6rem 0.8rem; box-sizing: border-box; margin: 2rem 0 1rem 0; }
.machine_frame2 .machine_box img { width: 80%; display: block; margin: 0 auto 1rem auto; }
.machine_frame2 .machine_box .machine_text { text-align: justify; width: 80%; margin: 0 auto; }

@media screen and (min-width: 768px), print { .machine_frame { width: 100%; margin: 0; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .machine_frame .machine_box { margin: 0 0 2rem 0; width: 550px; }
  .machine_frame .machine_box .machine_title { font-size: 2.2rem; font-family: 'Kosugimaru'; color: #ffffff; background-color: #F2A6AB; border-radius: 0.5rem; padding: 10px 14px; box-sizing: border-box; margin: 50px 0 1rem 0; }
  .machine_frame .machine_box img { width: 550px; display: block; margin: 0 auto 1rem auto; }
  .machine_frame .machine_box .machine_text { text-align: justify; width: 500px; margin: 0 auto; }
  .machine_frame2 { width: 96%; margin: 0 auto; border: #7D6E4D 2px solid; border-radius: 1rem; display: -webkit-flex; display: flex; -webkit-justify-content: space-around; justify-content: space-around; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .machine_frame2 .machine_box { margin: 0 0 3rem 0; padding: 0 1rem; box-sizing: border-box; width: 450px; }
  .machine_frame2 .machine_box .machine_title { font-size: 1.8rem; font-family: 'Kosugimaru'; color: #ef8990; background-color: #f2f2f2; border-radius: 0.5rem; padding: 10px 14px; box-sizing: border-box; margin: 30px 0 20px 0; text-align: center; }
  .machine_frame2 .machine_box img { width: 400px; display: block; margin: 0 auto 1rem auto; }
  .machine_frame2 .machine_box .machine_text { text-align: justify; width: 80%; margin: 0 auto; }
  .machine_box_back img { width: 400px; display: block; margin: 0 auto 1rem auto; } }
/* -----------------------------------------------------------
　下層
----------------------------------------------------------- */
/*テーブル*/
table.low_table { padding: 0px; width: 100%; margin: 0 auto 1rem auto; border-collapse: collapse; box-sizing: border-box; line-height: 140%; font-size: 1.4rem; }
table.low_table tr th { background-color: #FFF6F6; vertical-align: middle; text-align: center; width: auto; padding: 0.8rem; border: #333333 1px solid; width: 50%; font-weight: normal; color: #333333; }
table.low_table tr td { vertical-align: middle; text-align: left; border: #333333 1px solid; padding: 0.8rem; background-color: #ffffff; width: 50%; color: #333333; }

table.low_table02 { width: 100%; border-collapse: collapse; color: #333333; font-size: 1.4rem; margin: 0 0 2rem 0; line-height: 140%; position: relative; z-index: 0; }
table.low_table02 caption { caption-side: bottom; text-align: left; margin: 0.5rem 0 0 0; }
table.low_table02 tr th { width: 30%; padding: 1rem; border: #CCCCCC 1px solid; background-color: #FCE8E9; box-sizing: border-box; text-align: center; vertical-align: middle; font-weight: normal; }
table.low_table02 tr td { width: auto; padding: 1rem; border: #CCCCCC 1px solid; box-sizing: border-box; text-align: left; vertical-align: middle; }
table.low_table02 tr td ul li { text-align: left; }
table.low_table02 tr td ul.list_mbnone { margin: 0; }
table.low_table02 tr td ul.list_mbnone li { text-align: left; }

table.price_table { vertical-align: middle; width: 100%; border-collapse: collapse; box-sizing: border-box; border: #333333 1px solid; font-size: 1.4rem; }
table.price_table tr { border-bottom: #333333 1px solid; }
table.price_table tr th { width: 70%; padding: 0.6rem; box-sizing: border-box; border-right: #333333 1px solid; text-align: left; font-weight: normal; vertical-align: middle; }
table.price_table tr td { width: 30%; padding: 0.6rem; box-sizing: border-box; text-align: left; vertical-align: middle; text-align: right; }

.two_img_list figure { width: 90%; margin: 0 auto 4rem auto; }
.two_img_list figure img { width: 100%; }

/*スライドテーブル*/
table.low_table_slide { width: 800px; border-collapse: collapse; color: #333333; font-size: 1.4rem; margin: 0 0 2rem 0; line-height: 140%; position: relative; z-index: -1; }
table.low_table_slide caption { caption-side: bottom; text-align: left; margin: 0.5rem 0 0 0; }
table.low_table_slide tr th { width: auto; padding: 1rem; border: #CCCCCC 1px solid; background-color: #FCE8E9; box-sizing: border-box; text-align: center; vertical-align: middle; font-weight: normal; }
table.low_table_slide tr td { width: auto; padding: 1rem; border: #CCCCCC 1px solid; box-sizing: border-box; text-align: center; vertical-align: middle; }
table.low_table_slide tr td ul li { text-align: left; }
table.low_table_slide tr td ul.list_mbnone { margin: 0; }
table.low_table_slide tr td ul.list_mbnone li { text-align: left; }

/*横スライドテーブル用*/
.js-scrollable { margin: 0 0 2rem 0; position: static !important; z-index: 0; }

@media screen and (min-width: 768px), print { /*テーブル*/
  table.low_table { padding: 0px; width: 100%; margin: 0 auto 1rem auto; border-collapse: collapse; box-sizing: border-box; line-height: 140%; font-size: 1.6rem; }
  table.low_table tr th { background-color: #FFF6F6; vertical-align: middle; text-align: center; width: auto; padding: 14px; border: #333333 1px solid; width: 50%; font-weight: normal; color: #333333; }
  table.low_table tr td { vertical-align: middle; text-align: left; border: #333333 1px solid; padding: 14px; background-color: #ffffff; width: 50%; color: #333333; }
  table.low_table02 { width: 100%; border-collapse: collapse; color: #333333; font-size: 1.6rem; margin: 0 0 20px 0; line-height: 160%; position: relative; z-index: 0; }
  table.low_table02 caption { caption-side: bottom; text-align: left; margin: 10px 0 0 0; }
  table.low_table02 tr th { width: auto; padding: 20px; border: #CCCCCC 1px solid; background-color: #FCE8E9; box-sizing: border-box; text-align: center; vertical-align: middle; font-weight: normal; }
  table.low_table02 tr td { width: auto; padding: 20px; border: #CCCCCC 1px solid; box-sizing: border-box; text-align: left; vertical-align: middle; }
  table.low_table02 tr td ul li { text-align: left; }
  table.low_table02 tr td ul.list_mbnone { margin: 0; }
  table.low_table02 tr td ul.list_mbnone li { text-align: left; }
  table.price_table { vertical-align: middle; width: 100%; border-collapse: collapse; box-sizing: border-box; border: #333333 1px solid; font-size: 1.8rem; }
  table.price_table tr { border-bottom: #333333 1px solid; }
  table.price_table tr th { width: 70%; padding: 1rem; box-sizing: border-box; border-right: #333333 1px solid; text-align: left; font-weight: normal; vertical-align: middle; }
  table.price_table tr td { width: 30%; padding: 1rem; box-sizing: border-box; text-align: left; vertical-align: middle; text-align: right; }
  .two_img_list { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  .two_img_list figure { width: 400px; margin: 0 0 60px 0; }
  .two_img_list figure img { width: 100%; }
  /*スライドテーブル*/
  table.low_table_slide { width: 100%; border-collapse: collapse; color: #333333; font-size: 1.6rem; margin: 0 0 20px 0; line-height: 160%; position: relative; z-index: -1; }
  table.low_table_slide caption { caption-side: bottom; text-align: left; margin: 10px 0 0 0; }
  table.low_table_slide tr th { width: auto; padding: 20px; border: #CCCCCC 1px solid; background-color: #FCE8E9; box-sizing: border-box; text-align: center; vertical-align: middle; font-weight: normal; }
  table.low_table_slide tr td { width: auto; padding: 20px; border: #CCCCCC 1px solid; box-sizing: border-box; text-align: center; vertical-align: middle; }
  table.low_table_slide tr td ul li { text-align: left; }
  table.low_table_slide tr td ul.list_mbnone { margin: 0; }
  table.low_table_slide tr td ul.list_mbnone li { text-align: left; }
  /*横スライドテーブル用*/
  .js-scrollable { margin: 0 0 0 0; position: relative; z-index: 0; } }
/* -----------------------------------------------------------
　テーブル
----------------------------------------------------------- */
table.num_table { padding: 0; margin: 0 auto; vertical-align: middle; width: 96%; border-collapse: collapse; box-sizing: border-box; line-height: 140%; background-color: #ffffff; font-size: 1.4rem; }
table.num_table tr th { width: 10%; background-color: #FFF6F6; color: #333333; vertical-align: middle; padding: 0.6rem 0; font-weight: normal; border: #000000 1px solid; box-sizing: border-box; }
table.num_table tr td { width: 90%; padding: 0.6rem; box-sizing: border-box; border: #000000 1px solid; }

@media screen and (min-width: 768px), print { table.num_table { padding: 0; margin: 0 auto 4rem auto; vertical-align: middle; width: 1100px; border-collapse: collapse; box-sizing: border-box; line-height: 140%; background-color: #ffffff; font-size: 1.8rem; }
  table.num_table tr th { width: 80px; background-color: #FFF6F6; color: #333333; vertical-align: middle; padding: 2rem 0; font-weight: normal; border: #000000 1px solid; box-sizing: border-box; }
  table.num_table tr td { width: 1120px; padding: 2rem; box-sizing: border-box; border: #000000 1px solid; } }
/* -----------------------------------------------------------
　オンライン診療
----------------------------------------------------------- */
a.online_btn { background-color: #f2f2f2; color: #000000; font-size: 1.2rem; border: #767171 2px solid; border-radius: 1rem; width: 90%; height: 14w; margin: 0 auto; text-decoration: none; padding: 0.5rem; box-sizing: border-box; text-align: center; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }

.online_bana { text-decoration: none; display: block; }
.online_bana img { width: 100%; }

ul.online_list { list-style-type: none; width: 100%; margin: 2rem 0 0 0; }
ul.online_list li { width: 100%; margin: 0 0 2rem 0; }
ul.online_list li img { width: 100%; }

@media screen and (min-width: 768px), print { a.online_btn { background-color: #f2f2f2; color: #000000; font-size: 2rem; border: #767171 2px solid; border-radius: 1rem; width: 500px; height: 60px; margin: 0; text-decoration: none; padding: 15px; box-sizing: border-box; text-align: center; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
  a.online_btn:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  .online_bana { text-decoration: none; display: block; width: 600px; }
  .online_bana img { width: 600px; }
  .online_bana:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  ul.online_list { list-style-type: none; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; width: 100%; margin: 40px 0 0 0; }
  ul.online_list li { width: auto; margin: 0 0 0 0; }
  ul.online_list li img { width: auto; } }
/* -----------------------------------------------------------
　自費診療
----------------------------------------------------------- */
/*
ul.private_link{   display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction:row; flex-direction:row; -webkit-flex-wrap: wrap; flex-wrap: wrap; margin: 0 0 2rem 0; li{ list-style-type: none; margin: 0 0 1rem 0; width: 48%; a{ font-size: $text_sp; color: $bace_color;     text-decoration: none; i{ color: $color7; } } }
}


@media screen and (min-width: $breakpoint)  , print{
ul.private_link{   display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction:row; flex-direction:row; -webkit-flex-wrap: nowrap; flex-wrap: nowrap; margin: 0 0 40px 0; li{ list-style-type: none; margin: 0 0 0 0; width: 220px; a{ font-size: $text_pc; color: $bace_color;     text-decoration: none; i{ color: $color7; } &:hover{ opacity: 0.6; transition: all 0.3s ease 0s; } } }
} 
}
*/

/*# sourceMappingURL=style.css.map */
