/* ******************************************************************
 *	File name		: top.css
 *	Summary			: css base
 * ******************************************************************
 */
/* -----------------------------------------------------------------
   base
----------------------------------------------------------------- */

body::before{
	content:" ";
	position:fixed;
	top:0px;
	left:0px;
	width:100%;
	height:100%;
	margin:0 auto;
	background:url(../../image/base/bg.jpg) no-repeat center center;
	background-size:cover;
	transform: scale(1.2);
	animation: animationZoom 5s ease-in-out forwards;
}
@supports (background-image: url('../../image/base/bg.webp')) {
	body::before {
		background-image: url('../../image/base/bg.webp');
	}
}
@keyframes animationZoom {
	100% { transform: scale(1)}
}



/* --- responsive --- */
@media screen and (max-width:640px){
	body::before{
		display:none;
	}
}


/* -----------------------------------------------------------------
   main_img
----------------------------------------------------------------- */

#main_img{
	display:-webkit-flex;
	display:flex;
	justify-content:center;
	align-items:center;
	position:relative;
	width:100%;
	height:100%;
	z-index:10;
	transition-duration:0.5s;
	}
	#main_img *{
		color:#FFF;
	}
	#main_img > div{
		display:inline-block;
		position:relative;
		width:calc(100% - 12.9vw);
		text-align:left;
	}
	#main_img h1{
		position:relative;
		/* margin-bottom:1.6vw; */
		margin-bottom: 10px;
		display: flex;
		flex-direction: column;
	}
	#main_img h1 span img{
		opacity: 0;
		animation: fadeIn 1.2s ease-out forwards; /* 時間やイージングはお好みで */
		z-index: 1;
	}
	@keyframes fadeIn {
		to { opacity: 1; }
	}
	#main_img h1 span:first-child img{
	}
	
	@-webkit-keyframes syun {
		100% {
			-webkit-transform: translateX(101%);
			transform: translateX(101%);
			visibility: visible
		}
	}
	@keyframes syun {
		100% {
			-webkit-transform: translateX(101%);
			transform: translateX(101%);
			visibility: visible
		}
	}
	@-webkit-keyframes syun-color {
		100% {
			color: #fff
		}
	}

	@keyframes syun-color {
		100% {
			color: #fff
		}
	}
	#main_img h1 span{
		color: rgba(0,0,0,0);
		font-weight: 400;
		display: inline-block;
		-webkit-font-feature-settings: "palt";
		font-feature-settings: "palt";
		overflow: hidden;
		position: relative;
		/* width: 580px; */
		width: 60vmin;
		line-height:1;
		/* margin-bottom: 10px; */
	}
	#main_img h1 span:first-child{
		/* width: 520px; */
		width: 54vmin;
		/* top: 20px; */
	}
	#main_img h1 span::before {
		background-repeat: no-repeat;
		background-position: center;
		background-size: cover;
		content: "";
		display: inline-block;
		vertical-align: middle;
		background-image: -webkit-gradient(linear, left top, right top, from(rgb(0, 171, 235)), to(rgb(8, 116, 220)));
		background-image: linear-gradient(90deg, rgb(0, 171, 235) 0%, rgb(8, 116, 220) 100%);
		position: absolute;
		top: 0;
		visibility: hidden;
		height: 100%;
		width: 100%;
		z-index: 2;
	}
	#main_img h1 span {
		-webkit-animation: syun-color 0ms cubic-bezier(0.1, 0.61, 0.355, 1) forwards;
		animation: syun-color 0ms cubic-bezier(0.1, 0.61, 0.355, 1) forwards
	}
	#main_img h1 span::before {
		-webkit-animation: syun 2000ms cubic-bezier(0.1, 0.61, 0.355, 1) forwards;
		animation: syun 2000ms cubic-bezier(0.1, 0.61, 0.355, 1) forwards;
		-webkit-transform: translateX(-420px);
		transform: translateX(-420px)
	}

	#main_img h1 + p{
		position:relative;
		margin-bottom:2vw;
		font-size:1.20vw;
		font-weight: 500;
		line-height:1.20vw;
		letter-spacing:0.2vw;
	}
	#main_img h2{
		position:relative;
		margin-bottom:1vw;
		font-weight:600;
		font-size:1.8vw;
		text-align:left;
		line-height:1.4;
		letter-spacing:-0.05vw;
		color:#FFF;
		text-shadow: 0px 3px 5px rgba(0, 0, 0, 0.35);
	}
	#main_img h2 + p{
		position:relative;
		width:50vw;
		margin-bottom:0;
		font-weight:500;
		font-size:1.24vw;
		line-height:2.4vw;
		text-shadow: 0px 3px 5px rgba(0, 0, 0, 0.35);
}

#recruit_float{
	position:absolute !important;
	width:185px !important;
	height:185px !important;
	right:5.8vw;
	bottom:5.8vw;
	}
	#recruit_float a{
		display:-webkit-flex;
		display:flex;
		justify-content:center;
		align-items:center;
		position:relative;
		width:100%;
		height:100%;
		font-size:1.5rem;
		background:#00ABEB;
		-moz-border-radius:50%;
		-webkit-border-radius:50%;
		border-radius:50%;
		-moz-box-shadow: 0px 5px 5px rgba(0,0,0,0.4);
		-webkit-box-shadow: 0px 5px 5px rgba(0,0,0,0.4);
		box-shadow: 0px 5px 5px rgba(0,0,0,0.4);
		transition-duration:0.5s;
	}
	#recruit_float a:hover{
		text-decoration:none;
	}
	#recruit_float a::after{
		content:" ";
		position:absolute;
		top:10px;
		left:10px;
		width:calc(100% - 20px);
		height:calc(100% - 20px);
		border-top:2px solid #FFF;
		-moz-border-radius:50%;
		-webkit-border-radius:50%;
		border-radius:50%;
		opacity:0;
		transition-duration:0.5s;
	}
	#recruit_float a:hover::after{
		animation:turn_circle 1.5s linear 0s infinite both;
		opacity:1;
}

@keyframes turn_circle{
	0%   {transform:rotate(0deg);}
	100% {transform:rotate(359deg);}
}

@media print{
	#next_scroll{
		display:none;
	}
}

/* --- responsive --- */
@media screen and (max-width:640px){
	#main_img{
		padding-bottom:160px;
		overflow:hidden;
	}
	#main_img::before{
		content:" ";
		position:absolute;
		top:0px;
		left:0px;
		width:100%;
		height:100%;
		background:url(../../image/base/bg.jpg) no-repeat center center;
		transform: scale(1.2);
		animation: animationZoom 5s ease-in-out forwards;
	}
	@supports (background-image: url('../../image/base/bg.webp')) {
	#main_img::before {
		background-image: url('../../image/base/bg.webp');
	}
}
	#main_img h1{
		position:relative;
		margin-bottom:20px;
		font-size:16.0vw;
		line-height:1.25;
	}
	#main_img h1 span{
		width: 90%;
	}
	#main_img h1 span:first-child{
		width: 85%;
	}
	#main_img h1 span:first-child img,
	#main_img h1 span img{
		/* width: 100%; */
		/* max-width: 100%; */
	}
	#main_img h1 + p{
		position:relative;
		margin-bottom:7.5vw;
		font-size:5vw;
		line-height:1.25;
		letter-spacing:0;
	}
	#main_img h2 + p{
		position:relative;
		width:100%;
		margin-bottom:0;
		font-size:2.5vw;
		line-height:1.75;
	}
	#main_img h2{
		position:relative;
		margin-bottom:2.5vw;
		font-weight:600;
		font-size:3.6vw;
		text-align:left;
		line-height:2;
		/* letter-spacing:-0.05vw; */
		color:#FFF;
	}
	#main_img p{
		font-size: 3vw !important;
	}
	#recruit_float {
		width: 120px !important;
		height: 120px !important;
	}
	#recruit_float a {
		font-size: 1.2rem;
	}
}


@media screen and (max-width:380px){
	#main_img > div {
		width: calc(100% - 16.9vw);
		margin-top:100px;
	}
	#recruit_float {
		width: 100px !important;
		height: 100px !important;
	}
}


/* -----------------------------------------------------------------
   top_slide_box
----------------------------------------------------------------- */

#top_slide_box{
	position:relative;
	width:100%;
	height:500px;
	overflow:hidden;
	}
	#top_slide_box ul{
		display:-webkit-flex;
		display:flex;
		position:relative;
		animation:fade 1.5s ease 0.5s both;
		justify-content: center;
	}
	#top_slide_box ul li{
		width:768px;
		position:relative;
}

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

/* --- responsive --- */
@media screen and (max-width:767px){
	#top_slide_box{
		height:auto;
	}
	#top_slide_box ul{
		display:block;
		left:0px !important;
	}
	#top_slide_box ul li{
		display:none;
		position:relative;
		top:0px;
		left:0px;
	}
	#top_slide_box ul li:nth-child(1),
	#top_slide_box ul li:nth-child(2),
	#top_slide_box ul li:nth-child(3){
		display:block;
	}
}

/* -----------------------------------------------------------------
   section
----------------------------------------------------------------- */

section.fadein{
	transition:0.8s ease-in-out;
	transform:translateY(30px);
	opacity:0;
}
section.fadein.active{
	transform:translateY(0px);
	opacity:1;
}

/* -----------------------------------------------------------------
   outline
----------------------------------------------------------------- */

#outline{
	display:-webkit-flex;
	display:flex;
	justify-content:center;
	align-items:center;
	position:relative;
	width:100%;
	height:550px;
	margin:0 auto;
	padding:0 20px;
	text-align:center;
	background:#00ABEB;
	}
	#outline *{
		color:#FFF;
	}
	#outline > div{
		position:relative;
		width:720px;
		max-width:100%;
		margin:0 auto;
	}
	#outline #outline_title{
		display:-webkit-flex;
		display:flex;
		-webkit-box-pack:justify;
		-ms-flex-pack:justify;
		justify-content:space-between;
		flex-wrap:wrap;
		position:relative;
		margin:0 auto 20px;
		padding:20px;
	}
	#outline #outline_title h2{
		display:-webkit-flex;
		display:flex;
		justify-content:center;
		align-items:center;
		margin:0px;
		font-weight:normal;
		font-size:4.5rem;
		font-family: 'Noto Serif JP', sans-serif;
		letter-spacing:1px;
	}
	#outline #outline_title figure{
		width:150px;
	}
	#outline p{
		display:block;
		width:100%;
		padding:0 20px;
		font-size:1.12rem;
		text-align:justify;
		line-height:1.75;
}
/* --- responsive --- */
@media screen and (max-width:767px){
	#outline{
		height:auto;
		padding:50px 0;
	}
	#outline #outline_title{
		justify-content:center;
	}
	#outline #outline_title h2{
		margin:0 0 15px;
		font-size:2.5rem;
		line-height:1.35;
	}
	#outline #outline_title figure{
		width:150px;
	}
}
@media screen and (max-width:640px){
	#outline p{
		font-size:1.0rem;
		line-height:1.75;
		letter-spacing:0;
	}
}

/* -----------------------------------------------------------------
   whats_tozawabuta
----------------------------------------------------------------- */

#whats_pork{
	position:relative;
	padding:120px 0 0px;
	background:#FFF;
	}
	#whats_pork section{
		width:1260px;
		max-width:100%;
		margin:0 auto;
		line-height:1.5;
	}
	#whats_pork section h2{
		position:relative;
		width:100%;
		margin:0 0 50px;
		font-weight:normal;
		font-size:3.5rem;
		line-height: 1.2;
		font-family:'Noto Serif JP', sans-serif;
		text-align:left;
		transition-duration:0.5s;
}
/* --- responsive --- */
@media screen and (max-width:1300px){
	#whats_pork section h2{
		padding:0 20px;
	}
}
@media screen and (max-width:767px){
	#whats_pork{
		position:relative;
		padding:80px 20px 0px;
		background:#FFF;
		}
		#whats_pork section h2{
			font-size:1.7rem;
	}
}

#pork_contents{
	width:100%;
	}
	#pork_contents ul{
		display:-webkit-flex;
		display:flex;
		-webkit-box-pack:justify;
		-ms-flex-pack:justify;
		justify-content:center;
		flex-wrap:wrap;
		height:450px;
		margin:0 0 80px;
	}
	#pork_contents ul li{
		width:33.3333%;
		background:url(../../image/top/pork_contents_01.jpg) no-repeat 0 0;
		background-size:cover;
	}
	#pork_contents ul li:nth-child(2){background:url(../../image/top/pork_contents_02.jpg) no-repeat 0 0;
		background-size:cover;
	}
	#pork_contents ul li:nth-child(3){background:url(../../image/top/pork_contents_03.jpg) no-repeat 0 0;background-size:cover;
	}
	@supports (background-image: url('../../image/top/pork_contents_01.webp')) {
		#pork_contents ul li{
			background-image: url('../../image/top/pork_contents_01.webp');
		}
		#pork_contents ul li:nth-child(2){
			background-image: url('../../image/top/pork_contents_02.webp');
		}
		#pork_contents ul li:nth-child(3){
			background-image: url('../../image/top/pork_contents_03.webp');
		}
	}
	#pork_contents ul li a{
		display:block;
		position:relative;
		width:100%;
		height:100%;
		padding:185px 60px 0;
		color:#FFF;
		background:rgba(0,0,0,0.3);
		transition-duration:0.5s;
		}
		#pork_contents ul li a:hover{
			text-decoration:none;
			background:rgba(0,0,0,0.6);
	}
	#pork_contents ul li a::before{
		content:"01";
		display:-webkit-flex;
		display:flex;
		justify-content:center;
		align-items:center;
		position:absolute;
		top:0px;
		left:0px;
		width:100%;
		height:140px;
		font-weight:normal;
		font-size:2.8rem;
		text-align:center;
		color:#FFF;
		}
		#pork_contents ul li:nth-child(2) a::before{content:"02";}
		#pork_contents ul li:nth-child(3) a::before{content:"03";}

	#pork_contents ul li a::after{
		content:" ";
		position:absolute;
		left:calc(50% - 24px);
		bottom:30px;
		width:48px;
		height:48px;
		background:url(../../image/top/next.png) no-repeat 0 0;
	}
	#pork_contents ul li a h3{
		margin:0 0 20px;
		font-weight:bold;
		font-size:1.7rem;
		text-align:center;
	}
	#pork_contents ul li a p{
		font-size:1.0rem;
		text-align:left;
		line-height:1.75;
}

/* --- responsive --- */
@media screen and (max-width:767px){
	#pork_contents ul{
		height:auto;
		margin:0 0 80px;
	}
	#pork_contents ul li{
		width:100%;
		height:450px;
	}
}

.top_pork_photo{
	display:-webkit-flex;
	display:flex;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	justify-content:space-between;
	flex-wrap:wrap;
	padding:0 0 100px;
	transition-duration:0.5s;
	}
	.top_pork_photo.reverse{
		flex-direction:row-reverse;
		padding:0 0 0px;
	}
	.top_pork_photo figure{
		width:750px;
		max-width:100%;
		transition-duration:0.5s;
		}
		.top_pork_photo figure img{
			-moz-border-radius:10px;
			-webkit-border-radius:10px;
			border-radius:10px;
	}
	.top_pork_photo > div{
		display:-webkit-flex;
		display:flex;
		justify-content:center;
		align-items:center;
		width:calc(100% - 810px);
		text-align:left;
		transition-duration:0.5s;
	}
	.top_pork_photo > div > div{
		display:inline-block;
}

.top_pork_photo h3{
	margin:0 0 25px;
	font-weight:600;
	font-size:2.5rem;
	line-height:1.5;
	}
	.top_pork_photo h3 + p{
		margin:0 0 25px;
		font-size:1.1rem;
		text-align:justify;
		line-height:1.8;
}

/* --- responsive --- */
@media screen and (max-width:1300px){
	.top_pork_photo{
		padding:0 20px 100px;
	}
	.top_pork_photo > div{
		width:calc(100% - 770px);
	}
}
@media screen and (max-width:1200px){
	.top_pork_photo{
		display:-webkit-flex;
		display:flex;
		-webkit-box-pack:justify;
		-ms-flex-pack:justify;
		justify-content:space-between;
		flex-wrap:wrap;
		padding:0 20px 100px;
		}
		.top_pork_photo figure{
			width:375px;
			}
			.top_pork_photo figure img{
				-moz-border-radius:10px;
				-webkit-border-radius:10px;
				border-radius:10px;
		}
		.top_pork_photo > div{
			display:-webkit-flex;
			display:flex;
			justify-content:center;
			align-items:center;
			width:calc(100% - 400px);
			text-align:left;
		}
		.top_pork_photo > div > div{
			display:inline-block;
	}
}
@media screen and (max-width:767px){
	.top_pork_photo{
		padding:0 0 100px;
	}
	.top_pork_photo figure{
		width:100%;
		margin:0 0 30px;
	}
	.top_pork_photo > div{
		width:100%;
	}

	.top_pork_photo h3{
		font-size:1.5rem;
		}
		.top_pork_photo h3 + p{
			font-size:1.0rem;
			line-height:1.5;
	}
}

#viewmore{
	position:absolute;
	top:100px;
	right:0px;
	}
	#viewmore a::before,
	#viewmore a::after{
		content:" ";
		position:absolute;
		transition-duration:0.5s;
	}
	#viewmore a::before{
		top:calc(50%);
		left:-30px;
		width:16px;
		height:1px;
		background:#0061B1;
	}
	#viewmore a::after{
		top:calc(50% - 5px);
		left:-26px;
		width:10px;
		height:10px;
		border-top:1px solid #0061B1;
		border-right:1px solid #0061B1;
		transform:rotate(45deg);
	}
@media screen and (max-width:440px){
	#viewmore{
		top: 40px;
	}
}


