@charset "utf-8";

/* ==================================================
contents
================================================== */

#tmp_main .container {
	max-width: 1045px;
}

/* コンテンツタイトル */
#tmp_main .sec_title {
    margin-bottom: 12px;
    text-align: center;
}
#tmp_main .sec_title h2 {
    font-size: 150%;
}

/* ボタン */
.btn_default {
    margin-top: 30px;
    text-align: center;
}
.btn_default a {
    display: inline-block;
    padding: 9px 30px 7px 25px;
    min-width: 253px;
    border-radius: 20px;
    background-color: #1278d1;
    background-image: url(/shared/site_gan_rn/images/icon/icon_arrow_next_white.png);
    background-repeat: no-repeat;
    background-position: right 9px center;
    background-size: 8px auto;
    text-decoration: none;
    color: #ffffff;
    font-weight: 700;
}
.btn_default a:hover,
.btn_default a:focus  {
    text-decoration: underline;
}


/* メインイメージ
================================================== */
/* スライダー */
#tmp_main .mainvisual_carousel .pc_disp {
    display: block;
}
#tmp_main .mainvisual_carousel .sp_disp {
    display: none;
}
#tmp_main .slider_image {
    line-height: 0;
}
#tmp_main .slider_image img {
    width: 100%;
    height: auto;
}
#tmp_main .slider_link {
    max-width: 360px;
    width: 100%;
    padding: 6px 11px 9px;
    border: 1px solid #00756e;
    border-top-left-radius: 0;
    border-top-right-radius: 15px;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 15px;
    background-color: #ffffff;
    color: inherit;
	position: absolute;
	right: 126px;
	bottom: 88px;
	z-index: 100;
}
#tmp_main .slider_link a {
    display: inline-block;
    background-color: transparent;
    color: #000000;
}
#tmp_main .slider_link a:hover,
#tmp_main .slider_link a:focus {
    text-decoration: none;
}
#tmp_main .slider_link a::before {
	display: inline-block;
	content: "";
	width: 21px;
	height: 20px;
	background-image: url(/shared/site_gan_rn/images/icon/icon_arrow_long_right_green.png);
	background-repeat: no-repeat;
	background-position: left top;
	background-size: 21px auto;
    vertical-align: text-bottom;
}
.no_javascript #tmp_main .mainvisual_carousel .splide {
	padding-bottom: 0;
    visibility: visible;
}
.no_javascript #tmp_main .mainvisual_carousel .splide__slide {
    width: 100%;
}
.no_javascript #tmp_main .mainvisual_carousel .splide__track {
    overflow-x: auto;
}
.no_javascript #tmp_main .slider_link {
    padding: 6px 11px 9px;
    border-radius: 15px;
}

/* メニュー */
#tmp_main .sec_mainvisual {
    padding-bottom: 48px;
}
#tmp_gnavi {
    margin-top: -76px;
    margin-bottom: 33px;
    position: relative;
    z-index: 10;
}
#tmp_gnavi .gnavi_list {
    display: grid;
    gap: 10px 8px;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
}
#tmp_gnavi .gnavi::after,
#tmp_gnavi .gnavi_list::after {
    content: none;
}
#tmp_gnavi .gnavi_list li {
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 18px 0;
    width: 100%;
    padding: 20px 10px;
    border-radius: 15px;
    background-image: -moz-linear-gradient( -43.199deg, rgb(196,221,244) 0%, rgb(192,224,222) 100%);
    background-image: -webkit-linear-gradient( -43.199deg, rgb(196,221,244) 0%, rgb(192,224,222) 100%);
    background-image: -ms-linear-gradient( -43.199deg, rgb(196,221,244) 0%, rgb(192,224,222) 100%);
    background-image: linear-gradient(-43.199deg, rgb(196,221,244) 0%, rgb(192,224,222) 100%);
}
#tmp_gnavi .gnavi_list .icon {
    display: inline-block;
    line-height: 0;
}
#tmp_gnavi .gnavi_list .icon img {
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    object-fit: contain;
}
#tmp_gnavi .gnavi_list a {
    text-decoration: none;
    background-color: transparent;
    color: #000000;
    font-weight: 700;
}
#tmp_gnavi .gnavi_list a.long {
    font-size: 88%;
}
#tmp_gnavi .gnavi_list li.active a,
#tmp_gnavi .gnavi_list li a:hover,
#tmp_gnavi .gnavi_list li a:focus {
    text-decoration: underline;
}
.no_javascript #tmp_gnavi,
#cms8341-contentsZero #tmp_gnavi {
    margin-top: 20px;
}

/* 重要なお知らせ */
.important_announce .announce_wrap {
    display: flex;
    margin-left: auto;
    margin-right: auto;
	margin-bottom: 20px;
    border-radius: 15px;
    border: 1px solid #eb0000;
}
.important_announce .label {
    display: grid;
    place-items: center;
    padding: 6px 22px;
    border-top-left-radius: 15px;
    border-top-right-radius: 0;
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 0;
    background-color: #eb0000;
    color: #ffffff;
    font-weight: 700;
}
.important_announce .announce_list {
    padding: 7px 10px 7px 18px;
    list-style: none;
}
.important_announce .announce_list li {
    margin-bottom: 8px;
    padding-left: 32px;
    background-image: url(/shared/site_gan_rn/images/icon/icon_arrow_long_right_red.png);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 21px auto;
}
.important_announce .announce_list li:last-child {
    margin-bottom: 0;
}
.important_announce .announce_list a {
    background-color: transparent;
    color: #000000;
}
.important_announce .announce_list a:hover,
.important_announce .announce_list a:focus {
    text-decoration: none;
}


/* 外来受付のご案内
================================================== */
#tmp_main .sec_outpatient {
    padding-top: 20px;
    padding-bottom: 65px;
}
#tmp_main .sec_outpatient .outpatient_wrap {
    display: flex;
    gap: 0 23px;
}
#tmp_main .sec_outpatient .outpatient_ttl {
    margin-bottom: 25px;
    text-align: center;
    font-size: 150%;
}
#tmp_main .sec_outpatient .outpatient_ttl span {
    position: relative;
}
#tmp_main .sec_outpatient .outpatient_ttl span::before {
    display: block;
    content: "";
    width: 50px;
    height: 50px;
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 50px auto;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}
#tmp_main .sec_outpatient .clinic_cnt {
    width: calc(41.5% - (23px / 2));
    padding: 34px 23px 12px 23px;
    border-radius: 15px;
    background-image: -moz-linear-gradient( -49.154deg, rgb(207,236,249) 0%, rgb(230,244,252) 100%);
    background-image: -webkit-linear-gradient( -49.154deg, rgb(207,236,249) 0%, rgb(230,244,252) 100%);
    background-image: -ms-linear-gradient( -49.154deg, rgb(207,236,249) 0%, rgb(230,244,252) 100%);
    background-image: linear-gradient( -49.154deg, rgb(207,236,249) 0%, rgb(230,244,252) 100%);
}
#tmp_main .sec_outpatient .clinic_cnt .outpatient_ttl span {
    margin-left: -30px;
    padding-left: 60px;
}
#tmp_main .sec_outpatient .clinic_cnt .outpatient_ttl span::before {
    background-image: url(/shared/templates/gan_top_rn/images/icon_clinic.png);
}
#tmp_main .sec_outpatient .inquiry_cnt {
    width: calc(58.5% - (23px / 2));
    padding: 35px 30px;
    border-radius: 15px;
    background-image: -moz-linear-gradient( -39.178deg, rgb(217,242,241) 0%, rgb(242,250,250) 100%);
    background-image: -webkit-linear-gradient( -39.178deg, rgb(217,242,241) 0%, rgb(242,250,250) 100%);
    background-image: -ms-linear-gradient( -39.178deg, rgb(217,242,241) 0%, rgb(242,250,250) 100%);
    background-image: linear-gradient( -39.178deg, rgb(217,242,241) 0%, rgb(242,250,250) 100%);
}
#tmp_main .sec_outpatient .inquiry_cnt .outpatient_ttl span {
    margin-left: -39px;
    padding-left: 60px;
}
#tmp_main .sec_outpatient .inquiry_cnt .outpatient_ttl span::before {
    background-image: url(/shared/templates/gan_top_rn/images/icon_tel.png);
}

/* 診療時間・休診日、ご予約・お問い合わせ　表 */
#tmp_main .sec_outpatient .outpatient_table {
	border-collapse: collapse;
	border-spacing: 0;
}
#tmp_main .sec_outpatient .outpatient_table tr:first-child {
    border-top: 2px solid #ffffff;
}
#tmp_main .sec_outpatient .outpatient_table tr {
    border-bottom: 2px solid #ffffff;
}
#tmp_main .sec_outpatient .outpatient_table th {
    width: 30%;
    padding: 6px 10px;
    text-align: left;
    vertical-align: top;
    font-size: 138%;
}
#tmp_main .sec_outpatient .outpatient_table td {
    padding: 7px 5px;
}
#tmp_main .sec_outpatient .outpatient_table td p:not(.emphasis) {
    line-height: 2;
}
#tmp_main .sec_outpatient .outpatient_table td .emphasis {
    font-size: 138%;
    font-weight: 700;
}

/* 診療時間・休診日　表微調整 */
/* 強調テキスト */
#tmp_main .sec_outpatient .clinic_cnt .outpatient_table th,
#tmp_main .sec_outpatient .clinic_cnt .outpatient_table td .emphasis {
    background-color: transparent;
    color: #0055a2;
}
/* 休診日 */
#tmp_main .sec_outpatient .outpatient_table .closed_day th {
    padding: 3px 10px 14px;
}
#tmp_main .sec_outpatient .outpatient_table .closed_day td {
    padding: 7px 15px 14px 5px;
}
#tmp_main .sec_outpatient .outpatient_table .closed_day .day {
    margin-bottom: 2px;
    background-color: transparent;
    color: #0055a2;
    font-weight: 600;
}
/* マイナンバーカード */
#tmp_main .sec_outpatient .outpatient_table .card_about td {
    padding: 7px 0;
}
#tmp_main .sec_outpatient .outpatient_table .card_about .link {
    padding-left: 30px;
    background-image: url(/shared/site_gan_rn/images/icon/icon_arrow_long_right_blue.png);
    background-repeat: no-repeat;
    background-position: left 4px top 6px;
    background-size: 21px auto;
}
#tmp_main .sec_outpatient .outpatient_table .card_about .link a {
    background-color: transparent;
    color: #000000;
}
#tmp_main .sec_outpatient .outpatient_table .card_about .link a:hover,
#tmp_main .sec_outpatient .outpatient_table .card_about .link a:focus {
    text-decoration: none;
}
/* 禁煙 */
#tmp_main .sec_outpatient .outpatient_table .smoking {
    border-bottom: none;
}
#tmp_main .sec_outpatient .outpatient_table .smoking td {
    padding: 10px 0px 10px 4px;
}
#tmp_main .sec_outpatient .outpatient_table .smoking .smoking_text {
    padding: 7px 26px;
  border-radius: 15px;
  background-color: #ffffff;
}

/* ご予約・お問い合わせ　表微調整 */
/* 強調テキスト */
#tmp_main .sec_outpatient .inquiry_cnt .outpatient_table th,
#tmp_main .sec_outpatient .inquiry_cnt .outpatient_table td .emphasis {
    background-color: transparent;
    color: #00756e;
}
/* 注意事項 */
#tmp_main .sec_outpatient .outpatient_table .important th {
    padding: 6px 10px 12px;
}
#tmp_main .sec_outpatient .outpatient_table .important td {
    padding: 4px 13px 12px 5px;
}
/* 予約専用電話 */
#tmp_main .sec_outpatient .outpatient_table .appointment th {
    padding: 6px 10px 11px;
}
#tmp_main .sec_outpatient .outpatient_table .appointment td {
    padding: 8px 4px 11px;
}
#tmp_main .sec_outpatient .outpatient_table .tel_num {
    line-height: 1.3;
}
/* 代表 */
#tmp_main .sec_outpatient .outpatient_table .representative th {
    padding: 6px 10px 11px;
}
#tmp_main .sec_outpatient .outpatient_table .representative td {
    padding: 8px 4px 11px;
}
#tmp_main .sec_outpatient .outpatient_table .representative .link {
    padding-left: 30px;
    background-image: url(/shared/site_gan_rn/images/icon/icon_arrow_long_right_green.png);
    background-repeat: no-repeat;
    background-position: left -1px top 12px;
    background-size: 21px auto;
}
#tmp_main .sec_outpatient .outpatient_table .representative .link a {
    background-color: transparent;
    color: #000000;
}
#tmp_main .sec_outpatient .outpatient_table .representative .link a:hover,
#tmp_main .sec_outpatient .outpatient_table .representative .link a:focus {
    text-decoration: none;
}

/* 交通アクセス
================================================== */
#tmp_main .sec_access {
    display: flex;
}

/* google map */
#tmp_main .sec_access .access_cnt {
    width: 36.5%;
    position: relative;
}
#tmp_main .sec_access .access_cnt::before {
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    background-image: -moz-linear-gradient( -43.042deg, rgb(78,184,234) 0%, rgb(0,164,157) 50%, rgb(0,85,162) 100%);
    background-image: -webkit-linear-gradient( -43.042deg, rgb(78,184,234) 0%, rgb(0,164,157) 50%, rgb(0,85,162) 100%);
    background-image: -ms-linear-gradient( -43.042deg, rgb(78,184,234) 0%, rgb(0,164,157) 50%, rgb(0,85,162) 100%);
    background-image: linear-gradient( -43.042deg, rgb(78,184,234) 0%, rgb(0,164,157) 50%, rgb(0,85,162) 100%);
    opacity: 0.102;
    position: absolute;
    inset: 0;
    z-index: -1;
}
#tmp_main .sec_access .map_cnt {
    width: 63.5%;
    line-height: 0;
    background-color: #cccccc;
    color: inherit;
}
#tmp_main .sec_access .map_cnt iframe {
    max-width: 100%;
    width: 100%;
    height: 100%;
}

/* 交通アクセス */
#tmp_main .sec_access .access_cnt {
    padding: 50px 60px 50px 42px;
}
#tmp_main .sec_access .access_info {
	border-collapse: collapse;
	border-spacing: 0;
}
#tmp_main .sec_access .access_info th {
    width: 18%;
    padding: 12px 10px;
    text-align: left;
    vertical-align: top;
    background-color: transparent;
    color: #00756e;
    font-size: 138%;
}
#tmp_main .sec_access .access_info td {
    padding: 7px 5px;
}
#tmp_main .sec_access .access_info td p:not(.emphasis) {
    line-height: 2;
}
#tmp_main .sec_access .access_info td .emphasis {
    font-size: 138%;
    font-weight: 700;
}
/* 電車 */
#tmp_main .sec_access .access_info .train td {
    padding: 10px 22px 10px 8px;
}
/* バス */
#tmp_main .sec_access .access_info .bus th {
    padding: 9px 10px 12px;
}
#tmp_main .sec_access .access_info .bus td {
    padding: 4px 22px 10px 8px;
}
/* 車 */
#tmp_main .sec_access .access_info .car th {
    padding: 3px 10px 12px;
}
#tmp_main .sec_access .access_info .car td {
    padding: 3px 7px;
    vertical-align: top;
}
/* 住所 */
#tmp_main .sec_access .access_info .address th {
    padding: 5px 10px 12px;
}
#tmp_main .sec_access .access_info .address td {
    padding: 0px 7px;
    vertical-align: top;
}


/* お知らせ、研修会・セミナー
================================================== */
.sec_info {
    padding: 73px 0 66px;
}
.sec_info .info_wrap {
    display: flex;
    gap: 0 17px;
}
/* タイトル */
.sec_info .sec_title {
    margin-bottom: 30px;
}

/* お知らせ */
.sec_info .news_cnt {
    width: calc(50% - (17px / 2));
}
.sec_info .news_cnt .sec_title {
    background-color: transparent;
    color: #0055a2;
}
.sec_info .news_cnt .news_list {
    list-style: none;
}
.sec_info .news_cnt .news_list li {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    gap: 13px 0;
    padding: 20px 0 17px;
    border-bottom: 1px solid #cccccc;
}
.sec_info .news_cnt .news_list li:first-child {
    border-top: 1px solid #cccccc;
}
.sec_info .news_cnt .news_list a {
    display: flex;
    flex-direction: column;
    gap: 14px 0;
    background-color: transparent;
    text-decoration: none;
    color: #000000;
}
.sec_info .news_cnt .news_list a:hover,
.sec_info .news_cnt .news_list a:focus {
    text-decoration: underline;
}
/* 研修会・セミナー */
.sec_info .seminar_cnt {
    width: calc(50% - (17px / 2));
}
.sec_info .seminar_cnt .sec_title {
    background-color: transparent;
    color: #00756e;
}
.sec_info .seminar_cnt .seminar_list {
    list-style: none;
}
.sec_info .seminar_cnt .seminar_list li {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    gap: 12px 0;
    padding: 15px 0;
    border-bottom: 1px solid #cccccc;
}
.sec_info .seminar_cnt .seminar_list li:first-child {
    border-top: 1px solid #cccccc;
}
.sec_info .seminar_cnt .seminar_list li a {
    display: flex;
    flex-direction: column;
    gap: 7px 0;
    background-color: transparent;
    text-decoration: none;
    line-height: 2;
    color: #000000;
}
.sec_info .seminar_cnt .seminar_list li a:hover,
.sec_info .seminar_cnt .seminar_list li a:focus {
    text-decoration: underline;
}
.sec_info .seminar_cnt .btn_default a {
    background-color: #00756e;
}


/* TOPICS
================================================== */
#tmp_main .sec_topics {
    padding-bottom: 68px;
}

/* タイトル */
#tmp_main .sec_topics .sec_title {
    margin-bottom: 26px;
}

/* TOPICS */
#tmp_main .sec_topics .topics_list_warp {
    margin-bottom: 60px;
}
#tmp_main .sec_topics .topics_list {
    display: grid;
    gap: 18px;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    list-style: none;
}
#tmp_main .sec_topics .topics_list li {
    border-radius: 15px;
    border: 1px solid #cccccc;
    overflow: hidden;
    position: relative;
}
#tmp_main .sec_topics .topics_list .image {
    width: 100%;
    min-height: 240px;
    background-color: #cccccc;
    color: inherit;
    line-height: 0;
}
#tmp_main .sec_topics .topics_list .image img {
    width: 100%;
    height: auto;
    object-fit: cover;
    aspect-ratio: 1 / 1;
}
#tmp_main .sec_topics .topics_list .text {
    display: block;
    width: 100%;
    min-height: 121px;
    padding: 8px 15px;
    background-color: rgb(255, 255, 255, 0.851);
    line-height: 2;
    color: inherit;
    position: absolute;
    left: 0;
    bottom: 0;
}
#tmp_main .sec_topics .topics_list .text a {
    background-color: transparent;
    text-decoration: none;
    color: #000000;
}
#tmp_main .sec_topics .topics_list li.active a,
#tmp_main .sec_topics .topics_list li a:focus {
    text-decoration: underline;
}

/* リンク */
#tmp_main .sec_topics .btn_link {
    display: block;
    background-color: #f5f8fa;
    background-image: url(/shared/site_gan_rn/images/icon/icon_arrow_next_green.png);
    background-repeat: no-repeat;
    background-position: right 9px center;
    background-size: 8px auto;
    border: 1px solid #00a49d;
    border-radius: 15px;
    text-decoration: none;
    color: #00756e;
    font-weight: 700;
}
#tmp_main .sec_topics .btn_link .image {
    display: inline-block;
    line-height: 0;
}
#tmp_main .sec_topics .btn_link .image img {
    width: 100%;
    height: auto;
}

/* 広報ライブラリーリンク */
#tmp_main .sec_topics .link_single {
    margin-bottom: 28px;
}
#tmp_main .sec_topics .link_single .btn_link {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 27px 65px 29px 64px;
    background-image: url(/shared/templates/gan_top_rn/images/icon_library_arrow.png);
    background-position: right 34px center;
    background-size: 12px auto;
}
#tmp_main .sec_topics .link_single .btn_link:hover,
#tmp_main .sec_topics .link_single .btn_link:focus {
    text-decoration: underline;
}
#tmp_main .sec_topics .link_single .btn_link .image {
    margin-right: 20px;
}
#tmp_main .sec_topics .link_single .btn_link .sp_show {
    display: none;
}

/* SNSリンク */
#tmp_main .sec_topics .link_list {
    display: flex;
    gap: 0 20px;
}
#tmp_main .sec_topics .link_list .btn_link {
    display: flex;
    flex: 1;
    gap: 0 20px;
    padding: 13px 25px 12px 21px;
}
#tmp_main .sec_topics .link_list .btn_link:hover,
#tmp_main .sec_topics .link_list .btn_link:focus {
    text-decoration: underline;
}
#tmp_main .sec_topics .link_list .image {
    max-width: 148px;
}
#tmp_main .sec_topics .link_list .text {
    flex: 1;
    padding: 6px 0;
    line-height: 2;
    white-space: nowrap;
}


/* 研修会・セミナー
================================================== */
#tmp_main .sec_recruit {
    padding-bottom: 54px;
    position: relative;
}
#tmp_main .sec_recruit::before {
    display: block;
    content: "";
    width: 100%;
    height: 58%;
    background-image: url(/shared/templates/gan_top_rn/images/recruit_pc_bg.png);
    background-repeat: no-repeat;
    background-position: top center;
    background-size: cover;
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: -1;
}

/* タイトル */
#tmp_main .sec_recruit .ttl_wrap {
    display: flex;
    justify-content: space-between;
    gap: 0 20px;
    margin-bottom: 47px;
    padding-left: 8px;
}
#tmp_main .sec_recruit .sec_title {
    margin-bottom: 0;
    background-color: transparent;
    color: #00756e;
}
/* ボタン */
#tmp_main .sec_recruit .btn_default {
    margin-top: 0;
}
#tmp_main .sec_recruit .btn_default a {
    background-color: #00756e;
}

#tmp_main .sec_recruit .recruit_warp {
    display: flex;
    align-items: flex-end;
    gap: 0 20px;
}
#tmp_main .sec_recruit .recruit_image_cnt {
    width: calc(58.5% - 10px);
    line-height: 0;
}
#tmp_main .sec_recruit .recruit_image_cnt img {
    width: 100%;
    height: auto;
}
#tmp_main .sec_recruit .recruit_info_cnt {
    width: calc(41.5% - 10px);
}
#tmp_main .sec_recruit .recruit_list {
    padding: 30px 26px;
    list-style: none;
    border-radius: 15px;
    background-image: -moz-linear-gradient( -31.769deg, rgb(217,242,241) 0%, rgb(242,250,250) 100%);
    background-image: -webkit-linear-gradient( -31.769deg, rgb(217,242,241) 0%, rgb(242,250,250) 100%);
    background-image: -ms-linear-gradient( -31.769deg, rgb(217,242,241) 0%, rgb(242,250,250) 100%);
    background-image: linear-gradient( -31.769deg, rgb(217,242,241) 0%, rgb(242,250,250) 100%);
}
#tmp_main .sec_recruit .recruit_list li {
    padding-left: 44px;
    background-image: url(/shared/site_gan_rn/images/icon/icon_arrow_long_right_green.png);
    background-repeat: no-repeat;
    background-position: left 13px top 13px;
    background-size: 21px auto;
    border-bottom: 2px solid #ffffff;
}
#tmp_main .sec_recruit .recruit_list li:first-child {
    border-top: 2px solid #ffffff;
}
#tmp_main .sec_recruit .recruit_list a {
    display: block;
    padding: 12px 10px;
    background-color: transparent;
    text-decoration: none;
    color: #00756e;
    font-weight: 700;
}
#tmp_main .sec_recruit .recruit_list a:hover,
#tmp_main .sec_recruit .recruit_list a:focus {
    text-decoration: underline;
}


/* 関連施設
================================================== */
#tmp_main .sec_related {
    padding: 58px 0;
}
#tmp_main .sec_related .related_ttl h3 {
    font-size: 137.5%;
}
#tmp_main .sec_related .facility_list,
#tmp_main .sec_related .link_list {
    list-style: none;
}
#tmp_main .sec_related .facility_cnt,
#tmp_main .sec_related .link_cnt {
    display: grid;
    grid-template-columns: 128px 1fr;
}
#tmp_main .sec_related .list_wrap {
    padding: 5px 0;
}
#tmp_main .sec_related .facility_list li,
#tmp_main .sec_related .link_list li {
    max-width: 328px;
    width: 100%;
    min-height: 88px;
}
#tmp_main .sec_related .facility_list a,
#tmp_main .sec_related .link_list a {
    display: flex;
    border-radius: 15px;
    border: 1px solid #cccccc;
    background-color: #ffffff;
    text-decoration: none;
}
#tmp_main .sec_related .facility_list a:hover,
#tmp_main .sec_related .facility_list a:focus,
#tmp_main .sec_related .link_list a:hover,
#tmp_main .sec_related .link_list a:focus {
    text-decoration: underline;
}
#tmp_main .sec_related .facility_list .image,
#tmp_main .sec_related .link_list .image {
    display: inline-block;
    line-height: 0;
}
#tmp_main .sec_related .facility_list .image img,
#tmp_main .sec_related .link_list .image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    aspect-ratio: 1 / 1;
}
#tmp_main .sec_related .facility_list .text,
#tmp_main .sec_related .link_list .text {
    display: flex;
    align-items: center;
    flex: 1;
    padding: 10px 20px 10px 14px;
    background-repeat: no-repeat;
    background-position: right 8px center;
    background-size: 8px auto;
    font-size: 112.5%;
    font-weight: 700;
}
#tmp_main .sec_related .facility_list .pc_show,
#tmp_main .sec_related .link_list .pc_show {
    display: inline;
}


/* 関連施設 */
#tmp_main .sec_related .facility_cnt {
    margin-bottom: 8px;
}
#tmp_main .sec_related .facility_list {
    display: flex;
    flex-wrap: wrap;
}
#tmp_main .sec_related .facility_list a {
    color: #00756e;
}
#tmp_main .sec_related .facility_list .text {
    background-image: url(/shared/site_gan_rn/images/icon/icon_arrow_next_green.png);
}

/* 関連リンク */
#tmp_main .sec_related {
    background-color: #f5f8fa;
    color: inherit;
}
#tmp_main .sec_related .link_cnt .list_wrap {
    display: flex;
    gap: 0 20px;
}

#tmp_main .sec_related .big_link a {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 38px 27px 27px;
    aspect-ratio: 1 / 1;
    color: #000000;
}
#tmp_main .sec_related .big_link .image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    aspect-ratio: auto;
}
#tmp_main .sec_related .big_link .text {
    align-items: flex-start;
    padding: 0;
    line-height: 2;
}

#tmp_main .sec_related .link_list:not(.big_link) {
    display: flex;
    flex-wrap: wrap;
    flex: 1;
    gap: 18px 20px;
}
#tmp_main .sec_related .link_list:not(.big_link) .text {
    padding: 3px 20px 6px 10px;
}

#tmp_main .sec_related .link_list .red_link a {
    color: #b0183f;
}
#tmp_main .sec_related .link_list .red_link .text {
    background-image: url(/shared/site_gan_rn/images/icon/icon_arrow_next_red.png);
}
#tmp_main .sec_related .link_list .yellow_link a {
    color: #7a6200;
}
#tmp_main .sec_related .link_list .yellow_link .text {
    background-image: url(/shared/site_gan_rn/images/icon/icon_arrow_next_yellow.png);
}
#tmp_main .sec_related .link_list .blue_link a {
    color: #0f49b5;
}
#tmp_main .sec_related .link_list .blue_link .text {
    background-image: url(/shared/site_gan_rn/images/icon/icon_arrow_next_blue.png);
}


/* ==================================================
print
================================================== */
@media print {
}


@media screen and (max-width : 1400px) {
    /* 交通アクセス
    ================================================== */
    /* google map */
    #tmp_main .sec_access .access_cnt {
        width: 45%;
    }
    #tmp_main .sec_access .map_cnt {
        width: 55%;
    }
    /* 交通アクセス */
    #tmp_main .sec_access .access_cnt {
        padding: 40px 50px;
    }
    #tmp_main .sec_access .access_info th {
        width: 20%;
        font-size: 120%;
    }
}
@media screen and (max-width : 1200px) {
    /* 外来受付のご案内
    ================================================== */

    /* 診療時間・休診日、ご予約・お問い合わせ　表 */
    #tmp_main .sec_outpatient .outpatient_table th {
        font-size: 120%;
    }
    #tmp_main .sec_outpatient .outpatient_table td .emphasis {
        font-size: 120%;
    }
}
@media screen and (max-width : 1080px) {
    /* 交通アクセス
    ================================================== */
    /* 交通アクセス */
    #tmp_main .sec_access .access_cnt {
        padding: 30px 20px;
    }
    #tmp_main .sec_access .access_info th {
        font-size: 110%;
    }
    /* 外来受付のご案内
    ================================================== */
    #tmp_main .sec_outpatient .outpatient_wrap {
        gap: 0 20px;
    }
    #tmp_main .sec_outpatient .clinic_cnt {
        width: calc(49.5% - (10px / 2));
    }
    #tmp_main .sec_outpatient .inquiry_cnt {
        width: calc(49.5% - (10px / 2));
    }

    /* 診療時間・休診日、ご予約・お問い合わせ　表 */
    #tmp_main .sec_outpatient .outpatient_table th {
        width: 30%;
        font-size: 110%;
    }
    #tmp_main .sec_outpatient .outpatient_table td .emphasis {
        font-size: 110%;
    }

    /* 研修会・セミナー
    ================================================== */
    #tmp_main .sec_recruit .ttl_wrap {
        gap: 0 15px;
        padding-left: 0;
    }
    #tmp_main .sec_recruit .btn_default a {
        min-width: 200px;
    }
    #tmp_main .sec_recruit .sec_title h2 {
        font-size: 140%;
    }
}
