@charset "UTF-8";
/* index.css */


/* ========= MV ========= */
#mv_wrap {
	position: relative;
}
#mv_wrap > div {
	position: relative;
	z-index: 1;
}
.mvGIF {
	position: absolute;
	top:  0;
	left: 0;
	margin-top: 80px;
	pointer-events: none;
	z-index: 0;
}
/* キャッチコピーテキスト */
#mv_copy {
	position: absolute !important;
	margin-top:   5.128vw;
	margin-left: 13.919vw;
	z-index:  5 !important;
}
.mv_text {
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	justify-content: center;
}
.mv_text.textTop {
	margin-bottom: 3.2vw;
}
.mv_text span    {
	display: inline-block;
}
.mv_text span:not(:first-of-type) {
	margin-left: 1.465vw;
}
.mv_text .has_underline {
	position: relative;
}
.mv_text .has_underline .text_line {
	position: absolute;
	top:  0;
	left: 0;
}
.mv_text img  {
	width: auto;
	height: 3.297vw;
}
/* キャッチコピー 下線の動き */


/* 採用情報ボタン */
#mv_wrap .mvPC_btn {
	width: 28.571vw;
	position: absolute;
	left:   0;
	bottom: 0;
	margin-left:   5.495vw;
	margin-bottom: 5.495vw;
}

/* ===== メッセージ ===== */
#sec_message .left_cont  {
	width: 51.05%;
	max-width: 635px;
	margin-right: min(8%,100px);
}
#sec_message .right_cont {
	width: 43.86%;
	max-width: 505px;
	align-self: center;
}
#sec_message h2 {
	font-size: 38px;
	font-size: clamp(24px,2.776vw,38px);
	line-height: 1.8em;
	margin-bottom: 40px;
}
#sec_message p {
	font-size: clamp(12px,1.25vw,16px);
}

/* === サービス緑(訪問診療でサポート) === */
.white_box {
	padding: 70px min(6vw,60px);
	border-radius: 20px;
	background-color: #fff;
}
.white_box > * {
	max-width: 930px;
	margin: auto;
}
#sec_service-doctor .card,
#sec_service-dental .card {
	width: 100%;
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	justify-content: space-between;
}
#sec_service-doctor .left_cont,
#sec_service-dental .left_cont {
	width: auto;
	margin-right: 40px;
}
#sec_service-doctor .right_cont,
#sec_service-dental .right_cont {
	width:  auto;
	height: 13.187vw;
	max-height: 160px;
	min-height: 140px;
	align-self: center;
}
#sec_service-dental .right_cont {
	height: 140px;
}

#sec_service-doctor .right_cont img,
#sec_service-dental .right_cont img {
	width:  100%;
	height: 100%;
	min-width:  210px;
	min-height: 140px;
	object-fit: contain;
}
/* 訪問診療でできること(緑ボックス) */
.bg_box {
	border-radius: 20px;
	padding: 10px;
	padding: clamp(10px,.95vw,13px);
}
.bg_box h4 {
	min-width: 180px;
	font-weight: 500;
	letter-spacing: .1em;
	align-self: center;
	color: #fff;
}
.bg_box .in_white {
	width: 100%;
	padding: 10px 15px;
	border-radius: 10px;
	background-color: #fff;
}
.green_box,
.yellow_box {
	background-color: #6FB065;
}
.yellow_box {
	background-color: #fce25d;
}
.green_box h4,
.yellow_box h4 {
	width: calc( 100% - clamp(540px,70%,620px) );
	text-align: center;
}
.yellow_box h4 {
	color: #3f362f;
}

.green_box .in_white,
.yellow_box .in_white {
	width: 70%;
	max-width: 620px;
	min-width: 540px;
}
.green_box .in_white li,
.yellow_box .in_white li {
	font-size: 18px;
	font-size: clamp(16px,1.319vw,18px);
	display: inline-block;
	line-height: 1.8em;
	color: #3E3A39;
	margin-right: .75em;
}
.green_box .in_white li:last-of-type,
.yellow_box .in_white li:last-of-type {
	margin-right: 0;
}

/* 院内掲示ページへのリンク */
.notice_link {
	width: 100%;
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: flex-start;
}
h3.left_icon_square {
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	justify-content: flex-start;
	line-height: 1;
	margin-right: 2em;
	margin-bottom: 0;
}
h3.left_icon_square:before {
	content: "";
	width: .35em;
	height: 1em;
	font-size: 1em;
	display: block;
	margin-right: .5em;
	background-color: #f5ac3c;
	transform: translateY(.05em);
}
.notice_link a {
	line-height: 1.3;
	text-decoration: underline !important;
}

/* 施設基準届出項目等 */
.mini_cont h3 {
	margin-bottom: 1.5em;
}
.mini_cont h4,
.mini_cont h4 small {
	color: #3e3a39;
}
.mini_cont h4 {
	width: 100%;
	font-size: 18px;
	font-weight: 500;
	margin-bottom: 1em;
	padding-bottom: .75em;
	border-bottom: 1px solid #e6e6e6;
}
.mini_cont h4 small {
	font-size: 14px;
}
.dl_flex {
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	justify-content: flex-start;
}
.dl_flex + .dl_flex {
	margin-top: .35em;
}
.dl_flex dt,
.dl_flex dd {
	width: auto;
	font-size: 1em;
	line-height: 1.6;
}
.dl_flex dt {
	min-width: fit-content;
}










/* === サービス青(通院サポート) === */
#sec_service-hospital h2 {
	letter-spacing: 0;
}
#sec_service-hospital h2 + p {
	letter-spacing: .01em;
}
.blue_box {
	background-color: #9ED8F5;
}
.blue_box .Warrow {
	width: fit-content;
	height: .875em;
	display: inline-flex;
	transform: translateY(.1em);
}
.blue_box .Warrow img {
	width:  100%;
	height: 100%;
	object-fit: contain;
}
.blue_box .in_white {
	padding: 15px;
}
.blue_box .note {
	font-size: 13px;
}
.blue_box dl div {
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	justify-content: flex-start;
}
.blue_box dl div:not(:first-of-type){
	margin-top:  12px;
	padding-top: 12px;
	border-top: 2px dotted #3E3A39;
}
.blue_box dt,
.blue_box dd,
.blue_box dd a {
	font-size: 18px;
	font-size: clamp(16px,1.319vw,18px);
	line-height: 1.4em;
}
.blue_box dt {
	width: fit-content;
	min-width: 5.2em;
	text-align: center;
	margin-right: .5em;
	padding: .05em .5em .15em;
	color: #fff;
	border-radius: 3px;
	background-color: #3E3A39;
}
.note_wrap {
	width: fit-content;
	display: block;
	margin-left:  auto;
	margin-right: auto;
}
.note {
	display: inline-flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	justify-content: flex-start;
	line-height: 1.5;
}
.note + .note {
	margin-top: .5em;
}


/* ===== ご利用の流れ ===== */
#sec_flow .flex_box {
	justify-content: center;
}
#sec_flow .card_parent {
	width: auto;
	max-width: 397px;
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: flex-start;
}
#sec_flow .card {
	width: 25.348vw;
	max-width: 346px;
	min-width: 205px;
	border: 2px solid #E6E6E6;
	border-radius: 20px;
	background-color: #fff;
}
#sec_flow .card h4 {
	font-size: clamp(15px,1.319vw,18px);
	font-weight: 500;
	padding-top:    25px;
	padding-bottom: 20px;
}
.sankaku_wrap {
	width:  1.1vw;
	max-width: 15px;
	min-width: 10px;
	height: auto;
	margin-left:  min(1.1vw,20px);
	margin-right: min(1.1vw,20px);
}

/* ===== よくあるご質問 ===== */
.dl_faq div {
	background-image: linear-gradient(to right, #000 2px, transparent 2px);
	background-size: 9px 2px;
	background-repeat: repeat-x;
	background-position: left bottom;
	padding-bottom: 30px;
}
.dl_faq div:not(:first-of-type) {
	padding-top: 30px;
}
.dl_faq div:last-of-type {
	background-image: none;
	padding-bottom: 0;
}
.dl_faq dt,
.dl_faq dd,
.dl_faq dd p {
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	justify-content: flex-start;
	line-height: 1.7em;
	font-feature-settings: "palt";
}
.dl_faq dt {
	margin-bottom: 10px;
	color: #007ab4;
}
.dl_faq dt:before,
.dl_faq dd:before {
	content: "";
	width:  2em;
	height: 1.1em;
	min-width: 2em;
	display: inline-block;
	margin-right: .25em;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: left bottom;
	transform: translateY(.35em);
}
.dl_faq dt:before {
	background-image: url(../../img/index/q_text.svg);
}
.dl_faq dd:before {
	background-image: url(../../img/index/a_text.svg);
}

/* ===== お問い合わせ ===== */


/* ===== バナー2種類 ===== */
.banner_wrap {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: center;
}
.banner_wrap .img_banner {
	width: calc(100%/2 - 40px/2);
}


/* ===== 歯科診療サービス ===== */
.yellow_box_notflex {
	background-color: #fce25d;
}
.yellow_box_notflex h4 {
	text-align: center;
	margin-bottom: 1em;
	color: #3f362f;
}
.yellow_box_notflex .in_white {
	padding: 30px;
}
.yellow_box_notflex table {
	width: 100%;
}
.yellow_box_notflex th,
.yellow_box_notflex td {
	font-size: 18px;
	font-size: clamp(14px,1.8vw,18px);
	line-height: 1.2;
	text-align: center;
	padding: .85em .25em;
}
.yellow_box_notflex th {
	font-weight: normal;
	font-family: dnp-shuei-mgothic-std, zen-kaku-gothic-new, sans-serif !important;
	letter-spacing: .1em;
	text-align: center;
	color: #fff;
	background-color: #e59246;
	border-top: 1px solid #fff;
}
.yellow_box_notflex th:not(:first-of-type) {
	border-left: 1px solid #fff;
}
.yellow_box_notflex th:first-of-type {
	width: 12.5em;
}
.yellow_box_notflex td {
	border: 1px solid #e59246;
}
/* 注釈 */
.yellow_box_notflex .note {
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	justify-content: flex-start;
}









@media screen and (max-width:1130px) {
	#sec_service-doctor br.tab_none,
	#sec_service-dental br.tab_none {
		display: none !important;
	}
}


@media screen and (max-width:970px) {
	.green_box h4,
	.yellor_box h4 {
		width: 200px;
		min-width: 200px;
	}
	.green_box .in_white,
	.yellow_box .in_white {
		min-width: inherit;
	}
} 


@media screen and (max-width:768px) {
	/* --- maxWidth --- */
	.SP_alignL {
		text-align: justify !important;
	}
	.contact_box h3 + p {
		letter-spacing: .12em;
	}
	form#mail_form {
		max-width: 500px !important;
	}

	/* ========= MV ========= */
	#mv_wrap {
		overflow-x: hidden;
	}
	#mv_wrap .sp_blk {
		display: flex !important;
		justify-content: center;
	}
	#mv_wrap .mvSP_btn {
		width: 89.333vw;
		position: absolute;
		bottom: 0;
		margin-bottom: 10.667vw;
	}
	/* キャッチコピーテキスト */
	#mv_copy {
		width: 100%;
		bottom: 0;
		margin: auto;
		margin-bottom: 47vw;
	}
	.mv_text img {
		height: 8vw;
	}
	.mv_text span:not(:first-of-type) {
		margin-left: 3.8vw;
	}

	/* ===== メッセージ ===== */
	.left_cont,
	.right_cont {
		width: 100% !important;
	}
	.left_cont {
		margin-right: 0 !important;
	}
	#sec_message .left_cont  {
		margin-bottom: min(5.333vw,30px);
	}
	#sec_message .right_cont {
		max-width: 450px;
	}
	#sec_message h2 {
		font-size: 18px;
	}
	#sec_message p  {
		font-size: 16px;
		letter-spacing: .03em;
	}
	#sec_message .flex_box {
		justify-content: center;
	}

	/* === サービス(訪問診療でサポート) === */
	.white_box {
		padding: 40px 25px;
	}
	.white_box > * {
		max-width: 450px;
		margin-left:  auto;
		margin-right: auto;
	}
	#sec_service-doctor h2 {
		font-size: 17.5px;
		letter-spacing: .015em;
	}
	#sec_service-doctor .card,
	#sec_service-dental .card {
		flex-wrap: wrap;
	}
	#sec_service-doctor .h_Licon,
	#sec_service-dental .h_Licon {
		width: 100%;
		justify-content: center;
	}
	#sec_service-doctor .right_cont,
	#sec_service-dental .right_cont {
		width:  80% !important;
		height: auto;
		max-height: inherit;
		min-height: inherit;
		margin-left:  auto;
		margin-right: auto;
	}
	#sec_service-doctor .imgWidth_add,
	#sec_service-dental .imgWidth_add {
		width: 90% !important;
	}
	/* 訪問診療でできること(緑ボックス) */
	.green_box,
	.yellow_box {
		justify-content: center;
		padding: 10px;
		border-radius: 10px;
	}
	.green_box h4,
	.yellow_box h4 {
		width: 100%;
	}
	.bg_box h4 {
		margin-bottom: 10px;
	}
	.bg_box .in_white {
		width: 100%;
	}
	.green_box .in_white,
	.yellow_box .in_white {
		padding: 12px;
	}
	.green_box .in_white ul,
	.yellow_box .in_white ul {
		width: fit-content;
		margin-left:  auto;
		margin-right: auto;
	}
	.green_box .in_white li,
	.yellow_box .in_white li {
		width: auto;
		font-size: 16px;
		line-height: 1.5em;
		display: block;
		text-indent: -1.05em;
		padding-left: 1.05em;
		margin-top: 10px;
		margin-right: 0 !important;
	}
	.green_box .in_white li:first-of-type,
	.yellow_box .in_white li:first-of-type {
		margin-top: 0;
	}
	/* br解除 */
	@media screen and (min-width:480px) {
		.green_box .in_white li,
		.yellow_box .in_white li {
			width: 100%;
		}
		.green_box .in_white li br.tab_delete,
		.yellow_box .in_white li br.tab_delete {
			display: none !important;
		}
	}

	/* 院内掲示ページへのリンク */
	.notice_link {
		max-width: inherit;
		flex-wrap: wrap;
		flex-direction: column;
		align-items: flex-start;
		justify-content: flex-start;
	}
	.notice_link h3 {
		margin-right: 0;
		margin-bottom: .75em;
	}
	.notice_link a {
		margin-left: 1em;
	}


	/* === サービス青(通院サポート) === */
	#sec_service-hospital h2 + p {
		line-height: 1.8em;
		letter-spacing: -.015em;
	}
	/* 青ボックス */
	.bg_box {
		padding: 12px;
	}
	.blue_box dl div {
		text-align: center;
		flex-wrap: wrap;
		justify-content: center;
	}
	.blue_box dl div:not(:first-of-type) {
		margin-top:  15px;
		padding-top: 15px;
	}
	.blue_box dt {
		margin-right:  0;
		margin-bottom: 10px;
	}
	.blue_box dd {
		width: 100%;
	}
	.blue_box .note {
		font-size: 14px;
		display: inline-block;
		line-height: 1.3em !important;
		margin-top: 10px;
		color: #231815;
	}
	.blue_box + p.note {
		font-size: 14px;
		line-height: 1.9em !important;
	}

	/* ===== ご利用の流れ ===== */
	#sec_flow .flex_box {
		max-width: 450px;
		margin-left:  auto;
		margin-right: auto;
	}
	#sec_flow .card_parent {
		width: 100%;
		max-width: inherit;
		flex-wrap: wrap;
		justify-content: center;
	}
	#sec_flow .card {
		width: 100%;
		max-width: inherit;
		min-width: inherit;
	}
	#sec_flow .card h4 {
		font-size: 24px;
		letter-spacing: .05em;
		padding-top:    20px;
		padding-bottom: 10px;
	}
	.sankaku_wrap {
		width: 4vw;
		max-width:  40px;
		min-width:  20px;
		margin-top: 20px;
		margin-bottom: 20px;
		margin-left:  0;
		margin-right: 0;

	}
	/* 電話番号上のテキスト */
	#sec_flow .flex_box + p {
		line-height: 1.9em;
	}

	/* ===== よくあるご質問 ===== */
	.dl_faq div:not(:first-of-type) {
		padding-top: 30px;
	}
	.dl_faq div {
		padding-bottom: 30px;
	}
	.dl_faq dt:before,
	.dl_faq dd:before {
		width:     1.5em;
		height:    1em;
		min-width: 1.8em;
		transform: translateY(.4em);
	}
	.dl_faq dt,
	.dl_faq dd,
	.dl_faq dd p {
		letter-spacing: .05em;
		line-height: 1.5em;
	}

	/* ===== お問い合わせ ===== */

	/* ===== バナー2種類 ===== */
	.banner_wrap {
		flex-wrap: wrap;
	}
	.banner_wrap .img_banner {
		width: 100%;
	}


	/* ===== 歯科医師サービス ===== */
	#sec_service-dental .h2_small {
		font-size: 17.5px;
		letter-spacing: 0em;
	}
	/* -- テーブルが入っているbox -- */
	.yellow_box_notflex  {
		padding: 0;
		border-radius: 10px;
		border: 4px solid #fae05d;
		background-color: #fff;
	}
	.yellow_box_notflex  .in_white {
		padding: 20px 15px;
		border-radius: 0;
		background-color: transparent;
	}
	/* table */
	.yellow_box_notflex th,
	.yellow_box_notflex td {
		line-height: 1.1;
		padding-top:    .5em;
		padding-bottom: .5em;
		vertical-align: middle;
	}
	.yellow_box_notflex th:first-of-type {
		width: 8.5em;
	}


}