body {
 font-family: "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", HG丸ｺﾞｼｯｸM-PRO, HGMaruGothicMPRO;
 /*font-family: Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;*/
 width: 100%;
 background: #21286b;
 overflow-x: hidden;
}
#mainArea .pbNestedWrapper img {width:100%;}

/* font */
body {
 font-size: 16px;
 line-height: 1.5em;
}
.fs0 {font-size:9.88px;}
.fs1 {font-size:16px;}
.fs2 {font-size:25.88px;}
.fs3 {font-size:41.88px;}
.fs4 {font-size:67.71px;}
.fs5 {font-size:16px;}
.fs6 {font-size:16px;}
.note { font-weight: normal;
 font-size: .5em;
vertical-align:top;}
h3 {
 margin: 0 0 2vw;
}

#area0>.pbNested>div:nth-child(2)>div {}


.contblk {
 padding: 10vw 0 0;
 text-align: center;
}
.contblk h2 {
 font-size: 25.88px;
    font-weight: 900;
    margin-bottom: 30px;
}

.w1200 {
 width: 100%;
 max-width: 1200px;
 margin: 0 auto;
}
.w1000 {
 width: 100%;
 max-width: 1000px;
 margin: 0 auto;
}

.annotation {font-size:9.88px;line-height:1.25em;}
a.plan_other {
    display: block;
    border: 1px solid #f5b11c;
    border-radius: 8px;
    text-align: center;
    letter-spacing: .15em;
    color: #f5b11c;
    padding: 1vw 0;
    margin: 2vw 1px;
}
.accordion-005 {
 margin: 4px 0 7px;
 margin-bottom: 7px;
 background-color: #5e6287;
 border-radius: 5px;
}
.accordion-005 summary {
 display: flex;
 justify-content: space-between;
 align-items: center;
 position: relative;
 padding: .75em 2em;
 color: #e6e6e6;
 letter-spacing: .1em;
 font-weight: 600;
 cursor: pointer;
}
.accordion-005 summary::-webkit-details-marker {
 display: none;
}
.accordion-005 summary::after {
 transform: translateY(-25%) rotate(45deg);
 width: 7px;
 height: 7px;
 margin-left: 10px;
 border-bottom: 3px solid #b6bdc3;
 border-right: 3px solid #b6bdc3;
 content: '';
 transition: transform .3s;
}
.accordion-005[open] summary::after {
 transform: rotate(225deg);
}
.accordion-005 ul {
 transform: translateY(-10px);
 opacity: 0;
 margin: 0;
 padding: 0 2em .75em;
 color: #e6e6e6;
 transition: opacity .5s;
}
.accordion-005[open] ul {
 transform: none;
 opacity: 1;
}


/* FV */
#FV {
}
#FV .fv_bottom {
    width: 90vw;
    margin: 7vw auto 10vw;
}
#FV .fv_bottom>img,#mainArea .pbNestedWrapper .cta_block>img {
    display: block;
    width: 90%;
    margin: 0 auto 5vw;
}
#FV .fv_bottom>div,.cta_block>div>ul {
    text-align: justify;
    line-height: 1.3em;
    color: #ccc;
}


/* #worries */
#worries {
 background: #4a3f94;
    background: url(../img/bg_head_bl_pc.gif) repeat-x;
    background-size: 20px;
    padding: 16vw 0 10vw;
}
#worries .heading {
    align-items: center;
    display: flex;
    justify-content: center;
    color: #fbc917;
    font-size: 14px;
    letter-spacing: .15em;
}
#worries h2 {
font-size: 22px;
    width: 100%;
    text-align: center;
    color: #fff;
    font-weight: 600;
    margin: 3vw 0 8vw;
}
#worries .heading::before, #worries .heading::after {
    background-color: #fbc917;
    border-radius: 2px;
    content: "";
    height: 2px;
    width: 30px;
}
#worries .heading::before {
    margin-right: 10px;
    transform: rotate(60deg);
}
#worries .heading::after {
    margin-left: 10px;
    transform: rotate(-60deg);
}
#worries .anker {
    background: #4a3f94;
    padding: 0 4vw 10vw;
}
#worries .anker>.inner_anker:not(:last-child) {
    margin-bottom: 3vw;
}
#worries .anker>.inner_anker{
 animation: poyopoyo 2s ease-out infinite;
    opacity: 1;
}
@keyframes poyopoyo {
  0%, 40%, 60%, 80% {
    transform: scale(1.0);
  }
  50%, 70% {
    transform: scale(0.95);
  }
}
#worries>img {
    display: block;
    background: #4a3f94;
}

.arrow {width:30px;margin: 0 auto 10vw;animation: arrowmove 1s ease-in-out infinite;
}
@keyframes arrowmove{
      0%{margin: 0 auto 10vw;}
      50%{margin: 2vw auto 8vw;}
     100%{margin: 0 auto 10vw;}
}

/* #bl1 #bl2 #bl3 */
#bl1, #bl2, #bl3 {
    margin-bottom: 20vw;
}
.bl_answer {
    background: #fff;
    padding: 1vw 4vw 0;
}
.bl_answer h3 {
 border-left: 6px solid #fbc917;
    padding-left: 3vw;
    height: 46px;
    line-height: 46px;
    margin-bottom: 3vw;
 font-weight: 900;
}
.bl_answer>img {
    margin-top: 10vw;
}

#bl2 .inner_bl {
    font-size: 0;
 margin-bottom: 8vw;
}
#bl2 .bl_answer .inner_bl>img {
    margin: 0 0 2vw;
}
#bl2 .inner_bl .genre_box {
 display: inline-block;
 width: 32.8%;
 font-size: 0;
 margin: 0 0 .5vw;
 padding: 1.5vw 1.5vw 0;
}
#bl2 .inner_bl .genre_box:nth-of-type(2),
#bl2 .inner_bl .genre_box:nth-of-type(5),
#bl2 .inner_bl .genre_box:nth-of-type(8) {
 margin: 0 .8%;
}
#bl2 .inner_bl .genre_box:nth-of-type(2) {
 position: relative;
}
#bl2 .inner_bl .genre_box:nth-of-type(2):after {
 content: "※国内ドラマも一部含まれております";
 position: absolute;
 right: 1.5vw;
 bottom: .5vw;
 font-size: 9.88px;
}
#bl2 .inner_bl .genre_box>img {
 display: inline-block;
  width: 40%;
 vertical-align: middle;
}
#bl2 .inner_bl .genre_box>dl {
 display: inline-block;
 width: 60%;
 vertical-align: middle;
}
#bl2 .inner_bl .genre_box>dl dt {
 font-size: 25.88px;
 text-align: left;
 margin-bottom: 16px;
 padding-left: 9.88px;
}
#bl2 .inner_bl .genre_box>dl dd {
 text-align: right;
}
#bl2 .inner_bl .genre_box>dl dd span {
 font-size: 16px;
 display: block;
 font-weight: 600;
}
#bl2 .inner_bl .genre_box>dl dd span.titles_vol {
 font-size: 41.88px;
 font-weight: 900;
 margin-bottom: 9.88px;
}
#bl2 .inner_bl .annotation {
 font-size: 9.88px;
}

#bl3 ul.riyou_flow>li:nth-child(even) {
    width: 7%;
    margin: 2vw auto;
    line-height: 0;
}


/* #plan */
#plan {
 background: #fff;
}
#plan h2{
}
#plan .inner_contblk>p:first-child {
 font-weight: 900;
 margin-bottom: 38.44px;
}
#plan .inner_contblk table {
 width: 100%;
 margin-bottom: 16px;
}
#plan .inner_contblk table th,
#plan .inner_contblk table td {
 border: 1px solid #fff;
 padding: 25.88px;
 text-align: center;
 line-height: 1.5em;
 vertical-align: middle;
}
#plan .inner_contblk table th.plantable_th {
 background: #ebebeb;
 width: 30%;
}
#plan .inner_contblk table td {
 background: #f4f4f4;
}
#plan .inner_contblk table td.oldnew {
 width: 35%;
}
#plan .inner_contblk table.tbl01 tbody>tr:first-child th,
#plan .inner_contblk table.tbl02 tbody>tr:first-child th {
 background: #959595;
 font-weight: 900;
 color: #fff;

}
#plan .inner_contblk table.tbl01 tbody>tr:nth-child(3)>td,
#plan .inner_contblk table.tbl01 tbody>tr:nth-child(4)>td {
 font-weight: 900;
}
#plan .inner_contblk table.tbl01 tbody>tr:nth-child(2)>td:nth-child(2),
#plan .inner_contblk table.tbl01 tbody>tr:nth-child(3)>td:first-child {
 background: #ebebeb;
 font-weight: normal;
}
#plan .inner_contblk table.tbl02 {
 margin-top: 38.84px;
}
#plan .inner_contblk table.tbl02 td img {
 max-width: 526px;
}
#plan .inner_contblk .annotation {
 text-align: right;
 line-height: 1.5em;
}
#plan .inner_contblk table tbody>tr:last-child td p {
 margin-bottom: 16px;
}


/* #works */
#works {
    color: #fff;
}
#works h2{
}
#works h3 {
 margin: 0 0 16px 12vw;
 text-align: left;
}

/* slick adjust */
.slider {
 margin-bottom: 25.88px;
}
.slick-slide{
 margin-right: 3px;
 margin-left: 3px;
}
.slider .slick-list {
 padding: 0 30px 0 12vw!important;
}
#bl1 .slider .slick-list {
    padding: 0 30px 0 0 !important;
}
.slick-prev,
.slick-next
{
 z-index: 100;
 width: 30px;
 height: 120px;
}
.slick-prev {
 left: 0;
}
.slick-next {
 right: 0;
}
.slick-prev.slick-disabled:before, .slick-next.slick-disabled:before {
 opacity: 0;
}
.slick-arrow:before{
 content:"";
 width: 100%!important;
 height: 100%!important;
 position: absolute;
 top: 0;
 left: 0;
}
.slick-next:before{
 background: url("../img/btn_next.png") no-repeat !important;
 background-size: cover !important;
}
.slick-prev:before{
 background: url("../img/btn_prev.png") no-repeat !important;
 background-size: cover !important;
}
.slick-slide span {
 display: block;
 margin: 5px 0 0;
 text-align: left;
 font-size: 9.88px;
 line-height: 1.4em;
}
.slick-slide span.cd_name {
 font-weight: 600;
}
.slick-slide span.artist_name {
 margin: 2px 0 0;
}

/* .cta_block */
.cta_block {
 width: 90vw;
 margin: 0 auto 15vw;
 text-align: center;
}
#faq + .cta_block {
 margin: 20vw auto;
}
.attention {
    position: relative;
    display: inline-block;
    padding: 0 6vw;
    margin-bottom: 7vw;
    color: #fff;
    font-size: 4vw;
}
.attention p {
    text-align: center;
}
.attention p span {
  animation: pikapika 2s linear infinite;
  scale: 1;
}
@keyframes pikapika {
	0% {
		opacity: 1;
	}
	25% {
		opacity: .2;
	}
	50% {
		opacity: 1;
	}
	75% {
		opacity: .2;
	}
}
.attention:before {
    position: absolute;
    left: 0;
    top: 0;
    content: "";
    width: 1px;
    height: 100%;
    background: #fff;
    border-radius: 3px;
    transform: rotate(-25deg);
}
.attention:after {
    position: absolute;
    content: "";
    right: 0;
    top: 0;
    width: 1px;
    height: 100%;
    background: #fff;
    border-radius: 3px;
    transform: rotate(25deg);
}
.cta_block .inner_cta_block {
 display: flex;
 align-items: center;
 max-width: 1200px;
 margin: 0 auto;
 padding: 67.71px 0;
}
.cta_block .inner_cta_block .cta_l {
 width: 50%;
 text-align: center;
}
.cta_block .inner_cta_block .cta_l>img {
 display: inline-block;
 max-width: 406px;
 margin-bottom: 41.88px;
}
.cta_block .inner_cta_block .cta_l a {
 display: inline-block;
 max-width: 498px; 
}
.cta_block .inner_cta_block .cta_r {
 width: 50%;
 font-size: 9.88px;
 margin-left: 41.88px;
}
.cta_block .inner_cta_block .cta_r>ul {
}
.cta_block .inner_cta_block .cta_r ul li {
 line-height: 1.5em;
}
.cta_block .inner_cta_block .cta_r>ul>li {
 margin-bottom: -0.4em;
}
.cta_block .inner_cta_block .cta_r>ul>li>ul {
 margin: 0.5em 0;
}
.phone {
 text-align:center;
}
.phone h2 {
 font-size: 25.88px;
 font-weight: 900;
}
.phone a {
 display: block;
 background: #438f89;
 border-radius: 7px;
 margin: 6vw auto 1vw;
 padding: 4vw 4vw 2vw;
 color: #fff;
 text-align: center;
 filter: none;
}
.phone a>* {
 display: inline-block;
 vertical-align: bottom;
}
.phone a img {
 max-width: 70px;
}
.phone a .tel_wrap {
 font-weight: 900;
 height: 70px;
 margin-left: 16px;
}
.phone a .tel_wrap h3 {
 font-size: 16px;
 line-height: 16px;
 height: 16px;
 margin: 0 0 4px;
 text-align: left;
}
.phone a .tel_wrap p {
 display: inline-block;
 margin: 0;
 font-size: 5vw;
    height: 8vw;
    line-height: 8vw;
}
.phone a .tel_wrap span {
 display: inline-block;
 font-size: 10px;
}
.phone a > p {
 font-size: 16px; 
}
.cta_block a+p {
    color: #fff;
    font-size: 9.88px;
    letter-spacing: .2em;
}


/* #faq */
#faq {
    background: #fff;
}
#faq h2 {
}
.tips_faq {
 border-left: 8px solid #ffeba4;
 padding: 1.5vw 0 3vw 1.5vw;
}
.tips_faq p:first-child {
 font-weight: 600;
 margin: 0 0 1vw;
}
.tips_faq img {
 max-width: 802px;
}
.toggle {
 display: none;
}
.option {
 position: relative;
 margin-bottom: 1em;
}
.title,
.content {
 -webkit-backface-visibility: hidden;
 backface-visibility: hidden;
 transform: translateZ(0);
 transition: all 0.3s;
}
.title {
 padding: 25.88px 41.88px;
 display: block;
 font-size: 25.88px;
 font-weight: 600;
 background: #ebebeb;
 text-align: left;
}
.title:hover {
 background: #ffb609;
 text-align: left;
 transition: all .3s;
}
.title::after,
.title::before {
 content: "";
 position: absolute;
 right: 1.25em;
 top: 1.1em;
 width: 2px;
 height: 0.75em;
 background-color: #999;
 transition: all 0.3s;
}
.title::after {
 transform: rotate(90deg);
}
.title:hover::after,
.title:hover::before {
 background-color: #000;
}
.content {
 max-height: 0;
 overflow: hidden;
 padding: 0 25.88px;
 text-align: justify;
}
.content p {
 margin: 16px 0;
}
.toggle:checked + .title + .content {
 max-height: 1500px;
 transition: all 1.5s;
}
.toggle:checked + .title {
 background: #f0f0f0;
 transition: all 1.5s;
}
.toggle:checked + .title::before {
 transform: rotate(90deg) !important;
}


/* #footer */
#footer {
 background: #000;
 margin: 0 !important;
 color: #fff;
 padding: 60px 0;
}
#footer #link_footer {
 max-width: 1200px;
 margin: 0 auto 40px;
 text-align: center;
 font-size: 12px;
 line-height: 2.5em;
}
#footer #link_footer a {
 display: inline-block;
 margin-right: 30px;
}
.pbNestedWrapper #footer img {
 display: block;
 width: 258px;
 margin: 0 auto 20px;
}
#footer address {
 font-size: 12px;
 text-align: center;
}


/* aside */
aside {
 position: fixed;
 bottom: 0;
 left: 0;
 width: 100%;
 z-index: 100;
}
aside .inner {
 /*-webkit-backdrop-filter: blur(20px);*/
 /*backdrop-filter: blur(20px);*/
 background: rgba(0,0,0,.2);
 border-top: 1px solid rgba(256,256,256,.2);
 padding: 0.5vw 0;
}
aside .inner_cta_block {
 display: flex;
 align-items: flex-end;
 max-width: 1200px;
 margin: 0 auto;
}
aside .inner_cta_block .cta_l {
 width: 50%;
 text-align: center;
}
aside .inner_cta_block .cta_l>img {
 display: inline-block;
 max-width: 406px;
 margin-bottom: 41.88px;
}
aside .inner_cta_block .cta_l a {
 display: inline-block;
 max-width: 498px;
}
aside .inner_cta_block .cta_l a.tb,
aside .inner_cta_block .cta_l a.sp {
 display: none;
}
aside .inner_cta_block .cta_r {
 width: 50%;
 font-size: 9.88px;
 margin-left: 41.88px;
 text-align: justify;
}
aside .inner_cta_block .cta_r ul li {
 line-height: 1.5em;
}
aside .inner_cta_block .cta_r>ul>li {
 margin-bottom: -0.4em;
}
aside .inner_cta_block .cta_r>ul>li>.accordion-006>ul {
 margin: 0.5em 0;
}


/*----------------------------
.scroll_fadein
----------------------------*/
.scroll_fadein {
  transition: 0.8s ease-in-out;
  transform: translateY(30px);
  opacity: 0;
}
.scroll_fadein.on {
  transform: translateY(0);
  opacity: 1.0;
}


@media screen and (max-width:1552px) {
 .w1552 {
  width: 94vw;
 }
 #FV #top_wrap {
  width: 100%;
 }
 #FV #top_wrap #top_title {
  padding-left: 3vw;
 }
 #FV #top_wrap #top_annotation {
  padding-right: 3vw;
 }
}
@media screen and (max-width:1280px) {
 #about .inner_contblk .txt_about {
  margin: 2vw 0 0 4vw;
 }
 #about .inner_contblk .txt_about>div h3 {
  font-size: 25.88px;
 }
 #about .inner_contblk .txt_about>div:first-child h3 .pc {
  display: none;
 }
}
@media screen and (max-width:1200px) {
 .w1200 {
  width: 94vw;
 }
 #FV #top_wrap #top_title:before {
  top: 31vh;
  background-size: 80%;
 }
 #FV #top_wrap #top_title h1 img {
  width: 61vw;
 }
 .cta_block .inner_cta_block {
  width: 94%;
 }
 .inner_cta_block_tel a > p {
  display: block;
  margin: 9.88px 0 0 86px;
 }
 #info #inner_info a > p {
  display: block;
  margin: 9.88px 0 0 86px;
 }
 aside .inner_cta_block {
  width: 94%;
  align-items: center;
 }
 aside .inner_cta_block .cta_r {
  margin-left: 9.88px;
  width: 53.2%;
 }
 aside .inner_cta_block .cta_r ul li {
  line-height: 1.2em;
 }
}
@media screen and (max-width:1000px) {
 .w1000 {
  width: 94vw;
 }
 .phone a {
  padding: 4vw;
 }
 .phone a img {
  max-width: 6vw;
 }
 .phone a .tel_wrap h3 {
  font-size: 1.7vw;
  line-height: 1.7vw;
  height: 1.7vw;
  margin: 0 0 0.1vw;
 }
 .phone a .tel_wrap {
  height: 6vw;
  margin-left: 1.5vw;
 }
 .phone a .tel_wrap p {
  font-size: 4.5vw;
  height: 4.5vw;
  line-height: 4.5vw;
 }
 .phone a .tel_wrap span {
  font-size: 2vw;
 }
 .inner_cta_block_tel a > p {
  margin: 1vw 0 0 7.5vw;
  font-size: 2vw;
 }
 #info #inner_info a {
  padding: 4vw;
 }
 #info #inner_info a img {
  max-width: 6vw;
 }
 #info #inner_info a .tel_wrap h3 {
  font-size: 1.7vw;
  line-height: 1.7vw;
  height: 1.7vw;
  margin: 0 0 0.1vw;
 }
 #info #inner_info a .tel_wrap {
  height: 6vw;
  margin-left: 1.5vw;
 }
 #info #inner_info a .tel_wrap p {
  font-size: 4.5vw;
  height: 4.5vw;
  line-height: 4.5vw;
 }
 #info #inner_info a .tel_wrap span {
  font-size: 2vw;
 }
 #info #inner_info a > p {
  margin: 1vw 0 0 7.5vw;
  font-size: 2vw;
 }
}

/* #rec_bnr */
#rec_bnr {
 width: 94%;
 margin: 0 auto 10vw;
}

/* #rec_bnr2 */
#rec_bnr2 {
 width: 100%;
 margin: 0 auto 0vw;
}