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

@import url('https://fonts.googleapis.com/css?family=Open+Sans');
@import url(http://fonts.googleapis.com/earlyaccess/notosansjp.css);
/*base--------------------------------------------------------------------*/
html {
    height: 100%;
}

body {
    height: 100%;
    width: 100%;
    margin: 0;
	-webkit-text-size-adjust: 100%;
    min-width: 1080px;
    font-family: 'Open Sans','Noto Sans Japanese','Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
    font-size: 18px;
    font-weight: normal;
}
.clearfix:after {
    content:" ";
    display:block;
    clear:both;
}
*:focus {
  outline: none;
}
body a{
    transition: 0.3s;
    text-decoration: none;
}
.pc_none{
    display: none;
}
.sp_none{
    display: block;
}

.content{
    width: 1240px;
    margin: 0 auto;
}
@media screen and ( max-width:1280px ){
   .content{
        width: 1040px;
        margin: 0 auto;
    } 
}


/*header--------------------------------------------------------------------*/

.head_area{
    position: relative;
    width: 100%;
    height: 750px;
    min-height: 650px;
}
.head_area::before{
    position: absolute;
    width:100%;
    height: 750px;
    content:"";
    background:#2D3A45;
    background-image: url("../img/mv_02.png");
    background-size: contain;
    background-repeat:no-repeat;
    background-position: right;
    z-index: -1;
}
.background::after{
    position: absolute;
    right:0;
    top:0;
    content: "";
    background:#FFF;
    width:5%;
    height: 750px;
    z-index: 0;
}

.header{
    position:fixed;
    height: 750px;
    z-index: 10;
    left: 50%;
    transform: translate(-50%, 0%);
    
}
.header h1{
    float:left;
    margin-top:25px;
}
.header ul{
    float:right;
    margin-top:40px;
}
.header ul li{
    float:left;
    color:#FFF;
    margin-left:50px;
}
.header ul li a{
    color:#FFF;
}

.header ul li a:hover{
    color:#E76CA5;
}
.header a img:hover{
    opacity: 0.8;
}

.is-animation {
    
    width: 100%;
    animation: 1s ease 0s  normal none running animation;
    animation-fill-mode: forwards;
}
@keyframes animation {
  0% {
    background-color: rgba(45,58,69,0.3);
    height: 0;
  }
  100% {
    background-color: rgba(45,58,69,0.9);
    height: 100px;
  }
}


.mainvisual{
    position: relative;
    height: calc(800px - 100px);
    display: flex;
    align-items: center; /* 縦方向中央揃え */
}
.mainvisual .title img{
    margin-bottom:20px;
}
.mainvisual .title{
    position: relative;
    z-index: 2;
    font-family: SourceHanSerifJP-Medium,"游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    font-size: 35px;
    color: #FFFFFF;
    letter-spacing: 1.07px;
}
.mainvisual .title span{
    display: block;
    font-size: 50px;
}

.mainvisual .visual{
    position: absolute;
    right:0;
    top:100px;
    width:66%;
}
.mainvisual .visual img{
    width:100%;
    height: auto;
}
.scroll{
    position: absolute;
    bottom:30px;
    left:4%;
    padding-top:100px;
    padding-left:20px;
    vertical-align: bottom;
    color:#E2E2E2;
    font-size: 12px;
}
.scroll::before{
    content:"";
    position: absolute;
    bottom:0;
    left:0;
    width: 1px;
    height: 100%;
    border-left:1px solid #9B9B9B;
    animation:animation-line  2.5s ease-in-out 0s infinite normal;
}
@keyframes animation-line {
  0% {
    transform: rotate(0deg) translate(0, 0);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: rotate(0deg) translate(0px, 60px);
    opacity: 0;
  }
}


/*default--------------------------------------------------------------------*/

h2::before{
    position: absolute;
    left:50%;
    top:20%;
    content: "";
    height: 50px;
    width: 1px;
    background:#202C35;
}

h2{
    position: relative;
    font-family: 'Open Sans', sans-serif;
    font-weight: bold;
    font-style: italic;
    font-size: 70px;
    color: #454545;
    letter-spacing: 2.5px;
    line-height: 50px;
    text-align: center;
    margin-top:50px;
    padding-top:120px;
    margin-bottom:60px;
}
h2 span{
    display: block;
    font-size:14px;
    letter-spacing: .5px;
}

/*feature--------------------------------------------------------------------*/

.feature_area{
    width:100%;
    margin-bottom:120px;
}

.feature_area ul{
    width:1085px;
    margin:0 auto;
    display: flex;
    justify-content:space-between;
}

.feature_area ul li{
    position: relative;
    width:311px;
    height: 220px;
    text-align: center;
}
.feature_area ul li a{
    display: block;
    width: 100%;
    height: 100%;
}

.feature_area ul li .number{
    position: absolute;
    top:-40px;
    left:-20px;
    font-family: 'Open Sans', sans-serif;
    font-weight: bold;
    font-style: italic;
    font-size: 50px;
    color: #E76CA5;
    letter-spacing: 1.79px;
    z-index: 3;
}

.feature_area ul li .logo{
    position: relative;
    z-index: 3;
    padding-top:70px;
}
.arrow{
    position: absolute;
    z-index: 3;
    bottom:0px;
    left:50%;
    transform: translate(-50%, 0%);
    font-size: 30px;
    color: #FFFFFF;
    letter-spacing: 1.07px;
}
.title{
    color:#FFF;
    position: relative;
    z-index: 3;
    text-decoration: none;
}

.feature_area ul .block01{
    background: url("../img/feature_01.png")no-repeat center center;
    background-size: cover;
}
.feature_area ul .block02{
    background: url("../img/feature_02.png")no-repeat center center;
    background-size: cover;
}
.feature_area ul .block03{
    background: url("../img/feature_03.png")no-repeat center center;
    background-size: cover;
}

.feature_area ul li a::before{
    position: absolute;
    top:0;
    left:0;
    content: "";
    width: 100%;
    height: 100%;
    background:#2D3A45;
    opacity: 0.4;
    z-index: 1;
}

.feature_area ul li a:hover {
    background:#2D3A45;
    opacity: 0.9;
}

/*feature--------------------------------------------------------------------*/
.feature_box{
    padding:100px 0;
}
.feature_box01,.feature_box03{
    background:#F5F6F7;
}
.feature_box h3{
    font-weight: bold;
    font-size: 32px;
    color: #3A3A3A;
    letter-spacing: 1.14px;
    border-left:1px solid #2D3A45;
    padding-left: 20px;
    margin-bottom:50px;
}
.feature_box h3 span{
    font-style: italic;
    display: block;
    font-weight: bold;
    font-size: 16px;
    color: #E76CA5;
    letter-spacing: 0.57px;
}
.feature_box h3 img{
    margin-left:20px;
}

.feature_box h4{
    position: relative;
    border-bottom:1px solid #BE467D;
    padding:0 0 10px 20px;
    font-family: SourceHanSansJP-Medium;
    font-size: 20px;
    color: #E76CA5;
    letter-spacing: 0.71px;
    margin:30px 0;
    
}
.feature_box h4::before{
    content: "";
    width:2px;
    height: 20px;
    background: #BE467D;
    position: absolute;
    left:0;
    top:18%;
}

.float_box{
    width: 100%;
}
.float_box .left{
    width: 45%;
    float: left;
}

.float_box .right{
    width: 50%;
    float: right;
}
.float_box .right img, .float_box .left img,.float_box2 .left img,.float_box2 .right img{
    width: 100%;
    height: auto;
}

.float_box2{
    width: 100%;
}
.float_box2 .left{
    width: 48%;
    float: left;
}

.float_box2 .right{
    width: 48%;
    float: right;
}
/*feature--------------------------------------------------------------------*/
.fukidashi{
    position: relative;
	display: inline-block;
	padding: 7px 14px;
	min-width: 120px;
 	max-width: 100%;
 	color: #FFF;
	font-size: 20px;
	background: #E76CA5;
	border-radius: 0px;
}
.fukidashi:before{
	content: "";
	position: absolute;
	top: 50%;
	left: -10px;
  	margin-top: -5px;
	border: 5px solid transparent;
	border-right: 5px solid #E76CA5;
 	z-index: 0;
}

.feature02_list{
    margin-top:30px;
    line-height: 2.0em;
    font-size: 20px;
}

.feature02_list li:nth-child(1) span{
    color:#E76DA5;
}
.feature02_list li:nth-child(2) span{
    color:#FFE100;
}
.feature02_list li:nth-child(3) span{
    color:#2AA738;
}

.box03_text{
    margin-bottom:20px;
}
.text-right{
    text-align: right;
    font-size: 14px;
    margin-top:10px;
}

/*feature--------------------------------------------------------------------*/
.multiple-item{
  display: none;
}
.slider.slick-initialized{
  display: block; /*slick-initializedが付与されたら表示*/
}


.slide_in{
    position: relative;
}

.slider_box .multiple-item{
    width:100%;
}
.slider_box .multiple-item li{
    
}
/*.slider_box ul li:nth-child(odd){
    float:left;
    width:49%;
}
.slider_box ul li:nth-child(even){
    float:right;
    width:49%;
}*/

.slider_box .title{
    color:#BD0058;
    font-weight: bold;
    font-size: 18px;
    margin-bottom:10px;
}

.slide_inbox{
    width:100%;
}

.slide_inbox .left{
    position: relative;
    float:left;
    width:49.5%;
}
.slide_inbox .right{
    position: relative;
    float:right;
    width:49.5%;
}

.slide_inbox .left img,.slide_inbox .right img{
    width:100%;
    height: auto;
}

.slide_inbox .left p{
    width: 100%;
    height: 40px;
    line-height: 40px;
    position:absolute;
    bottom:0;
    background:#E76CA5;
    color:#FFF;
    text-align: center;
}

.slide_inbox .right p{
    width: 100%;
    height: 40px;
    line-height: 40px;
    position:absolute;
    bottom:0;
    background:#808A93;
    color:#FFF;
    text-align: center;
}


.multiple-item{
  overflow-x: hidden;
}

.slick-slide { 
    margin: 0 10px; 
} 

.slick-list { 
    padding: 0 0px; 
} 
/*#arrows i{
    width: 40px;
    height: 40px;
    font-size: 35px;
    letter-spacing: 1.43px;
    text-align: center;
    line-height: 40px;
    background: #9C9C9C;
    border-radius: 20px;
    color:#FFF;
}*/
.thumb_unit{
    position: relative;
}




#thumbnail-list{
    margin-top:40px;
    text-align: center;
}
#thumbnail-list li{
    display: inline-block;
    padding:0 5px;
}

.thumbnail .slick-current{
    font-size:24px;
    color:#E76CA5;
    font-weight: bold;
    margin-top: -7px;
}
.thumbnail .slick-current span{
    font-size: 16px;
}
.thumbnail{
    position: relative;
    z-index: 6;
    padding-top:30px;
    width:30%;
    height:70px;
    margin:0 auto;
    text-align: center;
    cursor: pointer;
}
/*feature--------------------------------------------------------------------*/
.related_area .float_box2 .left{
    width: 49%;
}

.related_area .float_box2 .right{
    width: 49%;
}

.related_area .float_box2 {
    width: 100%;
}
.related_area .float_box2 .left img,.related_area .float_box2 .right img{
    float:left;
    width: 50%;
    margin-right:10px;
}
.related_area .float_box2 .text{
    width: 48%;
    float:right;
}
.related_area .float_box2 .text .title{
    font-weight: bold;
    font-size: 20px;
    color: #202C35;
    margin-bottom:15px;
}
.related_area .float_box2 .text .title span{
    display: block;
    font-size: 16px;
    color: #039EE8;
}


/*spec--------------------------------------------------------------------*/
.spec_area{
    width: 100%;
}
.spec_area .left{
    float: left;
    width:50%;
    margin-right: 5%;
}
.spec_area .left img{
    width: 100%;
    height: auto;
}
.spec_area .right{
    float: left;
    width:40%;
}
.spec_area .right dt{
    font-weight: bold;
    font-size: 18px;
    color: #E76CA5;
    letter-spacing: 0.57px;
    line-height: 25px;
    margin-top:30px;
}
.spec_area .right dd{
    font-size: 16px;
    color: #404040;
    letter-spacing: 0.5px;
    line-height: 25px;
}

/*contact--------------------------------------------------------------------*/
.contact_area{
    border-top:10px solid #FAFAFA;
    margin-top:120px;
    padding-top:100px;
}

.company::before {
    content: "";
    position: absolute;
    top:0;
    left:50%;
    width:1px;
    height: 100%;
    background:#B3B3B3;
}

.company{
    position: relative;
    width:60%;
    margin:0 auto;
}


.company .left p,.company .right p{
    text-align: center;
}
.company  p .sales{
    display: block;
    font-weight:bold;
    font-size: 16px;
    color: #E76CA5;
    letter-spacing: 0.57px;
    line-height: 25px;
}
.company  p .address{
    display: block;
    font-size: 14px;
    color: #404040;
    letter-spacing: 0.5px;
    line-height: 25px;
}

.company_box{
    width: 300px;
}

.company .left{
    float:left;
    width: 300px;
}

.company .right{
    float:right;
    width: 300px;
}

.contact_area .tel{
    margin-top:60px;
    width:60%;
    border:1px solid #D4D4D4;
    margin:0 auto;
    text-align: center;
    padding:30px 40px;
}

.contact_area .tel .dic span{
    font-size:20px;
    font-weight: bold;
}
.contact_area .tel .dic{
    margin-bottom:15px;
}
.contact_area .tel .time{
    margin-top:15px;
}

.contact_area .link{
    margin-top:15px;
    color:#4176B3;
}

.contact_area .base{
    text-align: center;
}

.contact_area .base dt{
    margin-top:50px;
    font-weight: bold;
    font-size: 20px;
    margin-bottom:10px;
}

.footer{
    margin-top:120px;
    width: 100%;
    height: 100px;
    line-height: 100px;
    text-align: center;
    background:#2D3A45;
    color:#FFF;
    font-size: 13px;
}

