@charset "UTF-8";
:root{
	--body : #423604;
	--link : #423604;
	--primary : #5da126;
}
/*--------------------------------------------
MV
---------------------------------------------*/
#mv{
	position : relative;
	font-size : 0;
}
#mv:before{
	content : "";
	display : block;
	background : url("../images/ui/bread/bread01.png") 0 0 / contain no-repeat;
	position : absolute;
	pointer-events : none;
	z-index : 1;
}
#mv picture{
	overflow : hidden;
}
#mv picture > img{
	width : 100%;
	height : 100%;
	object-fit : cover;
	font-family : "object-fit: cover;";
}
#mv li > a , #mv li > div{
	display : block;
}
#mv .slick-dots{
	display : flex;
	justify-content : center;
	align-items : center;
	z-index : 5;
	position : relative;
}
#mv .slick-dots li{
	font-size : 0;
}
#mv .slick-dots button{
	color : transparent;
	font-size : 0;
	vertical-align : top;
	cursor : pointer;
	width : 100%;
	height : 100%;
	overflow : hidden;
	border-radius : 50%;
}
#mv .slick-dots .slick-active button{
	background-color : #401000;
}
#mv .slick-dots button{
	background-color : rgba(255,255,255,.5);
}
@media screen and (max-width: 768px){
	#mv{
		padding-top : calc( 4 * 100vw / 768 );
	}
	#mv:before{
		width : calc( 263 * 100% / 768 );
		height : calc( 166 * 100vw / 768 );
		top : calc( 975 * 100vw / 768 );
		left : calc( -8 * 100% / 768 );
	}
	#mv div.slick-slide{
		width : calc( 672 * 100vw / 768 );
		height : calc( 1000 * 100vw / 768 );
		margin-left : calc( 12 * 100vw / 768 );
		margin-right : calc( 12 * 100vw / 768 );
	}
	#mv .slick-dots{
		padding-top : calc( 58 * 100vw / 768 );
		padding-bottom : calc( 58 * 100vw / 768 );
	}
	#mv .slick-dots li + li{
		margin-left : calc( 13 * 100vw / 768 );
	}
	#mv .slick-dots button{
		width : calc( 25 * 100vw / 768 );
		height : calc( 25 * 100vw / 768 );
	}
	#mv > a{
		position : absolute;
		display : block;
		width : calc( 26 * 100% / 768 );
		top : calc( 1001 * 100vw / 768 );
		right : calc( 34 * 100% / 768 );
	}
}
@media print,screen and (min-width: 769px){
	#mv:after{
		content : "";
		display : block;
		position : absolute;
		pointer-events : none;
	}
}
@media screen and (min-width: 769px) and (max-width:1485px){
	#mv:before{
		width : calc( 263 * 100% / 1160 );
		height : calc( 166 * 100vw / 1160 );
		top : calc( 445 * 100vw / 1160 );
		left : calc( -183 * 100% / 1160 );
	}
	#mv:after{
		width : calc( 145 * 100% / 1160 );
		height : calc( 132 * 100vw / 1160 );
		top : calc( 394 * 100vw / 1160 );
		left : calc( 1071 * 100% / 1160 );
		background : url("../images/ui/bread/bread02.png") 0 0 / contain no-repeat;
	}
	#mv div.slick-slide{
		width : calc( 1060 * 100vw / 1160 );
		height : calc( 500 * 100vw / 1160 );
		margin-left : calc( 5 * 100vw / 1160 );
		margin-right : calc( 5 * 100vw / 1160 );
	}
	#mv .slick-dots{
		padding-top : calc( 16 * 100vw / 1160 );
		padding-bottom : calc( 16 * 100vw / 1160 );
	}
	#mv .slick-dots li + li{
		margin-left : calc( 7 * 100vw / 1160 );
	}
	#mv .slick-dots button{
		width : calc( 14 * 100vw / 1160 );
		height : calc( 14 * 100vw / 1160 );
	}
}
@media print,screen and (min-width: 1486px){
	#mv:before{
		width : 263px;
		height : 166px;
		top : 445px;
		left : calc( 50% - 753px );
	}
	#mv:after{
		background : url("../images/ui/bread/breads01.png") 0 0 / contain no-repeat;
		width : 284px;
		height : 191px;
		top : 394px;
		left : calc( 50% + 501px );
	}
	#mv div.slick-slide{
		width : 1060px;
		height : 500px;
		margin-left : 5px;
		margin-right : 5px;
	}
	#mv .slick-dots{
		padding-top : 16px;
		padding-bottom : 16px;
	}
	#mv .slick-dots li + li{
		margin-left : 7px;
	}
	#mv .slick-dots button{
		width : 14px;
		height : 14px;
	}
}
/*--------------------------------------------
NEWS
---------------------------------------------*/
#news h2{
	text-align : center;
}
#news .wrap > ul > li a{
	background-color : #fff;
	display : flex;
}
#news .wrap > ul > li > a > div{
	flex-grow : 1;
}
#news picture{
	flex-shrink : 0;
}
#news time , #news h3{
	letter-spacing : .1em;
}
#news time{
	display : block;
}
#news figure ul{
	display : flex;
	align-items : center;
}
@media screen and (max-width: 768px){
	#news .wrap{
		padding-top : calc( 66 * 100vw / 768 );
		padding-bottom : calc( 106 * 100vw / 768 );
	}
	#news h2 img{
		height : calc( 78 * 100vw / 768 );
	}
	#news .wrap > ul{
		margin-top : calc( 49 * 100vw / 768 );
	}
	#news .wrap > ul > li{
		width : 100%;
	}
	#news .wrap > ul > li + li{
		margin-top : calc( 24 * 100vw / 768 );
	}
	#news .wrap > ul > li > a{
		align-items : flex-start;
	}
	#news picture{
		width : calc( 200 * 100vw / 672 );
	}
        #news li a picture img{
            object-fit:cover;
            width: calc( 200 * 100vw / 672 );
            height: calc( 200 * 100vw / 672 );
        }    
	#news a > div{
		padding-left : calc( 20 * 100% / 672 );
		padding-right : calc( 20 * 100% / 672 );
		padding-bottom : calc( 20 * 100% / 672 );
		position : relative;
	}
	#news .tag-categories{
		width : 100%;
		justify-content : flex-end;
		margin-top : calc( ( -10 - 4 ) * 100vw / 768 );
		margin-left : calc( -4 * 100vw / 768 );
	}
	#news .tag-categories li{
		margin-top : calc( 4 * 100vw / 768 );
		margin-left : calc( 4 * 100vw / 768 );
	}
	#news time , #news h3{
		font-size : 2.6rem;
		line-height : 1.5385;
	}
	#news time{
		margin-top : calc( 15 * 100vw / 768 );
	}
	#news h3{
		margin-top : calc( 10 * 100vw / 768 );
	}
	#news .box{
		display : flex;
		justify-content : space-between;
		margin-top : calc( 38 * 100vw / 768 );
	}
	#news .link01{
		margin-right : 0;
		margin-left : 0;
	}
	#news figure{
		margin-left : calc( 32 * 100% / 672 );
	}
	#news figure ul li + li{
		margin-left : calc( 25 * 100vw / 768 );
	}
	#news figure ul img{
		height : calc( 80 * 100vw / 768 );
	}
}
@media print,screen and (min-width: 769px){
	#news .wrap{
		position : relative;
	}
	#news .wrap > ul{
		display : flex;
		flex-wrap : wrap;
	}
	#news li a{
		align-items : center;
	}
        #news li a picture img{
            object-fit:cover;
            width: 160px;
            height: 160px;
        }
	#news time , #news h3{
		font-size : 1.4rem;
		line-height : 1.3;
	}
	#news figure{
		position : absolute;
		display : flex;
		align-items : center;
	}
}
@media screen and (min-width: 769px) and (max-width:1485px){
	#news .wrap{
		padding-top : calc( 49 * 100vw / 1160 );
		padding-bottom : calc( 78 * 100vw / 1160 );
	}
	#news h2 img{
		height : calc( 51 * 100vw / 1160 );
	}
	#news .wrap > ul{
		margin-top : calc( 43 * 100vw / 1160 );
	}
	#news .wrap > ul > li{
		width : calc( 340 * 100% / 1060 );
		height : calc( 160 * 100vw / 1160 );
	}
	#news .wrap > ul > li:not(:nth-child(3n+1)){
		margin-left : calc( 20 * 100% / 1060 );
	}
	#news .wrap > ul > li:nth-child(n+4){
		margin-top : calc( 20 * 100vw / 1160 );
	}
	#news picture{
		width : calc( 160 * 100% / 340 );
	}
        #news li a picture img{
            object-fit:cover;
            width: 160px;
            height: 160px;
        }
	#news a > div{
		padding-left : calc( 11 * 100% / 340 );
		padding-right : calc( 11 * 100% / 340 );
	}
	#news .tag-categories{
		margin-top : calc( -5 * 100vw / 1160 );
		margin-left : calc( -4 * 100% / 158 );
	}
	#news .tag-categories li{
		margin-top : calc( 5 * 100vw / 1160 );
		margin-left : calc( 4 * 100% / 162 );
		height : calc( 20 * 100vw / 1160 );
		border-radius : calc( 10 * 100vw / 1160 );
		font-size : 1.2rem;
		padding-left : calc( 10 * 100vw / 1160 );
		padding-right : calc( 10 * 100vw / 1160 );
	}
	#news time{
		margin-top : calc( ( 13 - 2.1 ) * 100vw / 1160 );
	}
	#news h3{
		margin-top : calc( 5 * 100vw / 1160 );
	}
	#news .box{
		margin-top : calc( 54 * 100vw / 1160 );
	}
	#news figure{
		top : calc( 41 * 100vw / 1160 );
		right : calc( 50 * 100% / 1160 );
	}
	#news figcaption img{
		height : calc( 17 * 100vw / 1160 );
	}
	#news figure ul{
		margin-left : calc( 13 * 100vw / 1160 );
	}
	#news figure ul li + li{
		margin-left : calc( 7 * 100vw / 1160 );
	}
	#news figure ul img{
		height : calc( 45 * 100vw / 1160 );
	}
}
@media print,screen and (min-width: 1486px){
	#news .wrap{
		padding-top : 49px;
		padding-bottom : 78px;
		padding-left : 150px;
		padding-right : 150px;
	}
	#news h2 img{
		height : 51px;
	}
	#news .wrap > ul{
		margin-top : 43px;
	}
	#news .wrap > ul > li{
		width : 340px;
		height : 160px;
	}
	#news .wrap > ul > li:not(:nth-child(3n+1)){
		margin-left : 20px;
	}
	#news .wrap > ul > li:nth-child(n+4){
		margin-top : 20px;
	}
	#news picture{
		width : 160px;
	}
	#news a > div{
		padding : 10px;
	}
	#news .tag-categories{
		margin-top : -5px;
		margin-left : -4px;
	}
	#news .tag-categories li{
		margin-top : 5px;
		margin-left : 4px;
		height : 20px;
		border-radius : 10px;
		font-size : 1.2rem;
		padding-left : 10px;
		padding-right : 10px;
	}
	#news time{
		margin-top : calc( 9px - 2.1px );
	}
	#news h3{
		margin-top : 5px;
	}
	#news .box{
		margin-top : 54px;
	}
	#news figure{
		top : 41px;
		right : 150px;
	}
	#news figcaption img{
		height : 17px;
	}
	#news figure ul{
		margin-left : 13px;
	}
	#news figure ul li + li{
		margin-left : 7px;
	}
	#news figure ul img{
		height : 45px;
	}
}