@charset "UTF-8";


/*---------------------------------------------------------
lead
---------------------------------------------------------*/
.med_lead_box hr {
    position: relative;
    width: 96vw;
    max-width: 1450px;
    height: 3px;
    background-color: #f2f2f2;
    border: none;
    left: 50%;
    translate: -50% 0;
    margin: 8.2% auto;
}
.med_lead_box .med_bdrbox {
    border-color: #ff778a;
}
.med_lead_box .med_bbl {
    background-color: #ff778a;
}
.med_lead_box .com_style1 {
    text-align: center;
}
.med_lead_box .com_style1 > dt.blue {
    font-size: min(2.2vw,125%);
}
.med_lead_box .com_txt2 {
    text-align: center;
}
/* PC,Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) {
.med_lead_box .med_mer_list {
    column-count: 2;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.med_lead_box hr {
    width: 90vw;
    margin-bottom: 10%;
}
.med_lead_box .com_style1 > dt.blue {
    font-size: 105%;
}
}


/*---------------------------------------------------------
course
---------------------------------------------------------*/
#course > div {
    background-color: #d8f2fd;
    padding-bottom: min(9.4vw,140px);
}
#course .cs_title {
    position: relative;
    background: url(../images/healthcheck/cs_bg@2x.png) no-repeat right top;
    background-size: 42% auto;
    background-color: #ecf8fe;
    padding: 90px 0 100px;
    box-shadow: 0 30px 30px rgba(0,0,0,0.1);
    margin-bottom: 2.5em;
}
#course .cs_title::before {
	position: absolute;
	content: "";
	background-color: inherit;
	clip-path: polygon(0 0, 50% 100%, 100% 0);
	width: 5.1em;
	height: 2.8em;
	left: 0;
	right: 0;
	top: calc(100% - 1px);
	margin: 0 auto;
}
#course .com_index2 {
    margin-bottom: 1em;
}
#course .com_index2 .deco {
    color: #3ebcf7;
}
#course .com_index2 + p {
    text-align: center;
    font-weight: bold;
}
#course small {
    display: block;
    text-align: right;
    color: #7f8087;
    font-size: 93%;
    font-weight: bold;
    margin-bottom: .8em;
}
/* attention */
#course .attention dt {
    position: relative;
    text-align: center;
	font-size: min(2.1vw, 143%);
    letter-spacing: .2em;
}
#course .attention dt::after {
    position: relative;
    display: block;
    content: "";
    background-color: #fff;
    width: 96vw;
    max-width: 1450px;
    height: 3px;
    left: 50%;
    translate: -50% 0;
    margin: 1em auto 2em;
}
#course .attention .maru_list {
    max-width: max-content;
    margin: 0 auto;
}
#course .attention .maru_list > li {
    margin-top: .4em;
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#course > div {
    padding-bottom: 15%;
}
#course .cs_title {
    background-size: 70% auto;
    padding: 12% 0 10%;
    box-shadow: 0 20px 20px rgba(0,0,0,0.1);
    margin-bottom: 2.5em;
}
#course .cs_title::before {
	width: 3.5em;
	height: 1.6em;
}
#course small {
    font-size: 80%;
}
/* attention */
#course .attention dt {
	font-size: 115%;
}
#course .attention dt::after {
    width: 90vw;
    margin: 1em auto 1.2em;
}
}
/*course:cs_list
---------------------------------------------------------*/
.cs_list > li {
	position: relative;
	background-color: #FFF;
	box-sizing: border-box;
	padding: 50px 8.8%;
	border-radius: 10px;
}
.cs_list .box_img {
	max-width: max-content;
}
.cs_list .box_img img {
	border-radius: 14.2%;
}
.cs_list > li.max .box_img img {
	border-radius: 8.2% / 13%;
}
.cs_list dl > dt {
    display: flex;
    justify-content: space-between;
	color: #0606cd;
	font-size: min(2vw,156%);
	font-weight: 700;
	letter-spacing: .14em;
	line-height: 1.5;
	padding-bottom: .8em;
	border-bottom: 1px solid currentColor;
	margin-bottom: 1em;
}
.cs_list .maru_list > li::before {
	color: #b9e7fc;
}
/* PC
------------------------------------------*/
@media only screen and (min-width: 960px) {
.cs_list > li.half dd {
	display: grid;
	justify-content: space-between;
	grid-template-columns: 40% 54%;
}
}
/* PC,Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) {
.cs_list {
	display: grid;
	justify-content: space-between;
	grid-template-columns: repeat(2,49%);
}
.cs_list > li:nth-of-type(n+3) {
	margin-top: 1.8em;
}

.cs_list > li.max {
	grid-column: 1 / 3;
}
.cs_list > li.max dl {
    position: relative;
    padding-left: 38%;
}
.cs_list > li.max .box_img {
	position: absolute;
    width: 34%;
    left: 0;
    top: 0;
}
.cs_list > li.max .maru_list {
	column-count: 2;
}
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.cs_list > li {
	padding: 40px 8%;
}
.cs_list > li.half .box_img {
	width: 50%;
    margin: 0 auto 5%;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.cs_list > li {
	padding: 8% 8% 9%;
}
.cs_list > li:nth-of-type(n+2) {
	margin-top: 3%;
}
.cs_list .box_img {
	width: 50%;
	margin: 0 auto 5%;
}
.cs_list dl > dt {
	font-size: 110%;
	letter-spacing: .1em;
	line-height: 1.5;
}

.cs_list > li.max .box_img {
	width: 80%;
}
}


/*---------------------------------------------------------
items
---------------------------------------------------------*/
#items .item_box {
	position: relative;
    color: #000;
	background-color: #FFF;
	box-sizing: border-box;
	padding: 50px 4.4%;
    margin-bottom: 10px;
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#items .item_box {
	padding: 8% 5%;
}
#items .scl_area {
    overflow: hidden;
	overflow-x: scroll;
}
#items .tbl_item {
	width: 180vw;
}
}
/*items:tbl_item
---------------------------------------------------------*/
.tbl_item {
	width: 100%;
	border-collapse: separate;
	border-spacing: 3px;
    font-size: min(1.4vw,100%);
	line-height: 1.8;
    margin-top: 1.5em;
}
.tbl_item th,
.tbl_item td {
	position: relative;
	text-align: center;
    background-color: #f8f9f8;
	box-sizing: border-box;
	padding: 1.2em;
}

.tbl_item th {
    font-size: 112%;
    letter-spacing: .2em;
    line-height: 1.3;
}

.tbl_item thead th {
    width: 12%;
	color: #FFF;
	background-color: #35a1d2;
	padding: .6em 1em;
}
.tbl_item thead th:nth-of-type(1) {width: 26%;}
.tbl_item thead th:nth-of-type(2) {width: 50%;}
.tbl_item thead th:nth-last-child(2) {	background-color: #3ebcf7;}
.tbl_item thead th:nth-last-child(1) {	background-color: #0606cd;}

.tbl_item tbody td:nth-last-child(3) {
	text-align: left;
}
.tbl_item tbody td:nth-last-child(-n+2) {
    color: #3ebcf7;
	background-color: #ecf8fe;
}
.tbl_item tbody td:nth-last-child(1) {
    color: #0606cd;
}
/* type2 */
.tbl_item.type2 thead th:nth-of-type(1) {width: 34%;}
.tbl_item.type2 thead th:nth-of-type(2) {width: 42%;}
.tbl_item.type2 tbody th:nth-last-child(5) {
    width: 18%;
    vertical-align: top;
    color: #0606cd;
    background-color: #eaeaea;
    padding-top: 2em;
}
.tbl_item.type2 tbody th:nth-of-type(2) {width: 16%;}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.tbl_item {
	font-size: 80%;
	letter-spacing: .1em;
    margin-top: .2em;
}
.tbl_item th,
.tbl_item td {
	padding: .8em .5em;
}
}



/*---------------------------------------------------------
flow
---------------------------------------------------------*/

/*flow:fl_list
---------------------------------------------------------*/
.fl_list {
    display: grid;
    justify-content: space-between;
    grid-template-columns: repeat(5,15%);
}
.fl_list .box_img {
    position: relative;
    margin: 0 auto 10%;
}
.fl_list .box_img img {
    border-radius: 15% / 18%;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}
.fl_list > li:not(:last-of-type) .box_img::before {
	position: absolute;
	content: "";
	background-color: #0606cd;
	clip-path: polygon(0 0, 100% 50%, 0 100%);
	width: 8.4%;
	height: 20%;
	left: 120%;
	top: 50%;
    translate: -50% -50%;
}
.fl_list dt {
    text-align: center;
    color: #0606cd;
    font-size: 125%;
    font-weight: bold;
    line-height: 1.5;
    margin-bottom: .5em;
}
.fl_list dd {
    font-size: 93%;
    line-height: 1.8;
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.fl_list {
    display: grid;
    justify-content: space-between;
    grid-template-columns: repeat(2,45%);
    padding: 0 5%;
}
.fl_list > li:nth-of-type(n+3) {
    margin-top: 12%;
}
.fl_list > li:not(:last-of-type) .box_img::before {
	left: 112%;
}
.fl_list dt {
    font-size: 110%;
}
}


/*---------------------------------------------------------
faq
---------------------------------------------------------*/
#faq > div {
    background-color: #ecf8fe;
}

/* 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) {

}