/* CSS common Document */

/* TOP */
.hac{
    transition: background-color 0.5s ease, opacity 0.5s ease;
}

.hac:hover{
    opacity: 0.5;
}

@media screen and (min-width: 1025px) {
    .top_under{
        background-color: #F2F0ED;
        padding: 15px 0 15px 0;
    }
    
    .top_under .inner{
        display: flex;
        max-width: 1000px;
        margin: 0 auto 0 auto;
    }

    .top_under .date{
        font-size: 14px;
        letter-spacing: 0;
        margin-right: 20px;
        width: 80px;
        font-weight: 500;
    }

    .top_under .text{
        font-size: 16px;
        letter-spacing: 0;
        font-weight: 500;
    }
}

@media screen and (max-width: 1024px) {
    .top_under{
        padding: 15px 30px 15px 30px;
        background-color: #F2F0ED;
    }

    .top_under .date{
        font-size: 12px;
        letter-spacing: 0;
        font-weight: 500;
        margin-bottom: 5px;
    }

    .top_under .text{
        font-size: 14px;
        letter-spacing: 0;
        font-weight: 500;
    }
}

.top_products_list ul li a{
    display: block;
    transition: background-color 0.5s ease, opacity 0.5s ease;
}

.top_products_list ul li a:hover{
    opacity: 0.5;
}

@media screen and (min-width: 1025px) {
    .top_products_list{
        background-color: #068664;
        padding: 120px 0 120px 0;
    }

    .top_products_list .inner{
        width: 1000px;
        margin: 0 auto 0 auto;
        color: #fff;
    }
    .top_products_list .en_title{
            font-size: 16px;
            margin-bottom: 20px;
            font-weight: 500;
            line-height: 1em;
    }
    
    .top_products_list .title{
            font-size: 32px;
            font-weight: 500;
            margin-bottom: 60px;
            line-height: 1em;
    }
    
    .top_products_list ul{
        display: flex;
        margin-bottom: 50px;
        justify-content: center;
    }
    
    .top_products_list ul li{
        margin-right: 70px;
        width: 286px;
    }
    
    .top_products_list ul li:last-child{
        margin-right: 0;
    }
    
    .top_products_list ul li .img{
        margin-bottom: 30px;
    }
    
    .top_products_list ul li .img img{
        border-radius: 32px;
    }
    
    .top_products_list ul li .title2{
        margin-bottom: 10px;
        font-weight: 700;
        font-size: 18px;
        letter-spacing: 0em;
    }
    
    .top_products_list ul li .text{
        font-weight: 500;
        font-size: 16px;
    }
    
    .top_products_list_btn a{
        display: block;
        padding: 20px 0 20px 0;
        color: #000;
        text-align: center;
        font-weight: 400;
        font-size: 16px;
        background-color: #fff;
        width: 384px;
        margin: 0 auto 0 auto;
        transition: background-color 0.5s ease, opacity 0.5s ease;

    }
    
    .top_products_list_btn a:hover{
        opacity: 0.5;
    }
}

@media print, screen and (max-width: 1024px) and (min-width: 740px) {
    .top_products_list{
        background-color: #068664;
        padding: 120px 0 120px 0;
    }

    .top_products_list .inner{
        max-width: 600px;
        margin: 0 auto 0 auto;
        color: #fff;
    }
    .top_products_list .en_title{
            font-size: 16px;
            margin-bottom: 20px;
            font-weight: 500;
    }
    
    .top_products_list .title{
            font-size: 32px;
            font-weight: 500;
            margin-bottom: 60px;
    }
    
    .top_products_list ul{
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        margin: 0 0 50px 0;
    }
    
    .top_products_list ul li{
        width: 48%;
        margin-right: 4%;
        margin-bottom: 4%;
    }
    
    .top_products_list ul li .img img{
        border-radius: 32px;
    }
    
    .top_products_list ul li:nth-child(2n){
        margin-right: 0;
    }
    
    .top_products_list ul li:last-child{
        margin-right: 0;
    }
    
    .top_products_list ul li .img{
        margin-bottom: 30px;
    }
    
    .top_products_list ul li .title2{
        margin-bottom: 10px;
        font-weight: 700;
        font-size: 18px;
        letter-spacing: 0em;
    }
    
    .top_products_list ul li .text{
        font-weight: 500;
        font-size: 16px;
    }
    
    .top_products_list_btn a{
        display: block;
        padding: 20px 0 20px 0;
        color: #000;
        text-align: center;
        font-weight: 400;
        font-size: 16px;
        background-color: #fff;
        width: 384px;
        margin: 0 auto 0 auto;
        transition: background-color 0.5s ease, opacity 0.5s ease;

    }
    
    .top_products_list_btn a:hover{
        opacity: 0.5;
    }
}


@media screen and (max-width: 739px) {
    .top_products_list{
        background-color: #068664;
        padding: 80px 30px 80px 30px;
    }

    .top_products_list .inner{
        max-width: 286px;
        margin: 0 auto 0 auto;
        color: #fff;
    }
    .top_products_list .en_title{
            font-size: 16px;
            margin-bottom: 20px;
            font-weight: 500;
    }
    
    .top_products_list .title{
            font-size: 26px;
            font-weight: 500;
            margin-bottom: 60px;
    }
    
    .top_products_list ul{
        margin-bottom: 50px;
    }
    
    .top_products_list ul li{
        margin: 0 auto 30px auto;
        max-width: 286px;
    }
    
    .top_products_list ul li:last-child{
        margin-bottom: 0;
    }
    
    .top_products_list ul li .img{
        margin-bottom: 30px;
    }
    
    .top_products_list ul li .img img{
        border-radius: 32px;
    }
    
    .top_products_list ul li .title2{
        margin-bottom: 10px;
        font-weight: 700;
        font-size: 18px;
        letter-spacing: 0em;
    }
    
    .top_products_list ul li .text{
        font-weight: 500;
        font-size: 16px;
    }
    
    .top_products_list_btn a{
        display: block;
        padding: 20px 0 20px 0;
        color: #000;
        text-align: center;
        font-weight: 400;
        font-size: 16px;
        background-color: #fff;
        max-width: 384px;
        margin: 0 auto 0 auto;
        transition: background-color 0.5s ease, opacity 0.5s ease;

    }
    
    .top_products_list_btn a:hover{
        opacity: 0.5;
    }
}

@media screen and (min-width: 1025px) {
    .top_informartion{
        background-color: #F0F5E7;
        padding: 120px 0 120px 0;
    }

    .top_informartion .inner{
        width: 1000px;
        margin: 0 auto 0 auto;
    }

    .top_informartion .inner .en_title{
        font-size: 14px;
        font-weight: 500;
        line-height: 1em;
        margin-bottom: 20px;
    }

    .top_informartion .inner .title{
        font-size: 26px;
        font-weight: 500;
        margin-bottom: 40px;
        line-height: 1em;
    }

    .top_informartion ul li a{
        display: flex;
        padding: 30px 0 30px 0;
    }

    .top_informartion ul li{
      background-image : linear-gradient(to right, #068664, #068664 6px, transparent 6px, transparent 12px);
      background-size: 12px 1px;
      background-position: left bottom;
      background-repeat: repeat-x;
    }

    .top_informartion ul li .date{
        margin-top: 4px;
        width: 120px;
        font-size: 14px;
        font-weight: 500;
        line-height: 1em;
    }

    .top_informartion ul li .text{
        font-weight: 500;
        -webkit-flex: 1;
        flex: 1;
        font-size: 16px;
        letter-spacing: 0;
    }
    
    .top_informartion_btn a{
        display: block;
        padding: 20px 0 20px 0;
        color: #000;
        text-align: center;
        font-weight: 400;
        font-size: 16px;
        background-color: #fff;
        width: 384px;
        margin: 50px auto 0 auto;
        transition: background-color 0.5s ease, opacity 0.5s ease;

    }
    
    .top_informartion_btn a:hover{
        opacity: 0.5;
    }
}

@media screen and (max-width: 1024px) {
    .top_informartion{
        background-color: #F0F5E7;
        padding: 100px 0 100px 0;
    }

    .top_informartion .inner{
        margin: 0 30px 0 30px;
    }

    .top_informartion .inner .en_title{
        font-size: 16px;
        font-weight: 500;
        line-height: 1em;
        margin-bottom: 20px;
    }

    .top_informartion .inner .title{
        font-size: 32px;
        font-weight: 500;
        margin-bottom: 30px;
        line-height: 1em;
    }

    .top_informartion ul li a{
        display: block;
        padding: 30px 0 30px 0;
    }

    .top_informartion ul li{
      background-image : linear-gradient(to right, #068664, #068664 6px, transparent 6px, transparent 12px);
      background-size: 12px 1px;
      background-position: left bottom;
      background-repeat: repeat-x;
    }

    .top_informartion ul li .date{
        font-size: 14px;
        font-weight: 500;
        margin-bottom: 15px;
        line-height: 1em;
    }

    .top_informartion ul li .text{
        font-weight: 500;
        -webkit-flex: 1;
        flex: 1;
        font-size: 16px;
        letter-spacing: 0;
    }
    
    .top_informartion_btn a{
        display: block;
        padding: 20px 0 20px 0;
        color: #000;
        text-align: center;
        font-weight: 400;
        font-size: 16px;
        background-color: #fff;
        max-width: 384px;
        margin: 28px auto 0 auto;
        transition: background-color 0.5s ease, opacity 0.5s ease;

    }
    
    .top_informartion_btn a:hover{
        opacity: 0.5;
    }
}
.top_informartion ul li a{
    transition: background-color 0.5s ease, opacity 0.5s ease;
}

.top_informartion ul li a:hover{
    opacity: 0.5;
}

/* よくある質問  */

@media print, screen and (min-width: 1000px) {
    .faq_btn_area{
      margin-top: 60px;
      padding: 0 20px 0 20px;
    }

    .faq_btn_area ul{
        display: flex;
        justify-content: center;
        max-width: 1000px;
        margin: 0 auto 0 auto;
    }

    .faq_btn_area ul li{
        width: 25%;
        margin-right: 20px;
    }
    
    .faq_btn_area ul li br{
        display: none;
    }

    .faq_btn_area ul li:last-child{
        margin-right: 0;
    }

    .faq_btn_area ul li a{
        display: flex;
        justify-content: center;
        align-items: center;
        border-radius: 8px;
        font-size: 16px;
        letter-spacing: 0;
        background-color: #F4F8FA;
        border: 1px solid #386F81;
        text-align: center;
        height: 80px;
        font-weight: 400;
        color: #386F81;
        transition: background-color 0.5s ease, opacity 0.5s ease;
    }

    .faq_btn_area ul li a:hover{
        opacity: 0.5;
    }

    .faq_btn_area ul li a div{
      display: inline-block;
      background: url(https://d2w53g1q050m78.cloudfront.net/tamspetcom/uploads/202508/img/faq_allow.svg) no-repeat;
      background-position: top calc(50% + 2px) right 0;
      padding-right: 20px;
    }

    .cate_title{
      font-size: 18px;
      font-weight: 400;
      color: #386F81;
    }

    .p-faq__inner__list{
      margin-bottom: 30px;
    }
}

@media print, screen and (max-width: 999px) {
    .faq_btn_area{
      margin-top: 60px;
      padding: 0 20px 0 20px;
    }

    .faq_btn_area ul{
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        max-width: 1000px;
        margin: 0 auto 0 auto;
    }

    .faq_btn_area ul li{
        width: 49%;
        margin-right: 2%;
        margin-bottom: 2%;
    }

    .faq_btn_area ul li:nth-child(2n){
        margin-right: 0;
    }

    .faq_btn_area ul li a{
        display: flex;
        justify-content: center;
        align-items: center;
        border-radius: 8px;
        font-size: 14px;
        letter-spacing: 0;
        background-color: #F4F8FA;
        border: 1px solid #386F81;
        text-align: center;
        height: 80px;
        font-weight: 400;
        color: #386F81;
        transition: background-color 0.5s ease, opacity 0.5s ease;
    }

    .faq_btn_area ul li a:hover{
        opacity: 0.5;
    }

    .faq_btn_area ul li a div{
      display: inline-block;
      background: url(https://d2w53g1q050m78.cloudfront.net/tamspetcom/uploads/202508/img/faq_allow.svg) no-repeat;
      background-position: top calc(50% + 2px) right 0;
      padding-right: 25px;
    }

    .cate_title{
      font-size: 18px;
      font-weight: 400;
      color: #386F81;
    }

    .p-faq__inner__list{
      margin-bottom: 30px;
    }
}

:target {
  scroll-margin-top: 80px;
}

/* ブログ */

.column_list ul li a{
    display: block;
    transition: background-color 0.5s ease, opacity 0.5s ease;
}

.column_list ul li a:hover{
    opacity: 0.5;
}
  
@media print, screen and (min-width: 720px) {
      .column_list{
          padding: 0 20px 0 20px;
          max-width: 1000px;
          margin: 0 auto 0 auto;
      }

      .column_list ul{
          display: flex;
          flex-wrap: wrap;
      }

      .column_list ul li{
          width: calc(33.3% - 13.4px);
          margin-right: 20px;
          margin-bottom: 40px;
      }

        .column_list ul li .img{
          aspect-ratio: 640 / 428;
          overflow: hidden;
          margin-bottom: 20px;
          border-radius: 16px;
        }
        
        .column_list ul li .img img{
            width: 100% !important;
            height: 100% !important; 
            object-fit: cover;
            object-position: center;
            display: block; 
        }

      .column_list ul li .text{
          font-weight: 500;
          font-size: 16px;
      }

      .column_list ul li:nth-child(3n){
          margin-right: 0;
      }
}

@media print, screen and (max-width: 719px) {
      .column_list{
          padding: 0 20px 0 20px;
          max-width: 1000px;
          margin: 0 auto 0 auto;
      }

      .column_list ul{
          display: flex;
          flex-wrap: wrap;
      }

      .column_list ul li{
          width: calc(50% - 7.5px);
          margin-right: 15px;
          margin-bottom: 40px;
      }

        .column_list ul li .img{
          aspect-ratio: 640 / 428;
          overflow: hidden;
          margin-bottom: 20px;
          border-radius: 16px;
        }
        
        .column_list ul li .img img{
            width: 100% !important;
            height: 100% !important; 
            object-fit: cover;
            object-position: center;
            display: block; 
        }

      .column_list ul li .text{
          font-weight: 500;
          font-size: 14px;
      }

      .column_list ul li:nth-child(2n){
          margin-right: 0;
      }
}

/* マイページ */

.rank_point_area{
    color: #232323;
}

@media print, screen and (min-width: 1280px) {
    .rank_point_area{
        display: flex;
    }

    .rank_area{
        width: 50%;
        padding: 40px 0 50px 0;
        background-color: #F4F8FA;
        margin-right: 20px;
    }

    .rank_area .title{
        font-size: 16px;
        font-weight: 500;
        text-align: center;
        margin-bottom: 15px;
        line-height: 1em;
    }

    .rank_area .rank_name{
        font-size: 12px;
        width: 140px;
        padding: 7px 0 11px 0;
        font-weight: 500;
        text-align: center;
        margin: 0 auto 30px auto;
        line-height: 1em;
        color: #fff;
        background-color: #386F81;
    }

    .rank_area .nextstage{
        text-align: center;
        font-size: 14px;
        font-weight: 500;
        margin-bottom: 20px;
    }

    .rank_area .nextstage span{
        color: #386F81;
    }

    .rank_area .bottom{
        position: relative;
        width: 258px;
        margin: 0 auto 0 auto;
    }
    
    .rank_area .bottom .text{
        font-size: 12px;
        letter-spacing: 0;
        margin-top: -5px;
        font-weight: 500;
    }

    .rank_area .bottom.ver2{
        width: 110px;
        padding-bottom: 40px;
    }
    
    .rank_area .bottom.ver2 img{
        margin: 0 auto 0 auto;
    }

    .rank_area .bottom.ver2 .icon1{
        position: absolute;
        top: -15px;
        left: 0px;
        text-align: center;
        width: 110px;
    }

    .rank_area .bottom .icon1{
        position: absolute;
        top: -20px;
        left: -60px;
        width: 110px;
        text-align: center;
    }

    .rank_area .bottom .icon2{
        position: absolute;
        top: -20px;
        right: -60px;
        text-align: center;
        width: 110px;
    }
    
    .rank_area .bottom img{
        margin: 0 auto 0 auto;
    }

    .mater_box{
        border: 1px solid #E9E9E9;
        width: 258px;
        margin: 0 auto 0 auto;
        height: 14px;
        display: block;
        margin-bottom: 10px;
        background-color: #fff;
    }
    
    .mater{
        width: 0;
        height: 14px;
        background-color: #7F7F7F;
        border-bottom-right-radius: 10px;
        border-top-right-radius: 10px;
        transition: width 0.5s ease;
    }

    .point_area{
        width: 50%;
        padding: 40px 0 30px 0;
        background-color: #F4F8FA
    }

    .point_area .title{
        font-size: 16px;
        font-weight: 500;
        text-align: center;
        margin-bottom: 15px;
        line-height: 1em;
    }

    .point_area .point{
        font-size: 14px;
        width: 147px;
        padding: 18px 0 22px 0;
        font-weight: 500;
        text-align: center;
        margin: 0 auto 20px auto;
        line-height: 1em;
        color: #386F81;
        background-color: #fff;
    }

    .point_area .timelimit{
        color: #868686;
        font-size: 12px;
        text-align: center;
        line-height: 1.6em;
        margin-bottom: 10px;
    }

    .point_area .point_info{
        text-align: center;
    }

    .point_area .point_info a{
        font-size: 12px;
        text-decoration: underline;
        color: #386F81;
        line-height: 1em;
    }
}

@media print, screen and (max-width: 1279px) {

    .rank_area{
        padding: 40px 0 30px 0;
        background-color: #F4F8FA;
        margin-bottom: 20px;
    }

    .rank_area .title{
        font-size: 16px;
        font-weight: 500;
        text-align: center;
        margin-bottom: 15px;
        line-height: 1em;
    }

    .rank_area .rank_name{
        font-size: 12px;
        width: 140px;
        padding: 7px 0 11px 0;
        font-weight: 500;
        text-align: center;
        margin: 0 auto 30px auto;
        line-height: 1em;
        color: #fff;
        background-color: #386F81;
    }

    .rank_area .nextstage{
        text-align: center;
        font-size: 14px;
        font-weight: 500;
        margin-bottom: 20px;
    }

    .rank_area .nextstage span{
        color: #386F81;
    }

    .rank_area .bottom{
        position: relative;
        width: 258px;
        margin: 0 auto 0 auto;
        padding-bottom: 30px;
    }

    .rank_area .bottom.ver2{
        width: 110px;
        padding-bottom: 50px;
    }
    
    .rank_area .bottom img{
        margin: 0 auto 0 auto;
    }

    .rank_area .bottom.ver2 .icon1{
        position: absolute;
         top: -20px;
        left: 0px;
        width: 110px;
        text-align: center;
    }
    
    .rank_area .bottom .text{
        font-size: 12px;
        letter-spacing: 0;
        margin-top: -3px;
        font-weight: 500;
    }

    .rank_area .bottom .icon1{
        position: absolute;
        top: -20px;
        left: -60px;
        width: 110px;
        text-align: center;
    }

    .rank_area .bottom .icon2{
        position: absolute;
        top: -20px;
        right: -60px;
        width: 110px;
        text-align: center;
    }

    .mater_box{
        border: 1px solid #E9E9E9;
        width: 258px;
        margin: 0 auto 0 auto;
        height: 14px;
        display: block;
        margin-bottom: 10px;
        background-color: #fff;
    }
    
    .mater{
        width: 0;
        height: 14px;
        background-color: #7F7F7F;
        border-bottom-right-radius: 10px;
        border-top-right-radius: 10px;
        transition: width 0.5s ease;
    }

    .point_area{
        padding: 40px 0 30px 0;
        background-color: #F4F8FA
    }

    .point_area .title{
        font-size: 16px;
        font-weight: 500;
        text-align: center;
        margin-bottom: 15px;
        line-height: 1em;
    }

    .point_area .point{
        font-size: 14px;
        width: 147px;
        padding: 18px 0 22px 0;
        font-weight: 500;
        text-align: center;
        margin: 0 auto 20px auto;
        line-height: 1em;
        color: #386F81;
        background-color: #fff;
    }

    .point_area .timelimit{
        color: #868686;
        font-size: 12px;
        text-align: center;
        line-height: 1.6em;
        margin-bottom: 10px;
    }

    .point_area .point_info{
        text-align: center;
    }

    .point_area .point_info a{
        font-size: 12px;
        text-decoration: underline;
        color: #386F81;
        line-height: 1em;
    }
}
@media print, screen and (max-width: 450px) {
    .rank_area .bottom.ver1 .icon1 .text{
        position: absolute;
        left: 30px;
        width: 110px;
    }
    
    .rank_area .bottom.ver1 .icon2 .text{
        position: absolute;
        right: 20px;
        width: 110px;
    }
}
@media print, screen and (min-width: 744px) {
    .banner_area {
        margin-top: 20px;
        margin-bottom: 30px;
    }

    .banner_area ul{
        display: flex;
        justify-content: center;
    }

    .banner_area ul li{
        max-width: 345px;
        margin-right: 20px;
    }

    .banner_area ul li:last-child{
        margin-right: 0;
    }
}

@media print, screen and (max-width: 743px) {
    .banner_area {
        margin-top: 20px;
        margin-bottom: 30px;
    }

    .banner_area ul{
        max-width: 345px;
        margin: 0 auto 0 auto;
    }

    .banner_area ul li{
        margin-bottom: 10px;
    }

    .banner_area ul li:last-child{
        margin-bottom: 0;
    }
}

.k_sub_menu_area{
    color: #232323;
}

.k_sub_menu_area .box{
    margin-top: -10px;
    border-bottom: 2px solid #ebeeef;
    padding-top: 25px;
    padding-bottom: 25px;
}

.k_sub_menu_area .box .title{
    font-size: 17px;
    font-weight: 500;
    line-height: 1em;
    margin-bottom: 15px;
    padding: 5px 0 5px 30px;
}

.k_sub_menu_area .box .title.t1{
    background: url(https://d2w53g1q050m78.cloudfront.net/tamspetcom/uploads/202508/img/k_sub_menu_area1.svg) no-repeat;
    background-position: top 2px left 0;
}

.k_sub_menu_area .box .title.t2{
    background: url(https://d2w53g1q050m78.cloudfront.net/tamspetcom/uploads/202508/img/k_sub_menu_area2.svg) no-repeat;
    background-position: top 2px left 0;
}

.k_sub_menu_area .box .title.t3{
    background: url(https://d2w53g1q050m78.cloudfront.net/tamspetcom/uploads/202508/img/k_sub_menu_area3.svg) no-repeat;
    background-position: top 2px left 0;
}

.k_sub_menu_area .box .title.t4{
    background: url(https://d2w53g1q050m78.cloudfront.net/tamspetcom/uploads/202508/img/k_sub_menu_area4.svg) no-repeat;
    background-position: top 2px left 0;
}

.k_sub_menu_area .box ul{
    display: flex;
    flex-wrap: wrap;
}

.k_sub_menu_area .box ul li{
    margin-right: 15px;
    font-size: 13px;
    line-height: 1em;
    font-weight: 500;
}

@media print, screen and (min-width: 1000px) {
    .k_menu_area ul{
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        max-width: 1000px;
        margin: 0 auto 0 auto;
    }

    .k_menu_area ul li{
        width: 49%;
        margin-right: 2%;
        margin-bottom: 2%;
    }

    .k_menu_area ul li:nth-child(2n){
        margin-right: 0;
    }

    .k_menu_area ul li a{
        display: block;
        padding: 30px 0 30px 0;
        border-radius: 10px;
        font-size: 14px;
        letter-spacing: 0;
        background-color: #F4F8FA;
        text-align: center;
        font-weight: 400;
        transition: background-color 0.5s ease, opacity 0.5s ease;
    }
    
    .k_menu_area ul li a .img{
        text-align: center;
        width: 24px;
        margin: 0 auto 10px auto;
    }
    
    .k_menu_area ul li a .title{
        margin-bottom: 15px;
        line-height: 1em;
        font-size: 14px;
        font-weight: 500;
    }
    
    .k_menu_area ul li a .text{
        font-size: 12px;
    }

    .k_menu_area ul li a:hover{
        opacity: 0.5;
    }
}

@media print, screen and (max-width: 999px) {
    .k_menu_area ul{
        max-width: 1000px;
        margin: 0 auto 0 auto;
    }

    .k_menu_area ul li{
        margin-bottom: 20px;
    }

    .k_menu_area ul li:nth-child(2n){
        margin-right: 0;
    }

    .k_menu_area ul li a{
        display: block;
        padding: 30px 0 30px 0;
        border-radius: 10px;
        font-size: 14px;
        letter-spacing: 0;
        background-color: #F4F8FA;
        text-align: center;
        font-weight: 400;
        transition: background-color 0.5s ease, opacity 0.5s ease;
    }
    
    .k_menu_area ul li a .img{
        text-align: center;
        width: 24px;
        margin: 0 auto 10px auto;
    }
    
    .k_menu_area ul li a .title{
        margin-bottom: 15px;
        line-height: 1em;
        font-size: 14px;
        font-weight: 500;
    }
    
    .k_menu_area ul li a .text{
        font-size: 12px;
    }

    .k_menu_area ul li a:hover{
        opacity: 0.5;
    }
}

.column_list{
    color: #232323;
}

.column_list ul li a{
    display: block;
    transition: background-color 0.5s ease, opacity 0.5s ease;
}

.column_list ul li a:hover{
    opacity: 0.5;
}
  
@media print, screen and (min-width: 1000px) {
      .column_list{
          max-width: 1000px;
          margin: 0 auto 0 auto;
      }

      .column_list ul{
          display: flex;
          flex-wrap: wrap;
      }

      .column_list ul li{
          width: calc(33.3% - 13.4px);
          margin-right: 20px;
      }

        .column_list ul li .img{
          aspect-ratio: 640 / 428;
          overflow: hidden;
          margin-bottom: 20px;
          border-radius: 16px;
        }
        
        .column_list ul li .img img{
            width: 100% !important;
            height: 100% !important; 
            object-fit: cover;
            object-position: center;
            display: block; 
        }

      .column_list ul li .text{
          font-weight: 500;
          font-size: 16px;
      }

      .column_list ul li:nth-child(3n){
          margin-right: 0;
      }
}

@media print, screen and (max-width: 999px) and (min-width: 640px){
      .column_list{
          max-width: 1000px;
          margin: 0 auto 0 auto;
      }

      .column_list ul{
          display: flex;
          flex-wrap: wrap;
      }

      .column_list ul li{
          width: calc(50% - 7.5px);
          margin-right: 15px;
          margin-bottom: 40px;
      }

      .column_list ul li .text{
          font-weight: 500;
          font-size: 16px;
      }

        .column_list ul li .img{
          aspect-ratio: 640 / 428;
          overflow: hidden;
          margin-bottom: 20px;
          border-radius: 16px;
        }
        
        .column_list ul li .img img{
            width: 100% !important;
            height: 100% !important; 
            object-fit: cover;
            object-position: center;
            display: block; 
        }

      .column_list ul li:nth-child(2n){
          margin-right: 0;
      }
}
    .mypage_more_btn{
        text-align: right;
        margin-top: 20px;
    }

    .mypage_more_btn a{
        font-size: 12px;
        color: #232323;
        font-weight: 500;
        display: inline-block;
        background: url(https://d2w53g1q050m78.cloudfront.net/tamspetcom/uploads/202508/img/mypage_more_btn_allow.svg) no-repeat;
        background-position: top calc(50% + 1px) right 0;
        line-height: 1em;
        padding-right: 15px;
    }
    
@media print, screen and (max-width: 639px) {

      .column_list ul{
          max-width: 480px;
          margin: 0 auto 0 auto;
      }

      .column_list ul li{
          margin-bottom: 20px;
      }

        .column_list ul li .img{
          aspect-ratio: 640 / 428;
          overflow: hidden;
          margin-bottom: 20px;
          border-radius: 16px;
        }
        
        .column_list ul li .img img{
            width: 100% !important;
            height: 100% !important; 
            object-fit: cover;
            object-position: center;
            display: block; 
        }

      .column_list ul li .text{
          font-weight: 500;
          font-size: 16px;
      }

      .column_list ul li:last-child{
          margin-bottom: 0;
      }
}
    .mypage_more_btn{
        text-align: right;
        margin-top: 20px;
    }

    .mypage_more_btn a{
        font-size: 12px;
        color: #232323;
        font-weight: 500;
        display: inline-block;
        background: url(https://d2w53g1q050m78.cloudfront.net/tamspetcom/uploads/202508/img/mypage_more_btn_allow.svg) no-repeat;
        background-position: top calc(50% + 1px) right 0;
        line-height: 1em;
        padding-right: 15px;
    }

@media print, screen and (min-width: 1240px) {

    .faq_btn_area ul{
        display: flex;
        justify-content: center;
        max-width: 1000px;
        margin: 0 auto 0 auto;
    }

    .faq_btn_area ul li{
        width: 25%;
        margin-right: 13px;
    }

    .faq_btn_area ul li:last-child{
        margin-right: 0;
    }

    .faq_btn_area ul li a{
        display: flex;
        justify-content: center;
        align-items: center;
        border-radius: 8px;
        font-size: 14px;
        letter-spacing: 0;
        background-color: #F4F8FA;
        border: 1px solid #386F81;
        text-align: center;
        height: 80px;
        font-weight: 400;
        color: #386F81;
        transition: background-color 0.5s ease, opacity 0.5s ease;
    }

    .faq_btn_area ul li a:hover{
        opacity: 0.5;
    }

    .faq_btn_area ul li a div{
      display: inline-block;
      background: url(https://d2w53g1q050m78.cloudfront.net/tamspetcom/uploads/202508/img/faq_allow.svg) no-repeat;
      background-position: top calc(50% + 2px) right 0;
      padding-right: 30px;
    }

    .cate_title{
      font-size: 18px;
      font-weight: 400;
      color: #386F81;
    }

    .p-faq__inner__list{
      margin-bottom: 30px;
    }
}

@media print, screen and (max-width: 1239px) {

    .faq_btn_area ul{
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        max-width: 1000px;
        margin: 0 auto 0 auto;
    }

    .faq_btn_area ul li{
        width: 49%;
        margin-right: 2%;
        margin-bottom: 2%;
    }

    .faq_btn_area ul li:nth-child(2n){
        margin-right: 0;
    }

    .faq_btn_area ul li a{
        display: flex;
        justify-content: center;
        align-items: center;
        border-radius: 8px;
        font-size: 14px;
        letter-spacing: 0;
        background-color: #F4F8FA;
        border: 1px solid #386F81;
        text-align: center;
        height: 80px;
        font-weight: 400;
        color: #386F81;
        transition: background-color 0.5s ease, opacity 0.5s ease;
    }

    .faq_btn_area ul li a:hover{
        opacity: 0.5;
    }

    .faq_btn_area ul li a div{
      display: inline-block;
      background: url(https://d2w53g1q050m78.cloudfront.net/tamspetcom/uploads/202508/img/faq_allow.svg) no-repeat;
      background-position: top calc(50% + 2px) right 0;
      padding-right: 25px;
    }

    .cate_title{
      font-size: 18px;
      font-weight: 400;
      color: #386F81;
    }

    .p-faq__inner__list{
      margin-bottom: 30px;
    }
}

@media print, screen and (min-width: 720px) {
    .cta{
        position: fixed;
        z-index: 100;
        right: 20px;
        bottom: 20px;
        width: 352.5px;
        margin: 0 auto 0 auto;
    }
    
    #Footer{
        padding-bottom: 200px;
    }
}

@media print, screen and (max-width: 719px) {
    .cta{
        width: 352.5px;
        position: fixed;
        z-index: 100;
        left: 0;
        right: 0;
        bottom: 20px;
        margin: 0 auto 0 auto;
    }
    
    #Footer{
        padding-bottom: 150px;
    }
}

.sp_content{
    color: #232323;
}

.sp_content .p-product_content__inner{
   justify-content: start;
}

.sp_content .p-product_content__inner__img{
    margin-right: 65px;
    -webkit-flex: 1;
    flex: 1;
}


.sp_content .top_under_products .top_under1{
    display: flex;
}


@media print, screen and (min-width: 1074px) {

    .sp_content .p-product_content__inner__info{
        width: 500px;
    }
    
    .sp_content .top_under_products{
        margin-top: 10px;
        display: flex;
        align-items: center;
    }
    
    .sp_content .top_text{
        margin-top: 20px;
        font-size: 14px;
        line-height: 2em;
    }
}
@media print, screen and (max-width: 1073px) {
    .p-product_content__inner{
        display:block;
    }
    
    .p-product_content__inner__img {
        width: 100%;
    }
    
    .p-product_content__inner__info{
        width: 100%;
    }
    
    .sp_content .top_under_products{
        margin-top: 10px;
    }
    
    .sp_content .top_text{
        margin-top: 5px;
        font-size: 14px;
        line-height: 2em;
    }
}

.sp_content h1{
    font-size: 24px;
    font-weight: 500;
    margin-bottom: 10px;
}

.sp_content .sp_content .h1_sub{
    font-size: 18px;
    font-weight: 400;
}

.sp_content .top_under_products .c-product_info__star span{
    color: #232323;
    letter-spacing: 0;
    font-size: 12px;
}

.sp_content .top_under_products .c-product_info__star{
    margin-top: 0px;
    margin-right: 20px;
}

.sp_content .top_under_products .text1{
    font-size: 13px;
    margin-right: 16px;
    margin-top: 4px;
    font-family: 游ゴシック体, "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
}

.sp_content .top_under_products .text1 a{
    color: #386F81;
    text-decoration: underline;
    font-weight: 400;
}

.sp_content .top_under_products .text2{
    margin-top: -16px;
}

.sp_content .top_under_products .text2 span{
    font-size: 13px;
}

.sp_content .sns_share{
    max-width: 1000px;
    margin: 0 auto 0 auto;
    padding-top: 30px;
    border-top: 1px solid #BDC1C2;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 120px;
}

.sp_content .sns_share .title{
    font-size: 13px;
    margin-right: 20px;
}

.sp_content .sns_share ul{
    display: flex;
    align-items: center;

}

.sp_content .sns_share ul li{
    margin-right: 15px;
}

.hac{
    transition: background-color 0.5s ease, opacity 0.5s ease;
}

.hac:hover{
    opacity: 0.5;
}

.ec_btn{
    display: flex;
    max-width: 500px;
    margin: 0 auto 0 auto;
}

.ec_btn a{
    display: flex;
    flex-direction: column;
    justify-content: center;
    background-color: #fff;
    text-align: center;
    width: 50%;
    height: 50px;
    border: 1px solid #D9D9D9;
    border-radius: 8px;
    box-shadow: 2px 2px 6px #ccc;
}

.ec_btn a:nth-child(1){
    margin-right: 13px;
}

.ec_btn a img{
    width: 72px !important;
    margin: 0 auto 0 auto;
}

.cart_btn{
    margin-bottom: 10px;
}

.cart_btn a{
    display: block;
    max-width: 500px;
    margin: 0 auto 0 auto;
    background-color: #068664;
    text-align: center;
    color: #fff;
    font-size: 16px;
    height: 64px;
    line-height: 64px;
    padding-bottom: 4px;
    border-radius: 8px;
}

.p_box{
    border-radius: 16px;
    background-color: #F7F7F7;
    margin-bottom: 15px;
}

 @media print, screen and (min-width: 700px) {
 
    .p_box .inner{
        padding: 18px;
        display: flex;
        align-items: center;
    }
    
    .p_box .img{
        position: relative;
        width: 200px;
        margin-right: 30px;
    }
    
    .p_box .otoku{
        position: absolute;
        left: -10px;
        top: -10px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        line-height: 1em;
        width: 60px;
        height: 60px;
        background-color: #F4735C;
        color: #fff;
        text-align: center;
        border-radius: 60px;
    }

    .p_box .otoku .text1{
        font-weight: 700;
        font-size: 24px !important;
        margin-bottom: 2px;
    }

    .p_box .otoku .text1 span{
        font-weight: 700;
        font-size: 13px;
    }
 }

.p_box .img img{
    border-radius: 16px;
}

.p_box .inner .right{
    -webkit-flex: 1;
    flex: 1;
}

.p_box .inner .right .sub{
    font-size: 14px;
    color: #6A6A6A;
    font-weight: 500;
    margin-bottom: 3px;
}

.p_box .inner .right .title{
    font-size: 14px;
    font-weight: 500;
}

.p_box .inner .right .quantity{
    font-size: 14px;
    font-weight: 500;
}

.p_box .inner .right .price{
    font-size: 16px;
    font-weight: 500;
    margin-bottom: 10px;
}

.p_box .inner .right .price .span1{
    color: #6A6A6A;
}

.p_box .inner .right .price .span2{
    font-size: 20px;
    font-weight: 700;
}

.p_box .inner .right .price .span3{
    font-size: 12px;
    font-weight: 700;
}

.p_box .inner .right ul{
    display: flex;
    flex-wrap: wrap;
}

.p_box .inner .right > ul > li{
    line-height: 1em;
    padding: 5px;
    margin-right: 5px;
    margin-bottom: 5px;
    background-color: #fff;
    border: 1px solid #232323;
    color: #068664;
    font-weight: 700;
    font-size: 14px;
}

@media print, screen and (max-width: 699px) {
    .p_box .inner{
        padding: 18px;
        display: flex;
    }    
    .p_box .img{
        position: relative;
        width: 100px;
        margin-right: 15px;
    }
    
    .p_box .otoku{
        position: absolute;
        left: -10px;
        top: -10px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        line-height: 1em;
        width: 50px;
        height: 50px;
        background-color: #F4735C;
        color: #fff;
        text-align: center;
        border-radius: 50px;
    }

    .p_box .otoku .text1{
        font-weight: 700;
        font-size: 20px !important;
    }

    .p_box .otoku .text1 span{
        font-weight: 700;
        font-size: 12px;
    }
    
    .p_box .otoku .text2{
        font-size: 13px;
    }
    
    .p_box .inner .right .price{
        letter-spacing: 0;
    }
    .p_box .inner .right .price .span2{
        font-size: 18px;
    }

    .p_box .inner .right .price .span3{
        font-size: 11px;
    }
}

.hide_tab{
    display: none;
}

@media print, screen and (min-width: 1074px) {
    .product_tab_area1{
        max-width: 1000px;
        margin: 120px auto 0px auto;
    }
}

@media print, screen and (max-width: 1073px) {
    .product_tab_area1{
        max-width: 1000px;
        margin: 0px auto 0px auto;
    }
}

.product_tab_area1 .product_info .img_box div{
    max-width: 640px;
    margin: 0 auto 20px auto;
}

.product_tab_area1 .product_info{
    max-width: 801px;
    margin: 0 auto 0px auto;
    padding: 0 20px 0 20px;
}

@media print, screen and (min-width: 1074px) {
    .product_tab_area1.ver2{
        margin: 30px auto 120px auto;
    }
}

@media print, screen and (max-width: 1073px) {
    .product_tab_area1.ver2{
        margin: 30px auto 50px auto;
    }
}

.product_tab_area1 > ul{
    display: flex;
    align-items:flex-end;
    padding: 0 5px 0 5px;
    justify-content: center;
    border-bottom: 1px solid #000000;
}

.product_tab_area1 > ul > li{
    height: 48px;
    line-height: 46px;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
    width: 200px;
    margin-right: 10px;
    display: block;
    border: 1px solid #000000;
    background-color: #fff;
    color: #868686;
    font-weight: 500;
    font-size: 16px;
    text-align: center;
    cursor: pointer;
    border-bottom: none;
}

.product_tab_area1.ver2 > ul > li:nth-child(1){
    width: 250px;
}

.product_tab_area1.ver2 > ul > li:nth-child(2){
    width: 200px !important;
}

.product_tab_area1 > ul > li:first-of-type {
    margin-left: 2px !important;
}


.product_tab_area1 > ul > li.select{
    height: 60px;
    font-size: 18px;
    color: #232323;
    line-height: 56px;
    background-color: #fff;
    position: relative;
    z-index: 1;
    top: 1px;
}

.product_tab_area1.ver2 > ul > li.select{
    background-color: #068664;
    color: #fff;
}

.product_tab_area1 > ul > li:hover{
    height: 60px;
    font-size: 18px;
    color: #232323;
    line-height: 56px;
}

.product_tab_area1 ul li div{
}

.product_tab_area1 ul li:last-child{
    margin-right: 0;
}

.product_tab_area1 .content{
    padding: 30px 0px 30px 0px;
}

.product_tab_area1.ver2 .content{
    padding: 15px 0px 5px 0px;
}

@media print, screen and (max-width: 739px) {
    .product_tab_area1 > ul > li{
        margin-right: 5px;
    }
    
    .product_tab_area1 > ul > li{
        height: 40px;
        line-height: 40px;
    }
    
    .product_tab_area1 > ul > li.select{
        height: 50px;
        line-height: 50px;
    }

    .product_tab_area1 > ul > li:hover{
        height: 50px;
        line-height: 50px;

    }
}

.rank_point_area_info div{
    text-align: right;
    margin-top: 10px;
}
.rank_point_area_info a{
    font-size: 12px;
    font-weight: 400;
    color: #386F81;
    display: inline-block;
    line-height: 1em;
    padding: 5px 0 5px 22px;
    background: url(https://d2w53g1q050m78.cloudfront.net/tamspetcom/uploads/202508/img/info.svg) no-repeat;
    background-size: 17px;
    background-position: top 3px left 0;
    text-decoration: underline;
}
@media print, screen and (min-width: 1280px) {
    .rank_area2{
        width: 50%;
        padding: 25px 0 25px 0;
        background-color: #F4F8FA;
        margin-right: 20px;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .rank_area2 .title{
        font-size: 16px;
        font-weight: 500;
        text-align: center;
        margin-bottom: 15px;
        line-height: 1em;
    }

    .rank_area2 .rank_name{
        font-size: 12px;
        width: 140px;
        padding: 7px 0 11px 0;
        font-weight: 500;
        text-align: center;
        margin: 0 auto 15px auto;
        line-height: 1em;
        color: #fff;
        background-color: #AAAAAA;
    }
    
    .rank_area2 .no_rank{
        font-size: 12px;
        width: 160px;
        padding: 7px 0 11px 0;
        font-weight: 500;
        text-align: center;
        margin: 0 auto 0 auto;
        line-height: 1em;
    }

    .rank_area2 .nextstage{
        text-align: center;
        font-size: 12px;
        font-weight: 500;
        margin-bottom: 10px;
    }

    .rank_area2 .nextstage span{
        color: #386F81;
    }
    
    .rank_area2 .bottom{
        background-color: #fff;
        width: 250px;
        padding: 10px 0 10px 0;
        margin: 0 auto 0 auto;
    }

    .rank_area2 .bottom .bottom_box{
        margin: 0 auto 0 auto;
        display: flex;
        justify-content: center;
    }
    
    .rank_area2 .bottom .bottom_box .text{
        font-size: 10px;
        color: #386F81;
        margin-bottom: 3px;
        font-weight: 500;
    }
    .rank_area2 .bottom .bottom_box .text2{
        background-color: #F4F8FA;
        font-size: 14px;
        font-weight: 500;
        line-height: 1em;
        padding: 4px 0 6px 0;
    }
    
    .rank_area2 .bottom .bottom_box .text2 span{
        color: #386F81;
    }
    
    .rank_area2 .bottom .bottom_box .box_left{
        width: 80px;
        text-align: center;
    }
    
    .rank_area2 .bottom .bottom_box .box_center{
        width: 20px;
        text-align: center;
        font-weight: 500;
        font-size: 12px;
        margin-top: 14px;
    }
    
    .rank_area2 .bottom .bottom_box .box_right{
        width: 80px;
        text-align: center;
    }
    
    .rank_area2 .bottom .text{
        font-size: 12px;
        letter-spacing: 0;
        margin-top: -5px;
        font-weight: 500;
    }
}

@media print, screen and (max-width: 1279px) {
    .rank_area2{
        padding: 25px 0 25px 0;
        background-color: #F4F8FA;
        margin-bottom: 20px;
    }

    .rank_area2 .title{
        font-size: 16px;
        font-weight: 500;
        text-align: center;
        margin-bottom: 15px;
        line-height: 1em;
    }

    .rank_area2 .rank_name{
        font-size: 12px;
        width: 140px;
        padding: 7px 0 11px 0;
        font-weight: 500;
        text-align: center;
        margin: 0 auto 15px auto;
        line-height: 1em;
        color: #fff;
        background-color: #AAAAAA;
    }
    
    .rank_area2 .no_rank{
        font-size: 12px;
        width: 160px;
        padding: 7px 0 11px 0;
        font-weight: 500;
        text-align: center;
        margin: 0 auto 0px auto;
        line-height: 1em;
    }

    .rank_area2 .nextstage{
        text-align: center;
        font-size: 12px;
        font-weight: 500;
        margin-bottom: 10px;
    }

    .rank_area2 .nextstage span{
        color: #386F81;
    }
    
    .rank_area2 .bottom{
        background-color: #fff;
        width: 250px;
        padding: 10px 0 10px 0;
        margin: 0 auto 0 auto;
    }

    .rank_area2 .bottom .bottom_box{
        margin: 0 auto 0 auto;
        display: flex;
        justify-content: center;
    }
    
    .rank_area2 .bottom .bottom_box .text{
        font-size: 10px;
        color: #386F81;
        margin-bottom: 3px;
        font-weight: 500;
    }
    .rank_area2 .bottom .bottom_box .text2{
        background-color: #F4F8FA;
        font-size: 14px;
        font-weight: 500;
        line-height: 1em;
        padding: 4px 0 6px 0;
    }
    
    .rank_area2 .bottom .bottom_box .text2 span{
        color: #386F81;
    }
    
    .rank_area2 .bottom .bottom_box .box_left{
        width: 80px;
        text-align: center;
    }
    
    .rank_area2 .bottom .bottom_box .box_center{
        width: 20px;
        text-align: center;
        font-weight: 500;
        font-size: 12px;
        margin-top: 14px;
    }
    
    .rank_area2 .bottom .bottom_box .box_right{
        width: 80px;
        text-align: center;
    }
    
    .rank_area2 .bottom .text{
        font-size: 12px;
        letter-spacing: 0;
        margin-top: -5px;
        font-weight: 500;
    }
}

.rank_area2 .rank_name.r1{
    background-color: #6AAB6E;
}

.rank_area2 .rank_name.r2{
    background-color: #C4A568;
}

.rank_area2 .rank_name.r3{
    background-color: #88A8D8;
    margin-bottom: 0 !important;
}