@charset "UTF-8";

:root {
	--body: #333;
	--link: #333;
	--primary: #100454;
}

/*--------------------------------------------
ABOUT
---------------------------------------------*/

@media screen and (max-width: 999px) {
	#about {
		padding-top: calc(80 * 100vw / 768);
	}
}

@media print,
screen and (min-width: 1000px) {
	#about {
		padding-top: 75px;
	}
}

#about .li01 p {
	font-weight: 700;
	letter-spacing: .1em;
}

#about .li01 dl {
	font-weight: 500;
}

#about .li01 dt,
#about .li01 dd {
	display: inline;
}

#about .li01 dd {
	padding-left: .4em;
}

@media screen and (max-width: 999px) {
	#about .li01 .title01 {
		position: relative;
	}

	#about .li01 .title01 span:nth-of-type(2) {
		top: calc(8 * 100vw / 768);
		left: calc(293 * 100% / 768);
	}

	#about .li01 .wrap {
		position: relative;
		z-index: 1;
	}

	#about .li01 p {
		font-size: 2.6rem;
		line-height: 2;
		margin-top: calc(30 * 100vw / 768);
	}

	#about .li01 dl {
		margin-top: calc(20 * 100vw / 768);
	}

	#about .li01 dt,
	#about .li01 dd {
		font-size: 2.6rem;
		line-height: 2;
	}

	#about .li01 .link01 {
		margin-top: calc((33 - 13) * 100vw / 768);
		justify-content: flex-start;
	}

	#about .li01 picture {
		margin-left: auto;
		width: calc(518 * 100% / 720);
		margin-top: calc(-102 * 100vw / 768);
		z-index: -1;
		position: relative;
	}
}

@media print,
screen and (min-width: 1000px) {
	#about .li01 .title01 {
		padding-top: 39px;
		position: relative;
	}

	#about .li01 .title01 span:nth-of-type(2) {
		top: 0;
		left: 132px;
	}

	#about .li01 p {
		font-size: 2rem;
		line-height: 1.2;
		margin-top: calc(29px - 2px);
	}

	#about .li01 dl {
		text-align: right;
		margin-top: calc(26px - 2px - 9px);
	}

	#about .li01 dt,
	#about .li01 dd {
		font-size: 1.8rem;
		line-height: 2;
	}

	#about .li01 .link01 {
		margin-top: calc(27px - 9px);
	}
}

#about .li02 p {
	letter-spacing: .1em;
}

@media screen and (max-width: 999px) {
	#about .li02 {
		margin-top: calc((95 - 10) * 100vw / 768);
	}

	#about .li02 .title01 {
		position: relative;
	}

	#about .li02 .title01 span:nth-of-type(2) {
		top: calc(-18 * 100vw / 768);
		right: 0;
	}

	#about .li02 p {
		margin-top: calc(30 * 100vw / 768);
		font-size: 2.6rem;
		line-height: 2;
	}

	#about .li02 .link01 {
		margin-top: calc((34 - 13) * 100vw / 768);
	}

	#about .li02 picture {
		margin-left: auto;
		margin-top: calc(40 * 100vw / 768);
		width: calc(669 * 100% / 720);
	}
}

@media print,
screen and (min-width: 1000px) {
	#about .li02 {
		margin-top: 51px;
	}

	#about .li02 .wrap {
		position: relative;
	}

	#about .li02 .title01 span:nth-of-type(2) {
		top: 10px;
		right: 0;
	}

	#about .li02 p {
		margin-top: 20px;
		font-size: 1.8rem;
		line-height: 2;
	}

	#about .li02 .link01 {
		margin-top: calc(65px - 9px);
	}
}

#about .li03 p {
	letter-spacing: .1em;
}

@media screen and (max-width: 999px) {
	#about .li03 {
		margin-top: calc(95 * 100vw / 768);
		background-image: url("../images/about/bg03_sp.jpg");
		background-position: left bottom;
		background-size: 100% auto;
		background-repeat: no-repeat;
		padding-bottom: calc(527 * 100vw / 768);
	}

	#about .li03 .wrap {
		padding-top: calc(129 * 100vw / 768);
		position: relative;
	}

	#about .li03 .title01 {
		position: relative;
	}

	#about .li03 .title01 span:nth-of-type(2) {
		top: calc(-104 * 100vw / 768);
		left: calc(-29 * 100% / 720);
	}

	#about .li03 p {
		font-size: 2.6rem;
		line-height: 2;
		margin-top: calc(30 * 100vw / 768);
	}

	#about .li03 .link01 {
		margin-top: calc((60 - 13) * 100vw / 768);
	}
}

@media print,
screen and (min-width: 1000px) {
	#about .li03 {
		margin-top: 66px;
		background-image: url("../images/about/bg03_pc.jpg");
		background-position: right 0;
		background-size: auto 100%;
		background-repeat: no-repeat;
	}

	#about .li03 .wrap {
		height: 650px;
		position: relative;
	}

	#about .li03 .title01 {
		position: relative;
	}

	#about .li03 .title01 span:nth-of-type(2) {
		top: -63px;
		left: -11px;
	}

	#about .li03 p {
		font-size: 1.8rem;
		line-height: 2;
		margin-top: 20px;
	}

	#about .li03 .link01 {
		margin-top: calc(54px - 9px);
	}
}

@media screen and (min-width: 1000px) and (max-width:1340px) {
	#about .li03 {
		margin-top: 66px;
		background-image: url("../images/about/bg03_pc.jpg");
		background-position: top 0px left 450px;
		background-size: auto 100%;
		background-repeat: no-repeat;
	}
}

/*--------------------------------------------
ABOUT
--MESSAGE
---------------------------------------------*/

#message .bg01 h2 {
	color: rgba(153, 153, 153, .2);
	font-family: "Roboto", sans-serif;
	font-style: italic;
	font-weight: 900;
	letter-spacing: .02em;
}

@media screen and (max-width: 999px) {
	#message .bg01 {
		padding-top: calc(32 * 100vw / 768);
		padding-bottom: calc((32 - 13) * 100vw / 768);
	}

	#message .bg01 h2 {
		font-size: 9rem;
		text-align: right;
	}

	#message .bg01 .text02 {
		margin-top: calc((-20 - 17.5) * 100vw / 768);
	}

	#message .bg01 picture {
		margin-top: calc((27 - 17.5) * 100vw / 768);
		width: calc(518 * 100% / 720);
		margin-left: auto;
	}
}

@media print,
screen and (min-width: 1000px) {
	#message .bg01 {
		padding-top: 75px;
		padding-bottom: 59px;
	}

	#message .bg01 h2 {
		font-size: 9rem;
	}

	#message .bg01 .text02 {
		margin-top: calc(37px - 3px);
	}
}

#message .bg02 dt,
#message .bg02 dd {
	display: inline;
}

#message .bg02 dd {
	padding-left: .5em;
}

@media screen and (max-width: 999px) {
	#message .bg02 .wrap {
		padding-bottom: calc((88 - 13) * 100vw / 768);
	}
}

@media print,
screen and (min-width: 1000px) {
	#message .bg02 .wrap {
		padding-top: calc(54px - 9px);
		padding-bottom: calc(75px - 9px);
	}
}

/*--------------------------------------------
ABOUT
--HUB
---------------------------------------------*/

#hub01 li {
	display: flex;
	background-color: #fff;
}

#hub01 li:before {
	content: "";
	display: block;
	background-color: #f4f4f4;
	background-position: center;
	background-repeat: no-repeat;
	flex-shrink: 0;
}

#hub01 li:nth-child(1):before {
	background-image: url("../images/about/hub/icon01.png");
}

#hub01 li:nth-child(2):before {
	background-image: url("../images/about/hub/icon02.png");
}

#hub01 li:nth-child(3):before {
	background-image: url("../images/about/hub/icon03.png");
}

#hub01 li p span {
	font-weight: 600;
	color: #151190;
}

#hub01 h3 {
	text-align: center;
	letter-spacing: .1em;
	text-indent: .1em;
	font-weight: 700;
	color: #100454;
}

@media screen and (max-width: 999px) {
	#hub01 .wrap {
		position: relative;
		padding-top: calc((91 - 8.75) * 100vw / 768);
		padding-left: 0;
		padding-right: 0;
	}

	#hub01 .box {
		padding-left: calc(24 * 100% / 768);
		padding-right: calc(24 * 100% / 768);
	}

	#hub01 .title01 span:nth-of-type(2) {
		right: calc(54 * 100% / 720);
		top: calc(32 * 100vw / 768);
	}

	#hub01 .text01 {
		margin-top: calc((51 - 8.75 - 13) * 100vw / 768);
	}

	#hub01 ul {
		margin-top: calc((36 - 13) * 100vw / 768);
		padding-left: calc(24 * 100% / 768);
		padding-right: calc(24 * 100% / 768);
	}

	#hub01 li {
		flex-direction: column;
		flex-wrap: wrap;
		height: calc(300 * 100vw / 768);
		box-shadow: 0 0 calc(10 * 100vw / 768) rgba(0, 0, 0, .05);
	}

	#hub01 li+li {
		margin-top: calc(76 * 100vw / 768);
	}

	#hub01 li:before {
		width: calc(300 * 100% / 720);
		height: 100%;
	}

	#hub01 li:nth-child(1):before {
		background-size: auto calc(129 * 100vw / 768);
	}

	#hub01 li:nth-child(2):before {
		background-size: auto calc(133 * 100vw / 768);
	}

	#hub01 li:nth-child(3):before {
		background-size: auto calc(131 * 100vw / 768);
	}

	#hub01 h3,
	#hub01 li p {
		padding-left: calc(40 * 100% / 720);
		padding-right: calc(40 * 100% / 720);
		width: calc(420 * 100% / 720);
	}

	#hub01 h3 {
		padding-top: calc((65 - 3.4) * 100vw / 768);
		font-size: 3.4rem;
		line-height: 1.2;
	}

	#hub01 li p {
		font-size: 2.6rem;
		line-height: 1.5;
		margin-top: calc(20 * 100vw / 768);
		width: calc(* 100% / 768);
	}

	#hub01 .wrap>picture {
		width: 100%;
		margin-top: calc(33 * 100vw / 768);
	}
}

@media screen and (min-width: 1000px) and (max-width:1439px) {
	#hub01 ul {
		margin-top: 0 !important;
	}
}

@media print,
screen and (min-width: 1000px) {
	#hub01 .wrap {
		padding-top: 50px;
		padding-bottom: 52px;
		display: flex;
		align-items: flex-start;
		flex-wrap: wrap;
		position: relative;
		align-items: center;
	}

	#hub01 .box {
		width: 50%;
		order: 1;
	}

	#hub01 .title01 span:nth-of-type(2) {
		bottom: 104px;
		right: 25px;
	}

	#hub01 .text01 {
		margin-top: calc(40px - 3px - 9px);
	}

	#hub01 .wrap>picture {
		order: 2;
		width: 50%;
		text-align: right;
	}

	#hub01 .wrap>picture img {
		width: calc(669 * 100% / 720);
	}

	#hub01 ul {
		width: 100%;
		order: 3;
		margin-top: -60px;
		position: relative;
		display: flex;
	}

	#hub01 li {
		flex-direction: column;
		box-shadow: 0 0 10px rgba(0, 0, 0, .05);
		width: 300px;
		padding-bottom: calc(34px - 7px);
	}

	#hub01 li:before {
		width: 100%;
		height: 240px;
	}

	#hub01 li+li {
		margin-left: 60px;
		position: relative;
	}

	#hub01 li+li:after {
		content: "";
		display: block;
		background: url("../images/ui/icon/next01.png") 0 0 / contain no-repeat;
		width: 38px;
		height: 44px;
		left: -53px;
		top: 148px;
		position: absolute;
	}

	#hub01 h3,
	#hub01 li p {
		padding-left: 30px;
		padding-right: 30px;
	}

	#hub01 h3 {
		font-size: 2rem;
		line-height: 1.2;
		margin-top: calc(20px - 2px);
	}

	#hub01 li p {
		margin-top: 10px;
	}

	#hub01 li:nth-child(1):before {
		background-size: auto 129px;
	}

	#hub01 li:nth-child(2):before {
		background-size: auto 133px;
	}

	#hub01 li:nth-child(3):before {
		background-size: auto 131px;
	}
}

@media screen and (max-width: 999px) {
	#hub02 .wrap {
		padding-left: 0;
		padding-right: 0;
		padding-top: calc((103 - 8.75) * 100vw / 768);
	}

	#hub02 li:not(:last-child) {
		padding-left: calc(24 * 100% / 768);
		padding-right: calc(24 * 100% / 768);
	}

	#hub02 li+li {
		margin-top: calc((156 - 8.75) * 100vw / 768);
	}

	#hub02 picture {
		margin-top: calc((40 - 13) * 100vw / 768);
	}

	#hub02 li:last-child>div:nth-of-type(1) {
		padding-left: calc(24 * 100% / 768);
		padding-right: calc(24 * 100% / 768);
	}
}

@media print,
screen and (min-width: 1000px) {
	#hub02 {
		padding-top: calc(52px - 7.5px);
		padding-bottom: 109px;
	}

	#hub02 li+li {
		margin-top: calc(46px - 6px);
	}

	#hub02 .img {
		margin-top: calc(17px - 9px);
	}
}

/*--------------------------------------------
ABOUT
--SCENE
---------------------------------------------*/

#scene01 h2 {
	font-weight: 900;
	line-height: 1.2;
	font-family: "Roboto", sans-serif;
	font-weight: 900;
	font-style: italic;
	text-align: right;
	color: rgba(153, 153, 153, .2);
}

@media screen and (max-width: 999px) {
	#scene01 .wrap {
		padding-bottom: calc((66 - 9 - 8.75) * 100vw / 768);
		padding-left: 0;
		padding-right: 0;
	}

	#scene01 p {
		padding-top: calc((46 - 13) * 100vw / 768);
		padding-left: calc(24 * 100% / 768);
		padding-right: calc(24 * 100% / 768);
	}

	#scene01 h2 {
		font-size: 9rem;
		margin-top: calc((28 - 13 - 9) * 100vw / 768);
		padding-left: calc(24 * 100% / 768);
		padding-right: calc(24 * 100% / 768);
	}
}

@media print,
screen and (min-width: 1000px) {
	#scene01 {
		overflow: hidden;
	}

	#scene01 .wrap {
		padding-top: 103px;
		padding-bottom: 95px;
	}

	#scene01 p {
		padding-top: calc(82px - 9px);
	}

	#scene01 .wrap>div:nth-of-type(2) {
		display: flex;
		flex-direction: column;
	}

	#scene01 h2 {
		font-size: 9rem;
		margin-top: auto;
	}
}

#scene02 .box {
	background-color: #fff;
}

@media screen and (max-width: 999px) {
	#scene02 .wrap {
		/*padding-top: calc( 84 * 100vw / 768 );*/
		padding-bottom: calc(84 * 100vw / 768);
	}

	#scene02 .col-wrap {
		margin-top: calc((43 - 8.75 - 13) * 100vw / 768);
	}

	#scene02 .box {
		margin-top: calc((49 - 13) * 100vw / 768);
		padding-top: calc((44 - 13) * 100vw / 768);
		padding-left: calc(24 * 100% / 720);
		padding-right: calc(24 * 100% / 720);
		padding-bottom: calc((66 - 13) * 100vw / 768);
	}

	#scene02 picture {
		text-align: right;
	}

	#scene02 picture img {
		width: calc(540 * 100% / 720);
	}
}

@media print,
screen and (min-width: 1000px) {
	#scene02 .wrap {
		padding-top: 82px;
		padding-bottom: 88px;
	}

	#scene02 .col-wrap {
		margin-top: 82px;
	}

	#scene02 .box {
		margin-top: calc(35px - 9px);
		padding-top: calc(47px - 9px);
		padding-left: 30px;
		padding-right: 30px;
		padding-bottom: 13px;
	}

	#scene02 .sub {
		text-align: right;
		font-size: 1.4rem;
		letter-spacing: .1em;
		margin-top: calc(19px - 9px);
	}
}

@media screen and (max-width: 999px) {
	#scene03 .wrap {
		padding-top: calc((87 - 7.5) * 100vw / 768);
		padding-bottom: calc(104 * 100vw / 768);
	}

	#scene03 picture {
		margin-top: calc((58 - 13) * 100vw / 768);
	}
}

@media print,
screen and (min-width: 1000px) {
	#scene03 .wrap {
		padding-top: 35px;
		padding-bottom: 14px;
	}
}

@media screen and (max-width: 999px) {
	#scene04 .wrap {
		padding-top: calc((126 - 8.75) * 100vw / 768);
		padding-bottom: calc(79 * 100vw / 768);
	}

	#scene04 .col-wrap {
		margin-top: calc((74 - 8.75 - 7.5) * 100vw / 768);
	}

	#scene04 picture {
		margin-top: calc((57 - 13) * 100vw / 768);
	}
}

@media print,
screen and (min-width: 1000px) {
	#scene04 .wrap {
		padding-top: 88px;
		padding-bottom: 86px;
	}

	#scene04 .col-wrap {
		margin-top: 53px;
	}
}

/*--------------------------------------------
OVERVIEW
---------------------------------------------*/

#overview h2 {
	color: #041e6e;
	font-weight: 700;
	letter-spacing: .1em;
	font-style: italic;
}

#overview li {
	background-color: #05268a;
	color: #fff;
	position: relative;
	background-repeat: repeat;
	background-position: 0 0;
}

#overview h3 span:nth-of-type(1) {
	font-weight: 700;
	letter-spacing: .1em;
	line-height: 1.2;
	font-style: italic;
}

#overview h3 span:nth-of-type(2) {
	color: rgba(255, 255, 255, .05);
	font-weight: 900;
	font-family: "Roboto", sans-serif;
	letter-spacing: .02em;
	position: absolute;
	line-height: 1;
	text-align: right;
}

#overview h3:after {
	content: "";
	display: block;
	background-color: #fff;
	font-size: 0;
}

#overview .link01 {
	position: relative;
}

@media screen and (max-width: 999px) {
	#overview {
		background: url("../images/overview/bg_sp.png") left top / 100% auto no-repeat;
	}

	#overview .wrap {
		padding-top: calc(141 * 100vw / 768);
		padding-bottom: calc(106 * 100vw / 768);
	}

	#overview h2 {
		font-size: 7rem;
		padding-left: calc(21 * 100% / 720);
	}

	#overview ul {
		margin-top: calc(88 * 100vw / 768);
	}

	#overview li {
		background-image: url("../images/overview/bg_list_sp.png");
		padding-top: calc((30 - 3) * 100vw / 768);
		padding-left: calc(20 * 100% / 720);
		padding-right: calc(20 * 100% / 720);
		padding-bottom: calc(30 * 100vw / 768);
	}

	#overview li+li {
		margin-top: calc(31 * 100vw / 768);
	}

	#overview h3 span:nth-of-type(1) {
		font-size: 3rem;
		line-height: 1.2;
	}

	#overview h3 span:nth-of-type(2) {
		font-size: 7rem;
		right: 0;
		right: calc(16 * 100% / 720);
		top: calc(23 * 100vw / 768);
	}

	#overview h3:after {
		margin-top: calc((19 - 3) * 100vw / 768);
		width: calc(150 * 100% / 680);
		height: calc(3 * 100vw / 768);
	}

	#overview p {
		margin-top: calc((23 - 13) * 100vw / 768);
	}

	#overview .link01 {
		margin-top: calc((19 - 13) * 100vw / 768);
	}
}

@media print,
screen and (min-width: 1000px) {
	#overview {
		background: url("../images/overview/bg_pc.png") center / auto 900px no-repeat;
	}

	#overview .wrap {
		padding-top: 153px;
		padding-bottom: 83px;
	}

	#overview h2 {
		font-size: 7rem;
		padding-left: 30px;
	}

	#overview ul {
		padding-left: 30px;
		padding-right: 30px;
		display: flex;
		margin-top: 84px;
	}

	#overview li {
		background-image: url("../images/overview/bg_list_pc.png");
		width: calc(450 * 100% / 1380);
		padding-top: calc(40px - 3px);
		padding-left: calc(20 * 100% / 1380);
		padding-right: calc(20 * 100% / 1380);
		padding-bottom: 50px;
	}

	#overview li:not(:nth-child(3n+1)) {
		margin-left: calc(30 * 100% / 1380);
	}

	#overview h3 span:nth-of-type(1) {
		font-size: 2.7rem;
		line-height: 1.2;
	}

	#overview h3 span:nth-of-type(2) {
		font-size: 7rem;
		right: 0;
		bottom: 36px;
	}

	#overview h3:after {
		margin-top: calc(19px + 3px);
		width: 150px;
		height: 3px;
	}

	#overview p {
		margin-top: calc(21px - 9px);
	}

	#overview .link01 {
		position: absolute;
		bottom: 20px;
		right: 20px;
	}
}

@media screen and (max-width: 999px) {
	#overview01 .wrap {
		padding-left: 0;
		padding-right: 0;
		padding-top: calc((89 - 10) * 100vw / 768);
		padding-bottom: calc((81 - 10) * 100vw / 768);
	}

	#overview01 .wrap>div:nth-of-type(1) {
		padding-left: calc(24 * 100% / 768);
		padding-right: calc(24 * 100% / 768);
	}

	#overview01 .link01 {
		margin-top: calc((41 - 13) * 100vw / 768);
	}

	#overview01 picture {
		margin-top: calc(47 * 100vw / 768);
	}
}

@media print,
screen and (min-width: 1000px) {
	#overview01 .link01 {
		margin-top: calc(20px - 9px);
	}
}

@media screen and (max-width: 999px) {
	#overview02 .wrap {
		padding-top: calc((81 - 10) * 100vw / 768);
		padding-left: 0;
		padding-right: 0;
	}

	#overview02 .col-wrap>div:nth-of-type(1) {
		padding-left: calc(24 * 100% / 768);
		padding-right: calc(24 * 100% / 768);
	}

	#overview02 .link01 {
		margin-top: calc((52 - 13) * 100vw / 768);
	}

	#overview02 picture {
		margin-top: calc(97 * 100vw / 768);
	}
}

@media print,
screen and (min-width: 1000px) {
	#overview02 .wrap {
		padding-top: 51px;
		padding-bottom: 60px;
	}

	#overview02 .link01 {
		margin-top: calc(28px - 9px);
	}
}

/*--------------------------------------------
OVERVIEW
--COMMON
---------------------------------------------*/

.overview-title .wrap {
	position: relative;
}

.overview-title h2 {
	color: #100454;
	font-weight: 700;
	letter-spacing: .1em;

}

.overview-title h2:before {
	font-family: "Roboto", sans-serif;
	font-weight: 900;
	font-style: italic;
	color: rgba(7, 49, 144, .05);
	position: absolute;
	right: 0;
}

@media screen and (max-width: 999px) {
	.overview-title h2 {}

	.overview-title h2.width {
		width: calc(198 * 100% / 720);
		margin-left: auto;
		margin-right: auto;
	}

	.overview-title h2[data-before] {
		margin-top: calc(17 * 100vw / 768);
		font-size: 4rem;
		text-align: center;
		text-indent: .1em;
	}

	.overview-title h2[data-before]:before {
		font-size: 7rem;
		top: calc(111 * 100vw / 768);
		right: calc(24 * 100% / 768);
		text-align: right;
	}

	.overview-title p {
		margin-top: calc((46 - 13) * 100vw / 768);
	}
}

@media print,
screen and (min-width: 1000px) {
	.overview-title h2 {
		font-size: 40px;
		font-style: italic;
	}

	.overview-title h2[data-before] {
		font-size: 4rem;
	}

	.overview-title h2[data-before]:before {
		font-size: 7rem;
		top: 111px;
	}

	.overview-title p {
		margin-top: calc(24px - 9px);
	}
}

.overview-list .col-11>ul>li+li {
	border-top-style: solid;
	border-top-color: #c4c4c6;
}

.overview-list em {
	font-weight: 700;
}

@media screen and (max-width: 999px) {
	.overview-list .col-11>ul>li+li {
		border-top-width: calc(3 * 100vw / 768);
		margin-top: calc((47 - 13) * 100vw / 768);
		padding-top: calc((44 - 10) * 100vw / 768);
	}
}

@media print,
screen and (min-width: 1000px) {
	.overview-list .col-11>ul {
		padding-left: 31px;
		padding-right: 88px;
	}

	.overview-list .col-11>ul>li {
		display: flex;
		align-items: flex-start;
	}

	.overview-list .col-11>ul>li+li {
		border-top-width: 1px;
		margin-top: calc(33px - 7.5px);
		padding-top: calc(42px - 7.5px);
	}

	.overview-list h3 {
		flex-shrink: 0;
		width: 280px;
		text-align: center;
		text-indent: .1em;
	}

	.overview-list .text01 {
		margin-top: calc(-7.5px + 9px);
	}
}

.overview-sections dt {
	font-weight: 700;
}

@media screen and (max-width: 999px) {
	.overview-sections .col-7 {
		margin-top: calc((116 - 13 - 10) * 100vw / 768);
	}

	.overview-sections dl {
		margin-top: calc((36 - 21) * 100vw / 768);
	}

	.overview-sections dl>div+div {
		margin-top: calc(52 * 100vw / 768);
	}

	.overview-sections dt,
	.overview-sections dd {
		font-size: 2.6rem;
		line-height: 2;
	}
}

@media print,
screen and (min-width: 1000px) {
	.overview-sections dl {
		margin-top: calc(36px - 21px);
	}

	.overview-sections dl div {
		display: flex;
		align-items: flex-start;
	}

	.overview-sections dl div+div {
		border-top: 1px solid #c4c4c6;
		margin-top: calc(21px - 9px);
		padding-top: calc(21px - 9px);
	}

	.overview-sections dt,
	.overview-sections dd {
		font-size: 1.8rem;
		line-height: 2;
	}

	.overview-sections dt {
		color: #100454;
		flex-shrink: 0;
		width: 280px;
		padding-left: 28px;
		font-style: italic;
	}
}

.list-member dt span {
	font-weight: 700;
	letter-spacing: .1em;
}

.list-member h3 {
	font-weight: 700;
	font-style: italic;
	letter-spacing: .1em;
}

.list-member h3:after {
	content: "";
	display: block;
	background-color: #05268a;
	font-size: 0;
}

.list-member h4 span {
	letter-spacing: .1em;
}

.list-member h4 span:nth-of-type(2) {
	font-weight: 700;
}

@media screen and (max-width: 999px) {
	.list-member>li+li {
		margin-top: calc((118 - 13) * 100vw / 768);
	}

	.list-member .list-bg {
		background-image: url("../images/overview/partner/bg_member_sp.png");
		background-repeat: no-repeat;
		background-size: auto calc(200 * 100vw / 768);
	}

	.list-member dt {
		display: flex;
		flex-direction: column;
		justify-content: center;
	}

	.list-member dt>span {
		font-style: italic;
	}

	.list-member dt>span:nth-of-type(1) {
		font-size: 2.6rem;
		line-height: 1.7308;
	}

	.list-member dt>span:nth-of-type(2) {
		margin-top: calc(10 * 100vw / 768);
		font-size: 3.6rem;
		line-height: 1.25;
	}

	.list-member dt>span:nth-of-type(2) span {
		font-size: 2.6rem;
		line-height: 1.7308;
	}

	.list-member dt>span:nth-of-type(3) {
		font-size: 2.6rem;
		line-height: 1.7308;
	}

	.list-member dd {
		margin-top: calc(25 * 100vw / 768);
	}

	.list-member h3 {
		font-size: 3.6rem;
	}

	.list-member h3:after {
		width: calc(300 * 100% / 720);
		height: calc(3 * 100vw / 768);
		margin-top: calc(24 * 100vw / 768);
	}

	.list-member h3+ul {
		margin-top: calc(58 * 100vw / 768);
	}

	.list-member h4 span {
		display: block;
	}

	.list-member h4 span:nth-of-type(1) {
		font-size: 2.6rem;
		line-height: 1.2308;
	}

	.list-member h4 span:nth-of-type(2) {
		font-size: 3.2rem;
		margin-top: calc(20 * 100vw / 768);
	}

	.list-member .ls {
		margin-top: calc(10 * 100vw / 768);
		font-size: 2.6rem;
		line-height: 1.2308;
		margin-top: calc(20 * 100vw / 768);
	}

	.list-member .pattern01 {
		background-position: calc(201 * 100vw / 768) calc(30 * 100vw / 768);
		position: relative;
	}

	.list-member .pattern01 picture {
		width: calc(260 * 100% / 720);
	}

	.list-member .pattern01 dt {
		position: absolute;
		top: 0;
		left: calc(287 * 100% / 720);
		height: calc(260 * 100vw / 768);
	}

	.list-member .pattern01 dd {
		margin-top: calc((34 - 13) * 100vw / 768);
	}

	.list-member .pattern02 {
		background-position: calc(201 * 100vw / 768) calc(30 * 100vw / 768);
		position: relative;
	}

	.list-member .pattern02 picture {
		width: calc(260 * 100% / 720);
	}

	.list-member .pattern02 dt {
		height: calc(260 * 100vw / 768);
	}

	.list-member .pattern02 picture+dl dt {
		position: absolute;
		top: 0;
		left: calc(287 * 100% / 720);
	}

	.list-member .pattern02 dd {
		margin-top: calc((34 - 13) * 100vw / 768);
	}

	.list-member .pattern02+.pattern02 {
		margin-top: calc((118 - 13) * 100vw / 768);
	}

	.list-member .pattern03 {
		display: flex;
		align-items: center;
	}

	.list-member .pattern03 picture {
		width: calc(260 * 100% / 720);
		margin-right: calc(27 * 100% / 720);
	}

	.list-member .pattern03+.pattern03 {
		margin-top: calc(41 * 100vw / 768);
	}

	.list-member .pattern04 {
		padding-top: calc((73 - 9.5) * 100vw / 768);
		background-position: 0 0;
		min-height: calc(260 * 100vw / 768);
	}
}

@media print,
screen and (min-width: 1000px) {
	.list-member>li+li {
		margin-top: 90px;
	}

	.list-member picture {
		flex-shrink: 0;
	}

	.list-member .list-bg {
		background-image: url("../images/overview/partner/bg_member_pc.png");
		background-repeat: no-repeat;
	}

	.list-member dt {
		display: flex;
		align-items: baseline;
		flex-wrap: wrap;
		margin-top: -7.5px;
	}

	.list-member dt>span:nth-of-type(1) {
		font-size: 2rem;
		margin-right: 1em;
		line-height: 1.3;
		padding: 5px 0;
	}

	.list-member dt>span:nth-of-type(2) {
		font-size: 3rem;
		line-height: 1.5;
	}

	.list-member dt>span:nth-of-type(2) span {
		font-size: 2rem;
		line-height: 2.25;
	}

	.list-member dt>span:nth-of-type(3) {
		font-size: 2rem;
		margin-top: 10px;
		line-height: 2.25;
	}

	.list-member dd {
		margin-top: 25px;
	}

	.list-member h3 {
		font-size: 3rem;
	}

	.list-member h3:after {
		width: 150px;
		height: 3px;
		margin-top: 21px;
	}

	.list-member h3+ul {
		margin-top: 39px;
	}

	.list-member h4 {
		margin-top: calc(20px - 3px);
	}

	.list-member h4 span {
		display: block;
	}

	.list-member h4 span:nth-of-type(1) {
		font-size: 1.8rem;
		line-height: 1.3333;
	}

	.list-member h4 span:nth-of-type(2) {
		font-size: 2rem;
		margin-top: calc(17px - 3px);
	}

	.list-member .ls {
		margin-top: 10px;
		font-size: 1.8rem;
		line-height: 1.3333;
	}

	.list-member .pattern01 {
		display: flex;
	}

	.list-member .pattern01 picture {
		width: calc(210 * 100% / 1080);
		margin-right: calc(28 * 100% / 1080);
		flex-shrink: 0;
	}

	.list-member .pattern01 dt {
		padding-top: 18px;
	}

	.list-member .pattern02 {
		display: flex;
	}

	.list-member .pattern02 picture {
		width: calc(210 * 100% / 720);
		margin-right: calc(28 * 100% / 720);
		flex-shrink: 0;
	}

	.list-member .pattern02 dt {
		padding-top: 6px;
	}

	.list-member li.pattern02:nth-child(n+3) {
		margin-top: 60px;
	}

	.list-member li.pattern04:nth-child(n+3) {
		margin-top: calc(107px - 9px);
	}
}

@media screen and (min-width: 1000px) and (max-width:1439px) {
	.list-member .pattern01 {
		background-position: calc(189 * 100vw / 1440) 0;
		background-size: calc(420 * 100% / 1080) auto;
		min-height: calc(200 * 100vw / 1440);
	}

	.list-member .pattern02 {
		background-position: calc(189 * 100vw / 1440) 0;
		background-size: calc(420 * 100% / 720) auto;
		min-height: calc(200 * 100vw / 1440);
	}

	.list-member .pattern04 {
		background-position: calc(189 * 100vw / 1440) 0;
		background-size: calc(420 * 100% / 720) auto;
		min-height: calc(200 * 100vw / 1440);
	}
}

@media print,
screen and (min-width: 1440px) {
	.list-member .pattern01 {
		background-position: 189px 0;
		background-size: 420px auto;
		min-height: 200px;
	}

	.list-member .pattern02 {
		background-position: 189px 0;
		background-size: 420px auto;
		min-height: 200px;
	}

	.list-member .pattern04 {
		background-position: 189px 0;
		background-size: 420px auto;
		min-height: 200px;
	}
}

/*--------------------------------------------
OVERVIEW
--PARTNER
---------------------------------------------*/

@media screen and (max-width: 999px) {
	#partnerTitle .wrap {
		padding-top: calc(62 * 100vw / 768);
		padding-bottom: calc((96 - 13) * 100vw / 768);
	}
}

@media print,
screen and (min-width: 1000px) {
	#partnerTitle .wrap {
		padding-top: 93px;
		padding-bottom: calc(112px - 9px);
	}
}

#partnerList li+li {
	border-top-style: solid;
	border-top-color: #c4c4c6;
}

@media screen and (max-width: 999px) {
	#partnerList .wrap {
		padding-bottom: calc((108 - 13) * 100vw / 768);
	}
}

@media print,
screen and (min-width: 1000px) {
	#partnerList ul {
		padding-top: calc(60px - 7.5px);
		padding-bottom: calc(44px - 9px);
	}
}

@media screen and (max-width: 999px) {
	#partnerSections .wrap {
		padding-top: calc((107 - 10) * 100vw / 768);
		padding-bottom: calc((152 - 13) * 100vw / 768);
	}
}

@media print,
screen and (min-width: 1000px) {
	#partnerSections .wrap {
		padding-top: calc(57px - 7.5px);
		padding-bottom: calc(40px - 9px);
	}
}

@media screen and (max-width: 999px) {
	#partnerMenber .wrap {
		padding-top: calc(87 * 100vw / 768);
		padding-bottom: calc(87 * 100vw / 768);
	}

	#partnerMenber .list-member {
		margin-top: calc(66 * 100vw / 768);
	}
}

@media print,
screen and (min-width: 1000px) {
	#partnerMenber .wrap {
		padding-top: 67px;
		padding-bottom: 83px;
	}

	#partnerMenber .list-member {
		margin-top: 75px;
	}
}

/*--------------------------------------------
OVERVIEW
--ROAD
---------------------------------------------*/

@media screen and (max-width: 999px) {
	#roadTitle .wrap {
		padding-top: calc(62 * 100vw / 768);
		padding-bottom: calc((96 - 13) * 100vw / 768);
	}
}

@media print,
screen and (min-width: 1000px) {
	#roadTitle .wrap {
		padding-top: 92px;
		padding-bottom: calc(112px - 9px);
	}
}

#roadList li+li {
	border-top-style: solid;
	border-top-color: #c4c4c6;
}

#roadList ol.text01 {
	list-style: decimal;
	margin-left: 1.5em;
}

@media screen and (max-width: 999px) {
	#roadList .wrap {
		padding-bottom: calc((108 - 13) * 100vw / 768);
	}
}

@media print,
screen and (min-width: 1000px) {
	#roadList ul {
		padding-bottom: calc(44px - 9px);
	}

}

@media screen and (max-width: 999px) {
	#roadSections .wrap {
		padding-top: calc((107 - 10) * 100vw / 768);
		padding-bottom: calc((152 - 13) * 100vw / 768);
	}
}

@media print,
screen and (min-width: 1000px) {
	#roadSections .wrap {
		padding-top: calc(57px - 7.5px);
		padding-bottom: calc(40px - 9px);
	}
}

@media screen and (max-width: 999px) {
	#roadMenber .wrap {
		padding-top: calc(87 * 100vw / 768);
		padding-bottom: calc(87 * 100vw / 768);
	}

	#roadMenber .list-member {
		margin-top: calc(66 * 100vw / 768);
	}
}

@media print,
screen and (min-width: 1000px) {
	#roadMenber .wrap {
		padding-top: 67px;
		padding-bottom: 83px;
	}

	#roadMenber .list-member {
		margin-top: 75px;
	}
}

/*--------------------------------------------
OVERVIEW
--THREADS
---------------------------------------------*/

@media screen and (max-width: 999px) {
	#threadsTitle .wrap {
		padding-top: calc(62 * 100vw / 768);
		padding-bottom: calc((96 - 13) * 100vw / 768);
	}
}

@media print,
screen and (min-width: 1000px) {
	#threadsTitle .wrap {
		padding-top: 93px;
		padding-bottom: 68px;
	}
}

@media screen and (max-width: 999px) {
	#threadsSections .wrap {
		padding-top: calc((107 - 10) * 100vw / 768);
		padding-bottom: calc((152 - 13) * 100vw / 768);
	}
}

@media print,
screen and (min-width: 1000px) {
	#threadsSections .wrap {
		padding-top: calc(64px - 7.5px);
		padding-bottom: calc(76px - 9px);
	}
}

@media screen and (max-width: 999px) {
	#threadsMenber .wrap {
		padding-top: calc(87 * 100vw / 768);
		padding-bottom: calc(87 * 100vw / 768);
	}

	#threadsMenber .list-member {
		margin-top: calc(66 * 100vw / 768);
	}
}

@media print,
screen and (min-width: 1000px) {
	#threadsMenber .wrap {
		padding-top: 84px;
		padding-bottom: 97px;
	}

	#threadsMenber .list-member {
		margin-top: 97px;
	}
}

/*--------------------------------------------
OVERVIEW
--NEWWORK
---------------------------------------------*/

#network01 h2 {
	text-align: center;
	letter-spacing: .1em;
	text-indent: .1em;
	color: #100454;
	font-weight: 700;
	line-height: 1.2;
}

#network01 h3 {
	text-align: center;
	font-weight: 700;
	letter-spacing: .1em;
}

#network01 dl {
	background-repeat: no-repeat;
	background-position: 0 0;
}

#network01 dt {
	font-weight: 700;
}

@media screen and (max-width: 999px) {
	#network01 .wrap {
		padding-top: calc((99 - 4) * 100vw / 768);
		padding-bottom: calc(62 * 100vw / 768);
	}

	#network01 h2 {
		font-size: 4rem;
	}

	#network01 h3 {
		font-size: 3.5rem;
		margin-top: calc(81 * 100vw / 768);
	}

	#network01 ul {
		margin-top: calc((100 - 4) * 100vw / 768);
	}

	#network01 li+li {
		margin-top: calc((67 - 13) * 100vw / 768);
	}

	#network01 dl {
		padding-top: calc((63 - 4.5) * 100vw / 768);
		background-image: url("../images/overview/newwork/bg_sp.png");
		background-size: auto calc(200 * 100vw / 768);
	}

	#network01 dt {
		font-size: 3.6rem;
		line-height: 1.25;
		margin-bottom: calc((29 - 4.5 - 13) * 100vw / 768);
		font-style: italic;
	}

	#network01 dd {
		font-size: 2.6rem;
		line-height: 2;
	}
}

@media print,
screen and (min-width: 1000px) {
	#network01 .wrap {
		padding-top: calc(107px - 4px);
		padding-bottom: calc(89px - 3px);
	}

	#network01 h2 {
		font-size: 4rem;
	}

	#network01 h3 {
		font-size: 3rem;
		margin-top: 20px;
	}

	#network01 ul {
		margin-top: calc(100px - 4px);
	}

	#network01 dl {
		padding-top: 20px;
		background-image: url("../images/overview/newwork/bg_pc.png");
		background-size: 100% auto;
	}

	#network01 dt {
		font-size: 2.4rem;
	}

	#network01 dd {
		margin-top: 10px;
		font-size: 1.8rem;
		line-height: 1.3333;
	}
}

#newwork02 h2 {
	text-align: center;
	letter-spacing: .1em;
	text-indent: .1em;
	font-weight: 700;
}

#newwork02 h3 {
	font-weight: 700;
	letter-spacing: .1em;
}

#newwork02 thead th {
	border-bottom-style: solid;
	border-bottom-color: #fff;
}

#newwork02 th,
#newwork02 td {
	font-weight: 500;
	text-align: left;
	vertical-align: top;
}

@media screen and (max-width: 999px) {
	#newwork02 .wrap {
		padding-top: calc(131 * 100vw / 768);
		padding-bottom: calc(103 * 100vw / 768);
	}

	#newwork02 h2 {
		font-size: 4rem;
	}

	#newwork02 h3 {
		font-size: 3.5rem;
		margin-top: calc(81 * 100vw / 768);
	}

	#newwork02 .text01 {
		margin-top: calc(30 * 100vw / 768);
	}

	#newwork02 .table-container {
		margin-top: calc((63 - 13 - 3) * 100vw / 768);
	}

	#newwork02 table {
		width: calc(1640 * 100% / 720);
	}

	#newwork02 th,
	#newwork02 td {
		font-size: 2.6rem;
		line-height: 1.2308;
	}

	#newwork02 thead th {
		padding-bottom: calc((13 - 3) * 100vw / 768);
		border-bottom-width: calc(3 * 100vw / 768);
	}

	#newwork02 thead th:nth-of-type(1) {
		width: calc(178 * 100% / 1640);
	}

	#newwork02 thead th:nth-of-type(2) {
		width: calc(480 * 100% / 1640);
	}

	#newwork02 tbody th,
	#newwork02 tbody td {
		padding-top: calc((12.5 - 3) * 100vw / 768);
		padding-bottom: calc((12.5 - 3) * 100vw / 768);
	}

	#newwork02 tbody td:nth-of-type(2) {
		padding-right: calc(40 * 100% / 1640);
	}

	#newwork02 tbody tr:nth-of-type(1) td {
		padding-top: calc((13 - 3) * 100vw / 768);
	}
}

@media print,
screen and (min-width: 1000px) {
	#newwork02 .wrap {
		padding-top: 100px;
		padding-bottom: calc(92px - 3px - 50px);
	}

	#newwork02 h2 {
		font-size: 4rem;
	}

	#newwork02 h3 {
		font-size: 3rem;
		margin-top: 70px;
	}

	#newwork02 .text01 {
		margin-top: 20px;
	}

	#newwork02 .table-container {
		margin-top: calc(61px - 9px - 3px);
	}

	#newwork02 table {
		width: 1380px;
	}

	#newwork02 th,
	#newwork02 td {
		font-size: 1.8rem;
		line-height: 1.3333;
	}

	#newwork02 thead th {
		padding-bottom: calc(17px - 3px);
		border-bottom-width: 1px;
	}

	#newwork02 thead th:nth-of-type(1) {
		width: calc(160 * 100% / 1440);
	}

	#newwork02 thead th:nth-of-type(2) {
		width: calc(480 * 100% / 1440);
	}

	#newwork02 tbody th,
	#newwork02 tbody td {
		padding-top: calc(12.5px - 3px);
		padding-bottom: calc(12.5px - 3px);
	}

	#newwork02 tbody td:nth-of-type(2) {
		padding-right: 34px;
	}

	#newwork02 tbody tr:nth-of-type(1) td {
		padding-top: calc(17px - 3px);
	}
}

#network03 h2 {
	text-align: center;
	letter-spacing: .1em;
	text-indent: .1em;
	color: #100454;
	font-weight: 700;
}

#network03 h3 {
	font-weight: 700;
	letter-spacing: .1em;
	color: #100454;
}

#network03 .datalist01 {
	display: flex;
}

#network03 .datalist01 dl {
	display: flex;
}

#network03 dt,
#network03 dd {
	font-weight: 500;
}

@media screen and (max-width: 999px) {
	#network03 .wrap {
		padding-top: calc(128 * 100vw / 768);
		padding-bottom: calc(73 * 100vw / 768);
		padding-left: 0;
		padding-right: 0;
	}

	#network03 h2 {
		font-size: 4rem;
	}

	#network03 .col-wrap {
		margin-top: calc(121 * 100vw / 768);
	}

	#network03 .col-wrap>div:first-of-type {
		padding-left: calc(24 * 100% / 768);
		padding-right: calc(24 * 100% / 768);
	}

	#network03 h3 {
		font-size: 3.5rem;
	}

	#network03 .text01 {
		margin-top: calc(47.5 * 100vw / 768);
	}

	#network03 .datalist01 {
		margin-top: calc((65 - 13 - 3) * 100vw / 768);
	}

	#network03 dt,
	#network03 dd {
		font-size: 2.6rem;
		line-height: 1.2308;
	}

	#network03 .datalist01 {
		width: calc(1160 * 100% / 720);
	}

	#network03 .datalist01>dt {
		width: calc(84 * 100% / 1160);
	}

	#network03 .datalist01>dd {
		flex-grow: 1;
	}

	#network03 .datalist01 dl+dl {
		margin-top: calc(25 * 100vw / 768);
	}

	#network03 .datalist01 dl dt {
		width: calc(168 * 100% / 1076);
	}

	#network03 .datalist01 dl dt+dd {
		width: calc(194 * 100% / 1076);
	}

	#network03 picture {
		margin-top: calc(68 * 100vw / 768);
	}
}

@media print,
screen and (min-width: 1000px) {
	#network03 .wrap {
		padding-top: 103px;
		padding-bottom: 100px;
	}

	#network03 h2 {
		font-size: 4rem;
	}

	#network03 .col-wrap {
		margin-top: 68px;
	}

	#network03 h3 {
		font-size: 3rem;
	}

	#network03 .text01 {
		margin-top: 20px;
	}

	#network03 .datalist01 {
		margin-top: calc(52px - 13px - 3px);
	}

	#network03 dt,
	#network03 dd {
		font-size: 1.8rem;
		line-height: 1.3333;
	}

	#network03 .datalist01 {
		width: 770px;
	}

	#network03 .datalist01>dt {
		width: 50px;
	}

	#network03 .datalist01 dl+dl {
		margin-top: 25px;
	}

	#network03 .datalist01 dl dt {
		width: 100px;
	}

	#network03 .datalist01 dl dt+dd {
		width: 110px;
	}
}

#network04 h2 {
	text-align: center;
	letter-spacing: .1em;
	text-indent: .1em;
	color: #100454;
	font-weight: 700;
	line-height: 1.2;
}

#network04 h3 {
	text-align: center;
	font-weight: 700;
	letter-spacing: .1em;
}

#network04 .datalist01>div {
	display: flex;
}

#network04 .datalist01 dd+dd {}

@media screen and (max-width: 999px) {
	#network04 .wrap {
		padding-top: calc((89 - 4) * 100vw / 768);
		padding-bottom: calc(92 * 100vw / 768);
	}

	#network04 h2 {
		font-size: 4rem;
	}

	#network04 h3 {
		font-size: 3.5rem;
		margin-top: calc(81 * 100vw / 768);
	}

	#network04 .col-wrap {
		margin-top: calc((50 - 4 - 13) * 100vw / 768);
	}

	#network04 .table-container {
		margin-top: calc((69 - 13 - 3) * 100vw / 768);
	}

	#network04 dl {
		width: calc(1345 * 100% / 720);
	}

	#network04 dl>div+div {
		margin-top: calc(25 * 100vw / 768);
	}

	#network04 dt,
	#network04 dd {
		font-size: 2.6rem;
		line-height: 1.2308;
	}

	#network04 dt {
		width: calc(218 * 100% / 1345);
	}

	#network04 dt+dd {
		width: calc(184 * 100% / 1345);
	}

	#network04 dd+dd {
		flex-grow: 1;
	}
}

@media print,
screen and (min-width: 1000px) {
	#network04 .wrap {
		padding-top: calc(102px - 4px);
		padding-bottom: 90px;
	}

	#network04 h2 {
		font-size: 4rem;
	}

	#network04 h3 {
		font-size: 3rem;
		margin-top: 20px;
	}

	#network04 .col-wrap {
		margin-top: calc(62px - 4px);
	}

	#network04 .table-container {
		margin-top: calc(53px - 13px - 3px);
	}

	#network04 dl {
		width: 880px;
	}

	#network04 dl>div+div {
		margin-top: 25px;
	}

	#network04 dt,
	#network04 dd {
		font-size: 1.8rem;
		line-height: 1.3333;
	}

	#network04 dt {
		width: 138px;
	}

	#network04 dt+dd {
		width: 122px;
	}

	#network04 dd+dd {
		flex-grow: 1;
	}
}

#network05 h2 {
	font-weight: 700;
	color: #100454;
	font-weight: 700;
	text-align: center;
	letter-spacing: .1em;
	text-indent: .1em;
}

#network05 h3 {
	font-weight: 700;
	letter-spacing: .1em;
	color: #100454;
}

#network05 .datalist01>div {
	display: flex;
}

@media screen and (max-width: 999px) {
	#network05 .wrap {
		padding-top: calc((94 - 4) * 100vw / 768);
		padding-bottom: calc(90 * 100vw / 768);
		padding-left: 0;
		padding-right: 0;
	}

	#network05 h2 {
		font-size: 4rem;
		line-height: 1.2;
	}

	#network05 .col-wrap {
		margin-top: calc((63 - 4 - 8.75) * 100vw / 768);
	}

	#network05 .col-wrap>div:first-of-type {
		padding-left: calc(24 * 100% / 768);
		padding-right: calc(24 * 100% / 768);
	}

	#network05 h3 {
		font-size: 3.5rem;
		line-height: 1.5;
	}

	#network05 h3+p {
		margin-top: calc(30 * 100vw / 768);
	}

	#network05 p+p {
		margin-top: 0;
	}

	#network05 .table-container {
		margin-top: calc((44 - 13 - 3) * 100vw / 768);
	}

	#network05 .datalist01 {
		width: calc(872 * 100% / 720);
	}

	#network05 .datalist01>div+div {
		margin-top: calc(25 * 100vw / 768);
	}

	#network05 dt,
	#network05 dd {
		font-size: 2.6rem;
		line-height: 1.2308;
	}

	#network05 dt {
		width: calc(144 * 100% / 872);
	}

	#network05 dt+dd {
		width: calc(200 * 100% / 872);
	}

	#network05 dd+dd {
		flex-grow: 1;
	}

	#network05 picture {
		text-align: right;
		margin-top: calc(72 * 100vw / 768);
	}

	#network05 picture img {
		width: calc(616 * 100% / 768);
	}
}

@media print,
screen and (min-width: 1000px) {
	#network05 .wrap {
		padding-top: 102px;
		padding-bottom: 90px;
	}

	#network05 h2 {
		font-size: 4rem;
	}

	#network05 .col-wrap {
		margin-top: 66px;
	}

	#network05 h3 {
		font-size: 2.4rem;
		line-height: 1.2;
	}

	#network05 h3+p {
		margin-top: 10px;
	}

	#network05 p+p {
		margin-top: 0;
	}

	#network05 .table-container {
		margin-top: calc(26px - 13px - 3px);
	}

	#network05 .datalist01 {
		width: 600px;
	}

	#network05 .datalist01>div+div {
		margin-top: 25px;
	}

	#network05 dt,
	#network05 dd {
		font-size: 1.8rem;
		line-height: 1.3333;
	}

	#network05 dt {
		width: 80px;
	}

	#network05 dt+dd {
		width: 100px;
	}

	#network05 dd+dd {
		flex-grow: 1;
	}
}

#network06 {
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: cover;
}

#network06 h2 {
	text-align: center;
	letter-spacing: .1em;
	text-indent: .1em;
	color: #100454;
	font-weight: 700;
}

#network06 h3 {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-weight: 700;
}

#network06 .box {
	position: relative;
}

#network06 h4 {
	position: absolute;
	color: #880b2e;
	text-align: center;
	letter-spacing: .1em;
	text-indent: .1em;
	font-weight: 700;
}

#network06 li {
	background-color: #fff;
	position: relative;
}

#network06 li:before {
	content: "";
	display: block;
	position: absolute;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: 0 0;
}

#network06 li:nth-child(1):before {
	background-image: url("../images/overview/newwork/country01.png");
}

#network06 li:nth-child(2):before {
	background-image: url("../images/overview/newwork/country02.png");
}

#network06 li:nth-child(3):before {
	background-image: url("../images/overview/newwork/country03.png");
}

#network06 h5 {
	letter-spacing: .1em;
	font-weight: 700;
	color: #100454;
}

#network06 p {
	letter-spacing: .1em;
	font-weight: 500;
}

@media screen and (max-width: 999px) {
	#network06 {
		background-image: url("../images/overview/newwork/bg06_sp.jpg");
	}

	#network06 .wrap {
		padding-top: calc(164 * 100vw / 768);
		padding-bottom: calc(153 * 100vw / 768);
	}

	#network06 h2 {
		font-size: 4rem;
	}

	#network06 h3 {
		font-size: 3rem;
		margin-top: calc(39 * 100vw / 768);
	}

	#network06 .box {
		margin-top: calc(58 * 100vw / 768);
	}

	#network06 h4 {
		top: calc(899 * 100vw / 768);
		width: 100%;
		font-size: 4rem;
		text-shadow: 4px 4px 4px #fff, -4px -4px 4px #fff,
			-4px 4px 4px #fff, 4px -4px 4px #fff;
		z-index: 1;
	}

	#network06 ul {
		position: relative;
	}

	#network06 ul:after {
		content: "";
		display: block;
		background: url("../images/overview/newwork/arros_sp.png") 0 0 / contain no-repeat;
		width: calc(220 * 100% / 670);
		height: calc(549 * 100vw / 768);
		position: absolute;
		top: calc(429 * 100vw / 768);
		left: calc(189 * 100% / 670);
	}

	#network06 li {
		position: relative;
		z-index: 1;
	}

	#network06 li:not(:last-child) {
		width: calc(670 * 100% / 720);
		padding-left: calc(25 * 100% / 720);
		padding-right: calc(25 * 100% / 720);
	}

	#network06 li:last-child {
		width: 100%;
		margin-top: calc(108 * 100vw / 768);
		padding-left: calc(24 * 100% / 720);
		padding-right: calc(24 * 100% / 720);
	}

	#network06 li:nth-child(1) {
		padding-top: calc((41 - 8.75) * 100vw / 768);
		height: calc(440 * 100vw / 768);
	}

	#network06 li:nth-child(1):before {
		width: calc(102 * 100% / 670);
		height: calc(104 * 100vw / 768);
		left: calc(-13 * 100% / 670);
		top: calc(-10 * 100vw / 768);
	}

	#network06 li:nth-child(1) h5 {
		padding-left: calc(64 * 100% / 620);
	}

	#network06 li:nth-child(2) {
		margin-left: auto;
		margin-top: calc(51 * 100vw / 768);
		padding-top: calc((38 - 8.75) * 100vw / 768);
		height: calc(390 * 100vw / 768);
	}

	#network06 li:nth-child(2):before {
		width: calc(98 * 100% / 670);
		height: calc(102 * 100vw / 768);
		left: calc(-23 * 100% / 670);
		top: calc(-10 * 100vw / 768);
	}

	#network06 li:nth-child(2) h5 {
		padding-left: calc(50 * 100% / 620);
	}

	#network06 li:nth-child(3) {
		padding-top: calc((39 - 8.75) * 100vw / 768);
		padding-bottom: calc((42 - 13) * 100vw / 768);
	}

	#network06 li:nth-child(3):before {
		width: calc(100 * 100% / 720);
		height: calc(103 * 100vw / 768);
		left: calc(-12 * 100% / 720);
		top: calc(-12 * 100vw / 768);
	}

	#network06 li:nth-child(3) h5 {
		padding-left: calc(64 * 100% / 676);
	}

	#network06 h5 {
		font-size: 3.5rem;
		line-height: 1.5;
	}

	#network06 p {
		margin-top: calc(26 * 100vw / 768);
		font-size: 2.6rem;
		line-height: 2;
	}
}

@media print,
screen and (min-width: 1000px) {
	#network06 {
		background-image: url("../images/overview/newwork/bg06_pc.jpg");
	}

	#network06 h4 {
		background: url("../images/overview/newwork/arrow_pc.png") 0 0 / contain no-repeat;
		left: 50%;
		transform: translateX(-50%);
		line-height: 1.2;
	}

	#network06 ul {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}

	#network06 li:last-child {
		margin-left: auto;
		margin-right: auto;
	}

	#network06 h5 {
		text-align: center;
		text-indent: .1em;
	}

	#network06 p {
		line-height: 1.875;
	}
}

@media screen and (min-width: 1000px) and (max-width:1439px) {
	#network06 .wrap {
		padding-top: calc(111 * 100vw / 1440);
		padding-bottom: calc(107 * 100vw / 1440);
	}

	#network06 h2 {
		font-size: 4rem;
	}

	#network06 h3 {
		font-size: 3rem;
		margin-top: calc(42 * 100vw / 1440);
	}

	#network06 .box {
		margin-top: calc(72 * 100vw / 1440);
	}

	#network06 h4 {
		width: calc(480 * 100% / 1440);
		height: calc(131 * 100vw / 1440);
		padding-top: calc((30 - 4) * 100vw / 1440);
		font-size: calc(40 * 100vw / 1440);
		top: calc(299 * 100vw / 1440);
	}

	#network06 li:not(:last-child) {
		width: calc(690 * 100% / 1440);
		padding-left: calc(30 * 100% / 1440);
		padding-right: calc(30 * 100% / 1440);
		height: calc(290 * 100vw / 1440);
	}

	#network06 li:last-child {
		width: calc(720 * 100% / 1440);
		margin-top: calc(157 * 100vw / 1440);
		padding-left: calc(45 * 100% / 1440);
		padding-right: calc(45 * 100% / 1440);
		height: calc(232 * 100vw / 1440);
	}

	#network06 li:nth-child(1) {
		padding-top: calc(49 * 100vw / 1440);
	}

	#network06 li:nth-child(1):before {
		width: calc(75 * 100% / 690);
		height: calc(77 * 100vw / 1440);
		left: calc(15 * 100% / 690);
		top: calc(23 * 100vw / 1440);
	}

	#network06 li:nth-child(2) {
		padding-top: calc(54 * 100vw / 1440);
	}

	#network06 li:nth-child(2):before {
		width: calc(72 * 100% / 690);
		height: calc(76 * 100vw / 1440);
		left: calc(58 * 100% / 690);
		top: calc(26 * 100vw / 1440);
	}

	#network06 li:nth-child(3) {
		padding-top: calc(61 * 100vw / 1440);
	}

	#network06 li:nth-child(3):before {
		width: calc(74 * 100% / 720);
		height: calc(76 * 100vw / 1440);
		left: calc(-8 * 100% / 720);
		top: calc(33 * 100vw / 1440);
	}

	#network06 h5 {
		font-size: calc(30 * 100vw / 1440);
	}

	#network06 p {
		margin-top: calc(26 * 100vw / 1440);
		font-size: calc(16 * 100vw / 1440);
	}
}

@media print,
screen and (min-width: 1440px) {
	#network06 .wrap {
		padding-top: 111px;
		padding-bottom: 107px;
	}

	#network06 h2 {
		font-size: 4rem;
	}

	#network06 h3 {
		font-size: 3rem;
		margin-top: 20px;
	}

	#network06 .box {
		margin-top: 72px;
	}

	#network06 h4 {
		width: 480px;
		height: 131px;
		padding-top: calc(30px - 4px);
		font-size: 40px;
		top: 299px;
	}

	#network06 li:not(:last-child) {
		width: 690px;
		padding-left: 30px;
		padding-right: 30px;
		height: 290px;
	}

	#network06 li:last-child {
		width: 720px;
		margin-top: 157px;
		padding-left: 45px;
		padding-right: 45px;
		height: 232px;
	}

	#network06 li:nth-child(1) {
		padding-top: 49px;
	}

	#network06 li:nth-child(1):before {
		width: 75px;
		height: 77px;
		left: 15px;
		top: 23px;
	}

	#network06 li:nth-child(2) {
		padding-top: 54px;
	}

	#network06 li:nth-child(2):before {
		width: 72px;
		height: 76px;
		left: 58px;
		top: 26px;
	}

	#network06 li:nth-child(3) {
		padding-top: 61px;
	}

	#network06 li:nth-child(3):before {
		width: 74px;
		height: 76px;
		left: -8px;
		top: 33px;
	}

	#network06 h5 {
		font-size: 30px;
	}

	#network06 p {
		margin-top: 26px;
		font-size: 16px;
	}
}

/*--------------------------------------------
CONTACT
---------------------------------------------*/

#contact dt label {
	letter-spacing: .1em;
	display: block;
	font-weight: 500;
}

#contact input[type="text"],
#contact input[type="email"],
#contact textarea {
	border: 0;
	background-color: #e7e7e7;
	width: 100%;
}

#contact .submits input,
#contact .submits button {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-weight: 500;
	text-align: center;
	letter-spacing: .1em;
	text-indent: .1em;
	color: #fff;
}

#contact .submit {
	background-color: #062b8d;
}

#contact .back {
	background-color: #666;
}

@media screen and (max-width: 999px) {
	#contact .wrap {
		padding-top: calc((43 - 13) * 100vw / 768);
		padding-bottom: calc(146 * 100vw / 768);
	}

	#contact .col-wrap {
		margin-top: calc((77 - 13) * 100vw / 768);
	}

	#contact dl>div+div {
		margin-top: calc(44 * 100vw / 768);
	}

	#contact dt label {
		font-size: 2.6rem;
	}

	#contact dd {
		margin-top: calc(32 * 100vw / 768);
		font-size: 2.6rem;
	}

	#contact dd p {
		padding-left: 1em;
		margin-top: calc((10 - 13) * 100vw / 768);
		margin-bottom: calc((10 - 13) * 100vw / 768);
	}

	#contact input[type="text"],
	#contact input[type="email"] {
		height: calc(80 * 100vw / 768);
	}

	#contact textarea {
		height: calc(376 * 100vw / 768);
	}

	#contact .submits {
		margin-top: calc(64 * 100vw / 768);
	}

	#contact .submits input,
	#contact .submits button {
		margin-left: auto;
		margin-right: auto;
		width: calc(300 * 100% / 720);
		height: calc(80 * 100vw / 768);
		font-size: 2.6rem;
	}

	#contact .submits button {
		margin-top: calc(20 * 100vw / 768);
	}
}

@media print,
screen and (min-width: 1000px) {
	#contact .wrap {
		padding-top: calc(49px - 9px);
		padding-bottom: 153px;
	}

	#contact .col-wrap {
		margin-top: calc(84px - 9px);
	}

	#contact dl>div {
		display: flex;
		align-items: flex-start;
	}

	#contact dl>div+div {
		margin-top: 40px;
	}

	#contact dt {
		width: calc(240 * 100% / 840);
		padding-right: calc(20 * 100% / 840);
		padding-top: 18px;
	}

	#contact dt label {
		text-align: right;
		font-size: 1.8rem;
	}

	#contact dd {
		flex-grow: 1;
		font-size: 1.8rem;
	}

	#contact dd p {
		margin-top: calc(23px - 9px);
		margin-bottom: calc(26px - 9px);
	}

	#contact input[type="text"],
	#contact input[type="email"] {
		height: 54px;
	}

	#contact textarea {
		height: 203px;
	}

	#contact .submits {
		margin-top: 44px;
		display: flex;
		margin-left: calc(240 * 100% / 840);
	}

	#contact .submits input,
	#contact .submits button {
		width: 200px;
		height: 60px;
		font-size: 1.8rem;
	}

	#contact .submits button {
		margin-left: 15px;
	}
}

@media print,
screen and (min-width: 1000px) {
	#contact .mw_wp_form_confirm dd {
		padding-top: 18px;
	}

	#contact .mw_wp_form_confirm dd p,
	#contact .mw_wp_form_confirm dd .confirm {
		display: none;
	}
}

/*--------------------------------------------
PORTFOLIO
---------------------------------------------*/


@media screen and (max-width: 999px) {

	#portfolio01 .wrap,
	#portfolio02 .wrap {
		padding-left: 0;
		padding-right: 0;
		background-image: url("../images/portfolio/bg_sp.png");
		background-repeat: no-repeat;
		background-size: auto calc(428 * 100vw / 768);
	}

	#portfolio01 .wrap>div:first-of-type,
	#portfolio02 .wrap>div:first-of-type {
		padding-left: calc(24 * 100% / 768);
		padding-right: calc(24 * 100% / 768);
	}

	#portfolio01 .text01,
	#portfolio02 .text01 {
		margin-top: calc((50 - 13) * 100vw / 768);
	}

	#portfolio01 .link01,
	#portfolio02 .link01 {
		margin-top: calc((52 - 13) * 100vw / 768);
	}
}

@media print,
screen and (min-width: 1000px) {

	#portfolio01 .text01,
	#portfolio02 .text01 {
		margin-top: calc(27px - 9px);
	}

	#portfolio01 .link01,
	#portfolio02 .link01 {
		margin-top: calc(42px - 9px);
	}

	#portfolio01 .wrap,
	#portfolio02 .wrap {
		background-size: auto 428px;
	}
}

@media screen and (min-width: 1000px) and (max-width:1439px) {

	#portfolio01 .wrap,
	#portfolio02 .wrap {
		background-size: auto calc(428 * 100vw / 1440);
	}
}

@media print,
screen and (min-width: 1440px) {

	#portfolio01 .wrap,
	#portfolio02 .wrap {
		background-size: auto 428px;
	}
}

#portfolio01 .title01 span:nth-of-type(2) {
	white-space: nowrap;
}

@media screen and (max-width: 999px) {
	#portfolio01 .wrap {
		padding-top: calc(109 * 100vw / 768);
		padding-bottom: calc((163 - 9) * 100vw / 768);
		background-position: calc(47 * 100vw / 768) calc(57 * 100vw / 768);
	}

	#portfolio01 .wrap>div+div {
		margin-top: calc(66 * 100vw / 768);
	}

	#portfolio01 .title01 {
		position: relative;
	}

	#portfolio01 .title01 span:nth-of-type(2) {
		top: calc(8 * 100vw / 768);
		right: calc(24 * 100% / 768);
		text-align: right;
	}
}

@media print,
screen and (min-width: 1000px) {
	#portfolio01 {
		overflow: hidden;
	}

	#portfolio01 .wrap {
		padding-top: 18px;
		padding-bottom: 39px;
		background-image: url("../images/portfolio/bg_pc.png");
		background-repeat: no-repeat;
		background-position: 0 88px;
	}

	#portfolio01 .title01 {
		position: relative;
	}

	#portfolio01 .title01 span:nth-of-type(2) {
		top: -60px;
		left: 305px;
	}

	#portfolio01 picture {
		position: relative;
		height: 572px;
	}

	#portfolio01 picture:after {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		height: 100%;
		background: url("../images/portfolio/img01_pc.png") 0 0 / auto 100% no-repeat;
	}

	#portfolio01 picture img {
		opacity: 0;
	}
}

@media screen and (min-width: 1000px) and (max-width:1439px) {
	#portfolio01 picture:after {
		width: calc(957 * 100% / 840);
	}
}

@media print,
screen and (min-width: 1440px) {
	#portfolio01 picture:after {
		width: 957px;
	}
}

@media screen and (max-width: 999px) {
	#portfolio02 .wrap {
		padding-bottom: calc(105 * 100vw / 768);
		background-position: calc(47 * 100vw / 768) calc((106 - 9) * 100vw / 768);
		position: relative;
		padding-top: calc((158 - 9) * 100vw / 768);
	}

	#portfolio02 .title01 span:nth-of-type(2) {
		top: 0;
		right: calc(24 * 100% / 768);
	}

	#portfolio02 picture {
		margin-top: calc(47 * 100vw / 768);
		text-align: left;
	}

	#portfolio02 picture img {
		width: calc(680 * 100% / 768);
	}
}

@media print,
screen and (min-width: 1000px) {
	#portfolio02 {
		overflow: hidden;
	}

	#portfolio02 .wrap {
		padding-bottom: 40px;
		background-image: url("../images/portfolio/bg_pc.png");
		background-repeat: no-repeat;
		background-position: right 112px;
	}

	#portfolio02 .title01 {
		position: relative;
	}

	#portfolio02 .title01 span:nth-of-type(2) {
		top: calc(-222px + 9px);
		left: 142px;
	}
}

/*--------------------------------------------
PORTFOLIO
--IPO
---------------------------------------------*/

#ipo picture {
	overflow: hidden;
}

#ipo picture>img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	font-family: "object-fit: cover;";
}

#ipo picture {
	flex-shrink: 0;
}

#ipo li>div,
#ipo li>a {
	display: flex;
	align-items: center;
	background-color: #fff;
}

@media screen and (max-width: 999px) {
	#ipo .wrap {
		padding-top: calc((43 - 13) * 100vw / 768);
		padding-bottom: calc(31 * 100vw / 768);
	}

	#ipo ul {
		margin-top: calc((53 - 13) * 100vw / 768);
	}

	#ipo li {
		padding-right: calc(24 * 100% / 720);
	}

	#ipo li+li {
		margin-top: calc(32 * 100vw / 768);
	}

	#ipo picture {
		width: calc(240 * 100% / 696);
		height: calc(240 * 100vw / 768);
		margin-right: calc(8 * 100% / 696);
	}
}

@media print,
screen and (min-width: 1000px) {
	#ipo .wrap {
		padding-top: calc(66px - 9px);
		padding-bottom: 77px;
	}

	#ipo .wrap>p {
		width: calc(9 / 12 * 100%);
		padding-left: 30px;
	}

	#ipo ul {
		margin-top: calc(95px - 9px);
	}

	#ipo li {
		padding-right: calc(52 * 100% / 720);
	}

	#ipo li:nth-child(even) {
		margin-top: 163px;
	}

	#ipo li:not(:first-child):nth-child(odd) {
		margin-top: -90px;
	}

	#ipo picture {
		width: 240px;
		height: 240px;
	}

	#ipo li h2 {
		font-size: 3.0rem;
		font-style: normal;
	}
}

@media screen and (min-width: 1000px) and (max-width:1439px) {
	#ipo li {
		padding-right: calc(52 * 100% / 720);
	}

	#ipo picture {
		width: calc(240 * 100% / 608);
		height: calc(240 * 100vw / 1440);
	}
}

@media print,
screen and (min-width: 1440px) {
	#ipo li {
		padding-right: 52px;
	}

	#ipo piture {
		width: 240px;
		height: 240px;
	}
}

/*--------------------------------------------
PORTFOLIO
--EST
---------------------------------------------*/

#est li {
	position: relative;
}

#est li>div {
	background-color: #fff;
}

#est li>p {
	position: absolute;
	color: #fff;
	line-height: 1.2;
	font-weight: 700;
	font-style: italic;
	text-indent: .1em;
}

#est li>p:not(.line) {
	background-color: #8fc31f;
}

#est li>p.line {
	background-color: #cd6e4c;
}

#est picture {
	overflow: hidden;
}

#est picture>img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	font-family: "object-fit: cover;";
}

@media screen and (max-width: 999px) {
	#est .wrap {
		padding-top: calc((43 - 13) * 100vw / 768);
		padding-bottom: calc(52 * 100vw / 768);
	}

	#est ul {
		margin-top: calc(52 * 100vw / 768);
	}

	#est ul>li+li {
		margin-top: calc(84 * 100vw / 768);
	}

	#est li>p {
		right: 0;
		font-size: 2.2rem;
		text-align: center;
		text-indent: .1em;
		padding-top: calc((6 - 2.2) * 100vw / 768);
		padding-bottom: calc((6 - 2.2) * 100vw / 768);
		top: 0;
		z-index: 2;
		transform: translateY(-50%);
		padding-left: calc(12 * 100vw / 768);
		padding-right: calc(12 * 100vw / 768);
	}

	#est li>div {
		display: -ms-grid;
		display: grid;
		-ms-grid-rows: auto auto calc(20 * 100vw / 768) auto auto auto;
		grid-template-rows: auto auto calc(20 * 100vw / 768) auto auto auto;
		-ms-grid-columns: calc(240 * 100% / 672) calc(8 * 100% / 672) 1fr;
		grid-template-columns: calc(240 * 100% / 672) calc(8 * 100% / 672) 1fr;
		padding-left: calc(24 * 100% / 720);
		padding-right: calc(24 * 100% / 720);
		padding-bottom: calc((38 - 13) * 100vw / 768);
		position: relative;
		z-index: 1;
	}

	#est picture {
		-ms-grid-row: 1;
		-ms-grid-row-span: 5;
		grid-row: 1/6;
		-ms-grid-column: 1;
		-ms-grid-column-span: 1;
		grid-column: 1/2;
		-ms-grid-row-align: start;
		align-self: start;
		height: calc(240 * 100vw / 768);
	}

	#est .title04 {
		-ms-grid-row: 2;
		-ms-grid-row-span: 1;
		grid-row: 2/3;
		-ms-grid-column: 3;
		-ms-grid-column-span: 1;
		grid-column: 3/4;
	}

	#est .description {
		-ms-grid-row: 4;
		-ms-grid-row-span: 1;
		grid-row: 4/5;
		-ms-grid-column: 3;
		-ms-grid-column-span: 1;
		grid-column: 3/4;
		margin-top: 0;
	}

	#est .about {
		-ms-grid-row: 6;
		-ms-grid-row-span: 1;
		grid-row: 6/7;
		-ms-grid-column: 1;
		-ms-grid-column-span: 3;
		grid-column: 1/4;
		margin-top: 0;
		border-top: calc(2 * 100vw / 768) solid #ccc;
		padding-top: calc((27 - 13) * 100vw / 768);
	}
}

@media print,
screen and (min-width: 1000px) {
	#est {
		overflow: hidden;
	}

	#est .wrap {
		padding-top: calc(66px - 9px);
		padding-bottom: 86px;
	}

	#est .wrap>p {
		width: calc(9 / 12 * 100%);
		padding-left: 30px;
	}

	#est ul {
		margin-top: 55px;
	}

	#est ul>li:not(:nth-child(3n+1)) {
		margin-top: 30px;
	}

	#est ul>li:nth-child(3n+1):nth-child(even) {
		margin-top: 53px;
	}

	#est ul>li:nth-child(3n+1):nth-child(odd):not(:first-child) {
		margin-top: 87px;
	}

	#est li>p {
		font-size: 1.8rem;
		text-align: center;
		text-indent: .1em;
		padding-top: calc(8px - 1.8px);
		padding-bottom: calc(8px - 1.8px);
		top: -10px;
		z-index: 2;
	}

	#est li>div {
		display: -ms-grid;
		display: grid;
		-ms-grid-rows: calc(30px - 2.4px) auto calc(30px - 2.4px - 9px) auto calc(17px - 9px) auto auto;
		grid-template-rows: calc(30px - 2.4px) auto calc(30px - 2.4px - 9px) auto calc(17px - 9px) auto auto;
		padding-bottom: 20px;
		position: relative;
		z-index: 1;
	}

	#est picture {
		-ms-grid-row: 1;
		-ms-grid-row-span: 7;
		grid-row: 1/8;
		-ms-grid-row-align: start;
		align-self: start;
	}

	#est .title04 {
		-ms-grid-row: 2;
		-ms-grid-row-span: 1;
		grid-row: 2/3;
		-ms-grid-column: 2;
		-ms-grid-column-span: 1;
		grid-column: 2/3;
		-ms-grid-row-align: start;
		align-self: start;
	}

	#est .description {
		-ms-grid-row: 4;
		-ms-grid-row-span: 1;
		grid-row: 4/5;
		-ms-grid-column: 2;
		-ms-grid-column-span: 1;
		grid-column: 2/3;
		-ms-grid-row-align: start;
		align-self: start;
		margin-top: 0;
	}

	#est .about {
		-ms-grid-row: 6;
		-ms-grid-row-span: 1;
		grid-row: 6/7;
		-ms-grid-column: 2;
		-ms-grid-column-span: 1;
		grid-column: 2/3;
		-ms-grid-row-align: start;
		align-self: start;
		margin-top: 0;
		border-top: 2px solid #ccc;
		padding-top: calc(17px - 9px);
	}

	#est li:nth-child(3n+1) {
		position: relative;
	}

	#est li:nth-child(3n+1):before {
		content: "";
		display: block;
		background-repeat: no-repeat;
		background-position: 0 0;
		background-size: contain;
		position: absolute;
		z-index: 1;
	}

	#est li:nth-child(1):before {
		background-image: url("../images/portfolio/est/bg01.png");
		height: 948px;
		top: -112px;
	}

	#est li:nth-child(4):before {
		background-image: url("../images/portfolio/est/bg02.png");
		height: 864px;
		top: -39px;
	}

	#est li:nth-child(7):before {
		background-image: url("../images/portfolio/est/bg03.png");
		height: 721px;
		top: 27px;
	}

	#est li:nth-child(10):before {
		background-image: url("../images/portfolio/est/bg04.png");
		height: 1083px;
		top: -23px;
	}
}

@media screen and (min-width: 1000px) and (max-width:1439px) {
	#est li>p {
		width: calc(350 * 100% / 1080);
		right: calc(11 * 100% / 1080);
	}

	#est li>div {
		padding-right: calc(30 * 100% / 1080);
		-ms-grid-columns: calc(240 * 100% / 1080) auto;
		grid-template-columns: calc(240 * 100% / 1080) auto;
	}

	#est picture {
		height: calc(240 * 100vw / 1440);
	}

	#est li:nth-child(1):before {
		width: calc(1199 * 100% / 1080);
		left: calc((1440 - 1199) * 100vw / 1440);
	}

	#est li:nth-child(4):before {
		width: calc(576 * 100% / 1080);
		left: calc(-360 * 100% / 1080);
	}

	#est li:nth-child(7):before {
		width: calc(401 * 100% / 1080);
		left: calc((1440 - 401) * 100vw / 1440);
	}

	#est li:nth-child(10):before {
		width: calc(721 * 100% / 1080);
		left: calc(-454 * 100% / 1080);
	}
}

@media print,
screen and (min-width: 1440px) {
	#est li>p {
		width: 350px;
		right: 11px;
	}

	#est li>div {
		padding-right: 30px;
		-ms-grid-columns: 240px auto;
		grid-template-columns: 240px auto;
	}

	#est picture {
		height: 240px;
	}

	#est li:nth-child(1):before {
		width: 1199px;
		left: calc(1440px - 1199px);
	}

	#est li:nth-child(4):before {
		width: 576px;
		left: -360px;
	}

	#est li:nth-child(7):before {
		width: 401px;
		left: calc(1440px - 401px);
	}

	#est li:nth-child(10):before {
		width: 721px;
		left: -454px;
	}
}

/*--------------------------------------------
PRIVACY
---------------------------------------------*/

#privacy h2,
#privacy p,
#privacy h3,
#privacy h4,
#privacy li li {
	letter-spacing: .1em;
}

#privacy li {
	margin-bottom: 1em;
}

#privacy h4[data-before]:before {
	display: inline-block;
}

#privacy .author {
	text-align: right;
}

@media screen and (max-width: 999px) {
	#privacy {
		padding-top: calc((43 - 13) * 100vw / 768);
		padding-bottom: calc((64 - 13) * 100vw / 768);
	}

	#privacy h2,
	#privacy p,
	#privacy h3,
	#privacy h4,
	#privacy li li {
		font-size: 2.6rem;
		line-height: 2;
	}

	#privacy h3 {
		margin-top: calc(52 * 100vw / 768);
	}

	#privacy p {
		margin-top: calc(10 * 100vw / 768);
	}

	#privacy .box>ul {
		margin-top: calc(10 * 100vw / 768);
	}

	#privacy h4[data-before]:before {
		width: calc(26 * 100% / 720);
	}

	#privacy li p {
		margin-left: calc(26 * 100% / 720);
	}

	#privacy li ul,
	#privacy li ol {
		margin-left: calc(26 * 100% / 720);
	}

	#privacy li ol li {
		list-style: disc;
	}

	#privacy .box>p:nth-of-type(2) {
		margin-left: calc(26 * 100% / 720);
	}

	#privacy .author {
		margin-top: calc(52 * 100vw / 768);
	}
}

@media print,
screen and (min-width: 1000px) {
	#privacy {
		padding-top: calc(51px - 9px);
		padding-bottom: calc(98px - 9px);
	}

	#privacy h2,
	#privacy p,
	#privacy h3,
	#privacy h4,
	#privacy li li {
		font-size: 1.8rem;
		line-height: 2;
	}

	#privacy h3 {
		text-indent: .1em;
		text-align: center;
		margin-top: 46px;
	}

	#privacy p {
		margin-top: 10px;
	}

	#privacy .box>ul {
		margin-top: 10px;
	}

	#privacy h4[data-before]:before {
		width: 36px;
	}

	#privacy li p {
		margin-top: 10px;
		margin-left: 36px;
	}

	#privacy li ul {
		margin-left: 36px;
	}

	#privacy li ul {
		margin-left: 36px;
	}

	#privacy li ol {
		margin-left: calc(36px + 1.5em);
	}

	#privacy li ol li {
		list-style: disc;
	}

	#privacy .author {
		margin-top: 46px;
	}
}

.thanks p.msg {
	line-height: 1.8;
}

.back-images {
	background-image: url(../images/overview/partner/bg_member_pc.png);
	background-repeat: no-repeat;
	background-position: right 100px top 150px;
}

@media screen and (max-width: 999px) {
	.back-images {
		background-image: url(../images/overview/partner/bg_member_sp.png);
		background-size: auto calc(428 * 100vw / 768);
		background-position: right 24px top 57px;
	}
}

.ol-listnone {
	list-style: none;
	margin-left: 0 !important;

	li {
		list-style: none;
	}
}

#ArkascorpSections {}

@media screen and (max-width: 999px) {
	#ArkascorpSections .wrap {}
}

@media screen and (min-width: 1000px) {
	#ArkascorpSections .wrap {
		padding: 80px 0;
	}
}

.corp-dl {
	div {
		display: flex;
		align-items: flex-start;
		width: 100%;
	}

	div+div {
		border-top: 1px solid #c4c4c6;
		margin-top: calc(21px - 9px);
		padding-top: calc(21px - 9px);
	}

	dt,
	dd {
		font-size: 1.8rem;
		line-height: 2;
	}

	dt {
		color: #100454;
		flex-shrink: 0;
		width: 280px;
		font-style: italic;
		font-weight: 600;
	}
}

.overview-list .text01 {
	width: 100%;
}

/* PCサイズ（1000px以上）での調整 */
@media screen and (min-width: 1000px) {
	.corp-dl div {
		display: flex;
		width: 100%;
		/* 親のコンテナいっぱいに広げる */
	}

	.corp-dl dd {
		flex: 1;
		/* dtの280pxを除いた残りの幅をすべてddに割り当てる */
		font-size: 1.8rem;
		line-height: 2;
		/* 必要に応じて padding-right: 20px; などを入れると端が詰まりすぎません */
	}
}