@charset "UTF-8";

/* ------------------------------
    alliance
------------------------------ */
.area_title{
	background-color: #960030;
}
.ttl_sec{
	margin-bottom: 50px;
	letter-spacing: -0.02em;
	text-align: center;
	font-style: italic;
	font-weight: 700;
	font-size: 5.0rem;
	color: #960030;
}
@media screen and (max-width: 768px) {
	.ttl_sec{
		margin-bottom: 8%;
		line-height: 1.3;
		font-size: 2.5rem;
	}
}
@media screen and (max-width: 380px) {
	.ttl_sec{
		font-size: 2.3rem;
	}
}

/* ------------------------------
    sec_first
------------------------------ */
.sec_first{
	min-width: 1200px; /*min-width*/
	padding: 60px 0 80px;
	background: url(../img/common/check_bg01.png);
}
.sec_first .ttl_sec{
	margin-bottom: 60px;
}
.sec_first .box_recommend{
	position: relative;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	width: 1200px;
	margin: 0 auto 55px;
	padding: 55px 55px 0;
	background-color: #fff;
	border: 5px solid #960030;
}
.sec_first .box_recommend .ttl_recommend{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	width: 380px;
	height: 44px;
	margin: -22px auto 0;
	line-height: 44px;
	letter-spacing: -0.02em;
	text-align: center;
	font-style: italic;
	font-weight: 700;
	font-size: 2.6rem;
	color: #fff;
	background-color: #960030;
}
.sec_first .box_recommend .items_recommend .box_txt{
	position: relative;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 515px;
	height: 120px;
	background-color: #F4E5EA;
}
.sec_first .box_recommend .items_recommend .box_txt:after{
	position: absolute;
	bottom: -11px;
	left: 0;
	right: 0;
	content: "";
	display: block;
	width: 0;
	height: 0;
	margin: auto;
	border-style: solid;
	border-width: 11px 11px 0 11px;
	border-color: #F4E5EA transparent transparent transparent;
}
.sec_first .box_recommend .items_recommend .box_txt .txt{
	text-align: center;
	line-height: 1.6;
	font-size: 1.8rem;
}
.sec_first .box_recommend .items_recommend .img{
	width: 87px;
	margin: 30px auto 0;
}
.sec_first .txt_lead{
	line-height: 1.57;
	letter-spacing: -0.02em;
	text-align: center;
	font-style: italic;
	font-weight: 700;
	font-size: 2.8rem;
}
@media screen and (max-width: 768px) {
	.sec_first{
		min-width: 0;
		padding: 10% 0;
		background-size: 700px auto;w
	}
	.sec_first .ttl_sec{
		margin-bottom: 10%;
	}
	.sec_first .box_recommend{
		display: block;
		width: auto;
		margin-bottom: 10%;
		padding: 10% 5% 5%;
	}
	.sec_first .box_recommend .ttl_recommend{
		width: 70%;
		height: 30px;
		margin-top: -15px;
		line-height: 30px;
		font-size: 1.5rem;
	}
	.sec_first .box_recommend .items_recommend .box_txt{
		display: block;
		width: auto;
		height: auto;
		padding: 5% 0;
	}
	.sec_first .box_recommend .items_recommend + .items_recommend{
		margin-top: 8%;
	}
	.sec_first .box_recommend .items_recommend .box_txt .txt{
		font-size: 1.5rem;
	}
	.sec_first .box_recommend .items_recommend .img{
		width: 87px;
		margin: 8% auto 0;
	}
	.sec_first .txt_lead{
		margin-bottom: 10%;
		font-size: 1.5rem;
	}
}

/* ------------------------------
    sec_features
------------------------------ */
.sec_features{
	min-width: 1200px; /*min-width*/
	padding: 70px 0 90px;
}
.sec_fc .ttl_sec .small{
	display: block;
	margin-top: 0.8em;
	line-height: 1;
	text-align: center;
	font-size: 2.8rem;
	color: #141414;
}
.sec_fc .txt{
	margin-bottom: 60px;
	line-height: 2;
	text-align: center;
	font-size: 1.6rem;
}
.sec_features .btn_link{
	width: 400px;
}
.sec_fc .btn_link .link_txt{
	line-height: 1.2;
}
@media screen and (max-width: 768px) {
	.sec_features{
		min-width: 0;
		padding: 10% 0;
	}
	.sec_fc .ttl_sec .small{
		font-size: 1.8rem;
	}
	.sec_fc .txt{
		margin-bottom: 8%;
		line-height: 1.8;
		font-size: 1.3rem;
	}
	.sec_features .btn_link{
		width: auto;
	}
}

/* ------------------------------
    sec_company
------------------------------ */
.sec_company{
	min-width: 1200px; /*min-width*/
	padding-bottom: 100px;
}
.sec_company .btn_link{
	width: 640px;
}
@media screen and (max-width: 768px) {
	.sec_company{
		min-width: 0;
		padding-bottom: 10%;
	}
	.sec_company .btn_link{
		width: auto;
	}
}

/* ------------------------------
    sec_merit
------------------------------ */
.sec_merit{
	min-width: 1200px; /*min-width*/
	padding: 75px 0 110px;
	background-color: #960030;
}
.sec_merit .ttl_sec{
	margin-bottom: 115px;
	color: #fff;
}
.box_merit{
	position: relative;
	padding: 0 70px 70px;
	text-align: center;
	border: 1px solid #fff;
	border-top: none;
}
.box_merit + .box_merit{
	margin-top: 115px;
}
.box_merit .ttl_merit{
	position: relative;
	display: inline-block;
	margin: -0.5em 0 65px;
	text-align: center;
	font-style: italic;
	font-weight: 700;
	font-size: 3.4rem;
	color: #fff;
}
.box_merit .ttl_merit .en{
	position: absolute;
	left: 50%;
	bottom: 100%;
	margin-bottom: 10px;
    line-height: 1;
	text-align: center;
	font-family: 'Barlow Semi Condensed', sans-serif;
	font-style: italic;
	font-weight: 500;
	font-size: 2.24rem;
	color: #fff;
	transform: translateX(-50%);
}
.js-ttlbar{
	width: 100%;
	height: 1px;
}
.js-ttlbar .bar01,
.js-ttlbar .bar02{
	position: absolute;
	top: 0;
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background-color: #fff;
	opacity: 1;
}
.js-ttlbar .bar01{
	left: 0;
}
.js-ttlbar .bar02{
	right: 0;
}
.box_merit .txt{
	line-height: 2;
	text-align: center;
	font-size: 1.6rem;
	color: #fff;
}
.box_merit .txt + .txt{
	margin-top: 1.5em;
}
@media screen and (max-width: 768px) {
	.sec_merit{
		min-width: 0;
		padding: 10% 0;
	}
	.sec_merit .ttl_sec{
		margin-bottom: 20%;
	}
	.box_merit{
		padding: 0 5% 8%;
	}
	.box_merit + .box_merit{
		margin-top: 20%;
	}
	.box_merit .ttl_merit{
		margin-bottom: 1em;
		line-height: 1.3;
		text-align: center;
		font-size: 1.8rem;
	}
	.box_merit .ttl_merit .en{
		font-size: 1.6rem;
	}
	.box_merit .txt{
		line-height: 1.8;
		font-size: 1.3rem;
	}
}

/* ------------------------------
    sec_form
------------------------------ */
.sec_form{
	min-width: 1200px; /*min-width*/
	padding: 75px 0 70px;
	background-color: #FAFAFA;
}
.sec_form .ttl_sec{
	margin-bottom: 50px;
	color: #141414;
}
.sec_form .box_tel{
	width: 420px;
	margin: 0 auto 45px;
}
.sec_form .box_tel .ico_tel{
	float: left;
	width: 64px;
	margin-top: 7px;
}
.sec_form .box_tel .num{
	margin-bottom: 0.1em;
	padding-left: 78px;
	line-height: 1;
	font-family: 'Barlow Semi Condensed', sans-serif;
	font-style: italic;
	font-weight: 700;
	font-size: 5.04rem;
}
.sec_form .box_tel .txt{
	padding-left: 78px;
	letter-spacing: -0.02em;
	font-size: 1.5rem;
}
.box_form{
	width: 1200px;
	margin: auto;
	border-top: 1px solid #DCDCDC;
}
.box_form .dl_form{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 15px 0;
	border-bottom: 1px solid #DCDCDC;
}
.box_form .dt_form{
	width: 290px;
	padding-left: 30px;
	font-weight: 700;
	font-size: 1.6rem;
}
.box_form .dt_form .txt_req{
	padding-left: 0.5em;
	font-weight: 200;
	font-size: 1.4rem;
	color: #D81C24;
}
.box_form .dt_form .small{
	display: block;
	padding-top: 0.5em;
	font-weight: 500;
	font-size: 1.4rem;
}
.box_form .dd_form{
	width: 910px;
}
.box_form .box_radio{
	width: 620px;
}
.box_form .box_radio .mwform-radio-field{
	position: relative;
	display: inline-block;
	margin-right: 1em;
	font-size: 1.6rem;
}
.box_form .box_radio .mwform-radio-field:nth-child(3){
	margin-top: 1em;
}
.box_form .box_radio .mwform-radio-field label{
	padding-left: 15px;
}
.box_form .box_radio .mwform-radio-field input{
	display: none;
}
.box_form .box_radio .mwform-radio-field label:before{
	position: absolute;
	top: 0px;
	left: 0;
	content: "";
	display: block;
	width: 12px;
	height: 12px;
	background-color: #fff;
	border: 1px solid #DCDCDC;
	border-radius: 12px;
}
.box_form .box_radio .mwform-radio-field label.selected:after{
	position: absolute;
	top: 3px;
	left: 3px;
	content: "";
	display: block;
	width: 6px;
	height: 6px;
	background-color: #960030;
	border-radius: 6px;
}
.box_form input[type="text"],
.box_form input[type="email"],
.box_form input[type="tel"]{
	width: 620px;
	height: 50px;
	padding: 0 5px;
	line-height: 50px;
	font-family: "NotoSansCJKjp","メイリオ",Meiryo,"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック",Arial,Verdana,sans-serif;
	font-size: 1.6rem;
	border: 1px solid #DCDCDC;
	border-radius: 5px;
}
.box_form textarea{
	width: 620px;
	height: 220px;
	padding: 5px;
	line-height: 1.5;
	resize: none;
	font-family: "NotoSansCJKjp","メイリオ",Meiryo,"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック",Arial,Verdana,sans-serif;
	font-size: 1.6rem;
	border: 1px solid #DCDCDC;
	border-radius: 5px;
}
.box_form .box_link{
	margin-top: 60px;
	text-align: center;
	font-size: 1.4rem;
}
.box_form .box_link a{
	text-decoration: underline;
}
.box_form .box_check{
	margin-top: 25px;
	text-align: center;
	font-size: 1.4rem;
}
.box_form .box_check label{
	position: relative;
	display: inline-block;
}

.box_form .link_cover{
	position: relative;
	width: 380px;
	height: 70px;
	margin: 50px auto 0;
	padding-top: 0;
	display: -webkit-flex;
	background-color: #ff6700;
	box-shadow : 0px 3px 5px rgba(0, 0, 0, 0.2);
	border-radius: 70px;
}
.chorome .box_form .link_cover{
	padding-top: 3px;
}
.box_form .link_cover .btn_submit{
	display: block;
	width: 100%;
	height: 100%;
	margin-top: -2px;
	padding-right: 20px;
	line-height: 70px;
	letter-spacing: 0;
	font-family: "NotoSansCJKjp","メイリオ",Meiryo,"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック",Arial,Verdana,sans-serif;
	font-style: italic;
	font-weight: 700;
	font-size: 2.268rem;
	color: #fff;
	cursor: pointer;
}
.box_form .link_cover:after{
  content: "";
  position: absolute;
  top: 50%;
  right: 20px;
  display: block;
  width: 8px;
  height: 14px;
  background: url(../img/common/ico_arrow02.svg) no-repeat;
  transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
	.sec_form{
		min-width: 0;
		padding: 10% 0;
	}
	.sec_form .ttl_sec{
		margin-bottom: 8%;
	}
	.sec_form .box_tel{
		width: 80%;
		margin: 0 auto 10%;
	}
	.sec_form .box_tel a{
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		align-items: center;
	}
	.sec_form .box_tel .ico_tel{
		float: none;
		width: 20%;
		margin-top: 0;
		padding-top: 2%;
	}
	.sec_form .box_tel .box_txt{
		width: 80%;
	}
	.sec_form .box_tel .num{
		padding-left: 2%;
		font-size: 3.3rem;
	}
	.sec_form .box_tel .txt{
		padding-left: 2%;
		line-height: 1.2;
		font-size: 1.2rem;
	}
	.box_form{
		width: auto;
	}
	.box_form .dl_form{
		display: block;
		padding: 5% 0;
	}
	.box_form .dt_form{
		width: auto;
		margin-bottom: 0.5em;
		padding-left: 0;
		vertical-align: middle;
		font-size: 1.5rem;
	}
	.box_form .dt_form .txt_req{
		display: inline-block;
		vertical-align: middle;
		margin-top: -2px;
		font-size: 1.2rem;
	}
	.box_form .dd_form{
		width: auto;
	}
	.box_form .box_radio{
		width: auto;
		padding-top: 1em;
	}
	.box_form .box_radio .mwform-radio-field{
		display: block;
		line-height: 1.5;
		font-size: 1.5rem;
	}
	.box_form .box_radio .mwform-radio-field:nth-child(2),
	.box_form .box_radio .mwform-radio-field:nth-child(3){
		margin: 0.5em 0 0 0;
	}
	.box_form .box_radio .mwform-radio-field label:before{
		top: 5px;
	}
	.box_form .box_radio .mwform-radio-field label.selected:after{
		top: 8px;
	}
	.box_form input[type="text"],
	.box_form input[type="email"],
	.box_form input[type="tel"]{
		width: 100%;
		height: 30px;
		line-height: 30px;
		font-size: 1.4rem;
	}
	.box_form textarea{
		width: 100%;
		height: 150px;
		padding: 5px;
		font-size: 1.4rem;
	}
	.box_form .box_link{
		margin-top: 15%;
		text-align: center;
		font-size: 1.1rem;
	}
	.box_form .box_check{
		margin-top: 2em;
		font-size: 1.3rem;
	}
	.box_form .link_cover{
		width: 100%;
	    height: 50px;
	}
	.box_form .link_cover .btn_submit{
	    margin-top: 0;
	    padding-right: 0;
	    line-height: 50px;
		font-size: 1.5rem;
	}
	.box_form .link_cover:after{
		right: 15px;
	}
}
@media screen and (max-width: 330px) {
	.sec_form .box_tel .num{
		font-size: 2.8rem;
	}
	.box_form .link_cover{
		width: auto;
	}
}


/* ------------------------------
    sec_bnr
------------------------------ */
.sec_bnr{
	padding-top: 100px;
}
.sec_bnr .list_bnr{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.sec_bnr .list_bnr li{
	width: 580px;
	height: 130px;
}
.sec_bnr .list_bnr li a{
	position: relative;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	margin: auto;
	background-color: #960030;
}
.sec_bnr .list_bnr li i{
	position: absolute;
	top: 50%;
	left: 36px;
	display: block;
	width: 66px;
	transform: translateY(-50%);
}
.sec_bnr .list_bnr li .link_txt{
	padding-left: 70px;
	letter-spacing: 0.15em;
	font-weight: 700;
	font-size: 2.6rem;
	color: #fff;
}
@media screen and (max-width: 768px){
	.sec_bnr{
		padding-top: 10%;
	}
	.sec_bnr .list_bnr li{
		width: 48.2%;
		height: 36vw;
	}
	.sec_bnr .list_bnr li a{
		flex-direction: column;
	}
	.sec_bnr .list_bnr li i{
		position: static;
		margin: 0 auto 10%;
		transform: translateY(0);
	}
	.sec_bnr .list_bnr li i{
		width: 30%;
	}
	.sec_bnr .list_bnr li .link_txt{
		width: 100%;
		padding-left: 0;
		line-height: 1.46;
		text-align: center;
		font-size: 1.8rem;
	}
}
@media screen and (max-width: 380px){
	.sec_bnr .list_bnr li .link_txt{
	    font-size: 1.3rem;
	}
}

/* ------------------------------
    sec_conference
------------------------------ */
.sec_conference .ttl_sec{
	text-align: left;
}
@media screen and (max-width: 768px) {
	.sec_conference .ttl_sec{
		text-align: center;
	}
}