@charset "utf-8";

/* ========================================================================================

Name: recruit.css

Description: Recruit Page Layout Settings

Update: 2020.03.13

======================================================================================== */


/* Navigation Setting
-------------------------------------------------- */

/* #page-home #page-header {
	top:-100px;
	opacity:0;
	transition: all 1.2s cubic-bezier(0.19, 1, 0.22, 1);
} */

/* After Scrolled */

/* #page-home.scrolled  #page-header {
	top:0;
	opacity:1;
	box-shadow:0px 4px 12px -6px #ddd;
} */

#page-home.scrolled  #header-button-network {
	top:-100px;
	opacity:0;
}

#page-home.scrolled  #header-button-sns {
	top:-100px;
	opacity:0;
}

#header-button-sns {
	position:fixed;
	width:300px;
	right:153px;
	top:33px;
	font-size:0;
	transition: all 0.4s cubic-bezier(0.19, 1, 0.22, 1);
	z-index:200;
	text-align:right;
	font-size:0;
}

#header-button-sns ul.btn_language a {
	font-size:13px;
}

#header-button-sns ul.btn_language {
	margin-right:29px;
}

#header-button-sns ul.btn_language li.active,
#header-button-sns ul.btn_language li:hover {
	border-bottom:1px solid #FFF;
}
#header-button-sns ul.btn_language li.active a,
#header-button-sns ul.btn_language a:hover {
	color:#FFFFFF;
}


#header-button-sns ul {
	display:inline-block;
}
#header-button-sns ul li {
	display:inline-block;
	font-size:18px;
	line-height:1.67em;
	margin:0 9px;
}
#header-button-sns ul li a {
	display:block;
	color:#fff;
}
#header-button-sns ul li a:hover {
	color:#01a1df;
}



#header-button-network {
	position:fixed;
	width:100px;
	height:100px;
	left:0;
	top:0;
	font-size:0;
	z-index:200;
	transition: all 0.4s cubic-bezier(0.19, 1, 0.22, 1);
}
#header-button-network ul li {
	position:absolute;
	display:inline-block;
	width:100px;
	height:100px;
	font-size:11px;
	line-height:1em;
	color:#FFFFFF;
}
#header-button-network ul li:hover {
	cursor:pointer;
}

#header-button-network ul li.btn-network {
	background-color:#01a1df;
	left:0;
	top:0;
}

#header-button-network ul li a {
	display:block;
	width:100%;
	height:100%;
}

#header-button-network ul li a > div {
	position:absolute;
	width:26px;
	height:26px;
	left:50%;
	top:30px;
	margin-left:-13px;
}
#header-button-network ul li > p {
	position:absolute;
	left:0;
	right:0;
	bottom:20px;
}

#header-button-network li.btn-network  div span {
	position:absolute;
	display:block;
	width:5px;
	height:5px;
	background-color:#FFFFFF;
	transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}
#header-button-network li.btn-network  div span:nth-child(1),
#header-button-network li.btn-network  div span:nth-child(2),
#header-button-network li.btn-network  div span:nth-child(3) {
	top:5px;
}
#header-button-network li.btn-network  div span:nth-child(4),
#header-button-network li.btn-network  div span:nth-child(5),
#header-button-network li.btn-network  div span:nth-child(6) {
	top:11px;
}
#header-button-network li.btn-network  div span:nth-child(7),
#header-button-network li.btn-network  div span:nth-child(8),
#header-button-network li.btn-network  div span:nth-child(9) {
	top:17px;
}
#header-button-network li.btn-network  div span:nth-child(1),
#header-button-network li.btn-network  div span:nth-child(4),
#header-button-network li.btn-network  div span:nth-child(7) {
	left:5px;
}
#header-button-network li.btn-network  div span:nth-child(2),
#header-button-network li.btn-network  div span:nth-child(5),
#header-button-network li.btn-network  div span:nth-child(8) {
	left:11px;
}
#header-button-network li.btn-network  div span:nth-child(3),
#header-button-network li.btn-network  div span:nth-child(6),
#header-button-network li.btn-network  div span:nth-child(9) {
	left:17px;
}

@media screen and (min-width: 768px){
	
	#header-button-network li.btn-network:hover  div span:nth-child(1),
	#header-button-network li.btn-network:hover  div span:nth-child(2),
	#header-button-network li.btn-network:hover  div span:nth-child(3) {
		top:1px;
	}
	#header-button-network li.btn-network:hover  div span:nth-child(7),
	#header-button-network li.btn-network:hover  div span:nth-child(8),
	#header-button-network li.btn-network:hover  div span:nth-child(9) {
		top:21px;
	}
	#header-button-network li.btn-network:hover  div span:nth-child(1),
	#header-button-network li.btn-network:hover  div span:nth-child(4),
	#header-button-network li.btn-network:hover  div span:nth-child(7) {
		left:1px;
	}
	#header-button-network li.btn-network:hover  div span:nth-child(3),
	#header-button-network li.btn-network:hover  div span:nth-child(6),
	#header-button-network li.btn-network:hover  div span:nth-child(9) {
		left:21px;
	}
}

#page-home #page-heading.index-page {
	position: relative;
	height: calc(615 / 1280 * 100vw);
  max-height: 615px;
}

.bg-area {
    position:absolute;
	width:100%;
	height:780px;
    height: 100%;
    overflow: hidden;
}
.bg-area::after {
	position: absolute;
	bottom: -1px;
	left: 0;
	content: "";
	display: block;
	width: 100%;
	height: calc(69 / 1280* 100vw);
	background: url(../img/home/bg_bottom.svg) center bottom / 100% no-repeat;
	z-index: 1;
}

.swiper-top-main {
 	width:100%;
	height:780px;
  height: 100%;
}

.swiper-top-main .swiper-slide {
  background-color: #f2f2f2;
}
.swiper-top-main .swiper-slide > div {
}
.bg-area .swiper-slide-active > div ,
.swiper-slide-duplicate-active > div ,
.swiper-slide-prev > div {
  animation:slide-view 8000ms ease-out both;
}

.bg-area .swiper-slide > div {
	/*
  position:absolute;
	width:100%;
	height:780px;
	z-index:1;*/
  width:100%;
	height:100%;
}

.bg-area .swiper-slide > div a {
  display: block;
}

.bg-area .swiper-slide > div a img {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -307.5px;
  margin-left: -700px;
}

#page-heading.kv-slide .inner {
  pointer-events: none;
}
#page-heading.kv-slide .inner .swiper-top-nav {
  pointer-events: auto;
}

.swiper-top-nav {
	position: absolute;
	right: 0;
	bottom: 54px;
	z-index: 1;
	display: flex;
	color: #01a1df;
	font-size: 18px;
}
.swiper-top-nav > div {
	margin: 0 11px;
	width: 50px;
	height: 50px;
	border-radius: 25px;
	background: #FFF;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}

/*
.bg-area .main-slide01 > div {
	background:url(../img/home/bg_main01.jpg) no-repeat center center;
    background-size: cover;
}
.bg-area .main-slide02 > div {
	background:url(../img/home/bg_main02.jpg) no-repeat center center;
    background-size: cover;
}
.bg-area .main-slide03 > div {
	background:url(../img/home/bg_main03.jpg) no-repeat center center;
    background-size: cover;
}
.bg-area .main-slide03 > div {
	background:url(../img/home/bg_main04.jpg) no-repeat center center;
    background-size: cover;
}
*/

@keyframes slide-view{
  
	0%{transform:scale(1) rotate(0.001deg)}
	100%{transform:scale(1.08) rotate(0deg)}
  
}


#page-home #page-heading h1 .tag-line {
	font-size:36px;
	font-weight:500;
	line-height:1em;
	padding:0 0 40px;
}

#page-home #page-heading h1 .logo {
	font-size:15px;
	line-height:1em;
}

#page-home .pct-ribbon {
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: 1;
}

#scroll-down {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 50px;
    width: 50px;
    height: 120px;
    margin: auto;
    z-index: 2;
    text-align: center;
}

#scroll-down a {
    display: block;
    color: #fff;
    width: 50px;
    height: 100%;
}

#scroll-down .line {
    position: absolute;
    display: block;
    width: 1px;
    height: 95px;
    background-color: #fff;
    margin: auto;
    left: 0;
    right: 0;
    top: 0;
    animation:scroll-down 1500ms ease-out both;
    animation-iteration-count: infinite;
}

#scroll-down .text {
    position: absolute;
    display: block;
    margin: auto;
    bottom: 0;
    width: 100%;
}

#banner-firstview-pc {
	position:absolute;
	left:40px;
	bottom:40px;
	z-index:3;
}

#banner-firstview-pc a {
	display:block;
	background-color:#fff;
}

#banner-firstview-sp {
	display:none;
}


@keyframes scroll-down {
	0%{
        height:0px;
		opacity:1;
    }
	50%{
        height:95px;
		opacity:1;
    }
	100%{
        height:95px;
		opacity:0;
    }
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
	#page-home #page-heading.index-page {
		height: 615px;
	}
}

@media screen and (max-width: 767px){
	
	/* #page-home #page-header {
		top:-100px;
		opacity:0;
		transition: all 1.2s cubic-bezier(0.19, 1, 0.22, 1);
	} */
	
	/* After Scrolled */
	
	/* #page-home.scrolled  #page-header {
		top:0;
		opacity:1;
	}
	
	#page-home.scrolled  #header-button-network {
		top:-50px;
		opacity:0;
	}
	
	#page-home.scrolled  #header-button-sns {
		top:-100px;
		opacity:0;
	} */
	
	
	#header-button-sns {
		position:fixed;
		width:170px;
		right:60px;
		top:12px;
		font-size:0;
		transition: all 0.4s cubic-bezier(0.19, 1, 0.22, 1);
		z-index:200;
		text-align:right;
		font-size:0;
		display: none;
	}
	
	#header-button-sns ul.btn_language a {
		font-size:11px;
	}
	
	#header-button-sns ul.btn_language {
		margin-right:10px;
	}
	
	#header-button-sns ul.btn_language li.active,
	#header-button-sns ul.btn_language li:hover {
		border-bottom:1px solid #FFF;
	}
	#header-button-sns ul.btn_language li.active a,
	#header-button-sns ul.btn_language a:hover {
		color:#FFFFFF;
	}
	
	
	#header-button-sns ul {
		display:inline-block;
	}
	#header-button-sns ul li {
		display:inline-block;
		font-size:14px;
		line-height:1.67em;
		margin:0 6px;
	}
	#header-button-sns ul li a {
		display:block;
		color:#fff;
	}
	#header-button-sns ul li a:hover {
		color:#01a1df;
	}
	
	
	
	#header-button-network {
		position:fixed;
		width:50px;
		height:50px;
		left:0;
		top:0;
		font-size:0;
		z-index:200;
		transition: all 0.4s cubic-bezier(0.19, 1, 0.22, 1);
	}
	#header-button-network ul li {
		position:absolute;
		display:inline-block;
		width:50px;
		height:50px;
		font-size:11px;
		line-height:1em;
		color:#FFFFFF;
	}
	#header-button-network ul li:hover {
		cursor:pointer;
	}
	
	#header-button-network ul li.btn-network {
		background-color:#01a1df;
		left:0;
		top:0;
	}
	#header-button-network ul li.btn-network a {
		display:block;
	}
	
	#header-button-network ul li a > div {
		position:absolute;
		width:26px;
		height:26px;
		left:50%;
		top:6px;
		margin-left:-13px;
	}
	#header-button-network ul li > p {
		position:absolute;
		left:0;
		right:0;
		bottom:5px;
	}
	
	#header-button-network li.btn-network  div span {
		position:absolute;
		display:block;
		width:5px;
		height:5px;
		background-color:#FFFFFF;
		transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
	}
	#header-button-network li.btn-network  div span:nth-child(1),
	#header-button-network li.btn-network  div span:nth-child(2),
	#header-button-network li.btn-network  div span:nth-child(3) {
		top:5px;
	}
	#header-button-network li.btn-network  div span:nth-child(4),
	#header-button-network li.btn-network  div span:nth-child(5),
	#header-button-network li.btn-network  div span:nth-child(6) {
		top:11px;
	}
	#header-button-network li.btn-network  div span:nth-child(7),
	#header-button-network li.btn-network  div span:nth-child(8),
	#header-button-network li.btn-network  div span:nth-child(9) {
		top:17px;
	}
	#header-button-network li.btn-network  div span:nth-child(1),
	#header-button-network li.btn-network  div span:nth-child(4),
	#header-button-network li.btn-network  div span:nth-child(7) {
		left:5px;
	}
	#header-button-network li.btn-network  div span:nth-child(2),
	#header-button-network li.btn-network  div span:nth-child(5),
	#header-button-network li.btn-network  div span:nth-child(8) {
		left:11px;
	}
	#header-button-network li.btn-network  div span:nth-child(3),
	#header-button-network li.btn-network  div span:nth-child(6),
	#header-button-network li.btn-network  div span:nth-child(9) {
		left:17px;
	}
		
	#page-home #page-heading.index-page {
		height:390px;
    height: 530px;
		position:relative;
	}
	
	.bg-area {
		position:absolute;
		width:100%;
		height:390px;
    height: 530px;
		overflow: hidden;
	}
	.bg-area::after {
		height: calc(43 / 375 * 100vw);
		background: url(../img/home/bg_bottom_sp.svg) center bottom / 100% no-repeat;	
	}
	
	.swiper-top-main {
		width:100%;
		height:390px;
    height: 630px;
	}

	.swiper-top-nav {
		right: 10px;
		bottom: 36px;
	}
	
	.bg-area .swiper-slide-active > div ,
	.swiper-slide-duplicate-active > div ,
	.swiper-slide-prev > div {
		animation:slide-view 8000ms ease-out both;
	}
	
	.bg-area .swiper-slide > div {
		/*
		position:absolute;
		width:100%;
		height:780px;
		z-index:1;*/
		width:100%;
		height:100%;
	
	}

  .bg-area .swiper-slide > div a {
    display: block;
  }

  .bg-area .swiper-slide > div a img {
    width: 100%;
    height: auto;
    position: absolute;
    top: 0;
    left: 0;
    margin-top: 0;
    margin-left: 0;
  }

	.bg-area .main-slide01 > div {
		background:url(../img/home/bg_main01.jpg) no-repeat center center;
		background-size: cover;
	}
	.bg-area .main-slide02 > div {
		background:url(../img/home/bg_main02.jpg) no-repeat center center;
		background-size: cover;
	}
	.bg-area .main-slide03 > div {
		background:url(../img/home/bg_main03.jpg) no-repeat center center;
		background-size: cover;
	}
	
	@keyframes slide-view{
		0%{transform:scale(1) rotate(0.001deg)}
		100%{transform:scale(1.08) rotate(0deg)}
	}
	

	#page-home #page-heading h1 {
		margin-top:0;
	}
	
	#page-home #page-heading h1 .tag-line {
		font-size:20px;
		font-weight:500;
		line-height:1em;
		width:300px;
		margin:auto;
		padding:0 0 20px;
	}

	#page-home #page-heading h1 .logo {
		font-size:15px;
		line-height:1em;
		width:200px;
		margin:auto;
	}
	
	#page-home #page-heading h1 .tag-line img ,
	#page-home #page-heading h1 .logo img {
		width:100%;
		height:auto;
	}
	
	#page-home .pct-ribbon {
		position: absolute;
		right: 0;
		bottom: auto;
		bottom:0;
		z-index: 1;
	}
	#page-home .pct-ribbon img {
		width:220px;
		height:auto;
	}
	
	#scroll-down {
		display:none;
	}
	
	#banner-firstview-pc {
		display:none;
	}
	
	#banner-firstview-sp {
		display:block;
		width:250px;
		margin:20px auto 0;
	}
	
	#banner-firstview-sp img {
		width:100%;
		height:auto;
	}
		
}



/* Contents Area Setting
-------------------------------------------------- */

body#page-home > .inner {
	padding: 0;
}

#page-home main {
	background-color:#FFFFFF;
  padding-top: 100px;
}

#page-home #page-contents > .inner {
	width:auto;
	max-width:none;
	margin:0 auto;
	text-align:left;
	padding: 0 0 0;
	background-color:#FFFFFF;
}

#page-home .sec-base {
	width:auto;
	max-width:1080px;
	margin:auto;
}

.sec-home-main {
	margin:80px 0 0;
}

.sec-home-main > .inner {
	width:auto;
	max-width:1080px;
	margin:0 auto;
	text-align:left;
	position:relative;
	margin-top:40px;
}

.sec-home-main > .inner:before {
    content: "";
    position: absolute;
    background-color: #01a1df;
    width: 1px;
    height: 50px;
    margin: auto;
    top: -25px;
	left:0;
	right:0;
	z-index:10;
}

.sec-home-vision .block-text {
	position:relative;
	width: 72.22%;
	box-sizing:border-box;
	color:#fff;
    background: linear-gradient( 90deg, rgba(1, 161, 223, 1), rgba(80, 209, 241, 1));
	z-index:2;
}

.sec-home-vision .block-text .inner {
	padding:50px 44.87% 45px 10%;
}

.sec-home-vision .block-text h3 {
	font-size:50px;
	font-weight:500;
	line-height:1.33em;
}

.sec-home-vision .block-text p {
	margin-top:20px;
}

.sec-home-vision figure {
	position:absolute;
	top:70px;
	right:0;
	width:55.56%;
	z-index:3;
}

.sec-home-vision .box-gray {
	position:absolute;
	width:1100px;
	height:410px;
	right:140px;
	top:170px;
	background-color:#f2f3f7;
	z-index:1;
}

.sec-home-vision p.btn-base {
	text-align:left;
	margin-top:30px;
}

#page-contents .sec-home-vision .btn-base a {
    color: #01a1df;
	background:none;
	background-color:#fff;
}

.sec-home-innovation > .inner {
	width:auto;
	max-width:1400px;
}

.sec-home-innovation > .inner ul {
	width:auto;
	margin:0;
}

.sec-home-innovation > .inner ul li {
	box-sizing:border-box;
	width:33.33%;
	float:left;
	padding:0 20px;
}

.sec-home-innovation > .inner ul li figure {
	overflow:hidden;
}

.sec-home-innovation > .inner ul li > div ,
.sec-home-innovation > .inner ul li > div > div {
	position:relative;
	display:block;
}

.sec-home-innovation > .inner ul li > div::before , 
.sec-home-innovation > .inner ul li > div::after ,
.sec-home-innovation > .inner ul li > div > div::before , 
.sec-home-innovation > .inner ul li > div > div::after {
	position:absolute;
	content:"";
	display:block;
	background-color:#01a1df;
	z-index:1;
}

.sec-home-innovation > .inner ul li > div::before {
	left:0;
	top:0;
	height:2px;
	width:0%;
	transition: width 300ms;
}

.sec-home-innovation > .inner ul li > div::after {
	left:0;
	top:0;
	height:0%;
	width:2px;
	transition: height 300ms;
}

.sec-home-innovation > .inner ul li:hover > div::before {
	width:100%;
}

.sec-home-innovation > .inner ul li:hover > div::after {
	height:100%;
}

.sec-home-innovation > .inner ul li > div > div::before {
	right:0;
	bottom:0;
	height:2px;
	width:0%;
	transition: width 300ms;
}

.sec-home-innovation > .inner ul li > div > div::after {
	right:0;
	bottom:0;
	height:0%;
	width:2px;
	transition: height 300ms;
}

.sec-home-innovation > .inner ul li:hover > div > div::before {
	width:100%;
}

.sec-home-innovation > .inner ul li:hover > div > div::after {
	height:100%;
}


.sec-home-innovation > .inner .block-text {
	padding:25px 20px;
}

.sec-home-innovation > .inner h3 {
	font-size:18px;
	font-weight:500;
	line-height:1.67em;
}

.sec-home-innovation > .inner p {
	font-size:14px;
	line-height:2em;
	margin:10px 0 0;
}

.tag-innovation {
	width:auto;
	margin:10px -3px 0;
}

.tag-innovation span {
	display:inline-block;
	border:1px #01a1df solid;
	border-radius:10px;
	color:#01a1df;
	font-size:12px;
	font-weight:400;
	line-height:1em;
	padding:3px 10px 4px;
	margin:0 3px;
}


.sec-home-network {
	position:relative;
}

.sec-home-network > .inner {
	width:auto;
	max-width:720px;
    height: 420px;
	text-align:center;
    margin-bottom: 250px;
}

.sec-home-network .title-sub {
	font-family: 'Noto Serif JP', serif;
	font-size:35px;
	font-weight:500;
	line-height:1.67em;
	text-align:center;
	padding:40px 0 15px;
}

.sec-home-facility {
	position: relative;
	padding-bottom: 70px;
}
.sec-home-facility::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: #E0E0E0;
}

.sec-home-facility h2 {
	margin-bottom: 40px;
	font-size: 26px;
}

/* Facility List */
.facility-list {
	width: auto;
	max-width: 1080px;
	margin: auto;
	text-align: left;
}

.facility-list > ul {
	margin: 0 -12px;
}

.facility-list > ul:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	line-height: 0;
	font-size: 0;
	visibility: hidden;
}

.facility-list li {
	width: 25%;
	padding: 0 12px;
	margin-bottom: 40px;
	line-height:1.5em;
}

.facility-list li a:hover {
	text-decoration:underline !important;
}

.facility-list li > .inner img {
	transition:all ease-out 0.15s;
}

.facility-list li.fac-nophoto > .inner {
	border:1px #ddd solid;
	padding:0 20px 20px 20px;
	transition:all ease-out 0.15s;
}

.facility-list li.fac-nophoto > .inner:hover {
	border:1px #01a1df solid;
}

.facility-list li .label {
	display:table;
	font-size:12px;
	font-weight:500;
	line-height:1em;
	margin-top:18px;
}

.facility-list li .label span {
	display:table-cell;
	width:auto;
	min-width:80px;
	box-sizing:border-box;
	border:1px #01a1df solid;
	text-align:center;
	padding:3px 8px;
}

.facility-list li .label span.area {
	color:#fff;
	background-color:#01a1df;
}

.facility-list li .label span.category {
	color:#01a1df;
	background-color:#fff;
}

.facility-list li h3 {
	font-size:18px;
	font-weight:500;
	line-height:1.33em;
	margin-top:15px;
}

.facility-list li p {
	font-size:13px;
	line-height:1.67em;
	vertical-align:text-bottom;
}

.facility-list li p.txt-addr {
	margin-top:8px;
}

.facility-list li p.txt-link {
	margin-top:5px;
}

.facility-list.list-index-menu a i.fas {
	color:#01a1df;
	margin-left:7px;
	font-size:12px;
	vertical-align:top;
	padding:6px 0 0;
}

.facility-list .list-network li {
	display:none;
}

.facility-list .list-network li.hit-area.hit-category {
	display:block;
}

.btn-more {
	text-align: center;
}
.btn-more a {
	display: inline-block;
	width: 300px;
	line-height: 48px;
	border: 1px solid #C7C7C7;
	border-radius: 28px;
	font-size: 16px;
	color: #01A1DF;
	text-decoration: none !important;
	transition: background-color 300ms, color 300ms, border 300ms;
}
.btn-more a:hover {
	color: #FFF !important;
	background: #01A1DF;
	border: 1px solid #01A1DF;
}

.swiper-home-network {
	width:auto;
	max-width:720px;
	margin:auto;
	position:relative;
}

.swiper-network-prev,
.swiper-network-next {
    position: absolute;
    top: 50%;
	background:none;
	width:74px;
	height:74px;
	margin-top:-37px;
	color:#01a1df;
	font-size:26px;
	text-align:center;
	z-index:1;
	background-color: rgba(255,255,255,0.8);
	border-radius:2px;
}
.swiper-network-prev:hover,
.swiper-network-next:hover {
    cursor: pointer;
}
.swiper-network-prev i,
.swiper-network-next i {
	position:absolute;
	top:50%;
	left:0;
	margin-top:-14px;
	width:100%;
	font-size:28px;
	text-align:center;
}

.swiper-network-prev {
	left:-150px;
}

.swiper-network-next {
	right:-150px;
}

.swiper-network-prev i {
	padding-right:2px;
}

.swiper-network-next i {
	padding-left:2px;
}

.network-pagination {
	padding:20px 0;
}

.network-pagination .swiper-pagination-bullet {
	margin:0 5px;
}

.swiper-home-network dl {
	position:absolute;
	left:0;
	right:0;
	top:35%;
	color:#fff;
}

.swiper-home-network dl dt {
	font-size:35px;
	font-weight:500;
	line-height:1.67em;
}

.swiper-home-network dl dd {
	font-size:17px;
	line-height:2em;
	margin-top:10px;
}

#page-home .sec-company-recruit {
	width:100%;
	max-width:100%;
	margin:70px auto 0;
	display: flex;
}

.sec-company-recruit > div {
	position: relative;
	width:50%;
	height:calc(426 / 1280 * 100vw);
	overflow: hidden;
}
.sec-company-recruit > div h2 {
	position: absolute;
	top: 50px;
	left: 50px;
	font-size: 26px;
	line-height: 30px;
	z-index: 1;
	color: #333333;
}
.sec-company-recruit > div h2 i {
	margin-left: 1em;
	width: 30px;
	height: 30px;
	background: #fff;
	color: #01A1DF;
	font-size: 11px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 15px;
	vertical-align: top;
}
.sec-company-recruit > div a {
	display: block;
	width: 100%;
	height: 100%;
}
.sec-company-recruit > div a img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
}

.sec-home-yt {
	margin: 100px auto 0;
	width: auto;
	max-width: 1080px;
	text-align: left;
}
.sec-home-yt h2 {
	margin-bottom: 40px;
	font-size: 26px;
}
.sec-home-yt h2 i {
	font-size: 54px;
	color: #FD1701;
	vertical-align: sub;
}
.sec-home-yt > ul {
	margin: 0 -10px;
}
.sec-home-yt > ul:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	line-height: 0;
	font-size: 0;
	visibility: hidden;
}
.sec-home-yt > ul > li {
	float: left;
	box-sizing: border-box;
}
.sec-home-yt li {
	width: 25%;
	padding: 0 10px;
	margin-bottom: 40px;
	line-height: 1.5em;
}
.sec-home-yt li img {
	width: 100%;
}
.sec-home-yt li p {
	margin-top: 1em;
	line-height: 2em;
}

#page-home .sec-fb-insta {
	width:auto;
	margin:70px auto 0;
	padding: 0 0 60px;
}

.sec-fb-insta > .sns-wrapper {
	width:50%;
	text-align:center;
}

.sec-fb-insta > .sns-wrapper.block-left > .inner {
	padding:0 30px 0 0;
}

.sec-fb-insta > .sns-wrapper.block-right > .inner {
	padding:0 0 0 30px;
}

.sec-fb-insta > div h2 {
	margin:0 0 30px 0;
}

.sec-fb-insta .block-left {
	float:left;
}

.sec-fb-insta .block-right {
	float:right;
}

.list-insta-photo {
}

.list-insta-photo ul {
	width:auto;
	margin:0 -7px;
}

.list-insta-photo ul li {
	width:33.33%;
	box-sizing:border-box;
	padding:0 7px 14px;
	float:left;
}

.list-insta-photo ul li:hover {
	opacity:0.8;
}

.list-insta-photo ul li a {
	display:block;
}

.list-insta-photo ul li img {
	width:100%;
	height:auto;
}

.sec-kaikou-channel {
    padding-bottom: 70px;
}

.sec-kaikou-channel > .inner {
    position: relative;
    background: url(../img/home/bg_youtube.jpg) no-repeat center center;
    padding: 50px;
}

.sec-kaikou-channel > .inner > h2 {
    position: absolute;
    left: 8.7%;
    top: 50%;
    width: 37.78%;
  width: 33.148%;
}

.sec-kaikou-channel > .inner > h2 img {
    margin-top: -100%;
}

.youtube-video {
    width: auto;
    margin-left: 55.82%;
}

.video-inner {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
}

.video-inner iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
}

.title-sec-index {
	font-size: 26px;
}

.l-kaikoukai-pv {
  max-width: 800px;
  margin: 0 auto 0;
  padding-bottom: 100px;
}


@media screen and (max-width: 767px){
	
	body#page-home > .inner {
		padding: 0;
	}

  #page-home main {
    padding-top: 70px;
  }

	#page-home #page-contents > .inner {
		width:auto;
		max-width:none;
		margin:0 auto;
		text-align:left;
		padding: 0 0 0;
	}
	
	#page-home .sec-base {
		width:auto;
		max-width:1080px;
		margin:auto;
	}
	
	.sec-home-main {
		margin:30px 0 0;
	}
	
	.sec-home-main > .inner {
		width:auto;
		max-width:1080px;
		margin:0 auto;
		text-align:left;
		position:relative;
		margin-top:40px;
	}
	
	.sec-home-main > .inner:before {
		content: "";
		position: absolute;
		background-color: #01a1df;
		width: 1px;
		height: 40px;
		margin: auto;
		top: -20px;
		left:0;
		right:0;
		z-index:10;
	}

	.sec-home-facility h2 {
    margin-bottom: 30px;
    font-size: 20px;
	}
	
	.sec-home-vision .block-text {
		position:relative;
		width: 100%;
		box-sizing:border-box;
		color:#fff;
		background: linear-gradient( 90deg, rgba(1, 161, 223, 1), rgba(80, 209, 241, 1));
		z-index:2;
	}
	
	.sec-home-innovation {
		margin: 60px 0 0;
	}
	
	.sec-home-vision .block-text .inner {
		padding:230px 20px 25px 20px;
	}
	
	.sec-home-vision .block-text h3 {
		font-size:26px;
		font-weight:500;
		line-height:1.33em;
	}
	
	.sec-home-vision .block-text p {
		margin-top:10px;
	}
	
	.sec-home-vision figure {
		position:absolute;
		top:30px;
		right:auto;
		left:60px;
		width:300px;
		z-index:3;
	}
	
	.sec-home-vision .box-gray {
		position:absolute;
		width:1100px;
		height:410px;
		right:140px;
		top:170px;
		background-color:#f2f3f7;
		z-index:1;
	}
	
	.sec-home-vision p.btn-base {
		text-align:center;
		margin-top:20px;
	}
	
	#page-contents .sec-home-vision .btn-base a {
		color: #01a1df;
		background:none;
		background-color:#fff;
	}
	
	.sec-home-innovation > .inner {
		width:auto;
		max-width:1400px;
	}
	
	.sec-home-innovation > .inner ul {
		width:auto;
		margin:0;
	}
	
	.sec-home-innovation > .inner ul li {
		box-sizing:border-box;
		width:100%;
		float:none;
		padding:0;
		margin-top:10px;
	}
	
	.sec-home-innovation > .inner .block-text {
		padding:15px 15px;
	}
	
	.sec-home-innovation > .inner h3 {
		font-size:15px;
		font-weight:500;
		line-height:1.67em;
	}
	
	.sec-home-innovation > .inner p {
		font-size:13px;
		line-height:1.67em;
		margin:5px 0 0;
	}
	
	.tag-innovation {
		width:auto;
		margin:10px -3px 0;
	}
	
	.tag-innovation span {
		display:inline-block;
		border:1px #01a1df solid;
		border-radius:10px;
		color:#01a1df;
		font-size:10px;
		font-weight:400;
		line-height:1em;
		padding:3px 10px 4px;
		margin:0 3px;
	}
		
	.sec-home-network {
		position:relative;
		overflow:hidden;
	}
	
	.sec-home-network > .inner {
		width:auto;
		max-width:240px;
		height: 140px;
		text-align:center;
		margin-bottom: 180px;
	}

	.sec-home-network .swiper-slide img {
		width:100%;
		height:auto;
	}
	
	.sec-home-network .title-sub {
		font-family: 'Noto Serif JP', serif;
		font-size:20px;
		font-weight:500;
		line-height:1.67em;
		text-align:center;
		padding:10px 0 15px;
	}
	
	.swiper-home-network {
		width:auto;
		max-width:240px;
		margin:auto;
		position:relative;
	}
	
	.swiper-network-prev,
	.swiper-network-next {
		position: absolute;
		top: 50%;
		background:none;
		width:30px;
		height:30px;
		margin-top:-15px;
		color:#01a1df;
		font-size:13px;
		text-align:center;
		z-index:1;
		background-color: rgba(255,255,255,0.8);
		border-radius:2px;
	}
	.swiper-network-prev:hover,
	.swiper-network-next:hover {
		cursor: pointer;
	}
	.swiper-network-prev i,
	.swiper-network-next i {
		position:absolute;
		top:50%;
		left:0;
		margin-top:-9px;
		width:100%;
		font-size:20px;
		text-align:center;
	}
	
	.swiper-network-prev {
		left:-20px;
	}
	
	.swiper-network-next {
		right:-20px;
	}
	
	.swiper-network-prev i {
		padding-right:2px;
	}
	
	.swiper-network-next i {
		padding-left:2px;
	}
	
	.network-pagination {
		padding:20px 0;
	}
	
	.network-pagination .swiper-pagination-bullet {
		margin:0 5px;
	}
	
	.swiper-home-network dl {
		position:absolute;
		left:10px;
		right:10px;
		top:20%;
		color:#fff;
	}
	
	.swiper-home-network dl dt {
		font-size:18px;
		font-weight:500;
		line-height:1.67em;
	}
	
	.swiper-home-network dl dd {
		font-size:11px;
		line-height:1.67em;
		margin-top:5px;
	}

	.sec-home-facility {
		padding-bottom: 40px;
	}
	.sec-home-facility::after {
		content: "";
		position: absolute;
		bottom: 0;
		left: -20px;
		width: calc(100% + 40px);
		height: 1px;
		background: #E0E0E0;
	}
	/* Facility List */
	.facility-list li {
		padding: 0 5px;
		width: 50%;
	}
	
	.facility-list li.fac-nophoto > .inner {
		border:1px #ddd solid;
		padding:0 20px 20px 20px;
	}
	
	.facility-list li .label {
		display:table;
		font-size:10px;
		font-weight:500;
		line-height:1em;
		margin-top:10px;
	}
	
	.facility-list li .label span {
		display:table-cell;
		width:auto;
		min-width:50px;
		box-sizing:border-box;
		border:1px #01a1df solid;
		text-align:center;
		padding:3px 8px;
	}
	
	.facility-list li .label span.area {
		color:#fff;
		background-color:#01a1df;
	}
	
	.facility-list li .label span.category {
		color:#01a1df;
		background-color:#fff;
	}
	
	.facility-list li h3 {
		font-size:15px;
		font-weight:500;
		line-height:1.33em;
		margin-top:15px;
	}
	
	.facility-list li p {
		font-size:10px;
		line-height:1.67em;
	}
	
	.facility-list li p.txt-addr {
		margin-top:8px;
	}
	
	.facility-list li p.txt-link {
		margin-top:5px;
	}
	
	.facility-list.list-index-menu a i.fas {
		color:#01a1df;
		margin-left:7px;
		font-size:12px;
		vertical-align:top;
		padding:2px 0 0;
	}
	
	.facility-list .list-network li {
		margin-bottom:30px;
		line-height:1.5em;
		width:100%;
		float:none;
		display:none;
	}
	.facility-list .list-network li.fac-nophoto {
		margin-bottom:20px;
	}
	
	.facility-list .list-network li.hit-area.hit-category {
		display:block;
	}

	.btn-more a {
		width: 235px;
		border-width: 2px;
	}
	
	#page-home .sec-company-recruit {
		width:100%;
		margin:40px auto 0;
		display: block;
	}
	.sec-company-recruit > div {
		width: 100%;
	}
	.sec-company-recruit > div h2 {
		top: 20px;
		left: 20px;
		font-size: 20px;
	}
	
	.sec-home-yt {
		margin-top: 60px;
	}
	.sec-home-yt h2 {
		margin-bottom: 30px;
		font-size: 20px;
	}
	.sec-home-yt h2 i {
		font-size: 41px;
	}
	.sec-home-yt > ul > li {
		float: none;
		width: 100%;
		margin-bottom: 25px;
		display: flex;
	}
	.sec-home-yt li a {
		margin-right: 1em;
		width: calc(120 / 375 * 100vw);
		display: block;
		flex-shrink: 0;
	}
	.sec-home-yt li p {
		margin-top: 0;
		font-size: 13px;
    line-height: 1.5em;
	}


	#page-home .sec-fb-insta {
		width:auto;
		margin:0 auto 0;
		padding: 0 0 40px;
	}
	
	.sec-fb-insta > .sns-wrapper {
		width:100%;
		text-align:center;
		margin-top:50px;
	}
	
	.sec-fb-insta > .sns-wrapper.block-left > .inner {
		padding:0 0 0 0;
	}
	
	.sec-fb-insta > .sns-wrapper.block-right > .inner {
		padding:0 0 0 0;
	}
	
	.sec-fb-insta > div h2 {
		margin:0 0 20px;
	}
	
	.sec-fb-insta > div h2 img {
		width:180px;
		height:auto;
	}
	
	.sec-fb-insta .block-left {
		float:none;
	}
	
	.sec-fb-insta .block-right {
		float:none;
	}
    
.sec-kaikou-channel {
    padding-bottom: 0;
}

.sec-kaikou-channel > .inner {
    position: relative;
    background: url(../img/home/bg_youtube.jpg) no-repeat center center;
    padding: 20px;
    margin: 0 -20px;
}

.sec-kaikou-channel > .inner > h2 {
    position: relative;
    left: inherit;
    top: inherit;
    width: 204px;
    margin: auto;
}

.sec-kaikou-channel > .inner > h2 img {
    margin-top: 0;
}

.youtube-video {
    width: auto;
    margin-left: 0;
    margin-top: 20px;
}

.video-inner {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
}

.video-inner iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
}

.title-sec-index {
	font-size: 20px;
}

.l-kaikoukai-pv {
  padding-bottom: 60px;
}
		
		
}

