
/* ========================================
   リセットとベーススタイル
======================================== */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: "Noto Sans JP", sans-serif;
    line-height: 1.7;
    background-color: #fff;
    font-size: 20px;
}

html, body {
  overflow-y: auto;
  height: auto;
}

img {
    max-width: 100%;
    height: auto;
    vertical-align: middle;
}

a {
    text-decoration: none;
    color: inherit;
}

a:hover {
    opacity: .5;
}

/* ========================================
   メインレイアウト
======================================== */
.campaign-page {
    width: 100%;
}

/* ========================================
   MVセクション
======================================== */
.mv-section {
    width: 100%;
    background: url("/assets/images/campaign/m10/mv_background.png") #000;
    background-size: cover;
    margin: 0 auto;
    padding-bottom: 40px;
    text-align: center;
}

.mv-image {
    width: 100%;
    display: block;
}

.balloon{
    background: #2977d6;
    width: 400px;
    height: 104px;
    position: relative;
    top: 40px;
    left: 5%;
    border-radius: 100px;
    text-align: center;
    padding-top: 12px;
    font-weight: bold;
    font-size: 16px;
    color: #fff;
}

.balloon .arrow{
    position: absolute;
    bottom: -23px;
    left: 50%;
    width: 40px;
    transform: scaleX(-1);
}

br.sp-style{
    display: none;
}

.mv-ttl{
    width: 60%;
    margin: 0 auto;
    position: relative;
    top: 20px;
}

.mv-ttl div.pc-item{
    position: relative;
    display: inline-block;
}

.mv-ttl h1{
    font-size: 32px;
    margin-bottom: 20px;
    color: #fff;
}

.mv-ttl h1 img{
    width: 35px;
}

.mv-ttl h1 .s-txt{
    font-size: 24px
}

.mv-ttl h1+p{
    position: absolute;
    top: 13px;
    left: 261px;
}

img.main-img{
    width: 80%;
    margin-bottom: 30px;
}

.mv-sub-txt{
    background: rgba(0, 0, 0, 0.5);
    margin: 0 auto;
    padding: 30px 0 40px;
    color: #fff;
}

.m10{
    position: relative;
}

.m10 span{
    font-size: 18px;
    position: absolute;
    top: -30px;
    left: 21px;
}

/* ========================================
   nav-pc
======================================== */

.nav-sp,
.sp-item{
    display: none;
}

.nav-pc{
    background: #1f5cac;
    color: #fff;
}

.nav-pc ul{
    display: flex;
    width: 875px;
    margin: 0 auto;
    padding: 20px 0;
}

.nav-pc li{
    list-style-type: none;
    margin-right: 70px;
    font-size: 20px;
}

.nav-pc li.last{
    margin-right: 0;
}

.nav-pc li span{
    padding-left: 5px;
    margin-bottom: 2px;
}
.nav-pc li img{
    width: 18px;
    
}

/* ========================================
   番組情報セクション
======================================== */

.intro-section{
    background: url("/assets/images/campaign/m10/background.png") #000;
    text-align: center;
    padding: 50px 0;
    color: #fff;
}

.intro-section h3{
    background: #1f5cac;
    width: 360px;
    margin: 0 auto 30px;
    padding: 10px 0;
}

.intro-section h2{
    font-size: 32px;
    margin-bottom: 20px;
}

.intro-section .intro-txt{
    margin-bottom: 30px;
}

.intro-section img{
    width: 50px;
}

/* ========================================
   大掃除はプロにおまかせセクション
======================================== */

.cp-all{
    background: #eaf8ff;
    padding: 40px 0;
    color: #1f5cac;
}

.cp-section,
.clean-section{
    width: 960px;
    margin: 0 auto 30px;
    padding-bottom: 80px;
    text-align: center;
    background: #fff;
    border-radius: 20px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.cp-section h2,
.clean-section h2{
    background: #1f5cac;
    border-radius: 20px 20px 0 0;
    padding: 20px 0;
    color: #fff;
}

.cp-section h3{
    font-size: 32px;
    margin: 20px 0 10px;
    font-weight: bold;
}

.cp-section h3 span{
    font-size: 20px;
    margin-bottom: 10px;
    display: block;
}

.cp-section img{
    width: 80%;
}

.cp-section .howto{
    font-size: 16px;
    width: 80%;
    text-align-last: left;
    margin: 10px auto 0;
    color: #222;
    position: relative;
}

.cp-section .howto .txt-btn{
    width: 190px ;
    position: absolute;
    right: 0;
    top: 60px;
    border-bottom: 1px solid #000;
}

.cp-section .howto img{
    width: 20px;
    margin-right: 5px;
}

.clean-section .clean-cp-bnr{
    width: 80%;
    margin: 30px auto 0;
}

a.btn{
    background: #ed3041;
    padding: 20px 0;
    color: #fff;
    border-radius: 45px;
    font-size: 24px;
    display: inline-block;
    width: 70%;
    margin: 30px 0;
    position: relative;
}

a.btn img{
    width: 18px;
    position: absolute;
    top: 25px;
    right: 20px;
}

.choice-ttl{
    display: flex;
    width: 495px;
    margin: 0 auto;
}

.choice-ttl h3{
    text-align: left;
    margin-top: 16px;
    margin-left: 15px;
    font-size: 30px;
    line-height: 1.5em;
}

.badge{
    background: #1f5cac;
    border-radius: 60px;
    width: 120px;
    height: 120px;
    color: #fff;
}
.badge p{
    margin-top: 15px;
    line-height: 2em;
}
.badge p span{
    color: #fbff34;
    font-size: 38px;
    font-weight: bold;
}

hr{
    border: 1px solid #1f5cac;
    width: 80%;
    margin: 30px auto 50px;
}

/* ========================================
   大掃除中に聴きたいのはこの曲♪セクション
======================================== */

.misic-section{
    width: 100%;
    background: #1f5cac;
    padding: 80px 0;
}

.misic-section .music-contents{
    width: 960px;
    margin: 0 auto;
    text-align: center;
    color: #fff;
}

.misic-section h2{
    font-size: 24px;
}

.misic-section h2+h2{
    font-size: 42px;
    margin-top: 20px;
    color: #fff;
}

.misic-section h2+h2+p{
    color: #fff;
}

.misic-section .music-icon{
    width: 230px;
    margin-bottom: 30px;
}

.misic-section h2 img{
    width: 20px;
}

.music-all{
    display: flex;
    margin-top: 30px;
}

.clean-song,
.classical-music{
    width: 650px;
    background: #fff;
    color: #222;
    border-radius: 10px;
    margin: 0 auto;
    padding: 12px 0;
}

.classical-music table{
    position: relative;
    bottom: 35px;
}

.clean-song h3,
.classical-music h3{
    border-left: 12px solid #1f5cac;
    text-align-last: left;
    margin-left: 20px;
    margin-bottom: 10px;
    padding-left: 10px;
}

table,tr,th,td{
    border: 1px solid #222;
    border-collapse: collapse;
    vertical-align: middle;
}

tr.pop-line{
    height: 2.5em
}

td.popular{
    position: relative;
    top: 8px;
}

td.orange{
    background: #ffdcbd;
}

td.popular span{
    background: #fb8a00;
    color: #fff;
    border-radius: 30px;
    font-size: 9px;
    width: 40px;
    height: 15px;
    position: absolute;
    top: -34px;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
}

td span{
    font-size: 10px;
}

table{
    width: 450px;
    margin: 0 auto;
    border: 3px solid;
}

thead{
    border-bottom: 2px solid;
}

.classical-music{
    margin-left: 20px;
}

.l-section{
    padding-block: 20px;
}

li.c-footer-global-links__item{
    line-height: 1.2;
}

/* ========================================
   レスポンシブデザイン（スマートフォン）
======================================== */
@media (max-width: 768px) {

/* ========================================
   MVセクション
======================================== */
.mv-section{
    width: 100%;
    background: url("/assets/images/campaign/m10/sp_mv_background.png") #000;
    background-size: cover;
}
.mv-ttl {
    width: 100%;
    top: 0;
}
.sp-mv-ttl{
    position: relative;
}

.mv-ttl h1{
    font-size: 22px;
}

.mv-ttl h1 .s-txt{
    font-size: 16px;
}

.mv-ttl h1 .l_slash{
    position: absolute;
    top: 45px;
    left: 0;
}

.mv-ttl h1 .r_slash{
    position: absolute;
    top: 45px;
    right: 0;
}

.balloon{
    left: 0;
    margin: 0 auto 40px;
    width: 95%;
}

img.main-img {
    width: 90%;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
.mv-sub-txt{
    font-size: 15px;
    width: 95%;
    padding: 24px 5px;
}

.sp-item{
    display: block;
    width: 90%;
    margin: 0 auto;
}

span.pl{
    position: relative;
    left: 20px;
}

/* ========================================
   nav
======================================== */

.nav-sp {
    display: block;
    display: flex;
    color: #fff;
}

.nav-pc,
.pc-item,
.mv-ttl div.pc-item{
    display: none;
}

.nav-sp ul{
    background: #1f5cac;
    list-style-type: none;
    width: 100%;
    text-align: center;
    font-size: 18px;
}

.nav-sp li{
    border: 1px solid #fff;
    padding: 20px 0;
}

.nav-sp ul img{
    width: 18px;
}

.nav-sp ul span{
    padding-left: 10px;
}

/* ========================================
   番組情報セクション
======================================== */

.intro-section h2{
    font-size: 28px;
}

.intro-section h3 {
    width: 280px;
    padding: 4px 0;
}

.intro-section .intro-txt {
    font-size: 20px;
    text-align: justify;
    width: 90%;
    margin: 0 auto;
    margin-bottom: 30px;
}

br.pc-only{
    display: none;
}

/* ========================================
   大掃除はプロにおまかせセクション
======================================== */

.cp-section,
.clean-section{
    width: 92%;
}

.clean-section{
    padding-bottom: 40px;
    height: 1550px;
}

.cp-section h2,
.clean-section h2{
    font-size: 24px;
}

.cp-section h3{
    font-size: 24px;
}

.cp-section img{
    width: 100%;
}

.cp-section .howto{
    width: 90%;
}

.cp-section .howto .txt-btn{
    top: 87px;
}

.cp-section h2,
.clean-section h2{
    padding: 15px 0;
}

.clean-section .clean-cp-bnr{
    width: 100%;
}

.clean-section .clean-cp-bnr img{
    width: 90%;
}

a.btn{
    width: 90%;
    font-size: 20px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

a.btn img{
    width: 12px;
    top: 27px;
}

hr{
    margin: 0 auto 30px;
}

.choice-ttl h3{
    font-size: 20px;
}

.choice-ttl{
    width: 340px;
}

.badge{
    width: 90px;
    height: 90px;
    font-size: 16px;
    padding-top: 5px;
}

.badge p span{
    position: relative;
    bottom: 5px;
    font-size: 28px;
}

.badge p{
    margin-top: 6px;
}

.choice-ttl h3{
    margin-left: 10px;
    font-weight: bold;
}

.padding-block{
    padding-block: 0;
}

a.btn.btn-clean{
    position: relative;
    bottom: 76px;
}

/* ========================================
   大掃除中に聴きたいのはこの曲♪セクション
======================================== */

.misic-section .music-contents{
    width: 100%;
}

.misic-section{
    padding: 30px 0;
}

.misic-section .music-icon{
    width: 142px;
}

.misic-section h2{
    font-size: 18px;
}

.misic-section h2+h2{
    font-size: 34px;
    margin-top: 10px;
    margin-bottom: 20px;
}

.misic-section h2+h2+p{
    width: 90%;
    margin: 0 auto;
    text-align: justify;
}

.music-all{
    display: block;
}

.clean-song,
.classical-music{
    width: 95%;
    padding: 20px 3%;
    margin: 20px auto;
    font-size: 15px;
}

.clean-song h3,
.classical-music h3{
    margin-left: 0;
}

table{
    width: 100%;
}

.classical-music table{
    bottom: 26px;
}

td.popular span{
    width: 31px;
}

a.btn img{
    display: none;
}

.js-accordion{
    font-size: 16px;
}

}/*ブレイクポイント*/

/* ========================================
   レスポンシブデザイン（スマートフォン）
======================================== */
@media (max-width: 375px) {

.balloon {
    width: 351px;
}

.mv-sub-txt {
    font-size: 14px;
}

.nav-sp ul{
    font-size: 16px;
}

.sp-item{
    width: 96%;
}

/* ========================================
   番組情報セクション
======================================== */

.intro-section{
    padding: 50px 0 30px;
}

.intro-section .intro-txt{
    font-size: 18px;
    margin-bottom: 16px;
}

.intro-section img{
    width: 30px;
}

/* ========================================
   大掃除はプロにおまかせセクション
======================================== */

.cp-all{
    padding-bottom: 10px;
}

.cp-section h3{
    font-size: 21px;
    line-height: 1.5em;
}

.clean-section{
    height: 1500px;
}

.cp-section h2,
.clean-section h2{
    font-size: 20px;
    padding: 13px 0;
}

.clean-song,
.classical-music{
    font-size: 14px;
}

.cp-section .howto p:first-child{
    font-size: 14px;
}

.a.btn{
    font-size: 18px !important;
    padding-right: 20px !important;
    margin: 0;
}

.badge{
    width: 108px;
    height: 90px;
}

.choice-ttl{
    width: 310px;
}

.choice-ttl h3{
    padding-top: 0;
    margin-top: 0;
}

a.btn.btn-clean{
    position: relative;
    bottom: 76px;
}

/* ========================================
   大掃除中に聴きたいのはこの曲♪セクション
======================================== */

.misic-section .music-icon{
    width: 140px;
}

.misic-section h2{
    font-size: 16px;
}

.misic-section h2+h2{
    font-size: 30px;
}

.misic-section h2+h2+p{
    font-size: 18px;
}

td.popular{
    top: 8px;
}

td.popular span{
    top: -30px;
}

}/*ブレイクポイント*/

















