@charset "UTF-8";

/***************  下層共通  *****************/

.hero_sub {
	height: 290px;
    background-image: url(./img/sub_main_sample.jpg);
    background-size: cover;
	background-position:center;
    background-repeat: no-repeat;
    width: 100%;
    margin-top: 72px;
    border-radius: 30px;
    text-align: center;
    color: #ffffff;
	position:relative;
	display:flex;
	justify-content:center;}
.hero_sub h2 {
	font-size:min(6vw,42px);
    align-content: center;}
.hero_sub .ttl_en {
	position:absolute;
	bottom:0;
	left:0;
	right:0;
	font-weight:700;
	margin:auto;
	font-size:100px;
	opacity:0.2;
	line-height:0.85;}

/****  ↓ページごとのビジュアル  ****/
.philosophy_page {
    background-image: url(./img/sub_main_sample.jpg);}




/****  ↑ページごとのビジュアル  ****/

.sub_ttl {
	position:relative;
	padding-top:90px;
	margin-bottom:40px;}

.sub_ttl h3 {
	font-size:40px;
	position:relative;
	z-index:2;
	text-align:center;}

.sub_ttl .subttl_en {
	font-size:145px;
	position:absolute;
	color:#ffffff;
	z-index:1;
	display:block;
	text-align:center;
	font-weight:700;
	letter-spacing:-3px;
	line-height:0.7;
	left:0;
	right:0;
	top:0;
	}

.breadcrumb ul {
	display:flex;
	list-style:none;
	padding:0 0 10px 0;
	white-space: nowrap;
	word-break: keep-all;
	overflow-x: auto;}

.breadcrumb ul li {
	position:relative;}

.breadcrumb ul li:before {
	display:inline-block;
	content:">";
	margin:0 1em;
	position:relative;}

.breadcrumb ul li:first-child:before {
	display:none;}

.breadcrumb ul a:hover {
	text-decoration: underline;}


/* ------------------------------
  Medical Check
------------------------------ */


.medical_check {
	background-color: #ffffff;
    margin: 50px auto;
	width:90%;
    max-width: 1000px;
    padding: 30px;
    border-radius: 20px;
    text-align: center;}

.medical_check h2 {
    color: #373737;
    font-size: 26px;
	margin-bottom:30px;}

.medical-gate-box p {
	line-height:1.7;}

.medical-gate-box p a {
	display: inline-block;
    border-radius: 10px;
    background-color: #c8102e;
    font-weight: bold;
    color: #ffffff;
    padding: 5px 30px 10px 30px;
    font-size: 18px;
    box-shadow: 0px 0px 3px rgba(0, 0, 0, 0.5);
    border: 1px solid #ccc;}

.medical-gate-box p a+a {
	background-color:gray;
	margin-left:20px;
}

.medical_check_btn {
	margin-top:30px;}

.medical-gate-box p+p {
	margin-top:20px;
}

.medical-gate-box .attention0 {
	font-weight:bold;
	color:red;
}


/***************  1200サイズ未満  *****************/
@media screen and (max-width:1199px){
.company_en,
.service_en,
.faq_en,
.contact_en {
    font-size:14vw!important;
    left:0!important;
    right:0!important;
    text-align:center;}

.hero__copy p {
    font-size: 32px;}

.hero_sub .ttl_en {
	font-size:8vw;}

.sub_ttl .subttl_en {
	font-size:12vw;}

.sub_ttl {
    padding-top: 6vw;}
.sub_ttl h3 {
    font-size: 4vw;}



}

/***************  タブレットサイズ  *****************/
@media (max-width: 960px){




}

/***************  SPサイズ以上  *****************/
@media (min-width: 769px){
	.forsp {display:none!important;}






}
/***************  SPサイズ  *****************/
@media (max-width: 768px){
.forpc {display:none!important;}


.left_box p.president {
    font-size: 18px;}
}

@media (max-width: 767px){
.breadcrumb ul li {
    font-size: 14px;
	}
.medical_check {
    padding: 30px 10px;
	}
.medical_check h2 {
    font-size: 22px;
	}
.medical-gate-box p {
	font-size: 13.5px;
	}
}

