@charset "UTF-8";
/* ===============================
	layout
 =============================== */

 .wrap-inner{
	width: 95%;
	margin: 0 auto;
	max-width: 1650px;
}

.wrap-inner_01{
	width: 95%;
	margin: 0 auto;
	max-width: 1490px;
}

.wrap-inner_02{
	width: 84%;
	margin: 0 auto;
	max-width: 1018px;
}
/*
.heading_box-page{
	overflow: hidden;
	position: relative;
}

.heading_box-page .img{
	position: absolute;
	right: 0;
	top: 0;
	width: 50vw;
}*/

.heading_wrap_02{
    width: 95%;
    max-width: 1480px;
    margin: 0 auto;
    align-items: flex-end;
}
.heading_wrap_02 #breadcrumbs {
    margin: 0 0 0.6em;
}

.heading_box-top {
    margin: 13px auto 0;
}

.heading_box-top .info_wrap {
    width: 46%;
    /*padding: 98px 0 0 0;*/
}

.heading_box-top .heading_wrap{
	width: 85%;
	max-width: 674px;
	margin: 0 0 25px auto;
	margin: 0 0 22px auto;
    align-items: flex-end;
	padding: 0 28px 0 0;
}

.heading_box-top .info_wrap,
.heading_box-top .info_box{ /* 高さ調整 */
	display: flex;
	flex-direction: column;
	justify-content: stretch;
	justify-content: flex-end;
	align-items: stretch;
	align-content: stretch;
}

.heading_box-top .info_box{
	/*height: 81.2%;*/
	background: #F5F5F5;
}
.heading_box-top.interview .info_box{
	/*height: 81%;
	padding: 0 0 10%;*/
}

.heading_box-top .info_box .box-inner{
	background:#fff;
	width: 90%;
	max-width: 675px;
	margin: 0 0 0 auto;
	height: 100%;
}

.heading_box-top .info_box .box {
    padding: 11.5% 6% 12% 11.5%;
}

.heading_box-top.interview .info_box .box {
    display: flex;
    flex-direction: column;
    /*justify-content: center;*/
	justify-content: flex-start;
    align-items: flex-end;
}
.heading_box-top.interview .info_box .box-wrap {
	width: 85%;
}
.heading_box-top.interview .info_box .heading {
	font-size: min(2.4vw,3.4rem);
    line-height: 1.3;
    margin: 0.9em 0 0.9em;
}

.heading_box-top.interview .info_box dl dt {
	font-size: 1.9rem;
	font-weight: 600;
}

.heading_box-top.interview .info_box dl dt .red{
	/*display: inline-block;*/
	margin: 0 0 0 1em;
	color: #E60113;
}

.heading_box-top.interview .info_box dl dd {
	font-size: 1.6rem;
}

.heading_box-top .info_box .box p{
	font-weight: 600;
	line-height: 1.75;
	font-size: min(4.07vw,1.6rem);
}

.heading_box-top .heading_shape {
    display: flex;
    flex-direction: column;
    height: 20.7em;
    max-height: 198px;
    justify-content: center;
	position: relative;
	padding:0 0 0 22.4em;
	font-size: 1.06vw;
}

.heading_box-top .heading_shape p {
	font-size: min(4.64vw,1.8rem);
    left: -1.65em;
    letter-spacing: .02em;
    position: relative;
    font-family: 'Michroma', sans-serif;
    z-index: 3;
    color: #0376C1;
    margin: 1.2em 0 0;
    line-height: 1.4;
    white-space: nowrap;
}

.heading_box-top .heading_shape p i{
	font-style: normal;
	color: #fff;
	width: 1.65em;
	display: inline-block;
    text-align: right;
    padding: 0 0.1em 0 0;
}

.heading_box-top .heading_shape .shape {
    position: absolute;
    top: 0;
    left: 0;
    width: 22.4em;
    height: 20.7em;
    max-width: 215px;
    max-height: 198px;
    overflow: hidden;
    display: block;
	font-size: 1.06vw;
}
.heading_box-top .heading_shape .shape:before,
.heading_box-top .heading_shape .shape:after{
	content: "";
	position: absolute;
}
/*
.heading_box-top .heading_shape .shape:after{
	right: 0;
	top: 1px;
	width: 1px;
	height: calc(100% - 1px);
	background: #0376C1;
	z-index: 1;
}
*/
.heading_box-top .heading_shape .shape:before {
    display: block;
    top: 0;
    left: 0;
    width: 0px;
    height: 0px;
    border-top: 20.7em solid #E60213;
    border-right: 22.4em solid #0376C1;
    z-index: 0;
}

@media screen and (min-width: 1921px) {
	.heading_box-top .heading_shape .shape {
    	width: 215px;
    	height: 198px;
	}
	.heading_box-top .heading_shape .shape:before {
		border-top: 198px solid #E60213;
		border-right: 215px solid #0376C1;
	}
	.heading_box-top .heading_shape{
		height: 198px;
		padding: 0 0 0 215px;
	}
}
.heading_box-top .img{
	width: 53.5%;
}

.heading_box-top .img figure{
	height: 100%;
}

.heading_box-top .img figure img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* heading_box ----------------------------- */

.heading_box {
    width: 85%;
    margin: 31px auto 15px;
    max-width: 1480px;
}

.heading_box .heading {
    width: 51%;
}

.heading_box .heading_wrap{
	align-items: flex-end;
}

.heading_box .breadcrumbs_box {
    padding: 0 0 10px 80px;
	width: 49%;
}

/* list_box-01 ----------------------------- */

.list_box-01{
    background: #fff;
    box-shadow: 0 3px 6px rgba(0,0,0,.16);
    position: relative;
    padding: 4.95% 0 1px 0;
}

.list_box-01::before, 
.list_box-01::after {
    content: "";
    width: 7.63vw;
    height: 5px;
    position: absolute;
    top: -2.5px;
}

.list_box-01::before{
    background: #E60113;
    left: calc(50% - 7.63vw);
}

.list_box-01::after{
    background: #0376C1;
    right: calc(50% - 7.63vw);
}


/* flex-box ----------------------------- */
.wrap-flex_box{
	/*width: 100%;*/
	/*margin:0 auto;*/
	
  	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	
  	flex-wrap: wrap;
	
	-webkit-box-pack: justify;
	justify-content: space-between;
}

.flex_box-reverse{
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	flex-direction: row-reverse;
}

.flex_box--start{
	-webkit-box-pack: start;
	justify-content: flex-start;
}

.flex_box--end{
	-webkit-box-pack: end;
	justify-content: flex-end;
}

.flex_box--btm{
	-webkit-box-align: end;
	align-items: flex-end;
}

.flex_box--around{
	justify-content: space-around;
}

.flex_box--center{
	-webkit-box-pack: center;
	justify-content: center;
}

.flex_box--middle{
	-webkit-box-align: center;
	align-items: center;
}

/*PC Layout
===================================*/

@media screen and (min-width: 769px) {


	/* heading_box ----------------------------*/

	.heading_box{
		margin: 100px auto 15px;
	}
	.heading_box .heading {
		width: auto;
	}
	
	.heading_box .breadcrumbs_box {
		width: auto;
	}

	/* heading_box-top ----------------------------*/
	
	.heading_box-top .wrap-flex_box{
		position: relative;
	}
	.heading_box-top .img{
		position: absolute;
		right: 0;
		bottom: 0;
		height: 100%;
	}

	.heading_box-top .heading_shape p {
		font-size: min(2.6vw,4rem);
	}

	.heading_box-top .heading_shape .shape {
		font-size: .5vw;
	}
	.heading_box-top .heading_shape {
		font-size: .5vw;
	}

	.heading_box-top .info_box .box {
		padding: 11% 10.5% 7%;
	}

	.heading_box-top .info_box .box p{
		font-size: min(1.15vw,2.2rem);
		/*font-size: min(1.35vw,1.7rem);*/
		line-height: 1.8;
	}
	.heading_box-top .info_box .box{
		min-height: 23vw;
	}

	/* flex-box ----------------------------- */

	.wrap-flex_box-pc{/* pcのみのflex-box */
		/*width: 100%;*/
		margin:0 auto;
		
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		
		flex-wrap: wrap;
		
		-webkit-box-pack: justify;
		justify-content: space-between;
	}

	.flex_box-reverse-pc{
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
		flex-direction: row-reverse;
	}


	/* list-box ----------------------------- */

	.list_box-01::before,
	.list_box-01::after{
		width: 64px;
		height: 10px;
		top: -5px;
	}

	.list_box-01::before{
		left: calc(50% - 64px);
	}

	.list_box-01::after{
		right: calc(50% - 64px);
	}
}

/*SP Layout
===================================*/
@media screen and (max-width: 768px) {

	/* flex-box ----------------------------- */
	.heading_box-top .info_box .box{
		padding: 11.5% 6% 12% 6%;
	}
	.wrap-flex_box-sp{ /* spのみのflex-box */
		/*width: 100%;*/
		margin:0 auto;
			
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;

		flex-wrap: wrap;
			
		-webkit-box-pack: justify;
		justify-content: space-between;
	}

	.flex_box-reverse-sp{
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
		flex-direction: row-reverse;
	}

	.flex_box-column-reverse-sp{
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		flex-direction: column-reverse;
	}
	.heading_wrap_02{
		flex-direction: column;
    	align-items: baseline;
		margin-top: 30px;
	}
	.breadcrumbs_box {
		margin: 30px 0 30px 20px;
	}
	.heading_box-top .heading_shape p i{
		margin-right: 3px;
		padding-right: .1em;
	}
	/* heading_box-top ----------------------------- */

    .heading_box-top .heading_wrap{
        flex-direction: column-reverse;
    }
	
	.heading_box-top .heading_wrap {
		flex-direction: column;
		align-content: flex-start;
		align-items: flex-start;
		justify-content: flex-start;
		width: 85%;
		margin: 0 auto 5%;
		padding: 0;
	}

	.heading_box-top .heading_shape{
		width: 85%;
		margin: 0 auto;
	}
	.heading_box-top .heading_shape .shape{
		top: 1px;
		left: 2px;
	}

	/*
	.heading_box-top .heading_shape > *{
		position: relative;
		z-index: 3;
	}

	.heading_box-top .heading_shape:before {
		content: "";
		width: 118%;
		height: 100%;
		background: #fff;
		position: absolute;
		left: -8.8%;
		top: 0;
		z-index: 1;
		max-width: 100vw;
	}
	*/

    .heading_box-top .info_box .box-inner {
		width: 100%;
		margin: 0 auto;
	}

	.heading_box-top .info_wrap{
		width: 100%;
	}

	.heading_box-top .img {
		width: 100%;
		margin: 0 auto;
		padding: 0 8%;
		background: #f5f5f5;
	}

	.heading_box-top .info_box,
	.heading_box-top .info_box .box-inner{
		height: auto;
	}
	.heading_box-top .heading_05{
		line-height: 1.6;
	}

	/* heading_box ----------------------------- */
	
	.heading_box .breadcrumbs_box {
		padding: 0;
		width: 49%;
	}
}