@charset "UTF-8";

/*
---------------------------------------------------------------------------------------------------------------------
メインビジュアル
---------------------------------------------------------------------------------------------------------------------
*/
#mv {
  position: relative;
  width: 100%;
  margin-top: 60px; }
  #mv::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.3);
    height: 100%;
    mix-blend-mode: multiply;
    z-index: 1; }
  #mv video {
    width: 100%;
    vertical-align: bottom; }
  #mv .mv-copy {
    position: absolute;
    top: 5%;
    left: 0;
    right: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff; }
    @media (min-width: 1024px) {
      #mv .mv-copy {
        top: 8%; } }
    #mv .mv-copy .mv-copy-in {
      position: relative;
      z-index: 10; }
    #mv .mv-copy .ue-copy h1 {
      font-size: 1.0em;
      font-weight: 500;
      text-align: right;
      line-height: 1.6em; }
      @media (min-width: 768px) {
        #mv .mv-copy .ue-copy h1 {
          font-size: 1.5em; } }
      @media (min-width: 1250px) {
        #mv .mv-copy .ue-copy h1 {
          font-size: 3em; } }
    #mv .mv-copy .senter-copy {
      margin-top: 25%;
      opacity: 0; }
      @media (min-width: 768px) {
        #mv .mv-copy .senter-copy {
          margin-top: 10%; } }
      #mv .mv-copy .senter-copy h2 {
        font-family: 'Montserrat', sans-serif;
        font-weight: 900;
        font-size: 9vw;
        line-height: 1.0em; }
        @media (min-width: 1024px) {
          #mv .mv-copy .senter-copy h2 {
            font-size: 8vw; } }
      #mv .mv-copy .senter-copy.open {
        opacity: 1; }
    #mv .mv-copy .shita-copy {
      margin-top: 30%; }
      @media (min-width: 768px) {
        #mv .mv-copy .shita-copy {
          margin-top: 8%; } }
      #mv .mv-copy .shita-copy p {
        font-size: 0.8em;
        text-align: right;
        line-height: 1.4em; }
        @media (min-width: 768px) {
          #mv .mv-copy .shita-copy p {
            font-size: 1.25em; } }
        @media (min-width: 1250px) {
          #mv .mv-copy .shita-copy p {
            font-size: 2em; } }
  #mv .maru {
    position: absolute;
    bottom: -0.2px;
    left: 0;
    right: 0;
    z-index: 5; }

/*
---------------------------------------------------------------------------------------------------------------------
事業所での廃棄物。こんなお困り事はありませんか？
---------------------------------------------------------------------------------------------------------------------
*/
#about {
  max-width: 1100px;
  margin: -10% auto 0;
  padding: 40px 0 60px;
  position: relative;
  z-index: 5; }
  #about .title-common {
    text-align: center; }
  #about .problem {
    width: 364px;
    margin: auto;
    transform: scale(0.9); }
    @media (min-width: 390px) {
      #about .problem {
        transform: scale(1); } }
    @media (min-width: 768px) {
      #about .problem {
        width: 600px;
        text-align: center; } }
    @media (min-width: 1024px) {
      #about .problem {
        width: auto; } }
    #about .problem ul {
      margin-top: 20px; }
      #about .problem ul li {
        position: relative;
        display: inline-block; }
        @media (min-width: 1250px) {
          #about .problem ul li {
            margin-right: 20px; } }
        #about .problem ul li:last-child {
          margin-right: 0; }
        #about .problem ul li:nth-child(2) {
          top: 90px; }
        #about .problem ul li:nth-child(4) {
          top: 90px; }
        @media (min-width: 768px) {
          #about .problem ul li:nth-child(2) {
            top: 0; }
          #about .problem ul li:nth-child(4) {
            top: 0; } }
        #about .problem ul li img {
          width: 180px; }
          @media (min-width: 1250px) {
            #about .problem ul li img {
              width: 200px; } }
        #about .problem ul li h3 {
          position: absolute;
          top: 0;
          bottom: 0;
          left: 0;
          right: 0;
          display: flex;
          align-items: center;
          justify-content: center;
          font-size: 0.9em;
          line-height: 1.6em;
          text-align: center; }
          @media (min-width: 1024px) {
            #about .problem ul li h3 {
              font-size: 1.0em; } }
  #about .about-copy1 {
    text-align: center;
    margin-top: 0; }
    @media (min-width: 1024px) {
      #about .about-copy1 {
        margin-top: 40px; } }
    #about .about-copy1 h3 {
      font-size: 1.75em;
      line-height: 1.4em; }
      @media (min-width: 1024px) {
        #about .about-copy1 h3 {
          font-size: 3.75em; } }
      #about .about-copy1 h3 span {
        color: #FF0000; }
  #about .info {
    width: 90%;
    margin: 40px auto 0; }
    @media (min-width: 1024px) {
      #about .info {
        display: flex;
        align-items: center;
        margin: 40px auto 0; } }
    @media (min-width: 768px) {
      #about .info .info-in {
        display: flex;
        align-items: center; } }
    #about .info .info-in .logo {
      text-align: center; }
      @media (min-width: 768px) {
        #about .info .info-in .logo {
          padding-right: 5%; } }
      #about .info .info-in .logo img {
        width: 200px; }
        @media (min-width: 768px) {
          #about .info .info-in .logo img {
            width: 270px; } }
    #about .info .info-in .txt {
      margin-top: 10px; }
      @media (min-width: 1024px) {
        #about .info .info-in .txt {
          margin-top: 0;
          padding-right: 5%; } }
      #about .info .info-in .txt p {
        font-size: 0.8em;
        text-align: justify; }
        @media (min-width: 1024px) {
          #about .info .info-in .txt p {
            font-size: 1.0em; } }
    #about .info .irai {
      position: relative;
      text-align: center;
      transform: scale(0.9);
      margin-top: 5px; }
      @media (min-width: 768px) {
        #about .info .irai {
          transform: scale(1);
          margin-top: 10px; } }
      @media (min-width: 1024px) {
        #about .info .irai {
          margin-top: 0; } }
      #about .info .irai img {
        width: 330px; }
      #about .info .irai .txt {
        position: absolute;
        top: -10px;
        bottom: 0;
        left: 0;
        right: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center; }
        #about .info .irai .txt .txt-in {
          text-align: center; }
          #about .info .irai .txt .txt-in h4 {
            font-size: 1.5em; }
          #about .info .irai .txt .txt-in h2 {
            font-size: 2.25em;
            font-feature-settings: "palt"; }
  #about .about-copy2 {
    text-align: center;
    margin-top: 20px; }
    @media (min-width: 1024px) {
      #about .about-copy2 {
        margin-top: 40px; } }
    #about .about-copy2 h3 {
      font-size: 1.45em;
      line-height: 1.4em; }
      @media (min-width: 1024px) {
        #about .about-copy2 h3 {
          font-size: 2.25em; } }
  #about .about-flow {
    margin-top: 20px; }
    @media (min-width: 1024px) {
      #about .about-flow {
        margin-top: 40px; } }
    #about .about-flow ul {
      display: flex;
      justify-content: center; }
      #about .about-flow ul li {
        font-size: 1.35em; }
        @media (min-width: 1024px) {
          #about .about-flow ul li {
            font-size: 2.25em; } }
        #about .about-flow ul li img {
          width: 40px;
          margin: 0 10px; }
          @media (min-width: 1024px) {
            #about .about-flow ul li img {
              width: 80px;
              margin: 0 20px; } }

/*
---------------------------------------------------------------------------------------------------------------------
ポイント
---------------------------------------------------------------------------------------------------------------------
*/
.point {
  position: relative; }
  .point .kado {
    position: absolute;
    top: 0;
    left: 0; }
    .point .kado img {
      width: 30%; }
      @media (min-width: 1024px) {
        .point .kado img {
          width: 50%; } }
      @media (min-width: 1250px) {
        .point .kado img {
          width: 80%; } }
  .point h6 {
    font-family: 'Montserrat', sans-serif;
    font-weight: 900;
    font-size: 2.0em; }
    @media (min-width: 768px) {
      .point h6 {
        font-size: 4.0em; } }
    @media (min-width: 1250px) {
      .point h6 {
        font-size: 6.0em; } }
  .point.white {
    padding-bottom: 80px; }
    .point.white h6 {
      padding: 10% 5% 3% 5%; }
      @media (min-width: 1024px) {
        .point.white h6 {
          padding: 3% 0 3% 8%; } }
  .point.color {
    background-color: #3c8800;
    border-top-right-radius: 60px;
    padding: 20px 0 40px;
    color: #fff; }
    @media (min-width: 1024px) {
      .point.color {
        border-top-right-radius: 100px;
        padding: 60px 0; } }
    @media (min-width: 1250px) {
      .point.color {
        border-top-right-radius: 160px; } }
    .point.color h5 {
      font-size: 1.50em;
      padding: 0 5%;
      margin-top: 40px; }
      @media (min-width: 1024px) {
        .point.color h5 {
          padding-left: 8%; } }
    .point.color h6 {
      padding: 3% 5% 3% 5%; }
      @media (min-width: 1024px) {
        .point.color h6 {
          padding: 3% 0 3% 8%; } }
  .point .point-txt {
    max-width: 1200px;
    padding: 0 5%;
    margin-bottom: 40px; }
    @media (min-width: 1024px) {
      .point .point-txt {
        padding-left: 8%; } }
    .point .point-txt h3 {
      font-size: 1.25em;
      line-height: 1.4;
      margin-top: 20px; }
      @media (min-width: 1024px) {
        .point .point-txt h3 {
          font-size: 2.25em; } }
    .point .point-txt h4 {
      font-size: 1.8em;
      text-align: justify;
      margin-top: 15px; }
      @media (min-width: 1024px) {
        .point .point-txt h4 {
          font-size: 2.875em;
          margin-top: 40px; } }

.business {
  margin-bottom: 40px; }
  @media (min-width: 1024px) {
    .business {
      display: flex; } }
  .business .business-txt {
    width: 90%;
    margin: auto; }
    @media (min-width: 1024px) {
      .business .business-txt {
        width: 40%;
        padding: 0 1% 0 8%;
        margin: 30px 0 0 0; } }
    .business .business-txt p {
      font-size: 0.9em;
      text-align: justify;
      margin-bottom: 25px; }
      @media (min-width: 1024px) {
        .business .business-txt p:first-child {
          font-size: 1.3em;
          font-weight: bold; } }
      .business .business-txt p:last-child {
        font-size: 1.0em;
        margin-bottom: 0; }
  @media (min-width: 1024px) {
    .business .business-slide {
      width: 60%; } }
  .business .business-slide p {
    font-size: 0.9em;
    text-align: center;
    margin-top: -20px; }
    @media (min-width: 768px) {
      .business .business-slide p {
        font-size: 1.125em; } }
  .business .business-slide .swiper-pagination {
    left: inherit;
    right: 5.5%;
    top: 0;
    bottom: inherit;
    color: #000; }
    @media (min-width: 768px) {
      .business .business-slide .swiper-pagination {
        right: 32px; } }
  .business .business-slide .swiper-button-prev, .business .business-slide .swiper-container-rtl .swiper-button-next {
    left: -5px; }
    @media (min-width: 768px) {
      .business .business-slide .swiper-button-prev, .business .business-slide .swiper-container-rtl .swiper-button-next {
        left: 5px; } }
  .business .business-slide .swiper-button-next, .business .business-slide .swiper-container-rtl .swiper-button-prev {
    right: -5px; }
    @media (min-width: 768px) {
      .business .business-slide .swiper-button-next, .business .business-slide .swiper-container-rtl .swiper-button-prev {
        right: 5px; } }
  .business .business-slide .swiper-button-prev, .business .business-slide .swiper-button-next {
    top: 54%; }
  .business .business-slide .card03 {
    margin: auto;
    overflow: hidden;
    position: relative; }
    .business .business-slide .card03 .swiper .swiper-slide {
      padding: 30px 5%; }
      @media (min-width: 768px) {
        .business .business-slide .card03 .swiper .swiper-slide {
          padding: 30px; } }
      .business .business-slide .card03 .swiper .swiper-slide .slide {
        position: relative; }
        .business .business-slide .card03 .swiper .swiper-slide .slide img {
          border-radius: 10px; }
        .business .business-slide .card03 .swiper .swiper-slide .slide::before {
          content: '';
          position: absolute;
          top: 0;
          right: 0;
          bottom: 0;
          left: 0;
          background-color: rgba(0, 0, 0, 0.3);
          height: 100%;
          mix-blend-mode: multiply;
          z-index: 1;
          border-radius: 10px; }
        .business .business-slide .card03 .swiper .swiper-slide .slide .list {
          position: absolute;
          bottom: 10px;
          left: 10px;
          color: #fff;
          z-index: 10; }
          @media (min-width: 768px) {
            .business .business-slide .card03 .swiper .swiper-slide .slide .list {
              bottom: 15px;
              left: 15px; } }
          .business .business-slide .card03 .swiper .swiper-slide .slide .list h2 {
            font-size: 1.125em;
            line-height: 1.4em; }
            @media (min-width: 768px) {
              .business .business-slide .card03 .swiper .swiper-slide .slide .list h2 {
                font-size: 2.2em; } }
          .business .business-slide .card03 .swiper .swiper-slide .slide .list h3 {
            font-size: 1.00em;
            line-height: 1.4em; }
            @media (min-width: 768px) {
              .business .business-slide .card03 .swiper .swiper-slide .slide .list h3 {
                font-size: 1.75em; } }
          .business .business-slide .card03 .swiper .swiper-slide .slide .list h4 {
            font-size: 0.8em;
            font-weight: 400;
            line-height: 1.4em; }
            @media (min-width: 768px) {
              .business .business-slide .card03 .swiper .swiper-slide .slide .list h4 {
                font-size: 1.125em; } }
          .business .business-slide .card03 .swiper .swiper-slide .slide .list h5 {
            font-size: 0.7em;
            font-weight: 400;
            line-height: 1.4em; }
            @media (min-width: 768px) {
              .business .business-slide .card03 .swiper .swiper-slide .slide .list h5 {
                font-size: 0.8em; } }
          .business .business-slide .card03 .swiper .swiper-slide .slide .list .work-list {
            display: flex;
            margin-top: 4px; }
            @media (min-width: 768px) {
              .business .business-slide .card03 .swiper .swiper-slide .slide .list .work-list {
                margin-top: 8px; } }
            @media (min-width: 768px) {
              .business .business-slide .card03 .swiper .swiper-slide .slide .list .work-list ul {
                margin-right: 10px; } }
            .business .business-slide .card03 .swiper .swiper-slide .slide .list .work-list ul li {
              font-size: 0.6em;
              line-height: 1.4em; }
              @media (min-width: 768px) {
                .business .business-slide .card03 .swiper .swiper-slide .slide .list .work-list ul li {
                  font-size: 0.8em;
                  line-height: 1.6em; } }

/*
---------------------------------------------------------------------------------------------------------------------
自動横スクロール
---------------------------------------------------------------------------------------------------------------------
*/
#Scroll {
  position: relative;
  background-repeat: repeat;
  background-size: 100%;
  height: auto; }
  #Scroll .YokoScroll {
    display: flex;
    align-items: center;
    overflow: hidden; }
    #Scroll .YokoScroll .slideshow {
      display: flex; }
      #Scroll .YokoScroll .slideshow.show1 {
        animation: loop-slide 60s infinite linear 1s both; }
      #Scroll .YokoScroll .slideshow.show2 {
        animation: loop-slide 50s infinite linear 1s both; }
      #Scroll .YokoScroll .slideshow.show3 {
        animation: loop-slide-r 60s infinite linear 1s both; }
      #Scroll .YokoScroll .slideshow .imgBox {
        width: 200px;
        margin: 0px 5px; }
        @media (min-width: 1024px) {
          #Scroll .YokoScroll .slideshow .imgBox {
            width: 300px;
            margin: 0 10px; } }
        @media (min-width: 1250px) {
          #Scroll .YokoScroll .slideshow .imgBox {
            width: 400px; } }
        #Scroll .YokoScroll .slideshow .imgBox img {
          border-radius: 5px; }
          @media (min-width: 1024px) {
            #Scroll .YokoScroll .slideshow .imgBox img {
              border-radius: 10px; } }
@keyframes loop-slide {
  from {
    transform: translateX(0); }
  to {
    transform: translateX(-100%); } }
@keyframes loop-slide-r {
  from {
    transform: translateX(-100%); }
  to {
    transform: translateX(0); } }
/*
---------------------------------------------------------------------------------------------------------------------
今までは大変だった産廃処理業者の選定
---------------------------------------------------------------------------------------------------------------------
*/
#selection {
  position: relative;
  padding: 40px 0; }
  @media (min-width: 1024px) {
    #selection {
      padding: 60px 0; } }
  #selection .kado {
    position: absolute;
    top: 0;
    left: 0; }
    #selection .kado img {
      width: 30%; }
      @media (min-width: 1024px) {
        #selection .kado img {
          width: 50%; } }
      @media (min-width: 1250px) {
        #selection .kado img {
          width: 80%; } }
  #selection .title-common {
    text-align: center; }
  #selection .flow {
    margin-top: 40px; }
    @media (min-width: 768px) {
      #selection .flow ul {
        display: flex;
        justify-content: center;
        align-items: center; } }
    #selection .flow ul li {
      text-align: center; }
      #selection .flow ul li:nth-child(odd) img {
        width: 80%; }
        @media (min-width: 1024px) {
          #selection .flow ul li:nth-child(odd) img {
            width: 400px; } }
      #selection .flow ul li:nth-child(2) {
        margin: 40px; }
        @media (min-width: 768px) {
          #selection .flow ul li:nth-child(2) {
            margin: 0; } }
        @media (min-width: 1024px) {
          #selection .flow ul li:nth-child(2) {
            margin: 0 20px; } }
        #selection .flow ul li:nth-child(2) img {
          width: 74px;
          transform: rotate(90deg); }
          @media (min-width: 768px) {
            #selection .flow ul li:nth-child(2) img {
              transform: rotate(0deg); } }
      #selection .flow ul li h3 {
        font-size: 1.125em;
        margin-bottom: 20px; }
        @media (min-width: 768px) {
          #selection .flow ul li h3 {
            font-size: 1.25em; } }
  #selection .flow-txt {
    text-align: center;
    margin: 40px auto 0;
    width: 90%; }
    #selection .flow-txt h3 {
      font-size: 1.125em; }
      @media (min-width: 768px) {
        #selection .flow-txt h3 {
          font-size: 1.25em; } }
    #selection .flow-txt h4 {
      font-size: 1.6em;
      margin-top: 10px; }
      @media (min-width: 768px) {
        #selection .flow-txt h4 {
          font-size: 2.25em; } }
    #selection .flow-txt p {
      font-size: 0.9em;
      line-height: 1.4em;
      margin-top: 10px; }
      @media (min-width: 768px) {
        #selection .flow-txt p {
          font-size: 1.125em; } }
  #selection .charm {
    max-width: 1100px;
    width: 90%;
    margin: 40px auto 40px; }
    @media (min-width: 768px) {
      #selection .charm {
        margin: 40px auto 60px; } }
    #selection .charm .charm-tltle {
      text-align: center; }
      #selection .charm .charm-tltle h2 {
        font-family: 'Montserrat', sans-serif;
        font-weight: 900;
        font-size: 2.25em;
        color: #6CAE38; }
        @media (min-width: 1024px) {
          #selection .charm .charm-tltle h2 {
            font-size: 4.0em; } }
    #selection .charm ul {
      margin-top: 20px; }
      @media (min-width: 1024px) {
        #selection .charm ul {
          margin-top: 40px; } }
      #selection .charm ul li {
        display: flex;
        margin-bottom: 30px; }
        @media (min-width: 1024px) {
          #selection .charm ul li {
            align-items: center;
            margin-bottom: 60px; } }
        @media (min-width: 1024px) {
          #selection .charm ul li:nth-child(1) {
            padding-right: 10%; } }
        @media (min-width: 1024px) {
          #selection .charm ul li:nth-child(2) {
            margin-left: 5%;
            padding-right: 5%; } }
        @media (min-width: 1024px) {
          #selection .charm ul li:nth-child(3) {
            margin-left: 10%;
            margin-bottom: 0; } }
        #selection .charm ul li .number {
          font-family: 'Montserrat', sans-serif;
          font-size: 4.0em;
          font-weight: 900;
          line-height: 1.0em;
          color: #6CAE38; }
          @media (min-width: 1024px) {
            #selection .charm ul li .number {
              font-size: 10.0em; } }
        #selection .charm ul li .contents {
          padding-left: 20px; }
          #selection .charm ul li .contents h3 {
            font-size: 1.25em; }
            @media (min-width: 1024px) {
              #selection .charm ul li .contents h3 {
                font-size: 1.5em; } }
            #selection .charm ul li .contents h3 .marker {
              background: linear-gradient(transparent 60%, #a9db84 60%); }
          #selection .charm ul li .contents p {
            font-size: 0.9em;
            line-height: 1.4em;
            margin-top: 10px; }
            @media (min-width: 1024px) {
              #selection .charm ul li .contents p {
                font-size: 1.25em; } }

#use-faq {
  background-color: #3c8800;
  border-top-right-radius: 60px;
  padding: 20px 0 40px; }
  @media (min-width: 1024px) {
    #use-faq {
      border-top-right-radius: 100px;
      padding: 10px 0 60px; } }
  @media (min-width: 1250px) {
    #use-faq {
      border-top-right-radius: 160px; } }
  #use-faq .title-common {
    text-align: center;
    margin: 40px 0 20px;
    color: #fff; }
    @media (min-width: 1024px) {
      #use-faq .title-common {
        margin: 60px 0 40px; } }
  #use-faq ul.use {
    max-width: 1100px;
    width: 90%;
    margin: 0 auto 0; }
    #use-faq ul.use li {
      background-color: #fff;
      border-radius: 10px;
      padding: 20px;
      margin-bottom: 20px; }
      @media (min-width: 768px) {
        #use-faq ul.use li {
          display: flex;
          padding: 20px 0 20px 5%; } }
      @media (min-width: 1024px) {
        #use-faq ul.use li {
          padding: 20px 0 20px 10%; } }
      #use-faq ul.use li:last-child {
        margin-bottom: 0; }
      #use-faq ul.use li .icon {
        display: flex;
        align-items: center; }
        #use-faq ul.use li .icon img {
          width: 40px; }
          @media (min-width: 1024px) {
            #use-faq ul.use li .icon img {
              width: 80px; } }
        #use-faq ul.use li .icon h3 {
          font-family: 'Montserrat', sans-serif;
          font-size: 1.125em;
          font-weight: 900;
          margin-left: 10px; }
          @media (min-width: 1024px) {
            #use-faq ul.use li .icon h3 {
              font-size: 1.5em;
              margin-left: 30px; } }
      #use-faq ul.use li .sentence {
        margin-top: 10px; }
        @media (min-width: 768px) {
          #use-faq ul.use li .sentence {
            margin: 0 0 0 20px; } }
        #use-faq ul.use li .sentence h4 {
          font-size: 1.125em; }
          @media (min-width: 1024px) {
            #use-faq ul.use li .sentence h4 {
              font-size: 1.375em; } }
        #use-faq ul.use li .sentence p {
          font-size: 0.9em;
          line-height: 1.6em;
          margin-top: 5px; }
          @media (min-width: 1024px) {
            #use-faq ul.use li .sentence p {
              font-size: 1.25em; } }

/*
---------------------------------------------------------------------------------------------------------------------
よくあるご質問
---------------------------------------------------------------------------------------------------------------------
*/
ul.faq {
  max-width: 1100px;
  width: 90%;
  margin: auto; }
  ul.faq li {
    position: relative;
    margin-bottom: 15px;
    padding-left: 10px; }
    @media (min-width: 1024px) {
      ul.faq li {
        margin-bottom: 30px;
        padding-left: 0; } }
    ul.faq li .number {
      font-family: 'Montserrat', sans-serif;
      font-weight: 900;
      font-style: normal;
      font-size: 1.5em;
      display: inline-block;
      width: 50px;
      height: 50px;
      border-radius: 50%;
      background-color: #fff;
      border: 1px solid #707070;
      text-align: center;
      line-height: 50px;
      position: absolute;
      top: 0;
      bottom: 0;
      left: -15px;
      margin: auto; }
      @media (min-width: 1024px) {
        ul.faq li .number {
          font-size: 2.0em;
          width: 80px;
          height: 80px;
          line-height: 80px;
          left: -40px; } }
      @media (min-width: 1250px) {
        ul.faq li .number {
          font-size: 2.8em;
          width: 100px;
          height: 100px;
          line-height: 100px;
          left: -50px; } }
    ul.faq li .faq-box {
      background-color: #fff;
      border-radius: 20px;
      padding: 20px 15px 20px 36px; }
      @media (min-width: 1024px) {
        ul.faq li .faq-box {
          padding: 30px 40px 30px 60px; } }
      @media (min-width: 1250px) {
        ul.faq li .faq-box {
          padding: 40px 60px 40px 80px; } }
      ul.faq li .faq-box h3 {
        font-size: 1.125em;
        line-height: 1.4em;
        margin-bottom: 10px; }
        @media (min-width: 1024px) {
          ul.faq li .faq-box h3 {
            font-size: 1.75em;
            margin-bottom: 20px; } }
        @media (min-width: 1250px) {
          ul.faq li .faq-box h3 {
            font-size: 2.0em; } }
      ul.faq li .faq-box p {
        font-size: 0.9em;
        text-align: justify; }
        @media (min-width: 1250px) {
          ul.faq li .faq-box p {
            font-size: 1.0em; } }

/*
---------------------------------------------------------------------------------------------------------------------
作業対象エリア
---------------------------------------------------------------------------------------------------------------------
*/
#area {
  max-width: 900px;
  width: 90%;
  margin: auto;
  padding: 40px 0; }
  @media (min-width: 768px) {
    #area {
      display: flex; } }
  @media (min-width: 1024px) {
    #area {
      padding: 100px 0; } }
  #area .area-left {
    margin-top: 20px; }
    @media (min-width: 768px) {
      #area .area-left {
        width: 60%;
        margin-top: 0; } }
    @media (min-width: 1024px) {
      #area .area-left {
        width: 70%; } }
    #area .area-left ul {
      margin-top: 20px; }
      #area .area-left ul li {
        font-size: 1.0em; }
        @media (min-width: 1024px) {
          #area .area-left ul li {
            font-size: 1.5em; } }
        #area .area-left ul li:first-child {
          margin-bottom: 20px; }
    #area .area-left p {
      font-size: 1.0em;
      margin-top: 20px; }
      @media (min-width: 1024px) {
        #area .area-left p {
          font-size: 1.5em; } }
  #area .area-right {
    width: 60%;
    margin: auto; }
    @media (min-width: 768px) {
      #area .area-right {
        width: 40%; } }
    @media (min-width: 1024px) {
      #area .area-right {
        width: 30%; } }

/*
---------------------------------------------------------------------------------------------------------------------
バナー
---------------------------------------------------------------------------------------------------------------------
*/
#banner {
  position: relative; }
  #banner .back {
    position: relative; }
    #banner .back::before {
      content: '';
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      background-color: rgba(0, 0, 0, 0.5);
      height: 100%;
      mix-blend-mode: multiply;
      z-index: 10; }
  #banner .banner-in {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: center; }
    #banner .back {
      img {
        object-fit: cover;
        width: 100%;
        height: 50svh;
        object-position: bottom;
  }
}
    #banner .banner-in .copy {
      text-align: center;
      position: relative;
      z-index: 10;
      color: #fff; }
      #banner .banner-in .copy h2 {
        font-size: 1.5em;
        line-height: 1.4em; }
        @media (min-width: 1250px) {
          #banner .banner-in .copy h2 {
            font-size: 3.0em; } }
      #banner .banner-in .copy h3 {
        font-size: 1.125em;
        font-feature-settings: "palt";
        margin-top: 20px; }
        @media (min-width: 1250px) {
          #banner .banner-in .copy h3 {
            font-size: 1.5em; } }
    #banner .banner-in .contact-btm {
      margin: 20px auto 0; }
      @media (min-width: 1250px) {
        #banner .banner-in .contact-btm {
          margin: 40px auto 0; } }
          @media (max-width: 720px) {
            #banner .back {
                img {
                  object-fit: cover;
                  width: 100%;
                  height: 70svh;
                  object-position: left;
            }
          }
        }