@charset "UTF-8";
/*
 * style_sp.css
 *
 *  version --- 1.0
 *  updated --- 2017/11/30
 */

.pc{display: none!important;}
a[href^="tel:"] {
    cursor: default;
    pointer-events:none;
}
/* !wrapper
---------------------------------------------------------- */
#wrapper {
	overflow: hidden;
	width: 100%;
	padding-top: 6.5rem;
}
.menuOpen{
	overflow: hidden;
	height: 100dvh;
}
.menuOpen #wrapper{
	position: fixed;
}
.overlay{
	display: none;
	position: fixed;
	left: 0;
	top: 6.5rem;
	width: 100vw;
	height: calc(100dvh - 6.5rem);
	background: none;
	z-index: 97;
	text-indent: -999rem;
	pointer-events: auto;
}

.inner,
.inner02 {
	margin: 0 auto;
	width: 100%;
	max-width: 110rem;
	padding: 0 2.25rem;
	position: relative;
	z-index: 3;
}
.inner02 {
	max-width: 130rem;
}
/* !header
---------------------------------------------------------- */
#header {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 98;
	width: 100%;
	background-color: #fff;
}

#headerIn {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0 2rem;
	height: 6.5rem;
}
#headerLogo a{
	width: 13.3rem;
	display: block;
}
#headerLogo a img{
	width: 100%;
}

.header_right{
	padding-right: 5.5rem;
	display: flex;
	align-items: center;
	grid-gap: 3rem;
}
.tag_search span,
.header_entry a{
	width: 11.2rem;
	height: 3rem;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.2rem;
	font-weight: 500;
	color: #5F5F5F;
	border: 1px solid currentColor;
	cursor: pointer;
}
.header_entry a{
	color: #3363CB;
}
.tag_search {
	display: flex;
	justify-content: center;
	margin-bottom: 2.5rem;
}
.tag_search span{
	width: 17.5rem;
	color: #fff;
}
.tag_search.active span{
	background: rgba(255,255,255,.3);
}

#headerLinks {
	
}

/* !breadcrumb
---------------------------------------------------------- */
#breadcrumb {
	
}

/* !gNavi
---------------------------------------------------------- */
.btnMenu {
	position: fixed;
	right: 0;
	top: 0;
	z-index: 99;
}
.btnMenu a {
  display: block;
  width: 7.5rem;
  height: 6.5rem;
  box-sizing: border-box;
  position: relative;
}

.btnMenu a span {
  display: block;
  background: #5F5F5F;
  width: 3.3rem;
  height: 1px;
  position: absolute;
  left: 2.1rem;
  transition: all 0.4s;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
}

.btnMenu a span:first-child {
	top: 2.5rem;
}

.btnMenu a span:nth-child(2) {
	top: 50%;
}

.btnMenu a span:last-child {
  bottom: 2.5rem;
}

	
.btnMenu.active a span:first-child {
  -webkit-transform: translateY(.7rem) rotate(25deg);
  -moz-transform: translateY(.7rem) rotate(25deg);
  -ms-transform: translateY(.7rem) rotate(25deg);
  transform: translateY(.7rem) rotate(25deg);
}

.btnMenu.active a span:nth-child(2) {
  opacity: 0;
}

.btnMenu.active a span:last-child {
  -webkit-transform: translateY(-.7rem) rotate(-25deg);
  -moz-transform: translateY(-.7rem) rotate(-25deg);
  -ms-transform: translateY(-.7rem) rotate(-25deg);
  transform: translateY(-.7rem) rotate(-25deg);
}

#gNavi {
	position: fixed;
	top: 6.5rem;
	right: 0;
	width: 100%;
	height: calc(100dvh - 6.5rem);
	z-index: 98;
	box-sizing: border-box;
	padding: 2.7rem 0 8rem;
	overflow-x: hidden;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	opacity: 0;
	pointer-events: none;
	transition: opacity .3s,right .3s;

	background: url(../img/common/bg_nav.jpg)no-repeat center center;
	background-size: cover;
}
#gNavi.active{
    opacity: 1;
    pointer-events: auto;
}	
.nav_item+.nav_item{
	margin-top: 3rem;
}
.nav_item a{
	color: #fff;
	opacity: 1!important;
	display: block;
}
.nav_item_hd{
	font-size: 1.75rem;
	letter-spacing: .1em;
	background: url(../img/common/icon_plus_wh.svg)no-repeat right 1rem center;
	background-size: 1.75rem;
	border-bottom: 1px solid #FFFFFF;
	margin-bottom: 2rem;
	padding-bottom: .2rem;
}
.nav_item_hd.open {
	background-image: url(../img/common/icon_minus_wh.svg);
}
.nav_item_hd a {
	pointer-events: none;
}
.toggleBox {
	display: none;
}
.nav_list{
	display: grid;
	grid-template-columns: repeat(1,1fr);
}
.nav_list .img_box{
	display: none;
}
.nav_list .txt{
	font-size: 1.3rem;
	line-height: 2;
	margin-top: .8rem;
}
.nav_site {
	margin-top: 3.2rem;
}
.nav_site a {
	display: inline-flex;
	align-items: center;
	padding: 0 7rem 0 1.75rem;
	height: 3.5rem;
	background: url(../img/common/icon_window_wh.svg)no-repeat right 1.7rem center;
	background-size: 1rem;
	border: 1px solid;
	color: #fff;
	font-size: 1.1rem;
}

.tag_cont {
	position: fixed;
	top: 6.5rem;
	right: 0;
	width: 100%;
	height: calc(100dvh - 6.5rem);
	z-index: 98;
	box-sizing: border-box;
	padding: 2.7rem 0 8rem;
	overflow-x: hidden;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	opacity: 0;
	pointer-events: none;
	transition: opacity .3s,right .3s;

	background: url(../img/common/bg_nav.jpg)no-repeat center center;
	background-size: cover;
}
.tag_cont.active{
    opacity: 1;
    pointer-events: auto;
}	
.tag_categ {
	display: flex;
	flex-wrap: wrap;
	grid-gap: 0.6rem;
}
.tag_categ li {
	cursor: pointer;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	height: 2.8rem;
	padding: 0 1.3rem;
	background: #fff;
	border-radius: .6rem;
	font-size: 1.3rem;
	font-weight: bold;
}
.tag_categ li.active {
	background: rgba(255,255,255,0.5);
	color: #fff;
}
.tag_list{
	display: flex;
	flex-wrap: wrap;
	margin-top: 3.7rem;
	margin-left: -1rem;
}
.tag_list .item {
	padding-left: 1rem;
	width: 50%;
	transition: none !important;
}
.tag_list a {
	display: block;
	min-height: 13rem;
	margin-bottom: 1rem;
	background: #fff;
}
.tag_list .img_box {
	padding-top: 48.75%;
}
.tag_list .box{
	padding: .5rem 1rem;
}
.tag_list .ttl{
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 3;
	padding: 0.3rem 0.4rem 0.2rem;
	background: #00AAE6;
	font-size: 1rem;
	font-weight: 700;
	letter-spacing: .1em;
	color: #fff;
}
.tag_list .sub_ttl{
	font-size: 1.2rem;
}
.tag_list .categ {
	color: #878787;
	font-size: .8rem;
}


/* !mainVisual
---------------------------------------------------------- */
#mainVisual {
	background: url(../img/top/bg_mv.jpg)no-repeat right bottom;
	background-size: 100% 55rem;	
	position: relative;
}
#mainVisual:before{
	content: '';
	position: absolute;
	right: 0;
	bottom: 0;
	transform: translateY(-50%);
	width: 32.5rem;
	height: 1rem;
	background: url(../img/top/line_mv.png)no-repeat left center;
	background-size: 100% 100%;
}
#mainVisual .inner{
	padding-top: 5rem;
	height: 55rem;
}
.mv_jap{
	position: absolute;
	left: 3.7rem;
	top: 22rem;
	z-index: 1;
}
.mv_jap img{
	width: 18.3rem;
}
.mv_slider{
	position: relative;
	margin-right: -2.25rem;
	pointer-events: none;
}
.mv_slider:before{
	content: '';
	position: absolute;
	left: 18.9rem;
	left: 53.6%;
	bottom: 2.6rem;
	width: 16.6rem;
	height: 5rem;
	background: #fff;
	z-index: -1;
}
.mv_eng{
	position: absolute;
	left: 2.8rem;
	bottom: 5.8rem;
	z-index: 2;
	width: 31.6rem;
}

/* !teaser
---------------------------------------------------------- */
#teaser {
	position: relative;
}
.teaser_bg.img_box{
	padding-top: 66.66%;
}
.teaser_bg.img_box img{
	object-fit: fill;
}
.teaser_ttl{
	font-size: 3.5rem;
	letter-spacing: .1em;
	color: #fff;
	text-shadow: 0 0 1rem rgba(55,55,55,.3);
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 100%;
	z-index: 9;
	text-align: center;
}

.teaser_bg02{
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 2;
	transform: translate(-50%,-50%);
	width: calc(100% - 4.5rem);
	height: 27.5rem;
	text-align: center;
}
.teaser_bg02 img{
	height: 100%;
	object-fit: cover;
}
.teaser_sub_ttl{
	font-size: 1.5rem;
	letter-spacing: .1em;
	color: #fff;
	text-shadow: 0 0 .75rem rgba(55,55,55,.3);
	position: absolute;
	left: 0;
	top: 63%;
	width: 100%;
	z-index: 9;
	text-align: center;
}
/* !contents
---------------------------------------------------------- */
#contents {
	
}

#main {
	
}

#side {
	
}

.inner {
	
}

/* !pageTop
---------------------------------------------------------- */
.pageTop {
	position: fixed;
	right: 1.5rem;
	bottom: 1.5rem;
	z-index: 99;
	width: 4rem;
	transform: translateY(5.5rem);
	transition: all .3s ease;
}

.pageTop.is-scrolling {
	transform: translateY(0);;
}

.pageTop.end {
	bottom: 6.5rem;
}

/* !footer
---------------------------------------------------------- */
#footer {
	position: relative;
	height: 7.5rem;
	height: 3.5rem;
}

#footer .footerIn {
	display: none;
}
.footer_list{
	display: flex;
	justify-content: space-between;
}
.footer_item_hd a{
	font-size: 1.4rem;
	line-height: 2.5rem;
	font-weight: bold;
	color: #005ADC;
	pointer-events: none;
}
.footer_list ul{
	margin-top: .5rem;
}
.footer_list ul a{
	font-size: 1.2rem;
	line-height: 2.5rem;
}
.footer_btn{
	margin-top: 1.5rem;
}

.footer_bottom{
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: #fff;
	height: 5rem;
	padding: 0 2rem;
}
.footer_logo{
	width: 13.3rem;
	font-size: 0;
}
#copyright {
	font-size: .7rem;
}

/* !h(n)eading
---------------------------------------------------------- */
.img_box {
    position: relative;
    width: 100%;
    padding-top: 66%;
    overflow: hidden;
}
.img_box img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    object-fit: cover;
    transition: transform .4s ease;
}
a:hover .img_box img{
	transform: scale(1.05);
}

.btn_target{
	display: inline-flex;
	align-items: center;
	padding: 0 2rem;
	width: 21rem;
	height: 4rem;
	font-size: 1.2rem;
	font-weight: 500;
	color: #5F5F5F;
	border: 1px solid;
	background: url(../img/common/btn_target.svg)no-repeat right 2rem center;
	background-size: 1.2rem auto;
}

.common_txt,
.common_txt p{
	font-size: 1.35rem;
	line-height: 1.66;
}
.common_txt p+p{
	margin-top: 2.25rem;
}

/*message*/
.message_wrap{
	padding: 3.4rem 0 6.6rem;
	text-align: center;
}
.message_ttl{
	font-size: 2.25rem;
	line-height: 1.33;
	letter-spacing: .1em;
	color: #1B1C80;
	margin-bottom: 1.8rem;
}

.other_bottom{
	background: rgba(191,213,246,.35);
	position: relative;
	padding: 5rem 0;
}
.other_bottom_hd{
	position: absolute;
	left: 50%;
	top: 0;
	transform: translate(-50%,-60%) rotate(-5deg);
	z-index: 9;
	/*font-size: 5.2rem;*/
	color: #1B1C80;
	text-shadow: .5px .5px 0 #1B1C80;
	white-space: nowrap;
}
.other_bottom_btn{
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	grid-gap: 1rem;
}
.other_bottom_btn a{
	display: inline-flex;
	align-items: center;
	padding: 0 2.2rem;
	width: 27rem;
	height: 5rem;
	font-size: 1.5rem;
	font-weight: 400;
	letter-spacing: .1em;
	background: url(../img/common/arrow_right.svg)no-repeat right 1.7rem center;
	background-size: .5rem auto;
	border: 1px solid;
}


/*training*/
.training_sec01{
	overflow: hidden;
	padding: 3.4rem 0 5rem;
}
.training_item+.training_item{
	margin-top: 3.5rem;
}
.training_hd{
	margin-bottom: 2.3rem;
	font-size: 2.25rem;
	line-height: 1.4;
	letter-spacing: .1em;
	color: #1B1C80;
}
.training_other{
	font-size: 1.1rem;
	font-weight: 400;
	color: #005ADC;
}
.training_item_dl{
	display: grid;
	grid-gap: 1rem;
	position: relative;
	background: #F3F3F3;
	padding: 2rem 2rem 2rem 0;
}
.training_item_dl:after{
	content: '';
	z-index: -1;
	position: absolute;
	right: 99%;
	top: 0;
	width: 100vw;
	height: 100%;
	background: #F3F3F3;
}
.training_item_dt{
	font-size: 1.35rem;
	line-height: 1.66;
}
.training_item_dd{
	display: grid;
	grid-template-columns: repeat(2,1fr);
	grid-gap: .75rem;
}
.training_item_dd img{
	width: 17.2rem;
}

.training_sec02{
	background: url(../img/training/bg_color.jpg)no-repeat center center;
	background-size: 100% 100%;
	padding: 4.5rem 0 5rem;
	margin-bottom: 6.7rem;
}
.training_sec02_list{
	display: grid;
	grid-gap: 2rem;
}
.training_sec02_list li{
	background: #fff;
	padding: 2rem;
}
.training_sec02_list dl{
	display: flex;
	align-items: center;
	margin-bottom: 1.2rem;
}
.training_sec02_list dt{
	width: 8.4rem;
	min-width: 8.4rem;
	border-radius: 50%;
	overflow: hidden;
	position: relative;
	z-index: 2;
}
.training_sec02_list dd{
	width: 17.5rem;
	height: 3.5rem;
	background: url(../img/training/bg_ttl.png)no-repeat right center;
	background-size: 100% 100%;
	color: #fff;
	font-size: 1.75rem;
	font-weight: 400;
	letter-spacing: .075em;
	margin-left: -3.8rem;
	display: flex;
	justify-content: center;
	align-items: center;
	padding-left: 1.7rem;
}
.training_sec02_list .txt{
	font-size: 1.35rem;
	line-height: 1.66;
}

/*internship*/
.internship_sec01{
	padding: 4.5rem 0 5rem;
}
.internship_sec01_item+.internship_sec01_item{
	margin-top: 3rem;
}
.internship_dl{
	display: grid;
	grid-gap: 1rem;
}
.internship_dt{
}
.internship_dd{
	margin-right: -2.25rem;
}
.internship_sec01_item:nth-of-type(even) .internship_dl{
	margin-bottom: 1.2rem;
}
.internship_sec01_item:nth-of-type(even) .internship_dd{
	margin-right: 0;
	margin-left: -2.25rem;
}
.internship_dl .training_hd{
	margin-bottom: 1.3rem;
}
.internship_box{
	position: relative;
	margin-top: 1.5rem;
	background: #F3F3F3;
	padding: 2.25rem;
}
.internship_box_ttl{
	position: relative;
	z-index: 2;
	color: #fff;
	font-size: 1.5rem;
	line-height: 2.3rem;
	font-weight: 400;
	margin-bottom: 1.5rem;
}
.internship_box_ttl:before{
	width: 16rem;
	height: 100%;
	content: '';
	position: absolute;
	left: -3.25rem;
	top: 0;
	z-index: -1;
	background: url(../img/internship/bg_ttl.png)no-repeat right center;
	background-size: 100% 100%;
}
.internship_box_list{
	margin-top: 1.5rem;
}
.internship_box_list li{
	font-size: 1.25rem;
	line-height: 1.95;
	padding-left: 2.3rem;
	background: url(../img/internship/icon_li.svg)no-repeat left center;
	background-size: 1.4rem auto;
}
.internship_box_btn{
	z-index: 3;
	margin-top: 1.5rem;
}
.btn_target.btn_blue{
	padding: 0 2.5rem;
	width: 23rem;
	height: 5rem;
	font-size: 1.5rem;
	letter-spacing: .1em;
	font-weight: 400;
	color: #fff;
	border: 0;
	background: url(../img/common/btn_target_white.svg)no-repeat right 2.5rem center #4C8BE6;
	background-size: 1.7rem auto;
}

.internship_eng{
	font-weight: 400;
	color: #2673E1;
	margin-bottom: .3rem;
}
.internship_eng span{
	width: 6.55rem;
	display: inline-block;
	/*transform: rotate(343.7deg);*/
	text-shadow: .5px .5px 0 #2673E1;
}
.internship_box_note{
	margin-top: 1rem;
	font-size: 1rem;
	padding-left: 1em;
	text-indent: -1em;
}

.internship_sec02{
	margin-bottom: 0;
}
.internship_sec02 .training_hd{
	text-align: center;
}


/*business*/
.business_sec01{
	padding: 4.4rem 0 5rem;
}
.business_sec01_list{
	background: #F3F3F3;
	padding: 2.25rem;
}
.business_sec01_list li+li{
	border-top: 2px solid #FFFFFF;
	padding-top: 2.25rem;
	margin-top: 2.25rem;
}
.business_sec01_dl{
	display: grid;
	grid-gap: 1.5rem;
}
.business_sec01_dt{
}
.business_sec01_dd{
}
.business_ttl{
	font-size: 1.75rem;
	font-weight: 400;
	color: #005ADC;
	display: flex;
	align-items: center;
	grid-gap: .9rem;
	margin-bottom: 1.3rem;
}
.business_ttl:before{
	content: '';
	width: 2.1rem;
	height: 1px;
	background: #005ADC;
}
.business_sec01_dl .txt{
	font-size: 1.35rem;
	line-height: 1.66;
}
.business_sec01_dl .btn{
	margin-top: 1.8rem;
}

.business_sec02{
	margin-bottom: 0;
}
.business_sec02 .business_sec01_dl{
	background: #fff;
	padding: 2.25rem;
}
.business_sec02 .business_sec01_dl+.business_sec01_dl{
	margin-top: 2.5rem;
}
.business_sec02_dl01 .business_sec01_dt{
}
.business_sec02_dl01 .business_sec01_dd{
}
.business_sec02_dl02 .business_sec01_dt{
}
.business_sec02_dl02 .business_sec01_dd{
}

.business_sec03{
	padding: 4.5rem 0 5rem;
	margin: 0;
}
.business_sec03_dl{
	padding: 2.25rem;
	background: #fff;
	display: grid;
	grid-gap: 2.5rem;
}
.business_sec03_dt{
}
.business_sec03_dd{
	text-align: center;
}
.business_sec03_dd img{
	width: 25.2rem;
}
.business_sec03_dl .txt{
	font-size: 1.35rem;
	line-height: 1.66;
}
.business_sec03_list{
	margin-top: 2rem;
	display: grid;
	grid-template-columns: repeat(3,1fr);
	grid-gap: .5rem;
}
.business_sec03_list li{
	background: #4C8BE6;
	color: #fff;
	text-align: center;
	padding: 1.6rem 0 2rem;
}
.business_sec03_list .ttl{
	font-size: 1.25rem;
	font-weight: 400;
	margin-bottom: 2.3rem;
}
.business_sec03_list .number{
	font-size: 1.25rem;
	font-weight: 400;
	margin-top: 1.4rem;
}
.business_sec03_list .number span{
	font-size: 3rem;
	line-height: 1;
	letter-spacing: 0;
}
.business_sec03_list .icon img{
	width: auto;
	max-width: none;
	height: 4rem;
}

.business_sec04 {
	padding: 4.5rem 0 5rem;
}

.business_sec04_box01{
	background: #f3f3f3;
	padding: 2.5rem 2.25rem;
}
.business_sec04_box02{
	margin-top: 2.5rem;
	background: #f3f3f3;
	padding: 2.25rem;
	display: grid;
	position: relative;
}
.business_sec04_item+.business_sec04_item{
	padding-top: 2.5rem;
	margin-top: 2.5rem;
	border-top: 1px solid #fff;
}
.business_sec04_dl01{
	display: flex;
	align-items: center;
	margin-bottom: 1.75rem;
}
.business_sec04_dl01 dt{
	width: 8.1rem;
	height: 8.1rem;
	text-align: center;
	position: relative;
	z-index: 3;
}
.business_sec04_dl01 dt img{
	height: 100%;
	max-width: none;
	width: auto;
}
.business_sec04_dl01 dd{
	width: 23.8rem;
	height: 4.8rem;
	margin-left: -3.1rem;
	padding-left: 3.2rem;

	background: url(../img/training/bg_ttl.png)no-repeat right center;
	background-size: 100% 100%;
	color: #fff;
	font-size: 1.45rem;
	font-weight: 400;
	display: flex;
	align-items: center;
}
.business_sec04_list{
	margin-bottom: 1.5rem;
}
.business_sec04_list li{
	padding-left: 1em;
	text-indent: -1em;
	font-size: 1.35rem;
	line-height: 1.66;
}
.business_sec04_list li span{
	text-indent: 0;
	color: #4C8BE6;
}
.business_sec04_dl02{
	display: flex;
	color: #CC75B6;
	margin-bottom: 1.75rem;
}
.business_sec04_dl02 dt{
	padding-top: .3rem;
	width: 8rem;
	line-height: 1;
	text-shadow: .5px .5px 0 #CC75B6;
}
.business_sec04_dl02 dd{
	width: calc(100% - 8rem);
	font-size: 1.35rem;
	line-height: 1.66;
	font-weight: bold;
}
.business_sec04_date{
	font-size: 1.45rem;
	font-weight: 400;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 3rem;
	color: #005ADC;
	border-top: 1px solid #005ADC;
	border-bottom: 1px solid #005ADC;
	margin-bottom: 1.5rem;
}
.business_sec04_table{
	width: 100%;
}
.business_sec04_table th,
.business_sec04_table td{
	font-size: 1.15rem;
	line-height: 1.43;
	padding: .2rem 0;
	vertical-align: top;
}
.business_sec04_table th{
	letter-spacing: -.05em;
	font-weight: bold;
	color: #005ADC;
	width: 10rem;
	white-space: nowrap;
}


/*rinen*/
.rinen_sec01{
	margin-top: 5rem;
	padding: 4.5rem 0;
	color: #fff;
	position: relative;
	overflow: hidden;
}
.rinen_sec01:before{
	content: '';
	position: absolute;
	right: 0;
	top: 0;
	height: 100%;
	width: 100%;
	z-index: 1;
	background: url(../img/rinen/bg_sec01.jpg)no-repeat bottom right;
	background-size: cover;
}
.rinen_dl01{
	position: relative;
	z-index: 2;
	display: grid;
	grid-gap: 1.8rem;
}
.rinen_dl01_dt{
	position: relative;
}
.rinen_dl01_dd{
	font-size: 2.3rem;
	line-height: 1.55;
}
.eng_philosophy{
	transform: rotate(-4deg);
	width: 17.8rem;
}
.rinen_dl01 .jap{
	margin-top: .5rem;
	font-size: 1.3rem;
	letter-spacing: .1em;
}

.rinen_sec02{
	padding: 3.7rem 0;
	background: url(../img/rinen/bg_sec02.jpg)no-repeat right bottom;
	background-size: 30rem auto;
}
.rinen_dl02{
	position: relative;
	z-index: 2;
	display: grid;
	grid-gap: 1.8rem;
	color: #1B1C80;
	margin-bottom: 4rem;
}
.rinen_dl02_dt{
	position: relative;
}
.rinen_dl02_dd{
	font-size: 1.85rem;
	line-height: 1.67;
}
.eng_vision{
	width: 10.3rem;
	transform: rotate(-4deg);
}
.rinen_dl02 .jap{
	margin-top: 1rem;
	font-size: 1.3rem;
	letter-spacing: .1em;
}
.rinen_sec02_list{
	display: grid;
	grid-gap: 2.5rem;
}
.rinen_sec02_list dl{
}
.rinen_sec02_list dt{
	text-align: center;
	font-size: 2.5rem;
	line-height: 1.5;
	color: #005ADC;
	font-weight: 400;
}
.rinen_sec02_list dd{
}
.rinen_sec02_list .ttl{
	text-align: center;
	font-size: 1.65rem;
	line-height: 1.66;
	color: #005ADC;
	font-weight: 400;
}
.rinen_sec02_list .txt{
	margin-top: 1.2rem;
	font-size: 1.35rem;
	line-height: 1.66;
}

.rinen_sec03{
	background: #F3F3F3;
	padding: 4.3rem 0 5rem;
}
.rinen_hd span{
	color: #1B1C80;
	display: inline-flex;
	font-size: 2.25rem;
	letter-spacing: .1em;
	padding-bottom: .4rem;
	margin-bottom: 2.5rem;
	position: relative;
}
.rinen_hd span:before{
	content: '';
	position: absolute;
	right: 0;
	bottom: 0;
	height: .2rem;
	width: calc(100% + 2.5rem);
	background-image: linear-gradient(to left,#B63A97 0%,#B63A97 5%,#003CBE 30%,#005ADC 50%,#00AAE6 100% );
}
.rinen_sec03_img{
	text-align: center;
}
.rinen_sec03_img img{
}

.rinen_sec04{
	padding: 4.5rem 0 5rem;
}
.rinen_sec04_img{
	text-align: center;
}
.rinen_sec04_img img{
	width: 27.5rem;
}

.rinen_sec05{
	padding: 4.5rem 0 5rem;
	margin-bottom: 5rem;
	background: #F3F3F3;	
}
.rinen_table{
	width: 100%;
	border-top: 1px solid #919191;	
}
.rinen_table th,
.rinen_table td{
	font-size: .9rem;
	line-height: 1.666;
	font-weight: 500;
	vertical-align: top;
	padding: .4rem 1.4rem;
	border-bottom: 1px solid #919191;	
	background: #fff;
}
.rinen_table th{
	width: 13.3rem;
	background: #D9E6FA;
}
.rinen_table th span{
	float: right;
}
.rinen_table .dashed th,
.rinen_table .dashed td{
	border-bottom: 1px dashed #919191;	
}

.eng_about{
	width: 10.6rem;
}

/*tuyomi*/
.tuyomi_sec01{
	padding: 4.3rem 0 5rem;
}
.tuyomi_sec01_hd{
	font-size: 2.25rem;
	line-height: 1.4;
	letter-spacing: .1em;
	color: #fff;
	text-align: center;
	margin-bottom: 2.2rem;
}

.tuyomi_sec02{
	padding: 5rem 0;
}
.tuyomi_sec02_dl+.tuyomi_sec02_dl{
	margin-top: 2.5rem;
}
.tuyomi_sec02_dl{
	display: grid;
	grid-gap: 2.25rem;
	padding: 2.5rem 2.25rem;
	background: #F3F3F3;
	border-top: .5rem solid #50E6C8;
	position: relative;
}
.tuyomi_sec02_item02.tuyomi_sec02_dl{
	border-color: #78DCFF;
}
.tuyomi_sec02_item03.tuyomi_sec02_dl{
	border-color: #D296FA;
}
.tuyomi_sec02_dt{
}
.tuyomi_sec02_dd{
}
.eng_icon img{
	transform: rotate(-5deg);
}
.tuyomi_sec02_dl .eng_icon{
	margin-bottom: .8rem;
}
.eng_close img{
	width: 6.4rem;
}
.eng_support img{
	width: 10.2rem;
}
.eng_stability img{
	width: 10.5rem;
}
.tuyomi_sec02_dl .ttl{
	font-size: 1.75rem;
	font-weight: 400;
	margin-bottom: 1.4rem;
}
.tuyomi_sec02_dl ul{
	display: grid;
	grid-gap: 1.35rem;
}
.tuyomi_sec02_dl li{
	padding-left: 1em;
	text-indent: -1em;
	font-size: 1.35rem;
	line-height: 1.66;
}
.tuyomi_sec02_dl li span{
	text-indent: 0;
	color: #50E6C8;
}
.tuyomi_sec02_item02.tuyomi_sec02_dl li span{
	color: #78DCFF;
}
.tuyomi_sec02_item03.tuyomi_sec02_dl li span{
	color: #D296FA;
}

/*tiiki*/
.tiiki_wrap{
	background: url(../img/tiiki/bg_sec01.jpg)no-repeat left top;
	background-size: auto 22.5rem;
	padding-top: 4.5rem;
}
.tiiki_hd01{
	font-size: 1.75rem;
	letter-spacing: .1em;
	color: #005ADC;
	margin-bottom: .5rem;
}
.tiiki_hd02{
	font-size: 2.25rem;
	line-height: 1.4;
	letter-spacing: .05em;
	color: #1B1C80;
	margin-bottom: 1.2rem;
}
.tiiki_hd03{
	font-size: 1.35rem;
	letter-spacing: .1em;
}
.tiiki_people{
	margin-top: 2.25rem;
	padding: 2.25rem;
	background: rgba(191,213,246,.35);
}
.tiiki_people dt{
	width: 17.5rem;
	margin: 0 auto 2.3rem;
}
.tiiki_people dd{
}
.tiiki_people .name{
	font-size: 1.45rem;
	line-height: 1.3;
	margin-bottom: 1.5rem;
}
.tiiki_people .name span{
	font-size: 1rem;
}
.tiiki_people .txt{
	font-size: 1.15rem;
	line-height: 1.78;
}

.tiiki_cont{
	padding: 5rem 0;
}
.tiiki_item+.tiiki_item{
	margin-top: 5rem;
}
.tiiki_item:nth-of-type(even){
	padding: 5rem 0;
	position: relative;
}
.tiiki_item:nth-of-type(even):before{
	content: '';
	position: absolute;
	right: -3rem;
	top: 0;
	width: calc(100% + 6rem);
	height: 100%;
	background: #F3F3F3;
	z-index: 1;
}
.tiiki_item_hd{
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	grid-gap: .5rem;
	margin-bottom: 1.75rem;
	position: relative;
	z-index: 2;
}
.tiiki_item_hd span{
	padding: 0 1.2rem;
	border-left: .4rem solid #3363CB;
	background: #F3F3F3;
	color: #1B1C80;
	font-size: 1.5rem;
	line-height: 1.95;
}
.tiiki_item:nth-of-type(even) .tiiki_item_hd span{
	background: #fff;
}

.tiiki_item_dl{
	z-index: 2;
	position: relative;
}
.tiiki_item_dt{
	margin-bottom: 2.25rem;
}
.tiiki_item_dd{
}
.tiiki_item_dl .taR{
	font-size: .9rem;
	margin-top: 2.25rem;
}

.eng_culture{
	width: 11.3rem;
}

/*sdgs*/
.tiiki_item_dd .img{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	grid-gap: 1.3rem 0;
}
.tiiki_item_dd .img img{
	width: 16rem;
}
.tiiki_item_dd .img img:nth-of-type(1){
	width: 26.4rem;
	margin-left: auto;
	margin-right: 0;
}

/*diversity*/
.diversity_wrap{
}
.diversity_box{
}
.diversity_sec01{
	margin: 6.4rem -2.25rem 0;
	position: relative;
	background: #F1F4F9;
	padding: 4.6rem 2.25rem 2.25rem;
}
.diversity_hd01{
	background: url(../img/diversity/bg_hd01.png)no-repeat right center;
	background-size: 100% 100%;
	height: 4.75rem;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2;
	transform: translateY(-50%);
	color: #fff;
	font-size: 1.4rem;
	line-height: 1.23;
	font-weight: 400;
	display: inline-flex;
	align-items: center;
	padding: 0 2.25rem;
}
.diversity_list01{
	display: grid;
	grid-gap: 2.3rem;
}
.diversity_list01_item{
	background: #fff;
	padding: 1.8rem 2.25rem;
	position: relative;
}
.diversity_list01_item .ttl{
	font-size: 1.75rem;
	font-weight: 400;
	line-height: 1.29;
	color: #005ADC;
	margin-bottom: 1.2rem;
}
.diversity_list01_item .cont{
	font-size: 1.35rem;
	line-height: 1.66;
}
.diversity_list01_item li{
	font-size: 1.35rem;
	line-height: 1.66;
	padding-left: 1em;
	position: relative;
}
.diversity_list01_item li:before{
	content: '●';
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	color: #4C8BE6;
}

/*interview_sec*/
.interview_sec{
	margin: 0 -2.25rem;
	padding: 0 2.25rem;
	background: url(../img/diversity/bg_wrap.jpg)no-repeat center center;
	background-size: 100% 100%;
}
.interview_sec_box{
	background: #fff;
	padding: 3.2rem 2.25rem 9rem;
}
.eng_interview img{
	width: 17.2rem;
	margin-left: -2%;
}
.interview_hd .jap{
	display: block;
	font-size: 1.25rem;
	letter-spacing: .1em;
	color: #005ADC;
	margin: 1rem 0 0;
}
.diversity_list02{
	margin-top: 1rem;
	display: grid;
	grid-gap: 2.25rem;
}
.diversity_list02 li{
}
.diversity_list02 .img_box{
	padding-top: 50%;
}
.diversity_list02 .cont{
	background: #F1F4F9;
	padding: 3rem 1.5rem 1.5rem;
	margin-top: .5rem;
	position: relative;
}
.diversity_list02 .name{
	background: url(../img/diversity/bg_name.png)no-repeat right center;
	background-size: 100% 100%;
	color: #fff;
	width: 21rem;
	height: 4.2rem;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 2;
	transform: translateY(-50%);
	font-size: 1rem;
	line-height: 1.5;
	display: flex;
	align-items: center;
	padding: 0 3.7rem;
}
.diversity_list02 .name span{
	font-size: 1.25rem;
	line-height: 1.2;
	display: block;
	font-weight: bold;
}
.diversity_list02 .ttl{
	font-size: 1.15rem;
	line-height: 2.1rem;
	font-weight: 400;
	color: #005ADC;
}
.diversity_list02 .common_txt{
	font-size: 1.1rem;
	line-height: 1.9;
}
.interview_note{
	margin-top: 1.4rem;
	font-size: .9rem;
}

.eng_business{
	width: 13.2rem;
}
.eng_info{
	width: 24.4rem;
}
.eng_point img{
	width: 6.1rem;
}

/*fukuri*/
.diversity_sec01+.diversity_sec01{
	margin-top: 5rem;
}
.fukuri_hd{
	font-size: 2rem;
	line-height: 1.25;
	font-weight: 400;
	color: #005ADC;
	margin: 3.6rem 0 -2.4rem;
}
.diversity_list01_item .icon{
	display: flex;
	justify-content: center;
	grid-gap: 1rem;
	margin-top: 1rem;
}
.diversity_list01_item .icon img{
	height: 7.2rem;
}
.diversity_list01_item .icon.abs{
	position: absolute;
	right: 2rem;
	bottom: 2rem;
}
.fukuri_list{
	display: flex;
	flex-wrap: wrap;
	grid-gap: 1rem .6rem;
}
.fukuri_list li{
	width: 7.8rem;
	height: 7.8rem;
	border-radius: 50%;
	background: #fff;
	color: #0058C6;
	font-size: 1rem;
	font-weight: bold;
	line-height: 1.3;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	border: 1.5px solid #4C8BE6;
}

/*education*/
.education_wrap{
	background: url(../img/diversity/bg_wrap.jpg)no-repeat center center;
	background-size: 100% 100%;
}
.education_sec{
	padding: 3rem 2.25rem 0;
	background: #fff;
}
.btn_link01{
	display: inline-flex;
	align-items: center;
	padding: 0 2.5rem;
	width: 23rem;
	height: 5rem;
	font-size: 1.45rem;
	letter-spacing: .1em;
	font-weight: 400;
	color: #fff;
	border: 1px solid;
	background: url(../img/common/arrow_right_white.svg)no-repeat right 1.5rem center #4C8BE6;
	background-size: .75rem auto;
}
.education_item+.education_item{
	margin-top: 3.5rem;
}
.education_dl{
	display: grid;
	grid-gap: 2rem;
}
.education_dl dt{
}
.education_dl dd{
}
.education_item .img{
	margin-top: 1.5rem;
}
.education_item .btn{
	margin-top: 2rem;
}
.education_table{
	margin-top: 1.5rem;
}

.histroy_box{
	border-bottom: 1px solid #72AEFA;
	padding-bottom: 1rem;
	margin-bottom: 1rem;
}
.histroy_hd{
	font-size: 1.1rem;
	margin-bottom: .3rem;
	font-weight: 400;
	color: #005ADC;
}
.histroy_table{
	width: 100%;
}
.histroy_table th,
.histroy_table td{
	font-size: .9rem;
	line-height: 1.78;
	font-weight: 500;
	vertical-align: top;
}
.histroy_table th{
	width: 4rem;
}

/*recruit*/
.recruit_sec01{
	padding: 2.5rem 0 5rem;
}
.recruit_table{
	width: 100%;
	border-top: 1px solid #878787;
}
.recruit_table th,
.recruit_table td{
	font-size: 1.35rem;
	font-weight: 500;
	line-height: 1.48;
	vertical-align: top;
	border-bottom: 1px solid #878787;
	padding: 1.75rem 1.5rem;
}
.recruit_table th{
	padding: 1.5rem;
	white-space: nowrap;
	font-size: 1.6rem;
	line-height: 1.5;
	letter-spacing: .1em;
	font-weight: 400;
	color: #005ADC;
	background: rgba(224,235,251,.5);
}
.recruit_table p+p{
	margin-top: 2rem;
}
.recruit_table .btn{
	margin-top: 1.2rem;
}
.recruit_table .btn_link01{
	width: 18rem;
	height: 4rem;
	padding: 0 2rem;
	font-size: 1.15rem;
	background-size: .6rem auto;
	background-position: right 1.2rem center;
}
.recruit_btn{
	margin-top: 2.5rem;
	text-align: center;
}
.btn_link02{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 25rem;
	height: 5rem;
	font-size: 1.5rem;
	letter-spacing: .1em;
	font-weight: 400;
	color: #fff;
	background-image: linear-gradient(-90deg,#005ADC 0%,#005ADC 50%,#00AAE6 100% );
	position: relative;
}
.btn_link02:hover{
	/*opacity: 1;*/
	/*background-image: linear-gradient(90deg,#005ADC 0%,#005ADC 50%,#00AAE6 100% );*/
}
.btn_link02:before{
	content: '';
	position: absolute;
	right: 1.8rem;
	top: 0;
	z-index: 1;
	width: .6rem;
	height: 100%;
	background: url(../img/common/arrow_right_white.svg)no-repeat center center;
	background-size: 100% auto;
}

.recruit_sec02{
	padding: 2.5rem 0;
	margin-bottom: 6.7rem;
	background: url(../img/recruit/bg_sec02_sp.jpg)no-repeat left center;
	background-size: 100% auto;
}
.recruit_sec02_hd{
	text-align: center;
	font-size: 2.25rem;
	letter-spacing: .1em;
	margin-bottom: 2.2rem;
	color: #1B1C80;
}
.recruit_sec02_box{
	background: #fff;
	padding: 3.5rem 2rem 2.5rem;
	text-align: center;
}
.recruit_sec02_list li{
	position: relative;
	padding-bottom: 1.6rem;
	border-bottom: 1px solid #373737;
}
.recruit_sec02_list li:not(:last-of-type):before{
	content: '';
	position: absolute;
	left: 0;
	top: calc(100% + 1px);
	width: 100%;
	height: 1.9rem;
	z-index: 1;
	background: url(../img/recruit/arrow_li.svg)no-repeat bottom center;
	background-size: auto 100%;
}
.recruit_sec02_list li+li{
	margin-top: 2.8rem;
}
.recruit_sec02_list .ttl{
	font-size: 1.75rem;
	line-height: 1.71;
	font-weight: 400;
	letter-spacing: .1em;
	color: #005ADC;
}
.recruit_sec02_list .txt{
	font-size: 1.25rem;
	line-height: 1.79;
}

/*top*/
.top_sec01{
	background: url(../img/top/bg_message.jpg)no-repeat right top,
	url(../img/top/bg_mv.jpg)no-repeat left top 54.9rem;
	background-size: 100% 55rem,100% auto;
	position: relative;
	color: #fff;
	padding: 3rem 0 7.5rem;
}

.top_sec01_eng img{
	width: 10.1rem;
}
.top_sec01 .rinen_dl01_dt{
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	grid-gap: 2rem;
}
.top_sec01 .rinen_dl01_dt:before {
	content: '';
    width: 1px;
    height: 5rem;
    background: #fff;
}
.top_sec01 .rinen_dl01_dd{
	width: auto;
	text-align: center;
	font-size: 1.5rem;
	line-height: 2.16;
	letter-spacing: .2em;
	padding-top: 1.2rem;
}
.mito_3min{
	margin-right: -2.25rem;
	background: url(../img/top/bg_mito.png)no-repeat right center;
	background-size: cover;
	display: flex;
	align-items: center;
	padding-left: 2.7rem;
	height: 17.5rem;
	margin-top: 4rem;
}
.mito_3min_jap{
	background: url(../img/top/bg_jap.jpg)no-repeat center center;
	background-size: 100% 100%;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 2.25rem;
	line-height: 1.33;
	letter-spacing: .1em;
	width: 17.5rem;
	height: 9rem;
	position: relative;
}
.mito_3min_jap img{
	position: absolute;
	left: -2rem;
	top: -2rem;
	z-index: 2;
	width: 17.8rem;
}

.top_sec02{
	background: #F3F3F3;
	padding: 6.4rem 0 8rem;
}
.top_eng_about img{
	width: 18.3rem;
}
.top_sec02_list{
	display: grid;
	grid-gap: 4rem;
	margin-top: 3rem;
}
.top_sec02_list li{
	margin-left: -2.25rem;
	position: relative;
}
.top_sec02_list li:nth-of-type(even){
	margin: 0 -2.25rem 0 0;
}
.top_sec02_list a{
	display: block;
	color: #fff;
	background: url(../img/top/border_about.jpg)no-repeat center center;
	background-size: 100% 100%;
	padding-bottom: .4rem;
	opacity: 1!important;
	position: relative;
}
.top_sec02_list .img_box{
	padding-top: 53.9%;
}
.top_sec02_list .ttl{
	position: absolute;
	z-index: 9;
	right: 1.5rem;
	bottom: 1.5rem;
}
.top_sec02_list li:nth-of-type(even) .ttl{
	right: auto;
	left: 1.5rem;
}

.btn_dot{
	display: inline-flex;
	align-items: center;
	min-width: 3rem;
	min-height: 3rem;
	padding-right: 3.6rem;
	background: url(../img/top/bg_dot.svg)no-repeat right center;
	background-size: 3rem auto;
	position: relative;
	font-size: 2.5rem;
	font-weight: 400;
	letter-spacing: .1em;
	color: #fff;
}
.btn_dot:before{
	content: '';
	position: absolute;
	right: 1.5rem;
	top: 50%;
	transform: translate(50%,-50%);
	z-index: 9;
	width: .6rem;
	height: .6rem;
	background: #005ADC;
	border-radius: 50%;
	transition: all .3s;
}

.top_sec03{
	padding: 4.5rem 0 7rem;
}
.top_eng_business img{
	width: 22.5rem;
}
.top_sec03_box{
	position: relative;
}
.top_sec03_box .interview_hd{
	text-align: center;
}
.top_sec03_list{
	display: grid;
	grid-gap: 3.7rem;
	margin-top: 3.3rem;
}
.top_sec03_list a{
	display: block;
	opacity: 1;
}
.top_sec03_list .img_box{
	padding-top: 50.45%;
	clip-path: polygon(1rem 0, calc(100% - 1rem) 0%, 100% 1rem, 100%  100%,1rem 100%,0 calc(100% - 1rem),0 1rem);
}
.top_sec03_list .btn_dot{
	position: absolute;
	right: 1.5rem;
	bottom: 1.5rem;
	z-index: 9;
}
.top_sec03_list .ttl{
	font-size: 2.4rem;
	font-weight: 400;
	letter-spacing: .1em;
	display: flex;
	align-items: center;
	grid-gap: 1.4rem;
	margin-top: 1.3rem;
}
.top_sec03_list .ttl:before{
	content: '';
	width: 5rem;
	height: 1px;
	background: #005ADC;
}
.top_sec03_list .ttl span{
	font-size: 1.7rem;
	letter-spacing: 0;
}

.top_sec04{
	background: url(../img/top/bg_mv.jpg)no-repeat right bottom;
	background-size: 100% 100%;	
	color: #fff;
	padding: 6rem 0 7.5rem;
}
.top_eng_employee img{
	width: 23.6rem;
}
.top_sec04 .interview_hd{
	margin-bottom: 5rem;
}
.top_sec04 .interview_hd .jap{
	color: #fff;
}
.top_sec04_slider{
	margin-right: -3rem;
}
.top_sec04_slider .slick-list{
	overflow: visible;
}
.top_sec04_item{
	width: 27.5rem;
	margin-right: 3.25rem;
}
.top_sec04_item a{
	display: block;
	opacity: 1;
	color: #fff;
}
.top_sec04_item .img_box{
	padding-top: 16.9rem;
	clip-path: polygon(0 0,100% 0,100% calc(100% - 5rem),calc(100% - 5rem) 100%,0 100%);
}
.top_sec04_item .txt{
	font-size: 1.5rem;
	letter-spacing: .1em;
	line-height: 1.83;
	margin: 2rem 0 1rem;

    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.top_sec04_item .name{
	font-size: 1.35rem;
}
.top_sec04_slider .slick-prev,
.top_sec04_slider .slick-next{
    width: 3.75rem;
    height: 3.75rem;
    z-index: 3;
    background: url(../img/top/slick_next.svg)no-repeat;
    background-size: 100% auto;
    left: auto;
    right: 3rem;
    top: -6.3rem;
    transform: translateY(0%);
}
.top_sec04_slider .slick-prev{
    background: url(../img/top/slick_prev.svg)no-repeat;
    background-size: 100% auto;
    left: auto;
    right: 8.25rem;
}


.top_sec05{
	margin: 1rem 0;
	padding: 5.7rem 0 5rem;
	background: url(../img/top/bg_sec05.jpg)no-repeat center center;
	background-size: 100% 100%;	
}
.top_sec05_dl{
	display: grid;
	grid-gap: 5rem;
}
.top_sec05_dt{
}
.top_sec05_dd{
	display: grid;
}
.top_eng_culture img{
	width: 19.5rem;
	max-width: none;
}
.top_sec05_list{
	margin-top: 3.3rem;
	border-top: 1px solid #fff;
}
.top_sec05_list li{
	border-bottom: 1px solid #fff;
}
.top_sec05_list a{
	opacity: 1;
	width: 100%;
	font-size: 2.1rem;
	letter-spacing: .1em;
	height: 6.6rem;
	color: #373737;
}
.top_sec05_img01{
	width: 14.1rem;
}
.top_sec05_img02{
	width: 15.5rem;
	margin-left: auto;
	margin-top: -6.4rem;
	position: relative;
	z-index: 2;
}
.top_sec05_img03{
	width: 11.8rem;
	margin-left: 7.65rem;
	margin-top: -6rem;
}

.top_sec06{
	padding: 7.5rem 0 5rem;
	background: url(../img/top/bg_sec06.jpg)no-repeat center center;
	background-size: 100% 100%;	
}
.top_sec06 .top_sec05_dl{
	flex-direction: row-reverse;
}
.top_sec06_dt{
}
.top_sec06_dd{
	display: grid;
	padding: 0 .75rem;
}
.top_eng_environment img{
	width: 32.8rem;
	max-width: none;
}
.top_sec06_img01{
	width: 15rem;
	margin-left: auto;
	position: relative;
	z-index: 2;
}
.top_sec06_img02{
	width: 19rem;
	margin-top: -6rem;
}

.top_sec07{
	padding: 5rem 0 4rem;
}
.top_sec07_dl{
	display: grid;
	padding: 0 1.5rem;
}
.top_sec07_dt{
}
.top_sec07_dd{
	margin-top: 5rem;
	padding-top: 5rem;
	border-top: 1px solid #D7D7D7;
}
.top_sec07_hd{
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 2.3rem;
}
.top_eng_info img{
	width: 31.2rem;
	max-width: none;
}
.top_eng_internship img{
	width: 20.4rem;
}
.top_sec07_list{
	display: grid;
	grid-gap: 1.5rem;
}
.top_sec07_list a{
	display: flex;
	justify-content: center;
	align-items: center;
	height: 7.5rem;
	background: #809DDE;
	color: #fff;
	font-size: 2.1rem;
	letter-spacing: .1em;
	font-weight: 400;
}
.top_sec07_btn a{
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	height: 25.5rem;
	background: #DA9CCB;
	color: #fff;
	font-size: 1.5rem;
	letter-spacing: .1em;
	font-weight: 400;
	grid-gap: .5rem;
}
.top_sec07_btn a .ttl{
	font-size: 2.4rem;
}

/*kojin*/
.kojin_wrap{
	background: url(../img/kojin/bg_kojin.png)no-repeat top center;
	background-size: 100% auto;
}
.kojin_top_img{
	margin-right: -2.25rem;
}
.kojin_top_hd{
	position: absolute;
	left: 2.25rem;
	top: 1.5rem;
	z-index: 9;
	font-size: 2.1rem;
	font-weight: 400;
	letter-spacing: .05em;
}
.kojin_top_hd p{
	padding: 0 1rem;
	background: #FFFFFF;
	color: #7D57BE;
	border: 1px solid #7D57BE;
}
.kojin_top_hd:before{
	content: '';
	position: absolute;
	left: 0;
	top: .25rem;
	width: calc(100% + .25rem);
	height: 100%;
	z-index: -1;
	background: #9D81CE;
	border: 1px solid #7D57BE;
}
.kojin_top_hd span{
	font-size: 1.6rem;
	letter-spacing: .1em;
}
.kojin_top_box{
	margin: -4.5rem auto 0;
	width: 30.7rem;
	background: url(../img/kojin/bg_box.png)no-repeat top center;
	background-size: cover;
	color: #fff;
	padding: 2rem 2.5rem;
	position: relative;
	z-index: 9;
}
.kojin_top_box .ttl{
	font-size: 1.1rem;
	margin-bottom: .8rem;
}
.kojin_top_box .ttl span{
	font-size: 1.9rem;
}
.kojin_top_box .common_txt{
	font-size: 1rem;
	line-height: 1.6;
}

.kojin_cont{
	padding: 3rem 0 5rem;
}
.kojin_list{

}
.kojin_list li{
	position: relative;
}
.kojin_list li:not(:last-of-type){
	border-bottom: 1px solid #003CBE;
	padding-bottom: 2.5rem;
	margin-bottom: 3rem;
}
.kojin_list li:not(:last-of-type):after{
	content: '';
	position: absolute;
	left: 0;
	top: 1.2rem;
	width: .2rem;
	height: calc(100% + 3.5rem);
	background: #003CBE;
}
.kojin_list li:not(:last-of-type):before{
	content: '';
	position: absolute;
	left: 0;
	top: calc(100% + 1px);
	width: 100%;
	height: 1.35rem;
	z-index: 1;
	background: url(../img/recruit/arrow_li.svg)no-repeat center center;
	background-size: auto 100%;
}
.kojin_list .ttl{
	font-size: 1.75rem;
	font-weight: 500;
	color: #00AAE6;
	margin-left: -.6rem;
	margin-bottom: 1rem;
	padding-left: 2rem;
	background: url(../img/kojin/dot.svg)no-repeat left center;
	background-size: 1.4rem auto;
	position: relative;
	z-index: 5;
}
.kojin_list .ttl span{
	color: #003CBE;
	font-weight: 400;
	display: inline-block;
	width: 5.7rem;
}
.kojin_list dl{
	padding-left: 2.5rem;
	display: grid;
	grid-gap: 1rem;
}
.kojin_list dt{
}
.kojin_list dd{
	display: grid;
	grid-template-columns: repeat(2,1fr);
	grid-gap: .5rem;
}

.kojin_bottom{
	padding: 4rem 2.25rem 2.8rem;
	background: url(../img/kojin/bg_kojin.jpg)no-repeat center center;
	background-size: 100% 100%;
	color: #fff;
	margin-bottom: 5rem;
}
.kojin_bottom_box{
	display: grid;
	grid-gap: 1.2rem;
}
.kojin_bottom_box dt{
	position: relative;
}
.kojin_bottom_box dd{
}
.eng_policy{
	position: absolute;
	left: 50%;
	top: 0;
	transform: translate(-50%,-65%);
	z-index: 9;
	width: 12.2rem;
}

/*taidan_cul*/
.taidan_wrap{
	background: url(../img/taidan_cul/bg_wrap_sp.jpg)no-repeat top center;
	background-size: 100% auto;
}
.taidan_top{
	padding-top: 6rem;
}
.taidan_top_ttl{
	position: absolute;
	left: 2.25rem;
	top: -4rem;
	z-index: 9;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}
.eng_talk{
	width: 22.5rem;
	margin-left: -1rem;
	margin-bottom: .5rem;
}
.taidan_top_ttl .jap{
	font-size: 1.1rem;
	letter-spacing: .1em;
	padding: .4rem .6rem;
	background: url(../img/taidan_cul/border_left.svg)no-repeat left top,
	url(../img/taidan_cul/border_right.svg)no-repeat right bottom;
	background-size: .8rem auto, .8rem auto;
	color: #337BE3;
}
.taidan_top_img{
	margin: 0 -2.25rem 0 auto;
	width: 24.5rem;
}
.taidan_top_box{
	position: relative;
	z-index: 9;
	background: #337BE3;
	color: #fff;
	padding: 2rem 2.25rem;
	margin-top: -1.5rem;
}
.taidan_top_box .ttl{
	font-size: 1.5rem;
	font-weight: 400;
	line-height: 1.33;
	margin-bottom: 1rem;
}
.taidan_top_box .txt{
	font-size: 1.1rem;
	line-height: 1.81;
}

.taidan_member{
	padding: 3rem 0 4rem;
}
.taidan_member_hd{
	position: relative;
	margin-bottom: 2rem;
}
.taidan_member_hd:before{
	content: '';
	position: absolute;
	right: 0;
	top: 75%;
	z-index: 1;
	width: calc(100% - 16.2rem);
	height: 1px;
	background: #005ADC;
}
.taidan_member_hd span{
	width: 16.2rem;
	display: flex;
	justify-content: center;
	align-items: center;
}
.taidan_member_hd span img{
	width: 18.4rem;
	max-width: none;
}
.taidan_member_list{
	display: grid;
	grid-gap: 2rem;
	padding-left: 2.25rem;
}
.taidan_member_list dl{
	display: flex;
	grid-gap: 1.5rem;
}
.taidan_member_list dt{
	width: 13rem;
}
.taidan_member_list dd{
	width: calc(100% - 14.5rem);
}
.taidan_member_list .name{
	font-size: 1.75rem;
	line-height: 1.2;
}
.taidan_member_list .name:before{
	content: '●';
	margin-right: .2em;
	color: #A078DC;
}
.dot_blue:before{
	color: #72AEFA!important;
}
.taidan_member_list .department{
	font-size: 1rem;
	margin-top: .4rem;
}
.taidan_member_list .txt{
	margin-top: .8rem;
	font-size: 1rem;
	line-height: 1.75;
}

.taidan_cont{
	padding-bottom: 6.5rem;
}
.taidan_item+.taidan_item{
	margin-top: 5rem;
}
.taidan_item{
	display: flex;
	flex-direction: column-reverse;
	grid-gap: 2.5rem;
}
.taidan_item:after{
	content: none;
}
.taidan_item_img{
	padding-bottom: .5rem;
	background: url(../img/taidan_cul/bg_rainbow.jpg)no-repeat center center;
	background-size: 100% 100%;
}
.taidan_career_wrap .taidan_item_img{
	background: url(../img/taidan_cul/bg_rainbow02.jpg)no-repeat center center;
	background-size: 100% 100%;
}
.taidan_item_hd{
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	grid-gap: .8rem;
	margin-bottom: 3rem;
}
.taidan_item_hd p{
	position: relative;
	padding-left: .35rem;
}
.taidan_item_hd p span{
	display: flex;
	align-items: center;
	font-size: 1.45rem;
	height: 2.8rem;
	padding: 0 .85rem;
	background: #fff;
	border: 1px solid #72AEFA;
	position: relative;
	z-index: 2;
	white-space: nowrap;
}
.taidan_item_hd p:before{
	content: '';
	position: absolute;
	left: 0;
	top: .35rem;
	width: calc(100% - .35rem);
	height: 100%;
	background: url(../img/taidan_cul/bg_line.jpg)no-repeat center center;
	background-size: 100% 100%;
}
.taidan_career_wrap .taidan_item_hd p span{
	border-color: #A078DC;
}
.taidan_career_wrap .taidan_item_hd p:before{
	background: url(../img/taidan_cul/bg_line02.jpg)no-repeat center center;
	background-size: 100% 100%;
}
.taidan_item_cont dl{
	display: flex;
	justify-content: space-between;
}
.taidan_item_cont dl+dl{
	margin-top: 2.25rem;
}
.taidan_item_cont dt{
	width: 7.2rem;
	overflow: hidden;
}
.taidan_item_cont dt img{
	border-radius: 50%;
}
.taidan_item_cont dd{
	width: calc(100% - 2.4rem - 7.2rem);
}
.taidan_item_cont .name{
	font-size: 1.35rem;
	line-height: 1.2;
	font-weight: bold;
	margin-bottom: .5rem;
}
.taidan_item_cont .name:before{
	content: '●';
	margin-right: .2em;
	color: #A078DC;
}


/*taidan_career*/
.taidan_career_wrap{
	background: url(../img/taidan_career/bg_wrap_sp.jpg)no-repeat top center;
	background-size: 100% auto;
}
.taidan_career_wrap .taidan_top_box{
	background: #6978E6;
}
.taidan_career_wrap .taidan_top_ttl .jap{
	background: url(../img/taidan_career/border_left.svg)no-repeat left top,
	url(../img/taidan_career/border_right.svg)no-repeat right bottom;
	background-size: .8rem auto,.8rem auto;
	color: #5C64BE;
}
.taidan_career_wrap .taidan_member_list{
	grid-gap: 2rem;
}
.taidan_career_wrap .taidan_member_list li{
	position: relative;
}

.taidan_career_wrap .taidan_member_list dl {
	display: block;
}

.taidan_career_wrap .taidan_member_list dt {
	float: left;
	margin-right: 1.5rem;
	margin-bottom: 2rem;
}

.taidan_career_wrap .taidan_member_list dd {
	width: auto;
}

.road_map{
	width: 100%;
	clear: both;
}

.road_map .road_map_title {
	width: 11.2rem;
}

.road_map .road_map_title img {
	width: 100%;
}

.road_map .road_map_box {
	border: .15rem solid;
	padding: 1.7rem 2.1rem;
	display: flex;
	flex-direction: column;
	gap: 1.4rem;
}

.road_map.is_blue .road_map_box {
	border-color: #8ECDDE;
}

.road_map.is_pink .road_map_box {
	border-color: #E3C1D6;
}

.road_map .road_map_item {
	display: flex;
	gap: 1.1rem;
	align-items: center;
}

.road_map .road_map_year {
	width: 6rem;
	height: 2.4rem;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.2rem;
	line-height: 1.5;
	color: #fff;
	font-weight: 500;
}
.road_map.is_blue .road_map_year  {
	background: #8ECDDE;
}

.road_map.is_pink .road_map_year  {
	background: #E3C1D6;
}

.road_map .road_map_text {
	width: calc(100% - 7.1rem);
	font-size: 1rem;
	line-height: 1.3;
}

.dot_green:before{
	color: #32A5C3!important;
}
.dot_link:before{
	color: #CD8FC8!important;
}


/*people_ns*/
.people_top{
	padding-bottom: 2.5rem;
	background: url(../img/people_ns/bg01.jpg)no-repeat bottom center;
	background-size: 100% 25rem;
}
.people_main{
	position: relative;
	text-align: right;
}
.people_main img{
	height: 19rem;
	object-fit: cover;
	object-position: right center; 
}
.people_main_hd{
	position: absolute;
	right: 3rem;
	right: 1.5rem;
	top: 44%;
	z-index: 9;
	display: flex;
	flex-direction: column;
	grid-gap: .5rem;
	align-items: flex-start;
}
.people_main_hd span{
	font-size: 1.4rem;
	line-height: 1.67;
	padding: 0 .7rem;
	background: #fff;
}
.people_main_hd span+span{
	margin-left: 2.4rem;
}

.people_profile{
	position: relative;
	z-index: 2;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin-top: 3rem;
	color: #fff;
}
.people_profile dt{
	position: relative;
	width: 9.5rem;
}
.people_profile dt:before{
	content: '';
	position: absolute;
	left: 100%;
	top: 50%;
	transform: translate(-94%,-10%);
	width: 7.3em;
	height: 12.8rem;

	background: url(../img/people_ns/line.svg)no-repeat center center;
	background-size: 100% auto;
	background-size: cover;
}
.people_profile dd{
	width: calc(100% - 9.5rem);
}
.people_profile img{
	width: 7rem;
}
.people_profile .ttl{
	font-size: 1.1rem;
	margin-bottom: 1rem;
}
.people_profile .ttl span{
	font-size: 1.6rem;
	margin-right: .2em;
}
.people_profile .txt{
	font-size: 1rem;
	line-height: 1.6;
}

.people_sec01{
	padding: 2.6rem 0 3.8rem;
}
.people_item01+.people_item01{
	margin-top: 4rem;
}
.people_item01{
	display: grid;
	grid-gap: 1.5rem;
}
.people_item01 dt{
	margin-left: -2.25rem;
}
.people_item01 dt img{
	width: 28.8rem;
}
.people_item01 dd{
	position: relative;
}
.people_item01 dd img{
	margin-left: -1rem;
}
.eng_style img{
	width: 10.5rem;
}
.eng_episode img{
	width: 7.5rem;
}
.eng_future img{
	width: 6.3rem;
}
.people_item01 .ttl{
	font-size: 1.75rem;
	line-height: 1.57;
	letter-spacing: .1em;
	color: #005ADC;
	margin-bottom: .7rem;
}

.people_item01.rt dt{
	margin-left: 0;
	margin-right: -2.25rem;
	text-align: right;
}
.people_item01.big dt{
	margin: 0;
}
.people_item01.big dt img{
	width: auto;
	height: 19.4rem;
	object-fit: cover;
}
.people_sec02{
	padding: 3.75rem 0 2.5rem;
	background: url(../img/people_ns/bg02_sp.jpg)no-repeat;
	background-size: 100% 100%;
	margin-bottom: 2.5rem;
}
.people_sec02 .interview_hd{
	margin-left: 1rem;
}
.eng_schedule img{
	width: 14.6rem;
}

.eng_career_step img{
	width: 19.2rem;
}

.people_sec02_box{
	background: #fff;
	padding: 2rem;
	position: relative;
	margin-top: 1.2rem;
}
.people_sec02_list li{
	position: relative;
}
.people_sec02_list li+li{
	margin-top: 3.6rem;
}
.people_sec02_list li+li:before{
	content: '';
	position: absolute;
	left: 7.7rem;
	bottom: calc(100% + 1.5rem);
	transform: translateX(-50%);
	width: 1.2rem;
	height: 1.2rem;
	background: url(../img/people_ns/arrow.svg)no-repeat center center;
	background-size: 100% auto;
}
.people_sec02_list dl{
	display: flex;
}
.people_sec02_list dt{
	width: 7.7rem;
	font-size: 1rem;
	line-height: 1.33;
	font-weight: 500;
	letter-spacing: .1em;
	color: #005ADC;
	border-right: 1px solid #373737;
}
.people_sec02_list dd{
	display: flex;
	align-items: center;
	width: calc(100% - 7.7rem);
	padding-left: 1.4rem;
	font-size: 1.25rem;
	line-height: 1.4;
}
.people_sec02_list dt span{
	display: block;
	font-size: 2rem;
	font-weight: bold;
}
.people_sec02.is-career .people_sec02_list dt {
	font-size: 1.4rem;
}
.people_sec02.is-career .people_sec02_list dt span {
	display: inline-block;
}
.people_sec02_img{
	margin-top: 2.5rem;
}
.people_sec03{
	background: url(../img/people_ns/bg03.jpg)no-repeat;
	background-size: 100% 100%;
	color: #fff;
	padding: 3rem 0;
}
.people_sec03_item{
}
.people_sec03_item dt{
	text-align: center;
	margin-bottom: 1rem;
}
.people_sec03_item dt img{
	width: 13.3rem;
}
.people_sec03_item .common_txt{
	font-size: 1.25rem;
}

.people_note{
	text-align: right;
	padding: 1.5rem 0 7rem;
	font-size: .9rem!important;
}

.people_other{
	background: rgba(191,213,246,.35);
	color: #fff;
	padding: 3.2rem 0 3rem;
	position: relative;
}
.people_other_hd{
	position: absolute;
	left: 50%;
	top: 0;
	z-index: 2;
	transform: translate(-50%,-50%);
	width: 13.7rem;
}
.people_other_list{
	display: grid;
	grid-template-columns: repeat(2,1fr);
	grid-gap: 2.5rem;
	width: 27.2rem;
	margin: 0 auto;
}
.people_other_list li{
}
.people_other_list a{
	display: block;
	opacity: 1;
}
.people_other_list a.is_active{
	pointer-events: none;
}
.people_other_list .img_box{
	padding-top: 61.43%;
}
.people_other_list a.is_active .img_box:before{
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,.25);
	z-index: 9;
}
.people_other_list .name{
	font-size: .9rem;
	margin-top: -1px;
	position: relative;
	z-index: 9;
	font-weight: 400;
	color: #fff;
	padding: 0 1.4rem;
	display: flex;
	align-items: center;
	height: 2.7rem;
	background: url(../img/people_ns/bg_name.jpg)no-repeat right center;
	background-size: 100% 100%;
}
.people_other_list .name span{
	font-size: 1.4rem;
}

.caps{
  text-align: right;
  padding-top: 1.5em;
}

/* 20251119 mito_3min.html */

.teaser_bg03 {
	position: relative;
	background: url(../img/mito_3min/bg_color.jpg)no-repeat left center;
	background-size: 100% 100%;
	color: #fff;
}
.teaser_bg03 .teaser_bg03_ban {
	position: relative;
}
.teaser_bg03 .teaser_bg03_ban .ban img {
	object-fit: cover;
	object-position: left center;
	height: 25rem;
}
.teaser_ttl2 {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	z-index: 9;
	width: auto;
}
.teaser_ttl2 .jap {
	padding: 2rem 3rem;
	background: linear-gradient(90deg, #00AAE6 0%, #005ADC 50%, #003CBE 70%, #B63A97 90%);
	font-size: 3.3rem;
	letter-spacing: .1em;
	line-height: 1.2;
	text-align: center;
	white-space: nowrap;
	word-wrap: break-word;
	word-break:break-all;
	color: #fff;
}
.teaser_ttl2 .eng {
	position: absolute;
	top: -2.5rem;
	left: -4rem;
	width: 20.4rem;
}
.teaser_txt {
	padding: 2.8rem 2rem;
	line-height: 1.6667;
	font-weight: 500;
}

.mito_3min_wrap {
	padding: 0 0 5rem;
}

.mito_3min_hd {
	margin-bottom: 2.5rem;
	padding: 4rem 0 0 1.4rem;
	border-left: 2px solid #00A0FF;
	letter-spacing: 0.1em;
	color: #1B1C80;
	font-size: 2.25rem;
}

.mito_3min_sec01,
.mito_3min_sec03 {
	padding: 0 0 5rem;
}
.mito_3min_list {
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	gap: 1rem 0;
}
.mito_3min_list + .mito_3min_list {
	margin-top: 1rem;
}

.mito_3min_list .item {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 1.6rem 0;
	position: relative;
	z-index: 2;
	padding: 2rem 2.2rem;
	line-height: 1.667;
	font-weight: 500;
}
.mito_3min_list .item:before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
	width: 100%;
	height: 100%;
}
.mito_3min_list .title {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 2rem;
	line-height: 1.3;
	font-size: 1.95rem;
}
.mito_3min_list .title .icon img {
	width: auto;
	height: 6.8rem;
}
.mito_3min_list .title .data {
	color: #005ADC;
	font-size: 3rem;
}
.mito_3min_list .title .data .small {
	font-size: 2rem;
}
.mito_3min_list .sex_ratio {
	display: flex;
	gap: 0 1rem;
	justify-content: space-between;
}
.mito_3min_list .sex_ratio li {
	display: flex;
	align-items: center;
	gap: 0 0.3rem;
	color: #005ADC;
	font-size: 3rem;
}
.mito_3min_list .sex_ratio li:before {
	content: "";
	line-height: 1;
	letter-spacing: 0.1em;
	writing-mode: tb-rl;
	writing-mode: vertical-lr;
	color: #333;
	font-size: 1.6rem;
}
.mito_3min_list .sex_ratio .male:before {
	content: "男性";
}
.mito_3min_list .sex_ratio .female:before {
	content: "女性";
}
.mito_3min_list .sex_ratio li .small {
	font-size: 2.4rem;
}
.mito_3min_list .sex_ratio li .per {
	font-size: 1.8rem;
}
.mito_3min_list .tit {
	margin-bottom: 0.5rem;
	font-weight: 700;
}
.mito_3min_list .number li {
	padding-left: 1em;
	text-indent: -1em;
}

.mito_3min_sec01 .mito_3min_list .item:before {
	opacity: 0.15;
	background: linear-gradient(160deg, #0078FF 10%, #00FFE6 110%);
}

.mito_3min_sec02 {
	position: relative;
	z-index: 2;
	padding: 0 0 5rem;
}
.mito_3min_sec02:before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
	width: 100%;
	height: 100%;
	opacity: 0.4;
	background: linear-gradient(160deg, #46AAFF 20%, #AA82E6 100%);
}

.mito_3min_sec02 .mito_3min_hd {
	border-color: #AA5AC8;
}

.mito_3min_sec02 .mito_3min_list .item,
.mito_3min_sec04 .mito_3min_list .item {
	background: #fff;
}

.mito_3min_sec03 .mito_3min_list .item:before {
	opacity: 0.15;
	background: linear-gradient(160deg, #41B4FF 10%, #FFAAF0 110%);
}

.mito_3min_sec03 .mito_3min_hd {
	border-color: #F06E96;
}

.mito_3min_sec04 {
	position: relative;
	z-index: 2;
	padding: 0 0 10rem;
}
.mito_3min_sec04:before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
	width: 100%;
	height: 100%;
	opacity: 0.4;
	background: linear-gradient(160deg, #00BEFF 10%, #8CDCB4 110%);
}
.mito_3min_sec04 .mito_3min_hd {
	border-color: #1EBE96;
}