@charset "utf-8";
#page.index #main {
    width: 100%;
    height: 900px;
    margin-left: auto;
  	margin-right: auto;
    position: relative;
    background-image: url(../images/top/main_back.png);
    background-position: center center;
    background-repeat: no-repeat;
    padding-top:52px;
}
  #page.index #main .topslide {
    width:960px;
    height:500px;
  	margin-left: auto;
  	margin-right: auto;
  	position: relative;
  }
  #page.index #main .swiper-wrapper{
  	margin:0 auto;
    width:960px;
    height:500px;
  	position:relative;
  }
  #page.index #main .swiper-slide{
  	width:100%;
  	height: 100%;
  	margin:0;
  	box-sizing:border-box;
  	text-align:center;
  	position:relative;
  }
  	#page.index #main .swiper-slide img {
  		width:960px;
  		height:500px;
  		margin:0;
  		display:block;
  		overflow: hidden;
  		position:relative;
  	}

  #page.index #main .mainBox{
    width:960px;
    height: 337px;
    position: relative;
    margin:0 auto;
    background-image: url(../images/top/main_comment_back.png);
    background-repeat: no-repeat;
    background-position: center center;
  }
  #page.index #main .mainBox .mainBoxin{
    width:568px;
    position: relative;
    margin:0 auto;
  }
    #page.index #main .mainBoxin h2{
      width: 100%;
      padding:30px 0 32px;
    }
    #page.index #main .mainBoxin img{
      width: 100%;
    }

#page.index #works .worksbox{
      margin-bottom:80px;
    }

@media (max-width: 750px) {
  #page.index #main {
      width: 100%;
      height: auto;
      background-size: cover;
      padding: 0 0 7vw;
      background-position:center bottom 45vw;
  }
  #page.index #main .topslide {
    padding-top:0;
    width:100%;
    height:45vw;
  }
  #page.index #main .swiper-wrapper{
  	width:100%;
    height:45vw;
  }
  	#page.index #main .swiper-slide img {
  		width:100vw !important;
  		height:auto;
  		margin:0;
  	}
    #page.index #main .mainBox{
      width:100vw;
      height: auto;
      margin-top:5vw;
    }
    #page.index #main .mainBox .mainBoxin{
      width:90vw;
    }
      #page.index #main .mainBoxin h2{
        padding:5vw 0 4vw;
      }
}




#page.index #works .title{
  width:100%;
  height: 190px;
  position: relative;
  margin:60px auto 60px;
  background-image: url(../images/top/works_back.png);
  background-repeat: no-repeat;
  background-position: right center;
  display: -webkit-flex;
	display: flex;
	-webkit-align-items: flex-end;
	align-items: flex-end;
}
@media (max-width: 750px) {
  #page.index #works .title{
    margin:5vw auto 0;
    height: 40vw;
    background-position: right bottom;
    background-size: 80vw auto;
    -webkit-align-items: flex-start;
  	align-items: flex-start;
  }
  #page.index #works .title img{
    height: 20vw;
  }
  #page.index #contents .catchcopy{
    font-size:3.2vw;
    letter-spacing: 0px;
    font-weight:bold;
    margin:7vw auto 10vw;
    line-height:2
  }
}



#page.index #strong #strongin{
  position: relative;
}
  #page.index #strong #strongin .strong_contents{
    margin:90px auto 320px;
    width:488px;
  }
    #page.index #strong #strongin .strong_contents strong{
      margin:60px auto 40px;
      display:block;
    }
    #page.index #strong #strongin .strong_contents p{
      font-weight:bold;
      margin-bottom:1.5em;

    }
  #page.index #strong #strongin .back01{
    position: absolute;
    top:40px;
    left:50%;
    margin-left:-560px;
    background-image: url(../images/top/strong_back01.png);
    background-repeat: no-repeat;
    background-position: right top;
    width:349px;
    height:464px;
  }
  #page.index #strong #strongin .back02{
    position: absolute;
    top:0;
    right:50%;
    margin-right:-670px;
    background-image: url(../images/top/strong_back02.png);
    background-repeat: no-repeat;
    background-position: right top;
    width:413px;
    height:441px;
  }
  #page.index #strong #strongin .back03{
    position: absolute;
    top:390px;
    right:50%;
    margin-right:-470px;
    background-image: url(../images/top/strong_back03.png);
    background-repeat: no-repeat;
    background-position: right top;
    width:130px;
    height:330px;
  }
  #page.index #strong #strongin .back04{
    position: absolute;
    top:480px;
    left:50%;
    margin-left:-560px;
    background-image: url(../images/top/strong_back04.png);
    background-repeat: no-repeat;
    background-position: right top;
    width:368px;
    height:515px;
  }
  #page.index #strong #strongin .back05{
    position: absolute;
    top:724px;
    right:50%;
    margin-right:-550px;
    background-image: url(../images/top/strong_back05.png);
    background-repeat: no-repeat;
    background-position: right top;
    width:717px;
    height:271px;
  }

  #page.index #strong hr.line {
    background-image: url(../images/top/line.png);
    background-repeat: no-repeat;
    background-position: center center;
    width:100%;
    height: 7px;
    border:none;
  }


#page.index #news{
  padding:80px 0 20px;
}
  #page.index #news h2{
    margin:0 0 40px;
  }
  #page.index #news .informationbox{
    background-color:#fff;
    border-radius: 20px;
    padding:40px 0;
  }
  #page.index #news .informationbox .box{
    width:760px;
    margin:0 auto;
  }



@media (max-width: 750px) {
  #page.index #strong #strongin .strong_contents{
    margin:30vw auto 72vw;
    width:74vw;
  }

  #page.index #strong #strongin .strong_contents h2{
    margin:0 auto;
    width:68vw;
  }
    #page.index #strong #strongin .strong_contents strong{
      margin:10vw auto 8vw;
      display:block;
    }
    #page.index #strong #strongin .strong_contents p{
      margin-bottom:1.5em;
      font-size: 3.8vw;
    }
    #page.index #strong #strongin .back01{
      top:5vw;
      margin-left:-70vw;
      width:45vw;
      height:80vw;
      background-size: contain;
    }
    #page.index #strong #strongin .back02{
      margin-right:-55vw;
      background-size: contain;
      width:48vw;
      height:80vw;
    }
    #page.index #strong #strongin .back03{
      top:140vw;
      right:50%;
      margin-right:-49vw;
      background-size: contain;
      width:24vw;
      height:80vw;
    }
    #page.index #strong #strongin .back04{
      top:auto;
      bottom:30vw;
      left:50%;
      margin-left:-80vw;
      background-size: contain;
      width:70vw;
      height:80vw;
    }
    #page.index #strong #strongin .back05{
      top:auto;
      bottom:0;
      left:50%;
      margin-left:-44vw;
      background-size: contain;
      width:100%;
      height:40vw;
    }

    #page.index #strong hr.line {
      background-size: contain;
      width:100%;
      height:1vw;
    }

  #page.index #news{
    padding:10vw 0 5vw;
  }
    #page.index #news h2{
      margin:0 0 6vw;
    }
    #page.index #news h2 img{
      height: 20vw;
    }
    #page.index #news .informationbox{
      border-radius: 6vw;
      padding:4vw 0 7vw;
    }
    #page.index #news .informationbox .box{
      width:84vw;
      margin:0 auto;
    }
}








#page.index #access{
  padding:80px 0 0;
}
  #page.index #access .titlebox{
    margin:0 auto 40px;
    display:table;
  }
    #page.index #access .titlebox h2{
      float:left;
    }
    #page.index #access .titlebox address{
      float:left;
      font-style: normal;
      font-weight:bold;
      margin:70px 0 0 40px;
      font-style:normal;
    }


@media (max-width: 750px) {
  #page.index #access{
    padding:10vw 0 0;
  }
  #page.index #access .titlebox img{
    height: 20vw;
  }
  #page.index #access .titlebox address{
    margin:4vw 0 0 2vw;
  }
}
