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

@import "style_min551.css";

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

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

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

.contents{
	padding: 0 5%;
	margin: 0;
}
.flex{
	flex-direction: column;
}
.flex.row{
	flex-direction: row;
}
.wrap-white.full{
	padding-top: 60px;
}
.headline p:has( + .jp-title) {
	margin: 0 0 20px 0;
}
.headline p:has( + .jp-title) span{
    font-size: 15px;
	font-weight: normal;
}
.cnt2 .slick-arrow{
	display: none !important;
}
.cnt2 .flex > .caption{
	padding: 0 0 60px;
}
.cnt2 .flex > .caption h3{
	font-size: 22px;
}
.cnt2 .flex > .lbox li.slick-slide{
	height: 300px;
}
.cnt3.wrap-gray{
	padding-top: 60px;
	padding-bottom: 60px;
}
.cnt4{
	padding-top: 60px;
	padding-bottom: 80px;
	margin: 0 5vw;
}
.cnt3 .categorytitles{
	margin-bottom: 30px;
}
.cnt3 .categorytitles figure:first-child{
	margin-bottom: 20px;
}
.cnt3 .categorytitles figure:first-child img{
	width:147px;
}
.cnt3 .cnt3-2{
	padding: 30px 5vw;
	margin-bottom: 50px;
}
.cnt3 .cnt3-2 .box .jp-title{
	margin-bottom: 20px;
}
.cnt3 .cnt3-3 .jp-title{
	margin-bottom: 30px;
}
.cnt3 .cnt3-3 .flex{
	margin: 0;
}
.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{
	padding-top: 30px;
	padding-bottom: 30px;
	width: inherit;
}
.cnt3 .cnt3-3 .flex > div .fig{
	margin-bottom: 20px;
}
.cnt3 .cnt3-3 .flex .centerflex .jp-title{
	margin-bottom: 20px;
}
.cnt3 .cnt3-3 .flex .centerflex{
	justify-content: flex-start;
}
.cnt3 .cnt3-3 .flex > div .fig,
.cnt3 .cnt3-3 .flex > div .fig img{
	width: inherit;
}
.cnt3 .cnt3-3 + .linkicon.right{
	margin-left: 0;
}
.cnt4 .categorytitles{
	margin: 0 0 30px 0;
}
.cnt4 .carousel{
	margin: 0;
}
.cnt5{
	padding:60px 0 50px;
}
.cnt5 .categorytitles{
	margin-bottom: 30px;
}
.cnt5 .flex {
	flex-direction: column;
	align-items: stretch;
}
.cnt5 .flex > .caption,
.cnt5 .flex > figure{
	width: inherit;
}
.cnt5 .flex > figure{
	margin-bottom: 30px;
}
.cnt5 .flex > .caption h3{
	margin-bottom: 5px;
}
.cnt5 .flex > .caption h3 + h4{
	margin-bottom: 20px;
	padding-bottom: 20px;
}
.cnt6{
	padding: 50px 5vw 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;
	flex-direction: column;
	gap:0;
	position: relative;
	margin: 0;
	padding: 30px 5%;
}
.cnt6 .box .caption{
	margin-bottom: 30px;
	width: inherit;
}
.cnt6 .box .caption h3{
	margin-bottom: 15px;
}
.cnt6 .box .circle{
	width: 150px;
	height: 35px;
	border-radius: 5px;
	margin-top: -42px;
	margin-bottom: 30px;
	margin: -42px auto 30px;
	position: static;
}
.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: inherit;
}



