@charset "UTF-8";

.side_bnr{	display: none!important;}

/*m_title
---------------------------------------------------------*/
.contentpage .m_img_area {
	background-image: url("../images/benia/m_img1@2x.jpg");
	z-index: 1;
}
.m_title{
	font-size:100%!important;
	display: flex;
    justify-content: space-between;	
	align-items: flex-end;	
	width: 83vw!important;
	max-width: 1214px!important;
}
.m_title_l{
	width: 54%;
	max-width: 654px;
	text-align: left;
}
.m_title_l dl{
	position: relative;
	width: 100%;
}
.m_title_l dd{
	position: absolute;
	top:0;
	left: 0;
}
.m_title_l dd img{
	filter: drop-shadow(0 0 10px rgba(0,0,0,0.5));
}
.m_title_l .tit{
	position: relative;
	display: inline-block;
	font-size: min(290%,3.2vw);
	letter-spacing: 0.1em;
	line-height: 1.5em;
	padding: .3em .2em;
	box-sizing: border-box;
	margin: .7em 0 .4em;
	max-width: 650px;
}
.m_title_l .tit::before{
	position: absolute;
	display: block;
	content: "";
	background: linear-gradient(to right,  rgba(255,255,255,0) 0%,rgba(255,255,255,0.6) 50%,rgba(255,255,255,0) 100%); 
	background-size: 100% auto;
	width: 100%;
	height: 2px;
	top:0;
	left: 0;
}
.m_title_l .tit::after{
	position: absolute;
	display: block;
	content: "";
	background: linear-gradient(to right,  rgba(255,255,255,0) 0%,rgba(255,255,255,0.6) 50%,rgba(255,255,255,0) 100%); 
	background-size: 100% auto;
	width: 100%;
	height: 2px;
	bottom:0;
	left: 0;
}
.m_title_l p{
	font-size: min(120%,1.3vw);
	letter-spacing: 0.14em;
	line-height: 1.6em;
	max-width: 650px;
}
.m_title_r{
	width: 46%;
	max-width:570px; 
}
.m_img2{
	position: absolute;
	max-width: 699px;
	width: 46.6vw;
	right: 80px;
	bottom: 205px;
	z-index: -1;
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 1690px) {
.m_img2{
	position: absolute;
	width: 41vw;
}
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 1499px) {
.m_img2{
	bottom: 17vw;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.contentpage .m_img_area::before {
	padding-top: 244%;
}
.contentpage .m_img_area {
	background-image: url("../images/benia/m_img1_sp@2x.jpg");
	background-position: center top;
	background-size: 100% auto;
	z-index: 1;
	margin-bottom: 4%;
}
.contentpage .m_img_area::after{
	position: absolute;
	content: "";
	background: linear-gradient(to bottom,  rgba(191,191,191,0) 0%,rgba(191,191,191,0) 10%,rgba(191,191,191,1) 40%,rgba(191,191,191,1) 100%); 
	background-size: 100% 100%;
	width: 100%;
	height: 178vw;
	left: 0;
	bottom: 0;
	z-index: -1;
}
.contentpage .sp_bg{
	position: relative;
	z-index: 2;
}
.contentpage .sp_bg::before{
	position: absolute;
	content: "";
	background: url("../images/benia/sp_bg_abs.png") no-repeat center center;
	background-size: 100% 100%;
	width: 100%;
	height: 100%;
	left: 0;
	bottom: 0;
	z-index: -1;
	padding-top: 244%;
}
.med_special .m_img_area .m_title {
	bottom: 8vw;
	transform: translateY(0);
}
.m_title{
	display: block;
	width: 100%!important;
	text-align: center;
}
.m_title_l{
	width:100%;
	text-align: center;
}
.m_title_l dl{
	width: 93.8vw;
	margin: 0 auto;
	box-sizing: border-box;
}
.m_title_l dl dt,
.m_title_l dl dd{
	padding-left: 3.8vw;	
}
.m_title_l .tit{
	font-size: 5.15vw;
	letter-spacing: 0.1em;
	padding: .5em 0;
	margin: .7em 0 1em;
}
.m_title_l p{
	font-size: 3.3vw;
	text-align: center;
}
.m_title_l .m_title_sp{
	width: 102%;
	margin-left: 50%;
	transform: translateX(-50%);
}
.m_title_l .m_img_sp{
	width: 93.2%;
	margin: -1% auto 2.5vw;
}
.m_title_r{
	width: 100%;
}
}


/*共通
---------------------------------------------------------*/
.med_col_list.col2 dd{
	font-size: 100%;
	letter-spacing: .12em;
	line-height: 2em;
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.med_col_list.col2 dd{
	font-size: 15px;
    letter-spacing: .05em;
    line-height: 1.8em;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.med_col_list.col2 dd{
	font-size: 4.0vw;
    letter-spacing: normal;
    line-height: 1.8em;
}
}


/*sec01
---------------------------------------------------------*/
#sec01 .bg{
	background: #366083;
	padding: 100px 0 140px;
	position: relative;
	z-index: 1;
	margin-bottom: 140px;
}
#sec01 .bg::before{
	position: absolute;
	content: "";
	background: url("../images/benia/point_bg.png") no-repeat center top;
	background-size: 100% 100%;
	width: 100%;
	height: 100%;
	left: 0;
	right: 0;
	margin: auto;
	top:0;
	z-index: -1;
}
#sec01 .bg::after{
	position: absolute;
	content: "";
	background: url("../images/benia/point_bg_abs@2x.png") no-repeat center top;
	background-size: 100% auto;
	width: 100vw;
	height: 86.6667vw;
	left: 0;
	right: 0;
	margin: auto;
	top:210px;
	z-index: -2;
}
#sec01 .tit{
	max-width: 778px;
	width: 78%;
	margin: 0 auto 30px;
	text-align: center;
}
#sec01 .white{
	color: #fff;
}
#sec01 .point_list{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
#sec01 .point_list > li{
	max-width: 410px;
	width: 32%;
	margin-top: 65px;
	background-color: #0b345b;
	position: relative;
	z-index: 1;
	padding: 80px 2% 50px;
	box-sizing: border-box;
	border-radius: 20px;
}
#sec01 .point_list > li .inbox{
	max-width: 345px;
	margin: 0 auto;
}
#sec01 .point_list > li:first-child{
	max-width: 100%;
	width: 100%;
	margin-top: 0;
	padding: 90px 5% 70px;
}
#sec01 .point_list > li:first-child .inbox{
	max-width: 1150px;
	margin: 0 auto;
}
#sec01 .point_list > li .no{
	position: absolute;
	content: "";
	font-size: 581.25%;
	letter-spacing: 0.15em;
	line-height: 1em;
	text-align: center;
	color: #f7ffdb;
	left: 0;
	right: 0;
	margin: auto;
	top:0;
	transform: translateY(-40%);
	z-index: 2;
}
#sec01 .point_list > li h4{
	font-size: min(215%,2.55vw);
	letter-spacing: 0.1em;
	line-height: 1.5em;
	text-align: center;
	margin-bottom: 1em;
}
#sec01 .point_list > li h4 span{
	font-size: 94%;
	letter-spacing: 0.1em;
	line-height: 1.5em;
	display: block;
}
#sec01 .point_list > li .flt_box .img_r{
	float: right;
	max-width: 440px;
	width: 39%;
}
#sec01 .point_list > li .flt_box .txt_l{
	float: left;
	width: 57%;
}
#sec01 .point_list > li .img{
	max-width: 343px;
	margin: 0 auto 1em;
}
#sec01 .point_list > li .profile{
	background-color: #fff;
	padding: 50px 4%;
	border-radius: 10px;
}
#sec01 .point_list > li .profile .flt_box{
	max-width: 1020px;
	margin: 0 auto;
}
#sec01 .point_list > li .profile .flt_box .img_l{
	max-width: 220px;
	width: 22%;
	float: left;
}
#sec01 .point_list > li .profile .flt_box .txt_r{
	max-width: 750px;
	width: 74%;
	float: right;
}
#sec01 .point_list > li .profile .flt_box .txt_r .name{
	color: #0b345b;
	letter-spacing: 0.15em;
	line-height: 1em;
	margin-bottom: 2em;
	display: flex;
	align-items: center;
}
#sec01 .point_list > li .profile .flt_box .txt_r .name dd{
	font-size:188%;
	letter-spacing: 0.15em;
	line-height: 1em;
	margin-left: 1em;
}
#sec01 .point_list > li .profile .reki{
	background-color: #f6f6f6;
	padding: 2em 4%;
}
#sec01 .point_list > li .profile .reki dl{
	max-width: 680px;
	margin: 0 auto;
}
#sec01 .point_list > li .profile .reki dl dt{
	font-size: 113%;
	letter-spacing: 0.1em;
	line-height: 1em;
	color: #0b345b;
	margin-bottom: 1.4em;
}
#sec01 .point_list > li .profile .reki dl dd{
	font-size: 95%;
	letter-spacing: 0.15em;
	line-height: 2em;
	padding-left: 0.4em;
	box-sizing: border-box;
}
#sec01 .point_list > li .profile .reki dl dd li{
	display: flex;
	padding-left: 1.5em;
	box-sizing: border-box;
	position: relative;
}
#sec01 .point_list > li .profile .reki dl dd li::before{
	position: absolute;
	content: "";
	background: rgba(11,52,91,0.5);
	width: 0.67em;
	height: 0.67em;
	border-radius: 0.67em;
	left: 0;
	top:0.63em;
}
#sec01 .point_list > li .profile .reki dl dd li > p:first-of-type{
	width: 5em;
}
#sec01 .point_list > li .profile .reki dl dd li > p:last-of-type{
	width:calc(100% - 5em);
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
#sec01 .bg{
	padding: 8vw 0 12%;
	margin-bottom: 12%;
}
#sec01 .bg::after{
	top:17.5vw;
}
#sec01 .tit{
	margin: 0 auto 2vw;
}
#sec01 .point_list > li{
	margin-top: 5vw;
	padding: 7vw 2% 4vw;
	border-radius: 2vw;
}
#sec01 .point_list > li:first-child{
	padding: 8vw 5% 6vw;
}
#sec01 .point_list > li .no{
	font-size: 8vw;
}
#sec01 .point_list > li h4{
	font-size: min(215%,2.65vw);
	letter-spacing: 0.05em;
}
#sec01 .point_list > li .flt_box .img_r{
	margin-left: 4%;
	margin-bottom: 1em;
}
#sec01 .point_list > li .flt_box .txt_l{
	float: none;
	width: 100%;
}
#sec01 .point_list > li .profile{
	padding: 5% 4%;
	border-radius: 1vw;
}

#sec01 .point_list > li .profile .flt_box .img_l{
	max-width: 220px;
	width: 22%;
	float: left;
}
#sec01 .point_list > li .profile .flt_box .txt_r{
	max-width: 750px;
	width: 74%;
	float: right;
}
#sec01 .point_list > li .profile .flt_box .txt_r .name{
	font-size: 90%;
}

#sec01 .point_list > li .profile .reki{
	padding: 1.5em 4%;
}
#sec01 .point_list > li .profile .reki dl dt{
	margin-bottom: 1em;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#sec01 .bg{
	background: #366083;
	padding: 10vw 0 14vw;
	position: relative;
	z-index: 1;
	margin-bottom: 14vw;
}
#sec01 .bg::after{
	top:22vw;
}
#sec01 .tit{
	width: 100%;
	margin: 0 auto 3vw;
}
#sec01 .white{
	color: #fff;
}
#sec01 .point_list{
    display: block;
}
#sec01 .point_list > li{
	max-width: 100%;
	width: 100%;
	margin-top: 7vw;
	background-color: #0b345b;
	position: relative;
	z-index: 1;
	padding: 14vw 5% 6vw;
	box-sizing: border-box;
	border-radius: 20px;
}
#sec01 .point_list > li .inbox{
	max-width: 100%;
}
#sec01 .point_list > li:first-child{
	padding: 12vw 5% 6vw;
}
#sec01 .point_list > li:first-child .inbox{
	max-width: 100%;
}
#sec01 .point_list > li .no{
	font-size: 420%;
}
#sec01 .point_list > li h4{
	font-size: 130%;
	letter-spacing: normal;
}
#sec01 .point_list > li h4 span{
	letter-spacing: normal;
}
#sec01 .point_list > li .flt_box .img_r{
	float: none;
	width: 100%;
	margin-bottom: 1em;
}
#sec01 .point_list > li .flt_box .txt_l{
	float: none;
	width: 100%;
}
#sec01 .point_list li .img{
	width: 78%;
}
#sec01 .point_list > li .profile{
	padding: 7% 5% 6%;
	border-radius: 1vw
}
#sec01 .point_list > li .profile .flt_box{
	max-width: 100%;
}
#sec01 .point_list > li .profile .flt_box .img_l{
	width: 60%;
	float: none;
	margin: 0 auto 6%;
	text-align: center;
}
#sec01 .point_list > li .profile .flt_box .txt_r{
	max-width: 100%;
	width: 100%;
	float: none;
}
#sec01 .point_list > li .profile .flt_box .txt_r .name{
	letter-spacing: 0.1em;
	margin-bottom: 6%;
	font-size: 90%;
	justify-content: center;
}
#sec01 .point_list > li .profile .flt_box .txt_r .name dd{
	font-size:160%;
}
#sec01 .point_list > li .profile .reki{
	padding:6% 5%;
}
#sec01 .point_list > li .profile .reki dl{
	max-width: 100%;
}
#sec01 .point_list > li .profile .reki dl dt{
	font-size: 100%;
	margin-bottom: 0.8em;
}
#sec01 .point_list > li .profile .reki dl dd{
	font-size: 83%;
	letter-spacing: normal;
	padding-left: 0;
}
#sec01 .point_list > li .profile .reki dl dd li{
	padding-left: 1.2em;
}
#sec01 .point_list > li .profile .reki dl dd li > p:first-of-type{
	width: 3.8em;
}
#sec01 .point_list > li .profile .reki dl dd li > p:last-of-type{
	width:calc(100% - 3.8em);
}
}


/*sec02
---------------------------------------------------------*/
#sec02 .med_bg_box dt{
	font-size: min(160%,2.2vw);
	letter-spacing: 0.13em;
	line-height: 1.5em;
	text-align: center;
	margin-bottom: .5em;
	color: #073b66;
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
#sec02 .med_bg_box dt {
    font-size: 2.3vw;
    letter-spacing: 0.1em;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#sec02 .med_bg_box dt {
    font-size: 120%;
    letter-spacing: 0.01em;
    margin-bottom: .3em;
}
}


/*sec04
---------------------------------------------------------*/
#sec04 .med_col_list.col3{
	display: flex;
	justify-content: center;
    flex-wrap: wrap;
}
#sec04 .med_col_list.col3 li{
	width: 31.78294574%;
	margin-right: 2.32448139%;
	padding-left: 1.5%;
	padding-right: 1.5%;
	background-color: #eef1f4;
}
#sec04 .med_col_list.col3 li:nth-child(3n),
#sec04 .med_col_list.col3 li:last-child{
	margin-right: 0;
}
#sec04 .med_col_list.col3 .icon{
	max-width: 128px;
	width: 40%;
	margin: 0 auto 1em;
	text-align: center;
}
#sec04 .med_col_list.col3 dl{
	display: block;
}
#sec04 .med_col_list.col3 dt{
	display: block;
	padding-bottom: 1em;
}
#sec04 .med_col_list.col3 dt::before{
	position: static!important;
	background: none!important;
	width: 0;
	height: 0;
}
#sec04 .med_col_list.col3 dd{
	font-size: 100%;
	letter-spacing: .12em;
	line-height: 2em;
}
/* PC,Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) {
#sec04 .med_col_list.col3 dd {
	max-width: 344px;
}
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
#sec04 .med_col_list.col3 dd{
	font-size: 15px;
    letter-spacing: .05em;
    line-height: 1.8em;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#sec04 .med_col_list.col3{
	display: block;
}
#sec04 .med_col_list.col3 li{
	width: 100%;
	margin-right: 0%;
	padding-left: 5.2%;
	padding-right: 5.2%;
}
#sec04 .med_col_list.col3 dl{
	display: block;
}
#sec04 .med_col_list.col3 dt{
	margin-bottom: 0;
}
#sec04 .med_col_list.col3 dd{
	font-size: 4.0vw;
    letter-spacing: normal;
    line-height: 1.8em;
}
}


/*sec08
---------------------------------------------------------*/
#sec08 .fukidashi{
	font-size: min(125%,1.9vw);
	letter-spacing: 0.15em;
	line-height: 1.6em;
	color: #073b66;
	text-align: center;
	position: relative;
}
#sec08 .fukidashi::before{
	position: absolute;
	content: "";
	background: #073b66;
	width: 1px;
	height: 3.5em;
	right: calc(50% + 24em);
	top:0.5em;
	transform: rotate(-35deg); 
}
#sec08 .fukidashi::after{
	position: absolute;
	content: "";
	background: #073b66;
	width: 1px;
	height: 3.5em;
	left: calc(50% + 24em);
	top:0.5em;
	transform: rotate(35deg); 
}
#sec08 .fukidashi dt{
	font-size: 125%;
	letter-spacing: 0.15em;
	line-height: 1.8em;
	margin-bottom: 0.2em;
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
#sec08 .fukidashi{
	font-size: 100%;
	letter-spacing: 0.1em;
}
#sec08 .fukidashi::before{
	right: calc(50% + 23em); 
}
#sec08 .fukidashi::after{
	left: calc(50% + 23em);
}
#sec08 .fukidashi dt{
	letter-spacing: 0.1em;
}
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#sec08 .fukidashi{
	font-size: 90%;
	letter-spacing: 0.05em;
}
#sec08 .fukidashi::before{
	height: 5.5em;
	right: calc(50% + 11.3em); 
	top:1em;
	transform: rotate(-20deg); 
}
#sec08 .fukidashi::after{
	height: 5.5em;
	left: calc(50% + 11.3em);
	top:1em;
	transform: rotate(20deg); 
}
#sec08 .fukidashi dt{
	letter-spacing: 0.05em;
	line-height: 1.5em;
}
}


/*sec09
---------------------------------------------------------*/
#sec09 .med_col_list.col2 .img{
	max-width: 212px;
	width: 40%;
	margin: 2em auto 0;
	text-align: center;
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#sec09 .med_col_list.col2 .img{
	width: 50%;
	margin: 5.5% auto 0;
}
}


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

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

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

}


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

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

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

}


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

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

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

}


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

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

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

}


/*sec10
---------------------------------------------------------*/
#sec10 .med_point2 .point_title2 {
  font-size: min(2.6vw,157%);
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
}
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#sec10 .med_point2 .point_title2 {
  font-size: 120%;
}
}


/*sec11
---------------------------------------------------------*/
#sec11 .med_consul{
	padding-bottom: 0;
	border-bottom: none;
}
#sec11 .med_consul .w1140{
	width: 100%;
	padding: 0;
}
#sec11 .med_consul .box1::before {
	background-image: url("../images/benia/consulting_img1@2x.jpg");
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {

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

}