@charset "utf-8";
/* CSS Document */


/* ----------------------------------------------------
   健診css setting
------------------------------------------------------- */

/* 施設ヘッダー :
--------------------------------------------*/

@media screen and (max-width: 1500px){
	#glnav > ul > li {
		font-size: .9rem;
	}
}



/* Element: :
-------------------------------------------*/

/*---- h1 ----*/

main h1{
	background-image: linear-gradient(90deg, rgba(116,179,151,0.4), rgba(155,212,224,0.4));
/*
	color: #1B6B63;
*/
}

/*---- h2 ----*/

main h2 {
	background: #E6F0EE;
	border-left: 7px solid;
	border-image: linear-gradient(180deg, rgba(116,179,151,.9), rgba(155,212,224,0.9));
	border-image-slice: 1;
}

/*---- h3 ----*/

main h3 {
	background-image: linear-gradient(90deg, rgba(116,179,151,0.6), rgba(155,212,224,0.6));
}

/*---- h4 ----*/

main h4:before{
	background-image: linear-gradient(90deg, rgba(116,179,151,0.8), rgba(155,212,224,0.8));
}


/*---- ul ----*/

/*-- default --*/

ul.list1 > li:before {
	background-color: #7BBEB7;
}

/*---- ul リストリンク有り ----*/

ul.list2 > li a:before{
    border-left-color: #7BBEB7;
}


/*-- ol --*/

main ol > li::before {
	color: #288076;
}


/*-- 入れ子 --*/


ul.list1 > li > ul.list1 > li:before {
	background-color: #7BBEB7;
}


/*---- number ----*/

main .tel{
	color: #288076;
}


/*---- link ----*/

.lnk2 a{
	background: #E6F0EE;
}

.lnk2 a:hover{
	background: #D1E0DE;
}

.lnk1 a:after {
    border-right: 11px solid #6D8CC7;
}

.lnk2 a:after {
    border-right: 11px solid #7BBEB7;
}


/* 施設フッター :
--------------------------------------------*/

#contact {
	background: #E6F0EE;
}

#contact p.tel {
	color: #314E87;
}


/* top :
--------------------------------------------*/

#emergency h2,#news h2,#reserve h2,#movie h2{
    border: none;
	background: none;
}

#news {
    background: #E6F0EE;
}

#news h2:before {
    color: #C7DFDC;
}

#news .topics li a:hover{
    background: #F5FAF9;
}

#movie h2 {
    color: #4D4D4D;
}

#movie h2:before {
    color: #EBEBEB;
}

#reserve h2:before {
    color: #E1EBE9;
}


/*年度予約*/
.reserve_btn {
	padding: 1.5rem 0 0;
}

.reserve_btn ul li a {
	display: flex;
	align-items: center;
	padding: 1.5rem;
	text-decoration: none;
	min-height: 6rem;
	box-shadow: 8px 8px 8px rgb(0 0 0 / 4%);
	position: relative;
	transition-duration: 0.4s;
}


.reserve_btn ul li a::after {
    content: "";
    bottom: 0;
    right: 0;
    border-top: 13px solid transparent;
    border-right: 13px solid #7BBEB7;
    position: absolute;
}

.reserve_btn ul li:nth-child(2) a::after {
    border-right: 13px solid #6D8CC7;
}

.reserve_btn ul li:nth-child(1) a{
	background: #E6F0EE;
	color: #1B6B63;
}
.reserve_btn ul li:nth-child(1) a:hover{
	background: #DAE6E4;
}
.reserve_btn ul li:nth-child(2) a{
	background: #E6EBF5;
	color: #314E87;
}
.reserve_btn ul li:nth-child(2) a:hover{
	background: #DAE1F0;
}

.reserve_btn ul li a > span:nth-of-type(1){
	font-weight: bold;
	font-size: 105%;
	white-space: nowrap; 
	line-height: 1.2rem;
}

.reserve_btn ul li a > span:nth-of-type(2){
	font-weight: normal;
	color: #333;
	display: block;
	margin-left: 1.7rem;
}

@media screen and (min-width: 960px){
	.reserve_btn ul.flex.clm2 li{
		width: 49%;
	}
}

.reserve_btn .new {
	color: #B03058;
	font-weight: bold;
	font-size: 75%;
	display: block;
	margin-top: -1rem;
}

/*↑年度予約 ここまで*/


.icon_reserve {
	margin: 0 10px 3px;
	vertical-align: middle!important;
}

td.r_form .icon_reserve {
	width: 36px;
}
td.r_tel .icon_reserve {
	width: 30px;
}

td.r_form div,td.r_tel div {
	position: relative;
	display: block;
	padding-right: 1.2rem;
}

td.r_form div:before,td.r_tel div:before {
	position: absolute;
	content: '';
	bottom: -12px;
	right: 0;
	width: 0;
	height: 0;
	border: none;
	border-right: solid 15px transparent;
}

td.r_form div:after,td.r_tel div:after {
	position: absolute;
	content: '';
	bottom: -12px;
	right: 10px;
	width: 100%;
}

td.r_form div:before {
border-bottom: solid 15px #EBC3CC;
}	

td.r_tel div:before {
	border-bottom: solid 15px #C0CFF0;
}
td.r_form div:after {
	border-bottom: solid 4px #EBC3CC;
}

td.r_tel div:after {
	border-bottom: solid 4px #C0CFF0;
}

.reserve_area {
	background: #FAE8EB;
	padding: 15px;
	margin: 0 auto;
	text-align: center;
}

.reserve_area section{
	background: #FFF;
	padding: 1.2rem;
	margin-bottom: 15px
}

.reserve_area h3{
	color: #BA4155;
	font-weight: 500;
	position: relative;
	padding: 50px 0 20px;
	background-image: none;
	font-size: 120%;
	display: block;
}

.reserve_area h3::before {
	content: "";
    display: block;
    background-repeat: no-repeat;
    background-position: center top;
    position: absolute;
    z-index: 2;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: url(../img/common/kensin/icon_reserve.svg) ;
    background-size: 30px 30px;
    height: 30px;
    top: 13px;
}


ul.reserve_ul {
	display: grid;
	grid-template-columns: repeat(2,1fr);
	grid-gap: 1rem;
}

ul.reserve_ul li div,.reserve_form{
    background: #E6E6E6;
	font-weight: 500;
	position: relative;
	transition-duration: 0.4s;
	line-height: 1.9rem;
	padding: 1rem;
}

ul.reserve_ul li:has(a) div,.reserve_form:has(a){
    background: #FFF ;
	padding: 0;
}

ul.reserve_ul li a,.reserve_form a{
	display: block;
	text-decoration: none;
	padding: 1rem;
    background: #FCF0F2 ;
	box-shadow: 8px 8px 8px rgb(0 0 0 / 4%);
	position: relative;
	transition-duration: 0.4s;
}

ul.reserve_ul li a:hover,.reserve_form a:hover{
    background: #F5E4E7;
}

ul.reserve_ul li a::after,.reserve_form a::after {
    content: "";
    bottom: 0;
    right: 0;
    border-top: 12px solid transparent;
    border-right: 12px solid #BA4155;
    position: absolute;
}

ul.reserve_ul li a span {
	font-size: 90%;
	font-weight: 400;
}

ul.reserve_ul li a em{
	color: #314E87;
	border-bottom: 3px double #314E87;
	padding-bottom: .05rem;
}

.reserve_form{
    width: 50%;
	margin: 0 auto;
}
.reserve_form.cancel a, ul.reserve_ul li.cancel a{
    background: #EBEFF7;
}
.reserve_form.cancel a:hover, ul.reserve_ul li.cancel a:hover {
    background: #DDE3F0;
}

.reserve_form.cancel a::after,ul.reserve_ul li.cancel a::after {
    border-right: 12px solid #6D8CC7;
}


.reserve_form > span,ul.reserve_ul li > span {
	color: #BA4155;
	margin-bottom: .3rem;
	display: block;
	font-weight: 500;
}

.reserve_area .red, .reserve_area .has-red-color{
	color: #BA4155;
}

h3.form_h3::before,h3.tel_h3::before {
	content: "";
	display: inline-block;
	width: 32px;
	height: 32px;
	background-size: contain;
	vertical-align: middle;
	margin-right: 10px;
}
h3.form_h3::before {
	background: url("../img/common/kensin/icon_pc.svg") no-repeat bottom 7px left;
}
h3.tel_h3::before {
	background: url("../img/common/kensin/icon_tel.svg") no-repeat bottom 7px left;
}

@media screen and (max-width: 767px){
	ul.reserve_ul,.reserve_form{
		font-size: 90%;
	}
}

@media screen and (max-width: 767px){
	ul.reserve_ul {
		grid-template-columns: 1fr;
	}
	.reserve_form{
		width: 100%;
	}
}

