@charset "utf-8";
/* CSS Document */		
/* 共通 ---------------------------------------- */
.bricks {
    position: relative;
    max-width: 1230px;
    margin: 0 auto;
}
.page-main{
    margin: 130px 0 0;
    display:block;
}
.block {
    width: 100%;
    max-width: 1000px;
    margin: auto;
    padding: 0 10px;
}
.about h2,
.contact h2,
.audition h2,
.privacypolicy h2,
.sitepolicy h2,
.cancelpolicy h2,
.osakaform h2,
.formtokyo h2,
.sitemap h2{
    font-size:28px;
    margin: 50px 0 0;
    text-align: center;
    /*font-family: 'Noto Sans', sans-serif;*/
    font-weight: 400;
}
/* about ---------------------------------------- */
.about a:hover{
   color: #E63F83;
}
.about .concept .block{
	max-width: 1030px;
}
.about .concept .text{
    line-height: 30px;
}
.about .concept .text .en,
.about .concept .text .all,
.about .concept .text .Sp_en {
    text-align: center;
    margin: 50px 0 0;
}
.about .concept .text .Sp_en{
    display: none;
}
.about .concept .text .en span{
    font-size: 19px;
    line-height: 40px;
}
.about .concept .text .jp{
    margin: 50px 0 0;
}
.about .concept .text .all span{
    font-size:20px;    
}
.about .access,
.about .information{
    background: rgba(230,63,63,0.05); 
    margin: 100px 0 0;   
    padding: 1px 0 100px;
}
.about .map .tokyo,
.about .map .osaka{
    margin: 50px 0 0;       
}
.about .map .osaka{
    padding: 50px 0 0;
    border-top: 1px solid #9e9e9e;
}
.about .map .flex{
    margin: 20px 0 0;     
}
.about .map .jp p,
.about .map .en p{
    line-height: 30px;
    margin: 10px 0 0;
}
.about .map iframe{
    width: 100%;
    height: 350px;
}
.about .company .flex{
    margin: 50px 0;    
}
.about .map .flex,
.about .company .flex{
    display: flex;
    justify-content: space-between;
}
.about .map .jp,
.about .map .en,
.about .company .jp,
.about .company .en{
    width: 48%;
}
.about .company .jp h3,
.about .company .en h3{
    text-align: center;
    margin: 0 0 10px; 
}
.about .company .jp dl,
.about .company .en dl{
    display: flex;
    padding: 10px;
    border-top: 1px solid #9e9e9e;
    line-height: 30px;
}
.about .company .jp dl:first-child,
.about .company .en dl:first-child{
    border-top: none;   
}
.about .company .jp dl dt,
.about .company .en dl dt{
    width: 140px;
}
.about .company .jp dl dd,
.about .company .en dl dd{
    text-align: left;
    width: 100%;
}
.about .company .en{
    width: 48%;
}
.about  .information h2{
    margin: 50px 0;
}
.about .information h3{
    text-align: center;
    margin: -150px 0 0;
    padding: 150px 0 0;
}
.about .information .item{
    max-width: 90%;
    margin: 20px auto 0;
}
.about .information .item dl{
    display: flex;
    padding: 10px;
    border-top: 1px solid #9e9e9e;
    line-height: 30px;
}
.about .information .item dl:last-child{
    border-bottom: 1px solid #9e9e9e;    
}
.about .information .item dl dt{
    width: 200px;
}
.about .information .item dl dd{
    width: 100%;
}
.about .information .text,
.about .information .mail,
.about .information .address{
    margin: 50px 0 0;
    text-align: center;
    line-height: 30px;
}
.about .information .mail h3,
.about .information .address h3{
     margin: 0 0 10px;   
}
.about .information .mail p,
.about .information .address p{
     margin: 10px 0 0;   
}
.about .information .mail a{
    display: initial;		
}
.about .information .mail h3{
    margin: 50px 0 0;
    padding: 0;	
}
.about .information .address h3{
    margin: 50px 0 0;
    padding: 0;		
}

/* contact ---------------------------------------- */
.contact .flex{
    margin: 50px 0 0;
    display: flex;
    justify-content: space-between;
}
.contact .flex a,
.contact .booking a{
    display: inline;	
}
/*
.contact .flex a:hover,
.contact .booking a:hover{
    color: #E63F83;
    cursor: pointer;
    font-weight: bold;
}
*/
.contact .sp{
    display: none;
}
.contact .tokyo,
.contact .osaka{
    width: 48%;
    text-align: center;
    line-height: 30px;
}
.contact .tokyo h3,
.contact .osaka h3{
    font-weight: bold;
    font-size: 18px;
}

.contact .tokyo .en,
.contact .osaka .en{
    margin: 30px 0 0;
}
.contact .booking{
    text-align: center;    
    line-height: 30px;
    margin: 100px 0 0;  
}
.contact .booking h3{
    margin: 20px 0 0;   
    font-weight: bold;
    font-size: 20px;
}

/* audition ---------------------------------------- */
.audition .text{
    margin: 50px 0 0;
}
.audition h2{
    color: #E63F83;    
}
.audition .text .new{
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    color: #E63F83;
    line-height: 40px;
}
.audition .text p{
    width: 100%;
    max-width: 80%;
    margin: 30px auto 0;
    line-height: 30px;
}
.audition .table{
    margin: 50px 0 0;
}
.audition .table dl{
    display: flex;
    padding: 20px 10px;
    border-top: 1px solid #9e9e9e;
    line-height: 30px;
}
.audition .table dt{
    width: 140px;
}
.audition .table dd{
    width: 100%;
}
.audition .table dd ul{
    display: flex;
    margin: 10px 0;
}
.audition .table dd ul li{
    margin: 0 50px 0 0;
}
.audition .table dd ul.btn li{
    margin: 0 20px 0 0;       
}
.audition .table dd ul.btn li a{
    width: 180px;
    padding: 10px;
    color: #fff;
    font-weight: bold;
    position: relative;
}
.audition .for .table dd ul.btn li a {
    width: 160px;
}

.audition .table dd ul.btn li.tokyo a{
    background: #00A2F1;
}
.audition .table dd ul.btn li.osaka a{
    background: #FA2384;
}

.audition .table dd ul.btn li.tokyo a:hover,
.audition .table dd ul.btn li.osaka a:hover{
   opacity: 0.5;
}

.audition .table dd ul.btn li a:before,
.audition .table dd ul.btn li a:after{
    position: absolute;
    top: 0;
    bottom: 0;
    right: 16px;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.audition .table dd ul.btn li a:before{
    right: 16px;
    width: 30px;
    height: 2px;
    background: #fff;
}
.audition .table dd ul.btn li a:after{
    right: 16px;
    width: 8px;
    height: 8px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.audition .for h2{
    color: #E63F83;    
}

.audition .for p{
    font-weight: bold;
    color: #E63F83;
    text-align: center;
    margin: 20px 0 0;
}
.audition .for .table ul{
    display: flex;
}
.audition .for .table ul li{
    width:48%;
    text-align: left;
}
.audition .for .table ul.btn li{
    width:auto;
}
.audition #international,
.audition #halfjapanese{
	margin: -130px 0 0;
	padding: 130px 0 0;
}

/* privacypolicy ---------------------------------------- */
.privacypolicy h3{
    margin: 50px 0 0;
    font-size: 20px;
    font-weight: bold;
}
.privacypolicy p{
    margin: 10px 0 0;
    line-height: 30px;
}
.privacypolicy ol{
    margin: 0 0 32px 1.5em;
    list-style-type: decimal;
    line-height: 30px;
}
.privacypolicy li{
    margin: 10px 0 0;    
}
.privacypolicy ul li a{
        display: initial;
}
/* sitepolicy ---------------------------------------- */
.sitepolicy h3{
    margin: 50px 0 0;
    font-size: 20px;
    font-weight: bold;
}
.sitepolicy p{
    margin: 10px 0 0;
    line-height: 30px;
}
.sitepolicy ol{
    margin: 0 0 32px 1.5em;
    list-style-type: decimal;
    line-height: 30px;
}
.sitepolicy li{
    margin: 10px 0 0;    
}
.sitepolicy p a{
        display: initial;
}
/* cancelpolicy ---------------------------------------- */
.cancelpolicy h2 span{
    display: block;
    font-size: 20px;
}
.cancelpolicy h3{
    margin: 50px 0 0;
    font-size: 20px;
    font-weight: bold;
}
.cancelpolicy  h4{
    font-weight: bold;
}

.cancelpolicy .consultation{
    margin: 50px 0 0;
}
.cancelpolicy .consultation p{
    margin: 10px 0 0;
    line-height: 30px;
}

.cancelpolicy .consultation ul{
    margin: 20px 0 0;
    line-height: 30px;    
}
.cancelpolicy .consultation ul li a{
        display: initial;
}

.cancelpolicy ol{
    margin: 0 0 32px 1.5em;
    list-style-type: decimal;
    line-height: 30px;
}
.cancelpolicy ol li,
.cancelpolicy ul li{
    margin: 20px 0 0;
    line-height: 30px;   
}

.cancelpolicy .it.v{
    margin: 10px 0 0 1em;   
}
.cancelpolicy .it{
    margin: 10px 0 0;
}
.cancelpolicy .mh{
    margin: 50px 0 0;
}
/* 共通 ---------------------------------------- */
.osakaform .box{
    margin: 50px 0 0;
}
.osakaform .box dl{
    display: flex;
    margin: 20px 0 0;
}
.osakaform .box dl dt{
    width: 300px;
    margin: 0 20px 0 0;
}
.osakaform .box dl dt .en{
    display: block;
    font-size: 14px;
}
.osakaform .box dl dt .asterisk{
    color: red;
    margin: 0 0 0 6px;
}
.osakaform .box dl dd{
    width: 100%;
}

.osakaform .box dl dd p{
    margin: 6px 0 0;
}

.osakaform .box dl dd.birthday{
    display: flex;
}
.osakaform .box dl dd.birthday p{
    width: 30%;
    margin: 0 10px 0 0;
}

.your-seireki input,
.your-tsuki,
.your-nichi{
    width: 80%!important;
}

input.wpcf7-form-control.wpcf7-text.wpcf7-validates-as-required ,input.wpcf7-form-control.wpcf7-text {
    width: 90%;
    height: 40px;
    font-size: 16px;
    border: 1px solid #dfdfdf;
    padding: 0 10px;
    margin: 0 6px 0 0;
}
textarea.wpcf7-form-control.wpcf7-textarea {
    width: 90%;
    height: 150px;
    resize: vertical;
    border: 1px solid #dfdfdf;
    font-size: 16px;
    padding: 10px;
}


.osakaform .box select{
    width: 80%;
    height: 40px;
    outline:none;
    text-indent: 0.01px;
    text-overflow: '';
    background: none transparent;
    vertical-align: middle;
    font-size: inherit;
    color: inherit;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 0 10px;
    font-size: 16px;
        border: 1px solid #dfdfdf;
    margin: 0 6px 0 0;
}
.osakaform .box .color select{
    width: 30%;
}

.osakaform .box select option{
    background-color: #fff;
    padding: 0 0 0 10px;
}
.osakaform .box select::-ms-expand {
    display: none;
}
.osakaform .box select:-moz-focusring { 
    color: transparent; 
    text-shadow: 0 0 0 #828c9a;
}
.osakaform .box .submit{
    width: 280px;
    margin: 50px auto 0;
    cursor: pointer;
    position: relative;
    background: #9e9e9e;
    height: 60px;
}
.osakaform .box .submit input{
    font-family: 'Noto Sans', sans-serif;
    /*font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;*/
    background:none;
    border: none;
    width: 280px;
    margin: 0 auto;
    font-size: 14px;
    color: #fff;    
    line-height: 60px;  
    font-weight: bold;
    cursor: pointer;
}
.osakaform .box .submit:hover{
    background: #E63F83; 
}
/* 共通 ---------------------------------------- */
#model_left{
    margin: 120px auto 0;
    max-width: 950px;
}
#model_left .thumb{
    text-align: center;
    width: 50%;
    margin: 0 auto 48px auto;
}
#model_left .thumb img{
width: 100%
}
#model_left .name{
    font-size: 46px;
    font-weight: normal;
    padding-bottom: 12px;
    text-align: center;
	color: #B5B5B5;
}
#model_left .name2{
    font-size: 14px;
    font-weight: normal;
    padding-bottom: 12px;
    text-align: center;
	color: #B5B5B5;
	margin-top: -12px;
}
#model_left .size{
    text-align: center;
    padding-bottom: 6px;
    font-size: 120%;
    font-weight: 500;
    line-height: 2em;
    color: #B5B5B5;
    padding: 0 12px 6px 12px;
    /*font-family: 'Poppins', sans-serif;*/
}
#model_left .mnav{
    text-align: center;
    text-decoration: none;
    padding-bottom: 36px;
    padding-top: 0;
    display: flex;
    justify-content: center;
}
#model_left .mnav h3 {
    text-align: center;
    display: inline;
    color: #ccc;
    padding: 0 12px;
}
#m_gallery{	
	display: flex;
	justify-content: space-between;
    flex-wrap: wrap;
    margin: 50px auto 0;
}
#m_gallery li{
	width: 48%;
    max-width: 600px;
    margin: 10px 1% 0; 
}
#m_gallery li a{

}
.sitemap .sitemap-box{
	margin: 50px 0 0;

}
.sitemap .sitemap-box .m10 li{
	padding: 10px 0 10px 20px;
}
.sitemap .page_item{
	padding: 10px 0 10px 10px;
	font-size: 18px;
	line-height: 34px;
	border-top: solid 1px #9e9e9e;

}
.sitemap .page_item p{ 
	padding: 0 0 10px 10px;
}
.sitemap .page_item a:hover{
	    color: #E63F83;
}
.sitemap .page_item.single{
	padding: 10px 0 0;
}
.sitemap .page_item.current_page_item{
    border-bottom: solid 1px #9e9e9e;   
}


@media screen and (max-width:899px){
/* 共通 ---------------------------------------- */


/* about ---------------------------------------- */
    .about .concept .text .en{
        margin: 30px 0 0;
    }
    .about .access {
        margin: 50px 0 0;
        padding: 1px 0 50px;
    }
    .about .map .en{
        border-top: 1px solid #9e9e9e;    
        padding: 20px 0 0;
        margin: 30px 0 0;
    }
    .about .map .flex {
        margin: 10px 0 0;
    }
    .about .map .tokyo,
    .about .map .osaka,
    .about .company .flex {
        margin: 30px 0 0;
    }
    .about .map .osaka {
        padding: 30px 0 0;
    }
    .about .map .flex,
    .about .company .flex{
        flex-wrap: wrap;
    }
    .about .map .jp,
    .about .map .en,
    .about .company .jp,
    .about .company .en{
        width: 100%;
    }
    .about .company .en{
        margin: 50px 0 0;
    }
    .about .company .jp dl,
    .about .company .en dl{
        flex-wrap: wrap;
        padding: 10px;
        border-top: 1px solid #9e9e9e;
        line-height: 30px;
        margin: 0;
    }
    .about .company .jp h3,
    .about .company .en h3{
        margin: 0 0 20px;    
        text-align: left;
        font-weight: bold;
    }
    .about .company .jp dl:first-child,
    .about .company .en dl:first-child{
        border-top: 1px solid #9e9e9e;
    }
    .about .company .jp dl:last-child,
    .about .company .en dl:last-child{
        border-bottom: 1px solid #9e9e9e;    
    }
    .about .company .jp dl dt,
    .about .company .en dl dt{
        width: 100%;
        font-weight: bold;
    }
    .about .concept .text .Sp_en{
        display: inherit;
    }
    .about .concept .text .en{
        display: none;
    }
    .about .information .item{
        max-width: 100%;
        margin: 20px auto 0;
    }
    .about .information .item dl{
        flex-wrap: wrap;
    }
    .about .information .item dl dt{
        width: 100%;
        font-weight: bold;
    }
    .about .information .text{
        margin: 50px 0 0;
        text-align: left;
        line-height: 30px;
    }
/* contact ---------------------------------------- */
    .contact .flex{
        flex-wrap: wrap;
    }
    .contact .pc{
        display: none;
    }
    
    .contact .sp{
        display: initial;
    }

    .contact .tokyo,
    .contact .osaka{
        width: 100%;
    }
    .contact .osaka .jp{
        margin: 30px 0 0;  
    }


/* audition ---------------------------------------- */
    .audition .text p {
        max-width: 100%;
    }    

    .audition .table dl{
        flex-wrap: wrap;
        padding: 0;
        border-top: none;
    }
    .audition .table dt{
        width: 100%;
        background: #9e9e9e;
        color: #fff;
        padding: 10px;

    }
    .audition .table dd{
        width: 100%;
        padding: 10px;
    }
    .audition .table dd ul{

        flex-wrap: wrap;
    }
    .audition .for .table ul{
         display: block;       
    }

    .audition .table dd ul li.osaka,
    .audition .table dd ul.btn li.osaka{
        margin: 20px 0 0;
    }
    .audition .for .table ul{
        margin: 0;
    }

    .audition .for .table ul li {
        width: 100%;
        margin: 20px 0 0;
    }
    .audition .for .table dd ul li{
        margin: 0;
    }
        
    
    .audition .table dd ul.btn li a{
        width: 100%;
        min-width: 180px;
    }

    .audition .for .table dd ul.btn li a{

        min-width: 160px;
    }
	.audition #international,
	.audition #halfjapanese{
		margin: -90px 0 0;
		padding: 90px 0 0;
	}



    .osakaform .box dl,
    .osakaform .box dl dd.birthday {
        flex-wrap: wrap;    
    }
    .osakaform .box dl dt{
        width: 100%;
        margin: 0 0;
    }
    .osakaform .box dl dd{
        margin: 10px 0 0;
    }
    input.wpcf7-form-control.wpcf7-text.wpcf7-validates-as-required, input.wpcf7-form-control.wpcf7-text,
    textarea.wpcf7-form-control.wpcf7-textarea,
    .osakaform .box dl dd.birthday p{
        width: 100%;
    }
    .osakaform .box .color select {
        width: 50%;
    }   
    .your-seireki input, .your-tsuki, .your-nichi {
        width: 50%!important;
    }
    .osakaform .box select {
        width: 50%;
    }
    .osakaform .box dl dd.birthday p {
        margin: 20px 0 0 0;
    }
    .osakaform .box dl dd.birthday p:first-child{
        margin: 0;
    }
	#model_left{
		margin: 100px auto 0;
	}



}


@media screen and (max-width:599px){
}