@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400..900&family=Inter:wght@100..900&family=Roboto:wght@100;300;400;500;700;900&display=swap');
/* --------------------------------------------------
	CSS Reset
-------------------------------------------------- */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
	font-style: normal;
}
html {
	scroll-behavior: smooth;
}
body {
	position: relative;
	line-height: 1;
}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
	display: block;
}
ul,ol {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
a:link,
a:visited {
	color: #000;
	text-decoration: none;
}
a:hover,
a:active {
	color: #000;
	text-decoration: underline;
}
a,
a img {
	transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1);
}
a:hover { opacity: 0.7; }
table {
	border-collapse: collapse;
	border-spacing: 0;
}
hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #cccccc;
	margin: 1em 0;
	padding: 0;
}
input, select {
	vertical-align: middle;
}
html {
	font-family: 'Noto Sans JP', sans-serif;
}
html[lang=en] {
	font-family: "Inter", sans-serif;
	font-optical-sizing: auto;
}
h1,h2,h3,h4,h5,h6,
dt,dd,li,form,input,select,textarea,
p,address,pre,blockquote,th,td,div {
	font-size: 16px;
	font-family: inherit;
	line-height: 1.6;
	color: #000;
	font-feature-settings: "palt";
}
div { letter-spacing: 0; }
.inter {
	font-family: "Inter", sans-serif;
	font-optical-sizing: auto;
}
.roboto {
	font-family: "Roboto", sans-serif;
	font-optical-sizing: auto;
}
img {
	vertical-align: top;
	width: 100%;
}
sup {
	font-size: 60%;
	vertical-align: text-top;
}

/* --------------------------------------------------
	form
-------------------------------------------------- */
label { cursor: pointer; }
input[type="text"],
input[type="email"],
input[type="tel"],
select,
textarea {
	padding: 0.5em;
	box-sizing: border-box;
	background: #FFF;
	border: 1px solid #FFF;
	transition: 0.2s linear;
	font-size: 17px;
}
input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
textarea:focus {
	box-shadow: 0 0 3px 3px rgba(0,0,0,0.1) inset;
}
textarea { width: 100%; }
input[type="submit"],
input[type="reset"],
input[type="button"] {
	display: block;
	padding: 40px 0;
	width: 450px;
	box-sizing: border-box;
	background: #0c0628;
	border: 0;
	font-size: 20px;
	font-weight: 600;
	line-height: 1;
	color: #fff;
	cursor: pointer;
	transition: 0.2s linear;
}
input[type="submit"].wpcf7-submit,
input[type="button"].wpcf7-submit {
	background-image: url("../img/common/icon_arrow_right_white.svg");
	background-repeat: no-repeat;
	background-position: 89% center;
	background-size: 24px 24px;
}
input[type="submit"].wpcf7-submit:disabled,
input[type="button"].wpcf7-submit:disabled {
	background-color: #666;
}
input[type="submit"].wpcf7-previous,
input[type="button"].wpcf7-previous {
	background-color: #fff;
	background-image: url("../img/common/icon_arrow_left_black.svg");
	background-repeat: no-repeat;
	background-position: 11% center;
	background-size: 24px 24px;
	border: #cecdd4 1px solid;
	color: #0c0628;
}
input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover {
	background-color: #fd8112;
}
input[type="submit"]:hover.wpcf7-submit,
input[type="button"]:hover.wpcf7-submit {
	background-image: url("../img/common/icon_arrow_right_white_on.svg");
}
input[type="submit"]:hover.wpcf7-previous,
input[type="button"]:hover.wpcf7-previous {
	background-image: url("../img/common/icon_arrow_left_white_on.svg");
	border-color: #fd8112;
	color: #fff;
}
input[type="submit"].wpcf7-submit:disabled,
input[type="button"].wpcf7-submit:disabled,
input[type="submit"]:hover.wpcf7-submit:disabled,
input[type="button"]:hover.wpcf7-submit:disabled {
	background-color: #666;
}
input[type="submit"]:hover.wpcf7-submit:disabled,
input[type="button"]:hover.wpcf7-submit:disabled {
	background-image: url("../img/common/icon_arrow_right_white.svg");
}
input[type="submit"].complete {
}
@media screen and (max-width: 768px) {
	input[type="text"],
	input[type="email"],
	input[type="tel"],
	select,
	textarea {
		font-size: 3.7334vw;
	}
	input[type="submit"],
	input[type="reset"],
	input[type="button"] {
		padding: 7.7334vw 0;
		width: 86.6667vw;
		font-size: 4.8vw;
	}
	input[type="submit"].wpcf7-submit,
	input[type="button"].wpcf7-submit {
		background-size: 4.6667vw 4.6667vw;
	}
	input[type="submit"].wpcf7-previous,
	input[type="button"].wpcf7-previous {
		background-size: 4.6667vw 4.6667vw;
	}
}

/* --------------------------------------------------
	clearfix
-------------------------------------------------- */
.clearfix:after {
	content: '';
	display: block;
	clear: both;
}
.clearfix { *zoom: 1; }

/* --------------------------------------------------
	.anchor
-------------------------------------------------- */
.anchor { transform: translate(0,-130px); }
@media screen and (max-width: 768px) {
	.anchor { transform: translate(0,-17.1875vw); }
}

/* --------------------------------------------------
	.btn-pagetop
-------------------------------------------------- */
.btn-pagetop {
	position: fixed;
	right: 50px;
	bottom: 50px;
	z-index: 100;
	transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1);
	opacity: 0;
	pointer-events: none;
}
.scrolled .btn-pagetop {
	opacity: 1;
	pointer-events: auto;
}
.btn-pagetop a {
	display: block;
	width: 70px;
	height: 70px;
	overflow: hidden;
	text-indent: -9999px;
	opacity: 1;
}
.btn-pagetop a::before,
.btn-pagetop a::after{
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1);
}
.btn-pagetop a:hover::before{
	background-color: #fff;
}
.btn-pagetop a::after{
	background: url("../img/common/btn_pagetop.svg") no-repeat center center;
	background-size: 100% auto;
}
.btn-pagetop a:hover::after{
	opacity: 0.7;
}
@media screen and (max-width: 768px) {
	.btn-pagetop {
		right: 2.9334vw;
	}
	.btn-pagetop,
	.scrolled .btn-pagetop {
		bottom: calc( 20vw + 2.6667vw );
	}
	.btn-pagetop a {
		width: 16.2667vw;
		height: 16.2667vw;
	}
}

/* --------------------------------------------------
	.inner
-------------------------------------------------- */
.inner {
	position: relative;
	margin: 0 auto;
	max-width: 1160px;
}

/* --------------------------------------------------
	.spOnly .pcOnly
-------------------------------------------------- */
div.spOnly,
img.spOnly,
br.spOnly,
span.spOnly { display: none; }
@media screen and (max-width: 768px) {
	div.pcOnly,
	img.pcOnly,
	br.pcOnly,
	span.pcOnly { display: none; }
	div.spOnly,
	img.spOnly,
	br.spOnly,
	span.spOnly { display: inline-block; }
	br.spOnly { font-size: 0; }
}

/* --------------------------------------------------
	.header
-------------------------------------------------- */
.header {
	position: fixed;
	left: 0;
	top: 0;
	z-index: 1000;
	display: flex;
	align-items: center;
	width: 100%;
	height: 100px;
	transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
	background-color: rgba(12,6,40,0.95);
	box-shadow: 0 5px 3px rgba(0,0,0,0.3);
}
.header .inner {
	width: 100%;
	max-width: 100%;
	height: 100%;
}
.header .menu-btn {
	display: none;
}
.header .logo {
	position: absolute;
	top: -50%;
	bottom: -50%;
	left: 30px;
	height: 55px;
	margin: auto;
	transform: translateY(-10%);
}
.header .logo img {
	height: 100%;
	object-fit: contain;
	object-position: 0 50%;
}
.page-otherlang .header .logo {
	height: 40px;
	transform: translateY(0);
}
.header .search-form-area {
	position: absolute;
	left: 320px;
	top: 35px;
}
.page-otherlang .header .search-form-area {
	left: 350px;
}
.header .search-form-area input[type=text] {
	padding: 8px 10px;
	width: 200px;
	height: 30px;
	background-color: #f1f1f6;
	border-radius: 3px;
	box-sizing: border-box;
	border: none;
	font-size: 10px;
	line-height: 1;
}
.header .search-form-area #searchsubmit {
	position: absolute;
	right: 0;
	top: 0;
	padding: 0;
	width: 30px;
	height: 30px;
	background: url("../img/common/icon_search.svg") no-repeat center center;
	background-size: 40% auto;
	text-indent: -9999px;
}
.header .header-lang {
	position: absolute;
	left: 530px;
	top: 35px;
	width: 104px;
	height: 30px;
	background-color: #f1f1f6;
	border-radius: 3px;
	box-sizing: border-box;
	border: none;
}
.page-otherlang .header .header-lang {
/*	left: 562px;*/
	left: 350px;
}
.header .header-lang:before {
	content: '';
	display: block;
	position: absolute;
	right: 0;
	top: 0;
	padding: 0;
	width: 30px;
	height: 30px;
	background: url("../img/common/icon_g-nav_arrow_bottom.svg") no-repeat center center;
	background-size: 33% auto;
}
.header .header-lang ul {
	overflow: hidden;
	height: 30px;
	background-color: #f1f1f6;
	border-radius: 3px;
	transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}
.header .header-lang.open ul {
	height: calc( 30px * 4 );
}
.header .header-lang li {
	font-size: 10px;
	line-height: 1;
	text-align: center;
}
.header .header-lang li span,
.header .header-lang li a {
	display: block;
	padding: 10px;
	padding-right: 20px;
	transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}
.header .header-lang li a:hover {
	background-color: #ccc;
	text-decoration: none;
}
.header .header-contact {
	position: absolute;
	right: 0;
	top: 0;
	padding: 0;
	width: 160px;
	height: 100px;
	background-color: #fff;
}
.header .header-contact a {
	position: relative;
	display: block;
	padding-top: 53px;
	width: 100%;
	height: 100%;
	background-color: #FD8112;
	box-sizing: border-box;
	font-size: 14px;
	font-weight: 600;
	color: #fff;
	text-align: center;
}
.header .header-contact a:hover {
	opacity: 0.7;
	text-decoration: none;
}
.header .header-contact a:before {
	content: '';
	display: block;
	position: absolute;
	left: 50%;
	top: 26px;
	transform: translate(-50%,0);
	width: 20px;
	height: 16px;
	background: url("../img/common/icon_contact.svg") no-repeat;
	background-size: contain;
}
.header .sub-nav {
	position: absolute;
	right: 195px;
	top: 24px;
}
.header .sub-nav ul {
	display: flex;
}
.header .sub-nav li {
	font-size: 14px;
	line-height: 1;
}
.header .sub-nav li + li {
	position: relative;
	margin-left: 16px;
	padding-left: 16px;
}
.header .sub-nav li + li:before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: 10%;
	width: 0;
	height: 80%;
	border-left: #fff 1px solid;
}
.header .sub-nav li a {
	color: #fff;
}
.header nav {
	margin-right: 195px;
	padding-top: 52px;
}
.header .g-nav {
	display: flex;
	justify-content: end;
	gap: 35px;
}
.header .g-nav > li.spOnly {
	display: none;
}
.header .g-nav > li > span,
.header .g-nav > li > a {
	font-size: 15px;
	font-weight: 600;
	line-height: 1;
	color: #fff;
	text-shadow: 0 0 2px rgba(0,0,0,0.7);
}
.header .sub-nav li a:hover,
	.header .g-nav > li > a:hover {
	color: #FD8112;
	opacity: 1;
	text-decoration: none;
}
.header .g-nav .g-nav-child,
.header .g-nav .g-nav-child-btn {
	display: none;
}
@media screen and (max-width: 1330px) {
	.header .search-form-area,
	.header .header-lang {
		top: 17px;
	}
}
@media screen and (max-width: 1040px) {
	.header .logo {
		max-width: 20vw;
		left: 20px;
	}
	.header .search-form-area {
		left: 258px;
	}
	.header .search-form-area input[type=text] {
		width: 110px;
	}
	.header .header-lang {
		left: 380px;
	}
}
@media screen and (max-width: 900px) {
	.header .logo {
		width: 160px;
	}
	.header .sub-nav {
		top: 12px;
	}
	.header .sub-nav ul {
		display: block;
	}
	.header .sub-nav li {
		font-size: 12px;
		text-align: right;
	}
	.header .sub-nav li + li {
		margin-left: 0;
		padding-left: 0;
		margin-top: 0.5em;
	}
	.header .sub-nav li + li:before {
		display: none;
	}
	.header .g-nav {
		gap: 20px;
	}
}
@media screen and (max-width: 768px) {
	.header {
		height: 16vw;
		box-shadow: none;
	}
	.header .inner {
		height: 16vw;
	}
	.header .menu-btn {
		position: absolute;
		right: 0;
		top: 0;
		z-index: 101;
		display: block;
		width: 14.6667vw;
		height: 16vw;
		background-color: #0c0628;
		cursor: pointer;
	}
	.header.close .menu-btn {
		background-color: #000;
	}
	.header .menu-btn span {
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(-50%,-50%);
		display: block;
		width: 7.6vw;
		height: 0.2667vw;
		height: 1px;
		background-color: #fff;
		border-radius: 0.1334vw;
		transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
	}
	.header .menu-btn span:nth-child(1) {
		top: calc( 50% - 2.1334vw );
	}
	.header .menu-btn span:nth-child(2) {
		left: calc( 50% + 1vw );
		width: 5.6001vw;
	}
	.header .menu-btn span:nth-child(3) {
		left: calc( 50% + 2.3334vw );
		top: calc( 50% + 1.8667vw );
		width: 2.9334vw;
	}
	.header.close .menu-btn span:nth-child(1),
	.header.close .menu-btn span:nth-child(2),
	.header.close .menu-btn span:nth-child(3) {
		left: 50%;
		top: 50%;
		width: 11.2001vw;
		height: 0.8vw;
	}
	.header.close .menu-btn span:nth-child(1) {
		transform: translate(-50%,-50%) rotate(45deg);
	}
	.header.close .menu-btn span:nth-child(2) {
		opacity: 0;
	}
	.header.close .menu-btn span:nth-child(3) {
		transform: translate(-50%,-50%) rotate(-45deg);
	}
	.header .logo {
		left: 4vw;
		width: auto;
		max-width: inherit;
		height: 9.333333vw;
		transform: translateY(-0.533333vw);
	}
	.page-otherlang .header .logo {
		height: 6.4vw;
	}
	.header .search-form-area,
	.page-otherlang .header .search-form-area {
		position: relative;
		left: 0;
		top: auto;
		width: 82.6667vw;
		margin: 12.5334vw auto 0;
	}
	.header .search-form-area input[type=text] {
		padding: 4.6667vw;
		width: 82.6667vw;
		height: 13.3334vw;
		border-radius: 0.8vw;
		font-size: 4vw;
	}
	.header .search-form-area #searchsubmit {
		width: 13.3334vw;
		height: 13.3334vw;
		background-size: 35% auto;
	}
	.header .header-lang,
	.page-otherlang .header .header-lang {
		left: 52vw;
		top: -50%;
		bottom: -50%;
		width: 29.3334vw;
		height: 8vw;
		margin: auto;
		border-radius: 0.8vw;
	}
	.header .header-lang:before {
		width: 7.3334vw;
		height: 8vw;
		background-size: 2.1334vw auto;
	}
	.header .header-lang ul {
		height: 8vw;
		border-radius: 3px;
	}
	.header .header-lang.open ul {
		height: calc( 8vw * 4 );
	}
	.header .header-lang li {
		font-size: 2.9334vw;
	}
	.header .header-lang li span,
	.header .header-lang li a {
		padding: 2.6667vw;
		padding-right: 4vw;
	}
	.header .header-contact {
		display: none;
	}
	.header .sub-nav {
		display: none;
	}
	.header nav {
		right: 0;
		top: 0;
		margin-left: auto;
		margin-right: 0;
		padding-top: 0;
		height: auto;
		width: 100vw;
	}
	.header .nav-wrapper {
		position: absolute;
		left: 100vw;
		top: 0;
		z-index: 100;
		padding: 19.3334vw 0 10.6667vw;
		width: 100%;
		height: auto;
		max-height: 100vh;
		box-sizing: border-box;
		background-color: #0c0628;
		transition: left 0.3s cubic-bezier(0.19, 1, 0.22, 1);
		overflow-y: scroll;
		-ms-overflow-style: none;
		scrollbar-width: none;
	}
	.header .nav-wrapper::-webkit-scrollbar {
		display: none;
	}
	.header.close .nav-wrapper { left: 0; }
	.header .g-nav {
		display: block;
		margin: 0 9.3334vw;
	}
	.header .g-nav > li {
		position: relative;
	}
	.header .g-nav > li.spOnly {
		display: list-item;
	}
	.header .g-nav > li + li {
		margin-left: 0;
		margin-top: 8.6667vw;
	}
	.header .g-nav > li > a {
		display: inline-block;
		font-size: 5.6001vw;
		font-weight: 700;
		text-shadow: 0;
	}
	.header .g-nav > li .g-nav-child-btn {
		display: inline-block;
		margin-left: 3.4667vw;
		width: 4.8vw;
		height: 3.5vw;
		background: url("../img/common/icon_g-nav_arrow_bottom.svg") no-repeat center center;
		background-size: 100% auto;
		cursor: pointer;
		transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
	}
	.header .g-nav > li.close .g-nav-child-btn {
		transform: rotate(-180deg);
	}
	.header .g-nav .g-nav-child {
		margin-top: 4vw;
		margin-left: 3.7334vw;
	}
	.header .g-nav .g-nav-child li {
		font-size: 4vw;
		font-weight: 300;
		line-height: 1;
		color: #fff;
	}
	.header .g-nav .g-nav-child li:before {
		content: '-';
		display: inline-block;
		width: 1em;
	}
	.header .g-nav .g-nav-child li > a {
		color: #fff;
	}
	.header .g-nav .g-nav-child li + li {
		margin-top: 5.3334vw;
	}
}

/* --------------------------------------------------
	.mainContents
-------------------------------------------------- */
.mainContents {
	position: relative;
	margin: 0 auto;
	padding-top: 100px;
	overflow: hidden;
}
@media screen and (max-width: 768px) {
	.mainContents {
		padding-top: 16vw;
	}
	.mainContents:has(.breadcrumb) {
		display: flex;
		flex-wrap: wrap;
	}
	.page-top .mainContents {
/*		padding-top: 0;*/
	}
}

/* --------------------------------------------------
	.second-nav
-------------------------------------------------- */
.second-nav {
	background-color: #F7F7F7;
}
.second-nav .inner {
	padding: 28px 0;
	max-width: 1080px;
	box-sizing: border-box;
}
.second-nav ul {
	display: flex;
	flex-wrap: wrap;
	gap: 20px 40px;
}
.second-nav ul li,
.second-nav ul li a {
	font-size: 14px;
	line-height: 1;
}
.second-nav ul li a {
	position: relative;
}
.second-nav ul li a:after {
	content: '';
	position: absolute;
	left: 0;
	bottom: -3px;
	display: block;
	width: 0;
	border-bottom: #fd8112 2px solid;
	transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}
.second-nav ul li a:hover {
	opacity: 1;
	text-decoration: none;
}
.second-nav ul li.is--active a:after,
.second-nav ul li a:hover:after {
	width: 100%;
}
@media screen and (max-width: 1140px) {
	.second-nav .inner {
		margin-left: 30px;
		margin-right: 30px;
	}
}
@media screen and (max-width: 768px) {
	.second-nav {
		display: none;
	}
}

/* --------------------------------------------------
	.breadcrumb
-------------------------------------------------- */
.breadcrumb {}
.breadcrumb .inner {
	padding: 14px 0;
	max-width: 1080px;
	box-sizing: border-box;
}
.breadcrumb ul {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 15px;
}
.breadcrumb ul + ul {
	margin-top: 5px;
}
.breadcrumb ul li,
.breadcrumb ul li a {
	font-size: 12px;
	line-height: 1;
}
.breadcrumb ul li:after {
	content: '>';
	display: inline-block;
	margin-left: 15px;
}
.breadcrumb ul li:last-child:after {
	display: none;
}
@media screen and (max-width: 1140px) {
	.breadcrumb .inner {
		margin-left: 30px;
		margin-right: 30px;
	}
}
@media screen and (max-width: 768px) {
	.breadcrumb {
		order: 2;
		padding-bottom: 4vw;
		width: 100%;
	}
	.page-catalog .breadcrumb,
	.page-catalog_confirm .breadcrumb,
	.page-catalog_complete .breadcrumb,
	.page-sales .breadcrumb,
	.page-sales_confirm .breadcrumb,
	.page-sales_complete .breadcrumb,
	.page-after .breadcrumb,
	.page-after_confirm .breadcrumb,
	.page-after_complete .breadcrumb,
	.page-digital_book .breadcrumb,
	.page-movie .breadcrumb,
	.single-news .breadcrumb,
	.post-type-archive-publishing .breadcrumb,
	.page-cad .breadcrumb {
		background-color: #f3f3f4;
	}

	.breadcrumb .inner {
		margin: 0 auto;
		padding: 0 3.3334vw;
	}
	.breadcrumb ul {
		gap: 2vw 4vw;
		margin: 0;
	}
	.breadcrumb ul + ul {
		margin-top: 2.6667vw;
	}
	.breadcrumb ul li,
	.breadcrumb ul li a {
		font-size: 3.2vw;
	}
	.breadcrumb ul li:after {
		margin-left: 4vw;
	}
}

/* --------------------------------------------------
	.error404
-------------------------------------------------- */
.mainContents .error404 { padding: 260px 0 300px; }
.mainContents .error404 h1 {
	margin-bottom: 90px;
	font-weight: 700;
	font-size: 39px;
	letter-spacing: 0.1em;
	text-align: center;
	line-height: 1;
}
.mainContents .error404 p {
	font-weight: 500;
	font-size: 16px;
	letter-spacing: 0.02em;
	line-height: 2.25;
	text-align: center;
	color: #555;
}
@media screen and (max-width: 1060px) {
	.mainContents .error404 .inner {
		margin: 0 30px;
	}
}
@media screen and (max-width: 768px) {
	.mainContents .error404 { padding: 30.6667vw 0 34.6667vw; }
	.mainContents .error404 .inner {
		margin: 0 auto;
		max-width: 86.6667vw;
	}
	.mainContents .error404 h1 {
		margin-bottom: 10vw;
		font-size: 7.4667vw;
		letter-spacing: 0.02em;
	}
	.mainContents .error404 p {
		font-size: 3.7334vw;
		letter-spacing: 0.08em;
		line-height: 1.7;
	}
}

/* --------------------------------------------------
	.floating-nav-sp
-------------------------------------------------- */
.floating-nav-sp {
	display: none;
}
@media screen and (max-width: 768px) {
	.floating-nav-sp {
		position: fixed;
		left: 0;
		bottom: 0;
		z-index: 100;
		display: block;
		width: 100vw;
		height: 20vw;
		background: #fff;
		transform: translate(0,20%);
		opacity: 0;
		pointer-events: none;
		transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
		box-shadow: 0 -1.0667vw 0.8vw rgba(0,0,0,0.3);
	}
	.page-otherlang .floating-nav-sp {
		width: 100vw;
		height: 13.3334vw;
	}
	.scrolled .floating-nav-sp {
		transform: none;
		opacity: 1;
		pointer-events: auto;
	}
	.floating-nav-sp ul {
		display: flex;
		height: 100%;
	}
	.floating-nav-sp ul li.floating-nav-catalogue,
	.floating-nav-sp ul li.floating-nav-afterservice {
		width: 25%;
	}
	.floating-nav-sp ul li a {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: 100%;
	}
	.floating-nav-sp ul li span {
		position: relative;
		font-weight: 700;
	}
	.floating-nav-sp ul li.floating-nav-catalogue span,
	.floating-nav-sp ul li.floating-nav-afterservice span {
		font-size: 2.9334vw;
		line-height: 1.27;
		text-align: center;
	}
	.floating-nav-sp ul li span:before {
		content: '';
		display: block;
		background-repeat: no-repeat;
		background-position: center center;
		background-size: contain;
	}
	.floating-nav-sp ul li.floating-nav-catalogue span:before,
	.floating-nav-sp ul li.floating-nav-afterservice span:before {
		margin: 0 auto 1.3334vw;
		width: 6.6667vw;
		height: 6.6667vw;
	}
	.floating-nav-sp ul li.floating-nav-catalogue span:before {
		background-image: url("../img/common/icon_catalogue.svg");
	}
	.floating-nav-sp ul li.floating-nav-afterservice span:before {
		background-image: url("../img/common/icon_afterservice.svg");
	}
	.floating-nav-sp ul li.floating-nav-contact {
		width: 50%;
	}
	.page-otherlang .floating-nav-sp ul li.floating-nav-contact {
		width: 100%;
	}
	.floating-nav-sp ul li.floating-nav-contact a {
		background-color: #FD8112;
	}
	.floating-nav-sp ul li.floating-nav-contact span {
		font-size: 3.8667vw;
		color: #fff;
		line-height: 1;
	}
	.floating-nav-sp ul li.floating-nav-contact span:before {
		display: inline-block;
		margin-right: 2.4vw;
		width: 6vw;
		height: 4.8vw;
		background-image: url("../img/common/icon_contact.svg");
		vertical-align: -0.8vw;
	}
}

/* --------------------------------------------------
	.footer
-------------------------------------------------- */
.footer {
	background: #0c0628;
}
.footer .footer-contact-area {
	height: 395px;
	background: #fd8112 url("../img/common/footer_contact_bg_pc.png") no-repeat center center;
	background-size: cover;
}
.page-otherlang .footer .footer-contact-area {
	height: 230px;
}
.footer .footer-contact-area .inner {
	padding-top: 108px;
}
.footer .footer-contact-area h2 {
	margin-bottom: 95px;
	font-size: 26px;
	font-weight: 700;
	line-height: 1;
	color: #fff;
	text-align: center;
}
.footer .footer-contact-area ul {
	display: flex;
	justify-content: center;
	height: 200px;
	gap: 2px;
}
.footer .footer-contact-area li {
	width: 186px;
}
.footer .footer-contact-area li a {
	position: relative;
	display: block;
	padding-top: 40px;
	width: 100%;
	height: 100%;
	background-color: #fff;
	box-sizing: border-box;
}
.footer .footer-contact-area li a:hover {
	text-decoration: none;
	opacity: 1;
}
.footer .footer-contact-area li a:before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	pointer-events: none;
	border: rgba(253,129,18,0.6) 0 solid;
	transition: .1s linear;
}
.footer .footer-contact-area li a:hover:before {
	border-width: 4px;
}
.footer .footer-contact-area li a:after {
	content: '';
	display: block;
	position: absolute;
	left: 50%;
	top: 156px;
	transform: translate(-50%,0);
	width: 24px;
	height: 24px;
	background: url("../img/common/icon_arrow_right_orange.svg") no-repeat;
	background-size: contain;
}
.footer .footer-contact-area li .icon {
	display: block;
	margin: 0 auto 12px;
	width: 39px;
}
.footer .footer-contact-area li .txt {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 3em;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.53;
	text-align: center;
}
.footer .footer-sitemap-area .inner {
	padding-top: 85px;
	padding-bottom: 65px;
	max-width: 1000px;
}
.footer .footer-sitemap-area .footer-sitemap-flex {
	display: flex;
}
.footer .footer-sitemap-area .footer-sitemap-flex-child {
	flex: 1;
}
.footer .footer-sitemap-area p,
.footer .footer-sitemap-area li,
.footer .footer-sitemap-area a {
	color: #fff;
}
.footer .footer-sitemap-area .sitemap-heading {
	font-size: 12px;
	font-weight: 700;
}
.footer .footer-sitemap-area li {
	font-size: 11px;
	font-weight: 300;
	line-height: 1.8;
}
.footer .footer-sitemap-area li:before {
	content: '- ';
}
.footer .footer-sitemap-area p + ul {
	margin-top: 5px;
}
.footer .footer-sitemap-area ul + p,
.footer .footer-sitemap-area p + div,
.footer .footer-sitemap-area p + p,
.footer .footer-sitemap-area .footer-sitemap-flex-child-flex + .footer-sitemap-flex-child-flex,
.footer .footer-sitemap-area .footer-sitemap-flex-child-flex div + div {
	margin-top: 26px;
}
.footer .footer-bottom-area p,
.footer .footer-bottom-area li,
.footer .footer-bottom-area a {
	color: #fff;
}
.footer .footer-bottom-area .inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	padding-top: 22px;
	padding-bottom: 22px;
	max-width: 1000px;
	border-top: rgba(255,255,255,0.74) 1px solid;
}
.page-otherlang .footer .footer-bottom-area .inner {
	border-top: none;
}
.footer .footer-bottom-area .footer-logo {
	width: 138px;
}
.page-otherlang .footer .footer-bottom-area .footer-logo {
	width: 180px;
}
.page-otherlang .footer .footer-bottom-area .footer-sub-nav {
	margin-left: 70px;
	margin-right: auto;
}
.footer .footer-bottom-area .footer-sub-nav ul {
	display: flex;
}
.footer .footer-bottom-area .footer-sub-nav li {
	position: relative;
	font-size: 13px;
	font-weight: 400;
	line-height: 1;
}
.footer .footer-bottom-area .footer-sub-nav li + li {
	margin-left: 15px;
	padding-left: 15px;
}
.footer .footer-bottom-area .footer-sub-nav li + li:before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: 10%;
	width: 0;
	height: 80%;
	border-left: #fff 1px solid;
}
.page-otherlang .footer .footer-bottom-area .footer-sub-nav li {
	padding: 0 15px;
}
.page-otherlang .footer .footer-bottom-area .footer-sub-nav li:before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: 10%;
	width: 100%;
	height: 80%;
	border-left: #fff 1px solid;
	border-right: #fff 1px solid;
	pointer-events: none;
}
.footer .footer-bottom-area .footer-copyright p {
	font-size: 10px;
	font-weight: 400;
	line-height: 1;
}
@media screen and (max-width: 1060px) {
	.footer .footer-sitemap-area .inner,
	.footer .footer-bottom-area .inner {
		margin: 0 30px;
	}
}
@media screen and (max-width: 900px) {
	.footer .footer-bottom-area .footer-copyright {
		margin-top: 15px;
	}
}
@media screen and (max-width: 768px) {
	.footer .footer-contact-area {
		height: 101.3334vw;
		background-image: url("../img/common/footer_contact_bg_sp.png");
	}
	.page-otherlang .footer .footer-contact-area {
		height: 30.6667vw;
	}
	.footer .footer-contact-area .inner {
		padding-top: 11.3334vw;
	}
	.footer .footer-contact-area h2 {
		margin-bottom: 10vw;
		font-size: 6.9334vw;
	}
	.footer .footer-contact-area ul {
		flex-wrap: wrap;
		height: auto;
		gap: 1.0667vw;
	}
	.footer .footer-contact-area li {
		width: 41.6vw;
		height: 44.6667vw;
	}
	.footer .footer-contact-area li a {
		padding-top: 9.3334vw;
	}
	.footer .footer-contact-area li a:before {
		display: none;
	}
	.footer .footer-contact-area li a:after {
		top: auto;
		bottom: 4.4vw;
		width: 5.3334vw;
		height: 5.3334vw;
	}
	.footer .footer-contact-area li .icon {
		margin-bottom: 3.3334vw;
		width: 8.5334vw;
	}
	.footer .footer-contact-area li .txt {
		font-size: 3.3334vw;
	}
	.footer .footer-sitemap-area .inner {
		margin-left: auto;
		margin-right: auto;
		padding-top: 24.8vw;
		padding-bottom: 8.6667vw;
		max-width: 84.2667vw;
	}
	.footer .footer-sitemap-area .footer-sitemap-flex {
		flex-wrap: wrap;
	}
	.footer .footer-sitemap-area .footer-sitemap-flex-child {
		flex: 0 1 auto;
	}
	.footer .footer-sitemap-area .footer-sitemap-flex-child.footer-sitemap-3,
	.footer .footer-sitemap-area .footer-sitemap-flex-child.footer-sitemap-4,
	.footer .footer-sitemap-area .footer-sitemap-flex-child.footer-sitemap-5 {
		width: 100%;
	}
	.footer .footer-sitemap-area .footer-sitemap-flex-child.footer-sitemap-1,
	.footer .footer-sitemap-area .footer-sitemap-flex-child.footer-sitemap-2 {
		width: 50%;
	}
	.footer .footer-sitemap-area .footer-sitemap-flex-child-flex {
		display: flex;
	}
	.footer .footer-sitemap-area .footer-sitemap-flex-child-flex-child {
		margin-top: 0;
		width: 50%;
	}
	.footer .footer-sitemap-area .sitemap-heading {
		font-size: 3.4667vw;
	}
	.footer .footer-sitemap-area li {
		font-size: 2.9334vw;
	}
	.footer .footer-sitemap-area li + li {
		margin-top:  0.5em;
	}
	.footer .footer-sitemap-area p + ul {
		margin-top: 2.6667vw;
	}
	.footer .footer-sitemap-area .footer-sitemap-flex-child-flex div + div {
		margin-top: 0;
	}
	.footer .footer-sitemap-area p + div,
	.footer .footer-sitemap-area .footer-sitemap-flex-child-flex + .footer-sitemap-flex-child-flex,
	.footer .footer-sitemap-area .footer-sitemap-flex-child.footer-sitemap-3,
	.footer .footer-sitemap-area .footer-sitemap-flex-child.footer-sitemap-4,
	.footer .footer-sitemap-area .footer-sitemap-flex-child.footer-sitemap-5 {
		margin-top: 6.1334vw;
	}
	.footer .footer-sitemap-area .footer-sitemap-flex-child.footer-sitemap-5 {
		display: flex;
		flex-wrap: wrap;
		gap: 5.3334vw 0;
	}
	.footer .footer-sitemap-area .footer-sitemap-flex-child.footer-sitemap-5 p {
		flex: 0 1 auto;
		width: 50%;
	}
	.footer .footer-sitemap-area .footer-sitemap-flex-child.footer-sitemap-5 p + p {
		margin-top: 0;
	}
	.footer .footer-bottom-area .inner {
		padding-top: 8vw;
		padding-bottom: 23.3334vw;
		max-width: 86.6667vw;
	}
	.footer .footer-bottom-area .footer-logo {
		order: 2;
		margin: 0 auto 8.8vw;
		width: 56.8vw;
	}
	.footer .footer-bottom-area .footer-sub-nav {
		order: 1;
		margin-bottom: 8vw;
	}
	.page-otherlang .footer .footer-bottom-area .footer-sub-nav {
		margin-left: auto;
	}
	.footer .footer-bottom-area .footer-sub-nav ul {
		flex-wrap: wrap;
		gap: 3.3334vw;
	}
	.footer .footer-bottom-area .footer-sub-nav li {
		font-size: 3.4667vw;
	}
	.footer .footer-bottom-area .footer-sub-nav li,
	.footer .footer-bottom-area .footer-sub-nav li + li {
		margin-left: 0;
		padding-left: 0;
		margin-right: 0.6667vw;
		padding-right: 4vw;
	}
	.footer .footer-bottom-area .footer-sub-nav li:before,
	.footer .footer-bottom-area .footer-sub-nav li + li:before {
		content: '';
		display: block;
		position: absolute;
		left: auto;
		right: 0;
		top: 10%;
		width: 0;
		height: 80%;
		border-left: #fff 1px solid;
	}
	.footer .footer-bottom-area .footer-copyright {
		order: 3;
		margin-top: 0;
		width: 100%;
	}
	.footer .footer-bottom-area .footer-copyright p {
		font-size: 2.2667vw;
		text-align: center;
	}
}

/* --------------------------------------------------
	.general-heading
-------------------------------------------------- */
.general-heading {}
.general-heading.gray {
	background-color: #f7f7f7;
}
.general-heading .inner {
	padding: 50px 0;
	max-width: 1080px;
}
.general-heading h1 {
	font-size: 28px;
	font-weight: 700;
}
.general-heading p {
	margin-top: 0.5em;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.75;
}
@media screen and (max-width: 1160px) {
	.general-heading .inner {
		margin: 0 30px;
	}
}
@media screen and (max-width: 768px) {
	.general-heading {
		width: 100%;
	}
	.general-heading .inner {
		padding: 8.6667vw 0 11.3334vw;
		max-width: 86.6667vw;
	}
	.general-heading h1 {
		font-size: 5.8667vw;
	}
	.general-heading p {
		font-size: 3.7334vw;
	}
}

/* --------------------------------------------------
	.page-general-coontents
-------------------------------------------------- */
.page-general-coontents {
	background-color: #f3f3f4;
}
.page-general-coontents .inner {
	padding: 80px 0 140px;
}
.page-general-coontents.bg-white {
	background-color: #fff;
}
.page-general-coontents.bg-white .inner {
	padding: 100px 0;
}
@media screen and (max-width: 768px) {
	.page-general-coontents .inner {
		padding: 13.3334vw 0 36vw;
	}
}

/* --------------------------------------------------
	.btn-subscription
	.btn-backnumber
	.btn-publishing
	.btn-agreement
-------------------------------------------------- */
.btn-subscription,
.btn-backnumber,
.btn-publishing,
.btn-agreement {
	width: 450px;
	height: 100px;
}
.btn-subscription a,
.btn-backnumber a,
.btn-publishing a,
.btn-agreement a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	background-color: #0c0628;
	box-sizing: border-box;
	font-size: 20px;
	font-weight: 600;
	line-height: 1;
	color: #fff;
}
.btn-backnumber a,
.btn-publishing a {
	background-color: #858293;
}
.btn-subscription a:hover,
.btn-backnumber a:hover,
.btn-publishing a:hover,
.btn-agreement a:hover {
	background-color: #fd8112;
	text-decoration: none;
	opacity: 1;
}
.btn-subscription a:before,
.btn-backnumber a:before,
.btn-publishing a:before,
.btn-agreement a:before {
	content: '';
	position: absolute;
	right: 38px;
	top: 50%;
	transform: translate(0,-50%);
	display: block;
	width: 24px;
	height: 24px;
	background: url("../img/common/icon_arrow_right_white.svg") no-repeat center center;
	background-size: contain;
}
.btn-subscription a:hover:before,
.btn-backnumber a:hover:before,
.btn-publishing a:hover:before,
.btn-agreement a:hover:before {
	background-image: url("../img/common/icon_arrow_right_white_on.svg");
}
@media screen and (max-width: 768px) {
	.btn-subscription,
	.btn-backnumber,
	.btn-publishing,
	.btn-agreement {
		width: 86.6667vw;
		height: 20vw;
	}
	.btn-subscription a,
	.btn-backnumber a,
	.btn-publishing a,
	.btn-agreement a {
		font-size: 4vw;
	}
	.btn-subscription a:before,
	.btn-backnumber a:before,
	.btn-publishing a:before,
	.btn-agreement a:before {
		right: 7.2vw;
		width: 4.6667vw;
		height: 4.6667vw;
	}
}

/* --------------------------------------------------
	.other-contents
-------------------------------------------------- */
.other-contents {
	margin-top: 50px;
	margin-bottom: 160px;
}
.other-contents .inner {
	max-width: 1080px;
}
.other-contents .mt0 {
	margin-top: 0;
}
.other-contents .mb0 {
	margin-bottom: 0;
}
.other-contents .align-right {
	text-align: right;
}
.other-contents h2 {
	margin-bottom: 1em;
	padding: 10px 18px;
	background-color: #f7f7f7;
	border-radius: 4px;
	font-size: 20px;
	font-weight: 600;
	line-height: 1;
}
.other-contents * + h2 {
	margin-top: 60px;
}
.other-contents h3 {
	margin-top: 1.5em;
	margin-bottom: 1.5em;
	font-size: 18px;
	font-weight: 600;
}
.other-contents p,
.other-contents li,
.other-contents dt,
.other-contents dd {
	font-size: 16px;
	line-height: 2.1;
}
.other-contents p + p {
	margin-top: 1.5em;
}
.other-contents p strong {
	font-size: 18px;
	font-weight: 600;
}
.other-contents ol li {
	padding-left: 1em;
	text-indent: -1em;
}
.other-contents ol li span {
	display: inline-block;
	padding-left: 0;
	text-indent: 0;
	width: 1em;
}
.other-contents * + dl {
	margin-top: 2em;
}
.other-contents dt,
.other-contents dd {
	font-size: 18px;
	font-weight: 600;
	line-height: 1.8;
}
.other-contents-flex {
	display: flex;
	gap: 160px;
}
.other-contents-flex p,
.other-contents-flex li {
	font-size: 15px;
	line-height: 1.86;
}
.other-contents-flex * + p {
	margin-top: 1.8em;
}
.other-contents a[target="_blank"] {
	position: relative;
	padding-right: 28px;
}
.other-contents a[target="_blank"]:after {
	content: '';
	position: absolute;
	right: 0;
	top: 50%;
	transform: translate(0,-50%);
	display: block;
	width: 19px;
	height: 16px;
	background-image: url("../img/common/icon_external.svg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
@media screen and (max-width: 1140px) {
	.other-contents .inner {
		margin-left: 30px;
		margin-right: 30px;
	}
}
@media screen and (max-width: 768px) {
	.other-contents {
		margin-top: 6vw;
		margin-bottom: 42.6667vw;
		width: 100%;
	}
	.other-contents .inner {
		margin: 0 auto;
		max-width: 89.3334vw;
	}
	.other-contents h2 {
		padding: 2.9334vw 3.7334vw;
		border-radius: 1.0667vw;
		font-size: 4.2667vw;
	}
	.other-contents * + h2 {
		margin-top: 13.3334vw;
	}
	.other-contents h3 {
		font-size: 3.8667vw;
	}
	.other-contents p,
	.other-contents li,
	.other-contents dt,
	.other-contents dd {
		font-size: 3.4667vw;
		line-height: 1.76;
	}
	.other-contents p strong {
		font-size: 3.8667vw;
	}
	.other-contents dt,
	.other-contents dd {
		font-size: 3.8667vw;
	}
	.other-contents-flex {
		justify-content: space-between;
		gap: 0;
	}
	.other-contents-flex p,
	.other-contents-flex li {
		font-size: 3.4667vw;
		line-height: 2;
	}
	.other-contents a[target="_blank"] {
		padding-right: 5.6001vw;
	}
	.other-contents a[target="_blank"]:after {
		width: 4vw;
		height: 3.3334vw;
	}
}

/* --------------------------------------------------
	.page-top
-------------------------------------------------- */

/* --------------------------------------------------
	.page-top .top-heading
-------------------------------------------------- */
.page-top .top-heading {
	margin-bottom: 45px;
}
.page-top .top-heading .en,
.page-top .top-heading .ja {
	display: block;
}
.page-top .top-heading .en {
	font-size: 80px;
	font-weight: 800;
	font-family: "Inter", sans-serif;
	line-height: 1;
	color: #0c0628;
}
.page-top .top-heading .ja {
	position: relative;
	margin-top: 1.1em;
	padding-left: 16px;
	font-size: 18px;
	font-weight: 800;
	line-height: 1;
	color: #0c0628;
}
.page-top .top-heading .ja:before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: 55%;
	display: inline-block;
	width: 9px;
	height: 2px;
	background-color: #FD8112;
}
.page-top .top-heading-s .en {
	font-size: 55px;
}
@media screen and (max-width: 768px) {
	.page-top .top-heading {
		margin-bottom: 10vw;
	}
	.page-top .top-heading .en {
		font-size: 11.3334vw;
	}
	.page-top .top-heading .ja {
		margin-top: 0.8em;
		padding-left: 4.8vw;
		font-size: 3.7334vw;
	}
	.page-top .top-heading .ja:before {
		width: 2.5334vw;
		height: 0.5334vw;
		border-radius: 0.2667vw;
	}
	.page-top .top-heading-s .en {
		font-size: 11.3334vw;
	}
}

/* --------------------------------------------------
	.page-top .kv
-------------------------------------------------- */
.page-top .kv {
	position: relative;
	margin: 0 auto;
	max-width: 1400px;
}
.page-top:not(.otherlang-top-kv) .kv {
	margin-bottom: -50px;
}
.page-top .kv .kv-swiper {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}
.page-top .kv .kv-swiper .swiper-slide {
	position: relative;
}
.page-top .kv .kv-swiper .swiper-pagination {
	right: 15px;
	bottom: 65px;
	text-align: right;
}
.page-top .kv .kv-swiper .swiper-pagination .swiper-pagination-bullet {
	width: 40px;
	height: 1px;
	background-color: rgba(255,255,255,0.3);
	border-radius: 0;
}
.page-top .kv .kv-swiper .swiper-pagination .swiper-pagination-bullet-active {
	background-color: #fd8112;
}
.page-top .kv .kv-pic {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	opacity: 0;
}
.page-top .kv .kv-pic-1 {
	width: 41.4286%;
	transform: translate(0,10%);
}
.page-top .kv .kv-pic-2 {
	left: 41.4286%;
	width: 17.1429%;
	transform: translate(0,-10%);
	z-index: 1;
}
.page-top .kv .kv-pic-3 {
	left: 58.5715%;
	width: 41.4286%;
	transform: translate(0,10%);
}
.page-top .kv .kv-1 .kv-pic-1 {
	background-image: url("../img/top/top_kv1_pc_1.png");
}
.page-top .kv .kv-1 .kv-pic-2,
.page-top .kv .kv-2 .kv-pic-2,
.page-top .kv .kv-3 .kv-pic-2,
.page-top .kv .kv-4 .kv-pic-2,
.page-top .kv .kv-5 .kv-pic-2 {
	background-image: url("../img/top/top_kv1_pc_2.png");
	background-color: rgba(0,0,0,0.4);
	background-blend-mode: darken;
}
.page-top .kv .kv-1 .kv-pic-3 {
	background-image: url("../img/top/top_kv1_pc_3.png");
}
.page-top .kv .kv-2 .kv-pic-1 {
	background-image: url("../img/top/top_kv2_pc_1.png");
}
.page-top .kv .kv-2 .kv-pic-3 {
	background-image: url("../img/top/top_kv2_pc_3.png");
}
.page-top .kv .kv-3 .kv-pic-1 {
	background-image: url("../img/top/top_kv3_pc_1.png");
}
.page-top .kv .kv-3 .kv-pic-3 {
	background-image: url("../img/top/top_kv3_pc_3.png");
}
.page-top .kv .kv-4 .kv-pic-1 {
	background-image: url("../img/top/top_kv4_pc_1.png");
}
.page-top .kv .kv-4 .kv-pic-3 {
	background-image: url("../img/top/top_kv4_pc_3.png");
}
.page-top .kv .kv-5 .kv-pic-1 {
	background-image: url("../img/top/top_kv5_pc_1.png");
}
.page-top .kv .kv-5 .kv-pic-3 {
	background-image: url("../img/top/top_kv5_pc_3.png");
}
.page-top .kv.delighter .kv-pic-1 {
	transition: opacity 2s cubic-bezier(.21,1.05,.8,.98) 0s, transform 2s cubic-bezier(.21,1.05,.8,.98) 0s;
}
.page-top .kv.delighter .kv-pic-2 {
	transition: opacity 2s cubic-bezier(.21,1.05,.8,.98) 0s, transform 2s cubic-bezier(.21,1.05,.8,.98) 0s;
}
.page-top .kv.delighter .kv-pic-3 {
	transition: opacity 2s cubic-bezier(.21,1.05,.8,.98) 0s, transform 2s cubic-bezier(.21,1.05,.8,.98) 0s;
}
.page-top .kv.delighter.started .kv-pic-1,
.page-top .kv.delighter.started .kv-pic-2,
.page-top .kv.delighter.started .kv-pic-3 {
	opacity: 1;
	transform: translate(0,0);
}
.page-top .kv.delighter .kv-pic-1,
.page-top .kv.delighter .kv-pic-3 {
	animation: amin-fadeZoom 5s ease forwards 1s;
	animation-play-state: paused;
}
.page-top .kv.delighter .swiper-slide-active .kv-pic-1,
.page-top .kv.delighter .swiper-slide-active .kv-pic-3 {
	animation-play-state: running;
}
.page-top .kv.delighter .swiper-slide-active:first-child .kv-pic-1,
.page-top .kv.delighter .swiper-slide-active:first-child .kv-pic-3 {
	animation-play-state: paused;
}
@keyframes amin-fadeZoom {
	0%		{transform: scale(1);}
	100%	{transform: scale(1.1);}
}
.page-top .kv .inner {
	height: calc(100vh - 100px);
	max-height: 700px;
	box-sizing: border-box;
}
.page-top .kv h1 {
	display: none;
}
.page-top .kv .lead {
	position: absolute;
	left: 100px;
	bottom: min(184px, 26.2858vh);
	z-index: 2;
	font-size: 50px;
	font-weight: 600;
	letter-spacing: 0.16em;
	line-height: 1;
}
.page-top .kv .lead span {
	color: transparent;
	animation: 10s ease-out 0s 1 normal forwards blur;
	-webkit-animation: 10s ease-out 0s 1 normal forwards blur;
}
.page-top .kv .lead span:nth-child(1) {
	animation-delay: 0.1s;
	-webkit-animation-delay: 0.1s;
}
.page-top .kv .lead span:nth-child(2) {
	animation-delay: 0.2s;
	-webkit-animation-delay: 0.2s;
}
.page-top .kv .lead span:nth-child(4) {
	animation-delay: 0.3s;
	-webkit-animation-delay: 0.3s;
}
.page-top .kv .lead span:nth-child(5) {
	animation-delay: 0.4s;
	-webkit-animation-delay: 0.4s;
}
@keyframes blur {
	0%		{text-shadow:  0 0 100px #fff; opacity:0;}
	5%		{text-shadow:  0 0 90px #fff;}
	15%		{opacity: 1;}
	20%		{text-shadow:  0 0 0px #fff; color: transparent; }
	20.1%	{text-shadow:  0 0 0px #fff; color: #fff;}
	30%		{text-shadow:  0 0 10px rgba(0,0,0,0.9);}
	100%	{text-shadow:  0 0 10px rgba(0,0,0,0.9); color: #fff;}
}
@-webkit-keyframes blur {
	0%		{text-shadow:  0 0 100px #fff; opacity:0;}
	5%		{text-shadow:  0 0 90px #fff;}
	15%		{opacity: 1;}
	20%		{text-shadow:  0 0 0px #fff; color: transparent; }
	20.1%	{text-shadow:  0 0 0px #fff; color: #fff;}
	30%		{text-shadow:  0 0 10px rgba(0,0,0,0.9);}
	100%	{text-shadow:  0 0 10px rgba(0,0,0,0.9); color: #fff;}
}
@media screen and (min-width: 769px) {
	.page-top .kv .swiper-slide-active:first-child .kv-pic-1,
	.page-top .kv .swiper-slide-prev:first-child .kv-pic-1,
	.page-top .kv .swiper-slide-active:first-child .kv-pic-3,
	.page-top .kv .swiper-slide-prev:first-child .kv-pic-3 {
		top: -100px;
		height: calc(100% + 100px);
	}
	.page-top:not(.otherlang-top-kv) .kv.swiper-slide-active:first-child .kv-pic-3,
	.page-top:not(.otherlang-top-kv) .kv.swiper-slide-prev:first-child .kv-pic-3 {
		height: calc(100% + 50px);
	}
	.page-top .kv .kv-pic-2 {
		top: 0;
	}
	.page-top.otherlang-top-kv .kv .swiper-slide-active .kv-pic-2,
	.page-top.otherlang-top-kv .kv .swiper-slide-prev .kv-pic-2 {
		height: calc(100% + 100px);
	}
	.page-top:not(.otherlang-top-kv) .kv .kv-pic-3 {
		height: calc(100% - 50px);
	}
}
@media screen and (max-width: 768px) {
	.page-top:not(.otherlang-top-kv) .kv {
		margin-bottom: -10vw;
	}
	.page-top .kv .kv-swiper .swiper-pagination {
		right: 1.6vw;
		bottom: 12.2667vw;
	}
	.page-top .kv .kv-swiper .swiper-pagination .swiper-pagination-bullet {
		width: 10.6667vw;
		height: 0.5334vw;
	}
	.page-top .kv .swiper-slide-active:first-child .kv-pic-1,
	.page-top .kv .swiper-slide-prev:first-child .kv-pic-1,
	.page-top .kv .swiper-slide-active:first-child .kv-pic-3,
	.page-top .kv .swiper-slide-prev:first-child .kv-pic-3 {
		top: -16vw;
		height: calc(100% + 16vw);
	}
	.page-top:not(.otherlang-top-kv) .kv .swiper-slide-active:first-child .kv-pic-3,
	.page-top:not(.otherlang-top-kv) .kv .swiper-slide-prev:first-child .kv-pic-3 {
		top: -16vw;
		height: calc(100% + 16vw - 10vw);
	}
	.page-top .kv .kv-pic-2 {
		display: none;
	}
	.page-top .kv .kv-pic-1,
	.page-top .kv .kv-pic-3 {
		width: 50%;
	}
	.page-top .kv .kv-pic-3 {
		left: 50%;
		transform-origin: left;
	}
	.page-top:not(.otherlang-top-kv) .kv .kv-pic-3 {
		height: calc(100% - 10vw);
	}
	.page-top .kv .kv-1 .kv-pic-1 {
		background-image: url("../img/top/top_kv1_sp_1.png");
	}
	.page-top .kv .kv-1 .kv-pic-3 {
		background-image: url("../img/top/top_kv1_sp_3.png");
	}
	.page-top .kv .kv-2 .kv-pic-1 {
		background-image: url("../img/top/top_kv2_sp_1.png");
	}
	.page-top .kv .kv-2 .kv-pic-3 {
		background-image: url("../img/top/top_kv2_sp_3.png");
	}
	.page-top .kv .kv-3 .kv-pic-1 {
		background-image: url("../img/top/top_kv3_sp_1.png");
	}
	.page-top .kv .kv-3 .kv-pic-3 {
		background-image: url("../img/top/top_kv3_sp_3.png");
	}
	.page-top .kv .kv-4 .kv-pic-1 {
		background-image: url("../img/top/top_kv4_sp_1.png");
	}
	.page-top .kv .kv-4 .kv-pic-3 {
		background-image: url("../img/top/top_kv4_sp_3.png");
	}
	.page-top .kv .kv-5 .kv-pic-1 {
		background-image: url("../img/top/top_kv5_sp_1.png");
	}
	.page-top .kv .kv-5 .kv-pic-3 {
		background-image: url("../img/top/top_kv5_sp_3.png");
	}
	.page-top .kv .inner {
		height: calc(142.6667vw - 16vw);
	}
	.page-top .kv .lead {
		bottom: 20.5vw;
		left: 8.5334vw;
		font-size: 7.7334vw;
		line-height: 1.5;
	}
}

/* --------------------------------------------------
	.swiper
-------------------------------------------------- */
.swiper-horizontal > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-horizontal {
	left: 0;
	bottom: 0;
	width: 100%;
}
.swiper-scrollbar {
	background-color: transparent;
}
.swiper-scrollbar:before {
	content: '';
	position: absolute;
	top: 50%;
	transform: translate(0,-51%);
	display: block;
	width: 100%;
	border-top: #fff 1px solid;
}
.swiper-scrollbar.swiper-scrollbar-horizontal .swiper-scrollbar-drag {
	height: 2px;
	background-color: #fd8112;
}
.bg-black .swiper-scrollbar.swiper-scrollbar-horizontal .swiper-scrollbar-drag {
	background-color: #ffffff;
}


/* --------------------------------------------------
	.page-top .top-topics
-------------------------------------------------- */
.page-top .top-topics {
	position: relative;
	z-index: 2;
	margin-bottom: 80px;
}
.page-top .top-topics h2 {
	position: absolute;
	left: calc( ( 100vw - 950px ) / 2 - 35px );
	top: 220px;
	transform-origin: 0 0;
	transform: rotate(-90deg);
	font-size: 18px;
	font-weight: 700;
	font-family: "Inter", sans-serif;
	letter-spacing: 0.2em;
	line-height: 1;
}
.page-top .top-topics .topics-swiper-container {
	position: relative;
	padding-left: calc( ( 100vw - 950px ) / 2 - 10px );
}
.page-top .top-topics .topics-swiper-container-base {
	position: relative;
	padding: 16px 0 46px 20px;
	background-color: #f1f1f6;
	overflow: hidden;
}
.page-top .top-topics .swiper-horizontal > .swiper-scrollbar,
.page-top .top-topics .swiper-scrollbar.swiper-scrollbar-horizontal {
	left: 20px;
	bottom: 25px;
	width: calc( 100% - 40px );
}
.page-top .top-topics .topics-swiper-container .swiper-navigation .swiper-button-disabled {
	opacity: 0;
}
.page-top .top-topics .topics-swiper-container .swiper-navigation {
	position: absolute;
	top: 16px;
	left: 0;
	width: 100%;
	height: 130px;
}
.page-top .top-topics .topics-swiper-container .swiper-navigation .swiper-button-prev,
.page-top .top-topics .topics-swiper-container .swiper-navigation .swiper-button-next {
	position: absolute;
	top: 50%;
	transform: translate(0,-50%);
	width: 30px;
	height: 50px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
}
.page-top .top-topics .topics-swiper-container .swiper-navigation .swiper-button-prev {
	left: 2px;
	background-image: url("../img/top/top_topics_btn_prev.svg");
}
.page-top .top-topics .topics-swiper-container .swiper-navigation .swiper-button-next {
	right: 2px;
	background-image: url("../img/top/top_topics_btn_next.svg");
}
.page-top .top-topics .topics-swiper-container .swiper-navigation .swiper-button-prev:after,
.page-top .top-topics .topics-swiper-container .swiper-navigation .swiper-button-next:after {
	display: none;
}
.page-top .top-topics .swiper-slide {
	width: 220px;
}
.page-top .top-topics .swiper-slide.blank {
	background-color: #fff;
}
.page-top .top-topics .swiper-slide a {
	position: relative;
	display: block;
}
.page-top .top-topics .swiper-slide a:hover {
	opacity: 1;
	text-decoration: none;
}
.page-top .top-topics .swiper-slide a div {
	position: relative;
	height: 130px;
	overflow: hidden;
}
.page-top .top-topics .swiper-slide a div:after {
	content: '';
	display: block;
	position: absolute;
	right: 10px;
	bottom: 10px;
	z-index: 2;
	width: 18px;
	height: 18px;
	background: url("../img/common/icon_arrow_right_white.svg") no-repeat;
	background-size: contain;
}
.page-top .top-topics .swiper-slide a div:before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	pointer-events: none;
	border: rgba(253,129,18,0.6) 0 solid;
	transition: .1s linear;
}
.page-top .top-topics .swiper-slide a div:hover:before {
	border-width: 4px;
}
.page-top .top-topics .swiper-slide h3 {
	margin-top: 7px;
	font-size: 13px;
	font-weight: 600;
}
@media screen and (max-width: 1030px) {
	.page-top .top-topics h2 {
		left: 5px;
	}
	.page-top .top-topics .topics-swiper-container {
		margin-left: 	30px;
		padding-left: 0;
	}
}
@media screen and (max-width: 768px) {
	.page-top .top-topics {
		margin-bottom: 20vw;
	}
	.page-top .top-topics h2 {
		left: 4.6667vw;
		top: 47.2vw;
		font-size: 3.4667vw;
	}
	.page-top .top-topics .topics-swiper-container {
		margin-left: 	9.7334vw;
		padding-left: 0;
	}
	.page-top .top-topics .topics-swiper-container-base {
		padding: 3.7334vw 0 6.6667vw 5.0667vw;
	}
	.page-top .top-topics .swiper-horizontal > .swiper-scrollbar,
	.page-top .top-topics .swiper-scrollbar.swiper-scrollbar-horizontal {
		left: 5.0667vw;
		bottom: 4vw;
		width: calc( 100% - 5.0667vw );
	}
	.page-top .top-topics .topics-swiper-container .swiper-navigation {
		top: 3.7334vw;
		height: 30.6667vw;
	}
	.page-top .top-topics .topics-swiper-container .swiper-navigation .swiper-button-prev,
	.page-top .top-topics .topics-swiper-container .swiper-navigation .swiper-button-next {
		width: 4.9334vw;
		height: 8.8vw;
	}
	.page-top .top-topics .topics-swiper-container .swiper-navigation .swiper-button-prev {
		left: 1.3334vw;
	}
	.page-top .top-topics .topics-swiper-container .swiper-navigation .swiper-button-next {
		right: 1.3334vw;
	}
	.page-top .top-topics .swiper-slide {
		width: 52vw;
	}
	.page-top .top-topics .swiper-slide a div {
		position: relative;
		height: 30.666667vw;
	}
	.page-top .top-topics .swiper-slide a div:before {
		display: none;
	}
	.page-top .top-topics .swiper-slide a div:after {
		right: 2.1334vw;
		bottom: 2.1334vw;
		width: 4.2667vw;
		height: 4.2667vw;
	}
	.page-top .top-topics .swiper-slide h3 {
		margin-top: 1.3334vw;
		font-size: 3.2vw;
	}
}

/* --------------------------------------------------
	.page-top .top-introduction
-------------------------------------------------- */
.page-top .top-introduction .inner {
	max-width: 1080px;
}
.page-top .top-introduction-strongpoints {
	padding-bottom: 225px;
}
.page-top .top-introduction-heading {
	position: relative;
	display: flex;
	align-items: center;
	margin-bottom: 25px;
	padding-left: 50px;
	height: 350px;
}
.page-top .top-introduction-heading:before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 1240px;
	height: 100%;
	background-position: left center;
	background-repeat: no-repeat;
	background-size: 100% auto;
}
.page-top .top-introduction-history,
.page-top .top-introduction-products {
	margin-bottom: 80px;
}
.page-top .top-introduction-history .top-introduction-heading:before {
	background-image: url("../img/top/top_history_pc.png");
}
.page-top .top-introduction-products .top-introduction-heading:before {
	background-image: url("../img/top/top_products_pc.png");
}
.page-top .top-introduction-strongpoints .top-introduction-heading:before {
	background-image: url("../img/top/top_strongpoints_pc.png");
}
.page-top .top-introduction-heading h2 {
	position: relative;
	z-index: 2;
}
.page-top .top-introduction-heading h2 .en,
.page-top .top-introduction-heading h2 .ja {
	display: block;
}
.page-top .top-introduction-heading h2 .en {
	font-size: 70px;
	font-weight: 800;
	font-family: "Inter", sans-serif;
	line-height: 1.05;
	color: rgba(255,255,255,0.8);
}
.page-top .top-introduction-heading h2 .ja {
	margin-top: 0.5em;
	font-size: 20px;
	line-height: 1;
	color: #fff;
}
.page-top .top-introduction-flex {
	display: flex;
	width: 100%;
}
.page-top .top-introduction .lead {
	flex-shrink: 0;
	padding-right: 20px;
	width: 48.6112%;
	box-sizing: border-box;
	font-size: 21px;
	font-weight: 700;
	line-height: 1.85;
}
.page-top .top-introduction .text {
	width: 50.926%;
	font-size: 15px;
	line-height: 2.1;
}
.page-top .top-introduction-strongpoints .lead,
.page-top .top-introduction-strongpoints .text {
	margin-left: 64.3519%;
	width: 35.1852%;
}
.page-top .top-introduction-strongpoints .lead + .text,
.page-top .top-introduction-strongpoints .text {
	margin-top: 15px;
}
.page-top .top-introduction-strongpoints .graph {
	position: absolute;
	left: 0;
	top: 370px;
	width: 63.5186%;
}
@media screen and (max-width: 1140px) {
	.page-top .top-introduction .inner {
		margin: 0 30px;
	}
}
@media screen and (max-width: 950px) {
	.page-top .top-introduction-strongpoints .graph {
		position: relative;
		left: 0;
		top: 0;
		margin: 0 auto;
	}
}
@media screen and (max-width: 768px) {
	.page-top .top-introduction .inner {
		margin: 0 auto;
		max-width: 93.3334vw;
	}
	.page-top .top-introduction-strongpoints {
		padding-bottom: 18.6667vw;
	}
	.page-top .top-introduction-heading {
		align-items: end;
		margin-bottom: 10vw;
		padding-left: 4.8vw;
		padding-bottom: 8.5334vw;
		height: 89.0667vw;
		box-sizing: border-box;
	}
	.page-top .top-introduction-heading:before {
		width: 100%;
	}
	.page-top .top-introduction-history,
	.page-top .top-introduction-products {
		margin-bottom: 19.3334vw;
	}
	.page-top .top-introduction-history .top-introduction-heading:before {
		background-image: url("../img/top/top_history_sp.png");
	}
	.page-top .top-introduction-products .top-introduction-heading:before {
		background-image: url("../img/top/top_products_sp.png");
	}
	.page-top .top-introduction-strongpoints .top-introduction-heading:before {
		background-image: url("../img/top/top_strongpoints_sp.png");
	}
	.page-top .top-introduction-heading h2 .en {
		font-size: 13.2vw;
	}
	.page-top .top-introduction-heading h2 .ja {
		font-size: 3.2vw;
	}
	.page-top .top-introduction-flex {
		display: block;
	}
	.page-top .top-introduction .lead {
		margin-bottom: 7.4667vw;
		width: 100%;
		font-size: 5.0667vw;
	}
	.page-top .top-introduction .text {
		width: 100%;
		font-size: 4vw;
	}
	.page-top .top-introduction .text span {
		display: block;
	}
	.page-top .top-introduction .text span + span {
		margin-top: 2em;
	}
	.page-top .top-introduction-strongpoints .lead,
	.page-top .top-introduction-strongpoints .text {
		margin-left: 0;
		width: 100%;
	}
	.page-top .top-introduction-strongpoints .graph {
		position: relative;
		left: 1.6vw;
		top: 0;
		width: 91.6001vw;
	}
}

/* --------------------------------------------------
	.page-top .btn-more,btn-all
-------------------------------------------------- */
.page-top .btn-all {
	background: url("../img/common/btn_all_circle_on.svg") no-repeat;
	background-size: contain;
}
.page-top .btn-more {
	background: url("../img/common/btn_more_circle_on.svg") no-repeat;
	background-size: contain;
}
.page-top .btn-all a:hover,
.page-top .btn-more a:hover {
	opacity: 1;
}
.page-top .btn-all a:hover img,
.page-top .btn-more a:hover img {
	opacity: 0;
}

/* --------------------------------------------------
	.page-top .top-news
-------------------------------------------------- */
.page-top .top-news {
	margin-bottom: 120px;
	padding-top: 100px;
	padding-bottom: 70px;
	background-color: #f4f4f4;
}
.page-top .top-news h2 {
	position: absolute;
	left: 0;
	top: 120px;
	margin-bottom: 0;
}
.page-top .top-news .btn-all {
	position: absolute;
	left: 0;
	top: 275px;
	z-index: 2;
	width: 80px;
}
.page-top .top-news .news-swiper-container {
	position: relative;
	padding-left: calc( ( 100vw - 480px ) / 2 - 10px );
}
.page-top .top-news .news-swiper-container-base {
	position: relative;
	padding-bottom: 40px;
	overflow: hidden;
}
.page-top .top-news .news-swiper-container .swiper-navigation .swiper-button-disabled {
	opacity: 0;
}
.page-top .top-news .news-swiper-container .swiper-navigation {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 320px;
}
.page-top .top-news .news-swiper-container .swiper-navigation .swiper-button-prev,
.page-top .top-news .news-swiper-container .swiper-navigation .swiper-button-next {
	position: absolute;
	top: 50%;
	transform: translate(0,-50%);
	width: 30px;
	height: 50px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
}
.page-top .top-news .news-swiper-container .swiper-navigation .swiper-button-prev {
	left: 2px;
	background-image: url("../img/top/top_topics_btn_prev.svg");
}
.page-top .top-news .news-swiper-container .swiper-navigation .swiper-button-next {
	right: 2px;
	background-image: url("../img/top/top_topics_btn_next.svg");
}
.page-top .top-news .news-swiper-container .swiper-navigation .swiper-button-prev:after,
.page-top .top-news .news-swiper-container .swiper-navigation .swiper-button-next:after {
	display: none;
}
.page-top .top-news .swiper-slide {
	width: 250px;
}
.page-top .top-news .swiper-slide a {
	display: block;
}
.page-top .top-news .swiper-slide a:hover {
	text-decoration: none;
	opacity: 1;
}
.page-top .top-news .swiper-slide a div {
	position: relative;
}
.page-top .top-news .swiper-slide a div:before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	pointer-events: none;
	border: rgba(253,129,18,0.6) 0 solid;
	transition: .1s linear;
}
.page-top .top-news .swiper-slide a:hover div:before {
	border-width: 4px;
}
.page-top .top-news .swiper-slide a[href$=".pdf"] div:after {
	content: '';
	position: absolute;
	right: 16px;
	bottom: 12px;
	display: block;
	width: 27px;
	height: 33px;
	background-image: url("../img/common/icon_pdf.png");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.page-top .top-news .swiper-slide .date,
.page-top .top-news .swiper-slide .category,
.page-top .top-news .swiper-slide .subject {
	display: block;
}
.page-top .top-news .swiper-slide .date {
	margin-top: 20px;
	font-size: 12px;
	font-weight: 700;
	font-family: "Inter", sans-serif;
	line-height: 1;
	color: #0c0628;
}
.page-top .top-news .swiper-slide .category {
	margin-top: 8px;
	line-height: 1;
}
.page-top .top-news .swiper-slide .category span {
	display: inline-block;
	padding: 0.5em 2em;
	border-radius: 10px;
	font-size: 10px;
	font-weight: 800;
	line-height: 1;
	text-align: center;
}
.page-top .top-news .swiper-slide .news-category-information span {
	background-color: #fff;
}
.page-top .top-news .swiper-slide .news-category-important span {
	background-color: #fd8112;
	color: #fff;
}
.page-top .top-news .swiper-slide .news-category-media span {
	background-color: #cccccc;
}
.page-top .top-news .swiper-slide .subject {
	margin-top: 1em;
	font-size: 12px;
	line-height: 1.75;
	transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1);
	overflow: hidden;
	display: -webkit-box;
	text-overflow: ellipsis;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}
.page-top .top-news .swiper-slide a:hover .subject {
	color: #fd8112;
}
@media screen and (max-width: 1220px) {
	.page-top .top-news .inner {
		margin: 0 30px;
	}
}
@media screen and (max-width: 970px) {
	.page-top .top-news .news-swiper-container {
		padding-left: 235px;
	}
}
@media screen and (max-width: 768px) {
	.page-top .top-news {
		margin-bottom: 0;
		padding-top: 12.8vw;
		padding-bottom: 12.5334vw;
	}
	.page-top .top-news .inner {
		margin: 0 auto;
	}
	.page-top .top-news h2 {
		position: relative;
		left: 0;
		top: 0;
		margin: 0 0 8.5334vw 5.0667vw;
	}
	.page-top .top-news .btn-all {
		left: 76.6667vw;
		top: -2vw;
		width: 20.6667vw;
	}
	.page-top .top-news .news-swiper-container {
		padding-left: 4.6667vw;
	}
	.page-top .top-news .news-swiper-container-base {
		padding-bottom: 10.1334vw;
	}
	.page-top .top-news .news-swiper-container .swiper-navigation {
		height: 68.266667vw;
	}
	.page-top .top-news .news-swiper-container .swiper-navigation .swiper-button-prev,
	.page-top .top-news .news-swiper-container .swiper-navigation .swiper-button-next {
		width: 4.9334vw;
		height: 8.8vw;
	}
	.page-top .top-news .news-swiper-container .swiper-navigation .swiper-button-prev {
		left: 1.3334vw;
	}
	.page-top .top-news .news-swiper-container .swiper-navigation .swiper-button-next {
		right: 1.3334vw;
	}
	.page-top .top-news .swiper-slide {
		width: 53.3334vw;
	}
	.page-top .top-news .swiper-slide a div:before {
		display: none;
	}
	.page-top .top-news .swiper-slide a[href$=".pdf"] div:after {
		right: 3.4667vw;
		bottom: 3.0667vw;
		width: 6vw;
		height: 7.2vw;
	}
	.page-top .top-news .swiper-slide .date {
		margin-top: 4.2667vw;
		font-size: 2.6667vw;
	}
	.page-top .top-news .swiper-slide .category {
		margin-top: 2.1334vw;
	}
	.page-top .top-news .swiper-slide .category span {
		border-radius: 2.1334vw;
		font-size: 2.4vw;
	}
	.page-top .top-news .swiper-slide .subject {
		font-size: 3.4667vw;
	}
}


/* --------------------------------------------------
	.page-top .top-workflow
-------------------------------------------------- */
.page-top .top-workflow {
	margin-bottom: 120px;
}
.page-top .top-workflow .inner {
	display: flex;
	align-items: center;
	max-width: 1050px;
	height: 400px;
}
.page-top .top-workflow .inner:before {
	content: '';
	display: block;
	position: absolute;
	left: 220px;
	top: 0;
	width: 1000px;
	height: 100%;
	background-image: url("../img/top/top_workflow.png");
	background-position: left center;
	background-repeat: no-repeat;
	background-size: 100% auto;
}
.page-top .top-workflow-base {
	position: relative;
	padding: 70px 0 80px;
	width: 590px;
	background-color: #FFF;
}
.page-top .top-workflow-base .btn-more {
	margin: -72px 0 0 392px;
	width: 80px;
	background: url("../img/common/btn_more_circle_on.svg") no-repeat;
	background-size: contain;
}
.page-top .top-workflow-base .btn-more a:hover {
	opacity: 1;
}
.page-top .top-workflow-base .btn-more a:hover img {
	opacity: 0;
}
.page-top .top-workflow-base h2 {
	font-size: 35px;
	font-weight: 900;
	line-height: 1;
	color: #0c0628;
}
.page-top .top-workflow-base p {
	margin-top: 40px;
	font-size: 18px;
	font-weight: 600;
	line-height: 1.85;
	color: #0c0628;
}
@media screen and (max-width: 1140px) {
	.page-top .top-workflow .inner {
		margin: 0 30px;
	}
}
@media screen and (max-width: 768px) {
	.page-top .top-workflow {
		margin-bottom: 18.6667vw;
	}
	.page-top .top-workflow .inner {
		align-items: end;
		margin: 0 auto;
		padding-top: 51.3334vw;
		max-width: 100vw;
		height: 106.6667vw;
		box-sizing: border-box;
	}
	.page-top .top-workflow .inner:before {
		left: 0;
		top: 0;
		width: 100vw;
		height: 66.6667vw;
		background-image: url("../img/top/top_workflow.png");
		background-position: right top;
		background-size: auto 109%;
	}
	.page-top .top-workflow-base {
		position: relative;
		margin: 0 auto;
		padding: 8.6667vw 0 6vw 6vw;
		width: 80vw;
		box-sizing: border-box;
	}
	.page-top .top-workflow-base .btn-more {
		position: absolute;
		right: -6vw;
		top: 27.4667vw;
		margin: 0;
		width: 20.6667vw;
	}
	.page-top .top-workflow-base h2 {
		font-size: 6.4vw;
		line-height: 1.4;
	}
	.page-top .top-workflow-base p {
		margin-top: 4.2667vw;
		font-size: 3.4667vw;
		line-height: 1.76;
	}
}

/* --------------------------------------------------
	.page-top .top-tab-nav
-------------------------------------------------- */
.page-top .top-tab-nav {
	display: flex;
	margin-bottom: 30px;
	height: 70px;
}
.page-top .top-tab-nav li {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	padding-bottom: 26px;
	width: 250px;
	box-sizing: border-box;
	border-left: #0C0628 1px solid;
	border-right: #0C0628 1px solid;
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
	text-align: center;
	opacity: 0.4;
	transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
	cursor: pointer;
}
.page-top .top-tab-nav li.is--active {
	cursor: default;
}
.page-top .top-tab-nav li:hover,
.page-top .top-tab-nav li.is--active {
	opacity: 1;
}
.page-top .top-tab-nav li:hover:not(.is--active) {
	color: #fd8112;
}
.page-top .top-tab-nav li:before {
	content: '';
	display: block;
	position: absolute;
	left: 50%;
	bottom: 8px;
	transform: translate(-50%,0);
	width: 18px;
	height: 18px;
	background: url("../img/common/icon_arrow_bottom_black.svg") no-repeat;
	background-size: contain;
}
.page-top .top-tab-nav li:hover:not(.is--active):before {
	background-image: url("../img/common/icon_arrow_bottom_black_on.svg");
}
.page-top .top-tab-nav li + li {
	margin-left: -1px;
}
.page-top .top-tab-contents > div {
	display: none;
}
@media screen and (max-width: 768px) {
	.page-top .top-tab-nav {
		margin-bottom: 6.6667vw;
		height: 14.6667vw;
	}
	.page-top .top-tab-nav li {
		padding-bottom: 5.0667vw;
		width: 46.6667vw;
		font-size: 3.4667vw;
		line-height: 1.2;
	}
	.page-top .top-tab-nav li:before {
		bottom: 1.0667vw;
		width: 4vw;
		height: 4vw;
	}
}

/* --------------------------------------------------
	.page-top .top-solution
-------------------------------------------------- */
.page-top .top-solution {
	margin-bottom: 60px;
}
.page-top .top-solution .inner {
	max-width: 1080px;
}
.page-top .top-solution .top-heading {
	margin-bottom: 26px;
}
.page-top .top-tab-contents-flex {
	display: flex;
	justify-content: space-between;
}
.page-top .top-tab-contents-flex .pic {
	width: 60.1852%;
}
.page-top .top-tab-contents-flex .text-area {
	position: relative;
	width: 35.1852%;
}
.page-top .top-tab-contents .lead {
	margin-top: -0.5em;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.58;
	color: #0c0628;
	letter-spacing: -0.02em;
}
.page-top .top-tab-contents .text {
	margin-top: 1em;
	font-size: 15px;
	line-height: 2.1;
	color: #0c0628;
}
.page-top .top-solution .btn-more {
	position: absolute;
	right: 0;
	bottom: 0;
	width: 80px;
}
.page-top .top-tab-logistics .graph {
	margin-top: 30px;
	width: 265px;
}
.page-top .top-tab-library .graph {
	margin-top: 30px;
	margin-bottom: 35px;
	width: 336px;
}
@media screen and (max-width: 1140px) {
	.page-top .top-solution .inner {
		margin: 0 30px;
	}
}
@media screen and (max-width: 768px) {
	.page-top .top-solution {
		margin-bottom: 26.6667vw;
	}
	.page-top .top-solution .inner {
		margin: 0 auto;
		max-width: 93.3334vw;
	}
	.page-top .top-tab-contents-flex {
		display: block;
	}
	.page-top .top-tab-contents-flex .pic {
		width: 100%;
	}
	.page-top .top-tab-contents-flex .text-area {
		width: 100%;
	}
	.page-top .top-tab-contents .lead {
		margin-top: 0.8em;
		font-size: 5.6001vw;
	}
	.page-top .top-tab-contents .text {
		margin-top: 1em;
		font-size: 4vw;
	}
	.page-top .top-solution .btn-more {
		right: 1.6vw;
		bottom: 15.4667vw;
		width: 20.6667vw;
	}
	.page-top .top-tab-library .btn-more {
		bottom: 0;
	}
	.page-top .top-tab-logistics .graph {
		margin-top: 5.8667vw;
		width: 66.6667vw;
	}
	.page-top .top-tab-library .graph {
		margin: 4.2667vw auto 0;
		width: 92vw;
	}
}

/* --------------------------------------------------
	.page-top .top-products
-------------------------------------------------- */
.page-top .top-products {
	margin-bottom: 130px;
}
.page-top .top-products .inner {
	max-width: 1080px;
}
.page-top .top-products .top-heading {
	margin-bottom: 26px;
}
.page-top .top-products .top-tab-contents ul {
	display: flex;
	flex-wrap: wrap;
	gap: 50px 2.4075%;
}
.page-top .top-products .top-tab-contents li {
	position: relative;
	width: 23.1482%;
}
.page-top .top-products .top-tab-contents li a:hover {
	opacity: 1;
	text-decoration: none;
}
.page-top .top-products .top-tab-contents li a div {
	position: relative;
}
.page-top .top-products .top-tab-contents li a div:before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	pointer-events: none;
	border: rgba(253,129,18,0.6) 0 solid;
	transition: .1s linear;
}
.page-top .top-products .top-tab-contents li a:hover div:before {
	border-width: 4px;
}
.page-top .top-products .top-tab-contents li h3 {
	position: relative;
	margin-top: 1em;
	padding-right: 20px;
	font-size: 13px;
	line-height: 1.2;
	color: #0c0628;
}
.page-top .top-products .top-tab-contents li h3:after {
	content: '';
	display: block;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translate(0,-50%);
	width: 18px;
	height: 18px;
	background: url("../img/common/icon_arrow_right_black.svg") no-repeat;
	background-size: contain;
}
.page-top .top-products .top-tab-contents li a:hover h3:after {
	background-image: url("../img/common/icon_arrow_right_black_on.svg");
}
.page-top .top-products .top-tab-contents .btn-all {
	margin: 0 auto;
	width: 80px;
}
.page-top .top-products .top-tab-contents li.btn {
	padding-top: 85px;
}
.page-top .top-products .top-tab-contents li:nth-child(4n+1).btn {
	padding-top: 0;
	margin-top: -14px;
	width: 100%;
}
.page-top .top-products .top-tab-contents li:nth-child(4n+1).btn .btn-all {
	margin-right: 0;
}
@media screen and (max-width: 1140px) {
	.page-top .top-products .inner {
		margin: 0 30px;
	}
}
@media screen and (max-width: 768px) {
	.page-top .top-products {
		margin-bottom: 28.0001vw;
	}
	.page-top .top-products .inner {
		margin: 0 auto;
		max-width: 93.3334vw;
	}
	.page-top .top-products .top-tab-contents ul {
		gap: 5.3334vw;
	}
	.page-top .top-products .top-tab-contents li {
		width: 44vw;
	}
	.page-top .top-products .top-tab-contents li a div:before {
		display: none;
	}
	.page-top .top-products .top-tab-contents li h3 {
		margin-top: 0.5em;
		padding-right: 4vw;
		font-size: 2.9334vw;
		line-height: 1.5;
	}
	.page-top .top-products .top-tab-contents li h3:after {
		top: 0.5vw;
		transform: none;
		width: 4vw;
		height: 4vw;
	}
	.page-top .top-products .top-tab-contents .btn-all {
		width: 20.6667vw;
	}
	.page-top .top-products .top-tab-contents li.btn {
		padding-top: 11.7334vw;
	}
	.page-top .top-products .top-tab-contents ul + .btn-all {
		margin-top: 5.3334vw;
		margin-right: 10.4vw;
	}
	.page-top .top-products .top-tab-contents li:nth-child(4n+1).btn {
		padding-top: 11.7334vw;
		margin-top: 0;
		width: 44vw;
	}
	.page-top .top-products .top-tab-contents li:nth-child(4n+1).btn .btn-all {
		margin-right: auto;
	}
	.page-top .top-products .top-tab-contents li:nth-child(odd).btn {
		padding-top: 0;
		margin-top: 0;
		width: 100%;
	}
	.page-top .top-products .top-tab-contents li:nth-child(odd).btn .btn-all {
		margin-right: 10.1334vw;
	}
}

/* --------------------------------------------------
	.page-top .top-aboutus
-------------------------------------------------- */
.page-top .top-aboutus {
	position: relative;
	padding-top: 90px;
	padding-bottom: 120px;
}
.page-top .top-aboutus:before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 400px;
	background-color: #f4f4f4;
}
.page-top .top-aboutus .inner {
	max-width: 1080px;
}
.page-top .top-aboutus h2 {
	margin-bottom: 70px;
}
.page-top .top-aboutus ul {
	display: flex;
	justify-content: space-between;
	gap: 45px;
}
.page-top .top-aboutus ul li {
	width: 330px;
	height: 280px;
}
.page-top .top-aboutus ul li a {
	position: relative;
	display: flex;
	align-items: end;
	padding-left: 20px;
	padding-bottom: 25px;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.page-top .top-aboutus ul li a:hover {
	text-decoration: none;
	opacity: 1;
}
.page-top .top-aboutus ul li a:before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	pointer-events: none;
	border: rgba(253,129,18,0.6) 0 solid;
	transition: .1s linear;
}
.page-top .top-aboutus ul li a:hover:before {
	border-width: 4px;
}
.page-top .top-aboutus ul li.bnr-companyinfo a {
	background-image: url("../img/top/top_aboutus_companyinfo_pc.png");
}
.page-top .top-aboutus ul li.bnr-recruit a {
	background-image: url("../img/top/top_aboutus_recruit_pc.png");
}
.page-top .top-aboutus ul li.bnr-100th a {
	background-image: url("../img/top/top_aboutus_100th_pc.png");
}
.page-top .top-aboutus ul li h3 {
	line-height: 1;
}
.page-top .top-aboutus ul li .en {
	display: block;
	font-size: 30px;
	font-weight: 800;
	font-family: "Inter", sans-serif;
	line-height: 1;
	color: #fff;
}
.page-top .top-aboutus ul li .ja {
	display: inline-block;
	position: relative;
	margin-top: 0.8em;
	padding-right: 28px;
	font-size: 14px;
	font-weight: 800;
	line-height: 1;
	color: #fff;
}
.page-top .top-aboutus ul li .ja:before {
	content: '';
	display: block;
	position: absolute;
	right: 0;
	top: 55%;
	transform: translate(0,-50%);
	display: block;
	width: 18px;
	height: 18px;
	background: url("../img/common/icon_arrow_right_white.svg") no-repeat;
}
@media screen and (max-width: 1140px) {
	.page-top .top-aboutus .inner {
		margin: 0 30px;
	}
}
@media screen and (max-width: 768px) {
	.page-top .top-aboutus {
		padding-top: 14.6667vw;
		padding-bottom: 32.6667vw;
		background-color: #f4f4f4;
	}
	.page-top .top-aboutus:before {
		display: none;
	}
	.page-top .top-aboutus .inner {
		margin: 0 auto;
		max-width: 93.3334vw;
	}
	.page-top .top-aboutus h2 {
		margin-bottom: 10.4vw;
	}
	.page-top .top-aboutus ul {
		flex-wrap: wrap;
		gap: 2.6667vw;
	}
	.page-top .top-aboutus ul li {
		width: 93.3334vw;
		height: 27.3334vw;
	}
	.page-top .top-aboutus ul li a {
		display: flex;
		align-items: center;
		padding-left: 4.8vw;
		padding-bottom: 0;
	}
	.page-top .top-aboutus ul li a:hover {
		text-decoration: none;
	}
	.page-top .top-aboutus ul li a:before {
		display: none;
	}
	.page-top .top-aboutus ul li.bnr-companyinfo a {
		background-image: url("../img/top/top_aboutus_companyinfo_sp.png");
	}
	.page-top .top-aboutus ul li.bnr-recruit a {
		background-image: url("../img/top/top_aboutus_recruit_sp.png");
	}
	.page-top .top-aboutus ul li.bnr-100th a {
		background-image: url("../img/top/top_aboutus_100th_sp.png");
	}
	.page-top .top-aboutus ul li .en {
		font-size: 5.4667vw;
	}
	.page-top .top-aboutus ul li .ja {
		margin-top: 0;
		padding-right: 5.8667vw;
		font-size: 2.6667vw;
	}
	.page-top .top-aboutus ul li .ja:before {
		width: 3.6vw;
		height: 3.6vw;
	}
}


/* --------------------------------------------------
	.general-top-kv
-------------------------------------------------- */
.general-top-kv {
	margin-bottom: 100px;
	height: 400px;
	background-position: center top;
	background-repeat: no-repeat;
}
.page-products .general-top-kv {
	background-image: url("../img/products/products_kv_pc.png");
}
.page-case .general-top-kv {
	background-image: url("../img/case/case_kv_pc.png");
}
.page-purpose .general-top-kv {
	background-image: url("../img/purpose/purpose_kv_pc.png");
}
.page-company .general-top-kv {
	background-image: url("../img/company/company_kv_pc.png");
}
.page-otherlang.page-products .general-top-kv {
	background-image: url("../img/otherlang/products_kv_pc.png");
}
.general-top-kv .inner {
	height: 100%;
}
.general-top-kv .text-area {
	position: absolute;
	left: 0;
	bottom: 0;
	padding: 45px 0 0 40px;
	min-width: 575px;
	background-color: #fff;
	box-sizing: border-box;
}
.general-top-kv .text-area:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	transform: translate(-100%, 0);
	display: block;
	width: 100%;
	height: 100%;
	background-color: #fff;
}
.general-top-kv .text-area h1 {
	font-size: 38px;
	line-height: 1;
}
.general-top-kv .text-area p {
	margin-top: 1.4em;
	font-size: 16px;
	line-height: 1.75;
}
@media screen and (max-width: 1160px) {
	.general-top-kv .text-area {
		padding-left: 30px;
	}
}
@media screen and (max-width: 768px) {
	.general-top-kv {
		margin-bottom: 6.6667vw;
		width: 100%;
		height: auto;
		background-size: 100% auto;
	}
	.page-products .general-top-kv {
		background-image: url("../img/products/products_kv_sp.png");
	}
	.page-case .general-top-kv {
		background-image: url("../img/case/case_kv_sp.png");
	}
	.page-purpose .general-top-kv {
		background-image: url("../img/purpose/purpose_kv_sp.png");
	}
	.page-company .general-top-kv {
		background-image: url("../img/company/company_kv_sp.png");
	}
	.page-otherlang.page-products .general-top-kv {
		background-image: url("../img/otherlang/products_kv_sp.png");
	}
	.general-top-kv .inner {
		padding-top: 37.6vw;
	}
	.general-top-kv .text-area {
		position: static;
		padding: 8vw 6.6667vw;
		width: 86.6667vw;
		min-width: auto;
	}
	.general-top-kv .text-area:before {
		display: none;
	}
	.general-top-kv .text-area h1 {
		font-size: 6.9334vw;
		line-height: 1.2;
	}
	.general-top-kv .text-area p {
		font-size: 4vw;
	}
}

/* --------------------------------------------------
	.general-category-kv
-------------------------------------------------- */
.general-category-kv {
	margin-bottom: 100px;
	height: 300px;
	background-color: #f7f7f7;
}
.general-category-kv .inner {
	z-index: 2;
	display: flex;
	align-items: center;
	max-width: 1080px;
	height: 100%;
}
.general-category-kv .inner:before {
	content: '';
	position: absolute;
	left: 580px;
	top: 0;
	width: 695px;
	height: 300px;
	background-position: center top;
	background-repeat: no-repeat;
	background-size: auto;
}
.page-products.term-storage_systems .general-category-kv .inner:before {
	background-image: url("../img/products/products_storage_systems_kv_pc.jpg");
}
.page-products.term-library .general-category-kv .inner:before {
	background-image: url("../img/products/products_library_kv_pc.jpg");
}
.page-products.term-office .general-category-kv .inner:before {
	background-image: url("../img/products/products_office_kv_pc.jpg");
}
.page-products.term-hospital .general-category-kv .inner:before {
	background-image: url("../img/products/products_hospital_kv_pc.jpg");
}
.page-products.term-museum .general-category-kv .inner:before {
	background-image: url("../img/products/products_museum_kv_pc.jpg");
}
.page-products.term-house .general-category-kv .inner:before {
	background-image: url("../img/products/products_house_kv_pc.jpg");
}
.page-products.term-preservation .general-category-kv .inner:before {
	background-image: url("../img/products/products_preservation_kv_pc.jpg");
}
.page-case.term-library .general-category-kv .inner:before {
	background-image: url("../img/products/products_library_kv_pc.jpg");
}
.page-purpose .general-category-kv.storage_systems .inner:before {
	background-image: url("../img/purpose/purpose_storage_systems_kv_pc.png");
}
.page-purpose .general-category-kv.library .inner:before {
	background-image: url("../img/purpose/purpose_library_kv_pc.png");
}
.page-message .general-category-kv .inner:before {
	background-image: url("../img/company/message_kv_pc.png");
}
.page-outline .general-category-kv .inner:before {
	background-image: url("../img/company/outline_kv_pc.png");
}
.page-business .general-category-kv .inner:before {
	background-image: url("../img/company/business_kv_pc.png");
}
.page-workflow .general-category-kv .inner:before {
	background-image: url("../img/company/workflow_kv_pc.png");
}
.page-history .general-category-kv {
	margin-bottom: 0;
}
.page-history .general-category-kv .inner:before {
	background-image: url("../img/company/history_kv_pc.png");
}
.page-relation .general-category-kv .inner:before {
	background-image: url("../img/company/relation_kv_pc.png");
}
.page-environment .general-category-kv.quality .inner:before {
	background-image: url("../img/environment/environment_quality_kv_pc.png");
}
.page-environment .general-category-kv.environment .inner:before {
	background-image: url("../img/environment/environment_environment_kv_pc.png");
}
.general-category-kv .text-area {
	max-width: 500px;
}
.general-category-kv .text-area h1 {
	font-size: 30px;
	line-height: 1;
}
.general-category-kv .text-area h1 span {
	display: inline-block;
	margin-bottom: 1em;
	padding: 0.6em;
	width: 130px;
	background-color: #fff;
	box-sizing: border-box;
	border-radius: 15px;
	font-size: 14px;
	text-align: center;
}
.general-category-kv .text-area h2 {
	font-size: 26px;
	line-height: 1;
}
.general-category-kv .text-area p {
	margin-top: 1.4em;
	font-size: 16px;
	line-height: 1.75;
}
@media screen and (max-width: 1140px) {
	.general-category-kv .inner {
		margin-left: 30px;
		margin-right: 30px;
	}
}
@media screen and (max-width: 768px) {
	.general-category-kv {
		margin-bottom: 10.6667vw;
		width: 100%;
		height: auto;
	}
	.general-category-kv .inner {
		display: block;
		margin-left: auto;
		margin-right: auto;
		height: auto;
	}
	.general-category-kv .inner:before {
		left: 53.3334vw;
		width: 46.6667vw;
		height: 33.3334vw;
		background-size: cover;
	}
	.page-products.term-storage_systems .general-category-kv .inner:before {
		background-image: url("../img/products/products_storage_systems_kv_sp.jpg");
	}
	.page-products.term-library .general-category-kv .inner:before {
		background-image: url("../img/products/products_library_kv_sp.jpg");
	}
	.page-products.term-office .general-category-kv .inner:before {
		background-image: url("../img/products/products_office_kv_sp.jpg");
	}
	.page-products.term-hospital .general-category-kv .inner:before {
		background-image: url("../img/products/products_hospital_kv_sp.jpg");
	}
	.page-products.term-museum .general-category-kv .inner:before {
		background-image: url("../img/products/products_museum_kv_sp.jpg");
	}
	.page-products.term-house .general-category-kv .inner:before {
		background-image: url("../img/products/products_house_kv_sp.jpg");
	}
	.page-products.term-preservation .general-category-kv .inner:before {
		background-image: url("../img/products/products_preservation_kv_sp.jpg");
	}
	.page-case.term-library .general-category-kv .inner:before {
		background-image: url("../img/products/products_library_kv_sp.jpg");
	}
	.page-purpose .general-category-kv.storage_systems .inner:before {
		background-image: url("../img/purpose/purpose_storage_systems_kv_sp.png");
	}
	.page-purpose .general-category-kv.library .inner:before {
		background-image: url("../img/purpose/purpose_library_kv_sp.png");
	}
	.page-message .general-category-kv .inner:before {
		background-image: url("../img/company/message_kv_sp.png");
	}
	.page-outline .general-category-kv .inner:before {
		background-image: url("../img/company/outline_kv_sp.png");
	}
	.page-business .general-category-kv .inner:before {
		background-image: url("../img/company/business_kv_sp.png");
	}
	.page-workflow .general-category-kv .inner:before {
		background-image: url("../img/company/workflow_kv_sp.png");
	}
	.page-history .general-category-kv .inner:before {
		background-image: url("../img/company/history_kv_sp.png");
	}
	.page-relation .general-category-kv .inner:before {
		background-image: url("../img/company/relation_kv_sp.png");
	}
	.page-environment .general-category-kv.quality .inner:before {
		background-image: url("../img/environment/environment_quality_kv_sp.png");
	}
	.page-environment .general-category-kv.environment .inner:before {
		background-image: url("../img/environment/environment_environment_kv_sp.png");
	}
	.general-category-kv .text-area {
		padding-left: 6.6667vw;
		padding-right: 6.6667vw;
	}
	.general-category-kv .text-area .heading-area {
		display: flex;
		align-items: center;
		width: 40vw;
		height: 33.3334vw;
	}
	.general-category-kv .text-area h1 {
		font-size: 5.8667vw;
		line-height: 1.4;
	}
	.general-category-kv .text-area h1 span {
		margin-bottom: 0.5em;
		padding: 0.5em;
		width: 28.0001vw;
		border-radius: 3.2vw;
		font-size: 3.2vw;
	}
	.general-category-kv .text-area h2 {
		font-size: 4.8vw;
	}
	.general-category-kv .text-area p {
		margin-top: 10vw;
		padding-bottom: 10vw;
		font-size: 4vw;
	}
}


/* --------------------------------------------------
	.page-products .main-container
	.page-case .main-container
-------------------------------------------------- */
.page-products .main-container,
.page-case .main-container {
	display: flex;
	gap: 30px;
	margin: 0 auto 160px;
	padding: 0 40px;
	max-width: 1160px;
	box-sizing: border-box;
}
.page-products .breadcrumb + .main-container,
.page-case .breadcrumb + .main-container {
	margin-top: 60px;
}
.main-container .general-category-top,
.main-container .products-top,
.main-container .products-detail,
.main-container .case-top,
.main-container .case-detail {
	order: 2;
	flex-grow: 1;
	max-width: 795px;
}
.main-container .general-category-nav {
	order: 1;
	width: 255px;
	min-width: 255px;
}
@media screen and (max-width: 1160px) {
	.page-products .main-container,
	.page-case .main-container {
		padding: 0 30px;
	}
}
@media screen and (max-width: 768px) {
	.page-products .main-container,
	.page-case .main-container {
		margin-bottom: 40vw;
		padding: 0;
		max-width: 86.6667vw;
	}
	.page-products .breadcrumb + .main-container,
	.page-case .breadcrumb + .main-container {
		margin-top: 9.3334vw;
	}
	.main-container .products-top,
	.main-container .case-top {
		max-width: 100%;
	}
	.main-container .general-category-nav {
		display: none;
	}
}

/* --------------------------------------------------
	.general-category-heading
	.general-detail-heading
-------------------------------------------------- */
.general-category-heading h1,
.general-detail-heading h1 {
	font-size: 28px;
	line-height: 1;
}
.general-category-heading p,
.general-detail-heading p {
	margin-top: 1.4em;
	font-size: 16px;
	line-height: 1.75;
}
.general-category-heading p.lead,
.general-detail-heading p.lead {
	margin-top: 0.8em;
	font-size: 20px;
	font-weight: 600;
}
@media screen and (max-width: 768px) {
	.general-category-heading h1,
	.general-detail-heading h1 {
		font-size: 5.8667vw;
		line-height: 1.4;
	}
	.general-category-heading p,
	.general-detail-heading p {
		font-size: 4vw;
	}
	.general-category-heading p.lead,
	.general-detail-heading p.lead {
		font-size: 3.7334vw;
	}
}

/* --------------------------------------------------
	.general-box-list
-------------------------------------------------- */
.general-category-heading + .general-box-list {
	margin-top: 50px;
}
.general-box-list {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 0 30px;
}
.general-box-list li {
	position: relative;
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 4;
	gap: 0;
}
.general-box-list li:nth-child(n+4) {
	margin-top: 60px;
}
.general-box-list.col4 {
	grid-template-columns: 1fr 1fr 1fr 1fr;
}
.general-box-list.col4 li:nth-child(n-4) {
	margin-top: 0;
}
.general-box-list li:nth-child(n+5) {
	margin-top: 60px;
}
.general-box-list.col5 {
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
	gap: 0 20px;
}
.general-box-list.col5 li:nth-child(n-5) {
	margin-top: 0;
}
.general-box-list.col5 li:nth-child(n+6) {
	margin-top: 30px;
}
.general-box-list li a:hover {
	opacity: 1;
	text-decoration: none;
}
.general-box-list li div:first-child {
	aspect-ratio: 1 / 1;
	overflow: hidden;
}
.general-box-list li div img {
	height: 100%;
	object-fit: cover;
}
.general-box-list li a div {
	position: relative;
}
.general-box-list li a div:before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	pointer-events: none;
	border: rgba(253,129,18,0.6) 0 solid;
	transition: .1s linear;
}
.general-box-list li a:hover div:before {
	border-width: 4px;
}
.general-box-list li a div:after {
	content: '';
	display: block;
	position: absolute;
	right: 9px;
	bottom: 9px;
	width: 18px;
	height: 18px;
	background: url("../img/common/icon_arrow_right_white.svg") no-repeat;
	background-size: contain;
}
.general-box-list li a:hover div:after {
	background-image: url("../img/common/icon_arrow_right_white_on.svg");
}
.general-box-list li h3,
.general-box-list li h4 {
	position: relative;
	margin-top: 1em;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.2;
	color: #0c0628;
	align-self: center;
}
.general-box-list li p {
	margin-top: 1em;
	font-size: 13px;
	line-height: 1.84;
}
.general-box-list li .btn-lineup,
.general-box-list li .btn-detail {
	margin-top: 20px;
	height: 40px;
	font-size: 12px;
	line-height: 1;
}
.general-box-list li .btn-lineup a,
.general-box-list li .btn-detail a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	background-color: #f7f7f7;
	border: #e2e2e2 1px solid;
	border-radius: 4px;
}
.general-box-list li .btn-detail a {
	background-color: #fff;
}
.general-box-list li .btn-lineup a:hover,
.general-box-list li .btn-detail a:hover {
	text-decoration: none;
}
.general-box-list li .btn-lineup a:before,
.general-box-list li .btn-lineup a:after,
.general-box-list li .btn-detail a:before,
.general-box-list li .btn-detail a:after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	transform: translate(0,-50%);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.general-box-list li .btn-lineup a:before {
	left: 12px;
	width: 16px;
	height: 14px;
	background-image: url("../img/common/icon_products_lineup.svg");
}
.general-box-list li .btn-lineup a:after,
.general-box-list li .btn-detail a:after {
	right: 12px;
	width: 6px;
	height: 11px;
	background-image: url("../img/common/icon_category_nav_arrow1.svg");
}
.general-box-list li .btn-detail a:before {
	left: 16px;
	width: 10px;
	height: 13px;
	background-image: url("../img/common/icon_products_detail.svg");
}
@media screen and (max-width: 900px) {
	.general-box-list {
		grid-template-columns: 1fr 1fr;
	}
	.general-box-list li:nth-child(n+3) {
		margin-top: 60px;
	}
}
@media screen and (max-width: 768px) {
	.general-category-heading + .products-box-list {
		margin-top: 10vw;
	}
	.general-box-list {
		gap: 0 4vw;
	}
	.general-box-list li:nth-child(n+3) {
		margin-top: 9.3334vw;
	}
	.general-box-list.col4 {
		grid-template-columns: 1fr 1fr;
	}
	.general-box-list.col4 li:nth-child(n+3) {
		margin-top: 9.3334vw;
	}
	.general-box-list.col5 {
		grid-template-columns: 1fr 1fr;
		gap: 0 4vw;
	}
	.general-box-list.col5 li:nth-child(n+3) {
		margin-top: 9.3334vw;
	}
	.general-box-list li a div:before {
		display: none;
	}
	.general-box-list li a div:after {
		right: 1.6vw;
		bottom: 1.6vw;
		width: 2.9334vw;
		height: 2.9334vw;
	}
	.general-box-list li h3,
	.general-box-list li h4 {
		font-size: 3.7334vw;
	}
	.general-box-list li p {
		font-size: 3.2vw;
	}
	.general-box-list li .btn-lineup,
	.general-box-list li .btn-detail {
		margin-top: 3.3334vw;
		height: 10.6667vw;
		font-size: 2.9334vw;
	}
	.general-box-list li .btn-lineup a,
	.general-box-list li .btn-detail a {
		border-radius: 0.8vw;
	}
	.general-box-list li .btn-lineup a:before {
		left: 3.2vw;
		width: 3.7334vw;
		height: 3.2vw;
	}
	.general-box-list li .btn-lineup a:after,
	.general-box-list li .btn-detail a:after {
		right: 2.1334vw;
		width: 1.3334vw;
		height: 2.1334vw;
	}
	.general-box-list li .btn-detail a:before {
		left: 3.2vw;
		width: 2.6667vw;
		height: 3.4667vw;
	}
}

/* --------------------------------------------------
	.library-trackrecord
-------------------------------------------------- */
.library-trackrecord {
	margin: 70px auto 0;
	width: 100%;
}
.library-trackrecord th,
.library-trackrecord td {
	padding: 10px;
	border: #cccccc 1px solid;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.45;
	text-align: center;
	vertical-align: middle;
}
.library-trackrecord a {
	text-decoration: underline;
}
.library-trackrecord a:hover {
	text-decoration: none;
}
.library-trackrecord thead th {
	padding: 10px 5px;
	background-color: #f7f7f7;
	text-align: center;
	vertical-align: middle;
	line-height: 1.2;
}
.library-trackrecord tbody tr td:nth-child(1) {
	text-align: left;
}
.library-trackrecord-movie {
	margin: 100px auto 0;
	max-width: 504px;
	aspect-ratio: 16 / 9;
}
.library-trackrecord-movie iframe {
	width: 100%;
	height: 100%;
}
@media screen and (max-width: 768px) {
	.library-trackrecord {
		margin-top: 13.3334vw;
	}
	.library-trackrecord th,
	.library-trackrecord td {
		padding: 1.3334vw;
		font-size: 2.9334vw;
	}
	.library-trackrecord thead th {
		padding: 1.3334vw 0.6667vw;
		font-size: 2.6667vw;
	}
	.library-trackrecord tbody tr td:nth-child(1) {
		width: 24vw;
	}
	.library-trackrecord tbody tr td:nth-child(3) {
		width: 2.5em;
	}
	.library-trackrecord-movie {
		margin-top: 13.3334vw;
		max-width: 100%;
	}
}

/* --------------------------------------------------
	.general-detail-introduction
-------------------------------------------------- */
.general-detail-introduction {
	margin-top: 30px;
}
.general-detail-introduction {
	display: flex;
	justify-content: space-between;
}
.general-detail-introduction-picarea {
	width: 50.3145%;
}
.general-detail-introduction-textarea {
	width: 45.912%;
}
.general-detail-introduction-pic-large {
	aspect-ratio: 1 / 1;
	overflow: hidden;
}
.general-detail-introduction-pic-large > div {
	display: none;
	height: 100%;
	transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}
.general-detail-introduction-pic-large > div.is--active {
	display: block;
}
.general-detail-introduction-pic-large div img {
	height: 100%;
	object-fit: cover;
}
.general-detail-introduction-pic-thumb {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 20px;
}
.general-detail-introduction-pic-thumb > div {
	width: calc( (100% - 40px) / 5) ;
	cursor: pointer;
	transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
	aspect-ratio: 1 / 1;
	overflow: hidden;
}
.general-detail-introduction-pic-thumb > div:hover,
.general-detail-introduction-pic-thumb > div.is--active {
	opacity: 0.5;
}
.general-detail-introduction-pic-thumb > div img {
	height: 100%;
	object-fit: cover;
}
.general-detail-introduction-textarea p {
	font-size: 15px;
	line-height: 1.86;
}
.general-detail-introduction-textarea > :nth-child(1) {
	margin-top: -0.5em;
}
.general-detail-introduction-textarea table {
	margin-top: 25px;
	width: 100%;
	border-left: #cccccc 1px solid;
	border-top: #cccccc 1px solid;
}
.general-detail-introduction-textarea table th,
.general-detail-introduction-textarea table td {
	padding: 15px;
	border-right: #cccccc 1px solid;
	border-bottom: #cccccc 1px solid;
	font-size: 14px;
	font-weight: 500;
	text-align: left;
	vertical-align: middle;
}
.general-detail-introduction-textarea table th {
	background-color: #f7f7f7;
	white-space: nowrap; 
}
.general-detail-introduction-textarea .btn-wrap {
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.general-detail-introduction-textarea * + .btn-wrap {
	margin-top: 20px;
}
.general-detail-introduction-textarea .btn-general {
	margin-top: 20px;
	width: 240px;
}
.general-detail-introduction-textarea .btn-catalogue,
.general-detail-introduction-textarea .btn-contact,
.general-detail-introduction-textarea .btn-docrequest {
	width: 240px;
	height: 40px;
}
.general-detail-introduction-textarea .btn-general a,
.general-detail-introduction-textarea .btn-catalogue a,
.general-detail-introduction-textarea .btn-contact a,
.general-detail-introduction-textarea .btn-docrequest a {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	border-radius: 4px;
	background-color: #fff;
	border: #e2e2e2 1px solid;
	box-sizing: border-box;
	transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
	font-size: 14px;
	font-weight: 600;
	line-height: 1;
}
.general-detail-introduction-textarea .btn-general a {
	justify-content: flex-start;
	padding: 10px 20px 10px 17px;
	line-height: 1.4;
}
.general-detail-introduction-textarea .btn-contact a,
.general-detail-introduction-textarea .btn-docrequest a {
	background-color: #fd8112;
	border: #fd8112 1px solid;
	color: #fff;
}
.general-detail-introduction-textarea .btn-general a:after,
.general-detail-introduction-textarea .btn-catalogue a:after,
.general-detail-introduction-textarea .btn-contact a:before,
.general-detail-introduction-textarea .btn-contact a:after,
.general-detail-introduction-textarea .btn-docrequest a:after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	transform: translate(0,-50%);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.general-detail-introduction-textarea .btn-general a:after,
.general-detail-introduction-textarea .btn-catalogue a:after,
.general-detail-introduction-textarea .btn-contact a:after,
.general-detail-introduction-textarea .btn-docrequest a:after {
	right: 12px;
	width: 6px;
	height: 11px;
}
.general-detail-introduction-textarea .btn-general a:after,
.general-detail-introduction-textarea .btn-catalogue a:after {
	background-image: url("../img/common/icon_arrow_right2_black.svg");
}
.general-detail-introduction-textarea .btn-contact a:after,
.general-detail-introduction-textarea .btn-docrequest a:after {
	background-image: url("../img/common/icon_arrow_right2_white.svg");
}
.general-detail-introduction-textarea .btn-contact a:before {
	left: 17px;
	width: 20px;
	height: 16px;
	background-image: url("../img/common/icon_contact.svg");
}
.general-detail-introduction-textarea .btn-general a:hover,
.general-detail-introduction-textarea .btn-catalogue a:hover,
.general-detail-introduction-textarea .btn-contact a:hover,
.general-detail-introduction-textarea .btn-docrequest a:hover {
	text-decoration: none;
}
@media screen and (max-width: 768px) {
	.general-detail-introduction {
		margin-top: 9.3334vw;
	}
	.general-detail-introduction {
		display: block;
	}
	.general-detail-introduction-picarea {
		width: 100%;
	}
	.general-detail-introduction-textarea {
		margin-top: 6.6667vw;
		width: 100%;
	}
	.general-detail-introduction-pic-thumb {
		gap: 2.6667vw;
		margin-top: 4vw;
	}
	.general-detail-introduction-pic-thumb > div {
		width: calc( (100% - 12.3077%) / 5) ;
	}
	.general-detail-introduction-textarea p {
		font-size: 3.4667vw;
	}
	.general-detail-introduction-textarea > :nth-child(1) {
		margin-top: 0;
	}
	.general-detail-introduction-textarea table {
		margin-top: 6vw;
	}
	.general-detail-introduction-textarea table th,
	.general-detail-introduction-textarea table td {
		padding: 2.6667vw;
		font-size: 3.4667vw;
	}
	.general-detail-introduction-textarea .btn-wrap {
		flex-direction: row;
		gap: 4vw;
	}
	.general-detail-introduction-textarea * + .btn-wrap {
		margin-top: 4vw;
	}
	.general-detail-introduction-textarea .btn-general {
		margin-top: 4vw;
		width: 100%;
	}
	.general-detail-introduction-textarea .btn-catalogue,
	.general-detail-introduction-textarea .btn-contact {
		width: 41.3334vw;
		height: 10.6667vw;
	}
	.general-detail-introduction-textarea .btn-docrequest {
		width: 45.8667vw;
		height: 10.6667vw;
	}
	.general-detail-introduction-textarea .btn-general a,
	.general-detail-introduction-textarea .btn-catalogue a,
	.general-detail-introduction-textarea .btn-contact a,
	.general-detail-introduction-textarea .btn-docrequest a {
		border-radius: 0.8vw;
		font-size: 3.4667vw;
	}
	.general-detail-introduction-textarea .btn-general a {
		padding: 2.9vw 4vw 2.9vw 3.7334vw;
	}
	.general-detail-introduction-textarea .btn-docrequest a {
		padding-right: 3vw;
	}
	.general-detail-introduction-textarea .btn-general a:after,
	.general-detail-introduction-textarea .btn-catalogue a:after,
	.general-detail-introduction-textarea .btn-contact a:after,
	.general-detail-introduction-textarea .btn-docrequest a:after {
		right: 2.6667vw;
		width: 1.3334vw;
		height: 2.2667vw;
	}
	.general-detail-introduction-textarea .btn-contact a:before {
		left: 3.7334vw;
		width: 4.4vw;
		height: 3.4667vw;
	}
}

/* --------------------------------------------------
	.general-detail-contents
-------------------------------------------------- */
.general-detail-contents {
	margin-top: 60px;
}
.general-detail-contents h2 {
	position: relative;
	margin-bottom: 1.2em;
	padding: 10px;
	padding-left: 50px;
	background-color: #f7f7f7;
	border-radius: 4px;
	font-size: 20px;
	font-weight: 600;
	line-height: 1;
}
.general-detail-contents * + h2 {
	margin-top: 75px;
}
.general-detail-contents h2:before {
	content: '';
	position: absolute;
	left: 20px;
	top: 50%;
	transform: translate(0,-50%);
	display: block;
	width: 12px;
	height: 12px;
	background-color: #fd8112;
	box-sizing: border-box;
	box-shadow: inset 0 0 0 3px #f7f7f7, 0 0 0 2px #000;
}
.general-detail-contents a {
	text-decoration: underline;
}
.general-detail-contents a:hover {
	text-decoration: none;
}
.general-detail-contents .mt0 {
	margin-top: 0 !important;
}
.general-detail-contents .mt1 {
	margin-top: 1em !important;
}
.general-detail-contents .mt2 {
	margin-top: 2em !important;
}
.general-detail-contents .mt3 {
	margin-top: 3em !important;
}
.general-detail-contents .mt4 {
	margin-top: 4em !important;
}
.general-detail-contents .mt5 {
	margin-top: 5em !important;
}
.general-detail-contents .mb0 {
	margin-bottom: 0 !important;
}
.general-detail-contents .mb1 {
	margin-bottom: 1em !important;
}
.general-detail-contents .mb2 {
	margin-bottom: 2em !important;
}
.general-detail-contents .mb3 {
	margin-bottom: 3em !important;
}
.general-detail-contents .mb4 {
	margin-bottom: 4em !important;
}
.general-detail-contents .mb5 {
	margin-bottom: 5em !important;
}
.general-detail-contents p + .wp-block-columns,
.general-detail-contents .wp-block-image + .wp-block-columns,
.general-detail-contents .wp-block-columns + .wp-block-columns {
	margin-top: 75px;
	margin-bottom: 75px;
}
.general-detail-contents * +  .wp-block-image {
	text-align: center;
}
.general-detail-contents p,
.general-detail-contents li {
	font-size: 15px;
	color: #5e5e5e;
}
.general-detail-contents h3 {
	margin-bottom: 0.5em;
	font-size: 18px;
	font-weight: 500;
}
.general-detail-contents * + h3 {
	margin-top: 2em;
}
.general-detail-contents h4 {
	font-size: 15px;
	font-weight: 500;
}
.general-detail-contents p + h4 {
	margin-top: 1em;
}
.general-detail-contents .wp-block-image + h4 {
	margin-top: 0.5em;
}
.general-detail-contents h5 {
	font-size: 14px;
	font-weight: 500;
}
.general-detail-contents h6 {
	font-size: 12px;
	font-weight: 500;
}
.general-detail-contents .has-x-large-font-size {
	font-size: 22px !important;
}
.general-detail-contents .has-large-font-size {
	font-size: 20px !important;
}
.general-detail-contents .has-medium-font-size {
	font-size: 18px !important;
}
.general-detail-contents .has-regular-font-size {
	font-size: 15px !important;
}
.general-detail-contents .has-small-font-size {
	font-size: 11px !important;
}
.general-detail-contents figure {
	text-align: center;
}
.general-detail-contents figure img {
	width: auto;
	height: auto;
	max-width: 100%;
}
.general-detail-contents figure figcaption {
	margin-top: 0.5em;
	font-size: 15px;
	text-align: left;
	color: #5e5e5e;
}
.general-detail-contents .is-type-video .wp-block-embed__wrapper {
	margin: 0 auto;
	max-width: 650px;
	aspect-ratio: 16 / 9;
}
.general-detail-contents .is-type-video iframe {
	width: 100%;
	height: 100%;
}
.general-detail-contents table {
	width: 100%;
}
.general-detail-contents table th,
.general-detail-contents table td {
	padding: 15px;
	border: #cccccc 1px solid;
	font-size: 14px;
	font-weight: 500;
	text-align: left;
}
.general-detail-contents table th {
	background-color: #f7f7f7;
}
.general-detail-contents ul,
.general-detail-contents ol {
	margin-left: 1em;
}
.general-detail-contents ul {
	list-style: disc outside;
}
.general-detail-contents ol {
	list-style: decimal outside;
}
.general-detail-contents .is-layout-flex {
	display: flex;
	gap: 25px;
}
.general-detail-contents .is-layout-flex .wp-block-column-is-layout-flow {
	flex: 1;
}
.general-detail-contents .col4lineup.is-layout-flex {
	gap: 18px;
}
.general-detail-contents .col4lineup + .col4lineup {
	margin-top: 50px;
}
.general-detail-contents .col4lineup.is-layout-flex figure {
	padding-top: 8.6%;
	aspect-ratio: 1 / 1;
	border: #d4d4d4 1px solid;
	box-sizing: border-box;
}
.general-detail-contents .col4lineup.is-layout-flex figure img {
	width: 61%;
	outline: 1px solid #fff;
	outline-offset: -1px;
}
.general-detail-contents .col4lineup.is-layout-flex figure.fullimg {
	padding-top: 0;
}
.general-detail-contents .col4lineup.is-layout-flex figure.fullimg img {
	width: 100%;
	outline: 0;
	outline-offset: 0;
}
.general-detail-contents .col4lineup.is-layout-flex h3 {
	margin-top: 0.5em;
	margin-bottom: 0.2em;
	font-size: 15px;
}
.general-detail-contents .col4lineup.is-layout-flex p {
	font-size: 12px;
}
@media screen and (max-width: 768px) {
	.general-detail-contents {
		margin-top: 12.8vw;
	}
	.general-detail-contents h2 {
		padding: 2.4vw;
		padding-left: 13.3334vw;
		border-radius: 1.0667vw;
		font-size: 5.3334vw;
	}
	.general-detail-contents * + h2 {
		margin-top: 12vw;
	}
	.general-detail-contents h2:before {
		left: 5.3334vw;
	}
	.general-detail-contents p + .wp-block-columns,
	.general-detail-contents .wp-block-image + .wp-block-columns,
	.general-detail-contents .wp-block-columns + .wp-block-columns {
		margin-top: 20vw;
		margin-bottom: 20vw;
	}
	.general-detail-contents .wp-block-image.sp90w {
		margin-left: auto;
		margin-right: auto;
		width: 90%;
	}
	.general-detail-contents .wp-block-image.sp80w {
		margin-left: auto;
		margin-right: auto;
		width: 80%;
	}
	.general-detail-contents .wp-block-image.sp70w {
		margin-left: auto;
		margin-right: auto;
		width: 70%;
	}
	.general-detail-contents .wp-block-image.sp60w {
		margin-left: auto;
		margin-right: auto;
		width: 60%;
	}
	.general-detail-contents .wp-block-image.sp50w {
		margin-left: auto;
		margin-right: auto;
		width: 50%;
	}
	.general-detail-contents p,
	.general-detail-contents li {
		font-size: 3.4667vw;
	}
	.general-detail-contents h3 {
		font-size: 4.2667vw;
	}
	.general-detail-contents h4 {
		font-size: 3.4667vw;
	}
	.general-detail-contents h5 {
		font-size: 3.2vw;
	}
	.general-detail-contents h6 {
		font-size: 2.9334vw;
	}
	.general-detail-contents .has-x-large-font-size {
		font-size: 5vw !important;
	}
	.general-detail-contents .has-large-font-size {
		font-size: 4.6875vw !important;
	}
	.general-detail-contents .has-medium-font-size {
		font-size: 4.2667vw !important;
	}
	.general-detail-contents .has-regular-font-size {
		font-size: 3.4667vw !important;
	}
	.general-detail-contents .has-small-font-size {
		font-size: 3.2vw !important;
	}
	.general-detail-contents .is-type-video .wp-block-embed__wrapper {
		max-width: 74.6667vw;
	}
	.general-detail-contents table th,
	.general-detail-contents table td {
		padding: 2.6667vw;
		font-size: 3.4667vw;
	}
	.general-detail-contents figure figcaption {
		font-size: 3.125vw;
	}
	.general-detail-contents .is-layout-flex {
		gap: 9.3334vw 4vw;
	}
	.general-detail-contents .wp-block-columns.sp2col:not(.is-not-stacked-on-mobile) > .wp-block-column {
		flex: 0 1 auto !important;
		width: calc( (100% - 4vw) / 2 );
	}
	.general-detail-contents .col4lineup.is-layout-flex {
		gap: 6.6667vw 4vw;
	}
	.general-detail-contents .col4lineup.is-layout-flex:not(.is-not-stacked-on-mobile) > .wp-block-column {
		flex: 0 1 auto !important;
		width: calc( (100% - 4vw) / 2 );
	}
	.general-detail-contents .col4lineup + .col4lineup {
		margin-top: 6.6667vw;
	}
	.general-detail-contents .col4lineup.is-layout-flex h3 {
		font-size: 3.4667vw;
	}
	.general-detail-contents .col4lineup.is-layout-flex p {
		font-size: 3.2vw;
	}
}

/* --------------------------------------------------
	.general-detail-related
-------------------------------------------------- */
.general-detail-related {
	margin-top: 90px;
}
.general-detail-related h2 {
	position: relative;
	margin-bottom: 1.2em;
	padding: 10px;
	padding-left: 50px;
	background-color: #f7f7f7;
	border-radius: 4px;
	font-size: 20px;
	font-weight: 600;
	line-height: 1;
}
.general-detail-related * + h2 {
	margin-top: 75px;
}
.general-detail-related h2:before {
	content: '';
	position: absolute;
	left: 20px;
	top: 50%;
	transform: translate(0,-50%);
	display: block;
	width: 12px;
	height: 12px;
	background-color: #fd8112;
	box-sizing: border-box;
	box-shadow: inset 0 0 0 3px #f7f7f7, 0 0 0 2px #000;
}
.general-detail-related ul {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	gap: 40px 17px;
}
.general-detail-related ul li a:hover {
	opacity: 0.7;
}
.general-detail-related ul li a div {
	position: relative;
	aspect-ratio: 1 / 1;
	overflow: hidden;
}
.general-detail-related ul li a div:after {
	content: '';
	display: block;
	position: absolute;
	right: 9px;
	bottom: 9px;
	width: 16px;
	height: 16px;
	background: url("../img/common/icon_arrow_right_white.svg") no-repeat;
	background-size: contain;
}
.general-detail-related ul li a div img {
	height: 100%;
	object-fit: cover;
}
.general-detail-related ul li h3 {
	position: relative;
	margin-top: 1em;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.2;
}
@media screen and (max-width: 768px) {
	.general-detail-related {
		margin-top: 13.3334vw;
	}
	.general-detail-related h2 {
		padding: 2.4vw;
		padding-left: 13.3334vw;
		border-radius: 1.0667vw;
		font-size: 5.3334vw;
	}
	.general-detail-related * + h2 {
		margin-top: 12vw;
	}
	.general-detail-related h2:before {
		left: 5.3334vw;
	}
	.general-detail-related ul {
		grid-template-columns: 1fr 1fr;
		gap: 6vw 4vw;
	}
	.general-detail-related ul li a div:after {
		right: 1.4667vw;
		bottom: 1.4667vw;
		width: 3.2vw;
		height: 3.2vw;
	}
	.general-detail-related ul li h3 {
		font-size: 3.2vw;
	}
}

/* --------------------------------------------------
	.general-category-nav
-------------------------------------------------- */
.general-category-nav > ul > li {
	position: relative;
}
.general-category-nav > ul > li + li {
	border-top: #fff 2px solid;
}
.general-category-nav > ul > li > p {
	position: relative;
	display: block;
	width: 100%;
	background-color: #f7f7f7;
	font-size: 14px;
	font-weight: 600;
	line-height: 1;
}
.general-category-nav > ul > li > p a {
	position: relative;
	display: block;
	padding: 18px 50px 18px 20px;
	width: 100%;
	box-sizing: border-box;
}
.general-category-nav > ul > li > p a:after {
	content: '';
	position: absolute;
	right: 18px;
	top: 50%;
	display: block;
	width: 6px;
	height: 11px;
	transform: translate(0,-50%);
	background: url("../img/common/icon_category_nav_arrow1.svg") no-repeat center center;
	background-size: contain;
}
.general-category-nav > ul > li > p a:hover {
	opacity: 1;
	text-decoration: none;
}
.general-category-nav > ul > li > p a span {
	position: relative;
}
.general-category-nav > ul > li > p a span:after {
	content: '';
	position: absolute;
	left: 0;
	bottom: -3px;
	display: block;
	width: 0;
	border-bottom: #fd8112 2px solid;
	transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}
.general-category-nav > ul > li > p a:hover span:after {
	width: 100%;
}
.general-category-nav > ul > li > .general-category-nav-child-btn {
	position: absolute;
	right: 0;
	top: 0;
	z-index: 2;
	display: block;
	width: 45px;
	height: 50px;
	background-color: #f7f7f7;
	cursor: pointer;
	transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}
.general-category-nav > ul > li.is--active > .general-category-nav-child-btn {
	background-color: #ededed;
}
.general-category-nav .general-category-nav-child-btn:before,
.general-category-nav .general-category-nav-child-btn:after {
	content: '';
	position: absolute;
	left: calc( 50% - 1px);
	top: 50%;
	display: block;
	width: 15px;
	height: 1px;
	background-color: #0c0628;
	border-radius: 0.5px;
	transform: translate(-50%,-50%);
	transform-origin: center;
	transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}
.general-category-nav .general-category-nav-child-btn:after {
	left: 50%;
	top: calc( 50% + 1px);
	transform: translate(-50%,-50%) rotate(90deg);
}
.general-category-nav .close .general-category-nav-child-btn:after {
	left: calc( 50% - 1px);
	top: 50%;
	transform: translate(-50%,-50%) rotate(0deg);
}
.general-category-nav .general-category-nav-child {
}
.general-category-nav .general-category-nav-child ul {
	margin: 0.5em 0 25px;
}
.general-category-nav .general-category-nav-child ul > li {
	position: relative;
	padding: 0.5em 20px;
}
.general-category-nav .general-category-nav-child ul > li a {
	position: relative;
	display: block;
	width: 100%;
	font-size: 13px;
	font-weight: 500;
	line-height: 1;
	color: #54535e;
}
.general-category-nav .general-category-nav-child ul > li a:hover {
	opacity: 1;
}
.general-category-nav .general-category-nav-child ul > li a:after {
	content: '';
	position: absolute;
	right: 0;
	top: 50%;
	display: block;
	width: 6px;
	height: 11px;
	transform: translate(0,-50%);
	background: url("../img/common/icon_category_nav_arrow2.svg") no-repeat center center;
	background-size: contain;
}
.general-category-nav > ul > li.is--active > p,
.general-category-nav .general-category-nav-child ul > li.is--active {
	background-color: #ededed;
}
.general-category-nav > ul > li.is--active > p:after,
.general-category-nav .general-category-nav-child ul > li.is--active:after {
	content: '';
	position: absolute;
	right: 0;
	top: 50%;
	transform: translate(100%,-50%);
	display: block;
	width: 0;
	height: 0;
	border-left: #ededed 14px solid;
	border-top: transparent 7px solid;
	border-bottom: transparent 7px solid;
}
.general-category-nav .general-category-nav-child ul > li.is--active:after {
	border-left: #ededed 8px solid;
	border-top: transparent 4px solid;
	border-bottom: transparent 4px solid;
}
@media screen and (max-width: 768px) {
}

/* --------------------------------------------------
	.general-introduction-flex
-------------------------------------------------- */
.general-introduction-flex {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 auto 70px;
	max-width: 1080px;
}
.general-introduction-flex div:nth-child(1) {
	width: 40.7408%;
}
.general-introduction-flex div:nth-child(2) {
	width: 57.4075%;
}
.general-introduction-flex h3 {
	font-size: 22px;
	font-weight: 700;
	line-height: 1.8;
}
.general-introduction-flex p {
	font-size: 18px;
	line-height: 2.37;
}
@media screen and (max-width: 768px) {
	.general-introduction-flex {
		flex-wrap: wrap;
		margin: 0 auto 12vw;
		max-width: 86.6667vw;
	}
	.general-introduction-flex div:nth-child(1) {
		width: 100%;
	}
	.general-introduction-flex div:nth-child(2) {
		width: 100%;
	}
	.general-introduction-flex h3 {
		margin-bottom: 1em;
		font-size: 4.8vw;
	}
	.general-introduction-flex p {
		font-size: 4vw;
		line-height: 1.8;
	}
}

/* --------------------------------------------------
	.general-column-flex
-------------------------------------------------- */
.general-column-flex {
	display: flex;
	justify-content: space-between;
	margin: 0 auto;
	max-width: 1080px;
}
.general-column-flex + .general-column-flex {
	margin-top: 90px;
}
.general-column-flex > div:nth-child(1) {
	width: 25%;
}
.general-column-flex > div:nth-child(2) {
	width: 70%;
}
.general-column-flex h3 {
	position: relative;
	padding-bottom: 10px;
	font-size: 20px;
	font-weight: 600;
}
.general-column-flex h3:before,
.general-column-flex h3:after {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	display: block;
	transform: translate(0,50%);
}
.general-column-flex h3:before {
	width: 100%;
	height: 1px;
	background: #999999;
}
.general-column-flex h3:after {
	width: 50%;
	height: 1.8px;
	background: #0c0628;
}
.general-column-flex h4 {
	margin-bottom: 0.8em;
}
.general-column-flex * + h4 {
	margin-top: 50px;
}
.general-column-flex h4 span {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 190px;
	height: 34px;
	background-color: #f6f6f6;
	border-radius: 17px;
	font-size: 16px;
	font-weight: 600;
	color: #0c0628;
	text-align: center;
}
.general-column-flex p {
	font-size: 17px;
	font-weight: 500;
	line-height: 1.9;
	color: #0c0628;
}
.general-column-flex ul.notes {
	margin-top: 0.2em;
}
.general-column-flex ul.notes li {
	font-size: 14px;
	line-height: 2;
}
.general-column-flex dl {
	display: flex;
	margin-top: 20px;
	padding: 35px 0;
	max-width: 100%;
	background-color: #f6f6f6;
}
.general-column-flex p + dl {
	margin-top: 36px;
}
.general-column-flex dl dt {
	flex-shrink: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 180px;
	font-size: 17px;
	font-weight: 600;
	line-height: 1.76;
	color: #0c0628;
	text-align: center;
}
.general-column-flex dl dd {
	padding-right: 40px;
	font-size: 16px;
	line-height: 1.85;
	color: #0c0628;
}
.general-column-flex .link-list {
	display: flex;
	gap: 20px 35px;
	margin-bottom: 25px;
}
.general-column-flex .link-list li a {
	position: relative;
	padding-right: 35px;
	font-size: 17px;
	font-weight: 600;
}
.general-column-flex .link-list li a[href$=".pdf"]:after {
	content: '';
	position: absolute;
	right: 0;
	top: 50%;
	transform: translate(0,-50%);
	display: block;
	width: 22px;
	height: 27px;
	background-image: url("../img/common/icon_pdf.png");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.general-column-flex .text-area {
	display: flex;
	gap: 30px;
}
.general-column-flex .text-area .logo {
	flex-shrink: 0;
	width: 67px;
}
.general-column-flex table {
	margin-top: 30px;
	width: 100%;
}
.general-column-flex table caption {
	font-size: 16px;
	font-weight: 500;
	text-align: left;
}
.general-column-flex table th,
.general-column-flex table td {
	padding: 16px 0 6px;
	border-bottom: #ccc 1px solid;
	font-size: 16px;
	font-weight: 400;
	text-align: left;
}
.general-column-flex table th {
	width: 120px;
	font-weight: 500;
}
.general-column-flex table td {
	border-left: #fff 30px solid;
}
@media screen and (max-width: 768px) {
	.general-column-flex {
		display: block;
		max-width: 86.6667vw;
	}
	.general-column-flex + .general-column-flex {
		margin-top: 18.6667vw;
	}
	.general-column-flex > div:nth-child(1) {
		width: 100%;
	}
	.general-column-flex > div:nth-child(2) {
		width: 100%;
	}
	.general-column-flex h3 {
		margin-bottom: 6.1334vw;
		padding-bottom: 4vw;
		font-size: 4.8vw;
	}
	.general-column-flex h3:before {
		height: 0.2667vw;
	}
	.general-column-flex h3:after {
		height: 0.5334vw;
	}
	.general-column-flex h4 {
		margin-bottom: 0.3em;
	}
	.general-column-flex * + h4 {
		margin-top: 8.5334vw;
	}
	.general-column-flex h4 span {
		width: 37.3334vw;
		height: 7.4667vw;
		border-radius: 3.7334vw;
		font-size: 4vw;
	}
	.general-column-flex p {
		font-size: 4vw;
		line-height: 1.8;
	}
	.general-column-flex ul.notes li {
		font-size: 4vw;
		line-height: 1.8;
	}
	.general-column-flex dl {
		display: block;
		margin-top: 4vw;
		padding: 7.3334vw 6vw;
	}
	.general-column-flex p + dl {
		margin-top: 6.1334vw;
	}
	.general-column-flex dl dt {
		display: block;
		margin-bottom: 0.5em;
		width: auto;
		font-size: 4.2667vw;
		text-align: left;
	}
	.general-column-flex dl dd {
		padding-right: 0;
		font-size: 3.7334vw;
	}
	.general-column-flex .link-list {
		display: block;
		margin-bottom: 6.6667vw;
	}
	.general-column-flex .link-list li + li {
		margin-top: 5.3334vw;
	}
	.general-column-flex .link-list li a {
		padding-right: 9.3334vw;
		font-size: 4vw;
	}
	.general-column-flex .link-list li a[href$=".pdf"]:after {
		width: 6vw;
		height: 7.2vw;
	}
	.general-column-flex .text-area {
		gap: 4vw;
	}
	.general-column-flex .text-area .logo {
		width: 16vw;
	}
	.general-column-flex table {
		margin-top: 8vw;
	}
	.general-column-flex table caption {
		font-size: 3.7334vw;
	}
	.general-column-flex table th,
	.general-column-flex table td {
		padding: 3.3334vw 0;
		font-size: 3.4667vw;
	}
	.general-column-flex table th {
		width: 24vw;
	}
	.general-column-flex table td {
		border-left-width: 2.6667vw;
	}
}

/* --------------------------------------------------
	.general-table
-------------------------------------------------- */
.general-table {
	width: 100%;
	border-top: #4c4c4c 1px solid;
	border-left: #4c4c4c 1px solid;
}
.general-table + .general-table {
	margin-top: 25px;
}
.general-table caption {
	margin-bottom: 0.1em;
	padding-left: 0.8em;
	text-indent: -0.8em;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.4;
	text-align: left;
}
.general-table th,
.general-table td {
	padding: 15px;
	border-bottom: #4c4c4c 1px solid;
	border-right: #4c4c4c 1px solid;
	font-size: 14px;
	font-weight: 400;
	text-align: left;
	vertical-align: middle;
}
.general-table th {
	width: 190px;
	background-color: #f5f5f5;
	font-weight: 500;
}
.general-table .icon-iso {
	width: 170px;
	text-align: center;
}
.general-table .icon-iso img {
	width: 67px;
}
.general-table ol {
	margin-left: 1.5em;
}
.general-table ol li {
	list-style-type: decimal;
	font-size: 14px;
}
.general-table ol li + li {
	margin-top: 0.5em;
}
@media screen and (max-width: 768px) {
	.general-table + .general-table {
		margin-top: 5.3334vw;
	}
	.general-table caption {
		font-size: 3.8667vw;
	}
	.general-table th,
	.general-table td {
		padding: 2.6667vw 1.3334vw;
		font-size: 2.9334vw;
	}
	.general-table th {
		width: 24vw;
		font-weight: 500;
	}
	.general-table ol li {
		font-size: 3.2vw;
	}
}

/* --------------------------------------------------
	.page-movie-contents
-------------------------------------------------- */
.page-movie-contents {
	background-color: #f3f3f4;
}
.page-movie-contents .inner {
	padding: 80px 0 140px;
}
.movie-contents {
	margin: 0 40px;
}
.movie-list {
	display: flex;
	flex-wrap: wrap;
	gap: 50px 40px;
}
.movie-list li {
	width: calc( (100% - 80px) / 3 );
}
.movie-list li a {
	position: relative;
	display: block;
}
.movie-list li a:hover {
	opacity: 1;
}
.movie-list li a:before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	pointer-events: none;
	border: rgba(253,129,18,0.6) 0 solid;
	transition: .1s linear;
}
.movie-list li a:hover:before {
	border-width: 2px;
}
.movie-list li a:after {
	content: '';
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	display: block;
	width: 45px;
	height: 33px;
	background: url("../img/common/icon_movieplay.svg") no-repeat center center;
	background-size: contain;
}
.movie-list li h3 {
	margin-top: 0.7em;
	font-size: 16px;
	font-weight: 600;
	color: #0c0628;
}
.movie-list li p {
	margin-top: 0.6em;
	font-size: 14px;
	line-height: 1.7;
	color: #4c4c4c;
}
@media screen and (max-width: 768px) {
	.page-movie-contents {
		width: 100%;
	}
	.page-movie-contents .inner {
		padding: 13.3334vw 0 36vw;
	}
	.movie-contents {
		margin: 0 auto;
		width: 86.6667vw;
	}
	.movie-list {
		gap: 9.3334vw 0;
	}
	.movie-list li {
		width: 100%;
	}
	.movie-list li a:before {
		display: none;
	}
	.movie-list li a:after {
		width: 11.6001vw;
		height: 8.4vw;
	}
	.movie-list li h3 {
		font-size: 4vw;
	}
	.movie-list li p {
		font-size: 3.2vw;
	}
	.movie-list.col2 {
		gap: 9.3334vw 4vw;
	}
	.movie-list.col2 li {
		width: 41.3334vw;
	}
	.movie-list.col2 li a:before {
		width: 5.6001vw;
		height: 4vw;
	}
}

/* --------------------------------------------------
	.page-catalogue-contents
-------------------------------------------------- */
.page-catalogue-contents {
	background-color: #f3f3f4;
}
.page-catalogue-contents .inner {
	padding: 80px 0 140px;
}
.catalogue-contents {
	margin: 0 40px;
}
.catalogue-contents {
	margin: 0 40px;
}
.catalogue-contents h2 {
	margin-bottom: 1em;
	font-size: 22px;
	font-weight: 700;
}
.catalogue-list {
	display: flex;
	flex-wrap: wrap;
	gap: 50px 50px;
	margin-bottom: 100px;
	padding-bottom: 100px;
	border-bottom: #CECDD4 1px solid;
}
.catalogue-list:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: none;
}
.catalogue-list li {
	width: calc( (100% - 150px) / 4 );
}
.catalogue-list li a {
	display: block;
}
.catalogue-list li a:hover {
	text-decoration: none;
	opacity: 1;
}
.catalogue-list li h3 {
	margin-top: 1.4em;
	font-size: 17px;
	font-weight: 600;
	line-height: 1.5;
	color: #0c0628;
	text-align: center;
}
.catalogue-list li p {
	margin-top: 1.2em;
	font-size: 13px;
	line-height: 1;
	color: #4c4c4c;
	text-align: center;
}
.catalogue-list li .btn-catalogue {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 25px;
	width: 100%;
	height: 40px;
	background-color: #0c0628;
	box-sizing: border-box;
	font-size: 15px;
	font-weight: 700;
	line-height: 1;
	color: #fff;
}
.catalogue-list li a:hover .btn-catalogue {
	background-color: #fd8112;
}
.catalogue-list li .btn-catalogue:before {
	content: '';
	position: absolute;
	right: 0;
	top: 50%;
	transform: translate(-100%,-50%);
	display: block;
	width: 14px;
	height: 14px;
	background: url("../img/common/icon_arrow_right_white.svg") no-repeat center center;
	background-size: contain;
}
.catalogue-list li a:hover .btn-catalogue:before {
	background-image: url("../img/common/icon_arrow_right_white_on.svg");
}
@media screen and (max-width: 900px) {
	.catalogue-list li {
		width: calc( (100% - 150px) / 3 );
	}
}
@media screen and (max-width: 768px) {
	.page-catalogue-contents {
		width: 100%;
	}
	.page-catalogue-contents .inner {
		padding: 13.3334vw 0 36vw;
	}
	.catalogue-contents {
		margin: 0 auto;
		width: 86.6667vw;
	}
	.catalogue-contents h2 {
		font-size: 4.8vw;
	}
	.catalogue-list {
		gap: 4vw 4vw;
		margin-bottom: 13.3334vw;
		padding-bottom: 13.3334vw;
	}
	.catalogue-list:last-child {
		margin-bottom: 0;
		padding-bottom: 0;
	}
	.catalogue-list li {
		width: 41.3334vw;
	}
	.catalogue-list li h3 {
		font-size: 3.7334vw;
	}
	.catalogue-list li p {
		font-size: 2.6667vw;
	}
	.catalogue-list li .btn-catalogue {
		margin-top: 4vw;
		padding-right: 7.4667vw;
		height: 13.3334vw;
		font-size: 3.7334vw;
	}
	.catalogue-list li .btn-catalogue:before {
		transform: translate(-2.6667vw,-50%);
		width: 4.8vw;
		height: 4.8vw;
	}
}


/* --------------------------------------------------
	.page-publishing-contents
-------------------------------------------------- */
.page-publishing-contents {
	background-color: #f3f3f4;
}
.page-publishing-contents .inner {
	padding: 80px 0 140px;
}
.page-publishing-contents2 {
	background-color: #fff;
}
.page-publishing-contents2 .inner {
	padding: 100px 0;
}
.publishing-contents {
	margin: 0 40px;
}
.publishing-contents .publishing-contents-flex {
	display: flex;
	gap: 70px;
}
.backnumber .publishing-contents .publishing-contents-flex {
	padding-bottom: 60px;
	border-bottom: #cecdd4 1px solid;
}
.backnumber .publishing-contents .publishing-contents-flex + .publishing-contents-flex {
	margin-top: 60px;
}
.publishing-contents .publishing-thumb {
	width: 280px;
	flex-grow: 0;
}
.backnumber .publishing-contents .publishing-thumb {
	width: 160px;
}
.backnumber .publishing-contents h2 {
	margin-top: 0.5em;
	font-size: 21px;
	font-weight: 500;
	text-align: center;
}
.backnumber .publishing-contents h2 .date {
	display: block;
	font-size: 14px;
}
.publishing-contents .publishing-textarea {
	flex-grow: 1;
}
.publishing-contents .publishing-textarea h2 {
	padding-bottom: 18px;
	border-bottom: #0C0628 1px solid;
	font-size: 21px;
	font-weight: 500;
}
.publishing-contents .publishing-textarea h2 .icon {
	display: inline-block;
	margin-right: 1em;
	padding: 0.3em 1em 0.4em;
	background-color: #FD8112;
	font-size: 17px;
	line-height: 1;
	color: #fff;
	vertical-align: 0.3em;
}
.publishing-contents .publishing-textarea h2 .date {
	display: inline-block;
	margin-right: 1em;
	font-size: 18px;
}
.publishing-contents .wp-block-group,
.publishing-contents .sub-box {
	padding: 26px 0;
	border-bottom: #CECDD4 1px solid;
}
.publishing-contents .wp-block-group h3,
.publishing-contents .sub-box h3 {
	margin-bottom: 0.6em;
	font-size: 20px;
	font-weight: 600;
	color: #0c0628;
}
.publishing-contents .wp-block-group li,
.publishing-contents .sub-box li {
	font-size: 17px;
	color: #4c4c4c;
}
.publishing-contents .wp-block-group .has-small-font-size,
.publishing-contents .sub-box .author,
.publishing-contents .sub-box .small {
	margin-top: 0.6em;
	font-size: 13px;
	font-weight: 600;
}

.backnumber .publishing-contents .wp-block-group,
.backnumber .publishing-contents .sub-box {
	padding-top: 0;
	padding-bottom: 0;
	border-bottom: none;
}
.backnumber .publishing-contents .wp-block-group + .wp-block-group,
.backnumber .publishing-contents .sub-box + .sub-box {
	padding-top: 26px;
}
.backnumber .publishing-contents .wp-block-group h3,
.backnumber .publishing-contents .sub-box h3 {
	margin-bottom: 0;
	font-size: 18px;
}
.backnumber .publishing-contents .wp-block-group li,
.backnumber .publishing-contents .sub-box li {
	display: inline;
	font-size: 15px;
}
.backnumber .publishing-contents .wp-block-group li + li,
.backnumber .publishing-contents .sub-box li + li {
	margin-left: 1em;
}
.backnumber .publishing-contents .wp-block-group .has-small-font-size,
.backnumber .publishing-contents .sub-box .author,
.backnumber .publishing-contents .sub-box .small {
	margin-top: 0;
}
.publishing-contents .btn-subscription {
	margin-top: 50px;
}
.publishing-contents .notes {
	margin-top: 1em;
}
.publishing-contents .notes li {
	padding-left: 1em;
	text-indent: -1em;
	font-size: 14px;
}
.publishing-contents-detail {
	display: flex;
	align-items: center;
	margin: 0 40px;
	padding: 30px 0;
	border-top: #cecdd4 1px solid;
	border-bottom: #cecdd4 1px solid;
}
.publishing-contents-detail .publishing-contents-detail-heading {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-grow: 0;
	width: 390px;
}
.publishing-contents-detail .publishing-contents-detail-heading h2 {
	font-size: 26px;
	font-weight: 300;
	line-height: 1.5;
}
.publishing-contents-detail .publishing-contents-detail-data {
	flex-grow: 1;
}
.publishing-contents-detail .publishing-contents-detail-data table th,
.publishing-contents-detail .publishing-contents-detail-data table td {
	padding: 0.8em 0;
	font-size: 15px;
	font-weight: 500;
	text-align: left;
}
.publishing-contents-detail .publishing-contents-detail-data table th {
	padding-right: 2em;
	font-weight: 600;
	white-space: nowrap;
}
@media screen and (max-width: 768px) {
	.page-publishing-contents {
		width: 100%;
	}
	.page-publishing-contents .inner {
		padding: 9.3334vw 0 18.6667vw;
	}
	.page-publishing-contents.backnumber .inner {
		padding-bottom: 37.3334vw;
	}
	.page-publishing-contents2 {
		width: 100%;
	}
	.page-publishing-contents2 .inner {
		padding: 13.3334vw 0;
	}
	.publishing-contents {
		margin: 0;
	}
	.publishing-contents .publishing-contents-flex {
		display: block;
		margin: 0 auto;
		width: 86.6667vw;
	}
	.backnumber .publishing-contents .publishing-contents-flex {
		display: flex;
		gap: 4vw;
		padding-bottom: 7.3334vw;
	}
	.backnumber .publishing-contents .publishing-contents-flex + .publishing-contents-flex {
		margin-top: 7.3334vw;
	}
	.publishing-contents .publishing-thumb {
		margin: 0 auto 10.6667vw;
		width: 48vw;
	}
	.backnumber .publishing-contents .publishing-thumb {
		width: 26.6667vw;
	}
	.backnumber .publishing-contents h2 {
		font-size: 4.6667vw;
	}
	.backnumber .publishing-contents h2 .date {
		font-size: 3.0667vw;
	}
	.publishing-contents .publishing-textarea {
		margin: 0 auto;
		width: 86.6667vw;
	}
	.publishing-contents .publishing-textarea h2 {
		padding-bottom: 4vw;
		font-size: 4.6667vw;
	}
	.publishing-contents .publishing-textarea h2 .icon {
		font-size: 3.7334vw;
	}
	.publishing-contents .publishing-textarea h2 .date {
		font-size: 4vw;
	}
	.publishing-contents .wp-block-group,
	.publishing-contents .sub-box {
		padding: 6vw 0;
	}
	.publishing-contents .wp-block-group h3,
	.publishing-contents .sub-box h3 {
		font-size: 4.5334vw;
	}
	.publishing-contents .wp-block-group li,
	.publishing-contents .sub-box li {
		font-size: 3.8667vw;
	}
	.publishing-contents .wp-block-group .has-small-font-size,
	.publishing-contents .sub-box .author,
	.publishing-contents .sub-box .small {
		font-size: 2.9334vw;
	}
	.backnumber .publishing-contents .wp-block-group + .wp-block-group,
	.backnumber .publishing-contents .sub-box + .sub-box {
		padding-top: 6.6667vw;
	}
	.backnumber .publishing-contents .wp-block-group h3,
	.backnumber .publishing-contents .sub-box h3 {
		font-size: 4vw;
	}
	.backnumber .publishing-contents .wp-block-group li,
	.backnumber .publishing-contents .sub-box li {
		display: list-item;
		font-size: 3.2vw;
	}
	.backnumber .publishing-contents .wp-block-group li + li,
	.backnumber .publishing-contents .sub-box li + li {
		margin-left: 0;
	}
	.publishing-contents .btn-subscription {
		margin-top: 10vw;
	}
	.publishing-contents .notes li {
		font-size: 2.9334vw;
	}
	.publishing-contents-detail {
		display: block;
		margin: 0 auto;
		width: 86.6667vw;
		padding: 8vw 0;
	}
	.publishing-contents-detail .publishing-contents-detail-heading {
		display: block;
		margin-bottom: 8vw;
		width: 100%;
	}
	.publishing-contents-detail .publishing-contents-detail-heading h2 {
		font-size: 4.8vw;
		text-align: center;
	}
	.publishing-contents-detail .publishing-contents-detail-data table {}
	.publishing-contents-detail .publishing-contents-detail-data table th,
	.publishing-contents-detail .publishing-contents-detail-data table td {
		padding: 0 0 1em;
		font-size: 3.2vw;
	}
	.publishing-contents-detail .publishing-contents-detail-data table th {
		padding-right: 2em;
	}
}

/* --------------------------------------------------
	.page-other-btnarea
-------------------------------------------------- */
.page-other-btnarea .inner {
	padding-bottom: 200px;
}
.page-other-btnarea .btn-wrap-flex {
	display: flex;
	justify-content: space-between;
	margin: 0 80px;
}
.page-other-btnarea .btn-wrap-flex .notes {
	margin-top: 1em;
}
.page-other-btnarea .btn-wrap-flex .notes li {
	padding-left: 1em;
	text-indent: -1em;
	font-size: 14px;
}
@media screen and (max-width: 1080px) {
	.page-other-btnarea .btn-wrap-flex {
		margin: 0 30px;
	}
}
@media screen and (max-width: 980px) {
	.page-other-btnarea .btn-wrap-flex {
		display: block;
		margin: 0 auto;
		width: 450px;
	}
	.page-other-btnarea .btn-wrap-flex .btn-wrap-flex-child + .btn-wrap-flex-child {
		margin-top: 50px;
	}
}
@media screen and (max-width: 768px) {
	.page-other-btnarea {
		width: 100%;
	}
	.page-other-btnarea .inner {
		padding-bottom: 37.3334vw;
	}
	.page-other-btnarea .btn-wrap-flex {
		width: 86.6667vw;
	}
	.page-other-btnarea .btn-wrap-flex .btn-wrap-flex-child + .btn-wrap-flex-child {
		margin-top: 6.6667vw;
	}
	.page-other-btnarea .btn-wrap-flex .notes,
	.page-other-btnarea .btn-wrap-flex .notes li {
		font-size: 2.9334vw;
	}
}

/* --------------------------------------------------
	.purpose-top
-------------------------------------------------- */
.purpose-top {
	margin-bottom: 200px;
}
.purpose-top-nav {
	display: flex;
	margin: 0 auto;
	max-width: 1400px;
}
.purpose-top-nav li {
	display: flex;
	align-items: end;
	width: 50%;
	height: 500px;
}
.purpose-top-nav li a {
	position: relative;
	display: flex;
	align-items: end;
	width: 100%;
	height: 100%;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.purpose-top-nav li:nth-child(1) a {
	background-image: url("../img/purpose/purpose_top_storage_systems.png");
}
.purpose-top-nav li:nth-child(2) a {
	background-image: url("../img/purpose/purpose_top_library.png");
}
.purpose-top-nav li a:hover {
	opacity: 1;
	text-decoration: none;
}
.purpose-top-nav li a:before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	pointer-events: none;
	border: rgba(253,129,18,0.6) 0 solid;
	transition: .1s linear;
}
.purpose-top-nav li a:hover:before {
	border-width: 4px;
}
.purpose-top-nav li a:after {
	content: '';
	display: block;
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translate(-50%,0);
	width: 22px;
	height: 22px;
	background: url("../img/common/icon_arrow_right_black.svg") no-repeat;
	background-size: contain;
}
.purpose-top-nav li .text-area {
	margin: 0 auto;
	padding: 35px 50px;
	width: 380px;
	height: 194px;
	background-color: #FFF;
	box-sizing: border-box;
}
.purpose-top-nav li h3 {
	font-size: 22px;
	font-weight: 600;
	color: #0c0628;
	text-align: center;
}
.purpose-top-nav li p {
	margin-top: 0.6em;
	font-size: 15px;
	line-height: 1.7;
	color: #0c0628;
}
@media screen and (max-width: 768px) {
	.purpose-top {
		margin-bottom: 42.6667vw;
		width: 100%;
	}
	.purpose-top-nav {
		display: block;
	}
	.purpose-top-nav li {
		display: block;
		width: 100%;
		height: auto;
	}
	.purpose-top-nav li + li {
		margin-top: 13.3334vw;
	}
	.purpose-top-nav li a {
		padding-top: 51.3334vw;
		background-position: center top;
		background-size: 100% auto;
	}
	.purpose-top-nav li a:before {
		display: none;
	}
	.purpose-top-nav li a:after {
		width: 5.0667vw;
		height: 5.0667vw;
	}
	.purpose-top-nav li .text-area {
		padding: 8.6667vw 10vw;
		width: 86.6667vw;
		height: auto;
	}
	.purpose-top-nav li h3 {
		font-size: 5.0667vw;
	}
	.purpose-top-nav li p {
		font-size: 3.7334vw;
	}
}

/* --------------------------------------------------
	.purpose-category-top-nav
	.purpose-category-nav
-------------------------------------------------- */
.purpose-category-top-nav {
	margin-bottom: 335px;
}
.purpose-category-top-nav ul {
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
	margin: 0 auto;
	max-width: 1080px;
}
.purpose-category-top-nav li {
	width: calc( (100% - 120px) / 4 );
	height: 140px;
}
.purpose-category-top-nav li a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	padding-bottom: 20px;
	width: 100%;
	height: 100%;
	background-color: #f6f6f6;
	box-sizing: border-box;
	font-size: 16px;
	font-weight: 500;
	color: #0c0628;
	text-align: center;
}
.purpose-category-top-nav li a:hover {
	opacity: 1;
	text-decoration: none;
}
.purpose-category-top-nav li a:before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	pointer-events: none;
	border: rgba(253,129,18,0.6) 0 solid;
	transition: .1s linear;
}
.purpose-category-top-nav li a:hover:before {
	border-width: 4px;
}
.purpose-category-top-nav li a:after {
	content: '';
	display: block;
	position: absolute;
	left: 50%;
	bottom: 20px;
	transform: translate(-50%,0);
	width: 18px;
	height: 18px;
	background: url("../img/common/icon_arrow_right_black.svg") no-repeat;
	background-size: contain;
}
.purpose-category-nav {
	margin-top: -100px;
	margin-bottom: 80px;
	background-color: #f7f7f7;
}
.purpose-category-nav ul {
	display: flex;
	flex-wrap: wrap;
	margin: 0 auto;
	max-width: 1080px;
}
.purpose-category-nav li {
	width: calc(100% / 4);
	height: 100px;
}
.purpose-category-nav li a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	padding-bottom: 20px;
	width: 100%;
	height: 100%;
	background-color: #f6f6f6;
	box-sizing: border-box;
	font-size: 16px;
	font-weight: 500;
	color: #0c0628;
	line-height: 1.4;
	text-align: center;
}
.purpose-category-nav.library li {
	width: calc(100% / 7);
}
.purpose-category-nav.library li a {
	padding-bottom: 30px;
	font-size: 15px;
}
.purpose-category-nav li.is--active a {
	background-color: #fff;
}
.purpose-category-nav li a:hover {
	opacity: 1;
	text-decoration: none;
}
.purpose-category-nav li a:before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	pointer-events: none;
	border: rgba(253,129,18,0.6) 0 solid;
	transition: .1s linear;
}
.purpose-category-nav li a:hover:before {
	border-width: 4px;
}
.purpose-category-nav li a:after {
	content: '';
	display: block;
	position: absolute;
	left: 50%;
	bottom: 20px;
	transform: translate(-50%,0);
	width: 18px;
	height: 18px;
	background: url("../img/common/icon_arrow_bottom_black.svg") no-repeat;
	background-size: contain;
}
@media screen and (max-width: 1140px) {
	.purpose-category-top-nav ul,
	.purpose-category-nav ul {
		margin: 0 30px;
	}
}
@media screen and (max-width: 768px) {
	.purpose-category-top-nav {
		margin-bottom: 43.3334vw;
		width: 100%;
	}
	.purpose-category-top-nav ul {
		gap: 4vw;
		margin: 0 auto;
		max-width: 86.6667vw;
	}
	.purpose-category-top-nav li {
		width: 41.3334vw;
		height: 25.0667vw;
	}
	.purpose-category-top-nav li a {
		padding-bottom: 3.2vw;
		font-size: 3.4667vw;
	}
	.purpose-category-top-nav li a:before {
		display: none;
	}
	.purpose-category-top-nav li a:after {
		bottom: 3.7334vw;
		width: 3.2vw;
		height: 3.2vw;
	}
	.purpose-category-nav {
		margin-top: -10.6667vw;
		margin-bottom: 10vw;
		width: 100%;
	}
	.purpose-category-nav ul {
		margin: 0 auto;
		max-width: 100vw;
	}
	.purpose-category-nav li {
		height: 17.3334vw;
	}
	.purpose-category-nav li a {
		padding-bottom: 5.0667vw;
		font-size: 2.6667vw;
	}
	.purpose-category-nav.library li {
		width: calc(100% / 4);
	}
	.purpose-category-nav.library li a {
		padding-bottom: 5.0667vw;
		font-size: 2.6667vw;
	}
	.purpose-category-nav li a:before {
		display: none;
	}
	.purpose-category-nav li a:after {
		bottom: 2.1334vw;
		width: 2.9334vw;
		height: 2.9334vw;
	}
}

/* --------------------------------------------------
	.purpose-map
-------------------------------------------------- */
.purpose-map {
	margin-bottom: 335px;
}
.purpose-map .inner {
	max-width: 1080px;
}
.purpose-map h2 {
	margin: 0 auto 75px;
	font-size: 28px;
	font-weight: 600;
}
.purpose-map h3 {
	margin: 0 auto 55px;
	padding: 25px;
	background-color: #f6f6f6;
	box-sizing: border-box;
	font-size: 20px;
	font-weight: 500;
	line-height: 1;
}
.purpose-map h2 + h3 {
	margin-top: -30px;
}
.purpose-map-area {
	position: relative;
}
.storage_systems-map1 .purpose-map-graph {
	margin-left: auto;
	margin-right: -20px;
	width: 786px;
}
.library-map1 .purpose-map-graph {
	margin-left: 327px;
	margin-bottom: 220px;
	padding-top: 115px;
	width: 773px;
}
.library-map2 .purpose-map-graph {
	margin-left: auto;
	margin-bottom: 345px;
	margin-right: 20px;
	padding-top: 115px;
	width: 686px;
}
.purpose-map .map-detail {
	position: absolute;
	left: 20px;
	top: 0;
	padding-bottom: 15px;
	width: 400px;
	background-color: #fff;
	box-shadow: 0 0 5px rgba(54,54,84,0.2);
}
.storage_systems-map1 .map-detail.map-detail-b {
	top: 310px;
}
.storage_systems-map1 .map-detail.map-detail-c {
	top: 620px;
}
.storage_systems-map1 .map-detail.map-detail-d {
	left: 556px;
	top: 620px;
}
.storage_systems-map1 .map-detail.map-detail-e {
	left: 556px;
	top: 910px;
}
.library-map1 .map-detail.map-detail-b {
	left: auto;
	right: 0;
}
.library-map1 .map-detail.map-detail-c {
	top: 290px;
}
.library-map1 .map-detail.map-detail-d {
	top: 687px;
}
.library-map1 .map-detail.map-detail-e {
	top: 976px;
}
.library-map1 .map-detail.map-detail-f {
	left: auto;
	right: 0;
	top: 870px;
}
.library-map2 .map-detail.map-detail-a {
	left: auto;
	right: 0;
}
.library-map2 .map-detail.map-detail-b {
}
.library-map2 .map-detail.map-detail-c {
	top: 290px;
}
.library-map2 .map-detail.map-detail-d {
	top: 581px;
}
.library-map2 .map-detail.map-detail-e {
	top: 974px;
}
.library-map2 .map-detail.map-detail-f {
	left: auto;
	right: 0;
	top: 974px;
}
.purpose-map .map-detail .icon {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2;
	transform: translate(-50%,-50%);
	width: 40px;
	border-radius: 50%;
	box-shadow: 0 0 5px rgba(54,54,84,0.2);
}
.purpose-map .map-detail .text-area {
	padding: 28px 30px 20px 30px;
	box-sizing: border-box;
}
.purpose-map .map-detail .text-area h4 {
	margin-bottom: 0.5em;
	font-size: 16px;
	text-align: center;
}
.purpose-map .map-detail .text-area p {
	font-size: 13px;
	line-height: 1.7;
}
.purpose-map .map-detail .map-detail-flex {
	display: flex;
	margin-bottom: 15px;
}
.purpose-map .map-detail .map-detail-flex .pic-area {
	width: 45%;
}
.purpose-map .map-detail .map-detail-flex .text-area {
	padding: 20px 20px 0 20px;
	width: 55%;
}
.purpose-map .map-detail .pic-area-flex {
	display: flex;
	margin: 0 20px 5px;
	gap: 13px;
}
.purpose-map .map-detail .btn-lineup,
.purpose-map .map-detail .btn-detail {
	margin: 10px auto 0;
	max-width: 210px;
	height: 40px;
	font-size: 12px;
	line-height: 1;
}
.purpose-map .map-detail .btn-lineup strong,
.purpose-map .map-detail .btn-detail strong {
	display: block;
	margin-bottom: 0.1em;
	font-size: 14px;
	font-weight: 400;
}
.purpose-map .map-detail .btn-lineup a,
.purpose-map .map-detail .btn-detail a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	background-color: #f7f7f7;
	border: #e2e2e2 1px solid;
	border-radius: 4px;
	text-align: center;
}
.purpose-map .map-detail .btn-detail a {
	background-color: #fff;
}
.purpose-map .map-detail .btn-lineup a:hover,
.purpose-map .map-detail .btn-detail a:hover {
	text-decoration: none;
}
.purpose-map .map-detail .btn-lineup a:before,
.purpose-map .map-detail .btn-lineup a:after,
.purpose-map .map-detail .btn-detail a:before,
.purpose-map .map-detail .btn-detail a:after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	transform: translate(0,-50%);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.purpose-map .map-detail .btn-lineup a:before {
	left: 12px;
	width: 16px;
	height: 14px;
	background-image: url("../img/common/icon_products_lineup.svg");
}
.purpose-map .map-detail .btn-lineup a:after,
.purpose-map .map-detail .btn-detail a:after {
	right: 12px;
	width: 6px;
	height: 11px;
	background-image: url("../img/common/icon_category_nav_arrow1.svg");
}
.purpose-map .map-detail .btn-detail a:before {
	left: 16px;
	width: 10px;
	height: 13px;
	background-image: url("../img/common/icon_products_detail.svg");
}
@media screen and (max-width: 1140px) {
	.purpose-map .inner {
		margin-left: 30px;
		margin-right: 30px;
	}
}
@media screen and (max-width: 1020px) {
	.purpose-map .purpose-map-area + h3 {
		margin-top: 150px;
	}
	.storage_systems-map1 .purpose-map-graph {
		margin-bottom: -200px;
		width: 100%;
	}
	.library-map1 .purpose-map-graph {
		margin-bottom: -100px;
		margin-left: 0;
		padding-top: 0;
		width: 100%;
	}
	.library-map2 .purpose-map-graph {
		margin-bottom: 0;
		margin-left: 0;
		padding-top: 0;
		width: 100%;
	}
	.purpose-map .map-detail-wrap {
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
		gap: 50px;
	}
	.purpose-map .map-detail {
		position: relative;
		left: 0 !important;
		top: 0 !important;
	}
}
@media screen and (max-width: 768px) {
	.purpose-map {
		margin-bottom: 43.3334vw;
		width: 100%;
	}
	.purpose-map .inner {
		margin: 0 auto;
	}
	.purpose-map h2 {
		margin: 0 auto 4.6667vw;
		max-width: 86.6667vw;
		font-size: 5.0667vw;
	}
	.purpose-map h3 {
		margin: 8vw auto 5.3334vw;
		padding: 4vw 2.6667vw;
		max-width: 86.6667vw;
		font-size: 4vw;
	}
	.purpose-map h2 + h3 {
		margin-top: 8vw;
	}
	.purpose-map .purpose-map-area + h3 {
		margin-top: 13.3334vw;
	}
	.storage_systems-map1 .purpose-map-graph {
		margin-bottom: -18.9334vw;
	}
	.library-map1 .purpose-map-graph {
		margin-bottom: -12.6667vw;
	}
	.library-map2 .purpose-map-graph {
		margin-bottom: 8vw;
		margin-right: auto;
	}
	.purpose-map .map-detail-wrap {
		gap: 9.3334vw;
	}
	.purpose-map .map-detail {
		padding-bottom: 2.6667vw;
		width: 86.6667vw;
	}
	.purpose-map .map-detail .icon {
		width: 8.8vw;
	}
	.purpose-map .map-detail .text-area {
		padding: 5.3334vw 3.3334vw 3.3334vw 3.3334vw;
	}
	.purpose-map .map-detail .text-area h4 {
		font-size: 3.7334vw;
	}
	.purpose-map .map-detail .text-area p {
		font-size: 3.2vw;
	}
	.purpose-map .map-detail .map-detail-flex {
		margin-bottom: 2.6667vw;
	}
	.purpose-map .map-detail .map-detail-flex .pic-area {
		width: 40%;
	}
	.purpose-map .map-detail .map-detail-flex .text-area {
		padding: 4.6667vw 4vw 0 4vw;
		width: 60%;
	}
	.purpose-map .map-detail .pic-area-flex {
		margin: 0 3.3334vw;
		gap: 2.6667vw;
	}
	.purpose-map .map-detail .btn-lineup,
	.purpose-map .map-detail .btn-detail {
		margin-top: 2.6667vw;
		max-width: 41.3334vw;
		height: 10.6667vw;
		font-size: 2.9334vw;
	}
	.purpose-map .map-detail .btn-lineup strong,
	.purpose-map .map-detail .btn-detail strong {
		font-size: 3.0667vw;
	}
	.purpose-map .map-detail .btn-lineup a,
	.purpose-map .map-detail .btn-detail a {
		border-radius: 0.8vw;
	}
	.purpose-map .map-detail .btn-lineup a:before {
		left: 2.4vw;
		width: 3.7334vw;
		height: 3.2vw;
	}
	.purpose-map .map-detail .btn-lineup a:after,
	.purpose-map .map-detail .btn-detail a:after {
		right: 2.1334vw;
		width: 1.3334vw;
		height: 2.1334vw;
	}
	.purpose-map .map-detail .btn-detail a:before {
		left: 3.2vw;
		width: 2.6667vw;
		height: 3.4667vw;
	}
}

/* --------------------------------------------------
	.purpose-contents
-------------------------------------------------- */
.purpose-contents {
	margin-bottom: 200px;
}
.purpose-contents .inner {
	max-width: 1080px;
}
.purpose-contents h2 {
	margin: 0 auto 75px;
	font-size: 36px;
	font-weight: 600;
	text-align: center;
}
.purpose-contents h2:after {
	content: '';
	display: block;
	margin: 8px auto 0;
	width: 3em;
	height: 4px;
	border-radius: 2px;
	background-color: #fd8112;
}
.purpose-introduction-flex {
	margin: 0 auto 100px;
	padding: 75px 0;
	background-color: #f9f9f9;
}
.purpose-contents .inner + .purpose-introduction-flex {
	margin-top: 245px;
}
.purpose-introduction-flex .inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 30px;
}
.purpose-introduction-flex .inner div:nth-child(1) {
	width: 36.1112%;
}
.purpose-introduction-flex .inner div:nth-child(2) {
	width: 63.8889%;
}
.purpose-introduction-flex h3 {
	font-size: 24px;
	font-weight: 500;
	line-height: 1.75;
}
.purpose-introduction-flex h3 small {
	font-size: 75%;
}
.purpose-introduction-flex p {
	font-size: 18px;
	line-height: 2.37;
}
.purpose-introduction-flex p strong {
	font-size: 20px;
	font-weight: 700;
}
.purpose-contents > * > h4,
.purpose-contents .sub-box-grid-child h4 {
	position: relative;
	margin-bottom: 50px;
	padding-left: 26px;
	font-size: 20px;
	font-weight: 600;
	line-height: 1.7;
}
.purpose-contents h4.line1 {
	padding-top: 0.6em;
	padding-bottom: 0.6em;
}
.purpose-contents > * > h4:before,
.purpose-contents .sub-box-grid-child h4:before {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	display: block;
	width: 7px;
	height: 90%;
	transform: translate(0,-50%);
	border-left: #000 2px solid;
	border-right: #000 1px solid;
	box-sizing: border-box;
}
.purpose-contents .inner + .inner {
	margin-top: 100px;
}
.purpose-contents .inner > * + h4 {
	margin-top: 100px;
}
.purpose-contents .lead {
	margin-top: -0.5em;
	margin-bottom: 2em;
	font-size: 18px;
	font-weight: 500;
}
.purpose-contents .lead2 {
	margin-top: -0.5em;
	font-size: 15px;
	line-height: 1.8;
	font-weight: 400;
}
.purpose-contents .sub-box-flex {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.purpose-contents .sub-box-flex + .sub-box-flex {
	margin-top: 40px;
}
.purpose-contents .sub-box-flex .pic-area {
	width: 46.2963%;
}
.purpose-contents .sub-box-flex .text-area {
	width: 49.0741%;
}
.purpose-contents .sub-box-flex .text-area h5 {
	margin-bottom: 0.5em;
	font-size: 17px;
	font-weight: 600;
}
.purpose-contents .sub-box-flex .text-area p + h5 {
	margin-top: 1.5em;
}
.purpose-contents .sub-box-flex .text-area p {
	font-size: 15px;
	line-height: 1.86;
}
.purpose-contents .sub-box-flex .text-area p + p {
	margin-top: 1.5em;
}
.purpose-contents .sub-box-flex .text-area div + p {
	margin-top: 0.8em;
}
.purpose-contents .sub-box-flex .text-area p strong {
	font-size: 17px;
	font-weight: 700;
}
.purpose-contents .sub-box-flex .text-area div {
	margin-top: 56px;
}
.purpose-contents .sub-box-flex .text-area ul li {
	padding-left: 0.8em;
	text-indent: -0.8em;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.75;
}
.purpose-contents .sub-box-flex .text-area ul li + li {
	margin-top: 0.4em;
}
.purpose-contents .btn-detail {
	margin-top: 35px;
	width: 300px;
	height: 60px;
	font-size: 14px;
	line-height: 1;
}
.purpose-contents .btn-detail.center {
	margin-left: auto;
	margin-right: auto;
}
.purpose-contents .btn-detail a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	background-color: #fff;
	border: #e2e2e2 1px solid;
	border-radius: 4px;
}
.purpose-contents .btn-detail a:hover {
	text-decoration: none;
}
.purpose-contents .btn-detail a:before,
.purpose-contents .btn-detail a:after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	transform: translate(0,-50%);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.purpose-contents .btn-detail a:after {
	right: 22px;
	width: 6px;
	height: 11px;
	background-image: url("../img/common/icon_category_nav_arrow1.svg");
}
.purpose-contents .btn-detail a:before {
	left: 26px;
	width: 10px;
	height: 13px;
	background-image: url("../img/common/icon_products_detail.svg");
}
.purpose-contents .table-flex {
	display: flex;
	margin-top: 55px;
}
.purpose-contents .table-flex div {
	width: 50%;
}
.purpose-contents .table-flex table {
	width: 100%;
}
.purpose-contents .table-flex table th,
.purpose-contents .table-flex table td {
	padding: 12px;
	box-sizing: border-box;
	border: #dbdbdb 1px solid;
	font-size: 15px;
	font-weight: 400;
}
.purpose-contents .table-flex table th {
	width: 150px;
}
.purpose-contents .table-flex div:nth-child(2) table th,
.purpose-contents .table-flex div:nth-child(2) table td {
	border-left: none;
}
.purpose-contents .notes {
	margin-top: 1em;
	font-size: 15px;
}
.purpose-contents .notes li {
	display: inline;
	font-size: 15px;
	font-weight: 300;
}
.purpose-contents .notes li + li {
	margin-left: 1em;
}
.purpose-contents .notes2 {}
.purpose-contents .notes2 li {
	padding-left: 1.8em;
	text-indent: -1.8em;
	font-size: 12px;
	font-weight: 300;
	line-height: 1.5;
}
.purpose-contents .notes2 li + li {
	margin-top: 0.4em;
}
.purpose-contents .pic-area-col4 {
	display: flex;
	gap: 30px;
}
.purpose-contents .purpose-movie {
	margin: 45px auto 0;
	max-width: 560px;
	aspect-ratio: 16 / 9;
}
.purpose-contents .purpose-movie iframe {
	width: 100%;
	height: 100%;
}
.purpose-contents .sub-box-grid-col4 {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	gap: 40px 26px;
	margin: 40px auto 0;
}
.purpose-contents .sub-box-grid-col3 {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 40px 26px;
	margin: 40px 0 0;
	width: 74.4445%;
}
.purpose-contents .sub-box-grid-col2 {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 40px 26px;
	margin: 40px 0 0;
}
.purpose-contents .sub-box-grid-col2-2 {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0 66px;
}
.purpose-contents .sub-box-grid-child.grid-col-span2 {
	grid-column: span 2;
}
.purpose-contents .sub-box-grid-child.grid-col-span3 {
	grid-column: span 3;
}
.purpose-contents .sub-box-grid-child.grid-child-flex {
	display: flex;
	gap: 26px;
}
.purpose-contents .sub-box-grid-child.grid-child-flex div {
	width: 47.4384%;
}
.purpose-contents .sub-box-grid-child.grid-child-flex p {
	margin-top: 130px;
}
.purpose-contents .sub-box-grid-child h6 {
	margin-top: 0.2em;
	font-size: 18px;
	font-weight: 600;
	color: #fb6404;
}
.purpose-contents .sub-box-grid-child h6.blk {
	margin-top: 0.6em;
	font-weight: 500;
	color: #0c0628;
}
.purpose-contents .sub-box-grid-child h6.line2 {
	height: 3.2em;
}
.purpose-contents .sub-box-grid-child h6 span {
	display: inline-block;
	margin-right: 0.5em;
	width: 25px;
	height: 25px;
	background-color: #fb6404;
	border-radius: 50%;
	font-size: 18px;
	font-family: "Roboto", sans-serif;
	font-weight: 700;
	font-optical-sizing: auto;
	line-height: 25px;
	color: #fff;
	text-align: center;
}
.purpose-contents .sub-box-grid-child h6.indent {
	padding-left: 34px;
	text-indent: -34px;
}
.purpose-contents .sub-box-grid-child h6.indent span {
	padding-left: 0;
	text-indent: 0;
}
.purpose-contents .sub-box-grid-child p {
	margin-top: 0.8em;
	font-size: 15px;
	line-height: 1.8;
	color: #373544;
}
.purpose-contents .sub-box-grid-child h6 + p {
	margin-top: 0.3em;
}
.purpose-contents .sub-box-grid-child div + p {
	margin-top: 0.8em;
}
.purpose-contents .sub-box-grid-child p.label {
	margin-bottom: 0.6em;
	font-size: 18px;
	font-weight: 600;
	color: #0c0628;
}
.purpose-contents .sub-box-grid-child dl {
	display: flex;
	margin-bottom: 40px;
}
.purpose-contents .sub-box-grid-child dt {
	flex-shrink: 0;
	width: 125px;
	font-size: 18px;
	font-weight: 500;
}
.purpose-contents .sub-box-grid-child dd {
	font-size: 15px;
	line-height: 1.8;
}
.purpose-contents .sub-box-grid-child .caption {
	margin-bottom: 0.5em;
	font-size: 14px;
	font-weight: 700;
}
.purpose-contents .general-box-list {
	grid-template-columns: 1fr 1fr 1fr 1fr;
}
.purpose-contents .general-box-list li:nth-child(n-4) {
	margin-top: 0;
}
.purpose-contents .library-trackrecord-movie {
	display: none;
}
.purpose-contents .btn-library-trackrecord {
	margin: 80px auto 0;
	width: 300px;
	height: 80px;
}
.purpose-contents .btn-library-trackrecord a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	border: #e2e2e2 1px solid;
	border-radius: 4px;
	box-sizing: border-box;
	font-size: 15px;
	text-align: center;
}
.purpose-contents .btn-library-trackrecord a:after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	transform: translate(0,-50%);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	right: 20px;
	width: 6px;
	height: 11px;
	background-image: url("../img/common/icon_category_nav_arrow1.svg");
}
.purpose-contents .btn-library-trackrecord a:hover {
	text-decoration: none;
}
.purpose-contents .flow-box-flex {
	display: flex;
	align-items: center;
	gap: 75px;
}
.purpose-contents .flow-box-flex div:nth-child(1) {
	flex-shrink: 0;
	width: 50.926%;
}
.purpose-contents .renewal-3 {
	margin-bottom: 100px;
}
.purpose-contents .btn-renewal {
	margin-top: 35px;
	width: 300px;
	height: 60px;
	font-size: 14px;
	line-height: 1;
}
.purpose-contents .btn-renewal a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	background-color: #0c0628;
	border: #0c0628 1px solid;
	border-radius: 4px;
	box-sizing: border-box;
	color: #fff;
}
.purpose-contents .btn-renewal a:hover {
	text-decoration: none;
}
.purpose-contents .btn-renewal a:after {
	content: '';
	display: block;
	position: absolute;
	right: 22px;
	top: 50%;
	transform: translate(0,-50%);
	width: 6px;
	height: 11px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	background-image: url("../img/common/icon_arrow_right2_white.svg");
}
.purpose-contents .tel-area {
	margin-top: 30px;
	margin-bottom: 20px;
}
.purpose-contents .tel-area ul {
	display: flex;
	gap: 45px;
}
.purpose-contents .tel-area li {
	font-size: 24px;
	font-weight: 700;
	font-family: "Roboto", sans-serif;
	line-height: 1;
}
.purpose-contents .tel-area li span {
	padding: 0 10px;
	color: #fd8112;
}
.purpose-contents .tel-area li img {
	vertical-align: baseline;
}
.purpose-contents .tel-area li .icon-tel {
	width: 14px;
}
.purpose-contents .tel-area li .icon-fax {
	width: 21px;
}
@media screen and (max-width: 1140px) {
	.purpose-contents .inner {
		margin-left: 30px;
		margin-right: 30px;
	}
}
@media screen and (max-width: 768px) {
	.purpose-contents {
		margin-bottom: 48vw;
		width: 100%;
	}
	.purpose-contents .inner {
		margin: 0 auto;
		max-width: 86.6667vw;
	}
	.purpose-contents h2 {
		margin-bottom: 7.4667vw;
		font-size: 5.6001vw;
	}
	.purpose-contents h2:after {
		margin-top: 1.3334vw;
/*		width: 2.6667vw;*/
		height: 0.5334vw;
		border-radius: 0.2667vw;
	}
	.purpose-introduction-flex {
		margin-bottom: 13.3334vw;
		padding: 11.3334vw 0;
	}
	.purpose-contents .inner + .purpose-introduction-flex {
		margin-top: 26.6667vw;
	}
	.purpose-introduction-flex .inner {
		display: block;
	}
	.purpose-introduction-flex .inner div:nth-child(1) {
		width: 100%;
	}
	.purpose-introduction-flex .inner div:nth-child(2) {
		width: 100%;
	}
	.purpose-introduction-flex h3 {
		margin-bottom: 1em;
		font-size: 5.0667vw;
	}
	.purpose-introduction-flex p {
		font-size: 4vw;
		line-height: 1.8;
	}
	.purpose-introduction-flex p strong {
		font-size: 4.2667vw;
	}
	.purpose-contents > * > h4,
	.purpose-contents .sub-box-grid-child h4 {
		margin-bottom: 6.6667vw;
		padding-left: 5.6001vw;
		font-size: 4.2667vw;
	}
	.purpose-contents > * > h4:before,
	.purpose-contents .sub-box-grid-child h4:before {
		width: 2.2667vw;
		border-left: #000 0.6667vw solid;
		border-right: #000 0.3334vw solid;
	}
	.purpose-contents .inner + .inner {
		margin-top: 13.3334vw;
	}
	.purpose-contents .inner > * + h4 {
		margin-top: 13.3334vw;
	}
	.purpose-contents .inner h4.mt-sp {
		margin-top: 6.6667vw;
	}
	.purpose-contents .lead {
		margin-bottom: 1.5em;
		font-size: 4vw;
	}
	.purpose-contents .lead2 {
		font-size: 3.4667vw;
		line-height: 1.75;
	}
	.purpose-contents .sub-box-flex + .sub-box-flex {
		margin-top: 5.3334vw;
	}
	.purpose-contents .sub-box-flex .pic-area {
		width: 100%;
	}
	.purpose-contents .sub-box-flex .text-area {
		margin-top: 6vw;
		width: 100%;
	}
	.purpose-contents .sub-box-flex .text-area h5 {
		margin-bottom: 0.2em;
		font-size: 4vw;
	}
	.purpose-contents .sub-box-flex .text-area p {
		font-size: 3.4667vw;
	}
	.purpose-contents .sub-box-flex .text-area p strong {
		font-size: 3.7334vw;
	}
	.purpose-contents .sub-box-flex .text-area div {
		margin-top: 5.3334vw;
	}
	.purpose-contents .sub-box-flex .text-area ul li {
		font-size: 3.7334vw;
		line-height: 1.4;
	}
	.purpose-contents .btn-detail {
		margin-top: 6.1334vw;
		width: 100%;
		height: 16vw;
		font-size: 2.9334vw;
	}
	.purpose-contents .btn-detail a {
		border-radius: 0.8vw;
	}
	.purpose-contents .btn-detail a:hover {
		text-decoration: none;
	}
	.purpose-contents .btn-detail a:before,
	.purpose-contents .btn-detail a:after {
		content: '';
		display: block;
		position: absolute;
		top: 50%;
		transform: translate(0,-50%);
		background-repeat: no-repeat;
		background-position: center center;
		background-size: contain;
	}
	.purpose-contents .btn-detail a:after {
		right: 5.8667vw;
		width: 1.3334vw;
		height: 2.1334vw;
	}
	.purpose-contents .btn-detail a:before {
		left: 5.3334vw;
		width: 3.7334vw;
		height: 3.2vw;
	}
	.purpose-contents .table-flex {
		display: block;
		margin-top: 5.3334vw;
	}
	.purpose-contents .table-flex div {
		width: 100%;
	}
	.purpose-contents .table-flex table th,
	.purpose-contents .table-flex table td {
		padding: 2vw;
		font-size: 3.2vw;
	}
	.purpose-contents .table-flex table th {
		width: 20vw;
	}
	.purpose-contents .table-flex div:nth-child(2) table th,
	.purpose-contents .table-flex div:nth-child(2) table td {
		border-left: #dbdbdb 1px solid;
	}
	.purpose-contents .table-flex div:nth-child(2) table tr:first-child th,
	.purpose-contents .table-flex div:nth-child(2) table tr:first-child td {
		border-top: none;
	}
	.purpose-contents .notes {
		font-size: 2.6667vw;
	}
	.purpose-contents .notes li {
		display: list-item;
		font-size: 2.6667vw;
	}
	.purpose-contents .notes li + li {
		margin-left: 0;
	}
	.purpose-contents .notes2 li {
		font-size: 2.6667vw;
	}
	.purpose-contents .pic-area-col4 {
		flex-wrap: wrap;
		gap: 4vw;
	}
	.purpose-contents .pic-area-col4 div {
		width: calc((100% - 4vw) / 2);
	}
	.purpose-contents .purpose-movie {
		margin-top: 6.6667vw;
	}
	.purpose-contents .sub-box-grid-col4 {
		grid-template-columns: 1fr 1fr;
		gap: 6.6667vw 4vw;
		margin: 6.6667vw auto 0;
	}
	.purpose-contents .sub-box-grid-col3 {
		grid-template-columns: 1fr 1fr;
		gap: 6.6667vw 4vw;
		margin: 6.6667vw 0 0;
		width: 100%;
	}
	.purpose-contents .sub-box-grid-col2 {
		grid-template-columns: 1fr;
		gap: 5.3334vw 4vw;
		margin: 6.6667vw 0 0;
	}
	.purpose-contents .sub-box-grid-col2-2 {
		grid-template-columns: 1fr;
		gap: 6.6667vw 0;
	}
	.purpose-contents .sub-box-grid-child.grid-col-span2 {
		grid-column: span 2;
	}
	.purpose-contents .sub-box-grid-child.grid-col-span2-sp {
		grid-column: span 2;
	}
	.purpose-contents .sub-box-grid-child.grid-col-span3 {
		grid-column: span 2;
	}
	.purpose-contents .sub-box-grid-child.grid-child-flex {
		gap: 4vw;
	}
	.purpose-contents .sub-box-grid-child.grid-child-flex p {
		margin-top: 29.3334vw;
	}
	.purpose-contents .sub-box-grid-child h6 {
		margin-top: 0.4em;
		font-size: 4vw;
		line-height: 1.2;
	}
	.purpose-contents .sub-box-grid-child h6.line2 {
		height: auto;
	}
	.purpose-contents .sub-box-grid-child h6 span {
		width: 4.8vw;
		height: 4.8vw;
		font-size: 3.2vw;
		line-height: 4.8vw;
	}
	.purpose-contents .sub-box-grid-child h6.indent {
		padding-left: 6.4vw;
		text-indent: -6.4vw;
	}
	.purpose-contents .sub-box-grid-child p {
		font-size: 3.4667vw;
		line-height: 1.6;
	}
	.purpose-contents .sub-box-grid-child p.label {
		font-size: 4vw;
	}
	.purpose-contents .sub-box-grid-child dl {
		display: block;
		margin-bottom: 4.6667vw;
	}
	.purpose-contents .sub-box-grid-child dt {
		width: auto;
		font-size: 4vw;
	}
	.purpose-contents .sub-box-grid-child dd {
		font-size: 3.4667vw;
		line-height: 1.6;
	}
	.purpose-contents .sub-box-grid-child .caption {
		font-size: 3.2vw;
	}
	.purpose-contents .general-box-list {
		grid-template-columns: 1fr 1fr;
	}
	.purpose-contents .general-box-list li:nth-child(n+3) {
		margin-top: 9.3334vw;
	}
	.purpose-contents .btn-library-trackrecord {
		margin-top: 13.3334vw;
		width: 86.6667vw;
		height: 18.6667vw;
	}
	.purpose-contents .btn-library-trackrecord a {
		border-radius: 0.8vw;
		font-size: 3.2vw;
	}
	.purpose-contents .btn-library-trackrecord a:after {
		right: 5.8667vw;
		width: 1.3334vw;
		height: 2.1334vw;
	}
	.purpose-contents .flow-box-flex {
		display: block;
	}
	.purpose-contents .flow-box-flex div:nth-child(1) {
		margin-bottom: 5.3334vw;
		width: 100%;
	}
	.purpose-contents .renewal-3 {
		margin-bottom: 13.3334vw;
	}
	.purpose-contents .btn-renewal {
		margin-top: 0;
		width: 86.6667vw;
		height: 16vw;
		font-size: 3.4667vw;
	}
	.purpose-contents .btn-renewal a {
		border-radius: 0.8vw;
	}
	.purpose-contents .btn-renewal a:after {
		right: 5.8667vw;
		width: 1.3334vw;
		height: 2.1334vw;
	}
	.purpose-contents .tel-area {
		margin-top: 5.3334vw;
		margin-bottom: 2.6667vw;
	}
	.purpose-contents .tel-area ul {
		display: block;
	}
	.purpose-contents .tel-area li {
		font-size: 5.6001vw;
	}
	.purpose-contents .tel-area li + li {
		margin-top: 1em;
	}
	.purpose-contents .tel-area li span {
		padding: 0 2.6667vw;
	}
	.purpose-contents .tel-area li img {
		vertical-align: baseline;
	}
	.purpose-contents .tel-area li .icon-tel {
		margin-right: 1.7334vw;
		width: 3.3334vw;
	}
	.purpose-contents .tel-area li .icon-fax {
		width: 5.0667vw;
	}
}

/* --------------------------------------------------
	.page-company
-------------------------------------------------- */
.company-top {
	margin: 0 auto 200px;
	max-width: 1080px;
}
.company-top .general-box-list li div:first-child {
	aspect-ratio: auto;
}
.company-top .btn-publishing {
	margin: 190px auto 0;
}
@media screen and (max-width: 1140px) {
	.company-top {
		margin-left: 30px;
		margin-right: 30px;
	}
}
@media screen and (max-width: 768px) {
	.company-top {
		margin: 0 auto 42.6667vw;
		max-width: 86.6667vw;
	}
	.company-top .general-box-list {
		grid-template-columns: 1fr;
	}
	.company-top .general-box-list li:nth-child(n+2) {
		margin-top: 9.3334vw;
	}
	.company-top .btn-publishing {
		margin-top: 18.6667vw;
	}
}

/* --------------------------------------------------
	.page-message
-------------------------------------------------- */
.message-contents {
	margin-bottom: 200px;
}
.message-contents .message-flex {
	display: flex;
	gap: 0 26px;
	margin: 0 auto;
	max-width: 900px;
}
.message-contents .message-flex p {
	margin-top: -0.3em;
	font-size: 15px;
}
.message-contents .message-flex p + p {
	margin-top: 30px;
}
.message-contents .message-flex p.signature {
	margin-top: 60px;
	font-size: 20px;
	font-weight: 600;
	text-align: right;
}
.message-contents .message-flex .pic-area {
	flex-shrink: 0;
	order: 1;
	width: 34.4445%;
}
@media screen and (max-width: 960px) {
	.message-contents .message-flex {
		margin-left: 30px;
		margin-right: 30px;
	}
}
@media screen and (max-width: 768px) {
	.message-contents {
		margin-bottom: 40vw;
		width: 100%;
	}
	.message-contents .message-flex {
		display: block;
		margin-left: auto;
		margin-right: auto;
		max-width: 86.6667vw;
	}
	.message-contents .message-flex p {
		margin-top: 0;
		font-size: 3.4667vw;
	}
	.message-contents .message-flex p + p {
		margin-top: 6.6667vw;
	}
	.message-contents .message-flex p.signature {
		margin-top: 10.6667vw;
		font-size: 3.8667vw;
	}
	.message-contents .message-flex .pic-area {
		margin: 10.6667vw auto 0;
		width: 66.6667vw;
	}
}

/* --------------------------------------------------
	.page-outline
-------------------------------------------------- */
.outline-contents {
	margin-bottom: 200px;
}
.outline-contents .inner {
	max-width: 900px;
}
.outline-contents .lastupdate {
	font-size: 15px;
	font-weight: 500;
	text-align: right;
}
.outline-contents .link {
	margin-top: 0.5em;
	text-align: right;
}
.outline-contents .link a {
	position: relative;
	padding-right: 25px;
	font-size: 14px;
	line-height: 1;
}
.outline-contents .link a:after {
	content: '';
	display: block;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translate(0,-50%);
	width: 17px;
	height: 17px;
	background: url("../img/common/icon_arrow_right_black.svg") no-repeat;
	background-size: contain;
}
.outline-contents h2 {
	margin-top: 50px;
	margin-bottom: 0.2em;
	font-size: 20px;
	font-weight: 500;
}
.link + .general-table {
	margin-top: 25px;
}
.general-table .icon-iso {
	width: 170px;
	text-align: center;
}
.general-table .icon-iso img {
	width: 67px;
}
@media screen and (max-width: 960px) {
	.outline-contents .inner {
		margin-left: 30px;
		margin-right: 30px;
	}
}
@media screen and (max-width: 768px) {
	.outline-contents {
		margin-bottom: 42.6667vw;
		width: 100%;
	}
	.outline-contents .inner {
		margin-left: auto;
		margin-right: auto;
		max-width: 86.6667vw;
	}
	.outline-contents .lastupdate {
		font-size: 3.2vw;
	}
	.outline-contents .link a {
		padding-right: 4vw;
		font-size: 2.9334vw;
	}
	.outline-contents .link a:after {
		width: 3.2vw;
		height: 3.2vw;
	}
	.outline-contents h2 {
		margin-top: 10.6667vw;
		font-size: 4.4vw;
	}
	.link + .general-table {
		margin-top: 5.3334vw;
	}
	.outline-table .icon-iso {
		width: 16.5334vw;
	}
	.outline-table .icon-iso img {
		width: 13.3334vw;
	}
}

/* --------------------------------------------------
	.page-relation
-------------------------------------------------- */
.relation-contents {
	margin-bottom: 200px;
}
.relation-contents .inner {
	max-width: 900px;
}
.relation-contents h2 {
	margin-top: 50px;
	margin-bottom: 0.2em;
	font-size: 20px;
	font-weight: 500;
}
.relation-contents td p strong {
	display: inline-block;
	margin-bottom: 0.3em;
	font-size: 20px;
	font-weight: 500;
}
.relation-contents td p {
	font-size: 16px;
	font-weight: 300;
}
.relation-contents td p span {
	display: inline-block;
	margin-right: 0.5em;
	padding: 0.3em 1.5em 0.4em;
	background-color: #949494;
	font-size: 14px;
	line-height: 1;
	color: #fff;
}
.relation-contents .relation-flex {
	display: flex;
	align-items: center;
	gap: 20px;
}
.relation-contents .relation-flex .btn-area {
	margin-left: auto;
}
.relation-contents .relation-flex p {
	font-size: 14px;
	line-height: 2;
}
.relation-contents .btn-area li {
	margin-top: 0.3em;
	text-align: right;
}
.relation-contents .btn-area li a {
	position: relative;
	padding-right: 25px;
	font-size: 14px;
	line-height: 1;
}
.relation-contents .btn-area li a:after {
	content: '';
	display: block;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translate(0,-50%);
	width: 17px;
	height: 17px;
	background: url("../img/common/icon_arrow_right_black.svg") no-repeat;
	background-size: contain;
}
@media screen and (max-width: 960px) {
	.relation-contents .inner {
		margin-left: 30px;
		margin-right: 30px;
	}
}
@media screen and (max-width: 768px) {
	.relation-contents {
		margin-bottom: 42.6667vw;
		width: 100%;
	}
	.relation-contents .inner {
		margin-left: auto;
		margin-right: auto;
		max-width: 86.6667vw;
	}
	.relation-contents h2 {
		margin-top: 10.6667vw;
		font-size: 4.4vw;
	}
	.relation-contents .general-table {
		width: 100%;
	}
	.relation-contents .general-table th,
	.relation-contents .general-table td {
		display: block;
		width: auto;
	}
	.relation-contents .general-table th,
	.relation-contents .general-table td {
		padding: 2vw 2vw 2vw 3vw;
	}
	.relation-contents td p strong {
		font-size: 3.7334vw;
	}
	.relation-contents td p {
		font-size: 2.9334vw;
	}
	.relation-contents td p span {
		margin-right: 0.3em;
		padding: 0.3em 0.5em 0.4em;
		font-size: 2.6667vw;
	}
	.relation-contents .relation-flex {
		gap: 1vw;
	}
	.relation-contents .relation-flex p {
		font-size: 2.9334vw;
		line-height: 1.65;
	}
	.relation-contents .btn-area li {
		font-size: 2.9334vw;
	}
	.relation-contents .btn-area li a {
		padding-right: 4vw;
		font-size: 2.9334vw;
		letter-spacing: -0.05em;
		white-space: nowrap;
	}
	.relation-contents .btn-area li a:after {
		width: 3.2vw;
		height: 3.2vw;
	}
}

/* --------------------------------------------------
	.page-business
-------------------------------------------------- */
.business-nav {
	margin-bottom: 200px;
}
.business-nav .inner {
	max-width: 1400px;
}
.business-nav p {
	margin-bottom: 120px;
	font-size: 18px;
	line-height: 2.1;
	text-align: center;
}
.business-nav ul {
	display: flex;
}
.business-nav ul li {
	width: calc(100% / 3);
	height: 465px;
}
.business-nav ul li a {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}
.business-nav ul li:nth-child(1) a {
	background-image: url("../img/company/business_nav_1_pc.png");
}
.business-nav ul li:nth-child(2) a {
	background-image: url("../img/company/business_nav_2_pc.png");
}
.business-nav ul li:nth-child(3) a {
	background-image: url("../img/company/business_nav_3_pc.png");
}
.business-nav ul li a:hover {
	text-decoration: none;
	opacity: 1;
}
.business-nav ul li div {
	position: absolute;
	right: 0;
	bottom: 0;
	display: flex;
	align-items: center;
	width: 300px;
	height: 120px;
	background-color: #FFF;
}
.business-nav ul li div:before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	pointer-events: none;
	border: rgba(253,129,18,0.6) 0 solid;
	transition: .1s linear;
}
.business-nav ul li a:hover div:before {
	border-width: 4px;
}
.business-nav ul li div:after {
	content: '';
	display: block;
	position: absolute;
	right: 14px;
	bottom: 14px;
	width: 24px;
	height: 24px;
	background: url("../img/common/icon_arrow_bottom_black.svg") no-repeat;
	background-size: contain;
}
.business-nav ul li .num {
	position: absolute;
	right: 0;
	top: 0;
	transform: translate(-30px,-100%);
	font-size: 120px;
	font-family: "Roboto", sans-serif;
	font-weight: 700;
	line-height: 1;
	color: #fff;
}
.business-nav ul li .subject {
	margin: 0 30px;
	font-size: 20px;
	font-weight: 700;
}
.business-contents.business1 {
	margin-bottom: 210px;
}
.business-contents.business2 {
	margin-bottom: 210px;
}
.business-contents.business3 {
	margin-bottom: 370px;
}
.business-contents-heading {
	margin-bottom: 90px;
	height: 420px;
	background-repeat: no-repeat;
	background-position: center top;
}
.business1 .business-contents-heading {
	background-image: url("../img/company/business_1_kv_pc.png");
}
.business2 .business-contents-heading {
	background-image: url("../img/company/business_2_kv_pc.png");
}
.business3 .business-contents-heading {
	background-image: url("../img/company/business_3_kv_pc.png");
}
.business-contents-heading .inner {
	height: 100%;
}
.business-contents-heading .text-area {
	position: absolute;
	left: 0;
	bottom: 0;
	padding: 45px 0 0 40px;
	min-width: 490px;
	background-color: #fff;
	box-sizing: border-box;
}
.business-contents-heading .text-area:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	transform: translate(-100%, 0);
	display: block;
	width: 100%;
	height: 100%;
	background-color: #fff;
}
.business-contents-heading .text-area .num {
	position: absolute;
	left: 40px;
	top: 0;
	transform: translate(0,-126%);
	font-size: 170px;
	font-family: "Roboto", sans-serif;
	font-weight: 700;
	line-height: 1;
	color: #fff;
}
.business-contents-heading .text-area h2 {
	font-size: 30px;
}
.business-contents-products,
.business-contents-case {
	margin: 0 auto 90px;
	max-width: 1080px;
}
.business-contents-products h3,
.business-contents-case h3 {
	font-size: 20px;
	font-weight: 700;
	margin-bottom: 1em;
}
.business-contents-products .general-box-list,
.business-contents-case .general-box-list {
	grid-template-columns: 1fr 1fr 1fr 1fr;
}
.business-contents-products .general-box-list + .accd-body,
.business-contents-case .general-box-list + .accd-body {
	margin-top: 40px;
}
.business-contents-products .general-box-list li:nth-child(4),
.business-contents-case .general-box-list li:nth-child(4) {
	margin-top: 0;
}
.business-contents-products .general-box-list li:nth-child(n+5),
.business-contents-case .general-box-list li:nth-child(n+5) {
	margin-top: 40px;
}
.business-contents-case .btn-more {
	margin: 50px auto 0;
	width: 200px;
	height: 80px;
	background: url("../img/company/business_arrow_bottom.svg") no-repeat center center;
	background-size: contain;
	cursor: pointer;
	font-size: 14px;
	font-weight: 600;
	text-align: center;
}
.business-contents-case .is--active .btn-more {
	background-image: url("../img/company/business_arrow_top.svg");
}
.business-contents-case .btn-more span:last-child {
	position: absolute;
	left: 0;
	bottom: 0;
	display: none;
	width: 100%;
}
.business-contents-case .is--active .btn-more span:first-child {
	display: none;
}
.business-contents-case .is--active .btn-more span:last-child {
	display: block;
	text-align: center;
}
.business-contents-market {
	display: flex;
	align-items: center;
	margin: 0 auto 90px;
	padding: 40px 0;
	max-width: 1080px;
	background-color: #f7f7f7;
	border-radius: 20px;
	box-sizing: border-box;
}
.business-contents-market div:nth-child(1) {
	width: 30.5556%;
	text-align: center;
}
.business-contents-market h3 {
	font-size: 20px;
	font-weight: 700;
}
.business-contents-market ul {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	flex-wrap: wrap;
	gap: 0 50px;
	height: 120px;
}
.business-contents-market li {
	font-size: 18px;
	font-weight: 500;
	line-height: 2.1;
}
@media screen and (max-width: 1140px) {
	.business-contents-intro {
		margin-left: 30px;
		margin-right: 30px;
	}
	.business-contents-products,
	.business-contents-case {
		margin-left: 30px;
		margin-right: 30px;
	}
	.business-contents-market {
		margin-left: 30px;
		margin-right: 30px;
	}
}
@media screen and (max-width: 900px) {
	.business-nav ul li div {
		width: 100%;
	}
	.business-contents-products .general-box-list li:nth-child(3),
	.business-contents-case .general-box-list li:nth-child(3) {
		margin-top: 0;
	}
	.business-contents-products .general-box-list li:nth-child(n+5),
	.business-contents-case .general-box-list li:nth-child(n+5) {
		margin-top: 60px;
	}
}
@media screen and (max-width: 768px) {
	.business-nav {
		margin-bottom: 26.6667vw;
		width: 100%;
	}
	.business-nav p {
		margin: 0 auto 15.4667vw;
		width: 86.6667vw;
		font-size: 4vw;
		line-height: 1.8;
		text-align: left;
	}
	.business-nav ul {
		flex-wrap: wrap;
	}
	.business-nav ul li {
		width: 100%;
		height: 46.6667vw;
	}
	.business-nav ul li:nth-child(1) a {
		background-image: url("../img/company/business_nav_1_sp.png");
	}
	.business-nav ul li:nth-child(2) a {
		background-image: url("../img/company/business_nav_2_sp.png");
	}
	.business-nav ul li:nth-child(3) a {
		background-image: url("../img/company/business_nav_3_sp.png");
	}
	.business-nav ul li div {
		width: 64.2667vw;
		height: 25.7334vw;
	}
	.business-nav ul li div:before {
		display: none;
	}
	.business-nav ul li div:after {
		right: 2.6667vw;
		bottom: 2.6667vw;
		width: 5.2vw;
		height: 5.2vw;
	}
	.business-nav ul li .num {
		left: 0;
		right: auto;
		top: 50%;
		transform: translate(-200%,-50%);
		font-size: 20vw;
	}
	.business-nav ul li .subject {
		margin: 0 6.1334vw;
		font-size: 4.8vw;
	}
	.business-contents {
		width: 100%;
	}
	.business-contents.business1 {
		margin-bottom: 29.3334vw;
	}
	.business-contents.business2 {
		margin-bottom: 29.3334vw;
	}
	.business-contents.business3 {
		margin-bottom: 41.3334vw;
	}
	.business-contents-heading {
		margin-bottom: 13.3334vw;
		height: 80vw;
		background-size: cover;
	}
	.business1 .business-contents-heading {
		background-image: url("../img/company/business_1_kv_sp.png");
	}
	.business2 .business-contents-heading {
		background-image: url("../img/company/business_2_kv_sp.png");
	}
	.business3 .business-contents-heading {
		background-image: url("../img/company/business_3_kv_sp.png");
	}
	.business-contents-heading .text-area {
		padding: 6.6667vw 0 0 6vw;
		min-width: 80vw;
	}
	.business-contents-heading .text-area:before {
		display: none;
	}
	.business-contents-heading .text-area .num {
		left: 6vw;
		transform: translate(0,-97%);
		font-size: 33.3334vw;
	}
	.business-contents-heading .text-area h2 {
		font-size: 5.6001vw;
	}
	.business-contents-products,
	.business-contents-case {
		margin: 0 auto 13.3334vw;
		max-width: 86.6667vw;
	}
	.business-contents-products h3,
	.business-contents-case h3 {
		font-size: 4.5334vw;
	}
	.business-contents-products .general-box-list,
	.business-contents-case .general-box-list {
		grid-template-columns: 1fr 1fr;
	}
	.business-contents-products .general-box-list + .accd-body,
	.business-contents-case .general-box-list + .accd-body {
		margin-top: 5.3334vw;
	}
	.business-contents-products .general-box-list li:nth-child(n+3),
	.business-contents-case .general-box-list li:nth-child(n+3) {
		margin-top: 5.3334vw;
	}
	.business-contents-case .btn-more {
		margin-top: 6.6667vw;
		width: 32vw;
		height: 12.4vw;
		font-size: 2.6667vw;
	}
	.business-contents-market {
		flex-wrap: wrap;
		margin: 0 auto 12vw;
		padding: 6.6667vw;
		max-width: 86.6667vw;
		border-radius: 2.6667vw;
	}
	.business-contents-market div:nth-child(1) {
		width: 100%;
		text-align: left;
	}
	.business-contents-market h3 {
		margin-bottom: 0.5em;
		font-size: 4.5334vw;
	}
	.business-contents-market ul {
		display: block;
		width: 100%;
		height: auto;
	}
	.business-contents-market li {
		display: inline-block;
		min-width: 49%;
		font-size: 3.7334vw;
		line-height: 1.85;
	}
}

/* --------------------------------------------------
	.page-workflow
-------------------------------------------------- */
.workflow-contents .inner {
	max-width: 1080px;
}
.workflow-contents.workflow1,
.workflow-contents.workflow2 {
	margin-bottom: 140px;
}
.workflow-contents.workflow3 {
	margin-bottom: 200px;
}
.workflow-contents.workflow4 {
	margin-bottom: 240px;
}
.workflow-contents.workflow4 .inner {
	padding-top: 105px;
}
.workflow-contents.workflow4 .inner:after {
	content: '';
	position: absolute;
	left: 640px;
	top: 0;
	display: block;
	width: 600px;
	height: 420px;
	background-image: url("../img/company/workflow_4_pic.png");
	background-position: center top;
	background-repeat: no-repeat;
	background-size: auto;
}
.workflow-contents-heading {
	position: relative;
	display: flex;
	margin-bottom: 60px;
}
.workflow-contents-heading .num {
	margin-top: -0.09em;
	width: 145px;
	transform: translate(-10px,0);
	font-size: 207px;
	font-family: "Roboto", sans-serif;
	font-weight: 700;
	line-height: 1;
	color: rgba(0,0,0,0.1);
}
.workflow-contents-heading h2 {
	margin-bottom: 0.6em;
	font-size: 25px;
	font-weight: 700;
}
.workflow-contents-heading p {
	font-size: 16px;
	line-height: 2.1;
}
.workflow4 .workflow-contents-heading {
	position: relative;
	height: 315px;
}
.workflow-contents-graph {
	margin: 0 auto;
	padding-left: 50px;
	max-width: 833px;
}
.workflow-contents-flow {}
.workflow-contents-flow > div {
	position: relative;
	padding: 50px 85px 50px 0;
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
}
.workflow-contents-flow h3 {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translate(0,-50%);
	width: calc(100% - 685px);
	font-size: 28px;
	font-weight: 700;
	line-height: 1.78;
	color: #fff;
	text-align: center;
}
.workflow-contents-flow-sales {
	background-image: url("../img/company/workflow_3_1_pc.png");
}
.workflow-contents-flow-development {
	background-image: url("../img/company/workflow_3_2_pc.png");
}
.workflow-contents-flow-construction {
	background-image: url("../img/company/workflow_3_3_pc.png");
}
.workflow-contents-flow-box {
	position: relative;
	margin-left: auto;
	padding: 35px 50px 35px 110px;
	max-width: 600px;
	background-color: #fff;
	box-sizing: border-box;
}
.workflow-contents-flow-box + .workflow-contents-flow-box {
	margin-top: 50px;
}
.workflow-contents-flow-box.flow1 {
	z-index: 7;
}
.workflow-contents-flow-box.flow2 {
	z-index: 6;
}
.workflow-contents-flow-box.flow3 {
	z-index: 5;
}
.workflow-contents-flow-box.flow4 {
	z-index: 4;
}
.workflow-contents-flow-box.flow5 {
	z-index: 3;
}
.workflow-contents-flow-box.flow6 {
	z-index: 2;
}
.workflow-contents-flow-box.flow7 {
	z-index: 1;
}
.workflow-contents-flow-box:after {
	content: '';
	position: absolute;
	right: 35px;
	top: 0;
	transform: translate(0,-100%);
	width: 24px;
	height: 50px;
	background-image: url("../img/company/workflow_arrow.svg");
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: 100% auto;
}
.workflow-contents-flow-box.flow4:after {
	height: 100px;
}
.workflow-contents-flow-box.flow6:after {
	height: 500px;
}
.workflow-contents-flow-box.flow5 {
	margin-right: 150px;
	max-width: 450px;
}
.workflow-contents-flow-box.flow1:after {
	display: none;
}
.workflow-contents-flow-box .num {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translate(0,-50%);
	width: 110px;
	font-size: 70px;
	font-family: "Roboto", sans-serif;
	font-weight: 700;
	line-height: 1;
	color: rgba(0,0,0,0.1);
	text-align: center;
}
.workflow-contents-flow-box h4 {
	margin-bottom: 0.5em;
	font-size: 19px;
	font-weight: 600;
}
.workflow-contents-flow-box p {
	font-size: 15px;
}
@media screen and (max-width: 1140px) {
	.workflow-contents .inner {
		margin-left: 30px;
		margin-right: 30px;
	}
	.workflow-contents-flow > div {
		padding-right: 50px;
	}
	.workflow-contents-flow h3 {
		width: calc(100% - 650px);
	}
}
@media screen and (max-width: 950px) {
	.workflow-contents-flow h3 {
		position: relative;
		top: 0;
		transform: translate(0,0);
		margin: 0 auto 50px;
		width: calc(100% - 100px);
	}
	.workflow-contents-flow h3 br {
		display: none;
	}
	.workflow-contents-flow-box.flow4:after {
		height: 220px;
	}
}
@media screen and (max-width: 768px) {
	.workflow-contents {
		width: 100%;
	}
	.workflow-contents .inner {
		margin: 0 auto;
		max-width: 86.6667vw;
	}
	.workflow-contents.workflow1,
	.workflow-contents.workflow2 {
		margin-bottom: 18.6667vw;
	}
	.workflow-contents.workflow3 {
		margin-bottom: 18.6667vw;
	}
	.workflow-contents.workflow4 {
		margin-bottom: 25.3334vw;
	}
	.workflow-contents.workflow4 .inner {
		padding-top: 0;
	}
	.workflow-contents.workflow4 .inner:after {
		position: relative;
		left: 0;
		top: 0;
		width: 86.6667vw;
		height: 60.6667vw;
		background-size: cover;
	}
	.workflow-contents-heading {
		display: block;
		margin-bottom: 5.3334vw;
	}
	.workflow-contents-heading .num {
		position: absolute;
		left: 0;
		top: 0;
		width: 13.3334vw;
		transform: translate(-1.3334vw,-2%);
		font-size: 21.3334vw;
	}
	.workflow-contents-heading h2 {
		margin-left: 13.3334vw;
		margin-bottom: 1em;
		font-size: 5.0667vw;
	}
	.workflow-contents-heading p {
		font-size: 4vw;
		line-height: 1.8;
	}
	.workflow4 .workflow-contents-heading {
		height: auto;
	}
	.workflow-contents-graph {
		padding-left: 0;
		max-width: 86.6667vw;
	}
	.workflow-contents-flow {
		margin-left: -6.6667vw;
		width: 100vw;
	}
	.workflow-contents-flow > div {
		padding: 10.1334vw 0 9.3334vw;
	}
	.workflow-contents-flow h3 {
		position: relative;
		top: 0;
		transform: translate(0,0);
		margin: 0 auto 8.6667vw;
		width: 86.6667vw;
		font-size: 5.0667vw;
		line-height: 1;
		text-align: left;
	}
	.workflow-contents-flow-sales {
		background-image: url("../img/company/workflow_3_1_sp.png");
	}
	.workflow-contents-flow-development {
		background-image: url("../img/company/workflow_3_2_sp.png");
	}
	.workflow-contents-flow-construction {
		background-image: url("../img/company/workflow_3_3_sp.png");
	}
	.workflow-contents-flow-box {
		margin-left: 6.6667vw;
		padding: 8vw 6vw;
		max-width: 86.6667vw;
	}
	.workflow-contents-flow-box + .workflow-contents-flow-box {
		margin-top: 13.3334vw;
	}
	.workflow-contents-flow-box:after {
		right: 3.7334vw;
		width: 5.8667vw;
		height: 13.3334vw;
	}
	.workflow-contents-flow-box.flow4:after {
		height: 34.6667vw;
	}
	.workflow-contents-flow-box.flow6:after {
		height: 110vw;
	}
	.workflow-contents-flow-box.flow5 {
		margin-right: auto;
		max-width: 73.3334vw;
	}
	.workflow-contents-flow-box .num {
		position: absolute;
		left: 5.3334vw;
		top: 5.3334vw;
		transform: translate(0,0);
		width: 9.6vw;
		font-size: 13.3334vw;
		text-align: left;
	}
	.workflow-contents-flow-box h4 {
		margin-left: 9.6vw;
		margin-bottom: 1em;
		font-size: 4.8vw;
	}
	.workflow-contents-flow-box p {
		font-size: 3.4667vw;
	}
}

/* --------------------------------------------------
	.page-history
-------------------------------------------------- */
.history-contents {
	margin-bottom: 100px;
}
.history-contents .inner {
	max-width: 1080px;
}
.history-contents .accd-head {
	height: 150px;
	background-color: #0c0628;
	cursor: pointer;
}
.history-contents .accd-head .inner {
	height: 100%;
}
.history-contents .accd-head .inner:before {
	content: '';
	position: absolute;
	right: 155px;
	top: 0;
	display: block;
	width: 357px;
	height: 150px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.history-contents .history-1 .accd-head .inner:before {
	background-image: url("../img/company/history_1_pc.png");
}
.history-contents .history-2 .accd-head .inner:before {
	background-image: url("../img/company/history_2_pc.png");
}
.history-contents .history-3 .accd-head .inner:before {
	background-image: url("../img/company/history_3_pc.png");
}
.history-contents .history-4 .accd-head .inner:before {
	background-image: url("../img/company/history_4_pc.png");
}
.history-contents .history-5 .accd-head .inner:before {
	background-image: url("../img/company/history_5_pc.png");
}
.history-contents .accd-head h2 {
	position: relative;
	top: 50%;
	transform: translate(0,-50%);
	display: flex;
	align-items: center;
	color: #fff;
}
.history-contents .accd-head h2 .period-name {
	order: 1;
	font-size: 24px;
	font-weight: 300;
}
.history-contents .accd-head h2 .period-num {
	width: 220px;
	font-size: 47px;
	font-weight: 100;
	font-family: "Roboto", sans-serif;
	letter-spacing: -0.02em;
	text-align: center;
}
.history-contents .accd-head .accd-btn {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translate(0,-50%);
	width: 30px;
	height: 30px;
}
.history-contents .accd-head .accd-btn span {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
	width: 100%;
	border-top: #fff 1px solid;
	transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1);
}
.history-contents .accd-head .accd-btn span:last-child {
	transform: translate(-50%,-50%) rotate(90deg);
}
.history-contents .accd-head.is--active .accd-btn span:last-child {
	transform: translate(-50%,-50%);
}
.history-contents .history-box {
	background-color: #fff;
}
.history-contents .history-box:nth-child(odd) {
	background-color: #f7f7f7;
}
/*
.history-contents .history-3 .history-box:nth-child(odd),
.history-contents .history-4 .history-box:nth-child(odd) {
	background-color: #fff;
}
.history-contents .history-3 .history-box:nth-child(even),
.history-contents .history-4 .history-box:nth-child(even) {
	background-color: #f7f7f7;
}
*/
.history-contents .history-box .history-box-inner {
	display: flex;
	align-items: center;
	margin: 0 auto;
	max-width: 1000px;
}
.history-contents .history-box .year {
	flex-shrink: 0;
	padding: 45px 0;
	width: 180px;
	box-sizing: border-box;
	font-size: 47px;
	font-family: "Roboto", sans-serif;
	font-weight: 100;
	line-height: 1;
	color: #0c0628;
	text-align: center;
}
.history-contents .history-box .history-box-contents {
	display: flex;
	align-items: center;
	width: 100%;
}
.history-contents .history-box .text-area {
	padding: 43px 50px 43px 0;
}
.history-contents .history-box .text-area p,
.history-contents .history-box .text-area li {
	font-size: 15px;
	line-height: 1.75;
}
.history-contents .history-box .text-area li {
	padding-left: 0.5em;
	text-indent: -0.5em;
}
.history-contents .history-box .text-area span {
	border-bottom: #fd8112 1px solid;
}
.history-contents .history-box .text-area .icon-vibrationcontrol {
	margin-right: 4px;
	width: 28px;
	transform: translate(0,40%);
}
.history-contents .history-box .pic-area {
	margin-left: auto;
	flex-shrink: 0;
	width: 300px;
	overflow: hidden;
	text-align: center;
}
.history-contents .history-box .pic-area.h150 {
	height: 150px;
}
.history-contents .history-box .pic-area.h150 img {
	position: relative;
	top: 50%;
	transform: translate(0,-50%);
}
.history-contents .history-box .pic-area .w135 {
	width: 135px;
}
.history-contents .history-box .pic-area .w125 {
	width: 125px;
}
.history-contents .history-box .pic-area .w162 {
	width: 162px;
}
.history-contents .history-box .pic-area .w103 {
	width: 103px;
}
.next100th-contents {
	height: 500px;
	background-image: url("../img/company/history_next_pc.png");
	background-repeat: no-repeat;
	background-position: center center;
}
.next100th-contents {
	margin-bottom: 200px;
}
.next100th-contents .inner {
	display: flex;
	align-items: center;
	max-width: 1000px;
	height: 100%;
}
.next100th-contents .inner h2 {
	margin-left: 35px;
	color: #fff;
}
.next100th-contents .inner h2 .en {
	display: block;
	font-size: 68px;
	font-weight: 700;
	font-family: "Roboto", sans-serif;
	line-height: 1;
}
.next100th-contents .inner h2 .ja {
	display: block;
	margin-top: 0.7em;
	font-size: 36px;
	font-weight: 700;
	line-height: 1;
}
.next100th-contents .inner p {
	margin-left: 150px;
	font-size: 20px;
	font-weight: 600;
	line-height: 2.1;
	color: #fff;
}
@media screen and (max-width: 1140px) {
	.history-contents .inner {
		margin-left: 30px;
		margin-right: 30px;
	}
}
@media screen and (max-width: 1000px) {
	.history-contents .accd-head .inner:before {
		right: 0;
	}
	.next100th-contents .inner p {
		margin-left: 50px;
	}
}
@media screen and (max-width: 768px) {
	.history-contents {
		margin-bottom: 13.3334vw;
		width: 100%;
	}
	.history-contents .inner {
		margin: 0 auto;
	}
	.history-contents .history-contents-wrap + .history-contents-wrap {
		margin-top: 0.5334vw;
	}
	.history-contents .accd-head {
		height: 26.6667vw;
	}
	.history-contents .accd-head .inner:before {
		right: 8.2667vw;
		width: 46.8001vw;
		height: 26.6667vw;
	}
	.history-contents .history-1 .accd-head .inner:before {
		background-image: url("../img/company/history_1_sp.png");
	}
	.history-contents .history-2 .accd-head .inner:before {
		background-image: url("../img/company/history_2_sp.png");
	}
	.history-contents .history-3 .accd-head .inner:before {
		background-image: url("../img/company/history_3_sp.png");
	}
	.history-contents .history-4 .accd-head .inner:before {
		background-image: url("../img/company/history_4_sp.png");
	}
	.history-contents .history-5 .accd-head .inner:before {
		background-image: url("../img/company/history_5_sp.png");
	}
	.history-contents .accd-head h2 {
		margin-left: 4.5334vw;
		flex-wrap: wrap;
	}
	.history-contents .accd-head h2 .period-name {
		display: block;
		order: 1;
		margin-bottom: 1em;
		width: 100%;
		font-size: 3.6vw;
		line-height: 1;
	}
	.history-contents .accd-head h2 .period-num {
		display: block;
		order: 2;
		width: 100%;
		font-size: 7.2vw;
		line-height: 1;
		text-align: left;
	}
	.history-contents .accd-head .accd-btn {
		right: 5.3334vw;
		width: 4vw;
		height: 4vw;
	}
	.history-contents .history-box .history-box-inner {
		display: block;
	}
	.history-contents .history-box .year {
		padding: 7.2vw 6.6667vw 5.6001vw;
		width: 100%;
		font-size: 8vw;
		text-align: left;
	}
	.history-contents .history-box .history-box-contents {
		align-items: start;
	}
	.history-contents .history-box .text-area {
		padding: 0 4vw 6.6667vw 6.6667vw;
	}
	.history-contents .history-box .text-area p,
	.history-contents .history-box .text-area li {
		font-size: 3.4667vw;
	}
	.history-contents .history-box .text-area .icon-vibrationcontrol {
		margin-right: 0.8vw;
		width: 6vw;
		transform: translate(0,45%);
	}
	.history-contents .history-box .pic-area {
		width: 40%;
	}
	.history-contents .history-box .pic-area.h150 {
		height: auto;
	}
	.history-contents .history-box .pic-area.h150 img {
		position: static;
		top: 0;
		transform: none;
	}
	.history-contents .history-box .pic-area .w135,
	.history-contents .history-box .pic-area .w125,
	.history-contents .history-box .pic-area .w162,
	.history-contents .history-box .pic-area .w103 {
		width: 100%;
	}
	.next100th-contents {
		width: 100%;
		height: 106.6667vw;
		background-image: url("../img/company/history_next_sp.png");
		background-size: cover;
	}
	.next100th-contents {
		margin-bottom: 42.6667vw;
	}
	.next100th-contents .inner {
		display: block;
		padding-top: 25.3334vw;
	}
	.next100th-contents .inner h2 {
		margin-left: 9.3334vw;
		color: #fff;
	}
	.next100th-contents .inner h2 .en {
		font-size: 9.0667vw;
	}
	.next100th-contents .inner h2 .ja {
		font-size: 4.8vw;
	}
	.next100th-contents .inner p {
		margin-top: 2em;
		margin-left: 9.3334vw;
		font-size: 3.7334vw;
		line-height: 1.9;
	}
}

/* --------------------------------------------------
	.page-environment
-------------------------------------------------- */
.quality-contents {
	margin-bottom: 200px;
}
.quality-contents .inner {
	max-width: 1080px;
}
.quality-contents-factory {
	margin-bottom: 100px;
}
.quality-contents-factory h3 {
	margin-bottom: 1em;
	font-size: 18px;
	font-weight: 700;
	line-height: 1;
}
.quality-contents-factory h3 span {
	display: inline-block;
	padding: 0.5em 1em;
	background-color: #f6f6f6;
	border-radius: 20px;
}
.quality-contents-factory-flex {
	display: flex;
	gap: 10px;
}
.quality-contents-factory-flex > div:first-child {
	width: 68.0556%;
}
.quality-contents-factory-flex > div:last-child {
	margin-left: auto;
	width: 31.0186%;
}
.quality-contents-factory-flex table {
	margin-top: 15px;
}
.quality-contents-factory-flex table th,
.quality-contents-factory-flex table td {
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	text-align: left;
}
.quality-contents-factory-flex table th {
	width: 6em;
}
.quality-contents-factory-flex table tr:not(:last-child) td {
	padding-bottom: 10px;
}
.quality-contents-factory-flex figcaption {
	margin-top: 15px;
	font-size: 16px;
	font-weight: 600;
}
.quality-contents-kashiwa {
	position: relative;
	margin-top: 50px;
	padding-top: 60px;
}
.quality-contents-kashiwa .anchor {
	position: absolute;
	top: 0;
}
.quality-contents-kashiwa h4 {
	margin-top: 0;
	font-size: 17px;
	font-weight: 600;
}
.quality-contents-kashiwa .text1 {
	margin-top: 1em;
	margin-right: 250px;
	font-size: 16px;
	line-height: 1.85;
}
.quality-contents-kashiwa .text2 {
	margin-top: 1em;
	font-size: 14px;
	line-height: 1.7;
}
.quality-contents-kashiwa .pic1 {
	position: absolute;
	right: 0;
	top: 0;
	width: 204px;
}
.quality-contents-kashiwa .pic2 {
	margin-top: 70px;
}
.environment-contents {
	margin-bottom: 100px;
}
.environment-contents .inner {
	max-width: 1080px;
}
@media screen and (max-width: 1140px) {
	.quality-contents .inner {
		margin-left: 30px;
		margin-right: 30px;
	}
	.environment-contents .inner {
		margin-left: 30px;
		margin-right: 30px;
	}
}
@media screen and (max-width: 768px) {
	.quality-contents {
		margin-bottom: 26.6667vw;
		width: 100%;
	}
	.quality-contents .inner {
		margin: 0 auto;
	}
	.quality-contents-factory {
		margin: 0 auto 19.3334vw;
		max-width: 86.6667vw;
	}
	.quality-contents-factory h3 {
		font-size: 3.4667vw;
	}
	.quality-contents-factory h3 span {
		border-radius: 3.7334vw;
	}
	.quality-contents-factory-flex {
		display: block;
	}
	.quality-contents-factory-flex > div:first-child {
		width: 100%;
	}
	.quality-contents-factory-flex > div:last-child {
		margin-top: 6.6667vw;
		margin-left: 0;
		width: 41.3334vw;
	}
	.quality-contents-factory-flex table {
		margin-top: 3.2vw;
	}
	.quality-contents-factory-flex table th,
	.quality-contents-factory-flex table td {
		font-size: 3.2vw;
	}
	.quality-contents-factory-flex table th {
		width: 4em;
	}
	.quality-contents-factory-flex table tr:not(:last-child) td {
		padding-bottom: 1.6vw;
	}
	.quality-contents-factory-flex figcaption {
		margin-top: 1.6vw;
		font-size: 3.2vw;
	}
	.quality-contents-kashiwa {
		margin-top: 6.1334vw;
		padding-top: 0;
	}
	.quality-contents-kashiwa h4 {
		font-size: 4.2667vw;
	}
	.quality-contents-kashiwa .text1 {
		margin-right: 0;
		font-size: 3.7334vw;
	}
	.quality-contents-kashiwa .text2 {
		font-size: 3.2vw;
	}
	.quality-contents-kashiwa .pic-area {
		display: flex;
		margin-top: 6.1334vw;
	}
	.quality-contents-kashiwa .pic1 {
		position: static;
		width: 30vw;
	}
	.quality-contents-kashiwa .pic2 {
		margin-top: 0;
		margin-left: auto;
		width: 55.2vw;
	}
	.environment-contents {
		margin-bottom: 18.6667vw;
		width: 100%;
	}
	.environment-contents .inner {
		margin: 0 auto;
	}
}

/* --------------------------------------------------
	.notes-adobe-acrobat
-------------------------------------------------- */
.notes-adobe-acrobat {
	margin-bottom: 200px;
}
.notes-adobe-acrobat .inner {
	display: flex;
	align-items: center;
	gap: 35px;
	padding: 55px 60px;
	max-width: 1080px;
	background-color: #F4F4F4;
	box-sizing: border-box;
}
.notes-adobe-acrobat .inner div:first-child {
	width: 202px;
}
.notes-adobe-acrobat .inner p {
	font-size: 16px;
	line-height: 1.85;
	color: #0c0628;
}
@media screen and (max-width: 1140px) {
	.notes-adobe-acrobat .inner {
		margin-left: 30px;
		margin-right: 30px;
	}
}
@media screen and (max-width: 768px) {
	.notes-adobe-acrobat {
		margin-bottom: 43.3334vw;
		width: 100%;
	}
	.notes-adobe-acrobat .inner {
		display: block;
		margin: 0 auto;
		padding: 6.6667vw;
		max-width: 86.6667vw;
	}
	.notes-adobe-acrobat .inner div:first-child {
		margin: 0 auto 4.2667vw;
		width: 54.1334vw;
	}
	.notes-adobe-acrobat .inner p {
		font-size: 3.4667vw;
	}
}

/* --------------------------------------------------
	.page-after_service
-------------------------------------------------- */
.ater_service-nav {
	margin-bottom: 130px;
}
.ater_service-nav .inner {
	max-width: 1080px;
}
.ater_service-nav ul {
	display: flex;
	gap: 100px;
}
.ater_service-nav ul li {
	width: 50%;
	height: 100px;
}
.ater_service-nav ul li a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	border: #cecdd4 1px solid;
	box-sizing: border-box;
	font-size: 20px;
	font-weight: 600;
	color: #0c0628;
}
.ater_service-nav ul li a:hover {
	text-decoration: none;
	opacity: 1;
}
.ater_service-nav ul li a:before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	pointer-events: none;
	border: rgba(253,129,18,0.6) 0 solid;
	transition: .1s linear;
}
.ater_service-nav ul li a:hover:before {
	border-width: 4px;
}
.ater_service-nav ul li a:after {
	content: '';
	display: block;
	position: absolute;
	right: 38px;
	top: 50%;
	transform: translate(0,-50%);
	width: 24px;
	height: 24px;
	background: url("../img/common/icon_arrow_bottom_black.svg") no-repeat;
	background-size: contain;
}
.ater_service-contents {}
.ater_service-contents .inner {
	max-width: 1080px;
}
.ater_service-contents .inner > h3 {
	margin-bottom: 32px;
	font-size: 24px;
	font-weight: 700;
	line-height: 1;
	text-align: center;
}
.after_service-table-wrap {
	margin-bottom: 100px;
}
.after_service-table {
	width: 100%;
}
.after_service-table th,
.after_service-table td {
	padding: 16px 10px;
	background-color: #F6F6F6;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.5;
	vertical-align: middle;
	text-align: center;
}
.after_service-table th {
	width: 120px;
	font-weight: 500;
}
.after_service-table td {
	border-left: #fff 5px solid;
}
.after_service-table thead th {
	border-left: #fff 5px solid;
	border-bottom: #fff 5px solid;
}
.after_service-table tr:not(:last-child) th,
.after_service-table tr:not(:last-child) td {
	border-bottom: #fff 5px solid;
}
.after_service-table tbody td {
	background-color: #fff7f0;
}
.after_service-table tbody td:last-child {
	font-weight: 500;
}
.after_service-table tbody td:last-child span {
	display: flex;
	justify-content: center;
	align-items: center;
	min-height: 100px;
}
.after_service-table tbody td .num {
	display: inline-block;
	font-size: 50px;
	line-height: 0.5;
}
.after_service-table tbody td .text {
	display: block;
}
.after_service-table .btn-detail {
	display: block;
	margin: 5px auto 0;
	width: 145px;
	height: 30px;
}
.after_service-table .btn-detail a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	padding-right: 10px;
	width: 100%;
	height: 100%;
	background-color: #0c0628;
	box-sizing: border-box;
	border-radius: 15px;
	font-size: 13px;
	font-weight: 600;
	line-height: 1;
	color: #fff;
}
.after_service-table .btn-detail a:hover {
	text-decoration: none;
	opacity: 1;
}
.after_service-table .btn-detail a:after {
	content: '';
	display: block;
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translate(0,-50%);
	width: 10px;
	height: 5px;
	background: url("../img/common/icon_arrow_bottom2_white.svg") no-repeat;
	background-size: contain;
}
.page-after_service .graph {
	margin-top: 40px;
	max-width: 700px;
}
.page-after_service .graph1 {
	max-width: 630px;
}
.ater_service-contents-merit {
	margin-top: 45px;
	margin-bottom: 100px;
}
.ater_service-contents-merit h4 {
	margin-bottom: 1em;
	font-size: 18px;
	font-weight: 600;
	line-height: 1;
	color: #0c0628;
	text-align: center;
}
.ater_service-contents-merit ol {
	display: flex;
	gap: 20px;
}
.ater_service-contents-merit ol li {
	padding: 0 18px 25px;
	background-color: #f6f6f6;
	box-sizing: border-box;
	width: 25%;
}
.ater_service-contents-merit ol li .num {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 auto 15px;
	width: 50px;
	height: 50px;
	background-color: #fff;
	font-size: 30px;
	font-weight: 700;
	font-family: "Roboto", sans-serif;
	line-height: 1;
	color: #001e8d;
}
.ater_service-contents-merit ol li .icon {
	margin: 0 auto 15px;
	width: 86px;
}
.ater_service-contents-merit ol li h5 {
	font-size: 16px;
	font-weight: 600;
	color: #0c0628;
	text-align: center;
}
.ater_service-contents-merit ol li p {
	margin-top: 1em;
	font-size: 14px;
}
.ater_service-products {
	margin-top: 190px;
	margin-bottom: 125px;
}
.ater_service-products .inner {
	max-width: 1080px;
}
.ater_service-products .inner > h3 {
	margin-bottom: 45px;
	font-size: 24px;
	font-weight: 700;
	line-height: 1;
	text-align: center;
}
.ater_service-contact {
	margin-bottom: 200px;
}
.ater_service-contact .inner {
	padding: 60px;
	max-width: 1080px;
	background-color: #f6f6f6;
	box-sizing: border-box;
}
.ater_service-contact h3 {
	margin-bottom: 1em;
	font-size: 20px;
	font-weight: 600;
}
.ater_service-contact .ater_service-contact-flex {
	display: flex;
	gap: 15px;
}
.ater_service-contact h4 {
	font-size: 17px;
	font-weight: 600;
}
.ater_service-contact dl {
	display: flex;
	gap: 15px;
}
.ater_service-contact dl + dl {
	margin-top: 25px;
}
.ater_service-contact dt span {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 126px;
	height: 30px;
	background-color: #fff;
	border-radius: 15px;
	font-size: 14px;
	font-weight: 600;
	line-height: 1;
}
.ater_service-contact dd {
	font-size: 16px;
	line-height: 1.75;
}
@media screen and (max-width: 1140px) {
	.ater_service-nav .inner {
		margin-left: 30px;
		margin-right: 30px;
	}
	.ater_service-contents .inner {
		margin-left: 30px;
		margin-right: 30px;
	}
	.ater_service-products .inner {
		margin-left: 30px;
		margin-right: 30px;
	}
	.ater_service-contact .inner {
		margin-left: 30px;
		margin-right: 30px;
	}
}
@media screen and (max-width: 900px) {
	.ater_service-nav ul li a {
		padding-right: 40px;
	}
}
@media screen and (max-width: 768px) {
	.ater_service-nav {
		margin-bottom: 18.6667vw;
		width: 100%;
	}
	.ater_service-nav .inner {
		margin: 0 auto;
		width: 86.6667vw;
	}
	.ater_service-nav ul {
		gap: 3.7334vw;
	}
	.ater_service-nav ul li {
		height: 22.6667vw;
	}
	.ater_service-nav ul li a {
		padding-right: 0;
		padding-bottom: 6vw;
		font-size: 3.7334vw;
		line-height: 1.4;
		text-align: center;
	}
	.ater_service-nav ul li a:before {
		display: none;
	}
	.ater_service-nav ul li a:after {
		right: 50%;
		top: 16vw;
		transform: translate(50%,0);
		width: 4vw;
		height: 4vw;
	}
	.ater_service-contents {
		width: 100%;
	}
	.ater_service-contents .inner {
		margin: 0 auto;
		max-width: 86.6667vw;
	}
	.ater_service-contents .inner > h3 {
		margin-bottom: 4vw;
		font-size: 4.8vw;
		text-align: left;
	}
	.after_service-table-wrap {
		margin-bottom: 18.6667vw;
		padding-bottom: 5.3334vw;
		width: 93.3334vw;
		overflow-x: scroll;
	}
	.after_service-table {
		border-right: #fff 6.6667vw solid;
		width: 149.6vw;
	}
	.after_service-table th,
	.after_service-table td {
		padding: 4vw 2.6667vw;
		font-size: 3.6vw;
	}
	.after_service-table th {
		width: 40.8vw;
	}
	.after_service-table td {
		border-left: #fff 0.5334vw solid;
	}
	.after_service-table thead th {
		border-left: #fff 0.5334vw solid;
		border-bottom: #fff 0.5334vw solid;
	}
	.after_service-table tr:not(:last-child) th,
	.after_service-table tr:not(:last-child) td {
		border-bottom: #fff 0.5334vw solid;
	}
	.after_service-table tbody td:last-child span {
		min-height: 24vw;
	}
	.after_service-table tbody td .num {
		font-size: 11.3334vw;
	}
	.after_service-table .btn-detail {
		margin-top: 1.3334vw;
		width: 32.8001vw;
		height: 6.6667vw;
	}
	.after_service-table .btn-detail a {
		padding-right: 3.3334vw;
		border-radius: 3.3334vw;
		font-size: 2.9334vw;
	}
	.after_service-table .btn-detail a:after {
		right: 2.4vw;
		width: 2vw;
		height: 1.0667vw;
	}
	.page-after_service .graph {
		margin-top: 5.3334vw;
		max-width: 86.6667vw;
	}
	.page-after_service .graph1 {
		max-width: 86.6667vw;
	}
	.ater_service-contents-merit {
		margin-top: 10.6667vw;
		margin-bottom: 20vw;
	}
	.ater_service-contents-merit h4 {
		font-size: 4.8vw;
		text-align: left;
	}
	.ater_service-contents-merit ol {
		display: block;
	}
	.ater_service-contents-merit ol li + li {
		margin-top: 4vw;
	}
	.ater_service-contents-merit ol li {
		position: relative;
		padding: 6.6667vw 5.3334vw 6.6667vw 26vw;
		width: 100%;
	}
	.ater_service-contents-merit ol li .num {
		position: absolute;
		left: 8.6667vw;
		top: 0;
		width: 9.3334vw;
		height: 9.3334vw;
		font-size: 5.6001vw;
	}
	.ater_service-contents-merit ol li .icon {
		position: absolute;
		left: 5.3334vw;
		top: 13.0667vw;
		width: 16vw;
	}
	.ater_service-contents-merit ol li h5 {
		font-size: 4.2667vw;
		text-align: left;
	}
	.ater_service-contents-merit ol li p {
		margin-top: 0.5em;
		font-size: 3.4667vw;
	}
	.ater_service-products {
		margin-top: 17.3334vw;
		margin-bottom: 18.6667vw;
		width: 100%;
	}
	.ater_service-products .inner {
		margin: 0 auto;
		max-width: 86.6667vw;
	}
	.ater_service-products .inner > h3 {
		margin-bottom: 2.6667vw;
		font-size: 4.5334vw;
		text-align: left;
	}
	.ater_service-contact {
		margin-bottom: 43.3334vw;
		width: 100%;
	}
	.ater_service-contact .inner {
		margin: 0 auto;
		padding: 8.6667vw 6vw;
		max-width: 86.6667vw;
	}
	.ater_service-contact h3 {
		margin-bottom: 6vw;
		font-size: 4.2667vw;
		line-height: 1.6;
	}
	.ater_service-contact .ater_service-contact-flex {
		display: block;
	}
	.ater_service-contact h4 {
		margin-bottom: 1em;
		font-size: 3.7334vw;
	}
	.ater_service-contact dl {
		display: block;
	}
	.ater_service-contact dl + dl {
		margin-top: 6vw;
	}
	.ater_service-contact dt {
		margin-bottom: 0.5em;
	}
	.ater_service-contact dt span {
		width: 27.7334vw;
		height: 6.6667vw;
		border-radius: 3.3334vw;
		font-size: 3.2vw;
	}
	.ater_service-contact dd {
		font-size: 3.4667vw;
	}
}

/* --------------------------------------------------
	.page-info (sitemp)
-------------------------------------------------- */
.sitemap-contents {
	margin-top: 45px;
	margin-bottom: 160px;
}
.sitemap-contents .inner {
	max-width: 1080px;
}
.sitemap-contents-grid {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	gap: 60px 40px;
}
.sitemap-contents-grid h2,
.sitemap-contents-grid h3 {
	padding-bottom: 0.6em;
	border-bottom: #666 1px solid;
	font-size: 16px;
	font-weight: 600;
}
.sitemap-contents-grid ul {
	margin-top: 1em;
}
.sitemap-contents-grid li {
	font-size: 16px;
}
.sitemap-contents-grid li + li {
	margin-top: 0.6em;
}
@media screen and (max-width: 1140px) {
	.sitemap-contents .inner {
		margin-left: 30px;
		margin-right: 30px;
	}
}
@media screen and (max-width: 900px) {
	.sitemap-contents-grid {
		grid-template-columns: 1fr 1fr 1fr;
	}
}
@media screen and (max-width: 768px) {
	.sitemap-contents {
		margin-top: 6.6667vw;
		margin-bottom: 42.6667vw;
		width: 100%;
	}
	.sitemap-contents .inner {
		margin: 0 auto;
		max-width: 90.6667vw;
	}
	.sitemap-contents-grid {
		grid-template-columns: 1fr 1fr;
		gap: 12vw 4.6667vw;
	}
	.sitemap-contents-grid h2,
	.sitemap-contents-grid h3 {
		font-size: 3.4667vw;
	}
	.sitemap-contents-grid li {
		font-size: 2.8001vw;
	}
	.sitemap-contents-grid li + li {
		margin-top: 1.4em;
	}
}


/* --------------------------------------------------
	.page-cad
-------------------------------------------------- */
.cad-contents {
	padding-top: 80px;
	padding-bottom: 200px;
	background-color: #f3f3f4;
}
.cad-contents .inner {
	max-width: 1080px;
}
.cad-notes-contents h2 {
	margin-bottom: 1.5em;
	font-size: 22px;
	font-weight: 600;
	text-align: center;
}
.cad-notes-contents p {
	margin-bottom: 3em;
	font-size: 15px;
	text-align: center;
}
.cad-notes-contents .cad-text-area {
	margin: 0 auto;
	padding: 45px;
	max-width: 720px;
	background-color: #fff;
	box-sizing: border-box;
}
.cad-notes-contents .cad-text-area p,
.cad-notes-contents .cad-text-area li {
	font-size: 14px;
	line-height: 1.7;
	color: #4c4c4c;
	text-align: left;
}
.cad-notes-contents .cad-text-area p {
	margin-bottom: 1.5em;
}
.cad-notes-contents .cad-text-area ol li {
	padding-left: 1.8em;
	text-indent: -1.8em;
}
.cad-notes-contents .cad-text-area ol li span {
	display: inline-block;
	padding-left: 0;
	text-indent: 0;
	width: 1.8em;
}
.cad-notes-contents .btn-agreement {
	margin: 80px auto 0;
}
.cad-category-kv {
	display: flex;
	align-items: center;
	margin-bottom: 36px;
	padding-left: 50px;
	width: 100%;
	height: 300px;
	background-color: #fff;
	background-repeat: no-repeat;
	background-position: 540px top;
	box-sizing: border-box;
}
.cad-download-flex + .cad-category-kv {
	margin-top: 75px;
}
.cad-category-kv.cosemove {
	background-image: url("../img/cad/cad_cosemove_kv_pc.png");
}
.cad-category-kv.biblio {
	background-image: url("../img/cad/cad_biblio_kv_pc.png");
}
.cad-category-kv.bookshelf {
	background-image: url("../img/cad/cad_bookshelf_kv_pc.png");
}
.cad-category-kv.shelfparts {
	background-image: url("../img/cad/cad_shelfparts_kv_pc.png");
}
.cad-category-kv h2 {
	font-size: 30px;
	font-weight: 700;
	line-height: 1;
}
.cad-download-flex {
	display: flex;
}
.cad-download-flex + .cad-download-flex {
	margin-top: 24px;
	padding-top: 24px;
	border-top: #cecdd4 1px solid;
}
.cad-download-flex div {
	width: 50%;
	box-sizing: border-box;
}
.cad-download-flex div:first-child {
	padding: 18px 20px 16px;
}
.cad-download-flex h3 {
	font-size: 18px;
	font-weight: 600;
	line-height: 1;
}
.cad-download-flex li {
}
.cad-download-flex li + li {
	margin-top: 10px;
}
.cad-download-flex li a {
	position: relative;
	display: block;
	padding: 18px 40px 18px 20px;
	background-color: #FFF;
	font-size: 14px;
	line-height: 1.2;
}
.cad-download-flex li a:after {
	content: '';
	display: block;
	position: absolute;
	right: 16px;
	top: 50%;
	transform: translate(0,-50%);
	width: 22px;
	height: 22px;
	background: url("../img/common/icon_download.svg") no-repeat;
	background-size: contain;
}
@media screen and (max-width: 1140px) {
	.cad-contents .inner {
		margin-left: 30px;
		margin-right: 30px;
	}
}
@media screen and (max-width: 768px) {
	.cad-contents {
		padding-top: 10.6667vw;
		padding-bottom: 40vw;
		width: 100%;
	}
	.cad-contents .inner {
		margin: 0 auto;
		max-width: 86.6667vw;
	}
	.cad-notes-contents h2 {
		margin-bottom: 0.5em;
		font-size: 5.6001vw;
	}
	.cad-notes-contents p {
		margin-bottom: 1.5em;
		font-size: 4vw;
	}
	.cad-notes-contents .cad-text-area {
		padding: 9.3334vw 6.6667vw;
	}
	.cad-notes-contents .cad-text-area p,
	.cad-notes-contents .cad-text-area li {
		font-size: 3.7334vw;
	}
	.cad-notes-contents .btn-agreement {
		margin-top: 13.3334vw;
	}
	.cad-category-kv {
		margin-bottom: 6.9334vw;
		padding-left: 3.7334vw;
		height: 33.3334vw;
		background-position: right top;
		background-size: contain;
	}
	.cad-download-flex + .cad-category-kv {
		margin-top: 17.3334vw;
	}
	.cad-category-kv.cosemove {
		background-image: url("../img/cad/cad_cosemove_kv_sp.png");
	}
	.cad-category-kv.biblio {
		background-image: url("../img/cad/cad_biblio_kv_sp.png");
	}
	.cad-category-kv.bookshelf {
		background-image: url("../img/cad/cad_bookshelf_kv_sp.png");
	}
	.cad-category-kv.shelfparts {
		background-image: url("../img/cad/cad_shelfparts_kv_sp.png");
	}
	.cad-category-kv h2 {
		font-size: 5.3334vw;
	}
	.cad-download-flex {
		display: block;
	}
	.cad-download-flex + .cad-download-flex {
		margin-top: 7.7334vw;
		padding-top: 0;
		border-top: none;
	}
	.cad-download-flex div {
		width: 100%;
	}
	.cad-download-flex div:first-child {
		margin-bottom: 4.8vw;
		padding: 0;
	}
	.cad-download-flex h3 {
		font-size: 4.2667vw;
	}
	.cad-download-flex li + li {
		margin-top: 10px;
	}
	.cad-download-flex li a {
		padding: 4vw 8vw 4vw 4vw;
		font-size: 3.4667vw;
	}
	.cad-download-flex li a:after {
		right: 2.5334vw;
		width: 4.8vw;
		height: 4.8vw;
	}
}

/* --------------------------------------------------
	.swiper-navigation
-------------------------------------------------- */
.swiper-navigation {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 55px;
}
.swiper-navigation .swiper-button-prev,
.swiper-navigation .swiper-button-next {
	position: static;
	margin-top: 0;
	width: 9px;
	height: 16px;
	color: #223843;
}
.swiper-navigation .swiper-button-prev:after,
.swiper-navigation .swiper-button-next:after {
	font-size: 20px;
}
.swiper-navigation .swiper-pagination {
	position: static;
	font-size: 20px;
	font-family: "Roboto", sans-serif;
	font-weight: 500;
	line-height: 1;
	color: #0c0628;
}
.swiper-navigation .swiper-pagination-fraction {
	width: auto;
}
@media screen and (max-width: 768px) {
	.swiper-navigation {
		gap: 12.6667vw;
	}
	.swiper-navigation .swiper-button-prev,
	.swiper-navigation .swiper-button-next {
		width: 1.8667vw;
		height: 3.2vw;
	}
	.swiper-navigation .swiper-button-prev:after,
	.swiper-navigation .swiper-button-next:after {
		font-size: 3.4667vw;
	}
	.swiper-navigation .swiper-pagination {
		font-size: 3.4667vw;
	}
}

/* --------------------------------------------------
	.solution-heading
-------------------------------------------------- */
.solution-heading {
	padding: 100px 0;
	background-color: #f7f7f7;
	background-position: center bottom;
	background-repeat: no-repeat;
}
.solution-heading.library {
	background-image: url("../img/solution/solution_library_slide_bg_pc.png");
}
.solution-heading.logistics {
	padding: 0;
}
.solution-heading .inner {
	display: flex;
	align-items: center;
	max-width: 1080px;
	height: 320px;
}
.solution-heading.logistics .inner {
	height: 350px;
}
.solution-heading.logistics .inner:after {
	content: '';
	position: absolute;
	left: 500px;
	top: 0;
	display: block;
	width: 746px;
	height: 350px;
	background-position: center top;
	background-repeat: no-repeat;
	background-size: cover;
}
.solution-heading.logistics .inner:after {
	background-image: url("../img/solution/solution_logistics_kv.png");
}
.solution-heading .text-area h1 {
	font-size: 30px;
	font-weight: 700;
}
.solution-heading .text-area .lead {
	margin-top: 0.8em;
	font-size: 20px;
	font-weight: 600;
}
.solution-heading .text-area .text {
	margin-top: 1.5em;
	font-size: 15px;
	line-height: 1.7;
}
.solution-heading .solution-heading-swiper {
	position: relative;
	left: 50%;
	margin-top: -320px;
	margin-left: -160px;
	width: 860px;
	overflow: hidden;
}
.solution-heading .swiper-navigation {
	margin-top: 30px;
}
@media screen and (max-width: 1140px) {
	.solution-heading .inner {
		margin-left: 30px;
		margin-right: 30px;
	}
}
@media screen and (max-width: 940px) {
	.solution-heading .inner {
		height: auto;
	}
	.solution-heading.library .text-area .lead br {
		display: none;
	}
	.solution-heading .solution-heading-swiper {
		left: 0;
		margin: 30px 30px 0;
		width: calc( 100% - 60px );
	}
}
@media screen and (max-width: 768px) {
	.solution-heading,
	.solution-heading.logistics {
		padding: 11.3334vw 0 10.6667vw;
		width: 100%;
	}
	.solution-heading.logistics {
		padding: 11.3334vw 0 0;
	}
	.solution-heading.library {
		background-image: url("../img/solution/solution_library_slide_bg_sp.png");
	}
	.solution-heading .inner {
		display: block;
		margin: 0 auto;
		max-width: 86.6667vw;
		height: auto;
	}
	.solution-heading.logistics .inner {
		height: auto;
	}
	.solution-heading.logistics .inner:after {
		position: relative;
		left: -6.6667vw;
		width: 100vw;
		height: 46.9334vw;
	}
	.solution-heading .text-area {
		padding-bottom: 9.3334vw;
	}
	.solution-heading.logistics .text-area {
		padding-bottom: 12vw;
	}
	.solution-heading .text-area h1 {
		font-size: 5.8667vw;
	}
	.solution-heading .text-area .lead {
		font-size: 4.8vw;
	}
	.solution-heading .text-area .lead br {
		display: block;
	}
	.solution-heading .text-area .text {
		font-size: 3.7334vw;
	}
	.solution-heading .solution-heading-swiper {
		left: 0;
		margin-top: 0;
		margin-left: 0;
		width: 100%;
	}
	.solution-heading .swiper-navigation {
		margin-top: 5.3334vw;
	}
}

/* --------------------------------------------------
	.solution-contents .library
-------------------------------------------------- */
.solution-contents .solution-graph-library {
	margin-bottom: -212px;
	height: 1006px;
	background-color: #F0801D;
	background-image: url("../img/solution/solution_library_graph_bg_pc.png");
	background-position: center top;
	background-repeat: no-repeat;
}
.solution-contents .solution-graph-library .inner {
	padding-top: 148px;
}
.solution-contents .solution-graph-library .graph {
	margin: 0 auto;
	padding-right: 62px;
	padding-left: 30px;
	max-width: 930px;
}
.solution-contents .solution-point {
	overflow: hidden;
}
.solution-contents .solution-point .inner {
	position: relative;
	padding-top: 70px;
	padding-left: 100px;
	padding-bottom: 200px;
	max-width: 1080px;
	background-color: #fff;
	box-sizing: border-box;
}
.solution-contents .solution-point .inner:before {
	content: '';
	position: absolute;
	left: 100%;
	top: 0;
	display: block;
	width: 100%;
	height: 100%;
	background-color: #fff;
}
.solution-contents .solution-point h2 {
	margin-bottom: 90px;
	font-size: 34px;
	font-family: "Roboto", sans-serif;
	font-weight: 700;
	line-height: 1;
}
.solution-contents .solution-point-flex {
	display: flex;
	gap: 50px;
}
.solution-contents .solution-point-flex-child {
	background-color: #f4f4f4;
}
.solution-contents .solution-point-flex .num {
	margin-bottom: -25px;
	transform: translate(0,-50%);
	font-size: 100px;
	font-family: "Roboto", sans-serif;
	font-weight: 700;
	line-height: 1;
	color: #0c0628;
	text-align: center;
}
.solution-contents .solution-point-flex h3 {
	margin-bottom: 1em;
	font-size: 24px;
	font-weight: 600;
	line-height: 1;
	text-align: center;
}
.solution-contents .solution-point-flex p {
	padding-bottom: 1em;
	height: 7em;
	font-size: 16px;
	line-height: 1.9;
	text-align: center;
}
.solution-contents .solution-library-columns {
	margin-bottom: 195px;
}
.solution-contents .solution-library-columns .solution-library-columns-flex:nth-child(odd) {
	background-color: #f4f4f4;
}
.solution-contents .solution-library-columns .solution-library-columns-flex:nth-child(even) {
	background-color: #fff;
}
.solution-contents .solution-library-columns-flex {
	padding: 164px 0 100px;
}
.solution-contents .solution-library-columns-flex .inner {
	display: flex;
	gap: 30px;
	padding-left: 100px;
	max-width: 1080px;
	box-sizing: border-box;
}
.solution-contents .solution-library-columns-flex .text-area {
	position: relative;
}
.solution-contents .solution-library-columns-flex .text-area .icon {
	position: absolute;
	left: 0;
	top: -20px;
	width: 45px;
	transform: translate(0, -100%);
}
.solution-contents .solution-library-columns-flex.column2 .text-area .icon {
	width: 50px;
}
.solution-contents .solution-library-columns-flex.column5 .text-area .icon {
	width: 52px;
}
.solution-contents .solution-library-columns-flex .text-area .label {
	margin-bottom: 0.5em;
	font-size: 15px;
	font-weight: 500;
	line-height: 1;
}
.solution-contents .solution-library-columns-flex .text-area h2 {
	margin-bottom: 0.5em;
	font-size: 32px;
	font-weight: 800;
	line-height: 1.25;
}
.solution-contents .solution-library-columns-flex .text-area h2 small {
	display: block;
	margin-top: 0.3em;
	font-size: 50%;
}
.solution-contents .solution-library-columns-flex .text-area p {
	font-size: 16px;
	line-height: 1.875;
}
.solution-contents .solution-library-columns-flex .text-area .btn-catalog {
	margin-top: 30px;
	width: 210px;
	height: 40px;
}
.solution-contents .solution-library-columns-flex .text-area .btn-catalog a {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	background-color: #0c0628;
	box-sizing: border-box;
	transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
	font-size: 15px;
	font-weight: 600;
	line-height: 1;
	color: #fff;
}
.solution-contents .solution-library-columns-flex .text-area .btn-catalog a:after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: 13px;
	transform: translate(0,-50%);
	width: 14px;
	height: 14px;
	background-image: url("../img/common/icon_arrow_right_white.svg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.solution-contents .solution-library-columns-flex .text-area .btn-catalog a:hover {
	text-decoration: none;
}
.solution-contents .solution-library-columns-flex .pic-area {
	flex-shrink: 0;
	width: 62.963%;
}
.solution-contents .solution-library-columns-flex.column4 .pic-area,
.solution-contents .solution-library-columns-flex.column5 .pic-area {
	width: 34.2593%;
}
@media screen and (max-width: 1140px) {
	.solution-contents .solution-point .inner,
	.solution-contents .solution-library-columns-flex .inner {
		margin-left: 30px;
		margin-right: 30px;
	}
}
@media screen and (max-width: 940px) {
	.solution-contents .solution-point .inner {
		padding-left: 50px;
	}
	.solution-contents .solution-library-columns-flex .inner {
		padding-left: 50px;
	}
}
@media screen and (max-width: 768px) {
	.solution-contents {
		width: 100%;
	}
	.solution-contents .solution-graph-library {
		margin-bottom: 20vw;
		height: 96.4vw;
		background-image: url("../img/solution/solution_library_graph_bg_sp.png");
		background-size: cover;
	}
	.solution-contents .solution-graph-library .inner {
		padding-top: 19.7334vw;
	}
	.solution-contents .solution-graph-library .graph {
		padding-right: 0;
		padding-left: 0;
		max-width: 94vw;
	}
	.solution-contents .solution-point {
		margin-bottom: 26.6667vw;
	}
	.solution-contents .solution-point .inner {
		margin: 0 auto;
		padding-top: 0;
		padding-left: 0;
		padding-bottom: 0;
		max-width: 86.6667vw;
	}
	.solution-contents .solution-point .inner:before {
		display: none;
	}
	.solution-contents .solution-point h2 {
		margin-bottom: 16vw;
		font-size: 5.8667vw;
	}
	.solution-contents .solution-point-flex {
		display: block;
	}
	.solution-contents .solution-point-flex-child + .solution-point-flex-child {
		margin-top: 17.3334vw;
	}
	.solution-contents .solution-point-flex .num {
		margin-bottom: -6.6667vw;
		font-size: 22vw;
	}
	.solution-contents .solution-point-flex h3 {
		font-size: 5.3334vw;
	}
	.solution-contents .solution-point-flex p {
		padding-bottom: 1.5em;
		height: auto;
		font-size: 3.7334vw;
	}
	.solution-contents .solution-library-columns {
		margin-bottom: 20vw;
	}
	.solution-contents .solution-library-columns-flex {
		padding: 10.6667vw 6.6667vw 30vw;
	}
	.solution-contents .solution-library-columns-flex .inner {
		position: relative;
		display: block;
		margin: 0 auto;
		padding-left: 0;
	}
	.solution-contents .solution-library-columns-flex .text-area .icon {
		top: 0;
		width: 9.8667vw;
		transform: translate(0, 0);
	}
	.solution-contents .solution-library-columns-flex.column2 .text-area .icon {
		width: 10vw;
	}
	.solution-contents .solution-library-columns-flex.column4 .text-area .icon {
		width: 8.4vw;
	}
	.solution-contents .solution-library-columns-flex.column5 .text-area .icon {
		width: 9.8667vw;
	}
	.solution-contents .solution-library-columns-flex .text-area .label {
		margin-left: 14.6667vw;
		font-size: 3.4667vw;
	}
	.solution-contents .solution-library-columns-flex .text-area {
		padding-bottom: 6.6667vw;
	}
	.solution-contents .solution-library-columns-flex .text-area h2 {
		margin-left: 14.6667vw;
		font-size: 6.6667vw;
	}
	.solution-contents .solution-library-columns-flex .text-area p {
		font-size: 3.7334vw;
	}
	.solution-contents .solution-library-columns-flex .text-area .btn-catalog {
		position: absolute;
		left: 0;
		bottom: -51.3334vw;
		margin-top: 0;
		width: 86.6667vw;
		height: 13.3334vw;
	}
	.solution-contents .solution-library-columns-flex.column4 .text-area .btn-catalog,
	.solution-contents .solution-library-columns-flex.column5 .text-area .btn-catalog {
		bottom: -78.4vw;
	}
	.solution-contents .solution-library-columns-flex .text-area .btn-catalog a {
		font-size: 3.7334vw;
	}
	.solution-contents .solution-library-columns-flex .text-area .btn-catalog a:after {
		right: 4.2667vw;
		width: 4.8vw;
		height: 4.8vw;
	}
	.solution-contents .solution-library-columns-flex .pic-area {
		width: 100%;
	}
	.solution-contents .solution-library-columns-flex.column4 .pic-area,
	.solution-contents .solution-library-columns-flex.column5 .pic-area {
		width: 100%;
	}
}

/* --------------------------------------------------
	.solution-contents .logistics
-------------------------------------------------- */
.solution-contents .solution-graph-logistics {
	margin-bottom: -217px;
	height: 1006px;
	background-color: #0D3B69;
	background-image: url("../img/solution/solution_logistics_graph_bg_pc.png");
	background-position: center top;
	background-repeat: no-repeat;
}
.solution-contents .solution-graph-logistics .inner {
	padding-top: 148px;
	padding-bottom: 368px;
	max-width: 1080px;
}
.solution-contents .solution-graph-logistics-flex {
	display: flex;
	align-items: center;
	gap: 60px;
	width: 100%;
}
.solution-contents .solution-graph-logistics .text-area h2 {
	margin-bottom: 1em;
	font-size: 38px;
	font-weight: 700;
	line-height: 1;
	color: #fff;
}
.solution-contents .solution-graph-logistics .text-area p {
	font-size: 18px;
	line-height: 2.1;
	color: #fff;
}
.solution-contents .solution-graph-logistics .graph {
	max-width: 54.0741%;
	width: 584px;
}
.solution-contents .solution-achievements {
	margin-bottom: 240px;
}
.solution-contents .solution-achievements .inner {
	padding-top: 130px;
	background-color: #FFF;
	max-width: 1080px;
}
.solution-contents .solution-achievements h2,
.solution-contents .solution-achievements p {
	margin: 0 auto;
	max-width: 540px;
}
.solution-contents .solution-achievements h2 {
	margin-bottom: 1.5em;
	font-size: 38px;
	font-weight: 700;
	text-align: center;
}
.solution-contents .solution-achievements p {
	font-size: 18px;
	line-height: 2;
}
.solution-contents .solution-achievements .pic {
	margin-top: 140px;
	margin-left: -160px;
	width: 1400px;
}
.solution-contents .solution-logistics-column.automation {
	margin-bottom: 250px;
}
.solution-contents .solution-logistics-column.standardization {
	margin-bottom: 240px;
}
.solution-contents .solution-logistics-column .inner {
	max-width: 1080px;
}
.solution-contents .solution-logistics-column h2 {
	margin-bottom: 50px;
	font-size: 38px;
	font-weight: 700;
}
.solution-contents .solution-logistics-column h2 small {
	margin-left: 1.5em;
	font-size: 53%;
}
.solution-contents .solution-logistics-column-flex {
	display: flex;
	gap: 85px;
	margin-bottom: 100px;
}
.solution-contents .standardization .solution-logistics-column-flex {
	align-items: center;
}
.solution-contents .solution-logistics-column-flex p {
	width: 37.0371%;
	font-size: 16px;
	line-height: 2.12;
}
.solution-contents .solution-logistics-column-flex .pic {
	width: 45.3704%;
}
.solution-contents .solution-logistics-column-flex .pic img {
	width: 750px;
}
.solution-contents .solution-logistics-lineup-flex {
	display: flex;
	gap: 70px;
}
.solution-contents .solution-logistics-merit-flex h3,
.solution-contents .solution-logistics-lineup-flex h3 {
	position: relative;
	margin-bottom: 48px;
	padding-bottom: 10px;
	font-size: 20px;
	font-weight: 700;
}
.solution-contents .solution-logistics-merit-flex h3:before,
.solution-contents .solution-logistics-merit-flex h3:after,
.solution-contents .solution-logistics-lineup-flex h3:before,
.solution-contents .solution-logistics-lineup-flex h3:after {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	display: block;
	transform: translate(0,50%);
}
.solution-contents .solution-logistics-merit-flex h3:before,
.solution-contents .solution-logistics-lineup-flex h3:before {
	width: 100%;
	height: 1px;
	background: #999999;
}
.solution-contents .solution-logistics-merit-flex h3:after,
.solution-contents .solution-logistics-lineup-flex h3:after {
	width: 50%;
	height: 1.8px;
	background: #0c0628;
}
.solution-contents .solution-logistics-lineup-flex ul li {
	width: 260px;
}
.solution-contents .solution-logistics-lineup-flex ul li + li {
	margin-top: 20px;
}
.solution-contents .solution-logistics-lineup-flex ul li a {
	position: relative;
	display: block;
	padding: 10px 38px 10px 20px;;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	border: #f7f7f7 1px solid;
	box-shadow: 0 2px 2px rgba(0,0,0,0.1);
	border-radius: 4px;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2;
}
.solution-contents .solution-logistics-lineup-flex ul li a:after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	transform: translate(0,-50%);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	right: 15px;
	width: 18px;
	height: 18px;
	background-image: url("../img/common/icon_arrow_right_black.svg");
}
.solution-contents .solution-logistics-lineup-flex ul li a:hover {
	text-decoration: none;
}
.solution-contents .solution-logistics-lineup-flex .pic {
	margin-left: auto;
}
.solution-contents .automation .solution-logistics-lineup-flex .pic {
	width: 62.963%;
}
.solution-contents .standardization .solution-logistics-lineup-flex .pic {
	width: 69.4445%;
}
.solution-contents .solution-logistics-merit-flex {
	display: flex;
	align-items: center;
	gap: 80px;
}
.solution-contents .solution-logistics-merit-flex > div:first-child {
	flex-shrink: 0;
	width: 200px;
}
.solution-contents .solution-logistics-merit-flex dl {
	display: flex;
	align-items: center;
	padding: 40px 50px 40px 0;
	min-height: 200px;
	background-color: #f7f7f7;
}
.solution-contents .solution-logistics-merit-flex dl + dl {
	margin-top: 30px;
}
.solution-contents .solution-logistics-merit-flex dt {
	flex-shrink: 0;
	width: 300px;
	font-size: 18px;
	font-weight: 600;
	text-align: center;
}
.solution-contents .solution-logistics-merit-flex dd {
	font-size: 18px;
	line-height: 1.86;
}
.solution-contents .solution-logistics-lineup-lead {
	padding: 90px 0 100px;
}
.solution-contents .solution-logistics-lineup-lead p {
	font-size: 22px;
	font-weight: 600;
	line-height: 2.1;
	text-align: center;
}
@media screen and (max-width: 1140px) {
	.solution-contents .solution-graph-logistics .inner,
	.solution-contents .solution-achievements .inner,
	.solution-contents .solution-logistics-column .inner {
		margin-right: 30px;
		margin-left: 30px;
	}
}
@media screen and (max-width: 900px) {
	.solution-contents .solution-logistics-merit-flex {
		display: block;
	}
	.solution-contents .solution-logistics-merit-flex > div:first-child {
		width: 100%;
	}
	.solution-contents .solution-logistics-merit-flex h3 {
		margin-left: auto;
		margin-right: auto;
		width: 200px;
		text-align: center;
	}
}
@media screen and (max-width: 768px) {
	.solution-contents .solution-graph-logistics {
		margin-bottom: 0;
		height: auto;
		background-image: url("../img/solution/solution_logistics_graph_bg_sp.png");
		background-size: cover;
	}
	.solution-contents .solution-graph-logistics .inner {
		margin-left: auto;
		margin-right: auto;
		padding-top: 18.6667vw;
		padding-bottom: 20vw;
	}
	.solution-contents .solution-graph-logistics-flex {
		display: block;
	}
	.solution-contents .solution-graph-logistics .text-area h2 {
		font-size: 5.8667vw;
		text-align: center;
	}
	.solution-contents .solution-graph-logistics .text-area p {
		margin-bottom: 18vw;
		font-size: 4.2667vw;
		text-align: center;
	}
	.solution-contents .solution-graph-logistics .graph {
		margin: 0 auto;
		max-width: 93.3334vw;
		width: 93.3334vw;
	}
	.solution-contents .solution-achievements {
		margin-bottom: 26.6667vw;
	}
	.solution-contents .solution-achievements .inner {
		margin-left: auto;
		margin-right: auto;
		padding-top: 18.6667vw;
	}
	.solution-contents .solution-achievements h2,
	.solution-contents .solution-achievements p {
		max-width: 86.6667vw;
	}
	.solution-contents .solution-achievements h2 {
		margin-bottom: 1em;
		font-size: 5.8667vw;
	}
	.solution-contents .solution-achievements p {
		font-size: 4vw;
		line-height: 1.8;
	}
	.solution-contents .solution-achievements .pic {
		margin-top: 12vw;
		margin-left: 0;
		width: 100vw;
	}
	.solution-contents .solution-logistics-column.automation {
		margin-bottom: 26.6667vw;
	}
	.solution-contents .solution-logistics-column.standardization {
		margin-bottom: 26.6667vw;
	}
	.solution-contents .solution-logistics-column .inner {
		margin-left: auto;
		margin-right: auto;
	}
	.solution-contents .solution-logistics-column h2 {
		margin-bottom: 1em;
		font-size: 5.8667vw;
		text-align: center;
	}
	.solution-contents .solution-logistics-column h2 small {
		display: block;
		margin-top: 0.6em;
		margin-left: 0;
		font-size: 75%;
	}
	.solution-contents .solution-logistics-column-flex {
		display: block;
		margin-bottom: 12vw;
	}
	.solution-contents .solution-logistics-column-flex p {
		margin: 0 auto 12vw;
		width: 86.6667vw;
		font-size: 3.7334vw;
		line-height: 1.92;
	}
	.solution-contents .solution-logistics-column-flex .pic {
		width: 100vw;
	}
	.solution-contents .solution-logistics-column-flex .pic img {
		width: 100%;
	}
	.solution-contents .solution-logistics-lineup-flex {
		display: block;
	}
	.solution-contents .solution-logistics-merit-flex h3,
	.solution-contents .solution-logistics-lineup-flex h3 {
		margin: 0 auto 6.9334vw;
		padding-bottom: 2.6667vw;
		width: 57.6vw;
		font-size: 4.8vw;
		text-align: center;
	}
	.solution-contents .solution-logistics-merit-flex h3 {
		width: 47.4667vw;
	}
	.solution-contents .solution-logistics-lineup-flex .text-area {
		margin-bottom: 13.3334vw;
	}
	.solution-contents .solution-logistics-lineup-flex ul {
		margin: 0 auto;
		width: 86.6667vw;
	}
	.solution-contents .solution-logistics-lineup-flex ul li {
		width: 100%;
	}
	.solution-contents .solution-logistics-lineup-flex ul li + li {
		margin-top: 5.3334vw;
	}
	.solution-contents .solution-logistics-lineup-flex ul li a {
		padding: 4vw 13.2vw 4vw 4vw;
		box-shadow: 0 0.6667vw 0.6667vw rgba(0,0,0,0.1);
		border-radius: 1.3334vw;
		font-size: 4.2667vw;
	}
	.solution-contents .solution-logistics-lineup-flex ul li a:after {
		right: 4vw;
		width: 5.2vw;
		height: 5.2vw;
	}
	.solution-contents .solution-logistics-lineup-flex ul li a:hover {
		text-decoration: none;
	}
	.solution-contents .solution-logistics-lineup-flex .pic {
		margin-left: auto;
	}
	.solution-contents .automation .solution-logistics-lineup-flex .pic {
		width: 100vw;
	}
	.solution-contents .standardization .solution-logistics-lineup-flex .pic {
		width: 100%;
	}
	.solution-contents .solution-logistics-merit-flex dl {
		display: block;
		margin: 0 auto;
		padding: 10vw 6.6667vw;
		width: 86.6667vw;
		min-height: auto;
		box-sizing: border-box;
	}
	.solution-contents .solution-logistics-merit-flex dl + dl {
		margin-top: 30px;
	}
	.solution-contents .solution-logistics-merit-flex dt {
		margin-bottom: 0.5em;
		width: 100%;
		font-size: 4.5334vw;
	}
	.solution-contents .solution-logistics-merit-flex dd {
		font-size: 3.7334vw;
		line-height: 1.92;
	}
	.solution-contents .solution-logistics-lineup-lead {
		padding: 25.3334vw 0;
	}
	.solution-contents .solution-logistics-lineup-lead p {
		font-size: 4.8vw;
	}
}

/* --------------------------------------------------
	solution共通 .solution-cases, .solution-catalog
-------------------------------------------------- */
.solution-contents .solution-cases {
	margin-bottom: 200px;
}
.solution-contents .solution-cases h2 {
	margin-bottom: 40px;
	font-size: 32px;
	font-weight: 700;
	line-height: 1;
	text-align: center;
}
.solution-contents .solution-cases-swiper {
	width: 550px;
}
.solution-contents .solution-cases .swiper-wrapper {
	margin-bottom: 75px;
	align-items: stretch;
}
.solution-contents .solution-cases .swiper-wrapper a:hover {
	text-decoration: none;
}
.solution-contents .solution-cases .swiper-slide {
	width: 550px;
	height: auto;
	background-color: #fff;
	box-shadow: 0 3px 8px rgba(0,0,0,0.1);
	box-sizing: border-box;
}
.solution-contents .solution-cases .swiper-slide .swiper-slide-inner {
	position: relative;
	display: block;
	height: 100%;
	padding: 40px 50px 30px;
}
.solution-contents .solution-cases .swiper-slide .text-area {
	padding: 20px 0 0;
}
.solution-contents .solution-cases .swiper-slide h3 {
	margin-bottom: 20px;
	font-size: 18px;
	font-weight: 700;
	line-height: 1;
}
.solution-contents .solution-cases .swiper-slide h3 span {
	font-weight: 700;
	font-family: "Roboto", sans-serif;
}
.solution-contents .solution-cases .swiper-slide h3 .en {
	padding-right: 0.5em;
	font-size: 14px;
}
.solution-contents .solution-cases .swiper-slide h3 .num {
	padding-right: 0.1em;
	vertical-align: -2px;
	font-size: 50px;
}
.solution-contents .solution-cases .swiper-slide h3 .text {
	font-family: 'Noto Sans JP', sans-serif;
	line-height: 1.4;
}
.solution-contents .solution-cases.logistics .swiper-slide h3 {
	display: flex;
	margin-bottom: 0;
}
.solution-contents .solution-cases.logistics .swiper-slide h3 .en {
	padding-top: 2em;
}
.solution-contents .solution-cases.logistics .swiper-slide h3 .num {
	padding-right: 0.3em;
}
.solution-contents .solution-cases .swiper-slide p {
	font-size: 15px;
	line-height: 1.73;
}
.solution-contents .solution-cases .swiper-navigation {
	width: 1160px;
}
.solution-contents .solution-catalog {
	position: relative;
	margin-bottom: 160px;
	padding-bottom: 170px;
	background-color: #f7f7f7;
}
.solution-contents .solution-catalog:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	width: 100%;
	height: 230px;
	background-color: #fff;
}
.solution-contents .solution-catalog h2 {
	margin-bottom: 80px;
	font-size: 32px;
	font-weight: 700;
	line-height: 1;
	text-align: center;
}
.solution-contents .solution-catalog-swiper {
	margin: 0 auto;
	width: 860px;
}
.solution-contents .solution-catalog-swiper .swiper-wrapper {
	margin-bottom: 70px;
}
.solution-contents .solution-catalog .swiper-slide h3 {
	margin-top: 0.8em;
	margin-bottom: 0.8em;
	height: 3.4em;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.7;
	text-align: center;
}
.solution-contents .solution-catalog .swiper-slide .btn-catalog {
	width: 100%;
	height: 40px;
}
.solution-contents .solution-catalog .swiper-slide .btn-catalog a {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	background-color: #fff;
	border: #e2e2e2 1px solid;
	border-radius: 4px;
	box-sizing: border-box;
	transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
	font-size: 13px;
	font-weight: 600;
	line-height: 1;
	color: #0c0628;
}
.solution-contents .solution-catalog .swiper-slide .btn-catalog a:before,
.solution-contents .solution-catalog .swiper-slide .btn-catalog a:after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	transform: translate(0,-50%);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.solution-contents .solution-catalog .swiper-slide .btn-catalog a:before {
	left: 15px;
	width: 18px;
	height: 20px;
	background-image: url("../img/common/icon_detail_solution.svg");
}
.solution-contents .solution-catalog .swiper-slide .btn-catalog a:after {
	right: 15px;
	width: 7px;
	height: 11px;
	background-image: url("../img/common/icon_arrow_right2_black.svg");
}
.solution-contents .solution-library-columns-flex .text-area .btn-catalog a:hover {
	text-decoration: none;
}
.solution-contents .solution-catalog .btn-allcatalog {
	margin: 50px auto 0;
	width: 280px;
	height: 60px;
}
.solution-contents .solution-catalog .btn-allcatalog a {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	background-color: #fff;
	border: #0c0628 1px solid;
	box-sizing: border-box;
	transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
	font-size: 17px;
	font-weight: 600;
	line-height: 1;
	color: #0c0628;
}
.solution-contents .solution-catalog .btn-allcatalog a:after {
	content: '';
	display: block;
	position: absolute;
	right: 15px;
	top: 50%;
	transform: translate(0,-50%);
	width: 14px;
	height: 14px;
	background-image: url("../img/common/icon_arrow_right_black.svg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.solution-contents .solution-catalog .btn-allcatalog a:hover {
	text-decoration: none;
}
@media screen and (max-width: 1140px) {
	.solution-contents .solution-cases .swiper-navigation {
		width: 100vw;
	}
}
@media screen and (max-width: 768px) {
	.solution-contents .solution-cases {
		margin-bottom: 24vw;
	}
	.solution-contents .solution-cases h2 {
		margin-bottom: 5.3334vw;
		font-size: 5.8667vw;
	}
	.solution-contents .solution-cases-swiper {
		margin-left: 13.3334vw;
		width: 73.3334vw;
	}
	.solution-contents .solution-cases .swiper-wrapper {
		margin-bottom: 10vw;
		align-items: stretch;
	}
	.solution-contents .solution-cases .swiper-slide {
		width: 73.3334vw;
		box-shadow: 0 0.4vw 1.2vw rgba(0,0,0,0.1);
	}
	.solution-contents .solution-cases .swiper-slide .swiper-slide-inner {
		padding: 4.6667vw;
	}
	.solution-contents .solution-cases .swiper-slide .text-area {
		padding: 3.3334vw 0 0;
	}
	.solution-contents .solution-cases .swiper-slide h3 {
		margin-bottom: 0;
		font-size: 4.5334vw;
	}
	.solution-contents .solution-cases .swiper-slide h3 .en {
		padding-right: 0.5em;
		font-size: 3.2vw;
	}
	.solution-contents .solution-cases .swiper-slide h3 .num {
		padding-right: 0.1em;
		font-size: 11.0667vw;
	}
	.solution-contents .solution-cases .swiper-slide h3 .text {
		display: flex;
		align-items: center;
		height: 18.6667vw;
		line-height: 1.5;
	}
	.solution-contents .solution-cases.logistics .swiper-slide h3 {
		display: block;
	}
	.solution-contents .solution-cases.logistics .swiper-slide h3 .en {
		padding-top: 0;
	}
	.solution-contents .solution-cases.logistics .swiper-slide h3 .text {
		display: block;
		height: auto;
	}
	.solution-contents .solution-cases .swiper-slide p {
		font-size: 3.4667vw;
	}
	.solution-contents .solution-cases .swiper-navigation {
		width: 100%;
	}
	.solution-contents .solution-catalog {
		margin-bottom: 42.6667vw;
		padding-bottom: 30.6667vw;
	}
	.solution-contents .solution-catalog:before {
		height: 44vw;
	}
	.solution-contents .solution-catalog h2 {
		margin-bottom: 11.3334vw;
		font-size: 5.8667vw;
	}
	.solution-contents .solution-catalog-swiper {
		width: 100%;
	}
	.solution-contents .solution-catalog-swiper .swiper-wrapper {
		margin-bottom: 10vw;
	}
	.solution-contents .solution-catalog .swiper-slide h3 {
		font-size: 3.2vw;
	}
	.solution-contents .solution-catalog .swiper-slide .btn-catalog {
		width: 100%;
		height: 9.0667vw;
	}
	.solution-contents .solution-catalog .swiper-slide .btn-catalog a {
		border-radius: 0.8vw;
		font-size: 2.9334vw;
	}
	.solution-contents .solution-catalog .swiper-slide .btn-catalog a:before {
		left: 3.0667vw;
		width: 3.8667vw;
		height: 4.4vw;
	}
	.solution-contents .solution-catalog .swiper-slide .btn-catalog a:after {
		right: 2.8001vw;
		width: 1.6vw;
		height: 2.5334vw;
	}
	.solution-contents .solution-catalog .btn-allcatalog {
		margin-top: 10vw;
		width: 60vw;
		height: 13.0667vw;
	}
	.solution-contents .solution-catalog .btn-allcatalog a {
		font-size: 3.7334vw;
	}
	.solution-contents .solution-catalog .btn-allcatalog a:after {
		right: 3.2vw;
		width: 3.2vw;
		height: 3.2vw;
	}
}


/* --------------------------------------------------
	.pagination
-------------------------------------------------- */
.pagination {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 30px;
	margin: 60px auto 0;
}
.pagination h2 {
	display: none;
}
.pagination a { color: #000; }
.pagination ul.page-numbers {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 25px;
}
.pagination ul.page-numbers li span,
.pagination ul.page-numbers li a {
	display: inline-block;
	font-size: 16px;
}
.pagination .page-numbers.current {
	opacity: 0.3;
}
.pagination .page-numbers.prev,
.pagination .page-numbers.next {
	display: block;
	width: 10px;
	height: 20px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	text-indent: -9999px;
}
.pagination li:first-child {
	margin-left: 135px;
}
.pagination li:last-child {
	margin-right: 135px;
}
.pagination li:has(.page-numbers.prev) {
	margin-left: 0;
	margin-right: 100px;
}
.pagination li:has(.page-numbers.next) {
	margin-left: 100px;
	margin-right: 0;
}
.pagination .page-numbers.prev {
	background-image: url("../img/common/icon_pagination_prev.svg");
}
.pagination .page-numbers.next {
	background-image: url("../img/common/icon_pagination_next.svg");
}
@media screen and (max-width: 768px) {
	.pagination {
		gap: 6.25vw;
		margin-top: 13.3334vw;
	}
	.pagination ul.page-numbers {
		gap: 4.6875vw;
	}
	.pagination ul.page-numbers li span,
	.pagination ul.page-numbers li a {
		font-size: 3.7334vw;
	}
	.pagination .page-numbers.prev,
	.pagination .page-numbers.next {
		width: 2.4vw;
		height: 4.8vw;
	}
	.pagination li:first-child {
		margin-left: 25.7541vw;
	}
	.pagination li:last-child {
		margin-right: 25.7541vw;
	}
	.pagination li:has(.page-numbers.prev) {
		margin-left: 0;
		margin-right: 18.6667vw;
	}
	.pagination li:has(.page-numbers.next) {
		margin-left: 18.6667vw;
		margin-right: 0;
	}
}


/* --------------------------------------------------
	.page-news-contents
-------------------------------------------------- */
.page-news-contents {
	padding-bottom: 200px;
}
.page-news-detail-contents {
	padding-top: 80px;
	padding-bottom: 200px;
	background-color: #f3f3f4;
}
.news-category-1 {
	background-color: #9ba3af;
	color: #fff;
}
.news-category-2 {
	background-color: #4c5572;
	color: #fff;
}
.news-category-3 {
	background-color: #ff7885;
	color: #fff;
}
.page-news-contents .inner {
	max-width: 1080px;
}
.page-news-detail-contents .inner {
	max-width: 820px;
}
.page-news-contents .news-nav {
	margin-bottom: 50px;
}
.page-news-contents .news-nav .news-nav-flex {
	display: flex;
	gap: 15px;
}
.page-news-contents .news-nav select {
	padding: 0.5em 1em;
	background-color: #ededed;
	box-sizing: border-box;
	border-radius: 4px;
	border: none;
	font-size: 12px;
	font-weight: 600;
}
.news-contents .news-top-list {
	border-top: #CECDD4 1px solid;
}
.news-contents .news-top-list li {
	border-bottom: #CECDD4 1px solid;
}
.news-contents .news-top-list li a,
.news-contents .news-top-list li > span {
	position: relative;
	display: flex;
	align-items: center;
	gap: 20px;
	padding: 30px 60px 30px 0;
}
.news-contents .news-top-list li a:hover {
	text-decoration: none;
	opacity: 1;
}
.news-contents .news-top-list li a:after {
	content: '';
	position: absolute;
	right: 34px;
	top: 50%;
	transform: translate(0,-50%);
	display: block;
	width: 18px;
	height: 18px;
	background-image: url("../img/common/icon_arrow_right_black.svg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.news-contents .news-top-list li a:hover:after {
	background-image: url("../img/common/icon_arrow_right_black_on2.svg");
}
.news-contents .news-top-list li a[href$=".pdf"]:after {
	right: 29px;
	width: 27px;
	height: 32px;
	background-image: url("../img/common/icon_pdf.png");
}
.news-contents .news-top-list li .date,
.news-detail-heading .date {
	flex-shrink: 0;
	width: 100px;
	font-size: 14px;
	font-weight: 500;
	font-family: "Inter", sans-serif;
	line-height: 1;
}
.news-contents .news-top-list li .category,
.news-detail-heading .category {
	flex-grow: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	min-width: 80px;
	height: 26px;
	border-radius: 4px;
	font-size: 12px;
	line-height: 1;
	color: #fff;
}
.news-contents .news-top-list li .subject {
	padding-right: 70px;
	flex-grow: 1;
	font-size: 15px;
}
.news-contents .news-top-list li a .subject {
	text-decoration: underline;
}
.news-contents .news-top-list li a:hover .subject {
	text-decoration: none;
}
.page-news-contents .pagination {
	margin-top: 150px;
}
.news-detail-heading {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 18px;
	margin-bottom: 70px;
}
.news-detail-heading h1 {
	width: 100%;
	font-size: 25px;
	font-weight: 500;
}
.news-detail-contents a {
	text-decoration: underline;
}
.news-detail-contents a:hover {
	text-decoration: none;
}
.news-detail-contents a[href$=".pdf"] {
	position: relative;
	padding-right: 27px;
}
.news-detail-contents a[href$=".pdf"]:after {
	content: '';
	position: absolute;
	right: 0;
	top: 50%;
	transform: translate(0,-50%);
	display: block;
	width: 19px;
	height: 23px;
	background-image: url("../img/common/icon_pdf.png");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.news-detail-contents > * +  [class^="wp-block-"],
.news-detail-contents > * +  h1,
.news-detail-contents > * +  h2,
.news-detail-contents > * +  h3,
.news-detail-contents > * +  h4,
.news-detail-contents > * +  h5,
.news-detail-contents > * +  h6,
.news-detail-contents > * + p,
.news-detail-contents > * + table,
.news-detail-contents > * + ul,
.news-detail-contents > * + ol,
.news-detail-contents > * + iframe {
	margin-top: 3em;
}
.news-detail-contents .wp-block-image,
.news-detail-contents .wp-block-embed {
	text-align: center;
}
.news-detail-contents iframe {
	display: block;
	margin-left: auto;
	margin-right: auto;
}
.news-detail-contents p,
.news-detail-contents li {
	font-size: 15px;
}
.news-detail-contents h1 {
	font-size: 22px;
}
.news-detail-contents h2 {
	font-size: 20px;
}
.news-detail-contents h3 {
	font-size: 18px;
}
.news-detail-contents h4 {
	font-size: 16px;
}
.news-detail-contents h5 {
	font-size: 14px;
}
.news-detail-contents h6 {
	font-size: 12px;
}
.news-detail-contents .has-x-large-font-size {
	font-size: 22px !important;
}
.news-detail-contents .has-large-font-size {
	font-size: 20px !important;
}
.news-detail-contents .has-medium-font-size {
	font-size: 18px !important;
}
.news-detail-contents .has-regular-font-size {
	font-size: 15px !important;
}
.news-detail-contents .has-small-font-size {
	font-size: 11px !important;
}
.news-detail-contents .has-text-align-right {
	text-align: right;
}
.news-detail-contents .has-text-align-center {
	text-align: center;
}
.news-detail-contents .w90 {
	margin-left: auto;
	margin-right: auto;
	width: 90%;
}
.news-detail-contents .w80 {
	margin-left: auto;
	margin-right: auto;
	width: 80%;
}
.news-detail-contents .w70 {
	margin-left: auto;
	margin-right: auto;
	width: 70%;
}
.news-detail-contents .w60 {
	margin-left: auto;
	margin-right: auto;
	width: 60%;
}
.news-detail-contents .w50 {
	margin-left: auto;
	margin-right: auto;
	width: 50%;
}
.news-detail-contents .w40 {
	margin-left: auto;
	margin-right: auto;
	width: 40%;
}
.news-detail-contents figure img {
	max-width: 100%;
	width: auto;
	height: auto;
}
.news-detail-contents figure figcaption {
	font-size: 11px;
	text-align: center;
}
.news-detail-contents .size-medium img,
.news-detail-contents .size-small img {
	width: 100%;
}
.news-detail-contents table th,
.news-detail-contents table td {
	padding: 10px;
	border: #000 1px solid;
	text-align: left;
}
.news-detail-contents ul,
.news-detail-contents ol {
	margin-left: 1em;
}
.news-detail-contents ul {
	list-style: disc outside;
}
.news-detail-contents ol {
	list-style: decimal outside;
}
.btn-newstop {
	margin: 100px auto 0;
	width: 300px;
	height: 70px;
}
.btn-newstop a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	background-color: #fff;
	box-sizing: border-box;
	font-size: 16px;
	font-weight: 600;
	line-height: 1;
	color: #0c0628;
	text-decoration: none;
}
.btn-newstop a:hover {
	background-color: #fd8112;
	text-decoration: none;
	color: #fff;
	opacity: 1;
}
.btn-newstop a:before {
	content: '';
	position: absolute;
	right: 25px;
	top: 50%;
	transform: translate(0,-50%);
	display: block;
	width: 20px;
	height: 20px;
	background: url("../img/common/icon_arrow_right_black.svg") no-repeat center center;
	background-size: contain;
}
.btn-newstop a:hover:before {
	background-image: url("../img/common/icon_arrow_right_white_on.svg");
}
@media screen and (max-width: 1140px) {
	.page-news-contents .inner {
		margin-left: 30px;
		margin-right: 30px;
	}
}
@media screen and (max-width: 768px) {
	.page-news-contents {
		padding-bottom: 37.3334vw;
		width: 100%;
	}
	.page-news-detail-contents {
		padding-top: 10.6667vw;
		padding-bottom: 42.6667vw;
		width: 100%;
	}
	.page-news-contents .inner {
		margin: 0 auto;
		max-width: 86.6667vw;
	}
	.page-news-detail-contents .inner {
		max-width: 86.6667vw;
	}
	.page-news-contents .news-nav {
		margin-bottom: 6.6667vw;
	}
	.page-news-contents .news-nav .news-nav-flex {
		gap: 1.3334vw;
	}
	.page-news-contents .news-nav select {
		width: 42.6667vw;
		border-radius: 0.8vw;
		font-size: 3.2vw;
	}
	.news-contents .news-top-list li a,
	.news-contents .news-top-list li > span {
		flex-wrap: wrap;
		gap: 2vw 4.8vw;
		padding: 4vw 8vw 4vw 0;
	}
	.news-contents .news-top-list li a:after {
		right: 4.2667vw;
		width: 4.8vw;
		height: 4.8vw;
	}
	.news-contents .news-top-list li a[href$=".pdf"]:after {
		right: 4vw;
		width: 5.8667vw;
		height: 7.2vw;
	}
	.news-contents .news-top-list li .date,
	.news-detail-heading .date {
		width: 13.3334vw;
		font-size: 2.9334vw;
	}
	.news-contents .news-top-list li .category,
	.news-detail-heading .category {
		min-width: 17.8667vw;
		height: 5.8667vw;
		border-radius: 0.9334vw;
		font-size: 2.6667vw;
	}
	.news-contents .news-top-list li .subject {
		padding-right: 0;
		flex-grow: 0;
		width: 73.3334vw;
		font-size: 3.3334vw;
	}
	.page-news-contents .pagination {
		margin-top: 13.3334vw;
	}
	.news-detail-heading {
		gap: 3.2vw;
		margin-bottom: 10vw;
	}
	.news-detail-heading h1 {
		font-size: 5.0667vw;
	}
	.news-detail-contents a[href$=".pdf"] {
		padding-right: 6.2667vw;
	}
	.news-detail-contents a[href$=".pdf"]:after {
		width: 5.0667vw;
		height: 6.2667vw;
	}
	.news-detail-contents iframe {
		width: 86.6667vw;
		height: 48.75vw;
	}
	.news-detail-contents p,
	.news-detail-contents li {
		font-size: 3.7334vw;
	}
	.news-detail-contents p,
	.news-detail-contents li {
		font-size: 4.0625vw;
	}
	.news-detail-contents h1 {
		font-size: 5vw;
	}
	.news-detail-contents h2 {
		font-size: 4.6875vw;
	}
	.news-detail-contents h3 {
		font-size: 4.375vw;
	}
	.news-detail-contents h4 {
		font-size: 4.0625vw;
	}
	.news-detail-contents h5 {
		font-size: 3.75vw;
	}
	.news-detail-contents h6 {
		font-size: 3.4376vw;
	}
	.news-detail-contents .has-x-large-font-size {
		font-size: 5vw !important;
	}
	.news-detail-contents .has-large-font-size {
		font-size: 4.6875vw !important;
	}
	.news-detail-contents .has-medium-font-size {
		font-size: 4.375vw !important;
	}
	.news-detail-contents .has-regular-font-size {
		font-size: 3.7334vw !important;
	}
	.news-detail-contents .has-small-font-size {
		font-size: 3.125vw !important;
	}
	.news-detail-contents figure img {
		width: 100%;
		height: auto;
	}
	.news-detail-contents figure figcaption {
		font-size: 3.125vw;
	}
	.btn-newstop {
		margin-top: 13.3334vw;
		width: 86.6667vw;
		height: 20vw;
	}
	.btn-newstop a {
		font-size: 4vw;
	}
	.btn-newstop a:before {
		right: 7.3334vw;
		width: 4.6667vw;
		height: 4.6667vw;
	}
}


/* --------------------------------------------------
	.page-contact-contents
-------------------------------------------------- */
.page-contact-contents {
	padding-bottom: 200px;
}
.page-contact-contents h2 {
	margin-bottom: 35px;
	font-size: 22px;
	font-weight: 600;
	text-align: center;
}
.page-contact-contents .contact-top-btn + h2 {
	margin-top: 55px;
}
.page-contact-contents .contact-top-btn {
	margin: 0 auto;
	max-width: 720px;
	height: 160px;
}
.page-contact-contents .contact-top-btn + .contact-top-btn {
	margin-top: 30px;
}
.contact-top-btn a {
	position: relative;
	display: flex;
	align-items: center;
	width: 100%;
	height: 100%;
	background-color: #F5F5F7;
}
.contact-top-btn a:hover {
	text-decoration: none;
	opacity: 1;
}
.contact-top-btn a:after {
	content: '';
	position: absolute;
	right: 68px;
	top: 50%;
	transform: translate(0,-50%);
	display: block;
	width: 22px;
	height: 22px;
	background-image: url("../img/common/icon_arrow_right_black.svg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.contact-top-btn a:hover:after {
	background-image: url("../img/common/icon_arrow_right_black_on2.svg");
}
.contact-top-btn .contact-top-btn-heading {
	width: 240px;
}
.contact-top-btn .contact-top-btn-heading .icon {
	margin: 0 auto;
	width: 47px;
}
.contact-top-btn .contact-top-btn-heading h3 {
	margin-top: 0.8em;
	font-size: 15px;
	font-weight: 700;
	text-align: center;
}
.contact-top-btn .contact-top-btn-textarea {
	width: calc( 100% - 400px );
}
.contact-top-btn .contact-top-btn-textarea p {
	font-size: 15px;
	line-height: 1.7;
}
@media screen and (max-width: 780px) {
	.page-contact-contents .contact-top-btn {
		margin: 0 30px;
	}
}
@media screen and (max-width: 768px) {
	.page-contact-contents {
		padding-bottom: 50.6667vw;
		width: 100%;
	}
	.page-contact-contents h2 {
		margin-bottom: 6vw;
		font-size: 5.0667vw;
	}
	.page-contact-contents .contact-top-btn + h2 {
		margin-top: 8vw;
	}
	.page-contact-contents .contact-top-btn {
		max-width: 86.6667vw;
		height: 40.6667vw;
	}
	.page-contact-contents .contact-top-btn + .contact-top-btn {
		margin-top: 6.6667vw;
	}
	.contact-top-btn a:after {
		right: 50%;
		top: 31.7334vw;
		transform: translate(50%,0);
		width: 4.6667vw;
		height: 4.6667vw;
	}
	.contact-top-btn .contact-top-btn-heading {
		width: 49.2308%;
	}
	.contact-top-btn .contact-top-btn-heading .icon {
		width: 10.2667vw;
	}
	.contact-top-btn .contact-top-btn-heading h3 {
		font-size: 3.3334vw;
	}
	.contact-top-btn .contact-top-btn-textarea {
		margin-bottom: 8.6667vw;
		width: 46.1539%;
	}
	.contact-top-btn .contact-top-btn-textarea p {
		font-size: 3.2vw;
	}
}

/* --------------------------------------------------
	.page-contact-form-contents
-------------------------------------------------- */
.page-contact-form-contents {
	padding-top: 80px;
	padding-bottom: 200px;
	background-color: #f3f3f4;
}
.page-contact-form-contents .inner {
	max-width: 1080px;
}
.page-contact-form-contents .contact-form-heading {
	margin-bottom: 70px;
}
.page-contact-form-contents .contact-form-heading h2 {
	font-size: 25px;
	font-weight: 500;
}
.page-contact-form-contents .contact-form-heading p {
	margin-top: 1em;
	font-size: 15px;
}
.page-contact-form-contents .contact-form-flow {
	margin-bottom: 40px;
}
.page-contact-form-contents .contact-form-flow ol {
	display: flex;
}
.page-contact-form-contents .contact-form-flow ol li {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0.5em;
	width: calc( 100% / 3 );
	height: 68px;
	background-color: #cecdd4;
	border-right: #F3F3F4 1px solid;
	font-size: 17px;
	font-weight: 500;
	color: #fff;
}
.page-contact-form-contents .contact-form-flow ol li.is--active {
	background-color: #fff;
	color: #231815;
}
.page-contact-form-contents .contact-form-flow ol li:after {
	content: '';
	position: absolute;
	right: 0;
	top: 50%;
	z-index: 2;
	transform: translate(50%,-50%);
	width: 39px;
	height: 8px;
	background-image: url("../img/common/icon_contact_arrow_right.svg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.page-contact-form-contents .contact-form-flow ol li:last-child:after {
	display: none;
}
.page-contact-form-contents .contact-form-table-wrap {
	margin: 0 auto;
	max-width: 1080px;
}
.page-contact-form-contents span.required {
	position: absolute;
	right: 30px;
	top: 36px;
	display: inline-block;
	padding: 0.4em 0.8em 0.5em;
	background-color: #0c0628;
	border-radius: 4px;
	border: #0c0628 1px solid;
	font-weight: 500;
	font-size: 14px;
	letter-spacing: 0.02em;
	line-height: 1;
	text-align: center;
	color: #fff;
}
.page-contact-form-contents table {
	width: 100%;
	border-top: #D9D9D9 1px solid;
}
.page-contact-form-contents .contact-form-catalog-flex + table {
	margin-top: 25px;
}
.page-contact-form-contents table th,
.page-contact-form-contents table td {
	position: relative;
	padding: 26px 0;
	border-bottom: #D9D9D9 1px solid;
	vertical-align: top;
	font-size: 17px;
	font-weight: 500;
	text-align: left;
	word-break: break-all;
	overflow-wrap: break-word;
}
.page-contact-form-contents table th {
	padding-top: 36px;
	padding-bottom: 36px;
	padding-right: 70px;
	width: 260px;
}
.page-contact-form-contents table .catalog th,
.page-contact-form-contents table .catalog td {
	padding-top: 36px;
	padding-bottom: 15px;
	border-bottom: none;
}
.page-contact-form-contents .confirm table .catalog th,
.page-contact-form-contents .confirm table .catalog td {
	border-bottom: #D9D9D9 1px solid;
}
.page-contact-form-contents .confirm table td {
	padding-top: 36px;
	padding-bottom: 36px;
}
.page-contact-form-contents table th span.small {
	display: block;
	font-size: 14px;
}
.page-contact-form-contents table th span { font-weight: normal; }
.page-contact-form-contents table td label {
	font-size: 14px;
}
.page-contact-form-contents table td p {
	font-size: 17px;
}
.page-contact-form-contents table td .notes {
	font-size: 14px;
}
.page-contact-form-contents table td p + p {
	margin-top: 1em;
}
.page-contact-form-contents table td pre {
	font-size: 14px;
	white-space: pre-wrap;
}
.page-contact-form-contents .wpcf7 .wpcf7-response-output {
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}
.page-contact-form-contents .wpcf7-form-control-wrap {
	display: inline-block;
	width: 100%;
}
.page-contact-form-contents * + .wpcf7-form-control-wrap {
	margin-top: 16px;
}
.page-contact-form-contents .renewal-row * + .wpcf7-form-control-wrap {
	margin-top: 0;
}
.page-contact-form-contents .wpcf7-form-control-wrap:has(.formError) .wpcf7-form-control,
.page-contact-form-contents .wpcf7-not-valid {
	background-color: #FFE4E4;
}
.page-contact-form-contents .wpcf7-not-valid-tip {
	display: block;
	font-size: 14px;
	line-height: 1;
	color: #E60012;
}
.page-contact-form-contents .formError + .wpcf7-not-valid-tip {
	display: none;
}
.page-contact-form-contents .contact-form-select .wpcf7-not-valid-tip {
	text-align: center;
}
.page-contact-form-contents .formError,
.page-contact-form-contents .formError .formErrorContent {
	padding: 0;
	background-color: transparent;
	font-size: 14px;
	font-weight: 400;
	line-height: 1;
	color: #E60012;
}
.page-contact-form-contents .zipcode .formError .formErrorContent {
	width: 150%;
}
.page-contact-form-contents .formError .formErrorContent br {
	display: none;
}
.page-contact-form-contents .wpcf7-list-item {
	display: block;
	margin: 0.5em 0 0;
}
.page-contact-form-contents .wpcf7-list-item.first {
	margin-top: 0;
}
.page-contact-form-contents .wpcf7-list-item-label {
	font-size: 16px;
}
.page-contact-form-contents .renewal-row,
.page-contact-form-contents .renewal-row .renewalflag,
.page-contact-form-contents span.wpcf7-form-control-wrap[data-name="renewalflag"],
.page-contact-form-contents span.wpcf7-form-control-wrap[data-name="renewalflag"] + br {
	display: none;
}
.page-contact-form-contents table td input[type="text"],
.page-contact-form-contents table td input[type="email"],
.page-contact-form-contents table td input[type="tel"],
.page-contact-form-contents table td select,
.page-contact-form-contents table td textarea { width: 100%; }
.page-contact-form-contents table td label { margin-right: 1em; }
.page-contact-form-contents table td input[type="radio"] {
	position: relative;
	top: -3px;
}
.page-contact-form-contents table .zipcode td .wpcf7-form-control-wrap {
	float: left;
	width: 240px;
}
.page-contact-form-contents table .zipcode .notes {
	margin-top: 0.5em;
	padding-left: 250px;
	font-size: 16px;
}
.page-contact-form-contents table td input[type="checkbox"] {
	position: relative;
	top: -2px;
}
.page-contact-form-contents table td input#catalogcnt {
	position: absolute;
	left: 0;
	top: 0;
	opacity: 0.01;
}
.page-contact-form-contents .btn {
	margin-top: 100px;
}
.page-contact-form-contents .btn,
.page-contact-form-contents .btn p {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 95px;
}
.page-contact-form-contents .btn .wpcf7-spinner {
	display: none;
}
.page-contact-form-contents .contact-form-catalog-flex {
	display: flex;
	align-items: center;
	margin-top: 10px;
	padding: 20px;
	background-color: #fff;
}
.contact-form-catalog-flex .contact-form-catalog-flex-child:first-child {
	flex-shrink: 0;
	width: 196px;
}
.contact-form-catalog-flex .contact-form-catalog-flex-child:first-child p {
	font-size: 17px;
}
.contact-form-catalog-flex .contact-form-catalog-flex-child:last-child {
	display: flex;
	flex-wrap: wrap;
	gap: 38px;
}
.contact-form-catalog-flex .contact-form-catalog-box {
	width: 130px;
	text-align: center;
}
.contact-form-catalog-flex .contact-form-catalog-box .label {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-left: -5%;
	width: 110%;
	height: 4em;
	font-size: 12px;
	line-height: 1.2;
	text-align: center;
}
.contact-form-catalog-flex .contact-form-catalog-box div {
	position: relative;
}
.contact-form-catalog-flex .contact-form-catalog-box div:before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	pointer-events: none;
	transition: .1s linear;
	border: #cecdd4 1px solid;
}
.contact-form-catalog-flex .contact-form-catalog-box:hover div:before,
.contact-form-catalog-flex .contact-form-catalog-box div:has(+ p span input:checked):before {
	border: rgba(253,129,18,0.6) 4px solid;
}
.contact-form-catalog-flex .contact-form-catalog-box .wpcf7-list-item-label {
	display: none;
}
.page-contact-form-contents .contact-form-complete {
	padding-top: 70px;
	text-align: center;
}
.page-contact-form-contents .contact-form-complete p {
	margin-top: 1.6em;
	font-weight: 400;
	font-size: 20px;
	line-height: 2;
	text-align: center;
}
.page-contact-form-contents .contact-form-complete .notes {
	margin-top: 2em;
}
.page-contact-form-contents .contact-form-complete .notes li {
	font-size: 16px;
	text-align: center;
}
@media screen and (max-width: 1160px) {
	.page-contact-form-contents .inner {
		margin: 0 30px;
	}
}
@media screen and (max-width: 1020px) {
	.page-contact-form-contents table .zipcode .notes {
		margin-top: 0;
	}
}
@media screen and (max-width: 768px) {
	.page-contact-form-contents {
		padding-top: 10.6667vw;
		padding-bottom: 42.6667vw;
		width: 100%;
	}
	.page-contact-form-contents .inner {
		margin: 0 auto;
		max-width: 86.6667vw;
	}
	.page-contact-form-contents .contact-form-heading {
		margin-bottom: 9.3334vw;
	}
	.page-contact-form-contents .contact-form-heading h2 {
		font-size: 5.0667vw;
	}
	.page-contact-form-contents .contact-form-heading p {
		font-size: 3.7334vw;
	}
	.page-contact-form-contents .contact-form-flow {
		margin-bottom: 5.3334vw;
	}
	.page-contact-form-contents .contact-form-flow ol li {
		flex-wrap: wrap;
		gap: 0;
		padding: 2vw 0;
		height: 13.6vw;
		box-sizing: border-box;
		font-size: 3.2vw;
	}
	.page-contact-form-contents .contact-form-flow ol li span {
		display: block;
		width: 100%;
		text-align: center;
		line-height: 1;
	}
	.page-contact-form-contents .contact-form-flow ol li:after {
		width: 4.9334vw;
		height: 2.1334vw;
		background-position: right center;
		background-size: auto 100%;
	}
	.page-contact-form-contents .contact-form-table-wrap {
		max-width: 86.6667vw;
	}
	.page-contact-form-contents span.required {
		position: static;
		margin-left: 1em;
		border-radius: 0.5334vw;
		font-size: 2vw;
		vertical-align: 2px;
	}
	.page-contact-form-contents table {
		display: block;
	}
	.page-contact-form-contents table th,
	.page-contact-form-contents table td {
		display: block;
		font-size: 3.4667vw;
	}
	.page-contact-form-contents table th {
		padding-top: 4vw;
		padding-bottom: 2.6667vw;
		padding-right: 0;
		width: 100%;
		border-bottom: none;
	}
	.page-contact-form-contents table .catalog th {
		padding-top: 4vw;
		padding-bottom: 2.6667vw;
	}
	.page-contact-form-contents table .catalog td {
		padding-top: 0;
		padding-bottom: 4vw;
	}
	.page-contact-form-contents table td,
	.page-contact-form-contents .confirm table td {
		padding-top: 0;
		padding-bottom: 4vw;
	}
	.page-contact-form-contents table th span.small {
		font-size: 2.9334vw;
	}
	.page-contact-form-contents table td label {
		font-size: 2.9334vw;
	}
	.page-contact-form-contents table td p {
		font-size: 3.4667vw;
	}
	.page-contact-form-contents table td .notes {
		font-size: 2.9334vw;
	}
	.page-contact-form-contents table td pre {
		font-size: 2.9334vw;
	}
	.page-contact-form-contents .wpcf7 .wpcf7-response-output {
		max-width: 86.6667vw;
	}
	.page-contact-form-contents .wpcf7-not-valid-tip {
		font-size: 2.9334vw;
	}
	.page-contact-form-contents .formError,
	.page-contact-form-contents .formError .formErrorContent {
		font-size: 2.9334vw;
	}
	.page-contact-form-contents .wpcf7-list-item-label {
		font-size: 3.4667vw;
	}
	.page-contact-form-contents * + .wpcf7-form-control-wrap {
		margin-top: 2.2667vw;
	}
	.page-contact-form-contents table .zipcode td .wpcf7-form-control-wrap {
		float: none;
		width: 100%;
	}
	.page-contact-form-contents table .zipcode .notes {
		margin-top: 0.5em;
		padding-left: 0;
		font-size: 2.9334vw;
	}
	.page-contact-form-contents .btn {
		margin-top: 13.3334vw;
	}
	.page-contact-form-contents .btn,
	.page-contact-form-contents .btn p {
		gap: 6.6667vw;
	}

	.page-contact-form-contents .contact-form-catalog-flex {
		display: block;
		margin-top: 8vw;
		padding: 6.6667vw 4.6667vw;
	}
	.page-contact-form-contents table + .contact-form-catalog-flex {
		margin-top: 0;
	}
	.contact-form-catalog-flex .contact-form-catalog-flex-child:first-child {
		margin-bottom: 5.3334vw;
		width: 100%;
	}
	.contact-form-catalog-flex .contact-form-catalog-flex-child:first-child p {
		font-size: 3.8667vw;
	}
	.contact-form-catalog-flex .contact-form-catalog-flex-child:last-child {
		justify-content: space-between;
		gap: 0;
	}
	.contact-form-catalog-flex .contact-form-catalog-box {
		width: 34.6667vw;
	}
	.contact-form-catalog-flex .contact-form-catalog-box .label {
		font-size: 2.9334vw;
	}
	.contact-form-catalog-flex .contact-form-catalog-box:hover div:before,
	.contact-form-catalog-flex .contact-form-catalog-box div:has(+ p span input:checked):before {
		border-width: 0.6667vw;
	}
	.page-contact-form-contents .contact-form-complete {
		padding-top: 8vw;
		padding-bottom: 13.3334vw;
	}
	.page-contact-form-contents .contact-form-complete p {
		font-size: 4vw;
	}
	.page-contact-form-contents .contact-form-complete .notes li {
		font-size: 2.6667vw;
	}
}


/* --------------------------------------------------
	.single-news .title-area-news-detail
-------------------------------------------------- */
.single-news .title-area-news-detail {
	margin-bottom: 70px;
	padding-top: 200px;
}
.single-news .title-area-news-detail p {
	font-family: "Roboto", sans-serif;
	font-weight: 700;
	font-size: 80px;
	line-height: 1;
	color: #3a62bc;
}
.single-news .title-area-news-detail p small {
	display: inline-block;
	margin-left: 1em;
	font-size: 20px;
	font-family: 'Noto Sans JP', sans-serif;
	vertical-align: 2px;
}
@media screen and (max-width: 1060px) {
	.single-news .title-area-news-detail .inner {
		margin: 0 30px;
	}
}
@media screen and (max-width: 768px) {
	.single-news .title-area-news-detail {
		margin: 0 auto 9.3334vw;
		padding-top: 26.6667vw;
		width: 86.6667vw;
	}
	.single-news .title-area-news-detail .inner {
		margin: 0 auto;
	}
	.single-news .title-area-news-detail p {
		font-size: 13.3334vw;
	}
	.single-news .title-area-news-detail p small {
		margin-left: 0.5em;
		font-size: 5.6001vw;
	}
}

/* --------------------------------------------------
	.single-news .news-detail-area
-------------------------------------------------- */
.single-news .news-detail-area {
	margin-bottom: 200px;
}
.single-news .news-detail-area .inner {
	max-width: 800px;
}
.single-news .news-detail-area .heading-area {
	margin-bottom: 30px;
}
.single-news .news-detail-area .heading-area .date {
	margin-bottom: 0.5em;
	font-size: 18px;
	font-family: "Roboto", sans-serif;
	font-weight: 700;
	color: #3a62bc;
}
.single-news .news-detail-area .heading-area h1 {
	font-weight: 500;
	font-size: 28px;
	color: #464646;
}
.single-news .news-detail-area .btn-newstop {
	margin: 65px auto 0;
	width: 290px;
	height: 70px;
}
.single-news .news-detail-area .btn-newstop a {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	border-radius: 10px;
	background-color: #fff;
	border: #3A62BC 1px solid;
	box-sizing: border-box;
	transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}
.single-news .news-detail-area .btn-newstop a:after {
	content: '';
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translate(0,-50%);
	display: block;
	width: 20px;
	height: 20px;
	background: url("../img/common/icon_btn_arrow_blue.svg") no-repeat;
	background-size: contain;
}
.single-news .news-detail-area .btn-newstop a span {
	margin-right: 12px;
	font-weight: 700;
	font-size: 15px;
	letter-spacing: 0.02em;
	line-height: 1;
	color: #3A62BC;
}
.single-news .news-detail-area .btn-newstop a:hover {
	text-decoration: none;
}
.single-news .news-detail-area .contents-area p {
	font-size: 16px;
	line-height: 2;
	text-align: left;
	color: #464646;
}
.single-news .news-detail-area .contents-area p + *,
.single-news .news-detail-area .contents-area * + p {
	margin-top: 2em;
}
.single-news .news-detail-area .contents-area img {
	width: auto;
}
.single-news .news-detail-area .contents-area table th,
.single-news .news-detail-area .contents-area table td {
	padding: 10px;
	border: #000 1px solid;
	text-align: left;
}
.single-news .news-detail-area .contents-area table,
.single-news .news-detail-area .contents-area ul,
.single-news .news-detail-area .contents-area ol {
	margin-top: 2em;
	margin-bottom: 2em;
}
.single-news .news-detail-area .contents-area ul,
.single-news .news-detail-area .contents-area ol {
	margin-left: 1em;
}
.single-news .news-detail-area .contents-area ul {
	list-style: disc outside;
}
.single-news .news-detail-area .contents-area ol {
	list-style: decimal outside;
}
.single-news .news-detail-area .contents-area h1 {
	font-size: 42px;
}
.single-news .news-detail-area .contents-area h2 {
	font-size: 36px;
}
.single-news .news-detail-area .contents-area h3 {
	font-size: 30px;
}
.single-news .news-detail-area .contents-area h4 {
	font-size: 26px;
}
.single-news .news-detail-area .contents-area h5 {
	font-size: 20px;
}
.single-news .news-detail-area .contents-area h6 {
	font-size: 16px;
}
.single-news .news-detail-area .contents-area .has-huge-font-size {
	font-size: 42px;
}
.single-news .news-detail-area .contents-area .has-large-font-size {
	font-size: 36px;
}
.single-news .news-detail-area .contents-area .has-medium-font-size {
	font-size: 20px;
}
.single-news .news-detail-area .contents-area .has-regular-font-size {
	font-size: 16px;
}
.single-news .news-detail-area .contents-area .has-small-font-size {
	font-size: 13px;
}
@media screen and (max-width: 860px) {
	.single-news .news-detail-area .inner {
		margin: 0 30px;
	}
}
@media screen and (max-width: 768px) {
	.single-news .news-detail-area {
		margin: 0 auto 26.6667vw;
		width: 86.6667vw;
	}
	.single-news .news-detail-area .inner {
		margin: 0 auto;
	}
	.single-news .news-detail-area .heading-area {
		margin-bottom: 6.6667vw;
	}
	.single-news .news-detail-area .heading-area .date {
		font-size: 3.4667vw;
	}
	.single-news .news-detail-area .heading-area h1 {
		font-size: 4.8vw;
	}
	.single-news .news-detail-area .btn-newstop {
		margin-top: 12vw;
		width: 86.6667vw;
		height: 19.3334vw;
	}
	.single-news .news-detail-area .btn-newstop a {
		border-radius: 1.3334vw;
	}
	.single-news .news-detail-area .btn-newstop a:after {
		right: 6.6667vw;
		width: 5.3334vw;
		height: 5.3334vw;
	}
	.single-news .news-detail-area .btn-newstop a span {
		margin-right: 6vw;
		font-size: 3.8667vw;
	}
	.single-news .news-detail-area .contents-area p {
		font-size: 3.7334vw;
	}
	.single-news .news-detail-area .contents-area h1 {
		font-size: 9.375vw;
	}
	.single-news .news-detail-area .contents-area h2 {
		font-size: 8.125vw;
	}
	.single-news .news-detail-area .contents-area h3 {
		font-size: 7.1875vw;
	}
	.single-news .news-detail-area .contents-area h4 {
		font-size: 6.25vw;
	}
	.single-news .news-detail-area .contents-area h5 {
		font-size: 5.625vw;
	}
	.single-news .news-detail-area .contents-area h6 {
		font-size: 4.6875vw;
	}
	.single-news .news-detail-area .contents-area .has-huge-font-size {
		font-size: 6.9334vw;
	}
	.single-news .news-detail-area .contents-area .has-large-font-size {
		font-size: 6.1334vw;
	}
	.single-news .news-detail-area .contents-area .has-medium-font-size {
		font-size: 4.8vw;
	}
	.single-news .news-detail-area .contents-area .has-regular-font-size {
		font-size: 3.7334vw;
	}
	.single-news .news-detail-area .contents-area .has-small-font-size {
		font-size: 3.2vw;
	}
}

/* --------------------------------------------------
	.page-otherlang
-------------------------------------------------- */
.otherlang-top-kv {
/*	margin-top: -100px;*/
	margin-bottom: 70px;
}
.otherlang-top-kv .otherlang-kv-swiper {
	margin: 0 auto;
	max-width: 1400px;
	overflow: visible;
}
.otherlang-top-kv .otherlang-kv-swiper .swiper-pagination {
	bottom: 18px;
	height: 20px;
}
.otherlang-top-kv .otherlang-kv-swiper .swiper-pagination .swiper-pagination-bullet {
	margin: 0 9px;
	width: 18px;
	height: 18px;
	background-color: #fff;
	border-radius: 50%;
	opacity: 1;
}
.otherlang-top-kv .otherlang-kv-swiper .swiper-pagination .swiper-pagination-bullet-active {
	background-color: #ff9413;
}
.otherlang-top {
	margin-bottom: 275px;
}
.otherlang-top .inner {
	max-width: 1080px;
}
.otherlang-top .general-box-list {
	grid-template-columns: 1fr 1fr 1fr 1fr;
	gap: 0 26px;
}
.otherlang-top .general-box-list li:nth-child(n+4) {
	margin-top: 0;
}
.otherlang-products-top {
	margin-bottom: 300px;
}
.otherlang-products-top .inner {
	max-width: 1080px;
}
.otherlang-products-top .general-box-list {
	grid-template-columns: 1fr 1fr;
	gap: 0 65px;
}
.otherlang-products-top .general-box-list li:nth-child(n+3) {
	margin-top: 60px;
}
.otherlang-products-top .general-box-list li {
	display: block;
}
.otherlang-products-top .general-box-list li div:first-child {
	float: left;
	width: 48.2759%;
}
.otherlang-products-top .general-box-list li h3,
.otherlang-products-top .general-box-list li h4,
.otherlang-products-top .general-box-list li p,
.otherlang-products-top .general-box-list li .btn-detail {
	margin-left: 51.2316%;
}
.otherlang-products-top .general-box-list li h3 {
	margin-top: 0;
}
.otherlang-general-contents {
	margin-top: 75px;
	margin-bottom: 300px;
}
.otherlang-general-contents .inner {
	max-width: 900px;
}
.otherlang-general-contents h1 {
	margin-bottom: 1em;
	font-size: 30px;
}
.otherlang-general-contents p {
	font-size: 14px;
	line-height: 2;
}
.otherlang-products-detail-introduction {
	display: flex;
	gap: 0 23px;
}
.otherlang-products-detail-introduction .pic1 {
	flex-shrink: 0;
	width: 44.4445%;
}
.otherlang-products-detail-introduction p {
	margin-top: -0.5em;
}
.otherlang-products-detail h2 {
	position: relative;
	margin-bottom: 1.2em;
	padding: 10px;
	padding-left: 50px;
	background-color: #f7f7f7;
	border-radius: 4px;
	font-size: 20px;
	font-weight: 600;
	line-height: 1;
}
.otherlang-products-detail * + h2 {
	margin-top: 70px;
}
.otherlang-products-detail h2:before {
	content: '';
	position: absolute;
	left: 20px;
	top: 50%;
	transform: translate(0,-50%);
	display: block;
	width: 12px;
	height: 12px;
	background-color: #fd8112;
	box-sizing: border-box;
	box-shadow: inset 0 0 0 3px #f7f7f7, 0 0 0 2px #000;
}
.otherlang-products-detail h3 {
	margin-bottom: 0.4em;
	font-size: 18px;
	font-weight: 600;
}
.otherlang-products-detail p + h3 {
	margin-top: 50px;
}
.otherlang-products-detail h4,
.otherlang-products-detail p {
	font-size: 15px;
	font-weight: 400;
	color: #4c4c4c;
}
.otherlang-products-detail figcaption {
	margin-top: 0.4em;
	font-size: 15px;
	font-weight: 400;
}
.otherlang-products-detail .pic2 {
	margin-bottom: 30px;
}
.otherlang-products-detail-pic-flex {
	display: flex;
	gap: 0 32px;
}
.otherlang-products-detail .pic3 {
	flex-shrink: 0;
	width: 47.8889%;
}
.otherlang-products-detail .pic4 {
	margin-bottom: 18px;
}
.otherlang-products-detail .pic6 {
	margin: 60px auto 0;
	max-width: 550px;
}
.otherlang-message-flex {
	display: flex;
	gap: 0 26px;
}
.otherlang-message-flex .pic-area {
	order: 2;
	flex-shrink: 0;
	width: 34.4445%;
}
.otherlang-message-flex p {
	margin-top: -0.5em;
}
.otherlang-message-flex p + p {
	margin-top: 30px;
}
.otherlang-message-flex p.signature {
	margin-top: 140px;
	font-size: 20px;
	font-weight: 600;
	text-align: right;
}
.otherlang-outline .lastupdate {
	margin-top: -2em;
	font-size: 15px;
	font-weight: 500;
	text-align: right;
}
.otherlang-outline h2 {
	margin-top: 50px;
	margin-bottom: 0.2em;
	font-size: 20px;
	font-weight: 500;
}
.otherlang-outline-table {
	width: 100%;
	border-top: #4c4c4c 1px solid;
	border-left: #4c4c4c 1px solid;
}
.otherlang-outline-table + .otherlang-outline-table {
	margin-top: 25px;
}
.otherlang-outline-table caption {
	margin-bottom: 0.1em;
	padding-left: 0.8em;
	text-indent: -0.8em;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.4;
	text-align: left;
}
.otherlang-outline-table th,
.otherlang-outline-table td {
	padding: 15px;
	border-bottom: #4c4c4c 1px solid;
	border-right: #4c4c4c 1px solid;
	font-size: 14px;
	font-weight: 400;
	text-align: left;
	vertical-align: middle;
}
.otherlang-outline-table th {
	width: 190px;
	background-color: #f5f5f5;
	font-weight: 500;
}
.otherlang-outline-table .icon-iso {
	width: 170px;
	text-align: center;
}
.otherlang-outline-table .icon-iso img {
	width: 67px;
}
.otherlang-outline-table ol {
	margin-left: 1.5em;
}
.otherlang-outline-table ol li {
	list-style-type: decimal;
	font-size: 14px;
}
.otherlang-outline-table ol li + li {
	margin-top: 0.5em;
}
.otherlang-history-table {
	width: 100%;
}
.otherlang-history-table th,
.otherlang-history-table td {
	padding: 15px;
	border-bottom: #fff 2px solid;
	font-size: 14px;
	font-weight: 400;
	text-align: left;
	vertical-align: middle;
}
.otherlang-history-table th {
	width: 80px;
	border-right: #fff 6px solid;
	background-color: #ffd4a0;
}
.otherlang-history-table.tw th {
	width: 120px;
}
.otherlang-history-table td {
	background-color: #f5f5f5;
}
@media screen and (max-width: 1160px) {
	.otherlang-top .inner {
		margin-left: 30px;
		margin-right: 30px;
	}
	.otherlang-products-top .inner {
		margin-left: 30px;
		margin-right: 30px;
	}
}
@media screen and (max-width: 960px) {
	.otherlang-general-contents .inner {
		margin-left: 30px;
		margin-right: 30px;
	}
}
@media screen and (max-width: 900px) {
	.otherlang-top .general-box-list {
		grid-template-columns: 1fr 1fr;
	}
	.otherlang-top .general-box-list li:nth-child(n+3) {
		margin-top: 60px;
	}
}
@media screen and (max-width: 768px) {
	.otherlang-top-kv {
/*		margin-top: -16vw;*/
		margin-bottom: 12vw;
		width: 100%;
	}
	.otherlang-top-kv .otherlang-kv-swiper .swiper-pagination {
		bottom: 7.4667vw;
		height: 3.6vw;
	}
	.otherlang-top-kv .otherlang-kv-swiper .swiper-pagination .swiper-pagination-bullet {
		margin: 0 1.7334vw;
		width: 3.6vw;
		height: 3.6vw;
	}
	.otherlang-top {
		margin-bottom: 44vw;
		width: 100%;
	}
	.otherlang-top .inner {
		margin: 0 auto;
		max-width: 93.3334vw;
	}
	.otherlang-top .general-box-list {
		grid-template-columns: 1fr 1fr;
		gap: 0 5.3334vw;
	}
	.otherlang-top .general-box-list li:nth-child(n+3) {
		margin-top: 9.3334vw;
	}
	.otherlang-products-top {
		margin-bottom: 40vw;
		width: 100%;
	}
	.otherlang-products-top .inner {
		margin: 0 auto;
		max-width: 93.3334vw;
	}
	.otherlang-products-top .general-box-list {
		gap: 0 4vw;
	}
	.otherlang-products-top .general-box-list li:nth-child(n+3) {
		margin-top: 9.3334vw;
	}
	.otherlang-products-top .general-box-list li {
		display: grid;
	}
	.otherlang-products-top .general-box-list li div:first-child {
		float: none;
		width: 100%;
	}
	.otherlang-products-top .general-box-list li h3,
	.otherlang-products-top .general-box-list li h4,
	.otherlang-products-top .general-box-list li p,
	.otherlang-products-top .general-box-list li .btn-detail {
		margin-left: 0;
	}
	.otherlang-products-top .general-box-list li h3 {
		margin-top: 1em;
	}
	.otherlang-general-contents {
		margin-top: 10vw;
		margin-bottom: 40vw;
		width: 100%;
	}
	.otherlang-general-contents .inner {
		margin-left: auto;
		margin-right: auto;
		max-width: 86.6667vw;
	}
	.otherlang-general-contents h1 {
		font-size: 5.8667vw;
	}
	.otherlang-general-contents p {
		font-size: 3.4667vw;
		line-height: 1.76;
	}
	.otherlang-products-detail-introduction {
		display: block;
	}
	.otherlang-products-detail-introduction .pic1 {
		margin-bottom: 6.6667vw;
		width: 100%;
	}
	.otherlang-products-detail-introduction p {
		margin-top: 0;
	}
	.otherlang-products-detail h2 {
		padding: 2.4vw;
		padding-left: 13.3334vw;
		border-radius: 1.0667vw;
		font-size: 5.3334vw;
	}
	.otherlang-products-detail * + h2 {
		margin-top: 25.3334vw;
	}
	.otherlang-products-detail h2:before {
		left: 5.3334vw;
	}
	.otherlang-products-detail h3 {
		font-size: 4.8vw;
		line-height: 1.25;
	}
	.otherlang-products-detail p + h3 {
		margin-top: 13.3334vw;
	}
	.otherlang-products-detail h4,
	.otherlang-products-detail p {
		font-size: 3.4667vw;
		line-height: 1.76;
	}
	.otherlang-products-detail figcaption {
		font-size: 3.2vw;
	}
	.otherlang-products-detail .pic2 {
		margin-bottom: 4vw;
	}
	.otherlang-products-detail-pic-flex {
		gap: 0 3.0667vw;
	}
	.otherlang-products-detail .pic4 {
		margin-bottom: 0;
	}
	.otherlang-products-detail .pic6 {
		margin-top: 13.3334vw;
	}
	.otherlang-message-flex {
		display: block;
	}
	.otherlang-message-flex .pic-area {
		margin: 0 auto 6vw;
		width: 66.6667vw;
	}
	.otherlang-message-flex p {
		margin-top: 0;
	}
	.otherlang-message-flex p + p {
		margin-top: 6.6667vw;
	}
	.otherlang-message-flex p.signature {
		margin-top: 40vw;
		font-size: 3.8667vw;
	}
	.otherlang-outline .lastupdate {
		margin-top: 0;
		font-size: 3.2vw;
	}
	.otherlang-outline h2 {
		margin-top: 10.6667vw;
		font-size: 4.4vw;
	}
	.otherlang-outline-table + .otherlang-outline-table {
		margin-top: 5.3334vw;
	}
	.otherlang-outline-table caption {
		font-size: 3.8667vw;
	}
	.otherlang-outline-table th,
	.otherlang-outline-table td {
		padding: 2.6667vw 1.3334vw;
		font-size: 2.6667vw;
	}
	.otherlang-outline-table th {
		width: 24vw;
		font-size: 2.9334vw;
	}
	.otherlang-outline-table .icon-iso {
		width: 16.5334vw;
	}
	.otherlang-outline-table .icon-iso img {
		width: 13.3334vw;
	}
	.otherlang-outline-table ol li {
		font-size: 3.2vw;
	}
	.otherlang-history-table th,
	.otherlang-history-table td {
		padding: 2.6667vw 1.3334vw;
		border-bottom: #fff 1px solid;
		font-size: 3.2vw;
	}
	.otherlang-history-table th {
		padding-left: 3.3334vw;
		padding-right: 3.3334vw;
		width: 8vw;
		border-right: #fff 3px solid;
	}
	.otherlang-history-table.tw th {
		width: 16vw;
	}
}