@charset "utf-8";
main {
		margin-top: 120px;
		padding-bottom: 90px;
}
@media(max-width: 960px) {
		main {
				margin-top: 80px;
		}
}
@media(max-width: 767px) {
		main {
				margin-top: 60px;
		}
}
.wrap980 {
		max-width: 980px;
		margin: 0 auto;
		padding: 0 30px;
}
@media(max-width: 767px) {
		.wrap980 {
				padding: 0 20px;
		}
}
/* =============== */
.hrCenter {
		display: flex;
		justify-content: center;
}
.linkBtn {
		width: 210px;
		font-weight: 700;
		height: 46px;
		border-radius: 60px;
		overflow: hidden;
}
.linkBtn a {
		display: flex;
		justify-content: center;
		align-items: center;
		height: 46px;
		text-decoration: none;
		background: #C3392C;
		color: #fff;
		border-radius: 60px;
		transition: background 0.4s;
		position: relative;;
}
.service_wrap .service_col:last-child .linkBtn a {
		background: #A52317;
}
.linkBtn a.bgWht {
		color: #C3392C;
		background: #fff;
}
.linkBtn a::before, .linkBtn a::after {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 46px;
		box-sizing: border-box;
}
.linkBtn a::before {
		background: #fff;
		width: calc(100% + 20px);
		transform: skewX(15deg);
		left: -240px;
		transition: all 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}
.linkBtn a::after {
		border: 1px solid #C3392C;
		height: 46px;
		border-radius: 60px;
		z-index: 5
}
.linkBtn a.back::before,
.linkBtn a.back::after {
		display: none!important;
}
.service_wrap .service_col:last-child .linkBtn a::after {
		border: 1px solid #A52317;
}
.linkBtn a.bgWht::before {
		background: #C3392C;
}
.linkBtn a.bgWht::after {
		border: 1px solid #fff;
}
.linkBtn a.back {
		background: #2E3136;
		border: 1px solid #2E3136;
		box-sizing: border-box;
}
.linkBtn a span {
		transform: translateY(-1px);
		position: relative;
		z-index: 2
}
@media (hover: hover) {
		.linkBtn a:hover {
				color: #C3392C;
		}
		.linkBtn a.back:hover {
				color: #2E3136;
				background: #fff;
		}
		.linkBtn a.bgWht:hover {
				color: #fff;
		}
		.linkBtn a:hover::before {
				left: 0
		}
}
/* ============= */
.second_hdr {
		height: 190px;
		background: #f3f1f1 url("../images/check_bg.png");
		display: flex;
		justify-content: center;
		align-items: center;
		margin-bottom: 80px;
}
.second_hdr hgroup {
		display: flex;
		flex-direction: column-reverse;
		text-align: center;
}
.second_hdr hgroup .en {
		font-size: 60px;
		font-family: "Montserrat", sans-serif;
		font-optical-sizing: auto;
		font-style: normal;
		font-weight: 900;
		color: #C3392D;
		letter-spacing: 0.07em;
		margin: 0 0 10px
}
.second_hdr hgroup .jp {
		font-size: 22px;
		font-weight: 700;
}
@media(max-width: 960px) {
		.second_hdr hgroup .en {
				font-size: 56px;
		}
		.second_hdr hgroup .jp {
				font-size: 18px;
		}
}
@media(max-width: 767px) {
		.second_hdr {
				height: 120px;
				background: #f3f1f1 url("../images/check_bg_sp.png");
				margin-bottom: 40px;
		}
		.second_hdr hgroup .en {
				font-size: 36px;
		}
		.second_hdr hgroup .jp {
				font-size: 16px;
		}
}
/* =============== */
.underL {
		position: relative;
}
.underL::after {
		content: '';
		display: block;
		position: absolute;
		bottom: -2px;
		left: 0;
		width: 100%;
		height: 1px;
		background: #C3392D;
		transform-origin: left center;
		transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
		transform: scaleX(0);
}
.underL.bgWht::after {
		background: #fff;
}
@media (hover: hover) {
		a:hover .underL::after {
				transform: scaleX(1);
		}
}
/* =============== */
@media(min-width: 960px) {
		br.tabletbr {
				display: none;
		}
}
@media(min-width: 768px) {
		br.spbr {
				display: none;
		}
}
@media(max-width: 767px) {
		br.pcbr {
				display: none;
		}
}
.anchor {
		margin-top: -100px;
		padding-top: 100px;
		position: relative;
		z-index: 0;
}
@media(max-width: 767px) {
		.anchor {
				margin-top: -70px;
				padding-top: 70px;
		}
}
/* ============== */
@media(min-width: 768px) {
		.spObj {
				display: none;
		}
}
@media(max-width: 767px) {
		.pcObj {
				display: none
		}
}
.mb00 {
		margin-bottom: 0px !important;
}
.mb05 {
		margin-bottom: 5px !important;
}
.mb10 {
		margin-bottom: 10px !important;
}
.mb15 {
		margin-bottom: 15px !important;
}
.mb20 {
		margin-bottom: 20px !important;
}
/* =============== */
.fadeInNml {
		opacity: 0;
		transition: opacity 0.4s linear;
}
.fadeInNmlActive {
		opacity: 1
}
.fadeInUp {
		opacity: 0;
		transform: translateY(30px);
		transition: transform 1.2s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.5s;
}
.fadeInUpActive {
		opacity: 1;
		transform: translateY(0px);
}
@media(min-width: 768px) {
		.service_wrap .service_col:nth-child(2) {
				transition-delay: 0.2s
		}
		.contact_wrap_right.fadeInUp {
				transition-delay: 0.2s
		}
		.works_all_cont .works_tile.fadeInUp:nth-child(2), .works_all_cont .works_tile.fadeInUp:nth-child(4) {
				transition-delay: 0.2s
		}
}