@charset "utf-8";
/* CSS Document */
.recruit_border{
	border-bottom: #63645F 1px solid;
	margin-left: 20px;
	margin-right: 20px;
}

.fv{
	position: relative;
	overflow: visible;
	z-index: 2;

}
.fv .scroll{
	position: absolute;
	right: 80px;
	bottom: -50px;
	z-index: 3;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
}
.fv .scroll p{
	writing-mode: vertical-rl;
	text-orientation: mixed;
	letter-spacing: 0.2em;
	margin: 0;
	color: #707070;
}
.fv .scroll .line{
	width: 1px;
	height: 180px;
	background: #707070;
}
.fv .box_wrap{
	gap: 100px;
	padding-top: 80px;
	width: 85%;
	height: 40vw;
	padding-right: 50px;
}
.fv .box_wrap .txtbox{
	width: calc(55% - 50px);
	flex-direction: column;
	gap: 20px;
	align-items: flex-end;
	padding-bottom: 0px;
	position: relative;
	margin-top: 50px;
}
.fv .box_wrap .txtbox .itembox{
	position: absolute;
	top: -60px;
	left: 80px;
	width: clamp(120px, 15vw, 220px);
}
.fv .box_wrap .txtbox .itembox img {
    width: 100%;
    height: auto;
}
.fv .box_wrap .imgbox{
	width: calc(45% - 50px);
	overflow: hidden;
    border-radius: 2000px 2000px 0 0;
	border: #63645F 1px solid;
	aspect-ratio: 4 / 5;
}
.fv .box_wrap .imgbox img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.fv .box_wrap .txtbox h1{
	font-family: "Zen Old Mincho",  sans-serif;
	font-weight: 700;
}
.fv .box_wrap .txtbox .en_title{
	line-height: 1.2;
	font-size: clamp(42px, 4.5vw, 80px);
}
.fv .box_wrap .txtbox .txt1{
	font-family: "Playfair Display",  sans-serif;
	color: #AAA9A4;
}
/* ---------- cate1 ---------- */
.cate1{
	background: #AAA9A4;
    background: linear-gradient(180deg,rgba(170, 169, 164, 1) 0%, rgba(170, 169, 164, 1) 50%, rgba(250, 250, 250, 1) 100%);
	margin-top: -40px;
	position: relative;
	z-index: 1;
}
.calendar_box {
    border: none;
    background-color: #fff;
}
.cate1 .bottombox{
	gap: 80px;
	padding-top: 100px;
}
.cate1 .bottombox .txtbox{
	gap: 50px;
	flex-direction: column;
	width: calc(40% - 40px);
	align-items: flex-start;
}
.cate1 .bottombox .imgbox{
	width: calc(60% - 40px);
}
.cate1 .bottombox .imgbox .imgitem{
	align-items: flex-start;
    gap: 0;
    width: 100%;
}
.cate1 .bottombox .imgbox .imgitem .img1 {
    margin-top: 0;
	width: 50%;
}
.cate1 .bottombox .imgbox .imgitem .img2 {
    margin-top: 70px;
	width: 50%;
}
.cate1 .bottombox .imgbox .en_title {
    margin-top: -40px;
	line-height: 1.2;
}
/* ---------- IEのみ ---------- */
.cate2{
	width: 100%;
}
.cate2 .box_wrap{
	width: 100%;
}
.cate2 .box_wrap .box-item {
    width: 100%;
    align-items: stretch;
}
.cate2 .box_wrap .box-item .txtbox{
	width: 50%;
	flex-direction: column;
	gap: 30px;
	background-color: #D7CFC4;
	box-sizing: border-box;
    padding: 60px 40px;
}
.cate2 .box_wrap .box-item .imgbox{
	width: 50%;
	overflow: hidden;
}
.cate2 .box_wrap .imgbox img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.cate2 .box_wrap .box-item .txtbox .title{
	flex-direction: column;
}
.cate2 .box_wrap .box-item .txtbox .more_wrap2{
	gap: 20px;
}
.cate2 .box_wrap .box-item .txtbox .more_wrap2 .more_c2 a{
	background-color: #63645F;
}
.cate2 .box_wrap .box-item:nth-child(even) {
    flex-direction: row-reverse;
}
/* ---------- cate3 ---------- */
.cate3{
	border-bottom: 
}
.cate3 .box_wrap{
	gap: 100px;
}
.cate3 .box_wrap .imgbox{
	width: calc(30% - 50px);
}
.cate3 .box_wrap .txtbox{
	width: calc(70% - 50px);
	flex-direction: column;
	gap: 30px;
	align-items: flex-start;
	position: relative;
	padding-right:250px;
}
.cate3 .box_wrap .txtbox .img{
	position: absolute;
	top: -30px;
	right: 50px;
	width: clamp(180px, 20vw, 370px);
}
/* ---------- cate4 ---------- */
.cate4 .box_wrap{
	gap: 100px;
}
.cate4 .box_wrap .imgbox{
	width: calc(50% - 50px);
	position: relative;
}
.cate4 .box_wrap .txtbox{
	width: calc(50% - 50px);
	flex-direction: column;
	gap: 30px;
	align-items: flex-start;
	position: relative;
}
.cate4 .box_wrap .imgbox .img1{
	width: clamp(100px, 15vw, 250px);
	position: absolute;
	top: -25%;
	right: 0;
}
.cate4 .box_wrap .imgbox .map_bt{
	width: 150px;
	background-color: #383735;
	border-radius: 2000px;
	aspect-ratio: 1 / 1;
	position: absolute;
	bottom: -10%;
	left: 5%;
	flex-direction: column;
	gap: 7px;
}
.cate4 .box_wrap .imgbox .map_bt img{
	width: 15px;
}
.cate4 .box_wrap .txtbox .access_box {
    position: relative;
    padding-left: 30px;
	flex-direction: column;
	gap: 15px;
	width: 100%;
	align-items: flex-start;
}
.cate4 .box_wrap .txtbox .access_box::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 1px;
    height: 100%;
    background: #000;
}
.cate4 .box_wrap .txtbox .access_box .accessitem{
	gap: 30px;
	width: 100%;
}
.cate4 .box_wrap .txtbox .access_box .font-playfair{
    width: 70px;
}
.cate4 .box_wrap .txtbox .access_box .font-14{
    flex:1;
}
.map_bt img:last-child {
    transform: rotate(-90deg);
    width: 18px;
    transition: transform 0.3s ease;
}
.map_bt:hover img:last-child {
    transform: rotate(-90deg) translateY(4px);
}
/* ---------- newstop_b2 ---------- */
.newstop_b2{
	gap: 60px;
	align-items: flex-start;
}
.newstop_b2 .titlebox1{
	width: auto;
}
.newstop_b2 .contents_wrap {
    flex: 1 1 0;
    display: flex;
    gap: 60px;
    min-width: 0;
}
.newstop_b2 .contents_wrap .contents {
    width: auto;
    flex: 1 1 0;
    min-width: 0;
}
.newstop_b2 .contents_wrap .contents .title{
	width: calc(50% - 30px);
	padding-bottom: 5px;
	margin-bottom: 15px;
	border-bottom: #383735 1px solid;
	width: 100%;
}
.newstop_b2 .webgene-blog .webgene-item {
    padding-bottom: 10px;
    margin-bottom: 0px;
    border-bottom: none;
	width: 100%;
}
.newstop_b2 .webgene-blog .webgene-item a h3{
	width: 100%;
}
.newstop_b2,
.newstop_b2 * {
    box-sizing: border-box;
}
.newstop_b2 {
    width: auto;
    max-width: 100%;
    min-width: 0;
}
.newstop_b2 .contents_wrap {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}
.newstop_b2 .contents_wrap .contents {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}
.newstop_b2 .webgene-blog,
.newstop_b2 .webgene-item,
.newstop_b2 .webgene-item a,
.newstop_b2 .webgene-item a .item,
.newstop_b2 .webgene-item a h3 {
    max-width: 100%;
    min-width: 0;
}
/* ---------- IEのみ ---------- */
.newstop_b3{
	gap: 60px;
	align-items: flex-start;
}
.newstop_b3 .titlebox1{
	width: 180px;
}
.newstop_b3 .contents {
    flex: 1;
    min-width: 0;
    padding-top: 0;
}
.newstop_b3 .webgene-blog {
    width: 100%;
}

.newstop_b3 .webgene-blog .webgene-item {
    padding-bottom: 12px;
    margin-bottom: 0;
    border-bottom: none;
}

.newstop_b3 .webgene-blog .webgene-item {
    padding-bottom: 10px;
    margin-bottom: 0px;
    border-bottom: none;
}

.newstop_b3 .webgene-blog .webgene-item a .date {
    width: 90px;
    white-space: nowrap;
	font-family: "Playfair Display",  sans-serif;
}

.newstop_b3 .webgene-blog .webgene-item a h3 {
    flex: 1;
    min-width: 0;
    width: auto;
}
/* ---------- IEのみ ---------- */
@media all and (-ms-high-contrast: none) {
}
/* ---------- 1280px ~ ---------- */
@media screen and (max-width: 1280px){
	.fv .box_wrap{
		gap: 100px;
		padding-top: 40px;
		width: 90%;
		height: 60vw;
	}
	.fv .box_wrap .txtbox .itembox {
		top: -60px;
		left: 30px;
	}
	.cate1 .bottombox {
		gap: 50px;
		padding-top: 100px;
	}
	.cate1 .bottombox .imgbox {
		width: calc(50% - 25px);
	}
	.cate1 .bottombox .txtbox {
		width: calc(50% - 25px);
	}
	.cate3 .box_wrap .txtbox{
		padding-right: 100px;
	}
	.cate4 .box_wrap {
		gap: 60px;
	}
	.cate4 .box_wrap .txtbox {
		width: calc(50% - 30px);
	}
	.cate4 .box_wrap .imgbox {
		width: calc(50% - 30px);
	}
 	.newstop_b2 {
        gap: 40px;
        flex-direction: column;
        width: auto;
        max-width: 100%;
    }
    .newstop_b2 .contents_wrap {
        width: 100%;
        max-width: 100%;
        flex: none;
        flex-direction: column;
        gap: 40px;
    }
    .newstop_b2 .contents_wrap .contents {
        width: 100%;
        max-width: 100%;
        flex: none;
    }
	.newstop_b3 {
		flex-direction: column;
		gap: 40px;
	}
	.newstop_b3 .more_c{
		margin: 0 auto;
	}

}
/* ---------- 1080px ~ ---------- */
@media screen and (max-width: 1080px){
    .fv .box_wrap {
        flex-direction: column;
        width: 100%;
        height: auto;
        gap: 40px;
        padding-top: 120px;
        padding-right: 0;
    }
    .fv .box_wrap .txtbox {
        width: 100%;
        align-items: center;
        text-align: center;
        margin-top: 0;
    }
    .fv .box_wrap .imgbox {
        width: 100%;
        max-width: 320px;
        margin: 0 auto;
        aspect-ratio: 4 / 5;
    }
	.fv .box_wrap .txtbox .en_title {
		text-align: center;
	}
	.fv .box_wrap .txtbox .itembox {
		top: -50px;
		left: 20%;
	}
    .cate1 .bottombox {
        flex-direction: column;
    }
	.cate1 .bottombox .imgbox {
		width: 70%;
	}
	.cate1 .bottombox .txtbox {
		width: 100%;
	}
	.cate3 .box_wrap {
		gap: 50px;
	}
	.cate3 .box_wrap .imgbox {
		width: calc(30% - 25px);
	}
	.cate3 .box_wrap .txtbox {
		width: calc(70% - 25px);
	}
	.cate3 .box_wrap .txtbox{
		padding-right: 0px;
	}
    .cate4 .box_wrap {
       flex-direction: column-reverse;
    }
    .cate4 .box_wrap .imgbox {
        width: 80%;
    }
    .cate4 .box_wrap .txtbox {
        width: 80%;
    }
}
/* ---------- 768px ~ ---------- */
@media screen and (max-width: 768px){
	.pagettle_links {
		left: 50px;
		bottom: -80px;
	}
	.fv .scroll{
		display: none;
	}
    .cate1 {
        padding-top: 150px;
    }
	.cate1 .bottombox {
		padding-top: 80px;
	}
	.cate1 .bottombox .txtbox {
		gap: 30px;
	}
	.cate2 .box_wrap .box-item {
		flex-direction: column-reverse;
	}
	.cate2 .box_wrap .box-item:nth-child(even) {
		flex-direction: column-reverse;
	}
	.cate2 .box_wrap .box-item .txtbox {
		width: 100%;
	}	
	.cate2 .box_wrap .box-item .imgbox {
		width: 100%;
	}
    .cate3 .box_wrap {
        flex-direction: column;
    }
	.cate3 .box_wrap .imgbox {
		width: 50%;
	}
	.cate3 .box_wrap .txtbox {
		width: 100%;
	}
}
/* ---------- 576px ~ ---------- */
@media screen and (max-width: 576px){
	.fv .box_wrap .txtbox .itembox {
		top: -40px;
		left: 10%;
	}
	.fv .box_wrap .txtbox .en_title {
		font-size: 34px;
	}
    .fv .box_wrap .txtbox .default_title2 {
        font-size: 16px;
    }
    .fv .box_wrap .imgbox {
        max-width: 280px;
    }
	.cate1 .bottombox {
		padding-top: 50px;
	}
	.cate1 .bottombox .imgbox {
		width: 90%;
	}
	.more_c{
		margin: 0 auto;
	}
	.cate2 .box_wrap .box-item .txtbox {
		gap: 20px;
		padding: 30px;
	}
	.cate3 .box_wrap .txtbox .img {
		position: absolute;
		top: -20px;
		right: 20px;
		width: 130px;
	}
    .cate4 .box_wrap .imgbox {
        width: 100%;
    }
    .cate4 .box_wrap .txtbox {
        width: 100%;
    }
	.cate4 .box_wrap .txtbox .access_box .accessitem {
		gap: 10px;
	}
	.cate4 .box_wrap .txtbox .access_box {
		padding-left: 15px;
	}

	.cate4 .box_wrap .imgbox .map_bt {
		width: 120px;
		bottom: -20%;
		gap: 5px;
	}
	.cate4 .box_wrap .imgbox .map_bt img {
		width: 13px;
	}
	.map_bt img:last-child {
		width: 15px;
	}
	.recruit_border{
		margin-left: 10px;
		margin-right: 10px;
	}
    .cate4 .box_wrap {
        gap: 80px;
    }
    .newstop_b2,
	.newstop_b3{
        gap: 30px;
    }
}
/* ---------- 350px ~ ---------- */
@media screen and (max-width: 350px){
}

