@charset "UTF-8";
/*※sassによるコーディングを行っています。*/
/* ==============================================================
*  ベース (base)
* ============================================================ */
/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

ul {
  list-style: none;
}

a {
  text-decoration: none;
}

/* ヘッダーレイアウト */
.header-inner,
.kv {
  width: 100vw;
  padding: 0;
}

@media screen and (min-width: 760px) {
  .header-inner,
  .kv {
    max-width: 1000px;
    margin: 0 auto;
  }
}

@media screen and (min-width: 1000px) {
  .top .kv {
    height: 460px;
  }
}

/* ボディ */
.body {
  background-color: #f7f6f5;
}

.body-inner {
  margin-top: 60px;
}

@media screen and (min-width: 760px) {
  .body-inner {
    margin-top: 100px;
  }
}

/* メインへの指示 */
/* フッターレイアウト */
.footer-inner {
  width: 100%;
}

@media screen and (min-width: 760px) {
  .footer-inner {
    max-width: 1000px;
    margin: 0 auto;
  }
}

/* トップページ以外レイアウト */
.pp-inner,
.qamain-inner,
.firstvisit-inner {
  width: 100%;
  padding: 40px 4% 50px;
  background-color: #fff;
}

@media screen and (min-width: 760px) {
  .pp-inner,
  .qamain-inner,
  .firstvisit-inner {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
    padding: 40px 60px 70px;
  }
}

.guide {
  width: 100%;
}

@media screen and (min-width: 760px) {
  .guide {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
  }
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  overflow-y: scroll;
}

.body {
  color: #707070;
  font-family: "游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif;
  font-size: 15px;
  line-height: 1.66;
}

@media screen and (min-width: 760px) {
  .body {
    font-size: 16px;
    line-height: 1.81;
  }
}

h2 {
  font-size: 18px;
  line-height: 1.5;
}

@media screen and (min-width: 760px) {
  h2 {
    font-size: 24px;
    line-height: 1.5;
    margin-bottom: 22px;
  }
}

h3 {
  margin-top: 35px;
  margin-bottom: 25px;
  color: #2d2d2d;
}

@media screen and (min-width: 760px) {
  h3 {
    font-size: 18px;
    margin-bottom: 30px;
    margin-top: 0;
  }
}

h4 {
  margin-bottom: 15px;
}

img {
  vertical-align: bottom;
  width: 100%;
  max-width: 100%;
  height: auto;
}

a {
  color: #707070;
}

ul,
ol {
  list-style-position: inside;
}

.ls-c {
  list-style-type: disc;
  list-style-position: inside;
  padding-left: 6px;
}

.ul-pa {
  padding-left: 5px;
}

dt {
  font-weight: bold;
}

.sec-title {
  text-align: center;
}

.sec-text_bold {
  font-weight: bold;
}

.sec,
.sec-inner,
.symptoms {
  padding-right: 4%;
  padding-left: 4%;
}

@media screen and (min-width: 760px) {
  .sec,
  .sec-inner,
  .symptoms {
    padding-right: 0;
    padding-left: 0;
  }
}

.main-inner {
  background: #fff;
  max-width: 1000px;
  margin: 0 auto;
}

@media screen and (min-width: 760px) {
  .main-wrap {
    padding-right: 60px;
    padding-left: 60px;
    max-width: 1000px;
    margin: 0 auto;
  }
}

/* テキストへの指示 
---------------------------------------------------*/
.t-color_red {
  color: red;
}

.tcr {
  color: red;
}

.fwb {
  font-weight: bold;
  color: #2d2d2d;
}

/* テキスト位置 */
.tal {
  text-align: left;
}

.tar {
  text-align: right;
}

.tac {
  text-align: center;
}

.fs-20 {
  font-size: 20px;
  line-height: 1.45;
}

/* フォントサイズ */
.fs-18 {
  font-size: 18px;
  line-height: 1.5;
}

.fs-14 {
  font-size: 14px;
  line-height: 1.42;
}

/* hr破線 */
.hr-dashed {
  border: 1px dashed #707070;
  margin: 20px 0;
}

@media screen and (min-width: 760px) {
  .hr-dashed {
    margin: 25px 0;
  }
}

/* バックグラウンドカラー */
.baco1 {
  background-color: #FFFFF9;
}

/* 表示・非表示
------------------------------------------------ */
/* spへの指示 */
@media screen and (max-width: 759px) {
  .pc-only {
    display: none !important;
  }
}

/* pcへの指示 */
@media screen and (min-width: 760px) {
  .sp-only {
    display: none !important;
  }
}

@media screen and (max-width: 410px) {
  .br-del {
    display: none;
  }
}

/* マージン指示
------------------------------------------------- */
/* トップ */
.mt10 {
  margin-top: 10px;
}

.mt20 {
  margin-top: 20px;
}

.mt30 {
  margin-top: 30px;
}

.mt40 {
  margin-top: 40px;
}

.mt50 {
  margin-top: 50px;
}

/* ボトム */
.mb10 {
  margin-bottom: 10px;
}

.mb20 {
  margin-bottom: 20px;
}

.mb30 {
  margin-bottom: 30px;
}

.mb40 {
  margin-bottom: 40px;
}

.mb50 {
  margin-bottom: 50px;
}

/* レフト */
.ml10 {
  margin-left: 10px;
}

.ml20 {
  margin-left: 20px;
}

.ml30 {
  margin-left: 30px;
}

.ml40 {
  margin-left: 40px;
}

.ml50 {
  margin-left: 50px;
}

/* ライト */
.mr10 {
  margin-right: 10px;
}

.mr20 {
  margin-right: 20px;
}

.mr30 {
  margin-right: 30px;
}

.mr40 {
  margin-right: 40px;
}

.mr50 {
  margin-right: 50px;
}

/* トップ以外のページ下部電話ボタン */
.other-page_tel {
  text-align: center;
}

.other-page_tel > p:first-child {
  margin-bottom: 10px;
}

@media screen and (min-width: 760px) {
  .other-page_tel > p:first-child {
    margin-bottom: 15px;
  }
}

.other-page_tel > p:last-child {
  margin: 0 auto;
}

.other-page_tel > p:last-child img {
  height: 54px;
  width: auto;
}

@media screen and (min-width: 760px) {
  .other-page_tel > p:last-child img {
    height: 44px;
    width: auto;
  }
}

/* 大見出し
------------------------------------------------------- */
/*-----------------
パソコン
-----------------*/
@media screen and (min-width: 760px) {
  /*------<pc>範囲・空き・位置---------*/
  .display-box, .display-box2 {
    display: block;
    margin-left: auto;
    margin-right: auto;
    overflow-x: hidden;
  }
  /*------<pc>タイトル---------*/
  /*↓↓ 大タイトル ↓↓*/
  .boxmain {
    display: block;
    height: 6%;
    margin: 0 -94%;
  }
  .boxmain img {
    display: block;
    margin-left: auto;
    margin-right: auto;
    height: 70px;
    width: auto;
  }
  .boxmain2 {
    display: block;
  }
  .boxmain2 img {
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: auto;
  }
}

/*-------------<    ↑↑pcここまで↑↑    >-------------*/
/*-----------------
  スマホ
  -----------------*/
@media screen and (max-width: 759px) {
  /*------<sp>範囲・空き・位置---------*/
  /* ≪↓↓初診の方へページ↓↓≫ */
  .display-box2 {
    overflow-x: hidden;
  }
  /*------<sp>タイトル---------*/
  /* ≪↓↓トップページ↓↓≫ */
  .boxmain {
    display: block;
    height: 17%;
    margin-left: -83%;
    margin-right: -83%;
  }
  .boxmain img {
    display: block;
    margin-left: auto;
    margin-right: auto;
    max-height: 75px;
    min-height: 60px;
    height: 17vw;
    max-width: none;
    max-width: initial !important;
    width: auto;
    width: initial !important;
  }
  /* ≪↓↓初診の方へページ↓↓≫ */
  .boxmain2 {
    display: block;
    margin: 0 -93%;
  }
  .boxmain2 img {
    display: block;
    margin-left: auto;
    margin-right: auto;
    max-height: 50px;
    min-height: 45px;
    height: 13vw;
    max-width: none;
    max-width: initial !important;
    width: auto;
    width: initial !important;
  }
}

/*-------------<    ↑↑spここまで↑↑    >-------------*/
/* 中見出し、小見出し
------------------------------------------------------- */
/*-----------------
パソコン
-----------------*/
@media screen and (min-width: 760px) {
  /*------<pc>範囲・空き・位置---------*/
  /*------<pc>タイトル---------*/
  /*↓↓ 大タイトル ↓↓*/
  .box1 {
    padding: 0.12em 1em;
    background: #FFF;
    border: solid 1px #009944;
    /*線*/
    border-radius: 5px;
    /*角の丸み*/
    text-align: center;
  }
  .box1 img {
    width: auto;
    height: 27px;
    margin-top: -0.12em;
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
  /*↓↓ 小タイトル ↓↓*/
  .box2, .box3 {
    display: block;
  }
  .box2 img, .box3 img {
    display: block;
    width: auto;
    height: 27px;
    padding-left: 0.5em;
    padding-right: 0.5em;
    background: #FFF;
    border: solid 1px #009944;
    /*線*/
    border-radius: 5px;
    /*角の丸み*/
  }
}

/*-------------<    ↑↑pcここまで↑↑    >-------------*/
/*-----------------
スマホ
-----------------*/
@media screen and (max-width: 759px) {
  /*------<sp>範囲・空き・位置---------*/
  .display-box {
    margin-left: 15px;
    margin-right: 15px;
  }
  /*------<sp>タイトル---------*/
  /*↓↓ 大タイトル ↓↓*/
  .box1 {
    background: #FFF;
    border: solid 1px #009944;
    /*線*/
    border-radius: 5px;
    /*角の丸み*/
  }
  .box1 img {
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: auto;
    height: 30px;
    padding: 0;
  }
  /*↓↓ 小タイトル ↓↓*/
  .box2, .box3 {
    display: block;
  }
  .box2 img {
    display: block;
    width: auto;
    height: 27px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 0.5em;
    padding-right: 0.5em;
    background: #FFF;
    border-bottom: solid 2px #009944;
    /*線*/
  }
  /*↓↓ 小タイトル2段 ↓↓*/
  .box3 img {
    display: block;
    width: auto;
    height: 52px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 0.5em;
    padding-right: 0.5em;
    background: #FFF;
    border-bottom: solid 2px #009944;
    /*線*/
  }
}

/*-------------<    ↑↑spここまで↑↑    >-------------*/
/*==============================*/
/*《最大上限:1200px~》
 要素が際限なく拡大されるのを防ぐ*/
/*==============================*/
@media screen and (min-width: 1001px) {
  .display-box, .display-box2 {
    max-width: 880px;
    width: initial;
  }
}

/* ==============================================================
*  モジュール（汎用的に使用できるスタイル）(module)
* ============================================================ */
/* ヘッダーへの指示 */
.header {
  background: #f7f6f5;
}

.header-fixd {
  background-color: #fff;
  height: 60px;
  padding: 13px 0 10px 15px;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 1000;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.2);
}

@media screen and (min-width: 760px) {
  .header-fixd {
    background: #f7f6f5;
    height: 100px;
    padding: 0;
    box-shadow: none;
  }
}

.header-fixd_inner {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  background: #fff;
}

@media screen and (min-width: 760px) {
  .header-fixd_inner {
    align-items: baseline;
    max-width: 1000px;
    margin: 0 auto;
    padding: 15px 20px 4px;
  }
}

/* 医院名 */
.header-logo {
  width: 124px;
  height: auto;
}

@media screen and (min-width: 760px) {
  .header-logo {
    width: 160px;
  }
}

/*上部電話ボタン*/
.header-tel {
  width: 37px;
  height: auto;
  margin-right: 65px;
}

@media screen and (min-width: 760px) {
  .header-tel {
    width: 187px;
    margin-right: 0;
  }
}

/*電話ボタンをpcで反応しなくするための*/
@media screen and (min-width: 760px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}

/* フッターへの指示 */
.footer {
  background-color: #009944;
  border-top: #9B9B9B solid 2px;
  max-width: 1000px;
  margin: 0 auto;
}

@media screen and (min-width: 760px) {
  .footer-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 60px;
  }
}

/* フッター住所部分 */
.footer-address {
  padding-top: 20px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.5);
}

@media screen and (min-width: 760px) {
  .footer-address {
    border: none;
  }
}

@media screen and (min-width: 760px) {
  .footer-address {
    padding: 0;
  }
}

/* 病院名、住所、電話番号 */
.footer-address-list li {
  text-align: center;
}

.footer-address-list li:first-child {
  margin-bottom: 10px;
}

@media screen and (min-width: 760px) {
  .footer-address-list li:first-child {
    margin-bottom: 12px;
  }
}

.footer-address-list li:first-child img {
  height: 60px;
  width: auto;
}

@media screen and (min-width: 760px) {
  .footer-address-list li:first-child img {
    height: 70px;
  }
}

.footer-address-list li:nth-child(2) {
  margin-bottom: 15px;
}

@media screen and (min-width: 760px) {
  .footer-address-list li:nth-child(2) {
    margin-bottom: 2px;
  }
}

.footer-address-list li:nth-child(2) img {
  height: 38px;
  width: auto;
}

@media screen and (min-width: 760px) {
  .footer-address-list li:nth-child(2) img {
    height: 19px;
  }
}

.footer-address-list li:last-child {
  margin-bottom: 20px;
}

@media screen and (min-width: 760px) {
  .footer-address-list li:last-child {
    margin-bottom: 17px;
  }
}

.footer-address-list li:last-child img {
  height: 47px;
  width: auto;
}

@media screen and (min-width: 760px) {
  .footer-address-list li:last-child img {
    height: 30px;
  }
}

/* ナビ */
.fnav {
  display: flex;
  justify-content: space-around;
  padding: 15px 4%;
  border-top: rgba(255, 255, 255, 0.5) solid 1px;
}

@media screen and (min-width: 760px) {
  .fnav {
    width: 50%;
    border-top: none;
    padding: 0;
  }
}

.fnav-left li:first-child img,
.fnav-left li:nth-child(2) img,
.fnav-left li:nth-child(3) img,
.fnav-left li:nth-child(4) img,
.fnav-left li:nth-child(5) img,
.fnav-right li:first-child img,
.fnav-right li:nth-child(2) img,
.fnav-right li:nth-child(3) img,
.fnav-right li:nth-child(4) img,
.fnav-right li:nth-child(5) img {
  height: 19px;
  width: auto;
}

@media screen and (min-width: 760px) {
  .left-wrap,
  .right-wrap {
    background-image: url(/common/img/pc/footer/line-vertical.png);
    background-position: left;
    background-size: 2px;
    background-repeat: no-repeat;
  }
}

@media screen and (min-width: 760px) {
  .fnav-right {
    background-image: url(/common/img/pc/footer/line-vertical.png);
    background-position: right;
    background-size: 2px;
    background-repeat: no-repeat;
  }
}

.fnav-left li:hover img,
.fnav-right li:hover img {
  opacity: .7;
}

@media screen and (min-width: 760px) {
  .fnav-left,
  .fnav-right {
    padding: 0 50px 10px 25px;
  }
}

/* コピーライト */
.footer-copyright {
  background-color: #483829;
  border-top: 2px solid #bbbbbb;
}

.copyright-inner {
  color: #fff;
  font-size: 12px;
  text-align: center;
  padding: 0 4%;
  max-width: 1000px;
  margin: 0 auto;
}

@media screen and (min-width: 760px) {
  .copyright-inner {
    padding: 0 60px;
    text-align: right;
  }
}

/*バーガー用*/
.hmenu {
  display: block;
  width: 60px;
  height: 60px;
  text-align: center;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 2000;
}

@media screen and (min-width: 760px) {
  .hmenu {
    display: none;
  }
}

/* ハンバーガーメニュー内の線 */
.hmenu span {
  display: block;
  position: absolute;
  /* .hmenuに対して */
  width: 30px;
  border-bottom: solid 3px #707070;
  -webkit-transition: .35s ease-in-out;
  -moz-transition: .35s ease-in-out;
  transition: .35s ease-in-out;
  right: 15px;
}

.hmenu span:nth-child(1) {
  top: 18px;
}

.hmenu span:nth-child(2) {
  top: 30px;
}

.hmenu span:nth-child(3) {
  top: 42px;
}

.active {
  background-color: #009944;
  color: #fff !important;
}

/*ｘ制御*/
/* 最初のspanをマイナス45度に */
.hmenu.active span:nth-child(1) {
  top: 30px;
  left: 15px;
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

/* 3番目のspanを45度に */
.hmenu.active span:nth-child(3) {
  top: 30px;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  transform: rotate(45deg);
}

/* 2番めのspanを消す */
.hmenu.active span:nth-child(2) {
  opacity: 0;
}

.hmenu.active {
  background-color: rgba(255, 255, 255, 0);
}

.hmenu.active span {
  border-bottom: solid 3px #707070;
}

/*グローバルナビ
--------------------------------------------------*/
.gnav {
  padding: 55px 15px;
  display: none;
  width: 375px;
  position: fixed;
  top: 0px;
  right: 0;
  z-index: 1000;
  background-color: #fff;
}

@media screen and (min-width: 760px) {
  .gnav {
    background-color: #f7f6f5;
    display: inline-block;
    padding: 0;
    position: static;
    width: 100%;
  }
  .gnav ul {
    display: flex;
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
  }
}

@media screen and (max-width: 374px) {
  .gnav {
    width: 100vw;
  }
}

.gnav li {
  border-top: 1px solid #675B50;
}

@media screen and (min-width: 760px) {
  .gnav li {
    border-top: none;
    background-color: #fff;
    border-left: 1px dashed #BCAA8E;
    text-align: center;
    width: 11%;
  }
}

@media screen and (min-width: 760px) {
  .gnav li:first-child {
    border-left: none;
  }
}

@media screen and (min-width: 760px) {
  .gnav li:nth-child(4) {
    width: 20%;
  }
}

.gnav li:last-child {
  border-bottom: 1px solid #675B50;
}

@media screen and (min-width: 760px) {
  .gnav li:last-child {
    border-bottom: none;
    border-right: none;
    width: 14%;
  }
}

.gnav a {
  font-size: 14px;
  font-weight: bold;
  line-height: 1.428;
  padding: 10px;
  color: #675B50;
  display: block;
}

@media screen and (min-width: 760px) {
  .gnav a {
    padding: 10px 0;
  }
  .gnav a:hover {
    background-color: #009944;
    color: #fff;
  }
}

@media screen and (min-width: 760px) {
  .gnav-list {
    box-shadow: 0 8px 3px -3px rgba(0, 0, 0, 0.2);
  }
}

.home-img {
  display: inline-block;
  width: 1.2em;
  height: 1em;
  background-image: url(../img/sp/icon/home-brown.png);
  background-size: cover;
}

.nav-active > a .home-img {
  background-image: url(../img/sp/icon/home-green.png);
  text-decoration: underline;
}

.gnav-home.active .home-img {
  background-image: url(../img/sp/icon/home-white.png);
}

.gnav-list li:first-child:hover .home-img {
  background-image: url(../img/sp/icon/home-white.png);
}

.home-img {
  display: inline-block;
  width: 1.2em;
  height: 1em;
  vertical-align: baseline;
}

.black-bg {
  position: fixed;
  left: 0;
  top: 0;
  width: 100vw;
  height: 100vh;
  z-index: 10;
  background-color: #333;
  opacity: 0;
  visibility: hidden;
  transition: all .6s;
  cursor: pointer;
}

.black-bg.active {
  opacity: .7;
  visibility: visible;
  z-index: 10px;
}

/* ナビ現地 */
.nav-active {
  padding: 0;
}

@media screen and (min-width: 760px) {
  .nav-active {
    padding: 0;
  }
}

.nav-active > a {
  text-align: left;
  color: #009944;
  text-decoration: underline;
}

@media screen and (min-width: 760px) {
  .nav-active > a {
    background-color: #009944;
    color: #fff;
    border-radius: 0;
    text-align: center;
    text-decoration: none;
  }
  .nav-active > a:hover {
    background-color: #009944;
    color: #fff;
  }
}

/* ハンバーガーメニュー追加 */
@media screen and (max-width: 759px) {
  .sub-menu1,
  .sub-menu2 {
    text-indent: .5em;
  }
}

.sub-menu1 li:last-child,
.sub-menu2 li:last-child {
  border-bottom: none;
}

.gnav-list li:first-child,
.gnav-list li:nth-child(2) {
  position: relative;
}

.g-nav_arrow1,
.g-nav_arrow2 {
  position: absolute;
  right: 0;
  top: 1px;
  width: 37px;
  height: 37px;
  display: block;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
}

.g-nav_arrow1 i,
.g-nav_arrow2 i {
  width: auto;
  height: 15px;
  color: #009944;
  text-decoration: none !important;
}

.nav-color {
  color: #fff !important;
}

.button {
  margin-top: 30px;
}

@media screen and (min-width: 760px) {
  .button {
    width: 358px;
    margin: 50px auto 0;
  }
}

.h-button {
  margin-top: 15px;
}

.go-top-button {
  display: none;
  width: 50px;
  height: 50px;
  position: fixed;
  bottom: 0;
  right: 10px;
  opacity: .7;
  z-index: 1000;
}

@media screen and (min-width: 760px) {
  .go-top-button {
    display: none;
    position: fixed;
    right: 15px;
    bottom: 15px;
    width: 60px;
    opacity: .6;
  }
  .go-top-button:hover {
    opacity: 1;
  }
}

@media screen and (min-width: 1001px) {
  .go-top-button {
    left: 50%;
    margin-left: 430px;
  }
}

@media screen and (min-width: 760px) {
  .go-top-button a {
    display: block;
  }
}

/* ==============================================================
*  各ページ固有のスタイル(page)
* ============================================================ */
/*  トップページスタイル
*==============================================================*/
/*お知らせ
--------------------------------------------------*/
.news {
  background: #f8f4e6;
  padding: 0 4.34%;
}

@media screen and (min-width: 760px) {
  .news {
    max-width: 1000px;
    margin: 0 auto;
  }
}

.sec-news {
  padding-bottom: 30px;
}

@media screen and (min-width: 760px) {
  .sec-news {
    padding: 30px 14% 25px;
    margin-top: 15px;
  }
}

.sec-news iframe {
  border: 1px solid #009944;
  border-top: 5px solid #009944;
  width: 100%;
  height: 150px;
  margin: 0 auto;
}

.news-title {
  margin-bottom: 15px;
}

@media screen and (min-width: 760px) {
  .news-title {
    font-size: 0;
  }
}

.news-title img {
  height: 25px;
  width: auto;
}

@media screen and (min-width: 760px) {
  .news-title img {
    height: auto;
    width: 103px;
  }
}

/* ご挨拶 */
.greeting {
  padding-top: 35px;
  padding-bottom: 50px;
}

@media screen and (min-width: 760px) {
  .greeting {
    padding-top: 28px;
    padding-bottom: 70px;
    padding-left: 14%;
    padding-right: 14%;
  }
  .greeting p {
    line-height: 1.87;
  }
}

.greeting-title {
  text-align: center;
  margin-bottom: 25px;
}

.greeting-title img {
  height: 26px;
  width: auto;
}

@media screen and (min-width: 760px) {
  .greeting-title img {
    height: 28px;
  }
}

.doctor-info {
  margin-top: 20px;
  margin-left: auto;
}

@media screen and (min-width: 760px) {
  .doctor-info {
    margin-top: 20px;
  }
}

.doctor-info img {
  height: 105px;
  width: auto;
}

@media screen and (min-width: 760px) {
  .doctor-info img {
    height: 89px;
  }
}

.greeting_button {
  width: 285px;
  height: auto;
  margin: 30px auto 0;
}

@media screen and (min-width: 760px) {
  .greeting_button {
    width: 300px;
    margin-top: 65px;
  }
}

.greeting_button:hover {
  opacity: .7;
}

/* 謙愛クリニックの特徴
-------------------------------------------------- */
.feature {
  padding-bottom: 50px;
}

@media screen and (min-width: 760px) {
  .feature {
    padding-bottom: 70px;
  }
}

@media screen and (min-width: 760px) {
  .feature-list {
    display: flex;
    justify-content: space-between;
  }
}

@media screen and (min-width: 760px) {
  .feature-list li {
    width: 45.45%;
  }
}

.feature-list li:first-child h3 {
  margin: 30px auto 15px;
  text-align: center;
}

@media screen and (min-width: 760px) {
  .feature-list li:first-child h3 {
    text-align: left;
  }
}

.feature-list li:last-child h3 {
  text-align: center;
  margin: 30px auto 15px;
}

@media screen and (min-width: 760px) {
  .feature-list li:last-child h3 {
    text-align: left;
  }
}

.feature-list p {
  margin-top: 15px;
}

@media screen and (min-width: 760px) {
  .feature-1 h3,
  .feature-2 h3 {
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    height: 86px;
  }
}

.feature-1 h3 img,
.feature-2 h3 img {
  width: 60px;
}

@media screen and (min-width: 760px) {
  .feature-1 h3 img,
  .feature-2 h3 img {
    width: 50px;
  }
}

.feature-1 h3 span,
.feature-2 h3 span {
  margin-left: 0;
  margin-top: 5px;
  font-size: 18px;
  display: block;
}

@media screen and (min-width: 760px) {
  .feature-1 h3 span,
  .feature-2 h3 span {
    font-size: 20px;
    line-height: 1.4;
    padding-top: 20px;
    margin-left: 5px;
  }
}

.feature-2 p span {
  display: block;
  padding-left: 1em;
  text-indent: -1em;
}

/* 診療案内
-------------------------------------------------- */
@media screen and (min-width: 760px) {
  .guide h2 {
    margin-bottom: 30px;
  }
}

.sec-guide {
  margin-bottom: 40px;
}

@media screen and (min-width: 760px) {
  .sec-guide {
    margin-bottom: 35px;
  }
}

@media screen and (min-width: 760px) {
  .policy {
    margin-bottom: 25px;
  }
}

@media screen and (min-width: 760px) {
  .policy-list div {
    display: flex;
    flex-direction: row-reverse;
  }
}

@media screen and (min-width: 760px) {
  .policy-list div picture {
    width: 34%;
    margin-left: 3%;
  }
}

.policy-list div p {
  margin-top: 15px;
}

@media screen and (min-width: 760px) {
  .policy-list div p {
    width: 63%;
    margin: 0;
  }
}

@media screen and (min-width: 760px) {
  .policy-list h3 {
    width: 30%;
  }
}

.policy-list hr {
  border: 1px dashed #796E65;
  margin: 25px 0 25px;
}

.policy-1 h3,
.policy-2 h3 {
  text-align: center;
}

@media screen and (min-width: 760px) {
  .policy-1 h3,
  .policy-2 h3 {
    align-items: center;
    display: inline-flex;
    flex-direction: row;
    margin: 0 0 10px 0;
    text-align: left;
    width: 100%;
  }
}

.policy-1 h3 img,
.policy-2 h3 img {
  width: 60px;
  margin-bottom: 5px;
}

@media screen and (min-width: 760px) {
  .policy-1 h3 img,
  .policy-2 h3 img {
    width: 50px;
    margin-bottom: 0;
  }
}

.policy-1 h3 span,
.policy-2 h3 span {
  margin-left: 5px;
  display: block;
  font-size: 18px;
}

@media screen and (min-width: 760px) {
  .policy-1 h3 span,
  .policy-2 h3 span {
    font-size: 20px;
    line-height: 1.93;
    padding-top: 20px;
  }
}

/* 診療科目
---------------------------------------------------*/
@media screen and (min-width: 760px) {
  .subjects {
    display: flex;
    align-items: baseline;
    margin-bottom: 20px;
  }
}

@media screen and (min-width: 760px) {
  .subjects p {
    margin-left: 1em;
  }
}

.subjects-img {
  display: block;
  width: 95px;
  /* 変更 */
  height: auto;
  margin-right: auto;
  margin-left: auto;
  background: #FFF;
  border-bottom: solid 2px #009944;
}

@media screen and (min-width: 760px) {
  .subjects-img {
    width: 90px;
    /* 変更 */
    min-width: 90px;
    /* 変更 */
    height: auto;
    /* 変更 */
    margin-right: 0;
    margin-left: 0;
    background: #FFF;
    border: solid 1px #009944;
    border-radius: 5px;
  }
}

.subjects-img img {
  vertical-align: middle;
}

.title-s_1 {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 75px;
  /* 変更 */
}

@media screen and (min-width: 760px) {
  .title-s_1 {
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: 70px;
    /* 変更 */
    height: auto;
  }
}

/* check!　チェック
---------------------------------------------------*/
.symptoms {
  padding-top: 30px;
}

@media screen and (min-width: 760px) {
  .symptoms {
    padding: 20px 0 50px;
  }
}

.symptoms li {
  text-align: center;
  margin-bottom: 15px;
}

.symptoms li:last-child {
  margin-bottom: 0;
}

@media screen and (max-width: 759px) {
  .symptoms-img {
    width: 345px;
    margin: 0 auto;
  }
}

@media screen and (max-width: 375px) {
  .symptoms-img {
    width: 100%;
  }
}

/*診療時間
---------------------------------------------------*/
/* 表 */
.table {
  width: 100%;
  border: 1px solid #009944;
  margin-bottom: 5px;
}

.table .monday-time {
  font-size: 16px;
  text-align: center;
}

@media screen and (min-width: 760px) {
  .table .monday-time {
    font-size: 20px;
    line-height: 1;
    vertical-align: middle;
  }
}

.table td {
  border: 1px solid #009944;
  padding-top: 10px;
  height: 45px;
  text-align: center;
}

@media screen and (min-width: 760px) {
  .table td {
    padding: 0;
  }
}

.table th {
  border: 1px solid #009944;
}

.table th, .table td {
  display: block;
}

@media screen and (min-width: 760px) {
  .table th, .table td {
    display: table-cell;
  }
}

/* 診療受付時間 （緑の所）*/
.table-list {
  color: #fff;
  background-color: #009944;
  display: flex;
  justify-content: space-between;
  align-items: center;
  text-align: left;
  padding: 4px 3% 4px 3%;
}

@media screen and (min-width: 760px) {
  .table-list {
    display: inline-block;
    text-align: center;
    padding: 4px 17% 0 17%;
  }
}

@media screen and (max-width: 410px) {
  .table-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
}

@media screen and (min-width: 411px) and (max-width: 759px) {
  .table-list {
    justify-content: center;
  }
}

.table-list li:first-child {
  font-size: 9px;
  white-space: nowrap;
}

.table-list li:last-child {
  font-size: 13px;
  line-height: 1.46;
}

@media screen and (min-width: 411px) and (max-width: 759px) {
  .table-list li:last-child {
    padding-left: 10px;
  }
}

/* 緑の部分 */
.table-list_1 {
  font-size: 11px !important;
  font-weight: 100;
}

@media screen and (min-width: 760px) {
  .table-list_1 {
    font-size: 12px !important;
    font-weight: 100;
  }
}

.table-list_2 {
  font-weight: 100;
}

/* テーブル横幅 */
.tr-1 {
  width: 14%;
  background-color: #E7F6F3;
}

@media screen and (min-width: 760px) {
  .tr-1 {
    width: 100%;
    height: 41.5px;
  }
}

.tr-2,
.tr-3 {
  width: 43%;
}

@media screen and (min-width: 760px) {
  .tr-2,
  .tr-3 {
    height: 110px;
  }
}

.table-left.table-1 {
  font-size: 1.34em;
  line-height: 1.6;
}

@media screen and (min-width: 760px) {
  .table-left.table-1 {
    font-size: 1.375em;
    line-height: 1.5;
  }
}

.table-left.table-1 div {
  margin: 0 6px;
}

@media screen and (max-width: 374px) {
  .table-left.table-1 {
    font-size: 5vw;
  }
}

/* テーブルの高さ */
.table-0 {
  height: 30px;
}

@media screen and (min-width: 760px) {
  .table-0 {
    width: 4.6%;
    height: initial;
  }
}

.table-1 {
  height: 85px;
  vertical-align: middle;
}

@media screen and (min-width: 760px) {
  .table-1 {
    width: 23.7%;
  }
}

.table-2,
.table-3,
.table-4,
.table-5,
.table-6,
.table-7,
.table-8 {
  height: 45px;
  vertical-align: middle;
}

@media screen and (min-width: 760px) {
  .table-2,
  .table-3,
  .table-4,
  .table-5,
  .table-6,
  .table-7,
  .table-8 {
    width: 8.5%;
  }
}

/* 曜日画像サイズ */
.table-week-img {
  background-position: center;
  background-repeat: no-repeat;
  background-size: 11px 17px;
  width: auto;
  height: 100%;
}

@media screen and (min-width: 760px) {
  .table-week-img {
    background-size: 20px 31px;
  }
}

.table-1 .table-week-img {
  background-size: 11px 65px;
}

@media screen and (min-width: 760px) {
  .table-1 .table-week-img {
    background-size: 80px 31px;
  }
}

.table-8 .table-week-img {
  background-size: 28px 15px;
}

@media screen and (min-width: 760px) {
  .table-8 .table-week-img {
    background-size: 50px 28px;
  }
}

.table-1 .table-week-img {
  background-image: url(../img/sp/week/time-vertical.png);
}

@media screen and (min-width: 760px) {
  .table-1 .table-week-img {
    background-image: url(../img/pc/week/time-vertical.png);
  }
}

/* 月 */
.table-2 .table-week-img {
  background-image: url(../img/sp/week/monday.png);
}

@media screen and (min-width: 760px) {
  .table-2 .table-week-img {
    background-image: url(../img/pc/week/monday.png);
  }
}

/* 火 */
.table-3 .table-week-img {
  background-image: url(../img/sp/week/tuesday.png);
}

@media screen and (min-width: 760px) {
  .table-3 .table-week-img {
    background-image: url(../img/pc/week/tuesday.png);
  }
}

/* 水 */
.table-4 .table-week-img {
  background-image: url(../img/sp/week/wednesday.png);
}

@media screen and (min-width: 760px) {
  .table-4 .table-week-img {
    background-image: url(../img/pc/week/wednesday.png);
  }
}

/* 木 */
.table-5 .table-week-img {
  background-image: url(../img/sp/week/thursday.png);
}

@media screen and (min-width: 760px) {
  .table-5 .table-week-img {
    background-image: url(../img/pc/week/thursday.png);
  }
}

/* 金 */
.table-6 .table-week-img {
  background-image: url(../img/sp/week/friday.png);
}

@media screen and (min-width: 760px) {
  .table-6 .table-week-img {
    background-image: url(../img/pc/week/friday.png);
  }
}

/* 土 */
.table-7 .table-week-img {
  background-image: url(../img/sp/week/saturday.png);
}

@media screen and (min-width: 760px) {
  .table-7 .table-week-img {
    background-image: url(../img/pc/week/saturday.png);
  }
}

/* 日 */
.table-8 .table-week-img {
  background-image: url(../img/sp/week/sunday.png);
}

@media screen and (min-width: 760px) {
  .table-8 .table-week-img {
    background-image: url(../img/pc/week/sunday.png);
  }
}

/* 午前,午後 */
@media screen and (min-width: 760px) {
  .am, .pm {
    vertical-align: middle;
  }
}

.am img,
.pm img {
  width: 30px;
  margin-bottom: 5px;
}

@media screen and (min-width: 760px) {
  .am img,
  .pm img {
    width: 20px;
    margin-bottom: 0;
  }
}

/* バツ印,丸印 */
.fa-times {
  color: #009944;
}

.fa-circle {
  color: #707070;
}

/* 右下休診日への指示 */
.cross,
.circle {
  display: inline-block;
  font-size: 12px;
  line-height: 1.5;
}

@media screen and (min-width: 760px) {
  .cross,
  .circle {
    font-size: 14px;
    line-height: 1.42;
  }
}

@media screen and (max-width: 759px) {
  tbody {
    display: flex;
  }
  tbody tr {
    display: flex;
    flex-direction: column;
  }
}

/* 表ここまで↑ */
/* 診療時間 
-----------------------------------------*/
.time {
  padding-bottom: 50px;
}

@media screen and (min-width: 760px) {
  .time {
    padding-bottom: 70px;
  }
}

.time-list {
  margin-top: 5px;
  margin-bottom: 30px;
}

@media screen and (min-width: 760px) {
  .time-list {
    margin-top: 0;
    margin-bottom: 30px;
  }
}

.time-list li {
  margin-bottom: 10px;
}

@media screen and (min-width: 760px) {
  .time-list li {
    line-height: 1;
  }
}

.time-list p {
  display: block;
  padding-left: 1em;
  text-indent: -1em;
  font-size: 14px;
  line-height: 1.78;
}

@media screen and (min-width: 760px) {
  .time-list p {
    font-size: 16px;
    line-height: 1.81;
  }
}

.time-title {
  display: block;
  width: 95px;
  height: auto;
  margin-right: auto;
  margin-left: auto;
  background: #FFF;
  border-bottom: solid 2px #009944;
}

@media screen and (min-width: 760px) {
  .time-title {
    width: 90px;
    min-width: 90px;
    height: auto;
    margin-right: auto;
    margin-left: 0;
    background: #FFF;
    border: solid 1px #009944;
    border-radius: 5px;
  }
}

.time-title img {
  vertical-align: middle;
}

.title-s_2 {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 75px;
}

@media screen and (min-width: 760px) {
  .title-s_2 {
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: 70px;
    height: auto;
  }
}

/* 休診日 */
@media screen and (min-width: 760px) {
  .closedday ul {
    display: flex;
    list-style: none;
  }
}

.closedday-title {
  display: block;
  width: 76px;
  /* 変更 */
  height: auto;
  margin-right: auto;
  margin-left: auto;
  background: #FFF;
  border-bottom: solid 2px #009944;
}

@media screen and (min-width: 760px) {
  .closedday-title {
    width: 90px;
    /* 変更 */
    min-width: 90px;
    /* 変更 */
    height: auto;
    /* 変更 */
    margin-right: auto;
    margin-left: 0;
    background: #FFF;
    border: solid 1px #009944;
    border-radius: 5px;
  }
}

.closedday-title img {
  vertical-align: middle;
}

.title-s_3 {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 56px;
  /* 変更 */
}

@media screen and (min-width: 760px) {
  .title-s_3 {
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: 70px;
    /* 変更 */
  }
}

/*診療方針
---------------------------------------------------*/
/*医院紹介
---------------------------------------------------*/
.introduction h2 {
  margin-bottom: 35px;
}

.sec-introduction {
  padding-bottom: 50px;
}

@media screen and (min-width: 760px) {
  .introduction-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}

.introduction-list li {
  margin-bottom: 20px;
  font-size: 12px;
  line-height: 1.66;
}

@media screen and (min-width: 760px) {
  .introduction-list li {
    width: 48.87%;
    font-size: 16px;
    line-height: 1.81;
  }
}

.introduction-list li img:hover {
  opacity: .7;
}

/* 医院紹介
---------------------------------------------------*/
.introduction-text {
  margin-bottom: 25px;
}

@media screen and (min-width: 760px) {
  .introduction-text {
    margin-bottom: 30px;
  }
}

/*------<pc>文字関連---------*/
.caption {
  line-height: 1.4em;
  margin-top: 5px;
}

@media screen and (min-width: 760px) {
  .caption {
    line-height: 1.6em;
    margin-top: 7px;
  }
}

/* アクセスのご案内
---------------------------------------------------*/
@media screen and (min-width: 760px) {
  .box1 {
    margin-top: 30px;
  }
}

/*所在地*/
@media screen and (min-width: 760px) {
  .location {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}

.location-address {
  margin-bottom: 10px;
}

.location-address h4 {
  text-align: center;
}

@media screen and (min-width: 760px) {
  .location-address {
    display: flex;
  }
}

@media screen and (min-width: 760px) {
  .location-address p {
    margin-left: 20px;
  }
}

.location-address span {
  display: inline-block;
}

.location-img {
  display: block;
  width: 76px;
  height: auto;
  margin-right: auto;
  margin-left: auto;
  background: #FFF;
  border-bottom: solid 2px #009944;
}

@media screen and (min-width: 760px) {
  .location-img {
    width: 90px;
    min-width: 90px;
    height: 31px;
    margin-right: auto;
    margin-left: auto;
    background: #FFF;
    border: solid 1px #009944;
    border-radius: 5px;
  }
}

.location-img img {
  vertical-align: middle;
}

.title-s_4 {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 56px;
}

@media screen and (min-width: 760px) {
  .title-s_4 {
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: 70px;
    height: auto;
  }
}

.location-tel {
  border-top: 1px solid #707070;
  border-bottom: 1px solid #707070;
  margin-bottom: 25px;
  padding: 8px 0;
  text-align: center;
}

@media screen and (min-width: 760px) {
  .location-tel {
    border: none;
    margin-left: 0;
    margin-right: 0;
    padding: 0;
    margin-top: -8px;
  }
}

@media screen and (max-width: 759px) {
  .location-tel img {
    min-width: 277px;
    max-width: 350px;
    width: 73vw;
  }
}

@media screen and (min-width: 760px) {
  .location-tel img {
    width: 288px;
  }
}

/* アクセス方法 */
@media screen and (min-width: 760px) {
  .access {
    display: flex;
  }
}

.access li, .access p {
  margin-bottom: 20px;
}

@media screen and (min-width: 760px) {
  .access-text {
    width: 36.36%;
  }
}

.access-text li, .access-text p {
  display: block;
  padding-left: 1em;
  text-indent: -1em;
}

.access-img {
  display: block;
  width: 135px;
  /* 変更 */
  height: auto;
  margin-right: auto;
  margin-left: auto;
  background: #FFF;
  border-bottom: solid 2px #009944;
}

@media screen and (min-width: 760px) {
  .access-img {
    width: 128px;
    /* 変更 */
    min-width: 128px;
    /* 変更 */
    height: auto;
    /* 変更 */
    margin-right: 0;
    margin-left: 0;
    background: #FFF;
    border: solid 1px #009944;
    border-radius: 5px;
  }
}

.access-img img {
  vertical-align: middle;
}

.title-s_5 {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 115px;
  /* 変更 */
}

@media screen and (min-width: 760px) {
  .title-s_5 {
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: 108px;
    /* 変更 */
  }
}

@media screen and (min-width: 760px) {
  .access-map {
    width: 61.36%;
    margin-left: 1.5%;
  }
}

/* 館内写真
---------------------------------------------------*/
.photo {
  padding-bottom: 40px;
}

@media screen and (min-width: 760px) {
  .photo {
    padding-bottom: 50px;
  }
}

@media screen and (min-width: 760px) {
  .photo-list {
    display: flex;
    -ms-justify-content: space-between;
    -moz-justify-content: space-between;
    -o-justify-content: space-between;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
}

.photo-list p {
  margin-top: 5px;
  margin-bottom: 10px;
}

@media screen and (min-width: 760px) {
  .photo-list > div {
    width: 23.4%;
  }
}

#scroll-feature,
#scroll-guide,
#scroll-introduction {
  padding-top: 60px;
  margin-top: -60px;
}

@media screen and (min-width: 760px) {
  #scroll-feature,
  #scroll-guide,
  #scroll-introduction {
    padding-top: 100px;
    margin-top: -100px;
  }
}

#scroll-news {
  padding-top: 90px;
  margin-top: -60px;
}

@media screen and (min-width: 760px) {
  #scroll-news {
    padding-top: 100px;
    margin-top: -100px;
  }
}

#scroll-greeting {
  padding-top: 95px;
  margin-top: -60px;
}

@media screen and (min-width: 760px) {
  #scroll-greeting {
    padding-top: 145px;
    margin-top: -100px;
  }
}

/*  Q&Aページスタイル
*==============================================================*/
/* qa */
.qa .kv {
  border-bottom: 3px solid #009944;
}

.qa h2 {
  margin-bottom: 30px;
  overflow: hidden;
}

@media screen and (min-width: 760px) {
  .qa h2 {
    margin-bottom: 40px;
  }
}

@media screen and (min-width: 760px) {
  .qa h2 picture {
    height: 60px;
    width: auto;
  }
}

.qa .other-page_tel {
  margin-top: 30px;
}

@media screen and (min-width: 760px) {
  .qa .other-page_tel {
    margin-top: 60px;
  }
}

/* qaボディ */
.qabody {
  font-size: 14px;
  line-height: 1.7;
  color: #707070;
}

/* qaキービジュアル */
.qakv {
  width: 100%;
}

@media screen and (min-width: 760px) {
  .qakv {
    max-width: 1000px;
    margin: 100px auto 0;
  }
}

/* qaセクションタイトル */
.qasec-title {
  position: relative;
}

/* 大見出しへの指示 (追加)*/
/* sp */
.qa-title_sp {
  display: block;
  position: absolute;
  top: 5px;
  left: 15px;
  height: 31px;
  width: auto;
  min-width: 200px;
}

.qa-title_sp2 {
  display: block;
  position: absolute;
  top: 5px;
  left: 15px;
  height: 31px;
  width: auto;
  min-width: 180px;
}

.qa-title_sp3 {
  display: block;
  position: absolute;
  top: 5px;
  left: 15px;
  height: 31px;
  width: auto;
  min-width: 60px;
}

h2 .qa-bg {
  overflow-x: hidden;
  vertical-align: inherit !important;
  width: auto !important;
  height: 63px !important;
  max-width: inherit !important;
}

h2 .qa-bg2, h2 .qa-bg3 {
  overflow-x: hidden;
  vertical-align: inherit !important;
  width: auto !important;
  height: 40px !important;
  max-width: inherit !important;
}

/* pc */
@media screen and (min-width: 760px) {
  .qa-title_pc {
    display: block;
    position: absolute;
    top: 8px;
    left: 15px;
    height: 43px;
    width: auto;
  }
  h2 .qa-bg_pc {
    overflow-x: hidden;
    vertical-align: inherit !important;
    width: auto !important;
    height: 60px !important;
    max-width: inherit !important;
  }
}

/* qaセクションタイトルバック */
.qasec-title_white {
  background-color: #f6f6f6;
  border-radius: 4px;
}

/* qaアコーディオン用矢印 */
.qa-arrow1,
.qa-arrow2,
.qa-arrow3 {
  width: 20px;
  max-width: 100%;
  position: absolute;
  right: 20px;
  top: 50%;
  margin-top: -9px;
}

/* qaアコーディオンオープン時矢印回転 */
.qa-arrow1.arrow-open,
.qa-arrow2.arrow-open,
.qa-arrow3.arrow-open {
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
  transition-duration: .1s;
}

/* qaテキスト */
.qasec-list dl:last-child {
  padding-bottom: 40px;
}

@media screen and (min-width: 760px) {
  .qasec-list dl:last-child {
    padding-bottom: 70px;
  }
}

.qasec-list dt {
  margin-bottom: 20px;
}

/* その他ラストへの指示 */
.qasec_end dl:last-child {
  padding-bottom: 0;
}

/* クエスチョン、アンサーのサイズ指定 */
.question ul,
.answer ul {
  width: 100%;
  display: flex;
}

.question ul li:first-child,
.answer ul li:first-child {
  width: 10.14%;
}

@media screen and (min-width: 480px) {
  .question ul li:first-child,
  .answer ul li:first-child {
    width: 35px;
  }
}

@media screen and (min-width: 1000px) {
  .question ul li:first-child,
  .answer ul li:first-child {
    width: 3.9%;
  }
}

.question ul li:last-child,
.answer ul li:last-child {
  width: 100%;
  margin-left: 2.89%;
  display: flex;
  align-items: center;
}

@media screen and (min-width: 480px) {
  .question ul li:last-child,
  .answer ul li:last-child {
    margin-left: 10px;
    padding-left: 10px;
  }
}

@media screen and (min-width: 1000px) {
  .question ul li:last-child,
  .answer ul li:last-child {
    margin-left: 1.13%;
    padding-left: 1.13%;
  }
}

/* クエスチョン、アンサー横の縦線 */
@media screen and (min-width: 760px) {
  .question ul li:last-child {
    border-left: 2px solid #74AFA1;
    padding-left: 10px;
  }
}

@media screen and (min-width: 760px) {
  .answer ul li:last-child {
    border-left: 2px solid #FFB599;
    padding-left: 10px;
  }
}

.answer ul span {
  display: block;
  padding-left: 1em;
  text-indent: -1em;
}

/*  初診の方へページスタイル
*==============================================================*/
.firstvisit .kv {
  border-bottom: 3px solid #009944;
}

.firstvisit-inner h2 {
  margin-bottom: 30px;
}

.firstvisit-inner h3 {
  margin: 0;
}

.firstvisit-inner .other {
  margin-top: 20px;
}

/* 囲われてる所 */
.fv-flow_listwrap {
  border: 1px solid #009944;
  border-radius: 10px;
  padding: 100px 4.34% 30px;
  margin: 60px 0 15px;
  position: relative;
}

@media screen and (min-width: 760px) {
  .fv-flow_listwrap {
    padding: 50px 6.25% 35px;
    margin: 50px 0 15px;
  }
}

/* 診察に必要なものセクション */
.fv-necessary {
  margin-bottom: 20px;
  /* 必須 */
  /* 他医療機関～ */
}

@media screen and (min-width: 760px) {
  .fv-necessary h4 {
    margin-bottom: 10px;
  }
}

.fv-necessary .first_title-s_1 {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 37px;
}

@media screen and (min-width: 760px) {
  .fv-necessary .first_title-s_1 {
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: 37px;
  }
}

.fv-necessary .first_location-img_1 {
  display: block;
  width: 57px;
  height: auto;
  margin-right: auto;
  margin-left: auto;
  background: #FFF;
  border-bottom: solid 2px #009944;
}

@media screen and (min-width: 760px) {
  .fv-necessary .first_location-img_1 {
    width: 57px;
    min-width: 57px;
    height: 31px;
    margin-right: auto;
    margin-left: 0;
    background: #FFF;
    border: solid 1px #009944;
    border-radius: 5px;
  }
}

.fv-necessary .first_title-s_2 {
  display: block;
  width: 132px;
  height: auto;
  margin-left: auto;
  margin-right: auto;
}

@media screen and (min-width: 760px) {
  .fv-necessary .first_title-s_2 {
    display: block;
    width: 226px;
    height: auto;
    margin-left: auto;
    margin-right: auto;
  }
}

.fv-necessary .first_location-img_2 {
  display: block;
  width: 152px;
  height: auto;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 20px;
  background: #FFF;
  border-bottom: solid 2px #009944;
}

@media screen and (min-width: 760px) {
  .fv-necessary .first_location-img_2 {
    width: 246px;
    min-width: 246px;
    height: 31px;
    margin-right: auto;
    margin-left: 0;
    margin-bottom: 10px;
    background: #FFF;
    border: solid 1px #009944;
    border-radius: 5px;
  }
}

.required p {
  padding-left: 1em;
  text-indent: -1em;
}

.other li {
  padding-left: 1em;
  text-indent: -1em;
}

.other p {
  padding-left: 1em;
  text-indent: -1em;
}

/* タイトル（マークのところ） */
.fv-title {
  position: absolute;
  top: -45px;
  left: 50%;
  margin-left: -45.5px;
}

@media screen and (min-width: 760px) {
  .fv-title {
    top: -35px;
    display: block;
    margin-left: 0;
  }
}

.fv-title h3 {
  margin: 0 auto 5px;
}

@media screen and (min-width: 760px) {
  .fv-title h3 {
    width: auto;
    margin: 0;
  }
}

.fv-title h3 img {
  height: 91px;
  width: auto;
}

/* 予約 */
@media screen and (min-width: 760px) {
  .fv-reservation .fv-title {
    margin-left: -85px;
  }
}

@media screen and (min-width: 760px) {
  .fv-reservation .fv-title h3 img {
    height: 66px;
    width: auto;
  }
}

.fv-reservation .fv-title p {
  width: 66px;
  margin: 0 auto;
}

.fv-reservation div:nth-child(2) {
  margin-bottom: 30px;
}

@media screen and (min-width: 760px) {
  .fv-reservation div:nth-child(2) {
    margin-bottom: 20px;
  }
}

.fv-reservation div:nth-child(2) li {
  padding-left: 1em;
  text-indent: -1em;
}

.fv-reservation div:nth-child(3) {
  margin-bottom: 30px;
}

@media screen and (min-width: 760px) {
  .fv-reservation div:nth-child(3) {
    margin-bottom: 20px;
  }
}

.fv-reservation div:nth-child(3) li {
  line-height: 1.33;
  margin-bottom: 10px;
}

@media screen and (min-width: 760px) {
  .fv-reservation div:nth-child(3) span {
    display: inline-block;
  }
}

.fv-reservation .first_location-img_3 {
  display: block;
  width: 91.5px;
  height: auto;
  margin-right: auto;
  margin-left: auto;
  background: #FFF;
  border-bottom: solid 2px #009944;
  text-align: center;
}

@media screen and (min-width: 760px) {
  .fv-reservation .first_location-img_3 {
    width: 90px;
    min-width: 90px;
    height: auto;
    margin-right: auto;
    margin-left: 0;
    background: #FFF;
    border: solid 1px #009944;
    border-radius: 5px;
  }
}

.fv-reservation .first_location-img_3 img {
  vertical-align: middle;
}

.fv-reservation .first_title-s_3 {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 71.5px;
}

@media screen and (min-width: 760px) {
  .fv-reservation .first_title-s_3 {
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: 70px;
    height: auto;
  }
}

@media screen and (min-width: 760px) {
  .fv-reservation div:nth-child(4) ul {
    display: flex;
    list-style: none;
  }
}

.fv-reservation .first_location-img_4 {
  display: block;
  width: 74.5px;
  height: auto;
  margin-right: auto;
  margin-left: auto;
  background: #FFF;
  border-bottom: solid 2px #009944;
}

@media screen and (min-width: 760px) {
  .fv-reservation .first_location-img_4 {
    width: 90px;
    min-width: 90px;
    height: auto;
    margin-right: auto;
    margin-left: 0;
    background: #FFF;
    border: solid 1px #009944;
    border-radius: 5px;
  }
}

.fv-reservation .first_location-img_4 img {
  vertical-align: middle;
}

.fv-reservation .first_title-s_4 img {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 54.5px;
}

@media screen and (min-width: 760px) {
  .fv-reservation .first_title-s_4 img {
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: 70px;
    height: auto;
  }
}

/* 受付 */
.fv-receptionist .fv-title {
  width: 92.7px;
  margin-left: -46.35px;
}

@media screen and (min-width: 760px) {
  .fv-receptionist .fv-title {
    margin-left: -109px;
    width: auto;
  }
}

@media screen and (min-width: 760px) {
  .fv-receptionist .fv-title h3 img {
    height: 66px;
    width: auto;
  }
}

.fv-receptionist li {
  padding-left: 1em;
  text-indent: -1em;
}

/* 診察 */
@media screen and (min-width: 760px) {
  .fv-examination .fv-title {
    margin-left: -75px;
  }
}

@media screen and (min-width: 760px) {
  .fv-examination .fv-title h3 img {
    height: 66px;
    width: auto;
  }
}

.fv-examination .fv-title p {
  width: 52px;
  margin: 0 auto;
}

/* 会計 */
@media screen and (min-width: 760px) {
  .fv-check .fv-title {
    margin-left: -87px;
  }
}

@media screen and (min-width: 760px) {
  .fv-check .fv-title h3 img {
    height: 66px;
    width: auto;
  }
}

.fv-check .fv-title p {
  width: 68px;
  margin: 0 auto;
}

/* その他・注意点 */
.fv-attention li {
  padding-left: 1em;
  text-indent: -1em;
}

/* 矢印 */
.f-arrow {
  text-align: center;
}

.f-arrow img {
  height: 30px;
  width: auto;
}

/* セクションボトム */
.fv-flow,
.fv-necessary,
.fv-insurance {
  margin-bottom: 50px;
}

@media screen and (min-width: 760px) {
  .fv-flow,
  .fv-necessary,
  .fv-insurance {
    margin-bottom: 70px;
  }
}

/* その他ご不明点～ */
.unknown-text {
  margin-bottom: 10px;
}

@media screen and (min-width: 760px) {
  .unknown-text {
    margin-bottom: 15px;
  }
}

/* よくある質問ボタン */
.fv-button {
  width: 286px;
  margin: 0 auto;
}

@media screen and (min-width: 760px) {
  .fv-button {
    width: 300px;
  }
}

.fv-button:hover {
  opacity: .7;
}

/* アンカー用 */
#necessary,
#flow,
#insurance,
#attention {
  padding-top: 60px;
  margin-top: -60px;
}

@media screen and (min-width: 760px) {
  #necessary,
  #flow,
  #insurance,
  #attention {
    padding-top: 100px;
    margin-top: -100px;
  }
}

/*  プライバシーポリシーページスタイル
*==============================================================*/
.pp .kv {
  border-bottom: 3px solid #009944;
}

.pp-inner h2 {
  margin-bottom: 15px;
  font-size: 18px;
  color: #2d2d2d;
}

.pp-inner .ppsec {
  margin-bottom: 30px;
}

@media screen and (min-width: 760px) {
  .pp-inner .ppsec {
    margin-bottom: 40px;
  }
}

.pp-inner ul {
  padding-left: 1em;
  text-indent: -1.4em;
}

@media screen and (min-width: 760px) {
  .pp-inner ul {
    padding-left: 0;
    text-indent: 0;
  }
}

.ppsec-1 .top-text {
  font-size: 15px;
  line-height: 1.93;
}

.other-page_tel {
  line-height: 1.2;
}

.slider {
  display: none;
}

.slider.slick-initialized {
  display: block;
}

.slick-dots {
  background-color: #fff;
  padding-bottom: 5px !important;
  bottom: -30px !important;
}
