@charset "UTF-8";

#sp_on + section {
  display: none;
}

@media screen and (max-width: 900px) {
#pc_on + section {
  display: none;
}

#sp_on + section {
  display: block;
}

#sp_on + section .heading.block_header_2 .h {
  font-size: 4vw !important;
}
}

/*--トップリンクボタン--*/
#top_link + section.contents_box01 a{
  text-decoration:none;
  width: 100%;
  display: block;
  transition: 0.3s all;
}

#top_link + section.contents_box01 a:hover{
  opacity: 0.7;
}

#top_link + section.contents_box01 a img{
  width:100%;
}

#top_link + section.contents_box01 .text{
  font-size: 1.2rem;
}

#top_link + section.contents_box01 .upper {
  display: flex;
  justify-content: center;
  gap: 2rem;
}

#top_link + section.contents_box01 .upper .left{
  width: min(62.5vw , 767px);
}

#top_link + section.contents_box01 .upper .right{
  flex:1;
}

#top_link + section.contents_box01 .upper .right .right_item{
  height:50%;
}

#top_link + section.contents_box01 .lower{
  margin-top:2rem;
  display: flex;
  justify-content: center;
  gap: 2rem;
}

#top_link + section.contents_box01 .lower .lower_item{
  width: calc(100% / 3 - 1rem);
}

#top_link + section.contents_box01 .lower .lower_item .image{
  position: relative;
  padding-top: 41%;
}

#top_link + section.contents_box01 .lower .lower_item .image img{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  object-fit: cover;
  width: 100%;
  height: 100%;
  object-position: center;
}

#top_link + section.contents_box01 .lower .lower_item:nth-of-type(3) .image img{
  object-position: left;
}

@media screen and (min-width:1024px){
  #top_link + section.contents_box01 .text{
    font-size: clamp(1.2rem , 1.3vw , 1.6rem);
  }
}

@media screen and (min-width:901px) and (max-width:1023px){
  #top_link + section.contents_box01 .upper .left {
    width: min(62vw , 767px);
  }
}

@media screen and (min-width:769px) and (max-width:900px){
  #top_link + section.contents_box01 .upper .left {
    width: min(61vw , 767px);
  }
}

@media screen and (min-width:601px) and (max-width:768px){
  #top_link + section.contents_box01 .upper .right .right_item {
    height: auto;
  }

  #top_link + section.contents_box01 .right a {
    margin: -1rem 0 0 0;
    padding: 0 0 1.5rem;
  }

  #top_link + section.contents_box01 .upper .left {
    width: min(60vw , 767px);
  }
}

@media screen and (max-width:600px){
  #top_link + section.contents_box01 .upper{
    flex-direction: column;
  }

  #top_link + section.contents_box01 .upper .right{
    display: flex;
    justify-content: center;
    gap: 2rem;
    flex-wrap: wrap;
  }

  #top_link + section.contents_box01 .upper .left {
    width: 100%;
  }

  #top_link + section.contents_box01 .upper .right .right_item{
    height: auto;
    width: calc(100% / 2 - 1rem);
  }

}

@media screen and (max-width:480px){
  #top_link + section.contents_box01 .upper .right .right_item {
    width: 100%;
  }

  #top_link + section.contents_box01 .lower{
    flex-wrap: wrap;
  }

  #top_link + section.contents_box01 .lower .lower_item {
    width: 100%;
  }
}

/*--トップバナー--*/
#top_banner_pc + section.contents_box01{
  display:block;
}

#top_banner_pc + section.contents_box01 .inner_item_img a{
  transition:0.3s all;
}

#top_banner_pc + section.contents_box01 .inner_item_img a:hover{
  opacity:0.7;
}


#top_banner_sp + section.contents_box01{
  display:none;
}

#top_banner_sp + section.contents_box01 .inner_item_img a{
  transition:0.3s all;
}

#top_banner_sp + section.contents_box01 .inner_item_img a:hover{
  opacity:0.7;
}


@media screen and (max-width:768px){
  #top_banner_pc + section.contents_box01{
    display:none;
  }

  #top_banner_sp + section.contents_box01{
    display:block;
  }
}

/*--会社案内調整--*/
#top_company + div.widget_shop01 .inner_item_txt dl:nth-of-type(12){
  display: none;
}

/*--スライダー3連バナー--*/
#top_slider + div .inner_item_img img{
  height:auto!important;
}

#top_slider + div .inner_item_txt{
  padding: 0;
}

#top_slider + div .inner_item_txt p,
#top_slider + div .inner_item_txt .heading.block_header_4 .h,
#top_slider + div .inner_item_txt .heading.block_header_4 p{
  padding-left:20px;
  padding-right:20px;
}
