@charset "utf-8";

body {
    font-size: 1.6rem;
}

/* //child.css */
img {
    display: block;
    max-width: 100%;
    height: auto;
}

p {
    display: block;
    margin-bottom: 30px;
    line-height: 1.85em;
    letter-spacing: 0.1em;
}

a {
    color: #222;
    text-decoration: underline;
}

a:visited {
    color: #333;
}

a[target="_blank"] {
    padding-right: 25px;
    background: url(../img/popup.svg) no-repeat center right 5px;
}

a.non[target="_blank"] {
    padding-right: 0;
    background: none;
}

a[href$=".doc"],
a[href$=".docx"] {
    padding-right: 25px;
    background: url(../img/icon_word.svg) no-repeat center right 5px;
}

a[href$=".xls"],
a[href$=".xlsx"] {
    padding-right: 25px;
    background: url(../img/icon_excel.svg) no-repeat center right 5px;
}

a[href$=".pdf"] {
    padding-right: 25px;
    background: url(../img/icon_pdf.svg) no-repeat center right 5px;
}

a.none[href$=".pdf"] {
    padding-right: 0;
    background: none;
}

[href^="tel:"] {
    color: #333 !important;
    pointer-events: none;
    text-decoration: none;
}

a:hover {
    text-decoration: none;
}

.anchor {
    display: block;
    padding-top: 110px !important;
    margin-top: -110px !important;
}

/*-------------------------------------------------------------
	table
-------------------------------------------------------------*/

.ver_hidden {
    display: block;
    position: relative;
    overflow: hidden;
}
.box_more {
	position: relative;
}
.more {
    position: absolute;
    display: inline-block;
    box-sizing: border-box;
    bottom: -5px;
    left: 0;
    right: 0;
    background: rgb(255, 255, 255);
    background: linear-gradient(0deg, rgba(255, 255, 255, 1) 60%, rgba(255, 255, 255, 0) 100%);
    padding-top: 100px;
    text-align: center;
    pointer-events: none;
}

.more.active {
    display: block;
    position: static;
    padding-top: 0;
    background: none;
}

.more .more_btn {
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: 'Montserrat', sans-serif;
    font-size: 1.5rem;
    text-decoration: none;
    letter-spacing: 0;
    color: #fff;
    height: 100%;
    padding: 15px;
    background-color: #14B2DB;
    border-radius: 80px;
    width: 218px;
    max-width: 100%;
    margin: auto;
    transition: all .3s ease;
    cursor: pointer;
    pointer-events: auto;
    position: relative;
}

.more .more_btn:hover {
    opacity: .7;
    transition: all .3s ease;
}

.more .more_btn:before {
    display: block;
    white-space: nowrap;
    content: "Read More";
    margin-right: 35px;
}

.more.active .more_btn:before {
    white-space: nowrap;
    display: block;
    content: "Close";
}

.more .more_btn:after {
    display: block;
    content: '';
    width: 12px;
    height: 12px;
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
    margin-bottom: 5px;
    transform: rotate(45deg);
    transition: border-color .3s;
    z-index: 5;
}

.more.active .more_btn:after {
    margin-bottom: 0;
    margin-top: 5px;
    transform: rotate(-135deg);
}

table {
    border-collapse: collapse;
    border-spacing: 0;
    width: 100%;
    margin: 20px auto;
    border-top: 2px solid #CCCCCC;
}

table th {
    width: 22.7%;
    background: #F6F6F6;
    font-weight: bold;
    text-align: left;
    padding: 20px;

}

table td {
    padding: 20px 20px 20px 40px;
}

table th,
table td {
    vertical-align: top;
    border-bottom: 2px solid #CCCCCC;
}

table td ul {
    list-style: disc;
    padding-left: 20px;
    margin-bottom: 0;
}

.content_area {
    margin: 0 auto;
}

.content_area .link_btn {
    position: relative;
    width: 320px;
    max-width: 100%;
}

.content_area .link_btn a {
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: 'Montserrat', sans-serif;
    font-size: 1.5rem;
    text-decoration: none;
    letter-spacing: 0;
    color: #14B2DB;
    width: 100%;
    height: 100%;
    padding: 23px 10px 23px 50px;
    background-color: #FFF;
    border-radius: 80px;
    cursor: pointer;
    transition: all .3s ease;
    position: relative;
}

.content_area .link_btn a::after {
    content: '';
    display: block;
    width: 16%;
    height: 7px;
    background: url(../img/arrow_r_b.svg) no-repeat center / contain;
    margin-left: 40px;
    transition: all .3s ease;
}

.content_area .link_btn a:hover {
    background-color: #14B2DB;
    color: #FFF;
}

.content_area .link_btn a:hover:after {
    background: url(../img/arrow_r_w.svg) no-repeat center / contain;
    transition: all .3s ease;
}

.link_btn_wrap {
    padding: 30px 0;
    display: flex;
    justify-content: center;
    z-index: 5;
    position: relative;
}

.link_btn_wrap .link_btn:first-child {
    margin-right: 130px;
}

.link_btn_wrap .link_btn:last-child {
    margin-right: 0;
}

.inner {
    width: 1360px;
    max-width: 100%;
    margin: 0 auto;
    padding: 0 20px;
}


.column_02,
.column_03 {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 20px;
}

.column_02>div {
    display: block;
    width: 48%;
    margin-right: 4%;
    box-sizing: border-box;
}

.column_02>div:nth-child(2n) {
    margin: 0;
}

.column_02.icon_desc {
    align-items: center;
    justify-content: center;
}

.column_02.icon_desc div:first-child {
    width: 17%;
    margin: 0 4.7% 0 0;
}

.column_02.icon_desc div:nth-child(2) {
    width: 78.3%;
}

.column_02.icon_desc img {
    max-width: 100%;
    margin: auto;
}

.column_02.icon_desc p {
    margin: 0;
}

.column_03>div,
.column_03>ul {
    width: 32%;
    margin-right: 2%;
    box-sizing: border-box;
}

.column_03>div img {
    margin: 0;
}

.column_03>div:nth-child(3n),
.column_03>ul:nth-child(3n) {
    margin: 0;
}

.column_04 {
    display: flex;
    flex-wrap: wrap;
}

.column_04 ul {
    line-height: 1.85em;
    margin-right: 2%;
    width: 23.5%;
}

.column_04 ul:nth-child(4n) {
    margin-right: 0;
}


.txt_right {
    text-align: right;
}

.txt_left {
    text-align: left;
}

.txt_center {
    text-align: center;
}

@media screen and (max-width:767px) {
    img {
        width: auto;
        height: auto;
        max-width: 100%;
    }

    .anchor {
        display: block;
        padding-top: 75px !important;
        margin-top: -75px !important;
    }

    p {
        margin-bottom: 15px;
        line-height: 1.8;
    }

    [href^="tel:"] {
        pointer-events: all;
        text-decoration: underline;
    }

    /*-------------------------------------------------------------
	table
-------------------------------------------------------------*/

    /* .ver_hidden {
		display: block;
		position: relative;
		overflow: hidden;
	} */

    .more {

        padding-top: 70px;

    }

    /* .more.active {
	
	} */

    .more .more_btn {
        font-size: 1.3rem;
        padding: 15px 20px;
    }

    /* .more .more_btn:hover {
		
	} */

    .more .more_btn:before {
        margin-right: 15px;
    }

    /* .more.active .more_btn:before {
	} */

    /* .more .more_btn:after {
		
	} */

    /* .more.active .more_btn:after {
	} */

    table th {
        /* padding: 15px 7px; */
        width: 100%;
        border-bottom: none;
    }

    /* table td {
		padding: 15px 10px 15px 5px;
	} */

    table th,
    table td {
        display: list-item;
        list-style: none;
        padding: 13px 10px 14px;
        font-size: 1.3rem;
        letter-spacing: 1.3px;
        line-height: 2.2rem;
    }

    /* .content_area {
		padding: 45px 0 0;
	} */

    .content_area .link_btn a {
        font-size: 1.4rem;
        padding: 15px 20px;
    }

    .link_btn_wrap {
        display: block;
    }

    .link_btn_wrap .link_btn {
        margin: 0 auto !important;
    }

    .link_btn_wrap .link_btn:first-child {
        margin-bottom: 20px !important;
    }

    .column_02>div,
    .column_03>div {
        width: 100%;
        margin-right: 0;
        margin-bottom: 20px;
    }

    .column_03>ul {
        width: 100%;
        margin-right: 0;
    }

    .column_02.icon_desc div:first-child {
        width: 55%;
        margin: 0 0 15px 0;
    }

    .column_02.icon_desc div:nth-child(2) {
        width: 100%;
    }

    .column_04 ul {
        margin: 0;
        width: 100%;
    }
}

/*---------------------------------------------------------
	各ページcatch
---------------------------------------------------------*/
/* #content_wrap {
	position: relative;
}

#content_wrap:before {
	position: absolute;
	content: "";
	width: 42%;
	height: 400px;
	top: -100px;
	background-color: #4169E1;
	z-index: -10;
} */



.recruit_txtbox {
    max-width: 50%;
    box-sizing: border-box;
    position: relative;
    z-index: 0;
}



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



    /* sec_ttl */

    .recruit_txtbox {
        max-width: 100%;
        margin: auto;
    }

    .recruit_txtbox h2 {
        font-size: 1.6rem;
        margin-bottom: 30px;
    }

    .recruit_txtbox h3.left_border {
        font-size: 1.4rem;
        padding: 0 0 0 10px;
    }

    .recruit_txtbox h4 {

        font-size: 1.3rem;
        margin-bottom: 20px;
    }
}

/* child.css// */

#recruit_wrap {
    position: relative;
}

/*-------------------------------------
	採用情報トップ内共通
--------------------------------------*/
.recruit_sec {
    /* padding: 30px 0;
	margin-bottom: 50px; */
    position: relative;
    z-index: 0;
}



.rec_ttl {
    color: #FFF;
    margin: 56px auto 25px;
    padding-top: 11px;
    position: relative;
    z-index: 5;
}

.rec_ttl.color_blue {
    color: #14B2DB;
}

.rec_ttl span {
    display: inline-block;
    font-family: 'Montserrat', sans-serif;
    font-size: 3.0rem;
    line-height: 1;
    letter-spacing: 0.05em;
    font-weight: 500;
    position: relative;
}

.rec_ttl span:before {
    content: "";
    position: absolute;
    width: 46px;
    height: 1px;
    top: 50%;
    left: -60px;
    background: #fff;
}

.rec_ttl.color_blue span:before {
    background: #14B2DB;
}

.rec_ttl h2 {
    font-size: 4.0rem;
    font-weight: 500;
    letter-spacing: 0;
    margin-top: 20px;

}


.recruit_sec .youtube {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    margin-bottom: 20px;
}

.recruit_sec .youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    border: none;
}

/* sec catch */
/* bg_wrap sec_01 */
.bg_wrap {
    position: relative;
    background: url(../img/recruit_catch_bg.png) no-repeat top / cover;
    width: 100%;
    padding-bottom: 10px;
    margin-top: 90px;
}

#content_h {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    margin-top: 90px;
    position: relative;
    margin-left: auto;
    width: 1816px;
    max-width: 100%;
    height: 988px;
    padding: 0 20px;
    margin: auto;
}

#h_img {
    margin-bottom: 60px;
    width: 67%;
}

#h_area {
    font-family: Cambria, 'Noto Serif JP', serif;
    color: #fff;
    padding: 0 20px 0 0;
    margin: 0 auto 160px -10%;
    width: 43%;
}

#h_area h1 {
    display: inline-block;
    font-size: 7.2rem;
    letter-spacing: -0.05em;
    font-weight: 500;
    position: relative;
}

#h_area ruby>rt {
    font-size: 1.9rem;
}

#h_area span {
    display: block;
    font-size: 2rem;
    letter-spacing: 0;
    line-height: 1;
    margin-left: 7%;
    position: relative;
}

.recruit_sec.sec_01 {
    padding: 58px 0 30px;
    margin-bottom: 40px;
}

/* .recruit_sec.sec_01 .recruit_txtbox:after {
	
} */

/* .recruit_sec.sec_01 h3 {
    font-size: 2.2rem;
    letter-spacing: 0;
    color: #fff;
    margin-bottom: 29px;
} */

.recruit_sec.sec_01 p {
    letter-spacing: 0;
    line-height: 1.75em;
    color: #fff;
}

/* sec_02 info graphics*/
.recruit_sec.sec_02 {
    padding: 26px 0 325px;
    margin-bottom: 0;
}

.recruit_sec.sec_02:before {
    position: absolute;
    content: "";
    background: url(../img/recruit_ig_bg.jpg) no-repeat center center / cover;
    width: 100vw;
    height: 100%;
    min-width: 1200px;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    z-index: -5;
}

.recruit_sec.sec_02 p {
    font-size: 2.5rem;
    letter-spacing: 0;
    color: #fff;
    margin-bottom: 40px;
}

/* sec_03 persons */
.recruit_sec.sec_03 {
    padding: 100px 0 70px;
    margin-bottom: 0;
}

.recruit_sec.sec_03:before {
    position: absolute;
    content: "";
    background: url(../img/recruit_person_bg.jpg) no-repeat center center / cover;
    width: 100vw;
    height: 78%;
    min-width: 1200px;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    z-index: -5;
}
.recruit_sec.sec_03 .rec_ttl{
    margin-top: 0;
    padding-top: 0;
}
.recruit_sec.sec_03>.column_02>div:first-child {
    width: 50%;
    margin: 0;
}

.recruit_sec.sec_03>.column_02>div:first-child img {
    /* width: 100%; */
    margin-left: auto;
}


.recruit_sec.sec_03>.column_02>div:nth-child(2) {
    width: 50%;
    /* padding-top: 19px; */
    padding-left: 6.65%;
}

.recruit_sec.sec_03 p {
    font-size: 2.2rem;
    letter-spacing: 0;
    color: #fff;
    margin-bottom: 55px;

}

/* sec_04 cross talk */
.recruit_sec.sec_04 {
    padding: 25px 0 294px;
    margin-bottom: 28px;
}

.recruit_sec.sec_04:before {
    position: absolute;
    content: "";
    background: url(../img/recruit_cross_bg.jpg) no-repeat center top / cover;
    width: 100vw;
    height: 100%;
    min-width: 1200px;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    z-index: -5;
}

.recruit_sec.sec_04 p {
    font-size: 2.2rem;
    letter-spacing: 0;
    color: #fff;
    margin-bottom: 38px;
}

/* sec_05 special movie */
.recruit_sec.sec_05 {
    padding: 27px 0 0;
    margin-bottom: 29px;
	z-index:10;
}

.recruit_sec.sec_05 p {
    font-size: 2.1rem;
    letter-spacing: 0;
    margin-bottom: 36px;
}

/* sec_06 job requirements */
.recruit_sec.sec_06 {
    padding: 30px 0 0;
    margin-bottom: 120px;
}

/* sec_link */

.recruit_sec_link {
    background: rgb(91, 203, 214);
    background: linear-gradient(98deg, rgba(91, 203, 214, 1) 0%, rgba(111, 160, 233, 1) 100%);
    padding: 156px 20px 114px;
    position: relative;
}

/* breadcrumb */

#breadcrumb {
    width: 1360px;
    max-width: 100%;
    margin: auto;
    overflow: hidden;
    /* font-size: 80%; */
    padding: 10px 20px;
	font-size: 1.5rem;
}

.rec_link_inner {
    display: flex;
    flex-wrap: wrap;
    width: 1090px;
    max-width: 100%;
    margin: auto;
}

.rec_link_left {
    padding: 0 20px 0 58px;
    width: 50%;
}

.rec_link_left .rec_ttl {
    margin-top: 0;
    padding-top: 0;
}

.rec_link_right {
    display: flex;
    width: 50%;
    flex-direction: column;
    align-items: center;
}

.rec_link_right a {
    display: block;
    margin-bottom: 15px;
	padding-right: 25px;
    background: none;
}

.rec_link_right p {
    font-size: 1.8rem;
    color: #fff;
    margin-bottom: 0;
}



/* @media screen and (max-width:1200px) {

}

*/
@media screen and (max-width:1550px) {
    .bg_wrap {
        /* position: relative; */
        background: url(../img/recruit_catch_bg_long.png) no-repeat top / cover;
        /* width: 100%;
		padding-bottom: 10px;
		margin-top: 90px; */
    }

    #content_h {
        height: auto;

    }

    #h_img {
        margin-bottom: 0;
        padding-top: 50px;
        width: 90%;
    }

    #h_area {
        position: absolute;
        text-align: right;
        right: 0;
        margin: 0 auto 90px 0;
        width: auto;
        text-shadow: 0 0 10px rgb(0 0 0 / 20%);
    }

    /* #h_area h1 {
		
	}

	#h_area span {
		
	}

	.recruit_txtbox {
		
	}*/


}

@media screen and (max-width: 767px) {
    body {
        font-size: 1.3rem;
    }

    /* #content_h.recruit_h {
	}

	#content_h.recruit_h #h_area {
	} */

    /*-------------------------------------
	//採用情報トップ内共通
	--------------------------------------*/
    .recruit_sec {
        padding: 20px 0;
        margin-bottom: 30px;
    }

    .rec_ttl {
        margin: 30px auto 15px;
        padding-top: 5px;
    }

    /* .rec_ttl.color_blue {
	} */

    .rec_ttl span {
        font-size: 2.2rem;
        padding-left: 10px;
    }

    .rec_ttl span:before {
        width: 15px;
        left: -15px;
    }

    /* .rec_ttl.color_blue span:before {
	} */

    .rec_ttl h2 {
        font-size: 2.2rem;
        margin-top: 8px;

    }

    .recruit_sec .youtube {
        position: relative;
        width: 100%;
        padding-top: 56.25%;
        margin-bottom: 20px;
    }

    .recruit_sec .youtube iframe {
        position: absolute;
        top: 0;
        right: 0;
        width: 100%;
        height: 100%;
        border: none;
    }

    /* sec catch */
    /* bg_wrap sec_01 */
    .bg_wrap {
        position: relative;
        /* background: url(../img/recruit_catch_bg_sp.png) no-repeat top / cover; */
        padding-bottom: 30px;
        margin-top: 65px;
    }

    #content_h {
/*         padding: 0 8px; */
		padding: 50px 0 30px 0;
    }

    #h_img {
        padding-top: 30px;
        width: 100%;
    }

    #h_area {
        position: static;
        bottom: 23px;
        margin: -30px 0 30px auto;
        padding: 0 20px;
    }

    #h_area h1 {
        font-size: 8.4vw;
        padding: 0;
		margin-bottom: 20px;
    }
	
	 #h_area ruby>rt {
		 font-size: 0.9rem;
	}

    #h_area span {
        font-size: 1.4rem;
        padding: 0;
        margin-left: auto;
    }

    /* .recruit_sec.sec_01 .recruit_txtbox:after {
	} */
    .recruit_sec.sec_01 {
        padding: 0;
        margin-bottom: 0;
    }

/*     .recruit_sec.sec_01 h3 {
        font-size: 1.6rem;
        margin-bottom: 25px;
    } */

    /* .recruit_sec.sec_01 p {
	} */

    /* sec_02 info graphics*/
    .recruit_sec.sec_02 {
        padding: 30px 0 130px;
    }

    .recruit_sec.sec_02:before {
        min-width: auto;
    }

    .recruit_sec.sec_02 p {
        font-size: 1.8rem;
        /* letter-spacing: 0;
		color: #fff; */
        margin-bottom: 20px;
    }

    /* sec_03 persons */
    .recruit_sec.sec_03 {
        padding: 50px 0 25px;
	}
    .recruit_sec.sec_03 .rec_ttl {
        margin-top:30px;
        padding-top: 5px;
    }

    .recruit_sec.sec_03:before {
        height: 80%;
        min-width: auto;
    }

    .recruit_sec.sec_03>.column_02 {
        flex-direction: column-reverse;
    }

    .recruit_sec.sec_03>.column_02>div:first-child {
        width: 90%;
        margin: auto;
    }

    .recruit_sec.sec_03>.column_02>div:first-child img{
        margin: auto;
    }

    .recruit_sec.sec_03>.column_02>div:nth-child(2) {
        width: 100%;
        padding-left: 0;
        margin: 0 auto 3vw;
    }

    .recruit_sec.sec_03 p {
        font-size: 1.6rem;
        margin-bottom: 25px;
    }

    /* sec_04 cross talk */
    .recruit_sec.sec_04 {
        padding: 40px 0 120px;
        margin: 0;
    }

    .recruit_sec.sec_04:before {
        min-width: auto;
    }

    .recruit_sec.sec_04 p {
        font-size: 1.6rem;
        margin-bottom: 20px;
    }

    /* sec_05 special movie */
    .recruit_sec.sec_05 {
        margin: 0;
    }

    .recruit_sec.sec_05 p {
        font-size: 1.6rem;
        margin-bottom: 20px;
    }

    /* sec_06 job requirements */
    .recruit_sec.sec_06 {
        padding: 0;
        margin-bottom: 70px;
    }

    /* sec_link */

    .recruit_sec_link {
        padding: 50px 20px 60px;
    }

    /* .rec_link_inner {
	} */

    .rec_link_left {
        padding: 0;
        width: 100%;
    }

    /* .rec_link_left .rec_ttl {
	} */

    .rec_link_right {
        width: 100%;
    }

    /* .rec_link_right a {
	} */

    .rec_link_right p {
        font-size: 1.5rem;
    }

}