charset "utf-8";

/*----------------
共通
-----------------*/
/*mainVisual-icon*/
.mainVisual-icon{
	top: -300px;
}
@media only screen and (max-width:736px) {
	#mainVisual-free .caption {
	    bottom: -25px;
	}
	/*mainVisual-icon*/
	.mainVisual-icon{
	    top: -200px;
	}
}

/*----------------
.num01
-----------------*/
.num01{
	padding-bottom: 80px;
}
/*areaBox*/
.areaBox{
	position: relative;
}
.areaBox:before{
	content: '';
	width: 92%;
	height: 100%;
	background: #fff;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 3;
}
.areaBox.aos-animate:before{

	-webkit-animation: slidemsk 1.3s ease 1.2s 1 forwards;/*表示時間+start時間*/
	animation: slidemsk 1.3s ease 1.2s 1 forwards;/*表示時間+start時間*/
}
@-webkit-keyframes slidemsk {
	100% {
		width: 0;
	}
}
@keyframes slidemsk {
	100% {
		width: 0;
	}
}
.areaBox.areaBox-last .moveborder:after{
	content: '';
	width: 6px;
	height: 0;
	border-left: dashed 6px #e5ecf3;
	position: absolute;
	left: 0;
	bottom: -80px;
	z-index: 2;
}
.areaBox.areaBox-last .moveborder.aos-animate:after{
	height: 100%;
	border-left: dashed 6px #004088;
}
/*areaBox-left*/
.areaBox .areaBox-left{
	width: 31.451612903225808%;
	padding-bottom: 105px;
	position: relative;
}
.areaBoxLine{
	width: 6px;
	height: 100%;
	background: #e5ecf3;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 4;
}
.areaBoxLine .moveborder{
	width: 6px;
	height: 0;
	background: #004088;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2;
}
.areaBoxLine .point{
	position: absolute;
	left: -7px;
	top: 105px;
	z-index: 3;
}
.areaBoxLine .point p{
	display: inline-block;
	width: 20px;
	height: 20px;
	background: #ffeb00;
	border-radius:50%;
	border:solid 3px #004088;
	box-sizing: border-box;
	position: relative;
	z-index: 2;
}
.areaBoxLine .point:after{
	content: '';
	width: 0;
	height: 1px;
	background: #004088;
	position: absolute;
	left: 0;
	top: 44%;
	-webkit-transform: translateY(-44%); /* Safari用 */
	transform: translateY(-44%);
}
.areaBoxLine .moveborder.aos-animate .point:after{

	-webkit-animation: pointmove 0.8s ease 0.7s 1 forwards;/*表示時間+start時間*/
	animation: pointmove 0.8s ease 0.7s 1 forwards;/*表示時間+start時間*/
}
@-webkit-keyframes pointmove {
	100% {
		width: 100px;
	}
}
@keyframes pointmove {
	100% {
		width: 100px;
	}
}
.areaBox .areaBox-left .areaBox-left-ttl{
	/*padding-left: 30.76923076923077%;*/
	margin: 40px 0 50px 30.76923076923077%;
	position: relative;
	z-index: 2;
}
.areaBox .areaBox-left .areaBox-left-ttl small{
	font-size: 16px;
	color: #014993;
	letter-spacing: 0.5em;
	margin-left: 0.5em;
}
.areaBox .areaBox-left .areaBox-left-ttl span{
	display: block;
	font-size: 100px;
	color:#fff;
	white-space:nowrap;
	position: relative;
}
.areaBox .areaBox-left .areaBox-left-ttl span:before {
	content:attr(data-inverted);
	overflow:hidden;
	position:absolute;
	left:0;
	top:0;
	width:122%;
	color:#014993;
}
.areaBox .areaBox-left .areaBox-left-text{
	width: 86.07692307692308%;
	margin-left: 16.923076923076923%;
    opacity: 0;
    filter: alpha(opacity=0);
    -webkit-transform: scale3d(1.3,1.3,1) rotate3d(1,-3,-1,-.1turn) translate3d(-50px,100px,0);
    transform: scale3d(1.3,1.3,1) rotate3d(1,-3,-1,-.1turn) translate3d(-50px,100px,0);
}
.areaBox.aos-animate .areaBox-left .areaBox-left-text{

	-webkit-animation: slantingL-access 1.7s ease 1.7s 1 forwards;/*表示時間+start時間*/
	animation: slantingL-access 1.7s ease 1.7s 1 forwards;/*表示時間+start時間*/
}
@-webkit-keyframes slantingL-access {
	100% {
	    opacity: 1;
	    filter: alpha(opacity=100);
	    -webkit-transform: scale3d(1,1,1) rotate3d(0,0,0,0) translate3d(0,0,0);
	    transform: scale3d(1,1,1) rotate3d(0,0,0,0) translate3d(0,0,0);
	    transition: all 4s cubic-bezier(.19,1,.22,1);
	}
}
@keyframes slantingL-access {
	100% {
	    opacity: 1;
	    filter: alpha(opacity=100);
	    -webkit-transform: scale3d(1,1,1) rotate3d(0,0,0,0) translate3d(0,0,0);
	    transform: scale3d(1,1,1) rotate3d(0,0,0,0) translate3d(0,0,0);
	    transition: all 4s cubic-bezier(.19,1,.22,1);
	}
}
/*areaBox-right*/
.areaBox .areaBox-right{
	width: 63.70967741935484%;
	margin-left: 4.838709677419355%;
}

@media only screen and (max-width:1200px) {
	.areaBox .areaBox-left .areaBox-left-ttl span{
		font-size: 80px;
	}
}
@media only screen and (max-width:736px) {
	.areaBox{
		padding-bottom: 50px;
	}
	.areaBoxLine .point{
		top: 70px;
	}
	.areaBoxLine .moveborder.aos-animate .point:after{

		-webkit-animation: pointmove-sp 0.6s ease 0.7s 1 forwards;/*表示時間+start時間*/
		animation: pointmove-sp 0.6s ease 0.7s 1 forwards;/*表示時間+start時間*/
	}
	@-webkit-keyframes pointmove-sp {
		100% {
			width: 55px;
		}
	}
	@keyframes pointmove-sp {
		100% {
			width: 55px;
		}
	}
	/*areaBox-left*/
	.areaBox .areaBox-left{
		width: 100%;
		padding-bottom: 30px;
	}
	.areaBox .areaBox-left .areaBox-left-ttl{
		padding-left: 22%;
		margin: 30px 0 40px;
	}
	.areaBox .areaBox-left .areaBox-left-ttl small{
		margin-left: 0.3em;
	}
	.areaBox .areaBox-left .areaBox-left-ttl span{
		font-size: 60px;
		color:#014993;
		white-space:inherit;
		word-wrap: break-word;
	}
	.areaBox .areaBox-left .areaBox-left-ttl span:before {
		content:none;
	}	
	.areaBox .areaBox-left .areaBox-left-text{
		width: 89.07692307692308%;
		margin-left: 10.923076923076923%;
	}
	/*areaBox-right*/
	.areaBox .areaBox-right{
		width: 89.07692307692308%;
		margin-left: 10.923076923076923%;
	}
}


/*----------------
num02
-----------------*/
.num02{
	display: none;
	margin-top: -30px;
	position: relative;
	z-index: -1;
}
.gainenBox{
}
.gainenBox .gainenBox-img{
	width: 61.532258064516135%;
}
.gainenBox .gainenBox-img .caption{
	left: 50px;
}
.gainenBox .gainenBox-txt{
	width: 33.87096774193548%;
	margin-left: 4.5967741935%;
	overflow: hidden;
}
@media only screen and (max-width:736px) {
	.gainenBox .gainenBox-img{
		width: 100%;
	}
	.gainenBox .gainenBox-img .caption{
		left: auto;
		right: 7px;
	}
	.gainenBox .gainenBox-txt{
		width: 100%;
		margin-left: 0;
		margin-top: 50px;
	}
}

/*----------------
num03
-----------------*/
.num03{
	position: relative;
}
.num03 .slideBg{
	content: '';
	width: 0;
	height: 670px;
	background: #e5ecf3;
	position: absolute;
	left: 15.9722222222%;
	top: 0;
	z-index: -1;
}
/*rosenBox*/
.rosenBox{
}
.rosenBox .rosenBox-img{
	width: 72.58064516129032%;
	margin-left: 4.4516129032%;
	margin-top: 60px;
	position: relative;
	z-index: 2;
}
.rosenBox .rosenBox-txt{
	width: 22.967741935483872%;
	margin-top: 240px;
	position: relative;
	overflow: hidden;
	z-index: 2;
}
.rosenBox-txt dl{
	position: relative;
	overflow: hidden;
}
.rosenBox-txt dl:nth-child(n+2){
	margin-top: 50px;
}
.rosenBox-txt dl dt{
	float: left;
	font-size: 16px;
	margin-left: -0.5em;
	line-height: 44px;
}
.rosenBox-txt dl dt strong{
	font-size: 26px;
	margin-right: -0.3em;
}
.rosenBox-txt dl dd{
	float: right;
	font-size: 16px;
}
.rosenBox-txt dl dd strong{
	font-size: 40px;
	color:#004088;
}
.rosenBox-txt dl dd small{
	font-size: 12px;
}
.rosenBox-txt dl + .text{
	font-size: 10px;
}
@media only screen and (max-width:736px) {
	.num03 .slideBg{
		height: 900px;
	}
	.num03:after{
		height: 460px;
	}
	.rosenBox .rosenBox-img{
		width: 100%;
		margin-left: 0;
	}
	.rosenBox .rosenBox-txt{
		width: 100%;
		margin-left: 0;
		margin-top: 50px;
	}
	.rosenBox-txt dl:nth-child(n+2){
		margin-top: 40px;
	}
	.rosenBox-txt dl dt{
		font-size: 14px;
	}
	.rosenBox-txt dl dt strong{
		font-size: 22px;
	}
	.rosenBox-txt dl dd{
		font-size: 14px;
	}
	.rosenBox-txt dl dd strong{
		font-size: 34px;
	}
	.rosenBox-txt dl dd small{
		font-size: 10px;
	}
	.rosenBox-txt dl + .text{
		margin-top: 5px;
	}
}

/*----------------
num04
-----------------*/
.num04{
	position: relative;
	color:#fff;
	margin-top: 360px;
}
.num04 .slideBg{
	content: '';
	width: 0;
	height: 100%;
	background: #004088;
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
}
.busBox{
	margin-top: -100px;
}
.busBox-txt{
	width: 40.32258064516129%;
	padding:100px 0;
	overflow: hidden;
}
.busBox-txt .image{
	margin-top: 55px;
}
.busBox-img{
	width: 32.25806451612903%;
	margin: -100px 0 170px 8.064516129032258%;
	position: relative;
}
.busBox-img .imageCap{
	width: 92.5%;
}
.busBox-img-ttl{
	color: #ffeb00;
	font-size: 20px;
	-webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
         position: absolute;
         right: 0;
         bottom:0;
}
@media only screen and (max-width:736px) {
	.num04{
		margin-top: 100px;
}
	.num04 .slideBg{
		height: 94%;
	}
	.busBox{
		margin-top: 0;
	}
	.busBox-txt{
		width: 100%;
		padding:70px 0 0;
	}
	.busBox-txt .image{
		margin-top: 30px;
	}
	.busBox-img{
		width: 100%;
		margin: 50px 0 0;
	}
	.busBox-img .imageCap{
		width:100%;
		height:160px;
		position: relative;
		overflow: hidden;
	    margin-top: 20px;
	}
	.busBox-img .imageCap img{
		width: auto;
		height: auto;
		position: absolute;
		top:50%; /* または200px(heightの半分) */
		left: 50%; /* この値を変更すると左右に位置をずらせる */
		transform: translate(-50%, -50%);
	}
	.busBox-img-ttl{
		font-size: 13px;
		-webkit-writing-mode: initial;
		-ms-writing-mode: initial;
		  writing-mode: initial;
		bottom: auto;
		top: 0;
	}
}

/*----------------
aos
-----------------*/
[data-aos="lineDown"]{
}
[data-aos="lineDown"].aos-animate{

	-webkit-animation: lineDown 1.5s ease 0.5s 1 forwards;/*表示時間+start時間*/
	animation: lineDown 1.5s ease 0.5s 1 forwards;/*表示時間+start時間*/
}
@-webkit-keyframes lineDown {
	100% {
	    height: 100%;
	}
}
@keyframes lineDown {
	100% {
	    height: 100%;
	}
}

/*slideBox*/
[data-aos="slideBox"]{
}
[data-aos="slideBox"].aos-animate{
}

/*slideBgmove*/
[data-aos="slideBgmove"]{
}
[data-aos="slideBgmove"].aos-animate{

	-webkit-animation: slideBgmove 1.5s ease 0.5s 1 forwards;/*表示時間+start時間*/
	animation: slideBgmove 1.5s ease 0.5s 1 forwards;/*表示時間+start時間*/
}
@-webkit-keyframes slideBgmove {
	100% {
	    width: 84.02777777777779%;
	}
}
@keyframes slideBgmove {
	100% {
	    width: 84.02777777777779%;
	}
}

/*full*/
[data-aos="slideBgmovefull"]{
}
[data-aos="slideBgmovefull"].aos-animate{

	-webkit-animation: slideBgmovefull 1.5s ease 0.5s 1 forwards;/*表示時間+start時間*/
	animation: slideBgmovefull 1.5s ease 0.5s 1 forwards;/*表示時間+start時間*/
}
@-webkit-keyframes slideBgmovefull {
	100% {
	    width: 100%;
	}
}
@keyframes slideBgmovefull {
	100% {
	    width: 100%;
	}
}





