@charset "UTF-8";



*{
    box-sizing: border-box;
    position: relative;
}

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}


body {
    line-height:1;
}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section { 
    display:block;
}
li {
    list-style:none;
}


a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
    text-decoration: none;
}

table {
    border-collapse:collapse;
    border-spacing:0;
    font-weight: 600;
}


/* html */

html{
font-size: 0.625rem;/* 10px */
text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; 
  scroll-behavior: smooth;
}

:root {
  --red: #d0121c;
  --yellow: #FFF146;
}

body{
  color: #000;
   font-family: "Noto Sans JP", sans-serif;
   font-weight: 600;
   font-size: 1.6rem;
  line-height: 1.5;
  font-style: normal;
  letter-spacing: 0.01em;
  
}

/* 画像が拡大縮小、隙間ない */
img {
    max-width: 100%;
    vertical-align: bottom;
    height: auto;
}

/* flex */
.flex {
    display: -webkit-box;
    display: flex;
    flex-wrap: wrap;
}

/* color */
.red{
    color: var(--red);
}

/* 余白 */
.mb2r{
    margin-bottom: 2rem;
}

.mb35r{
    margin-bottom: 3.5rem;
}

/* インデント */
.indent{
    text-indent: -0.8em;
  padding-left: 0.8em;
}


/* 全体幅 */
.site-width{
    width: 100%;
    margin: 0 auto;
}

/* wrapper */
.wrapper{
margin: 0;
padding: 0;
}


/* header */
header{
    padding-inline:calc((100vw - 1000px)/2); 
    height: 51px;
    display: flex;
    align-items: center;
} 

.header-logo-item{
    padding:0;
}

.header-logo-item img {
    display: block;
    width: 287px;
}



/* セクション共通 */

.about,.merit,.point,.function,.movie,.step,.price,
.contract,.inquiry{
    display: flex;
    flex-direction: column;
    align-items: center;
   width: 100%;
   padding-block: 7rem;
   padding-inline:calc((100vw - 950px) / 2); 
}


/* 改行 */

.pc-br{
    display: block;
}

/* タブレット用改行 */
.tb_br{
    display: none;
}

/* スマホ用改行 */
.sp_br{
    display: none;
}

/* 注釈 */

small,.small p{
    font-size: clamp(1.2rem, 1.153rem + 0.24vw, 1.3rem);
    font-weight: 400;
}

/* 文字寄せ */

.ta_l{
    text-align: left;
}

.ta_r{
    text-align: right;
}

.pc_mb_6rem{
    margin-bottom: 6rem;
}

.letter_wide{
    letter-spacing: 0.03em;
    text-align: center;
}

/* 見出し　h2 h3*/


h2{
    line-height: 1.6;
    text-align: center;
    margin-bottom: 6rem;
    
}

h2 .color_01{
font-size: clamp(2rem, 1.294rem + 3.53vw, 3.5rem);
color: var(--red);
padding-bottom: 0.03em;
border-bottom: 5px dotted var(--red);
}

h2 .color_02{
font-size: clamp(2rem, 1.294rem + 3.53vw, 3.5rem);
color: var(--yellow);
padding-bottom: 0.03em;
border-bottom: 5px dotted var(--yellow);
}


h3{
font-size: clamp(1.7rem, 1.088rem + 3.06vw, 3rem);
 text-align: center;
 margin-bottom: 4rem;

}



h2 .copy01{
    font-size: clamp(1.7rem, 1.418rem + 1.41vw, 2.3rem);
}


h2 .copy02{
    font-size: clamp(1.7rem, 1.418rem + 1.41vw, 2.3rem);
    color: #fff;
}

h2 .txt01{
font-size: clamp(2rem, 1.294rem + 3.53vw, 3.5rem);
color: #fff;
padding-bottom: 0.03em;

}

h2 .txt02{
font-size: clamp(1.7rem, 1.088rem + 3.06vw, 3rem);
}

h2 .txt03{
font-size: clamp(2.3rem, 1.5rem + 4vw, 4rem);
}


/* メインビジュアル */

.mv{
   width: 100%;
   padding-inline:calc((100vw - 950px)/2); 
    background: linear-gradient(90deg, #d0121c 0%, #d0121c 50%, #f8ecc8 50%, #f8ecc8 100%);
}

.mv .mv_text{
width: 48%;
}



.mv .btn_pc{
display: block;
}


.mv .btn_sp{
display: none;
}



.mv .mv_copy{
font-size: 3rem;
color: #fff;
text-align: center;
margin: 3rem 0 4rem;
font-weight: 800;
}

.mv .bg{
    padding: 2rem;
    width: 100%;
    background-image: url(../../../images/lp/cookiebannertool/mv_bg_pc.png);
    background-position: center;
    background-size: cover;
    gap: 2.5rem;
    justify-content:center;
    align-items: center;
}



.mv .mv_img{
    width: 47%;
}



/* ------about------- */
.about{
background-color: #fff;
}

.about_logo{
width: 360px;
}

.callout_box{
    position: relative;
    width: 100%;
    height: auto;
}

.callout{
    display: block;
    position: absolute;
    left: 8rem;
    top: -20px;
    z-index: 3;
}

.callout img{
    width: 180px;
    height: auto;
}


/* ------merit------- */
.merit{
background-color: #F8ECC8;
}

.merit .pattern{
    width: 95%;
    max-width: 597px;
    margin-inline: auto;
}




/* ------point------- */
.point{
background-color: var(--red);
position: relative;
}

.point .card_container ul{
    flex-wrap: wrap;
    -webkit-box-align: stretch;
    align-items: stretch;
    -webkit-box-pack: center;
    justify-content: center;
    gap: 16px;
}


.point .card_container .card_point_item{
background-color: #fff;
padding: 0.5rem;
width: 270px;
position: relative;
margin-top: 3rem;
}


.point .card_container .card_point_item .black_border{
    border: 1px solid #000;
padding: 3rem 1.5rem 1rem;
height: 100%;
position: relative;
}



.point .card_container .card_point_item .number_tag{
    position: absolute;
    top: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 0;
    right: 0;
    z-index: 10;
    margin: auto;
    text-align: center;
}



.point .card_container .card_point_item .black_border .card_point_title{
    margin-bottom: 2rem;
    text-align: center;
    font-size: 1.8rem;
}


.point .card_container .card_point_item .black_border .card_point_txt{
    font-size: 1.5rem;
}





/* ------function------- */
.function{
background-color: #fff;
}

 .card_container{
    width: 100%;
}


 .card_container ul{
    width: 100%;
    flex-wrap: wrap;
    -webkit-box-align: stretch;
    align-items: stretch;
    -webkit-box-pack: center;
    justify-content: center;
    gap: 16px;

}

 .card_container ul .card_item{
width: 270px;
border: 1px solid var(--red);
padding: 2rem 1.2rem 1rem;
display: flex;
flex-direction: column;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
align-items: center;
background-color: #fff;
}

 .card_container ul .card_item .img_box{
    width: 65px;
    height: auto;
    margin-block: 1.5rem;
 
}


.card_container ul .card_item .fc03{
    width: 54px;
    height: auto;
}

.card_container ul .card_item .img_box img{
    width: 100%;
    display: block;
}


.card_container ul .card_item .title_box{
display: flex;
flex-direction: column;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
align-items: center;
}





.card_container ul .card_item .title_box .card_title{
color: var(--red);
text-align: center;
font-size: 1.7rem;
  
}



.card_container ul .card_item .card_txt{
font-size: 1.5rem;
width: 100%;
}

.merit .card_container ul .card_item .card_txt{
text-align: center;
}




/* ------movie------- */
.movie{
background-color: #F2F2F2;
}


.movie .movie_container{
    width: 840px;
    margin-bottom: 5rem;
}

video{
    width: 100%;
}



/* ------step------- */
.step{
background-color: var(--red);
}

.step .step_container{
    width: 100%;
    gap: 2rem;
}

.step .step_container .step_item{
    background-color: #fff;
    width: 100%;
    max-width: 750px;
    flex-direction: row;
    padding: 1rem 2rem;
    margin-inline: auto;
    justify-content: center;
    align-items: center;
}

.step .arrow{
    width: 100%;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

/* ナンバーとアイコン */

.step .step_container .step_item .title_step_box{
    gap: 2rem;
    width: 25%;
    align-items: center;
}

.step .step_container .step_item .title_step_box .circle{
max-width: 65px;
width: 100%;
}


.step .step_container .step_item .title_step_box .img_box{
max-width: 65px;
width: 100%;
}

/* 矢印 */
.triangle-down::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-left: 17px solid transparent;
  border-right: 17px solid transparent;
  border-top: 13px solid #f6e2e5;
}

/* 右側テキスト */

.step .step_container .step_item .step_txt_area{
    flex-grow: 1;
    width: 70%;
}


.step .step_container .step_item .step_txt_area .card_step_title{
    margin-bottom: 1.2rem;
    font-size: 1.7rem;
}


/* ------price------- */
.price{
background-color: #F8ECC8;
text-align: center;
scrollbar-color: #888 #F8ECC8;
}

.price .price_table,.price .year01{
    margin-bottom: 6rem;

}

.price .price_table,.price .year01 .year01_container{
   width: 85%;
   margin-inline: auto;
}

.price .price_table,.price .year01 .year01_txt{
    font-size: clamp(1.5rem, 1.265rem + 1.18vw, 2rem);
}


.price .price_table,.price .year01 .year01_txt .plus{
font-size: clamp(1.7rem, 1.324rem + 1.88vw, 2.5rem);
}

.price .year01_inner{
    background-color: #fff;
    padding: 1.5rem;
      margin-inline: auto;
}

.price .small{
    font-size: clamp(1.2rem, 1.153rem + 0.24vw, 1.3rem);
    font-weight: 400;
}


.price .desc {
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 1rem;
}

.price .desc .marker{
    background: linear-gradient(transparent 60%, #FFFE03 60%);
    letter-spacing: 0.1rem;
}

.price .desc .marker .large{
    font-size: 2.8rem;
}


/* 料金表 */


.price .price_table{
    width: 75%;
    display: block;
}

.price .price_table table{
    width: 100%;
    background-color: #fff;
    margin-bottom: 2rem;
}





.price .price_table table tr{
display: flex;
flex-wrap: wrap;
align-items: stretch;
-webkit-box-align: stretch;
justify-content: center;
-webkit-box-pack: center;
text-align: center;
}



.price .price_table table tr th{
   color: #fff;
}

.price .price_table table tr td{
    border: 1px solid #f8ecc8;
    font-size: 2.2rem;
    padding:  0.1em 0;
    letter-spacing: 0.1rem;
}


/* １行目 border*/
.price .price_table table tr:nth-child(1) {
    border-bottom: 10px solid #f8ecc8;   
}

.price .price_table table tr:nth-child(1) th{
    padding: 0.1em 0;
    display: block;
    font-size: 2rem;
}


.price .price_table table tr:nth-child(1) th:nth-child(1) {
    background-color: #ffc365;
}

.price .price_table table tr:nth-child(1) th:nth-child(2) {
    background-color: #ffaa48;
}

.price .price_table table tr:nth-child(1) th:nth-child(3) {
    background-color: #fe8a7e;
}



/* ２行目 border*/

.price .price_table table tr:nth-child(2) {
    border: 4px solid #d0121c;
}

/* 3行目 border */

.price .price_table table tr:nth-child(3){
    border-top: 10px solid #f8ecc8;
}



.price .price_table table tr th:nth-child(1),.price .price_table table tr td:nth-child(1) {
    width: 10%;
}
.price .price_table table tr th:nth-child(2),.price .price_table table tr td:nth-child(2) {
    width: 30%;
}
.price .price_table table tr th:nth-child(3),.price .price_table table tr td:nth-child(3) {
    width: 60%;
}


.price .price_table table tr .small{
    font-size: clamp(1.2rem, 1.153rem + 0.24vw, 1.3rem);
    font-weight: 600;
}

.price .price_table table tr .large{
    font-size: 3.5rem;
}




/* tableWrap */


.price .license{
    width: 100%;
  }

.price .license small{
    display: block;
    width: 85%;
    margin-inline:auto;
}

.price .tableWrap {
    width: 85%;
  overflow-x:auto;
    margin-inline: auto;
}

.price .tableWrap table{
width: 100%;
min-width: 760px;
 text-align: center;
 border-collapse: collapse;
 border-spacing: 0;
 vertical-align: middle;
 }


.price .tableWrap table th {
 padding: 10px;
 background-color: #F3A17C;
 color: #ffffff;
 border: 1px solid #fff;
}

.price .tableWrap table td{
    padding: 10px;
    background-color: #FDF7F0;
    border: 1px solid #fff;
    vertical-align: middle;
 
}


.price .tableWrap table td:first-child {
 background-color:#fcf3e6;
 vertical-align: middle;
 font-size: 1.7rem;
 font-weight: 700;
}

.price .tableWrap table td:nth-child(2) {
 text-align: left;
}




/* ------contract------- */

.contract{
background-color: #fff;
text-align: center;
}


.contract .contract_container{
    justify-content: space-around;
    gap: 5rem;
     font-weight: 600;
     text-align: center;
     width: 100%;
}

.contract .contract_container .box_txt{
    padding: 2rem;
}

.contract .contract_container .box_txt .pc-br{
    display: block;
}

.contract .contract_container .red_box_title{
    color: #fff;
    background-color:var(--red);
    padding: 1rem;
}

.contract .contract_container .blue_box_title{
    color: #fff;
    background-color:#1B1464;
    padding: 1rem;
}


.contract .contract_container .red_box,.contract .contract_container .blue_box{
    width: 45%;
    background-color: #f6f6f6;
}


/* ボタン */

.btn{
display: block;
  border-radius:30px;
  color: #fff;
  text-align: center;
  padding: 0;
  text-decoration: none;
  display: flex;
  text-align: center;
  margin: auto;
  justify-content: center;
  gap: 1.5rem;
  line-height: 55px;
  align-items: center;
}

.btn_icon img{
    display: block;

}

.btn_yellow{
    background-color: #FFFF00;
    width: 330px;
    line-height: 60px;
    color: var(--red);
    font-size: 2rem;
    box-shadow: 0 2px 4px rgba(0,0,0,0.3);
    font-weight: 700;
    transition : 0.3s;
}


/* 
.btn_yellow:hover{

    background-color: color-mix(in srgb,var(--yellow),rgb(249, 175, 3) 30%);

} */

.btn_yellow:hover{
opacity: 0.7;
transition : 0.3s;
}





.contract .pdf{
width: 350px;
background-color:#1B1464;
margin: 3rem auto 10rem;
transition : 0.3s;
}


.contract .pdf:hover{
opacity: 0.7;
transition : 0.3s;
}

.contract .contract_container .red{
width: 260px;
background-color: var(--red);
transition : 0.3s;

}

.contract .contract_container .red:hover{
     opacity: 0.7;
     transition : 0.3s;
}


.contract .contract_container .blue{
width: 260px;
background-color: #1B1464;
transition : 0.3s;
}


.contract .contract_container .blue:hover{
    opacity: 0.7;
    transition : 0.3s;
}


/* ------inquiry------- */

.inquiry{
background-color: #F2F2F2;
text-align: center;
}


.inquiry .inq{
width: 290px;
background-color: #fff;
color: var(--red);
border: 2px solid var(--red);
margin:3rem auto;
transition : 0.3s;
}



.inquiry .inq:hover{
     background-color: #fff7f2;
     transition : 0.3s;
}


/*------- footer ------*/

footer{
    background-color: #333;
    color: #fff;
    text-align: center;
    font-weight: 400;
    padding: 4rem 0;
}

footer a{
    color: #fff;
}
.footer-menu{
    width: 70%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    margin: 2.5rem auto 2rem;
    font-size: 1.4rem;
    font-weight: 300;

}


.footer-menu li:not(:last-child)::after {
    content: "｜";
    display: inline-block;
    color: rgb(255, 255, 255);
    padding: 0px 0.5em;
}


.footer-copyright{
    font-size: 1.2rem;
}

a.external-link::after {
    content: "";
    width: 14px;
    height: 14px;
    display: inline-block;
    margin-left: 4px;
    background: url(../../../images/lp/cookiebannertool/icon_footerlist.svg) no-repeat center center / contain;
}




.cpbtn-wrap{
margin: 4rem 0;
width: 480px;
position: relative;
}

.cpbtn{
font-size: 1.8rem;
  position: relative;
  padding: 1.2rem 7rem 1.2rem 0;
  color: #fff;
  border-radius: 0px;
  background-color: var(--red);
  display: block;
  display: flex;
  justify-content: center;
}


.sla_left,.sla_right,.start{
    display: block;
    margin: 0 0.5rem;
}

.sla_left,.sla_right{
    font-size: 1.8rem;
}


.cmp_gz{
  position: absolute;
  top: -30px;
  right: -30px;
  width: 110px;
  height: 110px;
}


/* クーポン */

.nya-copy-button {
display: flex;
align-items: center;
justify-content: center;
width: 350px;
height: 55px;
background-color: #fff;
color: #333;
font-size: 16px;
cursor: pointer;
border-radius: 30px;
border: none;
margin: 2rem 0;
font-weight: 600;
transition: 0.3s;
}

.nya-copy-button__icon {
margin-right: 8px;
}

.nya-message {
color: #000;
display: none;
font-size: 1.4rem;
margin-bottom: 2rem;
color: var(--red);
}

.cmpn{
    line-height: 2.8rem;
    font-size: 1.6rem;
}





.text_iij{
    display: block;
    margin-top: 5rem;
    text-align: center;
}












/*---------- tablet ----------*/

@media screen and (max-width: 991px) {
    

.site-width{
    width: 100%;
    
}
/* headerロゴ */
.header-logo-item img {
    width: 220px;
}


/* 改行なし */
.pc-br {
    display: none;
  }

/* 改行あり */
.tb_br{
    display: block;
}

.header-logo-item{
    padding:2rem 1vw 1rem;
}

/* セクション共通 */

.about,.merit,.point,.function,.movie,.step,.price,
.contract,.inquiry{
    padding: 4.5rem 7vw;
}


.card_container ul .card_item{
width: 100%;
padding: 1rem 1.5rem;
}

.mv{
   padding-inline: 0;
}

.mv .btn_pc{
display: none;
}


.mv .btn_sp{
display: block;
margin: 1rem 0 2rem;
}




/* カード　アイコン横並び */
.card_container ul .card_item .sp_flex{
    width: 100%;
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
gap: 1rem;
}



.card_container ul .card_item .title_box{
  margin-bottom: 1rem;
}




.card_container ul .card_item .title_box .card_title{
text-align: left;
font-size: 1.6rem;
  
}



.card_container ul .card_item .card_txt{
font-size: 1.5rem;
}

.merit .card_container ul .card_item .card_txt{
text-align: left;
}

.merit .pattern {
    width: 75%;
}


.card_container ul .card_item .img_box{
    margin-block: 0;
    width: 54px;
 
}



.price .price_table,.price .year01 .year01_container{
    width: 100%;
}
.price .tableWrap {
    width: 100%;
}


.price .desc {
    font-size: 1.4rem;
}




.point .card_container .card_point_item{
width: 100%;
}


.about_logo {
    width: 280px;
}

.callout img{
width: 160px;
}

.callout{
    left: 3vw;
    top: -30px;
}



.mv .mv_text{
width: 74%;
}


.mv .mv_copy{
font-size:3.2rem;
color: #fff;
text-align: center;
margin: 1.5rem 0 0;
font-weight: 800;
}



.mv .mv_img{
    width: 75%;
}


.mv{
    margin-bottom: 30px;
}
.about{
    padding-top: 5rem;

}

.mv .bg {
     width: 100%;
padding: 3.5rem 5% 2.3rem;
background-image: url(../../../images/lp/cookiebannertool/mv_bg_sp.png);
    background-position: center;
    background-size: cover;
    gap: 0;
}



.price .license small{
    width: 100%;
}


.footer-menu{
    font-size: 1.3rem;
}

  

.step .step_container .step_item{
    gap: 0.6rem;
}



.step .step_container .step_item .title_step_box .img_box{
max-width: 56px;
}

.movie .movie_container{
    width: 100%;
}



.text_iij{
    margin-top: 5rem;
    text-align: left;
}


}



/* -------- sp -------*/

@media screen and (max-width: 767px) {

body{
font-size: 1.4rem;
}

/* セクション共通 */

.about,.merit,.point,.function,.movie,.step,.price,
.contract,.inquiry{
    padding: 4.5rem 5vw;
}



.header-logo-item{
    padding:1rem 3vw;
}

/* headerロゴ */
.header-logo-item img {
    width: 140px;
}
/* スマホ用改行 */
.sp_br{
    display: block;
}

.pc_mb_6rem{
    margin-bottom: 2rem;
}

h2{
    margin-bottom: 4rem;
}

h3{
    margin-bottom: 2rem;
}

.mv{
    margin-bottom: 30px;
}
.about{
    padding-top: 80px;

}



.card_container ul .card_item .title_box .card_title{
font-size: 1.5rem;
  
}



.card_container ul .card_item .card_txt{
font-size: 1.4rem;
}


.point .card_container .card_point_item .black_border .card_point_txt{
    font-size: 1.4rem;
}

.price .price_table,.price .year01{
    margin-bottom: 4rem;
}




.step .step_container{
    width: 100%;
    gap: 1rem;
}


.step .step_container .step_item{
    gap: 1.2rem;
    padding: 1rem;
}


.step .step_container .step_item .title_step_box{
    gap: 0.7rem;
    flex-direction: column;
    width: 20%;
}

.step .step_container .step_item .step_txt_area{
    width: 70%;
}

.step .step_container .step_item .title_step_box .circle{
max-width: 50px;
}


.step .step_container .step_item .title_step_box .img_box{
max-width: 50px;
}


.triangle-down::after {
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
  border-top: 10px solid #FFDCE2;
}


.point .card_container .card_point_item .black_border .card_point_title{
    font-size: 1.7rem;
}


.point .card_container .card_point_item .black_border .card_point_txt{
    font-size: 1.4rem;
}



.price .price_table{
    width: 100%;
    display: block;
}

.price .year01_inner{
    padding: 1rem;
}

/* 契約ボックス */
.contract .contract_container .red_box,.contract .contract_container .blue_box{
    width: 100%;   
}

.contract .contract_container{
    gap: 4rem;
}



.merit .pattern {
    width: 100%;
}


.callout{
    left: 5vw;
    top: -90px;
}



.about_logo {
    width: 240px;
}



.btn{
  line-height: 46px;
  gap: 0.5rem;
}

.btn_yellow{
    width: 290px;
    line-height: 50px;
    font-size: 1.8rem;
}


.contract .contract_container .red{
width: 250px;
}


.contract .contract_container .blue{
width: 250px;
}

.contract .pdf{
    width: 290px;
    margin: 1rem auto 7rem ;
}

.inquiry .inq{
    width: 250px;
}

.inquiry small{
    text-align: left;
}

.mv .bg {
padding: 2.7rem 5% 2.3rem;
gap: 1rem;
}

.mv .mv_img {
    width: 100%;
}

.mv .mv_text {
    width: 96%;
}


.mv .mv_copy{
font-size:2.2rem;
color: #fff;
text-align: center;
margin: 2rem 0 0;
font-weight: 800;
}


.mv .btn_sp{
display: block;
margin: 0.8rem 0;
}



.price .price_table table tr:nth-child(1) th{
    padding: 0.1em 0;
    display: block;
    font-size: 1.3rem;
}


.price .price_table table tr td{
    font-size: 1.5rem;
}


.price .desc .marker .large{
    font-size: 2.4rem;
}

.price .price_table table tr .large{
    font-size: 2.7rem;
}

.price .price_table table tr:nth-child(2) {
   border: 3px solid #d0121c;
}



.card_container ul .card_item .img_box{
    width: 50px;
 
}


.card_container ul .card_item .fc03{
    margin-block: 0;
    width: 50px;
 
}

.point .card_container .card_point_item .number_tag img{
    width: 48px;
}

.letter_wide{
    text-align: left;
}


.cpbtn-wrap{
margin: 3rem 0 2.5rem -20px;
width: clamp(18.125rem, 4.255rem + 69.35vw, 37.5rem);
}

.cpbtn{
font-size: 1.4rem;
  padding: 1.0rem 6rem 1.0rem 0;
  display: block;
  display: flex; 
}



.sla_left,.sla_right{
    font-size: 2.5rem;
    margin-top: auto;
}


.cmp_gz{
  position: absolute;
  top: -17px;
  right: -21px;
  width: 95px;
  height: 95px;
  
}


.sla_left,.sla_right,.start{
    margin-inline: 0.3rem;
}


/* クーポン */

.nya-copy-button{
    width: 290px;
    height: 46px;
}



}