@charset "utf-8";
/*------------------------------------------------------------
	career_index
------------------------------------------------------------*/
body {
    animation: none;
}
.loading {
    /* display: none; */
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 200;
    background-color: #F6F3EB;
    justify-content: center;
    align-items: center;
    display: flex;
}
.loading #bar {
    width: 18rem;
    height: 18rem;
    position: relative;
}
.fv {
    min-height: 100vh;
    color: #fff;
    position: relative;
}
.fv:after {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 19vw;
    background-color: #fff;
    clip-path: polygon(100% 0, 100% 100%, 0 100%);
    content: "";
}
.fv:before {
    position: absolute;
    right: 0;
    bottom: 18.95vw;
    width: 999.9rem;
    height: 0.1rem;
    z-index: 1;
    transform-origin: right top;
    transform: rotate(-10.8deg);
    background-color: #0068B7;
    content: "";
}
.fv .movie {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}
.fv .movie:after {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: 0.32;
    background: #20222D;
    content: "";
}
.fv .movie video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.fv .ttl-box {
    position: relative;
    z-index: 1;
    height: 100vh;
    display: flex;
    align-items: center;
}
.fv .ttl-box .content {
    margin: 10.5rem 3rem 0;
}
.fv h2 {
    margin: 0 0 2.5rem;
    font-size: 2.5rem;
    line-height: 1.75;
    letter-spacing: 0.85rem;
}
.fv .btn a {
    padding-left: 0.7rem;
    color: #fff;
    display: inline-block;
    height: 10.5rem;
    font-size: 1.7rem;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.255rem;
    border-left: 1px solid #fff;
}
.fv .btn a span {
    display: inline-block;
    -webkit-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: tb-rl;
    writing-mode: vertical-rl;
}
.fv .txt-box {
    padding: 3rem 0 35vw;
    position: relative;
    z-index: 1;
}
.fv .txt-box p {
    margin: 0 -0.2rem 3.5rem 0;
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1.96;
    letter-spacing: 0.18rem;
}
.fv .txt-box p:last-child {
    margin-bottom: 0;
}
#main {
    overflow: hidden;
}
#main .bg-white {
    margin-top: -11vw;
    position: relative;
    background-color: #fff;
    clip-path: polygon(0 11vw, 100% -2vw, 100% 100%, 0 100%);
}
#main .about {
    position: relative;
    border-bottom: 1px solid #0068B7;
}
#main .about:before {
    position: absolute;
    right: 0;
    top: -0.6rem;
    width: 105%;
    height: 0.1rem;
    z-index: 1;
    transform-origin: right top;
    transform: rotate(-10.8deg);
    background-color: #0068B7;
    content: "";
}
#main .about .content {
    padding: 23.5vw 0 18.5vw;
    position: relative;
    z-index: 1;
}
#main .about .content:after {
    position: absolute;
    right: 1.1rem;
    top: 0;
    width: 0.1rem;
    height: 100%;
    z-index: -1;
    background-color: #0068B7;
    content: "";
}
#main .about .txt-box {
    margin: 0 2rem 6.5rem 0;
}
#main .about .txt-box p {
	color: #231815;
}
#main .about .link-list {
    margin: 0 -2rem;
    position: relative;
    z-index: 1;
    padding: 0 3.1rem 0 1.9rem;
}
#main .about .link-list:after {
    position: absolute;
    left: 48%;
    top: 42.5%;
    transform: translate(-50%, -50%);
    width: 48rem;
    height: 40rem;
    background: url(../images/career_index/about_bg.png) no-repeat center center/100% 100%;
    content: "";
    z-index: -1;
}
#main .about .link-list li:not(:last-child) {
    margin-bottom: 7rem;
}
#main .about .link-list a {
    position: relative;
    z-index: 1;
    display: block;
}
#main .about .link-list a:before {
    position: absolute;
    z-index: 2;
    right: 1.7rem;
    bottom: 21%;
    border-radius: 2.8rem;
    background: #fff url(../images/common/arrow01.svg) no-repeat center center;
    width: 3.8rem;
    height: 3.8rem;
    box-shadow: 0rem 0.2rem 0.4rem 0rem rgba(136, 144, 194, 0.20), 0rem 0.5rem 1.5rem 0rem rgba(37, 44, 97, 0.15);
    content: "";
}
#main .about .link-list a:after {
    position: absolute;
    right: -0.9rem;
    bottom: -0.8rem;
    width: calc(100% - 0.1rem);
    height: calc(100% - 0.1rem);
    transform: skewY(-11deg);
    border-radius: 1.6rem 2.5rem;
    z-index: -1;
    background: linear-gradient(80deg, #5EA1D4 0.79%, #C0DDF4 89.39%);
    content: "";
}
#main .about .link-list a .photo {
    padding-bottom: 64.7%;
    overflow: hidden;
    position: relative;
    border-radius: 1.6rem 2.5rem;
    transform: skewY(-11deg);
}
#main .about .link-list a img {
    position: absolute;
    left: 0;
    top: 47%;
    transition: .3s ease-in-out;
    transform: skewY(11deg) translateY(-50%);
    width: 100%;
}
#main .about .link-list p {
    padding: 0.3rem 1.2rem;
    position: absolute;
    display: inline-block;
    border-radius: 0rem 1rem 1rem 0rem;
    background: rgba(0, 104, 183, 0.7);
    left: 0;
    top: 13vw;
    color: #fff;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.36rem;
    z-index: 2;
}
#main .about .link-list li:last-child a:after {
    background: linear-gradient(80deg, #7EC1AE 9.78%, #C4E3DA 89.3%);
}
#main .about .link-list li:last-child p {
    background: rgba(56, 155, 127, 0.7);
}
#main .img-box {
    margin-bottom: 5.5rem;
}
#main .img-box .photo-box {
    margin: 0 -2rem 1.6rem;
}
#main .img-box .photo-box img {
    width: 100%;
}
#main .img-box .txt-box {
    margin: 0 1.7rem;
}
#main .job {
    padding: 5.2rem 0 3.5rem;
}
#main .job .ttl-box {
    margin-bottom: 2.5rem;
}
#main .interview {
    margin-bottom: 2.8rem;
    padding-bottom: 3.5rem;
    border-bottom: 0.1rem solid #0068B7;
}
#main .interview .bg-box {
    margin-bottom: 4rem;
    padding-bottom: 4rem;
    border-top: 0.1rem solid #0068B7;
    border-bottom: 0.1rem solid #0068B7;
    background: #F6F3EB url(../images/career_index/interview_bg.png) no-repeat left -3.2rem top/32.8rem auto;
}
#main .interview .bg-box .content {
    margin: 0 1.8rem;
}
#main .interview .bg-box .sub-ttl {
    margin: 0 0 1.6rem 2rem;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.7;
    letter-spacing: 0.16rem;
    transform: translateY(-1.4rem);
}
#main .interview02 .bg-box .sub-ttl {
	margin-left: -0.3rem;
    margin-right: -3rem;
}
#main .interview .bg-box .sub-ttl img {
    width: 9.8rem;
    display: block;
    margin-bottom: 1rem;
}
#main .interview .bg-box .photo {
    margin-right: 0.1rem;
    position: relative;
}
#main .interview .bg-box .photo img {
    width: 100%;
}
#main .interview .bg-box .photo .com-more-btn {
    position: absolute;
    right: 0;
    bottom: 8%;
    width: 13.9rem;
}
#main .interview .bg-box .photo .com-more-btn a {
    border: none;
    height: 3.9rem;
    color: #0068B7;
    box-shadow: 0rem 0.2rem 0.4rem 0rem rgba(136, 144, 194, 0.20), 0rem 0.5rem 1.5rem 0rem rgba(37, 44, 97, 0.15);
}
#main .interview .bg-box .photo .com-more-btn a span {
    font-family: "din-2014", sans-serif;
    font-weight: 600;
}
#main .interview .bg-box .photo .com-more-btn a span::before {
    background-image: url(../images/common/icon_plus02.svg);
}
#main .interview .bg-box .photo .com-more-btn.green a {
    color: #389B7F;
    box-shadow: 0rem 0.2rem 0.4rem 0rem rgba(110, 165, 155, 0.20), 0rem 0.5rem 1.5rem 0rem rgba(110, 165, 155, 0.15);
}
#main .interview .bg-box .photo .com-more-btn.green a span::before {
    background-image: url(../images/common/icon_plus03.svg);
}
#main .com-btn a .arrow:before, #main .com-btn a .arrow:after {
    background-image: url(../images/common/arrow04.svg);
}
#main .interview03 {
    margin: 0;
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}
#main .interview03 .txt-box {
    margin: 0 3.8rem 5.4rem;
}
#main .interview03 .txt-box p {
    margin-right: -0.3rem;
}
#main .interview03 .list li:last-child .bg-box .sub-ttl {
	margin-left: 0.8rem;
}
#main .search {
    padding-bottom: 7.2rem;
	position: relative;
	z-index: 2;
}
#main .search:after {
	position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    background-color: #F6F3EB;
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 7.2rem), 0 calc(100% - 0.1rem));
    content: "";
}
#main .search .photo img {
    width: 100%;
}
#main .search .bg-box {
    padding: 7.2rem 2.9rem 6.8rem;
    border: 1px solid #0068B7;
    background: #F6F3EB;
}
#main .search .bg-box .txt-box {
    margin-bottom: 4rem;
}
#main .search .headline01 .jp:after {
	background: #F6F3EB;
}
#main .search .com-select-box .select-btn {
    border-color: #0068B7;
    background-image: url(../images/common/icon_vector.svg), url(../images/common/icon_plus02.svg);
}
#main .search .com-select-box .select-list li.option {
    background-image: url(../images/common/icon_location02.svg);
}
#main .message {
	position: relative;
}
#main .message:after {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	opacity: 0.64;
	z-index: -1;
	background: #0068B7;
	mix-blend-mode: multiply;
	content: "";
}
#main .message .bg-box {
    margin: -7.2rem 0 -12.8rem;
    padding: 13.5rem 0.7rem 15.1rem;
    color: #fff;
}
#main .message .bg-box .headline01 {
    margin-bottom: 1.7rem;
}
#main .message .bg-box .headline01 .en {
    color: #fff;
    background-image: url(../images/common/ttl_bg_white.svg);
}
#main .message .bg-box p {
    font-size: 1.9rem;
    line-height: 1.95;
    letter-spacing: 0.19rem;
}
#main .message .bg-box p:not(:last-child) {
    margin-bottom: 3.7rem;
}
#main .message .white {
	padding-bottom: 6rem;
	position: relative;
	z-index: 2;
}
#main .message .white:before {
	position: absolute;
	left: 0;
	top: 5.7rem;
	width: 100%;
	height: 100%;
	clip-path: polygon(0 7.2rem, 100% 0, 100% 100%, 0 100%);
	background-color: #fff;
	content: "";
	z-index: -1;
}
#main .message .white .content {
    position: relative;
	z-index: 1;
}
#main .message .white .content:after {
    position: absolute;
	top: 16.7rem;
	right: -18.5rem;
    width: 49.5rem;
    height: 40rem;
	z-index: -1;
    background: url(../images/common/about_bg.png) no-repeat center center/100% 100%;
    content: "";
}
#main .message .photo {
    margin: -2.1rem -2rem 4.8rem;
    position: relative;
}
#main .message .photo img {
    width: 100%;
}
#main .message .txt-box {
    margin: 0 1.8rem 4.5rem;
}
#main .message .txt-box .headline02 {
    padding-bottom: 1rem;
    font-size: 1.5rem;
    letter-spacing: 0.26rem;
}
#main .message .txt-box dl {
    font-size: 1.3rem;
    line-height: 1.8;
}
#main .message .txt-box dt {
    float: left;
    font-weight: 700;
    letter-spacing: 0.195rem;
}
#main .message .txt-box dd {
    padding: 0 0 1.5rem 10em;
    letter-spacing: 0.104rem;
}
#main .message .com-btn {
    margin-bottom: 0;
}
.mfp-bg {
    background: rgba(0, 104, 183, 0.40);
}
.pup-box {
    padding: 1.5rem 2.4rem 1.6rem;
}
.pup-box .pop-ttl {
    padding: 0 0 0.8rem 4.2rem;
    margin: 0 -1.5rem -5rem -4.2rem;
    color: #0068B7;
    font-size: 2rem;
    line-height: 1.7;
    letter-spacing: 0.16rem;
    min-height: 18.3rem;
    display: flex;
    align-items: center;
    box-sizing: border-box;
    background: url(../images/common/pop_ttl_bg.svg) no-repeat left top;
}
.pup-box .photo-box {
    margin-bottom: 2.2rem;
    padding-bottom: 1.5rem;
    border-bottom: 1px solid #0068B7;
}
.pup-box .photo-box img {
    width: 100%;
}
.pup-box .photo {
    margin-bottom: 0.4rem;
}
.pup-box .photo-box p {
    font-size: 1.3rem;
    font-weight: 700;
    line-height: 1.52;
    letter-spacing: 0.26rem;
    text-align: right;
}
.pup-box .photo-box p span {
    display: inline-block;
    text-align: left;
}
.pup-box .photo-box .txt01 {
    margin-bottom: 0.8rem;
}
.pup-box .photo-box .txt02 span {
    color: #0068B7;
    padding: 0.5rem 0.8rem;
    background-color: #fff;
    border-radius: 3rem;
}
.pup-box .txt-box p {
    margin-bottom: 2.8rem;
}
.pup-box .txt-box p .blue {
    color: #0068B7;
    font-weight: 700;
}
.pup-box .txt-box .form-box {
	margin-top: 3.6rem;
    text-align: center;
}
.pup-box .txt-box .ttl {
    padding: 0.1rem 1.1rem;
    font-size: 1.8rem;
	line-height: 1.3;
    color: #0068B7;
    font-weight: 700;
    letter-spacing: 0.36rem;
    margin-bottom: 1.5rem;
    display: inline-block;
    background-color: #fff;
    border-radius: 3rem;
}
.pup-box .txt-box .form-box img {
    width: 21.6rem;
}
.pup-box .com-more-btn a {
    color: #fff;
    border-color: #0068B7;
    background-color: #0068B7;
}
.pup-box .com-more-btn a span:before {
    background-image: url(../images/common/icon_plus05.svg);
}
.pup-box .com-more-btn a span:after {
    background-image: url(../images/common/icon_plus04.svg);
}
@media all and (max-width: 819px) {
    #main .about .link-list li:last-child a img {
        top: 49%;
    }
    #main .about .link-list li:last-child a:before {
        box-shadow: 0rem 0.5rem 1.5rem rgba(37, 44, 97, 0.2), 0rem 0.2rem 0.4rem rgba(136, 144, 194, 0.7);
    }
    #main .interview03 .list li:not(:first-child) {
        margin-top: 5rem;
        padding-top: 3rem;
        border-top: 0.1rem solid #0068B7;
    }
	#pop01 .txt-box .ttl,#pop05 .txt-box .ttl {
		margin-bottom: 0.3rem;
	}
	#pop01 .txt-box .ttl {
		margin-right: 1.5rem;
	}
	#pop02 .txt-box .form-box img {
		margin-left: 2rem;
	}
	#pop02 .com-more-btn {
		margin-top: 1rem;
	}
	#pop03 .txt-box .form-box img,#pop04 .txt-box .form-box img {
		margin-right: 2rem;
	}
	#pop05 .txt-box .form-box img {
		margin-right: 3rem;
	}
	#pop04 .photo-box p span,#pop05 .photo-box p span {
		text-align: right;
	}
	#main .interview02 .bg-box .sub-ttl {
		letter-spacing: 0.12rem;
	}
}
@media all and (min-width: 820px) {
    .fv:after {
        height: 19.2vw;
    }
    .fv:before {
        bottom: 19.2vw;
        transform: rotate(-10.9deg);
    }
    .fv .ttl-box {
        margin-bottom: 100vh;
    }
    .fv .ttl-box .content {
        margin: 0 auto;
        width: 100%;
        max-width: 1010px;
    }
    .fv h2 {
        margin-bottom: 40px;
        font-size: 40px;
        line-height: 1.8;
        letter-spacing: 13.6px;
    }
    .fv .btn {
        margin-left: 5px;
    }
    .fv .btn a {
        padding-left: 5px;
        font-size: 18px;
        letter-spacing: 4px;
    }
	html:not(.tab) .fv .btn a:hover {
		opacity: 0.7;
	}
    .fv .txt-box {
		padding-bottom: 22vw;
        display: block;
        max-width: 1090px;
    }
    .fv .txt-box p {
        margin: 0 0 40px 0;
        font-size: 20px;
        letter-spacing: 2px;
    }
    .fv .txt-box .txt01 {
        margin-bottom: 90px;
    }
    #main .bg-white {
        margin-top: -15.2vw;
        clip-path: polygon(0 15.2vw, 100% -4vw, 100% 100%, 0 100%);
    }
    #main .about:before {
        top: 0;
        transform: rotate(-10.9deg);
    }
	#main .about:after {
		position: absolute;
		right: 0;
		top: -41px;
		width: 105%;
		height: 40px;
		z-index: 1;
		transform-origin: right top;
		transform: rotate(-10.9deg);
		background-color:#FFF;
		content: "";
	}
    #main .about .content {
        padding: 19.7vw 0 9.5vw;
        max-width: inherit;
    }
    #main .about .content .inner-box {
        max-width: 1100px;
        margin: 0 auto;
        display: flex;
        align-items: center;
    }
    #main .about .content:after {
        right: 5.5vw;
    }
    #main .about .content:before {
        position: absolute;
        left: 5.5vw;
        top: 17.2vw;
        width: 1px;
        height: calc(100% - 17.2vw);
        z-index: -1;
        background-color: #0068B7;
        content: "";
    }
    #main .about .txt-box {
        margin: 0 22px 0 0;
        position: relative;
        z-index: 2;
    }
    #main .about .txt-box p {
        font-size: 18px;
        line-height: 1.96;
        letter-spacing: 1.8px;
    }
    #main .about .link-list {
        margin: 0;
        flex: auto;
        padding: 0;
    }
    #main .about .link-list:after {
        left: 46.5%;
        top: 50%;
        width: 898px;
        height: 753px;
    }
    #main .about .link-list li {
        width: 418px;
    }
    #main .about .link-list li:not(:last-child) {
        margin-bottom: 85px;
    }
    #main .about .link-list li:last-child {
        margin-left: 65px;
    }
    #main .about .link-list a:before {
        right: 30px;
        bottom: 58px;
        background-size: 20px auto;
        width: 49px;
        height: 49px;
    }
    #main .about .link-list a:after {
        right: -11px;
        bottom: -10px;
    }
    #main .about .link-list a img {
        top: 50%;
    }
    #main .about .link-list p {
        padding: 4px 10px 4px 13px;
        top: 74px;
        font-size: 22px;
        line-height: 1.56;
        letter-spacing: 4.4px;
    }
    #main .about .link-list li:last-child p {
        padding-right: 20px;
    }
    html:not(.tab) #main .about .link-list a:hover .photo img {
        transform: skewY(11deg) translateY(-50%) scale(1.2);
    }
    #main .img-box {
        margin-bottom: 65px;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
    #main .img-box .photo-box {
        margin: 0;
        width: 649px;
    }
    #main .img-box .txt-box {
        margin: 0;
        width: 402px;
    }
    #main .job {
        padding: 77px 0 108px;
    }
    #main .job .ttl-box {
        margin: 0 0 42px 72px;
    }
    #main .job .ttl-box .headline01 {
        margin-bottom: 40px;
    }
    #main .job .ttl-box p {
        font-size: 18px;
        line-height: 1.96;
        letter-spacing: 1.8px;
    }
    #main .interview {
        margin-bottom: 120px;
        padding-bottom: 0;
        border-bottom: none;
    }
    #main .interview.other .bg-box {
        margin-bottom: 65px;
        padding: 50px 0;
        background: #F6F3EB;
        overflow: hidden;
    }
    #main .interview.other .bg-box .content {
        margin: 0 auto;
        max-width: 900px;
        position: relative;
        z-index: 1;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
    #main .interview.other .bg-box .content:after {
        position: absolute;
        left: -240px;
        top: 41%;
        transform: translateY(-50%);
        width: 882px;
        height: 714px;
        z-index: -1;
        background: url(../images/career_index/interview_bg_pc.png) no-repeat left top/882px auto;
        content: "";
    }
    #main .interview.other .bg-box .sub-ttl {
        margin: 0;
		flex: 1;
        font-size: 27px;
        line-height: 1.56;
        letter-spacing: 5.4px;
        transform: translateY(0);
    }
    #main .interview.other .bg-box .sub-ttl img {
        width: 112px;
        margin-bottom: 10px;
    }
    #main .interview.other .bg-box .photo {
        margin-right: 0;
        width: 420px;
    }
	#main .interview .bg-box .photo .com-more-btn a {
		padding-top: 2px;
	}
    #main .interview.other .bg-box .photo .com-more-btn {
        bottom: 42px;
        right: 20px;
    }
    #main .interview.other .com-btn a, #main .message .com-btn a {
        width: 375px;
        height: 67px;
        font-size: 18px;
        letter-spacing: 1.8px;
        border-radius: 32px;
        box-shadow: 0px 2px 4px 0px rgba(136, 144, 194, 0.30), 0px 5px 15px 0px rgba(37, 44, 97, 0.2);
    }
	#main .interview02 .bg-box .content {
		max-width: 1030px !important;
	}
	#main .interview02.other .bg-box .sub-ttl {
		margin-left: 33px;
	}
	#main .interview02.other .bg-box .content:after {
		left: -177px;
	}
	#main .interview02.other .bg-box .photo .com-more-btn {
		right: 53px;
	}
    html:not(.tab) #main .interview .bg-box .photo .com-more-btn a:hover {
        color: #fff;
        background: #0068B7;
    }
    html:not(.tab) #main .interview .bg-box .photo .com-more-btn.green a:hover {
        color: #fff;
        background: #389B7F;
    }
    #main .com-btn a .arrow {
        width: 24px;
        height: 24px;
    }
    #main .com-btn a .arrow:before, #main .com-btn a .arrow:after {
        width: 24px;
        height: 24px;
        background-size: 24px auto;
    }
    #main .interview03 {
        margin: 0 auto;
		padding: 0 20px;
        max-width: 1382px;
    }
    #main .interview03 .list {
        display: flex;
        gap: 0 98px;
    }
    #main .interview03 .list li {
        width: 383px;
    }
    #main .interview03 .txt-box {
        margin: 0 40px 46px;
    }
    #main .interview03 .txt-box .headline02 {
        font-size: 22px;
        letter-spacing: 4.4px;
    }
    #main .interview03 .txt-box p {
        margin-right: -3px;
    }
    #main .interview03 .bg-box {
        margin-bottom: 32px;
        padding-bottom: 60px;
        position: relative;
        background-position: left -38px top;
        border: 0.1rem solid #0068B7;
    }
    #main .interview03 .bg-box .sub-ttl {
        margin: 0 0 38px !important;
        padding-top: 45px;
        font-size: 18px;
        line-height: 1.65;
		text-align: center;
        letter-spacing: 3.6px;
        transform: translateY(0);
    }
    #main .interview03 .bg-box .sub-ttl span {
		text-align: left;
		display: inline-block;
	}
    #main .interview03 .bg-box .sub-ttl img {
        margin: 0;
        position: absolute;
        left: 17px;
        top: -14px;
    }
    #main .interview03 .bg-box .photo {
        margin: 0 64px 0 40px;
    }
    #main .interview03 .bg-box .photo .com-more-btn {
        right: -25px;
        bottom: -5px;
    }
    #main .interview03 .com-btn a {
        font-size: 14px;
		padding: 0 30px 0 39px;
    }
    #main .interview03 .com-btn a span {
        padding-right: 22px;
		width: 16px;
		height: 16px;
        background-size: 16px auto;
    }
    #main .interview03 .com-btn a span:before,
	#main .interview03 .com-btn a span:after {
		width: 16px;
		height: 16px;
        background-size: 16px auto;
	}
    #main .search {
        padding-bottom: 72px;
		background: none;
    }
    #main .search:after {
		height: calc(100% - 80px);
		clip-path: polygon(0 0, 100% 0, 100% calc(100% - 280px), 0 calc(100% - 0.1rem));
	}
    #main .search .bg-box {
        position: relative;
        z-index: 1;
        min-height: 395px;
        box-sizing: border-box;
        display: flex;
        align-items: center;
        margin: -108px 0 0 auto;
        width: calc(50% + 362px);
        padding: 72px 29px 68px 180px;
		border-right: none;
    }
    #main .search .bg-box .sub-box {
        max-width: 715px;
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
    #main .search .bg-box .txt-box {
        margin-bottom: 0;
        width: 320px;
    }
    #main .search .com-select-box {
        width: 340px;
    }
    #main .message .bg-box {
        margin: -360px 0 -461px;
        padding: 427px 7px 290px;
		position: relative;
    }
    #main .message .bg-box .content {
        max-width: 963px;
    }
    #main .message .bg-box .headline01 {
        margin-bottom: 36px;
    }
    #main .message .bg-box .headline01 .en {
        margin-left: 4px;
        font-size: 11px;
        padding: 9px 0 10px 13px;
        background-size: 24px auto;
    }
    #main .message .bg-box p {
        font-size: 20px;
        line-height: 1.96;
        letter-spacing: 2px;
    }
    #main .message .bg-box p:not(:last-child) {
        margin-bottom: 37px;
    }
	#main .message .white {
		padding-bottom: 73px;
	}
    #main .message .white:before {
		top: 180px;
		background: #fff url(../images/career_index/about_bg_pc.png) no-repeat left 10px top/835px auto;
		clip-path: polygon(0 280px, 100% 0, 100% 100%, 0 100%);
	}
    #main .message .white .content:after {
		display: none;
		bottom: auto;
		top: 180px;
		right: auto;
		left: -156px;
		width: 835px;
		height: 676px;
		background-image: url(../images/career_index/about_bg_pc.png);
		z-index: -1;
	}
    #main .message .photo {
        margin: 0 134px 35px auto;
        width: 640px;
    }
    #main .message .txt-box {
        margin: 0 18px 47px auto;
        width: 565px;
    }
    #main .message .txt-box .headline02 {
        padding-bottom: 15px;
        font-size: 18px;
        letter-spacing: 3.6px;
    }
    #main .message .txt-box dl {
        font-size: 15px;
        line-height: 1.52;
    }
    #main .message .txt-box dt {
        letter-spacing: 3px;
    }
    #main .message .txt-box dd {
        padding: 0 0 17px 8.7em;
        font-size: 16px;
        line-height: 1.8;
        letter-spacing: 1.6px;
    }
    #main .message .com-btn {
        margin-right: 15px;
    }
    #main .message .com-btn a {
        width: 335px;
    }
    .pup-box {
        margin: 5px auto;
        width: 640px;
        padding: 60px 24px 22px;
    }
    .pup-box .img-box {
        margin-bottom: 4px;
        display: flex;
        align-items: center;
    }
    .pup-box .pop-ttl {
        flex: 1;
        padding: 0 0 0 62px;
        margin: 0 0 0 -60px;
        min-height: 240px;
        background-image: url(../images/common/pop_ttl_bg_pc.svg);
    }
	#pop05 .pop-ttl {
		margin-right: -20px;
	}
    .pup-box .photo-box {
        margin-bottom: 24px;
        padding-bottom: 23px;
    }
    .pup-box .photo {
        margin-bottom: 0;
        width: 260px;
    }
    .pup-box .photo-box .txt-inner {
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .pup-box .photo-box p {
        text-align: left;
    }
    .pup-box .photo-box .txt01 {
        margin: 0 6px 0 0;
    }
    #pop01 .photo-box .txt02, #pop04 .photo-box .txt02, #pop05 .photo-box .txt02 {
        margin-top: 10px;
    }
    .pup-box .txt-box p {
        margin-bottom: 30px;
    }
    .pup-box .txt-box .form-box {
        margin-left: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .pup-box .txt-box .ttl {
        margin: 10px 15px 0 0;
        line-height: 1.5;
    }
    #pup03 .txt-box .form-box, #pup04 .txt-box .form-box, #pup05 .txt-box .form-box {
        margin-left: 0;
    }
    #pup03 .txt-box .ttl, #pup04 .txt-box .ttl, #pup05 .txt-box .ttl {
        margin-right: 0;
    }
    .pup-box .txt-box .form-box img {
        width: 216px;
    }
    .pup-box .com-more-btn {
        margin-right: -5px;
    }
    html:not(.tab) .pup-box .com-more-btn a:hover {
        color: #524747;
        background-color: #fff;
        border-color: #524747;
    }
}
@media all and (min-width: 820px) and (max-width: 1340px) {
	#main .interview03 .list {
		gap: 0 80px;
	}
}
@media all and (min-width: 820px) and (max-width: 1280px) {
    .fv::before {
        bottom: 245px;
    }
    .fv::after {
        height: 245px;
    }
    #main .bg-white {
        margin-top: -182px;
        clip-path: polygon(0 182px, 100% -20px, 100% 100%, 0 100%);
    }
    #main .about .content {
        padding: 18.5vw 0 9.5vw;
    }
    #main .about .content::before {
        left: 70px;
        top: 220px;
        height: calc(100% - 220px);
    }
    #main .about .content::after {
        right: 70px;
    }
}