@charset "UTF-8";

.m_img_area::before {
	background-image: url("../images/ct/m_img@2x.jpg");
	background-position: center center !important;
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
}



/*box1
---------------------------------------------------------*/
.box1 {
	padding-top: 40px;
}
.box1 .lead_box dt {
	font-size: 220%;
	font-size: min(220%,3.0vw);
	letter-spacing: .2em;
	line-height: 1.6em;
	margin-bottom: 1.0em;
}

.box1 .bg {
	background: #7b7d86;
	position: relative;
}
.box1 .bg::before {
	content: "";
	position: absolute;
	z-index: 0;
	width: 100%;
	height: 18vw;
	max-height: 270px;
	background: #fff;
	left: 0;
	top: -1px;
}
.box1 .bg .w1340 {
	position: relative;
	z-index: 1;
}
.box1 .bg .large_img {
	color: #fff;
	position: relative;
	margin-bottom: 140px;
}
.box1 .bg .large_img .abs1 {
	position: absolute;
	font-size: 656%;
	font-size: min(656%,7.0vw);
	letter-spacing: .25em;
	line-height: 1.0em;
	left: 4.5%;
	bottom: 0;
	transform: translateY(25%);
}
.box1 .bg .large_img .abs2 {
	position: absolute;
	text-align: center;
	font-size: 140%;
	font-size: min(140%,1.7vw);
	letter-spacing: .2em;
	line-height: 1.4em;
	right: 4.5%;
	bottom: 0;
	transform: translateY(35%);
	display: flex;
    align-items: center;
}
.box1 .bg .large_img .abs2 span {
	display: block;
	font-size: 70%;
	letter-spacing: .2em;
	line-height: 1.4em;
}
.box1 .bg .large_img .abs2 li {
	margin-left: .3em;
	width: 7.7em;
	border: solid 1px #fff;
	border-radius: 50%;
	aspect-ratio: 1 / 1;
	position: relative;
}
.box1 .bg .large_img .abs2 li p {
	position: absolute;
	margin: auto;
	left: 0;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}

.box1 .bg .flt_box {
	width: 100%;
	max-width: 1100px;
	margin-left: auto;
	margin-right: auto;
	color: #fff;
}

.box1 .bg .item_list {
	width: 100%;
	max-width: 1220px;
	margin-left: auto;
	margin-right: auto;
}
.box1 .bg .item_list li {
	background: #fff;
	border-radius: 10px;
	overflow: hidden;
}
.box1 .bg .item_list dl {
	padding: 30px 10% 40px;
}
.box1 .bg .item_list dt {
	text-align: center;
	color: #6f718c;
	font-size: 155%;
	font-size: min(155%,2.4vw);
	letter-spacing: .2em;
	line-height: 1.4em;
	margin-bottom: .5em;
}

.box1 .bg .med_check {
	margin-top: 130px;
}
.box1 .bg .med_check::before {
	background: #fff;
}
.box1 .bg .med_check::after {
	content: "";
	position: absolute;
	width: 100%;
	height: 5.0vw;
	max-height: 60px;
	left: 0;
	top: 100%;
	background: url("../images/ct/shadow@2x.png") no-repeat center top;
	background-size: 100% 100%;
}
.box1 .bg .med_check .chk_list {
	max-width: 100%;
	display: block;
}
.box1 .bg .med_check .chk_list li {
	width: 100%;
	margin-right: 0;
}
.box1 .bg .med_check .chk_list li:nth-of-type(n+1) {
	margin-top: 1.4em;
}

/* PC,Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) {
.box1 .lead_box {
	text-align: center;
}
	
.box1 .bg .flt_box .img_l {
	float: left;
	width: 44%;
	max-width: 480px;
}
.box1 .bg .flt_box .txt_r {
	float: right;
	width: 52%;
	max-width: 550px;
}
.box1 .bg .item_list {
	display: flex;
    justify-content: space-between;
}
.box1 .bg .item_list li {
	width: 32.5%;
	max-width: 390px;
}
.box1 .bg .med_check .chk_list {
	max-width: 680px;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.box1 {
	padding-top: 2%;
}
.box1 .lead_box dt {
	font-size: 3.4vw;
	letter-spacing: .1em;
}
.box1 .bg .large_img {
	margin-bottom: 12%;
}
.box1 .bg .large_img .abs1 {
	font-size: 8.0vw;
	letter-spacing: .1em;
	left: 3%;
}
.box1 .bg .large_img .abs2 {
	font-size: 2.0vw;
	letter-spacing: .1em;
	right: -.5em;
}
.box1 .bg .large_img .abs2 span {
	letter-spacing: .1em;
}
.box1 .bg .large_img .abs2 li {
	width: 7.2em;
}
.box1 .bg .item_list dl {
	padding: 8% 10% 10%;
}
.box1 .bg .item_list dt {
	font-size: 2.3vw;
	letter-spacing: .15em;
	margin-bottom: .2em;
}
.box1 .bg .item_list dd {
	font-size: 95%;
	letter-spacing: .1em;
	line-height: 1.8em;
}
.box1 .bg .med_check {
	margin-top: 12%;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.box1 {
	padding-top: 2%;
}
.box1 .lead_box dt {
	font-size: 135%;
	letter-spacing: .1em;
	line-height: 1.6em;
	margin-bottom: 1.0em;
}

.box1 .bg .large_img {
	width: 112%;
	margin-left: -6%;
	margin-bottom: 6%;
}
.box1 .bg .large_img .sp_layout {
	position: relative;
}
.box1 .bg .large_img .abs1 {
	margin: auto;
	left: 0;
	right: 0;
	text-align: center;
	font-size: 250%;
	letter-spacing: .1em;
}
.box1 .bg .large_img .abs2 {
	margin-top: 7%;
	position: static;
	font-size: 120%;
	letter-spacing: .1em;
	transform: none;
    justify-content: center;
    flex-wrap: wrap;
}
.box1 .bg .large_img .abs2 span {
	letter-spacing: .1em;
}
.box1 .bg .large_img .abs2 li {
	margin: .2em;
	width: 7.0em;
}

.box1 .bg .flt_box .img_l {
	margin-bottom: 1.0em;
}

.box1 .bg .item_list li {
	margin-bottom: 6%;
	font-size: 90%;
	line-height: 1.6em;
}
.box1 .bg .item_list li:last-child {
	margin-bottom: 0;
}
.box1 .bg .item_list dl {
	padding: 4% 6% 6%;
}
.box1 .bg .item_list dt {
	font-size: 130%;
	letter-spacing: .1em;
	margin-bottom: .3em;
}

.box1 .bg .med_check {
	margin-top: 18%;
}
.box1 .bg .med_check::after {
	height: 8.0vw;
}
.box1 .bg .med_check .chk_list li:nth-of-type(n+1) {
	margin-top: .8em;
}
}



/*検査時の注意点
---------------------------------------------------------*/
#attention .tel_txt dt {
	text-align: center;
	margin-bottom: 1.2em;
}

/* PC,Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) {

}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {

}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#attention .tel_txt dt {
	margin-bottom: .5em;
}
}



/*CT検査のご予約方法
---------------------------------------------------------*/
#howto .bg_blue {
	padding-top: 130px;
	padding-bottom: 140px;
}
#howto .com_index3 {
	color: #fff;
	margin-bottom: 90px;
}
#howto .icon_list > li {
	background: #fff;
	padding: 0 6% 40px;
}
#howto .icon_list .com_style1 > dt {
	text-align: center;
	padding-top: 3.5em;
	position: relative;
}
#howto .icon_list .com_style1 > dt::before {
	content: "";
	position: absolute;
	width: 100%;
	height: 4.0em;
	left: 0;
	top: -1.0em;
	background: url("../images/ct/icon1@2x.png") no-repeat center top;
	background-size: contain;
}
#howto .icon_list .icon2 .com_style1 > dt::before {background-image: url("../images/ct/icon2@2x.png");}

#howto .com_simple_flow {color: #fff;}
#howto .com_simple_flow .smp_flow_index {border-color: #fff;}
#howto .com_simple_flow .smp_flow_list > li::before,
#howto .com_simple_flow .smp_flow_list > li::after {
	border-color: #fff;
}
#howto .com_simple_flow .smp_flow_style > dt::before {
	color: #35a1d2;
	background: #fff;
}

/* PC,Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) {
#howto .icon_list {
	width: 100%;
	max-width: 985px;
	margin-left: auto;
	margin-right: auto;
	display: flex;
    justify-content: space-between;
}
#howto .icon_list > li {
	width: 48.5%;
	max-width: 470px;
	box-sizing: border-box;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
#howto .bg_blue {
	padding-top: 10%;
	padding-bottom: 10%;
}
#howto .com_index3 {
	margin-bottom: 8%;
}
#howto .icon_list > li {
	padding: 0 4% 3%;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#howto .bg_blue {
	padding-top: 12%;
	padding-bottom: 12%;
}
#howto .com_index3 {
	margin-bottom: 14%;
}
#howto .icon_list > li {
	padding: 0 6% 6%;
	margin-bottom: 10%;
}
}



/*CT検査ご予約フォーム
---------------------------------------------------------*/
#reservation .bg_lblue {
	padding-top: 130px;
	padding-bottom: 140px;
}
#reservation .com_index3 {
	margin-bottom: 60px;
}
#reservation .com_index3 .index_deco {
	color: #b2e4fc;
}

.com_form .open_trigger {
	color: #35a1d2;
	text-decoration: underline;
}
.com_form .open_trigger span::before {
	background-image: url("../../../images/icon_open2.svg");
}
.com_form .open_trigger.active span::before {
	background-image: url("../../../images/icon_close2.svg");
}
.com_form .mobile_attention li::before {
	border-color: #666;
}
.com_form .privacy {
	border-color: #35a1d2;
}
#checkBtn + label::before {
	border: solid 1px #bebfb7;
}

/* PC,Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) {
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
#reservation .bg_lblue {
	padding-top: 10%;
	padding-bottom: 10%;
}
#reservation .com_index3 {
	margin-bottom: 5%;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#reservation .bg_lblue {
	padding-top: 12%;
	padding-bottom: 12%;
}
#reservation .com_index3 {
	margin-bottom: 8%;
}
}



/*
---------------------------------------------------------*/

/* PC,Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) {

}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {

}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {

}