@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap');
:root {
/* 共通設定 */
	--color--black: #191919;
	--color--white: #ECECEC;
	--color--gray: #CBCBCB;
	--color--tairai_red: #C71D21;

	--dropshadow_l: drop-shadow(calc((6 / 1280) * 100vw) calc((6 / 1280) * 100vw) calc((8 / 1280) * 100vw) rgba(0,0,0,0.15))
					drop-shadow(calc((2 / 1280) * -100vw) calc((2 / 1280) * -100vw) calc((3 / 1280) * 100vw) rgba(255,255,255,1))
					drop-shadow(calc((6 / 1280) * -100vw) calc((6 / 1280) * -100vw) calc((8 / 1280) * 100vw) rgba(255,255,255,1));
	--boxshadow_l: calc((8 / 1280) * 100vw) 0px calc((8 / 1280) * 100vw) rgba(0,0,0,0.1),
					0px calc((8 / 1280) * 100vw) calc((8 / 1280) * 100vw) rgba(0,0,0,0.1),
					calc((8 / 1280) * 100vw) calc((8 / 1280) * 100vw) calc((20 / 1280) * 100vw) rgba(0,0,0,0.15),
					calc((8 / 1280) * -100vw) 0px calc((8 / 1280) * 100vw) rgba(255,255,255,1),
					0px calc((8 / 1280) * -100vw) calc((8 / 1280) * 100vw) rgba(255,255,255,1),
					calc((8 / 1280) * -100vw) calc((8 / 1280) * -100vw) calc((10 / 1280) * 100vw) rgba(255,255,255,1);
	--dropshadow_s: drop-shadow(calc((3 / 1280) * 100vw) calc((3 / 1280) * 100vw) calc((4 / 1280) * 100vw) rgba(0,0,0,0.15))
					drop-shadow(calc((1 / 1280) * -100vw) calc((1 / 1280) * -100vw) calc((2 / 1280) * 100vw) rgba(255,255,255,1))
					drop-shadow(calc((3 / 1280) * -100vw) calc((3 / 1280) * -100vw) calc((4 / 1280) * 100vw) rgba(255,255,255,1));
	--boxshadow_s: calc((4 / 1280) * 100vw) 0px calc((4 / 1280) * 100vw) rgba(0,0,0,0.1),
					0px calc((4 / 1280) * 100vw) calc((4 / 1280) * 100vw) rgba(0,0,0,0.1),
					calc((3 / 1280) * 100vw) calc((3 / 1280) * 100vw) calc((10 / 1280) * 100vw) rgba(0,0,0,0.15),
					0px 0px calc((5 / 1280) * 100vw) rgba(255,255,255,1),
					calc((4 / 1280) * -100vw) 0px calc((5 / 1280) * 100vw) rgba(255,255,255,1),
					calc((4 / 1280) * -100vw) calc((4 / 1280) * -100vw) calc((10 / 1280) * 100vw) rgba(255,255,255,1);

	--14px: calc((14 / 1280) * 100vw);
	--20px: calc((20 / 1280) * 100vw);
	--24px: calc((24 / 1280) * 100vw);
	--32px: calc((32 / 1280) * 100vw);
	--36px: calc((36 / 1280) * 100vw);
	--42px: calc((42 / 1280) * 100vw);
}
@media all and (max-width: 768px){
:root {
	--dropshadow_l: drop-shadow(calc((6 / 375) * 100vw) calc((6 / 375) * 100vw) calc((8 / 375) * 100vw) rgba(0,0,0,0.15))
					drop-shadow(calc((2 / 375) * -100vw) calc((2 / 375) * -100vw) calc((3 / 375) * 100vw) rgba(255,255,255,1))
					drop-shadow(calc((6 / 375) * -100vw) calc((6 / 375) * -100vw) calc((8 / 375) * 100vw) rgba(255,255,255,1));
	--boxshadow_l: calc((8 / 375) * 100vw) 0px calc((8 / 375) * 100vw) rgba(0,0,0,0.1),
					0px calc((8 / 375) * 100vw) calc((8 / 375) * 100vw) rgba(0,0,0,0.1),
					calc((8 / 375) * 100vw) calc((8 / 375) * 100vw) calc((20 / 375) * 100vw) rgba(0,0,0,0.15),
					calc((8 / 375) * -100vw) 0px calc((8 / 375) * 100vw) rgba(255,255,255,1),
					0px calc((8 / 375) * -100vw) calc((8 / 375) * 100vw) rgba(255,255,255,1),
					calc((8 / 375) * -100vw) calc((8 / 375) * -100vw) calc((10 / 375) * 100vw) rgba(255,255,255,1);
	--dropshadow_s: drop-shadow(calc((3 / 375) * 100vw) calc((3 / 375) * 100vw) calc((4 / 375) * 100vw) rgba(0,0,0,0.15))
					drop-shadow(calc((1 / 375) * -100vw) calc((1 / 375) * -100vw) calc((2 / 375) * 100vw) rgba(255,255,255,1))
					drop-shadow(calc((3 / 375) * -100vw) calc((3 / 375) * -100vw) calc((4 / 375) * 100vw) rgba(255,255,255,1));
	--boxshadow_s: calc((4 / 375) * 100vw) 0px calc((4 / 375) * 100vw) rgba(0,0,0,0.1),
					0px calc((4 / 375) * 100vw) calc((4 / 375) * 100vw) rgba(0,0,0,0.1),
					calc((3 / 375) * 100vw) calc((3 / 375) * 100vw) calc((10 / 375) * 100vw) rgba(0,0,0,0.15),
					0px 0px calc((5 / 375) * 100vw) rgba(255,255,255,1),
					calc((4 / 375) * -100vw) 0px calc((5 / 375) * 100vw) rgba(255,255,255,1),
					calc((4 / 375) * -100vw) calc((4 / 375) * -100vw) calc((10 / 375) * 100vw) rgba(255,255,255,1);

	--14px: calc((14 / 375) * 100vw);
	--18px: calc((18 / 375) * 100vw);
	--20px: calc((20 / 375) * 100vw);
	--24px: calc((24 / 375) * 100vw);
	--32px: calc((32 / 375) * 100vw);
	--36px: calc((36 / 375) * 100vw);
	--42px: calc((42 / 375) * 100vw);
}
}
body {
	min-height: 100vh;
	margin: 0px;
	padding: 0px;
	background-color: var(--color--white);
	scroll-behavior: smooth;
	text-rendering: optimizeSpeed;
	color: var(--color--black);
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 500;
	font-style: normal;
	line-height: 1.2;
	letter-spacing: 0.05em;
/*	font-feature-settings: "palt";*/
}
body.scroll-stop {
	overflow: hidden;
}
#l_wrapper {
	width: 100%;
	height: auto;
	overflow: hidden;
}

.roboto {
	font-family: "Roboto", sans-serif;
}

header {
	width: 100%;
	height: 0;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
}
	.header__logo {
		width: 200px;
		height: auto;
		position: absolute;
		top: 40px;
		left: 40px;
		z-index: 202;
	}
		.header__logo svg {
			width: 100%;
			height: auto;
			fill: var(--color--tairai_red);
		}
	.hamburger {
		width: 80px;
		height: 80px;
		position: absolute;
		top: 30px;
		right: 30px;
		z-index: 202;
	}
		.hbg_btn {
			display: flex;
			justify-content: center;
			align-items: center;
			width: 100%;
			height: 100%;
			padding: 0;
			margin: 0;
			background-color: var(--color--white);
			border: none;
			outline: none;
			border-radius: 10px;
			box-shadow: var(--boxshadow_s);
			cursor: pointer;
		}
			.hbg_btn__obj {
				display: block;
				position: absolute;
				top: 50%;
				left: 50%;
				transform: translate(-50%,-50%);
			}
				.hbg_btn__obj::before,
				.hbg_btn__obj::after {
					content: '';
					display: block;
					border-radius: 1px;
					background-color: var(--color--tairai_red);
					position: absolute;
				}
			.hbg_btn__obj._h {
				width: 59px;
				height: 46px;
			}
				.hbg_btn__obj._h::before,
				.hbg_btn__obj._h::after {
					width: 100%;
					height: 5px;
					left: 0;
				}
				.hbg_btn__obj._h::before {
					top: 0;
				}
				.hbg_btn__obj._h::after {
					bottom: 0;
				}
			.hbg_btn__obj._v {
				width: 46px;
				height: 59px;
			}
				.hbg_btn__obj._v::before,
				.hbg_btn__obj._v::after {
					width: 5px;
					height: 100%;
					top: 0;
				}
				.hbg_btn__obj._v::before {
					left: 0;
				}
				.hbg_btn__obj._v::after {
					right: 0;
				}
			.hbg_btn__line {
				display: block;
				width: 29px;
				height: 5px;
				background-color: var(--color--tairai_red);
				position: relative;
			}
				.hbg_btn__line::before,
				.hbg_btn__line::after {
					content: '';
					display: block;
					width: 29px;
					height: 5px;
					background-color: var(--color--tairai_red);
					position: absolute;
				}
				.hbg_btn__line::before {
					top: -10px;
				}
				.hbg_btn__line::after {
					bottom: -10px;
				}

	.global_nav {
		display: none;
		width: 100%;
		height: 100vh;
		background-color: var(--color--white);
		position: fixed;
		top: 0;
		left: 0;
		z-index: 201;
	}
		.global_nav__contents {
			display: flex;
			justify-content: space-between;
			align-items: flex-start;
			width: 100%;
			height: 100%;
		}
			.global_nav__menu {
				display: flex;
				justify-content: center;
				align-items: center;
				width: 100%;
				height: 100%;
			}
				.global_nav__menu__list {
					display: flex;
					justify-content: space-between;
					align-items: flex-start;
					flex-wrap: wrap;
					gap: 4vw;
					width: 84.375%;
					height: auto;
				}
				.global_nav__menu__list::after {
					content: '';
					display: block;
					width: 17.8125vw;
					height: 0;
				}
					.global_nav__menu__list__item {
						width: 17.8125vw;
						height: auto;
						aspect-ratio: 1 / 1;
					}
						.global_nav__menu__list__item__link {
							display: block;
							width: 100%;
							height: 100%;
							background-color: var(--color--white);
							border-radius: calc((10 / 1280) * 100vw);
							filter: var(--dropshadow_s);
							overflow: hidden;
							position: relative;
						}
							.global_nav__menu__list__item__link span {
								font-size: var(--24px);
								font-weight: 800;
								line-height: 1.2;
								letter-spacing: -0.05em;
								color: var(--color--tairai_red);
								position: absolute;
								top: calc((10 / 1280) * 100vw);
								left: calc((10 / 1280) * 100vw);
							}
							.global_nav__menu__list__item__link svg {
								height: auto;
								fill: var(--color--tairai_red);
								position: absolute;
								top: 55%;
								left: calc((35 / 1280) * 100vw);
								transform: translate(0%,-50%);
							}
						@media (any-hover: hover) {
							.global_nav__menu__list__item__link svg {
								transition: .3s;
							}
							.global_nav__menu__list__item__link:hover svg {
								fill: var(--color--white);
								filter: var(--dropshadow_s);
							}
						}
							.global_nav__menu__list__item__link.top svg {
								width: calc((233.29 / 1280) * 100vw);
							}
							.global_nav__menu__list__item__link.about svg {
								width: calc((410.85 / 1280) * 100vw);
							}
							.global_nav__menu__list__item__link.service svg {
								width: calc((493.84 / 1280) * 100vw);
							}
							.global_nav__menu__list__item__link.works svg {
								width: calc((446.27 / 1280) * 100vw);
							}
							.global_nav__menu__list__item__link.company svg {
								width: calc((588.06 / 1280) * 100vw);
							}
							.global_nav__menu__list__item__link.news svg {
								width: calc((346.25 / 1280) * 100vw);
							}
							.global_nav__menu__list__item__link.contact svg {
								width: calc((543.64 / 1280) * 100vw);
							}
				/* 開く時の処理 */
					.open .hbg_btn__obj._h::before {
						animation: hbg_btn-obj_h_before-open .7s cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
					}
					.open .hbg_btn__obj._h::after {
						animation: hbg_btn-obj_h_after-open .7s cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
					}
						@keyframes hbg_btn-obj_h_before-open {
							0% {
								top: 0px;
								transform: translate(0%,0%);
							}
							60% {
								top: 20px;
								transform: translate(0%,0%) rotate(0deg);
							}
							61% {
								top: 20px;
							}
							100% {
								top: 20px;
								transform: translate(0%,0%) rotate(45deg);
							}
						}
						@keyframes hbg_btn-obj_h_after-open {
							0% {
								bottom: 0px;
								transform: translate(0%,0%);
							}
							60% {
								bottom: 20px;
								transform: translate(0%,0%) rotate(0deg);
							}
							61% {
								bottom: 20px;
							}
							100% {
								bottom: 20px;
								transform: translate(0%,0%) rotate(45deg);
							}
						}
					.open .hbg_btn__obj._v::before {
						animation: hbg_btn-obj_v_before-open .7s cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
					}
					.open .hbg_btn__obj._v::after {
						animation: hbg_btn-obj_v_after-open .7s cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
					}
						@keyframes hbg_btn-obj_v_before-open {
							0% {
								left: 0px;
								transform: translate(0%,0%);
							}
							60% {
								left: 20px;
								transform: translate(0%,0%) rotate(0deg);
							}
							61% {
								left: 20px;
							}
							100% {
								left: 20px;
								transform: translate(0%,0%) rotate(45deg);
							}
						}
						@keyframes hbg_btn-obj_v_after-open {
							0% {
								right: 0px;
								transform: translate(0%,0%);
							}
							60% {
								right: 20px;
								transform: translate(0%,0%) rotate(0deg);
							}
							61% {
								right: 20px;
							}
							100% {
								right: 20px;
								transform: translate(0%,0%) rotate(45deg);
							}
						}
				.open .hbg_btn__line {
					animation: hbg_btn-line-open .4s cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
				}
					@keyframes hbg_btn-line-open {
						0% {
							/* background-color: rgba(199, 29, 33, 1); */
							opacity: 1;
						}
						60% {
							/* background-color: rgba(199, 29, 33, 1); */
							opacity: 1;
						}
						61% {
							/* background-color: rgba(199, 29, 33, 0); */
							opacity: 0;
						}
						100% {
							/* background-color: rgba(199, 29, 33, 0); */
							opacity: 0;
						}
					}
					.open .hbg_btn__line::before {
						animation: hbg_btn-line_before-open .5s cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
					}
					.open .hbg_btn__line::after {
						animation: hbg_btn-line_after-open .5s cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
					}
						@keyframes hbg_btn-line_before-open {
							0% {
								top: -10px;
								transform: translate(0%,0%);
							}
							60% {
								top: 0px;
								transform: translate(0%,0%) rotate(0deg);
							}
							61% {
								top: 0px;
							}
							100% {
								top: 0px;
								/* transform: translate(0%,0%) rotate(45deg); */
							}
						}
						@keyframes hbg_btn-line_after-open {
							0% {
								bottom: -10px;
								transform: translate(0%,0%);
							}
							60% {
								bottom: 0px;
								transform: translate(0%,0%) rotate(0deg);
							}
							61% {
								bottom: 0px;
							}
							100% {
								bottom: 0px;
								/* transform: translate(0%,0%) rotate(-45deg); */
							}
						}
				/* 閉じる時の処理 */
					.close .hbg_btn__obj._h::before {
						animation: hbg_btn-obj_h_before-close .7s cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
					}
					.close .hbg_btn__obj._h::after {
						animation: hbg_btn-obj_h_after-close .7s cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
					}
						@keyframes hbg_btn-obj_h_before-close {
							0% {
								top: 20px;
								transform: translate(0%,0%) rotate(45deg);
							}
							60% {
								top: 20px;
							}
							61% {
								top: 20px;
								transform: translate(0%,0%) rotate(0deg);
							}
							100% {
								top: 0px;
								transform: translate(0%,0%);
							}
						}
						@keyframes hbg_btn-obj_h_after-close {
							0% {
								bottom: 20px;
								transform: translate(0%,0%) rotate(45deg);
							}
							60% {
								bottom: 20px;
							}
							61% {
								bottom: 20px;
								transform: translate(0%,0%) rotate(0deg);
							}
							100% {
								bottom: 0px;
								transform: translate(0%,0%);
							}
						}
					.close .hbg_btn__obj._v::before {
						animation: hbg_btn-obj_v_before-close .7s cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
					}
					.close .hbg_btn__obj._v::after {
						animation: hbg_btn-obj_v_after-close .7s cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
					}
						@keyframes hbg_btn-obj_v_before-close {
							0% {
								left: 20px;
								transform: translate(0%,0%) rotate(45deg);
							}
							60% {
								left: 20px;
							}
							61% {
								left: 20px;
								transform: translate(0%,0%) rotate(0deg);
							}
							100% {
								left: 0px;
								transform: translate(0%,0%);
							}
						}
						@keyframes hbg_btn-obj_v_after-close {
							0% {
								right: 20px;
								transform: translate(0%,0%) rotate(45deg);
							}
							60% {
								right: 20px;
							}
							61% {
								right: 20px;
								transform: translate(0%,0%) rotate(0deg);
							}
							100% {
								right: 0px;
								transform: translate(0%,0%);
							}
						}
				.close .hbg_btn__line {
					animation: hbg_btn-line-close .7s cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
				}
					@keyframes hbg_btn-line-close {
						0% {
							background-color: rgba(199, 29, 33, 0);
							opacity: 0;
						}
						60% {
							background-color: rgba(199, 29, 33, 0);
							opacity: 0;
						}
						61% {
							background-color: rgba(199, 29, 33, 1);
							opacity: 1;
						}
						100% {
							background-color: rgba(199, 29, 33, 1);
							opacity: 1;
						}
					}
					.close .hbg_btn__line::before {
						animation: hbg_btn-line_before-close .7s cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
					}
					.close .hbg_btn__line::after {
						animation: hbg_btn-line_after-close .7s cubic-bezier(0.65, 0, 0.35, 1) 1 forwards;
					}
						@keyframes hbg_btn-line_before-close {
							0% {
								top: 0px;
								/* transform: translate(0%,0%) rotate(45deg); */
							}
							60% {
								top: 0px;
							}
							61% {
								top: 0px;
								transform: translate(0%,0%) rotate(0deg);
							}
							100% {
								top: -10px;
								transform: translate(0%,0%);
							}
						}
						@keyframes hbg_btn-line_after-close {
							0% {
								bottom: 0px;
								/* transform: translate(0%,0%) rotate(-45deg); */
							}
							60% {
								bottom: 0px;
							}
							61% {
								bottom: 0px;
								transform: translate(0%,0%) rotate(0deg);
							}
							100% {
								bottom: -10px;
								transform: translate(0%,0%);
							}
						}

footer {
	width: 100%;
	height: auto;
}
	.footer__inner {
		width: 100%;
		height: auto;
	}
		.footer__contents {
			display: flex;
			justify-content: center;
			align-items: center;
			width: 100%;
			height: calc((336 / 1280) * 100vw);
			background-color: var(--color--white);
			filter: var(--dropshadow_s);
		}
			.footer__logo {
				width: calc((544 / 1280) * 100vw);
				height: auto;
			}
				.footer__logo svg {
					width: 100%;
					height: auto;
					fill: var(--color--tairai_red);
				}
		.footer__menu {
			width: 100%;
			height: auto;
			position: relative;
			z-index: 2;
		}
			.footer__menu_list {
				display: flex;
				justify-content: space-between;
				align-items: center;
				width: 100%;
				height: auto;
			}
				.footer__menu_list__item {
					display: block;
					height: auto;
				}
				.footer__menu_list__item.top {
					width: calc((129.07 / 1280) * 100vw);
				}
				.footer__menu_list__item.service {
					width: calc((273.23 / 1280) * 100vw);
				}
				.footer__menu_list__item.news {
					width: calc((191.57 / 1280) * 100vw);
				}
				.footer__menu_list__item.works {
					width: calc((246.91 / 1280) * 100vw);
				}
				.footer__menu_list__item.contact {
					width: calc((300.78 / 1280) * 100vw);
				}
					.footer__menu_list__item a {
						display: block;
						width: 100%;
						height: auto;
					}
						.footer__menu_list__item a svg {
							display: block;
							fill: var(--color--tairai_red);
						}
					@media (any-hover: hover) {
						.footer__menu_list__item a svg {
							transition: .3s;
						}
						.footer__menu_list__item a:hover svg {
							fill: var(--color--white);
							filter: var(--dropshadow_s);
						}
					}
		.footer__copy {
			display: flex;
			justify-content: center;
			align-items: center;
			width: 100%;
			height: calc((74 / 1280) * 100vw);
			background-color: var(--color--white);
			filter: var(--dropshadow_s);
		}
			.footer__copy__txt {
				width: 100%;
				height: auto;
				font-size: var(--14px);
				font-weight: 800;
				line-height: 1;
				letter-spacing: -0.05em;
				text-align: center;
				color: var(--color--tairai_red);
			}

.section__heading {
	
}
	.section__heading svg {
		width: 100%;
		height: auto;
		fill: var(--color--white);
		filter: var(--dropshadow_s);
	}

.page__heading {
	width: 100%;
	height: calc((300 / 1280) * 100vw);
}

/* PC ================================================== */
@media all and (min-width: 769px){
.tablet,.sp {display: none;}
.pc {display: inline-block;}
.view_sp {display: none;}
.view_tablet {display: none;}
.view_pc {display: block;}
body {}
h1{}
h2{}
h3{}
h4{}
h5{}
h6{}
}

/* Tablet ================================================== */
@media all and (max-width: 768px){
.pc,.sp {display: none;}
.tablet {display: inline-block;}
.view_pc {display: none;}
.view_sp {display: none;}
.view_tablet {display: block;}
body {}
h1{}
h2{}
h3{}
h4{}
h5{}
h6{}

/* header */
	.header__logo {
		width: 150px;
		top: 25px;
		left: 20px;
		z-index: 202;
	}
	.hamburger {
		width: 60px;
		height: 60px;
		top: 15px;
		right: 20px;
	}
		.hbg_btn {
			border-radius: 6px;
		}
			.hbg_btn__obj._h {
				width: 45px;
				height: 36px;
			}
				.hbg_btn__obj._h::before,
				.hbg_btn__obj._h::after {
					height: 4px;
				}
			.hbg_btn__obj._v {
				width: 36px;
				height: 45px;
			}
				.hbg_btn__obj._v::before,
				.hbg_btn__obj._v::after {
					width: 4px;
				}
			.hbg_btn__line {
				width: 22px;
				height: 4px;
			}
				.hbg_btn__line::before,
				.hbg_btn__line::after {
					width: 22px;
					height: 4px;
				}
				.hbg_btn__line::before {
					top: -7px;
				}
				.hbg_btn__line::after {
					bottom: -7px;
				}
	.global_nav {
		height: 100vh;
	}
		.global_nav__contents {
			padding: 90px 0 0;
			height: 100dvh;
		}
			.global_nav__menu {
				display: block;
			}
				.global_nav__menu__list {
					gap: initial;
					row-gap: 3vw;
					width: 87vw;
					margin: 0 auto;
				}
				.global_nav__menu__list::after {
					content: initial;
					display: none;
				}
					.global_nav__menu__list__item {
						justify-content: space-between;
						width: 27vw;
					}
						.global_nav__menu__list__item__link {
							border-radius: calc((10 / 375) * 100vw);
						}
							.global_nav__menu__list__item__link span {
								font-size: var(--14px);
								top: calc((5 / 375) * 100vw);
								left: calc((5 / 375) * 100vw);
							}
							.global_nav__menu__list__item__link svg {
								left: calc((20 / 375) * 100vw);
							}
							.global_nav__menu__list__item__link.top svg {
								width: calc((103.15 / 375) * 100vw);
							}
							.global_nav__menu__list__item__link.about svg {
								width: calc((182.19 / 375) * 100vw);
							}
							.global_nav__menu__list__item__link.service svg {
								width: calc((218.35 / 375) * 100vw);
							}
							.global_nav__menu__list__item__link.works svg {
								width: calc((197.32 / 375) * 100vw);
							}
							.global_nav__menu__list__item__link.company svg {
								width: calc((260.01 / 375) * 100vw);
							}
							.global_nav__menu__list__item__link.news svg {
								width: calc((153.09 / 375) * 100vw);
							}
							.global_nav__menu__list__item__link.contact svg {
								width: calc((240.37 / 375) * 100vw);
							}
						@keyframes hbg_btn-obj_h_before-open {
							0% {
								top: 0px;
								transform: translate(0%,0%);
							}
							60% {
								top: 16px;
								transform: translate(0%,0%) rotate(0deg);
							}
							61% {
								top: 16px;
							}
							100% {
								top: 16px;
								transform: translate(0%,0%) rotate(45deg);
							}
						}
						@keyframes hbg_btn-obj_h_after-open {
							0% {
								bottom: 0px;
								transform: translate(0%,0%);
							}
							60% {
								bottom: 16px;
								transform: translate(0%,0%) rotate(0deg);
							}
							61% {
								bottom: 16px;
							}
							100% {
								bottom: 16px;
								transform: translate(0%,0%) rotate(45deg);
							}
						}
						@keyframes hbg_btn-obj_v_before-open {
							0% {
								left: 0px;
								transform: translate(0%,0%);
							}
							60% {
								left: 16px;
								transform: translate(0%,0%) rotate(0deg);
							}
							61% {
								left: 16px;
							}
							100% {
								left: 16px;
								transform: translate(0%,0%) rotate(45deg);
							}
						}
						@keyframes hbg_btn-obj_v_after-open {
							0% {
								right: 0px;
								transform: translate(0%,0%);
							}
							60% {
								right: 16px;
								transform: translate(0%,0%) rotate(0deg);
							}
							61% {
								right: 16px;
							}
							100% {
								right: 16px;
								transform: translate(0%,0%) rotate(45deg);
							}
						}
					@keyframes hbg_btn-line-open {
						0% {
							opacity: 1;
						}
						60% {
							opacity: 1;
						}
						61% {
							opacity: 0;
						}
						100% {
							opacity: 0;
						}
					}
						@keyframes hbg_btn-line_before-open {
							0% {
								top: -7px;
								transform: translate(0%,0%);
							}
							60% {
								top: 0px;
								transform: translate(0%,0%) rotate(0deg);
							}
							61% {
								top: 0px;
							}
							100% {
								top: 0px;
							}
						}
						@keyframes hbg_btn-line_after-open {
							0% {
								bottom: -7px;
								transform: translate(0%,0%);
							}
							60% {
								bottom: 0px;
								transform: translate(0%,0%) rotate(0deg);
							}
							61% {
								bottom: 0px;
							}
							100% {
								bottom: 0px;
							}
						}
						@keyframes hbg_btn-obj_h_before-close {
							0% {
								top: 16px;
								transform: translate(0%,0%) rotate(45deg);
							}
							60% {
								top: 16px;
							}
							61% {
								top: 16px;
								transform: translate(0%,0%) rotate(0deg);
							}
							100% {
								top: 0px;
								transform: translate(0%,0%);
							}
						}
						@keyframes hbg_btn-obj_h_after-close {
							0% {
								bottom: 16px;
								transform: translate(0%,0%) rotate(45deg);
							}
							60% {
								bottom: 16px;
							}
							61% {
								bottom: 16px;
								transform: translate(0%,0%) rotate(0deg);
							}
							100% {
								bottom: 0px;
								transform: translate(0%,0%);
							}
						}
						@keyframes hbg_btn-obj_v_before-close {
							0% {
								left: 16px;
								transform: translate(0%,0%) rotate(45deg);
							}
							60% {
								left: 16px;
							}
							61% {
								left: 16px;
								transform: translate(0%,0%) rotate(0deg);
							}
							100% {
								left: 0px;
								transform: translate(0%,0%);
							}
						}
						@keyframes hbg_btn-obj_v_after-close {
							0% {
								right: 16px;
								transform: translate(0%,0%) rotate(45deg);
							}
							60% {
								right: 16px;
							}
							61% {
								right: 16px;
								transform: translate(0%,0%) rotate(0deg);
							}
							100% {
								right: 0px;
								transform: translate(0%,0%);
							}
						}
					@keyframes hbg_btn-line-close {
						0% {
							background-color: rgba(199, 29, 33, 0);
							opacity: 0;
						}
						60% {
							background-color: rgba(199, 29, 33, 0);
							opacity: 0;
						}
						61% {
							background-color: rgba(199, 29, 33, 1);
							opacity: 1;
						}
						100% {
							background-color: rgba(199, 29, 33, 1);
							opacity: 1;
						}
					}
						@keyframes hbg_btn-line_before-close {
							0% {
								top: 0px;
							}
							60% {
								top: 0px;
							}
							61% {
								top: 0px;
								transform: translate(0%,0%) rotate(0deg);
							}
							100% {
								top: -7px;
								transform: translate(0%,0%);
							}
						}
						@keyframes hbg_btn-line_after-close {
							0% {
								bottom: 0px;
							}
							60% {
								bottom: 0px;
							}
							61% {
								bottom: 0px;
								transform: translate(0%,0%) rotate(0deg);
							}
							100% {
								bottom: -7px;
								transform: translate(0%,0%);
							}
						}

/* footer */
		.footer__contents {
			height: calc((120 / 375) * 100vw);
		}
			.footer__logo {
				width: calc((200 / 375) * 100vw);
			}
				.footer__menu_list__item.top {
					width: calc((37.81 / 375) * 100vw);
				}
				.footer__menu_list__item.service {
					width: calc((80.05 / 375) * 100vw);
				}
				.footer__menu_list__item.news {
					width: calc((56.12 / 375) * 100vw);
				}
				.footer__menu_list__item.works {
					width: calc((72.34 / 375) * 100vw);
				}
				.footer__menu_list__item.contact {
					width: calc((88.12 / 375) * 100vw);
				}
		.footer__copy {
			height: calc((46 / 385) * 100vw);
		}
			.footer__copy__txt {
				font-size: var(--14px);
			}

.page__heading {
	height: calc((110 / 375) * 100vw);
	padding: 10px 0 0;
}
}

/* SP ================================================== */
@media all and (max-width: 575px){
.pc,.tablet {display: none;}
.sp {display: inline-block;}
.view_pc {display: none;}
.view_tablet {display: none;}
.view_sp {display: block;}
body {}
h1{}
h2{}
h3{}
h4{}
h5{}
h6{}
}