@charset "UTF-8";

/*トップ共通
---------------------------------------------------------*/
.col_wh_box , .col_wh_box a{
	color: #fff;
}
.col_wh_box .arrow_bdr span a::before{
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
}
.col_wh_box .arrow_bdr span:hover a{
	color: #fff;
}
.col_wh_box .arrow_bdr span:hover a::before{
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
}
.col_wh_box .arrow_bdr span::before ,
.col_wh_box .arrow_bdr span::after{
	background-color: rgba(255,255,255,0.40);
}
.col_wh_box .arrow_bdr span::after {
	background-color: #fff;
}
.min_copy{
    font-size: min(210%,3.1vw);
	line-height: 1.8em;
	color: #032c42;
}
/* PC
------------------------------------------*/
@media only screen and (min-width: 768px)  {
.flt_box_l{
	float: left;
}
.flt_box_r{
	float: right;
}
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.min_copy{
	font-size: 190%;
	line-height: 1.7em;
}
}
/* Mobile
------------------------------------------*/
@media only screen and (max-width: 767px) {
.min_copy{
	font-size: 5.3vw;
	line-height: 150%;
}
}



/*main_area
---------------------------------------------------------*/
.main_area{
	position: relative;
	margin-bottom: 130px;
}

/*お知らせの下から背景色が変わる*/
.main_area::before{
	position: absolute;
	content: "";
	width: 100%;
	height: 15%;/*お知らせの下からの位置*/
	right: 0;
	bottom: 0;
	margin: auto;
}
.m_img{
	position: relative;
	width:100%;
}
.m_slide_area{
	position:absolute;
	right: 0;
	left: 0;
	top:0;
	margin: auto;
	max-width: 1400px;
	width: 95%;
}
.m_slide_area .slide {
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	position: relative;
	width: 100%;
	height: 100%;
}
.m_img::before, 
.m_slide_area .slide::before{
	padding-top: 900px;
	content: "";
	display: block;
}
.m_slide_area .slide1 {background-image: url(../images/top/m_img1@2x.jpg);}
.m_slide_area .slide2 {background-image: url(../images/top/m_img2@2x.jpg);}

.m_slide_area .m_copy {
	position:absolute;
	top: 45%;
	transform: translateY(-50%);
	right: 0;
	left: 0;
	margin: 0 auto;
	max-width: 870px;
	width:80%;
	z-index: 1;
}

/* PC調整
------------------------------------------*/
@media only screen and (min-width: 1600px) {
.m_slide_area .slide {
	background-size: contain;
	background-position: center top;
}
}
/* PC調整
------------------------------------------*/
@media only screen and (min-width: 960px) and (max-width: 1400px) {
.m_img::before, 
.m_slide_area .slide::before{
	padding-top: 65vw;
}
.m_slide_area .m_copy {
	top: 38%;
	width: 70%;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.m_img::before , .m_slide_area .slide::before{
	padding-top:70%;
}
.m_slide_area .m_copy {
	width: 80%;
	top: 40%;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.main_area{
	margin-bottom: 15%;
}
.m_slide_area{
	width: 98%;
}
.m_img::before , 
.m_slide_area .slide::before{
	padding-top:120%;
}	
.m_slide_area .slide1 {background-image: url("../images/top/m_img1_sp@2x.jpg"); background-size: contain;}
.m_slide_area .slide2 {background-image: url("../images/top/m_img2_sp@2x.jpg");  background-size: contain;}
	
.m_slide_area .m_copy {
	width: 95%;
	top: 42%;
	z-index: 55;
	max-width: 600px;
}
}



/*お知らせ
---------------------------------------------------------*/
.m_news{
	position:absolute;
	left: 0;
	right: 0;
	bottom:0;
	margin: 0 auto;
	box-sizing: border-box;
	width: 100%;
	background:rgba(44,168,199,0.90);
	padding: 25px 35px;
	text-align: left;
	color:#fff;
	filter: drop-shadow(0 0 8px rgba(0,0,0,0.3));
	z-index: 55;
}
.m_news .tbl_box{
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
}
.m_news a{
	color: #fff;
	text-decoration: underline;
}
.m_news .title{
	width: 6.5em;
}
.m_news .inbox{
	border-left: solid 1px rgba(255,255,255,0.20);
	padding-left: 4%;
	box-sizing: border-box;
	width: calc(100% - 6.5em);
}
.m_news .inbox p{
	font-size:110%;
	padding-right: 2.3em;
}
.m_news .inbox dt{
	font-size:110%;
}

/* PC
------------------------------------------*/
@media only screen and (min-width: 768px) {
.m_news .inbox{
	display: flex;
}
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.m_news{
	bottom: -10%;
}
}
/* Mobile
------------------------------------------*/
@media only screen and (max-width: 767px) {
.m_news{
	padding: 3% 3% 3.5%;
	bottom:-6%;
}
.m_news .inbox dt{
	font-size:95%;
	line-height: 1.3em;
}
.m_news .inbox p{
	font-size: 100%;
	padding-right:0;
}
.m_news .title{
	width: 4em;
}
.m_news .inbox{
	width: calc(100% - 4em);
}
}





/*sp_top_menu
---------------------------------------------------------*/
@media only screen and (min-width: 768px) {
.sp_top_menu {display: none;}}
.sp_top_menu {
	width:90%;
	padding: 0 5%;
	margin: 0 auto 8%;
}
.sp_top_menu li{
	float: left;
	width: 48.5%;
	text-align: left;
	background-size:16% auto;
	background-repeat: no-repeat;
	background-position: left center;
	padding: 3.2% 5% 3.2% 1%;
	border-bottom: 1px #818e99 solid;
	box-sizing: border-box;
}
.sp_top_menu li:nth-child(1){border-top: 1px #818e99 solid;}
.sp_top_menu li:nth-child(2){border-top: 1px #818e99 solid;}

.sp_top_menu li:nth-child(even){
	float: right;
}
.sp_top_menu li a{
	display: block;
	font-size:3.5vw;
	letter-spacing: 0.05em;
	color: #171717;
}








/* top_lead
---------------------------------------------------------*/
.top_lead{
	position: relative;
	padding-bottom: 50px;
}
.top_lead_bg{
	position: relative;
	margin-bottom: calc(5% + 100px);
	z-index: 1;
}
.top_lead_bg::before{
	position: absolute;
	content: "";
	max-width: 1130px;
	width: 92%;
	height: 100%;
	top: 5%;
	left: 50%;
	transform: translateX(-50%);
	background: #ffffe6;
	border-bottom-right-radius: 100px;
	z-index: -1;
}
.lead_box h2{
	font-size: min(400%,5vw);
	line-height: 1.5em;
	margin-bottom: .5em;
}
/* PC調整
------------------------------------------*/
@media only screen and (max-width: 1300px) {
.lead_box p .t_lead_br{
	display: none;
}
}
/* PC
------------------------------------------*/
@media only screen and (min-width: 768px) {
.lead_box .flt_box_r{
	max-width: 470px;
	width: 38%;
}
.lead_box .flt_box_l{
	width: 58%;
}
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.top_lead_bg{
	margin-bottom: calc(5% + 8%);
}
.lead_box h2{
	font-size: 4.5vw;
}
}
/* Mobile
------------------------------------------*/
@media only screen and (max-width: 767px) {
.top_lead{
	padding-bottom: 0;
}
.top_lead_bg{
	padding-bottom: 5%;
	margin-bottom: calc(5% + 30px);
}
.top_lead_bg::before{
	top: 1%;
	width: 87%;
}
.top_lead .flt_box_r{
	width: 38%;
	float: right;
	margin-left: 3%;
}
.lead_box h2{
	font-size: 7vw;
}
}




/* top_point
---------------------------------------------------------*/
.top_point li{
	margin-top: 7%;
}
.top_point li:last-child{
	margin-right: 0;
}
.top_point li .col_green{
	text-align: center;
}
.top_point li p.col_green{
	font-size: 120%;
	letter-spacing: normal;
	font-weight: bold;
}
.top_point li h3{
    font-size: min(210%,2.6vw);
	line-height: 1.4em;
	letter-spacing: normal;
	margin-top: .2em;
	margin-bottom:  .7em;
}
.top_point li:nth-child(1) p span{	color: #54ad3f;}
.top_point li:nth-child(2) p span{	color: #2ca8c7;}
.top_point li:nth-child(3) p span{	color: #eb9813;}

.top_point li div{
	margin-top: 30px;
	text-align: center;
}
.top_point li:nth-of-type(2) div{
	margin-top: 0;
	margin-bottom: 30px;
}
.top_point li .arrow_bdr{
	text-align: right;
	margin-top: 1em;
}
/* PC
------------------------------------------*/
@media only screen and (min-width: 768px)  {
.top_point ul{
	display: flex;
	justify-content: space-between;
}
.top_point li{
	max-width: 370px;
	width : calc(100% / 3 - 5%) ;
	margin-right: 5%;
}
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.top_point li{
	width : calc(100% / 3 - 2%) ;
	margin-right: 2%;
}
.top_point li p.col_green{
	font-size: 100%;
	line-height: 1.5em;
}
.top_point li h3{
	font-size: 135%;
	margin-bottom:  .5em;
}
.top_point li div{
	margin-top: 5%;
}
.top_point li:nth-of-type(2) div{
	margin-bottom: 8%;
}
}
/* Mobile
------------------------------------------*/
@media only screen and (max-width: 767px) {
.top_point li div{
	width: 70%;
	margin-top: 5%;
	margin-bottom: 5%;
	margin-left: auto;
	margin-right: auto;
}
.top_point li:nth-of-type(2) div{
	margin-top: 5%;
	margin-bottom: 5%;
}
.top_point li p.col_green{
	font-size: 105%;
}
.top_point li h3{
	font-size: 160%;
	margin-top: .1em;
	margin-bottom:  .4em;
}
.top_point li .arrow_bdr{
	text-align: center;
	margin-top: .5em;
}
}



/* top_cln
---------------------------------------------------------*/
.top_cln .w1300{
	position: relative;
}
.top_cln .min_copy{
	margin-bottom: 1.7em;
	color: #032c42;
}
.top_cln .icon_point{
	max-width: 673px;
	width: 90%;
	margin-left: 0;
	margin-top: -70px;
	position: relative;
	z-index: 1;
	display: flex;
	justify-content: space-between;
	align-items: center;
	text-align: center;
}
.top_cln .icon_point li{
	margin-right: 20px;
	max-width: 150px;
	width : calc(100% / 4 - 10px);
	height: 150px;
	position: relative;
}
.top_cln .icon_point li:last-child{
	margin-right: 0;
}
.top_cln .icon_point li::before{
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	background: url("../images/top/icon_cln_bg1@2x.png") no-repeat center;
	background-size: 100%;
	z-index: -1;
}
.top_cln .icon_point li:nth-child(2)::before{
	background-image: url("../images/top/icon_cln_bg2@2x.png");}
.top_cln .icon_point li:nth-child(3)::before{
	background-image: url("../images/top/icon_cln_bg3@2x.png");}
.top_cln .icon_point li:nth-child(4)::before{
	background-image: url("../images/top/icon_cln_bg4@2x.png");}

.top_cln .icon_point li .inner{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	width: 100%;
}
.top_cln .icon_point li .inner p{
	color: #fff;
	line-height: 1.4em;
	margin-top: .6em;
}
.top_cln .arrow_bdr{
	position: absolute;
	bottom: 0;
	right: 3%;
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.top_cln .icon_point{
	width: 85%;
}
.top_cln .icon_point li .inner p{
	font-size: 1.7vw;
	margin-top: .7em;
}
.bx_slide li{
	width: 50vw!important;
}
.top_cln .min_copy{
	margin-bottom: 1em;
}
}
/* Mobile
------------------------------------------*/
@media only screen and (max-width: 767px) {
.top_cln .w1300{
	padding-bottom: 18%;
}
.top_cln .min_copy{
	margin-bottom: 1.2em;
}
.top_cln .icon_point{
	width: 100%;
	margin-top: -40px;
	flex-wrap:wrap;
	justify-content:flex-start;
}
.top_cln .icon_point li{
	margin-right: 1px;
	width : calc(100% / 4 - 1px);
	height: 150px;
}
.top_cln .icon_point li:nth-of-type(4) , 
.top_cln .icon_point li:nth-of-type(5){
	margin-top: 0;
}
.top_cln .icon_point li .inner{
	top: 48%;
}
.top_cln .icon_point li .inner div{
	width: 10vw;
	margin: 0 auto;
}
.top_cln .icon_point li .inner p{
	font-size: 2.6vw;
	letter-spacing: normal;
	line-height: 1.2em;
	margin-top: .4em;
}
.top_cln .arrow_bdr{
	top: auto;
	bottom: 8%;
	right: 3%;
}
.top_cln .arrow_bdr{
	top: auto;
	bottom: 50px;
	right: 10%;
}
.bx_slide li{
	width: 55vw!important;
}
}




/* heart
---------------------------------------------------------*/
.heart{
	padding-top:80px;
}
.heart .w1410 {
	width: 94%;
	padding: 0 3%;
	max-width: 1410px;
	margin: 0 auto;
	text-align: left;
}
.hrt_box{
	margin-top: 30px;
}
.heart .hrt_title{
	text-align: center;
}
.heart .hrt_title p{
	display: inline-block;
	max-width: 331px;
	margin: 1% auto 0;
	text-align: left;
}

.hrt_box{
	color: #fff;
}
.hrt_box .inner{
	position: relative;
}
.hrt_box .inner .num{
	position: absolute;
	top: -0.4em;
	right: 20px;
	font-size:500%;
	letter-spacing: normal;
	line-height: 1em;
	z-index: 0;
	color: #b5665e;
	text-align: center;
}
.hrt_box .inner .num::before{
	position: absolute;
	display: block;
	content: "";
	background: #b5665e;
	background-size: 100% auto;
	width: 100%;
	height: 1px;
	bottom: .05em;
	left: 0;
}
.hrt_box .inner .num::after{
	position: absolute;
	display: block;
	content: "PROMISE";
	bottom: -1.2em;
	left: 0;
	right: 0;
	margin: 0 auto;
	line-height: 1em;
	font-size: 25%;
	letter-spacing: normal;
	text-align: center;
}
.hrt_box.box02 .inner .num{color: #99642e;}
.hrt_box.box02 .inner .num::before{background: #99642e;}
.hrt_box.box03 .inner .num{color: #032c42;}
.hrt_box.box03 .inner .num::before{background: #032c42;}
.hrt_box.box04 .inner .num{color: #336926;}
.hrt_box.box04 .inner .num::before{background: #336926;}

.hrt_box .inner dt{
	font-size:220%;
	line-height: 140%;
	margin-bottom: .4em;
}
.hrt_box.box01 .inner dt{
	margin-bottom: .8em;
}
.hrt_box .inner dd{
	letter-spacing: normal;
}
.hrt_box .inner .arrow_bdr{
	margin-top: 25px;
}
.hrt_box .arrow_bdr span a{
	color: #fff;
}
.hrt_box .arrow_bdr span a::before{
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}
.hrt_box .arrow_bdr span:hover a{
	color: #fff;
}
.hrt_box .arrow_bdr span:hover a::before{
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
}
.hrt_box .arrow_bdr span::before ,
.hrt_box .arrow_bdr span::after{
	background-color: #fff;
}
.hrt_box .arrow_bdr span::after {
	background-color: #fff;
}

/*heart01指定*/
.heart .box01{
	background: url("../images/top/img_heart1@2x.jpg") no-repeat center;
	background-size: cover;
}
.heart .box01 .inner{
	padding: 5% 5% 30px;
	width : calc(100% / 2 - 10%) ;
	background:rgba(247,138,128,0.80);
	margin-left: auto;
	margin-right: 0;
}
.heart .box01 .inner dl{
	margin-top: 50px;
	padding-bottom: 100px;
}

/*heart02、03指定*/
.heart .box02{
	background: url("../images/top/img_heart2@2x.jpg") no-repeat center top;
	background-size: contain;
}
.heart .box03{
	background: url("../images/top/img_heart3@2x.jpg") no-repeat center top;
	background-size: contain;
}
.heart .box02 .inner ,
.heart .box03 .inner{
	padding: 7% 7% 30px;
	margin-top: 240px;
}
.heart .box02 .inner{
	background:rgba(235,152,19,.8);
}
.heart .box03 .inner{
	background:rgba(44,168,199,0.80);
}

/*heart04指定*/
.heart .box04{
	background: url("../images/top/img_heart4@2x.jpg") no-repeat center top;
	background-size: contain;
	padding-top: 270px;
}
.heart .box04 .inner{
	background:rgba(84,173,63,0.80);
	padding: 3% 4% 4% 3%;
	box-sizing: border-box;
}
.heart .box04 .inner .hrt_flex ul{
	display: flex;
	justify-content: space-between;
	max-width: 420px;
	margin-top: 5%;
}
.heart .box04 .inner .hrt_flex li{
	max-width: 200px;
	width: 48%;
}
.heart .box04 .inner .arrow_bdr{
	margin-top: 15px;
	margin-left: auto;
	margin-right: auto;
}
.heart .box04 .inner .arrow_com{
	text-align: center;
	margin-top: 4em;
}

/* PC調整2
------------------------------------------*/
@media only screen and (min-width: 1000px)  {
/*hrt_title*/
.heart .hrt_title{
	max-width: 400px;
	width: 30%;
	margin-bottom: 0;
	margin-left: 0;
}
.heart .hrt_title div ,
.heart .hrt_title p{
	width: 100%;
}
.heart .hrt_title p{
	margin-top: 2em;
	margin-left: 0;
}
	
/*box01*/
.heart .box01{
	max-width: 940px;
	width: 68%;
}
	
/*box02*/
.heart .box02 ,
.heart .box03{
	width: 690px;
	width : calc(100% / 2 - 15px) ;
}
.heart .box02{
	maegin-right: 15px;
}
	
/*box04*/
.heart .box04 .inner{
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}
.heart .box04 .inner .hrt_flex dd{
	display: flex;
	justify-content: space-between;
}
.heart .box04 .inner .hrt_flex dd .box_l{
	width: 57%;
}
.heart .box04 .inner .hrt_flex ul{
	width: 39%;
	margin-top: 0;
}
}

/* 改行調整
------------------------------------------*/
@media only screen and (max-width: 1400px) {
.heart .hrt_title p br{
	display: none;
}
}

/* PC調整
------------------------------------------*/
@media only screen and (min-width: 960px) and (max-width: 1000px) {
.heart .hrt_title{
	display: flex;
	justify-content: space-between;
	align-items: center;	
	width: 100%;
	max-width: 100%;
	margin-bottom: 2%;
}	
.heart .hrt_title div{
	width: 35%;
}
.heart .hrt_title p{
	display: inline-block;
	width: 61%;
	max-width: 100%;
	margin: 0;
}
	
.heart .box01{
	max-width: 100%;
	width: 100%;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.heart{
	padding-top: 2%;
}
.heart .box04 .inner .arrow_com{
	margin-top: 2.5em;
}
.heart .hrt_title{
	display: flex;
	justify-content: space-between;
	align-items: center;	
	width: 100%;
	margin-bottom: 2%;
}	
.heart .hrt_title div{
	width: 35%;
}
.heart .hrt_title p{
	display: inline-block;
	width: 61%;
	max-width: 100%;
	margin: 0;
}
.hrt_box .inner dt{
	font-size:200%;
}
.hrt_box{
	margin-top: 3%;
}
	
/*heart01指定*/
.heart .box01{
	background: url("../images/top/img_heart1@2x.jpg") no-repeat center;
	background-size: cover;
}
.heart .box01 .inner{
	padding: 4%;
	width : 55%;
}
.heart .box01 .inner dl{
	margin-top: 50px;
	padding-bottom: 5%;
}
/*heart02、03指定*/
.heart .box02 .inner ,
.heart .box03 .inner{
	padding: 4% 4% 5%;
	margin-top: 30vw;
}
.heart .box04 {
	padding-top: 30vw;
}
.heart .box04 .inner{
	padding: 4% 4% 5% 4%;
}
}
/* Mobile
------------------------------------------*/
@media only screen and (max-width: 767px) {
.heart{
	padding-top: 0;
}
.heart .hrt_title{
	width: 100%;
	display: block;
	margin-bottom: 3%;
	margin-left: 0;
}
.heart .hrt_title div{
	width: 100%;
	margin-left: auto;
	margin-right: auto;
}
.heart .hrt_title p{
	margin-top: 4%;
	width: 100%;
	max-width: 100%;
}
.hrt_box{
	margin-top: 3%;
}
.hrt_box .inner dt{
	font-size: 160%;
	letter-spacing: 0.1em;
}
.hrt_box .inner .num{
	width: 80px;
	top: -5vw;
	right: 15px;
	font-size: 300%;
}
	
/*heart01指定*/
.heart .box01{
	background: url("../images/top/img_heart1_sp@2x.jpg") no-repeat center top;
	background-size:contain;
}
.heart .box01 .inner{
	padding: 5% 4% 6%;
	width : calc(100% / 1 - 8%);
	margin-top:140px;
}
	
.heart .box01 .inner dl{
	margin-top: 0;
	margin-bottom: 0;
	padding-bottom: 0;
}
.hrt_box.box01 .inner dt{
	margin-bottom: .5em;
}
/*heart02、03指定*/
.heart .box02 .inner ,
.heart .box03 .inner{
	padding: 5% 4% 6%;
	margin-top: 140px;
}
/*heart04指定*/
.heart .box04{
	padding-top: 140px;
	background: url("../images/top/img_heart4_sp@2x.jpg") no-repeat center top;
	background-size: contain;
}
.heart .box04 .inner{
	padding: 5% 4% 6%;
}
.heart .box04 .inner .arrow_com{
	font-size: 95%;
	margin-top: 2em;
}
.heart .box04 .inner .arrow_com span{
	padding: 0.25em 1em;
}
}




/* top_medical
---------------------------------------------------------*/
.top_medical{
	background: url("../images/top/bg_med@2x.png") no-repeat left top #f2ffff;
	background-size: 60%;
	margin-top: 150px;
	padding-bottom: 90px;
	position: relative;
}
.med_title{
	position: relative;
	top: -5px;
	text-align: right;
}
.med_title dt{
	font-size: 600%;
	margin-bottom: .4em;
	color: #2ca8c7;
}
.med_title dd{
	font-weight: bold;
	font-size: 110%;
	letter-spacing: 0.15em;
	color: #032c42;
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
.top_medical{
	margin-top: 15%;
	padding-bottom: 10%;
}
.med_title dt{
	font-size: 500%;
}
}

/* Mobile
------------------------------------------*/
@media only screen and (max-width: 767px) {
.top_medical{
	margin-top: 70px;
	padding-bottom: 10%;
	background-size:50%;
}
.med_title dt{
	font-size: 280%;
	margin-bottom: .3em;
}
.med_title dd{
	font-size: 100%;
	letter-spacing: 0.1em;
}
}




/* med_kanri
---------------------------------------------------------*/
.med_kanri{
	max-width: 1200px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	margin-top: 5%;
	margin-bottom: 5%;
}
.med_kanri .flt_box_l dt{
	margin-bottom: .8em;
}
.med_kanri .flt_box_l .arrow_com{
	margin-top: 25px;
}
/* PC
------------------------------------------*/
@media only screen and (min-width: 768px)  {
.med_kanri .flt_box_r{
	width: 25.5%;
	padding-top: 1.5em;
}
.med_kanri .flt_box_l{
	width:71%;
}
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.med_kanri .flt_box_l dt{
	margin-bottom: .5em;
}
.med_kanri .flt_box_l .arrow_com{
	margin-top: 2%;
}
}
/* Mobile
------------------------------------------*/
@media only screen and (max-width: 767px) {
.med_kanri{
	margin-top: 5%;
	margin-bottom: 15%;
}
.med_kanri .flt_box_r{
	float: right;
	width: 30%;
	margin-left: 3%;
}
.med_kanri .flt_box_l .arrow_com{
	text-align: center;
	margin-top: 3%;
}
}




/* med_ort
---------------------------------------------------------*/
.med_ort{
	position: relative;
	text-align: center;
	max-width: 1300px;
	margin: 0 auto;
}
.ort_title dt{
	font-size: 450%;
	color:#3f210d;
	margin-bottom: .6em;
}
.ort_title dd{
	color: #032c42;
}
.ort_box li{
	padding-top: 240px;
	padding-bottom: 60px;
}
.ort_box .box_l{
	background-image: 
		url("../images/top/bg_ort1@2x.png"),
		url("../images/top/bg_ort2@2x.png");
	background-repeat: 
		no-repeat,
		no-repeat;
	background-position: 
		left top,
		right bottom;
	background-size:
		75% auto,
		45% auto;
	background-color: 
		#fcfff0;
}
.ort_box .box_r{
	background-image: 
		url("../images/top/bg_ort3@2x.png"),
		url("../images/top/bg_ort4@2x.png");
	background-repeat: 
		no-repeat,
		no-repeat;
	background-position: 
		right top,
		right bottom;
	background-size:
		75% auto,
		45% auto;
	background-color: 
		#eafcde;
}
.ort_box li .ft_min{
    font-size: min(130%,2.2vw);
	line-height: 1.8em;
	padding-top: 1em;
	margin-bottom: 1em;
}
.ort_box li .ft_min span{
	display: inline-block;
}
.add_box{
	margin: 50px auto 0 auto;
}
.add_box p.ft_min{
	font-size: 130%;
	text-align: center;
}
.add_box .arrow_com{
	text-align: center;
	margin: 30px auto 0 auto;
}
/* PC
------------------------------------------*/
@media only screen and (min-width: 768px)  {
.ort_title{
	position: absolute;
	left: 0;
	right: 0;
	top: 100px;
	margin: auto;
	width: 90%;
}
.ort_box{
	display: flex;
	justify-content: space-between;
}
.ort_box li{
	padding-left: 2.5%;
	padding-right: 2.5%;
	width: calc(50% - 5%);
}
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
.ort_title{
	top: 9vw;
}
.ort_title dt{
	font-size: 400%;
}
.ort_box li{
	padding-top: 28vw;
	padding-bottom: 5%;
}
.ort_box li .ft_min{
	font-size: 105%;
	letter-spacing: normal;
}
.add_box .arrow_com{
	margin: 4% auto 0 auto;
}
}
/* Mobile
------------------------------------------*/
@media only screen and (max-width: 767px) {
.ort_title{
	margin-top: 10%;
	margin-bottom: 6%;
}
.ort_title dt{
	font-size: 200%;
	margin-bottom: .5em;
}
.ort_box li{
	padding-top: 20vw;
	padding-bottom: 10%;
}
.ort_box li .ft_min{
	font-size: 120%;
	line-height: 1.7em;
	padding-top: 1em;
	margin-bottom: 1em;
}
.add_box{
	margin: 5% auto 0 auto;
}
.add_box p.ft_min{
	font-size: 5.0vw;
}
.add_box .arrow_com{
	margin: 3% auto 0 auto;
}
}




/* med_other_list
---------------------------------------------------------*/
.med_other_list{
	text-align: center;
	margin-top: 80px;
	margin-bottom: 40px;
	max-width: 1036px;
	margin-left: auto;
	margin-right: auto;
}
.med_other_list li{
	float: left;
	width: calc(100% / 4 - 10px);
	margin-right: 10px;
	margin-top: 10px;
	padding-top: 20px;
	padding-bottom: 25px;
}

.med_other_list li:nth-of-type(1){background-color: #ffefad;}
.med_other_list li:nth-of-type(2){background-color: #e1ceed;}
.med_other_list li:nth-of-type(3){background-color: #d1f0a5;}
.med_other_list li:nth-of-type(4){background-color: #ffbb9e;}
.med_other_list li:nth-of-type(5){background-color: #c8f0fa;}
.med_other_list li:nth-of-type(6){background-color: #adebb8;}
.med_other_list li:nth-of-type(7){background-color: #bedaf7;}
.med_other_list li:nth-of-type(8){background-color: #f2e3b1;}

.med_other_list .arrow_nomal a{
	color: #054263;
}
.med_other_list .arrow_nomal a::before{
	border-top: 2px solid #054263;
	border-right: 2px solid #054263;
}

/* PC
------------------------------------------*/
@media only screen and (min-width: 768px)  {
.med_other_list li:nth-of-type(4n){
	margin-right: 0;
}
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.med_other_list{
	margin-top: 5%;
	margin-bottom: 4%;
}
.med_other_list li{
	font-size:90%;
	padding-top: 2vw;
	padding-bottom: 2.5vw;
}
}

/* Mobile
------------------------------------------*/
@media only screen and (max-width: 767px) {
.med_other_list.med_other_list{
	margin-top: 7%;
	margin-bottom: 7%;
	padding: 0;
	max-width: 100%;
	width: 100%;
}
.med_other_list li{
	max-width: auto;
	width: 49%;
	margin-right: 0;
}
.med_other_list li:nth-child(even){
	float: right;
}
}



/* topics
---------------------------------------------------------*/
.topics{
	margin-bottom: 150px;
}
.topics .topics_title dt{
	font-size: min(270%,3.5vw);
	letter-spacing: 0.1em;
	color: #2ca8c7;
	margin-top:90px;
}
.topics .blog .topics_title dt{
	color: #7a659e;
}
.topics .topics_title dd{
	font-size: 80%;
	margin-top: .3em;
}
.topics .hover_list{
	margin-top: 20px;
	margin-bottom: 40px;
}
.topics .hover_list li{
	padding: 5%;
}
.topics .hover_list li p{
	font-size: 110%;
	margin-bottom: .2em;
}
.topics .hover_list li:nth-child(odd){	background: #f0f9fb;}
.topics .blog .hover_list li:nth-child(odd){	background: #f6f4f8;}
.topics .hover_list li dt{
	position: relative;
	z-index: 1;
	padding-left: 25px;
	font-weight: bold;
	font-size: 105%;
	line-height: 1.8em;
}
.topics .hover_list li dt::before{
	position: absolute;
	content: "";
	width: .4em;
	height: .4em;
	left: 0;
	top: .7em;
	transform: rotate(45deg);
	border-top: 2px solid #2ca8c7;
	border-right:2px solid #2ca8c7;
}
.topics .blog .hover_list li dt::before{
	border-top: 2px solid #7a659e;
	border-right: 2px solid #7a659e;
}
.topics .hover_list li dd{
	padding-left:  25px;
	font-size: 90%;
	line-height: 1.8em;
	margin-top: .7em;
}
.news .hover_list li dt a{
	color: #2ca8c7;
}
.blog .hover_list li dt a{
	color: #7a659e;
}
.topics .txt_none{
	margin: 1em 0;
}

/* PC
------------------------------------------*/
@media only screen and (min-width: 768px)  {
.topics .news , .topics .blog{
	width: 48%;
}
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.topics{
	margin-bottom: 10%;
}
.topics .topics_title dt{
	font-size: 200%;
	margin-top: 15%;
}
.topics .hover_list{
	margin-top: 3%;
	margin-bottom:4%;
}
.topics .hover_list li{
	padding: 5%;
}
.topics .hover_list li dt{
	letter-spacing: normal;
	line-height: 1.6em;
}
.topics .hover_list li dt::before{
	top: .45em;
}
}
/* Mobile
------------------------------------------*/
@media only screen and (max-width: 767px) {
.topics{
	margin-bottom: 20%;
}
.topics .topics_title dt{
	font-size: 200%;
	margin-top: 15%;
}
.topics .hover_list{
	margin-bottom: 4%;
}
}





/* top_rec
---------------------------------------------------------*/
.top_rec{
	position: relative;
	padding-bottom: 170px;
}
.top_rec .w1300{
	position: absolute;
	top: -10px;
	left: 0;
	right: 0;
	margin: 0 auto;
}
.rec_title{
	font-size: 450%;
	color: #0a7dad;
}
.top_rec .rec_bnr{
	max-width: 1097px;
	width: 90%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 80px;
}
.top_rec .rec_bnr li{
	position: relative;
	background-image: url("../images/top/rec_dh_kado@2x.png");
	background-position: right bottom;
	background-repeat: no-repeat;
	background-color:rgba(16,90,121,0.95);
	background-size: 40%;
	width: calc(100% / 2 - 10%) ;
	padding: 4% 5% 6%;
	transition: background-color 1.0s;
	z-index: 1;
}
.top_rec .rec_bnr li:last-child{
	background-image: url("../images/top/rec_dr_kado@2x.png");
	background-color:rgba(247,138,128,0.95);
}
.top_rec .rec_bnr li:hover{
	background-color:rgba(11,63,84,0.95);
	transition: background-color 0.4s;
}
.top_rec .rec_bnr li:last-child:hover{
	background-color:rgba(224,97,85,0.95);
	transition: background-color 0.4s;
}
.top_rec .rec_bnr li .arrow_nomal{
	position: absolute;
	right: 6%;
	bottom: 5%;
}
.top_rec .rec_bnr li .arrow_nomal a{
	color: #fff;
}
.top_rec .rec_bnr li .arrow_nomal a::before{
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}
.top_rec .rec_bnr li .arrow_nomal a:hover{
	color: #fff;
}
.top_rec .rec_bnr li .abs_img{
	position: absolute;
	top:0;
	transform: translateY(-15%);
	right: 6.5%;
	z-index: -1;
	width: 25%;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.top_rec{
	padding-bottom: 10%;
}
.rec_title{
	font-size:400%;
}
.top_rec .rec_bnr{
	margin-top: 6%;
}
.top_rec .rec_bnr li{
	padding: 4% 5% 8%;
}
.top_rec .rec_bnr li .abs_img{
	right: 4%;
}
}

/* Mobile
------------------------------------------*/
@media only screen and (max-width: 767px) {
.top_rec{
	padding-bottom: 25%;
}
.top_rec .w1300{
	top: -2%;
}
.rec_title{
	font-size: 320%;
}
.top_rec .rec_bnr{
	width: 100%;
	margin-bottom: 8%;
	margin-top: 7%;
}
.top_rec .rec_bnr li{
	padding:4% 3% 11%;
	box-sizing: border-box;
	width: 50%;
}
.top_rec .rec_bnr li .abs_img{
	transform: translateY(-40%);
	right: 1%;
}
.top_rec .rec_bnr li .arrow_nomal{
	right: 8%;
	bottom: 4%;
}
.top_rec .rec_bnr li .arrow_nomal a{
	font-size: 85%;
}
}