@charset "UTF-8";
/* Scss Document */
/* =======================================================================
 共通項目 
======================================================================= */
/*関数*/
/* ----------------------------------------------------------- 関数
----------------------------------------------------------- */
/*サイトの横幅*/
/*media screen*/
/*文字SP*/
/*文字PC*/
/*基本フォント*/
/*
$bace_font:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "メイリオ", Meiryo, Arial, sans-serif;  
*/
/*游明朝*/
/*基本文字色*/
/*基本背景色PC*/
/*白*/
/*水色*/
/*水色2*/
/*水色3*/
/*緑*/
/*黄色*/
/*赤*/
/*水色*/
/*青*/
/*水色*/
/*水色*/
/*水色*/
/*水色*/
/*赤*/
/*緑*/
/*紺色1*/
/*茶色4*/
/*紺色2*/
/*紺色3*/
/*薄紫*/
/*金*/
/*紫*/
/*茶色*/
/*黒(下層キービジュアル)*/
/*茶色*/
/*水色*/
/* ----------------------------------------------------------- 特殊フォント読込
----------------------------------------------------------- */
@font-face { font-family: 'kosugimaru'; src: url(../font/KosugiMaru-Regular.ttf); font-weight: normal; font-style: normal; }
@font-face { font-family: 'notosans'; src: url(../font/NotoSansJP-Regular.otf); font-weight: normal; font-style: normal; }
@font-face { font-family: 'notosans_bold'; src: url(../font/NotoSansJP-Bold.otf); font-weight: bold; font-style: normal; }
/* ----------------------------------------------------------- フォントサイズ基本
----------------------------------------------------------- */
html { font-size: calc( 100vw / 32 ); overflow-y: auto; font-family: "kosugimaru", Arial, sans-serif; color: #000000; background-color: #ffffff; padding: 0 0 17vw 0; }

@media screen and (min-width: 768px), print { html { font-size: 62.5%; overflow-y: scroll; font-family: "kosugimaru", Arial, sans-serif; color: #000000; 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; }

@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 auto 0 auto; padding: 0; background-color: #ffffff; }

.wrapper { height: auto; width: 100%; margin: 2rem 0 0 0; padding: 0; }

.wrapper_low { 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: 4rem auto 0 auto; padding: 0; }

@media screen and (min-width: 768px), print { article { height: auto; width: 100%; margin: 0 auto 0 auto; padding: 0; background-color: #ffffff; }
  .wrapper { height: auto; width: 100%; margin: 55px 0 0 0; padding: 0; }
  .wrapper_low { 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: 1300px; margin: 100px auto 160px auto; padding: 0; } }
/* -----------------------------------------------------------
　ヘッダ
----------------------------------------------------------- */
header.top { background: url("../images/key_visual_bg.jpg"); background-size: cover; background-repeat: no-repeat; background-position: center top; height: 60vw; padding: 0; box-sizing: border-box; position: relative; overflow: hidden; z-index: 0; }
header.top a.logo { position: absolute; top: 0.4rem; left: 0; right: 0; margin: 0 auto; width: 50%; display: block; }
header.top a.logo img { width: 100%; display: block; margin: 0; }
header.top .key_front { position: absolute; bottom: 0; left: 0; right: 0; margin: 0 0 0 -74%; width: 250%; display: block; z-index: 4; }
header.top .key_ferris_wheel { position: absolute; top: 22vw; left: 0; right: 0; margin: 0 auto; width: 25%; display: block; z-index: 2; }
header.top .key_ferris_wheel2 { position: absolute; top: 33vw; left: 0; right: 0; margin: 0 auto; width: 8%; display: block; z-index: 3; }
header.top .key_bird { position: absolute; top: 30vw; right: 2%; width: 5%; display: block; }
header.top .key_car { position: absolute; bottom: 5vw; left: 0; width: 5%; display: block; z-index: 5; }
header.top .key_human { position: absolute; bottom: 2vw; left: 0; width: 180%; display: block; z-index: 6; }

/*観覧車*/
.rotation { animation: 80s linear infinite rotation1; }

@keyframes rotation1 { 0% { transform: rotate(0); }
  100% { transform: rotate(360deg); } }
/*車*/
.move_car { animation: moveimg_car 45s infinite; animation-timing-function: linear; }

@keyframes moveimg_car { 0% { left: -80px; }
  100% { left: 1300px; } }
/*鳥*/
.move_bird { animation: moveimg_bird 25s infinite; animation-timing-function: linear; }

@keyframes moveimg_bird { 0% { transform: translate(0px, 0px); }
  100% { transform: translate(-800px, -400px); } }
header.low { background: url("../images/key_visual_low.jpg"); background-size: 150%; background-repeat: no-repeat; background-position: center top; height: 14vw; padding: 0; box-sizing: border-box; position: relative; overflow: hidden; z-index: 0; }
header.low a.logo { position: absolute; top: 0.4rem; left: 0; right: 0; margin: 0 auto; width: 50%; display: block; z-index: 2; }
header.low a.logo img { width: 100%; display: block; margin: 0; }
header.low .key_bird_low { position: absolute; top: 15vw; right: 2%; width: 5%; display: block; z-index: 1; }

/*鳥*/
.move_bird_low { animation: moveimg_bird 25s infinite; animation-timing-function: linear; }

.key_visual_low { background-color: #46b9da; border-top: #90d8ec 10px solid; border-bottom: #90d8ec 10px solid; text-align: center; height: 26vw; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; margin: 2rem 0 0 0; box-sizing: border-box; }
.key_visual_low h1 { color: #ffffff; font-size: 2.2rem; font-family: 'kosugimaru'; font-weight: normal; letter-spacing: 0.1em; }

@media screen and (min-width: 768px), print { header.top { background: url("../images/key_visual_bg.jpg"); background-size: cover; background-repeat: no-repeat; background-position: center top; height: 510px; padding: 0 0 0 0; box-sizing: border-box; position: relative; overflow: hidden; z-index: 0; }
  header.top a.logo { position: absolute; top: 70px; left: 0; right: 0; margin: 0 auto; width: 309px; display: block; }
  header.top a.logo img { width: 309px; display: block; margin: 0; }
  header.top .key_front { position: absolute; bottom: 0; left: 0; right: 0; margin: 0 0 0 0; width: 100%; display: block; z-index: 4; }
  header.top .key_ferris_wheel { position: absolute; top: 178px; left: 0; right: 0; margin: 0 auto; width: 220px; display: block; }
  header.top .key_ferris_wheel2 { position: absolute; top: 282px; left: 0; right: 0; margin: 0 auto; width: 52px; display: block; z-index: 3; }
  header.top .key_bird { position: absolute; top: 134px; right: 180px; width: 43px; display: block; }
  header.top .key_car { position: absolute; bottom: 40px; left: 0; width: 41px; display: block; z-index: 5; }
  header.top .key_human { position: absolute; bottom: 10px; right: 0; left: 0; width: 1805px; margin: 0 auto; display: block; z-index: 6; }
  /*観覧車*/
  .rotation { animation: 80s linear infinite rotation1; }
  @keyframes rotation1 { 0% { transform: rotate(0); }
    100% { transform: rotate(360deg); } }
  /*車*/
  .move_car { animation: moveimg_car 45s infinite; animation-timing-function: linear; }
  @keyframes moveimg_car { 0% { left: -80px; }
    100% { left: 2200px; } }
  /*鳥*/
  .move_bird { animation: moveimg_bird 25s infinite; animation-timing-function: linear; }
  @keyframes moveimg_bird { 0% { transform: translate(0px, 0px); }
    100% { transform: translate(-700px, -200px); } }
  header.low { background: url("../images/key_visual_low.jpg"); background-size: cover; background-repeat: no-repeat; background-position: center top; height: 280px; padding: 0; box-sizing: border-box; position: relative; overflow: hidden; z-index: 0; }
  header.low a.logo { position: absolute; top: 69px; left: 0; right: 0; margin: 0 auto; width: 309px; display: block; z-index: 2; }
  header.low a.logo img { width: 309px; display: block; margin: 0; }
  header.low .key_bird_low { position: absolute; top: 136px; right: 180px; width: 43px; display: block; }
  /*鳥*/
  .move_bird_low { animation: moveimg_bird 25s infinite; animation-timing-function: linear; }
  .key_visual_low { background-color: #46b9da; border-top: #90d8ec 10px solid; border-bottom: #90d8ec 10px solid; text-align: center; height: 104px; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; margin: 0 0 0 0; box-sizing: border-box; }
  .key_visual_low h1 { color: #ffffff; font-size: 4.2rem; font-family: 'kosugimaru'; font-weight: normal; letter-spacing: 0.1em; } }
/* -----------------------------------------------------------
　メインメニュー
----------------------------------------------------------- */
.main_menu { width: 96%; margin: 0 auto; }
.main_menu ul.main_menu_list { 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; list-style-type: none; }
.main_menu ul.main_menu_list li { width: 48%; margin: 0 0 2rem 0; }
.main_menu ul.main_menu_list li a { width: 100%; height: 40vw; 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: column; flex-direction: column; }
.main_menu ul.main_menu_list li a .main_menu_icon { background: url("../images/btn_bg.png") no-repeat; background-size: contain; background-position: center center; width: 100%; height: 30vw; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
.main_menu ul.main_menu_list li a .main_menu_icon img { width: 50%; max-width: 115px; }
.main_menu ul.main_menu_list li a .main_menu_text { color: #00b1bc; font-family: 'kosugimaru'; font-size: 1.4rem; text-align: center; margin: 1rem 0 0 0; }

.main_nav_low nav ul.main_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; width: 96%; margin: 1rem auto 0 auto; }
.main_nav_low nav ul.main_nav li { width: 48%; height: 11.5vw; margin: 0 0 0.2rem 0; }
.main_nav_low nav ul.main_nav li a { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; width: 100%; height: 11.5vw; background: url("../images/a_btn_bg.png"); background-position: center center; background-size: cover; text-decoration: none; color: #00b1bc; font-size: 1.3rem; font-family: 'kosugimaru'; letter-spacing: 0.1em; }

@media screen and (min-width: 768px), print { .main_menu { width: 1300px; margin: 0 auto; }
  .main_menu ul.main_menu_list { 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; list-style-type: none; }
  .main_menu ul.main_menu_list li { width: 230px; margin: 0 0 65px 0; }
  .main_menu ul.main_menu_list li a { width: 168px; height: 230px; 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: column; flex-direction: column; margin: 0 auto; }
  .main_menu ul.main_menu_list li a .main_menu_icon { background: url("../images/btn_bg.png") no-repeat; background-size: contain; background-position: center center; width: 168px; height: 169px; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
  .main_menu ul.main_menu_list li a .main_menu_icon img { width: 115px; max-width: 115px; }
  .main_menu ul.main_menu_list li a .main_menu_text { color: #00b1bc; font-family: 'kosugimaru'; font-size: 2rem; text-align: center; margin: 34px 0 0 0; }
  .main_menu ul.main_menu_list li a:hover .main_menu_icon { transition: all 0.3s ease 0s; transform: scale(1.2); }
  .main_menu ul.main_menu_list li.about { margin: 0 0 0 95px; }
  .main_menu ul.main_menu_list li.access { margin: 0 95px 0 0; }
  .main_menu ul.main_menu_list li.nonelink a { pointer-events: none; }
  .main_menu ul.main_menu_list li.nonelink a:hover .main_menu_icon { transition: all 0.3s ease 0s; transform: scale(1); }
  .main_nav_low { height: 212px; margin: 30px 0 0 0; }
  .main_nav_low nav ul.main_nav { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; flex-wrap: wrap; width: 1300px; margin: 1rem auto 0 auto; }
  .main_nav_low nav ul.main_nav li { width: 236px; height: 60px; margin: 0 0 16px 0; }
  .main_nav_low nav ul.main_nav li a { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; width: 236px; height: 60px; background: url("../images/a_btn_bg.png"); background-position: center center; background-size: cover; text-decoration: none; color: #00b1bc; font-size: 2rem; font-family: 'kosugimaru'; letter-spacing: 0.1em; }
  .main_nav_low nav ul.main_nav li a:hover { transition: all 0.3s ease 0s; transform: scale(1.05); }
  .main_nav_low nav ul.main_nav li.right { margin: 0 0 16px 0; }
  .main_nav_low nav ul.main_nav li.nonelink a { pointer-events: none; }
  .main_nav_low nav ul.main_nav li.nonelink a:hover .main_menu_icon { transition: all 0.3s ease 0s; transform: scale(1); } }
/*----------------------------------------------------------- 電車01
----------------------------------------------------------- */
.move_train_01 { position: relative; height: 36px; box-sizing: border-box; overflow-x: hidden; overflow-y: visible; background: linear-gradient(transparent 90%, #81cde3 10%); /*電車*/ }
.move_train_01 .index_train_01 { position: absolute; bottom: 0; right: 0; }
.move_train_01 .move_train_01 { animation: moveimg_train_01 30s infinite; animation-timing-function: linear; }
@keyframes moveimg_train_01 { 0% { right: -251px; }
  100% { right: 600px; } }
@media screen and (min-width: 768px), print { .move_train_01 { position: relative; height: 36px; box-sizing: border-box; overflow-x: hidden; overflow-y: visible; background: linear-gradient(transparent 90%, #81cde3 10%); /*電車*/ }
  .move_train_01 .index_train_01 { position: absolute; bottom: 0; right: 0; }
  .move_train_01 .move_train_01 { animation: moveimg_train_01 60s infinite; animation-timing-function: linear; }
  @keyframes moveimg_train_01 { 0% { right: -251px; }
    100% { right: 2200px; } } }
/* -----------------------------------------------------------
　お知らせ
----------------------------------------------------------- */
.notice_frame { background-color: #81cde3; padding: 2rem 0; box-sizing: border-box; margin: 0; }
.notice_frame .notice_area { width: 96%; margin: 0 auto; background-color: #ffffff; border-radius: 0.4rem; padding: 2rem 0; box-sizing: border-box; }
.notice_frame .notice_area dl { min-height: 80vw; height: auto; margin: 0 auto; width: 96%; font-family: 'notosans'; }
.notice_frame .notice_area dl dt { color: #00b1bc; margin: 2rem 0 0.4rem 0; padding: 1rem 0.4rem 0 2rem; font-size: 1.5rem; box-sizing: border-box; font-weight: bold; font-family: "kosugimaru", Arial, sans-serif; letter-spacing: 0.1em; line-height: 160%; position: relative; }
.notice_frame .notice_area dl dt:first-child { margin: 0; }
.notice_frame .notice_area dl dt::after { position: absolute; display: block; width: 0; height: 0; font-family: "fontello"; content: "\00e832"; margin: auto; right: 2rem; top: 3.3rem; transition: 0.5s; }
.notice_frame .notice_area dl dt.open::after { font-family: "fontello"; content: "\00e833"; }
.notice_frame .notice_area dl dt.close::after { transform: rotateX(180deg); transition: 0.5s; top: 5.6rem; }
.notice_frame .notice_area dl dt p { font-family: 'notosans'; }
.notice_frame .notice_area dl dt p.cate { display: inline; color: #ffffff; padding: 0 0.6rem; box-sizing: border-box; border-radius: 0.2rem; }
.notice_frame .notice_area dl dt p.cate.cat001 { background-color: #46b9da; }
.notice_frame .notice_area dl dt p.cate.cat002 { background-color: #46da9a; }
.notice_frame .notice_area dl dt p.cate.cat003 { background-color: #dcc71a; }
.notice_frame .notice_area dl dt p.notice_title { width: 90%; margin: 0 0 0.4rem 0; }
.notice_frame .notice_area dl dt p.notice_title span.new { color: #e13737; }
.notice_frame .notice_area dl dt p.notice_title span.date { font-size: 1rem; }
.notice_frame .notice_area dl dd { margin: 0 0 0 0; padding: 0 0 0 2rem; color: #000000; font-size: 1.4rem; line-height: 160%; display: none; width: 90%; }
.notice_frame .notice_area dl dd p { font-family: 'notosans'; }
.notice_frame .notice_area dl dd.open { display: block; }

@media screen and (min-width: 768px), print { .notice_frame { background-color: #81cde3; padding: 100px 0 70px 0; box-sizing: border-box; }
  .notice_frame .notice_area { width: 1300px; margin: 0 auto; background-color: #ffffff; border-radius: 0.4rem; padding: 50px 0; box-sizing: border-box; }
  .notice_frame .notice_area dl { min-height: 318px; height: auto; margin: 0 auto; width: 1200px; font-family: 'notosans'; }
  .notice_frame .notice_area dl dt { color: #00b1bc; margin: 22px 0 0 0; padding: 0 0 0 0; font-size: 1.8rem; box-sizing: border-box; font-weight: bold; font-family: "kosugimaru", Arial, sans-serif; letter-spacing: 0.1em; line-height: 160%; position: relative; width: 1200px; 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; }
  .notice_frame .notice_area dl dt:first-child { margin: 0; }
  .notice_frame .notice_area dl dt::after { position: static; display: inline; width: 10px; height: 0; font-family: "fontello"; content: "\00e832"; margin: 0 0 0 10px; right: 0; top: 0; transition: 0.5s; }
  .notice_frame .notice_area dl dt.open::after { font-family: "fontello"; content: "\00e833"; }
  .notice_frame .notice_area dl dt.close::after { transform: rotateX(180deg); transition: 0.5s; margin: 25px 0 0 10px; }
  .notice_frame .notice_area dl dt p { font-family: 'notosans'; }
  .notice_frame .notice_area dl dt p.cate { display: inline; color: #ffffff; padding: 0; box-sizing: border-box; border-radius: 0.2rem; width: 128px; height: 28px; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; font-size: 1.6rem; line-height: 100%; margin: 0; }
  .notice_frame .notice_area dl dt p.cate.cat001 { background-color: #46b9da; }
  .notice_frame .notice_area dl dt p.cate.cat002 { background-color: #46da9a; }
  .notice_frame .notice_area dl dt p.cate.cat003 { background-color: #dcc71a; }
  .notice_frame .notice_area dl dt p.notice_title { width: auto; margin: 0 0 0 20px; }
  .notice_frame .notice_area dl dt p.notice_title span.new { color: #e13737; }
  .notice_frame .notice_area dl dt p.notice_title span.date { font-size: 1.2rem; }
  .notice_frame .notice_area dl dd { margin: 0 0 0 148px; padding: 0 0 0 0; color: #000000; font-size: 1.6rem; line-height: 160%; display: none; }
  .notice_frame .notice_area dl dd p { font-family: 'notosans'; }
  .notice_frame .notice_area dl dd.open { display: block; } }
/*----------------------------------------------------------- 電車02
----------------------------------------------------------- */
.move_train_02 { position: relative; height: 36px; box-sizing: border-box; overflow-x: hidden; overflow-y: visible; background: linear-gradient(#81cde3 80%, transparent 20%); /*電車*/ }
.move_train_02 .index_train_02 { position: absolute; bottom: 0; right: 0; }
.move_train_02 .move_train_02 { animation: moveimg_train_02 20s infinite; animation-timing-function: linear; }
@keyframes moveimg_train_02 { 0% { right: -495px; }
  100% { right: 600px; } }
@media screen and (min-width: 768px), print { .move_train_02 { position: relative; height: 36px; box-sizing: border-box; overflow-x: hidden; overflow-y: visible; background: linear-gradient(#81cde3 80%, transparent 20%); /*電車*/ }
  .move_train_02 .index_train_02 { position: absolute; bottom: 0; right: 0; }
  .move_train_02 .move_train_02 { animation: moveimg_train_02 30s infinite; animation-timing-function: linear; }
  @keyframes moveimg_train_02 { 0% { right: -395px; }
    100% { right: 2200px; } } }
/*----------------------------------------------------------- LINE
----------------------------------------------------------- */
.line_bana { padding: 2rem 0; box-sizing: border-box; text-align: center; }
.line_bana img { width: 96%; }

@media screen and (min-width: 768px), print { .line_bana { padding: 94px 0; box-sizing: border-box; text-align: center; }
  .line_bana img { width: 800px; } }
/*----------------------------------------------------------- 当薬局の４つの特徴
----------------------------------------------------------- */
.features_frame { margin: 0 0 2rem 0; }
.features_frame .features_box figure { width: 96%; margin: 0 auto 4rem auto; }
.features_frame .features_box figure figcaption { width: 100%; height: 20vw; background: url("../images/index_features_01.png") no-repeat; background-position: center center; background-size: contain; color: #ffffff; font-size: 1.6rem; font-family: 'kosugimaru'; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; padding: 0 0 4vw 0; box-sizing: border-box; }
.features_frame .features_box figure img { width: 40%; max-width: 196px; display: block; margin: 2rem auto; }
.features_frame .features_box figure p { width: 70%; margin: 0 auto; text-align: center; }
.features_frame .features_box figure p br { display: none; }

@media screen and (min-width: 768px), print { .features_frame { margin: 0 0 36px 0; }
  .features_frame .features_box { 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; width: 1300px; margin: 0 auto; }
  .features_frame .features_box figure { width: 280px; margin: 0 0 4rem 0; }
  .features_frame .features_box figure figcaption { width: 280px; height: 88px; background: url("../images/index_features_01.png") no-repeat; background-position: center center; background-size: contain; color: #ffffff; font-size: 2rem; font-family: 'kosugimaru'; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; padding: 0 0 10px 0; box-sizing: border-box; }
  .features_frame .features_box figure img { width: 196px; max-width: 196px; display: block; margin: 30px auto; }
  .features_frame .features_box figure p { width: 280px; margin: 0 auto; text-align: center; }
  .features_frame .features_box figure p br { display: block; } }
/*----------------------------------------------------------- 医院概要
----------------------------------------------------------- */
.overview { padding: 2rem 0; box-sizing: border-box; background-color: #e5f8f8; }
.overview h2.overview_title img { width: 50%; max-width: 309px; display: block; margin: 0 auto 1rem auto; }
.overview .overview_address { text-align: center; font-size: 1.4rem; }
.overview .overview_address span { display: block; }
.overview .overview_frame { width: 96%; margin: 0 auto; }
.overview .overview_frame .overview_left ul { list-style-type: none; }
.overview .overview_frame .overview_left ul li { font-size: 1.4rem; color: #000000; margin: 0 0 1rem 0; line-height: 140%; }
.overview .overview_frame .overview_left ul li span.blue { color: #00b1bc; display: block; }
.overview .overview_frame .overview_left ul li span.tel { display: inline; }
.overview .overview_frame .overview_left ul li span.tel a { color: #000000; text-decoration: none; }
.overview .overview_frame .overview_right { margin: 2rem 0 0 0; }
.overview .overview_frame .overview_right iframe.googlemap { width: 100%; height: 500px; border: #ffffff 4px solid; box-sizing: border-box; border-radius: 0.4rem; }
.overview .overview_frame .overview_right img { width: 100%; }
.overview .overview_frame .overview_right a { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; color: #00b1bc; text-decoration: none; font-size: 1.4rem; width: 60%; height: 13vw; background: url("../images/a_btn_bg.png") no-repeat; margin: 2rem auto 0 auto; background-size: cover; }

@media screen and (min-width: 768px), print { .overview { padding: 100px 0 0 0; box-sizing: border-box; background-color: #e5f8f8; height: 843px; }
  .overview h2.overview_title img { width: 309px; max-width: 309px; display: block; margin: 0 auto 15px auto; }
  .overview .overview_address { text-align: center; font-size: 1.6rem; }
  .overview .overview_address span { display: inline; margin: 0 0 0 1rem; }
  .overview .overview_frame { width: 1300px; margin: 41px 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: nowrap; flex-wrap: nowrap; }
  .overview .overview_frame .overview_left { width: 530px; margin: 0; }
  .overview .overview_frame .overview_left ul { list-style-type: none; }
  .overview .overview_frame .overview_left ul li { font-size: 1.6rem; color: #000000; margin: 0 0 17px 0; line-height: 120%; }
  .overview .overview_frame .overview_left ul li span.blue { color: #00b1bc; display: inline; }
  .overview .overview_frame .overview_left ul li span.tel { display: inline; margin: 0 30px 0 0; }
  .overview .overview_frame .overview_left ul li span.tel a { color: #000000; text-decoration: none; display: inline; margin: 0 30px 0 0; }
  .overview .overview_frame .overview_left table.timetable { margin: 50px 0 0 0; }
  .overview .overview_frame .overview_right { width: 586px; margin: 0; }
  .overview .overview_frame .overview_right iframe.googlemap { width: 100%; height: 400px; border: #ffffff 4px solid; box-sizing: border-box; border-radius: 0.4rem; }
  .overview .overview_frame .overview_right img { width: 586px; }
  .overview .overview_frame .overview_right a { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; color: #00b1bc; text-decoration: none; font-size: 1.8rem; width: 236px; height: 60px; background: url("../images/a_btn_bg.png") no-repeat; margin: 20px auto 0 auto; background-size: cover; }
  .overview .overview_frame .overview_right a:hover { opacity: 0.6; transition: all 0.3s ease 0s; } }
/* -----------------------------------------------------------
　フッター
----------------------------------------------------------- */
footer { background-color: #ffffff; }
footer .footer_frame { display: none; }
footer .copyright { margin: 0; text-align: center; padding: 1rem 0; color: #000000; font-size: 1.2rem; height: auto; letter-spacing: 0.05em; }
footer .copyright a { color: #000000; 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: 1rem 0; background-color: rgba(255, 255, 255, 0.8); z-index: 999999; }
.footer_link a.footer_tel { width: 24%; margin: 0; color: #ffffff; text-align: center; font-size: 1.4rem; font-weight: normal; letter-spacing: 0.1em; display: block; background-color: #46b9da; 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_line { width: 54%; margin: 0; color: #ffffff; text-align: center; font-size: 1.4rem; font-weight: normal; letter-spacing: 0.1em; display: block; background-color: #46b9da; 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 .smoothScrolls { background-color: #46b9da; width: 15%; 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: 1.6rem; }

@media screen and (min-width: 768px), print { footer { width: 100%; height: 146px; padding: 0; box-sizing: border-box; padding: 0; margin: 0; overflow: hidden; }
  footer .footer_frame { display: block; width: 1300px; height: auto; margin: 0 auto 0 auto; padding: 28px 0 0 0; box-sizing: border-box; position: relative; height: auto; }
  footer .footer_frame ul.footer_list_main { list-style-type: none; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-flex-direction: row; flex-direction: row; width: 100%; margin: 0; }
  footer .footer_frame ul.footer_list_main li { margin: 0 8px 12px 0; }
  footer .footer_frame ul.footer_list_main li a { color: #000000; font-size: 1.6rem; text-decoration: none; font-weight: normal; position: relative; }
  footer .footer_frame ul.footer_list_main li a::after { position: absolute; bottom: -4px; left: 0; content: ''; width: 100%; height: 1px; transform: scale(0, 1); transform-origin: center top; transition: transform .3s; background: #000000; }
  footer .footer_frame ul.footer_list_main li a:hover::after { transform: scale(1, 1); }
  footer .footer_frame ul.footer_list_main li::after { content: "|"; font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif; margin: 0 0 12px 8px; color: #000000; font-size: 1.6rem; font-weight: normal; }
  footer .footer_frame ul.footer_list_main li:last-child::after { content: ""; }
  footer .footer_frame ul.footer_list_main li.treatment { display: none; }
  footer .footer_frame ul.footer_list_main li.nonelink a { pointer-events: none; }
  footer .copyright { width: 100%; margin: 14px auto 0 auto; text-align: left; padding: 0; color: #000000; font-size: 1.2rem; height: auto; letter-spacing: 0.05em; height: auto; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; }
  footer .copyright a { color: #000000; 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 img { width: 68px; height: auto; display: block; }
  #pagetop { position: fixed; bottom: 111px; right: 0; z-index: 999999; left: 50%; margin: 0 0 0 662px; } }
@media screen and (min-width: 768px) and (max-width: 1500px) { #pagetop_position { display: block; }
  #pagetop { position: fixed; bottom: 30px; left: 90%; margin: 0 0 0 0; text-align: center; } }
/*----------------------------------------------------------- インポート
----------------------------------------------------------- */
/*見出し*/
h1 { margin: 0; }

h2.notice_title { color: #ffffff; font-size: 2.4rem; font-family: 'kosugimaru'; font-weight: normal; text-align: center; margin: 0 0 2rem 0; }
h2.notice_title::after { content: url("../images/notice_line.png"); display: block; text-align: center; margin: 0 0 0 0; line-height: 30%; }
h2.features_title { color: #81cde3; font-size: 2.4rem; font-family: 'kosugimaru'; font-weight: normal; text-align: center; margin: 0 0 2rem 0; }
h2.features_title::after { content: url("../images/features_line.png"); display: block; text-align: center; margin: 0 0 0 0; line-height: 30%; }
h2.low { color: #81cde3; font-size: 2.4rem; font-family: 'kosugimaru'; font-weight: normal; text-align: center; margin: 0 0 2rem 0; }
h2.low::after { content: url("../images/features_line.png"); display: block; text-align: center; margin: 0 0 0 0; line-height: 30%; }
h2.first { margin: 0 0 2rem 0; }

h3 { border-top: #52cbca 3px solid; border-bottom: #52cbca 3px solid; margin: 1.5rem 0 1rem 0; }
h3 span { color: #52cbca; font-size: 2.3rem; font-family: 'kosugimaru'; font-weight: normal; text-align: center; background-color: #e6f8f8; padding: 1rem 0; border-top: #ffffff 4px solid; border-bottom: #ffffff 4px solid; display: block; box-sizing: border-box; }
h3.first { margin: 1.5rem 0 1rem 0; }

h4 { color: #52cbca; font-size: 2.2rem; font-family: 'kosugimaru'; font-weight: normal; text-align: center; border-bottom: #e6f8f8 2px solid; padding: 0 0 0.8rem 0; margin: 1.5rem 0 1rem 0; }
h4.first { margin: 1.5rem 0 1rem 0; }

p { font-size: 1.4rem; margin: 0 0 2rem 0; line-height: 140%; letter-spacing: 0.05em; }

@media screen and (min-width: 768px), print { h1 { margin: 0; }
  h2.notice_title { color: #ffffff; font-size: 4rem; font-family: 'kosugimaru'; font-weight: normal; text-align: center; margin: 0 0 48px 0; }
  h2.notice_title::after { content: url("../images/notice_line.png"); display: block; text-align: center; margin: 0 0 0 0; line-height: 50%; }
  h2.features_title { color: #81cde3; font-size: 4rem; font-family: 'kosugimaru'; font-weight: normal; text-align: center; margin: 0 0 48px 0; }
  h2.features_title::after { content: url("../images/features_line.png"); display: block; text-align: center; margin: 0 0 0 0; line-height: 50%; }
  h2.low { color: #81cde3; font-size: 4rem; font-family: 'kosugimaru'; font-weight: normal; text-align: center; margin: 100px 0 48px 0; }
  h2.low::after { content: url("../images/features_line.png"); display: block; text-align: center; margin: 0 0 0 0; line-height: 50%; }
  h2.first { margin: 0 0 30px 0; }
  h3 { border-top: #52cbca 3px solid; border-bottom: #52cbca 3px solid; margin: 70px 0 28px 0; }
  h3 span { color: #52cbca; font-size: 3.2rem; font-family: 'kosugimaru'; font-weight: normal; text-align: center; background-color: #e6f8f8; padding: 10px 0; border-top: #ffffff 4px solid; border-bottom: #ffffff 4px solid; display: block; box-sizing: border-box; }
  h3.first { margin: 70px 0 28px 0; }
  h4 { color: #52cbca; font-size: 2.8rem; font-family: 'kosugimaru'; font-weight: normal; text-align: center; border-bottom: #e6f8f8 2px solid; padding: 0 0 15px 0; margin: 60px 0 28px 0; }
  h4.first { margin: 60px 0 28px 0; }
  p { font-size: 1.6rem; margin: 0 0 2rem 0; line-height: 160%; letter-spacing: 0.05em; } }
/*イメージ*/
/* -----------------------------------------------------------
　イメージ
----------------------------------------------------------- */
.img_right { margin: 0 0 10px 0; text-align: center; }
.img_right img { width: 70%; height: auto; }

.img_doctor { margin: 0 0 10px 0; text-align: center; }
.img_doctor img { width: 70%; height: auto; }

.img_center { margin: 0 0 10px 0; text-align: center; }
.img_center img { width: 100%; height: auto; }

.img_center_middle { margin: 0 0 10px 0; text-align: center; }
.img_center_middle img { width: 100%; height: auto; }

.img_left_large { margin: 0 0 10px 0; text-align: center; }
.img_left_large img { width: 70%; height: auto; }

@media screen and (min-width: 768px), print { .img_right { float: right; margin: 0 0 10px 10px; }
  .img_right img { width: 400px; height: auto; }
  .img_doctor { float: right; margin: 0 0 10px 10px; }
  .img_doctor img { width: 350px; height: auto; }
  .img_center { margin: 0 0 10px 0; text-align: center; }
  .img_center img { width: auto; height: auto; }
  .img_center_middle { margin: 0 0 10px 0; text-align: center; }
  .img_center_middle img { width: auto; max-width: 900px; height: auto; }
  .img_left_large { margin: 0 0 10px 0; text-align: left; }
  .img_left_large img { width: auto; height: auto; } }
/*リスト*/
/* -----------------------------------------------------------
　リスト
----------------------------------------------------------- */
/*標準*/
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 top 0.4rem; background-size: 1rem; 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: #e5f8f8; text-decoration: none; }
ul.list_maru li span { color: #e5f8f8; }

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 top 0.4rem; background-size: 1rem; padding: 0 0 0 1.8rem; line-height: 140%; }
ul.list_maru_two li a { color: #00b1bc; }
ul.list_maru_two li a { color: #e5f8f8; text-decoration: none; }
ul.list_maru_two li span { color: #e5f8f8; }

/*なし*/
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 1rem 2.5rem; box-sizing: border-box; width: 90%; }

ul.list_num_center { box-sizing: border-box; width: 100%; }
ul.list_num_center li { line-height: 130%; font-size: 1.4rem; list-style-type: decimal; margin: 0 0 1rem 2.5rem; 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 li { box-sizing: border-box; line-height: 130%; font-size: 1.4rem; list-style-type: disc; margin: 0 0 1.4rem 1.8rem; }

/*3列*/
ul.list_normal_three li { box-sizing: border-box; line-height: 130%; font-size: 1.4rem; list-style-type: disc; margin: 0 0 1.4rem 1.8rem; }

@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 top 3px; background-size: 1.5rem; 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: #e5f8f8; text-decoration: underline; }
  ul.list_maru li span { color: #e5f8f8; }
  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: 47%; 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 top 3px; background-size: 1.5rem; padding: 0 0 0 25px; line-height: 140%; }
  ul.list_maru_two li a { color: #e5f8f8; text-decoration: underline; }
  ul.list_maru_two li span { color: #e5f8f8; }
  /*なし*/
  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_num_center { box-sizing: border-box; width: 100%; }
  ul.list_num_center li { line-height: 130%; font-size: 1.6rem; list-style-type: decimal; margin: 0 auto 10px auto; box-sizing: border-box; width: 850px; }
  /*概要*/
  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: -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_normal_two li { width: 45%; box-sizing: border-box; line-height: 130%; font-size: 1.6rem; list-style-type: disc; margin: 0 0 10px 0; }
  ul.list_normal_three { 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_normal_three li { width: 30%; box-sizing: border-box; line-height: 130%; font-size: 1.6rem; list-style-type: disc; margin: 0 0 10px 30px; } }
/* -----------------------------------------------------------
　定義リスト
----------------------------------------------------------- */
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-weight: bold; }
dl.bio_list dt span { display: inline; text-align: left; padding: 0 0 0 0; box-sizing: border-box; }
dl.bio_list dd { width: 100%; margin: 0 0 2rem 0; }

dl.philosophy_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 20px 0; line-height: 120%; }
dl.philosophy_list dt { width: 8%; margin: 0 0 0 0; }
dl.philosophy_list dd { width: 90%; margin: 0 0 20px 0; }

dl.kome_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 20px 0; line-height: 140%; }
dl.kome_list dt { width: 6%; margin: 0 0 0 0; }
dl.kome_list dd { width: 94%; margin: 0 0 20px 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: 1300px; }
  dl.bio_list dt { width: 100px; margin: 0 0 20px 0; font-weight: normal; }
  dl.bio_list dt span { display: block; text-align: center; padding: 0 35px 0 0; box-sizing: border-box; }
  dl.bio_list dd { width: 1000px; margin: 0 0 20px 0; }
  dl.philosophy_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; }
  dl.philosophy_list dt { width: 35px; margin: 0 0 20px 0; font-weight: normal; }
  dl.philosophy_list dd { width: 565px; margin: 0 0 20px 0; }
  dl.kome_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: 900px; }
  dl.kome_list dt { width: 20px; margin: 0 0 10px 0; font-weight: normal; }
  dl.kome_list dd { width: 880px; 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: #46b9da; 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: #000000; font-size: 2rem; background: url(../images/aside_arrow.png) no-repeat; background-position: left 18px center; border-bottom: #52cbca 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%; }
table.timetable tr th { box-sizing: border-box; font-weight: normal; font-size: 3.2vw; padding: 0.8rem 0; vertical-align: middle; color: #ffffff; background-color: #46b9da; width: 7%; }
table.timetable tr td { box-sizing: border-box; font-weight: normal; font-size: 3.2vw; padding: 0.8rem 0; vertical-align: middle; background-color: #ffffff; color: #000000; }
table.timetable tr td.time { width: 22%; text-align: center; color: #46b9da; }
table.timetable tr td i { color: #000000; }
table.timetable tr td i.icon-star { color: #46da9a; }

.notice_time { font-size: 3.2vw; margin: 0.6rem auto 0 auto; width: 96%; color: #000000; box-sizing: border-box; text-align: right; }

@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.6rem; padding: 8px 0; vertical-align: middle; color: #ffffff; background-color: #46b9da; width: auto; }
  table.timetable tr td { box-sizing: border-box; font-weight: normal; font-size: 1.6rem; padding: 16px 0; vertical-align: middle; background-color: #ffffff; color: #000000; width: 50px; }
  table.timetable tr td.time { width: 134px; text-align: center; color: #46b9da; }
  table.timetable tr td i { color: #000000; }
  table.timetable tr td i.icon-star { color: #46da9a; font-size: 2rem; }
  .notice_time { font-size: 1.4rem; margin: 6px auto 0 auto; width: 100%; color: #000000; box-sizing: border-box; text-align: right; } }
/*下層*/
/*矢印*/
.arrow { width: 0; height: 0; border-left: 60px solid transparent; border-right: 60px solid transparent; border-top: 30px solid #81cde3; 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 #00b1bc; text-align: center; display: block; margin: 30px auto; }

.text_bold { font-weight: bold; }

.link_text { color: #e5f8f8; }

.red_text { color: #ff0000; }

.underline_text { text-decoration: underline; }

.tac { text-align: center; }

.tac { text-align: center; }

.tac_50 { text-align: left; }

.emphasis { background-color: #e5f8f8; padding: 1rem; box-sizing: border-box; margin: 0 0 2rem 0; }
.emphasis p { margin: 0; }

.blue_bold { color: #00b1bc; font-size: 1.8rem; font-weight: bold; }

.middle_box { width: 100%; margin: 0; }

@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 #81cde3; 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 #00b1bc; text-align: center; display: block; margin: 30px auto; }
  .text_bold { font-weight: bold; }
  .link_text { color: #e5f8f8; }
  .link_text:hover { opacity: 0.6; }
  .red_text { color: #ff0000; }
  .underline_text { text-decoration: underline; }
  .tac { text-align: center; }
  .tac_50 { width: 50%; margin: 0 auto; text-align: left; }
  .emphasis { background-color: #e5f8f8; padding: 20px; box-sizing: border-box; margin: 0 0 30px 0; }
  .emphasis p { margin: 0; }
  .blue_bold { color: #00b1bc; font-size: 2.8rem; font-weight: bold; }
  .middle_box { width: 900px; margin: 0 auto; } }
/* -----------------------------------------------------------
　お薬配達
----------------------------------------------------------- */
.emphasis_delivery { background-color: #e5f8f8; padding: 1rem; box-sizing: border-box; margin: 0 0 2rem 0; text-align: center; }

@media screen and (min-width: 768px), print { .emphasis_delivery { background-color: #e5f8f8; padding: 20px; box-sizing: border-box; margin: 0 0 30px 0; text-align: center; } }
/* -----------------------------------------------------------
　院長紹介
----------------------------------------------------------- */
.clinic_name { text-align: right; }

@media screen and (min-width: 768px), print { .clinic_name { text-align: right; } }
/*----------------------------------------------------------- 診療時間・アクセス
----------------------------------------------------------- */
.access_box .access_info dl { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-direction: column; flex-direction: column; -webkit-flex-wrap: wrap; flex-wrap: wrap; font-size: 1.4rem; box-sizing: border-box; margin: 0 0 20px 0; line-height: 140%; }
.access_box .access_info dl dt { width: 100%; margin: 0 0 0.5rem 0; }
.access_box .access_info dl dt span { font-weight: normal; background-color: #46b9da; color: #ffffff; text-align: center; padding: 0.2rem 0; display: block; }
.access_box .access_info dl dd { width: 100%; margin: 0 0 2rem 0; }
.access_box .access_info dl dd.access_tel a { color: #000000; text-decoration: underline; }
.access_box figure.img_access img { width: 100%; }

.access_imagemap { width: 98%; margin: 0 auto 2rem auto; }
.access_imagemap img { width: 100%; }

a.access_map { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; color: #00b1bc; text-decoration: none; font-size: 1.4rem; width: 60%; height: 13vw; background: url("../images/a_btn_bg.png") no-repeat; background-size: cover; margin: 2rem auto 0 auto; }

@media screen and (min-width: 768px), print { .access_box { width: 900px; margin: 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; }
  .access_box .access_info { width: 450px; }
  .access_box .access_info dl { 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; margin: 0 0 20px 0; line-height: 140%; }
  .access_box .access_info dl dt { width: 100px; margin: 0 0 15px 0; }
  .access_box .access_info dl dt span { font-weight: bold; background-color: #46b9da; color: #ffffff; text-align: center; padding: 5px 0; display: block; }
  .access_box .access_info dl dd { width: 330px; margin: 0 0 15px 20px; display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: flex-start; -webkit-align-items: center; align-items: center; }
  .access_box .access_info dl dd.access_tel a { text-decoration: none; }
  .access_box figure.img_access { width: 450px; }
  .access_box figure.img_access img { width: 100%; }
  .access_imagemap { width: 586px; margin: 0 auto 20px auto; }
  .access_imagemap img { width: 586px; }
  iframe.accessmap { width: 586px; height: 482px; margin: 0; }
  a.access_map { display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; color: #00b1bc; text-decoration: none; font-size: 1.8rem; width: 236px; height: 60px; background: url("../images/a_btn_bg.png") no-repeat; margin: 20px auto 0 auto; background-size: cover; }
  a.access_map:hover { opacity: 0.6; transition: all 0.3s ease 0s; } }
/* -----------------------------------------------------------
　クリニック紹介
----------------------------------------------------------- */
.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: #81cde3; 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: #00b1bc 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: #e5f8f8; background-color: #d8c99e; border-bottom: #e5f8f8 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: 500px; }
  .machine_frame .machine_box .machine_title { font-size: 2.2rem; font-family: 'Kosugimaru'; color: #ffffff; background-color: #81cde3; border-radius: 0.5rem; padding: 10px 14px; box-sizing: border-box; margin: 50px 0 1rem 0; }
  .machine_frame .machine_box img { width: 500px; 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: #00b1bc 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: #e5f8f8; background-color: #d8c99e; 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: #90d8ec; vertical-align: middle; text-align: center; width: auto; padding: 0.8rem; border: #000000 1px solid; width: 50%; font-weight: normal; color: #000000; }
table.low_table tr td { vertical-align: middle; text-align: left; border: #000000 1px solid; padding: 0.8rem; background-color: #ffffff; width: 50%; color: #000000; }

table.price_table { vertical-align: middle; width: 100%; border-collapse: collapse; box-sizing: border-box; border: #000000 1px solid; font-size: 1.4rem; }
table.price_table tr { border-bottom: #000000 1px solid; }
table.price_table tr th { width: 70%; padding: 0.6rem; box-sizing: border-box; border-right: #000000 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%; }

@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: #90d8ec; vertical-align: middle; text-align: center; width: auto; padding: 14px; border: #000000 1px solid; width: 50%; font-weight: normal; color: #000000; }
  table.low_table tr td { vertical-align: middle; text-align: left; border: #000000 1px solid; padding: 14px; background-color: #ffffff; width: 50%; color: #000000; }
  table.price_table { vertical-align: middle; width: 100%; border-collapse: collapse; box-sizing: border-box; border: #000000 1px solid; font-size: 1.8rem; }
  table.price_table tr { border-bottom: #000000 1px solid; }
  table.price_table tr th { width: 70%; padding: 1rem; box-sizing: border-box; border-right: #000000 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%; } }
/* -----------------------------------------------------------
　処方箋予約
----------------------------------------------------------- */
.low_line_bana { margin: 2rem auto 0 auto; box-sizing: border-box; text-align: center; display: block; width: 96%; }
.low_line_bana img { width: 100%; }

.line_flow { background-color: #e5f8f8; padding: 1rem; box-sizing: border-box; margin: 0 0 2rem 0; display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; }
.line_flow figure { text-align: center; order: 2; }
.line_flow figure img { width: 70%; height: auto; }
.line_flow a { text-align: center; order: 2; }
.line_flow a img { width: 70%; height: auto; }
.line_flow p { order: 1; margin: 0 0 1rem 0; }

@media screen and (min-width: 768px), print { .low_line_bana { margin: 20px 0 0 0; box-sizing: border-box; text-align: left; display: block; width: 800px; }
  .low_line_bana img { width: 800px; }
  .line_flow { background-color: #e5f8f8; padding: 20px; box-sizing: border-box; margin: 0 auto 30px auto; display: -webkit-flex; display: flex; -webkit-flex-direction: row; flex-direction: row; width: 900px; }
  .line_flow figure { text-align: right; margin: 0 0 0 20px; order: 2; }
  .line_flow figure img { width: 300px; height: auto; }
  .line_flow a { display: block; text-align: right; margin: 0 0 0 20px; order: 2; }
  .line_flow a img { width: 300px; height: auto; }
  .line_flow a:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  .line_flow p { order: 1; margin: 0 0 0 0; width: 600px; } }
/* -----------------------------------------------------------
　小児服薬指導
----------------------------------------------------------- */
.flow_box { border: #00b1bc 2px solid; box-sizing: border-box; }
.flow_box .flow_box_title { background-color: #e6f8f8; text-align: center; padding: 1rem; box-sizing: border-box; border-bottom: #00b1bc 2px solid; }
.flow_box .flow_box_title p { margin: 0; font-size: 1.4rem; color: #000000; }
.flow_box .flow_box_title p.num { font-size: 3rem; color: #52cbca; }
.flow_box .flow_box_text { margin: 1rem 0; padding: 1rem; box-sizing: border-box; }
.flow_box .flow_box_text .sub_title { font-size: 1.8rem; color: #00b1bc; }
.flow_box .flow_box_text figure { width: 70%; margin: 0 auto; display: block; }
.flow_box .flow_box_text figure img { width: 100%; }

@media screen and (min-width: 768px), print { /*   .flow_box{ border: $color1 2px solid; box-sizing: border-box;   width: 1100px; margin: 0 auto 40px 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; height: auto; height: 280px;   .flow_box_title{ background-color: $color11;     text-align: center; padding: 0; box-sizing: border-box; width: 350px; height: 276px;     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; border-right: $color1 2px solid; border-bottom: none; p{ margin: 0; font-size: 2rem; color: $bace_color; &.num{ font-size: 4rem; color: $color10; } } } .flow_box_text{ width: 730px; margin: 0; padding: 20px; box-sizing: border-box; position: relative;     display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: center; -webkit-align-items: center; align-items: flex-start; -webkit-flex-direction:column; flex-direction:column;  .sub_title{ font-size: 2.2rem; color: $color1; width: 350px; }  .sub_text{ font-size: 1.6rem; width: 350px; }  figure{ width: 300px; margin: 0; display: block; position: absolute; top:40px; right: 20px;       img{ width: 100%; } } } } */
  .flow_box { border: #00b1bc 2px solid; box-sizing: border-box; width: 900px; margin: 0 auto 40px 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; height: auto; height: 280px; }
  .flow_box .flow_box_title { background-color: #e6f8f8; text-align: center; padding: 0; box-sizing: border-box; width: 270px; height: 276px; 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; border-right: #00b1bc 2px solid; border-bottom: none; }
  .flow_box .flow_box_title p { margin: 0; font-size: 2rem; color: #000000; }
  .flow_box .flow_box_title p.num { font-size: 4rem; color: #52cbca; }
  .flow_box .flow_box_text { width: 620px; margin: 0; padding: 20px 10px; box-sizing: border-box; position: relative; display: -webkit-flex; display: flex; -webkit-justify-content: flex-start; justify-content: center; -webkit-align-items: center; align-items: flex-start; -webkit-flex-direction: column; flex-direction: column; }
  .flow_box .flow_box_text .sub_title { font-size: 2.2rem; color: #00b1bc; width: 340px; }
  .flow_box .flow_box_text .sub_text { font-size: 1.6rem; width: 340px; }
  .flow_box .flow_box_text figure { width: 250px; margin: 0; display: block; position: absolute; top: 40px; right: 20px; }
  .flow_box .flow_box_text figure img { width: 100%; } }
/* -----------------------------------------------------------
　オンライン服薬指導
----------------------------------------------------------- */
.flow_title { 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; font-size: 2rem; font-weight: bold; color: #07b53b; }
.flow_title span { width: 80%; text-align: center; }
.flow_title::before { content: "＼"; }
.flow_title::after { content: "／"; }

.online_flow { background-color: #e5f8f8; padding: 1rem; box-sizing: border-box; margin: 0 0 2rem 0; }

.online_line_bana { width: 100%; margin: 0 0 3rem 0; display: block; padding: 0; }
.online_line_bana img { width: 100%; }

figure.online_img img { width: 100%; }
figure.online_img figcaption { margin: 0.6rem 0 1rem 0; font-size: 1.4rem; }

@media screen and (min-width: 768px), print { .flow_title { 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; font-size: 3rem; font-weight: bold; color: #07b53b; }
  .flow_title span { width: auto; text-align: center; }
  .flow_title::before { content: "＼"; }
  .flow_title::after { content: "／"; }
  .online_flow { background-color: #e5f8f8; padding: 20px; box-sizing: border-box; margin: 0 auto 30px auto; width: 900px; display: block; }
  .online_line_bana { width: 800px; margin: 0 auto 60px auto; display: block; padding: 0; }
  .online_line_bana img { width: 800px; }
  .online_line_bana:hover { opacity: 0.6; transition: all 0.3s ease 0s; }
  figure.online_img img { width: 900px; display: block; margin: 0 auto; }
  figure.online_img figcaption { margin: 20px 0 40px 0; font-size: 1.6rem; text-align: center; } }
