@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');

*, :after, :before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

html{
	overflow: auto;
}

html,body{
    width: 100%;
}

body {
	color: #000;
	font-family: 'Noto Sans JP','Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, 'メイリオ', Osaka, 'MS PGothic', arial, helvetica;
	font-weight: 400;
	-webkit-text-size-adjust: 100%;
	position: relative;
}

@media screen and (min-width: 769px) {
	body{
		min-width: 1200px;
		overflow: hidden;
	}
}

.ipad{
	min-width: 1200px;
}

a,
a img{
	text-decoration: none;
	transition: 0.3s ease-out;
}

.clearfix:after {
  content:" ";
  display:block;
  clear:both;
}

/*header
--------------------------------------------------*/
.header{
	position: relative;
}

.floating__nav{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 80px;
	z-index: 300;
	min-width: 1200px;
}

.header__logo{
	position: absolute;
	top: 18px;
	left: 29px;
	z-index: 310;
	width: 269px;
}

.header__logo img{
	width: 100%;
}

.header__nav{
	position: absolute;
	top: 0;
	right: 0;
}

.nav__index{
	position: absolute;
	top: 0;
	right: 302px;
	width: fit-content;
	display: flex;
}

.nav__item{
	margin-left: 51px;
	white-space: nowrap;
	position: relative;
}

.nav__item:first-child{
	margin-left: 0;
}

.nav__item a{
	width: 100%;
	height: 80px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
  font-size : 15px;
  line-height : 1;
  color : #333;
	padding-top: 7px;
}

.nav__btn{
	position: absolute;
	top: 0;
	right: 0;
	width: 220px;
	height: 80px;
}

.nav__btn a{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	background: #044EA2 url(../img/header_nav_arrow.svg) no-repeat top 50% right 20px;
  font-weight : 700;
  font-size : 22px;
  line-height : 1;
  letter-spacing : 4.4px;
  color : #fff;
}


@media screen and (max-width: 1300px) {
	.nav__index{
		right: 280px;
	}

	.nav__item{
		margin-left: 30px;
		white-space: nowrap;
	}
}

@media screen and (min-width: 769px) {
	.nav__item a:hover,
	.nav__btn a:hover,
	.header__logo a:hover{
		opacity: .6;
}
	
	/*fixed*/
	.is-fixed{
		position: fixed;
		z-index: 500;
		background: rgba(255, 255, 255, 0.9);
		box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
		height: 80px;
	}

	.is-fixed .header__logo{
		top: 10px;
	}
}

@media screen and (max-width: 768px) {
	.header__logo{
		top: 20px;
		left: 15px;
		width: 190px;
	}

	.floating__nav{
		min-width: auto;
		height: auto;
	}

	.header__nav,
	.nav__btn{
		display: none;
	}
}

/*mainvisual
--------------------------------------------------*/
.mainvisual{
	width: 100%;
	height: 0;
	padding-top: 33.125%;
	position: relative;
}

.mv__ph{
	background: url(../img/mv_pc.webp) no-repeat 0 0/100%;
	width: 87.625%;
	height: 143.1%;
	position: absolute;
	top: 28.26%;
	left: 6.1875%;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	z-index: 150;
}

@media screen and (max-width: 768px) {
	.mainvisual{
		padding-top: 51.2%;
	}

	.mv__ph{
		background-image: url(../img/mv_sp.webp);
		width: 94.66%;
		height: 126%;
		top: 47.3%;
		left: 2.66%;
	}
}

/*SP navi
--------------------------------------------------*/
/*hamburger SP*/
@media screen and (max-width: 768px) {
	.hamburger{
		position: fixed;
		top: 15px;
		right: 15px;
		z-index: 700;
		width: 45px;
		height: 45px;
		border-radius: 45px;
		background: #044EA2;
		box-shadow: 0 0 8px 0 rgba(255, 255, 255, .5);
	}
	
	.hamburger__inner{
		position: absolute;
		top: 19px;
		left: 14px;
		width: 16px;
		height: 13px;
		cursor: pointer;
	}

	.hamburger__line{
		background: #fff;
		display: block;
		height: 1px;
		position: absolute;
		transition: 0.3s ease-out;
		width: 100%;
	}

	.hamburger__line--c{
		top: 6px;
	}

	.hamburger__line--b{
		bottom: 0px;
		background: transparent;
		}

	.hamburger__line--t.nav--active{
		top: 3px;
		transform: rotate(45deg);
	}

	.hamburger__line--c.nav--active{
		transform:scaleX(0);
	}

	.hamburger__line--b.nav--active{
		top: 3px;
		transform: rotate(135deg);
		background: #fff;
	}
}

/*navi*/
.sp-nav{
	background: rgba(0,0,0,0.8);
	display: none;
	height: 100%;
	width: 100%;
	position: fixed;
	z-index: 600;
	top: 0;
	left: 0;
}

.sp-nav__container{
	align-items:center;
	display: flex;
	height: 100%;
	justify-content: center;
	position: absolute;
	width: 100%;
}

.sp-nav__index{
	width: 200px;
	margin: 0 auto 20px auto;
}

.sp-nav__item{
	margin-bottom: 20px;
	text-align: center;
}

.sp-nav__item a{
	display: block;
	text-align: center;
	padding: 5px 0;
	font-weight: 500;
	font-size: 16px;
	letter-spacing: 0.05em;
	line-height: 1;
	color: #fff;
}

.sp-nav__btn{
	width: 100%;
	height: 60px;
}

.sp-nav__btn a{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	background: #044EA2 url(../img/header_nav_arrow.svg) no-repeat top 50% right 20px/8px;
  font-weight : 700;
  font-size : 18px;
  line-height : 1;
  letter-spacing : 4.4px;
  color : #fff;
}

/*break
--------------------------------------------------*/
.pc--hidden{
	display: none;
}

.sp--hidden{
	display: block;
}

@media screen and (max-width: 768px) {
	.pc--hidden{
		display: block;
	}
	
	.sp--hidden{
		display: none;
	}
}

/*content fade
--------------------------------------------------*/
.content-fadeinup{
	opacity: 0;
	transform: translateY(50px);
}

/*heading
--------------------------------------------------*/
.content__heading{
	line-height: 0;
}

@media screen and (max-width: 768px) {
	.content__heading img{
		height: 40px;
	}
}

/*message
--------------------------------------------------*/
.message {
    padding: 28% 0 0 0;
    height: 1095px;
    box-sizing: border-box;
    
    /* 変更点: 背景色、グラデーション、画像の順で指定 */
    background-color: #004EA2;
    background-image: 
        linear-gradient(to bottom, rgba(0, 78, 162, 0) 60%, #004EA2 100%),
        url(../img/message_bg_pc.webp);
        
    /* 変更点: coverを使うと隙間ができにくくなります */
    background-size: cover; 
    background-repeat: no-repeat;
    background-position: center top;
}

.ipad .message{
	background: #004EA2 url(../img/message_bg_pc.webp) no-repeat bottom -1px left 50%/100%;
}

.message__container{
	width: 968px;
	margin: 0 auto;
	position: relative;
}

.message__heading--en{
  font-weight : 700;
  font-size : 20px;
	line-height: 1;
  color : #FCEE21;
	margin-bottom: 10px;
	padding-left: 2px;
}

.message__heading{
  font-size : 68px;
  line-height : 1.352;
  letter-spacing : 13.6px;
	font-weight: 800;
  color : #fff;
	margin-bottom: 22px;
}

.message__txt{
  font-weight : 700;
  font-size : 20px;
  line-height : 2.31;
  letter-spacing : 4px;
  color : #fff;
	width: 555px;
	margin-left: 88px;
}

@media screen and (max-width: 768px) {
	.message{
		padding: 47% 0 0 0;
		height: auto;
		background: #004EA2 url(../img/message_bg_sp.webp) no-repeat top 0 left 50%/100%;
	}

	.message__container{
		width: auto;
		padding: 0 20px;
	}

	.message__heading--en{
		font-size : 14px;
		margin-bottom: 5px;
		padding-left: 1px;
	}

	.message__heading{
		font-size: 30px;
		letter-spacing: 4px;
		margin-bottom: 15px;
	}

	.message__txt{
		font-size : 16px;
		line-height : 1.85;
		letter-spacing : 2px;
		width: auto;
		margin-left: 15px;
	}
}

/*ABOUT US
--------------------------------------------------*/
.aboutus{
	padding: 64px 0 0 0;
	background: #004EA2;
}

.aboutus__container{
	width: 980px;
	margin: 0 auto 127px auto;
}

.aboutus__heading{
	text-align: right;
	margin-bottom: 38px;
}

.aboutus__heeading__btm{
  font-weight : 800;
  font-size : 36px;
	line-height: 1;
  color : #FCEE21;
	margin-bottom: 71px;
	text-align: right;
}

.aboutus__block{
	position: relative;
}

.aboutus__block-1{
	margin-bottom: 151px;
}

.aboutus__block-2{
	margin-bottom: 116px;
}

@media screen and (max-width: 1385px) {
	.aboutus__container{
		margin-left: clamp(0px, calc(190px - (1380px - 100vw)), 190px);
		margin-right: 0;
	}
}

.aboutus__mhd{
	line-height: 0;
	z-index: 100;
	position: relative;
	margin-bottom: 15px;
}

.aboutus__txt{
  font-weight : 700;
  font-size : 18px;
  line-height : 2.38;
  color : #fff;
	width: 560px;
  margin-left: 8px;
}

.aboutus__img{
	position: absolute;
	top: 54px;
	left: 602px;
	line-height: 0;
	z-index: 50;
	width: 570px;
}

.aboutus__img img{
	width: 100%;
}

.aboutus__block-2 .aboutus__mhd{
	margin-left: 326px;
	margin-bottom: 30px;
}

.aboutus__block-2 .aboutus__txt{
	width: 560px;
	margin-left: 420px;
}

.aboutus__block-2 .aboutus__img{
	top: -124px;
	left: -184px;
}

.aboutus__block-3 .aboutus__mhd{
	margin-bottom: 23px;
}

.aboutus__block-3 .aboutus__img{
	top: -39px;
}

/*slides*/
.merchandise{
	height: 1023px;
}

.merchandise__container{
	width: 980px;
	margin: 0 auto;
}

.merchandise__hd{
	font-weight: 800;
  font-size : 36px;
  color : #fff;
	line-height: 1;
	text-align: center;
	margin-bottom: 24px;
}

.merchandise__txt{
  font-size : 18px;
  line-height : 1.555;
  color : #fff;
	margin-bottom: 51px;
	text-align: center;
	letter-spacing: .2px;
}

.slider{
	position: relative;
}

.slide__item{
	line-height: 0;
	margin: 0;
	width: 650px;
	height: 0;
	padding-top: 681px;
	transition: 0.3s ease-out;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	background: transparent no-repeat 50% 50%/520px;
}

.slide__item-1{
	background-image: url(../img/slide_ph_01.webp);
}

.slide__item-2{
	background-image: url(../img/slide_ph_02.webp);
}

.slide__item-3{
	background-image: url(../img/slide_ph_03.webp);
}

.slide__item.slick-center{
	background-size: 650px;
}

/*arrow*/
.slide__arrow__item{
	position: absolute;
	top: 235px;
	width: 74px;
	cursor: pointer;
	transition: 0.3s ease-out;
	line-height: 0;
}

.slide__arrow__item img{
	width: 100%;
}

.slide--prev{
	left: 28.6%;
}

.slide--next{
	right: 28.5%;
}

/* dots */
.dots-wrap {
	display: flex;
	justify-content: center;
  margin-top: 45px;
}

.dots-wrap li {
	width: 22px;
	height: 22px;
	margin: 0 18px;
	background: #fff;
	border-radius: 50%;
	cursor: pointer;
}

.dots-wrap li:hover,
.dots-wrap li.slick-active {
	background: #FCEE21;
}

.dots-wrap li button {
	display: none;
	appearance: none;
	outline: none;
	padding: 0;
	border: none;
	background-color: transparent;
}

/*準備ができたら表示*/
.lessonflow__open__slides,
.lessonflow__other__slides,
.lessonflow__responsible__slides {display: none;}
.lessonflow__open__slides.slick-initialized,
.lessonflow__other__slides.slick-initialized,
.lessonflow__responsible__slides.slick-initialized {display: block;}

@media screen and (max-width: 768px) {
	.aboutus{
		padding: 50px 0 0 0;
	}

	.aboutus__container{
		width: auto;
		padding: 0 20px;
		margin: 0 0 50px 0;
	}

	.aboutus__heading{
		margin-bottom: 30px;
	}

	.aboutus__heeading__btm{
		font-size : 20px;
		margin-bottom: 30px;
	}

	.aboutus__block-1{
		margin-bottom: 50px;
	}

	.aboutus__block-2{
		margin-bottom: 50px;
	}

	.aboutus__mhd{
		margin: 0 0 15px 0 !important;
	}

	.aboutus__mhd img{
		height: 65px;
	}

	.aboutus__txt{
		font-weight : 500;
		font-size : 16px;
		line-height : 1.875;
		color : #fff;
		width: auto !important;
		margin-left: 0 !important;
		margin-bottom: 15px;
	}

	.aboutus__img{
		position: relative;
		top: auto !important;
		left: auto !important;
		width: 100%;
	}

	/*slides*/
	.merchandise{
		height: auto;
		padding-bottom: 30px;
		overflow: hidden;
	}

	.merchandise__container{
		width: auto;
	}

	.merchandise__hd{
		font-size : 20px;
		margin-bottom: 20px;
	}

	.merchandise__txt{
		font-size : 16px;
		line-height : 1.65;
		margin-bottom: 30px;
		text-align: left;
		margin: 0 20px;
		margin-bottom: 30px;
	}

	.slider{
		position: relative;
	}

	.slide__item{
		width: 280px;
		padding-top: 390px;
		background-size: 224px;
	}

	.slide__item-1{
	background-image: url(../img/slide_ph_01_sp.webp);
}

.slide__item-2{
	background-image: url(../img/slide_ph_02_sp.webp);
}

.slide__item-3{
	background-image: url(../img/slide_ph_03_sp.webp);
}

.slide__item.slick-center{
	background-size: 280px;
}

	/*arrow*/
	.slide__arrow__item{
		top: 80px;
		width: 40px;
	}

	.slide--prev{
		left: 5%;
	}

	.slide--next{
		right: 5%;
	}

	/* dots */
	.dots-wrap {
		margin-top: 30px;
	}

	.dots-wrap li {
		width: 15px;
		height: 15px;
		margin: 0 10px;
	}
}

/*ABOUT JOB
--------------------------------------------------*/
.job{
	padding-top: 441px;
	background: #F1F1F1;
}

.job__container{
	width: 980px;
	margin: 0 auto;
	position: relative;
}

.job__heading{
	position: absolute;
	top: -242px;
	left: -142px;
}

.job__block{
	position: relative;
	margin-bottom: 52px;
}

.job__block-2{
	padding-top: 139px;
	margin-bottom: 51px;
}

.job__mhd{
  font-weight: 800;
	font-size : 42px;
	line-height: 1;
	margin-bottom: 39px;
}

.job__txt{
  font-size : 16px;
  line-height : 2.68;
	width: 475px;
}

.job__ph{
	line-height: 0;
	width: 560px;
	position: absolute;
	top: -39px;
	right: -100px;
}

.job__block-2 .job__ph{
	top: 100px;
}

.job__ph img{
	width: 100%;
}

.job__flow{
	padding-bottom: 50px;
}

.job__flow__ttl{
	line-height: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	font-weight: 800;
	margin-bottom: 49px;
}

.job__flow__ttl--en{
	font-size : 20px;
  color : #004EA2;
	margin-bottom: 16px;
}

.job__flow__ttl--ja{
  font-size : 36px;
}

.flow__list{
	display: flex;
}

.flow__item{
	background: #fff;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.05);
	width: 220px;
	height: 200px;
	position: relative;
	padding-top: 38px;
	margin-left: 33px;
	box-sizing: border-box;
}

.flow__item::before{
	content: '';
	display: block;
	background: url(../img/job_flow_arrow.svg) no-repeat 0 0/100%;
	width: 16px;
	height: 27px;
	position: absolute;
	top: 86px;
	left: -24px;
}

.flow__item:first-child{
	margin-left: 0;
}

.flow__item:first-child::before{
	display: none;
}

.flow__no{
	width: 220px;
	position: absolute;
	top: -24px;
	left: 0;
	text-align: center;
  font-size : 40px;
	line-height: 1;
  color : #004EA2;
	font-weight: 800;
}

.flow__ttl{
	font-weight: 800;
  font-size : 22px;
	line-height: 1;
  color : #004EA2;
	margin-bottom: 25px;
	text-align: center;
}

.flow__txt{
  font-size : 16px;
  line-height : 1.75;
	width: 160px;
	text-align: center;
	margin: 0 auto;
}

.job__detail{
	width: 475px;
	background: #fff;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.05);
	padding: 20px 16px 17px 20px;
	margin-top: 10px;
}

.job__detail__ttl{
  font-weight : 700;
  font-size : 18px;
  line-height : 1;
  color : #004EA2;
	margin-bottom: 8px;
}

.job__detail__txt{
  font-size : 16px;
  line-height : 1.625;
}

.job__detail__txt strong{
	font-weight: 700;
}

.job__schedule{
	background: transparent no-repeat top 50% left 50%/100%;
	padding-top: 58px;
}

@media screen and (max-width: 1600px) {
	.job__schedule{
		background-size: 1600px;
	}
}

.job__schedule-1{
	background-image: url(../img/job_01_bg.webp);
	height: 593px;
}

.job__schedule-2{
	background-image: url(../img/job_02_bg.webp);
	height: 548px;
}

.job__schedule__inner{
	width: 980px;
	margin: 0 auto;
	position: relative;
}

.job__schedule__ttl{
	position: absolute;
	top: 11px;
	left: 59px;
	display: flex;
	flex-direction: column;
	line-height: 1;
	color: #fff;
}

.job__schedule__ttl--en{
	font-weight: 800;
	font-size : 14px;
	margin-bottom: 16px;
}

.job__schedule__ttl--ja{
	font-weight: 800;
	font-size : 28px;	
}

.schedule__tbl{
	margin: 0 0 49px 344px;
}

.job__schedule-2 .schedule__tbl{
	margin: 0 0 39px 294px;
}

.schedule__tbl th{
	width: 145px;
	text-align: right;
	font-weight: 800;
  font-size : 20px;
	line-height: 1;
  color : #fff;
	letter-spacing: 0.3px;
}

.schedule__tbl td{
  font-size : 18px;
  line-height : 2.38;
	 color : #fff;
	 padding: 4px 0 31px 80px;
	 position: relative;
}

.job__schedule-2 .schedule__tbl td{
	 padding: 3px 0 4px 80px;
}

.schedule__tbl td::before{
	content: '';
	display: block;
	width: 14px;
	height: 14px;
	border-radius: 14px;
	background: #fff;
	position: absolute;
	top: 20px;
	left: 33px;
}

.schedule__tbl tr:last-child td{
	padding-bottom: 5px;
}

.schedule__tbl td::after{
	content: '';
	display: block;
	width: 1px;
	height: 100%;
	background: #fff;
	position: absolute;
	top: 0;
	left: 39px;
}

.job__btn{
	width: 500px;
	height: 100px;
	margin: 0 auto;	
}

.job__btn a{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
  font-weight : 700;
  font-size : 28px;
  color : #004EA2;
	background: #fff url(../img/job_btn_arrow.svg) no-repeat top 50% right 20px;
}

@media screen and (min-width: 769px) {
	.job__btn a:hover{
			opacity: .6;
	}
}

@media screen and (max-width: 768px) {
	.job{
		padding-top: 50px;
	}

	.job__container{
		width: auto;
		padding: 0 20px;
	}

	.job__heading{
		position: relative;
		top: auto;
		left: auto;
		margin-bottom: 30px;
	}

	.job__block{
		margin-bottom: 40px;
	}

	.job__block-2{
		padding-top: 30px;
		margin-bottom: 30px;
	}

	.job__mhd{
		font-size : 20px;
		margin-bottom: 20px;
	}

	.job__txt{
		font-size : 16px;
		line-height : 1.875;
		width: auto;
		margin-bottom: 20px;
	}

	.job__ph{
		width: 100%;
		position: relative;
		top: auto !important;
		right: auto;
	}

	.job__flow{
		padding-bottom: 30px;
	}

	.job__flow__ttl{
		margin-bottom: 30px;
	}

	.job__flow__ttl--en{
		font-size : 14px;
		color : #004EA2;
		margin-bottom: 16px;
	}

	.job__flow__ttl--ja{
		font-size : 20px;
	}

	.flow__list{
		width: 300px;
		margin: 0 auto;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	.flow__item{
		width: 140px;
		height: 140px;
		padding-top: 20px;
		margin-left: 0;
		box-sizing: border-box;
		margin-bottom: 30px;
	}

	.flow__item::before{
		width: 10px;
		height: 19px;
		top: 62px;
		left: -14px;
	}

	.flow__no{
		width: 140px;
		top: -15px;
		font-size : 26px;
	}

	.flow__ttl{
		font-size : 16px;
		margin-bottom: 15px;
	}

	.flow__txt{
		font-size : 14px;
		line-height : 1.75;
		width: 120px;
	}

	.job__detail{
		width: 100%;
		box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
		padding: 15px;
		margin: 10px 0 20px 0;
	}

	.job__detail__ttl{
		font-size : 16px;
		margin-bottom: 7px;
	}

	.job__detail__txt{
		font-size : 14px;
	}

	.job__schedule{
		padding: 30px 0;
		height: auto !important;
		background-position: top 50% left 50%;
		background-size: auto 100%;
	}

	.job__schedule__inner{
		width: auto;
		padding: 0 20px;
	}

	.job__schedule__ttl{
		position: relative;
		top: auto;
		left: auto;
		margin-bottom: 20px;
	}

	.job__schedule__ttl--en{
		font-size : 12px;
		margin-bottom: 10px;
	}

	.job__schedule__ttl--ja{
		font-size : 20px;	
	}

	.schedule__tbl{
		margin: 0 0 30px 10px !important;
	}

	.schedule__tbl th{
		width: fit-content;
		font-size: 15px;
		white-space: nowrap;
	}

	.schedule__tbl td{
		font-size : 14px;
		line-height : 1.75;
		padding: 4px 0 10px 40px !important;
	}

	.schedule__tbl td::before{
		width: 10px;
		height: 10px;
		top: 10px;
		left: 13px;
	}

	.schedule__tbl tr:last-child td{
		padding-bottom: 3px !important;
	}

	.schedule__tbl td::after{
		left: 18px;
	}

	.job__btn{
		width: 200px;
		height: 60px;
		margin: 0 auto;	
	}

	.job__btn a{
		font-size : 18px;
		color : #004EA2;
		background: #fff url(../img/job_btn_arrow.svg) no-repeat top 50% right 10px;
	}
}

/*STAFF VOICE
--------------------------------------------------*/
.voice{
	padding: 149px 0 138px 0;
	background: #F1F1F1;
}

.voice__container{
	width: 980px;
	margin: 0 auto;
}

.voice__heading{
	text-align: center;
	margin-bottom: 51px;
}

.voice__list{
	width: 860px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}

.voice__tag{
	font-weight: 800;
  font-size : 24px;
	line-height: 1;
  color : #333;
	margin-bottom: 13px;
}

.voice__item{
	width: 400px;
	height: 225px;
}

.voice__item video{
	width: 100%;
	height: 100%;
}

@media screen and (max-width: 768px) {
	.voice{
		padding: 50px 0;
	}

	.voice__container{
		width: auto;
		padding: 0 20px;
	}

	.voice__heading{
		text-align: center;
		margin-bottom: 40px;
	}

	.voice__list{
		width: 300px;
		margin: 0 auto;
		display: block;
	}

	.voice__tag{
		font-size : 18px;
		margin-bottom: 10px;
	}

	.voice__item{
		width: 300px;
		height: 169px;
		margin-bottom: 50px;
	}
}

/*JOB SEARCH
--------------------------------------------------*/
.search{
	background: url(../img/search_bg.webp) no-repeat 50% 0/cover;
	padding: 99px 0 100px 0;
}

.search__container{
	width: 980px;
	margin: 0 auto;
}

.search__heading{
	text-align: center;
	margin-bottom: 48px;
}

.search__block{
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.05);
	background: #fff;
	padding: 63px 53px 45px 51px;
	display: flex;
	justify-content: space-between;
}

.search__type{
	width: 499px;	
}

.search__area{
	width: 310px;
}

.search__mhd{
	font-weight: 800;
  font-size : 24px;
	line-height: 1;
  color : #004EA2;
	text-align: center;
}

.search__type__list{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 32px 0 37px 0;
}

.search__type__item{
	width: 240px;
	height: 70px;
	margin-bottom: 20px;
}

.search__type__item a{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	background:#004EA2 url(../img/search_link_arrow_01.svg) no-repeat top 50% right 20px;
  font-weight : 700;
  font-size : 18px;
  color : #fff;
}

.search__area__txt{
  font-weight : 700;
  font-size : 18px;
  color : #004EA2;
	margin: 10px 0 22px 0;
}

@media screen and (min-width: 769px) {
		.search__type__item a:hover{
			opacity: .6;
	}
}

@media screen and (max-width: 768px) {
	.search{
		background: url(../img/search_bg.webp) no-repeat 50% 0/cover;
		padding: 50px 0 100px 0;
	}

	.search__container{
		width: auto;
		padding: 0 20px;
	}

	.search__heading{
		margin-bottom: 10px;
	}

	.search__heading img{
		height: 60px;
	}

	.search__block{
		box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
		padding: 30px 20px;
		display: block;
	}

	.search__type{
		width: 100%;
		margin-bottom: 30px;
	}

	.search__area{
		width: 100%;	
	}

	.search__mhd{
		font-size : 18px;
	}

	.search__type__list{
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		margin: 20px 0 20px 0;
	}

	.search__type__item{
		width: 48%;
		height: 50px;
		margin-bottom: 10px;
	}

	.search__type__item a{
		background:#004EA2 url(../img/search_link_arrow_01.svg) no-repeat top 50% right 10px/8px;
		font-size : 16px;
		line-height: 1.25;
	}

	.search__area__txt{
		font-size : 16px;
		margin: 10px 0 15px 0;
		text-align: center;
	}
}

/*page top
--------------------------------------------------*/
.floating__btm__block{
	display: none;
}

@media screen and (max-width: 768px) {
	.floating__btm__block{
		position: sticky;
		bottom: 0;
		left: 0;
		z-index: 300;
		width: 100%;
		display: block;
	}

	.floating__btm__btn{
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 50px;
		z-index: 300;
	}

	.floating__btm__btn a{
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: 100%;
		background: #044EA2 url(../img/header_nav_arrow.svg) no-repeat top 50% right 20px/8px;
		font-weight : 700;
		font-size : 18px;
		line-height : 1;
		letter-spacing : 4.4px;
		color : #fff;
	}
}

/*フッター
--------------------------------------------------*/
.footer p,
.footer a{
	color: #000;
}

.footer{
	min-width: 1200px;
}

.footer__container{
	padding: 57px 47px 49px 51px;
	display: flex;
	justify-content: space-between;
}

.footerLink__list{
	display: flex;
}

.footerLink__item{
  font-size : 14px;
  letter-spacing : 0.7px;
	line-height: 2;
	position: relative;
	padding-left: 82px;
}

.footerLink__item::before{
	content: '';
	display: block;
	width: 1px;
	height: 19px;
	background: #000;
	position: absolute;
	top: 5px;
	left: 45px;
}

.footerLink__item:first-child::before{
	display: none;
}

.footerLink__item:first-child{
	padding-left: 0;
}

.copyright{
  font-size : 14px;
  letter-spacing : 0.7px;
	line-height: 1;
	padding-top: 9px;
}

.footerLink__item a:hover{
	text-decoration: underline;
}

@media screen and (max-width: 768px) {
	.footer{
		min-width: auto;
	}

	.footer__container{
		padding: 20px 20px 25px 20px;
		flex-direction: column;
		align-items: center;
	}

	.footerLink__list{
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}

	.footerLink__item{
		font-size : 12px;
		letter-spacing : 0;
		padding-left: 30px;
	}

	.footerLink__item::before{
		height: 14px;
		top: 5px;
		left: 15px;
	}

	.copyright{
		font-size : 10px;
		letter-spacing : 0;
	}
}