/*********************************************
index.css
*********************************************/
.o-image{
	overflow: hidden;
}

/*header***********************************************************************/
header{
	 background: rgba(255,255,255,0.4);
}
.o-not-top{
	display: none;
}

.o-top{
	display: block;
}

.bk-add{
}

/*.bk-add .o-top-en-img{
	display: none;
}

.o-top-en-img-red{
	display: none;
	transition: .3s;
}

.bk-add .o-top-en-img-red{
	display: inline;
}*/

.o-keiten-b,
.o-keiten{
	font-family: inherit;
}

.o-keiten-b{
	position: relative;
}

.o-keiten{
	position: absolute;
	font-size: 20px;
	top: -25px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}

.o-top-h1{
	font-size: 15px;
	line-height: 19px;
	text-align: left;
	color: #fff;
	margin: 0;
}

.o-top-h1 span{
	padding-left: 10px;
	vertical-align: -2px;
	color: #000;
	font-weight: 700;
}

.menu > ul > li a{
	color: #3e3a39;
}

.menu > ul > li a:hover{
	color: #595757;
}

.menu > ul > li{
	border-left: solid 1px #717071;
}

.org-last-mg{
    border-right: solid 1px #717071;
}


.bk-add .o-top-h1 span{
	padding-left: 10px;
	vertical-align: -2px;
	color: #595757;
}

.bk-add .menu > ul > li a{
	color: #595757;
}

.bk-add .menu > ul > li a:hover{
	color: #000;
}

.bk-add .org-last-mg{
	border-right: solid 1px #000;
}

.bk-add .menu > ul > li{
	border-left: solid 1px #595757;
}


	
.o-main-img-bk{
	background: url(../img/top-main-2026.jpg) no-repeat;
	background-size: cover;
	/*background-position: bottom center;*/
	background-position: center;
	z-index: 1;
	/*min-height: 925px;*/
	margin: 0;
}

.o-main-catch-b{
	width: 100%;
	height: 350px;
	/*min-height: 925px;*/
	position: relative;
	padding-top: 20px;
}

.o-main-catch-ib{
	position: relative;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	/*padding-bottom: 37px;*/
	height: 100%;
}

.o-pl1{
}

.o-top-main-catch{
	font-size: 30px;
	line-height: 44px;
	text-align: left;
	font-weight: 600;
	text-align: left;
	text-shadow    : 
	1px  1px 4px #fff,
    -1px  1px 4px #fff,
     1px -1px 4px #fff,
    -1px -1px 4px #fff,
     1px  0px 4px #fff,
     0px  1px 4px #fff,
    -1px  0px 4px #fff,
     0px -1px 4px #fff;
}

.o-top-maru-b{
	position: relative;
	z-index: 10;
	margin-top: -40px;
}


.o-intoro{
	position: relative;
	box-sizing: border-box;
}

.o-title-2{
	font-size: 22px;
	line-height: 34px;
	text-align: center;
	font-weight: 500;
	margin: 0;
}

.o-main-catch{
	font-size: 14px;
	line-height: 24px;
	text-align: justify;
	text-justify: inter-ideograph;
	font-weight: 600;
	color: #717071;
	font-weight: 300;
	margin: 0;
}

.o-int-txt-b{
	position: relative;
	width: 100%;
	z-index: 20;
	padding-top: 20px;
	padding-bottom: 30px;
}

.o-int-txt-db{
	margin-top: 5px;
}

.o-int-main-img-b{
	width: 100%;
	margin: 0 0 0 auto;
}

.o-int-main-img-b img{
	width: 100%;
}

.o-img-pcty{
	display: none;
}

.o-img-tt{
	display: block;
}

.o-pl2{
}

.org-sp-dis .o-sub-img-b{
	position: relative;
	z-index: 20;
	margin-top: -38%;
}

.org-sp-dis .o-safe-ob{
	width: 100%;
	align-items:center;
}

.org-sp-dis .o-sub-txt-b{
	width: 50%;
	padding-top: 15%;
}

.o-sub-txt-b2{
	width: 60%;
	padding-top: 12%;
}

.o-safe-b.o-flex{
	flex-wrap: wrap;
}

.org-sp-dis .o-safe-img-b{
	width: 100%;
}

.org-sp-dis .o-sub-small-txt{
	font-size: 11px;
	line-height: 15px;
	text-align: left;
	font-weight: 700;
	color: #b4b5b5;
	margin: 0 0 0 10px;
}

.org-sp-dis .o-sub-txt{
	font-size: 36px;
	line-height: 46px;
	text-align: right;
	padding-right: 10px;
	font-weight: 600;
	color: #b4b5b5;
	margin: 0;
	box-sizing: border-box;
}

.org-sp-dis .o-left-txt{
	text-align: left;
	padding-right: 0;
	padding-left: 10px;
	box-sizing: border-box;
}

.org-sp-dis .o-secure-ob{
	width: 100%;
	max-width: 660px;
	align-items:center;
}

.org-sp-dis .o-safe-b{
	width: 40%;
}

.org-sp-dis .o-secure-b{
	width: 60%;
	padding-top: 31%;
	padding-left: 3%;
	box-sizing: border-box;
}

.o-secure-ib{
	justify-content: flex-end;
}

.org-sp-dis .o-secure-img-b{
	width: 45%;
}

.o-en-ver{
	display: block;
	position: absolute;
	top: 166px;
	left: -32px;
	font-size: 116px;
	line-height: 182px;
	font-weight: 500;
	color: #eeefef;
	-ms-writing-mode: tb-rl;
	-webkit-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	-webkit-text-orientation: mixed;
	text-orientation: mixed;
	margin: 0;
}

.o-en-para{
	font-size: 93px;
	line-height: 103px;
	font-weight: 500;
	color: #eeefef;
	white-space: nowrap;
	text-align: left;
	margin: -10% 0 0 -10%;
}

.o-top-py-1{
	padding-top: 20px;
	padding-bottom: 100px;
}



.o-vi-ob{
	background: url(../img/top-vision-main.png) no-repeat;
	background-size: cover;
	background-position:top center;
	z-index: 1;
	/*min-height: 550px;*/
	margin: 0;
	opacity: 0.8;
	padding-bottom: 40px;
}

.o-vi-ob .o-common-txt{
	color: #3e3a39;
}

.o-vi-txt-ob{
	padding: 80px 0 0 0;
}

.o-vi-small-en{
	font-size: 18px;
	line-height: 22px;
	font-weight: 500;
	text-align: left;
	margin: 0;
}

.o-vi-en{
	font-size: 45px;
	line-height: 46px;
	font-weight: 500;
	text-align: left;
	margin: 0;
}

.o-vi-title2{
	font-size: 17px;
	line-height: 27px;
	font-weight: 600;
	text-align: left;
	margin: 20px 0 0 0;
	color: #3e3a39;
}

.o-vi-txt-db{
	width: 100%;
	margin-top: 10px;
}

.o-common-txt{
	text-align: justify;
	text-justify: inter-ideograph;
	color: #717071;
}

.o-vi-ob .o-container{
	padding: 0;
}

.o-vi-ob .o-maruyaji{
	width: 70px;
    height: 70px;
    padding-top: 24px;
    font-size: 14px;
    line-height: 15px;
    font-weight: 300;
    color: #888889;
	background: transparent;
	border: solid 1px #888889;
	margin: 20px 0 0 auto;
	z-index: 100;
}


.o-vi-ob .o-maruyaji::before{
    width: 1px;
    height: 15px;
    background: #bfbfc0;
    top: 35px;
    left: 3px;
    transition: 0.3s;
}

.o-vi-ob .o-maruyaji::after {
    left: 3px;
    top: 34px;
    width: 10px;
    height: 10px;
    border-right: 1px solid #888889;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    transition: 0.3s;
}


.o-d-img-b{
	width: 33.33%;
	box-sizing: border-box;
	padding-top: 20.5%;
}

.o-img-bk1{
	background: url(../img/top-vision-small-1.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.o-img-bk2{
	background: url(../img/top-vision-small-2.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.o-img-bk3{
	background: url(../img/top-vision-small-3.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}



.o-top-py-2{
	padding-top: 50px;
}

.o-gray-bk{
	background: #f7f7f7;
}

.o-w-bk{
	background: #fff;
	position: relative;
	z-index: 10;
	flex-wrap: wrap;
	width: 100%;
}

.o-w-ob{
	margin-top: 35px;
}

.o-w-en{
	font-size: 31px;
	line-height: 47px;
	font-weight: 500;
	text-align: left;
	margin: 0;
	text-align: center;
}

.o-wd-title2{
	font-size: 15px;
	line-height: 24px;
	font-weight: 600;
	text-align: left;
	margin: 0;
	color: #717071;
	text-align: center;
}

.o-w-maru{
	width: 118px;
	height: 118px;
	padding-top: 26px;
	background: rgba(113,112,113,0.7);
	box-sizing: border-box;
	border-radius: 50%;
	z-index: 20;
	margin: 10px auto 20px auto;
}

.o-maru-en{
	font-size: 14px;
	line-height: 30px;
	font-weight: 500;
	margin: 0;
	color: #fff;
	text-align: center;
}

.o-center-line{
	width: 28px;
	border-top: solid 1px #fff;
	margin: 3px auto 8px auto;
}

.o-e-title3{
	font-size: 16px;
	line-height: 20px;
	font-weight: 600;
	margin: 0;
	color: #fff;
	text-align: center;
}

.o-w-txt-b,
.o-w-img-b{
	width: 100%;
}

.o-w-txt-b{
	box-sizing: border-box;
	padding: 0 25px 70px 25px;
	margin-top: -70px;
	
}

.o-w-txt-pl-1{

}

.o-w-txt-pl-2{
	
}

.o-w-title4{
	font-size: 19px;
	line-height: 32px;
	font-weight: 500;
	text-align: left;
	margin: 0;
	color: #717071;
	text-align: center;
	padding-top: 0;
}

.o-w-txt-db{
	margin-top: 10px;
}

.o-w-txt-db .o-common-txt{
	text-align: center;
}

.o-link-btn{
	display: block;
	position: relative;
	width: 200px;
	font-size: 15px;
	line-height: 17px;
	color: #717071 !important;
	text-align: center;
	border-radius: 20px;
	padding: 10px;
	margin: 40px auto 0 auto;
	text-decoration: none !important;
	transition: .3s;
	border: solid 1px #b4b5b5;
	z-index: 10;
	overflow: hidden;
}

.o-link-btn:before{
	content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
	border-radius: 20px;
    transform: scaleX(0);
    transform-origin: bottom;
    transition: transform .7s cubic-bezier(.19, 1, .22, 1);
    background: rgba(34,24,20,0.2);
	z-index: 0;
}

.o-link-btn:hover:before{
    transform: scaleX(1);
    transform-origin: top;
}


.o-w-img-b{
	min-height: 275px;
}

.o-w-img1{
	background: url(../img/top-world-1-2026.jpg) no-repeat;
	background-size: cover;
	background-position:top center;
}

.o-w-img2{
	background: url(../img/top-world-2.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.o-w-img3{
	background: url(../img/top-world-4.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.o-o1{
	order: 1;
}

.o-o2{
	order: 2;
}

.o-st-1{
	order: 1;
}

.o-st-2{
	order: 2;
}




.o-top-py-3{
	padding-top: 90px;
}

.o-rec-bk-b{
	flex-wrap: wrap;
}

.o-rec-b{
	width: 33.33%;
	box-sizing: border-box;
	padding-top: 25.1%;
}

.o-rec-img1{
	background: url(../img/top-recuruit-1.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.o-rec-img2{
	background: url(../img/top-recuruit-2.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.o-rec-img3{
	background: url(../img/top-recuruit-3.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.o-rec-img4{
	background: url(../img/top-recuruit-4.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.o-rec-img5{
	background: url(../img/top-recuruit-5.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.o-rec-img6{
	background: url(../img/top-recuruit-6.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.o-rec-txt-ob{
	width: 100%;
	margin: -18% 0 0 auto;
	box-sizing: border-box;
	padding-right: 5%;
}

.o-rec-en{
	font-size: 34px;
	line-height: 55px;
	font-weight: 500;
	text-align: right;
	margin: 0;
}

.o-rec-title2{
	font-size: 19px;
	line-height: 21px;
	font-weight: 600;
	text-align: right;
	margin: 0;
	color: #717071;
}

.o-rec-txt-db{
    margin-top: 20px;
}

.o-rec-txt-db p{
	text-align: right;
}

.o-rec-txt-db a{
	margin: 65px 0 0 auto;
}


.o-banner-flex{
	flex-wrap: wrap;
	padding-top: 65px;
	box-sizing: border-box;
}

.o-banner-ob{
	width:100%;
	box-sizing: border-box;
	position: relative;
	z-index: 10;
}

.o-banner-img-b{
	display: flex;
	align-items: flex-end;
	width: 100%;
	height: 300px;
	box-sizing: border-box;
	padding: 12px 25px 15px 25px;
	text-decoration:none!important;
}

.o-banner-img-txt{
	position: relative;
	font-size: 28px;
	line-height: 29px;
	font-weight: 500;
	text-align: center;
	margin: 0;
	color: #fff;
	width: 100%;
	text-shadow: 1px 2px 1px #717071;
	
}

/*.o-banner-img-txt:before{
	content: '';
    position: absolute;
	display: block;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: #fff;
	z-index: 0;
	top: 50%;
	right: 0;
}*/

.o-banner1{
	background: url(../img/top-underbunner-1-2024.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.o-banner2{
	background: url(../img/top-underbunner-2-2024.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.o-banner3{
	background: url(../img/top-underbunner-3-2024.jpg) no-repeat;
	background-size: cover;
	background-position: top center;
}

.o-banner4{
	background: url(../img/top-underbunner-4-2024.jpg) no-repeat;
	background-size: cover;
	background-position: top center;
}

.o-banner-txt-b{
	padding: 18px 15px 60px 15px;
}

.o-banner-title2{
	font-size: 16px;
	line-height: 17px;
	font-weight: 500;
	text-align: center;
	margin: 10px 0 0 0;
	color: #717071;
}

.o-banner-link-b{
	align-items: center;
	margin-top: 20px;
}

.o-banner-line{
	width: 80%;
	border-top: solid 1px #b4b5b5;
	margin: 0;
}

.o-banner-btn{
	display: block;
	position: relative;
	width: 65px;
	height: 65px;
	font-size: 13px;
	line-height: 14px;
	color: #888889 !important;
	text-align: center;
	border-radius: 50%;
	padding-top: 24px;
	margin: 0;
	text-decoration: none !important;
	transition: .3s;
	border: solid 1px #b4b5b5;
	z-index: 10;
	overflow: hidden;
}

.o-banner-btn:before{
	content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
	border-radius: 20px;
    transform: scaleX(0);
    transform-origin: bottom;
    transition: transform .7s cubic-bezier(.19, 1, .22, 1);
    background: rgba(34,24,20,0.2);
	z-index: 0;
}

.o-banner-btn:hover:before{
    transform: scaleX(1);
    transform-origin: top;
}

.o-banner-link-b .o-banner-btn{
	width: 160px;
	height: 40px;
	border-radius: 80px;
	padding-top: 12px;
	margin: 20px auto 0 auto;
}

.o-top-py-4{
	padding-top: 0;
	padding-bottom: 49px;
	position: relative;
}

.o-en-para2{
	display: none;
}


.o-news-container{
	width: 90%;
	max-width: 90%;
	margin: 0 auto;
}

.o-news-ob{
	width: 100%;
	flex-wrap: wrap;
}

.o-news-title-b{
	width: 100%;
}

.o-news-en{
	font-size: 33px;
	line-height: 37px;
	font-weight: 500;
	text-align: center;
	margin: 0;
}

.o-news-title2{
	font-size: 19px;
	line-height: 20px;
	font-weight: 600;
	text-align: center;
	margin: 5px 0 30px 0;
	color: #717071;
}

.o-news-db{
	width: 100%;
	height: 307px;
	border-bottom: solid 1px #b4b5b5;
	overflow-y: scroll;
}

.o-news-tb{
	width: 100%;
	border-top: solid 1px #b4b5b5;
}

.o-news-tb td{
	box-sizing: border-box;
	vertical-align: top;
	font-size: 13px;
	line-height: 23px;
	text-align: left;
	padding-top: 40px;
	padding-bottom: 40px;
}

.o-news-db p{
	font-size: 13px;
	line-height: 28px;
	text-align: left;
	color: #595757;
}
.o-news-tr{
	border-top: solid 1px #b4b5b5;
}

.o-news-tr:first-child{
	border-top: none;
}

.o-date-td{
	color: #036eb8;
}

.o-txt-td{
	padding-left: 45px;
	color: #717071;
}

.o-main-pb{
	padding-bottom: 50px!important;
}

.o-top-py-5{
	padding-top: 50px;
	padding-bottom: 120px;
}

.top{
	color: #cea467!important;
}

.o-news-mob{
	width: 100%;
}

.o-news-mob .o-banner-btn{
    width: 100px;
    height: 30px;
	border-radius: 50px;
	margin: 15px 0 0 0;
	padding-top: 7px;
}

.o-main-img-ob{
	position: relative;
}

.o-main-txt-img{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}



@media (min-width: 576px){
.o-main-img-bk{
	background: url(../img/top-main-2026.jpg) no-repeat;
	background-size: cover;
	background-position: center;
	z-index: 1;
	/*min-height: 925px;*/
	margin: 0;
}

.o-main-catch-b{
	width: 100%;
	min-height: 500px;
	/*min-height: 925px;*/
	position: relative;
}

.o-banner-img-b{
	height: 350px;
	box-sizing: border-box;
}

.o-banner-txt-b {
    padding: 18px 15px 100px 15px;
}

.o-banner-line{
	width: 87%;
}
}






@media (min-width: 768px){
.o-keiten{
	font-size: 40px;
	top: -35px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}

.o-container{
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
	padding: 0;
}

.o-top-h1{
	font-size: 18px;
	line-height: 19px;
	text-align: left;
	color: #fff;
	margin: 0;
}

.o-top-h1 span{
	padding-left: 10px;
	vertical-align: -2px;
}
	
.o-main-img-bk{
	background: url(../img/top-main-2026.jpg) no-repeat;
	background-size: cover;
	background-position: center center;
	z-index: 1;
	min-height: 925px;
	margin: 0;
}

.o-main-catch-b{
	width: 100%;
	height: 635px;
	min-height: 635px;
	position: relative;
	padding-top: 0;
}

.o-main-catch-ib{
	position: relative;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
	/*padding-bottom: 100px;*/
	height: 100%;
	padding-top: 50px;
}

.o-pl1{
	padding-left: 5%;
}

.o-top-main-catch{
	font-size: 50px;
	line-height: 67px;
	text-align: left;
	font-weight: 600;
	-webkit-writing-mode:horizontal-tb;
	-ms-writing-mode:lr-tb;
	writing-mode:horizontal-tb;
}

.o-top-maru-b{
	position: relative;
	z-index: 10;
	margin-top: -62px;
}


.o-intoro{
	position: relative;
	box-sizing: border-box;
}

.o-title-2{
	font-size: 35px;
	line-height: 60px;
	text-align: left;
	font-weight: 500;
	margin: 0;
}

.o-main-catch{
	font-size: 16px;
	line-height: 34px;
	text-align: left;
	font-weight: 600;
	color: #717071;
	font-weight: 300;
	margin: 0;
}

.o-int-txt-b{
	position: relative;
	width: 660px;
	z-index: 20;
	padding: 0;
	padding-top: 20px;
}

.o-int-txt-db{
	margin-top: 30px;
}

.o-int-main-img-b{
	position: absolute;
	z-index: 10;
	right: 0;
	top: 0;
	width: 57%;
	max-width: 57%;
	margin: 0;
}

.o-int-main-img-b img{
	width: 100%;
}

.o-img-pcty{
	display: none;
}

.o-img-tt{
	display: block;
}

.o-pl2{
	padding-left: 5%;
}

.o-sub-img-b{
	position: relative;
	z-index: 20;
	margin-top: 3%;
}

.o-safe-ob{
	width: 55%;
	align-items:flex-end;
	justify-content: flex-end;
	padding-top: 5px;
	margin-left: 15px;
}

.o-sub-txt-b{
	width: 225px;
}

.o-safe-b.o-flex{
	flex-wrap: nowrap;
}

.o-safe-img-b{
	width: 47%;
	max-width: 275px;
}

.o-sub-small-txt{
	font-size: 20px;
	line-height: 26px;
	text-align: right;
	font-weight: 700;
	color: #b4b5b5;
	margin: 0 25px 0 0;
}

.o-sub-txt{
	font-size: 75px;
	line-height: 85px;
	text-align: right;
	font-weight: 600;
	color: #b4b5b5;
	margin: 50px 25px 0 0;
}

.o-secure-b{
	position: absolute;
	z-index: 10;
	right: 0;
	top: -45px;
	width:65%;
	max-width: 65%;
}

.o-secure-ob{
	width: 100%;
	max-width: 660px;
	align-items:flex-end;
	justify-content: flex-end;
}

.o-secure-ib{
	justify-content: flex-end;
}

.o-secure-img-b{
	width: 59%;
	max-width: 430px;
	margin-bottom: 10px;
}

.o-en-ver{
	display: block;
	position: absolute;
	top: auto;
	bottom: 246px;
	left: -32px;
	font-size: 116px;
	line-height: 182px;
	font-weight: 500;
	color: #eeefef;
	-ms-writing-mode: tb-rl;
	-webkit-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	-webkit-text-orientation: mixed;
	text-orientation: mixed;
	margin: 0;
}

.o-en-para{
	font-size: 169px;
	line-height: 170px;
	font-weight: 500;
	color: #eeefef;
	white-space: nowrap;
	text-align: left;
	margin: 20px 0 0 0;
}

.o-top-py-1{
	padding-top: 20px;
	padding-bottom: 100px;
}



.o-vi-ob{
	background: url(../img/top-vision-main.png) no-repeat;
	background-size: cover;
	background-position:top left -50px;
	z-index: 1;
	min-height: 550px;
	margin: 0;
	opacity: 0.8;
	padding: 0;
}

.o-vi-txt-ob{
	padding: 150px 0 0 60px;
}

.o-vi-small-en{
	font-size: 30px;
	line-height: 33px;
	font-weight: 500;
	text-align: left;
	margin: 0;
}

.o-vi-en{
	font-size: 78px;
	line-height: 79px;
	font-weight: 500;
	text-align: left;
	margin: 0;
}

.o-vi-title2{
	font-size: 25px;
	line-height: 37px;
	font-weight: 600;
	text-align: left;
	margin: 20px 0 0 0;
}

.o-vi-txt-db{
	width: 445px;
	margin-top: 10px;
}

.o-common-txt,
.o-w-txt-db .o-common-txt{
	text-align: center;
	color: #717071;
}

.o-vi-ob .o-maruyaji{
	width: 90px;
    height: 90px;
    padding-top: 35px;
    font-size: 17px;
    line-height: 18px;
    font-weight: 300;
    color: #888889;
	background: transparent;
	border: solid 1px #888889;
	margin: 90px 50px 0 auto;
}


.o-vi-ob .o-maruyaji::before{
    width: 1px;
    height: 20px;
    background: #bfbfc0;
    top: 52px;
    left: 3px;
    transition: 0.3s;
}

.o-vi-ob .o-maruyaji::after {
    left: 3px;
    top: 53px;
    width: 15px;
    height: 15px;
    border-right: 1px solid #888889;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    transition: 0.3s;
}


.o-d-img-b{
	width: 33.33%;
	box-sizing: border-box;
	padding-top: 18.5%;
}

.o-img-bk1{
	background: url(../img/top-vision-small-1.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.o-img-bk2{
	background: url(../img/top-vision-small-2.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.o-img-bk3{
	background: url(../img/top-vision-small-3.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}



.o-top-py-2{
	padding-top: 50px;
}

.o-gray-bk{
	background: #f7f7f7;
}

.o-w-bk{
	width: 50%;
	background: #fff;
	position: relative;
	z-index: 10;
	align-content: flex-start;
}

.o-w-ob{
	margin-top: 75px;
}

.o-w-en{
	font-size: 45px;
	line-height: 55px;
	font-weight: 500;
	text-align: left;
	margin: 0;
	text-align: center;
}

.o-wd-title2{
	font-size: 17px;
	line-height: 34px;
	font-weight: 600;
	text-align: left;
	margin: 10px 0 0 0;
	color: #717071;
	text-align: center;
}

.o-w-maru{
	position: absolute;
	width: 147px;
	height: 147px;
	padding-top: 30px;
	background: rgba(113,112,113,0.7);
	top: 44%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	box-sizing: border-box;
	border-radius: 50%;
	z-index: 20;
	margin: 0;
	margin-top: 10px;
}

.o-maru-en{
	font-size: 17px;
	line-height: 37px;
	font-weight: 500;
	margin: 0;
	color: #fff;
	text-align: center;
}

.o-center-line{
	width: 28px;
	border-top: solid 1px #fff;
	margin: 10px auto 12px auto;
}

.o-e-title3{
	font-size: 19px;
	line-height: 20px;
	font-weight: 600;
	margin: 0;
	color: #fff;
	text-align: center;
}

.o-w-txt-b,
.o-w-img-b{
	width: 100%;
}

.o-w-txt-b{
	margin: 0;
	box-sizing: border-box;
	padding: 111px 0 40px 0;
}

.o-w-txt-pl-1{
	padding-left: 3.5%;
}

.o-w-txt-pl-2{
	padding-left: 11.5%;
}

.o-w-title4{
	font-size: 21px;
	line-height: 32px;
	font-weight: 500;
	margin: 0;
	color: #717071;
	text-align: center;
	padding-top: 0;
}

.o-w-txt-db{
	margin-top: 25px;
}

.o-link-btn{
	display: block;
	position: relative;
	width: 200px;
	font-size: 17px;
	line-height: 18px;
	color: #717071 !important;
	text-align: center;
	border-radius: 20px;
	padding: 10px;
	margin: 40px auto 0 auto;
	text-decoration: none !important;
	transition: .3s;
	border: solid 1px #b4b5b5;
	z-index: 10;
	overflow: hidden;
}

.o-link-btn:before{
	content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
	border-radius: 20px;
    transform: scaleX(0);
    transform-origin: bottom;
    transition: transform .7s cubic-bezier(.19, 1, .22, 1);
    background: rgba(34,24,20,0.2);
	z-index: 0;
}

.o-link-btn:hover:before{
    transform: scaleX(1);
    transform-origin: top;
}


.o-w-img-b{
	min-height: 348px;
}

.o-w-img1{
	background: url(../img/top-world-1-2026.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.o-w-img2{
	background: url(../img/top-world-2.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.o-w-img3{
	background: url(../img/top-world-4.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.o-o1,
.o-st-2{
	order: 1;
}

/*.o-o2,
.o-st-1{
	order: 2;
}*/




.o-top-py-3{
	padding-top: 90px;
}

.o-rec-bk-b{
	flex-wrap: wrap;
}

.o-rec-b{
	width: 33.33%;
	box-sizing: border-box;
	padding-top: 25.1%;
}

.o-rec-img1{
	background: url(../img/top-recuruit-1.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.o-rec-img2{
	background: url(../img/top-recuruit-2.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.o-rec-img3{
	background: url(../img/top-recuruit-3.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.o-rec-img4{
	background: url(../img/top-recuruit-4.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.o-rec-img5{
	background: url(../img/top-recuruit-5.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.o-rec-img6{
	background: url(../img/top-recuruit-6.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.o-rec-txt-ob{
	width: 490px;
	margin: -237px 0 0 auto;
	box-sizing: border-box;
	padding-right: 20px;
}

.o-rec-en{
	font-size: 43px;
	line-height: 55px;
	font-weight: 500;
	text-align: right;
	margin: 0;
}

.o-rec-title2{
	font-size: 19px;
	line-height: 21px;
	font-weight: 600;
	text-align: right;
	margin: 5px 0 0 0;
	color: #717071;
}

.o-rec-txt-db{
    margin-top: 20px;
}

.o-rec-txt-db p{
	text-align: right;
}

.o-rec-txt-db a{
	margin: 65px 0 0 auto;
}

.o-banner-flex{
	padding: 0;
}

.o-banner-ob{
	/*width:33.33%;*/
	width:25%;
	box-sizing: border-box;
	position: relative;
	z-index: 10;
}

.o-banner-img-b{
	display: flex;
	align-items: flex-end;
	justify-content: center;
	width: 100%;
	height: 180px;
	box-sizing: border-box;
	padding: 12px 10px 15px 10px;
	text-decoration:none!important;
}

.o-banner-img-txt{
	position: relative;
	font-size: 28px;
	line-height: 29px;
	font-weight: 500;
	text-align: center;
	margin: 0;
	color: #fff;
	width: 100%;
}

/*.o-banner-img-txt:before{
	content: '';
    position: absolute;
	display: block;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: #fff;
	z-index: 0;
	top: 50%;
	right: 0;
}*/

.o-banner1{
	background: url(../img/top-underbunner-1-2024.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.o-banner2{
	background: url(../img/top-underbunner-2-2024.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.o-banner3{
	background: url(../img/top-underbunner-3-2024.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.o-banner4{
	background: url(../img/top-underbunner-4-2024.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.o-banner-txt-b{
	padding: 18px 15px 0 15px;
}

.o-banner-title2{
	font-size: 16px;
	line-height: 17px;
	font-weight: 500;
	text-align: center;
	margin: 10px 0 0 0;
	color: #717071;
}

.o-banner-link-b{
	align-items: center;
	margin-top: 0;
}

.o-banner-line{
	width: 73%;
	border-top: solid 1px #b4b5b5;
	margin: 0;
}

.o-banner-btn{
	display: block;
	position: relative;
	width: 65px;
	height: 65px;
	font-size: 13px;
	line-height: 14px;
	color: #888889 !important;
	text-align: center;
	border-radius: 50%;
	padding-top: 24px;
	margin: 0;
	text-decoration: none !important;
	transition: .3s;
	border: solid 1px #b4b5b5;
	z-index: 10;
	overflow: hidden;
}

.o-banner-btn:before{
	content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
	border-radius: 20px;
    transform: scaleX(0);
    transform-origin: bottom;
    transition: transform .7s cubic-bezier(.19, 1, .22, 1);
    background: rgba(34,24,20,0.2);
	z-index: 0;
}

.o-banner-btn:hover:before{
    transform: scaleX(1);
    transform-origin: top;
}

.o-top-py-4{
	padding-top: 0;
	padding-bottom: 49px;
	position: relative;
}

.o-en-para2{
	display: block;
	position: absolute;
	bottom: -17px;
	font-size: 185px;
	line-height: 208px;
	font-weight: 500;
	color: #fff;
	white-space: nowrap;
	text-align: center;
	z-index: 0;
	left: 0;
	right: 0;
	margin: auto;
}


.o-news-container{
	width: 90%;
	max-width: 90%;
	margin: 0 auto;
}

.o-news-ob{
	width: 100%;
}

.o-news-title-b{
	width: 100%;
	margin-bottom: 30px;
}

.o-news-en{
	font-size: 46px;
	line-height: 48px;
	font-weight: 500;
	text-align: center;
	margin: 0;
}

.o-news-title2{
	font-size: 19px;
	line-height: 20px;
	font-weight: 600;
	text-align: center;
	margin: 10px 0 0 0;
	color: #717071;
}

.o-news-db{
	width: 100%;
	height: 307px;
	border-bottom: solid 1px #b4b5b5;
	overflow-y: scroll;
}

.o-news-tb{
	width: 100%;
	border-top: solid 1px #b4b5b5;
}

.o-news-tb td{
	box-sizing: border-box;
	vertical-align: top;
	font-size: 13px;
	line-height: 25px;
	text-align: left;
	padding-top: 40px;
	padding-bottom: 40px;
}

.o-news-tr{
	border-top: solid 1px #b4b5b5;
}

.o-news-tr:first-child{
	border-top: none;
}

.o-date-td{
	color: #036eb8;
}

.o-txt-td{
	padding-left: 45px;
}

.o-banner-mt{
	margin-top: 90px;
	position: relative;
	box-sizing: border-box;
	padding-bottom: 47px;
}

.o-top-py-5{
	padding-top: 50px;
	padding-bottom: 140px;
}


.o-banner-link-b .o-banner-btn{
	width: 160px;
	height: 40px;
	font-size: 14px;
	line-height: 15px;
	border-radius: 80px;
	padding-top: 12px;
	margin: 20px auto 0 auto;
}

.o-news-txt-ob{
	display: flex;
	width: 100%;
	justify-content: space-between;
	align-items: center;
}

.o-news-mob{
	position: relative;
	width:65px;
	height: 100%;
}

.o-news-mob .o-banner-btn{
    width: 65px;
    height: 65px;
    font-size: 13px;
    line-height: 14px;
    border-radius: 50%;
    padding-top: 24px;
    margin: 0;
	position: absolute;
	top: -34px;
    right: 25px;
}

.o-news-txtx-sn{
	display: block;
	width: 80%;
}
}


@media (min-width: 992px){
.o-container{
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
	padding: 0;
}

.o-top-main-catch{
	font-size: 67px;
	line-height: 77px;
}

/*.o-main-catch-ib{
    padding-bottom: 100px;
}*/

.o-pl1{
	padding-left: 40px;
}

.o-pl2{
	padding-left: 45px;
}

.o-title-2{
	font-size: 47px;
	line-height: 85px;
}

.o-main-catch{
	font-size: 18px;
	line-height: 37px;
}

.o-int-txt-db{
	margin-top: 60px;
}

.o-img-pcty{
	display: block;
}

.o-img-tt{
	display: none;
}

.o-top-maru-b{
	margin-top: -75px;
}

.o-top-py-1{
	padding-top: 40px;
	padding-bottom: 100px;
}

.o-int-main-img-b{
	width:57%;
	max-width: 668px;
}
.o-int-txt-b{
	padding-top: 30px;
}

.o-en-para{
	font-size: 240px;
	line-height: 250px;
	text-align: left;
	margin: 20px 0 0 0;
}

.o-en-ver{
	position: absolute;
	bottom: 329px;
	left: -10px;
	font-size: 172px;
	line-height: 182px;
	margin: 0;
}

.o-secure-b{
	top: -55px;
}

.o-sub-img-b{
	margin-top: -33px;
}

.o-sub-small-txt{
	font-size: 25px;
	line-height: 33px;
	margin: 0 25px 0 0;
}

.o-sub-txt{
	font-size: 100px;
	line-height: 110px;
	margin: 50px 25px 0 0;

}

.o-safe-ob{
	width: 505px;
	padding-top: 4%;
	margin-left: 15px;
}

.o-vi-ob{
	background-position:top center;
	min-height: 670px;
	margin: 0;
}

.o-vi-txt-ob{
	padding: 145px 0 0 60px;
}

.o-vi-en{
	font-size: 90px;
	line-height: 91px;
	margin: 0;
}

.o-vi-title2{
	font-size: 28px;
	line-height: 37px;
	margin: 20px 0 0 0;
}

.o-vi-small-en{
	font-size: 32px;
	line-height: 35px;
	margin: 0;
}

.o-vi-ob .o-maruyaji{
	width: 120px;
    height: 120px;
    padding-top: 50px;
    font-size: 17px;
    line-height: 18px;
	margin: 90px 50px 0 auto;
}


.o-vi-ob .o-maruyaji::before{
    width: 1px;
    height: 30px;
    top: 60px;
    left: 3px;
}

.o-vi-ob .o-maruyaji::after {
    left: 3px;
    top: 71px;
    width: 15px;
    height: 15px;
}

.o-vi-txt-db{
	width: 495px;
	margin-top: 10px;
}


.o-w-txt-b{
	padding: 0;
}

.o-w-txt-pl-2{
    padding-left: 117px;
}

.o-w-img-b{
	min-height: 442px;
}

.o-w-txt-pl-1{
	padding-left: 38px;
}

.o-w-en{
	font-size: 57px;
	line-height: 67px;
	margin: 0;
}

.o-wd-title2{
	font-size: 21px;
	line-height: 37px;
	margin: 10px 0 0 0;
}

.o-w-title4{
	font-size: 25px;
	line-height: 35px;
	margin: 0;
	padding-top: 120px;
}

.o-link-btn{
	width: 244px;
	font-size: 17px;
	line-height: 18px;
	border-radius: 20px;
	padding: 10px;
	margin: 40px auto 0 auto;
}

.o-w-txt-db{
    margin-top: 40px;
}

.o-w-maru{
	position: absolute;
	width: 187px;
	height: 187px;
	padding-top: 50px;
	background: rgba(113,112,113,0.7);
	top: 52%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	box-sizing: border-box;
	border-radius: 50%;
	z-index: 20;
	margin-top: 20px;
}

.o-maru-en{
	font-size: 21px;
	line-height: 37px;
	margin: 0;
}

.o-center-line{
	width: 28px;
	margin: 10px auto 12px auto;
}

.o-e-title3{
	font-size: 23px;
	line-height: 25px;
	margin: 0;
}

.o-rec-txt-ob{
	width: 490px;
	margin: -335px 0 0 auto;
	padding-right: 20px;
}

.o-rec-en{
    font-size: 59px;
    line-height: 67px;
    margin: 0;
}

.o-rec-txt-db{
    margin-top: 40px;
}

.o-rec-title2{
	font-size: 25px;
	line-height: 27px;
	margin: 10px 0 0 0;
}

.o-rec-txt-db a{
	margin: 110px 0 0 auto;
}


.o-banner-img-txt{
	font-size: 38px;
	line-height: 39px;
	margin: 0;
	width: 100%;
}

/*.o-banner-img-txt:before{
	width: 14px;
	height: 14px;
	border-radius: 50%;
	top: 50%;
	right: 0;
}*/

.o-banner-title2{
	font-size: 19px;
	line-height: 20px;
	margin: 10px 0 0 0;
}

.o-banner-txt-b{
	padding: 15px 22px 0 22px;
}

.o-banner-img-b{
	height: 261px;
}

.o-banner-btn{
	width: 71px;
	height: 71px;
	font-size: 14px;
	line-height: 15px;
	border-radius: 50%;
	padding-top: 27px;
	margin: 0;
}

.o-banner-btn:before{
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
	border-radius: 20px;
    transform: scaleX(0);
    transform-origin: bottom;
}

.o-banner-btn:hover:before{
    transform: scaleX(1);
    transform-origin: top;
}

.o-banner-line{
	width: 80%;
	margin: 0;
}

.o-banner-link-b .o-banner-btn{
	width: 160px;
	height: 40px;
	font-size: 14px;
	line-height: 15px;
	border-radius: 80px;
	padding-top: 12px;
	margin: 20px auto 0 auto;
}

.o-top-py-4{
	padding-top: 0;
	padding-bottom: 92px;
}

.o-en-para2{
	bottom: -20px;
	font-size: 280px;
	line-height: 290px;
	left: 0;
	right: 0;
	margin: auto;
}

.o-news-container{
	width: 100%;
	max-width: 825px;
	margin: 0 auto;
}

.o-news-title-b{
	width: 100%;
	margin-bottom: 30px;
}

.o-news-db{
	width: 100%;
	height: 307px;
	border-bottom: solid 1px #b4b5b5;
	overflow-y: scroll;
}

.o-news-en{
	font-size: 58px;
	line-height: 60px;
	font-weight: 500;
	text-align: center;
	margin: 0;
}

.o-news-title2{
	font-size: 25px;
	line-height: 27px;
	font-weight: 600;
	text-align: center;
	margin: 10px 0 0 0;
	color: #717071;
}

.o-banner-mt{
	padding-bottom: 90px;

}

.o-main-pb{
	padding-bottom: 50px!important;
}

.o-top-py-5{
	padding-top: 50px;
	padding-bottom: 180px;
}

.o-banner-img-b{
	padding: 12px 10px 15px 10px;
}

.o-news-txtx-sn{
    width: 85%;
}

.o-news-mob .o-banner-btn{
    width: 71px;
    height: 71px;
    font-size: 14px;
    line-height: 15px;
    border-radius: 50%;
    padding-top: 27px;
    margin: 0;
	top: -35px;
    right: 25px;
}

.o-w-bk{
	width: 50%;
	align-content: flex-start;
}

.o-main-catch-b{
	height: 100vh;
    min-height: 925px;
	padding-top: 0;
}
}



@media (min-width: 1025px){
.org-container{
    max-width: 1100px;
    padding: 0;
}

.o-pl1{
	padding-left: 65px;
}

.o-top-py-1{
	padding-top: 20px;
	padding-bottom: 100px;
}

.o-int-main-img-b{
	width:61%;
	max-width: 668px;
}

.o-int-txt-b{
	padding-top: 55px;
}

.o-secure-img-b{
	width: 66%;
	max-width: 430px;
	margin-bottom: 10px;
}

.o-safe-ob{
	padding-top: 110px;
	margin-left: 15px;
}

.o-secure-b{
	width:70%;
	max-width: 70%;
	right: 0;
	top: 0;
}

.o-safe-img-b{
	width: 55%;
	max-width: 275px;
}
}




@media (min-width: 1100px){

}



  /* 縦置きサブモニタ想定 */
@media screen
  and (min-width: 900px)
  and (min-height: 1200px)
  and (orientation: portrait) {
.o-main-catch-b{
	height: 925px;
}
}
