@charset "UTF-8";

.cont__ttl--jaw {
	color: #fff;
}

.sec__page-hdr {
	width: 100%;
	background-size: cover;
	background-position: center center;
	height: 200px;
	padding: 90px 0 0;
	text-align: center;
}

.sec__page-hdr--service {
	background-image: url("../images/bg_service_header.jpg");
}

.sec__page-hdr--price {
	background-image: url("../images/bg_price_header.jpg");
}

.sec__page-hdr--company {
	background-image: url("../images/bg_company_header.jpg");
}

.sec__page-hdr--recruit {
	background-image: url("../images/bg_recruit_header.jpg");
}

.sec__page-hdr--contact {
	background-image: url("../images/bg_contact_header.jpg");
}

@media screen and (min-width: 769px) {
	.sec__page-hdr {
		height: 400px;
		padding: 180px 0 0;
	}
}


.arrow__icon {
	position: relative;
	display: block;
	width: 20px;
	height: 20px;
	margin-right: 0.2em;
	border-radius: 50%;
	background-color: #fff;
	border: solid 2px #373675;
	-ms-flex-negative: 0;
	flex-shrink: 0;
}

.arrow__icon::before {
	position: absolute;
	width: 5px;
	height: 5px;
	top: 4.5px;
	left: 3.5px;
	border-right: solid 2px #373675;
	border-bottom: solid 2px #373675;
	content: '';
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.arrow__icon--link {
	position: relative;
	display: block;
	width: 20px;
	height: 20px;
	top: 0px;
	margin-right: 0.2em;
	border-radius: 50%;
	background-color: #373675;
	-ms-flex-negative: 0;
	flex-shrink: 0;
}

.arrow__icon--link::before {
	position: absolute;
	width: 5px;
	height: 5px;
	top: 4.5px;
	left: 3.5px;
	border-right: solid 2px #fff;
	border-bottom: solid 2px #fff;
	content: '';
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

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

	
}

.sec-service__cont__sttl {
	margin: 0 0 1em;
}

.sec-service__cont__sttl--strong {
	font-size: 1.8em;
	color: #373675;
}

.sec-service__overview-2column--wrap {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	flex-wrap: wrap;
}

.sec-service__overview-2column--child {
	width: 100%;
	max-width: 750px;
}

.sec-service__overview-2column--child:first-child {
	margin-bottom: 0.8em;
}

.sec-service__cont__ssttl {
	padding: 1em 0;
	background-color: #373675;
	color: #fff;
}

.sec-service__overview-list {
	padding: 0.5em 0 0 0;
}

.sec-service__overview-item {
 padding: 0.5em 0;
}

.sec-service__overview-link {
	display: flex;
	align-items: center;
	padding: 0.8em 0 0.8em 1em;
	color: #333;
	font-weight: bold;
	box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 4px;
}
.sec-service__overview-link:hover {
	background-color: rgba(55, 54, 117, 0.1);
	box-shadow: none;
}

@media screen and (min-width: 1025px) {
	.sec-service__overview-2column--wrap {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
	}
	
	.sec-service__overview-2column--child {
		width: 46%;
		max-width: none;
	}
	
	.sec-service__overview-2column--child:first-child {
		margin-bottom: 0;
	}
	
	.sec-service__overview-link {
		padding: 1em 0 1em 10em;
	}
	
}

.sec-service__sales {
	background-color: rgba(55, 54, 117, 0.1);
}

.sec-service__sales-item {
	margin: 0 0 60px 0;
}

.sec-service__sales-item:last-child {
	margin: 0;
}

.sec-service__sales__sttl {
	position: relative;
	border-bottom: 3px solid #373675;
	padding: 1em 0 0.5em 0;
	font-size: 24px;
}

.sec-service__sales__sttl--en {
	position: absolute;
	top: 6px;
	left: 50%;
	transform: translate(-50%,0);
	width: 100%;
	font-family: 'Roboto Condensed', sans-serif;
	font-style: italic;
	color: rgba(55, 54, 117, 0.2);
	font-size: 1em;
}

.sec-service__sales__txt {
	padding: 1em 0 1em 0;
}

.sec-service__sales__system {
	margin-bottom: 1em;
}

.sec-service__sales__ssttl {
	margin-bottom: 0.5em;
	padding: 0 0 0.5em 1em;
	border-bottom: 1px solid #ccc;
}

.sec-service__sales-fig {
	
}

.sec-service__sales-figcaption {

}

.sec-service__sales-img {
	width: 500px;
	height: auto;
}

.sec-service__sales-measures-list {
	margin-bottom: 1em;
	line-height: 1.5;
}

.sec-service__sales-measures-item {
	position: relative;
	padding-left: 1em;
}

.sec-service__sales-measures-item:before {
	content: '';
	position: absolute;
	top: 8px;
	left: 4px;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background-color: #94a0c4;
}

@media screen and (min-width: 1025px) {
	
	.sec-service__sales__sttl {
		padding: 1em 0 0.5em 80px;
		text-align: left;
		font-size: 32px;
	}
	
	.sec-service__sales__sttl--en {
		top: -20px;
		left: 0;
		transform: none;
		font-size: 1.5em;
	}
	
	.sec-service__sales__ssttl {

	}
	
	.sec-service__sales-item {
		margin: 0 0 80px 0;
	}
	
	.sec-service__sales-fig {
		display: flex;
		align-items: flex-start;
	}
	
	.sec-service__sales-figcaption {
		margin-left: -40px;
	}
	
	.sec-service__sales__detail {
		padding-left: 80px;
	}
	
	.sec-service__sales__txt {

	}
	
	.sec-service__sales__fig {
		width: 100%;
	}
	
	.sec-service__sales-measures-list {
		
	}
	
}

.sec-service__flow {
	background-color: rgba(55, 54, 117, 0.1);
}

.sec-price__price-list__wrap {
	margin-bottom: 60px;
}

.sec-price__price__sttl {
	border: 1px solid #373675;
	color: #373675;
	padding: 1em 0 1.5em;
}

.sec-price__price-list {
	margin-top: -10px;
}

.sec-price__price-item {
	width: 100%;
	max-width: 750px;
	text-align: center;
	font-weight: bold;
	font-size: 14px;
}

.sec-price__price-hdr {
	background-color: #373675;
	color: #fff;
	font-size: 24px;
	padding: 1em 0;
}

.sec-price__price-cont {
	background-color: rgba(55, 54, 117, 0.1);
	padding: 1em 0;
}

.sec-price__price-cont--num {
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 5em;
	letter-spacing: -3px;
}

.sec-price__price-cont--unit {
	font-size: 2em;
}

.sec-price__price-cont--notice {
	display: block;
}

.sec-price__supplement {
	font-size: 14px;
	text-align: center;
}

.sec-service__comparison-img {
	width: 100%;
	margin: auto;
	margin-bottom: 60px;
}

.sec-service__costdown-img__wrap {
	margin-bottom: 30px;
}

.sec-service__costdown-img {
	width: 100%;
	max-width: 800px;
	margin: auto;
}

.sec-price__endcopy {
	font-size: 22px;
	color: #373675;
	text-align: center;
	font-weight: bold;
}

@media screen and (min-width: 1025px) {
	.sec-price__price-list__wrap {
		margin-bottom: 100px;
	}
	
	.sec-price__price-list {
		display: flex;
		justify-content: space-around;
		align-items: flex-start;
		margin-top: -20px;
	}
	
	.sec-price__price-item {
		width: 46%;
		font-size: 16px;
	}

	.sec-price__price-hdr {
		font-size: 32px;
	}
	
	.sec-price__supplement {
		font-size: 16px;
	}
	
	.sec-service__costdown-img__wrap {
		margin-bottom: 50px;
	}
	
	.sec-service__comparison-img {
		margin-bottom: 100px;
	}
	
	.sec-price__endcopy {
		font-size: 32px;
	}
	
}

/* 企業情報 */

.sec-company__philosophy {
	background-image: url("../images/bg_philosophy.png");
	background-position: top right;
	background-repeat: no-repeat;
}

.sec-company__philosophy__img {
	width: 100%;
	max-width: 750px;
	margin: 0 auto 40px;
}

.sec-company__philosophy__wrap {
	width: 100%;
	margin: 0 auto 40px;
	padding: 3.5em 1em;
	background-color: rgba(55, 54, 117, 0.1);
}

.sec-company__philosophy__txt {
	font-size: 20px;
	font-weight: bold;
	text-align: center;
}

.sec-company__value__img {
	width: 100%;
	max-width: 400px;
	margin: 0 auto 20px;
}

.sec-company__value__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
}

.sec-company__value__item {
	width: 95%;
	margin-bottom: 20px;
	padding: 20px;
	background-color: #fff;
}

.sec-company__value__item:last-child {
	margin-bottom: 0;
}

.sec-company__value__ttl {
	margin-bottom: 1em;
	text-align: center;
	font-size: 20px;
	font-weight: bold;
}

.sec-company__value__txt {
	font-size: 14px;
}

@media screen and (min-width: 769px) {
	
	.sec-company__philosophy__img {
		margin: 0 auto 60px;
	}

	.sec-company__philosophy__wrap {
		margin: 0 auto 60px;
	}

	.sec-company__philosophy__txt {
		font-size: 24px;
	}
	
	.sec-company__value__img {
		margin: 0 auto 40px;
	}
	
	.sec-company__value__item {
		width: 40%;
		padding: 40px;
		margin-bottom: 40px;
	}
	
	.sec-company__value__item:nth-child(odd) {
		margin-right: 60px;
	}
	
	.sec-company__value__item:nth-child(7) {
		margin-bottom: 0;
	}
	
	.sec-company__value__ttl {
		font-size: 24px;
	}
	
	.sec-company__value__txt {
		font-size: 19px;
	}
	
}

.sec-recruit__ceo__wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
}

.sec-recruit__ceo__sttl--wrap {
	display: flex;
	justify-content: center;
	align-items: center;
}

.sec-recruit__ceo__sttl {
	width: 100%;
	margin-top: 40px;
	margin-bottom: 40px;
	text-align: center;
	font-size: 22px;
}

.sec-recruit__ceo__photo {
	width: 100%;
}

.sec-recruit__ceo__photo img {
	display: block;
}

.sec-recruit__message__bg {
	background-image: url("../images/bg_absurdity.png");
	background-color: #f4f4f4;
}

.sec-recruit__message__wrap {
	width: 100%;
	padding: 40px 20px;
	background-color: #fff;
	border-top: 3px solid #373675;
	box-shadow: rgb(99 99 99 / 20%) 0px 2px 8px 0px;
}

.sec-recruit__message__sttl {
	position: relative;
	margin-bottom: 1em;
	font-size: 22px;
	text-align: center;
}

.sec-recruit__message__sttl--accent {
	position: absolute;
	top: 20px;
	right: 0;
	font-family: 'Roboto Condensed', sans-serif;
	font-style: italic;
	color: rgba(55, 54, 117, 0.2);
	font-size: 16px;
}

@media screen and (min-width: 1025px) {
	
	.sec-recruit__ceo__wrap {
		justify-content: space-between;
		align-items: center;
	}

	.sec-recruit__ceo__sttl--wrap {
		width: 40%;
	}
	
	.sec-recruit__ceo__sttl {
    position: absolute;
    left: 24vw;
		width: 76vw;
		margin-top: 0;
		margin-bottom: 0;
		text-align: left;
		font-size: 40px;
		line-height: 2;
	}
	
	.sec-recruit__ceo__photo {
		width: 60%;
	}
	
	.sec-recruit__message__wrap {
		padding: 60px 180px;
	}
	
	.sec-recruit__message__sttl {
		font-size: 32px;
		text-align: left;
	}
	
	.sec-recruit__message__sttl--accent {
		font-size: 32px;
	}
	
}

.sec-recruit__organization__img {
	width: 100%;
	max-width: 640px;
	margin: 0 auto 60px;
}

.sec-recruit__organization__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	width: 100%;
	max-width: 640px;
	margin: 0 auto 40px;
}

.sec-recruit__organization__item {
	width: 100%;
	margin-bottom: 50px;
}

.sec-recruit__organization__item figure img {
	display: block;
	margin-bottom: 15px;
}

.sec-recruit__organization__item .cont__sttl {
	margin-bottom: 15px;
}

.sec-recruit__numbers__list {
	width: 60%;
	max-width: 640px;
	margin: 0 auto;
}

.sec-recruit__numbers__item {
	width: 100%;
	margin-bottom: 20px;
}

.sec-recruit__numbers__item figure img {
	display: block;
	border-top: 3px solid #373675;
	box-shadow: rgb(99 99 99 / 20%) 0px 2px 8px 0px;
}

@media screen and (min-width: 1025px) {
	.sec-recruit__organization__list {
		max-width: none;
		margin: 0 auto 60px;
	}
	
	.sec-recruit__organization__item {
		width: 30%;
		margin-bottom: 0;
	}
	
	.sec-recruit__numbers__list {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: flex-start;
		max-width: none;
		width: 100%;
	}
	
	.sec-recruit__numbers__item {
		width: 30%;
		margin-bottom: 0;
	}
	
}

.sec-recruit__newgraduate {
	background-image: url(../images/bg_newgraduate.png);
	background-repeat: no-repeat;
	background-position: left top;
	background-size: 120%;
}

.sec-recruit__career {
	background-image: url("../images/bg_career.png");
	background-repeat: no-repeat;
	background-position: right top;
	background-size: 120%;
}

.sec-recruit__occupation__wrap {
	margin: 0 auto 2em;
	max-width: 750px;
	padding: 1em 1em 2em;
	background-color: rgba(255, 255, 255, 0.7);
	font-size: 14px;
}

.sec-recruit__occupation__wrap dl {
	display: flex;
	flex-wrap: wrap;
	line-height: 1.7
}

.sec-recruit__occupation__wrap dt,
.sec-recruit__occupation__wrap dd {
	width: 100%;
	padding: 1em .5em;
}

.sec-recruit__occupation__wrap dt {
	border-bottom: 1px solid #373675;
	font-weight: bold;
	text-align: left;
}

.sec-recruit__occupation__wrap dd {
	font-weight: 200;
	flex-grow: 1;
}

@media screen and (min-width: 769px) {
	
	.sec-recruit__newgraduate {
		background-position: left top;
		background-size: auto;
	}
	
	.sec-recruit__career {
		background-position: right top;
		background-size: auto;
	}
	
	.sec-recruit__occupation__wrap {
		padding: 2em 3em 4em;
		font-size: 16px;
	}
	
	.sec-recruit__occupation__wrap dl {
		flex-wrap: nowrap;
	}
	
	.sec-recruit__occupation__wrap dt,
	.sec-recruit__occupation__wrap dd {
		width: auto;
	}
	
	.sec-recruit__occupation__wrap dt {
		min-width: 8.5em;
		text-align: center;
	}
	
	.sec-recruit__occupation__wrap dd {
		border-bottom: 1px solid #ccc;
	}
}