@charset "utf-8";
/* == frontpage ==============================================*/
*{
    padding: 0;
    margin: 0;
}
body {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    line-height: 1;
    width: 100%; 
}
.sp-only{
    display: none;
}
img {
    vertical-align: bottom;
  }
/* ------------------------------
	bg -
------------------------------ */

.main_area{
    width: 100%;
    background-image: url(../img/body_bg01.jpg);
    margin: 0 auto;
}
/* ------------------------------
	wrapper -
------------------------------ */

.main_area_wrap {
    width: 90%;
    max-width: 1200px;
    margin: 0 auto;
    color: #000000;
    background-color: #fff;
  }
/**
 * menu
 */
.pc_nav {
    background: #304244;
}
.menu {
    position: relative;
    width: 100%;
    height: 80px;
    max-width: 1200px;
    margin: 0 auto;
    background: #304244;
}
/* .menu > li {
    float: left;
    width: 25%;
    text-align: center;
    transition: .5s ease;
    -webkit-transition: .5s ease;
    box-sizing: border-box;
} */
.menu > li {
    float: left;
    width: 33.3%;
    text-align: center;
    transition: .5s ease;
    -webkit-transition: .5s ease;
    box-sizing: border-box;
}
/* .menu > li a {
    border-right: 1px solid #486467;
} */
.menu > li a {
    display: block;
    color: #ffffff;
    border-right: 1px solid #486467;
    font-size: 16px;
    line-height: 80px;
}
.menu > li:last-child a{
    border-right: none;
}
/* .menu > li a:first-child {
    border-left: 1px solid #486467;
} */
.menu__none:hover, .menu__multi:hover, .menu__mega:hover, .menu__single:hover ,.page_front ul.menu li:nth-child(1) ,.page_profile ul.menu li:nth-child(2){
    background: #f2830a;
    box-shadow: 0px 0px 0px 3px #f89817 inset;
}
.menu__second-level li {
    border-top: 1px solid #ffffff;
}
.menu__third-level li {
    border-top: 1px solid #ffffff;
}
.menu__second-level li a:hover {
    background: #ffffff;
}
.menu__third-level li a:hover {
    background: #ffffff;
}
.menu__fourth-level li a:hover {
    background: #ffffff;
}
.init-bottom:after {
    content: '';
    display: inline-block;
    width: 6px;
    height: 6px;
    margin: 0 0 0 15px;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.menu:before, .menu:after {
    content: "";
    display: table;
}
.menu:after {
    clear: both;
}
.menu {
 *zoom: 1;
}
/**
 * single menu
 */
.menu > .menu__single {
    position: relative;
}
.menu__single .menu__second-level {
    position: absolute;
    top: 40px;
    width: 100%;
    background: #ffffff;
    -webkit-transition: .2s ease;
    transition: .2s ease;
    visibility: hidden;
    opacity: 0;
}
.menu__single:hover > .menu__second-level {
    top: 50px;
    visibility: visible;
    opacity: 1;
}
/*--↑nav↑--*/

.main_img_pc {
    width: 100%;
    /* height: 636px; */
    text-align: center;
    margin: 0 auto;
    background: url(../img/bg_top.jpg) no-repeat;
    background-size: cover;
}
.main_img_sp {
    display: none;
}
.pc_img{
    margin: 0 auto;
    padding: 50px 0px 30px;
}
.pc_img img{
    width: 84.3%;
}
.contents {
    width: 100%;
    margin: 0 auto;
    background: #ffffff;
    padding: 50px 0;
}
/*--↑共通↑--*/

.top_text {
    /* max-width: 875px;
    width: 73%; */
    margin: 0 auto;
    padding: 20px 50px;
    margin-bottom: 30px;
    line-height: 280%;
    background: #ffffff;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
}
.top_text p {
    font-size: 26px;
    color: #363230;
}
.top_banner {
    overflow: hidden;
    width: 500px;
    margin: 0 auto;
}
.top_banner li {
    width: 230px;
    float: left;
}
.top_banner li:last-child {
    margin-left: 20px;
}
#new {
    text-align: right;
    margin: 30px;
    color: #197902;
}
/*--↑TOP↑--*/

.box_01 {
    width: 100%;
    background: #ffffff;
    margin: 0 auto;
    margin-bottom: 30px;
}
#main-gallery .gallery-cell {
    width: 100%;
    height: 300px;
    counter-increment: gallery-cell;
}
/*--キャスト--*/
.pc_cast {
    display: block;
}
.sp_cast {
    display: none;
}
.cast_text {
    max-width: 914px;
    width: 90%;
    margin: 0 auto;
    padding: 30px 20px;
    line-height: 100%;
    background: url(../img/body_bg.jpg) repeat-y;
    overflow: hidden;
    margin-bottom: 50px;
    box-sizing: border-box;
}
.cast_img {
    width: 200px;
    margin: 0 50px 0 30px;
    float: left;
}
.cast_text p {
    font-size: 100%;
    color: #363230;
}
.cast_list {
    width: calc(100% - 280px);
    float: left;
}
.cast_list_box {
    border-top: 1px dashed #000000;
}
.cast_list ul {
    padding-top: 10px;
}
.cast_list ul li {
    overflow: hidden;
    line-height: 160%;
    font-size: 90%;
}
.cast_list ul li p {
    float: left;
    font-size: 14px;
    line-height: 2;
}
.cast_list ul li p.left_text {
    width: 125px;
    float: left;
    font-weight: bold;
    position: relative;
    display: flex;
  justify-content: space-between;
    margin: 0 35px 0 0;
}
.cast_list ul li p.left_text:not(.ex)::after{
    content: '：';
    position: absolute;
    right:-25px;
    top:0;
}
.cast_list ul li .colon-hidden::after{
    display: none;
}
.cast_list ul li p.right_text {
    width: calc(100% - 160px);
}
.cast_name {
    overflow: hidden;
    line-height: 200%;
    font-weight: bold;
}
.cast_name_01 {
    margin: 0 15px 0 0 ;
    float: left;
    font-size: 24px !important;
}
.cast_name_02 {
    width: 180px;
    float: left;
    font-size: 70%;
}
.cast_name_03 {
    font-weight: bold;
    line-height: 250%;
    letter-spacing: 3px;
    margin: 0 0 5px 0;
    font-size: 16px !important;
}
/* .mb30 {
    margin-bottom: 50px;
} */
/*--下層--*/

.bg_w {
    background: #ffffff;
}
footer {
    background: #ffffff;
}
