.header{
    box-shadow: 0 0.5rem 2rem var(--shadowBlue);
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    border-bottom: 1px solid var(--shadowBlue);
    background: #FBFBFB;
    z-index: 100;
    &.contact{
      position: relative;
    }
    & .inner{
        height: 4.25rem;
    }
    & .list01{
        gap: 1.6rem;
    }
    & .link01{
      position: relative;
      z-index: 10;
    }
    & .link02{
      font-size: 1rem;
      color: var(--mainBlue);
    }
    & .img01{
        width: 13.75rem;
    }
}
@media screen and (max-width: 768px) {
  .header {
    box-shadow: 0 1.024rem 4.096rem var(--shadowBlue);
    border-bottom: 1px solid var(--shadowBlue);  
    & .inner {
      height: 6.656rem;
    }
    & .nav{
      width: 75%;
      margin: 0 auto;
    }
    & .wrap01 {
      position: absolute;
      background: #FBFBFB;
      width: 100%;
      right: -100%;
      height: 45rem;
      top: 6.656rem;
      gap: 0;
      display: flex;
      justify-content: center;
      align-items: center;
      transition: .2s;
      z-index: 0;
      &.active {
        right: 0;
      }
    }
    & .list01 {
      flex-direction: column;
      gap: 1.8rem;
    }
    & .item01{
      width: 100%;
      &:not(:last-child){
        padding-bottom: 1.8rem;
        border-bottom: 1px solid var(--shadowBlue);
      }
    }
    & .link02 {
      font-size: 2.048rem;
      padding: 0 1.25rem;
    }
    & .img01 {
      width: 19.2rem;
    }
  }
  .hamburger {
    position: relative;
    z-index: 10;
    cursor: pointer;
    width: 3.072rem;
    height: 2.56rem;
  }
  .hamburger span {
    display: inline-block;
    transition: all .3s;
    position: absolute;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    height: 0.307rem;
    border-radius: 1.28rem;
    background: var(--mainBlue);
    width: 100%;
  }
  .hamburger span:nth-of-type(1) {
    top: 0;
  }
  .hamburger span:nth-of-type(2) {
    top: 1.152rem;
  }
  .hamburger span:nth-of-type(3) {
    top: 2.304rem;
  }
  .hamburger.active span {
    background: var(--mainBlue);
  }
  .hamburger.active span:nth-of-type(1) {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(-45deg);
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
    -ms-transform: translate(-50%, -50%) rotate(-45deg);
  }
  .hamburger.active span:nth-of-type(2) {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(45deg);
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
    -ms-transform: translate(-50%, -50%) rotate(45deg);
  }
  .hamburger.active span:nth-of-type(3) {
    display: none;
  }
}

.breadcrumb {
    margin-top: 4.25rem;
    & .inner{
      height: 3.125rem;
      overflow-x: scroll;
    }
    & .wrap {
        margin-right: 0.4rem;
        &:not(:last-child) {
        &::after {
            padding-left: 0.4rem; 
            font-size: 1rem;
            font-weight: 600;
            content: ">";
            padding-top: 0.1875rem; 
        }
    }
    }
    & .text {
      font-size: 1rem;
      font-weight: 600;
      color: var(--mainBlue);
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
      max-width: 21.875rem;
      display: block;
    }
}
@media screen and (max-width: 768px) {
  .breadcrumb {
    margin-top: 6.656rem;
    & .inner {
      height: 5.76rem;
      gap: 0;
    }
    & .wrap {
      margin-right: 0.4rem;
      &:not(:last-child) {
        &::after {
          padding-left: 0.4rem;
          font-size: 1.536rem;
          padding-top: 0.1875rem;
        }
      }
    }
    & .text {
      font-size: 1.536rem;
      max-width: none;
    }
  }
}

.footer{
  & .inner{
    padding: 1.875rem 0;
  }
  & .right{
    gap: 2.5rem;
  }
  & .item01{
    &:not(:last-child){
      margin-bottom: 0.5rem;
    }
  }
  & .text01{
    font-size: 1rem;
  }
  & .text02{
    text-align: center;
    padding: 0.75rem 0 0.625rem;
    border-top: 1px solid var(--shadowBlue);
    font-size: 1rem;
    letter-spacing: 0.01em;
  }
  & .link01{
    color: var(--mainBlue);
    font-size: 1rem;
  }
  & .img01{
    width: 13.75rem;
    margin-bottom: 1rem;
  }
}
@media screen and (max-width: 768px) {
  .footer {
    & .inner {
      flex-direction: column;
      align-items: start;
      justify-content: start;
      padding: 6.4rem 0;
    }
    & .left,
    & .right{
      width: 100%;
      padding: 0 1rem;
    }
    & .left{
      margin-bottom: 2rem;
      padding-bottom: 2rem;
      border-bottom: 1px solid var(--shadowBlue);
    }
    & .right {
      gap: 5.12rem;
      justify-content: space-between;
    }
    & .item01 {
      &:not(:last-child) {
        margin-bottom: 1rem;
      }
    }
    & .text01{
      font-size: 1.408rem;
    }
    & .link01 {
      font-size: 1.664rem;
    }
    & .text02 {
      padding: 1.28rem 0 1.024rem;
        border-top: 1px solid var(--shadowBlue);
      font-size: 1.536rem;
    }
    & .img01 {
      width: 25.6rem;
        margin-bottom: 1rem;
    }
  }
}

.bottomCta{
  background-image: url("../img/common/bottomCta_background.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  & .inner{
    gap: 1.875rem;
    padding: 3rem 0;
  }
  & .block01{
    background: white;
    width: calc((100% - 1.875rem) / 2);
    border-radius: 0.75rem;
    padding: 1.5rem 0 2rem;
  }
  & .texts01{
    margin-bottom: 0.85rem;
  }
  & .heading01{
    font-size: 1.5rem;
    font-weight: 700;
    text-align: center;
  }
  & .text01{
    font-size: 1rem;
    text-align: center;
    line-height: 1.3;
  }
  & .c-btn{
    font-size: 1.125rem;
    max-width: 21.25rem;
  }
}
@media screen and (max-width: 768px) {
  .bottomCta {
    & .inner {
      flex-direction: column;
      gap: 2.56rem; 
      padding: 5rem 0;
    }
    & .block01 {
      border-radius: 1.28rem; 
      padding: 1.75rem 3rem 2.25rem;
      width: 100%;
    }
    & .texts01 {
      margin-bottom: 1.75rem;
    }
    & .heading01 {
      font-size: 2.816rem;
      margin-bottom: 1rem;
    }
    & .text01 {
      font-size: 1.792rem;
      line-height: 1.2;
    }
    & .c-btn {
      font-size: 2.048rem;
      max-width: 100%;
    }
  }
}

.p-brandList {
  gap: 1.25rem 1.5625rem;
  & .p-item01 {
    width: calc((100% - 1.5625rem * 2) / 3);
    background: white;
    border-radius: 0.625rem;
    position: relative;
    overflow: hidden;
    transition: all 0.5s;
    &:hover{
      opacity: 0.5;
    }
  }
  
  & .p-heading01 {
    font-size: 1.125rem;
    padding: 0.85rem 1.15rem;
  }
  
  & .p-text01 {
    font-size: 1rem;
    background: var(--mainBlue);
    color: white;
    position: absolute;
    right: 0.75rem;
    top: 0.75rem;
    padding: 0.3125rem 0.75rem;
    border-radius: 0.3125rem;
  }
  
  & .p-img01 {
    width: 100%;
    height: 12rem;
    object-fit: cover;
    object-position: center;
  }
}
@media screen and (max-width: 768px) {
  .p-brandList {
    gap: 2.56rem;
    & .p-item01 {
      width: 100%;
      border-radius: 1.024rem;
    }
    & .p-heading01 {
      font-size: 2.304rem;
      padding: 1.5rem 1.75rem;
    }
    & .p-text01 {
      font-size: 1.792rem;
      right: 1.35rem;
      top: 1.35rem;
        padding: 0.64rem 1.536rem;
      border-radius: 0.512rem;
    }
    & .p-img01 {
      height: 22rem;
    }
  }
}

.sidePosts {
  background: #FBFBFB;
  border-radius: 0.625rem;
  padding: 1.5rem 1.25rem;
  margin-bottom: 1.5625rem;
  & .p-list02{
    gap: 0.625rem;
  }
  & .p-item01 {
    gap: 1.2rem;
    position: relative;
    &:not(:last-child) {
      border-bottom: 1px solid var(--shadowBlue);
      padding-bottom: 1.1rem;
      margin-bottom: 1.1rem;
    }
  }
  & .p-item02{
    background: var(--mainBlue);
    width: calc((100% - 0.625rem) / 2);
    border-radius: 0.3125rem;
    padding: 0.4375rem 0;
    position: relative;
  }
  & .p-wrap01 {
    position: relative;
  }
  & .p-heading01 {
    font-size: 1.125rem;
    text-align: center;
    margin-bottom: 0.8rem;
  }
  & .p-heading02 {
    flex: 1;
    font-size: 0.875rem;
    line-height: 1.2;
  }
  & .p-text01 {
    font-size: 1rem;
    color: white;
    position: absolute;
    line-height: 1;
    left: -0.1875rem;
    top: -0.375rem;
    & span {
      position: relative;
      z-index: 2;
    }
    &::after {
      position: absolute;
      content: "";
      background: var(--mainBlue);
      width: 1.5rem;
      height: 1.5rem;
      z-index: 1;
      top: 42%;
      left: 50%;
      transform: translate(-50%, -50%);
      -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      border-radius: 50%;
    }
  }
  & .p-link01{
    color: white;
    font-size: 1rem;
    text-align: center;
  }
  & .p-img01 {
    width: 7rem;
    height: 4.125rem;
    border-radius: 0.3125rem;
    object-fit: cover;
    object-position: center;
  }
}
@media screen and (max-width: 768px) {
  .sidePosts {
    border-radius: 1.024rem;
    padding: 1.5rem 1.5rem;
    margin-bottom: 2rem;
    & .p-list02 {
      gap: 1.28rem; 
    }
    & .p-item01 {
      gap: 1.536rem; 
      align-items: center;
      &:not(:last-child) {
        padding-bottom: 1.75rem;
        margin-bottom: 1.75rem;
      }
    }
    & .p-item02 {
      border-radius: 0.64rem;
      padding: 0.896rem 0; 
      width: calc((100% - 1.28rem) / 2);
    }
    & .p-heading01 {
      font-size: 2.048rem; 
      margin-bottom: 1.92rem; 
    }
    & .p-heading02 {
      font-size: 1.664rem; 
      line-height: 1.4;
    }
    & .p-text01 {
      font-size: 1.408rem; 
      left: -0.384rem;
      top: -0.384rem;
      &::after {
        width: 2.56rem;
        height: 2.56rem;
        top: 45%;
        left: 45%;
      }
    }
    & .p-link01 {
      font-size: 1.792rem; 
    }
    & .p-img01 {
      width: 12.8rem; 
      height: 7.68rem; 
      border-radius: 0.64rem;
    }
  }
}

.followCta{
  position: fixed;
  bottom: 1rem;
  right: 1rem;
  opacity: 0;
  z-index: 1000;
  width: 340px;
  transition: all 0.5s;
}
@media screen and (max-width: 768px) {
  .followCta {
    bottom: 0;
    right: 0;
    width: 100%;
  }
}

.followCta{
  position: fixed;
  bottom: 1rem;
  right: 1rem;
  opacity: 0;
  z-index: 1000;
  width: 20rem;
  transition: all 0.5s;
}
@media screen and (max-width: 768px) {
  .followCta {
    bottom: 0;
    right: 0;
    width: 100%;
  }
}
.popup {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  z-index: -1;
  width: 31.25rem;
  opacity: 0;
  transition: all 0.5s;
  & .img02,
  & .link01{
    width: 100%;
  }
  & .img01{
    position: absolute;
    top: -0.625rem;
    right: -0.625rem;
    cursor: pointer;
    z-index: 2000;
    width: 1.25rem;
  }
}
@media screen and (max-width: 768px) {
  .popup {
    width: 92.5%;
    & .img01 {
      top: -1.28rem;
      right: -1.28rem;
      width: 2.56rem;
    }
  }
}