@charset "UTF-8";
/* --------------------
Foundation
---------------------*/
/* Reset */
*,
*::before,
*::after {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	border: 0;
	vertical-align: baseline;
	background: transparent;
	font-weight: inherit;
	font-size: inherit;
	font-style: inherit;
	-webkit-tap-highlight-color: transparent;
}

article,
aside,
details,
figcaption,
figure,
main,
footer,
header,
hgroup,
menu,
nav,
section {
	display: block;
}

ul,
ol {
	list-style: none;
}

blockquote,
q {
	quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
	empty-cells: show;
}

/* Normal style */
sub,
sup {
	position: relative;
	font-size: 75%;
	line-height: 0;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

em,
strong {
	font-weight: bold;
}

/* icon fonts */
@font-face {
	font-family: "jrth-icons";
	font-display: swap;
	src: url("/hospital/static/fonts/jrth-icons.ttf") format("truetype"), url("/hospital/static/fonts/jrth-icons.woff") format("woff"), url("/hospital/static/fonts/jrth-icons.svgjrth-icons") format("svg");
	font-weight: normal;
	font-style: normal;
}

.icon, .icon-search, .icon-blank, .icon-caution, .icon-info, .icon-q, .icon-lang, .icon-locate, .icon-tel, .icon-home, .icon-check, .icon-faq_q, .icon-faq_a, .icon-excel, .icon-word, .icon-pdf, .icon-file, .icon-close, .icon-plus, .icon-minus, .icon-chevron_up, .icon-chevron_down, .icon-chevron_left, .icon-chevron_right, .icon-circle_up, .icon-circle_down, .icon-circle_left, .icon-circle_right, .icon-floor, .icon-chiken, .icon-gakuen, .icon-inv, .icon-medical, .icon-renkei, .icon-rinsyo, .icon-volunteer {
	font-family: "jrth-icons" !important;
	speak: none;
	font-style: normal !important;
	font-size: inherit;
	font-weight: normal !important;
	font-variant: normal !important;
	text-transform: none;
	line-height: 1;
	color: #03926F;
}

.icon-search:before {
	content: "";
}

.icon-blank:before {
	content: "";
}

.icon-caution:before {
	content: "";
}

.icon-info:before {
	content: "";
}

.icon-q:before {
	content: "";
}

.icon-lang:before {
	content: "";
}

.icon-locate:before {
	content: "";
}

.icon-tel:before {
	content: "";
}

.icon-home:before {
	content: "";
}

.icon-check:before {
	content: "";
}

.icon-faq_q:before {
	content: "";
}

.icon-faq_a:before {
	content: "";
}

.icon-excel:before {
	content: "";
}

.icon-word:before {
	content: "";
}

.icon-pdf:before {
	content: "";
}

.icon-file:before {
	content: "";
}

.icon-close:before {
	content: "";
}

.icon-plus:before {
	content: "";
}

.icon-minus:before {
	content: "";
}

.icon-chevron_up:before {
	content: "";
}

.icon-chevron_down:before {
	content: "";
}

.icon-chevron_left:before {
	content: "";
}

.icon-chevron_right:before {
	content: "";
}

.icon-circle_up:before {
	content: "";
}

.icon-circle_down:before {
	content: "";
}

.icon-circle_left:before {
	content: "";
}

.icon-circle_right:before {
	content: "";
}

.icon-floor:before {
	content: "";
}

.icon-chiken:before {
	content: "";
}

.icon-gakuen:before {
	content: "";
}

.icon-inv:before {
	content: "";
}

.icon-medical:before {
	content: "";
}

.icon-renkei:before {
	content: "";
}

.icon-rinsyo:before {
	content: "";
}

.icon-volunteer:before {
	content: "";
}

.icon-file {
	color: #F48A3F;
}

.icon-pdf {
	color: #C3001C;
}

/* basics */
html {
	font-size: 62.5%;
	background-color: #fff;
}

body {
	font-size: 1.6rem;
	line-height: 1.8;
	font-family: "ヒラギノ角ゴシック", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", Hiragino Sans, "メイリオ", Meiryo, sans-serif;
	letter-spacing: 0.025em;
	color: #222;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: 100%;
}

a {
	text-decoration: none;
	color: #03926F;
}

img {
	width: 100%;
	vertical-align: top;
}

/*--------------------
	Components
---------------------*/
/* texts */

.c-text {
	font-size: 1.6rem;
	line-height: 1.8;
}

.c-text-s {
	font-size: 1.4rem;
	line-height: 1.5;
}

.c-text-l {
	font-size: 1.8rem;
	line-height: 1.5;
}

.c-remarks {
	font-size: 1.3rem;
	line-height: 1.8;
	color: #666;
}

/* icon text */
.c-icontext {
	display: inline-block;
	padding-left: 1.6em;
	position: relative;
}

.c-icontext [class*="icon-"] {
	display: block;
	height: 1em;
	width: 1em;
	position: absolute;
	top: 0.9em;
	left: 0;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.c-icontext--large {
	font-size: 2rem;
	line-height: 1.5;
}

.c-icontext--large [class*="icon-"] {
	top: 0.75em;
}

/* heading */
.c-heading-prim {
	font-weight: bold;
	line-height: 1.5;
	font-size: 3.2rem;
	color: #03926F;
}

.c-heading-seco {
	font-weight: bold;
	line-height: 1.5;
	padding-left: 26px;
	border-left: 4px solid #03926F;
	position: relative;
	font-size: 2.8rem;
	color: #222;
}

.c-heading-seco::before {
	content: "";
	display: block;
	width: 4px;
	height: 100%;
	position: absolute;
	top: 0;
	left: 6px;
	background-color: #0EA0AB;
}

.c-heading-tert {
	font-weight: bold;
	line-height: 1.5;
	padding: 3px 3px 3px 22px;
	border-left: 6px solid #03926F;
	background-color: #f3f3f3;
	font-size: 2.2rem;
	color: #222;
}

.c-heading-quat {
	font-weight: bold;
	line-height: 1.5;
	padding-bottom: 8px;
	border-bottom: 1px solid #03926F;
	font-size: 1.8rem;
	color: #03926F;
}

.c-heading-quin {
	font-weight: bold;
	line-height: 1.5;
	padding-left: 30px;
	position: relative;
	font-size: 1.6rem;
	color: #222;
}

.c-heading-quin::before {
	content: "";
	display: block;
	width: 20px;
	height: 20px;
	border: 5px solid #0EA0AB;
	border-radius: 50%;
	position: absolute;
	top: 0.75em;
	left: 0;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

/* buttons */
.c-button {
	width: 300px;
	margin-left: auto;
	margin-right: auto;
}

.c-button > a {
	display: block;
	/* flex-wrap: nowrap;
	align-items: center; */
	padding: 5px 0;
	/* min-height: 50px; */
	position: relative;
	overflow: hidden;
	background-color: #03926F;
	color: #fff;
}

.c-button.c_red > a {
	background-color: #C3001C;
}

.c-button > a::before {
	content: "\e916";
	display: block;
	width: 16px;
	height: 16px;
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 12px;
	font-family: 'jrth-icons';
	font-weight: normal;
	font-size: 16px;
	line-height: 1;
	color: #fff;
	speak: none;
}

.c-button > a > span {
	display: block;
	width: 100%;
	padding: 8px 35px;
	text-align: center;
	font-weight: bold;
	font-size: 1.6rem;
	line-height: 1.5;
}

.c-button--wide {
	width: 100%;
}

.c-button--wide > a > span {
	padding: 4px 35px;
}

@media (min-width: 1000px) {
	.c-button > a {
		transition: background-color 0.2s linear;
	}
	.c-button > a:hover {
		background-color: #00C594;
	}
	.c-button.c_red > a:hover {
		background-color: #e70023;
	}
	.c-button--wide > a {
		min-height: 30px;
	}
}

/* links */
.c-textlink > a {
	display: inline-block;
	color: #222;
}

@media (min-width: 1000px) {
	.c-textlink > a {
		transition: opacity 0.2s linear, color 0.2s linear;
	}
	.c-textlink > a:hover {
		opacity: 0.6;
		color: #03926F;
	}
}


.c-news > a {
	color: #222;
}

.c-news > a [class*="icon-"] {
	margin-top: -0.1em;
	margin-right: 10px;
}

.c-news__tag {
	display: inline-block;
	width: 110px;
	height: 20px;
	margin-right: 14px;
	border: 1px solid #03926F;
	overflow: hidden;
	vertical-align: middle;
	text-align: center;
	font-size: 0.75em;
	line-height: 20px;
	color: #03926F;
}

.c-news__date {
	display: inline-block;
	margin-right: 10px;
	vertical-align: middle;
}

.c-news__text {
	display: block;
	text-indent: -27px;
	margin-left: 27px;
}
.c-news_box .c-news__text {
	display: block;
	text-indent: 0;
	margin-left: 0;
}
.c-news > p .icon-chevron_right {
	margin-right: 10px;
}
@media (min-width: 1000px) {
	.c-news > .c-news_box {
		display: flex;
		flex-wrap: nowrap;
		justify-content: flex-start;
		align-items: flex-start;
		transition: opacity 0.2s linear, color 0.2s linear;
	}
	.c-news > a, 
	.c-news > p {
		display: flex;
		flex-wrap: nowrap;
		justify-content: flex-start;
		align-items: flex-start;
		transition: opacity 0.2s linear, color 0.2s linear;
	}
	.c-news > p a {
		display: inline;
	}
	.c-news > a:hover {
		opacity: 0.6;
		color: #03926F;
	}
	.c-news__tag {
		margin-top: 4px;
		flex: 0 0 110px;
	}
	.c-news__date {
		width: 125px;
		flex: 0 0 130px;
	}
	.c-news__text {
		width: auto;
		flex: 1 1 auto;
	}
}

.c-news-container > li:nth-child(n+1) {
	margin-top: 10px;
}

.icon-indent {
	text-indent: -1.7em;
	margin-left: 1.7em;
	display: block;
}

/* lists */
.c-list > li {
	padding-left: 1em;
	position: relative;
}

.c-list > li::before {
	content: '';
	display: block;
	width: 0.7rem;
	height: 0.7rem;
	border-radius: 50%;
	position: absolute;
	top: 0.9em;
	left: 0;
	background-color: #03926F;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.c-list > li + li {
	margin-top: 4px;
}

.c-list--small > li {
	padding-left: 0.8em;
	font-size: 1.4rem;
}

.c-list--small > li::before {
	width: 4px;
	height: 4px;
	top: 0.7875em;
	background-color: #000;
}

.c-list--container > li {
	padding-left: 0;
}

.c-list--container > li::before {
	content: none;
}

@media (min-width: 1000px) {
	.c-list > li > a {
		transition: opacity 0.2s linear, color 0.2s linear;
	}
	.c-list > li > a:hover {
		opacity: 0.6;
		color: #03926F;
	}
}

.c-list-order > li {
	padding-left: 3rem;
	position: relative;
}

.c-list-order > li + li {
	margin-top: 4px;
}

.c-list-order__no {
	display: block;
	width: 2rem;
	height: 2rem;
	border-radius: 50%;
	position: absolute;
	top: 1.2em;
	left: 0;
	background-color: #03926F;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	text-align: center;
	font-weight: bold;
	font-size: 1.2rem;
	line-height: 2rem;
	letter-spacing: -0.075em;
	color: #fff;
}

.c-list-order--small > li {
	padding-left: 2.4rem;
}

.c-list-order--small .c-list-order__no {
	width: 1.6rem;
	height: 1.6rem;
	top: 1.44em;
	font-size: 1rem;
	line-height: 1.6rem;
}

.c-list-order--step > li:nth-last-child(n+2) {
	padding-bottom: 46px;
	position: relative;
}

.c-list-order--step > li:nth-last-child(n+2)::after {
	content: "";
	display: block;
	width: 30px;
	height: 16px;
	margin: 0 auto;
	position: absolute;
	bottom: 15px;
	left: 0;
	right: 0;
	background: url(/hospital/static/images/step-arrow.svg) no-repeat center;
	background-size: 30px 16px;
}

@media (min-width: 1000px) {
	.c-list-order > li > a {
		transition: opacity 0.2s linear, color 0.2s linear;
	}
	.c-list-order > li > a:hover {
		opacity: 0.6;
		color: #03926F;
	}
}

.c-list-term > li {
	text-indent: -2.6em;
	margin-left: 2.6em;
}

.c-list-term > li > .c-list {
	text-indent: 0;
}

.c-list-term > li + li {
	margin-top: 4px;
}

.c-list-term__no {
	display: inline-block;
	width: 2.2em;
	margin-right: 0.4em;
	text-align: right;
}

@media (min-width: 1000px) {
	.c-list-term > li > a {
		transition: opacity 0.2s linear, color 0.2s linear;
	}
	.c-list-term > li > a:hover {
		opacity: 0.6;
		color: #03926F;
	}
}

.c-list-check > li::before {
	content: "\e909";
	display: inline-block;
	margin-right: 0.8rem;
	font-family: 'jrth-icons';
	font-weight: normal;
	line-height: 1;
	color: #03926F;
	speak: none;
}

.c-list-check > li + li {
	margin-top: 4px;
}

@media (min-width: 1000px) {
	.c-list-check > li > a {
		transition: opacity 0.2s linear, color 0.2s linear;
	}
	.c-list-check > li > a:hover {
		opacity: 0.6;
		color: #03926F;
	}
}

.c-list-onecharacter {
	margin-top: 15px !important;
}
.c-list-onecharacter > li {
	padding-left: 1em;
	text-indent: -1em;
}
.c-list-onecharacter > li::before {
	content: '※';
	display: inline-block;
	width: 1em;
	text-indent: 0;
}
.c-list-onecharacter.en > li::before {
	content: '*';
}
.c-list-onecharacter.en > li li {
	text-indent: 0;
}

/* カテゴリートップ用リストコンテナー */
@media (max-width: 999px) {
	.c-linklist__list > li + li {
		margin-top: 20px;
	}
}

@media (min-width: 1000px) {
	.c-linklist__list {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: flex-start;
		margin-left: -4.05594%;
	}
	.c-linklist__list > li {
		width: 45.94406%;
		max-width: 45.94406%;
		flex: 0 1 45.94406%;
		margin-left: 4.05594%;
		margin-top: 15px;
	}
	.c-linklist__list > li:nth-child(-n + 2) {
		margin-top: 0;
	}
	.c-linklist--3up .c-linklist__list {
		margin-left: -4.05594%;
	}
	.c-linklist--3up .c-linklist__list > li {
		width: 29.27739%;
		max-width: 29.27739%;
		flex: 0 1 29.27739%;
		margin-left: 4.05594%;
		margin-top: 15px;
	}
	.c-linklist--3up .c-linklist__list > li:nth-child(-n + 3) {
		margin-top: 0;
	}
	.c-linklist--4up .c-linklist__list {
		margin-left: -4.05594%;
	}
	.c-linklist--4up .c-linklist__list > li {
		width: 20.94406%;
		max-width: 20.94406%;
		flex: 0 1 20.94406%;
		margin-left: 4.05594%;
		margin-top: 15px;
	}
	.c-linklist--4up .c-linklist__list > li:nth-child(-n + 4) {
		margin-top: 0;
	}
}

/* tables */
.c-table table {
	width: 100%;
	text-align: left;
	border: none;
	font-size: 1.4rem;
	line-height: 1.5;
}

.c-table th,
.c-table td {
	padding: 10px;
	border: 1px solid #ccc;
	vertical-align: middle;
}

.c-table__head {
	background-color: #EBF7F4;
	text-align: center;
	font-weight: bold;
}

.c-table--min-s {
	overflow-x: auto;
}

.c-table--min-s table {
	min-width: 500px;
}

.c-table--min-l {
	overflow-x: auto;
}

.c-table--min-l table {
	min-width: 715px;
}

/* image, video */
.c-image__image {
	position: relative;
	width: 100%;
	margin: 0 auto;
}

.c-image__image > img,
.c-image__image > .c-image__element {
	height: 100%;
}

.c-image--fix .c-image__image, .c-image--vertical .c-image__image, .c-image--video .c-image__image {
	overflow: hidden;
	height: 0;
	margin: 0 auto;
	padding-bottom: 66.66667%;
}

.c-image--fix .c-image__image > img, .c-image--vertical .c-image__image > img, .c-image--video .c-image__image > img,
.c-image--fix .c-image__image > .c-image__element,
.c-image--vertical .c-image__image > .c-image__element,
.c-image--video .c-image__image > .c-image__element {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
}

.c-image--fix .c-image__image > img, .c-image--vertical .c-image__image > img, .c-image--video .c-image__image > img {
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center;
	object-position: center;
}

.c-image--vertical .c-image__image {
	width: 64%;
	padding-bottom: 96%;
}

.c-image--video .c-image__image {
	padding-bottom: 56.25%;
}

.c-image-origin {
	text-align: center;
}

.c-image-origin img {
	display: inline-block;
	width: auto;
	max-width: 100%;
}

.c-image-container__item {
	max-width: 343px;
	margin: 0 auto;
}

.c-image-container__caption {
	padding: 7px 10px 0 10px;
}

.c-image-container--2up .c-image-container__item + .c-image-container__item, .c-image-container--3up .c-image-container__item + .c-image-container__item {
	margin-top: 40px;
}

@media (min-width: 1000px) {
	.c-image-container--2up, .c-image-container--3up {
		display: flex;
		flex-wrap: nowrap;
		justify-content: space-between;
		align-items: flex-start;
	}
	.c-image-container--2up .c-image-container__item, .c-image-container--3up .c-image-container__item {
		width: 343px;
		flex: 0 0 343px;
	}
	.c-image-container--2up .c-image-container__item + .c-image-container__item, .c-image-container--3up .c-image-container__item + .c-image-container__item {
		margin-top: 0;
		margin-left: 29px;
	}
	.c-image-container--3up .c-image-container__item {
		width: 219px;
		flex: 0 0 219px;
	}
	.c-image-container--3up .c-image-container__caption {
		font-size: 1.4rem;
	}

	/* 20240315 */
	.flexwrap {flex-wrap: wrap !important;}
	.flexwrap .c-image-container__item:nth-child(odd) {margin-left: 0;}
	.flexwrap .c-image-container__item:nth-child(n + 3) {margin-top: 30px;}
}



/*c-image → 最大表示サイズ調整用*/
.width-ss{
    max-width: 150px;
    margin: 0 auto;
}

.width-s{
    max-width: 200px;
    margin: 0 auto;
}

.width-m{
    max-width: 250px;
    margin: 0 auto;
}

.width-m2{
    max-width: 300px;
    margin: 0 auto;
}

.width-m3{
    max-width: 350px;
    margin: 0 auto;
}

.width-l{
    max-width: 500px;
    margin: 0 auto;
}

.width-l2{
    max-width: 750px;
    margin: 0 auto;
}

/*img → 元画像のサイズで表示*/
.auto {
    width: auto!important;
    height: auto!important;
    max-width: 100%!important;
    display: block;
    margin: 0 auto;
}


/* textbox */
.c-textbox {
	border: 1px solid #ccc;
	padding: 4%;
}

.c-textbox--caution {
	border: none;
	background-color: #FFF5F6;
}

.c-textbox--caution__title {
	padding-left: 20px;
	position: relative;
	color: #C3001C;
}

.c-textbox--caution__title::before {
	content: "";
	display: block;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	position: absolute;
	top: 0.9em;
	left: 0;
	background-color: #C3001C;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.c-textbox--green {
	border: none;
	background-color: #EBF7F4;
}

.c-textbox--green__title {
	padding-left: 20px;
	position: relative;
	color: #03926F;
}

.c-textbox--green__title::before {
	content: "";
	display: block;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	position: absolute;
	top: 0.9em;
	left: 0;
	background-color: #03926F;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}


.c-textbox--compact {
	border: none;
	padding: 0;
}

.c-textbox--em {
	border: 3px solid #ccc;
	text-align: center;
}

@media (min-width: 1000px) {
	.c-textbox {
		padding: 24px 30px;
	}
	.c-textbox--compact {
		padding: 0;
	}
}

.c-tel {
	font-weight: bold;
	font-size: 2.4rem;
	line-height: 1.5;
	color: #03926F;
}

.c-tel::before {
	content: "\e907";
	display: inline-block;
	height: 2.4rem;
	margin-right: 0.8rem;
	font-family: 'jrth-icons';
	font-weight: normal;
	line-height: 1;
	color: #03926F;
	speak: none;
}

.c-textbox-qa__q, .c-textbox-qa__a {
	padding-left: 38px;
	position: relative;
	min-height: 30px;
}

.c-textbox-qa__q::before, .c-textbox-qa__a::before {
	display: block;
	width: 30px;
	height: 30px;
	position: absolute;
	top: 0;
	left: 0;
	font-family: 'jrth-icons';
	font-weight: normal;
	font-size: 3rem;
	line-height: 30px;
	speak: none;
}

.c-textbox-qa__q {
	font-weight: bold;
	font-size: 1.8rem;
	color: #03926F;
}

.c-textbox-qa__q::before {
	content: "\e90a";
	color: #03926F;
}

.c-textbox-qa__a {
	margin-top: 20px;
}

.c-textbox-qa__a::before {
	content: "\e90b";
	color: #F48A3F;
}

.c-siteinfo__inner {
	display: block;
}

.c-siteinfo__inner > dl {
	border: 1px solid #0EA0AB;
	border-radius: 3px;
	background-color: #fff;
}

.c-siteinfo__inner > dl dt {
	padding: 3px;
	background-color: #0EA0AB;
	text-align: center;
	font-weight: bold;
	line-height: 1.5;
	color: #fff;
}

.c-siteinfo__inner > dl dt .icon-caution {
	color: #fff;
	top: 0.75em;
}

.c-siteinfo__inner > dl dd {
	padding: 4%;
	color: #0EA0AB;
}

@media (min-width: 1000px) {
	.c-siteinfo__inner > dl {
		display: flex;
		flex-wrap: nowrap;
		justify-content: flex-start;
		align-items: stretch;
	}
	.c-siteinfo__inner > dl dt {
		flex: 0 0 auto;
		padding: 6px 10px 5px;
	}
	.c-siteinfo__inner > dl dd {
		padding: 5px 20px;
	}
}

/* media object */
.c-media__caption {
	padding: 7px 10px 0 10px;
}

.c-media__content {
	margin-top: 14px;
}

.c-media__content > *:first-child {
	margin-top: 0 !important;
}

.c-media__content > *:last-child {
	margin-bottom: 0 !important;
}
.c-media:not(.c-media--reverse) .c-media__image:not(:first-child){
	margin-top: 14px;
}

@media (min-width: 1000px) {
	.c-media {
		display: flex;
		flex-wrap: nowrap;
		justify-content: flex-start;
		align-items: flex-start;
		flex-direction: row;
	}
	.c-media__image {
		width: 220px;
		flex: 0 0 220px;
		margin-right: 29px;
	}
	.c-media__image-l {
		width: 300px;
		flex: 0 0 300px;
		margin-right: 29px;
	}
	.c-media__image-s {
		width: 150px;
		flex: 0 0 150px;
		margin-right: 29px;
	}
	.c-media__content {
		width: auto;
		flex-basis: auto;
		margin-top: 0;
	}
	.c-media--reverse {
		flex-direction: row-reverse;
	}
	.c-media--reverse .c-media__image {
		margin-right: 0;
		margin-left: 29px;
	}
	.c-media:not(.c-media--reverse) .c-media__image:not(:first-child){
		margin: 0 0 0 29px;
	}
}


/* cards */
.c-card > a {
	display: block;
	color: #222;
}

.c-card__image {
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 0;
	margin: 0 auto;
	padding-bottom: 35%;
}

.c-card__image > img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center;
	object-position: center;
	font-family: 'object-fit: cover; object-position: center;';
}

.c-card__content {
	margin-top: 16px;
	padding-left: 10px;
	padding-right: 10px;
}

.c-card__content > dd {
	margin-top: 5px;
}

@media (min-width: 1000px) {
	.c-card > a {
		transition: color 0.2s linear;
	}
	.c-card > a:hover {
		color: #03926F;
	}
}

.c-card-thumb > a {
	display: flex;
	color: #222;
}

.c-card-thumb__image {
	margin-right: 20px;
	border-radius: 6px;
	position: relative;
	overflow: hidden;
	width: 80px;
	height: 80px;
	flex: 0 0 80px;
}

.c-card-thumb__image > img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center;
	object-position: center;
	font-family: 'object-fit: cover; object-position: center;';
}

.c-card-thumb__content {
	width: auto;
	flex: 1 1 auto;
}

.c-card-thumb__content dt {
	font-weight: bold;
	color: #03926F;
}

@media (min-width: 1000px) {
	.c-card-thumb > a {
		transition: color 0.2s linear;
	}
	.c-card-thumb > a:hover {
		color: #03926F;
	}
}

.c-card-icon > a {
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: center;
	padding: 10px;
	border: 1px solid #ccc;
	background-color: #fff;
	color: #222;
}

.c-card-icon__image {
	width: 58px;
	flex: 0 0 58px;
	margin-right: 18px;
	padding: 10px;
	border-radius: 50%;
	background-color: #03926F;
}

.c-card-icon__image > img {
	display: block;
	width: 100%;
}

.c-card-icon__text {
	font-weight: bold;
	font-size: 1.8rem;
	line-height: 1.5;
}

@media (min-width: 1000px) {
	.c-card-icon > a {
		transition: color 0.2s linear;
	}
	.c-card-icon > a:hover {
		color: #03926F;
	}
}

.c-card-icon-container__item + .c-card-icon-container__item {
	margin-top: -1px;
}

@media (min-width: 1000px) {
	.c-card-icon-container {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-content: stretch;
		margin-left: 1px;
	}
	.c-card-icon-container__item {
		margin-left: -1px;
		margin-top: -1px;
		width: 33.33333%;
		flex: 0 0 33.33333%;
	}
}

.c-card-subicon > a {
	display: inline-block;
	padding: 10px 10px 10px 4rem;
	position: relative;
	font-weight: bold;
	font-size: 1.8rem;
	color: #222;
}

.c-card-subicon [class*="icon-"] {
	display: block;
	height: 1em;
	width: 1em;
	margin: auto 0;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 1rem;
}

@media (min-width: 1000px) {
	.c-card-subicon > a {
		transition: color 0.2s linear;
	}
	.c-card-subicon > a:hover {
		color: #03926F;
	}
}

.multi-line p{
	margin-top: 5px;
	line-height: 1.1;
}

.multi-line.c-card-subicon [class*="icon-"]{
	margin-top: 17px;
}
.icon-shiinoki::before {
	box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0;
    vertical-align: top;
    content: "";
    display: inline-block;
    background: url(/hospital/static/images/icon-shiinoki.svg) no-repeat;
    background-size: contain;
    width: 18.41px;
    height: 18px;
}
.icon-instagram::before {
	box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0;
    vertical-align: top;
    content: "";
    display: inline-block;
    background: url(/hospital/static/images/icon-instagram.svg) no-repeat;
    background-size: contain;
    width: 29px;
    height: 29px;
}
.column__item {
	margin-top: 30px;
}

.column__item:first-child {
	margin-top: 0;
}

@media (min-width: 1000px) {
	.column {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: flex-start;
	}
}

@media (min-width: 1000px) {
	.column--center {
		justify-content: center;
	}
}

@media (min-width: 1000px) {
	.column--2up {
		margin-left: -4.05594%;
	}
	.column--2up .column__item {
		width: 45.94406%;
		max-width: 45.94406%;
		flex: 0 1 45.94406%;
		margin-left: 4.05594%;
		margin-top: 30px;
	}
	.column--2up .column__item:nth-child(-n + 2) {
		margin-top: 0;
	}
}

@media (min-width: 1000px) {
	.column--3up {
		margin-left: -4.05594%;
	}
	.column--3up .column__item {
		width: 29.27739%;
		max-width: 29.27739%;
		flex: 0 1 29.27739%;
		margin-left: 4.05594%;
		margin-top: 30px;
	}
	.column--3up .column__item:nth-child(-n + 3) {
		margin-top: 0;
	}
}

@media (min-width: 1000px) {
	.column--4up {
		margin-left: -4.05594%;
	}
	.column--4up .column__item {
		width: 20.94406%;
		max-width: 20.94406%;
		flex: 0 1 20.94406%;
		margin-left: 4.05594%;
		margin-top: 30px;
	}
	.column--4up .column__item:nth-child(-n + 4) {
		margin-top: 0;
	}
}

/* その他のコンポーネント */
/* separator */
.c-separator {
	display: block;
	width: 100%;
	height: 1px;
	border-top: 1px solid #ccc;
}

/* ネスト用ラッパーコンポーネント */
.c-innercontent {
	font-size: 1.6rem;
	line-height: 1.8;
}

.c-innercontent > *:first-child {
	margin-top: 0 !important;
}

.c-innercontent > *:last-child {
	margin-bottom: 0 !important;
}

.c-innercontent > [class*='c-'] {
	margin-top: 10px;
}

/* modal */
.c-modal {
	width: 100vw;
	height: 100vh;
	margin: 0 !important;
	position: fixed;
	top: 0;
	left: 100vw;
	z-index: -1;
	overflow: hidden;
	opacity: 0;
	visibility: hidden;
	background-color: rgba(0, 0, 0, 0.8);
	pointer-events: none;
	transition: all 0s linear 0.2s, opacity 0.2s linear 0s;
}

.c-modal__inner {
	width: 100%;
	height: 100%;
	padding: 4%;
	padding-top: 70px;
	overflow-y: auto;
	background-color: #fff;
}

.c-modal__close {
	width: 100%;
	height: 50px;
	background-color: #f3f3f3;
	position: absolute;
	top: 0;
	left: 0;
}

.c-modal__close > a {
	display: block;
	width: 100%;
	height: 50px;
	margin: 0 auto;
	position: relative;
	text-align: center;
	font-size: 1.4rem;
	line-height: 50px;
	color: #222;
}

.c-modal__close > a::after {
	content: "\e910";
	display: block;
	width: 30px;
	height: 30px;
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 10px;
	font-family: 'jrth-icons';
	font-weight: normal;
	font-size: 30px;
	line-height: 1;
	color: #03926F;
	speak: none;
}

.c-modal.active {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	left: 0;
	z-index: 150;
	transition: all 0s linear 0s, opacity 0.2s linear 0.1s;
}

@media (min-width: 1000px) {
	.c-modal__inner {
		display: inline-block;
		width: 70%;
		height: 70%;
		margin: auto;
		padding: 4%;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
	}
	.c-modal__close {
		width: 70%;
		margin: auto;
		top: 11.5%;
		left: 0;
		right: 0;
	}
	.c-modal__floormap {
		width: 75%;
		max-width: 715px;
		margin: auto;
		text-align: center;
	}
	.c-modal__floormap > img {
		display: inline-block;
		width: auto;
	}
}

.js-modal {
	display: inline-block;
	padding-left: 30px;
	position: relative;
}

.js-modal::after {
	content: "";
	display: inline-block;
	width: 23px;
	height: 23px;
	position: absolute;
	left: 3px;
	bottom: 0.3em;
	background: url(/hospital/static/images/icon-map.svg) no-repeat center;
	background-size: 100%;
	line-height: 1;
}

/* adobe reader banner */
.c-readerbnr > a {
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: flex-start;
}

.c-readerbnr > a > img {
	width: 158px;
	flex: 0 0 158px;
	margin-right: 10px;
}

.c-readerbnr > a > p {
	font-size: 11px;
	line-height: 1.4;
	color: #222;
}

@media (min-width: 1000px) {
	.c-readerbnr > a > p {
		font-size: 14px;
	}
}

/*--------------------
	Layout
---------------------*/
/*----------
	main header
----------*/
.l-mainheader {
	width: 100%;
	background-color: #fff;
}

.l-mainheader__logo {
	width: 180px;
	height: 30px;
	margin: auto;
	position: absolute;
	top: 15px;
	left: 20px;
	z-index: 101;
}

.l-mainheader__logo > a {
	display: block;
}

.l-mainheader__info {
	position: absolute;
	top: 56px;
	right: -0.5em;
	text-align: right;
	font-size: 1.2rem;
	line-height: 1;
}

.l-mainheader__info p {
	display: block;
	margin-bottom: 12px;
}

.l-mainheader__info__tel {
	margin-left: 30px;
	font-weight: bold;
	font-size: 2rem;
	color: #03926F;
}

.l-mainheader__info__tel > span {
	font-size: 1.4rem;
}

.l-mainheader__info p.l-mainheader__info__note {
	margin-top: 12px;
	display: block;
}

@media (max-width: 999px) {
	.l-mainheader__inner {
		width: 100%;
		height: 100%;
		position: relative;
		z-index: 100;
		background-color: #fff;
		border-bottom: 1px solid #ccc;
	}
	.l-mainheader__info {
		display: none;
	}
	.l-mainheader__navtoggle {
		width: 60px;
		height: 60px;
		position: absolute;
		z-index: 101;
		top: 0;
		right: 0;
	}
	.l-mainheader__navtoggle > a {
		display: block;
		width: 100%;
		height: 100%;
		position: relative;
	}
	.l-mainheader__navtoggle > a > span, .l-mainheader__navtoggle > a:after, .l-mainheader__navtoggle > a:before {
		display: block;
		width: 24px;
		height: 3px;
		margin: auto;
		position: absolute;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		background-color: #03926F;
		text-indent: -9999px;
	}
	.l-mainheader__navtoggle > a > span {
		opacity: 0;
		transition: opacity 0.2s linear;
	}
	.l-mainheader__navtoggle > a:before {
		content: '';
		-webkit-transform: translate(0, 0) rotate(-45deg);
		transform: translate(0, 0) rotate(-45deg);
		transition: -webkit-transform 0.2s linear;
		transition: transform 0.2s linear;
		transition: transform 0.2s linear, -webkit-transform 0.2s linear;
	}
	.l-mainheader__navtoggle > a:after {
		content: '';
		-webkit-transform: translate(0, 0) rotate(45deg);
		transform: translate(0, 0) rotate(45deg);
		transition: -webkit-transform 0.2s linear;
		transition: transform 0.2s linear;
		transition: transform 0.2s linear, -webkit-transform 0.2s linear;
	}
}

@media (max-width: 999px) and (max-width: 999px) {
	.l-mainheader.js-nav-close-sp .l-mainheader__navtoggle > a > span {
		opacity: 1;
	}
	.l-mainheader.js-nav-close-sp .l-mainheader__navtoggle > a:before {
		-webkit-transform: translate(0, -8px);
		transform: translate(0, -8px);
	}
	.l-mainheader.js-nav-close-sp .l-mainheader__navtoggle > a:after {
		-webkit-transform: translate(0, 8px);
		transform: translate(0, 8px);
	}
}

@media (min-width: 1000px) {
	.l-mainheader {
		height: 170px;
		position: relative;
	}
	.l-mainheader::after {
		content: "";
		display: block;
		width: 100%;
		height: 50px;
		position: absolute;
		bottom: 0;
		left: 0;
		background-image: linear-gradient(90deg, #0EA0AB 0%, #10AA6B 100%);
	}
	.l-mainheader__inner {
		width: 960px;
		height: 100%;
		position: relative;
		z-index: 100;
		margin: 0 auto;
	}
	.l-mainheader__logo {
		width: 240px;
		height: 40px;
		position: absolute;
		top: 40px;
		bottom: auto;
		left: 0;
		right: auto;
		z-index: 101;
	}
	.l-mainheader__navtoggle {
		display: none;
		pointer-events: none;
	}
}

/*----------
	main navigation
----------*/
@media (max-width: 999px) {
	.l-mainnav {
		box-sizing: content-box;
		width: 100%;
		max-height: 800px;
		padding-top: 60px;
		position: relative;
		overflow: hidden;
		visibility: visible;
		pointer-events: auto;
		transition: max-height 0.4s cubic-bezier(0.77, 0, 0.175, 1), visibility 0.4s;
	}
	.l-mainnav__main {
		width: 100%;
		background-color: #fff;
	}
	.l-mainnav__main ul > li {
		border-top: 1px solid #ccc;
	}
	.l-mainnav__main ul > li > a {
		display: block;
		padding: 22px 45px 22px 25px;
		position: relative;
		font-weight: bold;
		font-size: 1.8rem;
		line-height: 1.5;
		color: #222;
	}
	.l-mainnav__main ul > li > a::after {
		content: "\e916";
		display: block;
		width: 16px;
		height: 16px;
		margin: auto;
		position: absolute;
		top: 0;
		bottom: 0;
		right: 18px;
		font-family: "jrth-icons" !important;
		speak: none;
		font-weight: normal;
		font-size: 16px;
		line-height: 1;
		color: #03926F;
	}
	.l-mainnav__utils ul > li > a {
		padding-top: 18px;
		padding-bottom: 18px;
		font-weight: normal;
		font-size: 1.5rem;
	}
	.l-mainnav__utils ul > li > a [class*="icon-"] {
		margin-right: 6px;
	}
}

@media (max-width: 999px) {
	.js-nav-close-sp .l-mainnav {
		max-height: 0;
		visibility: hidden;
		pointer-events: none;
	}
}

@media (min-width: 1000px) {
	.l-mainnav__gnav {
		height: 50px;
		width: 100%;
		position: absolute;
		bottom: 0;
		left: 0;
	}
	.l-mainnav__gnav > ul {
		display: flex;
		height: 100%;
		flex-wrap: nowrap;
		justify-content: space-between;
		align-items: center;
	}
	.l-mainnav__gnav > ul > li > a {
		display: block;
		height: 50px;
		font-weight: bold;
		font-size: 1.7rem;
		line-height: 50px;
		color: #fff;
		opacity: 1;
		transition: opacity 0.2s linear;
	}
	.l-mainnav__gnav > ul > li > a:hover {
		opacity: 0.6;
	}
	.l-mainnav__utils {
		position: absolute;
		top: 15px;
		right: 0;
	}
	.l-mainnav__utils ul {
		display: flex;
		flex-wrap: nowrap;
		justify-content: space-between;
		align-items: flex-start;
	}
	.l-mainnav__utils ul > li > a {
		font-size: 1.5rem;
		color: #222;
		transition: opacity 0.2s linear, color 0.2s linear;
	}
	.l-mainnav__utils ul > li > a:hover {
		opacity: 0.6;
		color: #03926F;
	}
	.l-mainnav__utils ul > li > a [class*="icon-"] {
		margin-right: 6px;
	}
	.l-mainnav__utils ul > li + li {
		margin-left: 20px;
	}
}

/*----------
	main content
----------*/
.l-wrapper__inner {
	margin: 0 auto;
}

@media (min-width: 1000px) {
	.l-wrapper {
		background: url(/hospital/static/images/maincontent-bg.png) repeat-x center top;
		background-size: auto 130px;
	}
	.l-wrapper__inner {
		display: flex;
		flex-wrap: nowrap;
		justify-content: space-between;
		align-items: flex-start;
		flex-direction: row-reverse;
		width: 960px;
		padding-top: 100px;
	}
}

.l-maincontent {
	width: 100%;
	margin: 0 auto;
	padding-left: 4%;
	padding-right: 4%;
}

@media (min-width: 1000px) {
	.l-maincontent {
		padding-left: 0;
		padding-right: 0;
		width: 715px;
		margin: 0;
		padding-top: 30px;
	}
}

/* component default margin */
.l-maincontent > .c-heading-prim {
	margin-bottom: 40px;
}

.l-maincontent > section.l-section:first-of-type {
	margin-top: 0;
}

.l-maincontent > .l-section {
	margin-top: 70px;
}

.l-maincontent > .l-section > *:first-child {
	margin-top: 0 !important;
}

.l-maincontent > .l-section > *:last-child {
	margin-bottom: 0 !important;
}

.l-maincontent > .l-section > [class*='c-'],
.l-maincontent > .l-section > .column {
	margin-top: 20px;
}

.l-maincontent > .l-section .c-heading-seco,
.l-maincontent > .l-section .c-heading-tert,
.l-maincontent > .l-section .c-heading-quat,
.l-maincontent > .l-section .c-heading-quin {
	margin-top: 40px;
	margin-bottom: 20px;
}

.l-maincontent .c-heading-seco,
.l-maincontent .c-heading-tert,
.l-maincontent .c-heading-quat,
.l-maincontent .c-heading-quin {
	margin-top: 40px;
	margin-bottom: 20px;
}

.l-maincontent .column__item > *:first-child,
.l-maincontent .c-media__content > *:first-child {
	margin-top: 0 !important;
}

.l-maincontent .column__item > *:last-child,
.l-maincontent .c-media__content > *:last-child {
	margin-bottom: 0 !important;
}

.l-maincontent .column__item > [class*='c-'],
.l-maincontent .c-media__content > [class*='c-'] {
	margin-top: 10px;
}

@media (min-width: 1000px) {
	.l-maincontent > .l-section {
		margin-top: 90px;
	}
	.l-maincontent > .l-section > [class*='c-'],
	.l-maincontent > .l-section > .column {
		margin-top: 30px;
	}
	.l-maincontent > .l-section .c-heading-seco,
	.l-maincontent > .l-section .c-heading-tert,
	.l-maincontent > .l-section .c-heading-quat,
	.l-maincontent > .l-section .c-heading-quin {
		margin-top: 50px;
		margin-bottom: 30px;
	}
	.l-maincontent .c-heading-seco,
	.l-maincontent .c-heading-tert,
	.l-maincontent .c-heading-quat,
	.l-maincontent .c-heading-quin {
		margin-top: 50px;
		margin-bottom: 30px;
	}
}

/* breadcrumb */
.l-breadcrumb {
	width: 100%;
	height: 34px;
	position: relative;
	overflow-x: auto;
	overflow-y: hidden;
}

.l-breadcrumb__list {
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: center;
	white-space: nowrap;
	padding: 0 4%;
}

.l-breadcrumb__list > li > a,
.l-breadcrumb__list > li > span {
	display: block;
	font-size: 1.2rem;
	line-height: 32px;
	color: #666;
}

.l-breadcrumb__list > li a {
	text-decoration: underline;
}

.l-breadcrumb__list > li + li > a:before,
.l-breadcrumb__list > li + li > span:before {
	content: '＞';
	display: inline-block;
	margin: 0 5px;
}

.l-breadcrumb__list > li:first-child > a {
	display: block;
	width: 16px;
	height: 16px;
	position: relative;
	text-indent: -9999px;
}

.l-breadcrumb__list > li:first-child > a::before {
	content: "\e908";
	display: block;
	width: 16px;
	height: 16px;
	position: absolute;
	left: 0;
	font-family: "jrth-icons";
	font-size: 16px;
	line-height: 16px;
	text-indent: 0;
	speak: none;
}

@media (min-width: 1000px) {
	.l-breadcrumb {
		margin-bottom: 40px;
		position: relative;
		top: auto;
	}
	.l-breadcrumb__list {
		padding: 0;
	}
}

/*----------
	main navigation
----------*/
.l-sidenav {
	width: 100%;
	margin-top: 80px;
}

.l-sidenav__cattitle > a, .l-sidenav__cattitle > span {
	display: block;
	min-height: 90px;
	padding: 30px 4%;
	background-image: linear-gradient(90deg, #0EA0AB 0%, #10AA6B 100%);
	text-align: center;
	font-weight: bold;
	font-size: 2rem;
	line-height: 1.5;
	color: #fff;
}

.l-sidenav__sectitile {
	margin-top: 25px;
}

.l-sidenav__sectitile > a, .l-sidenav__sectitile > span {
	display: block;
	padding: 5px 4%;
	background-color: #EBF7F4;
	text-align: center;
	font-weight: bold;
	font-size: 1.6rem;
	line-height: 1.5;
	color: #03926F;
}

.l-sidenav__sectitile > a {
	text-align: left;
}

.l-sidenav__sectitile > a > [class*="icon-"] {
	display: inline-block;
	vertical-align: middle;
	margin-top: -0.2em;
	margin-right: 0.4em;
}

.l-sidenav__nav > ul {
	margin: 25px 0;
	padding: 0 4%;
}

.l-sidenav__nav > ul > li > a {
	display: block;
	padding-left: 25px;
	position: relative;
	font-size: 1.4rem;
	line-height: 1.5;
	color: #222;
}

.l-sidenav__nav > ul > li > a:before {
	content: "\e916";
	display: block;
	margin-right: 10px;
	position: absolute;
	top: 0.2em;
	left: 0;
	font-family: "jrth-icons" !important;
	font-weight: normal !important;
	line-height: 1;
	color: #03926F;
	speak: none;
}

.l-sidenav__nav > ul > li + li {
	margin-top: 20px;
}

.l-sidenav__bnr {
	margin-top: 40px;
	padding: 0 4%;
}

.l-sidenav__bnr > li + li {
	margin-top: 15px;
}

.l-sidenav--default {
	padding-top: 90px;
}

@media (min-width: 1000px) {
	.l-sidenav {
		width: 205px;
		margin-top: 0;
	}
	.l-sidenav__cattitle > a, .l-sidenav__cattitle > span {
		padding-left: 10px;
		padding-right: 10px;
	}
	.l-sidenav__sectitile > a, .l-sidenav__sectitile > span {
		padding-left: 10px;
		padding-right: 10px;
	}
	.l-sidenav__sectitile > a {
		text-align: left;
	}
	.l-sidenav__nav > ul {
		padding-left: 10px;
		padding-right: 10px;
	}
	.l-sidenav__nav > ul > li > a {
		transition: opacity 0.2s linear, color 0.2s linear;
	}
	.l-sidenav__nav > ul > li > a:hover {
		opacity: 0.6;
		color: #03926F;
	}
	.l-sidenav__bnr {
		padding: 0;
	}
}

/*----------
	main footer
----------*/
.l-mainfooter {
	width: 100%;
	margin-top: 40px;
	background-color: #f3f3f3;
}

.l-mainfooter__inner {
	margin: 0 auto;
	padding: 40px 4% 25px;
	position: relative;
}

.l-mainfooter__backhead {
	width: 40px;
	height: 40px;
	position: fixed;
	bottom: 15px;
	right: 15px;
	z-index: 2;
}

.l-mainfooter__backhead > a {
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	background-color: #222;
	opacity: 0.8;
	text-align: center;
	transition: all 0.2s linear;
}

.l-mainfooter__backhead > a::after {
	content: "\e913";
	display: inline-block;
	width: 20px;
	height: 20px;
	font-family: 'jrth-icons';
	font-weight: normal;
	font-size: 20px;
	line-height: 36px;
	color: #fff;
	speak: none;
}

.l-mainfooter__backhead > a.hide {
	visibility: hidden;
	opacity: 0;
	pointer-events: none;
}

.l-mainfooter__logo {
	width: 200px;
}

.l-mainfooter__info {
	margin-top: 15px;
	font-size: 1.3rem;
	line-height: 1.5;
}

.l-mainfooter__info__tel {
	font-size: 2.6rem;
}

.l-mainfooter__info__tel > span {
	font-size: 1.4rem;
}

.l-mainfooter__info__address {
	margin-top: 10px;
}

.l-mainfooter__utils {
	margin-top: 15px;
}

.l-mainfooter__utils > ul {
	line-height: 1.2;
}

.l-mainfooter__utils > ul > li {
	display: inline-block;
	margin-right: 5px;
}

.l-mainfooter__utils > ul > li + li::before {
	content: '|';
	display: inline-block;
	margin-right: 5px;
	font-size: 1.2rem;
}

.l-mainfooter__utils > ul > li:last-child {
	margin-right: 0;
}

.l-mainfooter__utils > ul > li > a {
	font-size: 1.2rem;
	color: #222;
}

.l-mainfooter__sns {
	text-align: center;
	margin-bottom: 15px;
	}

.icon-instagram { 
	width: 29px;
    height: 29px;
}

.icon-instagram::before {
	box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0;
    vertical-align: top;
    content: "";
    display: inline-block;
    background: url(/hospital/static/images/icon-instagram.svg) no-repeat;
    background-size: contain;
    width: 29px;
    height: 29px;
}

.c-icontext--instagram {
	font-size: 1.5rem !important;
    line-height: 2.7 !important;
    display: inline-block !important;
    padding-left: 43px !important;
	margin-top: 20px !important;
    position: relative !important;
	top:0 !important;
}

@media (max-width: 999px) {
	.l-mainfooter__sns {
		text-align: left !important;
		margin-bottom: 15px;
	}
}

.l-mainfooter__copyright {
	margin-top: 20px;
	text-align: center;
	font-size: 1rem;
	color: #666;
}

@media (min-width: 1000px) {
	.l-mainfooter {
		margin-top: 50px;
	}
	.l-mainfooter__inner {
		padding: 70px 0 40px;
		width: 960px;
		margin: 0 auto;
	}
	.l-mainfooter__backhead {
		width: 50px;
		height: 50px;
		bottom: 60px;
		right: 60px;
		z-index: 2;
	}
	.l-mainfooter__backhead > a::after {
		width: 25px;
		height: 25px;
		font-size: 25px;
		line-height: 45px;
	}
	.l-mainfooter__logo {
		width: 250px;
		position: absolute;
		top: 124px;
		left: 100px;
	}
	.l-mainfooter__info {
		width: 500px;
		margin: 0 0 0 auto;
		font-size: 1.6rem;
		line-height: 1.8;
	}
	.l-mainfooter__info__tel {
		font-size: 2.8rem;
	}
	.l-mainfooter__info__address {
		margin-top: 10px;
	}
	.l-mainfooter__info__list > li {
		display: inline-block;
		margin-right: 25px;
	}
	.l-mainfooter__utils {
		margin-top: 60px;
	}
	.l-mainfooter__utils > ul {
		text-align: center;
	}
}

/* content fotter */
.l-contentfooter {
	width: 100%;
	margin-top: 80px;
}

.l-contentfooter__inner {
	padding: 0 4%;
}

@media (min-width: 1000px) {
	.l-contentfooter {
		margin-top: 90px;
	}
	.l-contentfooter__inner {
		padding: 0;
		width: 960px;
		margin: 0 auto;
	}
}

/*--------------------
	Utility
---------------------*/
/* display */
.u-hide {
	display: none;
}

@media (min-width: 1000px) {
	.u-pc-hide {
		display: none;
	}
}

@media (max-width: 999px) {
	.u-sp-hide {
		display: none;
	}
}

.u-disabled {
	pointer-events: none !important;
	cursor: default !important;
}

/* margin */
.u-mt-none {
	margin-top: 0 !important;
}
.u-mt-ss {
	margin-top: 5px !important;
}
.u-mt-s {
	margin-top: 10px !important;
}
.u-mt-m {
	margin-top: 20px !important;
}
.u-mt-l {
	margin-top: 40px !important;
}
.u-mt-l2 {
	margin-top: 40px !important;
}

.u-mb-ss {
	margin-bottom: 5px !important;
}
.u-mb-s {
	margin-bottom: 10px !important;
}
.u-mb-m {
	margin-bottom: 20px !important;
}
.u-mb-l {
	margin-bottom: 40px !important;
}
.u-mb-l2 {
	margin-bottom: 40px !important;
}

/* padding */
.u-pl-m {
	padding-left: 15px !important;
}
.u-pr-m {
	padding-right: 15px !important;
}

@media (min-width: 1000px) {
    .u-mt-ss {
	    margin-top: 8px !important;
    }
	.u-mt-s {
		margin-top: 15px !important;
	}
	.u-mt-m {
		margin-top: 30px !important;
	}
	.u-mt-l {
		margin-top: 50px !important;
	}
	.u-mt-l2 {
		margin-top: 90px !important;
	}
    
	.u-mb-ss {
		margin-bottom: 8px !important;
	}	
    .u-mb-s {
		margin-bottom: 15px !important;
	}
	.u-mb-m {
		margin-bottom: 30px !important;
	}
	.u-mb-l {
		margin-bottom: 50px !important;
	}
	.u-mb-l2 {
		margin-bottom: 90px !important;
	}
}

/* text */
@media (max-width: 999px) {
	.u-pcbr {
		display: none;
	}
}

@media (min-width: 1000px) {
	.u-spbr {
		display: none;
	}
}

.u-txt-bold {
	font-weight: bold !important;
}

.u-txt-key {
	color: #03926F !important;
}

.u-txt-caution {
	color: #C3001C !important;
}

.u-txt-center {
	text-align: center !important;
}

.u-txt-right {
	text-align: right !important;
}

.u-txt-em {
	font-weight: bold;
}

/* width */
.u-wid-100{
	width: 100%;
}

/* 文中リンク */
.c-text a,
.u-txt-link {
	color: #03926F;
}

@media (min-width: 1000px) {
	.c-text a,
	.u-txt-link {
		opacity: 1;
		transition: opacity 0.2s linear;
	}
	.c-text a:hover,
	.u-txt-link:hover {
		opacity: 0.6;
	}
}

.wb_b {
	word-break: break-all;
}

/* 図表２カラム用 */
.c-image-2column {
	display: flex;
}
@media (max-width: 999px) {
	.c-image-2column {
		display: block;
	}
}

/* h1をh2で使用時の調整 */
h2.c-heading-prim {
	margin-top: 100px;
	margin-bottom: 0;
}
.l-maincontent > h2.c-heading-prim + .l-section {
	margin-top: 0px;
}


/* polyfills for IE11 */
_:-ms-lang(x)::-ms-backdrop, body {
	font-family: "メイリオ", Meiryo, sans-serif;
}

_:-ms-lang(x)::-ms-backdrop, .c-image__image > img {
	font-family: 'object-fit: cover; object-position: center;';
}


/* 重要なお知らせ枠*/
.notices-inner {
	border: 4px solid #e35166;
	background-color: #FFF5F6;
	padding: 2%;
}

/* 重要なお知らせicon */
ul.notices-inner li {
	display: flex;
	margin-top: 15px;
}

ul.notices-inner li:first-child {
	margin-top: 0;
}

ul.notices-inner li::before {
	content: "";
	width: 1.8em;
	height: 1.8em;
	background: url(/hospital/static/images/icon-caution.svg) 0 0 no-repeat;
	background-size: contain;
	margin-right:1em
}

ul.notices-inner li > div {
	width: calc(100% - 2.8em);
    margin-top: 0.2em;
}

ul.notices-inner li.c-news > a [class*="icon-"] {
	line-height:1.8;
}


/* Youtube動画埋め込み枠 */
.youtube_inner {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtube_inner iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}


@media (min-width: 1000px) {
    
.youtubeBox-title,
.youtube,
.youtubeBox .c-textbox{margin-left:12px;}

.youtube_inner {width:690px; height:388px !important;}
	
.column--2up .youtube_inner {width:329px !important; height:185px !important;}

}



.indent00 {
	text-indent: 0em !important;
	padding-left: 0em !important;
}

.indent01 {
	text-indent: -1em !important;
	padding-left: 1em !important;
}

.indent02 {
	text-indent: -2em !important;
	padding-left: 2em !important;
}

.textIndent {
	text-indent: 1em !important;
}

/* フローティングリンク */
#fixedBnr{
	position: fixed;
    top: 190px;
	left: 0;
	z-index: 80;
    display: none;
}

#fixedBnr.active{
	display: block;
}

#fixedBnr .fixedBnr_link{
	display: block;
    z-index: 4000;
    padding: 20px;
	background-color: #e35166e3;
	text-decoration: none;
	transition: opacity 0.2s linear, color 0.2s linear;
}

#fixedBnr .fixedBnr_link:hover{
	opacity: 0.8;
	text-decoration: none;
}

#fixedBnr .fixedBnr_link .fixedBnr_detail{
	color: #ffffff;
}

#fixedBnr .fixedBnr_link .fixedBnr_detail .fixedBnr_detailTitle{
	font-weight: bold;
	font-size: 2rem;
}

#fixedBnr .fixedBnr_link .fixedBnr_detail .fixedBnr_detailText{
	font-weight: bold;
}

#fixedBnr .fixedBnr_close{
	display: block;
	position: absolute;
	top: 12px;
	right: 12px;
	width: 28px;
	height: 28px;
	background-color: #ffffff;
	cursor: pointer;
	transition: transform .3s ease;
}

#fixedBnr .fixedBnr_close:hover{
	transform: scale(1.2);
}

#fixedBnr .fixedBnr_close::before,
#fixedBnr .fixedBnr_close::after{
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	width: 2px;
	height: 20px;
	background-color: #e66376;
}

#fixedBnr .fixedBnr_close::before{
	transform: translate(-50%,-50%) rotate(45deg);
}

#fixedBnr .fixedBnr_close::after{
	transform: translate(-50%,-50%) rotate(-45deg);
}

@media (max-width: 999px) {
	#fixedBnr{
		top: auto;
		bottom: 30px;
	}

	#fixedBnr .fixedBnr_link{
		padding: 18px 14px;
	}

	#fixedBnr .fixedBnr_link .fixedBnr_detail .fixedBnr_detailTitle{
		margin-bottom: 6px;
	}

	#fixedBnr .fixedBnr_link .fixedBnr_detail .fixedBnr_detailText{
		line-height: 1.5;
	}

	#fixedBnr .fixedBnr_close{
		top: -16px;
		right: -16px;
		width: 36px;
		height: 36px;
		border-radius: 50%;
		border: 2px solid #e66477;
	}
}

@media screen and (min-width: 651px) and (max-width: 999px){
	#fixedBnr .fixedBnr_link .fixedBnr_detail .fixedBnr_detailTitle{
		font-size: 3.2vw;
	}

	#fixedBnr .fixedBnr_link .fixedBnr_detail .fixedBnr_detailText{
		font-size: 2.2vw;
	}

	#fixedBnr .fixedBnr_close{
		top: -2vw;
		right: -2vw;
		width: 5vw;
		height: 5vw;
	}

	#fixedBnr .fixedBnr_close::before,
	#fixedBnr .fixedBnr_close::after{
		height: 2vw;
	}
}

@media (max-width: 650px) {
	#fixedBnr .fixedBnr_link .fixedBnr_detail .fixedBnr_detailTitle{
		font-size: 1.8rem;
	}

	#fixedBnr .fixedBnr_link .fixedBnr_detail .fixedBnr_detailText{
		font-size: 1.4rem;
	}

	#fixedBnr .fixedBnr_close::before,
	#fixedBnr .fixedBnr_close::after{
		height: 15px;
	}
}



/*gridレイアウトテスト用*/

@media (min-width: 1000px){
	.c-media-grid {
		display: grid;
		grid-template-columns: 32% auto;
		grid-template-rows:25% 25% auto;
	}

	.c-media-grid .c-title-grid {
		grid-column: 2/4;
		grid-row   : 1/2;
		order:2;
	}

	.c-media-grid .c-media-grid__image {
		grid-column: 1/2;
		grid-row   : 1/4;
		order:1;
	}

	.c-media-grid .c-media-grid__image .c-image__image{
		width: 50%;
		border: solid 1px #ccc;
	}

	.c-media-grid .c-media-grid__content {
		grid-column: 2/4;
		grid-row   : 2/3;
		order:3;
		text-align: left;
	}

	.c-media-grid .c-media-grid__content .c-button{
		margin-left: 0;
	}
}
@media (max-width: 999px){
	.c-media-grid .c-title-grid {
		margin-left: auto;
		margin-right: auto;
	}

	.c-media-grid__image {
		margin-bottom: 30px;
	}

	.c-media-grid__image .c-image__image{
		width: 50%;
		max-width: 300px;
		border: solid 1px #ccc;
		margin-left: auto;
		margin-right: auto;
	}

	.c-media-grid .c-media-grid__content .c-button{
		width: auto;
		margin-left: 0;
	}
}

