@charset "UTF-8";

/* ------------------------------
    training
------------------------------ */
.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 .txt_lead{
	margin-bottom: 100px;
	line-height: 2;
	text-align: center;
	font-size: 1.6rem;
}
.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: 320px;
	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;
}
@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 .txt_lead{
		margin-bottom: 15%;
		line-height: 1.8;
		font-size: 1.3rem;
	}
	.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_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: 25%;
	}
	.box_merit .ttl_merit{
		margin: -1em 0 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_menu
------------------------------ */
.sec_menu{
	min-width: 1200px; /*min-width*/
	padding: 70px 0 95px;
}
.sec_menu .ttl_sec{
	margin-bottom: 70px;
}
.list_menu{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
}
.list_menu .item_menu{
	width: 360px;
	margin-bottom: 115px;
	padding: 0 40px 40px;
	text-align: center;
	background-color: #fff;
	border: 5px solid #960030;
}
.list_menu .item_menu .ttl_menu {
    display: inline-block;
    height: 44px;
    margin: -22px 0 35px;
    padding: 0 12px;
    line-height: 44px;
    font-style: italic;
    font-weight: 700;
    font-size: 2.6rem;
    color: #fff;
    background-color: #960030;
}
.list_menu .item_menu .img{
	width: 97px;
	margin: 0 auto 25px;
}
.list_menu .item_menu .txt{
	text-align: center;
	font-size: 1.8rem;
}
.cover_training{
	margin-bottom: -55px;
}
.cover_training .items_training{
	margin-bottom: 55px;
}
.items_training .ttl_training{
	margin-bottom: 15px;
	text-align: center;
	font-style: italic;
	font-weight: 700;
	font-size: 3.4rem;
}
.items_training .dl_training{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: center;
	background-color: #F4E5EA;
	border-top: 1px solid #960030;
	border-left: 1px solid #960030;
}
.items_training .dl_training:last-child{
	border-bottom: 1px solid #960030;
}
.items_training .dl_training dt{
	width: 240px;
	padding: 25px;
	text-align: center;
	font-style: italic;
	font-weight: 700;
	font-size: 2.2rem;
	color: #960030;
}
.items_training .dl_training dd{
	width: 960px;
	padding: 25px;
	background-color: #fff;
	border-left: 1px solid #960030;
	border-right: 1px solid #960030;
}
.items_training .dl_training dd .ttl{
	margin-bottom: 0.55em;
	font-weight: 700;
	font-size: 1.8rem;
	color: #960030;
}
.items_training .dl_training dd ul + .ttl{
	margin-top: 1em;
}
.items_training .dl_training dd .txt,
.items_training .dl_training dd li{
	line-height: 2;
	font-size: 1.5rem;
}
.items_training .dl_training dd li{
	display: inline-block;
	padding-right: 1em;
}
.items_training .dl_training dd li:before{
	content: "";
    display: inline-block;
    width: 8px;
    height: 8px;
	margin: -3px 5px 0 0;
    vertical-align: middle;
    background-color: #B54C6E;
    border-radius: 8px;
}
.items_training.training02 .dl_training .list02 li{
	display: block;
	margin-left: 0;
}
.items_training.training03 .dl_training .list01{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
}
.items_training.training03 .dl_training .list01 li{
	width: 20%;
	margin-left: 0;
}
.items_training.training03 .dl_training .list01 li:nth-child(2),
.items_training.training03 .dl_training .list01 li:nth-child(7){
	margin-left: -2em;
}
.items_training.training03 .dl_training .list01 li:nth-child(4),
.items_training.training03 .dl_training .list01 li:nth-child(9){
	margin-left: -1em;
}
@media screen and (max-width: 768px) {
	.sec_menu{
		min-width: 0;
		padding: 10% 0 0;
	}
	.sec_menu .ttl_sec{
		margin-bottom: 10%;
	}
	.list_menu{
		display: block;
		margin-bottom: 15%;
	}
	.list_menu .item_menu{
		width: auto;
		margin-bottom: 8%;
		padding: 0 5% 5%;
	}
	.list_menu .item_menu .ttl_menu{
		height: 30px;
		margin: -15px 0 1em;
		padding: 0 3%;
		line-height: 30px;
		font-size: 1.8rem;
	}
	.list_menu .item_menu .img{
		width: 30%;
		margin: 0 auto 8%;
	}
	.list_menu .item_menu .txt{
		font-size: 1.5rem;
	}
	.cover_training{
		margin-bottom: 0;
	}
	.cover_training .items_training{
		margin-bottom: 15%;
	}
	.items_training .ttl_training{
		margin-bottom: 0.5em;
		font-size: 2.0rem;
	}
	.items_training .dl_training{
		display: block;
	}
	.items_training .dl_training dt{
		width: auto;
		padding: 3% 5%;
		font-size: 1.8rem;
		border-right: 1px solid #960030;
	}
	.items_training .dl_training dd{
		width: auto;
		padding: 5%;
		border-top: 1px solid #960030;
		border-left: none;
	}
	.items_training .dl_training dd .ttl{
		font-size: 1.5rem;
	}
	.items_training .dl_training dd .txt,
	.items_training .dl_training dd li{
		line-height: 1.8;
		font-size: 1.3rem;
	}
	.items_training .dl_training dd li{
		padding-right: 1em;
	}
	.items_training.training03 .dl_training .list01 li{
		width: 50%;
		padding-right: 0;
	}
	.items_training.training03 .dl_training .list01 li:nth-child(2),
	.items_training.training03 .dl_training .list01 li:nth-child(4),
	.items_training.training03 .dl_training .list01 li:nth-child(7),
	.items_training.training03 .dl_training .list01 li:nth-child(9){
		margin-left: 0;
	}
}
@media screen and (max-width: 330px) {
	.items_training.training03 .dl_training .list01{
		display: block;
	}
	.items_training.training03 .dl_training .list01 li{
		display: inline-block;
		width: auto;
		padding-right: 1em;
	}

}

/* ------------------------------
    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{
	min-width: 1200px; /*min-width*/
	padding-top: 100px;
}
.sec_bnr .ttl_bnr{
	margin-bottom: 45px;
	text-align: center;
	font-style: italic;
	font-weight: 700;
	font-size: 3.6rem;
}
.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{
		min-width: 0;
		padding-top: 10%;
	}
	.sec_bnr .ttl_bnr{
		margin-bottom: 8%;
		line-height: 1.3;
		font-size: 1.8rem;
	}
	.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;
	}
}