/***************************
 *
 * COMPANY
 *
 **************************/
@import url("https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@500&display=swap");

.zen {
	font-family: "Zen Kaku Gothic New", sans-serif;
}
.zen-all * {
	font-family: "Zen Kaku Gothic New", sans-serif;
}
@media all and (min-width: 751px) {
	/*----------------Slide Show----------------*/
	.cb-slideshow,
	.cb-slideshow:after {
		position: fixed;
		width: 100%;
		height: 100%;
		top: 0px;
		left: 0px;
		z-index: -1;
	}
	.cb-slideshow:after {
		content: "";
		/*background: transparent url(../images/pattern.png) repeat top left;*/
	}

	.cb-slideshow li span {
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0px;
		left: 0px;
		color: transparent;
		background-size: cover;
		background-position: 50% 50%;
		background-repeat: none;
		opacity: 0;
		z-index: 0;
		animation: imageAnimation 30s linear infinite 0s;
	}

	.cb-slideshow li.bg1 span {
		background-image: url(../img/company/company-slide-1.jpg);
	}
	.cb-slideshow li.bg2 span {
		background-image: url(../img/company/company-slide-2.jpg);
	}
	.cb-slideshow li.bg3 span {
		background-image: url(../img/company/company-slide-3.jpg);
	}
	.cb-slideshow li.bg4 span {
		background-image: url(../img/company/company-slide-4.jpg);
	}
	/* .cb-slideshow li.bg5 span {
		background-image: url(../img/company/company-slide-5.jpg);
	} */

	.cb-slideshow li:nth-child(2) span {
		animation-delay: 6s;
	}
	.cb-slideshow li:nth-child(3) span {
		animation-delay: 12s;
	}
	.cb-slideshow li:nth-child(4) span {
		animation-delay: 18s;
	}
	.cb-slideshow li:nth-child(5) span {
		animation-delay: 24s;
	}

	.cb-slideshow li:nth-child(2) div {
		animation-delay: 6s;
	}
	.cb-slideshow li:nth-child(3) div {
		animation-delay: 12s;
	}
	.cb-slideshow li:nth-child(4) div {
		animation-delay: 18s;
	}
	.cb-slideshow li:nth-child(5) div {
		animation-delay: 24s;
	}

	/*シャッフル後*/
	.cb-slideshow li.suffleTop span {
		opacity: 1;
	}

	@keyframes imageAnimation {
		0% {
			opacity: 0;
			animation-timing-function: ease-in;
		}
		4% {
			opacity: 1;
			transform: scale(1.01);
		}
		20% {
			opacity: 1;
			transform: scale(1.08);
		}
		24% {
			opacity: 0;
			transform: scale(1.11);
		}
		29% {
			opacity: 0;
			transform: scale(1.18);
		}
		35% {
			opacity: 0;
		}
		100% {
			opacity: 0;
		}
	}
	/* Show at least something when animations not supported */
	.no-cssanimations .cb-slideshow li span {
		opacity: 1;
	}
	@media screen and (max-width: 1140px) {
		.cb-slideshow li div h3 {
			font-size: 100px;
		}
	}
	@media screen and (max-width: 600px) {
		.cb-slideshow li div h3 {
			font-size: 50px;
		}
	}

	.to-content {
		position: absolute;
		left: 50%;
		bottom: 50px;
		transform: translate(-50%, 0%);
		width: 50px;
		z-index: 5;
	}
	.l-header-cp {
		width: 100%;
		height: 100vh;
		position: relative;
	}
	.l-header-cp .header-logo {
		margin: 0;
		position: relative;
		width: 331px;
		height: auto;
		top: 50%;
		left: 50%;
		transform: translateY(-50%) translateX(-50%);
	}
	.l-header-cp .header-logo:hover {
		cursor: pointer;
	}
	body {
		background: none;
	}
	.l-wrap-cp {
		background: none;
	}
	.l-nav-cp {
		position: fixed;
		left: 0;
		top: 0;
		width: 100%;
		z-index: 50;
	}
	.l-nav-cp .menu {
		display: flex;
		justify-content: center;
		z-index: 10;
		padding: 25px 0 0;
	}
	.l-nav-cp .menu > li {
		line-height: 1.8em;
		margin: 0 13px;
	}
	.l-nav-cp .menu > li > a {
		color: white;
		font-size: 15px;
		letter-spacing: 0.08em;
	}
	.l-nav-cp .menu > li > a:hover {
		text-decoration: none;
		opacity: 0.7;
	}
	.l-nav-cp.is-reserve .menu > li > a {
		color: #1a1a1a;
	}
	.l-contents-cp {
		background: #fff;
		position: relative;
		z-index: 5;
	}
	.cp-section {
		width: 900px;
		margin: 0 auto;
		position: relative;
		display: flex;
		justify-content: space-between;
		border-bottom: 1px solid #666666;
		padding: 130px 0 60px;
	}
	.cp-section .cp-header {
		width: 280px;
	}
	.cp-section .cp-header .cp-header-title {
		font-size: 41px;
		color: #1a1a1a;
		/* letter-spacing: 0.04em; */
		line-height: 2em;
		font-weight: bold;
	}
	.cp-section .cp-header .cp-header-caption {
		font-size: 16px;
		letter-spacing: 0.08em;
		line-height: 1.68em;
	}
	.cp-section .cp-content {
		width: 600px;
		position: relative;
		margin-top: -8px;
	}
	.cp-section .cp-content p {
		font-size: 16px;
		line-height: 2em;
		letter-spacing: 0.15em;
		margin-bottom: 35px;
	}
	.cp-section .cp-content p:last-child {
		margin-bottom: 0;
	}
	.cp-section .cp-title-3 {
		font-size: 24px;
		color: #1a1a1a;
		letter-spacing: 0.01em;
		line-height: 1.666em;
		font-weight: 500;
		margin-bottom: 20px;
	}

	.cp-about .cp-header-title {
		text-indent: -9999em;
		background: url(../img/company/cp-title-about.png) 0 0 no-repeat;
		background-size: contain;
		width: 146px;
		height: 42px;
	}
	.cp-phi .cp-header-title {
		text-indent: -9999em;
		background: url(../img/company/cp-title-phi.png) 0 0 no-repeat;
		background-size: contain;
		width: 188px;
		height: 42px;
	}
	.cp-biz .cp-header-title {
		text-indent: -9999em;
		background: url(../img/company/cp-title-biz.png) 0 0 no-repeat;
		background-size: contain;
		width: 147px;
		height: 84px;
	}
	.cp-for .cp-header-title {
		text-indent: -9999em;
		background: url(../img/company/cp-title-for.png) 0 0 no-repeat;
		background-size: contain;
		width: 205px;
		height: 42px;
	}
	.cp-recruit .cp-header-title {
		text-indent: -9999em;
		background: url(../img/company/cp-title-recruit.png) 0 0 no-repeat;
		background-size: contain;
		width: 124px;
		height: 42px;
	}
	.cp-profile .cp-header-title {
		text-indent: -9999em;
		background: url(../img/company/cp-title-profile.png) 0 0 no-repeat;
		background-size: contain;
		width: 145px;
		height: 84px;
	}
	.cp-contact .cp-header-title {
		text-indent: -9999em;
		background: url(../img/company/cp-title-contact.png) 0 0 no-repeat;
		background-size: contain;
		width: 134px;
		height: 42px;
	}
	.box-border {
		border: 1px solid #666666;
		padding: 20px 25px;
	}
	.cp-section .cp-content .box-border p {
		font-size: 13px;
		letter-spacing: 0.1em;
	}
	.cp-section .cp-content .box-border p a {
		color: #666666;
		text-decoration: underline;
	}
	.cp-section .cp-content .box-border p a:hover {
		text-decoration: none;
	}
	.cp-section .cp-content .col-2 {
		display: flex;
		justify-content: space-between;
		padding-bottom: 50px;
	}
	.cp-section .cp-content .col-2:last-child {
		padding-bottom: 0;
	}
	.cp-section .cp-content .col-2 .col-pic {
		width: 200px;
	}
	.cp-section .cp-content .col-2 .col-content {
		width: 370px;
	}
	.cp-section .cp-content .col-2 .col-content .cp-title-3 {
		font-size: 20px;
		margin-bottom: 8px;
	}
	.cp-section .cp-content .col-2 .col-content p {
		font-size: 14px;
		margin-bottom: 15px;
	}
	.btn-round {
		margin: 10px 0;
	}
	.btn-round a {
		display: inline-block;
		text-align: center;
		font-size: 12px;
		color: #1a1a1a;
		letter-spacing: 0.1em;
		line-height: 2.16em;
		border: 1px solid #666666;
		border-radius: 15px;
		padding: 2px 35px;
	}
	.btn-round a:hover {
		text-decoration: none;
		background: #1a1a1a;
		color: white;
	}
	.btn-round.btn-round-long a {
		width: 282px;
		box-sizing: border-box;
		padding: 2px 0;
	}
	.cp-for {
		flex-wrap: wrap;
	}
	.cp-for .cp-header {
		position: relative;
		width: 100%;
		margin-bottom: 45px;
	}
	.cp-for .cp-title-3 {
		position: absolute;
		left: 300px;
		top: 0;
		font-size: 20px;
		letter-spacing: 0.1em;
	}
	.cp-for .cp-header-link {
		position: absolute;
		right: 0;
		bottom: 10px;
		text-align: right;
		margin-bottom: 0;
	}
	.cp-for .cp-header-link a {
		font-size: 12px;
	}
	.cp-for .cp-content {
		position: relative;
		width: 100%;
		/* left: 50%;
	transform: translateX(-50%); */
		height: 435px;
	}
	.for-slide {
		width: 100vw;
		position: relative;
		left: 50%;
		transform: translateX(-50%);
	}
	.for-slide:before {
		content: "";
		display: block;
		position: absolute;
		left: 50%;
		transform: translate(-50%, 0%);
		top: 0;
		width: 2000px;
		height: 100%;
		z-index: 5;
		margin-left: -1500px;
		background: linear-gradient(to left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 14%, rgba(255, 255, 255, 1) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ffffff',GradientType=1 );
	}
	.for-slide:after {
		content: "";
		display: block;
		position: absolute;
		left: 50%;
		transform: translate(-50%, 0%);
		top: 0;
		width: 2000px;
		height: 100%;
		z-index: 5;
		margin-left: 1500px;
		background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 14%, rgba(255, 255, 255, 1) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ffffff',GradientType=1 );
	}
	.for-slide .swiper-button-prev {
		background: url(../img/bullet-prev.svg) 0 0 no-repeat;
		background-size: contain;
		width: 50px;
		height: 50px;
		opacity: 1;
		left: 50%;
		transform: translate(-50%, 0%);
		margin-left: -410px;
	}
	.for-slide .swiper-button-prev:after {
		content: none;
	}

	.for-slide .swiper-button-next {
		background: url(../img/bullet-next.svg) 0 0 no-repeat;
		background-size: contain;
		width: 50px;
		height: 50px;
		opacity: 1;
		right: auto;

		left: 50%;
		transform: translate(-50%, 0%);
		margin-left: 410px;
	}
	.for-slide .swiper-button-next:after {
		content: none;
	}
	.for-slide {
		position: relative;
/* 		width: 2000px;
		position: absolute; */
	}
	.for-slide .for {
		width: 270px;
		height: 435px;
		position: relative;
		background: #f6f6f6;
		transition: 0.3s ease;
	}
	.for-slide .for:hover {
		cursor: pointer;

	}
	.for-slide .for .for-link {
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		z-index: 5;
	}
	.for-slide .for .for-pic {
		width: 270px;
		max-height: 180px;
		object-fit: cover;
		position: relative;
		overflow: hidden;
	}
	.for-slide .for .for-content {
		position: relative;
		padding: 15px;
		box-sizing: border-box;
		height: 255px;
		overflow: hidden;
		transition: 0.15s ease-out;
		z-index: 2;
		position: absolute;
		left: 0;
		top: 180px;
		background: #f6f6f6;
		width: 100%;
	}
	.for-slide .for:hover .for-content {
		background: #FAFAFA;
	}
	.for-slide .for .for-content .for-title {
		font-size: 18px;
		letter-spacing: 0.15em;
		line-height: 1.333em;
		font-weight: 500;
		margin: 0 0 15px;
	}
	.for-slide .for .for-content .for-text p {
		font-size: 12px;
		letter-spacing: 0.05em;
		line-height: 1.75em;
		overflow: hidden;
		height: 108px;
		transition: max-height 0.15s ease-out;
	}
	.for-slide .for .for-content .for-btn {
		margin: 0;
		position: absolute;
		left: 20px;
		bottom: 20px;
	}
	.for-slide .for .for-content .for-btn a {
		display: inline-block;
		text-align: center;
		color: #1a1a1a;
		font-size: 12px;
		letter-spacing: 0.1em;
		line-height: 2.16em;
		background: #fff;
		padding: 3px 35px;
		border-radius: 15px;
		transition: 0.25s ease-out;
	}
	.for-slide .for .for-content .for-btn a:hover,
	.for-slide .for:hover .for-content .for-btn a {
		text-decoration: none;
		background: #1a1a1a;
		color: white;
	}

	.for-slide .for:hover .for-content {
		transition: 0.25s ease-out;
		height: 435px;
		top: 0;
	}
	.for-slide .for:hover .for-content .for-text p {
		height: auto;
	}

	.cp-recruit .cp-content p {
		font-size: 18px;
	}
	.cp-recruit .cp-content p a {
		font-size: 18px;
		color: #666666;
		text-decoration: underline;
	}
	.cp-recruit .cp-content p a:hover {
		text-decoration: none;
	}
	.cp-profile .cp-profile-table {
	}
	.cp-profile .cp-profile-table th {
		font-size: 16px;
		line-height: 2em;
		letter-spacing: 0.1em;
		width: 100px;
	}
	.cp-profile .cp-profile-table td {
		font-size: 16px;
		line-height: 2em;
		letter-spacing: 0.1em;
		width: 471px;
	}
	.cp-profile .cp-profile-table td a {
		display: inline-block;
		text-align: center;
		border: 1px solid #1a1a1a;
		line-height: 30px;
		margin-left: 10px;
		border-radius: 25px;
		font-size: 12px;
		padding: 0 10px;
		vertical-align: top;
	}
	.cp-profile .cp-profile-table td a:hover {
		text-decoration: none;
	}
	.cp-contact {
		border-bottom: none;
	}
	.table-form {
		width: 600px;
		margin: 0;
	}
	.table-form th {
		color: #666666;
		font-size: 14px;
		letter-spacing: 0.1em;
		line-height: 2.28em;
		width: 100%;
		box-sizing: border-box;
	}
	.table-form th .required {
		font-size: 12px;
		color: #ff0000;
	}
	.table-form td {
		font-size: 18px;
		width: 100%;
		box-sizing: border-box;
		padding-bottom: 20px;
	}
	.table-form input[type="text"] {
		background: none;
		border: 1px solid #999999;
		color: #1a1a1a;
		line-height: 58px;
		padding: 0 15px;
		box-sizing: border-box;
		width: 100%;
		border-radius: 0;
	}
	.table-form textarea {
		background: none;
		border: 1px solid #999999;
		color: #1a1a1a;
		line-height: 58px;
		padding: 0 15px;
		box-sizing: border-box;
		width: 100%;
		height: 350px;
		border-radius: 0;
	}
	input:focus {
		outline: none;
	}
	textarea:focus {
		outline: none;
	}
	select:focus {
		outline: none;
	}
	.table-form input[type="text"]:focus,
	.table-form textarea:focus,
	.table-form select:focus,
	.table-form input[type="text"].active,
	.table-form textarea.active,
	.table-form .select-wrap.active select {
		border: 1px solid #1a1a1a;
		background: #fafafa;
		color: #1a1a1a;
	}
	input::placeholder {
		color: #999999;
		font-size: 18px;
	}
	textarea::placeholder {
		color: #999999;
		font-size: 18px;
	}
	.select-wrap {
		position: relative;
		display: inline-block;
		width: 220px;
		margin-right: 8px;
	}

	.select-wrap:before {
		z-index: 5;
		position: absolute;
		right: 20px;
		top: 25px;
		content: "";
		display: block;
		background: url(../img/company/select.svg) center center no-repeat;
		background-size: contain;
		width: 16px;
		height: 8px;
		pointer-events: none;
	}
	.select-wrap.select-wrap-short:before {
		top: 12px;
		right: 10px;
	}
	.mw_wp_form_confirm .select-wrap:before {
		content: none !important;
	}
	.mw_wp_form_confirm .select-wrap {
		width: auto !important;
		top: auto !important;
	}
	select {
		outline: none;
		-moz-appearance: none;
		text-indent: 0.01px;
		text-overflow: "";
		background: rgba(255, 255, 255, 0);
		vertical-align: middle;
		font-size: inherit;
		color: inherit;
		-webkit-appearance: button;
		-moz-appearance: button;
		appearance: button;
		appearance: none;
		-webkit-appearance: none;
		-moz-appearance: none;
		height: 60px;
		padding: 8px 18px;
		border: 1px solid #999999;
		color: #999999;
		width: 100%;
		border-radius: 0px;
	}
	/* iOSでのデフォルトスタイルをリセット */
	input[type="submit"],
	input[type="button"] {
		border-radius: 0;
		-webkit-box-sizing: content-box;
		-webkit-appearance: button;
		appearance: button;
		box-sizing: border-box;
		cursor: pointer;
	}
	input[type="submit"]::-webkit-search-decoration,
	input[type="button"]::-webkit-search-decoration {
		display: none;
	}
	input[type="submit"]::focus,
	input[type="button"]::focus {
		outline-offset: -2px;
	}
	.btn-submit {
		display: block;
		text-align: center;
		background: none;
		text-align: center;
		font-size: 16px;
		letter-spacing: 0.08em;
		line-height: 2.1em;
		width: 468px;
		height: 80px;
		margin: 40px 0;
		border: 1px solid #707070;
		transition: 0.3s ease;
	}
	.btn-submit:hover {
		background: #1a1a1a;
		color: white;
	}

	.l-footer-cp {
/* 		background: #1a1a1a; */
		color: white;
		padding: 30px 0;
	}
	.l-footer-cp * {
		color: white;
	}
	.footer-nav-cp {
		display: flex;
		justify-content: flex-start;
		width: 900px;
		margin: 0 auto;
		position: relative;
	}
	.footer-nav-cp > li {
		line-height: 2em;
		margin: 0 12px 0 0;
	}
	.footer-nav-cp > li > a {
		color: #fff;
		font-size: 12px;
		letter-spacing: 0.08em;
		display: block;
		padding: 0px 5px;
		text-align: center;
		border: 1px solid rgba(255,255,255,0);
	}
	.footer-nav-cp > li > a:hover {
/* 		border: 1px solid white; */
		text-decoration: none;
	}
	.footer-nav-cp > li.footer-nav-sep {
		position: absolute;
		right: 0;
		top: 0;
		margin: 0;
	}
	.footer-nav-cp > li.footer-nav-sep > a {
		border: 1px solid white;
		padding: 0 15px;
	}
	.footer-nav-cp > li.footer-nav-sep > a:hover {
		background: white;
		color: #1a1a1a;
	}
	.copyright-1 {
		margin: 0;
		margin-top: 60px;
	}
}

@media all and (max-width: 750px) {
	/*----------------Slide Show----------------*/
	.cb-slideshow,
	.cb-slideshow:after {
		position: fixed;
		width: 100%;
		height: 100%;
		top: 0px;
		left: 0px;
		z-index: -1;
	}
	.cb-slideshow:after {
		content: "";
		/*background: transparent url(../images/pattern.png) repeat top left;*/
	}

	.cb-slideshow li span {
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0px;
		left: 0px;
		color: transparent;
		background-size: cover;
		background-position: 50% 50%;
		background-repeat: none;
		opacity: 0;
		z-index: 0;
		animation: imageAnimation 30s linear infinite 0s;
	}

	.cb-slideshow li.bg1 span {
		background-image: url(../img/company/company-slide-1.jpg);
	}
	.cb-slideshow li.bg2 span {
		background-image: url(../img/company/company-slide-2.jpg);
	}
	.cb-slideshow li.bg3 span {
		background-image: url(../img/company/company-slide-3.jpg);
	}
	.cb-slideshow li.bg4 span {
		background-image: url(../img/company/company-slide-4.jpg);
	}

	.cb-slideshow li:nth-child(2) span {
		animation-delay: 6s;
	}
	.cb-slideshow li:nth-child(3) span {
		animation-delay: 12s;
	}
	.cb-slideshow li:nth-child(4) span {
		animation-delay: 18s;
	}
	.cb-slideshow li:nth-child(5) span {
		animation-delay: 24s;
	}

	.cb-slideshow li:nth-child(2) div {
		animation-delay: 6s;
	}
	.cb-slideshow li:nth-child(3) div {
		animation-delay: 12s;
	}
	.cb-slideshow li:nth-child(4) div {
		animation-delay: 18s;
	}
	.cb-slideshow li:nth-child(5) div {
		animation-delay: 24s;
	}

	/*シャッフル後*/
	.cb-slideshow li.suffleTop span {
		opacity: 1;
	}

	@keyframes imageAnimation {
		0% {
			opacity: 0;
			animation-timing-function: ease-in;
		}
		4% {
			opacity: 1;
			transform: scale(1.01);
		}
		20% {
			opacity: 1;
			transform: scale(1.08);
		}
		24% {
			opacity: 0;
			transform: scale(1.11);
		}
		29% {
			opacity: 0;
			transform: scale(1.18);
		}
		35% {
			opacity: 0;
		}
		100% {
			opacity: 0;
		}
	}
	/* Show at least something when animations not supported */
	.no-cssanimations .cb-slideshow li span {
		opacity: 1;
	}
	@media screen and (max-width: 1140px) {
		.cb-slideshow li div h3 {
			font-size: 100px;
		}
	}
	@media screen and (max-width: 600px) {
		.cb-slideshow li div h3 {
			font-size: 50px;
		}
	}

	.to-content {
		position: absolute;
		left: 50%;
		bottom: 30px;
		margin-top: -60px;
		transform: translate(-50%, 0%);
		width: 50px;
		z-index: 5;
	}
	.l-header-cp {
		width: 100%;
		height: 100vh;
		position: relative;
	}
	.l-header-cp .header-logo {
		margin: -60px 0 0;
		position: relative;
		width: 254px;
		height: auto;
		top: 50%;
		left: 50%;
		transform: translateY(-50%) translateX(-50%);
	}
	body {
		background: none;
	}
	#toggle {
		background: rgba(239, 239, 239, 0.88);
		z-index: 99;
	}
	.l-wrap-cp {
		background: none;
	}
	.l-nav-cp {
		position: fixed;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		z-index: 50;
		display: none;
		opacity: 0;
		background: rgba(255, 255, 255, 0.9);
	}
	.l-nav-cp.is-active {
		opacity: 1;
		display: block;
	}
	.l-nav-cp .menu {
		z-index: 3;
		padding: 25px 0 0;
		height: 100vh;
		height: calc(100vh - 100px);
		box-sizing: border-box;
		display: flex;
		align-items: center;
		flex-direction: column;
		-webkit-justify-content: center;
		justify-content: center;
	}
	.l-nav-cp .menu > li {
		line-height: 1.8em;
		margin: 10px auto;
		text-align: center;
	}
	.l-nav-cp .menu > li > a {
		color: #1a1a1a;
		font-size: 18px;
		letter-spacing: 0.08em;
	}
	.l-nav-cp .menu > li.sp {
		margin: 30px auto;
	}
	.l-nav-cp .menu > li.sp > a {
		border: 1px solid #1a1a1a;
		padding: 10px 15px;
	}

	.l-nav-cp.is-reserve .menu > li > a {
		color: #1a1a1a;
	}
	.l-contents-cp {
		background: #fff;
		position: relative;
		z-index: 5;
	}
	.cp-section {
		margin: 0 auto;
		position: relative;
		border-bottom: 1px solid #666666;
		padding: 55px 0 60px;
	}
	.cp-section .cp-header {
	}
	.cp-section .cp-header .cp-header-title {
		font-size: 41px;
		color: #1a1a1a;
		/* letter-spacing: 0.04em; */
		line-height: 2em;
		font-weight: bold;
		text-align: center;
	}
	.cp-section .cp-header .cp-header-caption {
		font-size: 16px;
		letter-spacing: 0.08em;
		line-height: 1.68em;
		text-align: center;
		margin-bottom: 30px;
	}
	.cp-section .cp-content {
		position: relative;
		padding: 0 20px;
	}
	.cp-section .cp-content p {
		font-size: 16px;
		line-height: 2em;
		letter-spacing: 0.1em;
		margin-bottom: 35px;
	}
	.cp-section .cp-content p:last-child {
		margin-bottom: 0;
	}
	.cp-section .cp-title-3 {
		font-size: 21px;
		color: #1a1a1a;
		letter-spacing: 0.01em;
		line-height: 1.666em;
		font-weight: 500;
		margin-bottom: 20px;
	}
	.cp-about {
		padding-top: 80px;
	}
	.cp-phi .cp-content p {
		font-size: 14px;
	}
	.cp-about .cp-header-title {
		text-indent: -9999em;
		background: url(../img/company/cp-title-about.png) 0 0 no-repeat;
		background-size: contain;
		width: 146px;
		height: 42px;
		margin: 0 auto;
	}
	.cp-phi .cp-header-title {
		text-indent: -9999em;
		background: url(../img/company/cp-title-phi.png) 0 0 no-repeat;
		background-size: contain;
		width: 188px;
		height: 42px;
		margin: 0 auto;
	}
	.cp-biz .cp-header-title {
		text-indent: -9999em;
		background: url(../img/company/cp-title-biz-sp.png) 0 0 no-repeat;
		background-size: contain;
		width: 148px;
		height: 84px;
		margin: 0 auto;
	}
	.cp-for .cp-header-title {
		text-indent: -9999em;
		background: url(../img/company/cp-title-for.png) 0 0 no-repeat;
		background-size: contain;
		width: 205px;
		height: 42px;
		margin: 0 auto;
	}
	.cp-recruit .cp-header-title {
		text-indent: -9999em;
		background: url(../img/company/cp-title-recruit.png) 0 0 no-repeat;
		background-size: contain;
		width: 124px;
		height: 42px;
		margin: 0 auto;
	}
	.cp-profile .cp-header-title {
		text-indent: -9999em;
		background: url(../img/company/cp-title-profile-sp.png) 0 0 no-repeat;
		background-size: contain;
		width: 145px;
		height: 84px;
		margin: 0 auto;
	}
	.cp-contact .cp-header-title {
		text-indent: -9999em;
		background: url(../img/company/cp-title-contact.png) 0 0 no-repeat;
		background-size: contain;
		width: 134px;
		height: 42px;
		margin: 0 auto;
	}
	.box-border {
		border: 1px solid #666666;
		padding: 20px 25px;
	}
	.cp-section .cp-content .box-border p {
		font-size: 13px;
		letter-spacing: 0.1em;
	}
	.cp-section .cp-content .box-border p a {
		color: #666666;
		text-decoration: underline;
	}
	.cp-section .cp-content .box-border p a:hover {
		text-decoration: none;
	}
	.cp-section .cp-content .col-2 {
		padding-bottom: 50px;
	}
	.cp-section .cp-content .col-2:last-child {
		padding-bottom: 0;
	}
	.cp-section .cp-content .col-2 .col-pic {
		padding-bottom: 20px;
	}
	.cp-section .cp-content .col-2 .col-content {
	}
	.cp-section .cp-content .col-2 .col-content .cp-title-3 {
		font-size: 20px;
		margin-bottom: 8px;
	}
	.cp-section .cp-content .col-2 .col-content p {
		font-size: 14px;
		margin-bottom: 15px;
	}
	.btn-round {
		margin: 10px auto;
	}
	.btn-round a {
		display: block;
		text-align: center;
		font-size: 12px;
		color: #1a1a1a;
		letter-spacing: 0.1em;
		line-height: 2.16em;
		border: 1px solid #666666;
		border-radius: 35px;
		padding: 7px 35px;
	}
	.btn-round a:hover {
		text-decoration: none;
		background: #1a1a1a;
		color: white;
	}

	.cp-for {
		position: relative;
		padding-bottom: 100px;
	}
	.cp-for .cp-header {
		width: 100%;
		margin-bottom: 45px;
	}
	.cp-for .cp-title-3 {
		font-size: 21px;
		letter-spacing: 0.1em;
		padding: 0 20px;
	}
	.cp-for .cp-header-link {
		position: absolute;
		left: 50%;
		bottom: 60px;
		text-align: center;
		margin-bottom: 0;
		width: 100%;
		transform: translate(-50%, 0);
	}
	.cp-for .cp-header-link a {
		font-size: 12px;
	}
	.cp-for .cp-content {
		position: relative;
		padding: 0;
	}
	/* .for-slide:after {
		content: "";
		display: block;
		position: absolute;
		left: 900px;
		top: 0;
		width: 2000px;
		height: 100%;
		z-index: 5;
		background: -moz-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 14%, rgba(255, 255, 255, 1) 100%);
		background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 14%, rgba(255, 255, 255, 1) 100%);
		background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 14%, rgba(255, 255, 255, 1) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ffffff',GradientType=1 );
	} */
	.for-slide .swiper-button-prev {
		background: url(../img/bullet-prev.svg) 0 0 no-repeat;
		background-size: contain;
		width: 50px;
		height: 50px;
		opacity: 1;
		display: none;
	}
	.for-slide .swiper-button-prev:after {
		content: none;
	}

	.for-slide .swiper-button-next {
		background: url(../img/bullet-next.svg) 0 0 no-repeat;
		background-size: contain;
		width: 50px;
		height: 50px;
		opacity: 1;
		right: auto;
		right: 850px;
		display: none;
	}
	.for-slide .swiper-button-next:after {
		content: none;
	}
	.for-slide .swiper-pagination {
	}
	.for-slide .swiper-pagination-bullet {
		width: 12px;
		height: 12px;
		border: 1.5px solid #000000;
		border-radius: 100%;
		box-sizing: border-box;
		background: none;
		opacity: 1;
	}
	.for-slide .swiper-pagination-bullet.swiper-pagination-bullet-active {
		background: #1a1a1a;
	}
	.for-slide {
		padding-bottom: 55px;
	}
	.for-slide .for {
		width: 270px;
		height: 435px;
		position: relative;
		background: #f6f6f6;
		transition: 0.3s ease;
	}
	.for-slide .for:hover {
		cursor: pointer;
	}
	.for-slide .for .for-link {
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		z-index: 5;
	}
	.for-slide .for .for-pic {
		width: 270px;
		max-height: 180px;
		object-fit: cover;
		position: relative;
		overflow: hidden;
	}
	.for-slide .for .for-content {
		position: relative;
		padding: 15px;
		box-sizing: border-box;
		height: 255px;
		overflow: hidden;
		transition: 0.15s ease-out;
		z-index: 2;
		position: absolute;
		left: 0;
		top: 180px;
		background: #f6f6f6;
		width: 100%;
	}
	.for-slide .for:hover .for-content {
		background: #FAFAFA;
	}
	.for-slide .for .for-content .for-title {
		font-size: 18px;
		letter-spacing: 0.15em;
		line-height: 1.333em;
		font-weight: 500;
		margin: 0 0 15px;
	}
	.for-slide .for .for-content .for-text p {
		font-size: 12px;
		letter-spacing: 0.05em;
		line-height: 1.75em;
		overflow: hidden;
		height: 108px;
		transition: max-height 0.15s ease-out;
	}
	.for-slide .for .for-content .for-btn {
		margin: 0;
		position: absolute;
		left: 20px;
		bottom: 20px;
	}
	.for-slide .for .for-content .for-btn a {
		display: inline-block;
		text-align: center;
		color: #1a1a1a;
		font-size: 12px;
		letter-spacing: 0.1em;
		line-height: 2.16em;
		background: #fff;
		padding: 3px 35px;
		border-radius: 15px;
		transition: 0.25s ease-out;
	}
	.for-slide .for .for-content .for-btn a:hover,
	.for-slide .for:hover .for-content .for-btn a {
		text-decoration: none;
		background: #1a1a1a;
		color: white;
	}

	.for-slide .for:hover .for-content {
		transition: 0.25s ease-out;
		height: 435px;
		top: 0;
	}
	.for-slide .for:hover .for-content .for-text p {
		height: auto;
	}

	.cp-recruit .cp-content p {
		font-size: 21px;
		text-align: center;
	}
	.cp-recruit .cp-content p a {
		font-size: 21px;
		color: #666666;
		text-decoration: underline;
	}
	.cp-recruit .cp-content p a:hover {
		text-decoration: none;
	}
	.cp-profile .cp-profile-table {
	}
	.cp-profile .cp-profile-table tr {
		position: relative;
	}
	.cp-profile .cp-profile-table th {
		font-size: 14px;
		line-height: 2em;
		letter-spacing: 0.1em;
		width: 85px;
	}
	.cp-profile .cp-profile-table td {
		font-size: 14px;
		line-height: 2em;
		letter-spacing: 0.1em;
	}
	.cp-profile .cp-profile-table td.has-link {
		padding-bottom: 70px;
	}
	.cp-profile .cp-profile-table td.has-link a {
		display: block;
		text-align: center;
		border: 1px solid #1a1a1a;
		line-height: 30px;
		margin-bottom: 10px;
		border-radius: 25px;
		font-size: 12px;
		padding: 0 10px;
		width: 92%;
		position: absolute;
		left: 4%;
		top: 100px;
		box-sizing: border-box;
	}
	.cp-profile .cp-profile-table td a:hover {
		text-decoration: none;
	}
	.cp-contact {
		border-bottom: none;
	}
	.table-form {
		margin: 0;
	}
	.table-form th {
		color: #666666;
		font-size: 14px;
		letter-spacing: 0.1em;
		line-height: 2.28em;
		width: 100%;
		box-sizing: border-box;
	}
	.table-form th .required {
		font-size: 12px;
		color: #ff0000;
	}
	.table-form td {
		font-size: 18px;
		width: 100%;
		box-sizing: border-box;
		padding-bottom: 20px;
	}
	.table-form input[type="text"] {
		background: none;
		border: 1px solid #999999;
		color: #1a1a1a;
		line-height: 58px;
		padding: 0 15px;
		box-sizing: border-box;
		width: 100%;
		border-radius: 0;
		font-size: 14px;
	}
	.table-form textarea {
		background: none;
		border: 1px solid #999999;
		color: #1a1a1a;
		line-height: 2.2em;
		padding: 15px 15px;
		box-sizing: border-box;
		width: 100%;
		height: 350px;
		border-radius: 0;
		font-size: 14px;
	}
	input:focus {
		outline: none;
	}
	textarea:focus {
		outline: none;
	}
	select:focus {
		outline: none;
	}
	.table-form input[type="text"]:focus,
	.table-form textarea:focus,
	.table-form select:focus,
	.table-form input[type="text"].active,
	.table-form textarea.active,
	.table-form .select-wrap.active select {
		border: 1px solid #1a1a1a;
		background: #fafafa;
		color: #1a1a1a;
	}
	input::placeholder {
		color: #999999;
		font-size: 18px;
	}
	textarea::placeholder {
		color: #999999;
		font-size: 14px;
	}
	.select-wrap {
		position: relative;
		display: inline-block;
		width: 220px;
		margin-right: 8px;
	}

	.select-wrap:before {
		z-index: 5;
		position: absolute;
		right: 20px;
		top: 25px;
		content: "";
		display: block;
		background: url(../img/company/select.svg) center center no-repeat;
		background-size: contain;
		width: 16px;
		height: 8px;
		pointer-events: none;
	}
	.select-wrap.select-wrap-short:before {
		top: 12px;
		right: 10px;
	}
	.mw_wp_form_confirm .select-wrap:before {
		content: none !important;
	}
	.mw_wp_form_confirm .select-wrap {
		width: auto !important;
		top: auto !important;
	}
	select {
		outline: none;
		-moz-appearance: none;
		text-indent: 0.01px;
		text-overflow: "";
		background: rgba(255, 255, 255, 0);
		vertical-align: middle;
		font-size: inherit;
		color: inherit;
		-webkit-appearance: button;
		-moz-appearance: button;
		appearance: button;
		appearance: none;
		-webkit-appearance: none;
		-moz-appearance: none;
		height: 60px;
		padding: 8px 18px;
		border: 1px solid #999999;
		color: #999999;
		width: 100%;
		border-radius: 0px;
	}
	/* iOSでのデフォルトスタイルをリセット */
	input[type="submit"],
	input[type="button"] {
		border-radius: 0;
		-webkit-box-sizing: content-box;
		-webkit-appearance: button;
		appearance: button;
		box-sizing: border-box;
		cursor: pointer;
	}
	input[type="submit"]::-webkit-search-decoration,
	input[type="button"]::-webkit-search-decoration {
		display: none;
	}
	input[type="submit"]::focus,
	input[type="button"]::focus {
		outline-offset: -2px;
	}
	.btn-submit {
		display: block;
		text-align: center;
		background: #1a1a1a;
		color: white;
		text-align: center;
		font-size: 16px;
		letter-spacing: 0.08em;
		line-height: 2.1em;
		width: 100%;
		height: 80px;
		margin: 40px 0;
		border: 1px solid #707070;
		transition: 0.3s ease;
	}
	.btn-submit:hover {
		color: black;
		background: none;
	}

	.l-footer-cp {
		background: #1a1a1a;
		color: white;
		padding: 30px 0;
	}
	.l-footer-cp * {
		color: white;
	}
	.footer-nav-cp {
	}
	.footer-nav-cp > li {
		line-height: 2.85em;
		margin: 0 6px;
		text-align: center;
	}
	.footer-nav-cp > li > a {
		color: #fff;
		font-size: 14px;
		letter-spacing: 0.08em;
		display: inline-block;
		padding: 0px 10px;
		text-align: center;
		border: 1px solid #1a1a1a;
	}
	.footer-nav-cp > li > a:hover {
		border: 1px solid white;
		text-decoration: none;
	}
	.copyright-1 {
		margin: 0;
		margin-top: 60px;
		text-align: center;
	}
}
