@charset "utf-8";


@media screen and (max-width: 780px) {
  body{
    padding-bottom: 50px;
  }
}
/* ------- MAIN ---------------------------------------------- */
.work-main{
  background: #245AA5;
  background: linear-gradient(40deg, rgba(36, 90, 165, 1) 0%, rgba(28, 123, 255, 1) 100%);
  position: relative;
}
.work-main:before,
.work-main:after{
  background-repeat: no-repeat;
  background-size: 100% 100%;
  content: "";
  display: block;
  height: 54.976%;
  width: 50%;
  position: absolute;
  mix-blend-mode: multiply;
}
.work-main:before{
  background-image: url("../img/bg1.png");
  left: 0;
  bottom: 0;
}
.work-main:after{
  background-image: url("../img/bg2.png");
  right: 0;
  top: 0;
}
.work-main h1{
  color: #FFF;
  font-weight: 700;
  font-style: italic;
  letter-spacing: -.03em;
  line-height: 1.34;
  position: relative;
  z-index: 2;
}
@media print, screen and (min-width:781px) {
  .work-main{
    align-items: center;
    justify-content: center;
    display: flex;
    height: 100vh;
    min-height: 720px;
  }
  .work-main h1{
    font-size: min(6.5885vw,9.0rem);
    margin-top: -80px;
    transform: rotate(-5deg);
  }
}
@media screen and (max-width: 780px) {
  .work-main{
    align-items: center;
    justify-content: center;
    display: flex;
    height: 450px;
  }
  .work-main h1{
    font-size: min(7.948vw,6.2rem);
    margin-top: -80px;
    transform: rotate(-5deg);
  }
}
@media (hover: hover) and (pointer: fine){
}




/* ------- IMAGE ---------------------------------------------- */
.work-image-section{
  position: relative;
}
.work-image-section:before{
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  display: block;
  position: absolute;
  z-index: 0;
}
.work-image-main{
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  position: relative;
  z-index: 2;
}
.work-image-main .profile{
  color: #FFF;
}
.work-image-main .profile dl{
  font-weight: 700;
}
.work-image-main .profile dl dd{
  line-height: 1.38;
}
.work-image-main .profile p > b{
  font-weight: 700;
}
.work-image-main .profile p > span{
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: italic;
}
@media print, screen and (min-width:781px) {
  .work-image-section{
    padding-top: 1px;
  }
  .work-image-section:before {
    background-image: url("../img/bg3.png");
    height: 800px;
    width: 1044px;
    opacity: .46;
    right: -553px;
    top: -15px;
  }
  .work-image-inner ul{
    font-size: 1.2rem;
    text-align: right;
    margin-top: 10px;
    margin-left: auto;
    margin-right: auto;
    max-width: 1100px;
  }
  
  .work-image-main{
    background-image: url("../work01/img/image-main.jpg");
    margin-top: -75px;
    margin-left: auto;
    height: 650px;
    width: 80.527%;
  }
  .work-image-main .profile{
    margin-left: 60px;
    margin-top: 80px;
  }
  .work-image-main .profile dl dt{
    font-size: min(1.317vw,1.8rem);
  }
  .work-image-main .profile dl dd{
    font-size: min(1.903vw,2.6rem);
  }
  .work-image-main .profile p{
    font-size: 1.4rem;
    margin-top: 15px;
  }
}
@media screen and (max-width: 780px) {
  .work-image-section{
    padding-top: 1px;
  }
  .work-image-section:before {
    background-image: url("../img/bg3_sp.png");
    padding-bottom: 102.56%;
    width: 59.1025%;
    opacity: .46;
    right: 0;
    top: 0;
  }
  .work-image-inner ul{
    font-size: 1.0rem;
    text-align: right;
    margin: 10px 5% 0;
  }
  
  .work-image-main{
    margin-top: -75px;
    margin-left: auto;
    /*height: 225px;*/
    padding-bottom: 70.51%;
    width: 95%;
    position: relative;
  }
  .work-image-main .profile{
    position: absolute;
    left: 10%;
    top: 25px;
  }
  .work-image-main .profile dl dt{
    font-size: min(3.846vw,3.0rem);
  }
  .work-image-main .profile dl dd{
    font-size: min(5.897vw,4.6rem);
  }
  .work-image-main .profile p{
    font-size: 1.1rem;
    margin-top: 10px;
  }
}
@media (hover: hover) and (pointer: fine){
}



/* ------- SECTION ---------------------------------------------- */
.work-section-inner:before{
  display: block;
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: italic;
  line-height: 1;
  text-decoration: underline;
  transform: rotate(-5deg);
}
.work-section1 .work-section-inner:before{
  content: "Start";
}
.work-section2 .work-section-inner:before{
  color: #FFF;
  content: "Step";
}
.work-section3 .work-section-inner:before{
  content: "Now";
}


.work-section-text > h2{
  font-weight: 700;
  line-height: 1.3;
}
.work-section-text > p{
  line-height: 2.2;
}
.work-section-text > p > strong{
  background-color: rgba(28,119,243,.25);
  font-weight: 600;
}
.work-section2 .work-section-text > p > strong{
  background-color: rgba(13,69,145,.40)
}
@media print, screen and (min-width:781px) {
  .work-section-inner{
    margin-left: auto;
    margin-right: auto;
    max-width: 1100px;
    width: 80.527%;
  }
  .work-section-inner:before{
    font-size: min(14.64vw,20.0rem);
  }
  .work-section-text{
    margin-left: auto;
    margin-top: 70px;
    width: 82.181%;
  }
  .work-section-text > h2{
    font-size: min(3.66vw,5.0rem);
    margin-bottom: 50px;
  }
  .work-section-text > p{
    font-size: min(1.46vw,2.0rem);
  }
}
@media screen and (max-width: 780px) {
  .work-section-inner{
    margin-left: auto;
    margin-right: auto;
    width: 90%;
  }
  .work-section-inner:before{
    font-size: 10.0rem;
    margin-left: -5px;
    margin-top: 50px;
  }
  .work-section-text{
    margin-left: auto;
    margin-top: 40px;
    width: 88.88%;
  }
  .work-section-text > h2{
    font-size: 2.5rem;
    margin-bottom: 35px;
  }
  .work-section-text > p{
    font-size: 1.5rem;
  }
  
}
@media (hover: hover) and (pointer: fine){
}



/* ------- SECTION1 ---------------------------------------------- */
.work-section1{
}
@media print, screen and (min-width:781px) {
  .work-section1{
    padding-bottom: 410px;
  }
}
@media screen and (max-width: 780px) {
  .work-section1{
    padding-bottom: 170px;
  }
}
@media (hover: hover) and (pointer: fine){
}



/* ------- SECTION2 ---------------------------------------------- */
.work-section2{
  background: #245AA5;
  background: linear-gradient(40deg, rgba(36, 90, 165, 1) 0%, rgba(28, 123, 255, 1) 100%);
  color: #FFF;
  padding-top: 1px;
}
.work-section2-image{
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  z-index: 0;
}
@media print, screen and (min-width:781px) {
  .work-section2{
    padding-bottom: 350px;
  }
  .work-section2-image{
    margin-top: -258px;
    margin-left: auto;
    height: 570px;
    width: 61.493%;
  }
  .work-section2-image:before {
    background-image: url("../img/bg4.png");
    background-repeat: no-repeat;
    background-size: cover;
    content: "";
    display: block;
    height: 258px;
    width: 194px;
    opacity: .46;
    position: absolute;
    top: 0;
    left: -194px;
    z-index: -1;
  }
}
@media screen and (max-width: 780px) {
  .work-section2{
    padding-bottom: 200px;
  }
  .work-section2-image{
    margin-top: -132px;
    margin-left: auto;
    height: 185px;
    width: 70%;
  }
  .work-section2-image:before {
    background-image: url("../img/bg4_sp.png");
    background-repeat: no-repeat;
    background-size: cover;
    content: "";
    display: block;
    height: 132px;
    width: 35.7798%;
    opacity: .46;
    position: absolute;
    top: 0;
    left: -35.7798%;
    z-index: -1;
  }
}
@media (hover: hover) and (pointer: fine){
}



/* ------- SECTION3 ---------------------------------------------- */
.work-section3{
  padding-top: 1px;
}
.work-section3-image{
  position: relative;
  z-index: 0;
}
.work-section3-image > figure{
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 1;
}
@media print, screen and (min-width:781px) {
  .work-section3{
    padding-bottom: 150px;
  }
  .work-section3-image{
    margin-top: -200px;
    margin-right: auto;
    height: 400px;
    width: 43.9238%;
  }
  .work-section3-image > figure{
    width: 100%;
  }
  .work-section3-image:before {
    background-image: url("../img/bg5.png");
    background-repeat: no-repeat;
    background-size: cover;
    content: "";
    display: block;
    height: 489px;
    width: 1044px;
    opacity: .46;
    position: absolute;
    top: 200px;
    right: -444px;
    z-index: -1;
  }
}
@media screen and (max-width: 780px) {
  .work-section3{
    padding-bottom: 100px;
  }
  .work-section3-image{
    margin-top: -93px;
    margin-right: auto;
    height: 182px;
    width: 70%;
  }
  .work-section3-image > figure{
    width: 100%;
  }
  .work-section3-image:before {
    background-image: url("../img/bg5_sp.png");
    background-repeat: no-repeat;
    background-size: cover;
    content: "";
    display: block;
    height: 213px;
    width: 135.714%;
    opacity: .46;
    position: absolute;
    top: 93px;
    left: 0;
    z-index: -1;
  }
}
@media (hover: hover) and (pointer: fine){
}



/* ------- PRIVATE ---------------------------------------------- */
.work-private{
  
}
.work-private-image{
  position: relative;
}
.work-private-image figure{
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.private .image > figure{
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.private .detail:before{
  content: "Private";
  display: block;
  font-family: "Jost", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: italic;
  line-height: 1;
  text-decoration: underline;
  transform: rotate(-5deg);
}
.private .detail h2{
  font-weight: 700;
  line-height: 1.38;
}
@media print, screen and (min-width:781px) {
  .work-private-image:before{
    background-image: url("../img/bg6.png");
    background-repeat: no-repeat;
    background-size: cover;
    content: "";
    display: block;
    height: 411px;
    width: 79.136%;
    opacity: .46;
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: -1;
  }
  .work-private-image figure{
    margin-left: auto;
    height: 575px;
    width: 62.884%;
  }
  .private{
    background-image: url("../img/bg7.png");
    background-repeat: no-repeat;
    background-size: cover;
    overflow: hidden;
  }
  .private-inner{
    display: flex;
    align-items: center;
    margin-left: auto;
    margin-right: auto;
    max-width: 1366px;
  }
  .private .image{
    width: 37%;
  }
  .private .image > figure{
    position: relative;
    margin-left: auto;
    padding-bottom: 66.072%;
    width: 53.254%;
  }
  .private .detail{
    padding: 120px 90px;
    width: 63%;
  }
  .private .detail:before{
    font-size: min(6.149vw,8.4rem);
    margin-bottom: 50px;
  }
  .private .detail h2{
    font-size: min(2.635vw,3.6rem);
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 780px) {
  .work-private-image:before{
    background-image: url("../img/bg6_sp.png");
    background-repeat: no-repeat;
    background-size: cover;
    content: "";
    display: block;
    height: 100%;
    width: 100%;
    opacity: .46;
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: -1;
  }
  .work-private-image figure{
    margin-left: auto;
    padding-bottom: 29.87%;
    width: 44.615%;
  }
  .private{
    background-image: url("../img/bg7_sp.png");
    background-repeat: no-repeat;
    background-size: cover;
  }
  .private-inner{
  }
  .private .image{
    margin-left: 15%;
    width: 40.385%;
  }
  .private .image > figure{
    padding-bottom: 124.35%;
  }
  .private .detail{
    padding-left: 15%;
    padding-right: 5%;
    padding-bottom: 125px;
    padding-top: 55px;
  }
  .private .detail:before{
    font-size: 4.2rem;
    margin-bottom: 50px;
  }
  .private .detail h2{
    font-size: 2.0rem;
    margin-bottom: 20px;
  }
}
@media (hover: hover) and (pointer: fine){
}