@charset "UTF-8";
@import "/include/css/common.sp.css";

/* ---------------------------------------------------------
	CSS Document about
--------------------------------------------------------- */

#about .title {
	height: 20vw;
	padding-top: 4vw;
	line-height: 1.5;
	position: relative;
	z-index: 0;
}

#about .title:before {
	content: '';
	width: 60vw;
	border-bottom: 20vw solid #fff;
	border-left: 8vw solid transparent;
	border-right: 8vw solid transparent;
	transform: translateX(-50%);
	position: absolute;
	top: 0;
	left: 50%;
	z-index: -1;
}

#about .title .en {
	display: block;
	font-family: "Shippori Mincho", serif;
	font-weight: 600;
	font-size: 7vw;
	letter-spacing: 0;
	color: var(--orange);
}

#about .title .ja {
	display: block;
	font-weight: 500;
	font-size: 3vw;
}

#about .bg {
	padding: 10vw 5vw 15vw;
	background: #fff;
	position: relative;
	z-index: 0;
}

#about .bg:before {
	content: '';
	width: 600px;
	height: 773px;
	background: url(../top/bg.webp) no-repeat calc(50%) top;
	position: absolute;
	top: 0;
	right: calc(50% + 500px);
	z-index: -1;
}

#about figure {
	width: 500px;
	height: 500px;
	position: absolute;
	top: 5%;
	left: calc(50% + 300px);
	z-index: -1;
}

#about .container {
	text-align: justify;
}

#about .copy {
	margin-bottom: 2em;
	text-align: center;
}

#about .copy img {
	height: 20vw;
}

#about h3 {
	margin-bottom: 8vw;
	background: #f39800;
	text-align: center;
	font-weight: 500;
	font-size: 3.5vw;
	line-height: 8vw;
	color: #fff;
}

#about .big {
	display: inline-block;
	vertical-align: top;
	margin-bottom: 5vw;
	padding-bottom: 3vw;
	border-bottom: solid 2px var(--orange);
	font-weight: 600;
	font-size: 5vw;
	line-height: 1.2;
}

#about p {
	margin-bottom: 1.5em;
}

#about p span {
	background: linear-gradient(to bottom, transparent 70%, rgba(237, 108, 0, 0.3) 70%);
}

#about .name {
	text-align: right;
}

#about .name .ja {
	font-family: "Shippori Mincho", serif;
	font-weight: 600;
	font-size: 6.5vw;
}

/* ---------------------------------------------------------
	CSS Document outline
--------------------------------------------------------- */

#outline .title {
	height: 20vw;
	padding-top: 4vw;
	background: #fff;
	line-height: 1.5;
	position: relative;
	z-index: 0;
}

#outline .title:before {
	content: '';
	width: 60vw;
	border-bottom: 20vw solid #F5F5F5;
	border-left: 8vw solid transparent;
	border-right: 8vw solid transparent;
	transform: translateX(-50%);
	position: absolute;
	top: 0;
	left: 50%;
	z-index: -1;
}

#outline .title .en {
	display: block;
	font-family: "Shippori Mincho", serif;
	font-weight: 600;
	font-size: 7vw;
	letter-spacing: 0;
	color: var(--orange);
}

#outline .title .ja {
	display: block;
	font-weight: 500;
	font-size: 3vw;
}

#outline .bg {
	margin-bottom: 18vw;
	padding: 10vw 5vw 0;
	background: #F5F5F5;
	position: relative;
	z-index: 0;
}

#outline h3 {
	display: inline-block;
	vertical-align: top;
	margin-bottom: 60px;
	padding-bottom: 15px;
	border-bottom: solid 3px var(--orange);
	font-weight: 600;
	font-size: 32px;
	line-height: 1.2;
}

#outline dl {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 20px;
}

#outline dt {
	width: 30%;
	border-radius: 50px;
	background: var(--orange);
	text-align: center;
	line-height: 50px;
	color: #fff;
}

#outline dd {
	display: flex;
	align-items: center;
	width: 67%;
	height: 50px;
	padding: 0 2em;
	border-radius: 50px;
	background: #fff;
	text-align: left;
	line-height: 1.5;
}

/* ---------------------------------------------------------
	CSS Document compliance
--------------------------------------------------------- */

#compliance .title {
	height: 20vw;
	padding-top: 4vw;
	line-height: 1.5;
	position: relative;
	z-index: 0;
}

#compliance .title:before {
	content: '';
	width: 60vw;
	border-bottom: 20vw solid #fff;
	border-left: 8vw solid transparent;
	border-right: 8vw solid transparent;
	transform: translateX(-50%);
	position: absolute;
	top: 0;
	left: 50%;
	z-index: -1;
}

#compliance .title .en {
	display: block;
	font-family: "Shippori Mincho", serif;
	font-weight: 600;
	font-size: 7vw;
	letter-spacing: 0;
	color: var(--orange);
}

#compliance .title .ja {
	display: block;
	font-weight: 500;
	font-size: 3vw;
}

#compliance .bg {
	padding: 10vw 8vw;
	background: #fff;
}

#compliance h3 {
	display: inline-block;
	vertical-align: top;
	margin-bottom: 7vw;
	padding-bottom: 3vw;
	border-bottom: solid 2px var(--orange);
	font-weight: 600;
	font-size: 4.5vw;
	line-height: 1.2;
}

#compliance .name dl {
	display: flex;
	justify-content: flex-end;
	text-align: left;
}

#compliance .name dt {
	width: 5em;
}

#compliance .name dd {
	width: 8em;
}

#compliance .section {
	margin-bottom: 50px;
	text-align: justify;
	font-weight: 400;
}

#compliance h4 {
	margin-bottom: 0.5em;
	font-weight: 600;
	font-size: 4vw;
}

#compliance ol li {
	margin-left: 1.6em;
	list-style: decimal;
}

#compliance ul {
	margin-left: 1.6em;
}
