@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 : 240px;
		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 : 240px;
		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;
}