@charset "utf-8";
html {
		height: 100%;
}
body {
		background: #fff;
		color: #333;
		font-family: 'Noto Sans JP', system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji";
		line-height: 1.75;
		margin: 0;
		-webkit-font-smoothing: antialiased;
		text-rendering: optimizeLegibility;
		font-size: 1.8rem;
		font-weight: normal !important;
}
address {
		font-style: normal;
}
@media (min-width: 600px) {
		a[href^="tel:"] {
				pointer-events: none;
		}
}
p {
		color: #333;
}
img {
		display: block;
		height: auto;
		max-width: 100%;
}
a {
		text-decoration: none;
		color: #333
}
a:hover {
		opacity: .9;
}
h1 {
		font-size: 4rem
}
h2 {
		font-family: "Nova Slim", system-ui;
		font-weight: bold;
		font-style: normal;
		color: #C8C9C9;
		font-size: 5rem;
		line-height: 5rem;
}
.font {
		font-family: "Nova Slim", system-ui;
		color: #fff;
}
.container {
		margin: auto;
		padding: 0 20px;
		max-width: 1200px;
}
.mt-0 {
		margin-top: 0;
}
.mb-0 {
		margin-bottom: 0;
}
.text-center {
		text-align: center;
}
.muted {
		color: #5c7285;
}
.fs14 {
		font-size: 14px;
}
/* ---------------- Header ---------------- */
.header-nav a.is-current {
		position: relative;
		color: #333;
}
.header-nav a.is-current::after {
		content: "";
		position: absolute;
		left: 0;
		bottom: -3px;
		width: 100%;
		height: 2px;
		background: #009AE1
}
.cta a:hover {
		transition: 0.3s ease-in-out;
		border: 2px #FFC654 solid !important;
}
.header-nav li a:hover {
		border-bottom: 2px #009AE1 solid;
}
#global-nav a.is-current::after {
		opacity: 1;
		transform: scaleX(1);
}
.head-inner {
		align-items: center;
		display: flex;
		gap: 16px;
		padding: 15px 10px;
}
.brand {
		align-items: center;
		display: flex;
		gap: 10px;
}
.brand div {
		line-height: 1.5rem;
}
.brand img {
		width: 230px;
}
nav.primary {
		margin-left: auto;
}
nav.primary ul {
		display: flex;
		gap: 24px;
		list-style: none;
		margin: 0;
		padding: 0;
		align-items: center;
}
nav.primary a {
		font-weight: normal;
}
.cta {
		font-weight: normal
}
.btn {
		align-items: center;
		border-radius: 999px;
		display: inline-flex;
		justify-content: center;
		padding: 5px 15px;
}
.btn--ghost {
		border: 2px solid #FFC654;
}
.btn--ghost:hover {
		background: #FFC654;
		color: #fff;
		border-bottom: 2px #FFC654 solid
}
.btn--solid {
		background: #1a79c7;
		color: #fff;
}
.menu-toggle {
		display: none;
}
h5 {
		font-weight: 500;
		margin-bottom: 10px;
}
/* ---------------- Hero (video FV) ---------------- */
.hero {
		color: #fff;
		display: grid;
		overflow: hidden;
		place-items: end start;
		position: relative;
		height: 90vh
}
.hero-video {
		inset: 0;
		object-fit: cover;
		position: absolute;
		width: 100%;
		z-index: 0;
		height: 100vh
}
.hero-inner {
		padding: 0 20px 64px;
		position: relative;
		z-index: 1;
		right: 20%;
		text-shadow: 4px 3px 9px #393939;
}
.lead {
		color: #fff
}
.yellow_txt {
		color: #FFD000;
		margin-bottom: 10px;
}
.accent {
		border: 1px #fff solid;
		color: #fff;
		margin-top: 15px;
		display: inline-block;
}
.accent.btn-outline-split {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		border: 1px solid #fff;
		color: #fff;
		text-decoration: none;
		padding: 12px 32px;
		min-width: 280px; /* 横幅調整 */
		font-size: 18px;
		font-weight: 500;
		transition: all 0.3s ease;
}
.accent.btn-outline-split:hover {
		background-color: rgba(255, 255, 255, 0.1);
}
.accent.btn-outline-split .text {
		flex: 1;
		text-align: center;
}
.accent.btn-outline-split .divider {
		width: 1px;
		height: 24px;
		background-color: #fff;
		margin: 0 20px;
}
.accent.btn-outline-split .arrow {
		transition: transform 0.3s ease;
}
.accent.btn-outline-split:hover .arrow {
		transform: translateX(6px);
}
/* ---------------- Section base ---------------- */
section {
		padding: 80px 0 0;
}
.sec-head {
		margin: 0 0 28px;
}
.sec-eyebrow {
		color: #1a79c7;
		font-size: .85rem;
		font-weight: 700;
		letter-spacing: .08em;
		text-transform: uppercase;
}
/* ---------------- Service (rings) ---------------- */
/* =========================
        Service / Orbit Ring
         ========================= */
#service {
		background-image: linear-gradient(183deg, #e6f5fc, #e6effc);
		padding: 70px 0 20px;
}
.irasuto {
		width: 300px;
		position: absolute;
		right: 20%;
		margin-top: 40px;
}
#service .container {
		max-width: 1200px;
		margin-inline: auto;
		z-index: 999;
		position: relative
}
.sec-head .sec-eyebrow {
		font-size: 18px;
		font-weight: normal;
		letter-spacing: .12em;
		color: #009AE1;
		text-transform: uppercase;
		margin-bottom: .25rem;
}
#service .sec-desc {
		color: #5b6670;
		margin: 0 0 2.5rem;
}
/* ----- 円レイアウト ----- */
#service .ring {
		position: relative;
		width: min(92vw, 700px);
		aspect-ratio: 1 / 1;
		margin: 40px auto 50px;
		border-radius: 50%;
		background: radial-gradient(closest-side, #ffffff69 0 60%, #ffffff 60% 61%, transparent 61%), radial-gradient(closest-side, #ffffff00 0 86%, #e7f0f800 86% 87%, transparent 87%);
		box-shadow: 0 2px 10px rgba(10, 40, 80, .06) inset;
}
#service .ring--inner {
		position: absolute;
		border-radius: 50%;
		background: radial-gradient(closest-side, transparent 0 74%, rgba(26, 121, 199, .08) 74% 75%, transparent 75%);
		pointer-events: none;
}
#service .orbit {
		position: absolute;
		inset: 0;
}
#service .orbit ul {
		list-style: none;
		padding: 0;
		margin: 0;
		position: absolute;
		inset: 0;
}
/* 各要素（アイコン＋ラベル） */
#service .orbit li {
		position: absolute;
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: .4rem;
		transform: translate(-50%, -50%);
		text-align: center;
		font-size: 14px;
		color: #009AE1;
		line-height: 1.4;
		white-space: nowrap;
}
.center-card .accent.btn-outline-split {
		padding: 5px 15px;
		min-width: auto;
		color: #333;
		font-size: 16px;
		border: 1px solid #333;
}
.center-card .accent.btn-outline-split .divider {
		background-color: #333;
}
#service .pos-tr img {
		max-width: fit-content;
}
#service .pos-br img {
		max-width: fit-content;
}
.center-card img {
		width: 230px;
		margin: auto;
}
.center-card p {
		font-size: 1.6rem;
}
#service .orbit li img {
		width: 150px;
		height: 150px;
		border-radius: 999px;
		display: block;
		background: #fff;
		border: 10px solid #EEEEEE;
		box-shadow: 0 4px 10px rgba(10, 40, 80, .06);
		transition: transform .2s ease;
		box-sizing: border-box;
}
#service .orbit li:hover img {
		transform: scale(1.05);
}
#service .orbit li span {
		display: inline-block;
}
/* ---- 円周上の座標（6等分配置） ---- */
/* PC */
#service .orbit .pos-top {
		top: 17%;
		left: 50%;
		transform: translate(-50%, -50%);
}
#service .orbit .pos-tr {
		top: 35%;
		left: 80%;
		transform: translate(-50%, -50%);
}
#service .orbit .pos-br {
		top: 67%;
		left: 80%;
		transform: translate(-50%, -50%);
}
#service .orbit .pos-bottom {
		top: 85%;
		left: 50%;
		transform: translate(-50%, -50%);
}
#service .orbit .pos-bl {
		top: 67%;
		left: 20%;
		transform: translate(-50%, -50%);
}
#service .orbit .pos-tl {
		top: 35%;
		left: 20%;
		transform: translate(-50%, -50%);
}
/* タブレット～スマホ：少し内側へ */
@media (max-width: 640px) {
		#service .orbit .pos-tr {
				left: 82%;
		}
		#service .orbit .pos-br {
				left: 82%;
		}
		#service .orbit .pos-bl {
				left: 18%;
		}
		#service .orbit .pos-tl {
				left: 18%;
		}
}
/* さらに小さい端末 */
@media (max-width: 420px) {
		#service .orbit .pos-tr {
				left: 80%;
		}
		#service .orbit .pos-br {
				left: 80%;
		}
		#service .orbit .pos-bl {
				left: 20%;
		}
		#service .orbit .pos-tl {
				left: 20%;
		}
}
/* ---- 中央カード ---- */
#service .center-card {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		width: min(72%, 420px);
		text-align: center;
		padding: clamp(16px, 3.2vw, 28px);
}
#service .center-card .sec-eyebrow {
		color: #1a79c7;
		letter-spacing: .08em;
		font-weight: 700;
		margin-bottom: .25rem;
}
#service .center-card h3 {
		font-size: clamp(18px, 2.6vw, 24px);
		margin: 0 0 .25rem;
		font-weight: normal;
}
/* アイテム全体をリンクに */
.orbit li a {
		display: grid;
		place-items: center;
		height: 100%;
		width: 100%;
		text-align: center;
		text-decoration: none;
		color: #222;
		transition: transform .25s ease, color .25s ease;
		padding: 14px; /* 既存の li padding をこちらへ移してOK */
		border-radius: 24px;
}
/* アイコン画像とテキスト */
.orbit li img {
		width: 42px;
		height: 42px;
		margin-bottom: 8px;
		transition: transform .25s ease;
}
.orbit li span {
		font-size: 1.4rem;
		line-height: 1.4;
		margin-top: -30px;
		z-index: 999;
}
/* ホバーで少しズーム */
.orbit li:hover a {
		transform: scale(1.06);
		color: #1a79c7;
}
.orbit li:hover img {
		transform: scale(1.12);
}
/* タップ領域を確保（モバイル誤タップ対策） */
@media (max-width: 768px) {
		.orbit li a {
				padding: 18px;
		}
		.orbit li img {
				width: 48px;
				height: 48px;
		}
}
/* ====== レスポンシブ ====== */
@media (max-width: 640px) {
		/* スマホは重なりを避けてテキストを短く見せる */
		#service .orbit li {
				font-size: 12px;
		}
		#service .orbit li span {
				white-space: normal;
				max-width: 7em;
		}
		#service .orbit .pos-tr {
				top: 22%;
				left: 82%;
		}
		#service .orbit .pos-right {
				top: 50%;
				left: 92%;
		}
		#service .orbit .pos-br {
				top: 78%;
				left: 82%;
		}
		#service .orbit .pos-bl {
				top: 78%;
				left: 18%;
		}
		#service .orbit .pos-left {
				top: 50%;
				left: 8%;
		}
		#service .orbit .pos-tl {
				top: 22%;
				left: 18%;
		}
}
@media (max-width: 420px) {
		#service .orbit li img {
				width: 64px;
				height: 64px;
		}
		#service .center-card {
				width: 78%;
		}
}
/* ---------------- Company ---------------- */
.company {
		align-items: center;
		display: grid;
		gap: 36px;
}
.bg_logo {
		width: 15%;
		position: absolute;
		right: 0;
		top: 3550px;
}
.slider {
		height: 620px;
		overflow: hidden;
		position: relative;
		max-width: 100%;
}
#company .aroow_blue a {
		margin-top: -10%;
		z-index: 999;
		position: relative;
}
.aroow_blue a {
		text-align: end;
		display: block;
		padding: 80px 10% 0 0;
}
.aroow_blue img {
		text-align: end;
		display: inline;
		right: -3%;
		position: relative;
		top: -13px;
}
.slider div {
		position: absolute;
		top: 0;
		left: 0;
		width: 800px;
		height: 500px;
		background-position: center center;
		background-size: cover;
		background-repeat: no-repeat;
		z-index: 10;
		opacity: 0;
		animation-name: slide-fade;
		animation-duration: 15s;
		animation-iteration-count: infinite;
		border-radius: 20px
}
@keyframes slide-fade {
		0% {
				opacity: 0;
		}
		20% {
				opacity: 1;
		}
		80% {
				opacity: 0;
		}
		100% {
				opacity: 0;
				z-index: 0;
		}
}
.slider div:first-of-type {
		background-image: url("../img/company01.png");
}
.slider div:nth-of-type(2) {
		background-image: url(../img/company02.png);
		animation-delay: 5s;
}
.slider div:last-of-type {
		background-image: url(../img/company03.png);
		animation-delay: 10s;
}
/* 拡大率調整 */
@keyframes fadezoom {
		0% {
				transform: scale(1);
		}
		100% {
				transform: scale(1.3);
		}
}
/* ズームアニメーション */
.animation {
		animation: fadezoom 15s 0s forwards;
}
.company .card {
		background: #fff;
		border-radius: 16px;
		box-shadow: 0 6px 24px rgba(13, 64, 111, .1);
		padding: 24px;
		width: 500px;
		position: absolute;
		left: 50%;
		z-index: 999;
		margin-top: 12%;
}
.company .card p {
		margin: 0;
}
/* ---------------- Recruit ---------------- */
.recruit {
		align-items: center;
		display: grid;
		gap: 36px;
}
.recruit_irasut01 {
		width: 100px;
		margin-top: -10%;
}
#recruit .slider02 div:first-of-type {
		background-image: url("../img/recruit01.png");
}
#recruit .slider02 div:nth-of-type(2) {
		background-image: url(../img/recruit02.png);
		animation-delay: 5s;
}
.slider02 div:last-of-type {
		background-image: url(../img/recruit03.png);
		animation-delay: 10s;
}
.slider02 {
		width: 50%;
		height: 60vh;
		overflow: hidden;
		position: relative;
		max-width: 100%;
}
.flex {
		display: flex;
		align-items: center;
		justify-content: center;
}
.flex p span {
		font-weight: bold;
		background: linear-gradient(transparent 60%, #FFD000 60%);
}
.recruit .aroow_blue img {
		right: -8%;
}
.recruit_irasut02 {
		width: 300px;
		margin-top: -10%;
}
.slider02 div {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-position: center center;
		background-size: contain;
		background-repeat: no-repeat;
		z-index: 10;
		opacity: 0;
		animation-name: slide-fade;
		animation-duration: 15s;
		animation-iteration-count: infinite;
}
@keyframes slide-fade {
		0% {
				opacity: 0;
		}
		20% {
				opacity: 1;
		}
		80% {
				opacity: 0;
		}
		100% {
				opacity: 0;
				z-index: 0;
		}
}
#recruit .sec-head {
		text-align: center;
}
.recruit .illust {
		aspect-ratio: 1 / 1;
		background: #eef4fb;
		border-radius: 50%;
		overflow: hidden;
}
.recruit .cta-row {
		display: flex;
		flex-wrap: wrap;
		gap: 12px;
}
/* ---------------- News ---------------- */
#news {
		padding: 0
}
#news .aroow_blue a {
		padding: 80px 0% 0 0;
}
#news .sec-head {
		writing-mode: vertical-rl;
		text-orientation: upright;
		letter-spacing: -1.5rem;
		text-align: right;
		position: absolute;
		right: 10%;
}
#news .sec-eyebrow:after {
		content: "";
		width: 1px; /*--縦線の太さ(幅)--*/
		height: 100px;
		background-color: #C8C9C9;
		display: block;
		position: relative;
		top: 230px;
		right: -36px;
}
#news-title {
		letter-spacing: -1.5rem;
}
#news .sec-eyebrow {
		margin-bottom: -0.75rem;
}
.news-list {
		border-top: 1px solid #C8C9C9;
		margin: 20px auto 40px;
		padding-top: 40px;
		max-width: 80%
}
.news-item {
		margin: auto;
		max-width: 70%;
		align-items: center;
		border-bottom: 1px solid #C8C9C9;
		display: flex;
		gap: 18px;
		padding: 16px 0;
}
.badge {
		background: #084FAB;
		border-radius: 999px;
		color: #ffffff;
		display: inline-block;
		font-size: 14px;
		font-weight: 700;
		padding: 4px 10px;
		width: 120px;
		text-align: center;
}
.badge_media {
		background: #4568C7;
}
.badge_news {
		background: #009AE1;
}
.news-item time {
		font-variant-numeric: tabular-nums;
		font-size: 15px
}
.news-item a {
		text-decoration: underline;
}
/* ---------------- CTA band ---------------- */
.cta-band {
		background: #009AE1;
		color: #fff;
		max-width: 1200px;
		margin: 100px auto -40px;
		z-index: 999;
		position: relative;
		border-radius: 20px;
		box-shadow: 1px 5px 13px rgb(58 58 58 / 50%);
		padding: 30px 20px;
}
.center-line {
		flex-grow: 1;
		position: relative;
		height: 80%;
		line-height: 80%;
		margin-right: 2em;
		background-color: #aeb2ba;
}
.center_line:after {
		position: absolute;
		top: 50%;
		margin: 0 1rem;
		content: "";
		width: 1px;
		height: 80%;
		background-color: #fff;
		right: 50%;
		top: 10%
}
.cta-band .grid {
		display: grid;
		gap: 24px;
		grid-template-columns: 1fr 1fr;
}
.mail {
		margin: 10px auto;
}
.cta-card .btn {
		background: #ffffff;
		color: #333;
		border: 0
}
.cta-card {
		padding: 22px 0;
		text-align: center;
}
#contact p {
		color: #fff !important;
}
.cta-card h3 {
		margin: .2rem 0 12px;
}
.cta-card p {
		margin: 0 0 14px;
		opacity: .9;
}
#contact h2 {
		color: #fff;
}
#contact .sec-head .sec-eyebrow {
		color: #fff;
}
/* ---------------- Footer ---------------- */
footer {
		background: #D9D9D9;
		color: #333;
}
.footer_wrap {
		background-image: url("../img/footer_bg.svg");
		background-repeat: no-repeat;
		background-size: cover;
		display: grid;
		gap: 24px;
}
.footer_wrap .flex {
		display: flex;
		justify-content: space-evenly;
		align-items: end;
}
footer .box01 {
		padding: 100px 0 30px;
		font-size: 14px;
		text-align: left;
}
footer .box01 p {
		padding-bottom: 40px
}
.foot small {
		color: #9fb4c4;
		display: block;
		margin-top: 8px;
}
.foot .cols {
		display: grid;
		gap: 20px;
}
.nav_flex {
		display: flex;
		justify-content: space-between;
		padding: 10px 0;
}
.box01 li {
		padding: 0 10px
}
.foot a {
		color: #d7e6f2;
}
.foot .brandmark {
		align-items: center;
		display: flex;
		gap: 12px;
}
.foot .brandmark img {
		width: 118px;
}
.footer_logo img {
		width: 320px;
}
.footer_logo {
		display: flex;
		justify-content: end;
		width: 1100px;
		margin: 0 auto 50px;
		text-align: end
}
.sp_txt_a {
		display: none !important
}
.h1_span{
	font-family: "Nova Slim", system-ui;
	font-size: 14px;
	color: #009AE1;
	position: absolute;
    text-align: center;
    right: 53%;
    transform: rotate(-10deg);
    line-height: 1px;
}
.deg{
	line-height: 1.5rem
}
/* ---------------- Media queries ---------------- */
@media (max-width: 1400px) {
		#news .sec-eyebrow:after {
				display: none;
		}
}
@media (max-width: 1099px) {
		.footer_logo {
				width: auto;
		}
		.news-item {
				display: grid;
				gap: unset;
		}
		.company .card {
				margin-top: 23%;
		}
		header.open nav.primary {
				position: absolute;
				top: 90px;
				right: 20px;
				width: 200px;
				display: block;
				background: #fff;
				border: 1px solid #fcd000;
				border-radius: 10px;
				padding: 16px;
				z-index: 9999;
		}
		header.open nav.primary ul {
				flex-direction: column;
				gap: 12px;
		}
}
@media (max-width: 980px) {
		.menu-toggle {
				background: #fff;
				border: 1px solid #e5eef7;
				border-radius: 10px;
				display: inline-flex;
				margin-left: auto;
				padding: 8px 12px;
		}
		nav.primary {
				display: none;
		}
		header.open nav.primary {
				background: #fff;
				border: 1px solid #fcd000;
				border-radius: 10px;
				display: inline-flex;
				margin-left: auto;
				padding: 8px 12px;
				color: #333;
		}
		header.open nav.primary ul {
				flex-direction: column;
				padding: 16px;
		}
		.company .card {
				margin-top: 33%;
				left: 0;
				margin-top: 60%;
		}
		.flex {
				display: block;
				margin: auto;
				z-index: 999;
		}
		.slider02 {
				height: 30vh;
				margin-top: -130px;
		}
		.recruit_irasut02 {
				width: 200px;
		}
		/* ---------------- Hamburger Menu Animation ---------------- */
		.menu-toggle {
				position: relative;
				width: 36px;
				height: 28px;
				display: flex;
				flex-direction: column;
				justify-content: space-between;
				cursor: pointer;
				background: none;
				border: none;
				padding: 0;
				z-index: 10001;
		}
		.menu-toggle .bar {
				display: block;
				width: 100%;
				height: 3px;
				background-color: #333;
				border-radius: 3px;
				transition: all 0.3s ease;
		}
		.menu-toggle .bar_blue {
				background: #009AE1;
		}
		/* 開いた時（×に変化） */
		header.open .menu-toggle .bar:nth-child(1) {
				transform: translateY(12px) rotate(45deg);
		}
		header.open .menu-toggle .bar:nth-child(2) {
				opacity: 0;
		}
		header.open .menu-toggle .bar:nth-child(3) {
				transform: translateY(-12px) rotate(-45deg);
		}
		.btn:hover, .accent:hover, a:hover {
				opacity: 1 !important;
				background: none !important;
				color: inherit !important;
				transform: none !important;
		}
}
@media (max-width: 920px) {
		.company {
				grid-template-columns: 1fr;
		}
		.recruit {
				grid-template-columns: 1fr;
		}
}
@media (max-width: 900px) {
		.foot {
				grid-template-columns: 1fr;
		}
		.foot .cols {
				grid-template-columns: repeat(2, 1fr);
		}
		.center_line:after {
				display: none
		}
		.cta-band .grid {
				display: block
		}
}
@media (max-width: 799px) {
		h1 {
				font-size: 3rem;
		}
		.hero-inner {
				right: auto;
		}
}
@media (max-width: 720px) {
		.sp_txt_a {
				display: block !important
		}
		.sp {
				display: block !important
		}
		.pc {
				display: none !important
		}
		.sp_txt {
				margin: auto;
				text-align: center;
		}
		.sp_txt img {
				width: 200px;
				margin: auto
		}
		.sp_txt h3 {
				text-align: center;
				margin-top: 50px;
		}
		.sp_txt_a {
				margin: 20px auto;
				display: flex !important;
				color: #333 !important;
				border: 1px solid #333 !important;
		}
		#service h5 {
				text-align: center;
		}
		.accent.btn-outline-split {
				width: 90%
		}
		.sp_icon img {
				width: 90%;
				margin: auto;
				border-radius: 999px;
				display: block;
				background: #fff;
				border: 10px solid #EEEEEE;
				box-shadow: 0 4px 10px rgba(10, 40, 80, .06);
				transition: transform .2s ease;
				box-sizing: border-box;
		}
		.sp_icon ul {
				display: flex;
		}
		.sp_icon {
				margin-top: 20px
		}
		.sp_icon span {
				font-size: 14px;
				text-align: center;
				margin: 0 auto 20px;
				display: block;
		}
		#service .accent.btn-outline-split .divider {
				background-color: #333 !important;
		}
		.footer_wrap .flex {
				display: block
		}
		#news .sec-head {
				writing-mode: unset;
				text-orientation: unset;
				letter-spacing: normal;
				text-align: center;
				position: unset;
				right: inherit;
		}
		.recruit_irasut02 {
				width: 150px;
		}
		.slider02 {
				height: 300px;
				margin: 30px auto;
				width: 100%;
		}
		.recruit_irasut01 {
				width: 70px;
		}
		.irasuto {
				width: 150px;
		}
		.slider div {
				width: 100%;
				height: 300px;
		}
		.aroow_blue a {
				padding: 30px 10% 0 0;
		}
		.company .card {
				width: 90%;
		}
		.news-list {
				padding-top: 20px;
				max-width: 90%;
		}
		.news-item {
				max-width: 100%;
		}
		.aroow_blue img {
				right: -8%;
		}
		#news-title {
				letter-spacing: inherit;
		}
		.bg_logo {
				width: 20%;
				top: 3170px;
		}
		.box02 {
				padding: 30px 0 !important;
		}
}
@media (max-width: 420px) {
		#company .aroow_blue {
				margin-top: -30%;
		}
		.recruit_irasut01 {
				margin-top: -30%;
		}
		.bg_logo {
				width: 30%;
				top: 3650px;
		}
		#recruit {
				z-index: 999;
				position: relative
		}
}
@media (min-width: 981px) {
		.menu-toggle {
				display: none
		}
}
.pc {
		display: block
}
.sp {
		display: none
}


/*privacy*/
#privacy{
	max-width:  1000px;
	margin: auto;
	padding: 10px 20px 40px;
}
#privacy .ttl_blue{
	color: #009AE1;
	padding-top: 20px;
}

/*thanks*/
#thanks{
	padding:0 10px 30px;
	text-align: center;
}

/* 404 */
.page-404{
	text-align: center;
    margin: 100px auto;
    line-height: 5rem;
}

/* ページナビゲーション */
.wp-pagenavi {
	font-size: 1.4rem;
	text-align: center;
    margin: 50px auto;
}
.wp-pagenavi .pages {
	display: inline-block;
	margin-right: 8px;
	padding: 6px;
	background: #009be1;
	color: #fff;
}
.wp-pagenavi .current {
	display: inline-block;
	width: 30px;
	height: 30px;
	margin: 8px;
	border: 1px solid #009be1!important;
	border-radius: 50%;
	background: #009be1;
	color: #fff;
}
.wp-pagenavi .extend {
	display: inline-block;
	margin: 8px;
	font-weight: bold;
	line-height: 30px;
}
.wp-pagenavi a {
	font-size: 1.4rem;
	text-decoration: none;
}
.wp-pagenavi a.first,
.wp-pagenavi a.last {
	width: auto;
	margin: 8px;
	padding-right: 4px;
	padding-left: 4px;
	border: 0;
	border-bottom: 1px solid #009be1;
	border-radius: 0;
	background: transparent;
}
.wp-pagenavi a.previouspostslink,
.wp-pagenavi a.nextpostslink,
.wp-pagenavi a.smaller,
.wp-pagenavi a.larger {
	display: inline-block;
	width: 30px;
	height: 30px;
	margin: 8px;
	border: 1px solid #009be1;
	border-radius: 50%;
}
.wp-pagenavi a.previouspostslink:hover,
.wp-pagenavi a.nextpostslink:hover,
.wp-pagenavi a.smaller:hover,
.wp-pagenavi a.larger:hover {
	border-color: #009be1;
	background: #009be1;
	color: #fff;
	transition: all .3s;
}

/* ニュース */
.blog-detail__title{
	font-size:2rem;
	margin: 70px auto 10px;
	text-align: center;
}
.date{
	font-size:14px;
	text-align: center;
}
.blog-content{
	font-size:16px;
    text-align: left;
    padding: 10px;
    max-width: 600px;
    margin: 0 auto 40px;
}
.page_n{
	margin-bottom:40px;
}

.blog-detail__image img{
	display: block;
    margin: 0 auto 30px;
}
.page_n a{
	border: 1px solid #019be1;
	color: #009be1!important;
    padding: 10px;
	margin:5px;
}
.blog-detail__body a{
	color: #009be1
}
/* contact */
select {
    /* Safari対策 */
    -webkit-appearance: none;
	font-size:16px;
	color: #333
}
.select-wrap {
  position: relative;
  display: inline-block;
  width: 100%;
}

.select-wrap .wpcf7-form-control-wrap {
  display: block;
}

.select-wrap select {
  -webkit-appearance: none;
  appearance: none;
  font-size: 16px;
  width: 100%;
  padding-right: 30px;
}

/* 矢印 */
.select-wrap::after {
  content: "↓";
  font-size: 16px;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
}

