
/*7つのポイント
---------------------------------------------------------*/
.home-point-area {
  width:100%;
  background:#fff url(/_images/bg/bg-01.jpg) center center;
  background-size:cover;
  padding:6% 8% 1%;
}

.home-point-inner {
  width:100%;
  max-width:1400px;
  margin:0 auto;
}
#point{
  
}
#point .title{
  background:#f4c337;
  position: relative;
  margin-bottom: 140px;
  padding-top:50px;
}
#point .title::before{
  display:block;
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top:100%;
  width: 100%;
  height: 100px;
  background:url(../images/top/point_bg@2x.png) no-repeat center top;
  background-size:100% 100%;
}
#point .title .w1340{
  position:relative;
}
#point .title dl{
  position: relative;
  text-align: center;
  color:#ffffff;
  font-weight: bold;}

#point .title dt{
  max-width:600px;
  width:55%;
  margin: 0 auto 20px auto;
}
#point .title dd{
  width:57%;
  margin: 0 auto;
}
#point .title .abs_img li{
  position:absolute;
  bottom:0;
  max-width: 211px;
  width: 17%;
}
#point .title .abs_img li:nth-child(1){
  left:7%;
}
#point .title .abs_img li:nth-child(2){
  right:7%;
}



#point .point_list{
  padding-bottom: 50px;
  list-style: none;
}
#point .point_list > li{
  float:left;
  width: 30%;
  margin-right: 5%;
  margin-bottom: 33px;
}
#point .point_list > li.point1{
  width: 100%;
  margin-right: 0;
}
#point .point_list > li.point4,
#point .point_list > li.point7{
  margin-right: 0;
}


#point .point_list .img_box {
  margin-bottom: 12px;
}

.txt_box h3{
  min-height: 60px;
}


#point .point_list > li .point_index{

  padding-left:62px;
  background-position:left center;
  background-repeat: no-repeat;
  background-size:55px 62px;
  font-family: source-han-sans-japanese, sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size:19px;
  letter-spacing: 0.1em;
  line-height: 1.7;
  margin-bottom: 15px;
}

#point .point_list > li p {
  font-size:15px;
  color:rgba(0,0,0,0.7);
}
#point .point_list > li.point1 .point_index{background-image:url(/_images/ai/num-01.svg)}
#point .point_list > li.point2 .point_index{background-image:url(/_images/ai/num-02.svg)}
#point .point_list > li.point3 .point_index{background-image:url(/_images/ai/num-03.svg)}
#point .point_list > li.point4 .point_index{background-image:url(/_images/ai/num-04.svg)}
#point .point_list > li.point5 .point_index{background-image:url(/_images/ai/num-05.svg)}
#point .point_list > li.point6 .point_index{background-image:url(/_images/ai/num-06.svg)}
#point .point_list > li.point7 .point_index{background-image:url(/_images/ai/num-07.svg)}

#point .point_list > li.point1{
  margin-bottom:50px;
}

#point .point_list > li.point1 .flt_box .col_l{
  width:54%;
  max-width: 750px;
  float: left;
  padding-top:33px;
  position: relative;
}
#point .point_list > li.point1 .flt_box .col_r{
  width:43%;
  float: right;
  padding-top:33px;
}
#point .point_list > li.point1 .flt_box .col_l .abs_icon{
  position:absolute;
  left: 31%;
  top: 0;
  max-width: 181px;
  width: 25%;
}
#point .point_list > li.point1 .icon_list{
  margin-top:25px;
}

#point .point_list > li.point1 .icon_list li{
  float:left;
}
#point .point_list > li.point1 .icon_list li:nth-child(1){
  padding-right: 5%;
}
#point .point_list > li.point1 .icon_list li p{
  color:#6ac4ca;
  font-size:17px;
  font-weight: bold;
  letter-spacing: 0.2em;
  padding: 3px 0;
  padding-left: 75px;
  background-size:60px 60px;
  background-position: left center;
  background-repeat: no-repeat;
}
#point .point_list > li.point1 .icon_list li:nth-child(1) p{background-image:url(../images/top/point1_mark1.svg)}
#point .point_list > li.point1 .icon_list li:nth-child(2) p{background-image:url(../images/top/point1_mark2.svg)}
#point .point_list > li.point1 .point_index{
  margin-bottom:20px;
}

#point .icon_list {
  padding:0;
  list-style:none;
}

/* PC調整1
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 1450px) {
#point .title dd .pc_only{
  display: none;
}
#point .point_list > li .point_index{
    min-height: 60px;
  padding-left:60px;
  background-size:55px 62px;
/*  font-size:2.1vw; */
  letter-spacing: 0.1em;
  line-height: 1.8em;
  margin-bottom: 15px;}
  
#point .point_list > li.point1 .icon_list li p{
  color:#6ac4ca;
/*  font-size:1.2vw; */
  font-weight: bold;
  letter-spacing: 0.15em;
  padding: 3px 0;
  padding-left: 75px;
  background-size:60px 60px;
  background-position: left center;
  background-repeat: no-repeat;
} 
}

/* PC調整2
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 1300px) {
#point .point_list > li{
  width: 31.333%;
  margin-right: 3%;}
  
#point .point_list > li.point1 .icon_list li p{
  font-size:1.1vw;
  letter-spacing: 0.1em;
  line-height: 2em;
  padding-left: 65px;
  background-size:50px 50px;
}   
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
#point .title{
  margin-bottom: 90px;
  padding-top:40px;
}
#point .title::before{
  height: 50px;
}
#point .title dt{
  margin: 0 auto 15px auto;
}
#point .title dd{
  width:57%;
  margin: 0 auto;
}
#point .title .abs_img li{
  width: 19%;
}
#point .title .abs_img li:nth-child(1){
  left:2%;
}
#point .title .abs_img li:nth-child(2){
  right:2%;
}
#point .point_list{
  padding-bottom: 20px;
}
#point .point_list > li{
  width: 48.5%;
  margin-right: 3%;
  margin-bottom: 30px;
}
  #point .point_list > li.point4{
    margin-right:3%;
  } 
  #point .point_list > li.point3,
  #point .point_list > li.point5{
    margin-right: 0;
  } 
  

#point .point_list > li .point_index{
  padding-left:55px;
  background-size:50px 56px;
  font-size:18px;
  line-height: 1.6;
  letter-spacing: 0.05em;
  margin-bottom: 10px;
}
#point .point_list > li.point1{
  margin-bottom:30px;
}

#point .point_list > li.point1 .flt_box .col_l{
  width:48.5%;
  padding-top:0;
}
#point .point_list > li.point1 .flt_box .col_r{
  width:48.5%;
  padding-top:0;
}
#point .point_list > li.point1 .flt_box .col_l .abs_icon{
  width: 38%;
  top: 85%;
  left: 5%;
}
#point .point_list > li.point1 .icon_list{
  margin-top:15px;
}
#point .point_list > li.point1 .icon_list li p{
  font-size:1.5vw;
  line-height: 1.8em;
  letter-spacing: 0.05em;
  padding-left: 45px;
  background-size:37px 37px;
}
#point .point_list > li.point1 .point_index{
  margin-bottom:10px;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
#point .title{
  margin-bottom: calc(50px + 8%);
  padding-top:7%;
}
#point .title::before{
  height: 50px;
}
#point .title dt{
  width:90%;
  margin: 0 auto 5% auto;
}
#point .title dd{
  width:100%;
  text-align: left
}
#point .title .abs_img{
  width:70%;
  margin:6% auto 0 auto;
  overflow: hidden;
}
#point .title .abs_img li{
  position: static;
  width: 49%;
  float: left;
}
#point .title .abs_img li:nth-child(2){
  float: right;
}
#point .point_list{
  padding-bottom: 3%;
  padding-left: 0;
}
#point .point_list > li{
  float:none;
  width: 100%;
  margin-right: 0;
  margin-bottom: 10%;
}
#point .point_list > li .point_index{
  padding-left:12%;
  background-size:10% auto;
/*  font-size:5.2vw; */
  font-size:16px;
  margin-bottom: 2%;
  margin-top: 1%;
}
#point .point_list > li .img_box{
    width:100%;
    margin: 0 auto;
    margin-bottom: 10px;
  } 
#point .point_list > li.point1{
  margin-bottom:7%;
}

#point .point_list > li.point1 .flt_box .col_l{
  width:100%;
  float: none;
  padding-top:0;
  margin-bottom: 5%;
}
#point .point_list > li.point1 .flt_box .col_r{
  width:100%;
  float: none;
  padding-top:0;
}
#point .point_list > li.point1 .flt_box .col_l .abs_icon{
  left: 2%;
  top: 53%;
  width: 30%;
}
#point .point_list > li.point1 .icon_list{
  margin-top:5%;
}
#point .point_list > li.point1 .icon_list li{
  float:none;
}
#point .point_list > li.point1 .icon_list li:nth-child(1){
  padding-right: 0;
  padding-bottom: 3%;
}
#point .point_list > li.point1 .icon_list li p{
  color:#6ac4ca;
  font-size:4vw;
  padding-left: 18%;
  background-size:14% auto;
} 
#point .point_list > li.point1 .point_index{
  margin-bottom:3%;
}

}







/*トピックス
---------------------------------------------------------*/

.topics-service-area{
  background: url(/_images/bg/dot-grid.png);
  padding: 6% 3%;
}


#topics .news{

  width:100%;
}
#topics .blog{
  width:100%;
}
#topics .topics_title{
  padding-bottom:24px;
  position: relative;
  margin-bottom: 8px;
  background-size:50% auto;
  background-repeat: no-repeat;
  background-position: left bottom;
  border-bottom: 3px solid #eee;
}

#topics .topics_title dl{
  padding-left:5px;
 
}



#topics .topics_title dt{
  font-size:27px;
  letter-spacing: 0.1em;
  line-height: 1em;
  margin-bottom:10px;
}
/* IE対応 */
_:-ms-lang(x)::-ms-backdrop,#topics .topics_title dt{
  margin-bottom: 15px;
}
#topics .news .topics_title dt{color: #8da4c2;}
#topics .blog .topics_title dt{color: #d6999e;}

#topics .trivia .topics_title dt{color: #c1d699;}

#topics .topics_title dd{
  font-size:14px;
  letter-spacing: 0.1em;
  line-height: 1em;
}
#topics .topics_title .link{
  position:absolute;
  right: 0;
  top:10px;
}
#topics .topics_title .link a{
  color: #444;
  background-size:20px 10px;
  padding: 10px;
  font-size: 15px;
}


#topics .topics_list {
  margin: 0;
  padding: 0;
}
#topics .topics_list dl{
   margin-bottom: 0;
}

#topics .topics_list > li{
  padding:10px 6px;
  border-bottom:1px solid #ccc;
}
/* IE対応 */
_:-ms-lang(x)::-ms-backdrop,#topics .topics_list > li{
  padding:45px 25px 35px 25px;
}
#topics .topics_list > li dt,
#topics .topics_list > li dd{
  display:block;
}
#topics .topics_list > li dt{
  font-size:13px;
  padding-right: 0.7em;
  letter-spacing: 0.1em;
  font-weight: normal;
  color: #999;
}
#topics .topics_list > li dd{
  font-size:15px;
  letter-spacing: 0.1em;
}


#topics .topics_list > li dd a{
  color: #333;
}




@media only screen and (max-width: 767px) {
#topics .topics_title{
  padding-bottom:12px;
  position: relative;
  margin-bottom: 8px;
  background-size:50% auto;
  background-repeat: no-repeat;
  background-position: left bottom;
  border-bottom: 3px solid #eee;
}

#topics .topics_title dt{
  font-size:22px;
  letter-spacing: 0.2em;
  line-height: 1em;
  margin-bottom:7px;
}
#topics .topics_title dd {
    font-size: 13px;
    letter-spacing: 0.1em;
    line-height: 1em;
}
#topics .topics_title .link a{
  background-size:20px 10px;
  padding: 10px;
  font-size: 13px;
}
#topics .topics_list > li{
  padding:12px 8px;
  border-bottom:1px solid #ccc;
  line-height: 1.5;
  font-size: 15px;
}
#topics .topics_list > li dt{
  font-size:13px;
  padding-right: 0.5em;
  letter-spacing: 0;
  font-weight: normal;
  color: #999;
}
#topics .topics_list > li dd{
  font-size:14px;
  letter-spacing: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#topics .topics_list > li dt,
#topics .topics_list > li dd{
  display:block;
}

}





















.home-concept-area {
  background:#f6feef;
  display: flex;
  padding:0 7%;


  text-shadow:0 0 3px rgba(255,255,255,0.6),0 0 3px rgba(255,255,255,0.6),0 0 3px rgba(255,255,255,0.6),0 0 3px rgba(255,255,255,0.6),
    0 0 3px rgba(255,255,255,0.6),0 0 3px rgba(255,255,255,0.6),0 0 3px rgba(255,255,255,0.6),0 0 3px rgba(255,255,255,0.6),0 0 3px rgba(255,255,255,0.6),0 0 3px rgba(255,255,255,0.6),0 0 3px rgba(255,255,255,0.6),0 0 3px rgba(255,255,255,0.6),0 0 3px rgba(255,255,255,0.6),0 0 3px rgba(255,255,255,0.6),0 0 3px rgba(255,255,255,0.6),0 0 3px rgba(255,255,255,0.6);

}



.home-concept-area  {
  position: relative;
}
.home-concept-area::before {
  content: "";
  position: absolute;
  z-index: 0;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background-image: url(../_images/psd/feature-assets/reason-bg1.png), url(../_images/psd/feature-assets/reason-bg2.png);
  background-repeat: no-repeat, no-repeat;
  background-position: left top, right top;
  background-size: 300px 1250px, 300px 1250px;
  text-align: center;
}
.home-concept-area::after {
  content: "";  /* å½± */
  position: absolute;
  z-index: 1;
  z-index: 0;
  width: 100%;
  height: 15px;
  left: 0;
  top: 0;
  background: -moz-linear-gradient(top,  rgba(0,0,0,0.1) 0%, rgba(0,0,0,0) 100%);
  background: -webkit-linear-gradient(top,  rgba(0,0,0,0.1) 0%,rgba(0,0,0,0) 100%);
  background: linear-gradient(to bottom,  rgba(0,0,0,0.1) 0%,rgba(0,0,0,0) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a6000000', endColorstr='#00000000',GradientType=0 );
  opacity: 0.2;
}


.home-concept-area-inner{
  width:800px;
  max-width:100%;
  margin:8% auto 9%;
  text-align: center;
}

.home-concept-area-inner p,
.home-concept-title{
  }

.home-concept-title {
  font-size:22px;
  margin-bottom:20px;
  letter-spacing: .1rem;
  line-height: 1.8;
  font-weight: bold;
}



.home-concept-area-inner p{
  font-size:16px;
  max-width:800px;
  line-height: 1.9;
  margin: auto;
  margin-bottom: 30px;
}

.home-concept-area-inner2{
  z-index: 999;
}


.youtube-video {
  display: block;
  width: 600px;
  max-width: 100%;
  margin: auto;

}

@media screen and (max-width: 1000px) {

  

 .home-concept-area::before,
  .home-concept-area::after {

display: none;

  }


}


@media screen and (max-width: 480px) {



.home-concept-area {

  padding:0 7%;

  background-size: 120%;
  display: flex;


  text-shadow:0 0 0 rgba(255,255,255,0.6),0 0 0 rgba(255,255,255,0.6),0 0 0 rgba(255,255,255,0.6),0 0 0 rgba(255,255,255,0.6),
    0 0 0 rgba(255,255,255,0.6),0 0 0 rgba(255,255,255,0.6),0 0 0 rgba(255,255,255,0.6),0 0 0 rgba(255,255,255,0.6),0 0 0 rgba(255,255,255,0.6),0 0 0 rgba(255,255,255,0.6),0 0 0 rgba(255,255,255,0.6),0 0 0 rgba(255,255,255,0.6),0 0 0 rgba(255,255,255,0.6),0 0 0 rgba(255,255,255,0.6),0 0 0 rgba(255,255,255,0.6),0 0 0 rgba(255,255,255,0.6);

}

  .home-concept-area::before,
  .home-concept-area::after {

display: none;

  }


.home-concept-title {
  font-size:19px;
  line-height: 1.5;
}

.home-concept-area-inner p{
  font-size:15px;
}

}















.home-service-area {
  background: url(/_images/psd/home-assets/subject-bg.jpg);
  background-size: cover;
  padding: 4% 6%;
}





@media only screen and (max-width: 767px) {

.home-service-area {

  padding: 8% 2% 7%;
}



}










.side-image,
.side-image2 {
    position: absolute;
    height: 100%;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
}



.side-image-text {

    /*border-top: 1px solid #e5e5e5;
    border-bottom: 1px solid #e5e5e5;*/
    padding: 5% 6%;
}




.dr-title {

    font-size: 13px;
}


.dr-name {
    font-size: 28px;
    margin-bottom: 23px;
}


.dr-name span {
    font-size: 16px;
    color: #ccc;
    margin-left: 16px;
}




@media only screen and (max-width: 767px) {



.side-image {
    position: relative;
    height: 250px;
}
.dr-name {
    font-size: 24px;
    margin-bottom: 20px;
}
.dr-name span {
    font-size: 12px;
    color: #ccc;
    margin-left: 16px;
}

}





.slick01 {
  margin: 0;
  padding: 0;
  margin-top: 0px;
}


.slide-wrap {
  position: relative;
}



.slide-img {
position: relative;
display: block;
}


.slide-text {
position: absolute;
left: 5%;
bottom: 120px;
z-index: 100;
width: 100%;

}

.slide-text img {
  width: 700px;

}


.home-slide-pc-wrap {
  background:#f4f4f4;
}

.home-slide-pc-wrap .carousel{
  max-width: 1800px;
  margin:0 auto;
}



@media only screen and (max-width: 600px) {

.slick01 {
  margin: 0;
  padding: 0;
  margin-top: 0;
}



.slide-text {
position: absolute;
left: 5%;
bottom: 40px;
z-index: 100;
width: 100%;

}

.slide-text img {
  width: 80%;

}
}









.home-sns-area {
  background:#FFF url(/_images/bg/halftone-yellow.png);
  background-size: contain;
  padding:8% 0;


}


