<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "UTF-8";

/*
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;
}

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}


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;
}


hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

body {
  background-color: #FFF;
  font-family:'Avenir','Helvetica, Neue';
  font-family: Avenir,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo","Osaka","ＭＳ Ｐゴシック", "MS P Gothic",Helvetica,Verdana,Arial, sans-serif;
  font-size: 16px;
  line-height: 1.5;
  color: #333;
}
a {
  color: #5367A3;
  text-decoration: none;
}
a:hover {
  opacity: .8;
}
button:focus {
  outline: none;
}
li {
  list-style: none;
}
address {
  font-style: normal;
}

/*setting font size*/
html{
    font-size: 625%;/* 16pxに625%を掛けると100pxになるよ！ */
}
body{
    font-size: .16em;/* 通常サイズは100pxの0.16倍で16pxだよ！ここだけfont-size em！ */
}
h1{
    font-size: .2rem;/* 100pxの0.2倍だから20pxだよ！ */
    padding: .5em 0 .5em .75em;/* 20pxにemを掛けるよ！ */
}
h2{
    font-size: .12rem;/* 100pxの0.12倍だから12pxだよ！ */
    padding: 0.5em;/* 12pxにemを掛けるよ！ */
}
li{
    font-size: .16rem;/* 100pxの0.16倍だから16pxだよ！ */
}
/*/setting font size*/

/* ベースのスタイル
--------------------------------- */

/* -----------------------------------
header
-----------------------------------*/
@media screen and (min-width: 800px){
  .header{
    background-color: #FFF;
    position: relative;
    z-index: 2;
  }
}
.header__option_right {
  float: right;
}
.header__option_right_text{
  text-align: left;
  font-size: .14rem;
  padding: .1rem 0;
}
.header__option_right_text2{
  text-align: center;
  font-size: .14rem;
  padding: .1rem 0;
}
.header__option_right_box{
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-align-items:center;
  align-items: center;
}

.header__option_btn {
  width: 130px;
}
.header__option_btn_icon {
  display: block;
}
.header__option_address {
  display: block;
  font-size: 12px;
}
.header__option-sp {
  display: none;
  border-top: 3px solid #284B77;
}
@media screen and (max-width: 920px){
  .header__option_innerleft{
    display: none;
  }
}


/* /header */

.seo__area {
  background: #D5D5D5;
}
.header__links_text {
  font-size: .10rem;
}

.header__contact {
  color: #333;
  line-height: 1;
}
@media screen and (max-width: 799px){
  .drawer {
    display: none;
  }
  .header__sp_contact {
    display: none;
  }
}


.l-page{
  background: #eee;
}

@media (min-width: 1380px){
  .l-page__bg {
      right: 30%;
  }
}
@media (max-width: 1379px) and (min-width: 569px){
  .l-page__bg {
      right: 0;
  }
}

@media (min-width: 801px){
  .l-page__bg {
      opacity: .6;
      position: fixed;
      top: 0;
      bottom: 0;
      left: 26.66667%;
      background: -webkit-linear-gradient(left,#dedede 0,#fff 100%);
      background: linear-gradient(to right,#dedede 0,#fff 100%);
  }
}

.common__main {
  position: relative;
  width: 100%;
  z-index: 2;
}

.catchphrase img{
  padding: .04rem 0 0;
  vertical-align: bottom;
}
@media (max-width: 799px){
  .catchphrase img{
    width: 80%;
  }
}

/* ----------------------
cta
---------------------- */
.cta__tel {
  font-size: .24rem;
  font-weight: bold;
}
.cta__tel a{
  color: #000;
}
.cta__fax {
  font-size: .24rem;
  font-weight: bold;
}

/* ----------------------
cta__contact-reservation
---------------------------*/
.cta__contact-reservation {
  overflow: hidden;
  font-size: .12rem;
}
.cta__contact-reservation &gt; li:first-of-type {
  float: left;
}
.cta__contact-reservation &gt; li:last-of-type {
  float: right;
}
.cta__contact{
  color: #FFF;
  width: 49%;
  background: #f6778e;
  position: relative;
  border-bottom: 3px solid #a74871;
  border-radius: .04rem;
}
.cta__contact a{
  padding: .08rem;
  display: block;
  color: #FFF;
  font-size: .14rem;
}
.cta__reservation{
  color: #FFF;
  width: 49%;
  background: #44cce6;
  border-bottom: 3px solid #2B6E81;
  border-radius: .04rem;
  font-size: .14rem;
}
.cta__reservation a{
  padding: .08rem;
  display: block;
  color: #FFF;
}

/* ----------------------
tel
---------------------------*/
.cta__tel_time {
  font-size: .12rem;
  font-weight: bold;
  text-align: center;
  padding-bottom: .06rem;
  letter-spacing: .01rem;
  border-bottom: 1px solid #ccc;
}
#drawer .cta__tel_time {
  border-bottom: 1px solid #CCC;
}
/* ----------------------
.top__cta
---------------------- */
.top__cta {
  width: 100%;
  margin: 0 auto;
}

/*.top__cta a{
  color: #fff;
  padding: .16rem;
  font-size: .14rem;
  font-weight: 400;
  letter-spacing: .04rem;
}*/
@media (min-width: 800px){
  .top__cta {
    width: 40%;
  }
/*  .top__cta a{
    padding: .2rem;
    font-size: .2rem;
  }*/
}

/* ----------------------
footer cta
---------------------- */
.footer__cta-wrap{
  display: none;
}
@media screen and (max-width: 799px){
  .footer__cta-wrap{
    display: block;
  }
  #footer-cta {
    position: fixed;
    display: block;
    right: 0;
    width: 100%;
    bottom: 0px;
    z-index: 5;
  }
}

/* header__contact
---------------------------- */
.header__contact_tel_time {
  font-size: .24rem;
  font-weight: bold;
  font-size: .12rem;
  font-weight: bold;
  text-align: center;
  letter-spacing: .01rem;
}
.header__contact_tel-icon {
  border: 1px solid #000;
  border-radius: 50%;
  width: 25px;
  height: 25px;
  color: #000;
  font-size: 18px;
  vertical-align: top;
  margin-top: 3px;
}
.header__contact_tel-icon:before {
  line-height: 24px;
}
.header__contact_tel {
  display: block;
}
.header__contact_time {
  font-size: 12px;
}
/* header Schedule Access Contact */
.sac {
  text-align: center;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-align-items:center;
  align-items: center;
  border: 1px solid #E0E0E0;
}
.sac_btn{
  width: 100%;
  border-right: 1px solid #E0E0E0;
  line-height: .22rem;
}
.sac_btn a{
  display: block;
  padding: .08rem .12rem;
  background: linear-gradient(to bottom, white,white 50%, #eee);
}
.sac_btn:last-child{
  border-right: none;
}
.sac_icon {
  /*color: #CCCC;*/
  color: #d14545;
  font-size: .20rem;
}
.sac_text{
  color: #CA311C;
  font-size: .12rem;
}
/* header
------------------------------ */
.header__main {
  position: relative;
}
.header__main_logo-top {
  position: absolute;
  width: 148px;
  top: -20px;
  left: 65px;
}
.header__main_logo {
  width: 280px;
  position: absolute;
  height: 52px;
  top: -76px;
  padding-left: .2rem;
}
.header__sp {
  display: none;
  border-top: 3px solid #284B77;
}
@media screen and (min-width: 800px) and (max-width: 1000px) {
  .header__option_address {
    display: none;
  }
  .header__main_logo {
    height: 48px;
    top: -80px;
  }
  .sac_text{
    font-size: .1rem;
  }
  .header__contact_tel {
    font-size: .2rem;
  }
}
@media screen and (max-width: 800px) {
  .header {
    border-bottom: 1px solid #EFEFEF;
  }
  .header__main {
    display: none;
  }
  .header__option {
    display: none;
  }
  .header__option-sp {
    display: block;
  }
  .header__option-sp_tel {
    margin-top: 10px;
    display: inline-block;
    color: #000000;
  }
  .header__option-sp_tel-icon {
    text-align: center;
    border: 1px solid #000000;
    border-radius: 50%;
    width: 25px;
    height: 25px;
    font-size: 18px;
    vertical-align: top;
    margin-top: 3px;
  }
  .header__option-sp_tel-icon:before {
    line-height: 24px;
  }
  .header__option-sp_tel-text {
    font-size: 20px;
  }
  .header__option-sp_contact-btn {
    float: right;
    max-width: 180px;
    width: calc(100% - 190px) !important;
    padding: 3px 10px !important;
  }
  .header__sp {
    position: fixed;
    z-index: 30;
    top: 0;
    width: 100%;
    background: #FFF;
    border-bottom: 1px solid #FAFAFA;
    -webkit-transition: top .3s;
    transition: top .3s;
  }
  .header__sp_inner {
    position: relative;
    height: 70px;
    border-bottom: 1px solid #FAFAFA;
    background-color: #FFF;
  }
  .header__sp_height {
    height: 44px;
  }
  .header__sp_logo {
    width: 210px;
    position: absolute;
    top: calc(50% - .21rem);
    left: .16rem;
  }
  .header__sp_menu {
    border-left: 1px solid #CCC;
    position: absolute;
    right: 0;
    top: 5px;
  }

  .header__sp_menu .text {
    color: #000000;
    font-size: 8px;
    position: absolute;
    top: 20px;
    width: 100%;
    text-align: center;
  }
  .header__sp_contact {
    padding: 2px 0;
  }
}
/* footer
---------------------------- */
.footer {
  background-color: #FFFFFF;
  position: relative;
  z-index: 2;
  width: 100%;
  margin-bottom: 80px;
}
@media screen and (min-width: 800px){
  .footer {
    margin-bottom: 0px;
  }
}
.footer__wrapper{
  max-width: calc(1200px + 20px);
  margin: auto;
}
@media screen and (min-width: 800px){
  .footer__sp{
  padding-top: 700px;
  display: flex;
  display: -webkit-flex;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  }
  .footer__sp_info{
  margin-top: .3rem;
  -webkit-flex-grow: 1;
  flex-grow: 1;
  font-size: .12rem;
  }
  .footer__sp_timeschedule{
  -webkit-flex-grow: 1;
  flex-grow: 1;
  margin-top: .1rem;
  margin-right: .1rem;
  }
  .footer__sp_tel{
  -webkit-flex-grow: 1;
  flex-grow: 3;
  flex-basis: 130px;
  }
  .footer__main{
  height: 700px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0 auto;
  }
}

.footer__contact-sp {
  display: none;
}
.footer__main {
  background-color: #F9F9F9;
}
.footer__main_bg {
  background: url("/img/pattern-grid@2x.png") repeat;
  padding: 50px 20px 20px;
}
.footer__menu {
  width: 100%;
  display: table;
  table-layout: fixed;
  padding-bottom: .2rem;
}
.footer__menu_item {
  display: table-cell;
  width: calc(100% / 4);
  padding: 0 .16rem;
  border-left: 1px solid #ccc;
}
.footer__menu_title {
  font-size: 20px;
  margin-bottom: 20px;
  color: #284B77;
}
.footer__menu_title .icon {
  display: none;
}
.footer__menu_separator {
  margin: 40px 0 30px;
  border-color: #95989A;
}
.footer__child-menu{
  margin-left: .16rem;
}
.footer__child-menu_item {
  font-size: .14rem;
  margin-bottom: .03rem;
  position: relative;
}
.footer__child-menu_item:before {
  position: absolute;
  content:"";
  width: .06rem;
  height: .06rem;
  top: 50%;
  left: -1em;
  margin-top: -.04rem;
  border-radius: 50%;
  background: #284B77;
}
@media screen and (max-width: 799px){
  .footer__child-menu_item {
    padding-left: 0;
  }
  .footer__child-menu_item:before {
    position: absolute;
    content:"";
    width: .06rem;
    height: .06rem;
    top: 50%;
    left: .8em;
    margin-top: -.04rem;
    border-radius: 50%;
    background: #284B77;
  }
}
@media screen and (max-width: 1000px){
  .footer__child-menu_item {
    font-size: .12rem;
  }
}
/* drawer
------------------------------------- */
@media screen and (max-width: 799px){
  .drawer__menu .footer__child-menu_item:before {
    display: none;
  }
  .footer__main .footer__child-menu_item:before {
    background: #777777;
  }
}


/* footer
------------------------------------- */
.footer__child-menu_item a {
  color: #505050;
}
.footer__child-menu_item .icon {
  display: none;
}
.footer__social {
  margin-top: 30px;
}
.footer__social_link {
  display: inline-block;
  font-size: .3rem;
  padding: .06rem;
}
.footer__social-sp {
  display: none;
}
.footer__payment-sp {
  display: none;
}

.footer__info {
  padding: 28px 0 32px;
  display: table;
  width: 100%;
}
.footer__info_company {
  display: table-cell;
  vertical-align: top;
}
.footer__info_name {
  font-size: 16px;
  font-weight: bold;
}
.footer__info_name span {
  font-size: 14px;
  font-weight: normal;
}
.footer__info_address {
  font-size: 14px;
}
.footer__info_map {
  color: #0071AC;
  margin-left: 5px;
}
.footer__info_contact {
  display: table-cell;
  text-align: right;
}
.footer__info_tel {
  font-size: 32px;
  font-weight: bold;
  margin-right: 8px;
}
.footer__info_btn {
  width: 200px;
}
.footer__sub {
  font-size: .14rem;
  color: #646666;
  text-align: center;
  padding: .2rem 0 0;
}
.footer__sub-menu {
  margin-bottom: 16px;
}
.footer__sub-menu_item {
  display: inline-block;
  border-right: 1px solid #E0E0E0;
  padding: 0 20px;
}
.footer__sub-menu_item a {
  color: #777777 !important;
  font-size: .12rem;
}
.footer__sub-menu_item:last-child {
  border-right: none;
}
.footer__copy-right {
  color: #FFF;
  padding: .1rem;
  background-color: #284B77;
  border-bottom: 4px solid #CA311C;
}
.footer__copy-right_sp {
  display: none;
}
.footer__sp_site{
  text-align: center;
  margin-bottom: .2rem;
}
.footer__sp_site img{
  width: 274px;
}
.footer__sp_department{
  font-size: .14rem;
  padding-bottom: .2rem;
}
.footer__sp_address{
  text-align: center;
}
.footer__sp_time {
  font-size: .12rem;
}
.footer__sp_timeschedule{
  margin-top:.3rem;
  text-align: center;
}
.footer__sp_tel{
  margin-top:.3rem;
  padding: .12rem;
  text-align: center;
  background-color: #F9F9F9;
}
.footer__sp_contact {
  display: none;
}
@media screen and (max-width: 799px){
  .footer__sp_contact {
    display: block;
    background: #FFF;
    border-bottom: 1px solid #CCC;
  }
}

@media screen and (max-width: 799px) {
  .footer__sp {
    display: block;
    text-align: center;
    background: #FAFAFA;
    padding: .3rem 0 0;
  }
  .footer__sp_logo {
    width: 1.9rem;
  }
  .footer__sp_info {
    padding-bottom: .18rem;
    border-bottom: 1px solid #CCC;
  }
  .footer__sp_tel {
    padding: .18rem;
  }
  .footer__sp_time {
    font-size: .14rem;
    color: #505050;
  }
  .footer__sp_site {
    padding-bottom: .2rem;
  }
  .footer__sp_address {
    font-size: .12rem;
  }
  .footer__sp_btn {
    width: 200px;
  }

  .footer__main {
    background-color: #FFF;
  }
  .footer__main_bg {
    background: #FFF;
    padding: 0;
  }
  .footer__menu {
    display: block;
    border-bottom: none;
  }
  .footer__menu_item {
    display: block;
    width: 100%;
    border-bottom: 1px solid #E0E0E0;
  }
  .footer__menu_title {
    padding: 10px 20px;
    font-size: .14rem;
    font-weight: normal;
    margin: 0;
  }
  .footer__menu_title .icon {
    display: inline-block;
    float: right;
    margin-top: 2px;
    font-size: 22px;
    color: #E0E0E0;
    -webkit-transition: all .3s;
    transition: all .3s;
  }
  .footer__menu_title.active .icon {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
  }
  .footer__menu_separator {
    display: none;
  }
  .footer__child-menu {
    display: none;
  }
  .footer__child-menu br {
    display: none;
  }
  .footer__child-menu_item {
    margin: 0;
  }
  .footer__child-menu_item a {
    display: block;
    padding: 10px 20px 10px 40px;
    border-top: 1px solid #E0E0E0;
    background: #FAFAFA;
    font-size: .12rem;
  }
  .footer__child-menu_item .icon {
    display: inline-block;
    float: right;
    font-size: 22px;
    color: #E0E0E0;
  }
  .footer__social {
    display: none;
  }
  .footer__social-sp {
    display: block;
    font-size: .14rem;
    margin-bottom: .1rem;
    margin-left: .3rem;
  }
  .footer__payment{
    display: none;
  }
  .footer__payment-sp{
    width: 240px;
    display: block;
    margin-bottom: .2rem;
    margin-left: .2rem;
  }
  .footer__info {
    display: none;
  }
  .footer__sub {
    text-align: left;
    font-size: 12px;
    padding: 0;
  }
  .footer__sub-menu {
    padding: 0 20px;
  }
  .footer__sub-menu_item {
    padding: 0 8px;
  }
  .footer__sub-menu_item:first-child {
    padding-left: 0;
  }
  .footer__copy-right {
    padding: 15px 20px;
    background: #284B77;
    border-bottom: 6px solid #B9312B;
  }
  .footer__copy-right_pc {
    display: none;
  }
  .footer__copy-right_sp {
    display: block;
  }
}/* media footer__ maxwidth 800*/


/* nav
------------------------- */
.nav {
  border-bottom: 1px solid #EFEFEF;
  background-color: #284B77;
  position: relative;
  z-index: 2;
}
.nav__list {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-align-items:center;
  align-items: center;
}
.nav__list_item {
  margin-bottom: -1px;
  -webkit-flex-grow: 1;
  flex-grow: 1;
  text-align: center;
}
.nav__list_item .link {
  display: block;
  font-size: .14rem;
  color: #FFF;
  padding: .12rem;
}
.nav__list_item .link.active {
  color: #284B77;
  background: #eee;
}
.nav__list_item .link.active:hover {
  cursor: default;
  text-decoration: none;
}
.nav__list_item .link:not(.active):hover {
  opacity: 1;
  color: #284B77;
  text-decoration: none;
  background-color: #BAC2CC;
}
.nav__list_item .link:not(.active):hover &gt; span{
  border-bottom: 1px solid red;
}
@media screen and (min-width: 800px) and (max-width: 1000px) {
  .nav__list_item:first-child {
    display: none;
  }
}
@media screen and (max-width: 799px) {
  .nav {
    display: none;
  }
}


/* drawer
--------------------------------- */
.drawer {
  display: none;
}
.drawer__info {
  color: #333;
  font-size: .12rem;
  text-align: center;
  letter-spacing: .01rem;
  margin-bottom: .12rem;
  padding-bottom: .06rem;
  border-bottom: 1px solid #CCC;
}

/* overlay
---------------------------------- */
.overlay {
  display: none;
  background: #505050;
  opacity: 0.6;
  position: fixed;
  z-index: 50;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

/* drawer__cta
--------------------------------- */
.top__cta .drawer__cta {

}

.drawer__cta {
  margin: 6px 0;
  text-align: center;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-around;
  justify-content: space-around;
  -webkit-align-items:center;
  align-items: center;
  flex-basis: 50%;
  flex-wrap: wrap;
}
/*.drawer__cta &gt; div:first-of-type{
  margin-right: .05rem;
}*/
.drawer__cta &gt; div{
  -webkit-flex-grow: 1;
  /*font-weight: bold;*/
}
.drawer__cta_inner {
  width: 100%;
}
@media screen and (max-width: 799px) {
  .drawer {
    display: block;
    position: fixed;
    width: calc(100% - 40px);
    height: 100%;
    top: 0;
    bottom: 0;
    overflow: scroll;
    right: -800px;
    z-index: 100;
    background: #FAFAFA;
  }
  .drawer__header {
    position: relative;
    height: 55px;
    border-bottom: 1px solid #ccc;
  }
  .drawer__header_logo {
    position: absolute;
    width: 170px;
    top: .04rem;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
  }
  .drawer__header_menu {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 57px;
    background-color: #284B77;
  }
  .drawer__header_menu .hamburger {
    position: absolute;
  }
  .drawer__header_menu .hamburger span {
    background: #FFF;
  }
  .drawer__header_menu .text {
    color: #FFF;
    font-size: 8px;
    position: absolute;
    top: 28px;
    left: 0;
    right: 0;
    width: 100%;
    text-align: center;
  }
  .drawer__menu {
    padding: 0 .1rem;
    margin-bottom: 45px;
  }
  .drawer__menu_item {
    border-bottom: 1px solid #E0E0E0;
  }
  .drawer__menu_item_title {
    display: block;
    padding: .10rem;
    font-size: .14rem;
  }
  .drawer__menu_item_title .icon {
    float: right;
    margin-top: 2px;
    font-size: 22px;
    color: #E0E0E0;
    -webkit-transition: all .3s;
    transition: all .3s;
  }
  .drawer__menu_item_title.active .icon {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
  }
  .drawer__child-menu {
    display: none;
  }
  .drawer__child-menu.open {
    display: block;
  }
  .drawer__child-menu_item {
    display: block;
    padding: 10px;
    border-bottom: 1px solid #E0E0E0;
    background: #FFF;
  }
  .drawer__child-menu_item .icon {
    float: right;
    margin-top: 2px;
    font-size: 22px;
    color: #E0E0E0;
  }
  .drawer__info {
    color: #333;
    font-size: .12rem;
    text-align: center;
    letter-spacing: .01rem;
    margin-bottom: .12rem;
  }
  .drawer__info_site {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 5px;
  }
  .drawer__info_address {
    font-size: 14px;
    margin-bottom: 5px;
  }
  .drawer__info_map {
    font-size: 14px;
    color: #0071AC;
    text-decoration: underline;
  }
}

/* breadcrumbs
----------------------------- */
.breadcrumbs {
  max-width: calc(1200px + 20px);
  margin: auto;
  padding: .12rem .02rem .12rem 0;
  font-size: .1rem;
  overflow: hidden;
}
.breadcrumbs__list {
  float: right;
}
.breadcrumbs__list_item {
  display: inline-block;
}
.breadcrumbs__list_text {
  color: #1C80DC;
  font-size: .13rem;
}
.breadcrumbs__list_arrow {
  color: #000000;
  padding: 0 10px;
}
@media screen and (max-width: 799px) {
  .breadcrumbs {
    display: none;
  }
}

/* btn
----------------------------- */
.btn {
  padding: .16rem;
  font-size: .14rem;
  border: none;
  border-radius: 6px;
  outline: none;
  display: inline-block;
  text-align: center;
  vertical-align: top;
  background-color: #FFF;
}
.btn:hover {
  opacity: 1;
  text-decoration: none;
}
.btn__first {
  color: #FFF;
  background-color: #4ab4e6;
  border-radius: 0;
  border-bottom: 3px solid #477aaa;
  border-radius: .28rem;
}
@media screen and (min-width: 800px){
  .btn__first {
  margin-top: 2px;
  }
}
.btn__first:hover {
  cursor: pointer;
}
.btn__first:active {
  -webkit-transform: translateY(3px);
  transform: translateY(3px);
  filter:alpha(opacity=50);
}
.top__reservation-wrapper .btn__second {
  border-radius: .04rem;
}
.btn__second {
  color: #FFF;
  background-color: #fa70a9;
  border-radius: 0;
  border-bottom: 3px solid #672f40;
  border-radius: .28rem;
}
.btn__second img{
  width: 40px;
}
@media screen and (min-width: 800px){
  .btn__second {
  margin-top: 2px;
  }
}
.btn__second:hover {
  cursor: pointer;
}
.btn__second:active {
  -webkit-transform: translateY(3px);
  transform: translateY(3px);
  filter:alpha(opacity=50);
}

.btn__common {
  color: #333333;
  background-color: #FDA34D;
  border-bottom: 3px solid #BB6C2E;
  border-radius: .06rem;
  font-size: .2rem;
  letter-spacing: .04rem;
  font-weight: bold;
}

.btn__common2 {
  color: #333333;
  background-color: #6d96ca;
  border-bottom: 3px solid #446998;
  border-radius: .06rem;
  font-size: .2rem;
  letter-spacing: .04rem;
  font-weight: bold;
}
.btn__common3 {
  color: #333333;
  background-color: #C3C3C3;
  border-bottom: 3px solid #7d7d7d;
  border-radius: .06rem;
  font-size: .2rem;
  letter-spacing: .04rem;
  font-weight: bold;
}
.btn__common4 {
  color: #ffffff;
  background-color: #bb4f4f;
  border-bottom: 3px solid #8c2929;
  border-radius: .06rem;
  font-size: .2rem;
  letter-spacing: .04rem;
  font-weight: bold;
}
.btn__common5 {
  color: #333333;
  background-color: #f5d80e;
  border-bottom: 3px solid #8c8229;
  border-radius: .06rem;
  font-size: .2rem;
  letter-spacing: .04rem;
  font-weight: bold;
}
.btn__common6 {
  color: #333333;
  background-color: #8bb74e;
  border-bottom: 3px solid #4d6d20;
  border-radius: .06rem;
  font-size: .2rem;
  letter-spacing: .04rem;
  font-weight: bold;
}


.btn__site {
  display: inline-block;
  color: #fff;
  background-color: #284b77;
  margin-top: 10px;
  border-radius: 2px;
  font-size: 14px;
  padding: 10px;
  letter-spacing: .04rem;
  font-weight: 400;
}
.btn__site:hover{
  opacity: 0.5;
}

/* modal
------------------------------*/
.btn__dark {
  background: #333333;
  letter-spacing: .04rem;
}
.btn__dark a{
  display: block;
  color: #ffffff;
  font-size: .14rem;
}
.btn__dark:hover {
  cursor: pointer;
  background: #555555;
}
.btn__dark:active {
  -webkit-transform: translateY(3px);
  transform: translateY(3px);
  filter:alpha(opacity=50);
}

.btn__normal{
  background: #FDA34D;
  letter-spacing: .04rem;
  color: white;
  text-align: left;
}
.btn__normal a{
  display: block;
  color: #ffffff;
  font-size: .18rem;
}
.btn__normal:hover {
  background-color: #F76831;
}
.btn__normal:active {
  filter:alpha(opacity=50);
}



.btn__submit {
  background: #FDA34D;
  letter-spacing: .04rem;
}
.btn__submit a{
  display: block;
  color: #ffffff;
  font-size: .18rem;
}
.btn__submit:hover {
  cursor: pointer;
  background: #F76831;
}
.btn__submit:active {
  -webkit-transform: translateY(3px);
  transform: translateY(3px);
  filter:alpha(opacity=50);
}
.modal-btn-wrap .btn{
  display: block;
  width: 90%;
  margin: .16rem auto 0;
}
.modal-btn-wrap .btn__dark{
  width: 60%;
  padding: .1rem;
}
.top__cta .drawer__cta div{
  padding: .04rem;
}

/* /modal
------------------------------*/

/* hamburger
----------------------------- */
.hamburger {
  width: 56px;
  height: 56px;
  display: inline-block;
  position: relative;
  background: transparent;
  border: none;
}
.hamburger.close .top {
  -webkit-transform: rotate(-45deg) translateY(0px);
  transform: rotate(-45deg) translateY(0px);
}
.hamburger.close .middle {
  display: none;
}
.hamburger.close .bottom {
  -webkit-transform: rotate(45deg) translateY(0px);
  transform: rotate(45deg) translateY(0px);
}
.hamburger span {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
  width: 40%;
  height: .03rem;
  display: block;
  background: #284B77;
  position: absolute;
  top: 50%;
  left: calc(50% - .1rem);
}
.hamburger span.middle {
  background: #C42F16;
}
.hamburger .top {
  -webkit-transform: translateY(-6px);
  transform: translateY(-6px);
}
.hamburger .bottom {
  -webkit-transform: translateY(6px);
  transform: translateY(6px);
}


/* page-top
--------------------- */
.page-top {
  display: none;
  position: fixed;
  right: calc((100% - 1120px) / 2);
  bottom: 20px;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  text-align: center;
  border: none;
  background: #FFF;
  color: #284B77;
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
  z-index: 5;
}
.page-top:hover {
  opacity: .8;
  cursor: pointer;
}
.page-top__icon {
  font-size: 40px;
  margin-top: -2px;
}
.page-top__text {
  font-size: 20px;
  display: block;
  margin-top: -3px;
}
@media screen and (min-width: 800px) and (max-width: 1000px) {
  .page-top {
    right: 20px;
  }
}
@media screen and (max-width: 799px) {
  .page-top {
    right: 8px;
    width: 50px;
    height: 50px;
    bottom: 104px;
  }
  .page-top__icon {
    font-size: 31px;
    margin-top: -3px;
  }
  .page-top__text {
    display: none;
  }
}
/*/ page-top
-------------------------- */

/* dropdown menue
-------------------------- */
/* mddNav（ドロップダウンメニュー全体とナビボタン）
------------------------------------- */
@media (min-width: 799px){
  #mddNav {
    position: relative;
    z-index: 100;
    width: 100%;
    height: 45px;
    background: #ebebeb;
    background:-webkit-linear-gradient(#284B77 45%, #284B77 46%, #284B77 55%);
    background:-o-linear-gradient(#284B77 45%, #284B77 46%, #284B77 55%);
    background:linear-gradient(#284B77 45%, #284B77 46%, #284B77 55%);
    border-top: #aaa 1px solid;
    border-bottom: #aaa 1px solid;
  }
  #mddNav &gt; div &gt; ul &gt; li &gt; a {
    transition: all 0.04s linear;
  }
  #mddNav .mddWrap {
    /*left: 0;*/
    /*width: 100%;*/
    /*height: 250px;*/
    position: absolute;
    top: .45rem;
    width: 20%;
    z-index: 100;
    overflow: hidden;
    display: none;
    text-align: center;
    background-color: #efefef;
    box-shadow: 1px 1px 10px rgba(0,0,0,0.2);
  }
  #mddNav .mddWrap .mddInner {
    margin: 0 auto;
    min-height: 1rem;
    line-height: 1.5em;
    text-align: left;
  }
  .dropContent {
    display: flex;
    flex-wrap: wrap;
  }
  .dropContent &gt; li{
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    background-color: #FFF;
    margin: .02rem;
  }
  .dropContent a{
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    font-size: .14rem;
    color: #284B77;
    padding: .2rem;
  }
}/* /@media min-width(799px)*/
@media screen and (min-width: 800px) and (min-width: 1220px){
  #mddNav .mddWrap {
    width: 2.5rem;
  }
}
/* --------------------------------
.mddNav
-------------------------------- */

/* --------------------------------
.slider
---------------------------------*/
.slider{
  position: relative;
  width: 100%;
  height: auto;
}
.fade-item {
  position: relative;
  width: 95%;
  max-width: 1220px;
  margin: 40px auto 40px auto;
  display: none;
}
.fade-item.slick-initialized{
  display: block;
}
.fade-item img{
  width: 100%;
  height: auto;
}
.fade-item .slick-dots {
  position: absolute;
  bottom: 1vh;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
}
div.bg-slider__title{
  width: 100%;
  position: absolute;
  top: 18vw;
  left: 0;
  right: 0;
  margin:0 auto;
  font-weight: bold;
  font-size: .18rem;
  text-align: center;
  color: #FFF;
  letter-spacing: .02rem;
  text-shadow: 0 0 10px rgba(0,0,0,0.6);
}
@media screen and (max-width: 799px) {
  .main-visual {
  width: 90%;
  margin: 0 auto;
  margin-top: 15px;
  }
  .fade-item {
  width: 100%;
  margin: 0px;
  }
  .slick-dotted.slick-slider {
    margin-bottom: 0px !important;
  }
  div.bg-slider__title {
  width: 100%;
  top: 18vw;
  font-size: 4vw;
  }
}
@media screen and (min-width: 800px) and (max-width: 1220px) {
  div.bg-slider__title {
  font-size: 3vw;
  letter-spacing: .04rem;
  }
}
@media screen and (min-width: 1221px){
  div.bg-slider__title{
  width: 70%;
  top: 2.4rem;
  font-size: .34rem;
  letter-spacing: .08rem;
  }
}


/* common */
.inner {
  max-width: calc(1200px + 20px);
  margin: auto;
}
@media screen and (max-width:799px) {
  .inner {
    padding: 0;
  }
}
.clearfix:after {
  content: "";
  display: block;
  clear: both;
}
.common__content p {
/*  letter-spacing: .01rem;*/
  line-height: .26rem;
}
/* article content */
.contact h1 {
  font-size: .3rem;
  color: #28395a;
  margin: 20px 0 25px;
  text-align: center;
}
@media screen and (max-width:768px) {
  .contact h1 {
    font-size: .16rem;
  }
}
.common__headline__inner{
  max-width: calc(1200px + 20px);
  margin: auto;
  padding: .4rem;
  text-align: center;
  box-shadow: 1px 1px 10px rgba(0,0,0,0.2);
}
/* with image*/
.common__headline.with-image{
  background-size: cover;
  background-position: center;
  padding: 40px 0 0;
  box-shadow: 1px 1px 10px #777;
}
@media screen and (max-width: 799px){
  .common__headline.with-image{
    padding: 140px 0 0;
  }
}

.common__headline.with-image .common__headline__inner {
  max-width: calc(850px);
  background-color: none;
  box-shadow: none;
}
@media screen and (max-width: 799px){
  .common__headline.with-image .common__headline__inner {
    margin-bottom: 10px;
  }
}

/* bg-image */
.bg-doc {
  background-image: url(../dock/img/m101/dock01.jpg);
}
.bg-beginner {
  background-image: url(../outpatient/img/m201/main01.jpg);
}
.bg-comprehensive{
  background-image: url(../outpatient/img/m202/main01.jpg);
}
.bg-lifestyle{
  background-image: url(../outpatient/img/m203/main01.jpg);
}
.bg-sleep-nosmoke{
  background-image: url(../outpatient/img/m204/main01.jpg);
}
.bg-facility{
  background-image: url(../outpatient/img/m205/main04.jpg);
}
.bg-ladies{
  background-image: url(../outpatient/img/ladies/main01.jpg);
}
.bg-cooperate{
  background-image: url(../outpatient/img/m206/main01.jpg);
}
.bg-company{
  background-image: url(../company/img/m600/main01.jpg);
}
.bg-drip{
  background-image: url(../free-practice/img/m301/main01.jpg);
}
.bg-aga-ed{
  background-image: url(../free-practice/img/aga-ed/main01.jpg);
}
.bg-gf{
  background-image: url(../dock/img/gf/main01.jpg);
}
/* /bg-image */

/* headline */
@media screen and (max-width: 799px){
  .common__headline__inner{
    padding: 0;
  }
}
.common__headline__inner .title-parent{
  color: #CA311C;
  font-size: .16rem;
  padding-top: .14rem;
  letter-spacing: .02rem;
  background-color: #FFF;
}
.common__headline__inner .title-child{
  color: #284B77;
  font-size: .24rem;
  padding: 0 0 .1rem;
  letter-spacing: .06rem;
  background-color: #FFF;
}
.title-single{
  padding: .14rem;
  background-color: #FFF;
}
@media screen and (max-width: 799px){
  .common__headline__inner .title-parent{
    color: #CA311C;
    font-size: .12rem;
    padding-top: .1rem;
    letter-spacing: .01rem;
    background-color: #eee;
  }
  .common__headline__inner .title-child{
    font-size: .18rem;
    letter-spacing: .02rem;
    background-color: #eee;
    padding-bottom: .3rem;
  }
  .common__headline__inner .title-single{
    color: #284B77;
    font-size: .18rem;
    letter-spacing: .02rem;
    background-color: #eee;
    padding: .1rem;
  }
  .with-image .title-child{
    padding-bottom: .1rem;
  }
}
.common__article {
  padding: .24rem 0 .4rem;
  background: none;
}

/* ----------------------------
sitemap
---------------------------- */
.flex-width-25{
  width: 25%;
  padding-right:.2rem;
}
.sitemap .flex-width-25{
  width: 100%;
  padding:0 .12rem;
  border-left: 5px solid #eeeeee;
}

.sitemap .jp__xsmall{
  padding: 0 .5em;
}
@media (min-width: 800px){
  .sitemap .flex-width-25{
    width: 25%;
  }
}

/* content archtecture */
.common__contentwrapper{
  max-width: calc(1200px + 20px);
  margin: auto;
  overflow: hidden;
}
.common__content{
  margin-right: 0;
  width: calc(100% - 260px);
  display: inline-block;
  background: #FFF;
  padding: .6rem;
  box-shadow: 0 0 10px -5px rgba(0, 0, 0, 0.6);
  -moz-box-shadow: 0 0 10px -5px rgba(0, 0, 0, 0.6);
  -webkit-box-shadow: 0 0 10px -5px rgba(0, 0, 0, 0.6);
}
@media (min-width: 800px) and (max-width: 1000px){
  .common__content{
    padding: .2rem;
  }
}
.no-sidebar{
  width: calc(100%);
}

/* headline */
.common__content__headline{
  color: #284B77;
  font-size: .34rem;
  margin-bottom: .2rem;
}
.common__content__headline .jp__large {
  font-size: .3rem;
  font-weight: bold;
  line-height: 1.5;
  padding: 0.02rem 0 0.06rem 0;
  border-bottom: 2px solid #284B77;
}
.common__content__headline .en__large {
  font-size: .14rem;
  color: #CA311C;
}
@media screen and (max-width: 799px){
  .common__content__headline .jp__large {
    font-size: .2rem;
  }
  .common__content__headline .en__large {
    font-size: .07rem;
    display: none;
  }
}
/*/ headline */

/* menue */
.menue__list{
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content:space-between;
  justify-content: space-between;
  align-items: center;
  align-content: space-around;
}
.menue__list_item_half{
  flex-basis: 49%;
  background-color: #CCC;
  margin-bottom: .2rem;

}
.menue__wrap a{
  background-color: #CCC;
}
/*/ menue */

/* common article*/
.article__sidebar {
  float: right;
  width: 255px;
  padding: 0 0 0 10px;
}

@media screen and (max-width: 799px) {
  .article__main {
    width: 100%;
    padding: 0 10px;
    margin-right: 0;
  }
  .article__sidebar {
    display: none;
  }
  .common__content {
    margin-right: 0px;
    padding: .1rem;
    width: 100%;
    display: block;
    box-shadow: 0 10px 10px -5px rgba(0, 0, 0, 0.6);
    -moz-box-shadow: 0 10px 10px -5px rgba(0, 0, 0, 0.6);
    -webkit-box-shadow: 0 10px 10px -5px rgba(0, 0, 0, 0.6);
  }
}


/* dl__horisontal */
.dl__horizontal{
  display: inline-block;
}
.dl__horizontal_dt{
  display: inherit;
  color: #333333;
  margin-right: .1rem;
}
.dl__horizontal_dd{
  display: inherit;
  background: #fff;
}
/* /dl__horisonzal */

/*cooperate*/
.footer__cooperate{
  padding: .12rem .12rem 0;
  text-align: left;
  background-color: #F9F9F9;
  width: 50%;
  margin: 0 auto;
}
.footer__cooperate .cta__tel_time {
  color: #5367A3;
  font-size: .12rem;
  font-weight: bold;
  text-align: left;
  padding-bottom: .06rem;
  letter-spacing: .01rem;
}
@media screen and (max-width:800px){
  .footer__cooperate{
    padding: 0;
    text-align: center;
    width: 100%;
  }
  .footer__cooperate .cta__tel_time{
    font-size: .12rem;
    letter-spacing: .004rem;
  }
}
/* /cooperate */


/* side-menu */
.side-menu {
  background: #FFF;
  padding: .06rem;
  box-shadow: 1px 1px 10px #ccc;
}
.side-menu__item {
  border-bottom: 1px solid #E0E0E0;
}
.side-menu__item:nth-child(1) .side-menu__item_link:nth-child(1) {
  background: #dedede;
  color: #284B77;
  margin-left: -.06rem;
  margin-top: -.06rem;
  margin-right: -.06rem;
  margin-bottom: .06rem;
  font-size: .2rem;
  font-weight: bold;
}
.side-menu__item:last-child {
  border-bottom: none;
}
.side-menu__item_link {
  position: relative;
  display: block;
  background: #FFF;
  padding: 20px 10px 20px 30px;
  color: #5f5f5f;
}
.side-menu__item:after {
  content: "";
  display: block;
  background: #adadad;
}
.side-menu__item_link:hover {
  text-decoration: none;
  background: #EAEAEA;
}
.side-menu__item_link.active:before {
  content: "";
  height: 34px;
  position: absolute;
  border-left: 8px solid #28395a;
  left: 0;
  top: 15px;
}
.side-menu__item_link.active:hover {
  cursor: default;
  text-decoration: none;
  opacity: 1;
}
/* /side-menu_item */


.pc {
    display: none !important;
}
.sp {
    display: block !important;
}
@media only screen and (min-width: 800px){
  .pc {
    display: block !important;
  }
  .sp {
    display: none !important;
  }
}


.clear{
  clear: both;
  margin: 0 auto;
  float: none;
}

.link__org a{
  color: #3994ab;
  border-bottom: 1px solid #3994ab;
  padding-bottom: 2px;
}

.gutters .col.clear{
  margin: 0 auto;
}

.f-left{
  float: left;
}
.f-right{
  float: right;
}

.contact .text-small{
  font-size: 0.8em;
}

.contact + a{
  color: #000000;
}
.contact a:hover {
  -webkit-animation: flash .5s;
  animation: flash .5s;
  opacity: 1;
}
.text-center{
  text-align: center;
}
.text-left{
  text-align: left;
}
.text-right{
  text-align: right;
}
.tile-box span{
  color: white;
  font-size: 0.8em;
  padding: 0.2em 1em;
  background-color: #555;
  border-radius: 2em;
}
.tile-box h3{
  text-align: center;
  margin-bottom: 10px;
}
.mt-10{
  margin-top: 10px;
}
.mt-20{
  margin-top: 20px;
}
.mt-30{
  margin-top: 30px;
}
.mt-40{
  margin-top: 40px;
}
.mb-10{
  margin-bottom: 10px;
}
.mb-20{
  margin-bottom: 20px;
}
.mb-40{
  margin-bottom: 40px;
}
.pt-10{
  padding-top: 10px;
}
.pt-20{
  padding-top: 20px;
}
.pt-40{
  padding-top: 40px;
}
.pt-90{
  padding-top: 90px;
}
.pr-40{
  padding-right: 40px;
}


.text-red{
  color: #F17F25;
}

.highlighter{
  background: linear-gradient(transparent 60%, #ff0 0%);
}
.under-line{
  border-bottom: 1px solid #aaa;

}
.weight-b{
  font-weight: bold;
}

/* width */
.width__100{
  width: 100%;
}
.width__80{
  width: 80%;
  margin: 0 auto;
}
.width__60{
  width: 60%;
  margin: 0 auto;
}
@media (max-width: 767px){
  .width__60{
    width: 100%;
  }
}
.width__40{
  width: 40%;
  margin: 0 auto;
}

/*画像サイズ*/
img{
  width: 100%;
}
.img__100 img{
  max-width: 100%;
}
.img__50 img{
  max-width: 50%;
}
.img-center img{
  text-align: center;
}


.flexbox__halfimg{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.flexbox__halfimg_child{
  width: 100%;
  min-height: 200px;
}
@media (min-width: 780px){
  .flexbox__halfimg_child{
    flex-basis: 50%;
  }
}

.flexbox__smallimg{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.flexbox__smallimg_img ,.flexbox__smallimg_text{
  width: 100%;
  margin-bottom: 20px;
}
@media (min-width:780px){
  .flexbox__smallimg_img{
    flex-basis: 20%;
  }
  .flexbox__smallimg_text{
    flex-basis: 70%;
  }
}

.flexbox__2-1{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.flexbox__2-1_child{
  width: 100%;
}
.flexbox__2-1_child:first-of-type{
  padding-right: 0;
}
.flexbox__2-1_child img{
  width: 100%;
}
@media (min-width: 480px){
  .flexbox__2-1_child{
    flex-basis: 50%;
  }
  .flexbox__2-1_child:first-of-type{
    padding-right: 40px;
  }
}

.flexbox__3-1{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.flexbox__3-1_child:last-of-type{
  flex: 1;
  padding-left: 0;
}
.flexbox__3-1_child img{
  width: 100%;
}
@media (min-width: 800px){
  .flexbox__3-1_child{
    flex: 1;
  }
  .flexbox__3-1_child:last-of-type{
    flex: .5;
    padding-left: 40px;
  }
}

/*dl-horizontal*/
dl.dl-horizontal dt{
  font-size: .8em;
  font-weight: bold;
  color: #ffffff;
  margin-top: 1em;
  display: inline-block;
  border-radius: 2em;
  background-color: #284B77;
  padding: .2em .4em .2em .8em;
}
dl.dl-horizontal dd{
  display: inline-block;
}

/* content area 1000px */
.common__main{
  margin-right: 0px;
  width: 100%;
}

/* top */
.top .container{
  max-width: 1000px;
}

.bg__white{
  background-color: #FFF;
  box-shadow: 0 0 30px rgba(0,0,0,0.2);
}

.content__section {
  padding: .4rem .1rem .1rem;
}
@media (min-width: 800px){
  .bg__white{
    box-shadow: 0 0 30px rgba(0,0,0,0.2);
  }
  .content__section {
    max-width: calc(1200px + 20px);
    margin-top: 0;
    margin-right: auto;
    margin-bottom: 0;
    margin-left: auto;
    padding: .6rem;
  }
}

/* --------------------------
.top__reservation-wrapper
---------------------------*/
.top__reservation-wrapper{
  position: relative;
  content: "";
  width: 100%;
  height: 700px;
}

.top__reservation-slider {
  position: relative;
  width: 100%;
  /*margin: 40px auto 40px auto;*/
}

@media screen and (max-width: 800px) {
  .top__reservation-wrapper{
    height: 510px;
  }
  .top__reservation-slider {
  width: 100%;
  margin: 0px;
  }
  .slick-dotted.slick-slider {
    margin-bottom: 0px !important;
  }
}
.top__reservation-slider img{
  width: 100%;
  height: auto;
}
.top__reservation-slider .slick-dots {
  position: absolute;
  bottom: 25px;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
}

.content__bgimage{
  position: absolute;
  padding: .4rem .1rem;
  display: block;
  top: 2rem;
  right: 0;
  left: 0;
  width: 100%;
  max-width: 1220px;
  margin: 0 auto;
  background-color:#FFF;
  box-shadow: 0 0 30px rgba(0,0,0,0.2);
}
@media (max-width: 799px){
  .content__bgimage{
    top: 80px;
  }
}


/* --------------------------
.top__sns-wrapper
---------------------------*/
.top__sns-wrapper{
  position: relative;
  text-align: center;
  padding: .2rem;
}
.top__information-wrapper{
  padding: .2rem;
}
@media (min-width: 799px){
  .top__information-wrapper{
    padding: .4rem;
  }
}



/* access google map*/
.gmap {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}

.gmap iframe,
.gmap object,
.gmap embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/* /access google map*/



/* responsive img */
.img-list ul li{
  text-align: center;
  width: 100%;
  display:inline-block;
  vertical-align: middle;
}
.img-list ul li:before{
  content: none;
}
.img-list dl dt{
  text-align: center;
  padding-bottom: 5px;
  font-weight: bold;
}
.about .img-list dl dt:after{
  margin: 5px auto 0;
}
.img-list dl dd.trim{
  margin-top: 20px;
  width: 100%;
  height: 300px;
  position: relative;
  overflow: hidden;
}
.img-list dl dd.trim img{
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  height: auto;
}

/*blockquote*/
blockquote.blockquote__org {
  position: relative;
  display: inline-block;
  padding: 10px 10px 10px 60px;
  box-sizing: border-box;
  font-style: italic;
  color: #4e4e4e;
  background: #f2f9ff;
  clear: both;
}

blockquote.blockquote__org:before{
  display: inline-block;
  position: absolute;
  top: 7px;
  left: 10px;
  vertical-align: middle;
/*
  content: "\f10d";
  font-family: "Font Awesome 5 Free";
*/
  content: "“";
  font-family: sans-serif;
  color: #d2e6ff;
  font-size: 60px;
  line-height: 1;
}

blockquote.blockquote__org:after{
  display: inline-block;
  position: absolute;
  bottom: 0px;
  right: 15px;
  vertical-align: middle;
  text-align: center;
/*
  content: "\f10e";
  font-family: "Font Awesome 5 Free";
*/
  content: "”";
  font-family: sans-serif;
  color: #d2e6ff;
  font-size: 60px;
  line-height: 1;
}

blockquote.blockquote__org p,blockquote.blockquote__org dl dt,blockquote.blockquote__org dl dd {
  position: relative;
  padding: 0;
  margin: 10px 0;
  z-index: 3;
  line-height: 1.7;
}
blockquote.blockquote__org dl dt{
  font-weight: bold;
}


blockquote.blockquote__org cite {
  position: relative;
  z-index: 3;
  display: block;
  text-align: right;
  color: #888888;
  font-size: 0.9em;
}

.contact ul.liststyle-none li:before{
  content: none;
}
.flexbox-row{
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
}
.flexbox-row div{
  margin-right: 10px;
}

.flexbox-wrap{
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  align-items: stretch;
  flex: auto;
  gap: 10px;
}
.flexbox-item{
  display: flex;
  align-items: center;
  margin-bottom: .2rem;
}

.flexbox-step .flexbox-item:first-of-type{
  flex: 1;
  border: 1px solid #d7d7d7;
  color: #294b76;
  margin-right: .2rem;
  background: #f0f4fa;
  padding-left: .2rem;
}
@media (min-width: 800px){
  .flexbox-step{
    display: flex;
    justify-content: space-between;
    flex-wrap: nowrap;
    align-items: stretch;
    flex: auto;
  }
  .flexbox-step .flexbox-item{
    display: flex;
    align-items: center;
    margin-bottom: .2rem;
    flex: 3;
  }
}
@media (min-width: 800px){
  .flexbox-step{
    display: flex;
    justify-content: space-between;
    flex-wrap: nowrap;
    align-items: stretch;
    flex: auto;
  }
  .flexbox-step .flexbox-item{
    display: flex;
    align-items: center;
    margin-bottom: .2rem;
    flex: 3;
  }
  .flexbox-step .flexbox-item:first-of-type{
    flex: 1;
  }
}



.side-menu__item_link{
  display: block;
}

.btn-reserve{
  flex-basis: 48%;
  max-width: 48%;
  border-radius: .04rem;
  border-bottom: 3px solid #BB6C2E;
  background-color: #ff9b23;
}
@media (max-width: 779px){
  .btn-reserve{
    flex-basis: 100%;
    max-width: 100%;
  }
}

.btn-reserve a{
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
  justify-content: center;
  color: #333333;
  font-size: .2rem;
  font-weight: bold;
  letter-spacing: .03rem;
  padding: 1em;
}

@media screen and (min-width: 450px) and (max-width: 799px){
  .btn-reserve a{
    font-size: .16rem;
  }
}
@media screen and (min-width: 780px) {
  .btn-reserve {
    max-width: 30%;
  }
}
@media screen and (min-width: 800px){
  .btn-reserve a{
    font-size: .22rem;
    letter-spacing: .02rem;
  }
}
.btn-reserve:hover {
    cursor: pointer;
    background: #FDA34D;
}
.btn-reserve:hover a{
  opacity: 1;
}

.btn-reserve.btn-blue{
  background-color: #6d96ca;
  border-bottom: 3px solid #2e6dbb;
}
.btn-reserve.btn-blue:hover {
  background: #2c7dc2;
}

.btn-reserve.btn-green{
  background-color: #8bb74e;
  border-bottom: 3px solid #4d6d20;
}
.btn-reserve.btn-green:hover {
  background: #bfe28d;
}

.btn-reserve.btn-purple a,.btn-reserve.btn-red a{
  color: white;
}
.btn-reserve.btn-purple{
  background-color: #7f5bcb;
  border-bottom: 3px solid #654498;
}
.btn-reserve.btn-purple:hover {
  background: #8b6dca;
}
.btn-reserve.btn-red{
  background-color: #ac3939;
  border-bottom: 3px solid #8c2929;
}
.btn-reserve.btn-red:hover {
  background: #bb4f4f;
}
.btn-reserve.btn-yellow{
  background-color: #f5d80e;
  border-bottom: 3px solid #8c8229;
}
.btn-reserve.btn-yellow:hover {
  background: #fff5b0;
}
.btn-reserve.btn-glay{
  background-color: #C3C3C3;
  border-bottom: 3px solid #7d7d7d;
}
.btn-reserve.btn-glay:hover {
  background: #dbdbdb;
}


* &gt; sup {
  vertical-align: text-top;
  line-height: 4px;
  font-size: 0.5em;
}
/* top */

.top__feature div{
  position: relative;
  width: 100%;
}

.top__feature div.col.span_4:hover{
  opacity: 0.5;
}

.top__feature .detailbtn{
  position: absolute;
  top: 0px;
}

.top__about p.ellipsis{
  width: 100%;
  white-space: normal;
  overflow: hidden;
  max-height: 3em;
  line-height: 1.5em;
  position: relative;
  background-color: #FFF;
  margin-bottom: 40px;
}
p.ellipsis:after{
  content: "...";
  position: absolute;
  display: block;
  bottom: 0;
  right: 0;
  background-color: #FFF;
  padding-left: 0.5em;
}
.top__about h3.h3__org{
  font-size: 21px;
  padding-bottom: 0.5em;
}




/*about*/
.contact .message{
  line-height: 2;
}

dl.dl__slider{
  border-radius: 10px;
  background-color: #f8f8f8;
  padding:  20px;
  margin: 0 5px 20px;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}
dl.dl__slider dt{
  font-weight: bold;
  text-align: center;
  width: 100%;
}
dl.dl__slider dt:after{
  content: "";
  display: block;
  margin: 10px auto 0;
  width: 30px;
  height: 1px;
  background-color: #555;
}
dl.dl__slider dd{
  margin-top: 15px;
  width: 100%;
}
dl.dl__slider dd img{
  width: 100%;
}

/* ------------------
.dl__text
--------------------- */
dl.dl__text{
  border-radius: 10px;
  background-color: #f8f8f8;
  padding:  20px;
  margin: 0 auto;
}
dl.dl__text dt{
  font-size: .14rem;
  font-weight: bold;
  width: 100%;
  color: #CA311C;
}
dl.dl__text dt:after{
  content: "";
  display: block;
  margin: 1px 0 0;
  width: 6.5em;
  height: 1px;
  background-color: #CA311C;
}
dl.dl__text dd{
  font-size: .14rem;
  margin: 3px 0 10px;
  width: 100%;
  counter-reset: count-num;
}
dl.dl__text ol li{
  padding-left: 1.5em;
  position: relative;
  margin-bottom: 1em;
}
dl.dl__text ol li:before{
  counter-increment: count-num;
  content:counter(count-num);
  color: #000000;
  font-weight: bold;
  display: block;
  position: absolute;
  left: 0;
  top: 0;
}


/* .img__floatl-text
------------------ */
ul.img__float &gt; li{
  clear: both;
  overflow: hidden;
  margin-bottom: 10px;
}
.img__floatl-text{
  overflow: hidden;
  margin-bottom: .2rem;
}
.img__floatl{
  max-width: 170px;
/*  width: 30%;*/
  display: block;
  float: left;
  overflow: auto;
  margin-right: .2rem;
}

/* /.img__floatl-text */


/*facilities*/
.facilities h3{
  font-size: 21px;
  margin-bottom: 10px;
}
.facilities span.facility-child{
  font-size: 18px;
}
.facilities address{
  color: #5f5f5f;
  font-size: 16px;
}


/* In case dd longer more dt*/
dl.dl__org{
  width: 100%;
  padding: 0 .1rem;
  border-radius: .1rem;
  overflow: hidden;
  border: 1px solid #ccc;
}
dl.dl__org dt{
  font-size: 16px;
  font-weight: bold;
  display: block;
  width: 100%;
  clear: left;
  float: left;
  line-height: 2;
  padding-top: .1rem;
  border-top: 1px solid #ccc;
  text-align: center;
}
dl.dl__org dt:first-of-type{
  border-top: 0px;
}
dl.dl__org dd{
  font-size: 14px;
  float: left;
  display: block;
  width: 100%;
  line-height: 2;
  margin-bottom: .1rem;
  padding-top: .1rem;
  text-align: center;
}
@media (min-width: 800px){
  dl.dl__org dt{
    font-size: 18px;
    width: 30%;
    border-top: 1px solid #ccc;
    text-align: left;
  }
  dl.dl__org dt:first-of-type{
    border-top: 0px;
  }
  dl.dl__org dd{
    font-size: 16px;
    width: 70%;
    border-top: 1px solid #ccc;
    padding: .1rem 0 .1rem .2rem;
    margin: 0;
    text-align: left;
  }
  dl.dl__org dd:first-of-type{
    border-top: 0;
  }
  .span_6 dl.dl__org dt{
    width: 40%;
  }
  .span_6 dl.dl__org dd{
    width: 60%;
  }
  dl.dl-info dd{
    font-size: 18px;
  }
}


/* In case vertical list of dt dd*/
ul.ul__verticalbox {
  width:100%;
  margin:0;
  padding:0;
  display:-webkit-box;
  display:-moz-box;
  display:-ms-box;
  display:-webkit-flexbox;
  display:-moz-flexbox;
  display:-ms-flexbox;
  display:-webkit-flex;
  display:-moz-flex;
  display:-ms-flex;
  display:flex;
  -webkit-box-lines:multiple;
  -moz-box-lines:multiple;
  -webkit-flex-wrap:wrap;
  -moz-flex-wrap:wrap;
  -ms-flex-wrap:wrap;
  flex-wrap:wrap;
}
ul.ul__verticalbox li {
  background:#FAFAFA;
  list-style:none;
  padding: 1rem 0.5rem 0;
  margin-bottom: 0;
  position: relative;
  align-items: center;
  margin-bottom: 20px;
}
ul.ul__verticalbox li p{
  background-color: #FFF;
  padding:0 9%;
  font-size:90%;
  overflow: hidden;
}
ul.ul__verticalbox li img {
  width:100%;
  margin:0;
  padding:0;
}
ul.ul__verticalbox li h4 {
  font-weight:bold;
  font-size:110%;
  text-align:center;
  margin-bottom:25px;
  margin-top:20px;
}
ul.ul__verticalbox li div a {
  color:#0071AC;
  font-size: 100%;
  display: block;
  text-align: center;
  padding: 2rem;
}
@media ( min-width : 768px ) {
  /* In case vertical list of li */
  ul.ul__verticalbox li {
    width:24%;
    margin-left:1.2%;
  }
  ul.ul__verticalbox li:first-of-type{
    margin-left:0%;
  }
  ul.ul__verticalbox li:nth-of-type(5n){
    margin-left:0%;
  }
}

.ol__org, .ol__std{
  counter-reset: count-num;
}
.ol__org li, .ol__std li{
  padding-left: 1.7em;
  position: relative;
  margin-bottom: .02rem;
  color: #284B77;
}
.ol__org li:before, .ol__std li:before{
  counter-increment: count-num;
  content:counter(count-num);
  color: #284B77;
  font-weight: bold;
  display: block;
  position: absolute;
  left: 0;
  top: 0;
}
.ol__std li{
  color: #333;
}
.ol__std li:before{
/*  color: #333;*/
}

.text-small{
  font-size: .9em;
}
.text-xsmall{
  font-size: .8em;
}

.inner-cta .panel__border{
  padding: .14rem;
}
.inner-cta .footer__sp_tel{
  padding: 0 .1rem .1rem;
}

/*--------------------------
top
--------------------------*/

/* banner area
--------------------------*/
.top__body .banner{
  text-align: center;
  margin: .1rem .2rem;
}
.top__body .banner img{
  width: 100%;
  max-width: 650px;
}
@media screen and (min-width: 769px){
  .top__body .banner img{
    width: 90%;
    max-width: 650px;
  }
}



/* news
--------------------------*/
.top__body .news{
  font-size: .13rem;
  line-height: .2rem;
  background: #1D3865;
  width: 100%;
  max-width: 1220px;
  height:  auto;
  margin: 0 auto;
  box-shadow: 0 0 10px rgba(0,0,0,0.2);
}
.top__body .news:before {
  display: none;
  content: "NEWS";
  color: #FFF;
  padding: .3rem .4rem;
  background-color: #1D3865;
  float: left;
  text-align: center;
  vertical-align: middle;
}
.top__body .news &gt; dl {
  margin-left: 0px;
  padding: .1rem;
  background-color: #1D3865;
  color: #FFF;
  
/*  overflow-y: scroll;
  overflow-x: hidden;*/
}
.top__body .news &gt; dl &gt; dt{
  font-size: .1rem;
  font-weight: bold;
}
.top__body .news &gt; dl &gt; dd &gt; a{
  color: #c0d5fb;
  text-decoration: underline;
}
.top__body .news &gt; dl &gt; dd:nth-pf-type(n+1) {
  padding-bottom: .2rem;
}
@media screen and (min-width: 800px){
  .top__body .news {
    margin: 20px auto;
  }
  .top__body .news:before {
    display: block;
  }
  .top__body .news &gt; dl {
    margin-left: 120px;
    background-color: #eff7fd;
    color: #284B77;
	height: auto;
/*    overflow-y: scroll;
    overflow-x: hidden;
    height: 80px;*/
  }
  .top__body .news &gt; dl &gt; dt {
    font-size: .12rem;
  }
  .top__body .news &gt; dl &gt; dd {
    font-size: .14rem;
  }
  .top__body .news &gt; dl &gt; dd &gt; a{
    color: #437ce1; 
    text-decoration: underline;
  }
}


/* top-headline
---------------------- */
.top__headline{
  margin-bottom: .2rem;
}
.top__headline .title-en__inner{
  font-size: .12rem;
  color: #CA311C;
  padding-bottom: .06rem;
  border-bottom: 1px solid #CA311C;
}
.top__headline .title-en{
  margin-bottom: .16rem;
}
.top__headline .title-jp{
  font-family: Helvetica,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",Meiryo,serif;
  font-weight: bold;
  font-size: .18rem;
  color: #294b76;
  text-align: center;
  margin-bottom: .16rem;
}
@media (min-width: 800px){
  .top__headline .title-jp{
    font-size: .28rem;
  }
}

/* section-withimage */
.section-withimage{
  display: flex;
  flex-direction: column;
  box-shadow: 0 0 10px rgba(0,0,20,0.2);
}
@media (min-width: 800px){
  .section-withimage{
    flex-direction: row;
  }
}
.section-withimage-item{
  display: flex;
  width: 100%;
  position: relative;
}
@media (min-width: 800px){
  .section-withimage-item {
    display: block;
    width: 33.33%;
  }
}
.section-withimage-item:after{
  content: '';
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(255,255,255,.9);
}
.section-withimage-item__imagebox{
  position: relative;
  width: 50%;
  padding-top: 33.3%;
  z-index: 1;
}
@media (min-width: 800px){
  .section-withimage-item__imagebox{
    padding-top: 60%;
    width: 100%;
  }
}
.section-withimage__bgimage{
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
.bgimage__doc{
  background-image: url(../img/m001/treatment01.jpg);
}
.bgimage__outpatient{
  background-image: url(../img/m001/treatment02.jpg);
}
.bgimage__free{
  background-image: url(../img/m001/treatment03.jpg);
}

.section-withimage-item__imagebox__text{

}
.section-withimage-item__description{
  box-sizing: border-box;
  position: relative;
  z-index: 1;
  width: 50%;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  padding: .16rem;
}
@media (min-width: 799px){
  .section-withimage-item__description{
    width: 100%;
  }
}
.swiid__title{
  font-size: .16rem;
  color: #284B77;
  font-weight: bold;
  margin-bottom: .16rem;
}
.swiid__detail{
  font-size: .12rem;
  color: #777;
  margin-bottom: .16rem;
}
.swiid__link{
  font-size: .1rem;
  color: #346AC3;
  font-weight: bold;
}
/* /section-withimage */

/* image-list */
.image-list{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.image-list-item{
  width: 49%;
}
.image-list-item img{
  width: 100%;
}
@media (min-width: 498px){
  .image-list-item{
    width: 22%;
  }
}




/* contentfor-wrapper */
.contentfor-wrapper{
  display: flex;
  flex-wrap: wrap;
  align-content: space-between;
  justify-content: space-between;
  padding: .1rem;
}
.contentfor-wrapper__item {
  background-color: #FFF;
  margin-bottom: .3rem;
  box-shadow: 0px 0px 20px rgba(0,0,0,0.2);
  position: relative;
  width: 48%
}
.contentfor-wrapper__item:nth-of-type(n+3) {
  margin-bottom:0;
}
@media (min-width: 800px){
  .contentfor-wrapper{
    padding: .4rem 2rem;
  }
  .contentfor-wrapper__item:nth-of-type(n+3) {
    margin-bottom:0;
  }
}
.contentfor-wrapper__item:after{
  content: "";
  display: block;
  width: 0;
  height: 0;
  border: 6px solid transparent;
  border-top: 6px solid #CA311C;
  position: absolute;
  bottom: 0;
  right: 0;
  transform: rotate(-45deg);
}
.contentfor-wrapper__item-link {
  display: block;
  text-align: center;
  padding: 0 .2rem .2rem;
}
.contentfor-wrapper__item-link-text{
  font-size: .12rem;
  font-weight: bold;
  color: #284B77;
}
@media (min-width: 800px){
  .contentfor-wrapper__item-link-text{
    font-size: .16rem;
  }
}

/* --------------------
top icon
-------------------- */
.icom{
  margin-top: .2rem;
}
.icon-icon01, .icon-icon02, .icon-icon03, .icon-icon04{
  font-size: .5rem;
  -ms-font-feature-settings: "normal";
}
/* --------------------
.top__body
-------------------- */

.top__body{
  background-color: #F0F0F0;
}
.top__body .article h4 {
  font-size: 21px;
  font-weight: 500;
  margin: 10px 0 15px;
}
.top__body .article h4:before {
  content: "";
  display: inline-block;
  width: 18px;
  height: 18px;
  border: 4px solid #28395a;
  border-radius: 50%;
  margin-right: 10px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  vertical-align: middle;
  margin-top: -3px;
}
.top__body .article.top__feature section p{
  text-align: left;
}
.panel__org{
  padding: .28rem .24rem;
  box-shadow: 1px 1px 10px #ccc;
  background-color: white;
  font-size: .9em;
}
.panel__border{
  padding: .28rem .24rem;
  box-shadow: 1px 1px 2px #ccc;
  background-color: #eee;
  border: 1px solid #415094;
}
.panel__gray{
  padding: .28rem .24rem;
  background-color: #ccc;
  border-radius: 10px;
}
.cta-area{
  background: #fafafa;
}
.cta-area__reservation{
  font-size: .16rem;
  color: #284B77;
  text-align: center;
}
.cta-area .footer__sp_tel{
  margin-top: .0rem;
}
.cta-area .footer__sp_tel{
  margin-top: .0rem;
}

/* content ul__li*/
.ul__std{
  counter-reset: count-num;
  width: 100%;
  padding-left: 1em;
}
.ul__std li{
  width: 100%;
  display: inline-block;
  margin-top: 1em;
  padding-left: 1em;
  position: relative;
  font-size: .14rem;
  color: #555;
  letter-spacing: .008rem;
  counter-increment: none;
}
.ul__std li:before{
  width: .06rem;
  height: .06rem;
  counter-increment: none;
  content: "";
  position: absolute;
  border-radius: .1rem ;
  top: calc( 50% - .03rem);
  left: -.1rem;
  background-color: #555;
}
/*ul__org*/
.ul__org{
  counter-reset: count-num;
  width: 100%;
  padding-left: 1em;
}
.ul__org li{
  width: 100%;
  display: inline-block;
  margin-top: 1em;
  padding-left: 1em;
  position: relative;
  font-size: .14rem;
  color: #284B77;
  letter-spacing: .008rem;
  counter-increment: none;
}
.ul__org li:before{
  width: .06rem;
  height: .06rem;
  content: "";
  position: absolute;
  border-radius: .1rem ;
  top: calc( 50% - .03rem);
  left: -.1rem;
  background-color: #294b76;
}
/*ul__asterisk*/
.ul__asterisk{
  counter-reset: count-num;
  width: 100%;
  padding-left: 1em;
}
.ul__asterisk li{
  width: 100%;
  display: inline-block;
  margin-top: 1em;
  padding-left: 1em;
  position: relative;
  font-size: .14rem;
  color: #284B77;
  letter-spacing: .008rem;
}
.ul__asterisk li:before{
  content: "\203b";
  position: absolute;
  border: none;
  top: 0;
  left: -.1rem;
  background-color: none;
}
/*ul__upper*/
.ul__upper li:before{
  top: .5em;
}
.ul__org li:last-child, .ul__asterisk li:last-child{
  margin-bottom: 0px;
}

.ul__panel{
  width: 100%;
  margin-bottom: 20px;
  padding: 0 2%;
}
.ul__panel li{
  width: 100%;
  display: inline-block;
  padding: 1em;
  background: #F5F2EB;
  color: #000;
  border-radius: 6px;
  box-shadow: 1px 2px 2px 1px rgba(0,0,0,0.2);
  margin-bottom: 10px;
}

/* /content ul__li*/

.top__about{
  background-color: #FFFFFF;
}

.top__access{
  background-color: #FFFFFF;
}
.top__access h2{
    font-weight: bold;
    font-size: 30px;
    color: #28395a;
    text-align: center;
    padding: 0 0 20px;

}
.top__access p{
  text-align: center;
  padding-bottom: 20px;
}

/* table
--------------------- */
.table__org th, .table__org td, .table__org th.th-long{
  display: table;
  border-right: none;
  text-align: left;
  white-space: normal;
}
.table__org td{
  font-size: .14rem;
  padding-bottom: 10px;
  display: table-cell;
  white-space: normal;
}
.table__org th{
  display: table-cell;
  min-width: 7em;
  font-size: .14rem;
  vertical-align: top;
}
/* table footer */
.table__footer {
  font-size: .14rem;
  width: 100%;
  margin-bottom: .18rem;
  text-align: center;
}
.table__footer tr{
  background: #EFF7FD;
  color: #223B62;
}
.table__footer tr:first-child{
  background: #E0E0E0;
  color: #333;
  font-weight: bold;
}
.table__footer th{
  padding: .04rem;
}
.table__footer td{
  padding: .08rem;
}
/* /table footer */
/* table calendar */
.table__calendar, .table__option, .table__access, .table__contact{
  width: 100%;
  table-layout: fixed;
  word-break: break-all;
  word-wrap: break-all;
  font-size: .14rem;
}
.table__access th{
  width: 20%;
  font-size: .12rem;
}
@media (max-width: 800px){
  .table__calendar  tbody &gt; tr &gt; td &gt; p {
    font-size: .08rem !important;
  }
}
/* /table calendar */
/* table org */
.table__org{
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  display: table;
}
.table__org th{
  position: relative;
  text-align: center;
  color: #505050;
  padding: 10px;
  border-bottom: 1px solid #E0E0E0;
  border-right: 1px solid #E0E0E0;
  padding-right: 5px;
  background-color: #fbfaf8;
  display: table-cell;
}
.table__org tr:first-child th{
  border-top: 3px solid #5266a3;
}
.table__org td{
  padding: 10px;
  border-bottom: 1px solid #E0E0E0;
  counter-reset: count-num;
  background-color: #FFF;
  display: table-cell;
}
.table__org td &gt; img{
  width: 100%;
}
.table__org tr:first-child td{
  border-top: 3px solid #E0E0E0;
}
.table__org ol li{
  padding-left: 1.5em;
  position: relative;
  margin-bottom: 1em;
}
.table__org ol li:before{
  counter-increment: count-num;
  content:counter(count-num);
  color: #000000;
  font-weight: bold;
  display: block;
  position: absolute;
  left: 0;
  top: 0;
}
.table__org th.th-long{
  font-size: 0.8em;
  width: 35%;
}
/* /table org */

/* contact &amp; recruit   form
-----------------------------*/
.form-header{
  text-align: center;
  vertical-align: middle;
  padding: .1rem;
}
.form-header img{
  width: 200px;
}
@media (min-width: 799px){
  .form-header{
    padding: .4rem 0 .05rem;
  }
}

.form-h1{
  color: #ffffff!important;
  background: #274B78;
  letter-spacing: 0.08rem;
  font-weight: normal;
}

.formTable th{
  width:45%;
  background:#fdf7e7;
  text-align:left;
}
table.table__contact{
  margin-bottom: 20px;
}

@media (max-width:480px ){
.formTable th{
    width:100%;
  }
  .table__contact td{
    width: 100%;
  }
}
@media (max-width: 799px){
  table.table__contact th{
    width: 100%;
    display: block;
  }
  table.table__contact td{
    width: 100%;
    display: block;
  }
}
table.table__contact input[type="text"]{
  line-height: 2;
  width: 100%;
  font-size: 16px;
}
table.table__contact input.w-third[type="text"]{
  width: 30%;
}
table.table__contact select{
  height: 30px;
  font-size: 16px;
}
table.table__contact textarea{
  width: 100%;
  height: 5em;
  font-size: 16px;
  line-height: 1.5em;
}
.form-item{
  text-align: left;
}
.form-item-invitable{
  text-align: right;
  position: absolute;
  right: .12rem;
  top: .12rem;
}
.form-item-invitable span{
  color: #fff;
  text-align: center;
  padding: 5px;
  background-color: #f58039;
  border-radius: 5px;
  width: 3em;
  font-weight: normal;
}
.btn__contact{
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -moz-border-radius: 20px;
  -webkit-border-radius: 20px;
  border-radius: 40px;
  border: 1px solid #eaeaea;
  width: 50%;
  margin: 10px auto 10px;
  padding: 10px;
  vertical-align: middle;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
  background-color: #fda34d;
  text-decoration: none;
  color: #ffffff;
  text-align: center;
  line-height: 40px;
  box-sizing: border-box;
  font-size: 20px;
  cursor: pointer;
}
.btn__contact_back input{
  border: none;
  border-bottom: 1px solid #3994ab;
  border-radius: unset;
  width: 160px;
  color: #3994ab;
  background-color: #fff;
  text-align: left;
  line-height: 20px;
  font-size: 20px;
}
p.error_messe{
  margin:5px 0;
  color:red;
  font-size: .16rem;
}
.toc_wrapper{
  background-color:#fdf7e7;
  padding: .2rem;
  width: 100%;
}
.toc {
  line-height: .3rem;
}
.toc_headline{
  color: #27395A;
  font-weight: bold;
  font-size: .16rem;
}
.toc_headline:before{
  content: "&gt;";
}
.toc a{
  font-size: .14rem;
}
.toc ul{
  margin-left: .1rem;
}

.contact__lead{
  color: #274B78;
  font-size: .18rem;
  text-align: center;
  margin-bottom: .4rem;
}
@media screen and (max-width:1000px){
  .contact__lead{
    margin: .2rem 0;
    font-size: .16rem;
    text-align: left;
  }
}



.contact__article{
  padding: 1rem 1.2rem;
}
@media screen and (max-width :768px){
  .contact__article{
  padding: .2rem .1rem;
  }
}

.contact__requirements{
  background-color: #fdf7e7;
}

.panel__org.flexbox__3-1.mb__middle.ribbon-wrapper{
  padding: .4rem .24rem .28rem .6rem;
}
.ribbon-wrapper{
  position: relative;
}
.ribbon-content{
  position: absolute;
  top: 0;
  left: 0;
  width: 85px;
  height: 85px;
  overflow: hidden;
}
.ribbon{
  display: inline-block;
  position: absolute;
  padding: 5px 0;
  right: -27px;
  top: 20px;
  width: 160px;
  text-align: center;
  font-size: 18px;
  line-height: 16px;
  background: #39c3d4;
  color: #fff;
  letter-spacing: 0.05em;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  box-shadow: 0 0 0 2px rgb(57, 195, 212);
/*  border-top: dashed 1px rgba(255, 255, 255, 0.65);*/
/*  border-bottom: dashed 1px rgba(255, 255, 255, 0.65);*/
}


.bg-nurse{
  background-image: url(../recruit/img/nurse_l.jpg);
  background-size: cover;
  background-position-y: center;
  background-position-x: center;
}
.bg-gastro{
  background-image: url(../recruit/img/gastro_l.jpg);
  background-size: cover;
  background-position-y: center;
  background-position-x: center;
}

.bg-doctor{
  background-image: url(../recruit/img/doctor_l.jpg);
  background-size: cover;
  background-position-y: center;
  background-position-x: center;
}

.bg-staff{
  background-image: url(../recruit/img/staff_l.jpg);
  background-size: cover;
  background-position-y: center;
  background-position-x: center;
}

.bg-ct{
  background-image: url(../recruit/img/ct_l.jpg);
  background-size: cover;
  background-position-y: center;
  background-position-x: center;
}

.bg-rt{
  background-image: url(../recruit/img/rt_l.jpg);
  background-size: cover;
  background-position-y: center;
  background-position-x: center;
}

.bg-partitimestaff{
  background-image: url(../recruit/img/parttimestaff_l.jpg);
  background-size: cover;
  background-position-y: center;
  background-position-x: center;
}

.bg-sales{
  background-image: url(../recruit/img/sales_l.jpg);
  background-size: cover;
  background-position-y: center;
  background-position-x: center;
}
.bg-endoscope-cleaning{
  background-image: url(../recruit/img/endoscope-cleaning_l.jpg);
  background-size: cover;
  background-position-y: center;
  background-position-x: center;
}
.bg-medicalexamination{
  background-image: url(../recruit/img/medicalexamination_l.jpg);
  background-size: cover;
  background-position-y: center;
  background-position-x: center;
}
.bg-se{
  background-image: url(../recruit/img/se_l.jpg);
  background-size: cover;
  background-position-y: center;
  background-position-x: center;
}



/*  COLUMN WIDTH ON DISPLAYS +768px
You might need to play with media queries here to suite your design. */
@media ( min-width : 768px ) {
  .img-list ul li{
    text-align: center;
    width: 30%;
    margin-left: 2%;
    float: left;
    display:inline-block;
    vertical-align: middle;
  }
  .img-list ul li:before{
    content: none;
  }
  .img-list dl dt{
    text-align: center;
  }
  .ul__hori li{
    width: 30%;
    margin-right: 2%;
    margin-bottom: 20px;
  }
  .ul__hori li:nth-child(3n){
    margin-right: 0px;
  }
  .gmap.gmap__top{
    padding-bottom: 400px;
  }
  .top__feature .detailbtn{
  top: 120px;
  }
}
/* mt__ */
.mt__large{
  margin-top: .8rem;
}
.mt__middle{
  margin-top: .6rem;
}
.mt__small{
  margin-top: .4rem;
}
.mt__xsmall{
  margin-top: .2rem;
}
/*/ mt__ */
/* mb__ */
.mb__large{
  margin-bottom: .8rem;
}
.mb__middle{
  margin-bottom: .6rem;
}
.mb__small{
  margin-bottom: .4rem;
}
.mb__xsmall{
  margin-bottom: .2rem;
}
/*/ mb__ */
/* pb__ */
.pb__large{
  padding-bottom: .8rem;
}
.pb__middle{
  padding-bottom: .6rem;
}
.pb__small{
  padding-bottom: .4rem;
}
.pb__xsmall{
  padding-bottom: .2rem;
}
/*/ pb__ */

/* common */
.panel{
  background-color: #4B8BF9;
  color: #fff;
  padding: .2rem;
}
.text-danger{
  color: #CA311C;
  font-weight: bold;
}
.text-info{
  color: #999999;
  font-weight: bold;
}
.text-default{
  color: #274B78;
  font-weight: bold;
}
.text-alert{
  color: #E38A0C;
  font-weight: bold;
}
.text__large{
  font-size: .2rem;
}
.text__middle{
  font-size: .18rem;
}
@media screen and (max-width: 768px){
  .text__middle{
  font-size: .16rem;
  }
}
.text__small{
  font-size: .14rem;
}
.text__center{
  text-align: center;
}
.text-link {
  font-size: .14rem;
  color: #0071AC;
  text-decoration: underline;
}
.text-link__black {
  font-size: .14rem;
  color: #333;
  text-decoration: underline;
}
.mr__16rem{
  margin-right: .16rem;
}

.jp__large {
  font-size: .3rem;
  color: #284B77;
}

.jp__middle {
  font-size: .24rem;
  color: #284B77;
  margin-bottom: .16rem;
  padding: 0;
}
@media screen and (max-width: 799px){
  .jp__middle {
    font-size: .18rem;
    margin-bottom: .14rem;
  }
}

.jp__small {
  font-size: .16rem;
  color: #284B77;
  padding-bottom: .08rem;
  margin-bottom: .14rem;
  border-bottom: 1px solid #CA311C;
  letter-spacing: .04rem;
}
.jp__xsmall {
  font-size: .16rem;
  color: #284B77;
  padding-bottom: .03rem;
  letter-spacing: .015rem;
  font-weight: bold;
}
.en__xsmall {
  font-size: .1rem;
  color: #dddddd;
  margin-bottom: .08rem;
  letter-spacing: .04rem;
}

/*--------------------------------
下層ページ
---------------------------------*/
/* .dl__normal */
dl.dl__normal{
  border-radius: 10px;
  background-color: #f8f8f8;
  padding:  20px;
}
dl.dl__normal dt{
  font-size: .14rem;
  font-weight: bold;
  display: inline;
  color: #5366a3;
}

dl.dl__normal dd{
  font-size: .14rem;
  margin: 3px 0 10px;
  display: inline;
  counter-reset: count-num;
  padding-left: .2rem;
}

/* .dl__qa */
dl.dl__qa{
}
dl.dl__qa dt{
  position: relative;
  font-size: .18rem;
  font-weight: bold;
  display: block;
  color: #333;
  background-color: #D6EEFF;
  padding: .2rem;
  padding-left: .5rem;
}
dl.dl__qa dt:before{
  content: "";
  position: absolute;
  top: .16rem;
  left: .1rem;
  display: inline-block;
  width: .3rem;
  height: 100%;
  background: url(../dock/img/qa-q.png);
  background-size: 100%;
  background-repeat: no-repeat;
  margin-right: .2rem;
}
dl.dl__qa dd{
  position: relative;
  font-size: .14rem;
  display: block;
  padding: .2rem;
  padding-left: .5rem;
  margin-bottom: .2rem;
}
dl.dl__qa dd:before{
  content: "";
  position: absolute;
  top: .16rem;
  left: .1rem;
  display: inline-block;
  width: .3rem;
  height: .3rem;
  background: url(../dock/img/qa-a.png);
  background-size: 100%;
  background-repeat: no-repeat;
  margin-right: .2rem;
}


/* ナビゲーションの cta 背景色・文字色
----------------------------*/
.dropContent &gt; li.cta{
  background-color: #FDA34D;
  color: #FFF;
}
.dropContent &gt; li.cta &gt; a{
  color: #FFF;
}
.side-menu__item.cta &gt; a{
  color: #FFF;
  background-color: #FDA34D;
}
.footer__child-menu_item.cta a{
  color: #FFF;
  background-color: #FDA34D;
}

.quote{
  display: block;
  /*border-left: 5px solid #488FF9;*/
  margin-top: .1rem;
  padding-left: .1rem;
  margin-left: .2rem;
}

.formBalloon {
  padding-bottom: .4rem;
  padding-left: .2rem;
  display: block;
}
@media (max-width: 800px){
  .formBalloon {
  padding-left: calc(50% - 20px);
  }
}
.formBalloon .formBalloonContent {
  border-radius: 3px 3px 0 0;
  width: 12px;
  height: 24px;
  position: relative;
  background: #101177;
  left: 8px;
}
.formBalloon .formBalloonArrow{
  border-radius: 3px;
  border: 14px solid transparent;
  border-top: 20px solid #101177;
  position: absolute;
  height: 0;
  width: 0;
  z-index: 1;
}

.modal-header .close {
    padding: .1rem;
    margin: -.1rem -.1rem -.1rem auto;
}
.close {
    float: right;
    font-size: .2rem;
    font-weight: 700;
    line-height: 1;
    color: #000;
    text-shadow: 0 1px 0 #fff;
    opacity: .5;
}
.modal-content {
    border-radius: .06rem;
}
.btn:focus {
    outline: 0;
    box-shadow: 0 0 0 0.04rem rgba(0,123,255,.25);
}

.box10 {
    padding: 0.5em 1em;
    margin: 2em 0;
    color: #173055;
    background: #EAEEF5;/*背景色*/
    border-top: solid 6px #101177;
    box-shadow: 0 3px 4px rgba(0, 0, 0, 0.32);/*影*/
}
.box10 p {
    margin: 0; 
    padding: 0;
}


#news-box{
	height: 300px;
	overflow: scroll;
}



@media screen and (max-width: 799px) {
#news-box dl {
background-color: none;

    background-color: #fff;
    color: #284B77;
}
#news-box dl dd {
	border-bottom: 1px solid #eee;
	margin-bottom: 10px;
}
#news-box dl dd a {
color: #284B77;
}
#news-box dl dd:last-child {
	border-bottom: none;
	margin-bottom: 0;
}

}


.common_lang {
    font-size: 15px;
    
}</pre></body></html>