/* VIDEOTEASER */
#videoTeaser { padding: 100px 100px 140px; border-bottom: 1px solid #364d51; }

#videoTeaser .frameWrapper { padding: 0 60px; }

#videoTeaser .frameWrapper iframe { width: 100%; height: 508px; }

.area { padding: 130px 0; border-bottom: 1px solid #364d51; }

/* AREASCHEDULE */
.areaSchedule .scheduleItem { text-align: center; margin-bottom: 100px; }

.areaSchedule .scheduleItem:last-child { margin-bottom: 0; }

.areaSchedule .scheduleItem .scheduleTitle { background-image: linear-gradient(180deg, transparent 1%, #2c4b4c 0); font-size: 32px; line-height: 1; font-weight: normal; margin-bottom: 50px; letter-spacing: 10px; }

.areaSchedule .scheduleItem .scheduleText { font-size: 20px; line-height: 2.2; background: url("../../images/2017/index/border.png") no-repeat center bottom; padding-bottom: 88px; margin-bottom: 35px; }

.areaSchedule .wrap2 { overflow: hidden; margin-top: 100px; }

.areaSchedule .wrap2 .scheduleItem { width: calc(50% - 20px); float: left; margin-right: 40px; }

.areaSchedule .wrap2 .scheduleItem:last-child { margin-right: 0; }

/* AREASYNOPSIS */
.areaSynopsis .synopsisText { font-size: 16px; text-align: center; line-height: 2.2; }

/* AREASTAFF */
.areaStaff { padding: 100px 0 140px; border-bottom: 1px solid #364d51; }

.areaStaff .staffTable table { width: 63%; font-size: 16px; margin-top: 125px; }

.areaStaff .staffTable table tr th, .areaStaff .staffTable table tr td { padding-bottom: 45px; vertical-align: top; }

.areaStaff .staffTable table tr th p, .areaStaff .staffTable table tr td p { line-height: 1; }

.areaStaff .staffTable table tr th { font-weight: normal; text-align: right; }

.areaStaff .staffTable table tr th p { padding-right: 25px; border-right: 1px solid #314145; }

.areaStaff .staffTable table tr td { padding-left: 30px; }

/* AREACAST */
.areaCast .wrap1 { overflow: visible; }

.areaCast .wrap1 .areaTitle { position: absolute; margin-top: 0; }

.areaCast .wrap1 .wrap1Right { width: 1226px; margin: 80px -103px auto -103px; }

.areaCast .wrap1 .wrap1Right .castWrapper { margin-bottom: 100px; }

.areaCast .wrap1 .wrap1Right .castWrapper .cast { text-align: center; margin-bottom: 30px; overflow: hidden; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; justify-content: center; }

.areaCast .wrap1 .wrap1Right .castWrapper .cast li { float: left; }

.areaCast .wrap1 .wrap1Right .castWrapper .cast1 { padding-left: 210px; }

.areaCast .wrap1 .box { text-align: center; padding: 120px 0 0; background: url("../../images/2017/index/border.png") no-repeat center top; }

.areaCast .wrap1 .box .outfitTitle { font-size: 26px; width: 240px; text-align: center; border: 1px solid #fff; padding: 12px; display: inline-block; vertical-align: middle; margin-right: 105px; }

.areaCast .wrap1 .box .outfitList { width: 402px; overflow: hidden; display: inline-block; vertical-align: middle; }

.areaCast .wrap1 .box .outfitList li { font-size: 18px; float: left; margin-right: 35px; padding: 16px 0; }

.areaCast .wrap1 .box .outfitList li:nth-child(4n) { margin-right: 0; }

/* AREAGOODS */
.areaGoods { padding: 130px 0 0; border-bottom: none; }

.areaGoods .goodsList dl dt { font-size: 18px; }

.areaGoods .goodsList dl dt:nth-child(n+2) { margin-top: 60px; }

.areaGoods .goodsList dl dd { font-size: 16px; margin-top: 15px; }

@media (max-width: 768px) { .area { padding: 30px 0; }
  #videoTeaser { padding: 20px 0 0 0; border-bottom: none; }
  #videoTeaser .frameWrapper { padding: 0; }
  #videoTeaser .frameWrapper iframe { height: 200px; }
  .areaSchedule .scheduleItem { margin-bottom: 40px; }
  .areaSchedule .scheduleItem:last-child .scheduleTable img { width: 60%; }
  .areaSchedule .scheduleItem .scheduleTitle { font-size: 25px; background-image: linear-gradient(180deg, transparent 30%, #2c4b4c 0); margin-bottom: 20px; }
  .areaSchedule .scheduleItem .scheduleText { font-size: 19px; line-height: 1.5; background: url("../../images/2017/index/border_sp.png") no-repeat center bottom/100%; padding-bottom: 100px; }
  .areaSchedule .wrap2 { margin-top: 30px; }
  .areaSchedule .wrap2 .scheduleItem { width: 100%; margin: 0 0 30px 0; }
  .areaSchedule .wrap2 .scheduleItem .scheduleTable img { width: 30%; }
  .areaSchedule .wrap2 .scheduleItem:last-child .scheduleTable img { width: 60%; }
  .areaSynopsis .synopsisText { font-size: 14px; line-height: 1.5; }
  .areaStaff .staffTable table { font-size: 14px; margin-top: 0; width: 100%; }
  .areaStaff .staffTable table tr th, .areaStaff .staffTable table tr td { padding-bottom: 10px; letter-spacing: 0; }
  .areaStaff .staffTable table tr th p, .areaStaff .staffTable table tr td p { line-height: 1.5; }
  .areaStaff .staffTable table tr th { width: 35.5%; }
  .areaStaff .staffTable table tr th p { padding-right: 10px; }
  .areaStaff .staffTable table tr td { padding-left: 10px; }
  .areaCast .wrap1 .areaTitle { position: static; }
  .areaCast .wrap1 .wrap1Right { width: 100%; margin: 0; }
  .areaCast .wrap1 .wrap1Right .castWrapper { margin-bottom: 30px; padding: 0 6.5%; }
  .areaCast .wrap1 .wrap1Right .castWrapper .cast { display: block; margin-bottom: 0; }
  .areaCast .wrap1 .wrap1Right .castWrapper .cast li { margin-bottom: 10px; }
  .areaCast .wrap1 .wrap1Right .castWrapper .cast1 { padding: 0 3%; }
  .areaCast .wrap1 .wrap1Right .castWrapper .cast1 li { width: 50%; }
  .areaCast .wrap1 .wrap1Right .castWrapper .cast2 { margin-bottom: 0; }
  .areaCast .wrap1 .wrap1Right .castWrapper .cast2 li { width: calc(100%/3); }
  .areaCast .wrap1 .wrap1Right .castWrapper .cast3 li { width: calc(100%/3); }
  .areaCast .wrap1 .box { padding: 70px 0 0; background: url("../../images/2019/index/border_sp.png") no-repeat center top/100%; }
  .areaCast .wrap1 .box .outfitTitle { font-size: 20px; margin: 0 auto 15px; width: 48%; padding: 6px; }
  .areaCast .wrap1 .box .outfitList { width: 100%; text-align: center; }
  .areaCast .wrap1 .box .outfitList li { float: none; display: inline-block; padding: 4px 0; font-size: 14px; margin: 0 20px; }
  .areaCast .wrap1 .box .outfitList li:nth-child(4n) { margin-right: 20px; }
  .areaCast .wrap1 .box .outfitList li.breakline { display: block; line-height: 0; padding: 0; }
  .areaGoods { padding: 30px 0 0; }
  .areaGoods .goodsList dl dt { font-size: 14px; }
  .areaGoods .goodsList dl dt:nth-child(n+2) { margin-top: 30px; }
  .areaGoods .goodsList dl dd { font-size: 12px; margin-top: 5px; } }

@media (max-width: 414px) { .areaSchedule .scheduleItem .scheduleText { padding-bottom: 50px; } }
