@charset "UTF-8";

/* メインイメージ
---------------------------------------------------------*/
.contentpage .m_img_area .m_abs {
  bottom: -17px;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
.contentpage .m_img_area .m_abs{
    bottom: -3.95vw;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
.contentpage .m_img_area .m_abs{
    bottom: -10.78vw;
}
}


/* com_ank_list
---------------------------------------------------------*/

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
.com_ank_list{
	display: block;
}
.com_ank_list li{
	width: 100%;
	margin-top: 5%!important;
}
.com_ank_list li:first-child{
	margin-top: 0!important;
}
}



/* friendly
---------------------------------------------------------*/
#friendly .bg{
	background-color: #f68193;
	padding: 170px 0 255px;
	position: relative;
	z-index: 1;
	color: #fff;
}
#friendly .bg::before{
	position: absolute;
	content: "";
	background: url("../images/cat/bg_abs@2x.png") no-repeat center bottom;
	background-size: 100% auto;
	width: 100vw;
	height: 5.6666667vw;
	left: 0;
	right: 0;
	margin: auto;
	bottom: 0;
}
#friendly .bg::after{
	position: absolute;
	content: "";
	background: url("../images/cat/friendly_abs@2x.png") no-repeat left top;
	background-size: 100% auto;
	width: 203px;
	height: 130px;
	right: calc(50% + 470px);
	top:0;
	transform: translateY(-23.9%);
	z-index: 2;
}
#friendly .flt_box .img_r{
	max-width: 590px;
	width: 49.2%;
	float: right;
}
#friendly .flt_box .txt_l{
	width: 46.8%;
	float: left;
}
#friendly .friendly_tit {
	font-size: min(312%,3.9vw);
	letter-spacing: 0.125em;
	line-height: 1.5em;
	margin-bottom: 0.6em;
}
#friendly .friendly_tit span{
	font-size: 39%;
	letter-spacing: 0.15em;
	line-height: 1em;
	margin-bottom: 1em;
	opacity: 0.4;
	display: block;
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 1499px) {
#friendly .bg::after{
	right: auto;
	left: 5%;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
#friendly .bg{
	background-color: #f68193;
	padding: 15% 0 22%;
	position: relative;
	z-index: 1;
	color: #fff;
}
#friendly .bg::after{
	width: 20.3vw;
	height: 13vw;
}
#friendly .flt_box .img_r{
	margin-left: 4%;
	margin-bottom: 1em;
}
#friendly .flt_box .txt_l{
	width: 100%;
	float: none;
}
#friendly .friendly_tit {
	font-size:280%;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
#friendly .bg{
	padding:16% 0 24%;
}
#friendly .bg::after{
	right: auto;
	left: 5%;
	width: 28.9275vw;
	height: 18.525vw;
	transform: translateY(-29%);
}
#friendly .flt_box .img_r{
	width:80%;
	float: none;
	margin: 0 auto 6vw;
	text-align: center;
}
#friendly .flt_box .txt_l{
	width: 100%;
	float: none;
}
#friendly .friendly_tit {
	font-size: 200%;
	letter-spacing: 0.05em;
	line-height: 1.5em;
	margin-bottom: 0.3em;
	text-align: center;
}
#friendly .friendly_tit span{
	font-size: 40%;
	letter-spacing: 0.1em;
	margin-bottom: 0.5em;
}
}



/* promis
---------------------------------------------------------*/
#promis .bg{
	background: #fffbc8;
	padding: 120px 0 205px;
	position: relative;
	z-index: 1;
}
#promis .bg::before{
	position: absolute;
	content: "";
	background: linear-gradient(to bottom,  rgba(255,255,255,0) 0%,rgba(255,255,255,0) 9.4%,rgba(255,255,255,1) 80%,rgba(255,255,255,1) 100%);
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: 100% 100%;
	width: 100%;
	max-height: 535px;
	height: 35.6667vw;
	left: 0;
	right: 0;
	margin: auto;
	bottom: 0;
	z-index: -2;
}
#promis .bg::after{
	position: absolute;
	content: "";
	background: url("../images/cat/mimi@2x.png") no-repeat center bottom;
	background-size: 100% auto;
	max-width: 990px;
	width: 66vw;
	max-height:85px;
	height: 5.66667vw;
	left: 0;
	right: 0;
	margin: auto;
	bottom: 0;
	z-index: -1;
}
#promis .bg .promis_tit{
	max-width: 1280px;
	width: 100%;
	margin: 0 auto 90px;
	position: relative;
	z-index: 1;
}
#promis .bg .promis_tit::before{
	position: absolute;
	content: "";
	background: url("../images/cat/promis_abs_l@2x.png") no-repeat left bottom;
	background-size: 100% auto;
	max-width: 345px;
	width: 30%;
	height: 232px;
	left: -3%;
	bottom: 14px;
	z-index: -1;
}
#promis .bg .promis_tit::after{
	position: absolute;
	content: "";
	background: url("../images/cat/promis_abs_r@2x.png") no-repeat right bottom;
	background-size: 100% auto;
	max-width: 345px;
	width: 30%;
	height: 91px;
	right: -4%;
	bottom: 12px;
	z-index: -1;
}
#promis .bg .promis_tit h4{
	max-width: 602px;
	width: 56%;
	margin: 0 auto;
	transform: translateX(5%);
	text-align: center;
}
#promis .promis_list > li{
	margin-top: 80px;
	position: relative;
	z-index: 1;
}
#promis .promis_list > li:first-child{
	margin-top: 0;
}
#promis .promis_list > li::before,
#promis .promis_list > li::after{
	position: absolute;
	content: "";
	background-size: 100% auto;
	background-repeat: no-repeat;
}
#promis .promis_list > li:nth-child(1)::before{
	background-image: url("../images/cat/promis_bg_abs1@2x.png") ;
	background-position: right center;
	max-width: 638px;
	width: 42.5334vw;
	max-height: 479px;
	height: 31.9334vw;
	top:39%;
	transform: translateY(-50%);
	right: -28%;
	z-index: -1;
}
#promis .promis_list > li:nth-child(1)::after{
	background-image: url("../images/cat/promis_bg_abs2@2x.png") ;
	background-position: left bottom;
	max-width: 400px;
	width: 26.666667vw;
	max-height: 300px;
	height: 20vw;
	bottom:0%;
	transform: translateY(64%);
	left: -16%;
	z-index: -1;
}
#promis .promis_list > li:nth-child(2)::before{
	background-image: url("../images/cat/promis_bg_abs3@2x.png") ;
	background-position: right bottom;
	max-width: 400px;
	width: 26.666667vw;
	max-height: 300px;
	height: 20vw;
	bottom:0%;
	transform: translateY(71%);
	right: -17%;
	z-index: -1;
}
#promis .promis_list > li:nth-child(3)::before{
	background-image: url("../images/cat/promis_bg_abs4@2x.png") ;
	background-position:left bottom;
	max-width: 638px;
	width: 42.5334vw;
	max-height: 479px;
	height: 31.9334vw;
	bottom:0%;
	transform: translateY(68%);
	left: -25%;
	z-index: -1;
}
#promis .promis_list > li .flx_box{
	max-width: 1220px;
	margin-left: auto;
	margin-right: auto;
    display: flex;
    justify-content: space-between;
	align-items: center;
	
}
#promis .promis_list > li .flx_box .img_l,
#promis .promis_list > li .flx_box .img_r{
	max-width: 580px;
	width: 47.541%;
}
#promis .promis_list > li .flx_box .txt_l,
#promis .promis_list > li .flx_box .txt_r{
	max-width: 600px;
	width: 49.18033%;
}
#promis .promis_style dt{
	font-size: min(217%,2.6vw);
	letter-spacing: 0.1em;
	line-height: 1.5em;
	padding-left: 2.9em;
	position: relative;
	padding-bottom: 0.9em;
	margin-bottom: 0.9em;
	z-index: 1;
}
#promis .promis_style dt::before{
	position: absolute;
	content: "";
	background-repeat: no-repeat;
	background-position: left top;
	background-size: 100% 100%;
	width: 2.4em;
	height: 3.142857143em;
	left: 0;
	top:-0.25em;
}
#promis .promis_list > li:nth-child(1) .promis_style dt::before{
	background-image: url("../images/cat/promis01.svg");
}
#promis .promis_list > li:nth-child(2) .promis_style dt::before{
	background-image: url("../images/cat/promis02.svg");
}
#promis .promis_list > li:nth-child(3) .promis_style dt::before{
	background-image: url("../images/cat/promis03.svg");
}
#promis .promis_list > li:nth-child(4) .promis_style dt::before{
	background-image: url("../images/cat/promis04.svg");
}
#promis .promis_style dt::after{
	position: absolute;
	content: "";
	background: url("../images/cat/dotted_line@2x.png") no-repeat left bottom;
	background-size: auto 100%;
	width: 100%;
	height: 2px;
	bottom: 0;
	left: 0;
}
#promis .pick_up_point{
	background-color: #fff;
	padding: 60px 3%;
	box-sizing: border-box;
	border-radius: 30px;
	margin-top: 60px;
}
#promis .pick_up_point .inbox{
	max-width: 1080px;
	margin: 0 auto;
}
#promis .pick_up_point h5{
	font-size: min(131%,2vw);
	letter-spacing: 0.1em;
	line-height: 1.65em;
	text-align: center;
	color: #fff;
	font-weight: bold;
	padding: 1em;
	border-radius: 1.8em;
	background-color: #f58220;
	position: relative;
	z-index: 1;
	max-width: 32.3334em;
	box-sizing: border-box;
	margin: 0 auto 1.6em;
}
#promis .pick_up_point h5::before{
	position: absolute;
	content: "";
	background: url("../images/cat/pick_up_point@2x.png") no-repeat center top;
	background-size: 100% auto;
	width: 8em;
	height: 2.142857143em;
	left: 0;
	right: 0;
	margin: auto;
	top:0;
	transform: translateY(-63%);
	z-index: 2;
}
#promis .pick_up_point h5::after{
	position: absolute;
	content: "";
	background: url("../images/cat/pick_up_point_arrow.svg") no-repeat center bottom;
	background-size: 100% auto;
	width: 0.81em;
	height: 0.81em;
	left: 0;
	right: 0;
	margin: auto;
	top:99%;
	z-index: -1;
}
#promis .pick_up_point ul{
	display: flex;
	justify-content: space-between;
}
#promis .pick_up_point ul li{
	max-width: 330px;
	width: 32%;
}
#promis .pick_up_point ul li div{
	max-width: 330px;
	margin: 0 auto 30px;
	text-align: center;
}
#promis .pick_up_point ul li dt{
	font-size: min(143.75%,1.9vw);
	letter-spacing: 0.1em;
	line-height: 1.6em;
	text-align: center;
	margin-bottom: 0.5em;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 1400px) { 
#promis .bg .promis_tit::before{
	bottom: 1vw;
}
#promis .bg .promis_tit::after{
	bottom: 0.86vw;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
#promis .bg{
	padding: 10% 0 18%;
}
#promis .bg .promis_tit{
	margin: 0 auto 7%;
}
#promis .promis_list > li{
	margin-top: 7%;
}
#promis .promis_list > li:nth-child(1)::before{
	top:34%;
	right: -20%;
}
#promis .promis_list > li:nth-child(1)::after{
	left: -8%;
}
#promis .promis_list > li:nth-child(2)::before{
	right: -9%;
}
#promis .promis_list > li:nth-child(3)::before{
	left: -17%;
}
#promis .promis_style dt{
	font-size: min(217%,2.75vw);
	letter-spacing: 0.03em;
	padding-bottom: 0.75em;
	margin-bottom: 0.8em;
}
#promis .pick_up_point{
	padding: 5% 3%;
	border-radius: 3vw;
	margin-top: 5%;
}
#promis .pick_up_point ul li div{
	margin: 0 auto 2.5vw;
}
#promis .pick_up_point ul li dt{
	font-size: min(143.75%,2vw);
	letter-spacing: 0.05em;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
#promis .bg{
	padding: 28% 0 20%;
}
#promis .bg::before{
	height: 50vw;
}
#promis .bg::after{
	width: 85.8vw;
	height: 7.36671vw;
}
#promis .bg .promis_tit{
	margin: 0 auto 10%;
}
#promis .bg .promis_tit::before{
	background-position: left top;
	width: 46%;
	left: 3vw;
	bottom: auto;
	top:-26vw;
}
#promis .bg .promis_tit::after{
	background-position: right top;
	width: 46%;
	right: 3vw;
	bottom: auto;
	top:-14vw;
}
#promis .bg .promis_tit h4{
	width: 84%;
}
#promis .promis_list > li{
	margin-top: 10%;
}
#promis .promis_list > li:nth-child(1)::before{
	width: 63.8vw;
	height: 47.9vw;
	top:85vw;
	transform: translateY(0);
	right: -18%;
}
#promis .promis_list > li:nth-child(1)::after{
	width: 40vw;
	height: 30vw;
	left: -6%;
	z-index: -1;
}
#promis .promis_list > li:nth-child(2)::before{
	width: 40vw;
	height: 30vw;
	right: -7%;
}
#promis .promis_list > li:nth-child(3)::before{
	width: 63.8vw;
	height: 47.9vw;
	left: -15%;
}
#promis .promis_list > li .flx_box{
	max-width: 1220px;
	margin-left: auto;
	margin-right: auto;
    display: block;
}
#promis .promis_list > li:nth-child(even) .flx_box{
	display: flex;
	align-items: flex-start;
    flex-direction: column-reverse;
}
#promis .promis_list > li .flx_box .img_l,
#promis .promis_list > li .flx_box .img_r{
	width: 80%;
	margin: 0 auto 5vw;
	text-align: center;
}
#promis .promis_list > li .flx_box .txt_l,
#promis .promis_list > li .flx_box .txt_r{
	max-width: 100%;
	width: 100%;
}
#promis .promis_style dt{
	font-size: 130%;
	letter-spacing: 0.03em;
	padding-bottom: 0.65em;
	margin-bottom: 0.7em;
}
#promis .pick_up_point{
	padding: 12% 5% 8%;
	border-radius: 6vw;
	margin-top: 8%;
}
#promis .pick_up_point h5{
	font-size: 120%;
	letter-spacing: 0.05em;
	line-height: 1.5em;
	padding: 0.8em;
	border-radius: 2.3em;
	margin: 0 auto 10%;
}
#promis .pick_up_point ul{
	display: block;
}
#promis .pick_up_point ul li{
	max-width: 100%;
	width: 100%;
	margin-top: 8%;
}
#promis .pick_up_point ul li:first-child{
	margin-top: 0;
}
#promis .pick_up_point ul li div{
	width: 70%;
	margin: 0 auto 4vw;
}
#promis .pick_up_point ul li dt{
	font-size: 125%;
	letter-spacing: 0.05em;
	line-height: 1.5em;
	margin-bottom: 0.4em;
}
}



/* stressles
---------------------------------------------------------*/
#stressles .bg{
	padding: 120px 0;
	background-color: #f7f7ed;
	position: relative;
	z-index: 1;
}
#stressles .stressles_tit{
	font-size: min(217%,3.2vw);
	letter-spacing: 0.15em;
	line-height: 1.5em;
	text-align: center;
	margin-bottom: 70px;
}
#stressles .stressles_list{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
#stressles .stressles_list li{
	max-width: 600px;
	width: 49.2%;
	background-color: #fff;
	padding: 60px 3%;
	box-sizing: border-box;
	box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.1);
	margin-top: 1.6%;
}
#stressles .stressles_list li:nth-child(-n + 2){
	margin-top: 0;
}
#stressles .stressles_list li .inbox{
	max-width: 480px;
	margin: 0 auto;
}
#stressles .stressles_list li .img{
	max-width: 480px;
	margin: 0 auto 30px;
	text-align: center;
}
#stressles .stressles_list li:nth-child(1) .img,
#stressles .stressles_list li:nth-child(4) .img{
	position: relative;
	z-index: 1;
}
#stressles .stressles_list li:nth-child(1) .img::before,
#stressles .stressles_list li:nth-child(4) .img::before{
	position: absolute;
	content: "";
	background-image: url("../images/cat/stressless_abs@2x.png");
	background-repeat: no-repeat;
	background-size: 100% auto;
	max-width: 144px;
	width: 30%;
	height: 110px;
	z-index: 2;
}
#stressles .stressles_list li:nth-child(1) .img::before{
	left: 0;
	top:0;
	transform: translate(-30%,-30%)
}
#stressles .stressles_list li:nth-child(4) .img::before{
	right: 0;
	top:0;
	transform: translate(30%,-30%)
}
#stressles .stressles_list li .txt dt{
	font-size: min(162%,2.25vw);
	letter-spacing: 0.1em;
	line-height: 1.6em;
	text-align: center;
	margin-bottom: 0.5em;	
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
#stressles .bg{
	padding: 11% 0;
}
#stressles .stressles_tit{
	letter-spacing: 0.1em;
	margin-bottom: 6%;
}
#stressles .stressles_list li{
	padding: 5% 3%;
}
#stressles .stressles_list li .img{
	margin: 0 auto 2.5vw;
}
#stressles .stressles_list li .txt dt{
	font-size: min(162%,2.35vw);
	letter-spacing: 0.05em;	
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) { 
#stressles .bg{
	padding: 14% 0;
}
#stressles .stressles_tit{
	font-size: 150%;
	letter-spacing: 0.05em;
	margin-bottom: 10%;
}
#stressles .stressles_list{
    display: block;
}
#stressles .stressles_list li{
	max-width: 100%;
	width: 100%;
	padding: 8% 5%;
	margin-top: 3%!important;
}
#stressles .stressles_list li:nth-child(-n + 1){
	margin-top: 0!important;
}
#stressles .stressles_list li .inbox{
	max-width: 100%;
}
#stressles .stressles_list li .img{
	width: 80%;
    margin: 0 auto 4vw;
}
#stressles .stressles_list li .txt dt{
	font-size: 130%;
	letter-spacing: 0.05em;
	line-height: 1.5em;
    margin-bottom: 0.4em;	
}
}



/* flow
---------------------------------------------------------*/
#flow .bg{
    position: relative;
    background: #79ccdc;
    padding: 120px 0;
	z-index: 1;
}
#flow .bg::before{
    position: absolute;
    display: block;
    content: "";
    background: #47b9cf;
    background-size: 100% auto;
    width: 100%;
    height: 435px;
    top:0;
    left: 0;
	z-index: -1;
}
#flow .flow_tit{
	font-size: min(225%,3.2vw);
    letter-spacing:0.07em;
    line-height: 1.6em;
	text-align: center;
    color: #fff;
    margin-bottom: 70px;
}
#flow .flow_list > li{
    position: relative;
    background: #fff;
    padding: 60px 5%;
    box-sizing: border-box;
    margin-bottom: 50px;
    border-radius: 20px;
}
#flow .flow_list > li:last-child{
    margin-bottom: 0;
}
#flow .flow_list > li::before{
    position: absolute;
    display: block;
    content: "";
    background: url("../images/first/abs02.svg")no-repeat top center;
    background-size: 100% auto;
    width: 70px;
    height: 33px;
    top:100%;
    left: 0;
    right: 0;
    margin: 0 auto;
}
#flow .flow_list > li:last-child::before{
    display: none;
}
#flow .flow_list > li .flexbox{
    display: flex;
    justify-content: space-between;
}
#flow .flow_list > li .flexbox .flex_l{
    width: 41.5%;
    max-width: 450px;
}
#flow .flow_list > li .flexbox .flex_r{
    width: 53.5%;
}
#flow .flow_list > li .flexbox .flex_r > dl{
    display: flex;
    justify-content: space-between;
    align-items: center;	
    margin-bottom:30px;
}
#flow .flow_list  > li .flexbox .flex_r > dl dt{
    position: relative;
    width: 6.5rem;
    font-size: min(540%,8vw);
    color: #47b9cf;
    line-height: 1em;
    letter-spacing: normal;
    margin-left: -0.5rem;
    text-align: center;
}
#flow .flow_list > li .flexbox .flex_r > dl dt::before{
    position: absolute;
    display: block;
    content: "";
    background: url("../images/first/abs03.svg")no-repeat bottom center;
    background-size: 100% auto;
    width: 65%;
    height: 38px;
    bottom: -0.5rem;
    left: 0;
    right: 0;
    margin: 0 auto;
}
#flow .flow_list > li .flexbox .flex_r > dl dt span{
    color: #dbe0e0;
}
#flow .flow_list > li .flexbox .flex_r > dl dd{
    width: calc(100% - 6.5rem);
    border-bottom: 1px solid #47b9cf;
    font-size: min(225%,3.2vw);
    letter-spacing: 0.1em;
    line-height: 1.6em;
    padding-bottom: .5em;
    padding-left: .6em;
    box-sizing: border-box;
}
#flow .flow_list .contact {
	max-width: 540px;
	display: flex;
    justify-content: space-between;
	margin-top:1.5em;
}
#flow .flow_list .contact li.web {
	width: 44.4445%;
	max-width: 240px;
}
#flow .flow_list .contact li.tel {
	width: 51.852%;
	max-width: 280px;
	box-sizing: border-box;
	padding: 0 4%;
	background-color: #f68193;
	 display: flex;
    justify-content: center;
    align-items: center;
}
#flow .flow_list .contact li.tel dt {
	color: #FFF;
    font-size: min(1.1vw,80%);
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
#flow .bg{
    padding: 10vw 0;
}
#flow .bg::before{
    height:30vw;
}
#flow .flow_tit{
	margin-bottom: 4vw;
}
#flow .flow_list > li{
    padding: 3.5vw 3.5% 4vw;
    margin-bottom: 5vw;
    border-radius: 15px;
}
#flow .flow_list > li::before{
    width: 6vw;
}
#flow .flow_list > li .flexbox .flex_l{
    width: 40%;
}
#flow .flow_list > li .flexbox .flex_r{
    width: 56%;
}
#flow .flow_list > li .flexbox .flex_r > dl{
    margin-bottom: 3vw;
}
#flow .flow_list > li .flexbox .flex_r > dl dt{
    width: 5rem;
}
#flow .flow_list > li .flexbox .flex_r > dl dd{
    width: calc(100% - 5rem);
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) {
#flow .bg{
    padding: 12vw 0;
}
#flow .bg::before{
    height:50vw;
}
#flow .flow_tit{
	font-size: 140%;
    letter-spacing:0.07em;
    line-height: 1.6em;
	margin-bottom: 5vw;
}
#flow .flow_list > li{
    padding:9vw 5%;
    margin-bottom: 8vw;
    border-radius: 15px;
}
#flow .flow_list > li::before{
    width: 10vw;
}
#flow .flow_list > li .flexbox{
    display: block;
}
#flow .flow_list > li .flexbox .flex_l{
    width: 80%;
    margin: 0 auto 4%;
}
#flow .flow_list > li .flexbox .flex_r{
    width: 100%;
}
#flow .flow_list > li .flexbox .flex_r > dl{	
    margin-bottom:5%;
}
#flow .flow_list > li .flexbox .flex_r > dl dt{
    width: 6rem;
    font-size: 320%;
}
#flow .flow_list > li .flexbox .flex_r > dl dd{
    width: calc(100% - 6rem);
    font-size: 120%;
    padding-bottom: .5em;
    padding-left: .2em;
}
#flow .flow_list .contact {
	max-width: 100%;
	display: block;
	margin-top:5%;
}
#flow .flow_list .contact li.web {
	width: 86%;
    margin: 0 auto;
}
#flow .flow_list .contact li.tel {
	width: 100%;
	padding:6% 5%;
	margin: 5% auto 0;
}
#flow .flow_list .contact li.tel dt {
   font-size: min(4vw,13px);
}
}



/* other
---------------------------------------------------------*/
#other .bg{
	padding: 120px 0;
}
#other .flx_box{
    display: flex;
    justify-content: space-between;
}
#other .flx_box .bnr_first{
	max-width: 300px;
	width: 28.44%;
	margin-top: 88px;
}
#other .flx_box .wp_blog{
	max-width: 675px;
	width: 67.56%;
}
#other .flx_box .wp_blog ul {
	display: flex;
	justify-content: space-between;
}
#other .flx_box .wp_blog ul > li {
	width: 48.5%;
}
#other .flx_box .wp_blog .box_img {
	max-width: 290px;
	width: 100%;
	margin: 0 auto 4%;
}
#other .flx_box .wp_blog dt {
	position: relative;
	background: url("../images/top/wp_line2@2x.png") repeat-x left bottom;
	background-size: 525px auto;
	margin-bottom: 1.5em;
}
#other .flx_box .wp_blog dt .ft_min {
	font-size: min(2.4vw,156%);
	letter-spacing: .15em;
	line-height: 1.5;
	background: url("../images/icon_blog2.svg") no-repeat left .6em top;
	background-size: 1.8em auto;
	padding:  .2em 0 .8em 2.8em;
}
#other .flx_box .wp_blog .com_btn1 {
	position: absolute;
	right: 0;
	top: 10%;
}
#other .flx_box .wp_blog .com_btn1 a {
	color: #FFF;
	background-color: #3aae95;
}
#other .flx_box .wp_blog .com_btn1 span::after {
	color: inherit;
}
#other .flx_box .wp_blog .flex_box dd {
	padding: 0 1em;
}
#other .flx_box .wp_blog .date {
	font-size: 87%;
	letter-spacing: .1em;
	line-height: 1.5;
	margin-bottom: .2em;
}
#other .flx_box .wp_blog .wp_list .title {
	position: relative;
	font-weight: bold;
	line-height: 1.5;
	padding-left: 1em;
	transition: all .4s;
}
#other .flx_box .wp_blog .wp_list .title::before {
	position: absolute;
	font-family: 'fontello';
	content: '\e803';
	color: #81b44d;
	left: 0;
}
#other .link_list{
	display: flex;
	justify-content: space-between;
	max-width: 710px;
	margin: 50px auto 0;
}
#other .link_list li{
	width: 32.4%;
	max-width: 230px;
	background: #fff;
    font-size: min(120%,1.9vw);
    font-weight: bold;
    letter-spacing: 0.15em;
    line-height: 1.6em;
    border:1px solid #9f8664;
    box-sizing: border-box;
    border-radius: 25px;
}
#other .link_list li a{
    position: relative;
    display: block;
    padding: .6em 1.8em;
    box-sizing: border-box;
}
#other .link_list li a::before {
	position: absolute;
	font-family: 'fontello';
	content: '\e802';	
	font-size: 80%;
	top: 50%;
	transform: translateY(-50%);
    right: 1em;
    color: #9f8664;
}
/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 1062px) { 
#other .flx_box .bnr_first{
	margin-top: 8.2784572vw;
}
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) { 
#other .bg{
	padding: 10vw 0;
}
#other .link_list{
	width: 70%;
	margin-top: 5%;
}
#other .link_list li a{
    padding: .5em .8em;
}
}

/* Mobile (Portrait) 
------------------------------------------*/ 
@media only screen and (max-width: 767px) {
#other .bg{
	padding: 12vw 0;
}
#other .flx_box{
    display: block;
}
#other .flx_box .bnr_first{
	width: 100%;
	margin: 0 auto 10%;
}
#other .flx_box .wp_blog{
	max-width: 100%;
	width: 100%;
}
#other .flx_box .wp_blog dt {
	margin-bottom: 1em;
}
#other .flx_box .wp_blog dt .ft_min {
	font-size: 115%;
	letter-spacing: .08em;
	margin-bottom: .8em;
}
#other .flx_box .wp_blog dd {
	padding: 0 .6em;
}
#other .flx_box .wp_blog .wp_list .title {
	font-size: 85%;
}
#other .link_list{
    flex-wrap: wrap;
	margin-top: 8%;
}
#other .link_list li{
	width: 49%;
    font-size: 90%;
    letter-spacing: 0.1em;
    font-feature-settings: "palt";
    line-height: 1.6em;
    border-radius: 25px;
    margin-top: 2%;
}
#other .link_list li:nth-child(-n + 2){
	margin-top: 0;
}
#other .link_list li:last-child{
	margin-left: auto;
	margin-right: auto;
}
#other .link_list li a{
    padding: .6em 1.3em;
}
}



/* med_footer
---------------------------------------------------------*/
.med_footer{
    border-top:none;
}

