@charset "utf-8";
/* CSS Document */
*,
::before,
::after{
  box-sizing: border-box;
  /* ↓↓debug code↓↓ */
  /* outline: 1px solid red; */
}
body {
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    color: #534741;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.75;
    letter-spacing: 0.05em;
    text-align: justify;
    background-color: #f8f6f2;
}
a {
    color: #b27f36;
    text-decoration: none;
}
a:hover {
    color: #C0AB9A;
}
/*tel*/
[href^="tel"]:hover {
    cursor: default;
}
::selection {
    background-color: #99C1DA;
}
::-moz-selection {
    background-color: #99C1DA;
}
body,
.nav_wrap.fixed,
#mainvisual .inner,
header,
footer{
    min-width:1240px;
}
@media print {
    html {
        -webkit-print-color-adjust: exact;
    }
    body {
        zoom: 80%;
    }
    .fixed {
        position: inherit !important;
    }
}

/* 画像のにじみ（大きい画像を小さく表示した時等）対策 */
.visibility {
    image-rendering: -webkit-optimize-contrast;
    image-rendering: crisp-edges;
    backface-visibility: hidden;
}

/*============================================================================

  header

============================================================================*/
header {
    width: 100%;
    /*height: 144px;*/
	height: 160px;
}
header .inner {
    position: relative;
    height: inherit;
    margin: auto;
    padding: 22px 60px 0;
}
@media screen and (max-width:1600px) {
    header .inner {
        /*padding: 22px 20px 0;*/
		padding: 35px 20px 0;
    }
}

/* ロゴ */
header .header_logo {
    position: absolute;
    z-index: 101;
    top: 43px;
    width: 371px;
}
header .header_logo img {
		padding-top: 12px;
    width: 371px;
    height: auto;
}
@media screen and (max-width:1600px) {
    header .header_logo {
        top: /*59px*/64px;
        width: 300px;
    }
    header .header_logo img {
        width: 300px;
    }
}


/* 住所 */
.header_info {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}
.header_info_ad {
    margin-right: 30px;
    color: #3e3a3a;
}
.header_info_ad::before {
    display: inline-block;
    margin-right: 8px;
    width: 16px;
    height: 22px;
    background: url("../images/head_pin_icon.png") no-repeat;
    vertical-align: sub;
    content: "";
}
.header_info_btn a {
    display: block;
    width: 170px;
    height: 45px;
    line-height: 47px;
    outline: 1px dashed rgba(255, 255, 255, 0.6);
    outline-offset: -4px;
    border-radius: 10px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    text-align: center;
    letter-spacing: 0.05em;
    color: #fff;
    background-color: #f5b754;
    transition: 0.3s ease-in-out;    
}
@media (hover: hover) and (pointer: fine) {
    .header_info_btn a:hover {
        background-color: #ffa313;
    }
}
.header_info_btn a::before {
    display: inline-block;
    margin-right: 11px;
    width: 22px;
    height: 22px;
    background: url("../images/head_btn_icon.png") no-repeat;
    vertical-align: sub;
    content: "";
}

.header_info .header_info_flex {
	display: flex;
	justify-content: space-between;
}
.header_info_tel_list {
	margin-right: 20px;
}
.header_info_tel_list li {
	font-size: 1.25em;
	font-family: "sofia-pro-soft", sans-serif;
	color: #685851;
}


/*ご意見箱*/
.contact_box a {
  position: relative;
  display: block;
  background-color: #f2aab1;
  border-radius: 10px;
  color: #ffffff;
  font-size: 15px;
  /*font-family: FOT-筑紫A丸ゴシック Std M;*/
  padding: 3px;
  text-align: center;
}
/*============================================================================

  nav

============================================================================*/
.nav_wrap {
    position: absolute;
    z-index: 100;
    top: 86px;
    width: 100%;
    min-width: 1240px;
}
.tgl_menu_list {
	padding-top: 12px;
    padding-right: 60px;
}
@media screen and (max-width:1600px) {
    .tgl_menu_list {
			padding-top: 12px;
			padding-right: 30px;
    }
}
.tgl_menu_list ul {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 60px;
}
@media screen and (max-width:1600px) {
    .tgl_menu_list ul {
        gap: 30px;
    }
}

.tgl_menu_list ul li {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* リンクテキスト */
.tgl_menu_list ul li a, 
.tgl_menu_list ul li p {
    position: relative;
    padding-bottom: 8px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    letter-spacing: 0.05em;
    line-height: 1;
    text-align: center;
    color: #534741;
}

/* 英語 */
.tgl_menu_list ul li a span, 
.tgl_menu_list ul li p span {
    display: block;
    margin-top: 12px;
    font-family: sofia-pro-soft, sans-serif;
    font-weight: 300;
    font-size: 12px;
    letter-spacing: 0.15em;
    line-height: 1;
    color: #b27f36;
}

/* ホバーエフェクト */
.tgl_menu_list ul li a:hover {
    color: #f5b754;
}

/* ホバー時に出る下線 */
.tgl_menu_list ul li a::after,
.tgl_menu_list ul li p::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0px;
    left: 0;
    margin: auto;
    width: 100%;
    height: 1px;
    background: #f5b754;
    transition: 0.2s ease-in-out;
    transform: scaleX(0);
}
.tgl_menu_list ul li a:hover::after,
.tgl_menu_list ul li.active a::after,
.tgl_menu_list ul li p:hover::after,
.tgl_menu_list ul li.active p::after {
    transform: scaleX(1);
}

/* ------- スライドメニュー メガ------- */
.tgl_menu_list .nav_mega_menu {
    position: static;
}

/* ドロップダウン */
.tgl_menu_list .nav_mega_menu .mega_menu_wrap {
    position: absolute;
    z-index: 1;
    top: 95%;
    left: 0%;
    width: 100%;
    opacity: 0;
    visibility: hidden;
    transition: 0.2s ease-in-out;
    background: #f9f7f4;
}
.tgl_menu_list .nav_mega_menu:hover .mega_menu_wrap {
    top: 100%;
    opacity: 1;
    visibility: visible;
}
.tgl_menu_list .mega_menu_inner {
    /*padding: 32px 0;*/
		padding: 12px 0 18px;
    width: 1200px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
}
.mega_menu_inner .menu_wrap01 {
    width: 12%;
}
.mega_menu_inner .menu_wrap02 {
    width: 84%;
}
.tgl_menu_list .menu_list {
    width: 100%;
}
.tgl_menu_list ul li.nav_mega_menu .menu_list p::before, 
.tgl_menu_list ul li.nav_mega_menu .menu_list p::after {
    display: none;
}
.tgl_menu_list .menu_list p {
    text-align: left;
    margin-bottom: 5px;
    /*padding: 12px 0;*/
		padding: 8px 0;
    font-weight: bold;
    border-bottom: 2px solid;
}
.menu_wrap01 .menu_list:not(:first-of-type) p,
.menu_wrap02 .menu_list:not(:first-of-type) p {
    margin-top: 12px;
}
.tgl_menu_list .menu_wrap01 .menu_list p {
    border-color: #efa126;
}
.tgl_menu_list .menu_wrap01 .menu_list.l_blue p {
    border-color: lightblue;
}
.tgl_menu_list .menu_wrap02 .menu_list p {
    border-color: /*#ffda2a*/#85ca85;
}
.tgl_menu_list .menu_list ul {
    display: block;
}
.tgl_menu_list .menu_list.long ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 1.4%;
}    
.tgl_menu_list .menu_list ul li {
    display: block;
}
.tgl_menu_list .menu_list.long ul li {
    width: 23.9%;
}    
.tgl_menu_list .menu_list.long ul li.full {
    width: 50%;
}
.tgl_menu_list .menu_list ul li a {
    position: relative;
    display: block;
    text-align: left;
    /*padding: 12px 0;*/
		padding: 8px 0;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 15px;
    letter-spacing: 0;
    transition: 0.2s ease-in-out;
}
.tgl_menu_list .menu_list ul li a::before {
    display: inline-block;
    width: 10px;
    height: 2px;
    margin-right: 5px;
    vertical-align: middle;
    content: "";
}
.tgl_menu_list .menu_wrap01 .menu_list ul li a::before {
    background-color: #f3ac7c;
}
.tgl_menu_list .menu_wrap01 .menu_list.l_blue ul li a::before {
    background-color: #ADD8E6;
}
.tgl_menu_list .menu_wrap02 .menu_list.l_blue ul li a::before {
    background-color: #ADD8E6;
}
.tgl_menu_list .menu_wrap02 .menu_list ul li a::before {
    background-color: /*#edd97e*/#A5E8A5;
}
.tgl_menu_list .menu_wrap01 .menu_list ul li a:hover {
    color: #efa126;
}
.tgl_menu_list .menu_wrap01 .menu_list.l_blue ul li a:hover {
    color: #5FB4CD;
}
.tgl_menu_list .menu_wrap02 .menu_list ul li a:hover {
    color: /*#ffda2a*/#85ca85;
}
.tgl_menu_list ul li.nav_mega_menu div a::after {
    display: none;
}

/* ------- スライドメニュー tabindex対応------- */
/* メガ */
.tgl_menu_list ul li.nav_mega_menu:focus-within > .mega_menu_wrap {
    top: 100%;
    opacity: 1;
    visibility: visible;
}

/* 追従時の設定 */
.nav_wrap.fixed {
    z-index: 10000;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
		padding: 5px 0 12px;
    /*padding: 20px 0;*/
    background-color: rgba(255, 255, 255, 0.8);
}
.nav_wrap.fixed .tgl_menu_list ul {
    justify-content: center;
}
.nav_wrap.fixed .tgl_menu_list .menu_list.long ul {
    justify-content: flex-start;
}
.pagetop {
    position: fixed;
    right: 20px;
    bottom: 110px;
    width: 110px;
    cursor: pointer;
    z-index: 11;
}
/*============================================================================

  #mainvisual

============================================================================*/
/* 下層ページのメインビジュアルの高さ、背景画像（トップページの高さはtop.css参照） */
#mainvisual {
    display: block;
    position: relative;
    width: calc(100% - 60px);
    height: 300px;
    margin: 0 auto;
    background-image: url("../images/mv_img01_re.jpg");
    /*background-position: center;*/
	/*background-position: 50% 70%;*/
	background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 30px;    
    overflow: hidden;
}
#mainvisual .inner {
    display: table;
    position: relative;
    height: inherit;
    width: 1200px;
    margin: 0 auto;
    background-repeat: no-repeat;
}
#mainvisual p.headline {
    position:relative;
}

/* 下層ページの見出し */
.mainvisual_headline {
    display: table-cell;
    letter-spacing: 0.2em;
    vertical-align: middle;
    text-align: center;
    /*text-shadow: 0 0 5px rgba(255,255,255,0.7);*/
	    text-shadow: 0 0 2px rgba(255, 255, 255, 1), 0 0 5px rgba(255, 255, 255, 0.9), 0 0 10px rgba(255, 255, 255, 0.8);
}

/* タイトル */
.mainvisual_headline p.headline {
    margin-bottom: 6px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 700;
    font-size: 30px;
    line-height: 1.3;
    color: #534741;
}

/* 英語 */
.mainvisual_headline p {
    font-family: "sofia-pro-soft", sans-serif;
    font-weight: 500;
    font-size: 18px;
    color: #b17e35;
}

/*==================================================================

  #contents

==================================================================*/
main {
    display: block;
}
#container {
    padding-top: /*57px*/20px;
}
#contents {
    position: relative;
    width: 1200px;
    margin: 0 auto;
    padding-top: 20px;
    padding-bottom: 120px;
}
#contents_left {
    float: left;
    width: 840px;
}
/* 診療案内 右メニュー */
#contents_right {
    float: right;
    width: 300px;
    font-size: 15px;
    line-height: 1.6;
    /*position: sticky;*/
    top: 120px;
    padding: 0;
    margin: 50px 0 0;
}


/*============================================================================

  $footer

============================================================================*/
.foot_bna {
    padding: 80px 0 84px;
    /* background-image: url("../images/wave_top.png"), url("../images/wave_btm.png");
    background-repeat: repeat-x, repeat-x;
    background-position: left top, left bottom;
    background-color: #f7efdf; */

    background-image:  url("../images/wave_btm.png");
    background-repeat: repeat-x;
    background-position: left bottom;
    background-color: #f7efdf;
}
.foot_bna h2 {
    margin-bottom: 34px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 20px;
    letter-spacing: 0.05em;
    line-height: 1;
    text-align: center;
}
.foot_bna_list {
    display: flex;
    flex-wrap: wrap;
    width: 1200px;
    margin: 0 auto;
}
.foot_bna_link .foot_bna_list {
    gap: 9px 9px;
    margin-bottom: 53px;
    padding-bottom: 37px;
    background: url("../images/dotline_beige.png") repeat-x left bottom;
}
.foot_bna_clinic .foot_bna_list {
    gap: 6px 6px;
}
.foot_bna_list li a {
    opacity: 1;
    transition: 0.3s ease-in-out;    
}
@media (hover: hover) and (pointer: fine) {
    .foot_bna_list li a:hover {
        opacity: 0.6;
    }
}

/* 固定ボタン */
.foot_fix_btn {
    position: fixed;
    z-index: 100;
    right: 0;
    bottom: 0;
}
.foot_fix_btn ul {
    display: flex;
    width: fit-content;
    width: -moz-fit-content;
}
.foot_fix_btn ul li a {
    display: block;
    box-sizing: border-box;
    width: 235px;
    height: 90px;
    padding-top: 57px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 1;
    text-align: center;
    color: #fff;
    outline: 1px dashed rgba(255, 255, 255, 0.6);
    outline-offset: -4px;
}
/*項目非表示による内容変更*/
/*
.foot_fix_btn ul li:nth-of-type(1) a {
    border-radius: 10px 0 0 0;
    background: url("../images/fix_btn_icon01.png") no-repeat center 13px;
    background-color: #06c755;
    transition: 0.3s ease-in-out;    
}
*/
.foot_fix_btn ul li:nth-of-type(1) a {
    border-radius: 10px 0 0 0;
    background: url("../images/fix_btn_icon03.png") no-repeat center 19px;
    background-color: #ff9090;
    transition: 0.3s ease-in-out;    
}
.btn_line_area {
	width: 95%;
	margin: 0 auto;
}
.btn_line {
	display: flex;
	justify-content: center;
	align-items: flex-end;
	margin-top: 20px;
	margin-left: auto;
	padding: 0 0 4px;		
	transition: 0.3s ease-in-out;
}

.btn_line a {
	position: relative;
	display: block;
	border-radius: 10px;
	width: 180px;
	height: 80px;
	text-align: center;
	color: #FFF;
	font-weight: bold;
	background: url("../images/fix_btn_icon01.png") no-repeat center 8px;
	background-color: #06c755;
}
.btn_line a span {
	display: block;
	position: absolute;
	left: 32px;
	bottom: 5px;
}
.foot_fix_btn ul li:nth-of-type(2) {
    display: block;
    box-sizing: border-box;
    width: 235px;
    height: 90px;
    padding-top: 25px;
    font-family: "sofia-pro-soft", sans-serif;
    font-weight: 500;
    font-size: 24px;
    letter-spacing: 0.05em;
    line-height: 1;
    text-align: center;
    color: #fff;
    outline: 1px dashed rgba(255, 255, 255, 0.6);
    outline-offset: -4px;
    background-color: #f5b754;
}
.foot_fix_btn ul li:nth-of-type(2) span {
    display: block;
    margin-bottom: 8px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 1;
}
.foot_fix_btn ul li:nth-of-type(2) em {
    font-size: 17px;
    font-style: normal;
}
.foot_fix_btn ul li:nth-of-type(3) a {
    background: url("../images/fix_btn_icon02.png") no-repeat center 20px;
    background-color: #6dbcf3;
    transition: 0.3s ease-in-out;    
}
.foot_fix_btn ul li:nth-of-type(4) a {
    border-radius: 0 10px 0 0;
    background: url("../images/fix_btn_icon03.png") no-repeat center 19px;
    background-color: #ffadad;
    transition: 0.3s ease-in-out;    
}
/*項目非表示による内容変更*/
/*
.foot_fix_btn ul li:nth-of-type(1) a:hover {
    background-color: #00c04d;
}
*/
.foot_fix_btn ul li:nth-of-type(1) a:hover {
    background-color: #ff9090;
}
.foot_fix_btn ul li:nth-of-type(2) a:hover {
    background-color: #ffa313;
}
.foot_fix_btn ul li:nth-of-type(3) a:hover {
    background-color: #4ab3ff;
}
.foot_fix_btn ul li:nth-of-type(4) a:hover {
    background-color: #ff9090;
}

footer {
    width: 100%;
    background-color: #fff;
}
footer .inner {
    width: 1200px;
    margin: 0 auto;
    padding: 80px 0 42px;
}

/* フッターのナビ */
.footer_navi {
    display: flex;
    justify-content: space-between;
    margin-bottom: 80px;
}
.fnav_list li a {
    position: relative;
    display: block;
    width: fit-content;
    width: -moz-fit-content;
    padding-left: 16px;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.05em;
    line-height: 1;
    color: #534741;
    background: url("../images/foot_nav_deco.png") no-repeat left center;
}
.fnav_list li:not(:last-of-type) a {
    margin-bottom: 24px;
}

/* ホバーのボーダー */
.fnav_list li a::after,
.fnav_tit a::after,
.fnav_sublist li a::after {
    position: absolute;
    left: 0;
    right: 0;
    bottom: -2px;
    width: 100%;
    height: 1px;
    margin: auto;
    background-color: #f5b754;
    transition-duration: 0.15s;
    transition-timing-function: ease-out;
    transform: scaleX(0);
    content: "";
    z-index: 1;
}
.fnav_list li a:hover::after,
.fnav_tit a:hover::after,
.fnav_sublist li a:hover::after {
    transform: scaleX(1);
}

.fnav_sublist_wrap {
    display: flex;
    gap: 76px;
    margin-bottom: 48px;
}
.fnav_tit a {
    position: relative;
    display: block;
    width: fit-content;
    width: -moz-fit-content;
    margin-bottom: 20px;
    padding-left: 16px;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.05em;
    line-height: 1;
    color: #534741;
    background: url("../images/foot_nav_deco.png") no-repeat left center;
}
.fnav_sublist li a {
    position: relative;
    display: block;
    width: fit-content;
    width: -moz-fit-content;
    font-size: 15px;
    letter-spacing: 0.05em;
    line-height: 1;
    color: #534741;
}
.fnav_sublist li a::before {
    display: inline-block;
    width: 10px;
    height: 2px;
    margin-right: 6px;
    vertical-align: middle;
    content: "";
    background-color: #f3ac7c;
}
.fnav_sublist li:not(:last-of-type) a {
    margin-bottom: 15px;
}

/* フッターの医院概要 */
.footer_info {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.footer_info_left{
    display: flex;
    flex-flow: wrap;
    gap: 20px 10px;
    /*width: 810px;*/
	width: 510px;
}
.footer_info_left .note{
    width: 100%;
    padding: 8px 10px;
    text-align: center;
    background-color: #ffe4e5;
    border-radius: 10px;
    font-size: 14px;
}
.footer_info_tel{
    width: 100%;
}
.footer_info_tel_wrap {
    width: 100%;
    padding: 25px 35px 15px;
    text-align: center;
    border-radius: 10px;
    background-color: #f8f6f2;
}
.footer_info_tel_wrap p.title {
    margin-bottom: 11px;
    margin-top: 0;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 16px;
    line-height: 1;
    letter-spacing: 0.05em;
}
.footer_info_tel_wrap p.title::before,
.footer_info_tel_wrap p.title::after {
    display: inline-block;
    width: 40px;
    height: 1px;
    vertical-align: middle;
    content: "";
    background-color: #5b504a;
}
.footer_info_tel_wrap p::before {
    margin-right: 7px;
}
.footer_info_tel_wrap p::after {
    margin-left: 7px;
}
.footer_info_tel_wrap a {
    display: inline-block;
    margin: 0 auto 10px;
    font-family: "sofia-pro-soft", sans-serif;
    font-weight: 500;
    font-size: 34px;
    color: #f38d47;
    line-height: 1;
    letter-spacing: 0.1em;
}
.wakuchin_kenshin .footer_info_tel_wrap a{
    color: #85ca85;
}
.footer_info_tel_wrap a span {
    font-size: 24px;
    color: #5b504a;
}

.footer_info_tel_wrap .add{
    text-align: center;
    font-size: 13px;
}

.footer_info_tel p.note {
    margin-top: 8px;
    font-size: 13px;
    line-height: 1.5;
    letter-spacing: 0.05em;
    text-align: center;
}

.footer_info_right{
    /*width: calc(100% - 850px);*/
	width: calc(100% - 550px);
}

.footer_info_text {
}
.footer_info_text p {
    font-size: 14px;
    line-height: 1.571;
    letter-spacing: 0.075em;
}
.footer_info_text p:first-of-type {
    margin-bottom: 40px;
}
.footer_info_schedule {
    width: 100%;
    margin-top: 15px;
    text-align: center;
}
.footer_info_schedule a {
    display: inline-block;
    width: 300px;
    line-height: 50px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 16px;
    letter-spacing: 0.05em;
    text-align: center;
    color: #534741;
    border-radius: 10px;
    border: 1px dashed #f5b754;
    background-image: url("../images/arrow_orange.svg");
    background-repeat: no-repeat;
    background-size: 15px auto;
    background-position: right 14px center;
    background-color: #fff6e3;
    transition: 0.3s ease-in-out;    
}
.wakuchin_kenshin .footer_info_schedule a{
    border: 1px dashed #85ca85;
    background: #e7f4e7;
}
.footer_info_schedule a::before {
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-right: 13px;
    vertical-align: sub;
    background: url("../images/foot_time_icon.png") no-repeat;
    background-size: cover;
    content: "";
}
@media (hover: hover) and (pointer: fine) {
    .footer_info_schedule a:hover {
        background-position: right 7px center;
        background-color: #fadfb2;
    }
    .wakuchin_kenshin .footer_info_schedule a:hover{
        background-position: right 7px center;
        background-color: #baecba;
    }
}
.footer_map {
    height: 500px;
}
.footer_map iframe {
    width: 100%;
    height: 100%;
    border: none;
}

/* コピーライト */
.copy {
    padding: 22px 0 100px;
    text-align: center;
    background-color: #f8f6f2;
}
.copy small {
    font-family: "sofia-pro-soft", sans-serif;
    font-weight: 300;
    font-size: 12px;
    letter-spacing: 0.1em;
    line-height: 1;
}
/*==================================================================

  タイトル

==================================================================*/
h1 {
    position: absolute;
    box-sizing: border-box;
    width: 100%;
    top: 13px;
    right: 0;
    left: 0;
    margin: auto !important;
    padding: 0 60px !important;
    font-size: 14px;
    line-height: 1;
    letter-spacing: 0;
    color: #b27f36;
}
@media screen and (max-width:1600px) {
    h1 {
        padding: 0 30px !important;
    }
}

/*中央寄せ　背景画像あり*/
.tit01 {
    margin-bottom: 40px;
    padding-bottom: 26px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 26px;
    letter-spacing: 0.05em;
    line-height: 1;
    text-align: center;
    background: url("../images/top_medical_tit_deco.png") no-repeat center bottom;
    background-size: auto 11px;
}
.tit01::before {
    display: block;
    margin-bottom: 15px;
    font-family: "sofia-pro-soft", sans-serif;
    font-weight: 500;
    font-size: 50px;
    letter-spacing: 0.05em;
    line-height: 1;
    color: #b27f36;
}

/* 左寄せ　背景画像あり */
.tit02 {
    position: relative;
    margin-bottom: 20px;
    padding: 0 0 12px 40px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 23px;
    letter-spacing: 0.15em;
    line-height: 1.3;
    text-align: left;
}
.tit02::before {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 8px;
	background-image: repeating-linear-gradient(45deg, #f7deb6 0px, #f7deb6 1px, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 50%);
	background-size: 8px 8px;
	content: '';
}
.tit02::after {
	position: absolute;
	top: 0;
	left: 0;
	width: 31px;
	height: 30px;
    background: url("../images/tit02_deco.png") no-repeat;
	content: '';
}
/* 左寄せ　背景画像なし */
.tit02.ver02 {
    position: relative;
    margin-bottom: 20px;
    padding: 0 0 12px 0;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 23px;
    letter-spacing: 0.15em;
    line-height: 1.3;
    text-align: left;
}

.tit02.ver02::after {
	content: none;
}

/*左寄せ*/
.tit03 {
    margin-bottom: 15px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 20px;
    text-align: left;
    letter-spacing: 0.1em;
    line-height: 1.3;
    color: #b27f36;
}
.tit03 strong {
    display: block;
    width: 100%;
    margin-bottom: 8px;
    padding: 6px 5px;
    font-weight: 400;
    font-size: 90%;
    color: #fff;
    background-color: #b27f36;
}

.tit04{
    margin-bottom: 10px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 18px;
    text-align: left;
    letter-spacing: 0.1em;
    line-height: 1.3;
    color: #f5b754;
}


/*==================================================================

  .list
  共通CSSなので使っていないものも消さずに残してください

==================================================================*/
/*院長略歴*/
.list01 li {
    padding: 10px 0;
    line-height: 1.4;
    border-bottom: 1px dashed #CFB9B2;
}
/*院長略歴　年月無し*/
.list02 {
    margin: 0 0 15px;
    border-width: 0 1px 1px;
}
.list02 li {
    margin: 0 0px 0px;
    padding: 6px 4px 6px 0;
    border-bottom: 1px dashed #ddd;
}
/*まる*/
.list03 li {
    position: relative;
    margin-bottom: 10px;
    padding-left: 15px;
    font-size: 16px;
    line-height: 1.6;
}
.list03 li:last-child {
    margin-bottom: 0;
}
.list03 li:before {
    display: block;
    position: absolute;
    top: 9px;
    left: 0;
    width: 7px;
    height: 7px;
    background-color: #F3AC7C;
    border: 1px solid #F3AC7C;
    border-radius: 100%;
    content: '';
}
.list03 li i {
    margin-right: 8px;
}
/*さんかく*/
.list04 li {
    position: relative;
    margin-bottom: 15px;
    padding-left: 22px;
    font-size: 16px;
    line-height: 1.5;
}
.list04 li em {
    font-weight: bold;
    color: #b27f36;
}
.list04 li:before {
    position: absolute;
    top: 0.5em;
    left: 7px;
    width: 0;
    height: 0;
    border: 5px solid transparent;
    border-left: 5px solid #f5b754;
    content: "";
}
/*やじるし*/
.list05 li {
    position: relative;
    margin-bottom: 10px;
    padding-left: 15px;
}
.list05 li:before {
    position: absolute;
    left: 0;
    top: 0.3em;
    height: 5px;
    width: 5px;
    transform: rotate(45deg);
    background-color: transparent;
    border-top: 1px solid #333;
    border-right: 1px solid #333;
    content: "";
}
/* まる & 背景 */
.list06 {
    padding: 35px 15px 25px 45px;
    background-color: #fff;
    border-radius: 10px;
}
.list06:after {
    display: block;
    clear: both;
    content: "";
}
.list06 li {
    position: relative;
    float: left;
    margin-bottom: 15px;
    padding-left: 0.9em;
    padding-right: 5%;
    font-size: 15.5px;
    line-height: 1.4;
}
.list06 li:before {
    display: block;
    content: '';
    position: absolute;
    top: 6px;
    left: 0;
    width: 7px;
    height: 7px;
    background-color: #F3AC7C;
    border: 1px solid #F3AC7C;
    border-radius: 100%;
}
.list06.ver02 li:before{
 content: none;
}
.list06.ver02 li a:before{
    margin-right: 5px;
   font-family:  "Font Awesome 5 Free";
   font-weight: 900;
   color: #F3AC7C;
    content: "\f13a";
}
.list06.ver02 li a.link-square:before{
    margin-right: 5px;
    font-family:  "Font Awesome 5 Free";
    font-weight: 900;
    color: #F3AC7C;
    content: "\f101";
}

/*まる & 枠 */
.list07 {
    border: 3px solid #eee;
    padding: 30px;
}
.list07 li {
    padding-left: 0.9em;
    margin-bottom: 10px;
    position: relative;
}
.list07 li:last-child {
    margin-bottom: 0;
}
.list07 li:before {
    display: block;
    content: '';
    position: absolute;
    top: 10px;
    left: 0;
    width: 3px;
    height: 3px;
    background-color: #E0D0BF;
    border: 1px solid #E0D0BF;
    border-radius: 100%;
}
.list07 li i {
    margin-right: 8px;
}
/*チェック*/
.list08 {
    margin-bottom: 30px;
    padding: 35px 10px 20px 45px;
    background-color: #fff;
    border-radius: 10px;
}
.list08:after {
    display: block;
    clear: both;
    content: "";
}
.list08 li {
    position: relative;
    float: left;
    margin-right: 5%;
    margin-bottom: 20px;
    margin-left: 28px;
    font-size: 16px;
    line-height: 1.5;
    border-bottom: 1px dotted #cdcdcd;
}
.list08 li:before {
    display: block;
    position: absolute;
    top: -2px;
    left: -35px;
    font-family: "Font Awesome 5 Free";
    font-size: 18px;
    font-weight: 900;
    content: "\f00c";
    padding-left: 10px;
    color: #f5b754;
}
.list08-box {
    position: relative;
    margin-bottom: 20px;
    letter-spacing: 0.15em;
    padding: 30px;
    background: #b8bfff;
}
.list08-box .list08 {
    margin-bottom: 0;
    padding: 35px 25px 20px 50px;
    background-color: #fff;
}
.list08-box .list08 li {
    width: auto;
}
.list08-box::before {
    position: absolute;
    width: 65px;
    height: 50px;
    top: -5px;
    left: -5px;
    margin: auto;
    -webkit-clip-path: polygon(0 0, 0 85%, 100% 0);
    clip-path: polygon(0 0, 0 85%, 100% 0);
    background-color: #1f2774;
    z-index: 0;
    content: "";
}
.list08-box::after {
    position: absolute;
    width: 65px;
    height: 50px;
    bottom: -5px;
    right: -5px;
    margin: auto;
    -webkit-clip-path: polygon(0 100%, 100% 100%, 100% 15%);
    clip-path: polygon(0 100%, 100% 100%, 100% 15%);
    background-color: #1f2774;
    z-index: 0;
    content: "";
}
/*数字＋背景色*/
.list09 {
    padding: 25px;
    background: #f5f5ff;
    counter-reset: section;
}
.list09 li {
    display: flex;
    align-items: baseline;
    position: relative;
    margin-bottom: 10px;
    padding-left: 5px;
    padding-bottom: 8px;
    border-bottom: #1f2774 1px dashed;
}
.list09 li::before {
    counter-increment: section;
    content: counter(section);
    padding-right: 8px;
    font-size: 106%;
    font-weight: 700;
    color: #1F2774;
}
/*●の数字＋背景色*/
.list10 {
    padding: 25px 40px;
    background: #fff;
    border-radius: 10px;
    counter-reset: section;
}
.list10 li {
    display: flex;
    align-items: baseline;
    position: relative;
    margin-bottom: 10px;
    padding-left: 5px;
    padding-bottom: 8px;
    font-size: 16px;
    line-height: 1.5;
    border-bottom: 1px dashed #CFB9B2;
}
.list10 li::before {
    display: inline;
    counter-increment: section;
    content: counter(section);
    font-family: "sofia-pro-soft", sans-serif;
    font-weight: 500;
    font-size: 108%;
    color: #fff;
    background-color: #f5b754;
    border-radius: 20px;
    padding: 2px 11px;
    margin-right: 10px;
}
/*数字の右側に）＋背景色*/
.list11 {
    padding: 25px 40px;
    background: #fff;
    border-radius: 10px;
}
.list11 li {
    position: relative;
    padding: 10px 10px;
    font-size: 16px;
    text-align: center;
    background-color: #f7f7f7;
    border-radius: 5px;
}
.list11 li:not(:last-of-type) {
    margin-bottom: 26px;
}
.list11 li:not(:last-of-type)::after {
    position: absolute;
    width: 100%;
    left: 0px;
    bottom: -24px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 20px;
    line-height: 1;
    text-align: center;
    content: "";
}
/*米印のリスト*/
.list12 li {
    position: relative;
    margin-bottom: 5px;
    color: #888;
    font-size: 95%;
    padding-left: 1em;
    text-indent: -1em;
}
.list12 li::before {
    content: "※";
    display: inline;
}

/*----------枠----------*/
.box_style01 {
    background: #fff;
    padding: 30px 40px;
    margin: 0 0 15px;
    border-radius: 10px;
}
.box_style02 {
    border: solid 1px #f7deb6;
    padding: 30px 40px;
    background: #fff;
    border-radius: 10px;
}
.box_style03 {
    border: dashed 1px #CFB9B2;
    padding: 30px 40px;
    border-radius: 10px;
}
.box_style01 p,
.box_style02 p,
.box_style03 p {
    font-size: 16px;
}
.box_style02 .list06 {
    padding: 0 0;
}

/*==================================================================

  .btn
  共通CSSなので使っていないものも消さずに残してください

==================================================================*/
/*ボタン ゴースト*/
.btn01 {
    position: relative;
}
.btn01 a {
    display: inline-block;
    position: relative;
    padding: 15px 35px 15px 15px;
    line-height: 1;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 16px;
    text-align: center;
    background-image: url("../images/arrow_orange.svg");
    background-size: 15px 15px;
    background-repeat: no-repeat;
    background-position: right 14px center;
    background-color: #fff;
    border: 3px solid #f7deb6;
    border-radius: 10px;
    transition: ease-in-out 0.1s;
}
.btn01 a i {
    margin-right: 10px;
    transition: ease-in-out 0.1s;
}
.btn01 a:hover {
    background-position: right 7px center;
    background-color: #fadfb2;
    color: #b27f36;
}

/* btn02 */
.btn02 a {
    text-decoration: none;
    display: inline-block;
    color: #fff;
    border-radius: 4px;
    background: #a5cd95;
    box-shadow: 0px 5px 0 #74aa5f;
    padding: 16px;
    transition: 0.2s all ease 0s;
}
.btn02 a:hover {
    transform: translate3d(0, 3px, 0);
    box-shadow: 0px 1px 0 #74aa5f;
}
.btn02 a i {
    margin-right: 7px;
}
/* btn03 */
.btn03 a {
    position: relative;
    display: inline-block;
    padding: 8px 20px;
    border: 1px solid #00408f;
    background: #00408f;
    color: #fff;
    font-weight: bold;
    transition: ease-in-out 0.2s;
    border-radius: 25px;
    overflow: hidden;
}
.btn03 a::before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    content: '';
    background: #fff;
    transform-origin: right top;
    transform: scale(0, 1);
    transition: transform .3s;
}
.btn03 a span {
    z-index: 2;
    position: relative;
}
.btn03 a i {
    margin-right: 7px;
}
.btn03 a:hover {
    color: #00408f;
}
.btn03 a:hover::before {
    transform-origin: left top;
    color: #00408f;
    transform: scale(1, 1);
}
/*btn04*/
.btn04 a {
    position: relative;
    display: inline-block;
    padding: 8px 20px;
    color: #fff;
    background: #00408f;
    font-weight: bold;
    transition: ease-in-out 0.2s;
}
.btn04 a i {
    margin-right: 7px;
}
.btn04 a:hover {
    color: #fff;
}
.btn04 a span {
    z-index: 2;
    position: relative;
}
.btn04 a::before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    content: '';
    background: #6baaea;
    transform-origin: center center;
    transform: scale(0, 1);
    transition: transform .3s;
}
.btn04 a:hover::before {
    transform: scale(1, 1);
}
/*btn05*/
.btn05 a {
    width: 130px;
    display: inline-block;
    position: relative;
    padding: 9px 0 7px;
    font-family: serif;
    color: #ffffff;
    font-size: 15px;
    font-weight: 400;
    line-height: 25px;
    transition: ease-in-out 0.2s;
}
.btn05 a:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    transition: 0.5s;
    background: -webkit-linear-gradient(0deg, #0068b7 0%, #208ee1 100%);
    background: -moz-linear-gradient(0deg, #0068b7 0%, #208ee1 100%);
    background: -o-linear-gradient(0deg, #0068b7 0%, #208ee1 100%);
    background: linear-gradient(90deg, #0068b7 0%, #208ee1 100%);
}
.btn05 a:after {
    background: -webkit-linear-gradient(0deg, #59b4f9 0%, #94d0fd 100%);
    background: -moz-linear-gradient(0deg, #59b4f9 0%, #94d0fd 100%);
    background: -o-linear-gradient(0deg, #59b4f9 0%, #94d0fd 100%);
    background: linear-gradient(90deg, #59b4f9 0%, #94d0fd 100%);
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
}
.btn05 a:hover:before {
    opacity: 0;
}
.btn05 p {
    z-index: 5;
    position: relative;
    text-align: center;
    margin: 0 !important;
    padding: 0 !important;
}
.btn05 p img {
    position: absolute;
    right: 15px;
    top: 9px;
}
.btn05 a:hover img {
    opacity: 1;
    transform: translateX(0.3em);
    transition: ease-in-out 0.4s;
}
/*btn06*/
.btn06 {
    font-weight: 600;
    line-height: 1.5;
    position: relative;
    display: inline-block;
    cursor: pointer;
    user-select: none;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    letter-spacing: 0.1em;
    color: #212529;
    border-radius: 0.5rem;
}
.btn06 a i {
    margin-right: 7px;
}
.btn06 a {
    border: 2px solid #000;
    border-radius: 0;
    background: #fff;
    box-shadow: 4px 4px 0 #000;
    padding: 10px;
}
.btn06 a:hover {
    box-shadow: -4px -4px 0 #000;
    transition: all 0.3s;
}
/*btn07*/
.btn07 a {
    position: relative;
    display: block;
    padding: 0.8em;
    text-align: center;
    border: 1px solid #9C27B0;
    text-decoration: none;
    outline: none;
    transition: all .4s;
    font-weight: 600;
}
.btn07 a i {
    margin-right: 7px;
}
.btn07 a::before, 
.btn07 a::after {
    position: absolute;
    top: -1px;
    right: -1px;
    bottom: -1px;
    left: -1px;
    z-index: 2;
    content: '';
    transition: all .4s;
}
.btn07 a::before {
    border-top: 1px solid #FF5722;
    border-bottom: 1px solid #FF5722;
    transform: scale(0, 1);
}
.btn07 a::after {
    border-right: 1px solid #fff;
    border-left: 1px solid #fff;
    transform: scale(1, 0);
}
.btn07 a:hover {
    color: #FF5722;
}
.btn07 a:hover::after, 
.btn07 a:hover::before {
    transform: scale(1);
}
.btn01_arrow {
    position: relative;
    left: 0px;
    margin-right: 14px;
    transition: 0.2s ease-in, 0.22s ease-out;
}
.btn01_arrow img {
    opacity: 1 !important;
}
.btn01_arrow, .btn01_arrow img {
    width: 18px;
    height: 13px;
}
.btn01 a:hover .btn01_arrow {
    left: 4px;
}

/*==================================================================

  $画像寄せ
  共通CSSなので使っていないものも消さずに残してください

==================================================================*/
/* 画像を右寄せ　※画像サイズはhtmlで調整 */
.img_fr {
    display: block;
    position: relative;
    float: right;
    margin-left: 30px;
    margin-bottom: 0 !important;
    text-align: center;
    max-width: 300px;
}
.img_fr img {
    border-radius: 3px;
    margin-bottom: 7px;
    width: 100%;
    height: auto;
}
/* 画像に対して説明文がある場合は、dlで囲い、dtに画像を、ddにテキストを使う */
.img_fr dd {
    padding-left: 20px;
    line-height: 1.3;
    font-size: 15px;
    font-weight: bold;
    color: #1F2774;
    text-align: left;
}


/*==================================================================

  $アンカーリンンク
  共通CSSなので使っていないものも消さずに残してください

==================================================================*/
/* 共通CSS */
[class^="ank0"] {
    padding-top: 10px;
    display: flex;
    gap: 10px 1.5%;
    flex-wrap: wrap;
}
[class^="ank0"] li {
    display: flex;
    align-items: center;
    align-content: center;
    justify-content: center;
    position: relative;
}
[class^="ank0"] li a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    padding: 10px 10px 20px;
    border: 1px dashed #ec9100;
    font-weight: bold;
    font-size: 15px;
    color: #ec9100;
    text-align: center;
    vertical-align: middle;
    border-radius: 10px;
    transition: 0.1s ease-in-out;
}
[class^="ank0"] li a:hover {
    background-color: #ec9100;
    color: #fff;
}
[class^="ank0"] li i {
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 4px;
    margin: auto;
}

/* 2個並び */
.ank02 li {
    width: 48%;
}

/* 3個並び */
.ank03 li {
    width: 31%;
}

/* 4個並び */
.ank04 li {
    width: 23%;
}

/*==================================================================

  .layout
  共通CSSなので使っていないものも消さずに残してください

==================================================================*/
/* --------------layout共通タイトル-------------- */
.layout_tit {
    color: #b27f36;
    font-size: 19px;
    font-weight: bold;
}
.layout_tit em {
    margin-right: 10px;
    color: #BDA087;
    font-family: "Times New Roman", Times, serif;
    font-size: 30px;
    font-weight: normal;
}
.layout_tit span {
    margin-right: 10px;
    color: #BDA087;
    font-family: "Times New Roman", Times, serif;
    font-size: 30px;
    font-weight: normal;
}
/* layout小タイトル */
.layout_tit_02 {
    color: #1F2774;
    font-size: 18px;
    font-weight: bold;
}
/* 1つ並びのレイアウト。画像は無し、左にタイトル、右に文章 */
.layout01 {
    position: relative;
    margin: 0 0 15px;
}
.layout01:before {
    position: absolute;
    top: -3px;
    left: 0;
    width: 100%;
    border-top: 1px solid #CFB9B2;
    content: "";
}
.layout01 .layout01_box {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    margin: 5px 0;
    background-color: #fff;
}
.layout01 .layout01_box:after {
    position: absolute;
    bottom: -3px;
    left: 0;
    width: 100%;
    border-top: 1px solid #CFB9B2;
    content: "";
}
.layout01 .layout01_title {
    width: 30%;
    background-color: #fff6e3;
    letter-spacing: 0.1em;
    font-weight: bold;
    font-size: 120%;
    text-align: center;
    display: flex;
    justify-content: center;
    align-content: center;
    align-items: center;
    flex-wrap: wrap;
}
.layout01 .layout01_title em {
    display: block;
    width: 100%;
    line-height: 1;
    font-family: "Times New Roman", Times, serif;
    font-size: 150%;
    font-weight: normal;
    color: #C3AF97;
}
.layout01 .layout01_title span {
    font-size: 75%;
}
.layout01 .layout01_text {
    width: 70%;
    padding: 3%;
    font-size: 16px;
    line-height: 1.6;
}
.layout01 .layout01_text .list06 {
    padding: 25px 15px 10px 30px;
    background-color: #fff6e3;
}
.layout01 .layout01_text .list06.nobg {
    padding: 0 0;
    background-color: transparent;
}

/* 2つ並びのレイアウト。最初(dt)にタイトル、画像がその下(dd)、画像の下に文章 */
.layout02 {
    margin: 0 0 15px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.layout02::after {
    display: block;
    clear: both;
    content: "";
}
.layout02 .layout02_box {
    width: 49%;
    margin: 0 2% 0 0;
    margin-bottom: 25px;
    padding: 4%;
    background-color: #f7f7f7;
}
.layout02 .layout02_box:nth-child(even) {
    margin-right: 0;
}
.layout02 .layout02_box .layout02_text {
    margin-bottom: 10px;
    font-weight: bold;
    font-size: 18px;
    line-height: 1.5;
    text-align: center;
    color: #1F2774;
}
.layout02 .layout02_text img {
    width: 100%;
    height: auto;
}
/* 1つ並びのレイアウト。画像が左、右にタイトル、タイトル下に文章 */
.layout03 {
    margin: 0 0 15px;
}
.layout03 .layout03_box {
    display: flex;
    margin-bottom: 20px;
    background-color: #fff;
    padding: 2%;
}
.layout03 .layout03_title {
    width: 27%;
    padding: 2%;
    background-color: #fff6e3;
    text-align: center;
    display: flex;
    align-items: center;
    line-height: 1.5;
}
.layout03 .layout03_title img {
    width: 100%;
    height: auto;
}
.layout03 .layout03_text {
    width: 73%;
    padding: 1% 3%;
    font-size: 16px;
}
/* 1つ並びのレイアウト。画像が左、右にタイトル、タイトル下に文章、タイトルと文章のエリア(dd)は背景色が別の色 */
.layout04 {
    margin: 0 0 15px;
}
.layout04 .layout04_box {
    display: flex;
    margin-bottom: 20px;
    background-color: #f7f7f7;
    padding: 2%;
}
.layout04 .layout04_title {
    width: 27%;
    padding-right: 2%;
    display: flex;
    align-items: center;
}
.layout04 .layout04_title img {
    width: 100%;
    height: auto;
}
.layout04 .layout04_text {
    width: 73%;
    padding: 3%;
    background-color: #fff;
}
/* 1つ並びで3列に区切られたレイアウト。画像が左、画像の下にタイトル、右に文章 */
.layout05 {
    margin: 0 0 15px;
}
.layout05 .layout05_box {
    display: flex;
    margin-bottom: 20px;
    background-color: #f7f7f7;
    padding: 2%;
}
.layout05 .layout05_title {
    padding: 2%;
    width: 25%;
    background-color: #fff;
    text-align: center;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
}
.layout05 .layout05_title img {
    width: 100%;
    padding-bottom: 10px;
    height: auto;
    display: block;
}
.layout05 .layout05_text1 {
    padding: 1% 3%;
    vertical-align: top;
}
.layout05 .layout05_text1:nth-child(2) {
    width: 40%;
}
.layout05 .layout05_text1:nth-child(3) {
    width: 40%;
    border-left: 1px solid #e2e2e2;
}
.layout05 .layout05_title h4 {
    font-size: 18px;
    font-weight: bold;
}
.layout05 .layout05_text1 h5 {
    font-weight: bold;
    margin: 0 0 5px;
}
.layout05 .layout05_text1 h4 em, .layout05 .layout05_text1 h5 em {
    margin-right: 10px;
    color: #BDA087;
    font-family: "Times New Roman", Times, serif;
    font-size: 30px;
    font-weight: normal;
}
.layout05_text1 ul {
    margin-bottom: 15px;
}
.layout05 ul.list03 li {
    margin: 0;
}
/* 1つ並びで3列に区切られたレイアウト。左がタイトル、真ん中と右に文章 */
.layout06 {
    margin: 0 0 15px;
}
.layout06 .layout06_box {
    display: flex;
    padding-bottom: 5px;
    position: relative;
}
.layout06 .layout06_box:before {
    position: absolute;
    top: -3px;
    left: 0;
    width: 100%;
    border-top: 1px solid #ededed;
    content: "";
}
.layout06 .layout06_box:last-child:after {
    position: absolute;
    bottom: -3px;
    left: 0;
    width: 100%;
    border-top: 1px solid #f0f0f0;
    content: "";
}
.layout06 .layout06_title {
    width: 30%;
    padding: 0 3%;
    background-color: #f7f7f7;
    vertical-align: middle;
    line-height: 1.5;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-content: center;
    font-size: 120%;
}
.layout06 .layout06_title h4 {
    letter-spacing: 0.1em;
    color: #1F2774;
    font-weight: bold;
    text-align: center;
}
.layout06 .layout06_box:last-of-type {
    padding: 0;
}
/* 数字 */
.layout06 .layout06_title em {
    display: block;
    width: 100%;
    line-height: 1;
    margin: 0 8px;
    font-family: "Times New Roman", Times, serif;
    font-size: 170%;
    font-weight: normal;
    color: #C3AF97;
}
.layout06 .layout06_text1 {
    padding: 2% 3%;
    vertical-align: top;
}
.layout06 .layout06_text1:nth-child(2) {
    width: 35%;
}
.layout06 .layout06_text1:nth-child(3) {
    width: 35%;
    border-left: 1px solid #e2e2e2;
}
.layout06 .layout06_text1 h5 {
    font-size: 18px;
    font-weight: bold;
    margin: 0 0 5px;
}
/* 3つ並びのレイアウト。 */
.layout07 {
    margin: 0 0 15px;
    display: flex;
    align-content: flex-start;
    flex-wrap: wrap;
}
.layout07::after {
    display: block;
    clear: both;
    content: "";
}
.layout07 .layout07_box {
    width: 32%;
    margin-right: 2%;
    margin-bottom: 2%;
    padding: 3%;
    border-radius: 10px;
    background-color: #f7f7f7;
}
.layout07 .layout07_box:nth-child(3n) {
    margin-right: 0;
}
.layout07 .layout07_box .layout07_title {
    margin-bottom: 7px;
    padding-bottom: 7px;
    border-bottom: 1px dashed #ddd;
    font-size: 17px;
    font-weight: bold;
    text-align: center;
}
.layout07 .layout07_box .layout07_title em {
    margin-right: 8px;
    font-size: 24px;
    font-family: 'Quicksand', sans-serif;
}
.layout07 .layout07_box .layout07_text {
    line-height: 1.5;
}
/* 3つ並びのレイアウト。矢印付き */
.layout08 {
    margin: 0 0 15px;
    display: flex;
    align-content: flex-start;
    flex-wrap: wrap;
}
.layout08 .layout08_box {
    position: relative;
    width: 100%;
    margin-bottom: 25px;
    padding: 3%;
    border-radius: 10px;
    background-color: #f7f7f7;
}
.layout08 .layout08_box:last-child {
    margin-right: 0;
}
.layout08 .layout08_box::before {
    position: absolute;
    right: 0px;
    left: 0;
    height: 7px;
    width: 7px;
    transform: rotate(135deg);
    background-color: transparent;
    border-top: 2px solid #1F2774;
    border-right: 2px solid #1F2774;
    content: "";
    bottom: -16px;
    margin: auto;
}
.layout08 .layout08_box:last-child::before {
    display: none;
}
.layout08 .layout08_box .layout08_title {
    margin-bottom: 7px;
    padding-bottom: 7px;
    border-bottom: 1px dashed #ddd;
    font-size: 17px;
    font-weight: bold;
    text-align: center;
}
.layout08 .layout08_box .layout08_title em {
    margin-right: 8px;
    font-size: 24px;
    font-family: 'Quicksand', sans-serif;
}
.layout08 .layout08_box .layout08_text {
    line-height: 1.5;
}
/* 1つ並びで2列に区切られたレイアウト。画像が左、画像の下にタイトル、右に文章 */
.layout09 {
    margin: 0 0 15px;
}
.layout09 .layout09_box {
    display: flex;
    margin-bottom: 20px;
    background: #f7f7f7;
    padding: 2%;
}
.layout09 .layout09_title {
    padding: 2%;
    width: 27%;
    background-color: #fff;
    text-align: center;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
}
.layout09 .layout09_title img {
    width: 100%;
    padding-bottom: 10px;
    height: auto;
    display: block;
}
.layout09 .layout09_text1 {
    padding: 1% 3%;
    width: 73%;
    vertical-align: top;
}
.layout09 .layout09_title h4 {
    font-size: 18px;
    font-weight: bold;
}
.layout09 .layout09_text1 h5 {
    font-weight: bold;
    margin: 0 0 5px;
}
.layout09 .layout09_text1 h4 em, .layout09 .layout09_text1 h5 em {
    margin-right: 10px;
    color: #71b4d7;
    font-family: "Times New Roman", Times, serif;
    font-size: 30px;
    font-weight: normal;
}
.layout09_text1 ul {
    margin-bottom: 15px;
}
.layout09 ul.list03 li {
    margin: 0;
}
/* layout10 */
.layout10 {
    position: relative;
}
.layout10 .flow_box {
    position: relative;
    display: flex;
    padding: 32px;
    background: #fff;
}
.layout10 .flow_box::before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 60px;
    margin: auto;
    width: 4px;
    height: calc(100% - 4px);
    border-right: #71b4d7 dotted 4px;
    box-sizing: border-box;
    content: "";
}
.layout10 .flow_box:first-child::before {
    top: 32px;
    bottom: auto;
    height: calc(100% - 34px);
}
.layout10 .flow_box:last-child::before {
    top: 2px;
    bottom: auto;
    height: 86px;
}
.layout10 .flow_box:nth-child(even) {
    background: #dfebf5;
}
.layout10 .flow_box:nth-child(odd) {
    background: #f7f8f9;
}
.layout10 .flow_box .number {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    z-index: 1;
    width: 60px;
    height: 60px;
    margin-bottom: 0;
    margin-right: 4%;
    background: #1f2774;
    border-radius: 50%;
    line-height: 1;
    color: #fff;
    font-size: 28px;
}
.layout10 .flow_box .layout10_box {
    width: 90%;
}
.layout10 .flow_box .layout10_text .title {
    background: #1f2774;
    margin-top: 24px;
    padding: 12px 18px;
    border-radius: 6px;
    color: #fff;
    line-height: 1;
    font-size: 18px;
    letter-spacing: 0.12em;
}
.layout10 .flow_box .layout10_text .title span {
    position: relative;
}
.layout10 .flow_box .layout10_text .title span::after {
    display: inline-block;
    content: "|";
    margin: 0 12px;
}
.layout10 .flow_box .layout10_text .title2 {
    padding-bottom: 2px;
    padding-top: 16px;
    margin-bottom: 10px;
    font-size: 18px;
    border-bottom: 1px dashed rgba(35, 24, 21, 0.4);
}
.layout10 .flow_box .layout10_text .list03 {
    margin-top: 8px;
}
.layout10 .flow_box .layout10_text .list03 li {
    margin-bottom: 0;
}
.layout10 .flow_box .layout10_text .list03 li::before {
    background-color: #1f2774;
    border: 1px solid #1f2774;
}
.layout10 .flow_box .layout10_text .list_column {
    display: flex;
    flex-wrap: wrap;
}
.layout10 .flow_box .layout10_text .list_column li {
    margin-right: 5%;
}
/* layout11 */
.layout11 {
    position: relative;
}
.layout11_box {
    padding: 8px;
    background: #f7f7f7;
}
[class^="layout11_image"] img {
    width: 100%;
    height: auto;
}
[class^="layout11_text"] {
    margin-top: 8px;
}
[class^="layout11_text"] dl {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
[class^="layout11_text"] dl dt {
    background: #1F2774;
    color: #fff;
    font-weight: bold;
    text-align: center;
    padding: 12px;
    border: 1px solid #1F2774;
    width: 20%;
    margin-bottom: 2px;
}
[class^="layout11_text"] dl dd {
    padding: 12px;
    background: #fff;
    border: 1px solid #1F2774;
    width: 80%;
    margin-bottom: 2px;
}
[class^="layout11_text"] .desc {
    background: #fff;
    border: 1px solid #1F2774;
    padding: 16px;
}
[class^="layout11_text"] .desc p {
    margin-bottom: 0;
}
/* layout11 ver.1 */
.layout11_text01 dl dt {
    margin-left: 0;
}
/* layout11 ver.2 */
.layout11_image02 {
    display: flex;
    justify-content: space-between;
}
.layout11_image02 span {
    position: relative;
    display: block;
    width: 47%;
}
.layout11_image02 span:last-child::before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: -32px;
    margin: auto;
    display: flex;
    align-items: center;
    content: "\f054";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 24px;
    color: #1F2774;
    line-height: 1;
}
.layout11_text02 dl {
    width: 100%;
}
.layout11_text02 dl dt {
    margin-left: 2px;
    margin-bottom: 2px;
    width: 15%;
}
.layout11_text02 dl dt:nth-of-type(odd) {
    margin-left: 0;
}
.layout11_text02 dl dd {
    width: calc(35% - 1px);
}
.layout11_text02 .desc {
    width: 100%;
}

/*注意書き*/
.caution {
    display: block;
    position: relative;
    padding: 25px;
    border-radius: 15px;
    background: #fff;
}
.caution span {
    width: 55px;
    height: 55px;
    background: #f5b754;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: -15px;
    left: -5px;
    border-radius: 50%;
    font-size: 25px;
    font-weight: 600;
    color: #fff;
    z-index: 2;
}
.caution span::before {
    position: absolute;
    width: 15px;
    height: 20px;
    bottom: -3px;
    right: -3px;
    margin: auto;
    -webkit-clip-path: polygon(100% 85%, 40% 0, 0 53%);
    clip-path: polygon(100% 85%, 40% 0, 0 53%);
    background-color: #f5b754;
    z-index: 1;
    content: "";
}
.caution p:nth-of-type(1):not(.notit) {
    font-size: 20px;
    line-height: 1.5;
    margin: 0 0 10px;
    padding: 0 0 0 40px;
    font-weight: 600;
    color: #b27f36;
}
.caution p {
    font-size: 16px;
}

/*==================================================================

  $table
  共通CSSなので使っていないものも消さずに残してください

==================================================================*/
/* 診療時間（医院案内、アクセス共通） */
.footer_info_sche {
    width: 506px;
}
.schedule table {
    width: 100%;
}
.schedule p {
    margin-left: 22px;
    margin-bottom: 2px;
}
.schedule p strong {
    color: #1F2774;
}
.schedule p:last-child {
    margin-bottom: 0;
}
.schedule_note li {
    display: block;
}

/*フッターの診療時間*/
.tb01 {
    margin-bottom: 12px;
    border-spacing: 0;
    border-collapse: collapse;
    white-space: nowrap;
    background-color: #fff;
}
.tb01 td, 
.tb01 th {
    border-bottom: 1px dashed #CFB9B2;
    vertical-align: middle;
}
.tb01 th {
    width: 30%;
    height: 54px;
    line-height: 1;
    white-space: nowrap;
    text-align: center;
}
.tb01 td {
    width: 10%;
    height: 54px;
    padding: 0 0;
    text-align: center;
}
/* 下線のみのテーブル */
.tb02 {
    width: 100%;
    line-height: 1.4;
    border-spacing: 0;
}
.tb02 th {
    padding: 10px 0;
    width: 26%;
    font-weight: bold;
    line-height: 1.4;
    border-bottom: 1px dashed #CFB9B2;
}
.tb02 td {
    padding: 10px 0;
    line-height: 1.4;
    text-align: center;
    border-bottom: 1px dashed #CFB9B2;
}


/*本文中のテーブル*/
.tb03 {
    width: 100%;
    border-spacing: 1px;
    border-collapse: collapse;
    border: solid 1px #ccc;
}
.tb03 tr.thead th,
.tb03 tr.thead td {
    font-weight: bold;
    text-align: center;
    background-color: #fbd08b;
}
.tb03 td,
.tb03 th {
    padding: 10px 20px;
    border: 1px solid #ccc;
}
.tb03 th {
    font-weight: bold;
    text-align: left;
    background-color: #fff6e3;
}
.tb03 th span {
    font-size: 13px;
}
.tb03 td {
    background-color: #ffffff;
    text-align: center;
}

.tb03.ver02 thead th{
    width: 5%;
    padding: 2px;
    text-align: center;
}
.tb03.ver02 tbody th{
    width: 10%;
}

/*==================================================================

  $box
  共通CSSなので使っていないものも消さずに残してください

==================================================================*/
.box1 {
    margin: 0 auto 80px;
}
.box2 {
    margin-bottom: 100px;
}
.text {
    position: relative;
    margin-bottom: 50px;
}
.text > p,
.text_inner > p {
    font-size: 16px;
    margin-bottom: 1em;
}
.tit_text {
    padding: 30px 0;
    margin-bottom: 20px;
}

/*==================================================================

  .top_info

==================================================================*/

.top_info_wrap {
    display: flex;
    justify-content: space-between;
    width: 1200px;
    margin: 60px auto 54px;
}
/* コラム非表示解除したら、下記を仕様してください。 */
 .top_info_wrap section {
    position: relative;
    width: 560px;
} 

/* コラム一時的に非表示用　（コラムが非表示されたこちらは削除してください）*/
/*.top_info_wrap section {
    position: relative;
    width: 800px;
    margin: 0 auto;
}
.top_news_list{
    width: 770px!important;
}*/
/* コラム非表示用ここまで */

.top_info_wrap h2,
.top_topics h2{
    margin-bottom: 40px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 18px;
    letter-spacing: 0.05em;
    line-height: 1;
    text-align: center;
}
.top_topics h2{
	background: url(../images/top_medical_tit_deco.png) no-repeat center bottom;
    background-size: auto 11px;
	padding-bottom: 26px;
}
.top_info_wrap h2::before,
.top_topics h2::before {
    display: block;
    margin-bottom: 22px;
    padding-top: 32px;
    font-family: "sofia-pro-soft", sans-serif;
    font-weight: 500;
    font-size: 50px;
    letter-spacing: 0.05em;
    line-height: 1;
    color: #b27f36;
    background-repeat: no-repeat;
}
.top_info_wrap .top_news h2::before {
    content: "News";
    background-image: url("../images/top_info_titi_deco01.png");
    background-size: 40px auto;
    background-position: center 8px;
}
.top_info_wrap .top_column h2::before {
    content: "Blog";
    background-image: url("../images/top_info_titi_deco02.png");
    background-size: 34px auto;
    background-position: center top;
}
.top_info_btn a,
.top_topics a {
    position: absolute;
    top: 106px;
    right: 30px;
    display: block;
    font-family: "sofia-pro-soft", sans-serif;
    font-weight: 500;
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 1;
    color: #685851;
    transition: 0.3s ease-in-out;    
}
.top_topics a{
    position: static;
    text-align: right;
}
@media (hover: hover) and (pointer: fine) {
    .top_info_btn a:hover,
    .top_topics a:hover {
        color: #F5B754;
    }
}
.top_info_btn a::after,
.top_topics a:after {
    position: relative;
    display: inline-block;
    right: 0;
    width: 15px;
    height: 15px;
    margin-left: 6px;
    vertical-align: bottom;
    background: url("../images/arrow_orange.svg") no-repeat;
    background-size: cover;
    content: "";
    transition: 0.3s ease-in-out;    
}
@media (hover: hover) and (pointer: fine) {
    .top_info_btn a:hover::after {
        right: -8px;
    }
}

/* MV下のTopics */
.top_topics{
    display: block;
    max-width: 1200px;
    margin: 30px auto 20px;
    padding: 20px 35px;
    background: rgb(255, 255, 255 , 0.8);
    border: 4px dotted rgb(178, 127, 54 , 0.6);
    border-radius: 15px;
    text-align: center;
}
.top_topics h2::before {
    content: "Topics";
	padding-top: 10px;
}
.top_topics_item_text{
padding: 20px 0;
    border-top: 1px solid rgb(178, 127, 54, 0.6);
    display: flex;
    justify-content: space-between;
}
.top_topics h3{
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 22px;
    letter-spacing: 0.18em;
    color: #b27f36;
    text-align: left;
	width: 80%;
}
.top_topics a{
    margin-top: 10px;
    text-align: right;
}


.top_news_list,
.top_column_list {
    /*width: 530px;*/
	width: auto;
    padding-right: 1%;
}
.top_news_list li:not(:last-of-type),
.top_column_list li:not(:last-of-type) {
    margin-bottom: 6px;
}
.top_news_list li a,
.top_column_list li a {
    display: block;
    box-sizing: border-box;
    padding: 15px 22px 0;
    height: 90px;
    border-radius: 10px;
    background-color: #fff;
    transition: 0.3s ease-in-out; 
	font-weight: bold;
}
@media (hover: hover) and (pointer: fine) {
    .top_news_list li a:hover,
    .top_column_list li a:hover {
        background-color: #fff6e3;
    }
}
.top_news_list li span,
.top_column_list li span {
    margin-right: 24px;
    font-family: "sofia-pro-soft", sans-serif;
    font-weight: 500;
    font-size: 15px;
    letter-spacing: 0.1em;
    color: #f5b754;
}
.top_news_list li em,
.top_column_list li em {
    display: inline-block;
    min-width: 120px;
    padding: 0 6px;
    line-height: 25px;
    font-size: 14px;
    letter-spacing: 0.05em;
    font-style: normal;
    text-align: center;
    color: #534741;
    border-radius: 13px;
    background-color: #fbd08b;
}
.top_news_list li strong,
.top_column_list li strong {
    display: block;
    margin-top: 15px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 1;
    color: #534741;
}
/*スクロールバー*/
.top_info_wrap .scroll_area,.top_info_wrap .top_column_list {
    height: 284px;
    overflow-y: scroll;
}
/*スクロールバーの横幅指定*/
.scroll_area::-webkit-scrollbar,.top_column_list::-webkit-scrollbar {
    width: 10px;
}
/*スクロールバーの背景色・角丸指定*/
.scroll_area::-webkit-scrollbar-track,.top_column_list::-webkit-scrollbar-track {
    border-radius: 10px;
    background: #e5e5e5;
}
/*スクロールバーの色・角丸指定*/
.scroll_area::-webkit-scrollbar-thumb,.top_column_list::-webkit-scrollbar-thumb {
    border-radius: 10px;
    background: #d6be99;
}

.top_column_btn a {
    display: block;
    width: 300px;
    line-height: 50px;
    margin: 20px auto 0;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 16px;
    letter-spacing: 0.05em;
    text-align: center;
    color: #534741;
    border-radius: 10px;
    border: 1px dashed #f5b754;
    background-image: url(../images/arrow_orange.svg);
    background-repeat: no-repeat;
    background-size: 15px auto;
    background-position: right 14px center;
    background-color: #fff6e3;
    transition: 0.3s ease-in-out;
}
@media (hover: hover) and (pointer: fine) {
    .top_column_btn a:hover {
        background-position: right 7px center;
        background-color: #fadfb2;
    }
}

/*==================================================================

  .top_covid

==================================================================*/
.top_covid {
    padding: 90px 0;
    background: #fff;
}
.top_covid .wrapper{
    width: 1200px;
    margin: 0 auto;
    padding: 10px;
    border-radius: 10px;
    background: url("../images/top_covid_bg.png") repeat;
}
.top_covid .inner {
    padding: 58px 62px 43px;
    border-radius: 10px;
    background-image: url("../images/top_covid_flower_l.png"), url("../images/top_covid_flower_r.png"), url("../images/top_covid_rainbow_l.png"), url("../images/top_covid_rainbow_r.png");
    background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
    background-position: left 42px top 30px, right 35px top 30px, left top, right top;
    background-color: #fff;
    
}
.top_covid h2 {
    width: fit-content;
    width: -moz-fit-content;
    margin: 0 auto 44px;
    padding: 0 60px 25px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 30px;
    letter-spacing: 0.05em;
    line-height: 1;
    color: #685851;
    background: url("../images/dotline_orange.png") repeat-x left bottom;
}
.top_covid p {
    font-size: 16px;
    line-height: 2.25;
    letter-spacing: 0.05em;
    color: #685851;
}

/*==================================================================

  .top_clinic

==================================================================*/
.top_clinic{
    background: linear-gradient(to right , #ffedd3 0 , #ffedd3 50% , #e7f4e7 50% , #e7f4e7 100%);
}
/*診療表ページ移行に伴い解除*/
/*
.top_clinic .inner{
    display: flex;
    width: 1200px;
    margin: 0 auto;
}
*/
/*
.top_clinic .inner > *{
  width: 50%;
	margin: 0 auto;
}
*/
.clinic_logo{
    margin: 0 auto;
}
.clinic_logo img{
    width: 100%;
    height: auto;
}
.clinic_logo_text{
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 22px;
    text-align: center;
    line-height: 1.5;
}
.clinic_add{
    margin: 0 auto 13px;
    padding: 15px;
    background: #fff;
    border-radius: 10px;
}
.clinic_add p{
    font-size: 16px;
    text-align: center;
}
.clinic_add p::before{
    content: "";
    position: relative;
    top: 5px;
    display: inline-block;
    margin-right: 10px;
    width: 15px;
    height: 22px;
    background: url(../images/clinic_add_icon.png) no-repeat center / cover;
}
.clinic_add p .addnum{
    display: inline-block;
    margin-right: 8px;
}
.clinic_tel{
    display: flex;
    gap: 30px;
    margin: 0 0 25px;
    padding: 19px 20px 18px 25px;
    background: #fff;
    border-radius: 10px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
}
.clinic_tel p{
    padding-top: 3px;
}
.clinic_tel a{
    font-family: "sofia-pro-soft", sans-serif;
    font-weight: 500;
    font-size: 36px;
    letter-spacing: 0.1em;
}
.clinic_tel a .title_tel{
    font-weight: 300;
    color: #534741;
    font-size: 70%;
    letter-spacing: 0.075em;
}
.top_clinic h3{
    margin: 0 0 10px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 26px;
}
.clinic_map{
    width: 100%;
    height: 300px;
    margin: 0 0 30px;
    border-radius: 10px;
    background: #efefef;
    border: 5px solid #fff;
}
/* 診療時間表 */
.top_clinic .schedule{
    padding: 22px 20px 10px 15px;
    background: #fff;
    border-radius: 10px;
}
.top_clinic .schedule table{
    margin-bottom: 9px;
}
.top_clinic .schedule table th, .top_clinic .schedule table td{
    padding: 0;
    line-height: 60px;
    text-align: center;
}
.top_clinic .schedule tr{
    display: grid;
    place-items: center;
    justify-items: center;
    grid-template-columns: repeat(8, 1fr);
}
.top_clinic .schedule tr:nth-of-type(1){
    margin-bottom: 7px;
    border-radius: 300px;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
}
.top_clinic .schedule tr:not(:nth-of-type(1)){
    /*margin-bottom: 3px;*/
	margin-bottom: 5px;
}
.top_clinic .schedule tr th{
    /*width: 150px;*/
	width: 170px;
    margin-right: 5px;
    border-radius: 5px;
}
.top_clinic .schedule tr:not(:nth-of-type(1)) th{
    background: #fffed5;
} 
.top_clinic .schedule tr td{
    background: #f8f6f2;
/*
    width: calc(370px / 7);
*/
	/*width: calc(612px / 7);*/
	width: calc(592px / 7);
}
.top_clinic .schedule tr td:nth-of-type(1){
    border-radius: 5px 0 0 5px;
}
.top_clinic .schedule tr td:last-of-type{
    border-radius: 0 5px 5px 0
}
.top_clinic .schedule tr:nth-of-type(1) td{
    background: none;
    line-height: 40px;
}
.top_clinic .schedule .schedule_note li{
    font-size: 15px;
}
.top_clinic .schedule .schedule_text_box{
    padding: 20px 30px 20px 25px;
    background: #fffed5;
}
.top_clinic .schedule .schedule_text_box p{
    margin: 0;
}
.top_clinic .schedule p.schedule_text_title{
    position: relative;
    z-index: 1;
    margin: 0 0 8px;
    padding: 0 5px 5px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 18px;
}
.top_clinic .schedule .schedule_text_title::before{
    content: "";
    position: absolute;
    z-index: 1;
    bottom: 0;
    left: 50%;
    display: block;
    width: 100%;
    height: 5px;
    background: url(../images/dotline_beige.png) repeat-x left bottom;
    transform: translateX(-50%);
}
.top_clinic .schedule p.note{
    margin-bottom: 3px;
}
.top_clinic .schedule a.text_box_link{
    color: #ffa622;
    font-weight: bold;
    text-decoration: underline solid #ffa622;
    text-underline-offset: 4px;
    transition: 0.3s ease-in-out;
}
.top_clinic .schedule a.text_box_link:hover{
    color: #c5a77b;
    text-decoration: underline solid #c5a77b;
    text-underline-offset: 4px;
}
.top_clinic .schedule tr th.long_tit{
	line-height: 1.3;
    height: 60px;
	padding-top: 10px;
}
.top_clinic .schedule tr th.long_tit span{
	font-weight: bold;
	font-size: 13px;
}
/* 左側 */
.clinic_left{
    padding: 45px 40px 70px 0;
}
.clinic_left .clinic_logo{
    width: 108px;
    height: auto;
    margin: 0 auto 20px;
}
.clinic_left .clinic_logo_text{
    margin: 0 0 45px;
}
.clinic_left .clinic_tel a{
    color: #ffa622;
}
.clinic_left .schedule tr:nth-of-type(1){
    background: #ffa622;
}
.clinic_left .schedule tr:not(:nth-of-type(1)) td{
    color: #ffa622;
}
.clinic_left .schedule tr:not(:nth-of-type(1)) td span{
     color: #534741;
}
.top_clinic .schedule.child{
    margin: 0 auto 25px;
}
.clinic_left .btn_yoyaku_orange{
    margin: 0 auto 35px;
    text-align: center;
}
.clinic_left .btn_yoyaku_orange a{
    position: relative;
    z-index: 1;
    display: inline-block;
    width: 400px;
    padding: 0 40px 0 30px;
    line-height: 60px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 20px;
    letter-spacing: 0.05em;
    text-align: center;
    color: #534741;
    border-radius: 10px;
    border: 1px dashed #ec9100;
    background-color: #ffffff;
    color: #ec9100;
    transition: 0.3s ease-in-out;
}
@media (hover: hover) and (pointer: fine) {
    .clinic_left .btn_yoyaku_orange a:hover{
        background-position: right 10px center;
        background-color: #fadfb2;
    }
}
.clinic_left .btn_yoyaku_orange a::after {
    position: absolute;
    top: 50%;
    right: 13px;
    transform: translateY(-50%);
    width: 15px;
    height: 15px;
    background: url(../images/arrow_orange.svg) no-repeat;
    background-size: 100% auto;
    content: "";
    transition: 0.3s ease-in-out;
}
@media (hover: hover) and (pointer: fine){
    .clinic_left .btn_yoyaku_orange a:hover::after {
        right: 6px;
    }
}
.clinic_left .child_text{
    position: relative;
    z-index: 1;
    margin: 0 auto 45px;
    padding: 25px 40px 25px 115px;
    background-image: url(../images/child_text_icon.png), linear-gradient(#fffed5,#fffed5);
    background-position: top 50% left 18px , center;
    background-repeat: no-repeat;
    background-size: 73px 90px , 100%;
    border-radius: 10px;
}
.clinic_left .child_text::after{
    content: "";
    position: absolute;
    z-index: 1;
    bottom: -30px;
    left: 50%;
    display: block;
    width: 100%;
    height: 5px;
    background: url(../images/dotline_beige.png) repeat-x left bottom;
    transform: translateX(-50%);
}
.clinic_left .child_text p{
    font-weight: bold;
}
/* 右側 */
.clinic_right {
/*
    padding: 45px 0 70px 40px;
*/
	padding: 0;
	width: 100%;
	max-width: 800px;
	margin: 0 auto;
}
.clinic_right .clinic_logo{
    width: 108px;
    height: auto;
    margin: 0 auto 16px;
}
.clinic_right .clinic_logo_text{
    margin-bottom: 20px;
    font-size: 20px;
}
.clinic_right .clinic_tel a{
    color: #85ca85;
}
.clinic_right .schedule.etc{
    margin: 0 0 20px;
}
.clinic_right .schedule tr:nth-of-type(1){
    background: #85ca85;
}
.clinic_right .schedule tr.orange_day {
    background: #ffa622;
}


.clinic_right .schedule tr:not(:nth-of-type(1)) td{
    color: #85ca85;
}
.clinic_right .schedule tr:not(:nth-of-type(1)) td span{
    color: #534741;
}
.clinic_right .schedule tr.orange_time td {
    color: #ffa622;
}


.clinic_right .btn_yoyaku_green{
    margin: 0 auto 35px;
    text-align: center;
}
.clinic_right .btn_yoyaku_green a{
    position: relative;
    z-index: 1;
    display: inline-block;
    width: 400px;
    padding: 0 40px 0 30px;
    line-height: 60px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 20px;
    letter-spacing: 0.05em;
    text-align: center;
    color: #534741;
    border-radius: 10px;
    border: 1px dashed #85ca85;
    background-color: #ffffff;
    color: #85ca85;
    transition: 0.3s ease-in-out;
}
@media (hover: hover) and (pointer: fine) {
    .clinic_right .btn_yoyaku_green a:hover{
        background-position: right 10px center;
        background-color:#dfffdf;
    }
}

.clinic_right .btn_yoyaku_green a::after {
    position: absolute;
    top: 50%;
    right: 13px;
    transform: translateY(-50%);
    width: 15px;
    height: 15px;
    background: url(../images/arrow_green.svg) no-repeat;
    background-size: 100% auto;
    content: "";
    transition: 0.3s ease-in-out;
}
@media (hover: hover) and (pointer: fine){
    .clinic_right .btn_yoyaku_green a:hover::after {
        right: 6px;
    }
}
.clinic_right .kamoku_list li{
    display: flex;
    flex-wrap: wrap;
    overflow: hidden;
    border-radius: 10px;
}
.clinic_right .kamoku_list li:not(:last-of-type):not(.senmongairai){
    margin-bottom: 5px;
}
.clinic_right .kamoku_left{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-flow: column;
    width: 150px;
    padding: 12.5px;
    background: #85ca85;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0!important;
}
.clinic_right .kamoku_left span{
    display: block;
    font-size: 13px;
    font-weight: normal;
}
.kamoku_left a span.dr_link {
	position: relative;
	display: block;
	width: 80px;
    color: #fff !important;
    font-size: 16px;
    font-weight: bold;
}
.kamoku_left a span.dr_link::before {
	position: absolute;
    content: "";
    top: 4px;
    right: -23px;
    background: url(../images/arrow_orange.svg) no-repeat;
    width: 16px;
    height: 16px;
}
.clinic_right .kamoku_right{
    display: flex;
    align-items: center;
    flex-flow: row wrap;
    width: calc(100% - 150px);
    padding: 10px;
    background: #fff;
    font-weight: bold;
}
.clinic_right .kamoku_right a{
    display: inline-block;
    color: #85ca85;
    transition: 0.3s ease-in-out;
}
@media (hover: hover) and (pointer: fine){
.clinic_right .kamoku_right a:hover{
    color: #c5a77b;
}
}
.clinic_right .kamoku_under{
    width: 100%;
    padding: 15px 10px 14px;
    background: #fffed5;
    text-align: center;
}
.clinic_right .kamoku_under{
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;  
    font-size: 16px;
}
.clinic_right .kamoku_under a{
    color: #85ca85;
    font-size: 130%;
}
/* 専門外来 */
.clinic_right .senmongairai{
    position: relative;
    padding-bottom: 55px;
}
.clinic_right .senmongairai::after{
    content: "";
    position: absolute;
    z-index: 1;
    bottom: 25px;
    left: 50%;
    display: block;
    width: 100%;
    height: 5px;
    background: url(../images/dotline_beige.png) repeat-x left bottom;
    transform: translateX(-50%);
}
.clinic_right .senmongairai .kamoku_left{
    width: 120px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 18px;
}
.clinic_right .senmongairai .kamoku_right{
    width: calc(100% - 120px);
    font-weight: normal;
    border-radius: 0 10px 0 0;
}
.clinic_right .senmongairai .kamoku_under{
    border-radius: 0 0 10px 10px;
}

/*==================================================================

  .top_info_bnr_area, .top_bnr_area

==================================================================*/

.top_info_bnr_area {
	width: 90%;
	/*max-width: 640px;*/
	max-width: 1100px;
	/*margin: 0 auto 16px;*/
	margin: 30px auto 16px;
	display: flex;
    gap: 16px;
}
.top_info_bnr_area img {
	width: 100%;
}
.top_info_bnr_area a {
	transition: 0.3s ease-in-out;
}
.top_info_bnr_area a:hover {
	opacity: 0.8;
}
.top_info_bnr_area_flex {
    display: flex;
    gap: 10px;
}
.top_bnr_area {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	/*padding-right: calc(100% - 96%);*/
}
.top_bnr_area .flex_area {
	display: flex;
	justify-content: center;
	/*column-gap: 40px;*/
	column-gap: 10px;
}
.top_bnr_area .flex_area .item_01 {
	width: 50%;
	max-width: 390px;
}

.top_bnr_area .flex_area .item_01 a {
	transition: 0.3s ease-in-out;
}
.top_bnr_area .flex_area .item_01 a:hover{
	opacity: 0.8;
}
.top_bnr_area .flex_area .item_01 img {
	width: 100%;
}

.top_bnr_area .top_info_bnr{
    position: relative;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
    z-index: 1;
    gap: 15px;
}

.top_bnr_area .top_info_bnr li{
    /*width: 270px;*/
	width: 260px;
}
.top_bnr_area .top_info_bnr li a {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    box-sizing: border-box;
    height: 90px;
    padding-left: 74px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 1.222;
    color: #534741;
    border: solid 5px;
    background-repeat: no-repeat;
    background-color: #fff;
    transition: 0.3s ease-in-out;    
}
.top_bnr_area .top_info_bnr li a span.line_remarks {
	color: #079845;
}
.top_bnr_area .top_info_bnr li a::after {
    position: absolute;
    right: 5px;
    bottom: 4px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 8px 8px;
    content: "";
}
.top_bnr_area .item_02 .top_info_bnr li:nth-of-type(1) a {
    background-image: url("../images/bnr_icon_pc.png");
    background-position: 19px center;
    border-color: #efbbc0;
}
.top_bnr_area .item_02 .top_info_bnr li:nth-of-type(2) a {

    background-image: url("../images/bnr_icon_monshin.png");
    background-position: 19px center;
    border-color: #9FE2E5;
}
/*.top_bnr_area .item_03 .top_info_bnr li:nth-of-type(1) a {
    background-image: url("../images/bnr_icon_line.png");
    background-position: 19px center;
    border-color: #06c755;
}*/
.top_bnr_area .item_03 .top_info_bnr li:nth-of-type(1) a {
    background-image: url("../images/bnr_icon_line2407.png");
    background-position: 19px center;
    border-color: #06c755;
	background-size: 38px;
}
/*.top_bnr_area .item_03 .top_info_bnr li:nth-of-type(2) a {
    background-image: url("../images/bnr_icon_instagram.png");
    background-position: 19px center;
    border-color: #ee357c;
}
.top_bnr_area .item_04 .top_info_bnr li:nth-of-type(1) a {
    background-image: url("../images/bnr_icon_youtube.svg");
	background-size: 40px 35px;
    background-position: 19px center;
    border-color: #e13134;
}*/

.top_bnr_area .item_02 .top_info_bnr li:nth-of-type(1) a::after {
  border-color: transparent transparent #efbbc0 transparent;
}
.top_bnr_area .item_02 .top_info_bnr li:nth-of-type(2) a::after {
  border-color: transparent transparent #9FE2E5 transparent;
}
.top_bnr_area .item_03 .top_info_bnr li:nth-of-type(1) a::after {
  border-color: transparent transparent #06c755 transparent;
}
/*.top_bnr_area .item_03 .top_info_bnr li:nth-of-type(2) a::after {
  border-color: transparent transparent #ee357c transparent;
}
.top_bnr_area .item_04 .top_info_bnr li:nth-of-type(1) a::after {
  border-color: transparent transparent #e13134 transparent;
}*/

.top_bnr_area .top_info_bnr li a:hover {
	opacity: 0.8;
}
.top_info_bnr_inner {
	display: flex;
	width: 260px;
	margin-top: 30px;
	padding-left: 10px;
	gap: 10px;
}
.top_info_bnr_inner a {
  width: 22%;
}
.top_info_bnr_inner a:nth-child(3) {
  width: 50%;
}
.top_info_bnr_inner a img {
	width: 100%;
}
.top_info_bnr_inner a {
	transition: 0.3s ease-in-out;
}
.top_info_bnr_inner a:hover {
	opacity: 0.8;
}
.mv_bnr_area{
	position: absolute;
    bottom: 50px;
    left: 100px;
    z-index: 1;
    display: block;
}
.top_mv_catch {
	position: absolute;
    top: 245px;
    left: 0;
    right: 0;
    margin: auto;
	text-align: center;
	color: #7a5219;
	font-size: 35px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 700;
    font-style: normal;
    line-height: 1.0;
    letter-spacing: 0.1em;
	/*text-shadow: 0 0 4px #fff, 0 0 4px #fff, 0 0 4px #fff, 0 0 4px #fff, 0 0 4px #fff, 0 0 4px #fff, 0 0 4px #fff, 0 0 4px #fff, 0 0 4px #fff, 0 0 4px #fff, 0 0 4px #fff, 0 0 4px #fff, 0 0 4px #fff, 0 0 4px #fff, 0 0 4px #fff, 0 0 4px #fff;*/
	    filter: drop-shadow(0 0 3px #fff) drop-shadow(0 0 3px #fff) drop-shadow(0 0 3px #fff) drop-shadow(0 0 3px #fff);
}
.top_mv_catch_text{
	letter-spacing: 0.15em;
}
.top_mv_catch_text span{
	font-size: 42px;
}
.top_mv_catch_text .color_orange{
	color: #f38d47;
}
.top_mv_catch_text .color_green{
	color: #85ca85;
}
.top_mv_catch_text_sub{
	font-size: 25px;
}
/*==================================================================

  .top_medical

==================================================================*/

.top_greeting_wrap {
	position: relative;
	z-index: 5;
}
.top_medical_wrap {
    position: relative;
    background-color: #fff;
    overflow: hidden;
}
.top_medical_wrap_br {
	background: #f8f6f2;
}
.top_medical_wrap .inner {
    width: /*1200*/1280px;
    margin: 0 auto;
    padding: 80px 0 70px;
}
.top_medical{
    position: relative;
    display: flex;
    width: 100%;
	z-index: 0;
}
.top_medical::before{
    content: "";
    position: absolute;
    z-index: 2;
    top: 0;
    left: 50%;
    display: block;
    width: 425px;
    height: 360px;
    background: /*#ffffff*/#f8f6f2;
    border-radius: 50%;
    transform: translate(-50%,-50%);
}
.top_medical > * {
    /*width: 50%;*/
	width: 100%;
}
.top_medical h2 {
    position: absolute;
    z-index: 2;
    top: 15px;
    left: 50%;
    display: block;
    width: 100%;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 40px;
    letter-spacing: 0.05em;
    line-height: 1;
    text-align: center;
    transform: translateX(-50%);
}
.top_medical h2::before{
    content: "";
    display: block;
    width: 191px;
    height: 21px;
    margin: 0 auto 20px;
    background: url("../images/top_medical_tit_deco.png") no-repeat center / cover;
}
.top_medical h2::after {
    display: block;
    margin: 15px 0 0;
    font-family: "sofia-pro-soft", sans-serif;
    font-weight: 500;
    font-size: 20px;
    letter-spacing: 0.05em;
    line-height: 1;
    color: #b27f36;
    content: "Medical Information";
}
.top_medical_link {
    position: relative;
    z-index: 1;
    display: flex;
    /*justify-content: space-between;*/
	    justify-content: center;
}
.top_medical_link.medical01{
    /*padding: 215px 40px 35px 0;*/
	padding: 215px 40px 35px 40px;
}
.top_medical_link.medical01::before{
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    /*left: -30px;*/
    display: block;
    width: calc(100% + 20px);
    height: 100%;
    background: #ffedd3;
    /*border-radius: 30px 0 0 30px;*/
	border-radius: 30px;
}
.top_medical_link.medical02{
    padding: 215px 0 35px 40px;
}
.top_medical_link.medical02::before{
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    right: -30px;
    display: block;
    width: calc(100% + 20px);
    height: 100%;
    background: #e7f4e7;
    border-radius: 0 30px 30px 0;
}
.top_medical_list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    width: 100%;
}
.top_medical_list li a {
    position: relative;
    z-index: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 85px;
    box-sizing: border-box;
    border: 3px solid;
    border-radius: 10px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    letter-spacing: 0.05em;
    color: #534741;
	font-size: 20px;
    /*font-size: 22px;*/
    text-align: center;
    transition: 0.3s ease-in-out; 
	line-height: 1.2;
}
.medical01 .top_medical_list li{
    /*width: 100%;*/
	width: calc(50% - 5px);
}
.medical01 .top_medical_list li a {
    border-color: #ffa622;
    background-color: #ffffff;   
}
@media (hover: hover) and (pointer: fine) {
    .medical01 .top_medical_list li a:hover {
        background-position: right 10px center;
        background-color: #fadfb2;
    }
}
.top_medical_list li a::after{
    content: "";
    position: absolute;
    top: 50%;
    transition: 0.3s ease-in-out;
    background-size: 100% auto;
    transform: translateY(-50%);
    width: 15px;
    height: 15px;
}
.medical01 .top_medical_list li a::after{
    right: 17px;
    background: url(../images/arrow_orange.svg) no-repeat;
}
@media (hover: hover) and (pointer: fine) {
    .medical01 .top_medical_list li a:hover::after {
        right: 6px;
    }
}
.medical02 .top_medical_list li{
   width: calc(50% - 5px);
	/*width: calc(33% - 5px);*/
}
/*.medical02 .top_medical_list li:nth-of-type(1) {
    width: 100%;
}*/
.medical02 .top_medical_list li a {
    position: relative;
    border-color: #85ca85;
    background-repeat: no-repeat;
    background-color: #fff;
    transition: 0.3s ease-in-out;    
}
.medical02 .top_medical_list li a .medical_sub{
    color: #fff;
    margin-right: 12px;
    padding: 4px 21px;
    background: #85ca85;
    border-radius: 100px;
    font-size: 12px;
    line-height: 1;
}
.medical01 .top_medical_list li a .medical_sub{
	color: #fff;
    margin-right: 12px;
    padding: 4px 21px;
    background: #ffa622;
    border-radius: 100px;
    font-size: 12px;
    line-height: 1;
}
.medical02 .top_medical_list li.tline a{
    /* padding: 11.5px; */
    padding-right: 20px;
    font-size: 20px;
    line-height: 1.25;
    letter-spacing: 0;
}
.medical02 .top_medical_list li.tline a.long_t {
	font-size: 1.1em;
}
@media (hover: hover) and (pointer: fine) {
    .medical02 .top_medical_list li a:hover {
        background-color: #cef3ce;
    }
}
.medical02 .top_medical_list li a::before{
    content: "";
    display: inline-block;
}
.medical02 .top_medical_list li:nth-of-type(2) a::before,.medical01 .top_medical_list li:nth-of-type(3) a::before {
    width: 41px;
    height: 44px;
    margin-right: 17px;
    background: url("../images/top_medical_right01.png") no-repeat center / cover;
}
.medical02 .top_medical_list li:nth-of-type(1) a::before,.medical01 .top_medical_list li:nth-of-type(2) a::before {
    width: 40px;
    height: 50px;
    margin-right: 16px;
    background: url("../images/top_medical_right02.png") no-repeat center / cover;
}
.medical02 .top_medical_list li:nth-of-type(3) a::before,.medical01 .top_medical_list li:nth-of-type(4) a::before {
    width: 55px;
    height: 46px;
    margin-right: 13px;
    background: url("../images/top_medical_right03.png") no-repeat center / cover;
}
/* .medical02 .top_medical_list li:nth-of-type(4) a {
    background-image: url("../images/top_medical_icon0204.svg");
    background-position: center 16px;
    background-size: 45px 50px;
}
.medical02 .top_medical_list li:nth-of-type(5) a {
    background-image: url("../images/top_medical_icon0205.svg");
    background-position: center 13px;
    background-size: 67px 47px;
}
.medical02 .top_medical_list li:nth-of-type(6) a {
    background-image: url("../images/top_medical_icon0206.svg");
    background-position: center 20px;
    background-size: 40px 40px;
}
.medical02 .top_medical_list li:nth-of-type(7) a {
    background-image: url("../images/top_medical_icon0207.svg");
    background-position: center 14px;
    background-size: 50px 45px;
}
.medical02 .top_medical_list li:nth-of-type(8) a {
    background-image: url("../images/top_medical_icon0208.svg");
    background-position: center 13px;
    background-size: 37px 42px;
} */
/*.medical01 .top_medical_list li a::before {
    display: inline-block;
    background-repeat: no-repeat;
    background-size: 100% auto;
    vertical-align: middle;
    content: "";
}*/
.medical01 .top_medical_list li:nth-of-type(1) a::before {
    width: 51px;
    height: 47px;
    margin: 0 16px 0 0;
    background-image: url("../images/top_medical_icon0101.svg");
}
/*
.medical01 .top_medical_list li:nth-of-type(2) a::before {
    width: 42px;
    height: 46px;
    margin: 0 22px 0 0;
    background-image: url("../images/top_medical_icon0102.svg");
}
*/
.medical02 .top_medical_list li:nth-of-type(4) a::before,.medical01 .top_medical_list li:nth-of-type(5) a::before {
    width: 42px;
    height: 46px;
    margin: 0 22px 0 0;
    background-image: url("../images/top_medical_icon0102.svg");
}

.medical02 .top_medical_list li a::after {
    right: 17px;
    background: url("../images/arrow_green.svg") no-repeat center / cover; 
}
@media (hover: hover) and (pointer: fine) {
    .medical02 .top_medical_list li a:hover::after {
        right: 6px;
    }
}
.medical03 a {
    display: block;
    box-sizing: border-box;
    width: 100%;
    line-height: 130px;
    font-size: 22px;
    border-radius: 10px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    letter-spacing: 0.05em;
    text-align: center;
    color: #534741;
    border: 2px dashed #bad881;
    background: url("../images/arrow_green.svg") no-repeat right 19px center;
    background-size: 15px 15px;
    background-color: #f4ffdf;
    transition: 0.3s ease-in-out;    
}
@media (hover: hover) and (pointer: fine) {
    .medical03 a:hover {
        background-position: right 10px center;
        background-color: #dff1be;
    }
}
.medical03 a::before {
    display: inline-block;
    width: 36px;
    height: 48px;
    margin-right: 48px;
    vertical-align: middle;
    background: url("../images/top_medical_icon0301.svg") no-repeat;
    background-size: 100% auto;
    content: "";
}


/*==================================================================

  .top_doctor

==================================================================*/
/* 下層と共通 */
.doctor_flex {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.doctor_text {
    box-sizing: border-box;
    width: 720px;
    padding-left: 20px;
}
.doctor_text p {
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 2.25;
}
.doctor_text p:not(:last-of-type) {
    margin-bottom: 36px;
}
.doctor_bna {
    display: flex;
    align-items: center;
    gap: 70px;
    margin-top: 46px;
    padding-left: 48px;
}
.doctor_bna li a {
    opacity: 1;
    transition: 0.3s ease-in-out;    
}
@media (hover: hover) and (pointer: fine) {
    .doctor_bna li a:hover {
        opacity: 0.7;
    }
}
.doctor_bna li:nth-of-type(1) a img {
    width: 300px;
    height: auto;
}
.doctor_bna li:nth-of-type(2) a img {
    width: 162px;
    height: auto;
}
.doctor_name {
    margin-top: 22px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 18px;
    letter-spacing: 0.05em;
    line-height: 1;
}
.doctor_name span {
    display: block;
    margin-bottom: 13px;
    font-size: 16px;
}
.doctor_name em {
    margin-left: 18px;
    font-style: normal;
    font-size: 24px;
}
.top_doctor_img {
    width: 300px;
}
.top_doctor_img img {
    width: 100%;
    height: auto;
	  border-radius: 10px;
}

.doctor_flex02{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.doctor_flex02 img {
    width: 230px;
	height: auto;
	margin: 0 50px;
	border-radius: 10px;
}

.tool_tip {
  position: relative;
  cursor: pointer;
  color: #534741;
}
.tip_description { /* ツールチップのスタイル */
  width: 200px; /* 横幅 */
  position: absolute;
  left: 50%;
  bottom: -60px; /* Y軸の位置 */
  transform: translate(-50%, 50%);
  margin-bottom: 8px; /* テキストとの距離 */
  padding: 10px 8px;
  border-radius: 10px; /* 角の丸み */
  background-color: #b29765;
  font-size: 0.6em;
  color: #fff;
  text-align: center;
  visibility: hidden; /* ツールチップを非表示に */
  opacity: 0; /* 不透明度を0％に */
  z-index: 1;
  transition: 0.5s all; /* マウスオーバー時のアニメーション速度 */
}
.tool_tip:hover .tip_description { /* マウスオーバー時のスタイル */
  bottom: -50px; /* Y軸の位置 */
  visibility: visible; /* ツールチップを表示 */
  opacity: 1; /* 不透明度を100％に */
}


.director_box .doctor_flex02 img {
	width: 230px;
	aspect-ratio: 12 / 11; /*ボタンで表示するパターン*/
	/*aspect-ratio: 23 /17;*/
	object-fit: cover;
	object-position: top center;
}
.director_carr_box {
	width: 100%;
	height: 100%;
}

.director_carr_box .box_carr_left,
.director_carr_box .box_carr_right {
	width: 48%;
	height: 100%;
}

.director_carr_box .doctor_carr_sec1 {
	width: 100%;
}
.director_carr_box .box_carr_right .doctor_carr_sec1 {
	height: 1015px;/*左右にボックスを分ける関係で高さ指定してください*/
}

/* TOP固有 */
.top_doctor {
    position: relative;
    /* background-image: url(../images/wave_.png);
    background-repeat: repeat-x;
    background-position: left bottom; */
}
/* .top_doctor::before {
    position: absolute;
    left: 0;
    top: -6px;
    width: 100%;
    height: 6px;
    background: url("../images/wave_btm_beige.png") repeat-x left top;
    content: "";
} */
.top_doctor .inner{
    width: 1200px;
    margin: 0 auto; 
    padding: 95px  0 140px;
    background-image: url(../images/top_doctor_bg.png);
    /*background-position: bottom 50px right 0;*/
	background-position: bottom 0 right 0;
    background-size: 249px 230px;
    background-repeat: no-repeat;
}
.top_doctor .doctor_flex {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
}
.top_doctor h2 {
    width: 100%;
    margin-bottom: 32px;
    padding: 15px 0 40px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 26px;
    letter-spacing: 0.05em;
    line-height: 1;
    text-align: center;
    background-image: url("../images/top_doctor_tit_deco01.png"), url("../images/top_doctor_tit_deco02.png"), url("../images/top_doctor_tit_deco03.png");
    background-repeat: no-repeat, no-repeat, no-repeat;
    background-size: 385px auto, 385px auto, 79px auto;
    background-position: left top, right top, center bottom;
}
.top_doctor h2::before {
    display: block;
    margin-bottom: 18px;
    font-family: "sofia-pro-soft", sans-serif;
    font-weight: 500;
    font-size: 56px;
    letter-spacing: 0.05em;
    line-height: 1;
    color: #b27f36;
    content: "Greeting";
}
.top_doctor_btn a {
    position: relative;
    z-index: 1;
    display: block;
    width: 270px;
    padding: 0 40px 0 30px;
    line-height: 60px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 16px;
    letter-spacing: 0.05em;
    text-align: center;
    color: #534741;
    border-radius: 10px;
    border: 1px dashed #ffa622;
    background-color: #fff6e3;
    transition: 0.3s ease-in-out;   
}
.top_doctor_btn a::after {
    position: absolute;
    top: 50%;
    right: 13px;
    transform: translateY(-50%);
    width: 15px;
    height: 15px;
    background: url(../images/arrow_orange.svg) no-repeat;
    background-size: 100% auto;
    content: "";
    transition: 0.3s ease-in-out;
}
@media (hover: hover) and (pointer: fine) {
    .top_doctor_btn a:hover {
        background-color: #fadfb2;
    }
}
@media (hover: hover) and (pointer: fine){
    .top_doctor_btn a:hover::after {
        right: 6px;
    }
}
/* バナーエリア */
.top_doctor_side {
    width: 100%;
    max-width: 840px;
}
.top_doctor_bna{
    position: relative;
    z-index: 1;
    display: flex;
    gap: 15px;
    flex-flow: wrap;
}
.top_doctor_bna::before{
    content: "";
    position: absolute;
    z-index: 1;
    top: 50%;
    left: -45px;
    display: block;
    width: 195px;
    height: 5px;
    /* background: #e1dad8; */
    background: url(../images/dotline_beige.png) repeat-x left bottom;
    transform: translate(-50%,-50%) rotate(90deg);
}
.top_doctor_bna li{
    width: 270px;
}
.top_doctor_bna li a {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    box-sizing: border-box;
    height: 90px;
    padding-left: 74px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 1.222;
    color: #534741;
    border: solid 5px;
    background-repeat: no-repeat;
    background-color: #fff;
    transition: 0.3s ease-in-out;    
}
.top_doctor_bna li a::after {
    position: absolute;
    right: 5px;
    bottom: 4px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 0 8px 8px;
    content: "";
}
.top_doctor_bna li:nth-of-type(1) a {
    background-image: url("../images/top_doctor_bna01.png");
    background-position: 19px center;
    border-color: #cfe2a4;
}
@media (hover: hover) and (pointer: fine) {
    .top_doctor_bna li:nth-of-type(1) a:hover {
        background-color: #f5f9ed;
    }
}
.top_doctor_bna li:nth-of-type(1) a::after {
    border-color: transparent transparent #bad57e transparent;
}
/*.top_doctor_bna li:nth-of-type(2) a {
    background-image: url("../images/top_doctor_bna02.png");
    background-position: 19px center;
    border-color: #f8cc87;
}*/
/*.top_doctor_bna li:nth-of-type(2) a {
    background-image: url("../images/top_doctor_bna03.png");
    background-position: 19px center;
    border-color: #f8cc87;
}
@media (hover: hover) and (pointer: fine) {
    .top_doctor_bna li:nth-of-type(2) a:hover {
        background-color: #fef5e7;
    }
}
.top_doctor_bna li:nth-of-type(2) a::after {
    border-color: transparent transparent #f0ca8e transparent;
}*/
.top_doctor_bna li:nth-of-type(3) a {
    background-image: url("../images/top_doctor_bna03.png");
    background-position: 9px center;
   /* border-color: #f7ebb3;*/
}
.top_doctor_bna li:nth-of-type(2) a {
    background-image: url("../images/top_doctor_bna04.png");
    background-position: 9px center;
    border-color: #f7ebb3;
}
@media (hover: hover) and (pointer: fine) {
    .top_doctor_bna li:nth-of-type(2) a:hover {
        background-color: #fdfbf0;
    }
    .top_doctor_bna li:nth-of-type(3) a:hover {
        background-color: #ededed;
    }
}
.top_doctor_bna li:nth-of-type(2) a::after {
    border-color: transparent transparent #e1bd13 transparent;
}
.top_doctor_bna li:nth-of-type(3) a::after {
    border-color: transparent transparent #534741 transparent;
}
.top_doctor_bna li:nth-of-type(4) a {
    background-image: url("../images/bnr_icon_line2407.png");
    background-position: 19px center;
    border-color: #06c755;
    background-size: 38px;
}
@media (hover: hover) and (pointer: fine) {
    .top_doctor_bna li:nth-of-type(4) a:hover {
        background-color: #f5f9ed;
    }
}
.top_doctor_bna li:nth-of-type(4) a::after {
    border-color: transparent transparent #06c755 transparent;
}
.top_doctor_bna li:nth-of-type(4) a span {
	color: #079845;
}
.top_doctor_bna li:nth-of-type(5) a {
    background-image: url("../images/bnr_icon_instagram_2407.png");
    background-position: 19px center;
    border-color: #e15b88;
	background-size: 38px;
}
@media (hover: hover) and (pointer: fine) {
    .top_doctor_bna li:nth-of-type(5) a:hover {
        background-color: #fcf2f3;
    }
}
.top_doctor_bna li:nth-of-type(5) a::after {
    border-color: transparent transparent #e15b88 transparent;
}
.top_doctor_bna li:nth-of-type(6) a {
    background-image: url("../images/bnr_icon_youtube_sp.png");
    background-position: 21px center;
    border-color: #e13134;
	background-size: 38px;
}
@media (hover: hover) and (pointer: fine) {
    .top_doctor_bna li:nth-of-type(6) a:hover {
        background-color: #fcf2f3;
    }
}
.top_doctor_bna li:nth-of-type(6) a::after {
    border-color: transparent transparent #e13134 transparent;
}
/*.top_doctor_bna li:nth-of-type(4) a {
    background-image: url("../images/top_doctor_bna04.png");
    background-position: 7px center;
    border-color: #cfe2a4;
}
@media (hover: hover) and (pointer: fine) {
    .top_doctor_bna li:nth-of-type(4) a:hover {
        background-color: #f5f9ed;
    }
}
.top_doctor_bna li:nth-of-type(4) a::after {
    border-color: transparent transparent #bad57e transparent;
}
.top_doctor_bna li:nth-of-type(5) a {
    background-image: url("../images/top_doctor_bna05.png");
    background-position: 21px center;
    border-color: #f8cc87;
}
@media (hover: hover) and (pointer: fine) {
    .top_doctor_bna li:nth-of-type(5) a:hover {
        background-color: #fef5e7;
    }
}
.top_doctor_bna li:nth-of-type(5) a::after {
    border-color: transparent transparent #f0ca8e transparent;
}*/
.top_doctor_bna li a span {
    display: block; 
    width: 135px;
    line-height: 25px;
    text-align: center;
    font-size: 15px;
    border-radius: 13px;
    color: #fff;
}
.top_doctor_bna li:nth-of-type(1) a span {
    margin-top: 5px;
    background-color: #add554;
}
/*.top_doctor_bna li:nth-of-type(3) a span {
    margin-bottom: 7px;
    background-color: #e1bd13;
}*/

/*==================================================================

  $doctor （下層）

==================================================================*/

/*診療表*/

h5.tit_day {
	padding: 0 0 0 4px;
	color: #b27f36;
	font-size: 1.2em;
	font-weight: 700;
}

.table_container {
	width: 100%;
	margin: 80px auto;
}

.table_area {
	width: 98%;
	margin: 0 auto;
	padding: 28px;
	background: #FFF;
	border-radius: 10px;
	overflow-x: hidden;
}

.attending_list {
	position: relative;
	margin: 10px 0 20px;
	white-space: nowrap;
  border: 2px solid #f8f6f2;
  border-collapse: separate;/*collapseから変更*/
  border-spacing: 0;
  border-radius: 6px;
  overflow: hidden;
}

.attending_list tbody th,
.attending_list tbody td {
  padding: 8px 16px;
  border-bottom: 1px dotted #CFB9B2;/*一括指定せず、border-bottomのみ*/
	color: #534741;
	text-align: center;
}

.attending_list tbody th {
	width: 160px;
	background-color: #f8f6f2;
	text-align: left;
	font-size: 1.05em;
	font-weight: 700;
	position: sticky;
    top:0;
    left: 0;
    z-index: 1;
}

.attending_list tbody td {
	/*width: 96px;*/
	width: 185px;
  border-left: 1px dotted #CFB9B2;
}
.attending_list tbody td:first-child{
	border-left: none;
}
.attending_list tbody td span.doc_remarks {
	font-size: 0.7em;
	color: red;
}

.attending_list tbody td.midashi {
	background-color: #f8f6f2;
	font-size: 1.05em;
	font-weight: 700;
}
.attending_list tbody td.cell_am {
  background-color: #CBE7FA;
}
.attending_list tbody td.cell_pm {
  background-color: #FFDBDB;
}

.attending_list tbody tr:last-child th,
.attending_list tbody tr:last-child td {
  border-bottom: none;
}
.attending_list .top_em_line th,
.attending_list .top_em_line td {
	border-top: none;
	border-top: 1px solid #534741;
}
.attending_list_sat {
	margin-bottom: 20px;
}
.attending_list tbody td span.small {
	font-size: 0.8em;
}
.table_area p span.list_remarks {
	display: inline;
	font-weight: 700;
	line-height: 2;
	background: linear-gradient(transparent 60%, #F7E496 0%);
}
.list_remarks_sc {
	margin-bottom: 10px;
	font-size: 1.1em;
	color: #FF4242;
}

/*医師紹介*/
.tit01.doctor01::before {
    content: "Doctor";
}
.tit01.greeting01::before {
    content: "Greeting";
}
.doctor .doctor_text {
    width: 800px;
    padding-left: 0;
}
.doctor_text_100 {
    width: 100%;
}
.doctor_text_100 p {
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 2.25;
}
.doctor_carr {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 40px;
}
.doctor_text h3 {
    margin-bottom: 20px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 28px;
    letter-spacing: 0.18em;
    color: #b27f36;
}
.doctor_carr_sec1 {
    width: 48%;
    margin-right: 20px;
    padding: 30px 30px 40px;
    background-color: #fff;
    border-radius: 10px;
}
.doctor_carr_sec1:last-child {
    margin-right: 0;
}
.doctor_carr_sec1 .tit02 {
    margin-bottom: 10px;
}
.doctor_carr .tb02 td {
    text-align: left;
}
.doctor_carr .tb02 td, 
.doctor_carr .tb02 th,
.list01 li {
    font-size: 15.5px;
}
.doctor_carr_sec1 table {
    width: 100%;
}
.doctor_list {
    margin-bottom: 30px;
}
.doctor_list li {
	  width: 100%;
	display: flex;
	align-items: flex-end;
    padding: 14px 10px;
    line-height: 1.4;
    border-bottom: 1px dashed #CFB9B2;
}
.doctor_list li span.name {
	  width: 180px;
    display: block;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 19px;
    letter-spacing: 0.05em;
}
.doctor_list li em {
    font-size: 17px;
}

.doctor_list li span.position {
	display: block;
	width: calc(100% - 180px);
}

/* その他医師紹介 */

.box_doc_left,
.box_doc_right {
	width: 48%;
}
.box_doc_right {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.doctor_list_box {
	width: 100%;
}

/*==================================================================

  $clinic

==================================================================*/
.tit01.clinic01::before {
    content: "Schedule";
}
.tit01.clinic02::before {
    content: "Clinic";
}
.tit01.clinic03::before {
    content: "Cleantime";
}
.tit01.clinic04::before {
    content: "Facilities";
}
.tit01.clinic05::before {
    content: "System";
}
.tit01.clinic06::before {
    content: "Link";
}
.tit01.clinic07::before {
    content: "Data";
}
.tit01.clinic08::before {
    content: "Information";
}

table[class*="schedule"] {
    width: 86%;
    margin-bottom: 14px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 17px;
}
table[class*="schedule"] tr:first-of-type th,
table[class*="schedule"] tr:first-of-type td {
    color: #fff;
    border-bottom: none;
}
table[class*="schedule"] td em {
    color: #C1A68F;
}
.tb01.schedule01 tr:first-of-type {
    background-color: #ffb25f;
}
.tb01.schedule02 tr:first-of-type {
    background-color: #efcb22;
}
.tb01.schedule03 tr:first-of-type {
    background-color: #93be33;
}
.tb01.schedule04 tr:first-of-type {
    background-color: #72baec;
}

.tb01.schedule02 th {
    width: 16%;
}
.tb01.schedule02 td {
    width: 42%;
}
.tb01.schedule02 tr td {
    text-align: left;
    padding: 14px 6px;
}
.schedule_note li {
    margin-bottom: 5px;
    font-size: 16px;
    line-height: 1.5;
}
.schedule_note li em {
    color: #C1A68F;
}
.schedule_note li strong {
    padding-bottom: 4px;
    font-size: 110%;
    border-bottom: 1px solid;
}
.clean.tb01 {
    width: 80%;
    font-size: 16px;
    border-top: 1px dashed #CFB9B2;
}
.clean.tb01 th {
    width: 30%;
    background-color: #fff6e3;
}
.clean.tb01 td {
    width: 70%;
}

/* 医院概要 */
.clinic_sec1 {
    max-width: 80%;
    margin: auto;
    position: relative;
}
.clinic_sec1 ul {
    margin-bottom: 15px;
}
.clinic_sec1 > ul li {
    padding: 14px 0;
    font-size: 16px;
    border-bottom: 1px dashed #CFB9B2;
}
.clinic_sec1 > ul li:first-child {
    padding: 0 0 8px 0;
}
.clinic_sec1 dl:after {
    display: block;
    clear: both;
    content: "";
}
.clinic_sec1 dt {
    float: left;
    width: 25%;
    padding-left: 2px;
    font-weight: bold;
}
.clinic_sec1 dd {
    float: left;
    width: 75%;
}
.clinic_sec1 dd a, 
.clinic_sec1 dd a:hover {
    color: inherit;
}

.underline {
    text-decoration: underline;
}

/*clinic_box*/

.clinic_box {
	background: none;
/*
	margin: 40px calc(50% - 50vw);
	width: 100vw;
*/
}

.tit01.schedule02::before {
  content: "Medical hours";
}

/* リンク集 */
.layout01.linklist {
    background-color: #fff;
}
.layout01.linklist .layout01_title a {
    opacity: 1;
    transition: 0.3s ease-in-out;    
}
@media (hover: hover) and (pointer: fine) {
    .layout01.linklist .layout01_title a:hover {
        opacity: 0.6;
    }
}
.layout01.linklist .layout01_title img.w90 {
    width: 90%;
    height: auto;
}
.layout01.linklist .layout01_title span {
    display: block;
    margin-top: 5px;
    width: 100%;
    font-size: 13px;
    text-align: center;
    color: #534741;
}
.layout01.linklist .tit03 {
    margin-bottom: 5px;
}
.layout01.linklist .tit03::before {
    position: relative;
    top: -2px;
    display: inline-block;
    margin-right: 4px;
    font-size: 60%;
    content: "●";
}
.layout01.linklist .layout01_text p {
    font-size: 16px;
}

/* 診療実績データ */
.date_img img {
    width: 650px;
    height: auto;
}
.tb03.data {
    font-size: 16px;
}

/* 助成に関する表 */

.tb_jhosei {
    width: 100%;
	min-width: 800px;
    border-spacing: 1px;
    border-collapse: collapse;
    border: solid 1px #ccc;
}
.tb_jhosei td.midashi_age {
	width: 200px;
	/*background: #fff6e3;*/
}
.tb_jhosei td.op_01,
.tb_jhosei td.op_02 {
	/*background: #fff6e3;*/
}
.tb_jhosei td.midashi_age {
	text-align: center;
}
.tb_jhosei td.age_01,
.tb_jhosei td.age_02 {
	width: 500px;
	text-align: center;
}
.tb_jhosei td.age_01 {
	background: #FFDBDB;
}
.tb_jhosei td.age_02 {
	background: #CBE7FA;
}
.tb_jhosei td,
.tb_jhosei th {
    padding: 10px 20px;
    border: 1px solid #ccc;
}
.tb_jhosei th {
    font-weight: bold;
    text-align: left;
    background-color: #FFF;
}
.tb_jhosei th span {
    font-size: 13px;
}
.tb_jhosei td {
    background-color: #ffffff;
    text-align: center;
}

.corp_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.corp_list li {
  width: 295px;
  height: 74px;
  margin-right: 6px;
  margin-bottom: 6px;
}

.corp_list li:nth-child(4n) {
  margin-right: 0;
}

.corp_list li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: inherit;
  line-height: 1.4;
  font-family:  "maru-maru-gothic-asr-stdn", sans-serif;
  background-color: #ffffff;
  border: 1px solid #dbdbdb;
  border-radius: 3px;
  text-align: center;
}

.corp_list li a img {
  width: 291px;
  height: 72px;
  border-radius: 3px;
  -webkit-transition: 0.2s ease-in-out;
  transition: 0.2s ease-in-out;
}

.corp_list li a:hover {
  background-color: #ffefd7;
  color: #b27f36;
}

.corp_list li a:hover img {
  /*opacity: 0.6;*/
}

.corp_list.col3 {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.corp_list.col3 li {
  width: calc((100% - 12px) / 3);
}

.corp_list.col3 li:nth-child(3n) {
  margin-right: 0;
}

.corp_list.col3 li:nth-child(4n) {
  margin-right: 6px;
}

.corp_list.col3 li:last-child {
  margin-right: auto;
}

/*==================================================================================================================================

  *fee revision

==================================================================================================================================*/
.fee_revision .list06 li {
    width: 100%;
}

/*==================================================================================================================================

  *medical

==================================================================================================================================*/
.tit01.medical01::before {
    content: "Medical";
}
.medi_list p {
    margin-bottom: 0;
    font-size: 16px;
}
.medi_list + .btn01 {
    margin-top: 20px;
}
.medi_qalist dt,
.medi_qalist dd .qa_tit {
    display: flex;
    align-items: flex-start;
    margin-bottom: 20px;
    padding-bottom: 10px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 20px;
    line-height: 1.6;
    background: url(../images/dotline_orange.png) repeat-x left bottom;
}
.medi_qalist dt em,
.medi_qalist dd .qa_tit em {
    padding-right: 5px;
    font-family: "sofia-pro-soft", sans-serif;
    font-weight: 500;
    font-size: 34px;
    line-height: 1;
    color: #bad881;
}
.medi_qalist dd .qa_tit em {
    color: #f5b754;
}
.medi_qalist dd p {
    font-size: 16px;
    line-height: 2;
}
.medi_qalist dd p:not(:last-of-type) {
    margin-bottom: 1em;
}

/*==================================================================

  $facilities

==================================================================*/
/* 共通CSS */
[class^="facilities_equip"] {
    display: flex;
    flex-wrap: wrap;
}
[class^="facilities_equip"] dl {
    background-color: #fff;
    text-align: justify;
    border-radius: 10px;
    overflow: hidden;
}
[class^="facilities_equip"] dt img {
    width: 100%;
    height: auto;
}
[class^="facilities_equip"] dd {
    padding: 15px 15px 18px;
    font-size: 15.5px;
    line-height: 1.5;
}
[class^="facilities_equip"] dd .title {
    text-align: center;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;    
    font-size: 19px;
    letter-spacing: 0;
    color: #b27f36;
}
[class^="facilities_equip"] dd p {
    margin-top: 7px;
}

/* 機器紹介1 2列、上部ライン装飾*/
.facilities_equip dl {
    width: 42.3%;
    min-height: 280px;
    margin-left: 3.4%;
    padding: 3%;
    border-top: 4px solid #9397BE;
}
.facilities_equip dl:nth-child(odd) {
    margin-left: 0;
}

/* 機器紹介名前 */
.facilities_equip dt {
    margin-bottom: 14px;
    padding-bottom: 10px;
    line-height: 1.7;
    font-size: 17px;
    font-weight: bold;
    text-align: left;
}
.facilities_equip dt span {
    display: block;
    font-size: 15px;
}
.facilities_equip dd {
    padding: 0;
    line-height: inherit;
}
.facilities_equip dd p {
    margin-top: 0;
}
.facilities_equip_img {
    margin: 0 0 20px;
}
.facilities_equip_img img {
    width: 100%;
    height: auto;
}
/* 機器紹介2 3列*/
.facilities_equip2 {
    gap: 35px 3.5%;
}
.facilities_equip2 dl {
    width: 31%;
}

/* 機器紹介3 2列*/
.facilities_equip3 dl {
    width: 47.5%;
    margin-right: 5%;
}
.facilities_equip3 dl:nth-child(even) {
    margin-right: 0;
}

/*==================================================================

  $access （下層）

==================================================================*/
.tit01.access01::before {
    content: "Access";
}

.access_guide {
    margin-bottom: 20px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    font-size: 23px;
    letter-spacing: 0.1em;
    text-align: center;
}
.access_map {
    margin-bottom: 40px;
}
.access_map dt {
    font-size: 16px;
    margin-bottom: 10px;
}
.access_map dt i {
    color: #ffa313;
    margin-right: 7px;
}
.access_map dd {
    width: 100%;
    /*height: 500px;*/
}
.access_map dd iframe {
    width: 100%;
    height: 100%;
    border: none;
    border-radius: 10px;
}
.access_map + .btn01 {
    text-align: center;
    margin-bottom: 30px;
}
.googlemap + .btn01 {
    text-align: center;
    margin-bottom: 30px;
}
.access_info {
}
.access_info dt i {
    margin-right: 7px;
}
.access_train, 
.access_bus, 
.access_car, 
.access_bike {
    margin-bottom: 15px;
    padding: 25px 40px 30px;
    border-radius: 10px;
    background-color: #fff;
}
.access_train dt, 
.access_bus dt, 
.access_car dt, 
.access_bike dt {
    padding-left: 0;
    margin-bottom: 5px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;    
    font-size: 20px;
    color: #b27f36;
}
.access_train dd, 
.access_bus dd, 
.access_car dd, 
.access_bike dd {
    font-size: 16px;
}
.access_info dd .btn01 {
    margin: 10px 0;
}
.access_info dd .btn01 a:not(:last-of-type) {
    margin-right: 20px;
}
/* ルート */
.access_list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    counter-reset: section;
}
.access_list dl {
    width: 32%;
    margin-bottom: 30px;
}
.access_list dl.last {
    margin-right: 30%;
}
.access_list dt {
    width: 100%;
    height: auto;
}
.access_list dt img {
    width: 100%;
}
.access_list dl dd {
    width: 94%;
    margin-top: 20px;
    font-size: 14px;
    line-height: 1.9;
    padding-left: 2.5em;
    text-indent: -2.7em;
    letter-spacing: 0.1em;
}
.access_list dl dd::before {
    counter-increment: section;
    content: counter(section);
    font-size: 18px;
    color: #fff;
    margin-right: 8px;
    padding: 7px 10px;
    line-height: 1;
    background: #1F2774;
    border-radius: 3px;
}
.googlemap {
    margin-bottom: 30px;
}
.map_flex{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.map_flex_item{
  width: 49%;
}
.googlemap iframe {
    width: 100%;
    height: 100%;
    border: none;
    border-radius: 10px;
}
/*==================================================================

  $price

==================================================================*/
.tit01.price01::before {
    content: "Price";
}
.tb03.price {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
    font-size: 16px;
}


/*==================================================================

  $interview

==================================================================*/
.tit01.interv01::before {
    content: "Guidance";
}
.guide_list {
    display: flex;
    margin-bottom: 60px;
    gap: 3.5%;
}
.guide_list.per100 {
    display: block;
}
.guide_list .step_box {
    width: 31%;
}
.guide_list.per100 .step_box {
    width: 100%;
}
.step_box dl {
    position: relative;
    border: 5px solid #f7deb6;
    background-color: rgba(255, 255, 255, 0.7);
    padding: 15px 20px;
    border-radius: 10px;
}
.step_box dl:not(:last-of-type) {
    margin-bottom: 30px;
}
.step_box dl.box01 {
    height: 560px;
}
.step_box dl.box02 {
    height: 330px;
}
.step_box dl:not(:last-of-type)::after {
    position: absolute;
    width: 100%;
	bottom: -42px;
	right: 0;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 24px;
    text-align: center;
    content: "\f063";
}
.step_box dl dt {
    margin-bottom: 10px;
    padding-bottom: 14px;
    font-family: "sofia-pro-soft", sans-serif;
    font-weight: 500;
    font-size: 20px;
    line-height: 1;
    background: url("../images/dotline_orange.png") repeat-x left bottom;
}
.step_box dl dd p {
    font-size: 16px;
    line-height: 1.6;
    letter-spacing: 0;
}
.step_box dl dd p span {
    color: #ec9100;
    font-weight: bold;
}
.step_box dl dd a {
    font-size: 16px;
}
.step_box dl dd figure {
    text-align: center;
}
.step_box dl dd figure img  {
    width: 150px;
    height: auto;
}
.step_box dl dd h5,
.step_box dl dd h4 {
    font-size: 18px;
    font-weight: bold;
}

/*==================================================================

  $reservation

==================================================================*/
.tit01.reserv01::before {
    content: "Reservation";
}

.faq_wrapper {
	position: relative;
	width: 100%;
	margin-top: 64px;
	background: #FFF;
	padding: 40px 50px 40px;
	border-radius: 10px;
}
.faq_wrapper h5.tit_faq {
	position: absolute;
	display: inline-block;
	top: -28px;
	left: 40px;
	padding: 12px 48px;
	font-size: 1.2em;
	font-weight: bold;
	color: #FFF;
	font-family: "sofia-pro-soft", sans-serif;
	text-align: center;
	background: #f5b754;
	border-radius: 5px;
	outline: 1px dashed rgba(255, 255, 255, 0.6);
  outline-offset: -4px;
}
.faq_wrapper .list_faq {
	width: 100%;
}
.faq_wrapper .list_faq dt,
.faq_wrapper .list_faq dd {
	position: relative;
	padding: 25px 0 20px 55px;
	font-size: 1.05em;
}
.faq_wrapper .list_faq dt {
	color: #534741;
	font-weight: bold;
}
.faq_wrapper .list_faq dd {
	padding-top: 8px;
}
.faq_wrapper .list_faq dd:not(:last-child) {
	border-bottom: 1px dashed #b27f36;
}
.faq_wrapper .list_faq dt::before {
	position: absolute;
	content: '';
	top: 17px;
	left: 0;	
	width: 40px;
	height: 40px;
	background: #b27f36;
	border-radius: 10%;
}
.faq_wrapper .list_faq dt::after {
	position: absolute;
	content: 'Q';
	top: 12px;
	left: 9px;	
	font-size: 1.8em;
	font-weight: normal;
	color: #FFF;
}
.faq_wrapper .list_faq dd::before {
	position: absolute;
	content: '';
	top: 0;
	left: 0;	
	width: 40px;
	height: 40px;
	border: 1px solid #b27f36;
	background: #FFF;
	border-radius: 10%;
}
.faq_wrapper .list_faq dd::after {
	position: absolute;
	content: 'A';
	top: -4px;
	left: 11px;	
	font-size: 1.8em;
	color: #b27f36;
}

/*==================================================================

  $qa

==================================================================*/
.qa1 dl {
    margin-bottom: 25px;
    padding-bottom: 25px;
    border-bottom: 1px dashed #CFB9B2;
}
.qa1 dl dt {
    position: relative;
    margin-bottom: 12px;
    padding-left: 40px;
    font-family: "maru-maru-gothic-asr-stdn", sans-serif;
    font-weight: 400;
    line-height: 1.6;
    font-size: 20px;
	padding-right: 40px;
}
.qa1 dl dt:before {
    position: absolute;
    top: 0;
    left: 0;
    margin-right: 7px;
    line-height: 1;
    font-family: "sofia-pro-soft", sans-serif;
    font-weight: 500;
    font-size: 30px;
    color: #bad881;
    content: "Q.";
}
.qa1 dl dd {
    position: relative;
    padding-left: 40px;
    font-size: 16px;
}
.qa1 dl dd:before {
    position: absolute;
    top: 0;
    left: 0;
    margin-right: 7px;
    line-height: 1;
    font-family: "sofia-pro-soft", sans-serif;
    font-weight: 500;
    font-weight: normal;
    font-size: 30px;
    color: #f5b754;
    content: "A.";
}

/* アコーディオン */
.js-toggle.qa1 dt::after {
    color: #1F2774;
    position: absolute;
    display: flex;
    align-items: center;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    content: "\f067";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 20px;
}
.js-toggle.qa1 dt.is-open::after {
    content: "\f068";
}
.js-toggle.qa1 dd {
    display: none;
}

/*==================================================================

  $contact

==================================================================*/
.tit01.contact01::before {
    content: "Contact";
}
.tit01.thanks01::before {
    content: "Thanks";
}
.contact th, 
.contact td {
    text-align: left;
    padding: 20px;
}
.contact th {
    font-weight: 600;
	font-weight: bold;
}
.contact th, .contact td {
    width: 100%;
    display: block;
}
.contact th .required {
    display: inline-block;
    color: #fff;
    background: #f33;
    line-height: 1;
    padding: 3px;
    margin-left: 5px;
}
.contact input {
    max-width: 400px;
    width: 100%;
    font-size: 100%;
    padding: 8px 5px;
}
.contact input[type="date"] {
    width: auto;
    padding: 6px 5px 5px;
}
.contact select {
    padding: 9px 5px !important;
}
.contact textarea {
    max-width: 400px;
    width: 100%;
}
.submit_btn {
    margin-top: 40px;
    text-align: center;
}
.submit_btn input {
    cursor: pointer;
    border: none;
    padding: 15px 20px;
    transition: 0.2s ease-in-out;
    max-width: 150px;
    width: 100%;
    font-size: 100%;
    margin: 0 10px 10px;
}
.submit_btn input:hover {
    opacity: 0.8;
}
.submit_btn input[type="reset"] {
    color: #fff;
    background: #888;
}
.submit_btn input[type="submit"] {
    color: #fff;
    background: #a5cd95;
}
.contact {
	width: 100%;
    max-width: 960px;
}
.suggestion{
  width: 100%;
  margin: 30px auto 0;
  background: #fff;
  border-radius: 15px;
}
.suggestion tr{
  width: 100%;
  margin: 30px;
  display: block;
}
.suggestion.fix tr{
  width: fit-content;
}
.suggestion.fix tr td:first-of-type{
  font-weight: bold;
}
.suggestion td{
  display: flex;
}
.suggestion p{
  font-weight: bold;
  width: 15%;
}
.suggestion input{
  width: 80%;
  margin: 5px;
}
.suggestion textarea{
  width: 80%;
  height: 400px;
  margin: 5px;
}
p.do input,p input{
	background: #f5b754;
	padding: 10px 30px;
	color: #fff;
	margin: 15px 0;
	box-shadow: none!important;
	border-radius: 10px;
	border: none!important;
}
#formWrap form table {
    width: 100%;
    margin: 30px auto 20px;
    background: #fff;
    border-radius: 15px;
    padding: 1%;
}

/*============================================================================

  schedule（MPCLOUD）

============================================================================*/
#mpcloud_schedule {
    position: fixed;
    z-index: 101;
    bottom: 15px;
    right: 22px;
    width: 220px;
    border-radius: 15px;
    background-color: rgba(255, 255, 255, 0.9);
    font-size: 14px;
    letter-spacing: 0.08em;
}
#mpcloud_schedule section {
    border-radius: 15px;
    box-shadow: 0 8px 22px 8px rgba(0, 0, 0, 0.1);
}
.shcedule_title {
    font-size: 16px;
    font-weight: 600;
    border-bottom: 2px solid #aaa;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    padding: 10px 0;
    text-align: center;
}
.shcedule_title i {
    position: relative;
    top: -2px;
    right: -25px;
    font-style: normal;
    font-size: 12px;
    cursor: pointer;
}
.schedule_time {
    margin: 8px 0 0 0;
}
.schedule_time dt {
    font-weight: bold;
}
.shcedule_box dt {
    background: #eee;
    text-align: center;
}
.shcedule_box dd {
    height: auto;
    vertical-align: top;
}
.shcedule_box dd i {
    display: inline-block;
    width: 17px;
    height: 17px;
    background-size: 17px 17px;
    padding: 2px 0 2px 22px;
    margin-left: 15px;
    vertical-align: inherit;
}
.shcedule_today {
    padding: 10px 16px;
}
.schedule_comment {
    border-top: 1px solid #d6d6d6;
    padding: 8px 12px;
    font-size: 14px;
}

/*==================================================================

  .breadcrumb（ぱんくず）

==================================================================*/
.breadcrumbs {
    position: relative;
    width: 1200px;
    margin: 0 auto;
    margin: 0 auto 30px;
    font-size: 14px;
}
.breadcrumbs:last-child {
    margin: 0 auto;
}
.breadcrumbs i {
    /*margin-left: 35px;*/
    margin-right: 5px;
}
.breadcrumbs a:hover {
    text-decoration: underline;
}
.breadcrumbs li {
    float: left;
    margin-right: 5px;
}
.breadcrumbs li:after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 12px;
    content: "\f054";
    padding-left: 10px;
}
.breadcrumbs li:last-child:after {
    content: "";
}
.breadcrumbs li:last-child a {
    color: #d04634 !important;
}

/*==================================================================

  .404_p

==================================================================*/
.none_page_p {
    text-align: center;
    font-size: 26px;
    padding-top: 100px;
}

/*==================================================================

  CSSアニメーション

==================================================================*/
/* フェードイン */
.fadeIn{
  opacity: 0;
  visibility: visible;
}
.is-visible.fadeIn{
  animation: fadeIn 1s cubic-bezier(0.645, 0.045, 0.355, 1.000) forwards;
}
@keyframes fadeIn {
  0%{
    opacity: 0;
  }
  100%{
    opacity: 1;
  }
}

/* フェードイン（下→上） */
.fadeInUp{
  opacity: 0;
  visibility: visible;
}
.is-visible.fadeInUp{
  animation: fadeInUp 1s cubic-bezier(0.645, 0.045, 0.355, 1.000) forwards;
}
@keyframes fadeInUp {
  0%{
    opacity: 0;
    transform: translate3d(0, 100%, 0);
  }
  80%{
    opacity: 1;
  }
  100%{
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

/* フェードイン（右→左） */
.fadeInRight{
  opacity: 0;
  visibility: visible;
}
.is-visible.fadeInRight{
  animation: fadeInRight 1s cubic-bezier(0.645, 0.045, 0.355, 1.000) forwards;
}
@keyframes fadeInRight {
  0%{
    opacity: 0;
    transform: translate3d(100%, 0, 0);;
  }
  80%{
    opacity: 1;
  }
  100%{
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

/* フェードイン（左→右） */
.fadeInLeft{
  opacity: 0;
  visibility: visible;
}
.is-visible.fadeInLeft{
  animation: fadeInLeft 1s cubic-bezier(0.645, 0.045, 0.355, 1.000) forwards;
}
@keyframes fadeInLeft {
  0%{
    opacity: 0;
    transform: translate3d(-100%, 0, 0);
  }
  80%{
    opacity: 1;
  }
  100%{
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

/* フリップ（右回転） */
.flipRight{
  opacity: 0;
  visibility: visible;
}
.is-visible.flipRight{
  animation: flipRight 1s cubic-bezier(0.645, 0.045, 0.355, 1.000) forwards;
  transform: rotateY(-180deg);
}
@keyframes flipRight {
  0%{
    opacity: 0;
    transform: rotateY(-180deg);
  }
  100%{
    opacity: 1;
    transform: rotateY(0deg);
  }
}

/* フリップ（左回転） */
.flipLeft{
  opacity: 0;
  visibility: visible;
  transform: rotateY(180deg);
}
.is-visible.flipLeft{
  animation: flipLeft 1s cubic-bezier(0.645, 0.045, 0.355, 1.000) forwards;
}
@keyframes flipLeft {
  0%{
    opacity: 0;
    transform: rotateY(180deg);
  }
  100%{
    opacity: 1;
    transform: rotateY(0deg);
  }
}

/* 恒常的に動くアニメーション */

/* ゆっくり回転（右回転） */
.rotateRight{
  animation: rotateRight 20s linear infinite;
}
@keyframes rotateRight {
  0%{
    transform: rotate(0deg);
  }
  100%{
    opacity: 1;
    transform: rotate(360deg);
  }
}

/* ゆっくり回転（左回転） */
.rotateLeft{
  animation: rotateLeft 20s linear infinite;
}
@keyframes rotateLeft {
  0%{
    transform: rotate(0deg);
  }
  100%{
    opacity: 1;
    transform: rotate(-360deg);
  }
}

/* 浮遊（基準点から上） */
.floatingUp{
  animation: floatingUp 10s ease-in-out infinite;
}
@keyframes floatingUp {
  0%{
    transform: translateY(0);
  }
  50%{
    transform: translateY(-30px);
  }
  100%{
    transform: translateY(0);
  }
}

/* 浮遊（基準点から下） */
.floatingDown{
  animation: floatingDown 10s ease-in-out infinite;
}
@keyframes floatingDown {
  0%{
    transform: translateY(0);
  }
  50%{
    transform: translateY(30px);
  }
  100%{
    transform: translateY(0);
  }
}

/* 生き物が跳ねる（鳥、リスなど） */
.jumping{
  position: relative;
  animation: jumping 1s ease-in-out infinite;
}
@keyframes jumping{
	0%{
		top: 0;
	}
	10%{
		top: -5px;
	}
	20%{
		top: 0px;
	}
	30%{
		top: -5px;
	}
	40%{
		top: 0px;
	}
	100%{
		top: 0px;
	}
}

/*common*/
.pc_inline{display:inline!important}.sp_inline{display:none!important}.sp_inline_ip{display:none!important}.pc_table{display:none!important}.sp_table{display:none!important}
address,body,dd,dl,dt,form,h1,h2,h3,h4,h5,h6,option,p,pre,select{margin:0;padding:0;-webkit-text-size-adjust:100%}img{vertical-align:middle;}iframe{vertical-align:middle;}li,ul{list-style:none;margin:0;padding:0}a img{border:none}.w010par{width:10%}.w020par{width:20%}.w025par{width:25%}.w050par{width:50%}.w075par{width:75%}.w100par{width:100%}.w010{width:10px}.w020{width:20px}.w030{width:30px}.w040{width:40px}.w050{width:50px}.w060{width:60px}.w070{width:70px}.w080{width:80px}.w090{width:90px}.w100{width:100px}.w110{width:110px}.w120{width:120px}.w130{width:130px}.w140{width:140px}.w150{width:150px}.w160{width:160px}.w170{width:170px}.w180{width:180px}.w190{width:190px}.w200{width:200px}.w210{width:210px}.w220{width:220px}.w230{width:230px}.w240{width:240px}.w250{width:250px}.w255{width:255px}.w260{width:260px}.w270{width:270px}.w280{width:280px}.w290{width:290px}.w300{width:300px}.w305{width:305px}.w310{width:310px}.w320{width:320px}.w330{width:330px}.w340{width:340px}.w350{width:350px}.w360{width:360px}.w365{width:365px}.w370{width:370px}.w380{width:380px}.w390{width:390px}.w400{width:400px}.w410{width:400px}.w415{width:415px}.w420{width:420px}.w430{width:430px}.w435{width:435px}.w440{width:440px}.w450{width:450px}.w460{width:460px}.w470{width:470px}.w480{width:480px}.w490{width:490px}.w500{width:500px}.w510{width:510px}.w520{width:520px}.w530{width:530px}.w540{width:540px}.w550{width:550px}.w560{width:560px}.w570{width:570px}.w580{width:580px}.w590{width:590px}.w600{width:600px}.w610{width:610px}.w620{width:620px}.w630{width:630px}.w640{width:640px}.w650{width:650px}.w660{width:660px}.w670{width:670px}.w680{width:680px}.w690{width:690px}.w700{width:700px}.w710{width:710px}.w720{width:720px}.w730{width:730px}.w740{width:740px}.w750{width:750px}.w760{width:760px}.w765{width:765px}.w960{width:960px}.w980{width:980px}.h030{height:30px}.h180{height:180px}.h190{height:190px}.h200{height:200px}.h240{height:240px}.h250{height:250px}.h280{height:280px}.h300{height:300px}.h350{height:350px}.mt00{margin-top:0!important}.mt01{margin-top:1px}.mt02{margin-top:2px}.mt03{margin-top:3px}.mt04{margin-top:4px}.mt05{margin-top:5px}.mt06{margin-top:6px}.mt07{margin-top:7px}.mt08{margin-top:8px}.mt09{margin-top:9px}.mt10{margin-top:10px}.mt15{margin-top:15px}.mt20{margin-top:20px}.mt25{margin-top:25px}.mt30{margin-top:30px}.mt35{margin-top:35px}.mt40{margin-top:40px}.mt45{margin-top:45px}.mt50{margin-top:50px}.mt60{margin-top:60px}.mt70{margin-top:70px}.mt80{margin-top:80px}.mt90{margin-top:90px}.mt100{margin-top:100px}.mt110{margin-top:110px}.mt120{margin-top:120px}.mr00{margin-right:0!important}.mr01{margin-right:1px}.mr02{margin-right:2px}.mr03{margin-right:3px}.mr04{margin-right:4px}.mr05{margin-right:5px}.mr06{margin-right:6px}.mr07{margin-right:7px}.mr08{margin-right:8px}.mr09{margin-right:9px}.mr10{margin-right:10px}.mr15{margin-right:15px}.mr20{margin-right:20px}.mr25{margin-right:25px}.mr30{margin-right:30px}.mr35{margin-right:35px}.mr40{margin-right:40px}.mr45{margin-right:45px}.mr50{margin-right:50px}.mr60{margin-right:60px}.mr70{margin-right:70px}.mr80{margin-right:80px}.mr90{margin-right:90px}.mr100{margin-right:100px}.mb00{margin-bottom:0!important}.mb01{margin-bottom:1px}.mb02{margin-bottom:2px}.mb03{margin-bottom:3px}.mb04{margin-bottom:4px}.mb05{margin-bottom:5px}.mb06{margin-bottom:6px}.mb07{margin-bottom:7px}.mb08{margin-bottom:8px}.mb09{margin-bottom:9px}.mb10{margin-bottom:10px}.mb15{margin-bottom:15px}.mb20{margin-bottom:20px}.mb25{margin-bottom:25px}.mb30{margin-bottom:30px}.mb35{margin-bottom:35px}.mb40{margin-bottom:40px}.mb45{margin-bottom:45px}.mb50{margin-bottom:50px}.mb60{margin-bottom:60px}.mb70{margin-bottom:70px}.mb80{margin-bottom:80px}.mb90{margin-bottom:90px}.mb100{margin-bottom:100px}.ml00{margin-left:0!important}.ml01{margin-left:1px}.ml02{margin-left:2px}.ml03{margin-left:3px}.ml04{margin-left:4px}.ml05{margin-left:5px}.ml06{margin-left:6px}.ml07{margin-left:7px}.ml08{margin-left:8px}.ml09{margin-left:9px}.ml10{margin-left:10px}.ml12{margin-left:12px}.ml15{margin-left:15px}.ml20{margin-left:20px}.ml25{margin-left:25px}.ml30{margin-left:30px}.ml35{margin-left:35px}.ml40{margin-left:40px}.ml45{margin-left:45px}.ml50{margin-left:50px}.ml60{margin-left:60px}.ml70{margin-left:70px}.ml80{margin-left:80px}.ml90{margin-left:90px}.ml100{margin-left:100px}.ml140{margin-left:140px}.ml160{margin-left:160px}.ma10{margin:10px}.ma15{margin:15px}.ma_auto{margin-left:auto;margin-right:auto}.pt00{padding-top:0!important}.pt01{padding-top:1px}.pt02{padding-top:2px}.pt03{padding-top:3px}.pt04{padding-top:4px}.pt05{padding-top:5px}.pt06{padding-top:6px}.pt07{padding-top:7px}.pt08{padding-top:8px}.pt09{padding-top:9px}.pt10{padding-top:10px}.pt15{padding-top:15px}.pt20{padding-top:20px}.pt25{padding-top:25px}.pt30{padding-top:30px}.pt35{padding-top:35px}.pt40{padding-top:40px}.pt45{padding-top:45px}.pt50{padding-top:50px}.pt60{padding-top:60px}.pt70{padding-top:70px}.pt80{padding-top:80px}.pt90{padding-top:90px}.pt100{padding-top:100px}.pt120{padding-top:120px}.pr00{padding-right:0!important}.pr01{padding-right:1px}.pr02{padding-right:2px}.pr03{padding-right:3px}.pr04{padding-right:4px}.pr05{padding-right:5px}.pr06{padding-right:6px}.pr07{padding-right:7px}.pr08{padding-right:8px}.pr09{padding-right:9px}.pr10{padding-right:10px}.pr15{padding-right:15px}.pr20{padding-right:20px}.pr25{padding-right:25px}.pr30{padding-right:30px}.pr35{padding-right:35px}.pr40{padding-right:40px!important}.pr45{padding-right:45px}.pr50{padding-right:50px}.pr60{padding-right:60px}.pr70{padding-right:70px}.pr80{padding-right:80px}.pr90{padding-right:90px}.pr100{padding-right:100px}.pb00{padding-bottom:0!important}.pb01{padding-bottom:1px}.pb02{padding-bottom:2px}.pb03{padding-bottom:3px}.pb04{padding-bottom:4px}.pb05{padding-bottom:5px}.pb06{padding-bottom:6px}.pb07{padding-bottom:7px}.pb08{padding-bottom:8px}.pb09{padding-bottom:9px}.pb10{padding-bottom:10px}.pb15{padding-bottom:15px}.pb20{padding-bottom:20px}.pb25{padding-bottom:25px}.pb30{padding-bottom:30px}.pb35{padding-bottom:35px}.pb40{padding-bottom:40px}.pb45{padding-bottom:45px}.pb50{padding-bottom:50px}.pb60{padding-bottom:60px}.pb70{padding-bottom:70px}.pb80{padding-bottom:80px}.pb90{padding-bottom:90px}.pb100{padding-bottom:100px}.pl00{padding-left:0!important}.pl01{padding-left:1px}.pl02{padding-left:2px}.pl03{padding-left:3px}.pl04{padding-left:4px}.pl05{padding-left:5px}.pl06{padding-left:6px}.pl07{padding-left:7px}.pl08{padding-left:8px}.pl09{padding-left:9px}.pl10{padding-left:10px}.pl15{padding-left:15px}.pl20{padding-left:20px}.pl25{padding-left:25px}.pl30{padding-left:30px}.pl35{padding-left:35px}.pl40{padding-left:40px}.pl45{padding-left:45px}.pl50{padding-left:50px}.pl60{padding-left:60px}.pl70{padding-left:70px}.pl80{padding-left:80px}.pl90{padding-left:90px}.pl100{padding-left:100px}.pa01{padding:1px}.pa02{padding:2px}.pa03{padding:3px}.pa04{padding:4px}.pa05{padding:5px}.pa10{padding:10px}.pa15{padding:15px}.fr{float:right}.fl{float:left}.fr10{float:right;margin-left:10px}.fr15{float:right;margin-left:15px}.fr30{float:right;margin-left:15px}.fl10{float:left;margin-right:10px}.fl15{float:left;margin-right:15px}.fl30{float:left;margin-right:30px}.txt10{font-size:10px}.txt11{font-size:11px}.txt12{font-size:12px}.txt13{font-size:13px}.txt14{font-size:14px}.txt15{font-size:15px}.txt16{font-size:16px}.txt17{font-size:17px}.txt18{font-size:18px}.txt19{font-size:19px}.txt20{font-size:20px}.txt21{font-size:21px}.txt22{font-size:22px}.txt23{font-size:23px}.txt24{font-size:24px}.txt25{font-size:25px}.txt26{font-size:26px}.txt27{font-size:27px}.txt28{font-size:28px}.txt29{font-size:29px}.txt30{font-size:30px}.txt31{font-size:31px}.txt32{font-size:32px}.txt33{font-size:33px}.txt34{font-size:34px}.txt35{font-size:35px}.txt36{font-size:36px}.txt37{font-size:37px}.txt38{font-size:38px}.txt39{font-size:39px}.txt40{font-size:40px}.bold{font-weight:700}.left{text-align:left!important}.center{text-align:center!important}.right{text-align:right}.clear{clear:both}.v_top{vertical-align:top}.v_mid{vertical-align:middle}.v_btm{vertical-align:bottom}.color_red{color:#f33}.color_pink{color:#ed8c96}.color_blue{color:#00408f}.color_green{color:#479f9d}.color_ore{color:#ec9100}.color_yellow{color:#bfa113}.color_beige{color:#dac58b}.color_brown{color:#9b8052}.color_navy{color:#1f2774}.color_black{color:#3e3a39}.ls_0{letter-spacing:0}.ls_1{letter-spacing:1px}.indent{margin-left:1em!important;text-indent:-1em}.line_h_2{line-height:2!important}.clearfix:after{display:block;clear:both;content:""}.sp{display:none!important}

.list_img_flex{
    display: flex;
}
.list_img_flex img{
    width: 250px;
    height: 100%;
}