
/*====================================================
////id mv
====================================================*/
#mv {
	overflow: hidden;
}
#mv .sub_head {
	font-size: .52em;
	margin-bottom: .5em;
	padding: .2em .5em;
	width: 60%;
		max-width: 400px;
}
#mv .main_head small {
	font-size: .95em;
}
#mv .sideline_deco {
	border-left-width: 5px;
}
#mv .btnBox {
	justify-content: center;
}

/* ////////// mobile ////////// */

@media screen and (max-width: 960px) {
	#mv {
		margin-top: -70px;
	}
	#mv .innerBox {
		padding-top: 0;
		max-width: 500px;
	}
	#mv .imgBox {
		overflow: hidden;
		/* top: -70px;
		height: calc(100% + 70px); */
	}
	#mv .imgBox .coverImg {
		padding-top: 80%;
		height: 0;
	}
	#mv .txtBox {
		padding-top: 40px;
	}
	#mv .headBox {
		/* position: absolute;
			top: 110px;
			left: 0;
			right: 0; */
	}
	#mv h1 {
		line-height: 1.2;
		text-shadow: 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff;
	}
	#mv .sub_head {
		font-size: .7em;
		text-shadow: none;
	}
	#mv .copyBox {
		font-size: 1.15em;
		margin: 30px 0;
	}
}

@media screen and (min-width:769px) and (max-width:960px) {
	#mv .imgBox .coverImg {
		padding-top: 600px;
	}
}

@media screen and (min-width:540px) and (max-width:960px) {
	#mv .imgBox {
		margin: 0 calc((50vw - 250px) * -1);
		width: 100vw;
	}
	#mv .imgBox .coverImg {
		/* padding-top: 600px; */
	}
 	#mv h1 {
		font-size: 4.0rem;
	}
}

@media screen and (max-width:540px) {
	#mv .imgBox {
		margin: 0 -10vw;
		width: 120vw;
	}
	#mv .imgBox .coverImg {
		/* padding-top: calc(90% + 70px); */
	}
	#mv .imgBox .coverImg img {
		-o-object-position: top;
		   object-position: top;
	}
	#mv h1 {
		font-size: 2em;
	}
}

/* ////////// tablet ////////// */

@media screen and (min-width:960px) {
	#mv .imgBox {
		margin: auto;
		position: absolute;
			left: -50vw;
			right: -50vw;
		width: 100vw;
		z-index: -1;
	}
	#mv .imgBox .coverImg {
		height: 100%;
		padding-top: 0;
	}
}

@media screen and (min-width:769px) and (max-width:1080px) {
	/* #mv .imgBox {
		top: -70px;
		height: calc(100% + 70px);
	}
	#mv .imgBox .coverImg img {
		-o-object-position: top;
		   object-position: top;
	}
	#mv .innerBox {
		height: 950px;
		padding-top: 40px;
	}
	#mv .txtBox {
		height: 100%;
	}
	#mv .txtBox .txt-inner {
		grid-template-rows: auto auto 1fr;
		height: 100%;
	}
	#mv h1 {
		font-size: 5.0rem;
		line-height: 1.4;
	}
	#mv .copyBox {
		margin-top: 20px;
	}
	#mv .copyBox p {
		font-size: 2.0rem;
	}
	#mv .btnBox {
		align-items: flex-end;
		justify-content: center;
	}
	#mv .copyBox p br.hidden-tab {
		display: none;
	} */
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 960px) {
	#mv .innerBox {
		max-width: none;
		padding: 0;

	}
	#mv .imgBox {
		top: -100px;
		height: calc(100% + 100px);
	}
	#mv .txtBox {
		background: rgba(255, 255, 255, .8);
		display: flex;
			align-items: center;
			justify-content: center;
		padding: 80px 0;
		width: 50%;
		height: 100%;
	}
	#mv h1 {
		font-size: 3.6vw;
	}
	#mv .copyBox {
		margin-top: 40px;
	}
	#mv .copyBox p {
		font-size: 1.9vw;
	}
	#mv .btnBox {
		margin-top: 50px;
	}
}

@media screen and (min-width:1280px) {
	#mv .innerBox {
	}
	#mv .txtBox {
		width: 45%;
	}
	#mv h1 {
		font-size: 3.3vw;
	}
	#mv .copyBox p {
		font-size: 1.8vw;
	}
	#mv .copyBox br.hidden-pc {
		display: block;
	}
}

@media screen and (min-width:1580px) {
	#mv .innerBox {
		height: 880px;
	}
	#mv .txtBox {
		width: 720px;
	}
	#mv h1 {
		font-size: 5.8rem;
	}
	#mv .copyBox p {
		font-size: 2.6rem;
	}
}

/*====================================================
////id banner
====================================================*/
#banner .itemBox {
	margin-bottom: 40px;
	padding: 30px 8px;
}
#banner .item {
	padding: 0 8px;
}
#banner .item .coverImg {
	padding-top: 54.8%;
}
#banner .slick-dots {
	margin: auto;
	position: absolute;
		top: calc(100% + 20px);
		left: 0;
		right: 0;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
}

@media screen and (min-width:540px) and (max-width:769px) {
}

@media screen and (max-width:540px) {
	#banner .itemBox {
		padding: 30px 0;
	}
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {
}

@media screen and (min-width:1280px) {
}

/*====================================================
////id introduction
====================================================*/
#introduction h2 .head_sub {
	font-size: .65em;
}
#introduction .item {
	box-shadow: 0 0 20px rgba(37, 116, 72, 0.15);
	padding: 15px 15px 20px;
}
#introduction .item .txtBox {
	margin-top: 15px;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 960px) {
	#introduction .itemBox {
		grid-gap: 20px;
		margin: auto;
		max-width: 600px;
	}
}

@media screen and (min-width:769px) and (max-width:960px) {
	#introduction h2 {
		font-size: 3.8rem;
	}
	#introduction .item {
		grid-template-columns: 40% 1fr;
	}
	#introduction .item .txtBox {
		font-size: 2.5rem;
	}
	#introduction .catchcopy {
		font-size: 3.4rem;
	}
}

@media screen and (max-width: 769px) {
	#introduction h2 {
		font-size: 1.6em;
	}
	#introduction .item .coverImg {
		padding-top: 55%;
	}
	#introduction .item .txtBox {
		font-size: 1.4em;
		height: 3em;
	}
	#introduction .catchcopy {
		font-size: 1.5em;
	}
}

@media screen and (min-width:540px) and (max-width:769px) {
}

@media screen and (max-width:540px) {
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 960px) {
	#introduction h2 {
		font-size: 4.2rem;
	}
	#introduction .itemBox {
		grid-gap: 20px;
	}
	#introduction .item {
		width: calc(100% / 3 - 40px / 3);
	}
	#introduction .item .txtBox {
		font-size: 2.2vw;
		height: 4em;
	}
	#introduction .copyBox  {
	}
	#introduction .catchcopy {
		font-size: 3.6rem;
	}
}

@media screen and (min-width:1280px) {
	#introduction h2 {
		font-size: 4.7rem;
	}
	#introduction .itemBox {
		grid-gap: 40px;
	}
	#introduction .item {
		width: calc(100% / 3 - 80px / 3);
	}
	#introduction .item .txtBox {
		font-size: 2.5rem;
	}
	#introduction .copyBox  {
		font-size: 2.0rem;
	}
	#introduction .catchcopy {
		font-size: 4.0rem;
	}

}

/*====================================================
////id detail
====================================================*/
#detail {
	overflow: hidden;
}
#detail .teamBox .box-inner::before,
#detail .teamBox .box-inner::after {
	content: '';
	margin: auto;
	position: absolute;
		left: 0;
		right: 0;
	width: 1px;
	height: 50px;
}
#detail .teamBox .box-inner::before {
	background: #fff;
	bottom: 0;
}
#detail .teamBox .box-inner::after {
	background: #369F65;
	top: 100%;
}
#detail .teamBox h2 {
	margin-top: -.8em;
}
#detail .imgBox {
	margin: auto;
	width: 90%;
		max-width: 700px;
}
#detail .copyBox .catchcopy {
	background: url('../img/top/catchcopy_bg.png') no-repeat center / contain;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
	#detail .teamBox {
		width: 100%;
	}
	#detail .copyBox .catchcopy {
		margin: 0 -3vw;
		width: calc(100% + 6vw);
	}
	#detail .copyBox h3 {
		font-size: 1.7em;
		padding: 1.5em 0;
		width: 100%;
	}
	#detail .copyBox .txtBox {
		font-size: 1.1em;
		text-align: left;
	}
}

@media screen and (min-width:540px) and (max-width:769px) {
}

@media screen and (max-width:540px) {
	#detail .imgBox {
		width: 100%;
	}
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
	#detail .copyBox h3 {
		font-size: 4.2rem;
		padding: 1.5em 0 1em;
	}
	#detail .copyBox .txtBox {
		font-size: 1.15em;
	}
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {
}

@media screen and (min-width:1280px) {
	#detail .teamBox h2 {
		font-size: 4.0rem;
	}
	#detail .copyBox h3 {
		font-size: 4.7rem;
	}
}

/*====================================================
////id detail_item
====================================================*/
#detail_item .itemBox:not(.slick-slider) {
	display: grid;
		grid-gap: 30px;
		grid-template-columns: repeat(3, 1fr);
}
#detail_item .item .item-inner {
	height: 100%;
	padding: 15px;
}
#detail_item .item .coverImg {
	padding-top: 57.57%;
}
#detail_item .item dt {
	background: url('../img/top/detail_item_deco.png') no-repeat center bottom / contain;
	background-size: 40%;
	margin: 15px 0 10px;
	padding-bottom: 1.2em;
	position: relative;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
	#detail_item .innerBox {
		width: 100%;
	}
	#detail_item .slick-dots li.slick-active button:before {
		background: #3E3E3E;
	}
	#detail_item .item {
		padding: 0 2vw;
	}
	#detail_item .item dt {
		background-size: 120px;
		font-size: 1.3em;
	}
}

@media screen and (min-width:540px) and (max-width:769px) {
}

@media screen and (max-width:540px) {
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
	#detail_item .item dt {
		font-size: 2.2rem;
	}
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {
	#detail_item .itemBox:not(.slick-slider) {
		grid-template-columns: 1fr;
	}
	#detail_item .item .item-inner {
		grid-gap: 20px;
		grid-template-columns: 40% 1fr;
	}
	#detail_item .item .coverImg {
		height: 100%;
	}
	#detail_item .item dt {
		background-size: 120px;
	}
}

@media screen and (min-width:1280px) {
	#detail_item .item {
		padding: 20px;
	}
	#detail_item .item dt {
		font-size: 2.6rem;
	}
}

/*====================================================
////id product
====================================================*/
#product .item dd {
	grid-gap: 1em;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 960px) {
	#product h2 {
	}
	#product .innerBox {
		width: 100%;
	}
	#product .itemBox {
		margin: auto;
		max-width: 600px;
	}
	#product .item {
		flex-direction: column-reverse;
	}
	#product .item .txtBox {
		padding: 40px;
	}
	#product .item dt {
		font-size: 1.3em;
	}
	#product .item .imgBox {
		height: 50vw;
			max-height: 300px;
	}
}

@media screen and (max-width: 769px) {
	#product .item .txtBox {
		padding: 30px;
	}
}

@media screen and (min-width:540px) and (max-width:769px) {
}

@media screen and (max-width:540px) {
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 960px) {
	#product .itemBox {
		box-shadow: 0 0 30px rgba(37, 116, 72, 0.15);
	}
	#product .item:nth-child(even) {
		flex-direction: row-reverse;
	}
	#product .item .txtBox {
		padding: 40px 30px;
		position: relative;
	}
	#product .item .txtBox::before {
		background: url('../img/top/product_deco.png') no-repeat center right / contain;
		content: '';
		margin: auto;
		position: absolute;
			top: 0;
			right: 10px;
			bottom: 0;
		width: 20%;
		height: calc(100% - 50px);
	}
	#product .item .txt-inner {
		min-height: 230px;
	}
	#product .item dt {
		font-size: 2.2rem;
		margin-bottom: .3em;
	}
	#product .item .imgBox {
		width: 50%;
	}
	#product .item .imgBox .coverImg {
		height: 100%;
		padding-top: 0;
	}
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {
}

@media screen and (min-width:1280px) {
	#product h2 {
		font-size: 4.7rem;
	}
	#product .item .txtBox {
		padding: 50px;
	}
	#product .item dt {
		font-size: 2.8rem;
	}
}

/*====================================================
////id news
====================================================*/
#news::before {
	background: url('../img/top/news_bg.jpg') no-repeat top left / cover;
	content: '';
	margin: auto;
	position: absolute;
		top: 0;
		right: 0;
	width: 80%;
		max-width: 700px;
	height: 100%;
}
#news::after {
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1));
	content: '';
	margin: auto;
	position: absolute;
		bottom: 0;
		right: 0;
	width: 100%;
	height: 100px;
}
#news h2 .jp {
	font-size: .52em;
}
#news .item {
	border-bottom: dotted 1px #C6C6C6;
}
#news .item a {
	padding: 1em 0;
}

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
	#news::before {
		top: -50px;
		width: 100%;
	}
}

@media screen and (min-width:540px) and (max-width:769px) {
}

@media screen and (max-width:540px) {
	#news h2 {
		font-size: 8vw;
	}
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
	#news .item a {
		font-size: 1.6rem;
		grid-template-columns: 10em 1fr;
	}
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {
}

@media screen and (min-width:1280px) {
	#news h2 {
		font-size: 4.0rem;
	}
}

/*====================================================
////id closeCopy
====================================================*/
#closeCopy .txtBox {
	border: solid #369F65;
	border-width: 0 5px;
	padding: 0 3vw;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
	#closeCopy .txtBox {
		padding: 0 1.8em;
		text-align: left;
	}
}

@media screen and (min-width:540px) and (max-width:769px) {
	#closeCopy .txtBox {
		font-size: 2.3rem;
	}
}

@media screen and (max-width:540px) {
	#closeCopy .txtBox {
		font-size: 4.2vw;
	}
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
	#closeCopy .txtBox {
		font-size: 2.4vw;
	}
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {
	#closeCopy .txtBox {
		font-size: 2.6rem;
	}
}

@media screen and (min-width:1280px) {
	#closeCopy .txtBox {
		font-size: 3.0rem;
	}
}

/*====================================================
////id xxx
====================================================*/

/* ////////// mobile ////////// */
@media screen and (max-width: 769px) {
}

@media screen and (min-width:540px) and (max-width:769px) {
}

@media screen and (max-width:540px) {
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769px) {
}

/* ////////// tablet ////////// */
@media screen and (min-width:769px) and (max-width:960px) {
}

@media screen and (min-width:1280px) {
}
