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

/* グローバル変数 */
:root {
	--color-blue: #00a0e9;
	--color-red: #f16464;
	--color-brown: #a88458;
	--color-black: #333333;
}

/* common */
html {
	font-size: 16px;
}
body {
	font-family: 'Avenir','Helvetica Neue','Helvetica','Arial','Hiragino Sans','ヒラギノ角ゴシック',YuGothic,'Yu Gothic','メイリオ', Meiryo,'ＭＳ Ｐゴシック','MS PGothic',sans-serif;
	height: 100vh;
	text-align: center;
	line-height: 1.5;
	color: var(--color-black);
	padding-top: 0;
}
body:before{
    content: "";
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100vh;
	background-image: url("../img/bg.png");	
	background-repeat: repeat;
	background-size: 100%;
}
a:hover {
    opacity: 0.7;
	transition: opacity .3s;
}
img {
	max-width: 100%;
	height: auto;
	object-fit: contain;
	image-rendering: -webkit-optimize-contrast;
	vertical-align: bottom;
	display: block;
	margin: 0 auto;
}

/* SPで表示、PCで非表示 */
.display_sp {
	display: block;
}
.display_pc {
	display: none;
}

/* メインビジュアル */
.mv {
	margin: 0 auto;
	padding: 0 2%;
	max-width: 980px;
}

/* menu */
.menu_nav {
	margin: 2rem auto;
	max-width: 960px;
	padding: 0 4%;
}
.menu_list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 6px;
	grid-gap: 6px;
}

/* コンテンツ */
.container {
	margin: 5rem auto 0;
	padding: 0 4%;
}
.content {
    background-color: #FFFFFF;
    max-width: 780px;
    margin: 3rem auto 5rem;
    overflow: visible; 
	font-size: 1rem;
	padding: 2rem 4% 3rem;
    border: 2px solid var(--color-brown);
}
h2 {
	max-width: 1200px;
	width: 100vw;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 2%;
	margin: -5rem auto 1.5rem 50%;
    transform: translateX(-50%);
}
#content_2 h2, #content_6 h2, #content_10 h2{
	margin-bottom: 0;
}
h3 {
	max-width: 640px;
	margin: 2rem auto 1rem;
}
#content_6 .h3_newseries, #content_10 .h3_period {
	margin-top: 0;
}
h4 {
	max-width: 280px;
	margin: 2rem auto 1rem;
}
.content_img {
	margin: 1rem auto;
}
.btn {
	max-width: 16rem;
	margin: 1rem auto 0;
	cursor: pointer;
}
.txt_link {
	color: var(--color-blue);
	font-weight: 600;
	line-height: 1.1;
}
.weight400 {
	font-weight: 400;
}
.txt_red {
	color: var(--color-red);
}
.txt_bold {
	color: var(--color-black);
}
.txt_small {
	font-size: 0.8rem;
}
.txt_end {
	text-decoration: line-through; 
}

/* グレージュの表 */
.list_greige {
	background-color: #eee5de;
	max-width: 600px;
	padding: 1rem 4%;
	margin: 1rem auto;
	line-height: 1.2;
}
.list_greige li {
	background-color: #FFFFFF;
	padding: 1rem;
	margin-bottom: 1rem;
}
.list_greige li:last-child {
	margin-bottom: 0;
}

/* 拡大表示 */
.zoom_wrap {
    position: relative;
}
.label_zoom {
  width: 3em;
  position: absolute;
  bottom: 2%;
  left: 2%;
  z-index: 50;
}

/* ネットプリント */
.btn_open, .btn_close {
	margin-bottom: 3rem;
}
span.neppri_no {
	font-size: 1.6rem;
	line-height: 1.1;
}

/* 新連載情報 */
.detail_list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1rem;
	grid-gap: 1rem;
}
.detail_item {
	width: 100%;
	max-width: 600px;
	padding: 0;
}
.detail_item p {
	text-align: left;
}
.thumbnail {
	margin: 0 auto 1rem;
}
.detail_name {
	color: var(--color-red);
	line-height: 1.2;
}
.author {
	font-size: 0.8rem;
	line-height: 1.2;
}
#content_6 .author {
	margin-bottom: 0.5rem;
}
.story_txt {
	line-height: 1.2;
}
.detail_list .story_txt {
	font-size: 0.8rem;
}

/* 特別PV情報 */
.pv_list {
	text-align: left;
}
.pv_list li {
	margin-bottom: 2rem;
}
.pv_list li:last-child {
	margin-bottom: 0;
}

/* 公式X */
.btn_sns {
	max-width: 680px;
	margin: -3rem auto 0;
}

/* フッターバナー */
.footer_bnr {
	max-width: 16rem;
	margin: 8rem auto 3rem;
}

/* footer */
footer {
	color: #7a563a;
	background: #FFFFFF;
	border-top: 3px solid var(--color-brown);
}
.footer_li + .footer_li{
  border-left: 1px solid #7a563a;
}

/* コラボカフェ */
.cafemenu_list li {
	margin-bottom: 3rem;
}
.cafemenu_list li:last-child {
	margin-bottom: 0;
}
.btn_seriespage {
	max-width: 680px;
	margin: 1rem auto;
}
.notice {
	text-align: left;
	font-size: 1rem;
}

/* 注意事項 */
#content_13 {
	text-align: left;
	line-height: 1.4;
}
.attention_list {
	padding-left: 1rem;
}
.attention_list li {
	margin-bottom: 1rem;
	list-style-type: disc;	
}
.attention_list li:last-child {
	margin-bottom: 0;
}
.btn_allergy {
	margin: 2rem auto 0;
}
.box_list {
	background: #eee5de;
	padding: 1.5rem 1.5rem 1.5rem 2.5rem;
	margin-top: 1.5rem;
	border-radius: 30px;
	display: none;
}
.box_list li {
	margin-bottom: 1rem;
	list-style-type: disc;	
}
.box_list li:last-child {
	margin-bottom: 0;
}

/* 店舗情報 */
.cafe_name {
	color: var(--color-black);
	font-size: 2rem;
}
.table_outline {
	margin: 2rem auto;
	text-align: left;
}
.table_outline td {
	padding: 0.5rem 1rem;
	vertical-align: top;
}
.table_outline td span {
	color: var(--color-black);
}
.nowrap {
	white-space: nowrap;
}
.googlemap {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
.googlemap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.station_wrap {
	line-height: 1.4;
	text-align: left;
	margin-top: 2rem;
}
.station_list li {
	margin-bottom: 1rem;
}
.station_list li:last-child {
	margin-bottom: 0;
}

/*** for TB, PC ***/
@media (min-width: 520px),print {
	
	/* common */
	html {
		font-size: 18px;
	}
	body:before {
		background-size: 60%;
	}
	
	/* SPで非表示、PCで表示 */
	.display_sp {
		display: none;
	}
	.display_pc {
		display: block;
	}
	
	/* コンテンツ */
	.container {
		margin-top: 10rem;
	}
	.content {
		border: 3px solid var(--color-brown);
		font-size: 1.6rem;
		margin-bottom: 10rem;
		padding-bottom: 6rem;
	}
	h2 {
		margin: -7.5rem auto 2rem 50%;
		transform: translateX(-50%);
	}
	h3 {
		margin: 3rem auto 1rem;
	}
	h4 {
		max-width: 360px;
	}
	.txt_small {
		font-size: 1rem;
	}
	.btn {
		max-width: 20rem;
	}
	
	/* ネットプリント */
	span.neppri_no {
		font-size: 2rem;
	}
	
	/* 新連載情報 */
	.detail_name {
		font-size: 1.2rem;
	}
	.author {
		font-size: 0.9rem;
	}
	#content_6 .author {
		margin-bottom: 1rem;
	}
	.detail_list .story_txt {
		font-size: 1rem;
	}
	
	/* フッターバナー */
	.footer_bnr {
		margin-top: 10rem;
	}
	
	/* ページトップに戻るボタン */
	#to_top {
		width: 160px;
	}
	
	/* コラボカフェ */
	.cafemenu_list li {
		margin-bottom: 5rem;
	}
	/* 店舗情報 */
	.cafe_name {
		font-size: 3rem;
	}
	
}
