@charset "UTF-8";
/* ==============================================================================

  ihin.css

-------------------------------------------------------------------------------

01. mainvisual
02. .s-voice
03. .s-feature
04. .s-satisfaction
05. .s-cv
06. .s-case
07. .list-hide
08. .s-flow
09. .s-faq
10. .s-companyinfo

============================================================================== */

/* -------------------------------------------------------

　01. mainvisual

------------------------------------------------------- */

#mainvisual {
  height: 1025px;
  padding: 20px 30px;
  background: #e9f5ee;
  position: relative;
  background-image:  url(/lp/projects/assets/images/souzoku/ihin_tmp/mv_people2.png), url(/lp/projects/assets/images/souzoku/ihin_tmp/mv_people1.png), url(/lp/projects/assets/images/souzoku/ihin_tmp/mv_bgimg.jpg);
  background-position: calc(50% + 650px) bottom, calc(50% - 630px) bottom, bottom;
  background-repeat: no-repeat;
  background-size:  383px, 357px, cover;
  z-index: 0;
}

@media only screen and (max-width: 1025px) {
  #mainvisual {
    height: 125vh;
    padding: 20px 30px 20px 60px;
    background-image:url(/lp/projects/assets/images/souzoku/ihin_tmp/mv_bgimg.jpg);
    background-position:  right bottom;
    background-size: cover;
    background-repeat: no-repeat;
  }
}
@media (max-width: 599px){
  #mainvisual {
    height: 160vw;
    padding: 20px 10vw;
    background-image:url(/lp/projects/assets/images/souzoku/ihin_tmp/mv_bgimg.jpg);
    background-position:  right bottom;
    background-size: cover;
    background-repeat: no-repeat;
  }
}

#mainvisual .achievement_osh {
  position: absolute;
  left: 30px;
  top: 30px;
  width: 260px;
}

@media (max-width: 1024px){
  #mainvisual .achievement_osh {
    left: 20px;
    top: 20px;
    width: 190px;
  }
}
@media (max-width: 599px){
  #mainvisual .achievement_osh {
    min-width: 178px;
  }
}

#mainvisual .mv_inner {
  position: absolute;
  top: 45%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 788px;
}

@media (min-width: 600px) and (max-width: 1024px){
  #mainvisual .mv_inner {
   top: 45%;
   width: 75vw;
   max-width: 700px;
   min-width: 600px;
   }
}

@media (max-width: 599px){
  #mainvisual .mv_inner {
   width: 84vw;
   min-width: 300px;
   top: 48%;
   left: 50%;
   transform: translate(-50%, -50%);
   }
}

#mainvisual .mv_title {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-bottom: 30px;
}

@media (min-width: 600px) and (max-width: 1024px){
  #mainvisual .mv_title {
    margin-top: 0;
  }
}

#mainvisual .mv_title .sub_title {
  width: 196px;
}

@media (min-width: 600px) and (max-width: 1024px){
  #mainvisual .mv_title .sub_title {
    width: 60%;
    max-width: 180px;
  }
}

@media (max-width: 599px){
  #mainvisual .mv_title .sub_title {
    width: 38%;
    max-width: 110px;
  }
}

#mainvisual .mv_title .price_block {
  margin-top: 20px;
  width: 520px;
}

@media (min-width: 600px) and (max-width:1024px){
  #mainvisual .mv_title .price_block {
    width: 73%;
    max-width: 540px;
    margin-top: 15px;
  }
}

@media (max-width: 599px){
  #mainvisual .mv_title .price_block {
    width: 95%;
    max-width: 522px;
    margin: 15px 5px 0 0;
  }
}

#mainvisual .sim_block {
  margin-top: 55px;
  position: relative;
  z-index: 2;
}

@media (min-width:600px) and (max-width:1024px){
  #mainvisual .sim_block {
    margin-top: 26vh;
    width: 100%;
  }
}

@media (max-width: 599px){
  #mainvisual .sim_block {
    margin-top: 28vw;
    width: 100%;
  }
}

#mainvisual .sim_fukidashi1 {
  position: absolute;
  left: 50%;
  top: -140px;
  transform: translateX(-490px);
  width: 167px;
}

#mainvisual .sim_fukidashi2 {
  display: none;
  z-index: 3;
}

@media (min-width:600px) and (max-width:1024px){
  #mainvisual .sim_fukidashi2 {
    display: block;
    width: 18vw;
    max-width: 150px;
    min-width: 140px;
    position: absolute;
    left: -30px;
    bottom: 140px;
  }
}

@media(max-width: 599px){
  #mainvisual .sim_fukidashi2 {
    display: block;
    width: 19vw;
    max-width: 140px;
    min-width: 80px;
    position: absolute;
    left: 5px;
    bottom: 21vw;
  }
}

#mainvisual .img {
  display: none;
}

@media(max-width:1024px){
  #mainvisual .img {
    display: block;
    width: 55%;
    max-width: 354px;
    position: absolute;
    left: 50%;
    bottom: 85px;
    transform: translateX(-50%);
  }
}

@media(max-width: 599px){
  #mainvisual .img {
    bottom: 14vw;
  }
}

.mv_btnLink:hover {
   opacity: 0.8;
}

#mainvisual .sim_button {
  display: flex;
  flex-direction: row;
  align-items: center;
  width: 100%;
}

#mainvisual .sim_text {
  width: 525px;
  height: 165px;
  position: relative;
  background-color: #154B93;
  border-radius: 82px 0 0 82px;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 0 10px #002D68;
  transition: all 0.15s;
}

@media (min-width:600px) and (max-width:1024px){
  #mainvisual .sim_text {
    width: 70%;
    min-width: 400px;
    height: 135px;
  }
}

@media (max-width: 599px){
  #mainvisual .sim_text {
    width: 70%;
    height: 19vw;
    max-width: 402px;
  }
}

#mainvisual .sim_text .button_text{
  width: 80%;
  margin-left: 25px;
}

#mainvisual .sim_img {
  width: 245px;
  height: 165px;
  position: relative;
  background-color: #3D6CA6;
  border-radius: 0 82px 82px 0;
  box-shadow: 0 10px #002D68;
}

@media (min-width:600px) and (max-width:1024px){
  #mainvisual .sim_img {
    width: 30%;
    min-width: 200px;
    height: 135px;
  }
}

@media (max-width: 599px){
  #mainvisual .sim_img {
    width: 30%;
    height: 19vw;
    position: relative;
  }
}

#mainvisual .sim_wrap {
  position: absolute;
  bottom: 10%;
  right: 47%;
  transform: translate(50%, 0);
  width: 180px;
}

@media (min-width:600px) and (max-width:1024px){
  #mainvisual .sim_wrap {
    max-width: 180px;
    min-width: 150px;
  }
}

@media (max-width: 599px){
  #mainvisual .sim_wrap {
    width: 90%;
    max-width: 180px;
    bottom: 2%;
  }
}
#mainvisual .quo_catchtext {
  font-size: 1.8rem;
  font-weight: bold;
  color: #002D68;
  position: relative;
  transform: rotate(5deg);
}
#mainvisual .quo_catchtext.pc.tab {
  display: block;
}
#mainvisual .quo_catchtext::before {
  content: '';
  width: 2px;
  height: 20px;
  transform: rotate(-20deg);
  background-color:  #002D68;
  position: absolute;
  left: -8px;
  bottom: 5px;
}

#mainvisual .quo_catchtext::after {
  content: '';
  width: 2px;
  height: 20px;
  transform: rotate(20deg);
  background-color: #002D68;
  position: absolute;
  right: -8px;
  bottom: 4px;
}

@media(max-width:1024px){
  #mainvisual .quo_catchtext {
    font-size: 1.8rem;
    font-weight: bold;
    color: #fff;
    position: relative;
    transform: rotate(5deg);
    text-shadow:
    1px 0 0  #002D68,
    1px 1px 0  #002D68,
    0 1px 0  #002D68,
    -1px 1px 0  #002D68,
    -1px 0 0  #002D68,
    -1px -1px 0  #002D68,
    0 -1px 0  #002D68,
    1px -1px 0 #002D68;
  }
}

@media(max-width:1024px){
  #mainvisual .quo_catchtext::before,
  #mainvisual .quo_catchtext::after {
    background-color: #fff;
    border: 1px solid #002D68;
  }
}

@media (max-width: 599px){
 #mainvisual .quo_catchtext.pc.tab {
   display: none;
 }
 #mainvisual .quo_catchtext {
   max-width: 120px;
   width: 80%;
   height: auto;
   position: absolute;
   right: -6%;
   top: -48%;
  }
  #mainvisual .quo_catchtext::before,
  #mainvisual .quo_catchtext::after {
   display: none;
   }
 }
@media (max-width: 359px){
  #mainvisual .quo_catchtext {
    max-width: 100px;
    width: 70%;
    right: -3%;
    top: -60%;
  }
}

@media(min-width:1024px){
 #mainvisual .quo_img {
  width: 100%;
 }
}
@media (max-width: 599px){
  #mainvisual .quo_img {
   max-width: 200px;
  }
}
#mainvisual .annotation {
  position: absolute;
  bottom: 7%;
  right: 50%;
  transform: translateX(50%);
  text-align: left;
}

@media (min-width: 600px) and (max-width: 1024px){
  #mainvisual .annotation {
    width: 70%;
    bottom: 4.5%;
    right: 50%;
    font-size: 10px;
    font-size: 1.0rem;
  }
}

@media (max-width: 599px){
  #mainvisual .annotation {
    bottom: 3%;
    right: 50%;
    font-size: 9px;
    font-size: 2.4vw;
    width: 90%;
    line-height: 1.4;
    padding: 0;
    letter-spacing: -0.01em;
  }
 .banner_clean {
    width: 100%;
    margin: -10px 0;
  }
}

/* -------------------------------------------------------

　02. .s-voice

------------------------------------------------------- */

.s-voice {
  padding: 6% 0 10% 0;
  background: #f3f8fe url("/lp/projects/assets/images/souzoku/ihin_tmp/voice_btm.png") no-repeat bottom center;
  background-size: contain !important;
}

@media only screen and (min-width: 600px) and (max-width: 1024px) {
 .s-voice {
   padding: 4% 0 8% 0;
   background: #f3f8fe url("/lp/projects/assets/images/souzoku/ihin_tmp/voice_btm_tab.png") no-repeat bottom center;
 }
}

@media only screen and (max-width: 599px) {
  .s-voice {
    padding: 7% 0 16% 0;
    background: #f3f8fe url("/lp/projects/assets/images/souzoku/ihin_tmp/voice_btm_sp.png") no-repeat bottom center;
  }
}
@media only screen and (max-width: 375px) {
  .s-voice {
    padding: 8% 0 10% 0;
  }
}
/* swiper使用の為 .s-voice-header-parentに適応*/
.s-voice-inner {
  /* display: flex; */
  /* flex-direction: column; */
  /* align-items: center; */
}

.s-voice-header-parent {
  display: flex;
  justify-content: center;
  align-items: center;
}

.s-voice-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
}
.s-voice-header-title {
  width: 100%;
  max-width: 743px;
  height: auto;
  margin: 0 auto 5%;
}

.s-voice-header-titleSub {
 display: inline-block;
 position: absolute;
 content: "";
 top: 40%;
 right: -40%;
}

.s-voice-slide {
  display: flex;
  align-items: center;
  max-height: 420px;
  margin-bottom: 30px;
}

.swiper {
  visibility: hidden; /* 画面描画まで非表示 */
  width: 100% !important;
}

.swiper-slide {
  max-width: 318px !important; /* スライド1枚の大きさを指定 */
  height: auto !important; /* height: 100%; swiperの打消し */
}

.s-voice-slideList::-webkit-scrollbar {
  display: none;
}
.s-voice-slideListItem {
  position: relative;
  display: inline-block;
  width: 318px;
  max-width: 318px;
  height: 375px;
  background-color: #fff;
  border-radius: 8px;
  margin: 0 auto 30px auto;
  padding: 20px 20px 40px 20px;
  box-sizing: border-box;
}
.s-voice-slideListItem::after {
  padding-bottom: 39px;
  position: absolute;
  display: inline-block;
  width: 60px;
  height: 33px;
  content: "";
  background-image: url(/lp/projects/assets/images/souzoku/ihin_tmp/voice_comment_btm.png);
  background-repeat: no-repeat;
  bottom: -72px;
  right: 20px;
  display: block;
}
.s-voice-slideListItem .img_voice {
  margin: 0 auto 10px auto;
  max-width: 268px;
  height: 185px;
  overflow: hidden;
  border-radius: 8px;
}
.s-voice-slideListItem .img_voice img {
  width: 100%;
}
.s-voice-slideListItem .comment {
  margin-bottom: 10px;
  text-align: left;
  font-size: 15px;
  font-size: 1.5rem;
}
.s-voice-slideListItem .area-age {
  font-size: 14px;
  font-size: 1.4rem;
  position: absolute;
  bottom: 20px;
  right: 20px;
}

.c-sougijouRating {
  margin: 0 auto 5px;
  display: inline-flex;
  align-items: center;
}
.c-sougijouRating__stars {
  display: flex;
  margin-bottom: 3px;
}
.c-sougijouRating__stars li {
  display: block;
  width: 20px;
  height: 20px;
  background-repeat: no-repeat;
  background-size: 100% auto;
  margin-right: 3px;
}
.c-sougijouRating__stars li.full {
  background-image: url("/lp/projects/assets/images/souzoku/ihin_tmp/voice_icon_star.png");
}
.c-sougijouRating__stars li.half {
  background-image: url("/lp/projects/assets/images/souzoku/ihin_tmp/voice_icon_star_half.png");
}
.c-sougijouRating__stars li.empty {
  background-image: url("/lp/projects/assets/images/souzoku/ihin_tmp/voice_icon_star_gray.png");
}

.c-sougijouRating__value--pink {
  color: #f15c5c;
}
.c-sougijouRating__value {
  display: inline-block;
  letter-spacing: .05em;
  font-weight: 700;
  margin-left: 5px;
  font-size: 28px;
  font-size: 2.8rem;
}
.c-sougijouRating__stars[data-star-size="18"] [data-star] {
  width: 18px;
  height: 18px;
}

@media only screen and (min-width: 600px) and (max-width: 1024px) {
  .s-voice-header-title img {
    width: 90%;
  }
  .s-voice-slide {
    margin-bottom: 120px;
 }
}
@media (max-width: 599px){
 .s-voice-header-title {
  margin: 0 auto 10%;
 }
 .s-voice-header-title img {
    width: 90%;
    margin-bottom: 5px;
 }
 .s-voice-slide {
   width: 350px;
   height: 400px;
   padding-bottom: 22px;
   margin-bottom: 65px;
   position: relative;
 }
  .s-voice-slideListItem {
   width: 78vw;
   margin: 0 auto 30px auto;
 }
 .s-voice-slideListItem::after {
   padding-bottom: 40px;
   width: 55px;
   height: 22px;
   bottom: -62px;
   right: 18px;
  }
  .s-voice-slideListItem .img_voice {
     margin: 0 auto 10px auto;
     max-width: 260px;
     height: 160px;
  }
  .s-voice-slideListItem .comment {
   font-size: 14px;
   font-size: 3.73vw;
  }
  .c-sougijouRating {
    margin: 0 auto 3px;
   }
   .c-sougijouRating__stars li {
    margin-right: 0px;
  }
  .c-sougijouRating__value {
   font-size: 30px;
   font-size: 8.0vw;
   letter-spacing: -0.01em;
  }
}

.swiper-button-next:after, .swiper-button-prev:after {
  font-size: 3.5rem !important;
  font-weight: 900;
  color: #3E5D77;
}
@media only screen and (max-width: 599px) {
.swiper-button-next:after, .swiper-button-prev:after {
    font-size: 6.5vw !important;
}
}
/* -------------------------------------------------------

　03. .s-feature

------------------------------------------------------- */

.s-feature {
  background: #fff;
}
.s-feature .main-title {
  font-size: 55px;
  font-size: 5.5rem;
  line-height: 1.2;
}
.s-feature .main-title-sub {
  color: #3E5D77;
  font-size: 32px;
  font-size: 3.2rem;
}
.s-feature-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  overflow-x: hidden;
  max-width: 1230px;
  margin: 0 auto;
  padding-top: 6%;
}

@media screen and (min-width: 600px) and (max-width: 1024px) {
 .s-feature .main-title {
  font-size: 36px;
  font-size: 3.6rem;
}
.s-feature .main-title-sub {
  color: #3E5D77;
  font-size: 22px;
  font-size: 2.2rem;
}
  .s-feature-inner {
    text-align: left;
    margin: 0 auto;
    padding-top: 8%;
    max-width: 95%;
  }
}
@media screen and (max-width: 599px) {
 .s-feature .main-title {
    line-height: 1.2;
    font-size: 28px;
    font-size: 7.47vw;
  }
  .s-feature .main-title-sub {
    font-size: 18px;
    font-size: 4.8vw;
  }
 .s-feature-inner {
    text-align: left;
    padding-top: 4%;
    margin: 0 auto;
  }
 .s-feature-item-img {
    width: 100%;
    padding: 0 10px 0 20px;
  }
 .s-feature-item-title {
    font-size: 24px;
    font-size: 6.4vw;
    font-weight: bold;
    line-height: 1.3;
    color: #4F525E;
    padding: 10px 20px 10px 14%;
    position: relative;
  }
  .s-feature-item-title-sub {
    color: #76BDE4;
  }
  .s-feature-item-title::after {
    font-size: 20px;
    font-size: 5.33vw;
    font-family: "UD新ゴNT L","游ゴシック","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","ヒラギノ角ゴ Pro W6","メイリオ",Meiryo,"Helvetica Neue",Helvetica,Arial,sans-serif;
    color: #76BDE4;
    display: inline-block;
    position: absolute;
    top: 13px;
    left: 18px;
    width: 20px;
    height: 20px;
  }
 .s-feature-item-text {
    font-size: 14px;
    font-size: 3.73vw;
    padding: 0 20px 20px 14%;
    line-height: 1.6;
    font-feature-settings: "palt";
  }
  .s-feature-item-text-annotation {
    font-size: 9px;
    color: #5B6C7D;
    padding-top: 15px;
  }
  .item01 .s-feature-item-title::after {
    content: "01";
  }
  .item02 .s-feature-item-title::after {
    content: "02";
  }
  .item03 .s-feature-item-title::after {
    content: "03";
  }
}


.s-feature-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-bottom: 30px;
  position: relative;
}
.s-feature-header-title {
  max-width: 550px;
  height: 115px;
  margin-bottom: 140px;
}
.s-feature-itemList {
   margin-bottom: 149px;
}
@media screen and (min-width: 600px) and (max-width: 1024px) {
  .s-feature-itemList {
     margin-bottom: 50px;
  }
}
@media screen and (max-width: 599px) {
 .s-feature-itemList {
    margin-bottom: 40px;
 }
}
/* -------------------------------------------------------

　04. .s-satisfaction

------------------------------------------------------- */

.s-satisfaction {
  background: #F3F8FE;
}
.s-satisfaction-top-wrap {
  height: 16vh;
  background-image: url(/lp/projects/assets/images/souzoku/ihin_tmp/feature_btm_pc.png);
  background-position: bottom center;
  width: 100%;
  background-repeat: no-repeat;
  background-size: cover;
}
.s-satisfaction-top {
  font-size: 35px;
  font-size: 3.5rem;
  font-weight: bold;
  color: #3E5D77;
}

.s-satisfaction-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 90%;
  margin: 0 auto;
}
/*PC*/

/*タブレット*/
@media only screen and (min-width: 600px) and (max-width: 1024px) {
  .s-satisfaction-inner  { width: 70%; }
  .s-satisfaction-top-wrap {
    height: 8vh;
  }
  .s-satisfaction-top {
   font-size: 22px;
   font-size: 2.2rem;
 }
}
/*SP*/
@media only screen and (max-width: 599px) {
  .s-satisfaction-inner  { width: 90%; }
  .s-satisfaction-top-wrap {
    background-image: url(/lp/projects/assets/images/souzoku/ihin_tmp/feature_btm_sp.png);
    min-height: 139px;
  }
 .s-satisfaction-top {
   font-size: 22px;
   font-size: 5.87vw;
 }
}

.s-satisfaction-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 20px;
}
.s-satisfaction-header img {
  max-width: 100%;
  height: auto;
}
.s-satisfaction-header-title {
  max-width: 841px;
  margin-bottom: 40px;
}
.s-satisfaction-header-titleSub {
  max-width: 645px;
  padding-bottom: 30px;
}
.s-satisfaction-text .pc.tab {
  max-width: 1000px;
  display: block;
}

@media only screen and (min-width: 1025px) {
  .s-satisfaction-header-titleSub_evidence_tab {
    display: none;
  }
 }

@media only screen and (min-width: 600px) and (max-width: 1024px) {
 .s-satisfaction-header-title {
   max-width: 535px;
   margin-bottom: 15px;
 }
 .s-satisfaction-header-titleSub {
   max-width: 406px;
   padding-bottom: 20px;
 }
 .s-satisfaction-header-titleSub_evidence_pc {
  display: none;
}
}

@media only screen and (max-width: 599px) {
  .s-satisfaction-header-title {
    max-width: 336px;
    margin-bottom: 10px;
   }
   .s-satisfaction-header-titleSub {
     max-width: 310px;
     padding-bottom: 20px;
   }
   .s-satisfaction-text .pc.tab {
     display: none;
   }
   .s-satisfaction-text .sp {
     max-width: 323px;
   }
  .s-satisfaction-header-titleSub_evidence_tab {
    display: none;
  }
  .s-satisfaction-header-titleSub_evidence_pc {
    display: none;
   }
 }
/* -------------------------------------------------------

　05. .s-cv

------------------------------------------------------- */

.s-cv {
  background: #154B93;
}
.s-cv .main-title {
 font-size: 42px;
 font-size: 4.2rem;
 color: #fff;
 margin-bottom: 0;
}
@media only screen and (min-width: 1025px) {
  .s-cv .main-title.pc.tab {
   display: block;
  }
}
@media (min-width: 600px) and (max-width: 1024px){
  .s-cv .main-title {
     font-size: 30px;
     font-size: 3.0rem;
  }
}
@media only screen and (max-width: 599px) {
  .s-cv {
    background: url("/lp/projects/assets/images/souzoku/ihin_tmp/cv_bg_sp.png") repeat;
  }
}
.s-cv-inner {
  padding: 3% 0;
  text-align: center;
  margin: 0 auto;
  max-width: 1168px;
  position: relative;
}
.s-cv-point {
  display: inline-block;
  position: absolute;
  width: 280px;
  height: 260px;
  right: -8%;
  top: -19%;
  position: absolute;
}

.s-cv-body {
 display: flex;
}
.btn_apply_cv,.s-cv-tel {
  width: 50%;
}
.s-cv-body .btn_apply {
  max-width: 100%;
  height: auto;
  padding: 4.4% 0;
  text-align: center;
}
.s-cv-body .btn_apply img {
  max-width: 248px;
  margin: 0 auto;
}
.s-cv-telInner {
  max-width: 100%;
  height: auto;
  padding: 18px 24px 24px 24px;
  border-radius: 5px;
  text-align: center;
  border: 1px solid #fff;
  margin-left: 30px;
}
.s-cv-telInner img {
  max-width: 100%;
}
.s-cv-tel {
  width: 50%;
}
@media (min-width:1025px){
  .material_tel.tab {
     display: none;
     margin:0;
  }
}
.s-cv-tel .material_tel .tel_number {
  font-size: 58px;
  font-size: 5.8rem;
}

@media (min-width:600px) and (max-width:1024px) {
 .material_tel.pc {
   display: none;
  }
  .s-cv-tel .material_tel .tel_number {
    font-size: 35px;
    font-size: 3.5rem;
    top: 34%;
    left: 10%;
    width: 80%;
  }
}

.s-cv .annotation {
  margin-top: 10px;
  margin-bottom: 30px;
  color: #fff;
  text-align: center;
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
  .s-cv-inner {
    font-size: 32px;
    font-size: 3.2rem;
    max-width: 760px;
    padding: 4% 3%;
  }
  .s-cv-point {
     width: 170px;
     height: 170px;
     right: 2%;
     top: -15%;
  }
 }
@media only screen and (max-width: 599px) {
  .s-cv-inner {
    padding: 10px 0 20px 0;
    max-width: 100%;
  }
  .s-cv-point {
     display: none;
  }
  .s-cv .main-title {
    margin: 0 15px 0 0;
  }
 .s-cv-body {
    display: block;
    margin-bottom: 20px;
  }
 .btn_apply_cv {
    width: 100%;
    padding: 0 20px;
  }
 .s-cv-body .btn_apply img {
    max-width: 90%;
}
 .s-cv-tel {
  width: 100%;
  margin: 0;
 }
 .s-cv .annotation {
  margin-top: 0;
  margin-bottom: 20px;
 }
}

@media only screen and (min-width: 600px) and (max-width: 1024px) {
  .s-cv-body .btn_apply {
    height: 166px;
    padding: 30px 0;
  }
  .s-cv-body .btn_apply img {
    max-width: 198px;
  }
 .s-cv-telInner {
    padding: 23px 15px 34px 15px;
    margin-left: 15px;
    height: 170px;
 }
  .s-cv-telInner img {
    max-width: 320px;
  }
}
@media only screen and (max-width: 599px) {
 .s-cv-telInner {
    margin: 20px 20px 0 20px;
    padding: 4.4% 24px;
    border: none;
    background: #62a6d3;
    box-shadow: 0 5px #4d90c2;
 }
}

/* -------------------------------------------------------

　06. .s-case

------------------------------------------------------- */
.s-case {
  background: url("/lp/projects/assets/images/souzoku/ihin_tmp/case_bg.png") top left;
  background-repeat: repeat-y;
}
.s-case-inner {
  max-width: 1280px;
  text-align: center;
  padding: 6% 0 3% 3%;
  margin: 0 auto;
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
  .s-case {
    background: none;
  }
  .s-case-inner {
    max-width: 760px;
    padding: 8% 0 3% 3%;
  }
}
@media only screen and (max-width: 599px) {
 .s-case {
   background: none;
 }
 .s-case-inner {
   padding: 10% 0 0 0;
  }
}
.s-case-list {
 display: flex;
 flex-wrap: wrap;
}

.s-case-item {
  width: 47%;
  max-width: 610px;
  margin-top: 3%;
}
.s-case-item:nth-child(2n) {
  margin-left: 3%;
}
.s-case-item.case-item01,.s-case-item.case-item02 {
  margin-top: 0;
}
@media only screen and (max-width: 599px) {
 .s-case-item {
   width: 90%;
   margin: 0 auto 5% ;
 }
 .s-case-item:nth-child(2n) {
   margin-left: 5%;
 }
}

.s-case .price_yen {
  top: 0.5em;
}
.s-case .annotation {
  margin-top: 30px;
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
  .s-case .price_yen {
    top: 0.25em;
    font-size: 23px;
    font-size: 2.3rem;
   }
  .s-case .annotation {
    margin-top: 20px;
    text-align: center;
   }
 }
@media only screen and (max-width: 599px) {
  .s-case .price_yen {
    top: 0.3em;
    font-size: 22px;
    font-size: 5.87vw;
  }
  .s-case .annotation {
    margin-top: 0;
  }
}


/* -------------------------------------------------------

　07. .list-hide

------------------------------------------------------- */

.list-hide {
  display: none;
}

.btn-list-more {
  max-width: 360px;
  height: 70px;
  width: 100%;
  border-radius: 70px;
  line-height: 3;
  margin: 20px auto 0;
  display: block;
  background: #76BDE4;
  color: #fff;
  border: none;
  outline: 0;
  transition: .5s;
  cursor: pointer;
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold;
  position: relative;
  display: inline-block;
  padding-right: 30px;
}
.btn-list-more:hover {
  opacity: 0.8;
}
.s-case .btn-list-more::before {
  content: "もっと事例を見る";
  transition: .2s;
  -erbkit-transition: .2s;
 }
.s-case .btn-list-more.on-click::before {
  content: "閉じる";
}

.s-faq .btn-list-more::before {
  content: "もっと見る";
}
.s-faq .btn-list-more.on-click::before {
  content: "質問を閉じる";
}
.btn-list-more::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 30px;
  width: 10px;
  height: 10px;
  border-color: #fff;
  border-style: solid;
  border-width: 0 3px 3px 0;
  transform: translateY(-50%) rotate(45deg);
  transition: all .2s;
}
.btn-list-more.on-click::after {
  margin-top: 5px;
  transform: translateY(-50%) rotate(-135deg);
}

@media (min-width: 600px) and (max-width: 1024px){
   .btn-list-more {
    max-width: 250px;
    height: 53px;
    border-radius: 53px;
    line-height: 3.4;
    font-size: 16px;
    font-size: 1.6rem;
  }
 .btn-list-more::after {
    top: 45%;
    right: 25px;
    width: 12px;
    height: 12px;
  }
}
@media (max-width: 599px){
  .btn-list-more {
    max-width: 260px;
    height: 60px;
    border-radius: 60px;
    line-height: 3.4;
    font-size: 18px;
    font-size: 4.8vw;
  }
 .btn-list-more::after {
    top: 45%;
    right: 25px;
    width: 12px;
    height: 12px;
  }
}

/* -------------------------------------------------------

　08. .s-flow

------------------------------------------------------- */

@media (max-width: 599px){
  .s-flow {
    padding-bottom: 10%;
  }
}

.s-flow-inner {
  max-width: 1280px;
  width: 100%;
  text-align: center;
  padding: 6% 0;
  margin: 0 auto;
}
.s-flow-image-wrapper {
  width: 100%;
  padding-bottom: 10px;
}
.s-flow-image {
  max-width: 1278px;
  width: 100%;
  height: auto;
}
@media (min-width: 600px) and (max-width: 1024px){
  .s-flow-inner {
    max-width: 760px;
    padding: 8% 20px;
  }
 .s-flow-image {
    max-width: 760px;
  }
}

@media (max-width: 599px){
  .s-flow-inner {
    padding: 10% 20px 0px 20px;
  }
}

/* -------------------------------------------------------

　09. .s-faq

------------------------------------------------------- */

.s-faq-inner {
  max-width: 1025px;
  width: 100%;
  text-align: center;
  padding: 6% 0px;
  margin: 0 auto;
}
@media (min-width: 600px) and (max-width: 1024px){
 .s-faq-inner {
   max-width: 650px;
 }
}
@media (max-width: 599px){
  .s-faq-inner {
   padding: 10% 20px;
 }
}
.s-faq-image-wrapper {
  width: 100%;
}
.s-faq-listTitle {
  font-size: 20px;
  font-size: 2.0rem;
  margin-bottom: 20px;
  position: relative;
}
.s-faq-listTitle a {
  position: relative;
  display: inline-block;
  width: 100%;
  padding: 15px 50px 15px 70px;
  border-radius: 4px;
  color: #333;
  text-align: left;
  background: #F8F8F8;
 }
.s-faq-listTitle a:before {
   content: "Q.";
   margin-right: 8px;
   font-family: 'DIN Alternate',"Oswald","Helvetica Neue",Helvetica,Arial,sans-serif;
   font-size: 35px;
   font-size: 3.5rem;
   color: #76BDE4;
   font-weight: 500;
   position: absolute;
   left: 3%;
   top: 6%;
}
 .s-faq-listTitle a:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 2%;
  width: 10px;
  height: 10px;
  border-color: #76BDE4;
  border-style: solid;
  border-width: 0 3px 3px 0;
  transform: translateY(-50%) rotate(45deg);
  transition: all .2s;
}
.s-faq-listTitle.active a:after {
  margin-top: 5px;
  transform: translateY(-50%) rotate(-135deg);
}
.s-faq-listText {
  padding: 0 40px 30px 40px;
  text-align: left;
  font-size: 16px;
  font-size: 1.6rem;
}
@media (min-width: 600px) and (max-width: 1024px){
  .s-faq-listTitle {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .s-faq-listTitle a:before {
   font-size: 26px;
   font-size: 2.6rem;
   top: 12%;
  }
  .s-faq-listTitle a:after {
    top: 45%;
    right: 4%;
    width: 8px;
    height: 8px;
  }
  .s-faq-listText {
    font-size: 14px;
    font-size: 1.4rem;
  }
}
@media (max-width: 599px){
  .s-faq-listTitle {
    font-size: 16px;
    font-size: 4.27vw;
    margin-bottom: 10px;
  }
 .s-faq-listTitle a {
   padding: 10px 50px 10px 45px;
   color: #3E5D77;
   font-weight: bold;
 }
 .s-faq-listTitle a:before {
   font-size: 28px;
   font-size: 7.47vw;
   top: 4%;
  }
 .s-faq-listTitle a:after {
    top: 45%;
    right: 4%;
    width: 12px;
    height: 12px;
  }
  .s-faq-listText {
    padding: 0 10px 20px 10px;
    font-size: 12px;
    font-size: 3.2vw;
  }
}

.s-faq-listText.no_display {
  display: none;
}
.s-faq .annotation {
  text-align: left;
  color: #555;
  margin: 160px auto 60px;
  max-width: 1160px;
}

@media (min-width: 600px) and (max-width: 1024px){
  .s-faq .annotation {
    margin: 50px auto 60px;
    max-width: 700px;
  }
}
@media (max-width: 599px){
  .s-faq .annotation {
    margin: 30px 20px 60px;
  }
}
@media (max-width: 599px){
  .s-faq .annotation .hide_sp {
    display: none;
  }
}

/* -------------------------------------------------------

　10. .s-companyinfo

------------------------------------------------------- */

.s-companyinfo {
  background: #fbfbfb;
}
.s-companyinfo .main-title {
  font-size: 40px;
  font-size: 4.0rem;
}
.s-companyinfo-inner {
  max-width: 1280px;
  padding: 6% 0 8% 0;
  margin: 0 auto;
}

@media (min-width: 600px) and (max-width: 1024px){
  .s-companyinfo .main-title {
   font-size: 36px;
   font-size: 3.6rem;
  }
  .s-companyinfo-inner {
    max-width: 670px;
    margin: 0 auto;
  }
}
@media (max-width: 599px){
  .s-companyinfo .main-title {
   font-size: 28px;
   font-size: 7.47vw;
  }
  .s-companyinfo-inner {
    padding: 10% 20px;
  }
}
.s-companyinfo-wrapper {
  width: 100%;
}

.s-companyinfo-table {
  text-align: left;
  margin: 0 auto;
  max-width: 700px;
  width: 100%;
}
.s-companyinfo-table th {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  color: #76BDE4;
  padding-bottom: 35px;
  width: 30%;
  letter-spacing: 0.5em;
  display:table-cell;
}
.s-companyinfo-table td {
  font-size: 17px;
  font-size: 1.7rem;
  font-weight: normal;
  color: #4F525E;
  padding-bottom: 27px;
  width: 70%;
  line-height: 1.4;
}
.table-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.s-companyinfo-tableInner {
  width: 100%;
}
.s-companyinfo-tableInner th {
  width: 14%;
  letter-spacing: normal;
}
.s-companyinfo-tableInner td {
   width: 43%;
   padding-bottom: 0px;
 }
.s-companyinfo-tableInner th,
.s-companyinfo-tableInner td {
  font-size: 17px;
  font-size: 1.7rem;
  font-weight: normal;
  color: #4F525E;
}
.table-item span a {
  text-decoration: underline;
  color: #555;
}
@media (min-width: 600px){
  .s-companyinfo-tableInner.pc.tab {
    display: block;
  }
}
@media (min-width: 1025px){
  .s-companyinfo-tableInner th {
    width: 25%;
  }
 .s-companyinfo-tableInner td {
    width: 50%;
  }
 }

@media (min-width: 600px) and (max-width: 1024px){
 .s-companyinfo-table {
    max-width: 500px;
  }
  .s-companyinfo-table th {
    font-size: 14px;
    font-size: 1.4rem;
    padding-bottom: 35px;
    width: 30%;
  }
  .s-companyinfo-table td {
    font-size: 12px;
    font-size: 1.2rem;
    padding-bottom: 20px;
    width: 70%;
    line-height: 1.8;
  }
 .s-companyinfo-tableInner th {
    width: 25%;
    font-size: 12px;
    font-size: 1.2rem;
    padding-bottom: 0px;
  }
 .s-companyinfo-tableInner td {
    width: 50%;
    padding-bottom: 0px;
  }
}
@media (min-width: 599px) {
  .s-companyinfo-table th.sp {
    display: none;
  }
}

.about-osohshiki {
  width: 80%;
  max-width: 1123px;
  padding-top: 50px;
  margin: 0 auto;
  border-top: 1px solid #ccc;
  display: flex;
  justify-content: space-between;
}

.about-osohshiki-title {
  width: 28%;
  max-width: 234px;
}

.about-osohshiki-text {
  width: 70%;
  text-align: left;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
  font-feature-settings: "palt";
  letter-spacing: -0.01em;
}

@media (min-width: 600px) and (max-width: 1024px){
  .about-osohshiki-title {
    width: 28%;
    max-width: 162px;
  }
  .about-osohshiki-text {
    width: 67%;
    text-align: left;
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 2;
  }
}
@media (max-width: 599px){
  .s-companyinfo-table tr {
    border-bottom: 1px solid #ccc;
  }
  .s-companyinfo-table th {
    font-size: 14px;
    font-size: 3.73vw;
    padding: 15px 0;
    letter-spacing: normal;
    width: 20%;
  }
  .s-companyinfo-table th.pc,
  .s-companyinfo-table th.tab{
     display: none;
  }
  .s-companyinfo-table td {
    font-size: 12px;
    font-size: 3.2vw;
    padding: 15px 0;
    width: 80%;
    line-height: 1.4;
  }
 .table-item {
   display: block;
   white-space: nowrap;
  }
  .table-item span {
    display: block;
    width: 50%;
    float: left;
  }
  .s-companyinfo-tableInner tr {
     border: none;
  }
  .s-companyinfo-tableInner th,
  .s-companyinfo-tableInner td {
    font-size: 12px;
    font-size: 3.2vw;
    width: 40%;
    padding: 0 0 10px 0;
  }
  .about-osohshiki {
    padding-top: 30px;
    display: block;
    border-top: 0;
  }
  .about-osohshiki-title {
    width: 100%;
    max-width: 220px;
    margin: 0 auto 20px;
  }
  .about-osohshiki-text {
    width: 100%;
    font-size: 12px;
    font-size: 3.2vw;
    line-height: 1.8;
  }
}
