﻿
  .main-area {
    font-family: "fot-tsukuardgothic-std", sans-serif;
    font-weight: 700;
    letter-spacing: 0.03em;
    line-height: 1;
    font-style: normal;
    box-sizing: border-box;
    color: #555555;
  }

  .main-area img {
    width: 100%;
    height: auto;
  }

  .main-area .sp_only {
    display: block;
  }

  .main-area .pc_only {
    display: none;
  }

  .main-area .sec {
    width: calc(325* (100vw /375));
    position: relative;
  }

  .main-area .flex_box {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .main-area .grid_box {
    display: grid;
  }

  .main-area .position_box {
    position: relative;
  }

/************** js **************/
  .js-fade.active {
    opacity: 1;
      transform: translate3d(0, 0, 0) rotate(0deg) scale(1);
  }

  .js-fade {
    opacity: 0;
    will-change: opacity, transform;
    transition: ease-in, opacity 2500ms, transform 1000ms;
      transform: translate3d(0, 0, 0) scale(1);
  }

  .js_imgFadeIn {
    opacity: 0;
    transition: transform 1s ease-in-out, opacity 1s ease-in-out;
    transform: translateY(30px);
  }

  .imgAnimated {
    opacity: 1;
    transform: translateY(0);
  }

  /* border */
  @keyframes border_anime {
    0%{
      width: 0;
    }
    100%{
      width: calc(45* (100vw /375));
    }
  }

  .sec_ttl_border {
    position: relative;
    padding-bottom: calc(14* (100vw /375));
  }

  .sec_ttl_border.border_bottom {
    position: relative;
  }

  .sec_ttl_border.border_bottom::before {
    content: '';
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 0;
    animation: border_anime 0.8s linear forwards;
    border-bottom: solid 3px #F08300;
    animation-delay: 0.5s;
    transform: translateX(-50%);
    z-index: 10;
  }

  /*** 下線ひかれる前 ***/
  .sec_ttl_border::after {
    content: '';
    position: absolute;
    left: 50%;
    bottom: 0;
    width: calc(45* (100vw /375));
    border-bottom: solid 3px #F2DCC2;
    transform: translateX(-50%);
    z-index: 5;
  }

  /*** slick縦にならないように ***/
  .item_img_slider {
    opacity: 0;
    transition: opacity .3s linear;
  }

  .slick-initialized {
    opacity : 1;
  }

/************** slick（矢印がある場合） **************/
  .main-area .slide_box {
    position: relative;
  }
  
  .main-area .slider_arrow .prev-arrow,
  .main-area .slider_arrow_02 .prev-arrow {
    width: calc(14* (100vw/375));
    height: calc(23* (100vw/375));
    top: 36%;
    left: 0%;
    position: absolute;
    content: "";
    display: block;
    z-index: 9999;
    background-size: contain;
    background-repeat: no-repeat;
    background-image: url(../img/svg/arrow-prev.svg);
  }

  .main-area .sec01 .slider_arrow_02 .prev-arrow {
    top: 32%;
  }

  .main-area .sec01 .slider_arrow_02 .next-arrow {
    top: 32%;
  }
  
  .main-area .slider_arrow .next-arrow,
  .main-area .slider_arrow_02 .next-arrow {
    width: calc(14* (100vw/375));
    height: calc(23* (100vw/375));
    top: 36%;
    right: 0%;
    position: absolute;
    content: "";
    display: block;
    z-index: 9999;
    background-size: contain;
    background-repeat: no-repeat;
    background-image: url(../img/svg/arrow-next.svg);
  }

  .main-area .slider_arrow .prev-arrow {
    left: -12.8%;
  }

  .main-area .slider_arrow .next-arrow {
    right: -12.8%;
  }

  .main-area .slider_arrow_02 .prev-arrow {
    left: -12.8%;
  }

  .main-area .slider_arrow_02 .next-arrow {
    right: -12.8%;
  }

  .item_img .slide-dots {
    margin: 0;
    padding: 0;
    text-align: center;
  }
  .item_img .slide-dots li {
    display: inline-block;
    margin: 0 6px;
  }
  .item_img .slide-dots li button {
    position: relative;
    text-indent: -9999px;
  }
  .item_img .slide-dots li button::before {
    background-color: #F2DCC2;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    cursor: pointer;
    height: 10px;
    left: 0;
    margin: auto;
    position: absolute;
    right: 0;
    top: 26.6px;
    width: 10px;
    border-radius: 50%;
  }
  .item_img .slide-dots li.slick-active button::before {
    background-color: #D3882E;
  }
  .item_img button {
    background: none;
    border: none;
    outline: none;
    padding: 0 3px;
  }

/************** common **************/
  .sec_text {
    font-size: calc(14* (100vw /375));
    letter-spacing: 0.025em;
    line-height: 2;
    text-align: center;
  }

  /*** h3 ***/
  .main-area .sec h3 {
    padding: calc(22* (100vw /375)) 0;
    text-align: center;
    color: #F08300;
    font-size: calc(24* (100vw /375));
    background-image : linear-gradient(to right, #F2A949 10px, transparent 10px),linear-gradient(to right, #F2A949 10px, transparent 10px);
    background-size: 20px 1px,20px 1px;
    background-repeat: repeat-x,repeat-x;
    background-position:left top,left bottom;
  }

/************** mv **************/
  .main-area .mv {
    margin: 0 auto calc(110* (100vw /375));
    width: calc(375* (100vw /375));
    position: relative;
  }

  .main-area .mv h2 {
    margin: 0 auto calc(62* (100vw /375));
  }

  .main-area .mv .mv_text {
    margin-bottom: calc(32* (100vw /375));
    font-size: calc(16* (100vw /375));
    text-align: center;
    line-height: 2;
  }

  .main-area .mv .eco_text {
    margin: 0 auto;
    width: max-content;
    display: flex;
    align-items: center;
    gap: 0 calc(10* (100vw /375));
  }

  .main-area .mv .eco_text span {
    display: block;
    width: calc(35* (100vw /375));
  }

  .main-area .mv .eco_text p {
    font-size: calc(14* (100vw /375));
    color: #999999;
  }

/************** sec01 **************/
  .sec01 {
    margin: 0 auto calc(130* (100vw /375));
  }

  .sec01 h3 {
    margin: 0 auto calc(40* (100vw /375));
  }

  /*** sec_box ***/
  .sec01 .sec_box:nth-of-type(1) {
    margin: 0 auto calc(57* (100vw /375));
  }

  .sec01 .sec_box:nth-of-type(2) {
    margin: 0 auto calc(64* (100vw /375));
  }

  .sec01 .sec_box:nth-of-type(3) {
    margin: 0 auto calc(64* (100vw /375));
  }

  .sec01 .sec_box:nth-of-type(4) {
    margin: 0 auto calc(22* (100vw /375));
  }

  .sec01 .sec_box .item_ttl {
    margin: 0 auto calc(16* (100vw /375));
    width: max-content;
    font-size: calc(20* (100vw /375));
  }

  .sec01 .sec_box .sec_img:nth-of-type(1) {
    margin: 0 auto calc(25* (100vw /375));
    width: 100%;
  }

  .sec01 .sec_box .item_box {
    margin: 0 auto;
    padding-bottom: calc(40* (100vw /375));
    width: calc(220* (100vw /375));
  }

  .sec01 .sec_box .item_box p { 
    margin-top: calc(11* (100vw /375));
    font-size: calc(14* (100vw /375));
    color: #999999;
    line-height: 1.5;
    text-align: center;
  }

/************** sec02 **************/
  .sec02 {
    margin: 0 auto calc(64* (100vw /375));
  }

  .sec02 h3 {
    margin: 0 auto calc(40* (100vw /375));
  }

  /*** sec_box ***/
  .sec02 .sec_text {
    margin: 0 auto calc(52* (100vw /375));
  }

  .sec02 .sec_img:nth-of-type(1) {
    margin: 0 auto calc(33* (100vw /375));
    width: 100%;
  }

  .sec02 .item_box {
    margin: 0 auto;
    padding-bottom: calc(20* (100vw /375));
    width: calc(220* (100vw /375));
  }

  .sec02 .item_box p { 
    margin-top: calc(12* (100vw /375));
    font-size: calc(14* (100vw /375));
    color: #999999;
    line-height: 1.5;
    text-align: center;
  }

/************** btn **************/
  .main-area .btn {
    margin: 0 auto calc(78* (100vw /375));
  }

  .main-area .sec .sec_btn {
    margin: 0 auto;
    font-size: calc(16* (100vw /375));
    letter-spacing: 0.1em;
    font-weight: 700;
    width: calc(300* (100vw /375));
    max-width: calc(300* (100vw /375));
    height: calc(70* (100vw /375));
    max-height: calc(70* (100vw /375));
    background: linear-gradient(to right, #ED6E00, #F39301, #ED6E00);
    font-family: "fot-tsukuardgothic-std", sans-serif;
    font-weight: 700;
    letter-spacing: 0.03em;
    color: #fff;
    border-radius: calc(35* (100vw /375));
  }

  .main-area .sec .sec_btn:nth-of-type(2) {
    margin-top: calc(16* (100vw /375));
    background: #fff;
    border: #F08300 2px solid;
    color: #F08300;
  }
  


/* ===============================================
### PC用デザイン###
=============================================== */
@media screen and (min-width:768px) {

  .main-area .sp_only {
    display: none;
  }

  .main-area .pc_only {
    display: block;
  }


/************** js **************/
  .sec_ttl_border {
    position: relative;
    padding-bottom: 1.4rem;
  }

  .sec_ttl_border.border_bottom::before {
    content: '';
    position: absolute;
    height: 3px;
    left: 50%;
    bottom: 0;
    width: 0;
    animation-delay: 0.5s;
    transform: translateX(-50%);
    z-index: 10;
    top: 60%;
  }

  /*** 下線ひかれる前 ***/
  .sec_ttl_border::after {
    content: '';
    position: absolute;
    height: 3px;
    left: 50%;
    bottom: 0;
    width: 6rem;
    transform: translateX(-50%);
    z-index: 5;
    top: 60%;
  }

  /* border */
  @keyframes border_anime {
    0%{
      width: 0;
    }
    100%{
      width: 6rem;
    }
  }

/************** slick（矢印がある場合） **************/
  .main-area .slide_box {
    position: relative;
  }

  .main-area .slider_arrow .prev-arrow,
  .main-area .slider_arrow_02 .prev-arrow {
    width: 2.2rem;
    height: 3.5rem;
    top: 35%;
    left: 0%;
  }

  .main-area .sec01 .slider_arrow_02 .prev-arrow {
    top: 35%;
  }

  .main-area .sec01 .slider_arrow_02 .next-arrow {
    top: 35%;
  }

  .main-area .slider_arrow .next-arrow,
  .main-area .slider_arrow_02 .next-arrow {
    width: 2.2rem;
    height: 3.5rem;
    top: 35%;
    right: 0%;
  }

  .main-area .slider_arrow .prev-arrow {
    left: -17.5%;
  }

  .main-area .slider_arrow .next-arrow {
    right: -17.5%;
  }

  .main-area .slider_arrow_02 .prev-arrow {
    left: -4%;
  }

  .main-area .slider_arrow_02 .next-arrow {
    right: -4%;
  }

  .item_img .slide-dots {
    margin: 0;
    padding: 0;
    text-align: center;
  }
  .item_img .slide-dots li {
    display: inline-block;
    margin: 0 6px;
  }
  .item_img .slide-dots li button::before {
    height: 10px;
    top: 23.6px;
    width: 10px;
    border-radius: 50%;
  }
  .item_img button {
    background: none;
    border: none;
    outline: none;
    padding: 0 3px;
  }
  

  .main-area .slider_arrow_02.item_img .inner {
    margin: 0 1rem;
    width: 32rem;
  }

/************** common **************/
  .main-area .sec {
    width: 120rem;
  }

  .sec_text {
    font-size: 1.4rem;
    letter-spacing: 0.025em;
    line-height: 2;
    text-align: center;
  }

  /*** h3 ***/
  .main-area .sec h3 {
    margin: 0 auto 6rem; 
    width: 70rem;
    padding: 2.3rem 0;
    text-align: center;
    font-size: 3.6rem;
    background-size: 20px 1px,20px 1px;
  }

/************** mv **************/
  .main-area .mv {
    margin: 0 auto 13.8rem;
    width: 100%;
  }

  .main-area .mv h2 {
    margin: 0 auto 9.2rem;
  }

  .main-area .mv .mv_text {
    margin-bottom: 4.2rem;
    font-size: 1.8rem;
    text-align: center;
    line-height: 2;
  }

  .main-area .mv .eco_text {
    margin: 0 auto;
    gap: 0 1.0rem;
  }

  .main-area .mv .eco_text span {
    display: block;
    width: 4.3rem;
  }

  .main-area .mv .eco_text p {
    font-size: 1.6rem;
  }

  .main-area .mv_sub_img {
    width: 100%;
    position: absolute;
    top: auto;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 0);
  }

/************** sec01 **************/
  .sec01 {
    margin: 0 auto 19.9rem;
    width: 120rem;
  }

  .sec01 h3 {
    margin: 0 auto 4.0rem;
  }

  /*** sec_box ***/
  .sec01 .sec_box01 { 
    display: grid;
    grid-template-columns: 64.5rem 15rem 30rem auto;
    grid-template-rows: 10.6rem 6.5rem auto;
  }

  .sec01 .sec_box02 {
    display: grid;
    grid-template-columns: 10rem 30rem 15.6rem auto ;
    grid-template-rows: 10.6rem 6.5rem auto;
  }

  .sec01 .sec_box:nth-of-type(1) {
    margin: 0 auto 8rem;
  }

  .sec01 .sec_box:nth-of-type(2) {
    margin: 0 auto 8rem;
  }

  .sec01 .sec_box:nth-of-type(3) {
    margin: 0 auto 8rem;
  }

  .sec01 .sec_box:nth-of-type(4) {
    margin: 0 auto 10rem;
  }

  .sec01 .sec_box .item_ttl {
    margin: 0 auto;
    width: max-content;
    font-size: 2.5rem;
  }

  .sec01 .sec_box01 .item_ttl {
    grid-column: 3/4;
    grid-row: 2/3;
  }

  .sec01 .sec_box02 .item_ttl {
    grid-column: 2/3;
    grid-row: 2/3;
  }

  .sec01 .sec_box .sec_img:nth-of-type(1) {
    margin: 0;
    width: 64.5rem;
  }

  .sec01 .sec_box01 .sec_img:nth-of-type(1) {
    grid-column: 1/2;
    grid-row: 1/4;
  }

  .sec01 .sec_box02 .sec_img:nth-of-type(1) {
    grid-column: 4/5;
    grid-row: 1/4;
  }

  .sec01 .sec_box .item_box {
    margin: 0;
    padding-bottom: 0;
    width: 30rem;
  }

  .sec01 .sec_box01 .item_box {
    grid-column: 3/4;
    grid-row: 3/4;
  }

  .sec01 .sec_box02 .item_box {
    grid-column: 2/3;
    grid-row: 3/4;
  }

  .sec01 .sec_box .item_box p { 
    margin-top: 2.2rem;
    font-size: 1.6rem;
  }

/************** sec02 **************/
  .sec02 {
    margin: 0 auto 7.4rem;
    width: 120rem;
  }

  .sec02.sec h3 {
    margin: 0 auto 6rem;
  }

  /*** sec_box ***/
  .sec02 .sec_text {
    margin: 0 auto 8.2rem;
    font-size: 1.6rem;
  }

  .sec02 .sec_img:nth-of-type(1) {
    margin: 0 auto 9rem;
    width: 100%;
  }

  .sec02 .item_box {
    margin: 0 auto;
    padding-bottom: 2.0rem;
    width: 102rem;
  }

  .sec02 .item_box .slick-list {
    margin: 0!important;
  }

  .sec02 .item_box p { 
    margin-top: 2.1rem;
    font-size: 1.6rem;
    line-height: 1.5;
    text-align: center;
  }

/************** btn **************/
  .main-area .btn {
    margin: 0 auto 9.9rem;
  }

  .main-area .sec .sec_btn {
    margin: 0 auto;
    font-size: 1.8rem;
    letter-spacing: 0.1em;
    font-weight: 700;
    width: 33rem;
    max-width: 33rem;
    height: 8rem;
    max-height: 8rem;
    letter-spacing: 0.03em;
    border-radius: 8rem;
    transition: all .6s linear;
    border: #F08300 2px solid;
  }

  .main-area .sec .sec_btn:nth-of-type(2) {
    margin-top: 3rem;
  }

  .main-area .sec .sec_btn:hover {
    opacity: 1;
    background: #fff;
    border: #F08300 2px solid;
    color: #F08300;
  }
  
  .main-area .sec .sec_btn:nth-of-type(2):hover {
    opacity: 1;
    background: linear-gradient(to right, #ED6E00, #F39301, #ED6E00);
    color: #fff;
  }
    
}
/* パンくず 追加スタイル PC */
@media only screen and (min-width: 768px) {
  .breadcrumb__list{
    padding-bottom: 1.6rem;
  }
}



