@media screen and (max-width: 640px) {
  .spNone {
    display: none;
  }
}
.clearfix {
  zoom: 1;
}
.clearfix:before, .clearfix:after {
  content: "";
  display: table;
}
.clearfix:after {
  clear: both;
}

@media screen and (min-width: 641px) {
  header {
    display: block;
  }
  header .headerInner {
    height: auto;
    background: #000;
  }
  header .headerInner .logo {
    padding: 16px 0;
    /*li*/
  }
  header .headerInner .logo li {
    display: inline-block;
  }
  header .headerInner .logo li:first-child {
    padding-right: 76px;
    background: url("/tv/images/logo_center.png") right 32px bottom no-repeat;
    background-size: 13px auto;
  }
  header .headerInner .logo li a img {
    height: 32px;
  }
  header .headerInner .tel {
    position: absolute;
    top: 18px;
    right: 40px;
  }

  /*header*/
  .pcNone {
    display: none;
  }

  .top nav li a.top span, .price nav li a.price span, .flow nav a.flow span, .attention nav li a.attention span, .faq nav li a.faq span {
    border-bottom: 5px solid #999999 !important;
    color: #424242;
  }

  .blueTable table {
    width: 100%;
  }

  footer .pagetop {
    bottom: 120px;
    width: 88px;
  }

  .contents {
    padding-top: 20px;
    text-align: left;
    /* padding-left: 245px; */
    font-size: 16px;
    /*section*/
    /*plan*/
    /*plan*/
    /*point*/
    /*reco*/
    /*reco*/
    /*price*/
    /*campaign*/
    /*campaign*/
    /*second*/
    /*second*/
    /*attention*/
    /*attention*/
    /*flow*/
    /*flow*/
    /*secConv*/
    /*secConv*/
  }
  .contents .kv {
    background-size: auto auto;
    padding: 0;
    vertical-align: 0!important;
    line-height: 0!important;
  }
  .contents .kv .kvInner {
    width: 960px;
    margin: 0 auto;
    box-sizing: border-box;
    padding: 20px 0 10px 50px;
  }
  .contents .kv .kvInner h1 {
    padding: 0 0 20px;
  }
  .contents .kv .kvInner .kvDate {
    padding: 10px 0;
    width: 478px;
    font-size: 22px;
    margin: 0 0 10px;
  }
  .contents .kv .kvInner ul {
    width: 478px;
    position: static !important;
    text-align: center;
  }
  .contents .kv .kvInner ul li {
    font-size: 14px;
    text-align: center;
  }
  .contents nav {
    padding: 15px 0 0;
    border-bottom: 1px solid #ccc;
    border-top: none;
  }
  .contents nav ul {
    width: 960px;
    margin: 0 auto;
  }
  .contents nav ul li:nth-child(2) a span, .contents nav ul li:nth-child(4) a span {
    padding-top: 0;
  }
  .contents nav ul li a {
    padding: 24px 0 0px;
    font-size: 16px;
  }
  .contents nav ul li a span {
    padding-bottom: 8px;
    border-bottom: 5px solid #ffffff;
    color: #424242;
  }
  .contents nav ul li:nth-child(1) a span,
  .contents nav ul li:nth-child(3) a span,
  .contents nav ul li:nth-child(5) a span {
    padding-bottom: 16px;
  }
  .contents nav ul li a:hover span {
    border-bottom: 5px solid #999999;
  }
  .contents section {
    /*.inner*/
    /*.inner*/
    /*.inner*/
  }
  .contents section h2 {
    font-size: 38px;
    margin: 0 0 50px;
    padding: 0 5px;
  }
  .contents section h2 span {
    font-size: 36px;
  }
  .contents section .topList {
    width: 950px;
    margin: 0 auto;
    text-align: right;
  }
  .contents section .inner1 {
    width: 880px;
    padding: 100px 0 80px;
  }
  .contents section .inner2 {
    width: 700px;
    padding: 100px 0 100px;
  }
  .contents section .inner3 {
    width: 880px;
    padding: 80px 0 120px;
  }
  .contents section .blueBox {
    padding: 0 30px;
  }
  .contents section .blueBox .numH3 {
    padding: 0 0 28px 76px;
    margin: 24px 0 28px;
    font-size: 34px;
  }
  .contents section .blueBox .numH3 span {
    font-size: 28px;
    left: 0;
    padding: 4px 16px;
  }
  .contents section .blueBox .imgContent {
    padding: 0 0 50px 300px;
    background-position: 46px center;
  }
  .contents section .blueBox .imgContent h4 {
    font-size: 28px;
    margin: 0 0 30px;
  }
  /* ::::: ひかりTVとは ::::: */
  /* ::::: plan section ::::: */
  .contents .secPlan {
    /*.planArea*/
  }
  .contents .secPlan p.leadTxt, .contents .secPlan p.bottomTxt {
    text-align: center;
    font-size: 20px;
    margin: 0 0 50px;
  }
  .contents .secPlan .planArea {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin-bottom: 50px;
  }
  .contents .secPlan .planArea .planBlock {
    border: 10px solid #52b0e4;
    width: 424px;
    padding: 30px 15px;
  }
  .contents .secPlan .planArea .planBlock .planTxt {
    padding: 0 0 0 120px;
    text-align: left;
    margin: 30px 0 0;
    background-position: 22px top;
    min-height: 64px;
  }
  .contents .secPlan .planArea .planBlock .planTxt > span {
    font-size: 20px;
  }
  .contents .secPlan .planArea .planBlock .planTxt > span > span {
    font-size: 34px;
  }
  /* ::::: 共通ボタン ::::: */
  .cnBtn {
    width: 370px;
    margin: 0 auto;
    border-radius: 58px;
    padding: 15px 0 !important;
    display: block;
    text-decoration: none;
    font-weight: bold;
    -webkit-border-radius: 58px;
    -moz-border-radius: 58px;
    -ms-border-radius: 58px;
    -o-border-radius: 58px;
  }
  .cnBtn a {
    text-decoration: none;
  }
  /* ::::: point section ::::: */
  .contents .secPoint {
    background-color: #E2EBF0;
  }
  .contents .secPoint .pointArea {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .contents .secPoint .pointArea .pointBlock {
    display: flex;
    margin: 0 0 22px;
    background: #ffffff;
    padding: 5px;
  }
  .contents .secPoint .pointArea .pointBlock dd {
    display: flex;
    align-items: center;
    padding: 0 30px 0;
  }
  .contents .secPoint .pointArea .pointBlock dd div span {
    font-size: 18px;
    font-weight: bold;
    display: block;
    margin-bottom: 16px;
    padding-left: 0;
    height: 2vw;
  }
  .contents .secPoint .pointArea .pointBlock dt {
    display: block;
    position: static;
    width: 250px;
    height: auto;
  }
  .contents .secPoint .pointArea .pointBlock dt img {
    display: block;
    width: 250px;
    max-width: 250px;
  }
  .contents .secPoint .pointArea .pointBlock p:nth-child(1) {
    margin-bottom: 15px;
  }
  .contents .secPoint .pointArea .pointBlock h3 {
    padding: 180px 0 20px;
    background-size: 138px 116px;
    font-size: 28px;
  }
  /* ::::: recommend section ::::: */
  .contents .secReco {
    background: #ffffff;
  }
  .contents .secReco .blueBox {
    padding-bottom: 40px;
  }
  .contents .secReco .blueBox .imgContent {
    padding: 0 0 0 300px;
    min-height: 194px;
    background-position: 30px center;
  }
  /* ::::: recommendplan section / 料金テーブル ::::: */
  .contents .recommendPlan {
    background-color: #E2EBF0;
  }
  .contents .recommendPlan .lightBox {
    background-color: #ffffff;
    box-shadow: 10px 10px 10px 0 rgb(0 0 0 / 16%);
    padding: 50px 40px;
  }
  .contents .recommendPlan .sec__heading {
    margin-bottom: 52px;
  }
  .contents .recommendPlan__title {
    text-align: center;
    font-size: 30px;
    font-weight: bold;
    margin-bottom: 33px;
  }
  .contents .recommendPlan__titleIcon {
    font-size: 16px;
    background-color: #EA592A;
    color: #fff;
    border-radius: 6px;
    margin-right: 49px;
    display: inline-block;
    width: 122px;
    height: 28px;
    vertical-align: middle;
    line-height: 1.9;
    margin: auto 1vw
  }
  .contents .recommendPlan__innerBox {
    margin-bottom: 46px;
  }
  .contents .recommendPlan__innerTitle {
    background-color: #EFF0F1;
    padding: 13px;
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 30px;
    text-align: center;
  }
  .contents .recommendPlan__innerSubTitle {
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    color: #EA592A;
    margin-bottom: 21px;
  }
  .contents .recommendPlan__grid {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    justify-content: space-between;
  }
  .contents .recommendPlan__grid--pdd {
    padding: 0 22px;
    justify-content: space-around;
  }
  .contents .recommendPlan__grid img {
    max-width: 100%;
  }
  .contents .recommendPlan__gridItem {
    width: 20%;
    box-sizing: border-box;
    font-size: 18px;
  }
  .contents .recommendPlan__gridItem--text {
    font-weight: bold;
    width: 158px;
  }
  .contents .recommendPlan__gridItem--arrow {
    text-align: center;
    width: 50.49px;
    margin-right: 19px;
    margin-left: 31px;
  }
  .contents .recommendPlan__gridItem--plus {
    width: 19.8px;
    margin: 0 9px;
  }
  .contents .recommendPlan__gridItem--plus img {
    display: block;
    width: 100%;
  }
  .contents .recommendPlan__gridItem--imgText {
    width: 182px;
  }
  .contents .recommendPlan__gridBlockItem {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 135px;
    height: 146px;
    background-color: #E2EBF0;
    border-radius: 16px;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    margin-right: 20px;
    line-height: 1.5;
  }
  .contents .recommendPlan__gridBlockItem:last-child {
    margin-right: 0;
  }
  .contents .recommendPlan__gridBlockItem--option {
    width: 275px;
  }
  .contents .recommendPlan__xlText {
    font-size: 24px;
  }
  .contents .recommendPlan__btn {
    width: 350px;
    margin: 0 auto;
  }
  .contents .recommendPlan__gridBlockItem--spMb {
    margin-bottom: 0vw;
  }
  /* ::::: campaign section ::::: */
  .contents .secCam {
    /*tokuten*/
    font-size: 16px;
  }
  .contents .secCam h3 {
    font-size: 28px;
    text-align: center;
    margin: 0 0 26px;
    padding: 20px 56px;
    background-size: 22px 76px;
  }
  .contents .secCam h4 {
    margin: 0 0 40px;
    font-weight: bold;
    font-size: 24px;
  }
  .contents .secCam p {
    font-size: 16px;
  }
  .contents .secCam h4 span {
    color: #EA582A;
  }
  .contents .secCam h4 span sup {
    color: #EA582A;
    font-size: 12px;
  }
  .contents .secCam .tokutenArea {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
  }
  .contents .secCam .tokutenArea .tokutenBlock {
    padding: 10px;
    margin-bottom: 10px;
  }
  .contents .secCam .tokutenArea .tokutenBlock h5 {
    font-size: 24px;
    display: block;
    border-bottom: 1px solid #fff;
    border-right: none;
    padding: 0 0 10px;
    margin: 0 0 20px;
    width: 100%;
  }
  .contents .secCam .tokutenArea .tokutenBlock .tokutenContent {
    display: block;
    padding: 0;
  }
  .contents .secCam .inner2 .fstickBox {
    border: 4px solid #F5AC95;
    padding: 40px;
  }
  .contents .secCam .inner2 .fstickBox .fstickCont {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
  }
  .contents .secCam .inner2 .fstickBox .fstickCont div {
    margin-bottom: 0;
  }
  .contents .secCam .inner2 .fstickBox .fstickCont div:nth-child(1) {
    width: 400px;
    margin-right: 38.9px;
  }
  .contents .secCam .inner2 .fstickBox .fstickCont div:nth-child(2) {
    width: 180.84px;
  }
  .contents .secCam .inner2 .fstickBox .fstickItem {
    display: flex;
    padding: 20px;
  }
  .contents .secCam .inner2 .fstickBox .fstickItem dt {
    margin-right: 72.2px;
    width: 180.84px;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .contents .secCam .inner2 .fstickBox .fstickItem dt img {
    width: 40vw;
    margin: 0 auto;
  }
  .contents .secCam .inner2 .fstickBox .fstickItem dd {
    width: 377.63px;
    font-size: 16px;
    text-align: left;
  }
  .contents .secCam .inner2 .fstickBox .fstickItem dd h4 {
    font-size: 18px;
    margin-bottom: 1vw;
    text-align: left;
    font-weight: bold;
    line-height: 1.5;
  }
  .contents .secCam .inner2 .fstickBox .fstickItem dd p {
    text-align: left;
  }
  .contents .secCam .inner2 .fstickBox .fstickItem dd ul {
    margin-top: 18px;
  }
  .contents .secCam .inner2 .fstickBox .fstickItem dd ul li {
    margin-top: 18px;
  }
  .contents .secCam .inner2 .fstickBox .fstickItem dd ul li::before{
    content: "※";
    position: absolute;
    left: 0px;
    top: 0;
  }
  .contents .secCam .inner2 .fstickBox dl:nth-child(2) {
    border-top: 1px solid #BFBFBF;
    border-bottom: 1px solid #BFBFBF;
  }
  .contents .secCam .inner2 .fstickBox dl dd {
    text-align: left;
  }
  .contents .secCam .inner2 .camNotice {
    margin-top: 40px;
    text-align: left;
  }
  .contents .secCam .inner2 .camNotice ul li{
    text-align: left;
  }
  /* ::::: 料金プラン ::::: */
  /* ::::: price section ::::: */
  .contents .secPrice h2 {
    font-weight: normal;
  }
  .contents .pricePlan__table {
    padding: 45px 0 0;
    width: 100%;
    overflow-x: hidden;
  }
  .contents .pricePlan__table table {
    margin-left: 0vw;
  }
  .contents .pricePlan__table .pricePlan__tableTitle {
    font-size: 16px;
  }
  .contents .pricePlan__table .pricePlan__tableTitle span {
    writing-mode: inherit;
    -webkit-writing-mode: inherit;
    -ms-writing-mode: inherit;
  }
  .contents .pricePlan__table tr:first-child th {
    background: #DEDEDE;
    border-right: 1px solid #fff;
    border-left: none;
    border-top: 1px solid #E5E5E5;
    border-bottom: 1px solid #E5E5E5;
    font-size: 16px;
  }
  .contents .pricePlan__table tr:first-child th:first-child {
    border-left: 1px solid #E5E5E5;
  }
  .contents .pricePlan__table tr:first-child th:last-child {
    border-right: 1px solid #E5E5E5;
  }
  .contents .pricePlan__table tr:nth-of-type(2) td {
    border-top: none;
  }
  .contents .pricePlan__table table {
    width: 100%;
  }
  .contents .pricePlan__table table, .pricePlan__table .pricePlan__table td, .pricePlan__table .pricePlan__table th {
    border: 1px solid #595959;
    border-collapse: collapse;
    text-align: center;
    vertical-align: middle;
    width: 100%;
  }
  .contents .pricePlan__table td, .pricePlan__table .pricePlan__table th {
    font-size: 16px;
  }
  .contents .pricePlan__table td {
    padding: 22.5px 10px;
    line-height: 26px;
    border: 1px solid #595959;
  }
  .contents .pricePlan__tableBlue {
    color: #0066BE;
  }
  .contents .pricePlan__tableRed {
    color: #EA592A;
  }
  .contents .pricePlan__tableBold {
    font-weight: bold;
  }
  .contents .pricePlan__table .pricePlan__tableHead {
    position: relative;
    width: 205px;
    height: 117px;
    line-height: 22px;
    padding: 24.5px 5px;
  }
  .contents .pricePlan__table .pricePlan__tableHead--option {
    width: 131px;
  }
  .contents .pricePlan__table .pricePlan__tableHead .pricePlan__textXl {
    font-size: 18px;
    margin-bottom: 18.1px;
    word-break: break-all;
  }
  .contents .pricePlan__table .pricePlan__tableTitle {
    vertical-align: top !important;
    font-weight: bold;
  }
  .contents .pricePlan__table .pricePlan__tableText {
    margin-top: 37px;
  }
  .contents .pricePlan__table .pricePlan__tableText--option {
    margin-top: 10px;
  }
  .contents .pricePlan__table .pricePlan__tableIcon {
    display: block;
    position: absolute;
    color: #fff;
    background-color: #EA592A;
    width: 122px;
    height: 28px;
    font-size: 16px;
    font-weight: bold;
    transform: translateX(33%) translateY(-250%);
    text-align: center;
    border-radius: 6px;
    line-height: 1.8;
    letter-spacing: -0.1em;
  }
  .contents .pricePlan__table .pricePlan__tableIcon::before {
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 15px 10px 0 10px;
    border-color: #ea5a2a transparent transparent transparent;
    bottom: -14px;
    left: 41%;
  }
  .contents .pricePlan__table .pricePlan__textXl--option {
    font-size: 26px;
    line-height: 1;
    margin-bottom: 9px;
  }
  .contents .pricePlan__table .pricePlan__textXs {
    font-size: 20px;
  }
  .contents .secPrice h3 {
    font-size: 24px;
  }
  .contents .secPrice .planBox {
    border-radius: 6px;
    padding: 20px 20px 20px 40px;
    display: block;
    background: #fff;
    border: 1px solid #d6d6d6;
    display: flex;
    flex-direction: row;
  }
  .contents .secPrice .planBox .priceArea {
    width: 47%;
    border-bottom: none;
    border-right: 1px solid #d6d6d6;
    padding: 0;
    margin: 0;
    text-align: left;
  }
  .contents .secPrice .planBox .priceArea h4 {
    font-size: 26px;
    margin: 0 0 60px;
  }
  .contents .secPrice .planBox .priceArea .price > div {
    margin: 0 0 2px;
    font-size: 14px;
    color: #333;
  }
  .contents .secPrice .planBox .channel {
    width: 53%;
    box-sizing: border-box;
    font-size: 22px;
    margin: 0;
    padding: 0 0 0 30px;
  }
  .contents .secPrice .planBox .channel ul li {
    font-size: 15px;
  }
  .contents .secPrice .tvBox {
    padding: 30px;
  }
  .contents .secPrice .tvBox h4 {
    font-size: 28px;
    padding: 0 0 20px;
    margin: 0 0 30px;
  }
  .contents .secPrice .tvBox h5 {
    margin: 0 0 25px;
  }
  .contents .secPrice .tvBox .txtArea {
    padding: 0 0 20px 220px;
    background: url("/tv/price/images/price_img1.png") no-repeat left top;
    background-size: 190px auto;
    font-size: 16px;
  }
  /* :::::: tuner section ::::: */
  .contents .secTurner {
    background: #E2EBF0;
  }
  .contents .secTurner .tunerBox {
    padding: 50px 40px;
    margin: 0 auto 28px;
    background-color: #ffffff;
  }
  .contents .secTurner .tunerRental {
    padding: 30px 50px;
  }
  .contents .secTurner .tunerRental h2 span {
    font-weight: normal;
  }
  .contents .secTurner .tunerRental .tunerBox .tunerName {
    font-size: 16px;
    color: #0066BE;
    background-color: #EFF0F1;
    padding: 16.5px 10px;
    margin-bottom: 32.4px;
    font-weight: bold;
  }
  .contents .secTurner .tunerRental .tunerBox .tunerPrice  {
    font-size: 22px;
    font-weight: bold;
    margin: 30px 0 40px;
  }
  .contents .secTurner .tunerRental .tunerBox .tunerText {
    text-align: center;
  }
  .contents .secTurner .tunerRental .tunerBox .tunerPrice span {
    font-size: 32px;
    font-weight: bold;
  }
  /* ::::: image section ::::: */
  .contents .secImg .imgText {
    font-weight: bold;
    margin-bottom: 15px;
  }
  .contents .secImg .imgText .blue{
    color: #0066BE;
  }
  .contents .secImg .imgText .red{
    color: #EA592A;
  }
  .contents .secImg .imgBox {
    border: 4px solid #E2EBF0;
    padding: 30px;
    margin-bottom: 15px;
  }
  .contents .secImg .imgBox .imgInner {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .contents .secImg .imgBox .imgInner .imgRight {
    text-align: right;
    font-weight: bold;
    font-size: 20px;
    white-space: nowrap;
  }
  .contents .secImg .imgBox .imgInner .imgRight span {
    font-weight: bold;
    font-size: 32px;
  }
  .contents .secImg .imgBox .imgInner .imgLeft {
    text-align: left;
  }
  .contents .secImg .imgBox .imgInner .imgLeft:first-child {
    border-bottom: none;
    padding-bottom: 0vw;
    margin-bottom: 0vw;
  }
  .contents .secImg .imgBox .imgInner .imgLeft ul li .red{
    color: #EA592A;
  }
  .contents .secImg .imgBox .imgInner .imgLeft ul li {
    margin-bottom: 15px;
  }
  .contents .secImg .imgBox .imgInner .imgLeft p {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 20px;
  }
  .contents .secImg .imgNotice {
    text-align: left;
  }
  /* ::::: conversion button ::::: */
  .contents .conBtn {
    background-color: #4b99e6;
  }
  .contents .sec__inner {
    padding-top: 60px;
    padding-bottom: 60px;
    width: 760px;
    margin: auto;
  }
  .contents .c-btn {
    background-color: #fcf150;
    color: #4b99e6 !important;
    box-shadow: 10px 10px 10px 0 rgba(0, 0, 0, 0.16);
    transition: all 0.3s;
    text-decoration: none;
    font-size: 24px;
    border-radius: 50px;
    padding: 20px 0!important;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
    -ms-border-radius: 50px;
    -o-border-radius: 50px;
  }
  .contents .c-btn:hover {
    box-shadow: 10px 10px 10px 0 rgba(0, 0, 0, 0.28);
  }
  /* ::::: timing section ::::: */
  .contents .secTiming .inner2 div > p {
    text-align: left;
  }
  .contents .secTiming .inner2 {
    font-size: 16px;
    color: #757575;
  }
  .contents .secTiming .inner2 p {
    text-align: left;
    font-size: 16px;
}
  .contents .secTiming .inner2 ul li {
    font-size: 16px;
    color: #757575;
  }
  /* ::::: second section ::::: */
  .contents .secSecond {
    background-color: #E2EBF0;
  }
  .contents .secSecond .sec_inner {
    padding: 60px 0;
    width: 760px;
    margin: auto;
  }
  .contents .secSecond h2 span {
    font-weight: normal;
    font-size: 38px;
  }
  .contents .secSecond .second_txt{
    text-align: center;
    font-weight: bold;
    font-size: 16px;
  }
  .contents .secSecond h3 {
    font-size: 26px;
    margin: 0 0 36px;
  }
  .contents .secSecond ul li {
    text-align: center;
  }
  .contents .secSecond li {
    color: #333;
  }
  .contents .secSecond .c-noticeList--mark li:before {
    content: "※";
    position: absolute;
    left: 74px;
    top: 0;
  }
  .contents .secSecond .secondBlock {
    background-color: #ffffff;
  }
  .contents .secSecond .secondBlock h4 {
    font-size: 30px;
    line-height: 110%;
  }
  .contents .secSecond .secondBlock dl {
    display: flex;
    padding: 0;
  }
  .contents .secSecond .secondBlock dl dt {
    width: 250px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0vw;
  }
  .contents .secSecond .secondBlock dl dt img {
    max-width: 100%;
    width: auto;
    display: block;
  }
  .contents .secSecond .secondBlock dl dd {
    width: 510px;
    padding: 41.9px 30px 44.6px;
  }
  .contents .secSecond .secondBlock dl dd p {
    font-weight: normal;
  }
  .contents .secSecond .secondBlock dl dd h4 {
    font-size: 20px;
    text-align: left;
  }
  /* ::::: ご利用までの流れ ::::: */
  /* ::::: flow section ::::: */
  .contents .secFlow {
    /*blueBox*/
  }
  .contents .secFlow .blueBox {
    margin-bottom: 70px;
    position: relative;
  }
  .contents .secFlow .blueBox:after {
    height: 24px;
    width: 42px;
    bottom: -48px;
    left: 50%;
    margin-left: -21px;
  }
  /* ::::: 注意事項 ::::: */
  /* ::::: attention section ::::: */
  .contents .secAttention article {
    padding: 50px 0;
  }
  .contents .secAttention article h3 {
    font-size: 34px;
    padding: 0;
    margin: 0 0 30px;
  }
  .contents .secAttention article h4 {
    font-size: 28px;
  }
  .contents .secAttention article h4 > article {
    border-bottom: none;
    padding: 0 0 35px;
  }
  .contents .secConv {
    /*.topArticle*/
    /*callArea*/
  }
  .contents .secConv .topArtticle {
    margin: 0 0 30px;
  }
  .contents .secConv .topArtticle h3 {
    padding: 0;
  }
  .contents .secConv .topArtticle > div {
    background: #fff;
    border-radius: 0 0 6px 6px;
    padding: 40px 30px;
  }
  .contents .secConv .topArtticle > div .btnArea {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin: 0 0 24px;
  }
  .contents .secConv .topArtticle > div .btnArea li {
    width: 392px;
    display: block;
    border-radius: 6px;
    background: #f0f3f4;
    padding: 26px;
  }
  .contents .secConv .topArtticle > div .btnArea li p {
    margin: 0 0 24px;
  }
  .contents .secConv .topArtticle > div .btnArea li a {
    font-size: 28px;
    padding: 26px 0;
  }
  .contents .secConv .secondArticle {
    padding: 40px 30px;
    margin: 0 0 30px;
  }
  .contents .secConv .secondArticle .callArea {
    margin: 0 0 20px;
  }
  .contents .secConv .secondArticle .callArea > div {
    float: left;
    text-align: left;
  }
  .contents .secConv .secondArticle .callArea > div:last-child {
    padding: 0 0 0 16px;
    width: 434px;
    float: right;
  }
  .contents .secConv .secondArticle .callArea > div:last-child dl dt {
    font-size: 22px;
  }
  .contents .secConv .secondArticle .callArea > div:last-child dl dd {
    font-size: 24px;
    padding-left: 18px;
  }
  .contents .secConv .bottomBtn {
    font-size: 24px;
    padding: 26px 0;
  }
  .contents .secConv .bottomBtn:before {
    background: url("/tv/images/ico_faq.png");
    top: 50%;
    width: 40px;
    height: 40px;
    margin-top: -20px;
  }
  .contents .secConv .bottomBtn:first-letter {
    padding-left: 60px;
  }
  /*.contents*/
  .secFireTv {
    background-color: #E2EBF0;
  }
  .secFireTv .inner {
    padding: 80px 0;
    margin: 0 auto;
    width: 690px;
  }
  .secFireTv .inner h3 {
    text-align: center;
    margin: 0 0 15px;
  }
  .secFireTv .inner h4 {
    font-weight: bold;
    font-size: 28px;
    margin: 0 0 25px;
    text-align: center;
  }
  .secFireTv .inner .boldGray {
    border: 1px solid #ededed;
  }
  .secFireTv .inner .whiteBk {
    background-color: white !important;
  }
  .secFireTv .inner .advicePoint {
    padding: 30px;
  }
  .secFireTv .inner .advicePoint__text {
    font-weight: bold;
    font-size: 18px;
  }
  .secFireTv .inner .advicePoint li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .secFireTv .inner .advicePoint li:first-child {
    border-bottom: 1px solid #ededed;
    padding-bottom: 20px;
  }
  .secFireTv .inner .advicePoint li:last-child {
    padding-top: 20px;
  }
  .secFireTv .inner .advicePoint li > div {
    padding: 10px;
  }
  .secFireTv .inner .advicePoint li > div:first-child {
    width: 35%;
  }
  .secFireTv .inner .advicePoint li > div:last-child {
    width: 65%;
  }
  /* ::::: よくあるご質問 ::::: */
  /* ::::: faq section ::::: */
  .contents .faq .sec__heading {
    color: #262626;
    font-size: 38px;
    line-height: 1;
    text-align: center;
    position: relative;
    padding-bottom: 30px;
    margin-bottom: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .contents .faq .faqList > li {
    padding: 0;
    border-bottom: 1px dotted #aaa;
  }
  .contents .faq .faqList > li .q {
    font-size: 16px;
    padding: 20px 50px 20px 40px;
    font-weight: bold;
    position: relative;
    background: url("/common/images/maincontents/icon-question.gif") no-repeat 5px 22px;
    cursor: pointer;
    margin: 0;
  }
  .contents .faq .faqList > li .q:after {
    position: absolute;
    transition: transform 0.2s linear;
    transform-origin: 50% 50%;
    content: url("/hikari/faq/images/faq_arrow.png");
    right: 20px;
    top: 32px;
    height: 10px;
    line-height: 0;
  }
  .contents .faq .faqList > li .q.on:after {
    transform: rotateX(180deg);
    transform-origin: 50% 50%;
  }
  .contents .faq .faqList > li .a {
    padding-left: 45px;
    position: relative;
    margin: 0;
    padding: 10px 25px 25px 45px;
    display: none;
  }
  .contents .faq .faqList > li .a:before {
    position: absolute;
    width: 20px;
    height: 24px;
    background: url("/common/images/maincontents/icon-answer.gif") no-repeat left top;
    content: "";
    top: 15px;
    left: 5px;
  }
  .contents .faq__tableArea {
    margin-top: 20px;
  }
  .contents .faq__table {
    max-width: 700px;
    overflow-x: scroll;
    margin-top: 10px;
  }
  .contents .faq__tableTitle {
    width: 130px;
    min-width: 130px;
  }
  .contents .faq__tableTitle--option {
    width: 297px;
    min-width: 297px;
  }
  .contents .faq__tableSubTitle {
    vertical-align: top !important;
  }
  .contents .faq__table table {
    border-collapse: collapse;
    white-space: nowrap;
    text-align: center;
    table-layout: fixed;
    min-width: 100%;
  }
  .contents .faq__table table, .contents .faq__table td, .contents .faq__table th {
    border: 1px solid #000;
    border-collapse: collapse;
  }
  .contents .faq__table td, .contents .faq__table th {
    padding: 10px;
    height: 25px;
    vertical-align: middle;
  }
  .contents .faq__table th {
    background-color: #245AA6;
    color: #fff;
    font-weight: bold;
  }
  .contents .faq__connect {
    margin-top: 10px;
  }
  .contents .faq .otherWwindow__icon {
    max-width: 100%!important;
  }
  .contents .precautions .sec__heading {
    margin-bottom: 101.8px;
  }
  .contents .precautions .c-table {
    margin-left: 25px;
  }
  .contents .precautions__block:not(:first-of-type) {
    padding-top: 35px;
    margin-top: 35px;
    border-top: 1px solid #e5e5e5;
  }
  .contents .precautions__caption {
    font-size: 18px;
    margin-bottom: 33px;
  }
  .contents .precautions__list {
    padding-left: 40px;
  }
  .contents .precautions__list--option {
    padding-left: 0 !important;
  }
  .contents .precautions__list--option .precautions__item--option::before {
    content: none;
  }
  .contents .precautions__case {
    padding-left: 20px;
    margin-top: 30px;
    margin-bottom: 8px;
  }
  .contents .precautions__item {
    position: relative;
  }
  .contents .precautions__item:not(:last-of-type) {
    margin-bottom: 24px;
  }
  .contents .precautions__item:before {
    content: "・";
    position: absolute;
    left: -20px;
    top: 0;
  }
  .contents .precautions__item a {
    display: inline-block;
    text-decoration: underline;
    color: #0066be;
  }
  .contents .precautions__item--mb {
    margin-bottom: 10px !important;
  }
  .contents .precautions--sb .sec__inner {
    border-top: none;
  }
  .contents .precautions--sb .precautions__item:not(:first-of-type) {
    margin-top: 25px;
  }
  .contents .precautions--howtoApply {
    margin-bottom: 0;
  }
  .contents .precautions--howtoApply .sec__inner {
    padding-top: 35px;
    border-top: 1px solid #e5e5e5;
  }
  .contents .precautions--howtoApply .precautions__item {
    margin-bottom: 8px;
  }
  .contents .precautions__pickupTxt {
    text-align: center;
    background-color: #fafafa;
    padding: 30px 0;
    margin: 20px 0;
  }
  .contents .precautions__pickupTxt a {
    display: inline-block;
    text-decoration: underline;
    color: #0066be;
  }
  .contents .precautions__pdf {
    color: #262626;
    font-weight: normal;
    position: relative;
  }
  .contents .precautions__pdf:before {
    content: "";
    display: inline-block;
    width: 15px;
    height: 15px;
    background-image: url("/hikari/renewal/common/images/icon-pdf.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    margin-right: 3px;
  }
  .contents .precautions__text {
    font-weight: bold;
    margin-bottom: 13px;
  }
  .contents .mainArea__topics {
    display: flex;
    width: 760px;
    background-color: #fff;
    margin: 0 auto;
    padding: 40px 0;
  }
  .contents .mainArea__topicsLabel {
    width: 95px;
  }
  .contents .mainArea__topicsList {
    width: 665px;
    border-left: 1px solid #bababa;
    padding-left: 24px;
  }
  .contents .mainArea__topicsList li {
    margin-bottom: 20.1px;
  }
  .contents .mainArea__topicsList li:last-child {
    margin-bottom: 0;
  }
  .contents .mainArea__topicsList a {
    text-decoration: underline;
  }
  .contents .mainArea__topicsList a:hover {
    text-decoration: none;
  }
  .contents .mainArea__kv {
    background-size: cover;
    height: auto;
  }
  .contents .mainArea__kvImage {
    width: auto;
    margin: 0 auto;
  }
  .contents .mainArea__kvImage img {
    display: block;
    width: 100%;
  }
  .listNote > li, .listNote > dl {
    position: relative;
    font-size: 16px;
    color: #000;
    padding-left: 1.4em;
}
}

/*# sourceMappingURL=style.css.map */
