@charset "UTF-8";
/* CSS Document */

/* common class */
.view-1200{ display: none; }
.view-1200-960{ display: none; }
.view-1200-550{ display: inherit; }
.view-960-550{ display: inherit; }
.view-960-0{ display: inherit; }
.view-550-0{ display: none; }

.flex.vp960-0{ flex-direction: row; }
.flex.vp550-0{ flex-direction: row; }

.center{ text-align: center; }
.center.vp960-0{ text-align: left; }
.center.vp550-0{ text-align: center; }
.pc{
    display: none;
}

.wrap-white.full{
	padding-top:100px;
}
.jp-title{
    font-weight: normal;
    font-size: 27px;
}
.header{
	padding-top: 70px;
}
.contents{
	padding: 0 6%;
	margin: 0;
}
.headline{
    margin-bottom: 50px;
}
.headline .jp-title{
    margin-bottom: 30px;
}
.headline p:has( + .jp-title){
    font-size: 15px;
}
.headline p:has( + .jp-title) span{
	font-weight: normal;
	font-size: 22px;
}
.categorytitles{
	text-align: left;
}
.categorytitles .jp-title{
	font-size: 2.7rem;
	text-align: left;
	margin-bottom: 30px;
}
.categorytitles p.lead{
    font-size: 15px;
}

#mainvis picture img{
}
.pc-center{
    text-align: left;
}

.lead .underline{
    padding-left: 0;
    padding-right: 0;
}
.slick-next.slick-arrow,
.slick-arrow::before{

}
.contents.cnt2{
	width: 100%;
	max-width: 100%;
	padding: 0;
}
.contents.cnt2 .wrap-gray{
	padding: 50px 6% 0;
	background-color: #F3F2EB;
}
.cnt3 .categorytitles figure:first-child{
	margin-bottom:30px;
}
.cnt2 .flex{
	flex-direction: column;
}
.cnt2 .flex > .lbox, .cnt2 .flex > .caption{
	width: inherit;
}
.cnt2 .flex > .caption{
	padding: 10px 0 80px;
}
.cnt2 .flex > .caption h3{
	font-size: 2.7rem;
	font-weight: 600;
	margin-bottom: 30px;
}
.cnt2 .flex > .lbox > ul{
	margin: 0;
	margin-top: 0;
}
.cnt2 .slick-arrow {
	display: none !important;
}
.cnt2 .slickdotsbox .slick-dots{
	display: none;
}
.cnt2 .slickdotsbox-smp .slick-dots{
	justify-content: flex-end;
}
.cnt2 .slickdotsbox-smp{
	margin: 10px 0 30px 0;
}
.cnt3.wrap-gray{
	padding: 80px 0;
}
.cnt3 .categorytitles{
	margin-bottom: 30px;
}
.cnt3 .cnt3-2{
	background-image: url("../img/min550/cnt3_fig01bg.jpg");
	padding: 40px 4vw;
	margin-bottom: 60px;
}
.cnt3 .cnt3-2 figure{
	margin-bottom: 30px;
}
.cnt3 .cnt3-2 .box{
	width: inherit;
	background-color: transparent;
	padding: 0;
}
.cnt3 .cnt3-2 .box .jp-title{
	font-size: 2.2rem;
}
.cnt3 .cnt3-3 .jp-title{
	font-size: 2.2rem;
}
.cnt3 .cnt3-3 .jp-title{
	margin-bottom: 30px;
}
.cnt3 .cnt3-3 .flex{
	flex-direction: column;
	margin: 0 13vw 30px 13vw;
	max-width: calc( 484px + 6vw *2 );
	margin: 0 auto 30px;
}
.cnt3 .cnt3-3 .flex > div{
	width: inherit;
	background-color: #fff;
	border-radius: 15px;
	margin-bottom: 10px;
	padding: 30px 6% 40px;
}
.cnt3 .cnt3-3 .flex > div::before{
	content: none;
}
.cnt3 .cnt3-3 .flex > div .fig img{
	width: 200px;
}
.cnt3 .cnt3-3 .flex .centerflex{
	display: flex;
	justify-content: center;
}
.cnt3 .cnt3-3 .flex .centerflex .jp-title{
	margin-bottom: 30px;
}
.cnt3 .cnt3-3 + .linkicon.right{
	text-align: left;
	margin-left: 14vw;
	max-width: calc(484px + 6vw * 2);
    margin: 0 auto 30px;
}
.cnt4{
	padding: 80px 0;
}
.cnt4 .categorytitles{
	margin: 0 6vw 30px 6vw;
}
.cnt4 .carousel{
	margin: 0 6vw;
}
.cnt4 .carousel .slick-dots{
	margin-top: 30px;
}
.cnt4 .carousel ul .slick-slide{
	margin: 0;
}
.cnt4 .slick-arrow{
	text-indent: -999999px;
    border: none;
    display: block;
    padding: 0;
    margin: 0;
    cursor: pointer;
	height: 0;
}
.cnt4 .slick-next.slick-arrow,
.cnt4 .slick-arrow::before{
	display: block;
}
.cnt4 .slick-arrow::before{
    border-top: 1px solid #967F4B;
    border-right: 1px solid #967F4B;
    top: 100%;
	right: 20px;
	width: 20px;
	height: 20px;
}
.cnt4 .slick-arrow.slick-prev::before {
    left: 20px;
    right: auto;
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
    border-top: 1px solid #967F4B;
    border-right: 1px solid #967F4B;
}
.cnt4 .slick-next.slick-arrow{
	height: 0;
}
.cnt5{
	padding: 80px 0;
}
.cnt5 .categorytitles{
	margin-bottom: 30px;
}
.cnt5 .flex {
	padding: 0;
}
.cnt5 .flex > .caption h3{
	font-size: 2.2rem;
	margin-bottom: 10px;
}
.cnt5 .flex > .caption h3 + h4{
	padding-bottom: 20px;
	margin-bottom: 20px;
}
.cnt5 .flex > .caption .linkicon{
	margin-top: 20px;
}
.cnt5 .flex > figure {
	height: inherit;
}
.cnt5 .flex > figure img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.cnt6{
	padding: 70px 6vw 100px;
}
.cnt6 > .contents{
	padding: 0;
}
.cnt6 .headline .jp-title{
	font-size: 2.2rem;
	margin-bottom: 40px;
}
.cnt6 .headline .jp-title span{
	font-size: 2.6rem;
}
.cnt6 .headline p:has( + .jp-title) span{
	font-size: 2.2rem;
}
.cnt6 .box{
	justify-content: flex-start;
	gap:5%;
}
.cnt6 .box .caption{
	margin-bottom: 0;
	width: 50%;
}
.cnt6 .box .caption h3{
	margin-bottom: 15px;
}
.cnt6 .box {
	position: relative;
	margin: 0;
	padding-bottom:30px;
	padding-top: 45px;
	align-items: center;
}
.cnt6 .box .circle{
	width: 150px;
	height: 35px;
	border-radius: 5px;
	dssmargin-top: -42px;
	margin-bottom: 30px;
	position: absolute;
	top:-17px;
	left:calc( 50% - 75px );
}
.cnt6 .box .circle p{
	font-size: 1.6rem;
}
.cnt6 .box .circle p::before{
	content: url("../img/icon_gift.svg");
	margin-right: .3em;
}
.cnt6 .box figure{
	width: 50%;
}





