@charset "UTF-8";
/* CSS Document */

/* mainvisual */
.mainvisual { background: url("../img/top_main02.jpg") no-repeat center bottom; background-size: cover; color: white; height: 88vh; min-height: 800px; position: relative; }
.mainvisual:after { content: ""; background: linear-gradient(0deg,rgba(0,0,3,0.00) , rgba(0,0,3,0.03)); position: absolute; left: 0; right: 0; top: 0; height: 200px;}
.mainvisual__inr { display: table; height: 100%; margin-left: 5%; position: relative; z-index: 1;}
.mainvisual .textarea { padding-top: 40px;  text-shadow:0px 0px 8px rgba(0,0,3,0.04); -moz-text-shadow:0px 0px 8px rgba(0,0,3,0.04); -webkit-text-shadow:0px 0px 8px rgba(0,0,3,0.04);  -ms-text-shadow:0px 0px 8px rgba(0,0,3,0.04);}
.mainvisual .title { font-size: 128px; line-height: 0.99; font-weight: 600; margin-bottom: 30px;}
.mainvisual .subtitle { font-weight: 700; position: relative; letter-spacing: 0; line-height: 1; width: 624px;}
.mainvisual .text { font-size: 17px; margin-top: 26px; font-weight: 500; line-height: 1.5; width: 640px; text-shadow:0px 0px 5px rgba(0,0,3,0.15); -moz-text-shadow:0px 0px 5px rgba(0,0,3,0.15); -webkit-text-shadow:0px 0px 5px rgba(0,0,3,0.15);  -ms-text-shadow:0px 0px 5px rgba(0,0,3,0.15); font-weight: 600;}
.slider-list { position: absolute!important; top: 0; left: 0; z-index: 0; right: 0;}
.mainvisual-bg .slider-box { height: 88vh!important; min-height: 800px; background-size: cover!important; background-position: bottom center!important;}
.slider-box._slide01 { background-image: url("../img/top_main02.jpg");}
.slider-box._slide02 { background-image: url("../img/top_main03.jpg");}
.slider-box._slide03 { background-image: url("../img/top_main01.jpg");}

@media screen and (max-width:1400px){
	.mainvisual { min-height: 700px; }
	.mainvisual .textarea { padding-top: 40px;}
	.mainvisual .title { font-size: 118px; margin-bottom: 28px;}
	.mainvisual .subtitle {width: 580px;}
	.mainvisual .text { font-size: 17px; line-height: 1.5; width: 590px; margin-top: 25px; }
	.mainvisual-bg .slider-box { min-height: 700px}
}
@media screen and (max-width:1100px){
	.mainvisual { height: 88vh; min-height: 660px; max-height: 880px; }
	.mainvisual__inr { height: 100%;}
	.mainvisual .textarea { padding-top: 36px;}
	.mainvisual .title { font-size: 104px; margin-bottom: 23px;}
	.mainvisual .subtitle { width: 510px;}
	.mainvisual .text { font-size: 16px; line-height: 1.45; width: 530px; margin-top: 21px;}
	.mainvisual-bg .slider-box { max-height: 880px; min-height: 660px}
}
@media screen and (max-width:768px){
	.mainvisual { background-image: url("../img/top_main02.jpg"); background-size: cover;}
	.mainvisual__inr { height: 760px; text-align: center; width: 100%; margin: 0; position: relative; top: -140px; padding-top: 0;}
	.mainvisual .textarea { padding-top: 16%; display: block;}
	.mainvisual .title { font-size: 106px; margin-bottom: 23px;}
	.mainvisual .subtitle { width: 475px; margin-left: auto; margin-right: auto;}
	.mainvisual .text { font-size: 16px; text-align: left; line-height: 1.45; width: 80%; max-width: 520px; margin: 22px auto 0 }
	.slider-box._slide01 { background-image: url("../img/top_main02_sp.jpg");}
	.slider-box._slide02 { background-image: url("../img/top_main03_sp.jpg");}
	.slider-box._slide03 { background-image: url("../img/top_main01_sp.jpg");}
}
@media screen and (max-width:480px){
	.mainvisual { max-height: 550px; min-height: 400px; }
	.mainvisual__inr { height: 100%; text-align: center; width: 100%; margin: 0; position: relative; top: -110px;}
	.mainvisual .textarea { padding-top: 23%; display: block;}
	.mainvisual .title { font-size: 60px; margin-bottom: 12px;}
	.mainvisual .subtitle { width: 272px; }
	.mainvisual .text { font-size: 12px; text-align: left; line-height: 1.35; width: calc(100% - 36px); max-width: 310px; margin-top:11px;}
	.mainvisual-bg .slider-box { max-height: 550px; min-height:400px;}
}


/* news */
.index-news { display: block; height: 54px; overflow: hidden; width: 100%; position: relative; z-index: 10; background: white;}
.index-news .title { font-size: 22px; display: block; float: left; width: 160px; background:#cc1414; color: white; text-align: center; font-weight: 600; height: 100%; line-height: 1; padding-top: 15px}
.index-news__list { display: block; float: left;  height: 100%; width: calc(100% - 300px); }
.index-news__item { padding:12px 1.2em 14px; display: block; width:100%; overflow: hidden; height: 54px;}
.index-news__item .day { font-size: 17px; display: block; float: left; width: 120px; font-weight: 600; width: 90px; position: relative;}
.index-news__item .text { font-size: 14px; display: block; float: left; width: calc(100% - 120px ); padding-top: 2px; height: 100%; white-space: nowrap}
.index-news__nav { display: block; position: absolute; right: 60px; width: 72px; height: 100%; background: white;}
.index-news__nav a {display: block; background-size:17px auto; float: left; background-repeat: no-repeat; background-position: center; cursor: pointer; height: 100%; width: 50%; top: 0; }
.index-news__nav a._down { background-image: url("../img/arw_b.png");}
.index-news__nav a._down:hover {background-image: url("../img/arw_b_red.png");}
.index-news__nav a._up { background-image: url("../img/arw_t.png"); right: 6px;}
.index-news__nav a._up:hover { background-image: url("../img/arw_t_red.png") ;}
.index-news__btn { display: block; position: absolute; right: 0; background: #0a263c; text-align: center; width: 60px; top: 0; height:100%; }
.index-news__btn a:hover { background: #cc1414}
.index-news__btn a { font-size: 13px; color: white; display: block; font-weight: 600; height: 100%; padding-top: 15px}
.index-news__item a { text-decoration: underline; color: #299fd6}
.index-news__item a:hover { text-decoration: none;}

@media screen and (max-width:1100px){
	.index-news { height: 50px; }
	.index-news .title { font-size: 17px; width: 100px; }
	.index-news__list { width: calc(100% - 230px); }
	.index-news__item { padding:12px 1.2em 12px;}
	.index-news__item .day { font-size: 17px; width: 88px;}
	.index-news__item .text { font-size: 14px; padding-top: 2px;}
	.index-news__nav { width: 62px; right: 60px;}
	.index-news__nav a._up { right: 4px;}
	.index-news__btn { width: 55px; height: 50px;}
	.index-news__btn a { font-size: 12px; }
}
@media screen and (max-width:768px){
	.index-news { height: auto; display: block;}
	.index-news .title { font-size: 20px; width: 100%; padding: 0; display: block; height: 48px; padding-top: 13px; float: none}
	.index-news__list { width: calc(100%); float: none; overflow: hidden; height: 57px;}
	.index-news__item { width: 100%; padding: 14px 19px 0; display: block; }
	.index-news__item .day { font-size: 18px; top: -2.5px; float: none; display: inline; padding-right: 0.7em; vertical-align: top;}
	.index-news__item .text { font-size: 14px; float: none; line-height: 1.55; display: inline-block}
	.index-news__nav { width: 78px; text-align: center; position: absolute; right: 0; top: 48px; height: 57px; padding-top: 5px; background: white;}
	.index-news__nav a { height: 44px; width: 50%; background-size:19px auto;}
	.index-news__btn { width: 80px; position: absolute; right: 0; top: 0px; height: auto;}
	.index-news__btn a { font-size: 14px; height: 48px; padding-top: 14px}
	.index-news__nav a._up { right: 6px;}
}
@media screen and (max-width:480px){
	.index-news .title { font-size: 17px; height: 40px; padding-top: 11px;}
	.index-news__list { height: 46px;}
	.index-news__item { width:100%; padding: 11px 13px 0; }
	.index-news__item .day { font-size: 14px; top: -1px; padding-right: 0.6em; }
	.index-news__item .text { font-size: 11px; height: auto;}
	.index-news__nav { width: 54px; top: 40px; height: 46px; padding-top: 0;}
	.index-news__nav a { height: 44px; background-size:15px auto;}
	.index-news__btn { width: 54px; }
	.index-news__btn a { font-size: 11px; height: 40px; padding-top: 12px;}
	.index-news__nav a._up { right: 4px;}
}

/* section */
.index-section { position: relative;}
.index-section__inr { display: table; height: 1000px; position: relative; width: 100%; z-index: 1;}
.index-section__title .jp { font-size: 27px; font-weight: 600; line-height: 1; }
.index-section__title .en { display: block; font-size: 90px; line-height: 1; font-weight: 600; color: #cc1414; margin-top: 2px;}
.index-section__text { margin-top: 28px; font-size: 16px;}
.index-section .btn._bdred { width: 300px; line-height: 65px; font-size: 19px; font-weight: 600; margin-top: 35px}
.index-section .btn._bdred:after { width: 20px; right: 20px;}
.btn._bdwhite { line-height: 65px; color: white; width: calc(50% - 3px); border: solid 1px white; background: rgba(0,0,0,.05)}
._3pl .btn._bdwhite { min-width: 300px; float: none; margin: auto; font-size: 17px;}
.btn._bdwhite a { color: white}
.btn._bdwhite:hover { background: #cc1414; border-color: #cc1414; }
.btn._bdwhite a:hover { color:#fff;}
.btn._bdwhite:after { background: url("../img/ic_btnarw_w.png") no-repeat center; width: 20px; right: 18px;}

@media screen and (max-width:1500px){
	.index-section__inr { height: 800px; }
}

@media screen and (max-width:1100px){
	.index-section__inr { height: 700px; }
	.index-section__title .jp { font-size: 23px; }
	.index-section__title .en { font-size: 74px; margin-top: 2px;}
	.index-section__text { margin-top: 22px; font-size: 14px;}
	.index-section .btn._bdred { width: 260px; line-height: 57px; font-size: 18px; margin-top: 28px}
	.index-section .btn._bdred:after { width: 18px; right: 18px;}
	.btn._bdwhite { line-height: 52px; width: calc(50% - 3px);}
	._3pl .btn._bdwhite { line-height: 60px; font-size: 16px;}
	.btn._bdwhite:after { width: 18px; right: 16px;} 
}
@media screen and (max-width:768px){
	.index-section__inr { height: auto; padding: 70px 24px 80px;}
	.index-section__title .jp { font-size: 21px; }
	.index-section__title .en { font-size: 68px; margin-top: 1px;}
	.index-section__text { margin-top: 22px; font-size: 13px; text-align: left;}
	.index-section .btn._bdred { width: 250px; line-height: 52px; font-size: 17px; margin-top: 24px}
	.index-section .btn._bdred:after { width: 18px; right: 18px;}
	.btn._bdwhite { line-height: 52px; width: calc(50% - 3px);}
	.btn._bdwhite:after { width: 18px; right: 16px;} 
	
	.btn._bdwhite { line-height: 40px; width: calc(50% - 2px); font-size: 12px;}
	._3pl .btn._bdwhite { width: 240px; line-height: 52px; min-width: 240px; font-size: 16px;}
	.btn._bdwhite:after { width: 16px; right: 14px;} 
	._fowarding .btn._bdwhite:after { width: 11px; right: 8px;} 
}
@media screen and (max-width:480px){
	.index-section__inr { height: auto; padding: 48px 20px 60px;}
	.index-section__title .jp { font-size: 18px; }
	.index-section__title .en { font-size: 52px;}
	.index-section__text { margin-top: 22px; font-size: 12px;}
	.index-section .btn._bdred { width: 230px; line-height: 46px; font-size: 15px; margin-top: 20px}
	.index-section .btn._bdred:after { width: 16px; right: 16px;}
	.btn._bdwhite { line-height: 36px; width: calc(50% - 1.5px); font-size: 11px;}
	._3pl .btn._bdwhite { width: 240px; line-height: 42px; min-width: auto; font-size: 13px;}
	.btn._bdwhite:after { width: 14px; right: 12px;} 
	._fowarding .btn._bdwhite:after { width: 14px; right: 12px;}
	
	._business .index-section__title .jp { color: #0A263C}
	._business .index-section__title .en { color: #cc1414!important; }
}


/*about*/
.index-section._about { background: url("../img/top_about.jpg") no-repeat top center; background-size: cover;}
._about .index-section__textarea { padding-left:80px; width: 60%;}
._about .index-section__photo { background: url("../img/top_about_photo.jpg") no-repeat center; background-size: cover; width:auto; right: 0; left: calc(800px); top: 195px; height: 600px; display: block; position: absolute;}

/*business*/
.index-section._business:before { background: url("../img/top_business1.jpg") no-repeat top center; background-size: cover; content: ""; width: 50%; position: absolute; left: 0; top: 0; bottom: 0;}
.index-section._business:after { background: url("../img/top_business2.jpg") no-repeat top right; background-size: cover; content: ""; width: 50%; position: absolute; right: 0; top: 0; bottom: 0;}
.index-section._business { text-align: center; color: white}
._business .index-section__title .en { color: white;}
.index-business__block { margin-top: 70px}
.index-business__block dl { width: 50%; float: left; padding:0 40px}
.index-business__block dt,
.index-business__block dd,
.index-business__block ul{ max-width: 600px; margin-left: auto; margin-right: auto}
.index-business__block dt { font-weight: 700; font-size: 36px; line-height: 1.4;}
.index-business__block dd { line-height: 1.5; font-size: 15px; margin-top: 25px; text-align: left; font-weight: 500;}
.index-business__block ul { margin-top: 40px}
.index-business__block li { float: left; }
.index-business__block li:nth-child(even) { margin-left: 6px;}
.index-business__block li:nth-child(n + 3) { margin-top: 6px;}

/* company */
.index-section._company { background: url("../img/bg_line2.jpg") no-repeat top center; background-size: cover; text-align: center;}
._company .index-section__inr { height: auto; padding-top: 130px}
._company.index-section .btn._bdred { margin: 55px auto 24px;}

@media screen and (max-width:1500px){
	._about .index-section__photo { top: 130px; height: 540px; }
}
@media screen and (max-width:1100px){
	._about .index-section__textarea { padding-left:50px; width: 54%;}
	._about .index-section__photo { left: 600px; top: 130px; height: 450px; }
	
	.index-business__block { margin-top: 46px}
	.index-business__block dl { padding:0 24px}
	.index-business__block dt { font-size: 36px;}
	.index-business__block dd { font-size: 13px; margin-top: 20px;}
	.index-business__block ul { margin-top: 33px}
	.index-business__block li:nth-child(even) { margin-left: 5px;}
	.index-business__block li:nth-child(n + 3) { margin-top: 5px;}
	
	._company .index-section__inr { padding-top: 100px; padding-bottom: 33px}
	._company.index-section .btn._bdred { margin: 40px auto 0px;}
}
@media screen and (max-width:768px){
	._about .index-section__textarea { padding-left:0px; width: 100%; text-align: center;}
	._about .index-section__photo { position: static; height: 220px; width: 80%; margin: 53px auto 0px;}
	._about.index-section .btn._bdred { margin-left:auto; margin-right: auto;}
	
	._business .index-section__inr { padding-left: 0; padding-right: 0;}
	.index-business__block { margin-top: 50px}
	.index-business__block dl { padding:0 18px}
	.index-business__block dt { font-size: 25px; line-height: 1.4;}
	.index-business__block dd { font-size: 12px; margin-top: 14px; line-height: 1.45}
	.index-business__block ul { margin-top: 24px}
	.index-business__block li { float:left}
	.index-business__block li:nth-child(even) { margin-left: 4px;}
	.index-business__block li:nth-child(n + 3) { margin-top: 4px;}
	
	._company .index-section__inr { padding-top: 80px; padding-bottom: 34px}
	._company.index-section .btn._bdred { margin: 36px auto 0px;}
}
@media screen and (max-width:480px){
	._about .index-section__photo { height: 160px; margin: 40px auto 0px;}
	
	.index-section._business {background: linear-gradient(0deg, #fff, #f8f8f8);}
	._business .index-section__inr { padding-bottom: 0;}
	.index-section._business:before,
	.index-section._business:after { background:none;}
	.index-section._business dl._fowarding{ background: url("../img/top_business1.jpg") no-repeat top center; background-size: cover; }
	.index-section._business dl._3pl { background: url("../img/top_business2.jpg") no-repeat bottom right; background-size: cover; }
	.index-business__block { margin-top: 30px}
	.index-business__block dl { padding:40px 18px 48px; width: 100%; float: none;}
	.index-business__block dt { font-size: 24px; line-height: 1.4;}
	.index-business__block dd { font-size: 12px; margin-top: 14px; line-height: 1.45}
	.index-business__block ul { margin-top: 22px}
	.index-business__block li { float:left}
	.index-business__block li:nth-child(even) { margin-left: 3px;}
	.index-business__block li:nth-child(n + 1) { margin-top: 3px;}

	._company .index-section__inr { padding-top: 60px; padding-bottom: 30px}
	._company.index-section .btn._bdred { margin: 28px auto 0px;}
}

.catch-top_mv{ position: relative; overflow: hidden;}
.catch-top_mv > .copy{ position: relative; opacity: 0; display: block}
.catch-top_mv > .copy > span{ opacity: 0; display: inline-block;}
.catch-top_mv > .copy > span.anim{ -webkit-animation: animMainVisual .4s ease forwards; animation: animMainVisual .4s ease forwards;}
@keyframes animMainVisual {
	0% { opacity: 0; -webkit-transform: translateY(100%);}
	100% { opacity: 1; -webkit-transform: none;}
}
@-webkit-keyframes animMainVisual {
	0% { opacity: 0; -webkit-transform: translateY(100%);}
	100% { opacity: 1; -webkit-transform: none;}
}