/* -HEADER
--------------------------------------------------------------------------------------------- */
#header {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: 100%;
    height: 70px;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1001;
	background-color: #fff;
	-webkit-transition: all 0.4s ease-in-out, color 0.4s;
	-o-transition: all 0.4s ease-in-out, color 0.4s;
	transition: all 0.4s ease-in-out, color 0.4s;
}
@media screen and (min-width: 768px){
    #header{
        height: 85px;
    }
}
@media screen and (min-width: 1200px){
    #header{
        height: 100px;
    }
}

body.fixed{
    top: 0px;
    position: fixed;
    width: 100%;
    height: 100%;
	z-index: 1001;
}

/* CONTAINER  */ 
.header_container {
	width: 92.3%;
	margin: 0 auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	position: relative;
	z-index: 1001;
}
@media screen and (min-width: 768px){
	.header_container{
		width: 94.11%;
	}
}
/* logo */
.scroll_logo{
    margin-bottom: 0;
	position: relative;
	transition: .4s;
	display: flex;
	align-items: center;
	font-size: 0.84rem;
}
.scroll_logo a{
	display: block;
	width: 65px;
	margin-right: 15px;
}
.scroll_logo img{
    display: block;
    width: 100%;
    height: 100%;
	position: relative;
	z-index: 1;
}
@media screen and (min-width: 768px){
    .scroll_logo a{
        width: 75px;
    }
}
@media screen and (min-width: 1200px){
    .scroll_logo a{
        width: 80px;
    }
}
.header_right{
    display: flex;
    align-items: center;
    justify-content: flex-end;
	width: calc(100% - 200px);
}
/* お問い合わせbtn */
.header_contact{
	background-color: #000;
	color: #fff;
	font-size: 0.769rem;
	text-align: center;
	letter-spacing: 0;
	border-radius: 35px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 110px;
	height: 29px;
	transition: .3s;
}
.header_contact:hover{
	text-decoration: none;
	color: #fff;
	opacity: 0.7;
	transition: .3s;
}
@media screen and (min-width: 1200px){
	.header_contact{
		font-size: 0.8rem;
		width: 130px;
		height: 34px;
	}
}
@media screen and (max-width: 767px){
	.header_contact{
		display: none;
	}
}

/* menu */
.fixed_nav{
	margin-right: 40px;
	margin-bottom: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
}
.fixed_nav > li{
	list-style: none;
	margin-left: 30px;
}
.fixed_nav > li:first-child{
	margin-left: 0;
}
.fixed_nav > li a{
	display: inline-block;
	color: #000;
	font-size: 0.92rem;
	letter-spacing: 0;
	transition: .3s;
}
.fixed_nav > li a:hover{
	text-decoration: none;
	opacity: 0.7;
}
@media screen and (min-width: 992px){
	.fixed_nav{
		margin-right: 40px;
	}
	.fixed_nav > li{
		margin-left: 20px;
	}
}
@media screen and (min-width: 1200px){
	.fixed_nav{
		margin-right: 50px;
	}
	.fixed_nav > li a{
		font-size: 0.93rem;
	}
}
@media screen and (min-width: 1400px){
	.fixed_nav > li{
		margin-left: 40px;
	}
}
@media screen and (max-width: 991px){
	.fixed_nav{
		display: none;
	}
}

/* header_tel */
.header_tel_block{
	display: flex;
}
.header_tel{
	display: flex;
	flex-direction: column;
	letter-spacing: 0.05em;
	line-height: 1.75;
	font-size: 0.61rem;
	margin-left: 32px;
}
.header_tel + .header_tel{
	margin-left: 20px;
}
.header_tel .f-eng{
	display: block;
	letter-spacing: 0;
	font-size: 1.23rem;
	line-height: 1;
	margin-top: 0.16rem;
}
@media screen and (min-width: 992px){
	.header_tel{
		margin-left: 52px;
	}
	.header_tel + .header_tel{
		margin-right: 10px;
	}
}
@media screen and (min-width: 1200px){
	.header_tel{
		font-size: 0.66rem;
		margin-left: 52px;
	}
	.header_tel .f-eng{
		font-size: 1.26rem;
	}
}
@media screen and (min-width: 1400px){
	.header_tel{
		margin-left: 62px;
	}
}
@media screen and (min-width: 1600px){
	.header_tel + .header_tel{
		margin-left: 30px;
	}
}
@media screen and (max-width: 767px){
	.header_tel{
		display: none;
	}
}


/* TRIGGER */
.menu-trigger {
	width: 36px;
	height: 10px;
	position: relative;
	cursor: pointer;
	z-index: 1001;
}
.menu-trigger span {
	width: 100%;
	height: 1px;
	background-color: rgba(0,0,0,0.75);
	position: absolute;
	left: 0;
	-webkit-transition: 0.2s;
	-o-transition: 0.2s;
	transition: 0.2s;
}
.menu-trigger span:first-child {
	top: 0;
}
.menu-trigger span:last-child {
	bottom: 0;
}
.menu-trigger.tgl-active span{
	background-color: rgba(0,0,0,0.75);
}
.menu-trigger.tgl-active span:first-child {
	top: 50%;
	-webkit-transform: translateY(-50%) rotate(45deg);
	-ms-transform: translateY(-50%) rotate(45deg);
	transform: translateY(-50%) rotate(45deg);
}
.menu-trigger.tgl-active span:last-child {
	top: 50%;
	bottom: unset;
	-webkit-transform: translateY(-50%) rotate(-45deg);
	-ms-transform: translateY(-50%) rotate(-45deg);
	transform: translateY(-50%) rotate(-45deg);
}
.view .menu-trigger span,
.header_page .menu-trigger span{
	background-color: #333;
}
@media screen and (min-width: 768px){
	.menu-trigger{
		margin-left: 42px;
	}
}
@media screen and (min-width: 992px){
	.menu-trigger{
		display: none;
	}
}

/* MENU TOGGLE */
.menu-toggle {
  position: fixed;
  z-index: -1;
  width: 100vw;
  height: 100vh;
  overflow-y: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
  transition: 0.2s ease-in-out;
  background-color: #fff;
  top: 0;
  right: 0;
  opacity: 0;
  color: #000;
  visibility: hidden;
}
.menu-toggle.active {
  z-index: 1000;
  opacity: 1;
  visibility: visible;
}
.menu-toggle_inner{
	padding-top: 70px;
	width: 76.92%;
	margin-right: auto;
	margin-left: auto;
	display: flex;
	flex-direction: column;
}
@media screen and (min-width: 768px){
	.menu-toggle_inner{
		padding-top: 85px;
	}
}

/* toggle_nav */
.toggle_nav{
	margin-top: 50px;
	position: relative;
	padding-bottom: 4.84rem;
	margin-bottom: 4.11rem;
}
.toggle_nav::after{
	position: absolute;
	content: "";
	width: 100%;
	height: 1px;
	background-color: rgba(190,190,190,0.5);
	bottom: 0;
	left: 0;
}
.toggle_nav li{
	list-style: none;
	text-align: center;
}
.toggle_nav li + li{
	margin-top: 1.77rem;
}
.toggle_nav li a{
	display: inline-block;
	color: #000;
	font-size: 1.15rem;
	transition: .3s;
}
.toggle_nav li a:hover{
	text-decoration: none;
	color: #000;
	opacity: 0.7;
}
.toggle_company{
	font-size: 1rem;
	letter-spacing: 0.05em;
	line-height: 1.75;
	margin-bottom: 2.07rem;
}
.toggle_company span{
	display: block;
	margin-bottom: 0.5rem;
}
.toggle_policy{
	color: #808080;
	font-size: 0.92rem;
	letter-spacing: 0;
	display: inline-block;
}
.toggle_policy:hover{
	color: #808080;
	text-decoration: none;
	opacity: 0.7;
}
.toggle_copy{
	color: #808080;
	font-size: 0.92rem;
	letter-spacing: 0.02em;
	font-weight: 400;
	margin-top: 2.74rem;
}
@media screen and (min-width: 768px){
	.toggle_nav{
		margin-top: 80px;
	}
}


/**************************
MV
**************************/
.mv{
    position: relative;
    width: 92.3%;
	margin-right: auto;
	margin-left: auto;
    overflow: hidden;
	padding-top: 70px;
}
.mv_slider{
    width: 100%;
    height: 70vh;
	margin-bottom: 0;
}
.mv_slider .slick-list,
.mv_slider .slick-track{
    width: 100%;
    height: 100%;
}
.mv_slider .mv_item {
	list-style: none;
	width: 100%;
	height: 100%;
	overflow: hidden; /* 念のため追加 */
}
.mv_slider .mv_item img {
	width: 160%;
	max-width: unset;
	height: 100%;
	object-fit: cover;
	object-position: left center;
}
.mv_txtArea{
	width: 75%;
	max-width: 300px;
	position: absolute;
	bottom: 5%;
	left: 5%;
}
@keyframes moveLeftLong {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-60%);
  }
}
.mv_slider .add-animation img {
  animation: moveLeftLong 20s linear 0s infinite;
}
.pick_post{
	width: 92.3%;
	margin-top: 1.038rem;
	margin-right: auto;
	margin-left: auto;
}
.pick_post ul{
	margin-bottom: 0;
}
.pick_post ul li{
	list-style: none;
	display: flex;
	align-items: center;
	color: #000;
}
.pick_post ul li .info_tit{
	display: block;
	font-size: 0.84rem;
	color: #000;
	letter-spacing: 0;
	transition: .3s;
	position: relative;
}
.pick_post ul li .info_tit::after{
	position: absolute;
	content: "";
	width: 100%;
	height: 1px;
	background-color: rgba(190,190,190,0.5);
	bottom: 0;
	left: 0;
}
.pick_post ul li .info_tit:hover{
	text-decoration: none;
	color: #000;
	opacity: 0.7;
}
.pick_post .info_cat{
	font-size: 0.84rem;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1;
	position: relative;
	padding-right: calc(1rem + 4px);
	margin-right: 1rem;
}
.pick_post .info_cat::after{
	position: absolute;
	content: "";
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background-color: #e67800;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
}
@media screen and (min-width: 768px){
	.mv{
		width: 94.11%;
		height: 70vh;
		padding-top: 85px;
	}
	.mv_slider{
		width: 71%;
		height: 100%;
		margin-left: auto;
	}
	.mv_slider .mv_item{
		padding-right: 5px;
	}
	.mv_slider .mv_item img{
		width: 100%;
		animation: none !important;
	}
	.mv_txtArea{
		width: 36.688%;
		max-width: none;
		top: calc(50% - 14px);
		bottom: unset;
		left: 4.375%;
		transform: translateY(-50%);
	}
	.pick_post{
		width: calc(29% - 10px);
		margin: 0;
		position: absolute;
		left: 0;
		bottom: 0;
	}
}
@media screen and (min-width: 992px){
	.mv{
		height: 100vh;
	}
	.mv_slider{
		width: 75%;
	}
	.mv_txtArea{
		width: 30.688%;
	}
	.pick_post{
		width: 25%;
	}
}
@media screen and (min-width: 1200px){
	.mv{
		padding-top: 100px;
	}
	.mv_slider{
		width: 76.875%;
	}
	.mv_slider .slick-list{
		padding-right: 23.57% !important;
	}
	.mv_slider .mv_item{
		padding-right: 10px;
	}
	.mv_txtArea{
		width: 27.6875%;
		top: calc(50% - 16px);
	}
	.pick_post{
		width: 23.125%;
	}
	.pick_post ul li .info_tit{
		font-size: 0.86rem;
	}
	.pick_post .info_cat{
		font-size: 0.86rem;
	}
}


/**************************
ページヘッダー
**************************/
.page_head{
	width: 92.3%;
	margin-right: auto;
	margin-left: auto;
	text-align: center;
	padding: 7.15rem 0 5.23rem;
}
.head_jp{
	font-size: 2.76rem;
	line-height: 1.5;
	font-weight: 500;
	margin-bottom: 0;
}
.head_en{
	color: #e67800;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1;
	margin-bottom: 0;
}
@media screen and (min-width: 768px){
	.page_head{
		width: 94.11%;
		padding: 10.09rem 0 7.23rem;
	}
}
@media screen and (min-width: 1200px){
	.page_head{
		padding: 13.03rem 0 9.23rem;
	}
	.head_jp{
		font-size: 3.33rem;
	}
	.head_en{
		margin-top: 1.1rem;
	}
}

