@charset "utf-8";



/*===========================
游ゴシック初期設定
===========================*/

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 100;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 200;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 300;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}
@font-face {
  font-family: "Helvetica Neue";
  src: local("Helvetica Neue Regular");
  font-weight: 100;
}
@font-face {
  font-family: "Helvetica Neue";
  src: local("Helvetica Neue Regular");
  font-weight: 200;
}

html {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
}
@media all and (-ms-high-contrast: none)  {
  html {
    font-family: Verdana, Meiryo, sans-serif;
  }
}
@media all and (-ms-high-contrast: active) {
  html {
    font-family: Verdana, Meiryo, sans-serif;
  }
}

/*===========================
WOW
===========================*/



/*===========================
PC・スマホ切り替え
===========================*/

.shutter {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #1e1e1e;
  z-index: 99999999;
  -webkit-animation: byeShutter 2.6s forwards;
          animation: byeShutter 2.6s forwards;
}
.shutter::before, .shutter::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto;
}
.shutter::before {
  background-color: #c0c0c0;
  width: 0;
  height: 1px;
  -webkit-animation: shutterOpen1 2.6s forwards;
          animation: shutterOpen1 2.6s forwards;
}
.shutter::after {
  width: 120%;
  height: 0;
  margin-left: -10%;
  background-color: #f3f3f3;
  -webkit-animation: shutterOpen2 2.6s forwards;
          animation: shutterOpen2 2.6s forwards;
}

.content {
  -webkit-animation: contentScale 2.6s forwards;
          animation: contentScale 2.6s forwards;
}

@-webkit-keyframes byeShutter {
  70% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    display: none;
    z-index: -1;
  }
}

@keyframes byeShutter {
  70% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    display: none;
    z-index: -1;
  }
}
@-webkit-keyframes shutterOpen1 {
  0% {
    width: 0;
    height: 1px;
  }
  50% {
    width: 100%;
    height: 1px;
  }
  90% {
    width: 100%;
    height: 100%;
  }
  100% {
    width: 100%;
    height: 100%;
  }
}
@keyframes shutterOpen1 {
  0% {
    width: 0;
    height: 1px;
  }
  50% {
    width: 100%;
    height: 1px;
  }
  90% {
    width: 100%;
    height: 100%;
  }
  100% {
    width: 100%;
    height: 100%;
  }
}
@-webkit-keyframes shutterOpen2 {
  60% {
    width: 120%;
    height: 0;
    -webkit-transform: rotate(5deg);
            transform: rotate(5deg);
  }
  90% {
    width: 120%;
    height: 100%;
    -webkit-transform: rotate(-5deg);
            transform: rotate(-5deg);
  }
  100% {
    width: 120%;
    height: 100%;
    -webkit-transform: rotate(-5deg);
            transform: rotate(-5deg);
  }
}
@keyframes shutterOpen2 {
  60% {
    width: 120%;
    height: 0;
    -webkit-transform: rotate(5deg);
            transform: rotate(5deg);
  }
  90% {
    width: 120%;
    height: 100%;
    -webkit-transform: rotate(-5deg);
            transform: rotate(-5deg);
  }
  100% {
    width: 120%;
    height: 100%;
    -webkit-transform: rotate(-5deg);
            transform: rotate(-5deg);
  }
}
@-webkit-keyframes contentScale {
  70% {
    -webkit-transform: perspective(800px) scale(0.9) rotateX(15deg);
            transform: perspective(800px) scale(0.9) rotateX(15deg);
  }
  100% {
    -webkit-transform: perspective(800px) scale(1) rotateX(0);
            transform: perspective(800px) scale(1) rotateX(0);
  }
}
@keyframes contentScale {
  70% {
    -webkit-transform: perspective(800px) scale(0.9) rotateX(15deg);
            transform: perspective(800px) scale(0.9) rotateX(15deg);
  }
  100% {
    -webkit-transform: perspective(800px) scale(1) rotateX(0);
            transform: perspective(800px) scale(1) rotateX(0);
  }
}


/*===========================
PC・スマホ切り替え
===========================*/

.pc-display{
display:block!important;	
}

.sp-display{
display:none!important;
}

html {
overflow: auto;
}
/*loading animation*/
body {
animation: fadeIn 3s ease 0s 1 normal;
-webkit-animation: fadeIn 3s ease 0s 1 normal;
-webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
	 -o-box-sizing: border-box;
	-ms-box-sizing: border-box;
		box-sizing: border-box;
overflow:hidden;
}

@keyframes fadeIn {
	0% {opacity: 0}
	100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
	0% {opacity: 0}
	100% {opacity: 1}
}



/*===========================
#super-top
===========================*/
#super-top{
background:#fff;
box-shadow:0px 4px 14px 3px #cccccc;
position:relative;
z-index:1000000;
}

#super-top .inner{
width:1050px;
margin:0 auto;
padding:16px 30px 16px 30px;
}

#super-top .inner:after {
content: "";
clear: both;
height: 0;
display: block;
visibility: hidden;
}

#super-top .inner h1{
float:left;
width:180px;
}



#super-top .inner h1 img{
width:100%;
height:auto;
}


#super-top .inner h2{
float:right;
color:#595757;
font-family: fot-tsukuardgothic-std, sans-serif;
font-weight: 700;
font-style: normal;
font-size:17px;
position:relative;
top:7px;
}




/*===========================
#main-img
===========================*/
#main-img{
width:1050px;
margin:0 auto;
position:relative;
height:500px;
}

#main-img .main-img-slider{
width:810px;
position:absolute;
top:0;
right:0;
}

#main-img .title{
width:310px;
height:280px;
text-align:center;
border:solid 4px #b4b4b4;
background-color:rgba(255,255,255,0.8);
position:absolute;
z-index:20000;
bottom:0;
left:50px;
}

#main-img .title p.semi{
font-family:futura-pt, sans-serif;
font-weight: 500;
font-style:italic;
color:#898989;
font-size:23px;
padding:50px 0 0 0;
text-indent:-10px;
}

#main-img .title p.normal{
font-family: source-han-sans-japanese, sans-serif;
font-weight: 700;
font-style:italic;
font-size:38px;
text-indent:-10px;
}

#main-img .title p.big{
font-family: source-han-sans-japanese, sans-serif;
font-weight: 700;
font-style:italic;
font-size:55px;
letter-spacing:-2px;
text-indent:-10px;
}


/*===========================
.apply-btn
===========================*/

.top-apply {
width:1000px;
padding:0px 0 40px 0;
margin:0px auto 50px;
position:relative;

}

.top-apply .inner{
width:500px;
position:absolute;
top:0px;
right:0;
}

.middle-apply{
width:700px;
margin:0 auto;
padding:50px 0 50px 0;
}



.top-apply .btn-bg,
.middle-apply .btn-bg{
font-family: fot-tsukuardgothic-std, sans-serif;
font-weight: 700;
font-style: normal;
display:block;
width:100%;
margin:0 auto;
color:#fff;
text-decoration:none;
padding:18px 5px 22px;
background: rgb(248,93,0); /* Old browsers */
background: -moz-linear-gradient(left,  rgba(248,93,0,1) 0%, rgba(255,138,0,1) 56%, rgba(252,180,54,1) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(left,  rgba(248,93,0,1) 0%,rgba(255,138,0,1) 56%,rgba(252,180,54,1) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to right,  rgba(248,93,0,1) 0%,rgba(255,138,0,1) 56%,rgba(252,180,54,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f85d00', endColorstr='#fcb436',GradientType=1 ); /* IE6-9 */
box-shadow:0px 0px 0px 2px #ea750d;
border:2px solid #ffffff;
position: relative;
z-index: 0;
transition: .3s;
}

.top-apply .btn-bg:after,
.middle-apply .btn-bg:after{
content: "";
width: 100%;
height: 100%;
display: block;
position: absolute;
top: 0;
left: 0;
z-index: -1;
/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#f80000+0,ff6000+55,ff8340+100 */
background: rgb(248,0,0); /* Old browsers */
background: -moz-linear-gradient(left,  rgba(248,0,0,1) 0%, rgba(255,96,0,1) 55%, rgba(255,131,64,1) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(left,  rgba(248,0,0,1) 0%,rgba(255,96,0,1) 55%,rgba(255,131,64,1) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to right,  rgba(248,0,0,1) 0%,rgba(255,96,0,1) 55%,rgba(255,131,64,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f80000', endColorstr='#ff8340',GradientType=1 ); /* IE6-9 */
opacity: 0;
transition: .8s;
}
.top-apply .btn-bg:hover:after,
.middle-apply .btn-bg:hover:after{
opacity: 1;
}


.top-apply a .btn,
.middle-apply a .btn{
width:100%;
display: block;
height:auto;
position:relative;
}

.top-apply a .btn .circle,
.middle-apply a .btn .circle{
border:solid 2px #ea5b0d;
background:#fff;
width:95px;
height:78px;
position:absolute;
top:-60px;
left:-40px;
border-radius:100px;
color:#f96c0a;
text-align:center;
padding:17px 0 0 0;
line-height:1.0;
}


.top-apply a .btn .circle span.normal,
.middle-apply a .btn .circle span.normal{
font-size:16px;
}


.top-apply a .btn .circle span.big,
.middle-apply a .btn .circle span.big{
font-size:30px;
letter-spacing:-2px;
}





.top-apply a .btn .text,
.middle-apply a .btn .text{
text-align:center;
font-size:30px;
text-shadow:0px 0px 5px #d97000;
}

.top-apply a .btn .text:before,
.middle-apply a .btn .text:before{
content: "\226B";
font-size: 0.9em;
}

.top-apply a .btn .text span.small,
.middle-apply a .btn .text span.small{
font-size: 0.85em;
}



/*===========================
#what
===========================*/
#what{
width:800px;
margin:90px auto 0px;

}

#what .inner{
width:800px;
height:400px;
position:relative;

}

#what img{
width:530px;
height:auto;
position:absolute;
left:0;
top:0;
z-index:3;
box-shadow:-35px 35px 0px 9px #efefef;
}



#what .copy{
padding:50px 0 0 0;
position:absolute;
right:0;
top:20px;
z-index:4;
}

#what .copy .semi{
font-family: futura-pt, sans-serif;
font-weight: 600;
font-style: normal;
color:#4c4341;
font-size:28px;
letter-spacing:-1px;
}


#what .copy .catch{
font-family: source-han-sans-japanese, sans-serif;
font-weight: 700;
font-style:normal;
font-size:42px;
}

/*===========================
#target
===========================*/

#target{
margin:100px 0 0 0;
}



#target h2{
width:100%;
text-align:center;
font-size:35px;
line-height:1.35;
background:#efefef;
border-top:solid 1px #fff;
border-bottom:solid 1px #fff;
box-shadow:0px 0px 0px 2px #dcdcdc;
padding:45px 0 20px 0;
letter-spacing:-1px;
font-family: source-han-sans-japanese, sans-serif;
font-weight: 700;
font-style: normal;
}

#target h2 img{
display:block;
width:330px;
height:auto;
margin:-115px auto 10px;
}

/* box-wrapper01 */

#target .box-wrapper01{
width:1050px;
margin:40px auto 0;
}

#target .box-wrapper02{
width:700px;
margin:30px auto 0;
}

#target .box-wrapper01:after,
#target .box-wrapper02:after{
content: "";
clear: both;
height: 0;
display: block;
visibility: hidden;
}


#target .box-wrapper01 .box .img,
#target .box-wrapper02 .box .img{
position:relative;
}

#target .box-wrapper01 .box .mark,
#target .box-wrapper02 .box .mark{
position:absolute;
bottom:-5px;
right:10px;
font-family: futura-pt, sans-serif;
font-weight: 600;
font-style: normal;
font-size:45px;
letter-spacing:-1px;
}

#target .box-wrapper01 .box h3,
#target .box-wrapper02 .box h3{
width:70%;
margin:-10px auto 30px;
color:#fff;
text-align:center;
padding:2px 0 6px;
line-height:1.2;
border:solid 2px #fff;
font-size:20px;
font-family: fot-tsukuardgothic-std, sans-serif;
font-weight: 700;
font-style: normal;
}


#target .box-wrapper01 .box .img img,
#target .box-wrapper02 .box .img img{
display:block;
width:85%;
height:auto;
margin:0 auto;
}

#target .box-wrapper01 .box ul,
#target .box-wrapper02 .box ul{
padding:20px 7.5% 30px;
}
#target .box-wrapper01 .box ul li,
#target .box-wrapper02 .box ul li{
font-family: fot-tsukuardgothic-std, sans-serif;
font-weight: 700;
font-style: normal;
list-style-type:none;
color:#231815;
line-height:1.7;
font-size:16px;
padding:2px 15px;
}



/* all box */
#target .box-wrapper01 .box,
#target .box-wrapper02 .box{
width:320px;
float:left;
margin:10px 30px 10px 0;
}

#target .box-wrapper01 .box:nth-child(3),
#target .box-wrapper02 .box:nth-child(2){
margin:10px 0px 10px 0;
}


/* 01-designer */

#target .box-wrapper01 .designer{
border:solid 2px #f89302;
box-shadow:6px 6px 0px 0px #ffb11a;
}


#target .box-wrapper01 .designer .mark{
color:#ff861a;
}


#target .box-wrapper01 .designer h3{
background:#ff9b1a;
box-shadow:0px 0px 0px 2px #ffb11a;
}



/* 03-director */

#target .box-wrapper01 .director{
border:solid 2px #ea222e;
box-shadow:6px 6px 0px 0px #f11421;
}


#target .box-wrapper01 .director .mark{
color:#ec0813;
}


#target .box-wrapper01 .director h3{
background:#f11421;
box-shadow:0px 0px 0px 2px #ea2f3a;
}

/* 03-marketer */

#target .box-wrapper01 .marketer{
border:solid 2px #1d2088;
box-shadow:6px 6px 0px 0px #1d2088;
}


#target .box-wrapper01 .marketer .mark{
color:#1d2088;
}


#target .box-wrapper01 .marketer h3{
background:#1d2088;
box-shadow:0px 0px 0px 2px #1d2088;
}

/* 04-engineer */

#target .box-wrapper02 .engineer{
border:solid 2px #3cb347;
box-shadow:6px 6px 0px 0px #3cb347;
}


#target .box-wrapper02 .engineer .mark{
color:#12bc21;
}


#target .box-wrapper02 .engineer h3{
background:#3cb347;
box-shadow:0px 0px 0px 2px #3cb347;
}


/* 05-expert */

#target .box-wrapper02 .expert{
border:solid 2px #0489c7;
box-shadow:6px 6px 0px 0px #0489c7;
}


#target .box-wrapper02 .expert .mark{
color:#0489c7;
}


#target .box-wrapper02 .expert h3{
background:#0b8fcd;
box-shadow:0px 0px 0px 2px #0981b9;
}



#target .explain{
width:92%;
margin:20px auto 0px;
text-align:center;
font-family: source-han-sans-japanese, sans-serif;
font-weight: 400;
font-style: normal;
font-size: 17px;
color: #343434;
line-height: 1.85;
padding: 10px 0 10px;
letter-spacing: 1px;
}

/*===========================
#checklist
===========================*/


#checklist{
padding:100px 0 50px 0;
}

#checklist h2{
width:880px;
margin:0px auto -80px;
position:relative;

}

#checklist h2 img{
width:100%;
height:auto;
display:block;
}



#checklist .bg{
background:#f3f3f3;
width:100%;
padding:140px 0 110px 0;
}
#checklist .inner{
width:1050px;
margin:0 auto;
}


#checklist ul{
margin:0;
padding:0;
}

#checklist ul:after {
content: "";
clear: both;
height: 0;
display: block;
visibility: hidden;
}

#checklist ul li{
width:510px;
color:#231815;
list-style-type:none;
background:#fff url(../images/icon-target.png) no-repeat 20px 25px;
background-size:35px 35px;
font-family: fot-tsukuardgothic-std, sans-serif;
font-weight: 700;
font-style: normal;
font-size:20px;
line-height:1.35;
letter-spacing:-0.5px;
padding:27px 20px 27px 60px;
margin:30px 30px 0 0;
float:left;
border:solid 2px #b8b8b8;
-webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
	 -o-box-sizing: border-box;
	-ms-box-sizing: border-box;
		box-sizing: border-box;
box-shadow:10px 10px 0px 0px #e3e2e2;
}

#checklist ul li:nth-child(2n){
margin:30px 0px 0 0;
}

#checklist ul li:nth-child(5){
width:1050px;
}


/*===========================
#offer
===========================*/

#offer{
position:relative;
width:910px;
margin:0 auto;
padding:100px 0 240px;
}


#offer .title{
width:250px;
height:250px;
text-align:center;
border:solid 4px #b4b4b4;
background-color:rgba(255,255,255,0.8);
position:absolute;
z-index:20000;
top:-100px;
right:50px;
}

#offer .title p.semi{
font-family:futura-pt, sans-serif;
font-weight: 500;
font-style:italic;
color:#898989;
font-size:23px;
padding:50px 0 0 0;
text-indent:-10px;
}

#offer .title p.catch{
font-family: source-han-sans-japanese, sans-serif;
font-weight: 700;
font-style:normal;
font-size:38px;

}

#offer img{
width:600px;
height:auto;
position:absolute;
left:0;
top:0px;
}




/*===========================
#feature
===========================*/


#feature{
margin:90px auto 0;
}

#feature h2.title{
background:#efefef;
}

#feature h2.title .inner{
width:650px;
margin:0 auto;
height:210px;
position:relative;
}

#feature h2.title .inner .img{
height:240px;
width:auto;
margin:-30px 20px 0 0;
display:inline-block;
}

#feature h2.title .inner img{
height:240px;
width:auto;
}



#feature h2.title .inner .text{
width:400px;
position:absolute;
top:45px;
right:0;
}


#feature h2.title .inner .text span.semi{
font-family: futura-pt, sans-serif;
font-weight: 600;
font-style: normal;
color: #231815;
font-size: 22px;
letter-spacing: -1px;
}

#feature h2.title .inner .text span.catch{
font-family: source-han-sans-japanese, sans-serif;
font-weight: 700;
font-style: normal;
font-size: 45px;
}

#feature .box-wrapper{
width:970px;
margin:0 auto;
padding:40px 40px 40px;
}

#feature .box-wrapper:after {
content: "";
clear: both;
height: 0;
display: block;
visibility: hidden;
}

#feature .box-wrapper .box{
width:470px;
background:#f8f8f8;
border:solid 3px #dcdcdc;
padding:0 0 20px 0;
margin:70px 30px 0 0;
-webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
	 -o-box-sizing: border-box;
	-ms-box-sizing: border-box;
		box-sizing: border-box;
float:left;
}

#feature .box-wrapper .box:nth-child(2n){
margin:70px 0px 0 0;
}


#feature .box-wrapper .box h4.number{
border:solid 2px #b0b0b0;
background:#8c8c8c;
width:95px;
height:81px;
margin:-50px auto 10px;
border-radius:100px;
color:#fff;
text-align:center;
padding:14px 0 0 0;
line-height:1.0;
font-weight:normal;
}



#feature .box-wrapper .box h4.number .small{
font-family: source-han-sans-japanese, sans-serif;
font-weight: 700;
font-style:italic;
font-size:18px;
text-indent:-4px;
}


#feature .box-wrapper .box h4.number .big{
font-family: futura-pt, sans-serif;
font-weight: 500;
font-style: italic;
font-size:49px;
letter-spacing:-1px;
text-indent:-4px;
}




#feature .box-wrapper .box img{
display:block;
width:80%;
height:auto;
margin:20px auto 0px;
}

#feature .box-wrapper .box h3{
font-family: source-han-sans-japanese, sans-serif;
font-weight:700;
font-style: normal;
font-size: 22px;
line-height:1.2;
padding:10px 25px 10px;
letter-spacing:-1px;
}

#feature .box-wrapper .box h3.red{
color:#f83732;
}

#feature .box-wrapper .box h3.green{
color:#04b12b;
}
#feature .box-wrapper .box h3.blue{
color:#0184bc;
}
#feature .box-wrapper .box h3.purple{
color:#ec0557;
}
#feature .box-wrapper .box h3.orange{
color:#f67b02;
}
#feature .box-wrapper .box h3.navy{
color:#020457;
}

#feature .box-wrapper .box .sentence{
font-family: fot-tsukuardgothic-std, sans-serif;
font-weight: 700;
font-style: normal;
font-size: 15.5px;
color:#505050;
line-height:1.65;
padding:10px 25px 10px;
}

#feature .box-wrapper .box .sentence span.small{
font-size:0.75em;
}

#feature .point{
text-align:center;
font-family: source-han-sans-japanese, sans-serif;
font-weight: 700;
font-style:normal;
font-size:32px;
text-indent:-4px;
color:#231815;
line-height:1.35;
padding:20px 0 20px 0;
}


/*===========================
#publish
===========================*/
#publish{
padding:90px 0 70px 0;
}
#publish h2{
border-top:solid 1px #8c8c8c;
position:relative;
width:100%;
margin:0 auto;
text-align: center;
}



#publish h2 .inner{
position:absolute;
top:-60px;
left: 50%;
transform:translateX(-50%);
-webkit-transform:translateX(-50%);
background:#fff;
padding:10px 30px 10px 30px;
}

#publish h2 .inner .semi{
font-family: futura-pt-bold, sans-serif;
font-weight: 700;
font-style: italic;
color: #231815;
font-size: 58px;
line-height:1.5;
}



#publish h2 .inner .catch{
font-family: source-han-sans-japanese, sans-serif;
font-weight: 700;
font-style:italic;
font-size:18px;
color:#231815;
line-height:1.4;

}

#publish .box{
width:900px;
margin:90px auto 0;

}
#publish .box p.text{
display:inline-block;
position:relative;
z-index:20;
margin:0 -40px 0 0;
top:90px;
}

#publish .box p.text .semi{
font-family: futura-pt-bold, sans-serif;
font-weight: 700;
font-style: normals;
color: #231815;
font-size: 28px;
line-height:1.5;

} 

#publish .box img{
display:inline-block;
width:480px;
height:auto;
position:relative;
z-index:10;
box-shadow:25px 25px 0px 9px #e8e8e8;
}

#publish .box p.text .catch{
font-family: source-han-sans-japanese, sans-serif;
font-weight: 700;
font-style:normal;
font-size:38px;
color:#231815;
line-height:1.4;
letter-spacing:-2px;
}


/*===========================
#media
===========================*/

#media .media-bg{
width:100%;
min-height:400px;
background-image: url(../images/media-bg.jpg);
background-size: cover;
position: relative;
padding: 30px 0 0px 0;
z-index:8;
margin:190px auto 0;
}

#media .media-bg:after{
content:"";
background-color:rgba(232, 232, 232, 0.8);
position: absolute;
width:100%;
height:100%;
left: 0;
right: 0;
top: 0;
bottom: 0;
z-index:9;
}

#media h2{
width:890px;
margin:-170px auto 0;
position:relative;
z-index:10;
}

#media h2 img{
width:100%;
height:auto;
}



#media .box{
width:900px;
margin:0 auto;
position:relative;
z-index:11;
padding:40px 0 0 0;
}
#media .box:after {
content: "";
clear: both;
height: 0;
display: block;
visibility: hidden;
}

#media .box img.mock{
display:block;
width:360px;
height:auto;
float:left;
}

#media .box img.chart{
display:block;
width:500px;
height:auto;
float:right;
padding:40px 0 0 0;
}

#media .sentence{
width:890px;
margin:0 auto 0;
padding:10px 0 10px 0;
}

#media .sentence p{
font-family: source-han-sans-japanese, sans-serif;
font-weight: 400;
font-style: normal;
font-size: 15px;
color: #343434;
line-height: 1.85;
padding: 10px 0 10px;
letter-spacing:1px;
}


/*===========================
#flow
===========================*/

#flow{
background:#f3f3f3;
margin:200px auto 0;
}

#flow .title-wrapper{
width:100%;
text-align: center;
position:relative;
margin:0 auto 160px;
}

#flow .title-wrapper h2.title{
width:250px;
height:250px;
text-align:center;
border:solid 4px #b4b4b4;
background-color:rgba(255,255,255,0.8);
display:inline-block;
position:relative;
z-index:21;
}

#flow .title-wrapper img{
width:1200px;
height:auto;
position: absolute;
top: 50%;
left: 50%;
transform: translateY(-50%) translateX(-50%);
-webkit-transform: translateY(-50%) translateX(-50%);
margin: auto;
z-index:20;
}

#flow .title-wrapper h2.title p.semi{
font-family:futura-pt, sans-serif;
font-weight: 500;
font-style:italic;
color:#898989;
font-size:23px;
padding:40px 0 0 0;
text-indent:-10px;
}

#flow .title-wrapper h2.title p.catch{
font-family: source-han-sans-japanese, sans-serif;
font-weight: 700;
font-style:italic;
font-size:40px;
}


#flow .step{
color:#b4b4b4;
line-height:0.6;
font-family: futura-pt, sans-serif;
font-weight: 600;
font-style: normal;
font-size: 55px;
letter-spacing: -1px;
text-align:center;
}

#flow img.arrow{
display:block;
width:66px;
height:auto;
margin:0 auto 20px;
line-height:0;

}

#flow .box {
width:950px;
margin:0 auto;
background:#fff;
border:solid 2px #b4b4b4;
padding:35px 35px 35px 35px;
-webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
     -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
        box-sizing: border-box
}



#flow .left:after,
#flow .right:after {
content: "";
clear: both;
height: 0;
display: block;
visibility: hidden;
}


#flow .left .text{
float:right;
width:500px;
height:auto;
}


#flow .left img{
float:left;
width:330px;
height:auto;
}

#flow .right .text{
float:left;
width:500px;
height:auto;
}


#flow .right img{
float:right;
width:330px;
height:auto;
}

#flow .box h3{
font-size:26px;
color:#231815;
font-family: source-han-sans-japanese, sans-serif;
font-weight: 700;
font-style: normal;
padding:0 0 20px 0;
}
#flow .box h3 span {
display: inline-block;
width: 33px;
line-height: 33px;
height: 33px;
font-size: 24px;	
-moz-border-radius: 50%;
-webkit-border-radius: 50%;
border-radius: 50%;
background: #b0b0b0;
color: #fff;
text-align: center;
margin-right: 5px;
position:relative;
top:1px;
}

#flow .box .text p{
font-family: source-han-sans-japanese, sans-serif;
font-weight: 400;
font-style: normal;
font-size:16px;
line-height:1.7;
}


#flow .addtional{
width:530px;
margin:30px auto 0;
}
#flow .addtional .text{
display:inline-block;
position: relative;
top:50px;
}

#flow .addtional .text .semi{
color: #231815;
font-family: source-han-sans-japanese, sans-serif;
font-weight: 700;
font-style: normal;
background:#d5d5d5;
border-radius:30px;
font-size:21px;
width:150px;
margin:0 auto;
padding:2px 10px;
text-align: center;
}
#flow .addtional .text .catch{
color: #231815;
font-family: source-han-sans-japanese, sans-serif;
font-weight: 700;
font-style: normal;
font-size:35px;
line-height:1.25;
padding:2px 10px;
text-align: center;
}


#flow .addtional img{
width:210px;
height:auto;
display:inline-block;
}


/*===========================
.white-paper
===========================*/

.white-paper{
  padding:20px 0 0 0;
  }
  
  .white-paper h2{
  
  text-align:center;
  padding:30px 2% 30px 2%;
  }
  
  .white-paper h2 span.small {
  font-size: 20px;
  font-family: serif;
  font-weight: 500;
  color: #404040;
  letter-spacing: 0.03em;
  line-height: 1.5;
  display:block;
  }
  
  .white-paper h2 span.big {
  font-family: YakuHanJP,Yu Gothic,YuGothic,YuGothic M,"ヒラギノ角ゴ Pro W3",Hiragino Kaku Gothic Pro,"メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック",MS PGothic,sans-serif;
  font-weight: 600;
  font-style: normal;
  font-size: 45px;
  line-height: 1.3em;
  display:block;
  letter-spacing: 0.05em;
  }
  
  .white-paper .box:after {
  content: "";
  clear: both;
  height: 0;
  display: block;
  visibility: hidden;
  }
  
  .white-paper{
  width:1100px;
  margin:0 auto;
  }
  
  .white-paper .box .left{
  float:left;
  width:500px;
  }
  
  
  .white-paper .box .left img{
  width:100%;
  height:auto;
  display:block;
  }
  
  
  .white-paper .box .right{
  float:right;
  width:570px;
  padding:40px 0 0 0;
  }
  
  .white-paper .box .right h4{
  padding:10px 30px 10px 30px;
  text-align:center;
  background: #f8f8f8;
  border:solid 2px #aaa;
  font-size:22px;
  margin:0 0 40px 0;
  }
  
  .white-paper .box .right h3,
  .white-paper .box .right h4,
  .white-paper .box .right h5{
  font-family: YakuHanJP,Yu Gothic,YuGothic,YuGothic M,"ヒラギノ角ゴ Pro W3",Hiragino Kaku Gothic Pro,"メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック",MS PGothic,sans-serif;
  font-weight:600;
  line-height: 1.5;
  }
  .white-paper .box .right h3{
  text-align:center;
  margin:0 0 40px 0;
  }
  
  .white-paper .box .right h3 .semi{
  font-size:36px;
  display: block;
  }
  
  .white-paper .box .right h3 .big{
  font-size:40px;
  display: block;
  }
  
  .white-paper .box .right h5{
  font-size:22px;
  margin:0 0 20px 0;
  }
  
  .white-paper .box .right p{
  font-family: YakuHanJP,Yu Gothic,YuGothic,YuGothic M,"ヒラギノ角ゴ Pro W3",Hiragino Kaku Gothic Pro,"メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック",MS PGothic,sans-serif;
  line-height:2.0;
  font-size:18px;
  }
  
  
  .white-paper .catch {
  font-family: YakuHanJP,Yu Gothic,YuGothic,YuGothic M,"ヒラギノ角ゴ Pro W3",Hiragino Kaku Gothic Pro,"メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック",MS PGothic,sans-serif;
  font-weight: 600;
  font-style: normal;
  font-size: 33px;
  line-height: 1.3em;
  display:block;
  letter-spacing: 0.05em;
  padding:0 0 10px 0;
  text-align:center;
  }

/*===========================
#message
===========================*/
#message{
padding:90px 0 0 0;
}
#message h2.title{
width:250px;
height:250px;
text-align:center;
margin:0 auto;
border:solid 4px #b4b4b4;
background-color:rgba(255,255,255,0.8);
display:block;
position:relative;
z-index:31;
-webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
     -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
        box-sizing: border-box;
padding:10px 0 0 0;
}

#message h2.title p.semi{
font-family: futura-pt-bold, sans-serif;
font-weight: 700;
font-style: normal;
color:#231815;
font-size:27px;
padding:40px 0 0 0;

}

#message h2.title p.catch{
font-family: source-han-sans-japanese, sans-serif;
font-weight: 700;
font-style:normal;
font-size:45px;
}

#message h3{
background-color:#f6f6f6;
background-image:url(../images/message-h3-bg.png);
background-size:880px 120px;
background-repeat:no-repeat;
background-position:center center;
width:100%;
margin:-40px 0 0 0;
padding:60px 0 60px 0;
text-align:center;
font-family: source-han-sans-japanese, sans-serif;
font-weight: 700;
font-style:normal;
font-size:40px;
position:relative;
z-index:30;
color:#464646;
letter-spacing:6px;
}


#message .sentence{
width:850px;
margin:20px auto 50px;
font-family: source-han-sans-japanese, sans-serif;
font-weight: 500;
font-style: normal;
text-align:center;
}

#message .sentence p{
padding:10px 0 10px 0;
font-size:19px;
line-height:1.6;
color:#3e3e3e;
}


/*===========================
#lets
===========================*/


#lets .box{
width:770px;
margin:10px auto 0;
padding:0 0 100px 0;
}
#lets .box .text{
display:inline-block;
position:relative;
z-index:20;
margin:0 0 0 -70px;
top:30px;
}

#lets .box .text .semi{
font-family: futura-pt-bold, sans-serif;
font-weight: 700;
font-style: normals;
color: #231815;
font-size: 28px;
line-height:1.5;

} 

#lets .box img{
display:inline-block;
width:480px;
height:auto;
position:relative;
z-index:10;
box-shadow:-25px 25px 0px 9px #e8e8e8;
}

#lets .box .text .catch{
font-family: source-han-sans-japanese, sans-serif;
font-weight: 700;
font-style:normal;
font-size:38px;
color:#231815;
line-height:1.4;
letter-spacing:-2px;
}


/*===========================
.follow
===========================*/


.follow h3{
padding:60px 20px 20px 20px;
color: #231815;
font-family: fot-tsukuardgothic-std, sans-serif;
font-weight: 700;
font-style: normal;
font-size:21px;
line-height:1.2;
text-align:center;
}

/*===========================
.btn-wrapper
===========================*/



.btn-wrapper{
width:800px;
margin:auto;
}

.btn-wrapper:after {
content: "";
clear: both;
height: 0;
display: block;
visibility: hidden;
}

.view-btn{
float:left;
width:380px;

}

.info-btn{
float:right;
width:380px;

}



.view-btn .btn-bg,
.info-btn .btn-bg{
font-family: fot-tsukuardgothic-std, sans-serif;
font-weight: 700;
font-style: normal;
display:block;
width:100%;
margin:0 auto;
color:#fff;
text-decoration:none;
padding:18px 5px 22px;
}

/* .view-btn gradation */

.view-btn .btn-bg{

/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#0aca96+0,0087c6+100 */
background: rgb(10,202,150); /* Old browsers */
background: -moz-linear-gradient(left,  rgba(10,202,150,1) 0%, rgba(0,135,198,1) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(left,  rgba(10,202,150,1) 0%,rgba(0,135,198,1) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to right,  rgba(10,202,150,1) 0%,rgba(0,135,198,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0aca96', endColorstr='#0087c6',GradientType=1 ); /* IE6-9 */
box-shadow:0px 0px 0px 2px #09a7be;
border:2px solid #ffffff;
position: relative;
z-index: 0;
transition: .3s;
}

.view-btn .btn-bg:after{
content: "";
width: 100%;
height: 100%;
display: block;
position: absolute;
top: 0;
left: 0;
z-index: -1;
/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#01c24a+0,0263a1+100 */
background: rgb(1,194,74); /* Old browsers */
background: -moz-linear-gradient(left,  rgba(1,194,74,1) 0%, rgba(2,99,161,1) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(left,  rgba(1,194,74,1) 0%,rgba(2,99,161,1) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to right,  rgba(1,194,74,1) 0%,rgba(2,99,161,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#01c24a', endColorstr='#0263a1',GradientType=1 ); /* IE6-9 */

opacity: 0;
transition: .8s;
}



/* .info-btn gradation */

.info-btn .btn-bg{
/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#00db81+0,11d236+100 */
background: rgb(0,219,129); /* Old browsers */
background: -moz-linear-gradient(left,  rgba(0,219,129,1) 0%, rgba(17,210,54,1) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(left,  rgba(0,219,129,1) 0%,rgba(17,210,54,1) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to right,  rgba(0,219,129,1) 0%,rgba(17,210,54,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00db81', endColorstr='#11d236',GradientType=1 ); /* IE6-9 */


box-shadow:0px 0px 0px 2px #05c463;
border:2px solid #ffffff;
position: relative;
z-index: 0;
transition: .3s;
}

.info-btn .btn-bg:after{
content: "";
width: 100%;
height: 100%;
display: block;
position: absolute;
top: 0;
left: 0;
z-index: -1;
background: rgb(0,192,90);
background: -moz-linear-gradient(left,  rgba(0,192,90,1) 0%, rgba(0,183,13,1) 100%);
background: -webkit-linear-gradient(left,  rgba(0,192,90,1) 0%,rgba(0,183,13,1) 100%);
background: linear-gradient(to right,  rgba(0,192,90,1) 0%,rgba(0,183,13,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00c05a', endColorstr='#00b70d',GradientType=1 );



opacity: 0;
transition: .8s;
}


.view-btn .btn-bg:hover:after,
.info-btn .btn-bg:hover:after{
opacity: 1;
}


.view-btn a .btn,
.info-btn a .btn{
width:100%;
display: block;
height:auto;
position:relative;
}

.view-btn a .btn .text,
.info-btn a .btn .text{
text-align:center;
font-size:30px;
text-shadow:0px 0px 5px #005681;
}

.view-btn a .btn .text:before,
.info-btn a .btn .text:before{
content: "\226B";
font-size: 0.9em;
}

.view-btn a .btn .text span.small,
.info-btn a .btn .text span.small{
font-size: 0.85em;
}







/* slick-slider 初期設定 */

.work-volume-img{
width:100%;
height: auto;
}





















/*===========================
footer
===========================*/

footer{
margin:60px auto 0;
background:#efefef;
padding:5px 2%;
color:#231815;
font-family: fot-tsukuardgothic-std, sans-serif;
font-weight: 700;
font-style: normal;
font-size:16px;
line-height:1.8;
text-align:center;
}


/*===========================
ボタン：公式ホームページへ
===========================*/

.home-button{
width:700px;
margin:30px auto 100px;	
}

.home-button a{
display: block;
width:100%;
-webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
     -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
        box-sizing: border-box;	
text-align: center;
color:#fff;
font-family: source-han-sans-cjk-ja, sans-serif;
font-weight: 700;
font-style: normal;
padding:15px 2% 22px;	
background: linear-gradient(to bottom, #8fc800 0%,#8fc800 100%);
text-decoration:none;
box-shadow:0px 0px 0px 2px #ffffff inset;
font-size:23px;
line-height:1.6;
text-shadow:0px 0px 3px #3e8c29;	
}

.home-button a:before{
    content: "\226B";
    font-size: 0.9em;
}


	
	
