/* 全体　*/
/* 両サイドの余白をなくす　*/
.l-container {
padding-left: 0;
padding-right: 0;
}

/* 各コンテンツ共通設定　*/

br.sp{
display:none;
}
@media screen and (max-width: 800px) {
br.sp{
display:block;
}
}

.top-page{
text-align:center;
padding-top:40px;
padding-bottom:40px;
position: relative;
}

.top-komidashi{
margin-top:40px;
margin-bottom:80px;
}

.top-komidashi .komidashi_b{
text-align:center;
font-size:1.4em;
color:#333;
font-weight:550;	
line-height:1.4em;
padding-bottom:0.6em;
}
.top-komidashi .komidashi_r{
text-align:center;
font-size:1.75em;
color:#ff6666;
font-weight:550;
line-height:1.4em;
}

@media screen and (max-width: 800px) {
.top-komidashi{
margin-top:2.0vw;
margin-bottom:10vw;
}
.top-komidashi .komidashi_b{
font-size: min(4.8vw, 1.6em);
}
.top-komidashi .komidashi_r{
font-size: min(7.2vw, 2.4em);
}
}

.top-page .f-box{
width:100%;
max-width:1200px;
margin:0 auto;
display:flex;
justify-content: space-between;
}
/* 小見出し下線　*/
.border_midashi {
max-width:240px;
width:60%;
border-top: 4px solid #f9ac54;
border-radius: 2px;
margin:10px auto 0 auto;
}
/* 白背景部分設定　*/
.top-bg_w{
background:#fff;
margin:0 auto;
width:90%;
max-width:1440px;
}

/* オレンジ背景部分設定　*/
.top-bg_o{
background:#ffd8c0;
}
.top-bg_o_inner{
margin:0 auto;
width:90%;
max-width:1440px;
}

/*******************    section 00    *******************/

#top_sec00 {
text-align:left;
}

#top_sec00 img{
width:100%;
max-width:600px;
}

/*******************    section 01    *******************/

#top_sec01 {
width:100%;
max-width:1000px;
}

#top_sec01 .f-box .f-box_inner{
width: 30%;
max-width:280px;
}
#top_sec01 .flexbox .f-box_inner img{
width: 100%;
height:auto;
}

#top_sec01 .link_btn{
margin-top:60px;
margin-bottom:40px;
}
#top_sec01 .link_btn a{
width:90%;
max-width:480px;
display:block;
height:50px;
margin: auto;
line-height:50px;
background:#ffca00;
color:#5f3b1f;
border-radius:25px;
text-decoration:none;
text-align:center;
font-size:1.4em;
font-weight:bold;
}

@media screen and (max-width: 800px) {
#top_sec01 .f-box{
flex-wrap: wrap;
display:block;
}
#top_sec01 .f-box .f-box_inner{
width: 90%;
margin:0 auto;
margin-bottom:16.0vw;
max-width:240px;
}
#top_sec01 .link_btn a{
font-size: min(4.2vw, 1.4em);
width:80%;
max-width:400px;
height:40px;
line-height:40px;
border-radius:20px;
}
}

/*******************    section 02    *******************/

#top_sec02 {
}

#top_sec02 .news_list{
position:relative;
background:#fff;
width:96%;
max-width:1440px;
margin:0 auto;
height:auto;
}

#top_sec02 .news_list .link_btn{
}
#top_sec02 .news_list .link_btn a{
position:absolute;
right:8px;
bottom:-12px;
display: inline-block;
width: 120px;
height: 120px;
border-radius: 50%;
background:#ffca00;
line-height: 120px;
font-size:1.0em;
font-weight:bold;
text-decoration:none;
color:#5f3b1f;
text-align:center;
padding-left:8px;
}

@media screen and (max-width: 800px) {
#top_sec02 .news_list .link_btn a{
right:6px;
bottom:-10px;
width: 15.5vw;
max-width:120px;
height:15.5vw;
max-height:120px;
line-height: 15.5vw;
font-size: min(3.0vw, 1.0em);
padding-left:4px;
letter-spacing: -0.3vw
}
}
@media screen and (max-width: 600px) {
#top_sec02 .news_list .link_btn a{
width: 18.5vw;
height:18.5vw;
line-height: 18.5vw;
}
}

#top_sec02 .newslist {
	display: grid;
	row-gap: 30px;
	font-size: 12px;
	padding: 25px;
}

#top_sec02 .newslist a {
	text-decoration: none;
  color: inherit;
}

#top_sec02 .front-news-post.news-post {
	position: relative;
}

#top_sec02 .front-news-post.news-post::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -15px;
	width: 100%;
	border-top: 1px dashed black;
}

@media screen and (min-width: 751px) {
	#top_sec02 .news-card {
		display: flex;
		column-gap: 20px;
		align-items: center;
	}
}

@media screen and (max-width: 750px) {
	#top_sec02 .news-card {
		display: flex;
		flex-flow: column;
		row-gap: 20px;
	}
	#top_sec02 .news-card .news-title {
		text-align: start;
	}
}

#top_sec02 .news-card .baseinfo {
	display: flex;
	column-gap: 20px;
	align-items: center;
}

#top_sec02 .category {
	width: 200px;
	padding-left: 10px;
	padding-right: 10px;
	padding-top: 5px;
	padding-bottom: 5px;
	border-radius: 5px;
	text-align: center;
	color: white;
}

#top_sec02 .cat-notice {
	background-color: #ff6666;
}

#top_sec02 .cat-deals {
	background-color: #42bbbe;
}

#top_sec02 .cat-office {
	background-color: #ffa347;
}

#top_sec02 .cat-narapoint {
	background-color: #8e6841;
}

/*フロントバナー群ここから*/

@media screen and (min-width: 1000px) {
	.post-list.news-bannerlist {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    gap: 20px;
    padding: 20px;
	}
}

@media screen and (max-width: 999px) {
	.post-list.news-bannerlist {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 20px;
    padding: 20px;
	}
}

@media screen and (max-width: 750px) {
	.post-list.news-bannerlist {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    padding: 20px;
	}
}

.post-list.news-bannerlist img {
	width: 100%;
}

.post-list.news-bannerlist .banner-title {
	text-align: justify;
}
/*フロントバナー群ここまで*/

/*******************    section 03    *******************/

#top_sec03 {
}
#top_sec03 .f-box{
display:flex;
width:100%;
}
#top_sec03 .f-box2{
width:100%;
height:auto;
display:flex;
justify-content:space-between;
box-sizing:border-box;
}

#top_sec03 .f-box_inner{
width:50%;
height:auto;
display:flex;
flex-direction:column;
box-sizing:border-box;
padding:20px 20px 60px 20px;
}
#top_sec03 .f-box_inner img{
display:block;
width:100%;
height:auto;
object-fit:cover;
margin-left:1.6em;
}
#top_sec03 .f-box_inner-txt{
width:85%;
flex-grow:1;
padding:10px;
box-sizing:border-box;
text-align:left;
margin-left:1.6em;
font-size:0.9em;
}

#top_sec03 .link_btn a{
width:90%;
max-width:480px;
display:block;
height:50px;
margin: auto;
line-height:50px;
background:#ffca00;
color:#5f3b1f;
border-radius:25px;
text-decoration:none;
text-align:center;
font-size:1.4em;
font-weight:bold;
}

@media screen and (max-width: 1000px) {
#top_sec03 .f-box{
display:block;
}
}

@media screen and (max-width: 800px) {
#top_sec03{
width:100%;
}
#top_sec03 .f-box_inner {
width:48%;
padding: 20px 4vw 60px 1vw;
}
#top_sec03 .f-box_inner:first-child {
width:48%;
padding: 20px 1vw 60px 4vw;
}
#top_sec03 .f-box_inner img{
display:block;
width:100%;
height:auto;
object-fit:cover;
margin-left:3.2vw;
}
#top_sec03 .f-box_inner-txt{
width:90%;
flex-grow:1;
padding:2.4vw;
box-sizing:border-box;
text-align:left;
margin-left:2.5vw;
font-size: min(2.7vw, 0.9em);
line-height:1.4em;
}
#top_sec03 .link_btn a{
font-size: min(4.2vw, 1.4em);
width:80%;
max-width:400px;
height:40px;
line-height:40px;
border-radius:20px;
}
}

/*******************    section 04    *******************/

#top_sec04 {
}

#top_sec04 .f-box{
display:flex;
width:100%;
}
#top_sec04 .f-box2{
width:100%;
height:auto;
display:flex;
justify-content:space-between;
box-sizing:border-box;
}

#top_sec04 .f-box_inner{
width:50%;
height:auto;
display:flex;
flex-direction:column;
box-sizing:border-box;
padding:20px 20px 60px 20px;
}
#top_sec04 .f-box_inner img{
display:block;
width:100%;
height:auto;
object-fit:cover;
margin-left:1.6em;
}
#top_sec04 .f-box_inner-txt{
width:85%;
flex-grow:1;
padding:10px;
box-sizing:border-box;
text-align:left;
margin-left:1.6em;
font-size:0.9em;
}

@media screen and (max-width: 1000px) {
#top_sec04 .f-box{
display:block;
}
}

@media screen and (max-width: 800px) {
#top_sec04{
width:100%;
}
#top_sec04 .f-box_inner {
width:48%;
padding: 20px 0vw 60px 0vw
}
#top_sec04 .f-box_inner img{
margin-left:1.6em;
}
#top_sec04 .f-box_inner-txt{
width:90%;
flex-grow:1;
padding:2.4vw;
box-sizing:border-box;
text-align:left;
margin-left:2.5vw;
font-size: min(2.7vw, 0.9em);
line-height:1.4em;
}
}

/*******************    section 05    *******************/

#top_sec05 .shop-itemlist a {
	text-decoration: none;
	color: inherit;
}

@media screen and (min-width: 1000px) {
	#top_sec05 .post-list {
		display: grid;
		grid-template-columns: 1fr 1fr 1fr;
		margin-top: 20px;
		gap: 10px;
	}
}

@media screen and (max-width: 999px) {
	#top_sec05 .post-list {
		display: grid;
		grid-template-columns: 1fr 1fr;
		margin-top: 20px;
		gap: 10px;
	}
}

#top_sec05 .item-card {
	position: relative;
}

@media screen and (min-width: 750px) {
	#top_sec05 .item-card {
		display: grid;
		grid-template-columns: 40% 1fr;
		grid-template-rows: auto auto 1fr;
    align-items: stretch;
		column-gap: 15px;
	}
	#top_sec05 .shop-item {
		border: 1px solid;
		padding: 10px;
	}

	#top_sec05 .item-price-conteiner {
    grid-column: 2 / 3;
    grid-row: 1 / 2;
    text-align: start;
	}

	#top_sec05 .item-label-conteiner {
    grid-column: 2 / 3;
    grid-row: 2 / 3;
    text-align: start;
    margin-top: 10px;
    margin-bottom: 20px;
	}
	
	#top_sec05 .item-title-conteiner.header-container {
	grid-column: 2 / 3;
	grid-row: 3 / 4;
	text-align: justify;
	}

	#top_sec05 .item-price {
		background-color: #ff6666;
		color: white;
		font-weight: bold;
		padding: 5px;
		font-size: 10px;
		display: inline-block;
	}

	#top_sec05 .item-label {
		font-size: 10px;
		display: inline-block;
	}

	#top_sec05 .item-title {
		font-size: 16px;
		display: inline-block;
		height: 4.5em;
		text-overflow: ellipsis;
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 3;
		overflow: hidden;
	}

	#top_sec05 .thumbnail-container {
		grid-column: 1 / 2;
		grid-row: 1 / 4;
		border-radius: 50%;
		max-width: 200px;
		width: 100%;
	}

	#top_sec05 .item-card::after {
		content: '';
		position: absolute;
		bottom: 0;
		right: 0;
		width: 60%;
		border-bottom: 1px dashed #000;
	}

	#top_sec05 img.shop-item-thumbnail {
		border-radius: 50%;
		max-width: 200px;
		width: 100%;
		aspect-ratio: 1 / 1;
		object-fit: cover;
		display: grid;
	}

	#top_sec05 .item-detail {
		padding-top: 20px;
		margin-bottom: 20px;
		font-size: 12px;
		text-align: start;
	}

	#top_sec05 .detail-inner {
		display: grid;
		gap: 20px;
	}
	#top_sec05 .detail-inner a{
		color:#0866ff!important;
		font-weight:bold!important;
		text-decoration:underline!important;
	}
	

	#top_sec05 .item-cart {
		align-self: end;
		text-align: end;
	}
}

@media screen and (max-width: 749px) {
	#top_sec05 .shop-item {
		border: 1px solid;
		padding: 5px;
		display: grid;
		gap: 10px;
	}

	#top_sec05 .item-price {
		position: absolute;
		background-color: #ff6666;
		color: white;
		font-weight: bold;
		padding: 5px;
		font-size: 10px;
		right: 0;
		z-index: 1;
	}

	#top_sec05 .item-label {
		position: absolute;
		top: 116px;
		font-size: 8px;
	}

	#top_sec05 .item-title {
		margin-top: 10px;
		font-size: 16px;
		text-align: justify;
    display: inline-block;
	}

	#top_sec05 .thumbnail-container {
		position: relative;
	}

	#top_sec05 img.shop-item-thumbnail {
		border-radius: 50%;
		max-width: 110px;
		aspect-ratio: 1 / 1;
		object-fit: cover;
		display: flex;
		margin-left: auto;
		margin-right: auto;
		margin-top:10px;
	}

	#top_sec05 .show-item {
		display: none !important;
	}

	#top_sec05 .item-detail {
		padding-top: 20px;
		margin-bottom: 20px;
		font-size: 12px;
	}

	#top_sec05 .detail-inner {
		display: grid;
		gap: 20px;
	}
}

#top_sec05 {
position:relative;
	padding-bottom:60px;
}
#top_sec05 .link_btn{
}
#top_sec05 .link_btn a{
position:absolute;
right:8px;
bottom:20px;
display: inline-block;
width: 120px;
height: 120px;
border-radius: 50%;
background:#ffca00;
line-height: 120px;
font-size:1.0em;
font-weight:bold;
text-decoration:none;
color:#5f3b1f;
text-align:center;
padding-left:8px;
}

@media screen and (max-width: 800px) {
#top_sec05 {
	padding-bottom:16vw;
}
#top_sec05 .link_btn a{
right:-10px;
bottom:3.0vw;
width: 15.5vw;
max-width:120px;
height:15.5vw;
max-height:120px;
line-height: 15.5vw;
font-size: min(3.0vw, 1.0em);
padding-left:4px;
letter-spacing: -0.3vw
}
}
@media screen and (max-width: 600px) {
#top_sec05 {
	padding-bottom:20vw;
}
#top_sec05 .link_btn a{
width: 18.5vw;
height:18.5vw;
line-height: 18.5vw;
bottom:4.0vw;
}
}
