@charset "UTF-8";

/*MVテキスト画像*/
#mv .mv_textimg .mv_textimg_pc,
#mv .mv_textimg .mv_textimg_sp {
 --before: 0;
 --after: 0;
}

#mv .mv_textimg {
  --after2: 0;
}

#mv .inserted-div {
  --before2: 0;
}

#mv .mv_textimg::after {
  opacity: var(--after2);
}

#mv .inserted-div::before {
  opacity: var(--before2);
}

#mv .mv_textimg img {
  opacity: 0 !important;
}

#mv .mv_textimg .mv_textimg_pc:before,
#mv .mv_textimg .mv_textimg_sp:before {
    display: block;
    content: "";
    position: absolute;
    background: url(/common/upload_data/nemunoki-gyoseicom/image/20260209033903_3.png) no-repeat;
    background-size: contain;
    width: 480px;
    height: 96px;
    top: 20%;
opacity: var(--before);
    /*animation: popup 0.6s cubic-bezier(0.22, 1, 0.36, 1) forwards;*/
}

#mv .mv_textimg .mv_textimg_pc:after,
#mv .mv_textimg .mv_textimg_sp:after {
    display: block;
    content: "";
    position: absolute;
    background: url(/common/upload_data/nemunoki-gyoseicom/image/20260209033903_2.png) no-repeat;
    background-size: contain;
    width: 665px;
    height: 96px;
    top: 51%;
opacity: var(--after);
    /*animation: popup 0.6s cubic-bezier(0.22, 1, 0.36, 1) forwards;*/
}

#mv .mv_textimg .mv_textimg_sp:before {
    width: 72%;
}

#mv .mv_textimg .mv_textimg_sp:after {
    width: 99%;
}

#mv .mv_textimg img {
    opacity: 1;
    position: relative;
}

#mv .inserted-div:before {
    display: block;
    content: "";
    position: absolute;
    background: url(/common/upload_data/nemunoki-gyoseicom/image/20260209033903.png) no-repeat;
    background-size: contain;
    width: 185px;
    height: 200px;
    top: 0;
    left: 487px;
    z-index: 1;
}

#mv .mv_textimg:after {
    display: block;
    content: "";
    position: absolute;
    background: url(/common/upload_data/nemunoki-gyoseicom/image/20260209033903_1.png) no-repeat;
    background-size: contain;
    width: 290px;
    height: 60px;
    bottom: 0;
    left: 37px;
}

@media screen and (min-width: 901px) and (max-height: 800px) {
    #mv .mv_textimg img {
        max-width: 670px;
    }
}
@media screen and (min-width: 901px) and (max-height: 900px) {
    #mv {
        height: 82vh;
    }
    body:not(.hHide) footer .fixbtnwrap {
        }
    
}

@media (max-width: 768px) {
    #mv .mv_textimg:after {
      width: 43vw;
      height: 60px;
      bottom: -6%;
      left: 5vw
    }

  #mv .inserted-div:before {
    width: 26vw;
    height: 200px;
    top: 0;
    right: 10px;
    left: unset;
  }
}

@media screen and (max-width: 858px) {
#mv .mv_textimg:before {
    width: 180px;
    height: 197px;
    top: 22%;
}
}

@media screen and (max-width: 670px) {
#mv .mv_textimg:before {
    width: 170px;
    height: 185px;
    top: 22%;
    left: auto;
    right: 0;
}
}

/*
@keyframes popup {
  0% {
    transform: translateY(40px) scale(0.8);
    opacity: 0;
  }
  100% {
    transform: translateY(0) scale(1.0);
  }
  80%, 100% {
    opacity: 1;
  }
}
*/

#mv {
    max-height: unset !important;
}

/*「主な依頼内容」*/
#nor + .contents_box01 .heading.block_header_1 p {
    color: #ff9b2f !important;
}

#nor + .contents_box01 .contents_btn01>.content_wrapper a:not(.top_btn_anime) {
    opacity: 0!important;
}

#nor + .contents_box01 .contents_btn01>.content_wrapper a:has(.top_btn_anime) {
    opacity: 1!important;
}

#nor + .contents_box01 .contents_btn01 .content_wrapper > a.top_btn_anime {
    animation: top_btn_anime 1s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}
 
@keyframes top_btn_anime {
  0% {
    transform: translateY(60px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
  }
  80%, 100% {
    opacity: 1;
  }
}

a[id*="nor0"] + .composite_box01 .wrapper_item {
    gap: 10px;
}

#nor01 + .composite_box01.block_images_7 .inner_item:nth-of-type(1):nth-last-of-type(2),
#nor01 + .composite_box01.block_images_7 .inner_item:nth-of-type(2):nth-last-of-type(1) {
    width: calc(50% - 5px);
    margin-left: 0px;
}

#nor02 + .composite_box01.block_images_7 .inner_item:nth-of-type(1):nth-last-of-type(3),
#nor02 + .composite_box01.block_images_7 .inner_item:nth-of-type(2):nth-last-of-type(2),
#nor02 + .composite_box01.block_images_7 .inner_item:nth-of-type(3):nth-last-of-type(1) {
    width: calc(33.3% - 7px);
    margin-left: 0px;
}

@media screen and (max-width: 700px) {
    #nor01 + .composite_box01.block_images_7 .inner_item_txt {
        min-height: 0;
        padding: 30px 10px;
    }
    #nor01 + .composite_box01.block_images_7 .inner_item {
        width: 100% !important;
        margin-left: 0 !important;
    }
}


/*「オーナー紹介」*/
#top_greeting + .contents_box01 p.greeting_text {
    border-bottom: 1px solid var(--i_sub2_color);
    padding-bottom: 1rem;
}

#top_greeting + .contents_box01 .inner_item_txt {
    position: relative;
    transform: translateY(80px);
}

#top_greeting + .contents_box01 .inner_item_txt:before {
    display: flex;
    content: "笑顔";
    position: absolute;
    width: 125px;
    height: 125px;
    border: 7px double var(--i_btn_color);
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    top: -200px;
    left: 25%;
    color: var(--i_btn_color);
}

#top_greeting + .contents_box01 .inner_item_txt:after {
    display: flex;
    content: "対話";
    position: absolute;
    width: 125px;
    height: 125px;
    border: 7px double var(--i_btn_color);
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    top: -200px;
    left: 60%;
    color: var(--i_btn_color);
}

@media screen and (max-width: 900px) {
    #top_greeting + .contents_box01 {
        padding-bottom: 120px;
    }
    #top_greeting + .contents_box01.block_image_text_2 .wrapper_item .inner_item_txt,
    #top_greeting + .contents_box01.block_image_text_6 .wrapper_item .inner_item_txt,
    #top_greeting + .contents_box01:not(.block_image_text_2):not(.block_image_text_6) .inner_item_img {
        margin-bottom: 170px;
    }
    #top_greeting + .contents_box01 .inner_item_txt:after {
        right: 25%;
    }
}

@media screen and (max-width: 600px) {
    #top_greeting + .contents_box01 .inner_item_txt:before {
        left: 10%;
    }
    #top_greeting + .contents_box01 .inner_item_txt:after {
        right: 10%;
    }
}

@media screen and (max-width: 450px) {
    #top_greeting + .contents_box01 .inner_item_txt:before {
        left: 5%;
    }
    #top_greeting + .contents_box01 .inner_item_txt:after {
        right: 5%;
    }
}


@media screen and (min-width: 769px) {
    #top_3col + .composite_box01 .wrapper_item {
        overflow: visible;
        gap: 2.5rem;
    }
    #top_3col + .composite_box01 .inner_item {
        position: relative;
        width: 26%;
        margin-left: 4.5% !important;
    }

    #top_3col + .composite_box01 .inner_item .heading {
        position: absolute;
        top: 35%;
        left: -50px;
    }
    #top_3col + .composite_box01 .heading.block_header_4.align-left .h {
        writing-mode: vertical-rl;
        font-size: 3rem;
    }
}

@media screen and (max-width: 1350px) {
    .block_header_4 .h {
        font-size: 3rem!important;
    }
}

/*その他の取り扱い業務*/
a[id*="other_iｍg"] + .composite_box01 .inner_item_img img {
        border-radius: 10px;
}
a[id*="other_iｍg"] + .composite_box01 .wrapper_item {
    justify-content: center;
}

a[id*="other_iｍg"] + .composite_box01 .inner_item:nth-of-type(1):nth-last-of-type(3),
a[id*="other_iｍg"] + .composite_box01 .inner_item:nth-of-type(3):nth-last-of-type(1) {
    width: 36%;
}

a[id*="other_iｍg"] + .composite_box01 .inner_item.empty {
    width: 20%;
}

#other_iｍg01 + .composite_box01 .inner_item:last-child .inner_item_img img {
    height: 400px!important;
}

#other_iｍg02 + .composite_box01 .inner_item:first-child .inner_item_img img {
    height: 500px !important;
}

@media screen and (max-width: 900px) {
    a[id*="other_iｍg"] + .composite_box01 .wrapper_item {
        justify-content: flex-end;
    }
    #other_iｍg01 + .composite_box01 .inner_item:last-child .inner_item_img img {
        height: 200px !important;
    }
    #other_iｍg02 + .composite_box01 .inner_item:first-child .inner_item_img img {
        height: 300px !important;
    }
}

@media screen and (max-width: 900px) {
    a[id*="other_iｍg"] + .composite_box01:not(.block_images_7):not(.block_images_8):not(.block_images_10):not(.block_images_11):not(.block_images_12):not(.block_images_13):not(.block_images_15):not(.block_images_17):not(.block_images_21):not(.block_images_22):not(.block_images_23):not(.block_images_24) .inner_item {
        width: 48% !important;
    }
}

@media screen and (max-width: 400px) {
    #other_text + .contents_box01.mw600 .content_wrapper {
        max-width: 300px !important;
    }
}
/* 初期状態 */
.js-fade-up,
.js-fade-left {
  opacity: 0;
  transition: all 0.8s ease;
}

/* 動きの種類 */
.js-fade-up {
  transform: translateY(40px);
}

.js-fade-left {
  transform: translateX(-10px);
}

/* 表示 */
.is-active {
  opacity: 1;
  transform: translate(0, 0);
}
.heading.block_header_1 h2 span,
.heading.block_header_1 p span{
display:inline-block;
opacity:0;
}

/* ぴょん */
@keyframes textBounce{
0%{opacity:0;transform:translateY(60px) scale(.4);}
60%{opacity:1;transform:translateY(-20px) scale(1.2);}
100%{opacity:1;transform:translateY(0);}
}

/* 花火 */
@keyframes textFire{
0%{opacity:0;transform:scale(0) rotate(-180deg);}
70%{opacity:1;transform:scale(1.4) rotate(15deg);}
100%{transform:scale(1);}
}

/* 消える */
@keyframes textFade{
to{opacity:0;transform:translateY(-30px);}
}

.char-bounce{
animation:textBounce .6s cubic-bezier(.17,.67,.28,1.4) forwards;
}

.char-fire{
animation:textFire .7s cubic-bezier(.17,.67,.28,1.4) forwards;
}

.text-fade{
animation:textFade .8s forwards;
}
.fx-title span,
.fx-subtitle span{
  display:inline-block;
  opacity:0;
  transform:translateY(40px);
}

/* ①ぴょん */
.fx-bounce{
  animation:bounceText 0.7s forwards;
}

@keyframes bounceText{
  0%{
    opacity:0;
    transform:translateY(40px) scale(.8);
  }

  60%{
    opacity:1;
    transform:translateY(-10px) scale(1.1);
  }

  100%{
    opacity:1;
    transform:translateY(0);
  }
}

/* ②花火 */
.fx-fire{
  animation:fireText .6s forwards;
}

@keyframes fireText{
  0%{
    opacity:0;
    transform:scale(0) rotate(180deg);
  }

  70%{
    opacity:1;
    transform:scale(1.3);
  }

  100%{
    opacity:1;
    transform:scale(1);
  }
}

/* 最終フェード */
.fx-final{
  animation:finalFade 1s forwards;
}

@keyframes finalFade{
  from{opacity:0;}
  to{opacity:1;}
}