@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&display=swap');

/*************************************************************
    /css/style.css
**************************************************************
1) default
2) ページ共通
3) top
4) company, recruit
5) recruit
6) fonts
7) background-color
8) pcOnly, spOnly
9) newContainer
-------------------------------------------------------------*/


/* 1) default
-------------------------------------------------------------*/
html {
	font-size: 62.5%;
}
body {
	position: relative;
	line-height: 1.667;
	font-family: 'Noto Sans JP', 'Hiragino Kaku Gothic ProN', 'Hiragino Kaku Gothic Pro', '游ゴシック', 'Yu Gothic', 'メイリオ', 'Meiryo', sans-serif;
	font-weight: normal;
	font-weight: 400;
	letter-spacing: 0.05em;
	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt";
	color: #333;
}
@media screen and (min-width:770px) {
	body {
		font-size: 1.8rem;
	}
}
@media screen and (max-width:769px) {
	body {
		font-size: 1.6rem;
	}
}
img {
	vertical-align: top;
}
a {
	color: #333;
	text-decoration: none;
}
a:hover {
	text-decoration: underline;
}
/* 電話番号スマホのみリンク */
@media screen and (min-width: 751px) {
	a[href^="tel:"] {
    	pointer-events: none;
		cursor: default;
	　text-decoration: none;
	}
}
.mincho {
	font-family: 'Noto Serif JP', 'Hiragino Mincho ProN', 'Hiragino Mincho Pro', '游明朝', 'Yu Mincho', serif;
	font-weight: bold;
	font-weight: 700;
}
@media screen and (max-width:769px) {
	/* 明朝がスマホで細く見える */
	.mincho {
		font-weight: 800;
	}
}
.logoBlue {
	color: #0070b2;
}
@media screen and (max-width:769px) {
	.pcOnly {
		display: none;
	}
}
@media screen and (min-width:770px) {
	.spOnly {
		display: none;
	}
}

/* 2) ページ共通
-------------------------------------------------------------*/
header {
	padding: 54px 0 32px;
}
h1 {
	width: 320px;
	height: 54px;
	background: url("../images/logo.png")no-repeat;
	background-size: cover;
	overflow: hidden;
	text-indent: -9999px;
	white-space: nowrap;
	margin: 0 auto;
}
h1 a {
	display: block;
	width: 100%;
	height: 100%;
}
article {
	max-width: 970px;
	border-top: #333 solid 1px;
	border-bottom: #333 solid 1px;
	margin: 0 auto;
	padding: 96px 40px;
}
section {
	max-width: 800px;
	margin: 0 auto;
}
h2 {
	font-size: 3rem;
	margin: 0 0 60px;
}
.txt {
	margin: 0 0 1.667em;
}
footer {
	max-width: 1050px;
	margin: 0 auto;
	padding: 24px 40px 50px;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
footer .name {
	font-size: 2.1rem;
	margin: 0 0 14px;
}
footer .sns {
	display: -webkit-flex;
	display: flex;
}
footer .sns li {
	height: 34px;
	background-repeat: no-repeat;
	background-size: cover;
	overflow: hidden;
	text-indent: -9999px;
	white-space: nowrap;
}
footer .sns li + li {
	margin-left: 19px;
}
footer .sns li.ig {
	width: 34px;
	background-image: url("../images/ig.png");
}
footer .sns li.fb {
	width: 35px;
	background-image: url("../images/fb.png");
}
footer .sns li.yt {
	width: 49px;
	background-image: url("../images/yt.png");
}
footer .sns li a {
	display: block;
	width: 100%;
	height: 100%;
}
footer .ftmenu {
	margin: 8px 0 38px;
	display: -webkit-flex;
	display: flex;
}
footer .ftmenu li {
	line-height: 1;
	font-weight: bold;
	font-weight: 600;
}
footer .ftmenu li + li {
	margin-left: 9px;
	padding-left: 9px;
	border-left: #333 solid 1px;;
}
footer .copy {
	font-size: 1.4rem;
	text-align: right;
	letter-spacing: 0;
}
@media screen and (max-width:850px) {
	footer {
		display: block;
	}
	footer .sns {
		margin: 0 0 19px;
	}
	footer .copy {
		text-align: left;
	}
}
@media screen and (max-width:769px) {
	header {
	padding: 20px 0 16px;
	}
	h1 {
		width: 224px;
		height: 38px;
	}
	article {
		padding: 50px 20px;
	}
	h2 {
		font-size: 2.5rem;
		margin: 0 0 35px;
	}
	footer {
		padding: 20px 20px 30px;
	}
	footer .name {
		font-size: 1.9rem;
		margin: 0 0 14px;
	}
	footer .sns {
		margin: 0 0 15px;
	}
	footer .copy {
		font-size: 1.2rem;
	}
}
@media screen and (max-width:449px) {
	footer .ftmenu {
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	footer .ftmenu li {
		width: 49%;
		margin: 6px 0;
	}
	footer .ftmenu li + li {
		margin-left: 0;
		padding-left: 0;
		border-left: none;
	}
}

/* 3) top
-------------------------------------------------------------*/
.top .kv {
	margin: 0 0 30px;
}
.top .kv img {
	width: 100%;
}
.top .anchor {
	text-align: center;
	letter-spacing: 0;
}
.top .anchor a::after {
	content: " ▼";
	font-size: 1.2rem;
}
.top article {
	border-top: 0;
}
.top #jp {
	margin-bottom: 80px;
}
.top #en {
	letter-spacing: 0.03em;
	margin-top: 70px;
}
.top h2 {
	text-align: center;
}
.top .line {
	height: 1px;
	border-top: #e6e6e6 solid 1px;
}
@media screen and (max-width:769px) {
	.top .kv {
		position: relative;
		width: 100%;
		height: 296px;
		overflow: hidden;
		margin: 0 0 15px;
	}
	.top .kv img {
		position: absolute;
		width: auto;
		height: 100%;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
	}
	.top #jp {
		margin-bottom: 50px;
	}
	.top #en {
		margin-top: 40px;
	}
	.top h2 {
		text-align: left;
	}
}

/* 4) company, recruit
-------------------------------------------------------------*/
.recruit .jobType {
		font-size: 2.1rem;
		font-weight: bold;
		font-weight: 600;
		margin: 0 0 15px;
}
article dl {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}
.company dt {
	width: 17%;
}
.company dd {
	width: 83%;
}
.recruit dt {
	width: 14%;
}
.recruit dd {
	width: 86%;
}
.recruit section + section {
	margin-top: 75px;
}
@media screen and (max-width:769px) {
	.recruit.jobType {
		font-size: 1.9rem;
		margin: 0 0 10px;
	}
	.recruit section + section {
		margin-top: 50px;
	}
}
@media screen and (min-width:700px) {
	article dt {
		font-weight: normal;
		font-weight: 400;
	}
}
@media screen and (max-width:699px) {
	article dl {
		display: block;
	}
	.company dt,
	.company dd,
	.recruit dt,
	.recruit dd {
		width: auto;
	}
}

/* 5) privacy
-------------------------------------------------------------*/
.privacy .num {
	font-size: 2.1rem;
	margin: 0 0 0.38em;
}
.privacy .mb0 {
	margin-bottom: 0;
}
@media screen and (max-width:769px) {
	.privacy .num {
		font-size: 1.9rem;
	}
}