body{
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","游ゴシック Medium","Yu Gothic Medium","游ゴシック","Yu Gothic","游ゴシック体",YuGothic,"メイリオ",Meiryo,sans-serif;
	margin: 0;
	padding: 0;
	font-size: 18px;
}
html{overflow-x: hidden;}
img{image-rendering:-webkit-optimize-contrast; vertical-align: middle;}
p{text-align: justify;margin:0px;color: #04223E;letter-spacing: 0.07em;line-height: 1.6;}
a{text-decoration: none;}
ul{list-style-type: none;margin: 0;padding: 0;}
h1,h2,h3{margin:0px;}
.inner{width: 90%; max-width: 1200px; margin: auto;}
.oswald{font-family: "Oswald", sans-serif;}
.w960{display: block;}
.w960-2{display: none;}
.w768{display: block;}
.w768-2{display: none;}
.w450{display: block;}
.w450-2{display: none;}
/*ページトップ*/
#page-top a{
	transition:all 0.3s;
}
#page-top img{
	width: 88px;
}
/*リンクを右下に固定*/
#page-top {
	position: -webkit-sticky;
    position: sticky;
    bottom: 30px;
	right: 30px;
    float: right;
}
.about_page-top{margin-top: -100px!important;}
@media screen and (max-width: 960px){
	.w960{display: none;}
	.w960-2{display: block;}
	#page-top { bottom: 20px;right: 20px;}
	#page-top img {width: 60px;}
	.about_page-top {margin-top: -80px !important;}
}
@media screen and (max-width: 768px){
	.w768{display: none;}
	.w768-2{display: block;}
}
@media screen and (max-width: 450px){
	body{font-size: 14px;}
	#page-top {bottom: 10px;right: 10px;}
	#page-top img {width: 44px;}
	.about_page-top {margin-top: -55px !important;}
	.w450{display: none;}
	.w450-2{display: block;}
}
@media (min-width: 450px) {
a[href*="tel:"] {
pointer-events: none;
cursor: default;
text-decoration: none;
}
}

/*ヘッダー***************************/
#header{
	position: absolute;
	top: 0;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	margin: 40px 0 0 0;
}
#header-kasou{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	height: 130px;
	background-color: #fff;
}
#header h1 img,#header-kasou h1 img{
	width: 344px;
	margin-left: 55px;
	vertical-align: text-bottom;
}
.nav,nav ul.navbar,nav ul.navbar-kasou{
	display: flex;
	align-items: center;
}
nav ul.navbar li{
	list-style: none;
	border-right: 1px solid #fff;
}
nav ul.navbar-kasou li{
	list-style: none;
	border-right: 1px solid #004E98;
}
nav ul.navbar li:last-child,nav ul.navbar-kasou li:last-child{
	border-right:none;
}
nav ul.navbar li a,nav ul.navbar-kasou li a{
	font-size: 14px;
	text-decoration: none;
	display: block;
	cursor: pointer;
	position: relative;
	padding: 0 40px;
}
nav ul.navbar li a{
	color: #fff;
}
nav ul.navbar-kasou li a{
	color: #004E98;
}
nav ul.navbar li a:hover,nav ul.navbar-kasou li a:hover{opacity: 0.5;}
.contact_btn{
	font-size: 14px;
	text-align: center;
	width: 280px;
	padding: 20px 0px;
	background: url(../images/mail_icon.png) no-repeat center left 20px/20px;
	background-color: #71C3D6;
	color: #fff;
	display: block;
	margin-left: 30px;
}
.contact_btn:hover{
	background-color: #0FABD0;
}
.contact_btn-recruit{
	font-size: 14px;
	text-align: center;
	width: 280px;
	padding: 20px 0px;
	background: url(../images/mail_icon.png) no-repeat center left 20px/22px;
	background-color: #004E98;
	color: #fff;
	display: block;
	margin-left: 30px;
}
.contact_btn-recruit:hover{
	background-color: #207CD3;
}

/*スクロール時に上から出てくるメニュー*/
.navbarCollapse {
    position: fixed;
    top: -100px;
    right: 0;
    z-index: 10;
    width: 100%;
    background-color: rgba(0, 17, 81, 0.9);
    display: flex;
    transition: .8s;
    justify-content: center;
	padding: 20px 0px;
}
.navbarCollapse li{
	list-style: none;
	border-right: 1px solid #fff;
}
.navbarCollapse li:last-child{
	border-right:none;
}
.navbarCollapse li a{
	color: #fff;
	font-size: 14px;
	text-decoration: none;
	display: block;
	padding: 0 30px;
}
.navbarCollapse li a:hover{opacity: 0.5;}

@media screen and (max-width: 1660px){
	nav ul.navbar li a, nav ul.navbar-kasou li a {padding: 0 20px;}
	.contact_btn {width: 220px;margin-left: 0px;}
}
@media screen and (max-width: 1366px){
	#header h1 img, #header-kasou h1 img {width: 300px;margin-left: 45px;vertical-align: baseline;}
}
@media screen and (max-width: 1280px){
	#header{margin: 0;height: 100px;}
	#header-kasou {height: 100px;}
	#header h1 a, #header-kasou h1 a {display: flex;}
	#header h1 img, #header-kasou h1 img {width: 200px;margin-left: 20px;}
	nav ul.navbar li a, nav ul.navbar-kasou li a {padding: 0 12px;font-size: 13px;}
	.contact_btn {font-size: 13px;width: 170px;background: url(../images/mail_icon.png) no-repeat center left 10px / 15px;background-color: #71C3D6;padding: 15px 0px;}
	.navbarCollapse li a {padding: 0 20px;}
}
@media screen and (max-width: 960px){
	#header,#header-kasou{height: 80px;}
	#header h1 img, #header-kasou h1 img {width: 300px;}
	#g-nav{
		position:fixed;
		z-index: 10;
		top:-120%;
		left:0;
		width:100%;
		height: 100vh;
		background:#04223E;
		transition: all 0.6s;
	}
	#g-nav.panelactive{
		top: 0;
	}
	#g-nav div {
		position: absolute;
		top:50%;
		left:50%;
		transform: translate(-50%,-50%);
		width: 50%;
	}
	#g-nav div a.g-navimg{
		width: 250px;
		display: block;
		margin: 0 auto 50px;
	}
	#g-nav div a.g-navimg img{
		width: 100%;
	}
	#g-nav ul{width: 100%;}
	#g-nav li{border-bottom: 1px solid #fff;}
	#g-nav li:first-child{border-top: 1px solid #fff;}
	#g-nav li a{
		color: #fff;
		text-decoration: none;
		width: 100%;
		padding: 20px 0px;
		display: block;
		text-transform: uppercase;
		letter-spacing: 0.1em;
		font-size: 14px;
		background: url(../images/linkbtn_arrow_w.png) no-repeat center right 10px / 8px;
	}
	.openbtn1{
		position:fixed;
		z-index: 11;
		top:13px;
		right: 10px;
		cursor: pointer;
		width: 50px;
		height:50px;
		background-color: #fff;
        border-radius: 50%;
	}
	.openbtn1 span{
		display: inline-block;
		transition: all .4s;
		position: absolute;
		left: 13px;
		height: 2px;
		background-color: #000;
		width: 25px;
	}
	.openbtn1 span:nth-of-type(1) {
		top:16px; 
	}
	.openbtn1 span:nth-of-type(2) {
		top:24px;
	}
	.openbtn1 span:nth-of-type(3) {
		top:32px;
	}
	.openbtn1.active span:nth-of-type(1) {
		top: 18px;
		left: 18px;
		transform: translateY(6px) rotate(-45deg);
		width: 30%;
		background-color: #000;
	}
	.openbtn1.active span:nth-of-type(2) {
		opacity: 0;
	}
	.openbtn1.active span:nth-of-type(3){
		top: 30px;
		left: 18px;
		transform: translateY(-6px) rotate(45deg);
		width: 30%;
		background-color: #000;
	}
}
@media screen and (max-width: 450px){
	#header,#header-kasou {height: 70px;}
	#header h1 img, #header-kasou h1 img {width: 200px;margin-left: 15px;vertical-align: text-top;margin-top: 5px;}
	.openbtn1 {top: 11px;}
	#g-nav div{width: 80%;margin: auto;}
}

/*メインビジュアル***************************/
.mv{
	width: 100%;
	position: relative;
	margin: 100px 0px 0px;
}
.moyou{
	background: url("../images/mv_moyou.png") no-repeat bottom right/cover;
	width: 100%;
	height: 100vh;
	position: absolute;
	z-index: 1;
}
.slider{
	overflow: clip;
	width: 100%;
	height: 100vh!important;
}
.catch_w{
	text-align: center;
    color: #fff;
    font-size: 55px;
	position: sticky;
	position: -webkit-sticky;
    font-weight: bold;
	height:0px;
      top:30%;
	z-index: 1;
	margin-bottom: -100px;
	line-height: 1.5;
	letter-spacing: 0.15em;
}
.catch_b{
	text-align: center;
    color: #04223E;
    font-size: 55px;
	position: sticky;
	position: -webkit-sticky;
    font-weight: bold;
	height:0px;
      top:30%;
	margin-bottom: -100px;
	line-height: 1.5;
	letter-spacing: 0.15em;
}
.catch_w span,.catch_b span{
	font-size: 30px;
	letter-spacing: 0.15em;
}
/* mvムービー */
.bgblue{
	background: url("../images/bgblue.png") no-repeat center center / cover;
	height: 100vh;
	mix-blend-mode: multiply;
	margin-top: 100px;
}
video,video2 {
	display: block;
    width: 100%;
    height: 100vh;
    object-fit: cover;
	z-index: -1;
    position: absolute;
	top: -100px;
}
.company{
	width: 360px;
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: 1;
}
@media screen and (max-width: 1500px){
	.company{width: 250px;}
}
@media screen and (max-width: 1210px){
	.catch_w,.catch_b{font-size: 50px;}
	.catch_w span,.catch_b span {font-size: 28px;}
}
@media screen and (max-width: 960px){
	.moyou {background: url(../images/mv_moyou.png) no-repeat bottom right -200px / cover;}
	.company {width: 130px;}
}
@media screen and (max-width: 768px){
	.catch_w span, .catch_b span {font-size: 20px;}
	.catch_w,.catch_b{font-size: 40px;}
}
@media screen and (max-width: 450px){
	.moyou{background: url("../images/mv_moyou_sp.png") no-repeat bottom left -20px/cover;}
	.catch_w span, .catch_b span {font-size: 16px;}
	.catch_w, .catch_b {font-size: 32px;}
	.company {width: 65px;}
}
@media screen and (max-width: 414px){
	.catch_w, .catch_b {font-size: 30px;}
}
@media screen and (max-width: 390px){
	.catch_w span, .catch_b span {font-size: 14px;}
	.catch_w, .catch_b {font-size: 28px;}
}
@media screen and (max-width: 375px){
	.catch_w, .catch_b {font-size: 25px;}
}
@media screen and (max-width: 360px){
	.moyou{background: url("../images/mv_moyou_sp.png") no-repeat bottom center/cover;}
}
@media screen and (max-width: 320px){
	.catch_w, .catch_b {font-size: 22px;}
}

/*サブビジュアル***************************/
.sub{
	display: flex;
	align-items: center;
	justify-content:space-between;
}
.sub .oswald{
	font-size: 90px;
	color: #04223E;
	margin-left: 150px;
	font-weight: 500;
	letter-spacing: 0;
}
.sub h2{
	font-size: 35px;
    letter-spacing: 0.12em;
	color: #04223E;
	margin-left: 150px;
	font-weight: normal;
}
.animation{
	width: 55%;
	height: 420px;
	animation: fadeIn 1.5s ease 0s 1 normal backwards;
	margin-left: 5%;
}
.bu{background: url("../images/sub_business.jpg") no-repeat center center/cover;}
.ma{background: url("../images/sub_materials.jpg") no-repeat center center/cover;}
.ab{background: url("../images/sub_about.jpg") no-repeat center center/cover;}
.en{background: url("../images/sub_entry.jpg") no-repeat center center/cover;}
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateX(20px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@media screen and (max-width: 1280px){
	.sub .oswald,.sub h2{margin-left: 50px;}
}
@media screen and (max-width: 960px){
	.sub .oswald {font-size: 50px;}
	.sub h2 {font-size: 20px;}
	.animation {height: 300px;}
}
@media screen and (max-width: 768px){
	.sub .oswald {font-size: 40px;}
	.sub .oswald,.sub h2{margin-left: 50px;}
}
@media screen and (max-width: 450px){
	.sub .oswald, .sub h2 {margin-left: 20px;}
	.sub .oswald {font-size: 30px;}
	.sub h2 {font-size: 16px;}
	.animation {height: 150px;}
	.ab {background: url(../images/sub_about.jpg) no-repeat center left -50px / cover;}
}
@media screen and (max-width: 375px){
	.ab {background: url(../images/sub_about.jpg) no-repeat center left -70px / cover;}
}
@media screen and (max-width: 320px){
	.ab {background: url(../images/sub_about.jpg) no-repeat center left -80px / cover;}
}

/*トップページ***************************/
.top{
	margin: 0 0 200px 0;
}
.top_txt{
	margin: 400px auto 100px;
	text-align: center;
}
.top_tokutyo{
	width: 90%;
    margin: auto;
	display: flex;
	justify-content: space-between;
}
.top_tokutyo .box{
	width: 21%;
}
.top_tokutyo .box .top_icon{
	width: 100%;
	margin-bottom: 30px;
}
.top_tokutyo .box p{
	border-top: 1px solid #04223E;
	border-bottom: 1px solid #04223E;
	text-align: center;
	color: #04223E;
	font-size: 20px;
	padding: 10px 0px;
}
.top_tokutyo a{
	display: block;
	position: relative;
}
.top_tokutyo a:hover{
	opacity: 0.4;
}
.top_tokutyo a .top_more{
	position: absolute;
	width: 77px;
	bottom: 65px;
    right: -20px;
}
.top_mano{
	max-width: 576px;
	width: 60%;
	margin: 70px auto 0px;
    display: block;
}
.top_link{
	width: 100%;
	margin-bottom: 50px;
}
.top_link a.linkarea{
	display: flex;
	justify-content: center;
	cursor: pointer;
	transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
	position: relative;
  overflow: hidden;
}
.top_link a.linkarea::before,
.top_link a.linkarea::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  margin: auto;
  transition: .3s cubic-bezier(0.45, 0, 0.55, 1);
  opacity: 0;
}
.top_link a.linkarea::before {
  background: rgba(4,34,62,.6);
  width: 100%;
  height: 100%;
}
.top_link a.linkarea::after {
  content: "";
	display: inline-block;
  width: 100px;
  height: 53px;
  background-image: url("../images/more_btn.png");
  background-size: contain;
	top:50%;
  right:0;
  transform:translate(-50%,-50%);
}
.top_link a.linkarea:hover::before,
.top_link a.linkarea:hover::after {
  opacity: 1;
}
.top_link .naiyo{
	width: calc(50% - 200px);
	background-size: 75%;
	position: relative;
	padding: 100px 50px 130px 150px;
}
.top_link .bu{background: url(../images/top_yudouttl1.png) no-repeat left 150px bottom/577px;background-color: #004E98;}
.top_link .ma{background: url(../images/top_yudouttl2.png) no-repeat left 150px bottom/577px;background-color: #004E98;}
.top_link .ab{background: url(../images/top_yudouttl3.png) no-repeat left 150px bottom/577px;background-color: #004E98;}

.top_link .naiyo h2{
	font-size: 35px;
	letter-spacing: 0.2em;
	color: #fff;
	margin-bottom: 30px;
}
.top_link .naiyo .flex{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}
.top_link .naiyo .flex .txt{
	font-size: 16px;
	color: #fff;
}
.top_link .naiyo .flex img{
	width: 318px;
}
.top_link .naiyo_pic1{
	width: 50%;
	background: url(../images/top_yudoupic1.jpg) no-repeat center center/ cover;
}
.top_link .naiyo_pic2{
	width: 50%;
	background: url(../images/top_yudoupic2.jpg) no-repeat center center/ cover;
}
.top_link .naiyo_pic3{
	width: 50%;
	background: url(../images/top_yudoupic3.jpg) no-repeat center center/ cover;
}
.top_others{
	margin: 130px 0px;
}
.top_others .inner{
    width: 70%;
}
.top_others .flex{
	display: flex;
	justify-content: space-between;
	margin-bottom: 80px;
}
.top_others .flex .box{
	width: 49%;
}
.top_others .flex .box h2{
	font-size: 35px;
	letter-spacing: 0.2em;
	color: #fff;
	background-color: #004E98;
	width: 100%;
	text-align: center;
	padding: 60px 0;
    line-height: 1.2;
	margin-bottom: 15px;
}
.top_others .flex .box h2 span{
	color: rgba( 255, 255, 255, 0.3);
	font-size: 50px;
	font-weight: 500;
    letter-spacing: 0.04em;
}
.top_others .flex .box .others_pic{
	display: block;
	width: 100%;
	height: 380px;
	position: relative;
}
.top_others .flex .box .sh{background: url(../images/top_showroom.jpg) no-repeat center center/cover;}
.top_others .flex .box .gr{background: url(../images/top_group.jpg) no-repeat center center/cover;}
.top_others .flex .box .others_pic:hover{
	opacity: 0.7;
}
.top_others .flex .box .others_pic p{
	font-size: 32px;
	color: #fff;
	font-weight: bold;
	background: url(../images/more_btn.png) no-repeat right 20px bottom 8px / 62px;
	position: absolute;
    bottom: 20px;
    left: 5%;
	width: 95%;
}
.top_others .flex .box .txt{
	font-size: 16px;
	width: 85%;
	margin-top: 15px;
}
.top_others .recruit:hover{
	opacity: 0.7;
}
.top_others .recruit h2{
	position: relative;
	font-size: 30px;
	font-weight: normal;
	letter-spacing: 0.2em;
    color: #fff;
	text-align: center;
	background: url(../images/top_recruit.jpg) no-repeat center center / cover;
	padding: 100px 0 65px;
}
.top_others .recruit h2::before {
	content: attr(data-en);
	display: block;
	color: rgba(255, 255, 255, 0.6);
    font-weight: 500;
    letter-spacing: 0.04em;
	font-size: 100px;
	font-family: "Oswald", sans-serif;
}
.news{
	background-color: rgba(0, 78, 152, 0.1);
	padding: 50px 0px;
	margin-bottom: 150px;
}
.news_flex{
	display: flex;
	justify-content: space-between;
}
.news_midashi{
	display: flex;
	align-items: center;
}
.news_midashi .oswald{
	font-size: 35px;
	font-weight: 300;
    letter-spacing: 0.04em;
}
.news_midashi h2{
	letter-spacing: 0.10em;
	font-size: 30px;
	color: #004E98;
	border-left: 1px solid #04223E;
    height: 100%;
	padding-left: 50px;
	margin-right: 50px;
    margin-left: 50px;
	display: flex;
	align-items: center;
	font-weight: normal;
}
.news_boxarea{
	width: 60%;
}
.news_box{
	margin-bottom: 20px;
	display: flex;
	align-items: center;
	padding: 15px 100px 15px 20px;
	background: url(../images/linkbtn_arrow_b.png) no-repeat center right 30px/10px;
	background-color: #fff;
}
.news_box:hover{
	opacity: 0.6;
}
.news_boxarea .news_box:last-child{
	margin-bottom: 0px;
}
.news_box .day{
	margin-right: 20px;
}

.fadein1{
	opacity: 0;
    transition: opacity 0.5s;
	transition-delay: 0;
}
.fadein2{
    opacity: 0;
    transition: opacity 0.5s;
    transition-delay: 0.4s;
}
.fadein3{
    opacity: 0;
    transition: opacity 0.5s;
    transition-delay: 0.8s;
}
.fadein4{
    opacity: 0;
    transition: opacity 0.5s;
    transition-delay: 1.2s;
}
.bottom-top__animation{
	opacity : 0;
	visibility: hidden;
	transition: 1s;
	transform: translateY(100px);
}
/*アニメーション要素までスクロールした時のスタイル*/
.bottom-top__animation--active{
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

@media screen and (max-width: 1536px){
	.top_link .naiyo {padding: 100px 50px 90px 150px;}
	.top_link .naiyo .flex img {width: 250px;}
	.top_link .bu{background: url(../images/top_yudouttl1.png) no-repeat left 150px bottom/410px;background-color: #004E98;}
	.top_link .ma{background: url(../images/top_yudouttl2.png) no-repeat left 150px bottom/410px;background-color: #004E98;}
	.top_link .ab{background: url(../images/top_yudouttl3.png) no-repeat left 150px bottom/410px;background-color: #004E98;}
}
@media screen and (max-width: 1470px){
	.top_others .flex .box .others_pic p {font-size: 28px;background: url(../images/more_btn.png) no-repeat right 20px bottom 8px / 55px;}
}
@media screen and (max-width: 1350px){
	.top_tokutyo a .top_more {width: 65px;}
}
@media screen and (max-width: 1280px){
	.top_others .flex .box .others_pic {height: 300px;}
	.top_others .flex .box h2 span {font-size: 44px;}
	.top_others .flex .box .others_pic p {font-size: 24px;}
}
@media screen and (max-width: 1210px){
	.top_txt {margin: 350px 5% 100px;width: 90%;}
	.top_link .naiyo {width: calc(50% - 130px);padding: 100px 50px 80px 80px;}
	.top_link .bu{background: url(../images/top_yudouttl1.png) no-repeat left 80px bottom/400px;background-color: #004E98;}
	.top_link .ma{background: url(../images/top_yudouttl2.png) no-repeat left 80px bottom/400px;background-color: #004E98;}
	.top_link .ab{background: url(../images/top_yudouttl3.png) no-repeat left 80px bottom/400px;background-color: #004E98;}
	.news_midashi .oswald {font-size: 30px;}
	.news_midashi h2 {padding-left: 30px;font-size: 24px;margin: 0 30px;}
}
@media screen and (max-width: 1120px){
	.top_tokutyo .box {width: 22%;}
	.top_others .flex .box h2 span {font-size: 40px;}
	.top_others .flex .box .others_pic {height: 280px;}
	.top_others .flex .box .others_pic p {font-size: 20px;background: url(../images/more_btn.png) no-repeat right 20px bottom 5px / 40px;}
}
@media screen and (max-width: 1050px){
	.top_tokutyo {width: 100%;}
	.top_tokutyo .box {width: 23%;}
	.top_tokutyo .box .top_icon {width: 80%;margin: 0 auto 30px;display: block;}
}
@media screen and (max-width: 960px){
	.top_tokutyo {flex-flow: wrap;justify-content: center;}
	.top_tokutyo .box {width: 40%;margin: 0 20px 50px;}
	.top_tokutyo a .top_more {right: 0px;}
	.top_link .naiyo2 {width: calc(100% - 100px);padding: 50px 50px 70px;}
	.top_link .naiyo2 h2 {font-size: 35px;letter-spacing: 0.2em;color: #fff;margin-bottom: 20px;}
	.top_link .naiyo2 .flex {display: flex;align-items:center;justify-content: space-between;}
	.top_link .naiyo2 .flex .txt{width: 70%;font-size: 16px;color: #fff;}
	.top_link .naiyo2 .flex img{width: 80px;}
	.top_link .naiyo2 .top_illust{display: block; width: 40%;margin: auto;}
	.top_link .naiyo_pic{width: 100%;}
	.top_link .bu{background: url(../images/top_yudouttl1_sp.png) no-repeat center bottom/400px;background-color: #004E98;}
	.top_link .ma{background: url(../images/top_yudouttl2.png) no-repeat center bottom/400px;background-color: #004E98;}
	.top_link .ab{background: url(../images/top_yudouttl3_sp.png) no-repeat center bottom/400px;background-color: #004E98;}
	.top_others{margin: 130px 0px 100px;}
	.top_others .inner {width: 90%;}
	.top_others .flex {flex-flow: column;}
	.top_others .flex .box {width: 100%;}
	.top_others .flex .box .others_pic {height: 400px;}
	.top_others .flex .box .txt {width: 100%;margin: 15px 0 30px;}
	.news {margin-bottom: 100px;}
	.news_flex {flex-flow: column;}
	.news_midashi {margin-bottom: 20px;}
	.news_boxarea {width: 100%;}
	.news_box {padding: 15px 50px 15px 20px;background: url(../images/linkbtn_arrow_b.png) no-repeat center right 20px / 10px;background-color: #fff;}
}
@media screen and (max-width: 768px){
	.top_txt {margin: 300px 5% 100px;}
}
@media screen and (max-width: 450px){
	.top {margin: 0 0 100px 0;}
	.top_txt {margin: 250px 0% 50px;width: 100%;}
	.top_tokutyo {justify-content: space-between;}
	.top_tokutyo .box .top_icon {margin-bottom: 20px;}
	.top_tokutyo .box p {font-size: 16px;}
	.top_tokutyo a .top_more {width: 40px;bottom: 55px;right: 0px;}
	.top_tokutyo .box {width: 47%;margin: 0 0 20px;}
	.top_mano {margin: 40px auto 0px;}
	.top_link .naiyo2 h2 {font-size: 20px;}
	.top_link .naiyo2 .flex .txt {font-size: 14px;}
	.top_link .naiyo2 {width: calc(100% - 60px);padding: 30px 30px 40px;}
	.top_link .naiyo2 .flex img {width: 40px;}
	.top_link .bu{background: url(../images/top_yudouttl1_sp.png) no-repeat center bottom/200px;background-color: #004E98;}
	.top_link .ma{background: url(../images/top_yudouttl2.png) no-repeat center bottom/200px;background-color: #004E98;}
	.top_link .ab{background: url(../images/top_yudouttl3_sp.png) no-repeat center bottom/200px;background-color: #004E98;}
	.top_others {margin: 100px 0px 80px;}
	.top_others .flex .box h2 {font-size: 20px;}
	.top_others .flex .box h2 span,.top_others .recruit h2::before{font-size: 30px;}
	.top_others .flex .box .others_pic p {font-size: 16px;background: url(../images/more_btn.png) no-repeat right 20px bottom 2px / 40px;}
	.top_others .flex .box .others_pic {height: 240px;}
	.top_others .flex .box .txt {font-size: 14px;}
	.top_others .flex {margin-bottom: 50px;}
	.top_others .recruit h2 {font-size: 16px;padding: 40px 0 25px;}
	.news {margin-bottom: 80px;}
	.news_midashi h2 {padding-left: 10px;font-size: 16px;margin: 0 10px;}
	.news_box {display: block;}
}
@media screen and (max-width: 375px){
	.top_txt {margin: 230px 0% 50px;}
	.top_tokutyo .box p {font-size: 14px;}
}
@media screen and (max-width: 360px){
	.top_others .flex .box .others_pic {height: 210px;}
}
@media screen and (max-width: 320px){
	.top_txt { margin: 210px 0% 50px;}
}


/*事業紹介***************************/
.business{
	background-color: #E4EDF5;
	margin-top: -30px;
	display: flex;
    justify-content: flex-start;
    align-items: flex-start;
}
.business_sticky{
	width: 20%;
	position: -webkit-sticky;
	position: sticky;
	top: 60px;
}

.business .inner{
	padding-top: 120px;
	padding: 120px 0px 150px;
	position: relative;
	margin: 0 5%;
	/*margin-top: -989px;*/
}
.business h2{
	color: #04223E;
	letter-spacing: 0.12em;
	position: relative;
	margin-bottom: 10px;
}
.business h2:before {
  position: absolute;
  top: calc(50% - 1px);
  left: 0;
  width: 100%;
  height: 1px;
  content: '';
  background: #04223E;
}
.business h2 span {
  position: relative;
  padding: 0 1em 0 0;
  background: #E4EDF5;
}
.business .main_txt{
	letter-spacing: 0.15em;
}
.business .box{
	display: flex;
	justify-content: center;
	margin-top: 50px;
}
.business .item{
	width: 424px;
	background: -moz-linear-gradient(top, #042340, #004C95);
  background: -webkit-linear-gradient(top, #042340, #004C95);
  background: linear-gradient(to bottom, #042340, #004C95);
	display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
	padding: 50px 0px;
}
.business .item img{
	width: 288px;
	display: block;
    margin: 0 auto;
}
.business .item h3{
	font-size: 30px;
	text-align: center;
	color: #fff;
	border: 1px solid #fff;
	width: 288px;
    margin: 20px auto;
    font-weight: normal;
    letter-spacing: 0.12em;
    padding: 5px 0px;
}
.business .item_box{
	background-color: #fff;
	width: calc(92% - 424px);
    padding: 80px 4%;
	display: flex;
    flex-direction: column;
    justify-content: center;
}
.business .item_box .midashi{
	background-color: #004E98;
	color: #fff;
	text-align: center;
	font-size: 22px;
	font-weight: bold;
	padding: 20px 15px;
	margin-bottom: 30px;
}
.business .item_box .midashi span{
	margin-left: 20px;
}
.business .item_box .txt{
	line-height: 1.7;
    letter-spacing: 0.1em;
}
.business .item_box .flex{
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.business .item_box .flex a{
	font-size: 16px;
	color: #fff;
	background: url(../images/linkbtn_arrow_w.png) no-repeat center right 10px/10px;
	background-color: #04223E;
	width: 45%;
	padding: 10px 0px 10px 2%;
	margin-top: 30px;
}
.business .item_box .flex a:hover{
	background: url(../images/linkbtn_arrow_w.png) no-repeat center right 10px/10px;
	background-color: #004E98;
}
.business .item2{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 424px;
	background: -moz-linear-gradient(top, #042340, #004C95);
  background: -webkit-linear-gradient(top, #042340, #004C95);
  background: linear-gradient(to bottom, #042340, #004C95);
}
.business .item2 img{
	width: 136px;
	display: block;
}
.business .item2 h3{
	font-size: 30px;
	text-align: center;
	color: #fff;
    margin-right: 30px;
    font-weight: normal;
    letter-spacing: 0.12em;
}
.business .item_box2{
	background-color: #fff;
	width: calc(92% - 424px);
    padding: 50px 4%;
	display: flex;
    flex-direction: column;
    justify-content: center;
}
.business .item_box2 .midashi2{
	font-size: 30px;
	color: #004E98;
	margin-bottom: 10px;
}
.works{
	margin:100px auto 150px;
	padding-top: 100px;
}
.works .ttl{
	background: -moz-linear-gradient(left, #004C95, #042340);
  background: -webkit-linear-gradient(left, #004C95, #042340);
  background: linear-gradient(to right, #004C95, #042340);
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 60px;
}
.works .ttl h3{
	color: #fff;
	font-size: 33px;
	letter-spacing: 0.12em;
	font-weight: normal;
	margin-left: 80px;
}
.works .ttl .oswald{
	color: transparent;
    -webkit-text-stroke: 1px rgb(257, 255, 255, 0.2);
	font-size: 150px;
	letter-spacing: 0;
	margin-right: 40px;
}
.works .wrap {
  display: flex;
  flex-wrap: wrap;
}
.works .item {
  width: 31.3%;
}
.works .item img{
	width: 100%;
}
.works .item:not(:nth-child(3n+3)) {
  margin-right: 3%;
}
.works .item:nth-child(n+4) {
  margin-top: 30px;
}
.works .item p{
	background-color: #004E98;
	color: #fff;
	font-size: 14px;
	text-align: center;
	font-weight: bold;
	padding: 10px;
}
@media screen and (max-width: 1366px){
	.business .inner { margin: 0 5% 0 2%;}
	.business .item,.business .item2{width: 310px;}
	.business .item img {width: 180px;}
	.business .item2 img {width: 90px;}
	.business .item h3 {width: 250px;}
	.business .item_box,.business .item_box2{width: calc(92% - 310px);}
	.business .item_box .flex a {width: 47%;}
}
@media screen and (max-width: 1280px){
	.business .item_box .midashi span{margin-left: 0px;display: block;}
}
@media screen and (max-width: 1100px){
	.business .item_box .flex a{font-size: 12px;}
}
@media screen and (max-width: 960px){
	.business_sticky {top: 0px;width: 26%;}
	.business .box{flex-flow: column;}
	.business .item{width: 100%;padding: 30px 0px;}
	.business .item img {width: 150px;}
	.business h2,.business .item h3,.business .item2 h3{font-size: 24px;}
	.business .item_box,.business .item_box2{width: 92%;padding: 30px 4%;}
	.business .item_box .midashi,.business .item_box2 .midashi2{font-size: 20px;}
	.business .item2 {width: 100%;padding: 20px 0px;}
	.business .item_box .flex a {font-size: 16px;}
	.works{padding-top: 0;margin: 100px auto;}
	.works .ttl h3 {font-size: 24px;margin-left: 50px;}
	.works .ttl .oswald {font-size: 100px;}
}
@media screen and (max-width: 768px){
	.business .inner {margin: 0 5% 0 -40px;}
	.business_sticky {width: 30%;}
	.business h2 {margin-bottom: 20px;}
	.business h2:before{top: auto;bottom: -10%;}
	.works .item {width: 48.5%;}
	.works .item:not(:nth-child(3n+3)) {margin-right: 0%;}
	.works .item:not(:nth-child(2n+2)) {margin-right: 3%;}
	.works .item:nth-child(n+3) {margin-top: 30px;}
}
@media screen and (max-width: 450px){
	.business_sticky {width: 30%;}
	.business .inner{padding: 80px 0px;}
	.business h2, .business .item h3, .business .item2 h3 {font-size: 20px;}
	.business .item h3{width: 200px;}
	.business .item_box .midashi,.business .item_box2 .midashi2{font-size: 14px;}
	.business .item_box .flex{flex-flow: column;}
	.business .item_box .flex a {width: 98%;font-size: 14px;}
	.business .item_box .flex a:nth-child(2){margin-top: 10px;}
	.works {margin: 80px auto;}
	.works .ttl {margin-bottom: 20px;}
	.works .ttl h3 {font-size: 20px;margin-left: 20px;}
	.works .ttl .oswald {font-size: 50px;margin-right: 20px;}
	.works .item {width: 100%;}
	.works .item:not(:nth-child(2n+2)) {margin-right: 0%;}
	.works .item:nth-child(n+2) {margin-top: 10px;}
	.works .item p {font-size: 12px;}
}

/*取扱商材***************************/
.materials{
	margin-bottom: 150px;
}
.materials .main{
	background-color: #E4EDF5;
	padding: 100px 0px;
	margin: -30px 0 120px;
	text-align: center;
	display: block;
}
.materials .main .oswald{
	font-size: 95px;
	text-align: center;
	font-weight: 500;
    letter-spacing: 0;
	color: rgba(255,255,255,0.5);
}
.materials .main .txt{
	display: inline-block;
    width: 710px;
    font-size: 26px;
    font-weight: bold;
    line-height: 1.7;
}
.follow_navi{
    margin: 0 0 0 auto;
	display: flex;
	justify-content: flex-end;
	align-items: flex-start;
}
.sidebar {
    position: sticky;
	position: -webkit-sticky;
    top: 100px;
    width: 20%;
    margin-right: 5%;
}
.sidebar li a {
    display: block;
    width: calc(100% - 40px);
    background-color: #CCD2D8;
    color: #fff;
    margin-bottom: 10px;
    text-decoration: none;
    font-size: 16px;
    padding: 10px 20px;
}

.sidebar li a.active {
    background-color: #004E98;
}
.materials .contents_width{
	width: 70%;
}
.materials .contents{
	padding-bottom: 160px;
}
.contents_width .contents:nth-child(1){
	padding-top: 0;
}
.contentsarea_ttl{
	background-color: #F6F6F6;
	display: flex;
	justify-content: flex-end;
}
.contentsarea_ttl .contentsarea_txt{
	width: calc(90% - 800px);
	padding: 0% 5% 5%;
}
.contentsarea_ttl .contentsarea_txt h3{
    font-size: 30px;
    color: #004E98;
	border-bottom: 1px solid #004E98;
	margin-bottom: 20px;
	font-weight: normal;
	padding: 60px 0 15px;
}
.contentsarea_ttl .contentsarea_txt p{
	font-size: 16px;
}
.ttl_imgarea{
	width: 800px;
	position: relative;
}
.slick__bg {
    background-size: cover;
    background-repeat: no-repeat;
	height: 500px!important;
}
.slick__bg1-1 {background-image: url(../images/materials_img1-1.jpg);}
.slick__bg1-2 {background-image: url(../images/materials_img1-2.jpg);}
.slick__bg1-3 {background-image: url(../images/materials_img1-3.jpg);}
.slick__bg1-4 {background-image: url(../images/materials_img1-4.jpg);}
.slick__bg1-5 {background-image: url(../images/materials_img1-5.jpg);}
.slick__bg2-1 {background-image: url(../images/materials_img2-1.jpg);}
.slick__bg2-2 {background-image: url(../images/materials_img2-2.jpg);}
.slick__bg2-3 {background-image: url(../images/materials_img2-3.jpg);}
.slick__bg2-4 {background-image: url(../images/materials_img2-4.jpg);}
.slick__bg2-5 {background-image: url(../images/materials_img2-5.jpg);}
.slick__bg3-1 {background-image: url(../images/materials_img3-1.jpg);}
.slick__bg3-2 {background-image: url(../images/materials_img3-2.jpg);}
.slick__bg3-3 {background-image: url(../images/materials_img3-3.jpg);}
.slick__bg3-4 {background-image: url(../images/materials_img3-4.jpg);}
.slick__bg3-5 {background-image: url(../images/materials_img3-5.jpg);}
.slick__bg4-1 {background-image: url(../images/materials_img4-1.jpg);}
.ttl_imgarea .oswald{
	position: absolute;
    top: 20px;
    left: 30px;
    font-size: 3.5vw;
    font-weight: 500;
    letter-spacing: 0;
    color: rgba(255, 255, 255, 0.5);
    line-height: 1.3;
}
.ttl_imgarea .slick-dots{bottom: 15px!important;}
.ttl_imgarea .slick-dots li.slick-active button:before{color: #004E98!important;opacity: 1!important;font-size: 10px!important;}
.ttl_imgarea .slick-dots li button:before{color: #fff!important;opacity: 1!important;font-size: 10px!important;}
.ttl_imgarea .slick-dotted.slick-slider {margin-bottom: 0px!important;}
.slick-dots > li:first-child:last-child {display: none!important;}


.makerlist{
	background-color: #004E98;
}
.makerlist .midashi{
	color: #fff;
	display: flex;
    align-items: center;
	padding: 20px 5% 10px;
}
.makerlist .midashi span.oswald{
	font-size: 75px;
	color: transparent;
    -webkit-text-stroke: 1px rgb(257, 255, 255, 0.2);
	letter-spacing: 0;
	margin-left: 20px;
}
.makerslider{
	padding: 0px 5% 50px;
}
.makerslider a{
	display: block;
	width: 24% !important;
    margin-right: 1.3%;
	margin-bottom: 8px;
}
.makerslider a:last-child{
	margin-right: 0%;
}
.makerslider a img{
	width: 100%;
	border-radius: 20px;
}
@media screen and (max-width: 1536px){
	.contentsarea_ttl .contentsarea_txt {width: calc(90% - 600px);}
	.ttl_imgarea {width: 600px;}
	.slick__bg{height:400px!important}
}
@media screen and (max-width: 1366px){
	.follow_navi ol {margin: 0 2% 0 0;}
	.materials .contents_width {width: 76%;}
	.contentsarea_ttl .contentsarea_txt {width: calc(90% - 500px);}
	.ttl_imgarea {width: 500px;}
	.slick__bg{height:350px!important}
	.makerlist .midashi span.oswald {font-size: 40px;}
}
@media screen and (max-width: 1100px){
	.contentsarea_ttl .contentsarea_txt h3 {font-size: 24px;margin-bottom: 10px;padding: 60px 0 10px;}
}
@media screen and (max-width: 960px){
	.materials {margin-bottom: 110px;}
	.follow_navi ol{display: none;}
	.materials .contents {padding-bottom: 80px;}
	.materials .contents_width {width: 100%;}
	.contentsarea_ttl .contentsarea_txt h3 {padding: 40px 0 10px;}
	.ttl_imgarea .oswald {font-size: 4.5vw;}
}
@media screen and (max-width: 768px){
	.materials .main {padding: 70px 0px;margin: -30px 0 80px;}
	.materials .main .oswald {font-size: 50px;}
	.materials .main .txt {width: 90%;font-size: 18px;}
	.contentsarea_ttl .contentsarea_txt h3 {font-size: 20px;}
	.contentsarea_ttl .contentsarea_txt {width: calc(90% - 400px);}
	.ttl_imgarea {width: 400px;}
	.slick__bg{height:300px!important}
	.makerlist .pb20{padding-bottom: 20px;}
}
@media screen and (max-width: 650px){
	.contentsarea_ttl{flex-flow: column;}
	.contentsarea_ttl .contentsarea_txt {width: 90%;}
	.contentsarea_ttl .contentsarea_txt h3 {font-size: 18px;}
	.ttl_imgarea {width: 100%;}
	.ttl_imgarea .oswald,.makerlist .midashi span.oswald{font-size: 30px;}
	.makerslider a img {border-radius: 10px;}
}
@media screen and (max-width: 450px){
	.materials {margin-bottom: 80px;}
	.materials .main {margin: -30px 0 60px;}
	.materials .main .txt,.contentsarea_ttl .contentsarea_txt p{font-size: 14px;}
	.materials .contents {padding-bottom: 30px;}
	.contentsarea_ttl .contentsarea_txt h3 {font-size: 16px;padding: 30px 0 10px;}
	.makerlist .midashi span.oswald {font-size: 20px;}
	.ttl_imgarea .oswald {left: 20px;}
	.makerslider{padding: 0px 5% 40px;}
	.makerslider a {margin-bottom: 0px;}
}
@media screen and (max-width: 375px){
	.slick__bg{height:250px!important}
}

/*会社概要***************************/
.about .message{
	background-color: #004E98;
	padding: 300px 0px 200px;
	clip-path: polygon(0 20%, 100% 0%, 100% 80%, 0 100%);
	margin-bottom: 120px;
}
.message__animation{
	animation: message__animation 0.5s ease 1s 1 normal backwards;
}
@keyframes message__animation {
  from {
    opacity: 0;
    transform: translateX(-100px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.about .message .flex{
	display: flex;
	justify-content: space-between;
}
.about .president{
	width: 65%;
}
.about .president h3.midashi{
	color: #fff;
    font-size: 30px;
    padding: 1.2rem;
    border-left: 5px solid #fff;
    letter-spacing: 0.07em;
    font-weight: normal;
    margin-bottom: 50px;
    background: url(../images/about_MESSAGE.png) no-repeat left 120px center/contain;
}
.about .president p{
	color: #fff;
}
.about .president p:last-child{
	margin-top: 30px;
}
.about .president_pic{
	width: 30%;
    margin-top: -70px;
}
.about .president_pic img{
	width: 100%;
}
.about-bottom-top__animation{
	animation: about-bottom-top__animation 1s ease 1.5s 1 normal backwards;
}
@keyframes about-bottom-top__animation {
  from {
    opacity: 0;
    transform: translateY(70px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.about h3.midashi1,.about h3.midashi2,.about h3.midashi3,.about h3.midashi4,.about h3.midashi5{
	color: #004E98;
    font-size: 30px;
    padding: 1.2rem;
    border-left: 5px solid #004E98;
    letter-spacing: 0.07em;
	font-weight: normal;
	margin-bottom: 50px;
}
.about h3.midashi1{background: url(../images/about_OVERVIEW.png) no-repeat left 60px center/contain;}
.about h3.midashi2{background: url(../images/about_LICENSE.png) no-repeat left 150px center/contain;}
.about h3.midashi3{background: url(../images/about_SALESOFFICE.png) no-repeat left 90px center/contain;}
.about h3.midashi4{background: url(../images/about_SHOWROOM.png) no-repeat left 180px center/contain;}
.about h3.midashi5{background: url(../images/about_GROUPCOMPANIES.png) no-repeat left 180px center/contain;}

/*概要*/
.gaiyo_left,.gaiyo_right{
	margin-left: 130px;
}
.gaiyo_left div,.gaiyo_right div{
	margin-bottom: 40px;
}
.gaiyo_left div:last-child,.gaiyo_right div:last-child{
	margin-bottom: 0px;
}
.gaiyo_ttl{
	letter-spacing: 0.10em;
}
.gaiyo_txt{
	position: relative;
	display: inline-block;
	padding-left: 40px;
	line-height: 1.7;
}
.gaiyo_txt::before{
  content: '';
  position: absolute;
  top: 14px;
	left:0;
  display: inline-block;
  width: 23px;
  height: 1px;
  background-color: #04223E;
}
.gaiyo_txt a{color: #04223E;}
.about_flex{
	display: flex;
	margin-bottom: 0px;
}

/*建築業許可*/
#license{
	padding-top: 120px;
}
.about .license_txt{
	margin: 0 0 120px 130px;
}

/*営業所*/
.eigyousyo{
	width: 49%;
}
.about_flex_eigyousyo{
	display: flex;
	justify-content: space-between;
	margin-bottom: 120px;
}
.eigyousyo img{
	width: 100%;
	margin-bottom: 10px;
}
.eigyousyo table{
	position: relative;
    display: inline-block;
    padding-left: 35px;
}
.eigyousyo table::before{
	content: '';
  position: absolute;
  top: 14px;
	left:0;
  display: inline-block;
  width: 23px;
  height: 1px;
  background-color: #04223E;
}
.eigyousyo table th,.eigyousyo table td{
	font-weight: normal;
	color: #04223E;
    letter-spacing: 0.07em;
    line-height: 1.6;
}
.eigyousyo table th{
	vertical-align: top;
    text-align-last: left;
    padding-right: 10px;
}
.eigyousyo table td a{color: #04223E;}
.showroom,.group{
	display: block;
	width: 49%;
	margin-bottom: 120px;
}
.showroom a:hover,.group a:hover{
	opacity: 0.7;
}
.showroom img,.group img{
	width: 100%;
}
.showroom .ttl{
	background: url(../images/about_arrow.png) no-repeat center right 20px/ 24px;
	background-color: #75B5C4;
}
.group .ttl{
	background: url(../images/about_arrow.png) no-repeat center right 20px/ 24px;
	background-color: #6EB280;
}
.showroom .ttl,.group .ttl{
	color: #fff;
	padding: 15px 20px;
	margin-bottom: 30px;
}
.showroom table,.group table{
	text-align: justify;
    margin: 0px;
    color: #04223E;
    letter-spacing: 0.07em;
    line-height: 1.6;
	border-spacing: 0px!important;
}
.showroom table th,.group table th{
	font-weight: normal;
	vertical-align: top;
	text-align-last: left;
    padding-right: 10px;
	padding-left: 0px;
}
.showroom table td a,.group table td a{color: #04223E;}

/*沿革*/
.enkakubg{
	background: url(../images/about_enkakubg.jpg) no-repeat center center/ cover;
	background-attachment: fixed;
	padding: 180px 0px 200px;
	margin-bottom: -20px;
	position: relative;
}
.enkakubg h3.midashi{
	color: #004E98;
    font-size: 30px;
    padding: 1.2rem;
    border-left: 5px solid #004E98;
    letter-spacing: 0.07em;
	font-weight: normal;
	margin-bottom: 80px;
	background: url(../images/about_HISTORY.png) no-repeat left 60px center/contain;
	width: 40%;
	margin-top: -10px;
}
.enkaku_flex{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	position: relative;
}
.time-schedule {
	width: calc(55% - 20px);
    padding-left: 20px;
  /*border-left: 1px solid #9FAEBE;*/
}
.time-schedule li {
  width: 100%;
  margin: 0 0;
  position: relative;
}
.time-schedule span.time {
  width: 5em;
  display: inline-block;
  margin-left: -7em;
  vertical-align: top;
  position: relative;
  text-align: right;
  box-sizing: border-box;
	font-size: 25px;
	font-weight: bold;
}
.time-schedule span.time::after {
  content: "";
  position: absolute;
  right: -34.5px;
  top: 10px;
  background: #004E98;
  width: 16px;
  height: 16px;
  border-radius: 10px;
}
.time-schedule .mt-10{
	margin-top: -10px;
}
.time-schedule .sch_box {
  display: inline-block;
  width: 100%;
  margin-left: 20px;
  padding: 6px 0px 60px 0px;
  box-sizing: border-box;
	border-left: 1px solid #9FAEBE;
}
.time-schedule li:last-child .sch_box{
	padding: 8px 0px 0px 0px;
}
.time-schedule .sch_title {
  font-size: 16px;
	width: 100%;
	padding-left: 30px;
}
.time-schedule .sch_title span{
	margin-top: 20px;
    display: block;
}
.time-schedule .sch_title:last-child{
	margin-bottom: -8px;
}
.enkaku_since{
	position: absolute;
	top:150px;
	left: 0;
	font-size: 83px;
	font-weight: 500;
    line-height: 1.2;
	color: #fff;
	letter-spacing: 0;
}
.enkaku_since span{
	font-size: 123px;
}
.enkaku_pic1,.enkaku_pic2,.enkaku_pic3,.enkaku_pic4,.enkaku_pic5,.enkaku_pic6{position: absolute;}
.enkaku_pic1{left: 0;bottom: 41%;width: 356px;}
.enkaku_pic2{left: 5%;bottom: 22%;width: 356px;}
.enkaku_pic3{left: 12%;bottom: 5%;width: 250px;}
.enkaku_pic4{right: 0;top: 35%;width: 250px;}
.enkaku_pic5{right: 0;bottom: 30%;width: 356px;}
.enkaku_pic6{right: 9%;bottom: 10%;width: 250px;}
.enkaku_pic__animation{
	opacity : 0;
	visibility: hidden;
	transition: 3s;
	transform: translateY(0px);
}
/*アニメーション要素までスクロールした時のスタイル*/
.enkaku_pic__animation--active{
	opacity: 1;
	visibility: visible;
	transition-delay: 1s;
	transform: translateY(0);
}

@media screen and (max-width: 1640px){
	.enkaku_pic1{left: 0;bottom: 41%;width: 256px;}
	.enkaku_pic2{left: 5%;bottom: 22%;width: 256px;}
	.enkaku_pic3{left: 12%;bottom: 5%;width: 200px;}
	.enkaku_pic4{right: 0;top: 40%;width: 200px;}
	.enkaku_pic5{right: 0;bottom: 21%;width: 256px;}
	.enkaku_pic6{right: 5%;bottom: 8%;width: 200px;}
}
@media screen and (max-width: 1100px){
	.enkaku_pic2 {left: 0%;}
	.enkaku_pic4 {top: 45%;}
}
@media screen and (max-width: 1024px){
	.about .message {padding: 200px 0px 150px;clip-path: polygon(0 10%, 100% 0%, 100% 90%, 0 100%);}
	.about_flex {justify-content: space-between;}
	.gaiyo_left, .gaiyo_right {margin-left: 0px;}
	.about .license_txt {margin: 0 0 120px 0px;}
}
@media screen and (max-width: 960px){
	.about .president h3.midashi,.about h3.midashi1, .about h3.midashi2, .about h3.midashi3, .about h3.midashi4, .about h3.midashi5,.enkakubg h3.midashi{font-size: 20px;}
	.about .president h3.midashi {background: url(../images/about_MESSAGE.png) no-repeat left 80px center / contain;}
	.about h3.midashi1{background: url(../images/about_OVERVIEW.png) no-repeat left 40px center/contain;}
	.about h3.midashi2{background: url(../images/about_LICENSE.png) no-repeat left 100px center/contain;}
	.about h3.midashi3{background: url(../images/about_SALESOFFICE.png) no-repeat left 60px center/contain;}
	.about h3.midashi4{background: url(../images/about_SHOWROOM.png) no-repeat left 120px center/contain;}
	.about h3.midashi5{background: url(../images/about_GROUPCOMPANIES.png) no-repeat left 120px center/contain;}
	.enkakubg h3.midashi {background: url(../images/about_HISTORY.png) no-repeat left 40px center / contain;margin-top: 0px;}
	.enkaku_flex { flex-flow: column;margin-bottom: 80px;}
	.enkakubg { padding: 100px 0px 200px;position: static;margin-bottom: 0px;}
	.time-schedule {width: calc(100% - 20px);border-left: 1px solid #9FAEBE;}
	.time-schedule span.time {margin-left: 0;text-align: left;font-size: 18px;}
	.time-schedule span.time::after {right: 103px;top: 5px;}
	.time-schedule .sch_title {padding-left: 0px;}
	.time-schedule .sch_box {margin-left: 0px;border-left:none;}
	.enkaku_picflex{width: 90%; margin: auto; display: flex;align-items: center;justify-content: space-between;flex-flow: wrap;}
	.enkaku_picflex img:nth-child(n+3) {margin-top: 20px;}
	.enkaku_pic1, .enkaku_pic2, .enkaku_pic3, .enkaku_pic4, .enkaku_pic5, .enkaku_pic6 {position: static;width: 48%;}
	.enkaku_since {top: 0;left: auto;right:0; font-size: 40px;}
	.enkaku_since span {font-size: 60px;}
}
@media screen and (max-width: 768px){
	.about .message {padding: 120px 0px 100px;clip-path: polygon(0 5%, 100% 0%, 100% 95%, 0 100%);}
	.about .message .flex {display: block;}
	.about .president {width: 100%;}
	.about .president_pic {width: 50%;margin: 0 auto 40px;}
	.about .president h3.midashi {background: url(../images/about_MESSAGE.png) no-repeat left 80px center / auto 40px;}
	.about h3.midashi1{background: url(../images/about_OVERVIEW.png) no-repeat left 40px center/auto 40px;}
	.about h3.midashi2{background: url(../images/about_LICENSE.png) no-repeat left 110px center/auto 40px;}
	.about h3.midashi3{background: url(../images/about_SALESOFFICE.png) no-repeat left 70px center/auto 40px;}
	.about h3.midashi4{background: url(../images/about_SHOWROOM.png) no-repeat left 130px center/auto 40px;}
	.about h3.midashi5{background: url(../images/about_GROUPCOMPANIES.png) no-repeat left 130px center/auto 40px;}
	.enkakubg h3.midashi {background: url(../images/about_HISTORY.png) no-repeat left 40px center / auto 40px;}
	.about_flex{display: block;}
	.gaiyo_left{margin-bottom: 40px;}
	.about_flex_eigyousyo{flex-flow: column;}
	.eigyousyo {width: 100%;}
	.about_flex_eigyousyo .eigyousyo:nth-child(1){margin-bottom: 40px;}
	.showroom, .group {width: 100%;}
	.group_left {width: 80%;margin: 0px auto 30px;}
	.group_right {width: 80%;margin: auto;}
	.group_left .group_ttl, .group_right .group_ttl {margin-bottom: 10px;}
}
@media screen and (max-width: 450px){
	.about{padding-bottom: 10px;}
	.about .message {margin-bottom: 60px;}
	.about h3.midashi1, .about h3.midashi2, .about h3.midashi3, .about h3.midashi4, .about h3.midashi5 {margin-bottom: 30px;}
	#license {padding-top: 60px;}
	.about .license_txt {margin: 0 0 60px 0px;}
	.showroom, .group,.about_flex_eigyousyo{margin-bottom: 60px;}
	.about .president h3.midashi {background: url(../images/about_MESSAGE.png) no-repeat left 100px center / auto 17px;}
	.about h3.midashi1{background: url(../images/about_OVERVIEW.png) no-repeat left 60px center/auto 17px;}
	.about h3.midashi2{background: url(../images/about_LICENSE.png) no-repeat left 125px center/auto 17px;}
	.about h3.midashi3{background: url(../images/about_SALESOFFICE.png) no-repeat left 80px center/auto 17px;}
	.about h3.midashi4{background: url(../images/about_SHOWROOM.png) no-repeat left 140px center/auto 17px;}
	.about h3.midashi5{background: url(../images/about_GROUPCOMPANIES.png) no-repeat left 140px center/auto 17px;}
	.enkakubg h3.midashi {background: url(../images/about_HISTORY.png) no-repeat left 60px center / auto 17px;margin-bottom: 40px;}
	.gaiyo_txt,.eigyousyo table{padding-left: 25px;}
	.gaiyo_txt::before,.eigyousyo table::before{top: 10px;width: 15px;}
	.gaiyo_txt a{pointer-events: none!important;}
	.showroom .ttl{padding: 15px 10px;background: url(../images/about_arrow.png) no-repeat center right 10px / 15px;background-color: #75B5C4;}
	.group .ttl {padding: 15px 10px;background: url(../images/about_arrow.png) no-repeat center right 10px / 15px;background-color: #6EB280;}
	.enkakubg {background: url(../images/about_enkakubg_sp.jpg) no-repeat center center / cover;background-attachment: scroll;padding: 60px 0px 120px;}
	.enkaku_flex {margin-bottom: 0px;}
	.time-schedule{width: 100%;display: flex;overflow-x: scroll;border-left: none;padding-left: 0px;}
	.time-schedule li{width: calc( 80% - 40px );margin: 5px 0px;flex-shrink: 0;border-top: 1px solid #9FAEBE;padding-right: 40px;padding-top: 20px;}
	.time-schedule .mt-10{margin-top: 0px;}
	.time-schedule .sch_title {font-size: 14px;}
	.time-schedule .sch_box {display: block;padding: 10px 0px;}
	.time-schedule span.time {font-size: 16px;width: auto;}
	.time-schedule span.time::after { width: 10px;height: 10px;right: 0;left: 0;top: -25px;}
	.enkaku_since {font-size: 18px;}
	.enkaku_since span {font-size: 40px;}
	.enkaku_picflex{display: none;}
}

/*採用情報***************************/
.recruit_mv{
	background: url("../images/recruit_mvbg.png") no-repeat top right/contain;
	width: 100%;
    height: 100vh!important;
}
.recruit_mv_slider{
	position: relative;
}


/* スリックスライダー */
.zoom-fade{
	width: 90%;
    height: 85vh;
	overflow: hidden; 
	background-color: #fff;
	border-top-right-radius: 80px;
	border-bottom-right-radius: 80px;
}
.zoom-fade__item {
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	height: 85vh!important;
}
.zoom-fade__item:first-child {
	background-image: url(../images/recruit_mv1.jpg);
}

.zoom-fade__item:nth-child(2) {
	background-image: url(../images/recruit_mv2.jpg);
}
.add-animation {
  /* アニメーション名 アニメーションにかかる時間 アニメーションの実行前後の状態 */
  /* zoom-fade 10秒 [実行前]最初のキーフレーム（0%） → [実行後]最後のキーフレーム（100%） */
  animation: zoom-fade 10s both;
}

@keyframes zoom-fade {

  0% {
    /*transform: scale(1.05);*/
    transform: scale(1.2);
  }

  100% {
    /*transform: scale(1);*/
    transform: scale(1);
  }

}
.recruit_mainttl{
	position: absolute;
	top:40%;
	right:0;
	transform:translate(0%,-50%);
}
.recruit_mainttl p{
	text-align: right;
	margin: 60px 0px;
}
.bgextend{
	animation-name:bgextendAnimeBase;
	animation-duration:1s;
	animation-fill-mode:forwards;
	position: relative;
	overflow: hidden;/*　はみ出た色要素を隠す　*/
	opacity:0;
}

@keyframes bgextendAnimeBase{
  from {
    opacity:0;
  }

  to {
    opacity:1;  
}
}

/*中の要素*/
.bgappear{
	animation-name:bgextendAnimeSecond;
	animation-duration:1s;
	animation-delay: 0.6s;
	animation-fill-mode:forwards;
	opacity: 0;
	background-color: #fff;
	font-size: 50px;
	font-weight: bold;
	padding: 20px 80px;
	letter-spacing: 0.12em;
}

@keyframes bgextendAnimeSecond{
	0% {
	opacity: 0;
	}
	100% {
	opacity: 1;
}
}

/*右から左*/
.bgRLextend{
	font-size: 50px;
	padding: 10px 0px;
}
.bgRLextend::before{
	animation-name:bgRLextendAnime;
	animation-duration:1s;
	animation-fill-mode:forwards;
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #004E98;/*伸びる背景色の設定*/
	padding: 10px 0px;
	top: -10px;
	
}
@keyframes bgRLextendAnime{
	0% {
		transform-origin:right;
		transform:scaleX(0);
	}
	50% {
		transform-origin:right;
		transform:scaleX(1);
	}
	50.001% {
		transform-origin:left;
	}
	100% {
		transform-origin:left;
		transform:scaleX(0);
	}
}
.bgappearTrigger,
.bgRLextendTrigger{
    opacity: 0;
}
.recruit_en{
	font-size: 125px;
	color:#fff;
	position: absolute;
	bottom: 40px;
	right: 60px;
	font-weight: 300;
	letter-spacing: 0;
}
.fadeUp{
animation-name:fadeUpAnime;
animation-duration:1.5s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeUpAnime{
  from {
    opacity: 0;
  transform: translateY(100px);
  }

  to {
    opacity: 1;
  transform: translateY(0);
  }
}
.font_red{
	color: #C6405B;
}

.recruit_catch{
	margin: 150px 0px 50px;
	text-align: center;
	display: block;
}
.recruit_catch img{
	max-width: 744px;
	width: 80%;
	margin: auto;
	display: block;
}
.recruit_catch .catch{
	text-align: center;
	font-size: 70px;
	font-weight: bold;
	line-height: 1.3;
	letter-spacing: 0.13em;
	margin: 50px 0px;
}
.recruit_catch .txt{
	text-align: left;
	display: inline-block;
	font-size: 16px;
    line-height: 1.6;
}
.recruit_job{
	background-color: #F2F3F5;
	padding-bottom: 150px;
}
.anchor{
	padding-top: 100px;
}
.recruit_job .pos,.recruit_welfare .pos{
	position: relative;
}
.recruit_job .pos img{
	position: absolute;
	top:50%;
	right: 0;
	transform: translate(0%, -50%);
	width: 362px
}
.recruit_welfare .pos img{
	position: absolute;
	top:50%;
	right: 0;
	transform: translate(0%, -50%);
	width: 320px
}
.recruit_job .ttlobi,.recruit_welfare .ttlobi{
	background: url("../images/recruit_moyou.png") no-repeat top left/242px;
	background-color: #04223E;
	height: 205px;
	margin-bottom: 100px;
}
.recruit_job .ttl,.recruit_welfare .ttl{
	display: flex;
    flex-direction: column;
    justify-content: center;
    height: 205px;
}
.recruit_job .ttl p,.recruit_welfare .ttl p{
	color: #fff;
	font-family: "Caveat", serif;
	font-size: 30px;
	letter-spacing: 0.05em;
}
.recruit_job .ttl h2,.recruit_welfare .ttl h2{
	color: #fff;
	font-size: 35px;
    letter-spacing: 0.1em;
}
.recruit_job .item{
	position: relative;
    background: url(../images/recruit_jobbg.png) no-repeat center center / 100%;
    width: 748px;
    height: 230px;
}
.recruit_job .item .pos{
	position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
	width: 63%;
}
.recruit_job .item .syokusyu{
	font-size: 26px;
	color: #C6405B;
	font-weight: bold;
	margin-bottom: 15px;
}
.recruit_job .item .txt{
	font-size: 16px;
	letter-spacing: 0em;
}
.recruit_job .item img{
	position: absolute;
    width: 87px;
    top: 50%;
    left: 40px;
    transform: translate(-50%, -50%);
}

/*アニメーション要素のスタイル*/
.left-right__animation{
	opacity : 0;
	visibility: hidden;
	transition: 2s;
	transform: translateX(-100px);
	margin: 30px 0 0 5%;
}
.right-left__animation{
	opacity : 0;
	visibility: hidden;
	transition: 2s;
	transform: translateX(180px);
	margin: 30px 5% 0 auto;
}
.right-left__animation .item{
	margin: 0 0 0 auto;
}
/*アニメーション要素までスクロールした時のスタイル*/
.left-right__animation--active{
	opacity: 1;
	visibility: visible;
	transform: translateX(0);
}
.right-left__animation--active{
	opacity: 1;
	visibility: visible;
	transform: translateX(0);
}

.recruit_job .bosyu{
	color: #C6405B;
	font-weight: bold;
	font-size: 20px;
	border-left: 7px solid #C6405B;
    padding: 5px 0px 5px 20px;
	letter-spacing: 0.15em;
	margin: 80px 0 20px;
}
.recruit_welfare{
	background-color: #F2F3F5;
	padding-top: 150px;
}
.recruit_welfare .flex{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	padding: 0px 0px 150px;
}
.recruit_welfare .box{
	width: 20%;
}
.recruit_welfare .box img{
	width: 100%;
}
.recruit_welfare .box .midashi{
	text-align: center;
	color: #fff;
	background-color: #04223E;
	padding: 10px 0px;
	margin: 20px 0px;
}
.recruit_welfare .box .txt{
	font-size: 16px;
}

/*アコーディオン全体*/
.accordion-content {
  display: none;
}
.accordion-header {
  background-color: #04223E;
  padding: 15px 20px;
  transition: background .3s ease;
  cursor: pointer;
  position: relative;
}
.accordion-header::before,
.accordion-header::after{
  position:absolute;
  content:'';
  top:1px;
  right:20px;
  bottom:0;
  width:12px;
  height:2px;
  margin:auto;
  background:#fff;
}
.accordion-header::after{
  transform:rotate(-90deg);
  transition:transform 0.3s;
}
.accordion-header.active::after{transform:rotate(0deg);}

.accordion-content table{
	width: 100%;
	border-collapse:collapse;
}
.accordion-content table th,.accordion-content table td{
	border-bottom: 1px solid #04223E;
	color: #04223E;
	font-size: 16px;
}
.accordion-content table th{
	width: 10%;
    text-align: left;
    padding: 15px 20px;
    text-align-last: justify;
    vertical-align: top;
}
.accordion-content table td{
	width: 50%;
    padding: 15px 0px 15px 10%;
}
.accordion-header span,
.accordion-content span{
  position: relative;
	color: #fff;
    font-weight: bold;
	font-size: 20px;
    letter-spacing: 0.2em;
}
.r_message{
	background-color: #F2F3F5;
}
.r_message .sticky{
  position: -webkit-sticky;
  position: sticky;
  top: 60px;
  width: 100%;
  height: 100vh;
  margin: 0 auto;
  background: url("../images/recruit_message.jpg") no-repeat center center/cover;
}
.r_message .ttl{
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
	width:100%;
}
.r_message .ttl p{
	text-align: center;
	color: #fff;
	font-size: 165px;
	font-family: "Caveat", serif;
	letter-spacing: -0.05em;
}
.r_message .ttl h2{
	text-align: center;
	color: #fff;
	font-size: 35px;
}
.recruit_message_left,.recruit_message_right{
	box-shadow: 3px 3px 3px 0px rgba(0, 0, 0, 0.3);
	background-color: #fff;
	width: 800px;
	padding: 50px;
	position: relative;
	display: flex;
	align-items: flex-start;
	justify-content: space-around;
}
.recruit_message_left img,.recruit_message_right img{
	width: 214px;
	margin-right: 20px;
}
.recruit_message_left{margin: 0 auto 0 0;}
.recruit_message_right{margin: 0 0 0 auto;}
.r_message .mt{margin-top: 200px}
.r_message .syozoku{
	color: #C6405B;
	font-weight: bold;
	font-size: 20px;
	margin-bottom: 10px;
	text-align: left;
}
.r_message .syozoku span{
	margin-left: 20px;
}
.r_message .txt{
	font-size: 16px;
	line-height: 1.8;
}
.recruit_contact{
	background-color: #fff;
	width: 80%;
	padding: 10% 0%;
	max-width: 760px;
	margin: 100px auto 0px;
}
.recruit_contact p{
	text-align: center;
}
.recruit_contact_ttl{
	color: #04223E;
	font-size: 25px;
	font-weight: bold;
	letter-spacing: 0.12em;
	text-align: center;
	margin-bottom: 30px;
}
.recruit_contact p{
	text-align: center;
}
.recruit_tel{
	font-size: 40px;
	font-weight: bold;
	color: #04223E;
	border: 1px solid #04223E;
	text-align: center;
	display: block;
	margin: 10px auto;
    width: 60%;
}
.recruit_tel_time{
	font-size: 14px;
}
.recruit_contact_btn{
	background: url(../images/linkbtn_arrow_w.png) no-repeat center right 20px/10px;
	background-color: #04223E;
	color: #fff;
	display: block;
	padding: 30px 3%;
    margin: 30px auto 0px;
    width: 54%;
	text-align: center;
}
.recruit_contact_btn:hover{
	background-color: #207CD3;
}
.recruit_company{
	display: flex;
	flex-flow: wrap;
	margin: 100px auto 150px;
    padding-top: 60px;
}
.recruit_company_txtbg{
	width: 50%;
	height: 900px;
	border: 50px solid #04223E;
  box-sizing: border-box;
	padding: 95px;
	display: flex;
    flex-direction: column;
    justify-content: center;
}
.company_ttl{
	font-size: 35px;
	font-weight: bold;
	letter-spacing: 0.15em;
}
.company_txt{
	font-size: 16px;
	line-height: 1.7;
    margin: 20px 0px;
}
#r_company table{
	color: #04223E;
}
#r_company table th{
	text-align: left;
	vertical-align: top;
	width: 120px;
}
#r_company table th,#r_company table td{
	font-size: 16px;
}
#r_company table td a{color: #04223E;}
#r_company .btn{
	display: block;
	background: url(../images/linkbtn_arrow_w.png) no-repeat center right 20px / 9px;
    background-color: #C6405B;
    text-align: center;
    color: #fff;
    width: 280px;
    padding: 20px;
    margin: 30px 0 0 auto;
}
#r_company .btn:hover{
	background: url(../images/linkbtn_arrow_w.png) no-repeat center right 20px / 9px;
    background-color: #E0143D;
}

/*画像出現*/
.recruit_company_img{
	width: 50%;
}
.company_pic{
	background: url("../images/recruit_company.jpg") no-repeat center center/cover;
	width: 100%;
	height: 900px;
}
@media screen and (max-width: 1625px){
	.recruit_job .ttl, .recruit_welfare .ttl{padding-left: 140px;}
}
@media screen and (max-width: 1570px){
	.recruit_company_txt {height: 650px;padding: 150px 120px;}
	.company_ttl {font-size: 30px;letter-spacing: 0.10em;}
}
@media screen and (max-width: 1536px){
	.recruit_mv {background: url(../images/recruit_mvbg.png) no-repeat bottom right / contain;}
	.recruit_en{font-size: 100px;}
}
@media screen and (max-width: 1366px){
	.recruit_en {font-size: 8vw;}
	.recruit_company_txtbg{padding: 60px;}
}
@media screen and (max-width: 1280px){
	.recruit_mainttl p{margin: 45px 0px;}
	.bgappear,.bgRLextend{font-size: 42px;}	
	.recruit_en {font-size: 6.5vw;}
}
@media screen and (max-width: 1024px){
	.company_pic,.recruit_company_txtbg{height: 1000px;}
}
@media screen and (max-width: 960px){
	.zoom-fade{height: 90vh;}
	.zoom-fade__item {height: 90vh !important;}
	.bgappear {font-size: 40px;padding: 20px;}
	.bgRLextend{font-size: 40px;}
	.recruit_mainttl p {margin: 30px 0px;}
	.recruit_en {right: 20px;}
	.recruit_catch {margin: 150px 0px;}
	.recruit_catch .catch {font-size: 40px;margin: 30px 0px;}
	.anchor {padding-top: 0px;}
	.recruit_job .ttl p, .recruit_welfare .ttl p {font-size: 20px;}
	.recruit_job .ttl h2, .recruit_welfare .ttl h2 {font-size: 24px;}
	.recruit_job .ttlobi, .recruit_welfare .ttlobi,.recruit_job .ttl, .recruit_welfare .ttl{height: 150px;}
	.recruit_job .ttlobi, .recruit_welfare .ttlobi {background: url(../images/recruit_moyou.png) no-repeat top left / 180px;background-color: #04223E;margin-bottom: 70px;}
	.recruit_job .pos img {width: 262px;}
	.recruit_job .item { width: 100%;height: 150px;}
	.recruit_job .item img {width: 50px;}
	.left-right__animation {margin: 30px 0 0 0;}
	.right-left__animation {margin: 30px 0 0 auto;}
	.recruit_job .item .syokusyu {font-size: 20px;margin-bottom: 5px;}
	.r_message .sticky{top: 0px;}
	.r_message .ttl p {font-size: 100px;}
	.r_message .ttl h2 {font-size: 25px;}
	.recruit_message_left, .recruit_message_right{width: 80%;}
	.recruit_welfare .pos img {width: 220px;}
	.recruit_company {flex-flow: column-reverse;margin: 100px auto;padding-top: 0px;}
	.recruit_company_txtbg,.recruit_company_img{width: 100%;height: auto;}
	.recruit_company_txtbg.recruit_company_txt {height: auto;}
	.company_pic{height: 600px;}
}
@media screen and (max-width: 768px){
	.accordion-header span, .accordion-content span {font-size: 16px;}
	.accordion-content table th, .accordion-content table td{display: block;}
	.accordion-content table th{width: calc(100% - 40px);padding: 15px 20px 5px 20px;text-align-last: left;border-bottom: none;}
	.accordion-content table td{width: calc(100% - 40px);padding: 0px 20px 15px;}
	.recruit_contact{width: 100%;}
	.recruit_contact_ttl {font-size: 16px;}
	.recruit_tel{width: 80%;}
	.recruit_contact_btn {width: 74%;}
	.recruit_welfare .flex {flex-flow: wrap;padding: 0px 0px 80px;}
	.recruit_welfare .box {width: 48%;}
	.recruit_welfare .box:nth-child(n+3) {margin-top: 20px;}
	.company_ttl {font-size: 24px;}
}
@media screen and (max-width: 640px){
	.recruit_job .pos img {width: 162px;}
	.recruit_welfare .pos img {width: 140px;}
}
@media screen and (max-width: 500px){
	.recruit_job .ttlobi, .recruit_welfare .ttlobi {background: url(../images/recruit_moyou.png) no-repeat top left / 70px;background-color: #04223E;margin-bottom: 40px;}
	.recruit_job .ttl, .recruit_welfare .ttl {padding-left: 50px;}
	.recruit_job .ttlobi, .recruit_welfare .ttlobi, .recruit_job .ttl, .recruit_welfare .ttl {height: 100px;}
	.recruit_job .ttl p, .recruit_welfare .ttl p {font-size: 14px;}
	.recruit_job .ttl h2, .recruit_welfare .ttl h2 {font-size: 20px;}
	.recruit_job .pos img,.recruit_welfare .pos img{width: 100px;}
}
@media screen and (max-width: 450px){
	.recruit_mv{position: relative;}
	.recruit_en{bottom: 80px;}
	.zoom-fade {width: 97%;height: 97vh;}
	.zoom-fade__item {height: 97vh !important;}
	.zoom-fade__item:first-child {background-image: url(../images/recruit_mv1.jpg);background-position: left center!important;}
	.recruit_mainttl {top: 50%;line-height: 1.5;}
	.bgappear{font-size: 24px;padding: 15px;}
	.bgRLextend{font-size: 24px;}
	.bgRLextend::before {padding: 5px 0px;top: -5px;}
	.recruit_catch {margin: 80px 0px;}
	.recruit_catch .catch {font-size: 22px;margin: 20px 0px;}
	.recruit_catch .txt {font-size: 14px;}
	.recruit_job {padding-bottom: 100px;}
	.recruit_job .item {background: url(../images/recruit_jobbg_sp.png) no-repeat center center / 100%;height: 180px;margin-bottom: 20px;}
	.recruit_job .item .syokusyu {font-size: 16px;}
	.recruit_job .item .txt {font-size: 14px;}
	.right-left__animation {margin: 0px 0 0 auto;}
	.left-right__animation {margin: 0px 0 0 0;}
	.recruit_job .item img {left: 20px;width: 40px;}
	.recruit_job .bosyu {font-size: 16px;}
	.accordion-content table th, .accordion-content table td{font-size: 14px;}
	.recruit_tel {font-size: 20px;padding: 10px;}
	.recruit_contact_btn {width: 80%;}
	.r_message .sticky{position: static;height: 300px;display: flex;flex-direction: column;justify-content: center;align-items: center;}
	.r_message .ttl{position: static;transform: none;}
	.r_message .ttl p {font-size: 60px;}
	.r_message .ttl h2 {font-size: 20px;}
	.recruit_message_left, .recruit_message_right{width: 80%;margin: 30px auto;padding: 50px 5%;display: block;}
	.recruit_message_left img, .recruit_message_right img {width: 150px;margin: 0 auto 20px;display: block;}
	.r_message .syozoku,.r_message .txt,.recruit_welfare .box .txt{font-size: 14px;}
	.r_message .mt{margin-top: 0px}
	.r_message__animation{
	opacity : 0;
	visibility: hidden;
	transition: 1s;
	transform: translateY(20px);
}
/*アニメーション要素までスクロールした時のスタイル*/
.r_message__animation--active{
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}
	.recruit_welfare {padding-top: 100px;margin-top: -30px;}
	.recruit_company { margin: 100px auto 80px;}
	.recruit_company_txtbg{border: 20px solid #04223E;padding: 30px;}
	.company_ttl {font-size: 20px;}
	.company_txt {font-size: 14px;}
	#r_company table th, #r_company table td {font-size: 14px;display: block;width: 100%;}
	#r_company table td{margin-bottom: 10px;}
	#r_company .btn {width: calc(100% - 40px);margin: 30px 0 0 0;}
	.company_pic{height: 400px;}
}
@media screen and (max-width: 320px){
	.bgappear,.bgRLextend{font-size: 20px;}
}

/*採用エントリー***************************/
.entry{
	margin: 40px 0px 150px;
}
.entry .bosyubox{
	background-color: #004e98;
	max-width: 340px;
    width: 70%;
    box-shadow: 8px 8px 0px 0px rgba(4, 34, 62, 1);
    margin: 0 auto 80px;
    padding: 100px 10%;
}
.entry .bosyu{
	font-size: 20px;
	text-align: center;
	color: #fff;
	font-weight: bold;
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
	letter-spacing: 0.15em;
	padding: 30px 0px;
	margin-bottom: 30px;
}
.entry .flex{
	display: flex;
	align-items: center;
	justify-content: flex-start;
}
.entry .bosyubox .flex:nth-child(3){
	margin-top: 20px;
}
.entry .saiyo{
	background-color: #fff;
	color: #004E98;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	width: 132px;
	border-radius: 30px;
	padding: 5px 0px;
}
.entry .syokusyu{
	color: #fff;
	font-size: 16px;
	position: relative;
    padding: 0 0 0 20px;
	margin-left: 20px;
}
.entry .syokusyu::before{
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%); 
    border: 8px solid transparent;
    border-left: 12px solid #fff;
}
.entry .txt{
	font-size: 20px;
	background-color: #E4EDF5;
	text-align: center;
	display: block;
	padding: 40px 20px;
}
.entry .txt p{
	text-align: left;
	display: inline-block;
	line-height: 1.6;
}
.entry .txt p span{
	color: #C6405B;
	font-size: 14px;
}
table.form{
	max-width: 960px;
	width: 100%;
	margin: 80px auto 30px;
	border-collapse:collapse;
	border-bottom: 1px solid #04223E;
}
table.form th,table.form td{
	border-top: 1px solid #04223E;
	padding: 25px 0px;
	color: #04223E;
	font-weight: bold;
}
table.form th{
	text-align: left;
	width: 30%;
}
.hissu{
	color: #C6405B;
    font-size: 0.7em;
    vertical-align: top;
    margin-left: 5px;
}
.bikou{
	font-size: 12px;
}
table.form td{
	width: 70%;
	font-size: 16px;
}
table.form label{
	margin-right: 20px;
	font-size: 16px;
}
table.form input[type="radio"],input[type="checkbox"]{
	transform: scale(1.5);
	display: inline-block;
	top: 0px;
    position: relative;
}
/* Safari */
_::-webkit-full-page-media, _:future, :root table.form input[type="radio"],input[type="checkbox"] {
    vertical-align:text-top;
}
table.form input[type="text"],table.form input[type="tel"],textarea{
	width: 97%;
	padding: 1%;
	border: 1px solid #04223E;
	font-size: 16px;
}
table.form input[type="text"],table.form input[type="tel"]{
	height: 30px;
}
input[type="checkbox"]{
	margin-right: 10px;
}
::placeholder {color: #D9DDE0;}
::-ms-input-placeholder {color: #D9DDE0;}
table.form .form_box{
	width: 40%!important;
}
table.form .form_birth{
	width: 60px!important;
	border: none!important;
	text-align: center;
}
.policy_ttl{
	font-size: 20px;
	text-align: center;
	font-weight: bold;
	padding-top: 20px;
	max-width: 960px;
    width: 100%;
    margin: 0 auto 20px;
}
.policy_txt {
    border: 1px solid #04223E;
    height: 350px;
    overflow: scroll;
    padding: 50px 80px;
    line-height: 1.7;
    font-size: 16px;
	margin: 0 auto 80px;
	max-width: 800px;
    width: calc( 100% - 160px );
}
.doui{
	margin: 0 auto 50px;
    text-align: center;
    font-weight: bold;
}
.entry .btn{
	background: url(../images/linkbtn_arrow_w.png) no-repeat center right 20px/10px;
	background-color: #04223E;
	width: 304px;
    display: block;
    color: #fff;
    padding: 15px 20px;
	border: none;
	text-align: center;
	margin: auto;
	font-size: 18px;
}
.entry .btn:hover{
	background-color: #207CD3;
}
.entry .txt_thanks p{
	text-align: center;
	background-color:#E4EDF5;
	padding: 40px 30px;
}
.modal {
  display: none;
  position: fixed;
  z-index: 1;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0, 78, 152, 0.4);
}
.modal-content {
	background-color: #EBEBEB;
	padding: 150px 20px;
    width: calc(90% - 20px);
    max-width: 560px;
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
	text-align: center;
	display: block;
}
.modal-content p {
  font-size: 20px;
  font-weight: bold;
  text-align: center;
	text-align: left;
	display: inline-block;
}

@media screen and (max-width: 960px){
	.entry {margin: 80px auto 100px;}
	.policy_txt{padding: 50px;width: calc(100% - 100px);}
}
@media screen and (max-width: 768px){
	.entry .txt {font-size: 18px;}
	table.form th,table.form td{display: block;width: 100%;}
	table.form th{padding: 25px 0px 0px;}
	table.form td{border-top: none;padding: 10px 0px 25px;}
	table.form label{display: block; margin-right: 0px;margin-bottom: 5px;}
}
@media screen and (max-width: 450px){
	.entry {margin: 30px auto 80px;}
	.entry .bosyubox{width: 80%;padding: 50px 10%;}
	.entry .flex{flex-flow: column;}
	.entry .syokusyu {margin-left: 0px; margin-top: 10px;}
	.entry .txt {font-size: 14px;padding: 20px;}
	.entry .txt p span {font-size: 10px;}
	table.form {margin: 40px 0px;}
	table.form th {font-size: 16px;}
	table.form input[type="text"],table.form input[type="tel"], textarea {width: 95%;padding: 2%;}
	table.form .form_box {width: 95% !important;}
	.policy_ttl,.doui{font-size: 16px;}
	.policy_txt{padding: 30px;margin-bottom: 50px;font-size: 14px;width: calc(100% - 60px);}
	.entry .btn {width: 100%;font-size: 14px;}
	.modal-content {padding: 80px 20px;}
	.modal-content p {font-size: 16px;padding: 60px 20px;}
}

/*プライバシーポリシー***************************/
body.policy_bg{
	background-color: #F6F6F6;
}
.privacypolicy{
	background: url(../images/privacypolicy_bg.png) no-repeat top left/443px;
	margin: 0px auto 150px;
}
.privacypolicy .sub .oswald{
	margin: 0 auto;
	text-align: center;
	font-size: 80px;
	padding-top: 180px;
}
.privacypolicy .sub{
	display: block;
}
.privacypolicy .sub h2{
	text-align: center;
    margin: 0 auto 70px;
	font-size: 30px;
}
.privacypolicy .txt{
	font-size: 16px;
	line-height: 1.9;
	letter-spacing: 0;
	padding: 5%;
	background-color: #fff;
}
.privacypolicy .txt a{
	color: #5A96C9;
	word-break: break-all;
}
@media screen and (max-width: 960px){
	.privacypolicy {background: url(../images/privacypolicy_bg.png) no-repeat top left / 300px;margin: 0px auto 100px;}
	.privacypolicy .sub .oswald{font-size: 50px;padding-top: 100px;}
	.privacypolicy .sub h2 {font-size: 20px;}
}
@media screen and (max-width: 768px){
	.privacypolicy {background: url(../images/privacypolicy_bg.png) no-repeat top left / 200px;}
	.privacypolicy .sub .oswald {font-size: 40px;}
}
@media screen and (max-width: 450px){
	.privacypolicy {background: url(../images/privacypolicy_bg.png) no-repeat top left / 40%;margin: 0px auto 80px;}
	.privacypolicy .sub .oswald {font-size: 30px;padding-top: 60px;}
	.privacypolicy .sub h2 {font-size: 16px;margin: 0 auto 50px;}
	.privacypolicy .txt{font-size: 14px;}
}

/*フッター***************************/
footer{
	background-color: #04223E;
	margin-top: 260px;
	padding: 120px 0px;
}
footer .f_logo{
	width: 410px;
	margin-bottom: 40px;
}
footer .flex{
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}
footer .links{
	display: flex;
	width: 65%;
}
footer .information{
	margin-right: 5%;
}
footer .information img{
	width: 381px;
	margin-bottom: 40px;
}
footer .information p{
	font-size: 16px;
	margin-bottom: 15px;
    padding-bottom: 10px;
	border-bottom: 1px solid #fff;
	display: table;
	color: #fff;
	line-height: 1.7;
}
footer .information p a{
	font-size: 16px;
	color: #04223E;
}
footer .information p span{
	margin-left: 20px;
}
footer .information .policylink{
	font-size: 18px;
	color: #fff;
}
footer ul a{
	color: #fff;
	font-size: 16px;
	margin-bottom: 17px;
	display: block;
}
footer ul a:last-child{margin-bottom: 0;}
footer ul a li{
	background: url(../images/linkbtn_arrow_w.png) no-repeat center right/6px;
	padding-right: 30px;
}
footer ul a span{
	margin-left: 20px;
}
footer .copyright{
	font-size: 13px;
	color: #fff;
}
.about_footer{margin-top: 0!important;}
@media screen and (max-width: 1366px){
	footer .f_logo {width: 280px;}
	footer .information {margin-right: 8%;}
	footer .information p,footer ul a{font-size: 14px;}
	footer .information p span{margin-left: 0;display: block;}
	footer .information .policylink {font-size: 16px;}
	footer ul a span{margin-left: 0;display: block;}
	footer ul a li {padding-right: 50px;}
	footer .links {width: 55%;}
}
@media screen and (max-width: 960px){
	footer {padding: 60px 0px 50px;margin-top: 180px;}
	footer .links {width: 100%;margin-bottom: 60px;}
	footer .flex {flex-flow: column;}
	footer .copyright {font-size: 10px;}
}
@media screen and (max-width: 450px){
	footer {margin-top: 135px;}
	footer .f_logo {width: 200px;}
	footer .links{flex-flow: column;}
	footer .information {margin-right: 0%;margin-bottom: 40px;}
	footer .information p, footer ul a{width: 100%;}
}