body {
    margin: 0;
    padding: 0;
    background:#e4e0cd url(../img/bg.gif?v=240527_1) repeat left top;
    font-family: Arial,'ＭＳ Ｐゴシック','MS P Gothic','メイリオ',Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',sans-serif,Helvetica;
}

a:link, a:visited {
    text-decoration: none;    
}

#mv {
    margin: 0 auto;
    text-align: center;
    height: 870px;
}

#mv .mv__body {
    position: relative;
    margin: 0 auto;
    text-align: center;
    max-width: 1100px;    
}

#mv .badge {
    position: absolute;
    top: 710px;
    right: 50px;
}

.badge_date {
	position: absolute;
	top: 72%;
    left: 1%;
}

.container {
    margin: 0 auto;
    width: 1100px;
    background-color: #fffee3;
}

.tweet_btn {
    display:none;
}

.cast_box {
    display:none;    
}

.cast_img {
    margin: 0 auto;
    padding-top: 20px;
    text-align: center;
}

h1 {
   padding: 25px 0; 
}

.concept {
}
.concept__body {
    margin: 0 auto;
    width: 1100px;    
    text-align: center;
}

.information__body {
    margin: 0 auto;
    max-width: 900px;
}
.information_ttl {
    padding: 46px 0 10px;
    text-align:left;
}
.information {
    margin: 0 auto;
    max-width: 1100px;
    text-align: center;
}
.information_list {
    padding: 10px;
    box-sizing: border-box;
    background-color: #fff;
    /* border:1px dashed #dddddd; */
    text-align: left;
    font-size: 12px;
    line-height: 1.6;
}
.information_list ul {
    padding: 5px;
    list-style-type: none;
}
.information_list ul li {
    padding: 10px 0 10px 10px;
    border-bottom: 1px dotted #000;
}
.menu {
    margin: 0 auto;
    padding-top:35px;
    max-width: 1100px;
    text-align: center;
}

.menu {
    margin: 0 auto 25px;
    max-width: 1100px;
    text-align: center;
}

.menu__body {
    margin: 0 auto;
    max-width: 900px;
}

.menu_ttl {
    text-align: left;
    padding-bottom: 10px;
}

.menu_pc li {
    margin-bottom:5px;
    /* width: 100%; */
    background-color:#fff;
    padding: 15px;
    text-decoration: none;
}

.menu_pc li:hover {
    opacity: .9;
}

.menu_pc li .menu_cts {
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #000;
}
.menu_pc li .menu_cts span {
    margin-right: 10px;
}
.menu_pc li .menu_cts div:nth-of-type(2) {
    position: relative;
    color: #fff;
    background-color: #ff0066;
    padding: 10px 50px;
    font-size: 14px;
    border-radius: 5px;
}
.menu_pc li .menu_cts div::after {
    content: url(../img/arrow_right.png);
    position: absolute;
    top: 50%;
    right: 4%;
    transform: translateY(-50%);
}

.menu_pc li .menu_cts div:first-child {
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: 500;
}

.menu_pc li .menu_cts div:first-child:after {
    content: none;
}

.menu_sp {
    display: none;    
}

.lineup__body {
    box-sizing: border-box;
    margin: 0 auto;
    margin-left: 100px;
    margin-right: 100px;
    max-width: 1100px;
    text-align: center;
}
.lineup__body-items {
    display: flex;
    flex-wrap: wrap;
    margin: 0 auto;
    padding-top: 30px;
}
.lineup__body-item {
    margin-right: 25px;
    margin-bottom: 60px;
    box-sizing: border-box;
    color: #fff;
}
.lineup__body-item-img img {
    width: 100%;
}
.lineup__body-item-texts {
    display:none;
}
.btn_store {
    margin:0 auto;
    margin-top: 13px;
    background-color: #a91f11;
    color: #fff;
    font-size: 14px;
    font-weight: bold;
    text-align: center;
    max-width: 100%;
    border-radius: 4px;
    box-sizing: border-box;
}
.btn_store a {
    padding: 15px;
    display: block;
}
.btn_store:hover {
    opacity: 0.9 ;
    color: #fff;
    cursor: pointer;
}

.btn_store a:link {
    color: #fff;
}

.btn_store a:visited {
    color: #fff;
}
.btn_store span {
    display: none;
}

.menu_list ul li {
    list-style-type: none;
}


.contents_top{
	display: flex;
	flex-direction: row-reverse;
	justify-content: center;
	padding: 26px 0 9px;
}
.product {
	padding-top: 20px;
	width: 450px;
}
.spec{
	padding-left: 5%;
}
.title_pc{
	margin: 11px 0 2px;
    text-align: left;
    font-family: "M PLUS Rounded 1c", sans-serif;
}

.title_pc p {
    line-height: 1.2em;
}
.title_pc span {
    font-size: 14px;
    font-weight: 500;
}
.title_pc .title {
    font-size: 20px;
    font-weight: bold;
}
.twitter{
	padding-top: 55px;
}

.cast {
	width: 450px;
}

.lineup {
    margin-right: 6%;
}

.comment {
    flex-basis: 900px;
}

.comic {
	flex-basis: 1000px;
}

.item_box {   
}

.item_img_wrap {
    margin-right: 15px;    
}

.item_img_wrap img {
	width:296px;
}

.item_box {
	padding: 15px 0 26px;
    text-align: center;
    /* width: 300px; */
    width: 296px;
    margin: 0 auto;
}


.item1{
    position: relative;
}

.item1::after{
    content: "";
    display: block;
    border-bottom:1px dotted #646464;
    width: 375px;
    position: absolute;
    top: 100.5%;
    left: -14%;
}
@media all and (max-width:768px){
    .item1::after{
        display: none;
    }
}

.item2{
    position: relative;

}

.item2::after{
    content: "";
    display: block;
    border-bottom:1px dotted #646464;
    width: 375px;
    position: absolute;
    top: 100.5%;
    left: -14%;
}

@media all and (max-width:768px){
    .item2::after{
        display: none;
    }
}

/*
.item_box.item1 {
    border-bottom:1px dotted #646464;    
}
*/

.title_sp {
    display: none;
}

.contents_box {
	padding-top: 75px;
    display: flex; 
    justify-content: space-around;
    max-width: 900px;
    margin:0 auto;
}

.sample {
	flex-basis: 900px;
}

.contents_box .twitter {
    margin-top: 80px;
}

.contents_box h2 {
	margin-bottom: 45px;
    padding: 0;
    background-color: #fff;
    font-size: 15px;
}

.contents_box .comment .ttl_report {
    padding: 20px 10px;
    border: solid 1px #ddd;
    margin-bottom: 15px;
}

.contents_box .comment .ttl_report.ar_heading {
    line-height: 1.3em;
}

.contents_box .read {
    font-size:14px;
    font-weight: bold;
    margin-bottom: 15px;
    line-height: 150%;
}

.question {
	background:#fff;
	border:solid 1px #ddd;
	font-size: 12px;
	padding:10px;
	margin-bottom:15px;    
    line-height: 150%;
}

.cast_name {
    font-size: 14px;
    font-weight: bold;
    color: #9d6810;
    line-height: 150%;
    margin-top: 15px;
	margin-bottom:10px;    
}

.comment_txt {
    paddong-bottom: 15px;
/*     border-bottom:1px dashed #333;   */
}

.comment_txt p {
	font-size: 14px;
	color:#333;
	line-height: 150%;
	margin-bottom:10px;
}
    .cast_photo img {
        width: 220px
    }
.justification_comment {
	margin-left: 1em;
	text-indent: -1em;
}

.comic p {
    display: none;
}


.comic_img {
	margin: 0 auto 35px;
	text-align: center;
		
}

.comic_img img {
    width: 800px;
		
}

.information_list .icon_new {
    color:#f00;
    font-size:1.0em;
    padding:3px;
}

.audition p {
    font-size:14px;
    margin-bottom: 15px;
}

.youtube {    
	margin-bottom: 70px;
    position: relative;
    width: 100%;
    padding-top: 56.25%;
}
.youtube iframe {
      position: absolute;
      top: 0;
      right: 0;
      width: 100%;
      height: 100%;
    }

#btn_back {
    margin: 0 auto;
    margin-top: 50px;
    max-width:  900px;    
}

#btn_back a{
    display: inline-flex;
    align-items: center;
    background-color: #000;
    border: none;
    border-radius: 5px;
    color: #fff;
    padding: 8px 15px;
    font-size: 14px;
}

#btn_back a::before{
    content:"";
    display: inline-block;
    width: 10px;
    height: 14px;
    background-image: url("../img/arrow_right.png");
    background-size: contain;
    background-repeat: no-repeat;
    transform: rotate(180deg);
    margin-right: 5px;
}



.ttl_report_sp {
    display: none;    
}

.comment_box_author p {
    font-size:14px;
    margin:0 0 25px 0;
    color:#333333;
    line-height: 170%;
}

.comment_box_author .mt50 {
    margin-top:50px;
}

.comment_box_author .report_txt {
    color:#9d6810;
    font-weight:bold;
}

.sample p {
	line-height: 180%;
	font-size: 14px;
	margin-bottom: 10px;    
}

.sample .icon_new {
    font-weight:bold;
    color:#fff;
    font-size:1.0em;
    background-color:#f00;
    padding:3px 5px;
}

.footer {
    margin: 0 auto;
	padding: 0px 0 30px 0;
    max-width:1100px;
    color: #fff;
    text-align:center;
}
.footer .footer__body ul li {
    list-style-type : none;
}

.footer_menu  {
	display: flex;
	margin-top: 20px;
	margin-bottom: 20px;
	font-size: 12px;
	flex-wrap: wrap;
	justify-content: center;
	line-height: 140%;
}
.footer_menu li {
  float:left;
    list-style-type: none;
}
.footer_menu li:first-child:before {
    content: " | ";
    padding: 0 4px;
    display: inline-block;
    color:#000;
}
.footer_menu li:after {
    content: " | ";
    padding: 0 4px;
    display: inline-block;
    color:#000;
}
.copyright {
    clear: both;
    font-size:13px;
    color:#000;
}
    

.cast_comment_box {
    padding-top:20px;
    padding-bottom:20px;
    display: flex;
    border-bottom:1px dashed #333;
}

.comment_txt {
    margin-left:15px;    
}

.comment_txt p {
    font-size: 14px;
    color:#333;
    line-height: 150%;
	margin-bottom:10px;    
}

.comment_txt p.cast_name {
    font-size: 16px;
    color:#9d6810;
    margin-top:5px;
    margin-bottom:5px;
}

.comment_box {
    margin-bottom: 20px;
}


#share{
	
	text-align: center;
	padding-top: 20px;
	padding-bottom: 0;
}


#share ul{
	margin: auto;
	display: flex;
	width: 440px;
	height: 58px;
	justify-content: center;
	align-items: center;
	list-style: none;
}

#share ul li{
	width: 17%;
}

#share ul li img{
	width: min(50px, 63%);
}

#share ul li.icon_x img{
	width: min(42px, 49%);
}




/*------------------------------------------------------------------------------
 スマートフォン用の記述
 -------------------------------------------------------------------------------*/
@media all and (max-width:768px) {
    body {
        background-image: none;
        background-color: #fffee3;
    }

    #mv {
        width: 100%;
        height: auto;
    }
    #mv img {
        vertical-align: bottom;
        width: 100%;
    }
    #mv .mv__body {
        width: 100%;
    }
    #mv .badge {
        display: none;
    }
    #mv .badge_date {
        display: none;
    }
    .concept {
        width: 100%;    
    }
    h1 {
        margin: 0 auto;
        padding: 25px 0;
        width: 330px;
        text-align: center;
    }
    h1 img {
        width: 100%;
    }
    h2.lineup_ttl {
        margin: 0 auto;
        padding: 15px 0;
        width: 160px;
        text-align: center;
    }
    h2.lineup_ttl img {
        width: 100%;
    }
    h2.information_ttl {
        text-align:left;
		padding-top: 30px;
		padding-bottom: 10px;
    }
    h2.information_ttl img {
    }
    .container {
        width: 100%;
    }
    .concept__body {
        width: 100%;
    }
    .tweet_btn {
        margin:0 auto;
        padding: 10px 0 15px 0;
        display: inline-block;
        text-align: center;
        width: 100%;
    }
/*
    .cast {
        width:100%;
    }
    .cast__body {
        width:100%;
        margin:0;
        text-align:center;
    }
    .cast__body img {
        display: none;
    }
    .cast_box {
        margin:0 20px;
        display: inline-block;
        padding:10px;
        border:1px solid #ddd;
        background-color:#fff;
        color:#333;
    }
    .cast_box h2 {
        padding:10px;
        margin-bottom:10px;
        text-align: left;
        border-top:1px solid #ddd;
        border-bottom:1px solid #ddd;
        background-color:#eee;
        color:#666;
        font-size:14px;
    }
    .cast_box ul {
        line-height:160%;
        text-align: left;
        font-size: 14px;
    }
    .cast_box .cast_list {
        margin-bottom: 20px;
    }
    .cast_box ul li {
        list-style-type: none;
    }
    .cast_box ul li.caution {
        font-size:12px;
    }
    .cast_img {
        padding-top: 0;    
    }
*/
	.cast {
        width:100%;
    }
    .cast__body {
        width:100%;
        margin:0;
        padding: 0 15px;
        box-sizing: border-box;
        text-align:center;
    }
    .cast__body img {
        display: none;
    }
    .cast_comment_box {
        padding-bottom:10px;
        display: block;
    }
    .cast_photo {
        margin-bottom:10px;
        text-align:center;
    }
	
    .cast_box {
        /* margin:0 20px; */
        display: inline-block;
        padding:10px;
        border:1px solid #ddd;
        background-color:#fff;
        color:#333;
		width: 100%;
        box-sizing: border-box;
    }
    .cast_box h2 {
        padding:10px;
        margin-bottom:10px;
        text-align: left;
        border-top:1px solid #ddd;
        border-bottom:1px solid #ddd;
        background-color:#eee;
        color:#666;
        font-size:14px;
    }
    .cast_box ul {
        line-height:160%;
        text-align: left;
        font-size: 14px;
    }
    .cast_box .cast_list {
        margin-bottom: 20px;
    }
    .cast_box ul li {
        list-style-type: none;
    }
    .cast_img {
        padding-top: 0;    
    }
    
    .lineup {
        padding-top: 0;
        padding: 0 15px;
        box-sizing: border-box;
        margin-right: 0;
        width: 100%; 
    }
    .lineup__body {
        width: 100%;
        margin:0;
    }
    .lineup__body-items {
        display:flex;
        flex-wrap: nowrap;
        flex-direction: column;
        padding-top: 10px;
    }
    .lineup__body-item {
        margin-left: 20px;
        margin-right: 20px;
        margin-bottom: 20px;
        padding: 25px 20px;
        background-color: #fff;
        color: #000;
    }
    .lineup__body-item-img {
        margin: 0 auto;
        width: 100%;
        text-align: center;
    }
    .lineup__body-item-texts {
        display: inline-block;
    }
    .lineup__body-item-title {
        font-size: 20px;
        font-weight: bold;
        text-align: center;
        line-height: 1.3;
    }
    .lineup__body-item-title span {
        font-size: 14px;
    }
    .lineup__body-item-price {
        font-size: 12px;
        font-weight: bold;
        text-align: center;
    }
    .lineup__body-item-texts {
        padding-top: 15px;
        font-size: 14px;
        line-height: 1.5;
        text-align: left;
    }
    .btn_store {
        margin: 8px 20px 10px 20px;
        /* margin-top: 10px; */
        background-color: #a91f11;
        color: #fff;
        border-radius: 7px;
        font-size: 16px;
        font-weight: bold;
        text-align:center;
        line-height: 110%;
        /* min-width: 78%;
        max-width: 78%; */
        box-sizing: unset;
    }
    .btn_store a {
        padding: 20px 15px;
    }
    .btn_store span {
        display: inline-block;
        font-size: 12px;
    }
    .information {
        margin: 0 15px;
    }
    .information_list {
    }
    
    .menu {
        margin: 0 15px;
    }
    .menu_list .menu_pc {
        display: none;
    }
    .menu_list .menu_sp {
        display: inline;
    }
    .btn_menu_gray {
        margin:0 auto;
        margin-top: 10px;
        padding: 20px 15px;
        background-color: #ccc;
        color: #fff;
        border-radius: 7px;
        font-size: 16px;
        font-weight: bold;
        text-align:center;
    }
    .btn_menu {
        margin:0 auto;
        margin-top: 10px;
        background-color: #06c;
        color: #ff0;
        border-radius: 7px;
        font-size: 16px;
        font-weight: bold;
        text-align:center;
    }
    .btn_menu a {
        padding: 20px 15px;
        display: block;
    }

    .btn_menu a:link {
        color: #ff0;
    }

    .btn_menu a:visited {
        color: #ff0;
    }

	.menu_box {
		background-color: #fff;
		border: 1px solid #ddd;
		margin-bottom: 15px;
		padding: 8px;
	}
	.menu_box h3 {
		padding:10px;
		margin-bottom:10px;
		border-top:1px solid #ddd;
		border-bottom:1px solid #ddd;
		background-color:#eee;
		color:#666;
		font-size:14px;
		text-align: left;
		line-height: 160%;
        font-family: "M PLUS Rounded 1c", sans-serif;
        font-weight: 500;
	}
	.product {
		display: block;
		padding-top: 20px;
        width: 100%;
        margin: 0 auto;
	}

	.contents_top{
		display: block;
		padding-top: 0;
	}

	.item_box {
		margin-bottom: 20px; 
		display: block;
		background-color: #fff;
		border: 1px solid #ddd;
		padding: 35px 0 30px;
        width: 100%;
        box-sizing: border-box;
	}
	.cast{
		margin-left: 0;
	}

    .item_img_wrap {
        margin: 0 auto;
        width: 80%;    
    }
    
    .item_img_wrap img {
        width: 100%;    
    }
    
    .title_pc {
        display: none;
    }

    .title_sp {
        display: block;
        padding:10px;
        margin: 8px 20px 10px 20px;
        border-top:1px solid #ddd;
        border-bottom:1px solid #ddd;
        background-color:#eee;
        color:#333;
        font-size:14px;
        font-family: "M PLUS Rounded 1c", sans-serif;
        font-weight: 500;
    }
    .title_sp h2 {
        line-height: 150%;    
    }
    .title_sp p {
        margin: 5px 0;
        font-size: 12px;
        font-weight: bold;
        line-height: 150%;
    }
    
    .twitter {
        display: none;    
    }
    
    .spec {
        display: none;
    }
	
	.contents_box {
		padding-top: 10px;
	}
    
    .contents_box h2 {
        padding: 15px;
        background-color: #fff;
        font-size: 18px;
        margin-bottom: 15px;
        line-height: 150%;
    }
    .contents_box .ttl_report {
        display:none;
    }
    .contents_box .ttl_report_sp {
        display:block;
        border: solid 1px #ddd;
    }
    
    .comment {
        padding: 0 15px;
    }
    
    .comment_box {
        padding: 3px 15px 15px 15px;
        /* background-color: #fff; */
		margin-bottom: 20px;
    }
    
    .comic {
        padding: 0 15px;
    }
        
    .comic p {
        margin: 25px 0 15px 0;
        font-size: 14px;
        display: block;
    }
        
    .comic img {
        width: 100%;    
    }
    
    .question {
        /* background-color:transparent; */
        /* border: none; */
        padding:15px;
        margin-bottom:10px;
        font-size:14px;
    }
    
    .sample {
        padding: 0 15px;
    }
    
    .sample p {
        line-height: 180%;
        font-size:14px;
        margin-bottom: 10px;    
    }

    .sample_box {
        margin:15px 0;
        padding:20px 10px 10px;
        border:1px solid #ddd;
        background-color:#fff;
    }
    
    .youtube {
      position: relative;
      width: 100%;
      padding-top: 56.25%;
	margin-bottom: 20px;
    }
    .youtube iframe {
      position: absolute;
      top: 0;
      right: 0;
      width: 100%;
      height: 100%;
    }
    
    #btn_back {
        margin-top:20px;
        width: 100%;   
        text-align: center;
    }
    .ttl_report {
        display: none;
    }
    
    .comment_box_author {
        /* background-color:#fff; */
        /* border:1px solid #ddd; */
        padding:20px;
    }
    
    .footer {
        width:100%;
        text-align:center;
        padding: 0;
        padding-top: 20px;
    }
    
    .footer__body {
        height: 50px;
        padding:0;
    }
    
    .footer_menu {
        margin:15px auto;
        margin-bottom:25px;
        text-align: center;
        line-height: 140%;
    }

    .footer_menu li {
        float:none;
        display: inline-block;
    }
    
    .copyright {
        font-size:12px;
        color:#fff;
        background-color: #000;
        padding: 30px 0 30px 0;
    }
	
	
	#share{

		text-align: center;
		padding-top: min(40px, 9.56vw);
		padding-bottom: min(50px, 3.84vw);
	}
	
	#share .share_inner{
		margin: auto;
		height: min(170px, 22.66vw);
		display: flex;
		background: url("../img/bg_icon_sp.png") no-repeat center;
		background-size: contain;
		justify-content: center;
		align-items: center;
	}

	#share ul{
		display: flex;
		width: min(576px, 76.8vw);
		height: min(118px, 9.07vw);
		justify-content: center;
		align-items: center;
	}

	#share ul li{
		width: 17%;
	}

	#share ul li img{
		width: min(58px, 69%);
	}
	
	#share ul li.icon_x img{
	width: min(52px, 52%);
	}

}