@charset "utf-8";

/* ==================================================
Common CSS
================================================== */

@media(min-width:1000px){

/*STYLE*/
.sp {
    display:none;
}

.cts {
    width:1000px;
}

.titles {
    padding-bottom:30px;
    text-align:center;
}

.titles h2 {
    font-size:300%;
    font-weight:800;
    line-height:135%;
}

.titles .icon {
    width:70px;
    margin:0 auto 10px;
}

.titles .copy {
    font-size:110%;
    font-weight:600;
    padding-top:5px;
}



/*FIXED CTA*/
.fixed_cta {
    position:fixed;
    top:0;
    right:0;
    z-index:9999;
}

.fixed_cta a {
    width:80px;
    height:80px;
    background:#f07800;
    display:flex;
    justify-content:center;
    flex-direction:column;
    align-items:center;
}

.fixed_cta a img {
    width:35px;
    margin:0 auto 7px;
}

.fixed_cta a p {
    font-size:80%;
    font-weight:600;
    line-height:100%;
    color:#fff;
    text-align:center;
}




/*MV*/
#mv {
    width:100%;
    background:#fff;
    position:relative;
    overflow:hidden;
}

#mv h1 {
    width:50px;
    position:absolute;
    top:15px;
    left:15px;
    z-index:1000;
}

#mv .photo_cts {
    width:100%;
    display:flex;
    justify-content:center;
    align-items:center;
    position:relative;
}

#mv .photo_cts .photos {
    width:100%;
    height:100%;
    display:flex;
    overflow:hidden;
}

#mv .photo_cts .photos .photo {
    width:33.333%;
    height:100%;
    overflow:hidden;
    position:relative;
}

#mv .photo_cts .photos .photo .mv {
    width:100%;
}

#mv .photo_cts .photos .photo .point {
    position:absolute;
    left:0;
    bottom:0;
    z-index:1000;
}

#mv .photo_cts .photos .photo .point p {
    font-size:85%;
    font-weight:500;
    line-height:100%;
    color:#fff;
    background:rgba(127,206,67,0.9);
    padding:6px 8px;
}

#mv .photo_cts .copies {
    position:absolute;
    z-index:1000;
    display:flex;
    justify-content:center;
    align-items:center;
    flex-direction:column;
}

#mv .photo_cts .copies .copy {
    width:800px;
}

#mv .photo_cts .points {
    position:absolute;
    bottom:-90px;
    left:0;
    right:0;
    margin:auto;
    display:flex;
    justify-content:center;
    align-items:center;
    z-index:1000;
}

#mv .photo_cts .points .point {
    width:200px;
    background:#7fce43;
    margin:0 10px;
    border:#fff 5px solid;
}

#mv .photo_cts .points .point .point_photo {
}

#mv .photo_cts .points .point .tx {
    height:40px;
    display:flex;
    justify-content:center;
    align-items:center;
    text-align:center;
}

#mv .photo_cts .points .point .tx p {
    color:#fff;
    font-size:90%;
    font-weight:bold;
    line-height:100%;
}

#mv .photo_cts .medal {
    position:absolute;
    right:15px;
    bottom:15px;
    width:100px;
    z-index:1000;
}

#mv .maincopies {
    width:1000px;
    margin:110px auto 0;
    display:flex;
    justify-content:space-between;
    flex-direction:row-reverse;
    position:relative;
}

#mv .maincopies .member {
    width:400px;
}

#mv .maincopies .member img {
}

#mv .maincopies .mv_titles {
    width:580px;
    padding-top:10px;
}

#mv .maincopies .mv_titles .maintitle {
    font-size:250%;
    font-weight:800;
    line-height:120%;
    padding-bottom:10px;
}

#mv .maincopies .mv_titles .subtitle {
    font-size:90%;
    font-weight:600;
    text-shadow:0 0 5px rgba(255,255,255,0.8);
}



/*JOB*/
.background {
    width:100%;
    height:100%;
    position:fixed;
    top:0;
    left:0;
    z-index:-1;
    background:#000 url(../img/job_bg.jpg) center;
    background-size:cover;
}

#job {
    padding:70px 0;
}

#job .cts {
}

#job .titles .icon {
    width:55px;
    margin-bottom:5px;
}

#job .titles h2 {
    color:#fff;
}

#job .jobs {
    width:100%;
    display:flex;
    flex-wrap:wrap;
    justify-content:space-between;
}

#job .jobs .job {
    width:48%;
    position:relative;
    overflow:hidden;
    margin-bottom:40px;
}

#job .jobs .job:nth-child(n+3) {
    margin-bottom:0;
}

#job .jobs .job .photo {
    margin-bottom:15px;
}

#job .jobs .job .jobtitle {
    font-size:150%;
    font-weight:bold;
    color:#7fce43;
    padding-bottom:5px;
}

#job .jobs .job .tx {
    font-size:90%;
    color:#fff;
}



/*INTRO*/
#intro {
    padding:100px 0;
    background:#fff;
}

#intro .titles {
    padding-bottom:20px;
}

#intro .titles .icon {
    width:55px;
}

#intro .titles h2 {
    font-size:280%;
}

#intro .details {
    display:flex;
    justify-content:space-between;
}

#intro .details .detail {
    width:300px;
}

#intro .details .detail .photo {
    margin-bottom:20px;
}

#intro .details .detail h3 {
    font-size:135%;
    font-weight:800;
    line-height:135%;
    text-align:center;
    padding-bottom:10px;
}

#intro .details .detail .ex {
}




/*ABOUT*/
#about {
    position:relative;
}

#about .bg {
    width:100%;
    height:600px;
    position:relative;
}

#about .bg .photo {
    width:100%;
    height:600px;
}

#about .bg .photo1 {
    background:url(../img/about_1.jpg) center;
    background-size:cover;
}

#about .bg .photo2 {
    background:url(../img/about_2.jpg) center;
    background-size:cover;
}

#about .bg .photo3 {
    background:url(../img/about_3.jpg) center;
    background-size:cover;
}

#about .details {
    width:100%;
    height:100%;
    position:absolute;
    bottom:0;
    z-index:1000;
    overflow:hidden;
}

#about .details h3 {
    font-size:250%;
    font-weight:800;
    line-height:125%;
    color:#fff;
    text-shadow:0 0 5px rgba(0,0,0,0.7);
    position:absolute;
    bottom:30px;
    left:30px;
}

#about .details h3 .light {
    font-weight:100;
}

#about .details .detail {
    width:650px;
    background:rgba(0,0,0,0.7);
    padding:20px 25px;
    position:absolute;
    bottom:0;
    right:0;
}

#about .details .detail .tx {
    font-size:95%;
    color:#fff;
}





/*FEATURE*/
#feature {
    padding:70px 0;
    background:#fff;
}

#feature .cts {
    width:100%;
}

#feature .titles .icon {
    width:55px;
    margin-bottom:0;
}

#feature .features {
}

#feature .features .feature {
    margin-bottom:70px;
    display:flex;
    justify-content:space-between;
    align-items:center;
}

#feature .features .feature:nth-child(even) {
    flex-direction:row-reverse;
}

#feature .features .feature:last-child {
    margin-bottom:0;
}

#feature .features .feature .photo {
    width:50%;
    height:420px;
}

#feature .features .feature .photo1 {
    background:url(../img/feature_1.jpg) center;
    background-size:cover;
}

#feature .features .feature .photo2 {
    background:url(../img/feature_2.jpg) center;
    background-size:cover;
}

#feature .features .feature .photo3 {
    background:url(../img/feature_3.jpg) center;
    background-size:cover;
}

#feature .features .feature .details {
    width:50%;
}

#feature .features .feature .details .detail {
    width:500px;
    padding-left:50px;
}

#feature .features .feature:nth-child(even) .details .detail {
    padding:0 50px 0 0;
    margin:0 0 0 auto;
}

#feature .features .feature .details .detail .number {
    font-size:500%;
    font-weight:600;
    line-height:100%;
    color:#e1e1e1;
    padding-bottom:10px;
}

#feature .features .feature .details .detail .number:first-letter {
    color:#7fce43;
}

#feature .features .feature .details .detail h3 {
    font-size:180%;
    font-weight:800;
    line-height:135%;
    padding-bottom:10px;
}

#feature .features .feature .details .detail .ex {
}





/*INTERVIEW*/
#interview {
    padding:70px 0;
    background:#f5f5f0 url(../img/interview_bg.jpg) no-repeat bottom center;
    background-size:100%;
}

#interview .titles .icon {
    width:50px;
    margin-bottom:0;
}

#interview .tabs {
    display:flex;
    justify-content:center;
}

#interview .tabs .tab {
    font-size:110%;
    font-weight:600;
    line-height:100%;
    background:#000;
    color:#fff;
    padding:12px 20px 15px;
    margin:0 8px;
    cursor:pointer;
}

#interview .tabs .tab.on {
    background:#7fce43;
    color:#fff;
}

#interview .interviews {
}

#interview .interviews .interview {
    background:#fff;
    border:#7fce43 8px solid;
    padding:50px 50px;
}

#interview .interviews .interview1 {
}

#interview .interviews .interview2 {
    display:none;
}

#interview .interviews .interview3 {
    display:none;
}

#interview .interviews .interview h3 {
    font-size:200%;
    font-weight:800;
    line-height:135%;
    padding-bottom:30px;
    color:#7fce43;
    text-align:center;
}

#interview .interviews .interview .details {
    display:flex;
    justify-content:space-between;
}

#interview .interviews .interview .details .photos {
    width:250px;
}

#interview .interviews .interview .details .photos .photo {
    margin-bottom:15px;
}

#interview .interviews .interview .details .photos .name {
    font-size:120%;
    font-weight:600;
}

#interview .interviews .interview .details .photos .position {
    font-size:80%;
    color:#aaa;
}

#interview .interviews .interview .details .detail {
    width:calc(100% - 290px);
}

#interview .interviews .interview .details .detail .messages {
    
}

#interview .interviews .interview .details .detail .messages .message {
    margin-bottom:35px;
}

#interview .interviews .interview .details .detail .messages .message:last-child {
    margin-bottom:0;
}

#interview .interviews .interview .details .detail .messages .message p {
    margin-bottom:25px;
}

#interview .interviews .interview .details .detail .messages .message p:last-child {
    margin-bottom:0;
}




/*RECRUIT*/
#recruit {
    padding:100px 0;
    background:#f5f5f0;
}

#recruit .titles {
    padding-bottom:0;
}

#recruit .titles .icon {
    width:50px;
}

#recruit .titles h2 {
}

#recruit .titles .copy {
    font-size:150%;
    padding-bottom:5px;
}

#recruit .titles .attention {
    display:flex;
    justify-content:center;
    color:#666;
    font-size:80%;
}

#recruit #scene {
}

#recruit #scene .scene_slider .swiper-wrapper {
    transition-timing-function:linear;
}

#recruit .medals {
    width:680px;
    height:80px;
    margin:auto;
    display:flex;
    justify-content:center;
    align-items:center;
    flex-direction:row-reverse;
    position:relative;
    z-index:1000;
}


#recruit .medals .medal {
    width:90px;
    position:absolute;
    right:0;
    bottom:-25px;
}

#recruit .medals .tx {
    font-size:90%;
}



/*PROCESS*/
#process {
    padding:70px 0;
    background:#fff;
}

#process .cts {
    width:700px;
}

#process .titles {
    padding-bottom:50px;
}

#process .titles .icon {
    width:50px;
    margin-bottom:5px;
}

#process .steps {
    display:flex;
    justify-content:space-between;
    position:relative;
}

#process .steps .flowline {
    width:100%;
    height:20px;
    background:#7fce43;
    position:absolute;
    top:90px;
    left:0;
}

#process .steps .step {
    width:200px;
    position:relative;
}

#process .steps .step .number {
    display:flex;
    justify-content:center;
    align-items:center;
    text-align:center;
    position:absolute;
    top:-20px;
    left:0;
    right:0;
    margin:auto;
    z-index:1;
}

#process .steps .step .number p {
    border:#7fce43 3px solid;
    color:#7fce43;
    background:#fff;
    padding:0 10px;
    font-weight:bold;
    line-height:100%;
    height:40px;
    display:flex;
    justify-content:center;
    align-items:center;
}

#process .steps .step .illust {
    width:200px;
    height:200px;
    border:#7fce43 3px solid;
    background:#fff;
    display:flex;
    justify-content:center;
    align-items:center;
    margin-bottom:10px;
}

#process .steps .step .illust img {
    width:120px;
}

#process .steps .step .detail {
    text-align:center;
}

#process .steps .step .detail .status {
    font-weight:600;
}

#process .steps .step .detail .tx {
    font-size:80%;
}




/*FAQ*/
#faq {
    padding:70px 0;
    background:#f5f5f0;
}

#faq .titles .icon {
    width:55px;
    margin-bottom:0;
}

#faq .faqs {
}

#faq .faqs .faq {
    margin-bottom:15px;
}

#faq .faqs .faq:last-child {
    margin-bottom:0;
}

#faq .faqs .faq .question {
    display:flex;
    justify-content:space-between;
    align-items:center;
    cursor:pointer;
    border:#7fce43 1px solid;
    background:#fff;
    position:relative;
}

#faq .faqs .faq .question .item {
    width:50px;
    height:50px;
    background:#7fce43;
    color:#fff;
    display:flex;
    justify-content:center;
    align-items:center;
    font-size:110%;
    font-weight:500;
    text-align:center;
}

#faq .faqs .faq .question h3 {
    width:calc(100% - 65px);
    font-size:105%;
    font-weight:700;
    line-height:135%;
    color:#7fce43;
    padding:0 30px 0 15px;
}

#faq .faqs .faq .question .arrow {
    width:10px;
    height:10px;
    border-top:#7fce43 1px solid;
    border-right:#7fce43 1px solid;
    transform:rotate(45deg);
    position:absolute;
    right:20px;
}

#faq .faqs .faq .question .arrow.open {
    width:10px;
    height:10px;
    border-top:#7fce43 1px solid;
    border-right:#7fce43 1px solid;
    transform:rotate(135deg);
    position:absolute;
    right:20px;
    margin-bottom:5px;
}

#faq .faqs .faq .answer_cts {
    display:none;
    margin:10px 0 35px;
}

#faq .faqs .faq:last-child .answer_cts {
    display:none;
    margin-bottom:0;
}

#faq .faqs .faq .answer {
    display:flex;
    justify-content:space-between;
}

#faq .faqs .faq .answer .item {
    width:50px;
    height:50px;
    background:#000;
    color:#fff;
    display:flex;
    justify-content:center;
    align-items:center;
    font-size:110%;
    font-weight:500;
    text-align:center;
}

#faq .faqs .faq .answer .tx {
    width:calc(100% - 65px);
}




/*CTA*/
.cta {
    width:100%;
    background:#7fce43;
    position:relative;
}

.cta .bg {
    width:100%;
    height:100%;
    background:url(../img/cta_bg.svg) center;
    background-size:cover;
    position:absolute;
    top:0;
    left:0;
}

.cta .cts {
    position:relative;
    padding:50px 0;
    text-align:center;
}

.cta .cta_btn {
    display:inline-block;
    animation:cta linear 1s infinite alternate;
    -webkit-animation:cta linear 1s infinite alternate;
}

.cta .cta_btn a {
    width:500px;
    height:100px;
    margin:auto;
    display:flex;
    justify-content:center;
    align-items:center;
    position:relative;
    background:#f07800;
    border-radius:30vw;
    padding:0 40px;
}

.cta .cta_btn a .balloon {
    width:150px;
    position:absolute;
    left:0;
    right:0;
    margin:auto;
    top:-15px;
}

.cta .cta_btn a p {
    font-size:180%;
    font-weight:800;
    line-height:100%;
    color:#fff;
}

.cta .cta_btn a .arrow {
    width:18px;
    position:absolute;
    right:30px;
}




/*ENTRY*/
#entry {
    padding:70px 0 100px;
    position:relative;
    background:#7fce43 url(../img/entry_bg.jpg) center;
    background-size:cover;
}

#entry .cts {
    width:900px;
}

#entry .titles {
    padding-bottom:20px;
}

#entry .titles .icon {
    width:50px;
    margin:0 auto 0;
}

#entry .titles h2 {
    color:#fff;
}

#entry .entry_form {
    position:relative;
    background:#fff;
    box-shadow:0 0 20px rgba(0,0,0,0.1);
}

#entry .entry_form .entry_cts {
    padding:30px 60px 50px;
    text-align:center;
}

#entry .entry_form .entry_cts .q {
    font-size:500%;
    font-weight:500;
    line-height:100%;
    color:#7fce43;
    padding-bottom:0;
}

#entry .entry_form .entry_cts .question {
    font-size:200%;
    font-weight:800;
}

#entry .entry_form .entry_cts .attention {
    font-size:80%;
    font-weight:400;
}

#entry .entry_form .entry_cts form {
    margin-top:15px;
}



/*ENTRY STEP COLUMN5*/
#entry .entry_form .steps.column5 .step {
    width:20%;
    padding-left:15px;
}

#entry .entry_form .steps.column5 .step:first-child {
    width:17.5%;
    padding-left:15px;
}

#entry .entry_form .steps.column5 .step:last-child {
    width:22.5%;
}



/*ENTRY STEP COLUMN6*/
#entry .entry_form .steps.column6 .step {
    width:16.5%;
    padding-left:15px;
}

#entry .entry_form .steps.column6 .step:first-child {
    width:16.5%;
    padding-left:15px;
}

#entry .entry_form .steps.column6 .step:last-child {
    width:17.5%;
}



/*ENTRY STEP COMMON*/
#entry .entry_form .steps {
    display:flex;
}

#entry .entry_form .steps .step {
    height:50px;
    background:linear-gradient(to right,#555,#000);
    display:flex;
    justify-content:center;
    flex-direction:column;
    align-items:center;
    position:relative;
}

#entry .entry_form .steps .step.now {
    background:#f07800;
}

#entry .entry_form .steps .step.past {
    background:linear-gradient(to right,#787878,#646464);
}

#entry .entry_form .steps .step:after {
    content:"";
    border-top:transparent 25px solid;
    border-right:transparent 15px solid;
    border-bottom:transparent 25px solid;
    border-left:#000 15px solid;
    position:absolute;
    top:0;
    right:-30px;
    z-index:1;
}

#entry .entry_form .steps .step.now:after {
    content:"";
    border-top:transparent 25px solid;
    border-right:transparent 15px solid;
    border-bottom:transparent 25px solid;
    border-left:#f07800 15px solid;
    position:absolute;
    top:0;
    right:-30px;
    z-index:1;
}

#entry .entry_form .steps .step.past:after {
    content:"";
    border-top:transparent 25px solid;
    border-right:transparent 15px solid;
    border-bottom:transparent 25px solid;
    border-left:#646464 15px solid;
    position:absolute;
    top:0;
    right:-30px;
    z-index:1;
}

#entry .entry_form .steps .step:last-child:after {
display:none;
}

#entry .entry_form .steps .step p {
    line-height:100%;
    text-align:center;
    color:#fff;
}

#entry .entry_form .steps .step p:first-child {
    font-size:110%;
    padding-bottom:3px;
}

#entry .entry_form .steps .step p:last-child {
    font-size:60%;
}






/*ENTRY STATUS*/
#entry.entry_status .answer {
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
}

#entry.entry_status .answer p {
    margin-bottom:12px;
}

#entry.entry_status .answer p:nth-child(n+3) {
    margin-bottom:0;
}

#entry.entry_status label {
    border:#000 3px solid;
    color:#000;
    padding:20px;
    display:block;
    cursor:pointer;
    border-radius:10px;
    font-size:125%;
    font-weight:600;
    margin:0 7px;
    width:200px;
}



/*ENTRY JOB*/
#entry.entry_job .answer {
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
}

#entry.entry_job .answer p {
    margin-bottom:12px;
}

#entry.entry_job .answer p:nth-child(n+5) {
    margin-bottom:0;
}

#entry.entry_job label {
    border:#000 3px solid;
    color:#000;
    padding:20px 15px;
    display:block;
    cursor:pointer;
    border-radius:10px;
    font-size:125%;
    font-weight:600;
    margin:0 7px;
    width:350px;
}



/*ENTRY EMPLOYMENT*/
#entry.entry_employment .answer {
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
}

#entry.entry_employment label {
    border:#000 3px solid;
    color:#000;
    padding:20px;
    display:block;
    cursor:pointer;
    border-radius:10px;
    font-size:150%;
    font-weight:600;
    margin:0 7px;
    width:150px;
}



/*ENTRY AREA*/
#entry.entry_area .answer {
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
}

#entry.entry_area label {
    border:#000 3px solid;
    color:#000;
    padding:20px;
    display:block;
    cursor:pointer;
    border-radius:10px;
    font-size:150%;
    font-weight:600;
    margin:0 7px;
    width:150px;
}



/*ENTRY AGE*/
#entry.entry_age {
}

#entry.entry_age .detail_cts {
    display:flex;
    justify-content:center;
    align-items:center;
}

#entry.entry_age .detail_cts p:last-child {
    padding-left:10px;
    font-size:120%;
    font-weight:500;
}

#entry.entry_age .style_age {
    width:150px;
    font-size:150%;
    font-weight:600;
    color:#000;
    border:#000 3px solid;
    padding:15px 20px;
    border-radius:10px;
    margin:0 7px;
    display:block;
    cursor:pointer;
}



/*ENTRY NAME*/
#entry.entry_name {
}

#entry.entry_name .forms .form {
    width:100%;
    display:flex;
    justify-content:center;
    align-items:center;
    margin-top:15px;
}

#entry.entry_name .forms .form:first-child {
    margin-top:0;
}

#entry.entry_name .forms .form .item {
    font-size:120%;
    font-weight:500;
    width:120px;
}

#entry.entry_name .forms .form .detail {
    width:calc(90% - 120px);
}

#entry.entry_name .forms .form .detail .detail_cts {
    display:flex;
    justify-content:space-between;
    align-items:center;
}

#entry.entry_name .forms .form .detail .detail_cts p {
    width:48.5%;
}

#entry.entry_name .style_name {
    width:100%;
    color:#000;
    border:#000 3px solid;
    padding:15px 20px;
    border-radius:10px;
    font-size:150%;
    font-weight:600;
}

#entry.entry_name .style_kana {
    width:100%;
    color:#000;
    border:#000 3px solid;
    padding:15px 20px;
    border-radius:10px;
    font-size:150%;
    font-weight:600;
}



/*ENTRY CONTACT*/
#entry.entry_contact {
}

#entry.entry_contact .forms .form {
    width:100%;
    display:flex;
    justify-content:center;
    align-items:center;
    margin-top:15px;
}

#entry.entry_contact .forms .form:first-child {
    margin-top:0;
}

#entry.entry_contact .forms .form .item {
    font-size:120%;
    font-weight:500;
    width:180px;
}

#entry.entry_contact .forms .form .detail {
    width:calc(100% - 180px);
}

#entry.entry_contact .style_tel {
    width:100%;
    font-size:150%;
    font-weight:600;
    color:#000;
    border:#000 3px solid;
    padding:15px 20px;
    border-radius:10px;
}

#entry.entry_contact .style_mail {
    width:100%;
    font-size:150%;
    font-weight:600;
    color:#000;
    border:#000 3px solid;
    padding:15px 20px;
    border-radius:10px;
}



/*ENTRY TEL*/
#entry.entry_tel {
}

#entry.entry_tel .forms .form {
    width:100%;
    display:flex;
    justify-content:center;
    align-items:center;
}

#entry.entry_tel .forms .form .item {
    font-size:120%;
    font-weight:500;
    width:120px;
}

#entry.entry_tel .forms .form .detail {
    width:calc(70% - 120px);
}

#entry.entry_tel .style_tel {
    width:100%;
    font-size:150%;
    font-weight:600;
    color:#000;
    border:#000 3px solid;
    padding:15px 20px;
    border-radius:10px;
}



/*ENTRY MAIL*/
#entry.entry_mail {
}

#entry.entry_mail .forms .form {
    width:100%;
    display:flex;
    justify-content:center;
    align-items:center;
}

#entry.entry_mail .forms .form .item {
    font-size:120%;
    font-weight:500;
    width:180px;
}

#entry.entry_mail .forms .form .detail {
    width:calc(100% - 180px);
}

#entry.entry_mail .style_mail {
    width:100%;
    font-size:150%;
    font-weight:600;
    color:#000;
    border:#000 3px solid;
    padding:15px 20px;
    border-radius:10px;
}


/*ENTRY CONSENT*/
#entry.entry_consent {
}

#entry.entry_consent .detail {
}

#entry.entry_consent .detail .caution {
}


/*ENTRY SEX*/
#entry.entry_sex .answer {
    display:flex;
    justify-content:center;
}

#entry.entry_sex label {
    border:#000 3px solid;
    color:#000;
    padding:20px;
    display:block;
    cursor:pointer;
    border-radius:10px;
    font-size:150%;
    font-weight:600;
    margin:0 7px;
    width:100px;
}


/*ENTRY PREFECTURE*/
#entry.entry_prefecture {
}

#entry.entry_prefecture .detail_cts {
    display:flex;
    justify-content:center;
    align-items:center;
}

#entry.entry_prefecture .style_prefecture {
    width:300px;
    font-size:150%;
    font-weight:600;
    color:#000;
    border:#000 3px solid;
    padding:15px 20px;
    border-radius:10px;
    margin:0 7px;
    display:block;
    cursor:pointer;
}


/*ENTRY QUALIFIED*/
#entry.entry_qualified .answer {
    display:flex;
    justify-content:center;
}

#entry.entry_qualified label {
    border:#000 3px solid;
    color:#000;
    padding:20px;
    display:block;
    cursor:pointer;
    border-radius:10px;
    font-size:150%;
    font-weight:600;
    margin:0 7px;
    width:150px;
}




/*ENTRY CONFIRM*/
#entry.confirm {
}

#entry.confirm .entry_form .entry_cts {
    padding:50px 50px 50px;
    text-align:left;
}

#entry.confirm .entry_form .entry_cts .copy {
    font-size:110%;
    font-weight:600;
    text-align:center;
    padding-bottom:15px;
}

#entry.confirm .confirmations {
}

#entry.confirm .confirmations .confirmation {
    border-bottom:#e1e1e1 1px solid;
    padding:20px 0;
}

#entry.confirm .confirmations .confirmation:first-child {
    border-top:#e1e1e1 1px solid;
}

#entry.confirm .confirmations .confirmation .item {
    font-size:110%;
    font-weight:500;
}

#entry.confirm .confirmations .confirmation .ex {
    font-size:150%;
    font-weight:bold;
    line-height:100%;
    color:#000;
    margin-top:5px;
}



/*PRIVACY POLICY*/
#entry.confirm .privacy_policy {
    padding:15px 0 0;
}

#entry.confirm .privacy_policy .item {
    font-size:100%;
    font-weight:600;
}

#entry.confirm .privacy_policy .tx {
    font-size:90%;
    padding-bottom:15px;
}

#entry.confirm .privacy_policy .privacies {
    width:100%;
    height:190px;
    overflow:scroll;
    border:#e1e1e1 1px solid;
    padding:20px 25px;
}

#entry.confirm .privacy_policy .privacies .privacy {
    padding-bottom:15px;
    margin-bottom:15px;
    border-bottom:#e1e1e1 1px dashed;
}

#entry.confirm .privacy_policy .privacies .privacy:last-child {
    padding-bottom:0;
    margin-bottom:0;
    border-bottom:none;
}

#entry.confirm .privacy_policy .privacies .privacy .privacy_item {
    font-size:80%;
    font-weight:bold;
}

#entry.confirm .privacy_policy .privacies .privacy .ex {
    font-size:80%;
}

#entry.confirm .privacy_policy .privacies .privacy li {
    font-size:80%;
}

#entry.confirm .privacy_policy .privacies .privacy .contact {
    font-size:80%;
    padding-top:10px;
}



/*ENTRY FINISH*/
#entry.thanks {
}

#entry.thanks .entry_form .entry_cts {
    padding:35px 50px 35px;
}

#entry.thanks h3 {
    font-size:200%;
    font-weight:bold;
    padding-bottom:25px;
    color:#7fce43;
}

#entry.thanks .ex {
    font-size:110%;
    font-weight:500;
    padding-bottom:25px;
}

#entry.thanks .attention {
    font-size:80%;
}

#entry.thanks .backbtn {
    margin-top:50px;
    text-align:center;
}

#entry.thanks .backbtn .btn {
    display:inline-block;
}

#entry.thanks .backbtn .btn a {
    display:flex;
    justify-content:center;
    align-items:center;
    border:#7fce43 1px solid;
    padding:10px 20px;
}

#entry.thanks .backbtn .btn a p {
    font-weight:500;
    color:#7fce43;
    padding-left:10px;
}

#entry.thanks .backbtn .btn a .arrow {
    width:10px;
    height:10px;
    border-top:#7fce43 1px solid;
    border-right:#7fce43 1px solid;
    transform:rotate(-135deg);
}



/*ENTRY BTN*/
#entry .btns {
    display:flex;
    justify-content:center;
    align-items:center;
    margin-top:20px;
}
    
#entry .btns btn {
    margin:0 7px;
}
    
#entry input[type="radio"],
#entry input[type="checkbox"] {
visibility:hidden;
position:absolute;
}

#entry .warning {
font-size:100%;
font-weight:600;
color:#f07800;
margin:10px auto 15px;
display:block;
border:none;
padding:0;
text-align:center;
}

#entry label:hover {
}

#entry input[type="radio"]:checked + label {
    background:#7fce43;
}

#entry input[type="checkbox"]:checked + label {
    background:#7fce43;
}

#entry input[type="submit"] {
cursor:pointer;
}

#entry input[type="submit"]:hover {
-webkit-animation:hover 0.5s ease forwards;
animation:hover 0.5s ease forwards;
}

#entry .style_fix {
font-size:100%;
font-weight:500;
padding:10px 25px;
background:#aaa;
color:#fff;
border:none;
border-radius:20vw;
margin-right:15px;
cursor:pointer;
}

#entry .style_fix:hover {
-webkit-animation:hover 0.5s ease forwards;
animation:hover 0.5s ease forwards;
}

#entry .style_submit {
font-size:120%;
font-weight:600;
padding:12px 50px;
background:#fff;
border:none;
background:#f07800;
color:#fff;
border-radius:20vw;
}




/*BACK TO TOP*/
.BackToTop {
position:fixed;
width:40px;
height:40px;
right:15px;
bottom:15px;
z-index:1000;
display:none;
}



/*FOOTER*/
footer {
padding:40px 0 30px;
background:#000;
}

footer .info {
    text-align:center;
    padding-bottom:30px;
}

footer .info .logo {
    width:50px;
    margin:0 auto 10px;
}

footer .info .company {
    font-size:110%;
    font-weight:bold;
    color:#fff;
}

footer .info .address {
    font-size:90%;
    color:#fff;
}

footer .copyright {
font-size:70%;
text-align:center;
color:#646464;
}








}