/*
Theme Name: witz-okinawa
Theme URL: https://wordpress.org/themes/witz-okinawa
*/

/*header*/
.main_visual_inner h2 {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
}

.btn-entry,
.btn-contact,
.btn-hp {
    width: 167px;
    padding: 10px 20px;
    text-align: center;
}

.btn-entry {
    margin-right: 20px;
}

.btn-entry::before {
    content: '';
    display: inline-block;
    width: 20px;
    height: 20px;
    background: url("image/common/entry_button-icon.png") no-repeat;
    background-size: contain;
    vertical-align: middle;
    margin-right: 5px;
}

/*footer*/
footer {
    font-size: 14px;
}

footer .wraper {
    padding: 50px 0;
}

.footer_info {
    flex-wrap: wrap;
}

.footer_logo,
.footer-navi {
    width: 100%;
}

footer .nav li:not(:last-child) {
    margin-right: 20px;
}

footer .nav li .cmn-button {
    position: relative;
}

footer .nav li .cmn-button::after {
    content: '';
    position: absolute;
    background: url("image/common/new_tab.png") no-repeat !important;
    width: 14px !important;
    height: 14px !important;
    top: 50%;
    right: 30px;
    transform: translateY(-50%);
}

.copyright_text {
    font-size: 12px;
}

/*top*/
.catchcopy {
    text-align: center;
    text-shadow: 0px 0px 10px rgba(0, 0, 0, 1);
    font-size: clamp(40px, calc(5vw + 0.5rem), 80px);
    font-style: normal;
    font-weight: 700;
    line-height: 146%;
    -webkit-text-stroke: 2px black;
    paint-order: stroke;
}

.movie {
    border: 3px solid #C83C28;
    max-width: 640px;
    padding: 20px;
    margin: 0 auto;
}

.recruitment_greeting-inner {
    flex-direction: row-reverse;
    margin-top: 75px;
}

.recruit_top-linkarea_item01,
.recruit_top-linkarea_item02 {
    height: 300px;
    width: 50%;
}

.recruit_top-linkarea_item01::before,
.recruit_top-linkarea_item02::before {
    content: '';
    position: absolute;
    background: linear-gradient(rgba(61, 70, 77, 0.6), rgba(61, 70, 77, 0.6)), url("image/top/new_recruit.jpeg") no-repeat;
    background-size: cover;
    width: 50vw;
    height: 100%;
    right: 0;
    top: 0;
    z-index: -100;
}

.recruit_top-linkarea_item02::before {
    background: linear-gradient(rgba(61, 70, 77, 0.6), rgba(61, 70, 77, 0.6)), url("image/top/mid_recruit.jpeg") no-repeat;
    background-size: cover;
    left: 0;
}

.recruit_top-linkarea_item01,
.recruit_top-linkarea_item02 {
    padding: 70px 100px;
    z-index: 100;
}

.recruit_top-linkarea {
    margin-top: 77px;
}

.recruitment_interview-inner {
    justify-content: space-between;
    align-items: flex-start;
    margin-top: 77px;
}

.recruitment_greeting-inner_image,
.recruitment_interview-inner_image {
    max-width: 430px;
    width: 100%;
    margin-right: 30px;
}

.recruitment_greeting-inner_image {
    margin-left: 30px;
}

.recruitment_greeting-inner_image img,
.recruitment_interview-inner_image img {
    max-width: 430px;
    width: 100%;
    height: 250px;
    object-fit: cover;
}

.recruitment_interview,
.recruitment_qa {
    padding-top: 50px;
}

.recruitment_news {
    padding: 50px 0 100px;
}

.news-inner {
    margin-top: 76px;
}

.news-inner .whatsnew hr {
    border-top: none !important;
}

.news-inner .whatsnew dt {
    color: #2a2a2a;
}

.news-inner .whatsnew dd {
    border-left: none;
    padding-left: 70px
}

.top_news-list_item {
    border: none;
    border-bottom: 2px solid #C83C28;
    padding: 20px;
}

.top_news-list_item p {
    padding-left: 70px;
}

.news-inner_button {
    display: block;
    margin: 20px auto 0;
    width: max-content;

}

/*recruit_aboutus*/

.about_greeting-title {
    z-index: 100;
}

.about_greeting-inner {
    flex-direction: row-reverse;
    justify-content: space-between;
}

.about_greeting-title:before {
    content: '';
    position: absolute;
    background: #ff000038;
    height: 15px;
    width: 333px;
    left: 0;
    bottom: 0;
    z-index: -100;
}

.about_greeting-inner-item {
    max-width: 615px;
    width: 100%;
}

.about-flow {
    padding: 50px 0;
}

.about-flow_inner {
    padding-left: 0;
}

.about-flow_item {
    position: relative;
    border: 3px solid #333;
    width: 22%;
    padding: 30px 20px;
}

.about-flow_item:not(:first-child):after {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-top: 20px solid transparent;
    border-bottom: 20px solid transparent;
    border-left: 20px solid #cccccc;
    border-right: 0;
    top: 50%;
    transform: translatey(-50%);
    left: -33px;
}

.about-flow_item_subtitle {
    font-size: 15px;
    color: #878787;
}

.about-number {
    padding: 50px 0;
}

.about-number .about-number_inner:first-of-type {
    margin-top: 77px;
}

.about-number_item {
    border: 5px solid #333;
    padding: 40px 0;
}

.size-large {
    width: 100%;
}

.size-large img {
    max-width: 390px;
    width: 100%;
}

.size-medium {
    width: 60%;
    justify-content: space-between;
}

.size-small {
    flex-direction: row-reverse;
    justify-content: center;
    padding: 40px 0;
}

.about-number_title {
    margin-left: 40px;
}

.about-number_item-subtitle {
    margin-top: -25px;
}

.about-number_item-number {
    font-size: 5.625rem;
    font-weight: bold;
    color: #C83C28;
    line-height: 70px;
}

.about-number_item-calendar {
    font-size: 15px;
    font-weight: 300;
    background: #333;
    color: #fff;
    padding: 5px 30px;
    margin-top: -11px;
}

.about-number_item-icon {
    margin-top: 30px;
}

.about-number_item-icon img {
    margin-bottom: 0 !important;
}


.continuation_rate .about-number_item-icon {
    max-width: 38%;
    width: 100%;
}

.continuation_rate .about-number_item-icon img {
    width: 100%;
}

.about-number_item-inner {
    max-width: 100%;
    width: 39%;
    flex-direction: column;
}

.about-number_item-inner :first-child {
    margin-bottom: 10px;
}

.about-number_item-unit-vertical {
    writing-mode: vertical-rl;
    font-size: 25px;
    color: #2a2a2a;
    line-height: 1.2;
    margin-bottom: 0 !important;
}

.size-small .about-number_item-title {
    font-size: 30px;
    margin-bottom: 0;
}

.size-small .about-number_item-number {
    font-size: 70px;
    margin-top: -9px;
}

.size-small .about-number_item-icon {
    margin-top: 0;
}

.size-small .about-number_item_data {
    margin-bottom: 0;
    margin-left: 20px;
}

.about-training {
    background: #ebebeb;
    padding: 50px 0;
}

.about-training_greeting {
    margin-top: 65px;
}

.training_greeting-inner {
    flex-direction: column;
}

.training_greeting-inner-flow {
    color: #333;
    max-width: 1080px;
    width: 100%;
}

.training_greeting-inner-flow-title01 {
    background: #f6fcff;
}

.training_greeting-inner-flow-title02 {
    background: #eaf8ff;
}

.training_greeting-inner-flow-title03 {
    background: #caecfd;
}

.training_greeting-inner-flow-title04 {
    background: #a8dffb;
}

.training_greeting-inner-flow-title01,
.training_greeting-inner-flow-title02,
.training_greeting-inner-flow-title03,
.training_greeting-inner-flow-title04 {
    padding: 20px 50px;
    position: relative;
    max-width: 270px;
    width: 100%;
    text-align: center;
}

.training_greeting-inner-flow-title01:after,
.training_greeting-inner-flow-title02:after,
.training_greeting-inner-flow-title03:after {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-top: 35px solid transparent;
    border-bottom: 35px solid transparent;
    border-left: 25px solid #f6fcff;
    border-right: 0;
    top: 50%;
    transform: translatey(-50%);
    right: -25px;
    z-index: 100;
}

.training_greeting-inner-flow-title02:after {
    border-left: 25px solid #eaf8ff;
}

.training_greeting-inner-flow-title03:after {
    border-left: 25px solid #caecfd;
}

.training-content {
    background: #eaf8ff;
    padding: 20px 25px;
    margin-top: 20px;
}

.training-content-item {
    position: relative;
    padding: 0 25px;
    max-width: 270px;
    width: 100%;
}

.training-content-item:first-child {
    padding-left: 0;
}

.training-content-item:last-child {
    padding-right: 0;
}

.training-content-item:not(:first-child):after {
    content: '';
    position: absolute;
    width: 2px;
    height: 100%;
    background: #333;
    left: 0;
    top: 0;
}

.training-content-item_title {
    color: #C83C28;
    text-align: center;
}

.about-event {
    padding: 50px 0 0;
}

.about-event_greeting {
    margin: 65px 0 30px;
}

.swiper-slide {
    width: 340px;
    height: 195px;
}

.swiper-slide img {
    width: 100%;
    object-fit: cover;
}

.about-number_item_data-text {
    margin-top: -15px;
}

.about-number_item_data-text-list {
    margin: 0;
    padding-left: 0;
    list-style-type: none;
    color: #C83C28;
    font-size: 30px;
    font-weight: bold;
    margin-left: 20px;
}

.about-number_item_data-text-list li {
    margin-bottom: 0;
    line-height: 1.3;
}

.about-number_item-list-unit {
    font-size: 18px;
    color: #2a2a2a;
}

/*interview*/
.interview {
    overflow: hidden;
}

.interview_list {
    margin-top: 95px;
}

.interview_list-item {
    width: 31.4%;
}

.intervie_item-img {
    width: 340px;
    height: 340px;
    position: relative;
}

.intervie_item-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.new_graduate .intervie_item-img::after,
.mid_graduate .intervie_item-img::after {
    content: '';
    display: block;
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-color: transparent transparent #C83C28 transparent;
    border-width: 0px 0px 85px 85px;
    bottom: 0;
    right: 0;
    -webkit-transition: all 0.4s;
    transition: all 0.4s;
}

.mid_graduate .intervie_item-img::after {
    border-color: transparent transparent #333 transparent;
}

.new_graduate .intervie_item-link:hover .intervie_item-img::after,
.mid_graduate .intervie_item-link:hover .intervie_item-img::after {
    border-width: 0px 0px 340px 0px;
    width: 100%;
    height: 100%;
    opacity: 0.4;
}

.nav-tabs {
    margin-top: 90px;
}

.department {
    margin-top: 15px;
    border: #C83C28 1px solid;
    padding: 10px 15px;
}

.inerview-linkarea .inerview-linkarea_item:not(:first-child) {
    margin-left: 30px;
}

.inerview-linkarea .inerview-linkarea_item:nth-child(4n) {
    margin-left: 0;
}

.inerview-linkarea_item {
    width: 31%;
    position: relative;

}

.inerview-linkarea_item:hover {
    background: #fff;
    opacity: 0.8;
}

.inerview-linkarea_item a:hover {
    text-decoration: none;
}

.inerview-linkarea a:hover {
    color: #2a2a2a;
}

.inerview-linkarea_image {
    position: relative;
    max-width: 340px;
}

.inerview-linkarea_image img {
    height: 340px;
    max-width: 340px;
    width: 100%;
    object-fit: cover;
}

.inerview-linkarea_text {
    position: absolute;
    background: #fff;
    bottom: 0;
    left: 0;
    width: 100%;
    opacity: 0.8;
    padding: 30px;
    font-size: 16px;
    font-weight: 500;
    width: 340px;
}

.inerview-linkarea_name {
    font-size: 30px;
    font-weight: 500;
}

.inerview-linkarea_text .orange {
    font-size: 16px;
}

.interview-content {
    background: #eaf8ff;
}

.interview-content:nth-child(even) {
    background: #fff;
}

.interview-content_introduction {
    position: relative;
    z-index: 100;
    padding: 180px 0 0;
    margin: 0 0 100px;
}

.interview-content_introduction_image {
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: -100;
}

.interview-content_introduction_image img {
    width: 770px;
    height: 445px;
    object-fit: cover;
}

.interview-content_introduction_text-item {
    width: 51%;
    background: #fff;
    font-size: 25px;
    padding: 40px;
    box-shadow: 1px 2px 20px 4px rgba(0, 0, 0, 0.4);
    z-index: 100;
}

.interview-content_introduction_name {
    font-size: 35px;
    font-weight: 500;
    margin-bottom: 20px;
}

.interview-content_introduction_text-item .orange {
    font-size: 20px;
}

.interview-content_introduction_text-greeting {
    border-top: 1px solid #C83C28;
    padding-top: 20px;
    font-size: 18px;
}

.interview-content_qa :nth-child(odd) {
    flex-direction: row-reverse;
}

.interview-content_qa .interview-content-item:nth-of-type(odd) .interview-content_image {
    margin-left: 40px;
    margin-right: 0;
}


.interview-content-item {
    align-items: flex-start;
    position: relative;
    margin-bottom: 80px;
    padding: 50px 0;
    z-index: 1;
}


.interview-content_image {
    max-width: 430px;
    width: 100%;
    margin-right: 40px;
}

.interview-content_image img {
    width: 100%;
    height: 570px;
    object-fit: cover;
}

.interview-content-item:after {
    content: '';
    position: absolute;
    background: #fff;
    margin: 0 calc(80% - 50vw);
    width: 100vw;
    height: 100%;
    top: 0;
    z-index: -1;
}

.interview-content:nth-child(even) .interview-content-item:after {
    background: #eaf8ff;
}

.interview-content_textarea-item {
    margin-bottom: 40px;
}

.interview-content_textarea :last-child.interview-content_textarea-item {
    margin-bottom: 0;
}

.interview-content_question {
    font-size: 20px;
    font-weight: bold;
    line-height: 1.28;
    margin-bottom: 20px;
    color: #333;
    position: relative;
    padding-left: 30px;
    font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}

.interview-content_question:after {
    content: 'Q.';
    position: absolute;
    font-size: 20px;
    font-weight: bold;
    color: #333;
    top: 0;
    left: 0;
}

.interview-content_answer {
    line-height: 1.5;
    margin-bottom: 0;
}

.interview-flow {
    padding-bottom: 100px;
}

.interview-flow_inner {
    background: #fff;
    margin-top: 77px;
    padding: 50px;
}

.interview-content:nth-child(even) .interview-flow_inner {
    background: #eaf8ff;
}

.interview-flow_inner-item {
    justify-content: space-between;
    align-items: flex-start;
    margin: 18px 0;
    position: relative;
}

.interview-flow_inner :first-child {
    margin-top: 0;
}

.interview-flow_inner :last-child {
    margin-bottom: 0;
}

.interview-flow_inner-item_time {
    font-size: 30px;
    font-weight: bold;
    color: #C83C28;
    padding-left: 55px;
    position: relative;
}

.interview-flow_inner-item_time:after {
    content: '';
    position: absolute;
    width: 20px;
    height: 20px;
    background: #C83C28;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}

.interview-flow_inner :not(:last-child).interview-flow_inner-item:before {
    content: '';
    position: absolute;
    width: 2px;
    background: #C83C28;
    top: 30px;
    bottom: 0;
    left: 10px;
    height: 100%;
}

.interview-flow_inner-item_content {
    align-items: flex-start;
    border-bottom: 2px solid #bfbfbf;
    padding-bottom: 30px;
    max-width: 742px;
    width: 100%;
    justify-content: space-between;
}

.interview-flow_inner-item_title {
    font-size: 25px;
    font-weight: bold;
}

.interview-flow_inner-item_textinner {
    margin-bottom: 0;
}

.interview-flow_inner-item_image {
    margin-left: 50px;
    max-width: 175px;
    width: 100%;
}

.list_back {
    text-align: center;
}


/*new_recruit*/
.recruit_flow {
    padding: 50px 0;
}

.recruit-flow_inner {
    align-items: stretch;
    justify-content: space-between;
    margin-top: 90px;
}

.recruit-flow_item {
    max-width: 240px;
    width: 100%;
    background: #fff;
    border: 3px solid #333;
    flex-direction: column;
    padding: 30px 20px;
    position: relative;
}

.recruit-flow_item:not(:first-child):after {
    content: '';
    position: absolute;
    width: 20px;
    height: 20px;
    border-style: solid;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 20px solid #cccccc;
    border-right: 0;
    top: 50%;
    left: -35px;
}

.recruit-item_subtitle {
    font-weight: bold;
    font-size: 15px;
    color: #878787;
}

.recruit-item_title {
    font-weight: bold;
    font-size: 22px;
    margin-bottom: 20px;
}

.recruit-item_text {
    margin-top: 20px;
    letter-spacing: 0.027em;
    line-height: 1.5;
}

.ewd-ufaq-faq-category-title {
    display: none;
}

.qa-inner {
    margin-top: 77px;
}

.entry_table-item th {
    background-color: #C83C28 !important;
}

.entry_body .item_name {
    width: 30%;
    padding: 20px 40px;
    font-weight: 700;
    border: 1px solid #fff;
}

.entry_body .item_data {
    width: 70%;
    padding: 20px 40px;
    border: 1px solid #bfbfbf;
}

#new-recruit,
#mid-recruit {
    display: none;
}

.entry_privacy {
    margin-top: 4rem;
}

.entry_button {
    display: block;
    margin: 30px auto 0;
}

.catch-text {
    width: 90%;
}

.catch-text .en {
    padding: 0 10px;
}

.ewd-ufaq-faq-title {
    background: #333;
    padding: 20px;
    position: relative;
}

.ewd-ufaq-faq-title:before {
    content: 'Q.';
    position: absolute;
    font-size: 30px;
    color: #fff;
    top: 50%;
    left: 20px;
    transform: translateY(-50%);
}

.ewd-ufaq-faq-title a {
    color: white;
}

.ewd-ufaq-faq-categories {
    display: none;
}

.ewd-ufaq-faq-body {
    background: #f0f0f0;
    padding: 20px !important;
    position: relative;
}

.ewd-ufaq-faq-title-text {
    margin-left: 43px;
}

.ewd-ufaq-faq-body:before {
    content: 'A.';
    position: absolute;
    font-size: 30px;
    line-height: 1.0;
    color: #333;
    left: 20px;
    top: 50%;
    transform: translateY(-50%);
}

.ewd-ufaq-post-margin p {
    margin-bottom: 0;
    margin-left: 50px;
}

.ewd-ufaq-faq-title div.ewd-ufaq-post-margin-symbol {
    position: absolute;
    right: 0;
}

.ewd-ufaq-faq-title a:hover {
    color: #ff0000 !important;
}