@charset "UTF-8";

html {
	position: relative;
	min-height: 100%;
	scroll-padding-top: 100px;
}
* {
	margin: 0px;
	padding: 0px;
}
a{
	text-decoration: none;
}
img {
	border-width: 0px;
	line-height: 0;
	margin: 0px;
	padding: 0px;
}
br {
	letter-spacing: normal;
}
ul li {
	list-style-type: none;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	margin: 0;
	padding: 0;
}
body{
	width: 100%;
	height: 100%;
	color: #333;
	font-size: 15px;
	font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	font-style: normal;
	font-variant: normal;
	line-height: 150%;
	letter-spacing: 1px;
	text-align: center;
	-webkit-text-size-adjust: 100%;
	background-color: #fff;
}
a:hover{
	opacity: 0.6;
	filter: alpha(opacity=60);
	-moz-opacity: 0.6;
}
h1, h2, h3{
	font-size: inherit;
}
.red{
	color: red;
}
.err_mess{
	width: 90%;
	color: red;
	text-align: center;
	margin: 35px auto 15px auto;
}
.img_size{
	width: 100%;
}
input,select{
	vertical-align: middle;
}
.chk{
	width: 15px;
	height: 15px;
}
.clear{
	clear: both;
}
.text_right{
	text-align: right;
}


/*header設定*/
.inner {
    width: 90%;
    margin: 0 auto;
}
.inner:after {
    content: "";
    clear: both;
    display: block;
}
 
/* header */
.head{
	position: relative;
	height: 100vh;
	/* background: url(./img/main_img2.jpg) center / cover; */
	/* background: linear-gradient(top, #000, transparent, transparent, transparent, transparent), url(./img/main_img2.jpg);
	background: -webkit-linear-gradient(top, #000, transparent, transparent, transparent, transparent), url(./img/main_img2.jpg); */
	background: linear-gradient(top, rgba(0,0,0,1) 7%, transparent 15%), url(./img/main_img2.jpg);
	background: -webkit-linear-gradient(top, rgba(0,0,0,1) 7%, transparent 15%), url(./img/main_img2.jpg);
	background-position: center;
	background-size: cover;
}
#top-head {
    top: -100px;
    position: absolute;
    width: 100%;
    margin: 100px auto 0;
    padding: 20px 0 10px;
    line-height: 1;
    z-index: 999;
}
#top-head a,
#top-head {
    color: #0c6ab4;
		text-decoration: none;
}
#top-head .inner {
		position: relative;
}
#top-head .logo {
		float: left;
}
#top-head .logo img{
	height: 40px;
	margin-right: 10px;
}
#top-head .logo a{
	display: table;
}
#top-head .logo a span{
	font-size: 30px;
	display: table-cell;
	vertical-align: middle;
}
#global-nav ul {
    list-style: none;
    position: absolute;
    top: 50%;
    right: 0;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}
#global-nav ul li {
	line-height: 100%;
	display: inline-block;
}
#global-nav ul li a {
	background-color: rgba(255,255,255,0.8);
	/* padding: 10px 20px; */
	padding: 10px 0.6vw;
}
#global-nav ul .gn_last a{
	color: #fff;
	background-color: #0c6ab4;
	padding: 10px 20px;
}
#global-nav ul li ul{
	display: none;
	top: 52px;
	right: 70px;
	background: #fff;
	border: solid 1px #F5F5F5;
}
#global-nav ul li ul li{
	padding: 10px 0px;
	text-align: left;
	display:  list-item;
}
#global-nav ul li ul li a{
	padding: 0 20px;
}
#global-nav ul li:hover ul{
	display: list-item;
}
.smapho{
	display: none!important;
}

/* Fixed */
#top-head.fixed {
    margin-top: 0;
    top: 0;
    position: fixed;
    padding-top: 10px;
    height: 55px;
    background: #fff;
    background: rgba(255,255,255,.7);
    transition: top 0.65s ease-in;
    -webkit-transition: top 0.65s ease-in;
    -moz-transition: top 0.65s ease-in;
}
#top-head.fixed .logo {
    font-size: 24px;
    color: #333;
}
#top-head.fixed #global-nav ul li a {
    color: #333;
		/* padding: 10px 20px; */
		padding: 10px 1vw;
		background-color: transparent;
}
/* #top-head.fixed #global-nav ul .gn_last a {
	color: #fff;
	padding: 10px 20px;
} */
.head img{
	height: 100vh;
}

.head .main_mess{
	width: 84%;
	text-align: left;
	position: absolute;
	bottom: 17%;
	padding: 0 8%;
	padding-right: 2%;
	background-color: rgba(255,255,255,0.7);
	text-shadow: 1px 1px rgba(255,255,255,0.7);
	padding-bottom: 30px;
	padding-top: 30px;
}
.head .main_mess p{
	color: #0162b3;
	font-size: 40px;
    letter-spacing: 15px;

	/* margin-bottom: 40px; */
	/* margin-top: -10px; */
	/* line-height: 1.2em; */
	/* margin-bottom: 30px; */
	/* margin-top: 30px; */
}
.head .main_mess p:first-child{
	margin-bottom: 30px;
}

.head .main_mess div{
	width: 12%;
	text-align: center;
    letter-spacing: 3px;
	border: 1px #0162b3 solid;
}
.head .main_mess div a{
	color: #0162b3;
	font-size: 16px;
	display: block;
	padding: 7px 0;
}

/* Toggle Button */
#nav-toggle {
    display: none;
    position: absolute;
    right: 12px;
    top: 14px;
    width: 34px;
    height: 36px;
    cursor: pointer;
    z-index: 101;
}
#nav-toggle div {
    position: relative;
}
#nav-toggle span {
    display: block;
    position: absolute;
    height: 4px;
    width: 100%;
    background: #666;
    left: 0;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
}
#nav-toggle span:nth-child(1) {
    top: 0;
}
#nav-toggle span:nth-child(2) {
    top: 11px;
}
#nav-toggle span:nth-child(3) {
    top: 22px;
}

/*メイン設定*/
#main h2{
	color: #0162b3;
	margin: 100px 0 70px 0;
}
#main h2 p{
	font-size: 30px;
	font-weight: 600;
	letter-spacing: 10px;
	/* margin-top: 120px; */
	margin-bottom: 12px;
	padding-bottom: 0.8em;
	position: relative;
}
#main h2 p::after{
	position: absolute;
	content: '';
	left: 0;
	bottom: 0;
	width: 50%;
	margin: 0 25%;
	height: 7px;
	box-sizing: border-box;
	border-top: 3px solid #0162b3;
	border-bottom: 1px solid #0162b3;
}
#main h2 span{
	letter-spacing: 8px;
}
.more{
	display: inline-block;
	width: 15%;
	border: 1px #0162b3 solid;
	border-radius: 20px;
	margin: 5% auto;
}
.more a{
	width: 100%;
	height: 100%;
	color: #0162b3;
	display: block;
	padding: 10px 0;
}
#footer{
	width: 100%;
	border-top: 1px #c2cadf solid;
	margin-top: 100px;
}
footer{
	padding: 30px 0;
}
.foot_info{
	color: #fff;
	background-color: #312f30;
}
.wf-mplus1p{
	width: 80%;
	font-size: 0;
	letter-spacing: -4em;
	margin: 0 auto;
}
.wf-mplus1p li{
	font-size: 13px;
	letter-spacing: normal;
	display: inline-block;
	vertical-align: top;
}
.wf-mplus1p .wf-mplus1p_left{
	width: 60%;
	text-align: left;
}
.wf-mplus1p .wf-mplus1p_left p{
	margin-top: 15px;
}
.wf-mplus1p .wf-mplus1p_right{
	width: 40%;
	text-align: left;
}
.wf-mplus1p .wf-mplus1p_right p{
	margin-bottom: 4px;
}
.wf-mplus1p .wf-mplus1p_right p a{
	color: #333;
}
.wf-mplus1p li .f_logo{
	width: 50%;
}
#footer .foot_info{
	font-size: 12px;
	padding: 6px 0;
}


/*index.php*/
.news_box{
	text-align: center;
}
.news{
	width: 90%;
    text-align: left;
	border-collapse: collapse;
	margin: 0 auto;
}
.news th{
	text-align: left;
	white-space: nowrap;
	vertical-align: top;
	padding: 0 10px 30px 0;
}
.news td{
	text-align: left;
	vertical-align: top;
	padding: 0 0 30px 10px;
}
.fa-dot-circle{
	color: #0162b3;
	padding-right: 5px;
}

.greeting_box{
	position: relative;
}
.greeting_box div{
	width: 40%;
	color: #fff;
	line-height: 200%;
	text-align: left;
	position: absolute;
	top: 50%;
	left: 50%;
	-ms-transform: translate(0,-50%);
	-webkit-transform: translate(0,-50%);
	transform: translate(0,-50%);
	margin:0;
	padding:0;
	background-color: rgba(113, 113, 113, 0.7);
}
.greeting_box div .greeting_title{
	padding: 0 0.3em;
	font-size: 36px;
	line-height: 150%;
	margin-bottom: 5px;
}
.greeting_box div .greeting_text{
	/* font-size: 15px; */
	padding: 1em;
	line-height: 170%;
	font-size: 1.1vw;
	/* line-height: 190%; */
}

.grad-wrap-news{
	position: relative;
	display: inline-block;
}
.grad-trigger-news{
	width: 15%;
	border: 1px #0162b3 solid;
	border-radius: 20px;
	background: #fff;
	margin: 0 auto -2.5% auto;
	cursor: pointer;
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 2;
}
.grad-trigger-news span{
	width: 100%;
	height: 100%;
	color: #0162b3;
	display: block;
	padding: 10px 0;
}
.grad-trigger-news span:hover{
	opacity: 0.6;
}
.grad-item-news{
	overflow: hidden;
}
.grad-item-news::before{
	width: 100%;
	height: 100px;
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	content: "";
	background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
	background: linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
}
.access {
	margin: 70px 0;
}
.access li{
	width: 30%;
	display: inline-block;
}
.access_left{
	vertical-align: top;
	text-align: left;
	margin-right: 10%;
}
.access_left h3{
	color: #0162b3;
	font-size: 1.3em;
	margin-bottom: 1em;
	border-bottom: solid 1px #0162b3;
}
.access_left p span{
	font-size: 1.1em;
	font-weight: bolder;
}
.access_right{
	text-align: right;
}
.access_right img{
  width: 140%;
}


/*privacy.php*/
.w_90{
	width: 90%;
	margin: auto;
}
.blue_head{
	margin: 100px 0 70px 0;
	padding-left: 1em;
	color: #444;
	font-size: 1.7em;
	font-weight: 100;
	border-left: solid 10px #6C8AFC;
	border-bottom: dashed 1px #6C8AFC;
	text-align: left;
	line-height: 1.5em;
}
.privacy_mark{
	width: 90px;
	height: auto;
	margin: 1.5em auto ;
	vertical-align: middle;
}
.flex{
	display: flex;
	flex-direction: row;
}
.privacy_box{
	text-align: left;
	width: 80%;
}

/*****
アコーディオン
****/
.acd-label{
	display: block;
	margin: 1.5px 0;
	padding : 11px 12px;
	cursor :pointer;
	border: 1px solid #ddd;
	position: relative;
}
.acd-label::after{
	content: '';
	width: 8px;
	height: 8px;
	border-top: solid 2px #444;
	border-right: solid 2px #444;
	transform: rotate(135deg);
	position: absolute;
	top: 50%;
	right: 10px;
	margin-top: -0.5em;
}
.acd-label:hover{
	background :#f8f8f8;
}
.acd-check{
	display: none;
}
.acd-content h4{
	margin-top: 1.5em;
}
.acd-content span{
	font-weight: 600;
	display: inline-block;
	margin-top: 1em;
}
.acd-content{
	height: 0;
	overflow: hidden;
	opacity: 0;
	transition: 0.2s;
}
.acd-check:checked + .acd-label + .acd-content{
	height: auto;
	padding: 1em;
	opacity: 1;
	border: 1px solid #ddd;
}


/*product.php*/
.gray_back{
	padding: 7%;
	background: #F0F0EE;
}
.blue_head_2{
	line-height: 1.8em;
	padding-left: 1em;
	color: #444;
	font-size: 1.5em;
	font-weight: bolder;
	text-align: left;
  border-bottom: solid 3px #0162B4;
  position: relative;
}
.gray_frame{
	width: 45%;
	margin: 1.3%;
	padding: 1%;
	border: double 2px #ddd;
	position: relative;
	text-align: left;
}
.gray_frame p{
	padding-left: 0.9em;
	text-indent: -0.9em;
	font-size: 0.9em;
}
.gray_frame h4{
	font-size: 1.3em;
	margin-bottom: 0.3em;
	border-bottom: solid 1px #0162B4;
}
.flex_2{
	display: flex;
	width: 100%;
	flex-wrap: wrap;
	justify-content:space-between;
}
.product_case h3{
	/* margin-bottom: 3%; */
	margin: 3% 0;
}
.product_name{
	margin: 0 0 50px 50px;
	text-align: left;
	padding-left: 1em;
	width: 50%;
}
.product_name p{
	text-indent: -1em;
}
.product_picture{
	margin: 0 50px 50px 50px ;
	text-align: right;
	width: 27vw;
}
/* .product_img{
	width: 25%;
} */
.gray_frame img{
	width: 100%;
}

/* culture.php */
.culture_main h3{
	clear: both;
	margin: 3% 0;
}
.culture_main h4{
	text-align: left;
	margin-bottom: 30px;
	width: 300px;
	padding-left: 1em;
	margin-top: 20px;
	position: relative;
	display: inline-block;
	padding: 1rem 2rem 1rem 4rem;
	color: #fff;
	border-radius: 100vh 0 0 100vh;
	background: #0162b3;
}
.culture_main h4:before {
  position: absolute;
  top: calc(50% - 7px);
  left: 10px;
  width: 14px;
  height: 14px;
  content: '';
  border-radius: 50%;
  background: #fff;
}
.culture_mess{
	width: 100%;
	margin: 10% auto;
}
.culture_mess h3{
	color: #0162b3;
	font-size: 1.5em;
}
.culture_mess{
	width: 100%;
	margin: 10% auto;
}
.box_left{
	width: 40%;
	/* height: 300px; */
	float: left;
	margin: 5% 0 15% 5%;
}
.box_right{
	width: 40%;
	/* height: 300px; */
	float: right;
	margin: 5% 5% 15% 0;
}
.interview_text{
	text-align: left;
}
.interview_picture{
	width: 100%;
}

/*career.php*/
.w_90{
	width: 90%;
	margin: auto;
}
.green_head{
	margin: 100px 0 70px 0;
	padding-left: 1em;
	color: #444;
	font-size: 2em;
	font-weight: 100;
	border-left: solid 10px #67BA5C;
	border-bottom: dashed 1px #67BA5C;
	text-align: left;
	line-height: 1.5em;
}
.yellow_head{
	margin: 100px 0 70px 0;
	padding-left: 1em;
	color: #444;
	font-size: 2em;
	font-weight: 100;
	border-left: solid 10px #f1ce32;
	border-bottom: dashed 1px #f1ce32;
	text-align: left;
	line-height: 1.5em;
}
.career_box{
	text-align: left;
}
.career_table{
	margin-top: 5%;
	border-collapse: collapse;
  border-spacing: 0;
}
.career_table th{
	padding: 1em;
	border: solid 1px #ddd;
	background: #F5F5F5;
}
.career_table td{
	padding: 1em;
	border: solid 1px #ddd;
}

/*************************************************
３段組
**************************************************/
.content {
	width: 80%;
	font-size: 0;
	letter-spacing: -4em;
	margin: 0 auto;
}
.grad-wrap {
	width: 31.42%;
	font-size: 14px;
	letter-spacing: normal;
	position: relative;
	display: inline-block;
	vertical-align: top;
	margin-right: 2.87%;
}
.grad-wrap:nth-child(3n) {
	margin-right: 0;
}
.grad-trigger, .more_link {
	width: 138px;
	color: #fff;
	text-align: center;
	border: none;
	border-radius: 2px;
	background: #0162b3;
	cursor: pointer;
	transition: .2s ease;
	box-shadow: 0 0 3px rgba(0,0,0,.3);
	z-index: 2;
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	padding: .5em 0;
}
.grad-trigger::after, .more_link::after {
	content: "see more"
}
.grad-trigger:hover, .more_link:hover {
	opacity: 100;
	border: none;
	color: #0162b3;
	background: #fff;
}
.grad-trigger .fa {
	margin-right: .5em;
}
.grad-item {
	width: 90%;
	color: #fff;
	/* height: 450px; */
	position: relative;
	overflow: hidden;
	padding: 0 5%;
	text-shadow: 0.7px 0px #001C41, -0.7px 0px #001C41, 0px 0.7px #001C41, 0px -0.7px #001C41;
}
.grad-item.is-hide {
	height: 300px;
}
.grad-item-news.is-hide {
	height: 150px;
}
.grad-item p + p {
	margin-top: 1em;
}
.grad-item h3{
	font-size: 30px;
	font-weight: 500;
	line-height: 150%;
	margin: 20px 0;
}
.grad-item table th{
	font-weight: normal;
	text-align: left;
	vertical-align: top;
	white-space: nowrap;
	padding: 0 4% 15px 0;
}
.grad-item table td{
	text-align: left;
	vertical-align: top;
	padding: 0 0 15px 4%;
}
.grad-item p{
	text-align: left;
}
.grad-item p a, .grad-item table tr td a{
	color: #fff;
	text-shadow: 0.7px 0px #0252ad, -0.7px 0px #0252ad, 0px 0.7px #0252ad, 0px -0.7px #0252ad;
	text-decoration: underline;
}
.grad-item .split_2{
	text-indent: -2em;
	padding-left: 2em;
}
.grad-item .split_1{
	text-indent: -1em;
	padding-left: 1em;
}
.adjust_1{
	font-size: 1vw;
}
.grad-item::before{
	width: 100%;
	height: 40px; /*グラデーションで隠す高さ*/
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	content: "";
	background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
	background: linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
}
.grad-item:last-child{
	padding-bottom: 15%;
}
.grad-trigger.is-show, .grad-trigger-news.is-show{
	bottom: 0;
}
.grad-trigger.is-show::after{
	content: "close"
}
.grad-trigger.is-show .fa{
	transform: rotate(180deg);
}
.grad-trigger.is-show + .grad-item::before{
	display: none;
}
.grad-trigger-news.is-show + .grad-item-news::before{
	display: none;
}
.grad-wrap .one{
	background-image: url(./img/co_1.png);
	background-repeat: no-repeat;
	background-size: cover;
}
.grad-wrap .two{
	background-image: url(./img/co_2.png);
	background-repeat: no-repeat;
	background-size: cover;
}
.grad-wrap .three{
	background-image: url(./img/co_3.png);
	background-repeat: no-repeat;
	background-size: cover;
}
.in_house_box{
	width: 80%;
	margin: 100px auto 50px auto;
	line-height: 0px;
}
.in_house_box .in_house{
	font-size: 0;
	letter-spacing: -4em;
}
.in_house_box .in_house li{
	width: 48.56%;
	display: inline-block;
	margin-right: 2.88%;
}
.in_house_box .in_house li:nth-child(2n){
	margin-right: 0;
}
.in_house_1{
	position: relative;
}
.in_house_box .in_house_title_1 {
	width: 30%;
	padding: 0.1em 0;
	display: inline-block;
	z-index: 2;
	background-color: #0162B4;
	color: #fff;
	font-size: 12px;
	line-height: 150%;
	position: absolute;
	top: 2%;
	left: -6px;
}
.in_house_box .in_house_title_1::before {
	position: absolute;
  content: '';
  top: 100%;
  left: 0;
  border: none;
  border-bottom: solid 5px transparent;
  border-right: solid 6px #004885;
}

.in_house_2{
	position: relative;
}
.in_house_box .in_house .in_house_2 .in_house_title_2 {
	width: 30%;
	padding: 0.1em 0;
	display: inline-block;
	z-index: 2;
	background-color: #0162B4;
	color: #fff;
	font-size: 12px;
	line-height: 150%;
	position: absolute;
	top: 2%;
	left: -6px;
}
.in_house_box .in_house .in_house_2 .in_house_title_2::before {
	position: absolute;
  content: '';
  top: 100%;
  left: 0;
  border: none;
  border-bottom: solid 5px transparent;
  border-right: solid 6px #004885;
}



.sub_content{
	width: 100%;
	background-color: #f0f0ee;
	margin-top: 100px;
	padding: 10px 0 100px 0;
}
.sub_content .business{
	width: 88%;
	font-size: 0;
	letter-spacing: -4em;
	margin-left: auto;
}
.sub_content .business li{
	font-size: 14px;
	text-align: left;
	vertical-align: top;
	letter-spacing: normal;
	display: inline-block;
	
}
.sub_content .business .business_left{
	width: 40%;
}
.sub_content .business .business_right{
	width: 55%;
	margin-left: 5%;
}
.sub_content .business li h3{
	color: #0162b3;
	font-size: 30px;
	font-weight: 500;
	line-height: 150%;
	margin-bottom: 20px;
}
.sub_content .business li p{
	line-height: 280%;
}

.business_box{
	position: relative;
}
.business_box div {
	text-align: center;
	width: 40%;
	position: absolute;
	top: 50%;
	left: 10%;
	-ms-transform: translate(0,-50%);
	-webkit-transform: translate(0,-50%);
	transform: translate(0,-50%);
	margin:0;
	padding:0;
}
.business_box div .business_title {
	color: #0162b3;
	font-size: 28px;
	font-weight: 500;
	line-height: 150%;
	text-align: left;
}
.business_box div .business_text{
	padding: 1.3em;
	line-height: 120%;
	text-align: left;
	font-size: 1vw;
	font-weight: 530;
	color: #333;
	background-color: rgba(255,255,255,0.9);
}
.business_box div .business_text .more_business{
	width: 70%;
	text-align: center;
	margin: 1em 15%;
}
.more_business a{
	padding: 3px 0;;
}

.sub_content .product{
	width: 80%;
	font-size: 0;
	letter-spacing: -4em;
	margin: 0 auto;
}
.sub_content .product li{
	width: 48.56%;	
	font-size: 14px;
	text-align: left;
	vertical-align: top;
	letter-spacing: normal;
	display: inline-block;
	margin: 0 2.88% 50px 0;
}
.sub_content .product li:nth-child(2n){
	margin-right: 0;
}
.sub_content .product .product_right{
	position: relative;
}
.sub_content .product .product_right p{
	position: absolute;
	bottom: 0;
	left: 0;
}
.sub_content .product li h3{
	color: #0162b3;
	font-size: 30px;
	font-weight: 500;
	line-height: 150%;
	margin-bottom: 20px;
}
.sub_content .recruit_img{
	position: relative;
	margin-top: 150px;
}
.sub_content .recruit_img .recruit_mess{
	position: absolute;
	top: 40%;
	right: 10%;
	text-shadow: 1px 1px rgba(255,255,255,0.7);
}
.sub_content .recruit_img .recruit_mess p{
	color: #0162b3;
	font-size: 40px;
    line-height: 180%;
	letter-spacing: 15px;
}
.sub_content .recruit_img .recruit_link{
	width: 25%;
	position: absolute;
	bottom: 10%;
	right: 10%;
}
.sub_content .recruit_img .recruit_link .new_join,
.sub_content .recruit_img .recruit_link .diagnosis_join,
.a_join,
.b_join{
	box-shadow: 2px 2px 2px rgba(0,0,0,0.4);
	margin-bottom: 40px;
}
.sub_content .recruit_img .recruit_link .new_join a{
	color: #fff;
	font-size: 20px;
	display: block;
	text-decoration: none;
	position: relative;
	background: #075da9;
	padding: 15px 25px 15px 10px;
}
.sub_content .recruit_img .recruit_link .diagnosis_join a{
	color: #fff;
	font-size: 20px;
	display: block;
	text-decoration: none;
	position: relative;
	background: #936cba;
	padding: 15px 25px 15px 10px;
}
.a_join,
.b_join{
	width: 40%;
	display: inline-block;
	margin-top: 3em;
}

.a_join a{
	color: #fff;
	font-size: 20px;
	display: block;
	text-decoration: none;
	position: relative;
	background: #f1ce32;
	padding: 15px 25px 15px 10px;
}
.b_join a{
	color: #fff;
	font-size: 20px;
	display: block;
	text-decoration: none;
	position: relative;
	background: #67BA5C;
	padding: 15px 25px 15px 10px;
}
.sub_content .recruit_img .recruit_link .new_join a:after,
.sub_content .recruit_img .recruit_link .diagnosis_join a:after,
.a_join a:after,
.b_join a:after{
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	right: 10px;
	width: 6px;
	height: 6px;
	margin: -4px 0 0 0;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	-webkit-transform: rotate(45deg);
			transform: rotate(45deg);
}
.sub_content .recruit_img .recruit_link .mid_join{
	box-shadow: 2px 2px 2px rgba(0,0,0,0.4);
}
.sub_content .recruit_img .recruit_link .mid_join a{
	color: #fff;
	font-size: 20px;
	display: block;
	text-decoration: none;
	position: relative;
	background: #151c62;
	padding: 15px 25px 15px 10px;
}
.sub_content .recruit_img .recruit_link .mid_join a:after{
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	right: 10px;
	width: 6px;
	height: 6px;
	margin: -4px 0 0 0;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	-webkit-transform: rotate(45deg);
			transform: rotate(45deg);
}
.recruit_text{
	width: 50%;
	font-size: 18px;
	line-height: 200%;
	margin: 0 auto 50px auto;
}

.grad-wrap .first{
	background-image: url(./img/recruit_1.png);
	background-repeat: no-repeat;
	background-size: cover;
}
.grad-wrap .second{
	background-image: url(./img/recruit_2.png);
	background-repeat: no-repeat;
	background-size: cover;
}
.grad-wrap .third{
	background-image: url(./img/recruit_3.png);
	background-repeat: no-repeat;
	background-size: cover;
}

/* ラベル部分 右上に表示 */
.triangle_a::before {
    content: "";
    top: -5px;
    right: -5px;
    border-bottom: 4em solid transparent;
    border-right: 4em solid #0c6ab4; /* ラベルの色はここで変更 */
    position: absolute;
    z-index: 100;
}
.triangle_a::after {
    content: "";
    display: block;
    top: 5px;
    transform: rotate(45deg);
    right: 0;
    position: absolute;
    z-index: 101;
}
.triangle_b::before {
    content: "";
    top: -5px;
    right: -5px;
    border-bottom: 4em solid transparent;
    border-right: 4em solid #151c62; /* ラベルの色はここで変更 */
    position: absolute;
    z-index: 100;
}
.triangle_b::after {
    content: "";
    display: block;
    top: 5px;
    transform: rotate(45deg);
    right: 0;
    position: absolute;
    z-index: 101;
}
.ask{
	width: 80%;
	text-align: left;
	margin: 0 auto;
}
.ask_box{
	width: 50%;
}
.ask_box th{
	font-weight: normal;
}
.waku{
	width: 98%;
	border: solid 1px #ccc;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	margin-bottom: 20px;
	padding: 1%;
}
.waku_2{
	width: 98%;
	height: 200px;
	border: solid 1px #ccc;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	margin-bottom: 20px;
	padding: 1%;
}
.send_btn{
	color: #fff;
	cursor: pointer;
	border: 0;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	background-color: #1581fd;
	padding: 5px 20px;
}

.rank_head{
	width: fit-content;
	margin: 120px auto 30px auto;
	padding: 0.5em 1em;
	position: relative;
	background-color: #1581fd;
  border-radius: 6px;
	color: #FFF;
	font-size: 2em;
	font-weight: 100;
	text-align: left;
	line-height: 1.5em;
}
.rank_head::after {
  position: absolute;
  top: 100%;
  left: 50px;
  content: '';
  width: 0;
  height: 0;
  border: 10px solid transparent;
  border-top: 15px solid #1581fd;
}
.rank_table{
	width: fit-content;
	margin: 60px auto 70px auto;
	padding:1em 5em;
	text-align: left;
	font-size: 1.3em;
  border: 3px solid #94c3f8;
	border-radius: 6px;
}
.rank_table tr{
	height: 5em;
}
.rank{
	text-align: center;
	background-color: #0e67cc;
	border-radius: 50%;
	color: #fff;
	font-size: 1.4em;
	padding: 0.8em 0.5em;
	margin-right: 1em;
}
.rank_text{
	text-indent: 1em;
	font-weight: 800;
}
.rank_mess{
	width: fit-content;
	margin: auto;
	text-align: left;
	font-size: 1.3em;
	line-height: 1.4em;
}

.diagnosis_arrow_img{
	width: 10%;
	height: auto;
	margin: 5% auto;
	margin-left: 45%;
}


/*diagnosis*/
.diag_head{
	font-size: 28px;
	padding: 0.5em 4em;
}
.diagnosis_head_sp{
	font-size: 1.8em;
    text-indent: -1em;
    padding-left: 2em;
	margin: 100px 0 30px 0;
}
.diagnosis_title{
	width: 70%;
	font-size: 1.6em;
	border-bottom: 3px dashed #000;
	margin: 40px auto 30px auto;
	padding-bottom: 10px;
}
.diagnosis_title_a{
	width: 70%;
	font-size: 1.6em;
	margin: 40px auto 30px auto;
	padding-bottom: 5px;
	background: linear-gradient(transparent 60%, #f1ce32 60%);
}
.diagnosis_title_b{
	width: 70%;
	font-size: 1.6em;
	margin: 40px auto 30px auto;
	padding-bottom: 5px;
	background: linear-gradient(transparent 60%, #67BA5C 60%);
}
.diag_mess{
	line-height: 1.5em;
}
.diagnosis_sp{
	width: 90%;
}
.diagnosis_a_sp{
	width: 60%;
}
.br-pc{
	display: none;
}
.diagnosis_img{
	width: 50%;
	margin: 10px auto 30px auto;
}

.income_example {
	width: fit-content;
	position: relative;
	margin: 2em auto;
	padding:2em;
	text-align: left;
	background: #FFFFFF;
	border: solid 3px #67BA5C;
	border-radius: 6px;
}
.income_example .income_example_title {
	position: absolute;
	display: inline-block;
	top: -20px;
	left: 10px;
	padding: 0.5em 1em;
	background: #67BA5C;
	color: #FFFFFF;
	font-weight: bold;
	border-radius: 6px;
}
.income_example p {
	margin: 0; 
	padding: 0;
}
.pc_only{
	display: inline;
}
.sp_only{
	display: none;
}
.box_lr{
	display:flex;
	flex-direction: row;
	justify-content: space-between;
}
.box_lr:nth-child(even) {
	flex-direction: row-reverse;
}
.box_lr:nth-child(even) .interview_img {
	margin: 5% 0 15% 5%;
}


/*err*/
.att_text{
	font-size: 15px;
	letter-spacing: normal;
	line-height: 150%;
}
.att_text p{
	margin-top: 10px;
}
.att_text a{
	text-decoration: underline;
}

/**********スマホ**********/
/* @media screen and (max-width: 768px) { */
@media screen and (max-width: 980px) {
	/*ページ大枠*/
	body{
		font-size: 13px;
	}
	/*iphoneの丸み無くす*/
	input[type="button"],input[type="text"],input[type="submit"],textarea {
		-webkit-appearance: none;
		border-radius: 0;
	}
	.err_mess{
		width: 90%;
		color: red;
		text-align: center;
		margin: 35px auto 15px auto;
	}	
	/*err*/
	.att_text{
		width: 90%;
		margin: 30px auto 0 auto;
	}
	
	/*header設定*/
    #top-head,
    .inner {
        width: 100%;
        padding: 0;
    }
    #top-head {
        top: 0;
        position: fixed;
        margin-top: 0;
    }
    /* Fixed reset */
    #top-head.fixed {
        padding-top: 0;
        background: transparent;
		}
		#mobile-head {
				background: #fff;
				width: 100%;
				height: 56px;
				z-index: 999;
				position: relative;
		}
    #top-head.fixed .logo,
    #top-head .logo {
        position: absolute;
        left: 13px;
        top: 13px;
        color: #333;
        font-size: 26px;
    }
		#top-head .logo img {
			width: auto;
			height: 26px;
			margin-right: 7px;
		}
		#top-head .logo a span{
			font-size: 18px;
		}
    #global-nav {
        position: absolute;
        /* 開いてないときは画面外に配置 */
        top: -500px;
        background: #0162b3;
        width: 100%;
        text-align: center;
        -webkit-transition: .5s ease-in-out;
        -moz-transition: .5s ease-in-out;
        transition: .5s ease-in-out;
    }
    #global-nav ul {
		font-size: 15px;
        list-style: none;
        position: static;
        right: 0;
        bottom: 0;
		transform: none;
    }
    #global-nav ul li {
		display: block;
		border-bottom: 1px #fff solid;
		}
		#global-nav ul li ul li{
			text-align: center;
		}
		#global-nav ul li ul li a{
			color: #0162b3!important;
		}
    #top-head #global-nav ul li a,
    #top-head.fixed #global-nav ul li a {
		width: 100%;
		color: #fff;
		display: block;
		padding: 18px 0;
		background-color: #0162b3;
    }
	#top-head #global-nav ul .gn_last{
		border-bottom: 0;
	}
	#top-head #global-nav ul .gn_last a{
		background-color: transparent;
		padding: 18px 0;
	}
    #nav-toggle {
        display: block;
    }
    /* #nav-toggle 切り替えアニメーション */
    .open #nav-toggle span:nth-child(1) {
        top: 11px;
        -webkit-transform: rotate(315deg);
        -moz-transform: rotate(315deg);
        transform: rotate(315deg);
    }
    .open #nav-toggle span:nth-child(2) {
        width: 0;
        left: 50%;
    }
    .open #nav-toggle span:nth-child(3) {
        top: 11px;
        -webkit-transform: rotate(-315deg);
        -moz-transform: rotate(-315deg);
        transform: rotate(-315deg);
    }
    /* #global-nav スライドアニメーション */
    .open #global-nav {
        /* #global-nav top + #mobile-head height */
        -moz-transform: translateY(556px);
        -webkit-transform: translateY(556px);
        transform: translateY(556px);
		}
		.smapho{
			display: block!important;
		}
	
	/*メイン設定*/
	#main h2{
		margin: 80px 0 30px 0;
	}
	#main h2 p::after{
		width: 80%;
		margin: 0 10%;
	}
	#footer{
		margin-top: 50px;
	}
	footer{
		padding: 15px 0;
	}
	.wf-mplus1p{
		width: 90%;
		margin: 0 auto;
	}
	.wf-mplus1p li .f_logo{
		width: 94%;
	}
	.wf-mplus1p li{
		font-size: 13px;
		letter-spacing: normal;
		display: block;
	}
	.wf-mplus1p .wf-mplus1p_left{
		width: 100%;
		text-align: left;
	}
	.wf-mplus1p .wf-mplus1p_left p{
		margin-top: 15px;
	}
	.wf-mplus1p .wf-mplus1p_right{
		display: none;
	}
	
	
	/*index.php*/
	.head .main_mess {
		width: 90%;
		/* padding: 0 5%; */
	}
	.head .main_mess p {
		color: #0162b3;
		font-size: 25px;
		letter-spacing: 12px;
		/* margin-bottom: 22px; */
	}
	.head .main_mess div{
		width: 42%;
		border: 0;
	}
	.head .main_mess div a {
		background-color: #fff;
	}
	.news {
		width: 80%;
	}
	.news th {
		padding: 0 5px 30px 0;
	}
	.news td {
		padding: 0 0 30px 5px;
	}
	.more {
		width: 42%;
	}
	.content {
		width: 90%;
	}
	.greeting_box div {
		width: 90%;
		color: #333;
		line-height: 100%;
		position: static;
		top: 0;
		left: 0;
		-ms-transform: none;
		-webkit-transform: none;
		transform: none;
		margin: 0 auto;
		background-color: transparent;
		box-shadow: none;
	}
	.greeting_box div .greeting_title {
		font-size: 18px;
		line-height: 150%;
		margin: 10px 0;
	}
	.greeting_box div .greeting_text {
		font-size: 14px;
		line-height: 150%;
	}
	.grad-item h3{
		font-size: 22px;
	}
	.grad-item table td{
		padding: 0 0 15px 1%;
	}
	.adjust_1{
		font-size: 1em;
	}
	.grad-wrap {
		width: 100%;
		font-size: 14px;
		letter-spacing: normal;
		position: relative;
		display: inline-block;
		vertical-align: top;
		margin: 0 0 30px 0;
	}
	.grad-wrap:nth-child(3n) {
		margin-right: 0;
	}
	.sub_content{
		margin-top: 50px;
		padding: 10px 0 50px 0;
	}
	.sub_content .product{
		width: 90%;
	}
	.sub_content .business li h3{
		font-size: 22px;
	}
	.sub_content .business{
		width: 90%;
		margin: 0 auto;
	}
	.sub_content .business li{
		display: block;
	}
	.sub_content .business li p{
		line-height: 180%;
	}
	.sub_content .business .business_left{
		width: 100%;
	}
	.sub_content .business .business_right{
		width: 100%;
		margin: 20px 0 0 0;
	}

	.business_box div {
		width: 90%;
		color: #333;
		line-height: 100%;
		position: static;
		top: 0;
		left: 0;
		-ms-transform: none;
		-webkit-transform: none;
		transform: none;
		margin: 0 auto;
	}
	.business_box div .business_title {
		font-size: 22px;
	}
	.business_box div .business_text {
		color: #333;
		line-height: 180%;
		font-size: 1em;
		font-weight: normal;
		background-color: transparent;
		box-shadow: none;
	}
	
	.sub_content .product li{
		width: 100%;
		display: block;
		margin: 0 0 5px 0;
	}
	.sub_content .product li:nth-child(2n){
		margin-right: 0;
	}
	.sub_content .product .product_right{
		position: static;
	}
	.sub_content .product .product_right p{
		position: static;
		margin-bottom: 25px;
	}
	.sub_content .product li h3{
		font-size: 18px;
		margin-bottom: 5px;
	}
	.sub_content .recruit_img{
		position: static;
		margin-top: 50px;
	}
	.sub_content .recruit_img .recruit_mess{
		position: static;
		top: 0;
		left: 0;
		margin-bottom: 20px;
	}
	.sub_content .recruit_img .recruit_mess p{
		color: #0162b3;
		font-size: 22px;
		line-height: 180%;
		letter-spacing: normal;
		display: inline-block;
	}
	.sub_content .recruit_img .recruit_link{
		width: 90%;
		position: static;
		bottom: 0;
		left: 0;
		margin: 0 auto 20px auto;
	}
	.sub_content .recruit_img .recruit_link .new_join{
		margin-bottom: 20px;
	}
	.recruit_text{
		width: 90%;
		font-size: 14px;
		line-height: 180%;
		text-align: left;
		margin: 0 auto 50px auto;
	}
	.ask{
		width: 90%;
	}
	.ask_box{
		width: 100%;
	}
	.submit{
		text-align: center;
	}
	.access{
		width: 90%;
		margin: 0 auto;
	}
	.access li{
		display: inline;
	}
	.access_right img{
		width: 100%;
	}

	.grad-trigger-news{
		width: 42%;
		margin: 0 auto -10% auto;
	}


	/* privacy.php */
	.flex{
		flex-direction: column;
	}
	.privacy_box{
		width: 100%;
	}


	/*product.php*/
	.gray_frame{
		width: 90%;
		margin: 1.3% auto;
	}
	.gray_frame p{
		font-size: 2vw;
	}
	.flex_2{
		flex-direction: column;
		flex-wrap: nowrap;
	}
	.product_name{
		width: 90%;
		margin-left: 0;
		text-align: left;
		font-size: small;
	}
	.product_picture{
		width: 100%;
		margin: 0 auto 10% auto ;
		text-align: center;
	}

	/* culture.php */
	.culture_mess h3{
		font-size: 1.3em;
	}
	.culture_main h4{
		width: 70vw;
	}
	.box_left{
		width: 100%;
		float: none;
		margin: 5% auto 15%;
	}
	.box_right{
		width: 100%;
		float: none;
		margin: 5% auto 15%;
	}
	.interview_picture{
		width: 100%;
	}
	.in_house_box{
		margin: 50px auto 30px auto;
	}
	.in_house_box .in_house li{
		width: 100%;
		display: list-item;
		margin-top: 10%;
	}

	.rank_head{
	margin: 150px auto 30px auto;
	font-size: 1.8em;
	}
	.rank_table{
		margin: 80px auto 70px auto;
		padding: 0.3em;
		font-size: 1.3em;
	}
	.rank_table tr{
		height: 4em;
	}
	.rank{
		width: 20px;
		font-size: 0.8em;
	}
	.rank_text{
		font-size: 0.8em;
		font-weight: 700;
	}

	.a_join,
	.b_join{
		display: block;
		width: 100%;
	}
	
	
	/*diagnosis.php*/
	.diag_head{
		width: auto;
		font-size: 5vmin;
		text-align: center;
		margin: 80px auto 0 auto;
		padding: 0.5em 0em;
	}
	.diagnosis_head_sp{
		font-weight: 500;
	}
	.diag_table{
		padding: 0.3em 1em;
		margin: 30px auto 40px auto;
	}
	.diag_rank{
		margin-right: 0.8em;
	}
	.diag_join a{
		font-size: 17px;
		text-align: left;
	}
	.diag_join_b_sp{
		margin-top: 2em;
	}
	.br-pc{
		display: block;
	}
	.br-sp{
		display: none;
	}
	.diagnosis_title{
		width: 100%;
		font-size: 5.2vmin;
		line-height: 1.4em;
		border-bottom: 3px dashed #000;
		margin: 20px auto;
		padding-bottom: 10px;
	}
	.diagnosis_title_a{
		width: 100%;
		font-size: 5.2vmin;
		line-height: 1.4em;
		margin: 20px auto;
		padding-bottom: 5px;
		background: linear-gradient(transparent 70%, #f1ce32 70%);
	}
	.diagnosis_title_b{
		width: 100%;
		font-size: 5.2vmin;
		line-height: 1.4em;
		margin: 20px auto;
		padding-bottom: 5px;
		background: linear-gradient(transparent 70%, #67BA5C 70%);
	}
	.diagnosis_sp{
		width: 100%;
	}
	.diagnosis_a_sp{
		width: 100%;
	}
	.diagnosis_img{
		width: 80%;
		margin: 0 auto 15px auto;
	}
	.pc_only{
		display: none;
	}
	.sp_only{
		display: inline;
	}
	.box_lr{
		flex-direction: column;
	}
	.box_lr:nth-child(even) {
		flex-direction: column;
	}
	.box_lr:nth-child(even) .interview_img {
		margin: 5% auto 15%;
	}
}