/* CSS Document */
/*========料金表CSS=============*/
@import url("/service/mobile/css/price_table.css");
/*========[/料金表CSS]=============*/

.m-fs-36 {
	font-size: 36px;
}
.m-relative {
	position: relative;
}

.m-media.max70 {
    max-width: 70%;
    margin-left: auto !important;
    margin-right: auto !important;
}

main.content, main.l-content {
    overflow: hidden;
}

picture.normal img,
picture img.img-bnr {
	width: auto !important;
	max-width: 100% !important;
	height: auto;
	
}
span.m-nowrap {
   display: inline-block;
   white-space: nowrap;
}
 span.m-sp-hide { display: none;}

a.m-btn.m-btn-B[data-border-color="mobile"],
a.m-btn.m-btn-C[data-border-color="mobile"] {
   color: #00a4a8 !important;
   font-weight: bolder;
}
a.jm-nav__menuLink:hover {
    color: #00a4a8 !important;
}
.jm-nav__menuLink:hover::before,
.jm-nav__menuLink:hover::after {
    color: #00a4a8 !important;
  }

.jm-nav__submenu a:hover {
    color: #00a4a8 !important;
}

main.content,
main.l-content {
	background-color: #FFF !important;
    height: auto !important;
      padding-top: 1px;
}

.l-contentMain {
    width:  100% !important;
}

.wm_flex {
   display:  flex;
}

.wm_menu_ap01 li {
  width: 100%;
  padding:  5px;
}
.wm_menu_ap02 li {
  max-width: 100%;
  padding-right:  5px;
}

.wm_menu_ap02 li span {
    display: block;
}

.wm_menu_ap02 li:last-child {
  padding-right:  0px;    
}

a.wm_change,
a.wm_cart,
a.wm_mail{
  position: relative;
}

a.wm_cart::before {
position: relative;
content: "";
display: inline-block;
width: 40px;
height: 30px;
background-image: url("/resources/images/icon/icon_jm_btn_entry.svg");
background-position: 0 0;
background-repeat: no-repeat;
background-size: cover;
}

a.wm_mail::before {
position: relative;
content: "";
display: inline-block;
width: 40px;
height: 30px;
background-image: url("/service/mobile/images/css/ico_mail.png");
background-position: 0 0;
background-repeat: no-repeat;
}

a.wm_change::before {
position: relative;
content: "";
display: inline-block;
width: 50px;
height: 30px;
background-image: url("/service/mobile/images/css/ico_change2.png");
background-position: 0 0;
background-repeat: no-repeat;
}
a.wm_change2::before {
/*position: absolute;
content: "";
display: inline-block;
left:  0px;
top: 0px;
width: 30px;
height: 30px;
background-image: url("/service/mobile/images/css/ico_change.png");
background-position: 0 0;
background-repeat: no-repeat;
background-size: contain;*/
}
.m-btn.m-color-mobile.type1 {
    margin: auto;
    width: 50%;
    min-width: 240px;
    border-radius: 0;
    border: 0;
    padding: 10px;
    position: relative;
    background: transparent;
    vertical-align: middle;
}
a.m-btn.m-color-mobile.type1.wm_change2{
padding-top: 0 !important;
padding-bottom: 0 !important;
margin-left: auto !important;
margin-right: auto !important;
color: #000 !important;
}

a.m-btn.m-color-mobile.type1.wm_change2.pricemore {
font-size: 16px !important;
font-weight:  normal !important;
}
a.m-btn.m-color-mobile.type1.wm_change2.flow {
font-size: 16px !important;
font-weight:  normal !important;
}

a.m-btn.m-bg-white.pricemore,
a.m-btn.m-bg-white.flow{
	font-weight: normal !important;
}
a.m-btn[data-arrow-color="black"]::after {
   border-color: #000 !important;
}

a.m-btn.pricemore[data-arrow-color="black"]::after,
a.m-btn.flow[data-arrow-color="black"]::after {
   border-color: #000 !important;
   right:  -15px!important;
   font-weight:  normal !important;
   border-width:  1px !important;
}

a.m-btn[data-border-color="no"]::after {

}

#newContents.isTypeV3 ,
#newContents .newMainAreaInner.isTypeV3 {
    margin-left: auto;
    margin-right: auto;
}

span.icon {
     font-size: 10px;
    max-width: 90px;
    margin: 0 auto;
    color: #fff;
    font-weight: bold;
    display: inline-block;
    padding: 2px 5px;
    border-radius: 5px;
   white-space: nowrap;
}

span.icon.osusume {
    background-color: #f29c39;
}
span.icon.ichioshi {
    background-color: #e83416;
}
span.nowrap {
   white-space: nowrap;
   display: inline-block;
}


.m-color-yellow {
color: yellow;
}

.m-color-link {
   color:  darkblue;
   text-decoration: underline;
}


.wm_able {
   background: #FCFCEC;
}

.wm_NG {
   background-color: #EFEFEF;
}

.wm_txtNG::before {
   content:  "×";
   color: #CCC;
   margin-left: 0.5em;
}

.m-anc-link-box .m-anc-link-fixed li a::after{
   left: calc(50% - 4px) !important;
}
.m-anc-link-box .m-anc-link-fixed li a[data-arrow="right"]::after {
   left:  auto !important;
}

th.ttl_price-mb {
   display:  table-cell !important;
   width:  auto;
}
.m-mb-60pc {
      margin-top: 0;
      margin-bottom: 10px;
}
.m-grid-row {
   margin:  0 auto;
}

.m-align-items-center {
    align-items: center;
}
.m-tab__panel[data-color="mobileA"] {
   border-color:  #00a4a8;
}
.m-tab__panel[data-color="mobileA"] a{
   background-color: #F9F9F9;
   color: #666;
   margin-top: 6px;
   font-size: 14px;
   font-weight: normal;
}
.m-tab__panel[data-color="mobileA"] a.is-current{
   background: #FFF ;
   color: #000 ;
   background-color: rgb(255,255,255,1.0);
   border-color:  #00a4a8;
   margin-bottom: -3px;
   margin-top: 0px;
   font-weight: bold;
   font-size: 16px;
}


.wm_flex-end {
    display: flex;
    justify-content: flex-end;
}

.wm_flex-end li {
 text-indent: 0rem;
}

.wm_flex-end li a {
   white-space: nowrap;
}

.wm-fs-l {
   font-size: 110%;
}
.wm-fs-ll {
   font-size: 120%;
}


div.scroll-table {
  overflow: auto;
  white-space: nowrap;


}
 div.scroll-table table {
    margin: 0;
  }

.l-contentFoot {
   margin:  30px 0 0 0 !important;
}

.device_item .m-grid-col {
   padding-bottom: 22px;
}

@media screen and (max-width: 767px) {   
.wm_flex-end li a,
 .m-circle-box span　{
   font-size: 11px ;
}

   .sim_plan_table {
      
   }
   .m-mt-5-sp {
      margin-top: 5px;
   }
   
   .sim_plan_table sup {
      white-space: nowrap;
   font-size: 9px !important;
   }
   
.sim_plan_table table.price-detail th,
.sim_plan_table table.price-detail td {
   padding: 5px;
   font-size: 11px !important;
}   

.sim_plan_table .m-fs-m {
    font-size: 11px !important;
}
 .sim_plan_table .m-fs-l {
    font-size: 12px !important;
}
 .sim_plan_table .m-fs-ll {
    font-size: 14px !important;
}   
   .m-anc-link-box .m-anc-link-fixed li a::after {
       position: absolute;
       content: "";
       display: block;
       width: 7px;
       height: 7px;
       top: 85%;
       right: 50%;
       margin-right: -3px;
   }
   .wm_adj14 {
      font-size: 14px !important;
   }   
a.m-btn.m-color-mobile.type1.wm_change2.pricemore {
font-size: 15px !important;
font-weight:  normal !important;
}
a.m-btn.m-color-mobile.type1.wm_change2.flow {
font-size: 15px !important;
font-weight:  normal !important;
}
a.m-btn.pricemore[data-arrow-color="black"]::after {
   /* right: 5px !important;*/
    position: static;
    display: inline-block;
    margin-left: 1em;
}
a.m-btn.flow[data-arrow-color="black"]::after {
    /**/
    position: static;
    display: inline-block;
    margin-left: 1em;
}
    
}

a.no_radius,
a.btn[data-border-radius="0"] {
   border-radius:  0 !important;
}


a.m-btn.type_cp0218 {
   position: relative;
   text-align: left;
   padding: 0;
}


a.m-btn.type_cp0218 div.wm_flex {

}

.wm_icon1,
.wm_txt1{
display: flex;
 /*flex: 1 0 auto; /* fix IE11 */
  display: -webkit-box;
  display: -ms-flexbox;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

div.wm_icon1 {
   text-align: center;
   padding: 5px 10px;
   background-color: #29a5a9;
   color: #fff;
   border-top-left-radius: 5px;
   border-bottom-left-radius: 5px;
   width: 120px;
   line-height: 1.25;
}

.wm_txt1{
padding: 10px 10px 5px;
text-align: center;
width: calc(100% - 120px);
line-height: 1.2;
}

@media screen and (max-width: 767px) {
   .m-mobile-item[data-no-arrow="pc"][data-arrow-type="right"]::after　{
      right: 10px !important;
   }
   .m-pd-adj_otokuv2 {
   padding-left: 15px;
   padding-right: 15px;
   }
}

@media screen and (min-width: 768px) {
	.m-mb-0-pc {
		margin-bottom: 0 !important;
	}
	
	.m-pb-0-pc {
		padding-bottom: 0 !important;
	}
	.m-pb-20-pc {
		padding-bottom: 20px !important;
	}
	.m-pb-30-pc {
		padding-bottom: 30px !important;
	}
	.m-pb-40-pc {
		padding-bottom: 40px !important;
	}
	.m-fw-bold-pc {
		font-weight: bold;
	}
	
   .cell-col-2 {
      width: 16.6666667% !important;
   } 
   .cell-col-3 {
      width: 25% !important;
   } 
   .cell-col-4 {
      width: 33.333333% !important;
   }   
   .cell-col-6 {
      width: 50% !important;
   }
   .m-media .m-mt-pc {
      margin-top:  20px !important;      
   }
.m-mt-60-pc　{
      margin-top:  60px !important;
}
   
a.m-btn.pricemore.m-w140 {
width: 110px !important;
}   
a.m-btn.m-color-mobile.type1.wm_change2.pricemore {

}
   
   .m-mb-60pc {
      margin-bottom: 60px;
   }
	.m-grid-col.m-pb-10.m-pr-5[data-col="4"] {
		padding-bottom: 0 !important;
	}
   th.wm_item, td.wm_item {
      white-space: nowrap;
   }
   span.m-sp-hide { display: inline;}
   
   .m-pb-5-pc {
      padding-bottom: 5px !important;
   }

}


@media screen and (min-width: 1140px) {
   /* .jm-nav__menu a, .jm-nav__menu span　{
            color:  #333 !important;
            text-decoration:  none !important;
    }*/
}

@media screen and (max-width: 1139px) {
   main.l-content {
      padding-top: 1px;
   }
}
a.m-underline {
   text-decoration: underline;
}


/*==== かけ放題パック（2021.08.02）===ここから===*/
.m-grid-row.kakeho-pack {
    margin-left: -5px;
    margin-right: -5px;
    width: calc(100% + 10px);
}

.kakeho-box {
    border: 1px solid #00a4a8;
    padding: 5px 10px;
    margin: 0 5px;
    position: relative;
}

.kakeho-box.type1 {
    border-left: 2px solid #00a4a8 !important;
    border-right: 1px solid #00a4a8 !important;
    border-top: 2px solid #00a4a8 !important;
    border-bottom: 2px solid #00a4a8 !important;
    padding: 0px 0 5px;
    margin: 0 -1px 0 0;
    position: relative;
}
.kakeho-box.type2 {
    border-left: 1px solid #00a4a8 !important;
    border-right: 2px solid #00a4a8 !important; 
    border-top: 2px solid #00a4a8 !important;
    border-bottom: 2px solid #00a4a8 !important;
    padding: 0px 0 5px;
    margin: 0 0 0 0px;
    position: relative;
}
/**/
.kakeho-box span.fukidashi {
    position: absolute;
    left: 10px;
    top: -30px;
    color: #e93817;
    background-image: url("/service/mobile/images/css/icon_fukudashi.png");
    background-repeat: no-repeat;
    background-size: contain;
    padding: 20px 0;
    font-size: 12px;
    width: 60px;
    height: 60px;
    display: block;
    text-align: center;
    font-weight: bold;
}/**/
span.fukidashi2 {
    color: #e93817;
    background-image: url("/service/mobile/images/css/icon_fukudashi.png");
    background-repeat: no-repeat;
    background-size: contain;
    padding: 20px 0;
    font-size: 12px !important;
    width: 60px;
    height: 60px;
    margin: -10px auto 5px;
    display: block;
    text-align: center;
    font-weight: bold;
}

.fukidashi_block {
    margin-left: auto;
    margin-right: auto;
    width: 220px;
    background-image: url("/service/mobile/images/css/icon_fukudashi.png");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    padding: 60px 0;
    font-size: 22px;
    text-align: center;
    font-weight: bold;
}

.kakeho-box h3 {
    color: #e93817;
    font-weight: bold;
    font-size: 22px;
    text-align: center;
    padding: 0;
    margin: 0;
}

.kakeho-box h3.ttl {
    color: #FFFFFF !important;
    background-color: #00a4a8 !important;
    font-weight: bold;
    font-size: 22px;
    text-align: center;
    padding: 5px;
    margin: 0 0 5px;
}


.kakeho-box .kakeho-price-txt {
    padding:  0.25em 0;
    border-bottom: 2px solid #00a4a8;
    text-align: center;
    font-weight: bold;
    margin: 0 0 5px 0;
    line-height: 1.2;
}

.kakeho-box span.monthly {
    display: inline-block;
    width:  12px;
    margin: 0 1px;
    line-height: 1;
    font-size: 12px;
}

.kakeho-box span.price {
    display: inline-block;
    font-size: 28px;
}
.kakeho-box span.with_tax {
    display: inline-block;
    white-space: nowrap;
}
.kakeho-box .kakeho-txt {
    text-align: center;
    font-weight: bold;
    font-size: 14px;
    padding: 1em 0;
    margin: 0;
    line-height: 1;
}
.kakeho-box .kakeho-txt2 {
    text-align: center;
    font-weight: bold;
    font-size: 14px;
    padding: 0;
    margin: 0;
    line-height: 1.5;
}
 .kakeho-box .kakeho-txt span.fs-l {
    font-size: 24px;    
}

    div.table_layout_pc {
                display: table;
                line-height: 1;
                margin-left: auto;
                margin-right: auto;
    }

    div.table_layout_pc  div {
        display: table-cell;
        vertical-align: middle;
        text-align: center;
        line-height: 1;
    }

    div.table_layout_pc  div.half {
        width:  50%;
    }
.m-fs-m.type01 {
    font-size: 12px !important;
}

	.arr-r {
        position: relative;
        padding-right: 0.5em;
        display: block;
        }



.arr-r::before {
    transition: .25s;
    position: absolute;
    content: '';
    width: 11px;
    height: 11px;
    border-top: solid 2px #00a4a8;
    border-right: solid 2px #00a4a8;
    transform: rotate(45deg);
    right: 30px;
    top: 50%;
    margin-top: -4.5px;
}

table.kakeho_price_table {
    border: 2px solid #00a4a8 !important;
    border-collapse: collapse !important;
    table-layout: fixed !important;
}

table.kakeho_price_table thead th {
    padding: 0.25em 1em;
    font-weight: 700;
    text-align: center;
    border-right:  1px solid #FFF;
    color: #FFFFFF !important;
    background-color: #00a4a8 !important;
    font-size: 24px;
}
table.kakeho_price_table thead th:last-child {
    border-right:  0px solid #FFF;
}
table.kakeho_price_table tbody td {
    border-bottom: 2px solid #00a4a8 !important;
    padding: 1em;
    font-weight: 700;
    text-align: center;
}
table.kakeho_price_table tbody td span {
    font-size: 24px;
} 
table.kakeho_price_table tbody td span.price {
    font-size: 32px;
} 
.kakeho_price_table tbody td.d1 {
    border-right:  1px solid #00a4a8 !important;
}
.kakeho_price_table tbody td.d2 {
    border-right: 2px dotted #00a4a8 !important;
    position: relative;
}

table.kakeho_price_table tbody td.d2::after {
content: "+";
color: #00a4a8 !important;
font-size: 48px;
position: absolute;
right: -21px;
top: calc(50% - 36px);
}

.android table.kakeho_price_table tbody td.d2::after {
right: -17px;  
}
.ipad table.kakeho_price_table tbody td.d2::after {
        right: -18px;
	}
	.win table.kakeho_price_table tbody td.d2::after {
	right: -21px;	
	}
	.mac table.kakeho_price_table tbody td.d2::after {
	right: -22px;	
	}
.kakeho_price_table tbody td.d3 {
    
}

@media screen and (max-width: 1139px) {
    div.table_layout_pc {

    }

    div.table_layout_pc  div {

    }

}

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

    .m-pb-0-sp {
        padding-bottom: 0px !important;
    }
    .m-pb-10-sp {
        padding-bottom: 10px !important;
    }
.m-tab__content.m-m-0 {
margin: 0 0px;
border-left: 1px solid #b5b5b5;
border-right:  1px solid #b5b5b5;
}
.m-tab__panel.m-m-0 {
    margin: 0px;
    padding: 0 10px;
    border-bottom-width: 3px;
}
.kakeho-box.type1,
.kakeho-box.type2 {
    border: 2px solid #00a4a8 !important;
}
   
    
.kakeho-box h3 {
    font-weight: bold;
    font-size: 22px;
    text-align: center;
}
.kakeho-box.type1 h3.ttl,
.kakeho-box.type2 h3.ttl {
    font-size: 22px;
    text-align: center;
}
    
   .kakeho-box .kakeho-txt {
    padding: 0.25em 0;
    }
    
table.kakeho_price_table thead th {
    font-size: 16px;
}
    table.kakeho_price_table tbody td {
        font-size: 11px;
    }
    table.kakeho_price_table tbody td span {
        font-size: 16px;
    }
    table.kakeho_price_table tbody td span.price {
        font-size: 24px;
    }
    

	
    div.table_layout_pc {
        display: block;
    }
    div.table_layout_pc  div {
        display: block;
        margin-bottom: 0.5em;
    }
    div.table_layout_pc  div.half {
        width:  100%;
    }
    .kakeho-box {
        padding: 10px 10px;
    }
    
    /*    */
.kakeho-box span.fukidashi {
    top: -35px;
    left: calc(100% - 40px);
    padding: 18px 0;
    font-size: 10px;
    width: 50px;
    height: 50px;
}
	table.kakeho_price_table tbody td.d2::after {
		right: -13px;
		top: calc(50% - 24px);
		font-size: 33px;
	}

	.iphone table.kakeho_price_table tbody td.d2 {
		border-right:1px dotted #00a4a8 !important;
	}
	
	.iphone table.kakeho_price_table tbody td.d2::after {
        right: -12px;
	}
    
	.android table.kakeho_price_table tbody td.d2::after {
        right: -11px;
	}
    .mac table.kakeho_price_table tbody td.d2::after {
        right: -14px;
    }
	.win table.kakeho_price_table tbody td.d2::after {
	right: -14px;	
	}
span.fukidashi2 {
    position: absolute;
    top: -5px;
    left: calc(55% - 160px);
    padding: 18px 0;
    font-size: 10px;
    width: 50px;
    height: 50px;
}
    
    picture.normal.sp-adj img {
    width: auto !important;
    max-width: 70% !important;
    height: auto;
    }    
    
    .fukidashi_block { 
        width: 130px;
        padding: 40px 0;
        font-size: 14px;
    }
    
    .arr-r::before {
        width: 6px;
        height: 6px;
        border-top: solid 1px #00a4a8;
        border-right: solid 1px #00a4a8;
        right: 8px;
    }
    .m-nowrap.m980-adj01 {
        font-size: 13px;
    }
}
@media screen and (max-width: 512px) {
    .kakeho-box span.price { font-size: 20px;}
    .kakeho-box h3 {   font-size: 14px; }
    .kakeho-box h3.type2 {   font-size: 20px; }
    .m-list.m-list-kome.m-fs-m {
        font-size: 9px !important;
    }

}
/*==== かけ放題パック（2021.08.02）===ここまで===*/


/*==================================*/
.m-accordion-hdg-qa a {
    text-decoration:  none !important;
}
@media screen and (min-width: 768px) {
    .kakeho-box.type2 h3.ttl {
        border-left: 1px solid #FFF;
        margin-left: -1px !important;
    }
    .m-txt-ct-pc {
            align-items: center !important;
            display: flex !important;
            justify-content: center !important;
        }
    
    .kakeho_price_table tbody td.r1 {
        padding: 25px 1em;
    }
    
    
}

a.bnr img {
    border:  1px solid #CCC;
}

  a.js-accordion {
        color:  #333;
    }    
    
/* ------------------------------------
 * 
 * --------------------------------- */
a.anker-type1:hover {

}
a.anker-type1::after {
    content: "▼";
    color:  #00a4a8;
    display: block;
    margin: 0;
}
a.anker-type1::after:hover {
    text-decoration: none !important;
}
.m-txt-bt {
  align-items:end;
  display: flex !important;
  justify-content: center !important;
}

.m-txt-bt-pc {
  align-items:end;
  display: flex;
  justify-content: center;
}

@media screen and (min-width: 768px) {
    a.anker-type1 {
        position: relative;
    }
    a.anker-type1::after {
        display: inline-block;
        margin-left: 5px;
    }
}

@media screen and (max-width: 767px) {
  .m-txt-bt-pc {
    align-items:end;
    display: block;
    justify-content: normal;
  }

    .m-txt-bt-sp {
    align-items:end;
    display: flex;
    justify-content: center;
  }
}




a.bnr-otoku {
    display: block;
    border: 2px solid #CCC;
    border-radius:  6px;
    padding: 6px;
}
a.bnr-otoku.uq {
    
    border: 2px solid #0091d7;
    
}

@media screen and (min-width: 768px) {
  .jmcp  section:last-child {
        text-align: center;
        margin-bottom: 40px;
    }
	.m-p-25-pc {
	padding: 25px !important;
	}	
}

.jmcp * {
    font-family: 'NotoSansJP', sans-serif;
    font-feature-settings: "palt" 1;
}
