@charset "utf-8";
/* 追加CSS */

/*コンテンツ共通*/
.sp-only{display: none;}

.p-header-logo{
	width: 150px;
}


.contents h2.top-h2{
	font-size: 38px;
	font-weight: bold;
}

.page-section {
	padding: 100px 0;
}

.container {
	max-width: 980px;
	margin: 0 auto;
}


.row {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.row.rev{
	flex-direction:row-reverse
}

.row>div {
	margin-bottom: 20px;
}

.col-md-4 {
	width: 30%;
	width: -webkit-calc(33.33% - 10px);
	width: calc(33.33% - 10px);
	margin-right: 15px;
}

.col-md-4:nth-of-type(3n) {
	margin-right: 0;
}

.col-md-4:nth-last-of-type(1), .col-md-4:nth-last-of-type(2), .col-md-4:nth-last-of-type(3) {
	/* margin-bottom: 0; */
}

.row .col-md-6 {
	width: 48%;
	/*width: -webkit-calc(50% - 10px);
	width: calc(50% - 10px);*/
}
.row .col-md-6 img{
	width: 100%;
	margin-bottom: 50px;
}

.c-menu-trigger span{
	background: #000;
}

.p-header-left p{
	font-size:1.1rem;
	font-weight: bold;
	white-space:nowrap;
}

.p-header-right ul.category-link{
	padding-right: 75px;
}
.p-exnav-list li.recruit{
	display: inline-block;
	padding: 0 5px;
}
.p-exnav-list li.jobsearch{
	padding: 0 0 0 15px;
}
.p-exnav-list li.recruit a{
	display: inline-block;
	text-align: center;
	color: white;
	background: #00b7f1;
	text-decoration: none;
	width: 120px;
    height: 42px;
	line-height: 42px;
	font-size: 14px;
}
.p-exnav-list li.recruit a.career{
	background:#000E4E;
}
.p-exnav-list li.recruit a.diversity{
	background:#0063CC;
	width: 130px;
}
.p-exnav-list li.intern{
	padding: 0;
}
.p-exnav-list li.intern a.intern{
	font-size: 16px;
	line-height: 1.2em;
	background: white;
	border: 2px solid #00b7f1;
	color: #00b7f1;
	padding: 5px 0;
	margin: 0 0 0 10px;
	background: #f8f8f8;
}

.sp-only{display: none;}

.p-gnav{
	align-items: flex-start;
}
.p-gnav.visible{
	overflow-y: scroll;
}

@media screen and (max-width: 1300px){
	.p-exnav-list li.recruit{
	}
	.p-exnav-list li.recruit a{
		width: 100px;
		font-size: 12px;
	}
	.p-exnav-list li.jobsearch{
		padding: 0 15px;
	}
}
@media screen and (max-width: 1291px){
	.p-header-logo{
		max-width: 70%;
	}
}
@media screen and (max-width: 1140px){
	.p-header-logo{
		max-width:none;
	}
	.p-gnav-list{
		margin-bottom: 0;
	}
	.p-exnav-list li.recruit{
		display: none;
	}
	.p-gnav.visible{
		flex-wrap: wrap;
		overflow-y: scroll;
	}
	.p-exnav-list.sp-only li.recruit{
		display: block;
		width: 100%;
	}
	ul.p-exnav-list.sp-only {
		display: flex;
		justify-content: space-between;
		width: 90%;
		margin: auto;
		flex-wrap: wrap;
	}
	.p-exnav-list.sp-only li.recruit{
		width: 30%;
	}
	.p-exnav-list.sp-only li.recruit a{
		width: 100%;
		font-size: 14px;
	}
}

@media (max-width: 980px) {
	.container {
		width: 100%;
		padding-left: 20px;
		padding-right: 20px;
	}
}

@media (max-width: 767px) {
	.contents h2.top-h2 {
		font-size: 1.4rem;
		margin-bottom: 20px;
		line-height: 1.6em;
	}

	.interview-body .container,
	#interview-top-body .container {
		width: 100%;
		padding-left: 0px;
		padding-right: 0px;
	}
	.sp-only {
		display: inline;
	}
	.pc-only {
		display: none;
	}
	.row .col-6 {
		width: 46%;
		width: -webkit-calc(50% - 5px);
		width: calc(50% - 5px);
		margin-right: 10px !important;
	}
	.row .col-md-6 img{
		margin-bottom: 20px;
	}
	.p-exnav-button{
		font-size: .75rem;
	}
	.p-gnav-sns{
		display:flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		padding: 20px 0;
	}
	.p-gnav-sns li{
		padding: 0 20px;
	}
}


@media (max-width: 640px){
	.p-header-logo{
		max-width: 120px;
	}
	.p-exnav-list li.jobsearch{
		padding: 0;
	}
	.p-header-left p{
		font-size: 11px;
		margin-left: -20px;
		line-height: 1.2em;
	}
	.p-exnav-list li.recruit{
		display: none;
	}
	.p-exnav-list.sp-only{
		display: block;
		width: 90%;
	}
	.p-exnav-list.sp-only li.recruit{
		width: 100%;
	}
	.p-gnav.visible{
		flex-wrap: wrap;
		overflow-y: scroll;
	}
	.p-exnav-list li.recruit{
		margin-bottom: 1rem;
	}
	.p-exnav-list.sp-only li.recruit a{
		width: 100%!important;
		display: block;
	}

	.top-message{
		padding: 60px 20px;
		font-size: 1rem;
		text-align: left;
	}
	.top-message p br{
		display: none;
	}
	section.top-candm{
		padding: 90px 0;
		position: relative;
	}
	section.top-candm .top-h2{
		font-size: 1.6rem;
	}
	.p-entry{
		padding: 84px 0 88px;
	}
	.p-entry p.lead{
		text-align: left;
		padding-bottom: 2rem;
		font-size: 1rem;
	}
	.p-exnav-list li.intern{
		padding: 0 5px 0 0;
	}
	.p-exnav-list li.intern a.intern{
		font-size: 11px;
		padding: 3px 0;
		margin: 0 0 0 5px;
		width: 90px;
	}
}


.breadcrumb {
	padding: 2rem 0;
	font-size: 0.9rem
}
.breadcrumb .container{
	max-width: 1170px;
}

.breadcrumb p a:after {
	content: ">";
	display: inline-block;
	padding: 0 0.5rem;
	color: #111;
}


.top-interview{
	padding: 160px 0;
	text-align: center;
	background: #f8f8f8;
}
.top-interview-h2{
	line-height: 1.2em;
	font-size: 1.5rem;
}
.top-interview-h2 span{
	font-size: 2.5rem;
}
.top-interview-h2 small{
	font-size:1rem
}
.top-h2 span.copy{
	display: inline-block;
	font-size: 1.5rem;
}

.top-interview .c-button{
	font-size:1rem;
}

/*一覧*/

/*ul.tags{
	width: 100%;
	text-align: center;
	padding: 0 0 40px 0;
}*/
@media (max-width: 767px) {
	.top-interview-h2 span{
		line-height:2.5rem;
	}
	.top-interview{
		padding: 90px 0;
	}
	
}
@media (max-width: 320px) {
	#interview-top {
		height: 260px;
	}
	#interview-top p.lead{
		font-size: 22px;
	}
}

#interview-top-body{
	padding: 60px 0;
}

.interview-list{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	max-width: 1170px;
	padding: 0 30px;
	margin: auto;
}
.top-interview .interview-list{
	padding-bottom: 50px;
}
.interview-list a{
	display: block;
	width: 32%;
	text-decoration: none;
	margin-bottom: 40px;
	text-align: left;
}
.top-interview .interview-list a{
	width: 47%;
	position: relative;
	height: 250px;
	overflow: hidden;
}
.interview-list a:after{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	-webkit-transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	-ms-transition: all .3s ease-out;
	transition: all .3s ease-out;
	z-index: 0;
}
.interview-list a#interview1:after{
	background:#05A2D5 url("../interview/common/img/interview-kazami-main.jpg") no-repeat 50% center/130%;
}
.interview-list a#interview2:after{
	background:#05A2D5 url("../interview/common/img/interview-urano-main.jpg") no-repeat 50% center/130%;
}
.interview-list a#interview3:after{
	background:#05A2D5 url("../interview/common/img/interview-kunimaru-main.jpg") no-repeat 50% center/130%;
}
.interview-list a#interview4:after{
	background:#05A2D5 url("../interview/common/img/interview-tamura-main.jpg") no-repeat 50% center/130%;
}
.interview-list a:hover:after{
	-moz-transform: scale(1.1);
	-webkit-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);
}
.interview-list a:hover{
	opacity:1;
}

.interview-list a h2{
	font-size:24px;
	font-weight: bold;
	line-height: 1.4em;
	margin: 1rem 0 1rem 0;
	position: absolute;
	top: 5%;
	color: #000E4E;
	z-index: 1;
}
.interview-list a h2 strong{
	display: inline-block;
	padding: 5px 0 0 0;
	font-size: 30px;
	color: #00B7F1;
}
.interview-list a h2 span{
	display: inline-block;
	padding: 5px 10px;
	background: white;
	margin-bottom: 5px;
}
/*.interview-list a h2 small{
	display: inline-block;
	padding-left: 10px;
}*/
.interview-list a p{
	width: 100%;
	margin-bottom: 10px;
}
.interview-list a .title-txt{
	background: white;
	padding: 10px 20px;
	position: absolute;
	left: 0;
	bottom: 0;
	min-width: 150px;
	z-index: 1;
}
.interview-list a p.int span{
	font-weight: bold;
	/*border-bottom: 2px solid #000E4E;
	padding: 0px 3px 2px 3px;*/
	background:#04B6F1;
	color: white;
	margin-right: 5px;
	padding: 3px 5px;
	border: none;
	font-weight: normal;
}

.interview-list a p {
	font-size: 14px;
	color: #162141;
}
.interview-list a p.name{
	font-size: 12px;
	margin-bottom: 0;
	line-height: 1.4em;
}
.interview-list a p.name strong{
	font-size: 16px;
	display: inline-block;
	margin-bottom: 5px;
}

.interview-list a p.goto{
	padding: 10px;
	background: white;
	text-align: center;
	width: 100%;
	box-sizing: border-box;
	font-size: 14px;
	color: #04B6F1;
	margin: 0;
	position: relative;
	font-weight: bold;
}
.interview-list a p.goto::after{
	content: "";
	display: inline-block;
    width: 8px;
    height: 8px;
    border-top: 1px solid #04B6F1;
    border-right: 1px solid #04B6F1;
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	margin-top: -4px;
}


#job{
	background: url(../img/job-back.jpg) no-repeat center top/cover;
}
#job .container{
	padding: 80px 0;
}
#job h3{
	text-align: center;
	font-size: 24px;
}
#job h3 strong{
	font-size: 36px;
}
#job h3 span{
	display: inline-block;
	padding: 10px 20px;
	background: white;
	margin-bottom: 10px;
}

.p-entry-button{
	line-height: 1.6em;
}

p.entry-add{
	text-align: center;
	color: white;
	line-height: 2.2em;
}
p.entry-add strong{
	font-size: 1.3em;
}
.p-entry-h2{
	margin-bottom: 40px;
}



.p-entry-list li p{
	padding-top: 10px;
}
.p-entry-list li p a{
	color: #000;
	text-decoration: underline;
}

@media (max-width: 767px) {
	.p-gnav-list li{
		padding: 15px;
	}
	.top-interview .interview-list{
		padding: 20px 20px 30px 20px;
	}
	.top-interview .interview-list a{
		width: 100%;
		height: 220px;
		margin-bottom: 30px;
	}
	.interview-list a h2{
		margin: 0;
	}
	.interview-list a h2 strong{
		font-size:24px;
		line-height: 1.2em;
	}
	.interview-list a p.goto{
		font-size: 14px;
	}
	.interview-list a .title-txt{
		padding: 10px;
	}
	.interview-list a:after{
		background-size: 170%!important;
	}
	
	#job .container{
		padding: 60px 0;
	}
	#job h3{
		text-align: center;
		font-size: 18px;
	}
	#job h3 strong{
		font-size: 30px;
	}
	#job h3 span{
		display: inline-block;
		padding: 10px 20px;
		background: white;
		margin-bottom: 10px;
	}
}

@media (max-width: 320px) {
	.interview-list a>div{
		height: 270px;
	}
	.interview-list a h2 strong{
		font-size:26px;
		padding: 5px 0;
	}
	.interview-list a p.goto{
		font-size: 16px;
	}
	.interview-list a .title-txt{
		padding:10px 10px 0 10px;
	}
}

/*job*/
section.top-job{
	padding: 160px 0;
    text-align: center;
	background: #000E4E;
	color: white;
}
section.top-job p{
	padding-bottom: 50px;
}
section.top-job .top-h2{
	color: white;
}

section.top-job .row{
	max-width: 1170px;
	margin: auto;
	display: flex;
	flex-wrap: wrap;
    justify-content: center;
    padding-bottom: 50px;
}

section.top-job .row .type-content:nth-of-type(1),
section.top-job .row .type-content:nth-of-type(5){
    margin: 0%;
}

.type-content{
    width: 18%;
	margin: 0 1%;
	text-align: center;
}

.type-content p{
	font-size: 18px;
	color: #00B7F1;
	text-align: center;
	font-weight: bold;
}
.type-content h3{
    font-size: 24px;
    text-align: center;
    padding-bottom: 20px;
    font-weight: bold;
}

.type-content span{
    width: 120px;
    height: 120px;
    display: flex;
    margin: auto;
    background: #00b7f1;
    border-radius: 50%;
    justify-content: center;
    align-items: center;
    margin-bottom: 10px;
}
.type-content img{
    width: 70%;
    display: block;
    margin: auto;
}
@media screen and (max-width: 640px){
	section.top-job{
		padding: 90px 0;
	}
	.type-content{
		width: 47%;
		margin: 0 1%;
	}
	section.top-job p{
		padding: 0 20px 40px 20px;
	}
	section.top-job .type-content p{
		padding: 0;
		text-align: center;
		font-size: 14px;
	}
	
	.type-content span{
		width: 100px;
		 height: 100px;
	}
	section.top-job .row{
		padding-bottom: 50px;
	}
	
}

/*c&m*/
section.top-candm{
	padding: 160px 0;
	text-align: center;
	background:url(../images/top/candm-back.jpg) no-repeat center center/cover;
}
section.top-candm h3{
	font-size: 1.8rem;
	margin-bottom: 20px;
	line-height: 1.4em;
}
section.top-candm h2 small{
	margin-top: 0;
}
section.top-candm span{
	background: white;
	display: inline-block;
	padding: 5px 10px;
	margin-bottom: 10px;
}
section.top-candm .lead{
	background: rgba(255,255,255,0.7);
	max-width: 980px;
	margin: 30px auto 100px auto;
	padding: 40px 0 40px 0;
}

section.top-candm p{
}
@media screen and (max-width: 640px){
	section.top-candm{
		padding: 90px 0;
	}
	section.top-candm p{
		padding: 0 20px 30px 20px;
		text-align: left;
	}
	section.top-candm .lead{
		margin: 30px auto 50px auto;
		padding: 30px 0 0px 0;
	}
}

/*数字で見る*/
section.top-data{
	padding: 160px 0;
	text-align: center;
    background: #f4f4f4;
}
#info-graph{
	max-width: 1170px;
	margin: auto;
}
#info-graph .row .data{
    width: 49%;
    padding: 0 40px;
    box-sizing: border-box;
    margin-bottom: 100px;
}
#info-graph .row .data h2{
    color: #00b7f1;
    font-size: 24px;
    text-align: center;
    font-weight: bold;
}

#info-graph .row .data>div{
    position: relative;
    width: 400px;
    height: 350px;
    margin: auto;
}

@media screen and (max-width: 640px){
	section.top-data{
		padding: 90px 0;
	}
    #info-graph .row .data{
        width: 100%;
        padding:10px 10px 10px;
		margin-bottom: 20px;
    }
    #info-graph .row .data h2{
        font-size: 24px;
    }
    #info-graph .row .data>div{
        position: relative;
        width: 300px;
        height: 250px;
        margin: auto;
    }
}

#info-graph .row .data1>div{
    height: 370px;
    background: url(../data/common/img/data1.png) no-repeat center center/100%;
}
#info-graph .row .data>div p{
    color:#000E4E;
    font-weight: bold;
}
#info-graph .row .data>div p strong{
    font-family: Arial, Helvetica, sans-serif;
}
#info-graph .row .data1>div p{
    position: absolute;
    line-height: 1.8em;
}
#info-graph .row .data1>div p.oversea{
    left: 14%;
    top: 22%;
    text-align: center;
}
#info-graph .row .data1>div p.domestic{
    left: 68%;
    top: 22%;
    text-align: center;
}
#info-graph .row .data1>div p strong{
    font-size: 38px;
}
@media screen and (max-width: 640px){
    #info-graph .row .data>div p{
        font-size: 12px;
    }
    #info-graph .row .data1>div{
        height: 250px;
    }
    #info-graph .row .data1>div p.oversea{
        left: 13%;
        top: 20%;
    }
    #info-graph .row .data1>div p.domestic{
        left: 68%;
        top: 20%;
    }
    #info-graph .row .data1>div p strong{
        font-size: 30px;
    }
}

#info-graph .row .data2>div{
    height: 370px;
    background: url(../data/common/img/data2.png) no-repeat center bottom/100%;
}
#info-graph .row .data2>div p{
    position: absolute;
    line-height: 1.8em;
    text-align: center;
}
#info-graph .row .data2>div p.all{
    left: 50%;
    top: 30px;
    transform: translateX(-50%);
    width: 100%;
}
#info-graph .row .data2>div p.oversea{
    left: 11%;
    top:47%;
    text-align: center;
}
#info-graph .row .data2>div p.domestic{
    left: 64%;
    top:47%;
    text-align: center;
}
#info-graph .row .data2>div p strong{
    font-size: 38px;
}
#info-graph .row .data2>div p.all strong{
    font-size: 50px;
}
@media screen and (max-width: 640px){
	#info-graph .row .data2{
		margin-bottom: 40px;
	}
    #info-graph .row .data2>div{
        height: 300px;
    }
    #info-graph .row .data2>div p strong{
        font-size: 28px;
    }
    #info-graph .row .data2>div p.all strong{
        font-size: 40px;
    }
    #info-graph .row .data2>div p.oversea{
        left: 12%;
        top:51%;
    }
    #info-graph .row .data2>div p.domestic{
        top:51%;
    }
}
/*体制*/
.top-organization{
	padding: 100px 0;
}
.u-mb0 {
    margin: 0px !important;
}
.u-mt0 {
    margin: 0px !important;
}
.top-organization-group{
	display: block;
	text-align: center;
}
.top-organization-panel{
	padding: 34px 12px 0;
}
.top-organization-group img{
	width: 680px;
}
.top-organization-group-right{
	padding: 0 0 80px 0;
}
@media screen and (max-width: 640px){
	.top-organization{
	padding: 60px 0;
}
	.top-organization-group img{
		width: 100%;
	}
	.top-organization-group-right{
		padding: 0 0 30px 0;
	}
}

/*スペシャル*/
section.top-special{
	padding: 160px 0;
	text-align: center;
	background: #000E4E;
}
section.top-special .top-h2,
section.top-special p{
	color: white;
}
section.top-special p{
	padding-bottom: 30px;
}
section.top-special img{
	width: 60%;
	margin: 0px auto 30px auto;
	display: block;
}


@media screen and (max-width: 640px){
	.u-mb0,
	.u-mt0{
		margin: 0!important;
	}
	section.top-special{
		padding: 90px 0;
	}
	section.top-special h2{
		line-height: 2.375rem;
	}section.top-special p{
		padding: 0 20px 30px 20px;
	}
	section.top-special img{
		width: 100%;
		margin: 0px auto 30px auto;
	}
}


/*採用情報*/
section#information{
	padding: 160px 0;
	text-align: center;
	background: #000E4E;
	color: white;
}
section#information .top-h2{
	color: white;
}

@media screen and (max-width: 640px){
	section#information{
		padding: 90px 0;
	}
	section#information h2{
		line-height: 2.375rem;
	}
}

/*インターンシップ*/
section#intern{
	padding: 160px 0;
	text-align: center;
	background:url(../images/top/internship-back.png) no-repeat center center/cover;
}
section#intern h3{
	font-size: 1.8rem;
	margin-bottom: 20px;
	line-height: 1.4em;
}
section#intern h2 small{
	margin-top: 0;
}
section#intern span{
	background: white;
	display: inline-block;
	padding: 5px 10px;
	margin-bottom: 10px;
}
section#intern .lead{
	background: rgba(255,255,255,0.7);
	max-width: 980px;
	margin: 30px auto 100px auto;
	padding: 40px 0 40px 0;
}

section#intern .intern-entry{
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	background: rgba(255,255,255,0.8);
	padding: 40px;
	max-width: 1170px;
	margin: auto;
	text-align: left;
}
section#intern .intern-entry h3{
	font-size: 20px;
	font-weight: bold;
}
section#intern .intern-entry div.txt{
	width:65%;
}
section#intern .intern-entry div.txt a{

}
section#intern .intern-entry p.entry-lead{
	font-size: 18px;
	width:100%;
	line-height: 1.8em;
	margin-bottom: 0;
}
section#intern .intern-entry p.entry-lead:before{
	content: "";
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 5px 0 5px 7px;
	border-color: transparent transparent transparent #00b7f1;
	margin-right: 3px;
}
section#intern .intern-entry p.entry-lead small{
	font-size: 14px;
}

section#intern .intern-entry .links{
	width: 35%;
}
section#intern .intern-entry .links small{
	padding-top: 10px;
	display: inline-block;
}
section#intern .intern-entry a.intern-entry-bt{
	width: 100%;
	display: block;
	background: #00b7f1;
	color: white;
	font-size: 36px;
	font-weight: bold;
	padding: 30px 40px;
	text-decoration: none;
	line-height: 1.6em;
	position: relative;
	letter-spacing: 0.1em;
}
section#intern .intern-entry a.intern-entry-bt small{
	font-size: 22px;
	display: inline-block;
	padding-left: 5px;
}
section#intern .intern-entry a.intern-entry-bt div.entry{
	font-size: 16px;
	background: white;
	display: inline-block;
	padding: 10px 20px 10px 10px;
	color: #00b7f1;
	position: absolute;
	bottom: 10px;
	right: 10px;
	line-height: 1.2em;
	font-weight: normal;
}
section#intern .intern-entry a.intern-entry-bt:before {
    content: "";
    display: block;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    transition: all .3s;
	background: white;
}
section#intern .intern-entry a.intern-entry-bt:after{
	/*content: "";
    display: inline-block;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    transform:  translateY(-50%)rotate(45deg);
    width: 30px;
    height: 30px;
    vertical-align: middle;
    position: absolute;
	top: 50%;
    right: 20px;*/
	content: "";
    display: block;
    width: 27px;
    height: 6px;
    background: transparent url(../images/common/entry-arrow.svg) top center no-repeat;
    position: absolute;
    top: 50%;
    right: 22px;
    transform: translateY(-50%);
}

@media screen and (max-width: 640px){
	section#intern{
		padding: 90px 0;
	}
	section#intern .intern-entry{
		padding: 30px;
		margin: 0 20px;
	}
	section#intern .intern-entry p.entry-lead{
		font-size: 16px;
		width:100%;
		line-height: 1.6em;
		margin-bottom: 20px;
	}
	section#intern .intern-entry a.intern-entry-bt{
		width: 100%;
		font-size: 24px;
		font-weight: bold;
		padding: 20px 30px;
		text-decoration: none;
		line-height: 1.6em;
		position: relative;
		letter-spacing: 0.1em;
	}
	section#intern .intern-entry a.intern-entry-bt small{
		font-size: 18px;
	}
	
}



/*about追加*/
#about-works .c-button{
	width: 600px;
}
#about-works .button-wrap{
	text-align: center;
	padding: 90px 0 0 0;
}

@media screen and (max-width: 640px){
	#about-works .c-button{
		width:80%;
		font-size: 1rem;
		line-height: 1.4em;
		height: auto;
		padding: 15px 0;
	}
	.c-button::before{
		width: 30px;
	}
	#about-works .button-wrap{
		padding: 50px 0 0 0;
	}
}


/*message追加*/
.messageArea{
	padding: 100px 0;
}
.messageArea .c-section-container{
	padding: 0 60px;
}
.messageArea h2{
	text-align: center;
	font-size:38px;
	color: #000E4E;
	font-weight: bold;
	padding: 0 0 40px 0;
}
.messageArea .message-contents{
	padding: 60px 0;
}
.messageArea .oneline{
	padding: 0px 0 60px 0;
}
.messageArea .row{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
}
.messageArea .row.reverse{
	flex-direction:row-reverse
}
.messageArea .row img{
	width: 40%;
	padding-top: 3em;
}
.messageArea .row>div.text{
	width: 55%;
}
.messageArea .row>div.text h3{
	font-size: 22px;
	font-weight: bold;
	margin-bottom: 20px;
}
.messageArea p{
	line-height: 2em;
}
.messageArea p strong{
	font-size: 22px;
}
.messageArea .master{
	padding: 20px 0 30px 0;
}
.messageArea p.center{
	text-align: center;
}
.messageArea .oneline img{
	margin: 20px auto;
	display: block;
}
.messageArea .oneline img.sp80{
	width: 80%;
	margin-top: 30px;
}
.messageArea .oneline img.pc-only{
	display: inline;
}
.messageArea .oneline img.sp-only{
	display: none;
}

@media screen and (max-width: 640px){
	.messageArea{
		padding: 60px 0 0px 0;
	}
	.messageArea .c-section-container{
		padding: 0 20px;
	}
	.messageArea h2{
		font-size:24px;
		padding: 0 0 30px 0;
	}
	.messageArea p{
		font-size: .9375rem;
	}
	.messageArea p strong{
		font-size: 16px;
	}
	.messageArea .message-contents{
		padding: 20px 0;
	}
	.messageArea .row img{
		width: 100%;
		margin-bottom: 30px;
		padding-top: 0;
	}
	.messageArea .row > div.text{
		width: 100%;
	}
	.messageArea .row > div.text h3{
		font-size: 18px;
	}
	.messageArea p strong{
		display: block;
	}
	.messageArea .oneline img.sp80{
		width: 100%;
		margin-top: 20px;
	}
	.messageArea .oneline img.pc-only{
		display: none!important;
	}
	.messageArea .oneline img.sp-only{
		display:inline;
	}
}
/*about 追加*/
.about-start .about-start-text{
	padding-bottom: 2rem;
}
.about-start .c-button{
	height: auto;
	line-height: 1.6em;
	padding: 10px 0;
	width: 400px;
}
.about-start .about-link-text{
	text-align: center;
}
@media screen and (max-width: 640px){
	.about-start .c-button{
	font-size: 1rem;
	width: 90%;
	}
}

.about-is{
	padding: 100px 0 545px;
}
@media screen and (max-width: 640px){
	.about-is{
		padding:80px 0 320px;
	}
}