    @charset "utf-8";
    html,
    body {
        font-family: YuGothic, '游ゴシック', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', 'メイリオ', Meiryo, sans-serif;
        color: #000;
        background: #fff;
        -webkit-font-smoothing: antialiased;
    }
    /*a:hover {
        opacity: 0.6;
    }*/

    .spbr {
        display: none;
    }

    #wrapper {
        background: #FFF;
        background-size: 100%;
        width: 100%;
        height: auto;
        overflow: hidden;
        box-sizing: border-box;
        /*border: 5px solid #00bfff;*/
    }

    img {
        width: 100%;
        height: auto;
    }

    header {
        z-index: 1;
        background: #fff;
        position: relative;
        height: 26vw;
        margin-top: 82px;
    }

    header .mainvisual {
        width: 100%;
        position: absolute;
        left: 0;
        top: 0;
        height: 100%;
        z-index: 0;
        background: url("../img/top_header.png") no-repeat center center/cover;
    }
    /*header .mainvisual_container {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        max-width: 1920px;
        height: 100vh;
        margin: 0 auto;
        text-align: center;
        position: relative;
        z-index: 1;
    }

    header .main_img {
        line-height: 1;
    }*/

    header h1 span,
    header h1 strong {
        display: block;
    }

    header h1 span {
        margin-top: 20px;
    }

    header h1 strong {
        margin-bottom: 10px;
    }

    .text-combine {
        -webkit-text-combine: horizontal;
        -ms-text-combine-horizontal: all;
        text-combine-upright: all;
        letter-spacing: 0em;
    }

    #contents {
        position: relative;
    }

    nav {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        background: #e85382;
        z-index: 100;
    }

    nav .spmenu {
        display: none;
    }

    .fixed nav {
        position: fixed;
    }

    nav .nav_logo {
        position: absolute;
        left: 5px;
        top: 5px;
    }

    nav ul {
        text-align: right;
        padding: 33px 0 31px;
    }

    nav ul li {
        display: inline-block;
        border-left: 1px solid #FFF;
    }

    nav ul li a {
        display: inline-block;
        padding: 0px 35px;
        text-decoration: none;
        color: #FFF;
        font-size: 16px;
        line-height: 0;
        box-sizing: content-box;
        font-weight: 700;
    }

    nav a:hover {
        opacity: 0.6;
    }

    nav ul li a img {
        width: auto;
        height: 14px;
    }

    nav ul li:first-child {
        border-left: none;
    }

    #contents>section .inner {
        max-width: 1000px;
        margin: 0 auto;
        padding: 50px;
        box-sizing: border-box;
        overflow: hidden;
    }

    #contents>section .store .inner,
    #contents>section#movie .inner {
        max-width: 1100px;
    }

    h2.section_title {
        text-align: center;
        /*padding: 15px 0px 0;*/
        max-width: 700px;
        margin: 0 auto 50px;
        position: relative;
        z-index: 1;
    }

    #introduction {
        background-color: #e85382;
    }

    #introduction figure {
        margin: 0 auto;
    }

    .introduction_inner {
        max-width: 750px;
        margin: 0 auto;
        padding: 20px;
    }

    h3.sub_data {
        font-weight: bold;
        padding-bottom: 1rem;
    }

    #broadcast {
        background-color: #fff;
    }

    .broadcast_cont {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
    }

    .video_wrap {
        width: 50%;
    }

    .video {
        position: relative;
        width: 100%;
        height: 0;
        padding-top: 56.25%;
        /* 高さを指定(16:9) */
    }

    .video iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

    .broadcast_cont {
        padding-bottom: 2rem;
    }

    .broadcast_cont figure {
        display: block;
        width: 48%;
        height: auto;
    }

    .broadcast_cont .sub_cont {
        text-align: left;
        width: 48%;
    }

    .broadcast_cont .btn_cont {

    }

    .link_btn {
        padding-bottom: 1rem;
    }

    .link_btn a {
        display: block;
        position: relative;
        padding: 1em 2em;
        width: 300px;
        color: #333;
        font-size: 17px;
        font-weight: 700;
        background-color: #ffcce1;
        transition: 0.3s;
    }

    .link_btn a::before {
        content: '';
        position: absolute;
        top: calc(50% - 2px);
        right: 1em;
        transform: translateY(calc(-50% - 2px)) rotate(30deg);
        width: 12px;
        height: 2px;
        background-color: #f14f9b;
        transition: 0.3s;
    }

    .link_btn a::after {
        content: '';
        position: absolute;
        top: 50%;
        right: 1em;
        transform: translateY(-50%);
        width: 70px;
        height: 2px;
        background-color: #f14f9b;
        transition: 0.3s;
    }

    .link_btn a:hover {
        text-decoration: none;
        background-color: #f8f6ae;
    }

    .link_btn a:hover::before,
    .link_btn a:hover::after {
        right: 0.5em;
    }

    #Letter {
        background: url("../img/letter_bg.png");
    }

    .letter_cont ul {
        list-style: none;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }

    .letter_cont ul li {
        width: 50%;
    }

    .letter_cont ul li dl {
        margin: 0 0.5rem 1rem;
        border-radius: 10px;
    }

    .letter_cont ul li dl.pink {
        border: 2px solid #e85382;
    }

    .letter_cont ul li dl.pink dt {
        background-color: #e85382;
    }

    .letter_cont ul li dl.blue {
        border: 2px solid #2c97f1;
    }

    .letter_cont ul li dl.blue dt {
        background-color: #2c97f1;
    }

    .letter_cont ul li dl.green {
        border: 2px solid #4db298;
    }

    .letter_cont ul li dl.green dt {
        background-color: #4db298;
    }

    .letter_cont ul li dl.orange {
        border: 2px solid #ef8318;
    }

    .letter_cont ul li dl.orange dt {
        background-color: #ef8318;
    }

    .letter_cont ul li dl.purple {
        border: 2px solid #800080;
    }

    .letter_cont ul li dl.purple dt {
        background-color: #800080;
    }
    .letter_cont ul li dl.orange {
        border: 2px solid #ef8318;
    }

    .letter_cont ul li dl.orange dt {
        background-color: #ef8318;
    }

    .letter_cont ul li dl.yellow {
        border: 2px solid #fbcd4a;
    }

    .letter_cont ul li dl.yellow dt {
        background-color: #fbcd4a;
    }

    .letter_cont ul li dl dt {
        border-radius: 7px 7px 0 0;
        position: relative;
        background-color: #232323;
        font-size: 1.4rem;
        padding: 0.5rem;
        color: #fff;
    }

    .letter_cont ul li dl dt::after {
        content: '';
        position: absolute;
        right: 0px;
        top: 4px;
        width: 40px;
        height: 40px;
        background: url(../img/star_bg.png) no-repeat
    }

    .letter_cont ul li dl dd {
        padding: 0.5rem;
        background-color: #fff;
        border-radius: 0 0 7px 7px;
    }

    .letter_cont2 ul {
        list-style: none;
        display: flex;
        flex-wrap: wrap;
    }

    .letter_cont2 ul li {
        width: 100%;
    }

    .letter_cont2 ul li dl {
        margin: 0 0.5rem 1rem;
        border-radius: 10px;
    }

    .letter_cont2 ul li dl.purple {
        border: 2px solid #800080;
    }

    .letter_cont2 ul li dl.purple dt {
        background-color: #800080;
    }

    .letter_cont2 ul li dl dt {
        border-radius: 7px 7px 0 0;
        position: relative;
        background-color: #232323;
        font-size: 1.4rem;
        padding: 0.5rem;
        color: #fff;
    }

    .letter_cont2 ul li dl dt::after {
        content: '';
        position: absolute;
        right: 0px;
        top: 4px;
        width: 40px;
        height: 40px;
        background: url(../img/star_bg.png) no-repeat
    }

    .letter_cont2 ul li dl dd {
        padding: 0.5rem;
        background-color: #fff;
        border-radius: 0 0 7px 7px;
    }

    .post_btn {
        margin-top: 2rem;
    }

    .post_btn .link_btn a {
        margin: 0 auto;
        background-color: #FFF;
    }


    /* Information 過去放送*/
    .Information_cont {
        margin-bottom: 10px;
    }

    /* アコーディオンボタン */
    .toggle_contents {
      border: 2px solid #e85382;
      border-radius: 13px;
      margin: 10px;
    }

    .toggle_title {
    	position: relative;
    	padding:  0.5rem;
    	cursor: pointer;
    	font-size: 1rem;
    	text-align: center;
    	line-height: 1;
      color: #fff;
    }

    .toggle_btn {
    	position: absolute;
    	top: 50%;
    	right: 20px;
    	transform: translateY(-50%);
    	background: #2b2959;
    	display: block;
    	width: 24px;
    	height: 24px;
    	text-indent: 100%;
    	white-space: nowrap;
    	overflow: hidden;
    	border-radius: 50%;
    }

    .toggle_btn:before, .toggle_btn:after {
    	display: block;
    	content: '';
    	background-color: #fff;
    	position: absolute;
    	width: 10px;
    	height: 2px;
    	top: 50%;
    	left: 50%;
    	transform: translate(-50%, -50%);
    }

    .toggle_btn:before {
    	width: 2px;
    	height: 10px;
    }

    .toggle_title.selected .toggle_btn:before {
    	content: normal;
    }

  /* アコーディオンボタンの中 */

    .toggle_contents dd {
    	display: none;
      padding:  0.5rem;
    }
       /* アコーディオンの見出し */
    .toggle_contents dt {
      background-color: #e85382;
      border-radius: 10px;
    }

     .toggle_contents figure {
       width: 35%;
       display: inline-block;
       padding: 0.3rem;
     }
       /* 出演者欄 */
     .toggle_contents p {
       display: inline-block;
       font-size: 0.85rem;
       width: 60%;
       padding: 0.3rem;
       vertical-align: top;
     }

      /* パートの文字 */
    .toggle_contents ul {
      padding-bottom: :  0.2rem;
      list-style: none;
      display: flex;
      flex-wrap: wrap;
      justify-content: left;
      margin-top: 10px;
      margin-left: 10px;

      font-weight: 700;
    }

    .toggle_contents li {
      color: #e85382;
      padding-right: 1rem;
    }


   /*register　有料会員登録*/

   .regi_btn {
       margin-top: 2rem;
   }

   .regi_btn .link_btn a {
       margin: 0 auto;
   }




    /* footer */

    footer {
        text-align: center;
        font-size: 12px;
        background-color: #ffcce1;
        padding: 30px 0;
    }

    footer .footer_content {
        position: relative;
        max-width: 1280px;
        margin: 0 auto;
    }

    .foot-main_logo-wrap {
        text-align: center;
    }

    .foot-main_logo {
        width: 160px;
    }

    .foot-main_copy {
        padding-top: 10px;
        font-size: 0.7rem;
    }

    .foot-main_sns {
        display: inline-block;
        padding-top: 15px;
        text-align: center;
    }

    .foot-main_sns>li {
        display: block;
        float: left;
        padding-right: 4px;
        padding-left: 4px;
    }

    .foot-main_sns>li:first-child {
        padding-top: 2px;
    }

    .foot-main_sns>li>a {
        display: block;
    }

    .foot-main_sns-tw {
        width: 33px;
    }

    .foot-main_sns-line,
    .foot-main_sns-fb,
    .foot-main_sns-youtube {
        width: 30px;
    }

    .foot-main_inquiry {
        padding-top: 20px;
        font-size: .69rem;
    }

    .foot-main_inquiry>a {
        color: #323232;
        font-weight: bold;
        text-decoration: none;
    }

    .foot-main_inquiry>a:hover {
        text-decoration: underline;
    }

    @media (max-width: 980px) {
        header {
            margin-top: 55px;
            background-color: #f14f9b;
            height: 60vw;
        }
        header .mainvisual {
            background: url("../img/top_header_sp.png") no-repeat center center/cover;
        }
        .introduction_inner {
            padding: 10px;
        }
        #contents>section .inner {
            padding: 50px 20px;
        }
        .video_wrap {
            width: 100%;
        }
        .letter_cont ul li {
            width: 100%;
        }
        .letter_cont ul li dl dt {
            border-radius: 7px 7px 0 0;
            position: relative;
            background-color: #232323;
            font-size: 1.2rem;
            padding: 0.5rem;
            color: #fff;
        }
        .broadcast_cont figure {
            width: 100%;
        }
        .broadcast_cont .sub_cont {
            padding-top: 1rem;
            width: 100%;
        }
        .link_btn a {
            margin: 0 auto;
        }
        nav ul li a {
            padding: 3px 20px 0;
        }
        footer .footerlink {
            padding: 0 20px;
        }
    }

    @media (max-width: 768px) {
        nav .nav_logo {
            left: 5px;
            top: 15px;
        }
        nav .nav_logo img {
            width: 70%;
        }
        nav ul li a {
            padding: 0 20px 0;
        }
    }

    @media (max-width: 640px) {
        .pcbr {
            display: none;
        }
        #contents>section .inner {
            padding: 30px 15px;
        }
        footer .footerlink {
            padding: 0 15px;
        }
        header {
            padding-top: 50px;
        }
        nav .nav_logo {
            top: 2px;
        }
        nav .spmenu {
            display: block;
            position: absolute;
            right: 10px;
            width: 40px;
            height: 40px;
            top: 8px;
            cursor: pointer;
        }
        nav .spmenu:before,
        nav .spmenu:after,
        nav .spmenu span {
            content: "";
            display: block;
            position: absolute;
            height: 2px;
            width: 24px;
            top: 19px;
            left: 8px;
            background: #FFF;
            overflow: hidden;
            transition: .5s;
            -webkit-transition: .5s;
        }
        nav .spmenu span {
            opacity: 0;
        }
        nav .spmenu:before {
            top: 15px;
        }
        nav .spmenu:after {
            top: 23px;
        }
        nav.open .spmenu:before {
            top: 19px;
            transform: rotate(45deg);
            -webkit-transform: rotate(45deg);
        }
        nav.open .spmenu:after {
            top: 19px;
            transform: rotate(-45deg);
            -webkit-transform: rotate(-45deg);
        }
        nav ul {
            padding-top: 55px;
            padding-bottom: 0;
            height: 0;
            overflow: hidden;
            transition: .5s;
            -webkit-transition: .5s;
        }
        nav.open ul {
            height: 250px;
        }
        nav ul li {
            display: block;
            margin: 0 auto;
            text-align: center;
            border: none;
            padding: 15px 0;
        }
        nav ul li a {
            padding: 2px 8px;
        }
        h2.section_title {
            margin-bottom: 30px;
        }
    }

    @media (max-width: 480px) {
        header .mainlogo {
            width: 85%;
        }
        header .sp {
            width: 100%;
            display: block !important;
        }
        header .pc {
            display: none !important;
        }
        h2.sectiontitle {
            width: 100%;
        }
        footer p {
            font-size: 10px;
        }
    }
