@charset "utf-8";
/*
Theme Name: mailmagazine
Theme URI: http://
Version: 1.0
*/

/* common
---------------------------------------------------------------------------*/
@import url("css/easing.css");

:root {
	--color-text: #000000;
	--color-bg: #FFFFFF;
	--color-border: #000000;

	--font-gothic-jp: '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, 'Hiragino Sans', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif;
	/*--font-gothic-b-jp: '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, 'Hiragino Sans', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif;*/
	--font-serif-jp: '游明朝体', '游明朝', YuMincho, 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
	
	--font-gothic-en: xxxxx, sans-serif;
	--font-serif-en: xxxxx, serif;

	--width-min: 1240px;
	/*--width-min: 0px;*/
	--width-mid: 1440;
	--width-max: 1800px;
	/*--width-max: 9999px;*/
	--size-max-over: max(calc(100vw/var(--width-mid)), calc(var(--width-min)/var(--width-mid)));
}

html {
	font-size: clamp(calc(var(--width-min)/var(--width-mid)), calc(100vw/var(--width-mid)), calc(var(--width-max)/var(--width-mid)));
}

body {
	overflow-y: scroll;
	background-color: var(--color-bg);
	color: var(--color-text);
	font-size: 16rem;
	font-family: var(--font-gothic-jp);
	line-height: 1;
	font-feature-settings: 'palt' 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: none !important;
/*
	min-height: 100vh;
	min-height: 100dvh;
	-webkit-tap-highlight-color: transparent;
*/
}

/*body.noscroll { position: fixed; overflow-y: scroll; width: 100%; }*/
body.noscroll { position: fixed; width: 100%; }

::-moz-selection { background: #EBEBEB; color: var(--color-text); }
::selection { background: #EBEBEB; color: var(--color-text); }

p { font-size: 16rem; line-height: 2; letter-spacing: 0.08em; margin-bottom: 1em; }
p:last-child { margin-bottom: 0 !important; }
address,i { font-style: normal; }
img { max-width: none; }
figure img { width: 100%; }

.block { display: inline-block !important; }
.wide { display: inline-block !important; }
.narrow { display: none !important; }
.nav-sp, .btn-nav { display: none !important; }

/* #loading
------------------------------------*/
#loading {
	display: block;
	opacity: 1;
	position: fixed;
	top: 50vh;
	left: 50vw;
	border: 1rem solid rgba(0,0,0,1);
	border-top-color: transparent;
	border-radius: 50%;
	width: 20rem;
	height: 20rem;
	margin: -10rem 0 0 -10rem;
	z-index: 99999;
	animation: spin .5s infinite linear;
}
@keyframes spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }

/* link
------------------------------------*/
a { color: var(--color-text); text-decoration: none; transition: .15s ease-out; -webkit-transform: translateZ(0); }
.hover { cursor: pointer; transition: .15s ease-out; }
a:hover,.hover:hover { text-decoration: none; opacity: 0.6; }

.line { display: inline-block; position: relative; padding-bottom: 1rem; line-height: 1; }
.line:after {
	display: block;
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	background-color: var(--color-text);
	width: 100%;
	height: 1rem;
}

/* .btn
------------------------------------*/
/*
.btn-link a {
	display: inline-block;
	background: #FFFFFF;
	padding: 5rem;
	text-align: center;
}
*/


/* .btn-nav
------------------------------------*/
/*
.btn-nav {
	position: fixed;
	top: 0;
	right: 0;
	box-sizing: border-box;
	width: 60rem;
	height: 60rem;
	z-index: 10000;
}

.btn-nav div, .btn-nav span {
	display: block;
	box-sizing: border-box;
	transition: .15s ease-out;
}

.btn-nav div {
	position: relative;
	width: 22rem;
	height: 17rem;
	margin: 21rem 0 0 19rem;
}

.btn-nav span {
	position: absolute;
	left: 0;
	background-color: #000000;
	width: 100%;
	height: 1rem;
	-webkit-transform: translateZ(0);
}

.btn-nav span:nth-of-type(1) { top: 0; }
.btn-nav span:nth-of-type(2) { top: 8rem; }
.btn-nav span:nth-of-type(3) { bottom: 0; }
*/

/* .btn-nav.active
------------------------------------*/
/*
.btn-nav.active span:nth-of-type(1) { transform: translateY(8rem) rotate(-45deg); }
.btn-nav.active span:nth-of-type(2) { animation: active-menu-bar02 .4s forwards; opacity: 0; }
.btn-nav.active span:nth-of-type(3) { transform: translateY(-8rem) rotate(45deg); }
@-webkit-keyframes active-menu-bar02 {100%{ height: 0; }}
@keyframes active-menu-bar02 {100%{ height: 0; }}
*/

/* .nav-sp
------------------------------------*/
/*
.nav-sp {
	position: fixed;
	top: 0;
	left: 0;
	background: #FFFFFF;
	box-sizing: border-box;
	width: 100%;
	height: 100vh;
	height: 100dvh;
	z-index: 9999;
	display: none;
	opacity: 0;
}

.nav-sp .inner {
	overflow-y: scroll;
	box-sizing: border-box;
	width: 100%;
	height: 100vh;
	height: 100dvh;
}
*/


/* #wrap
---------------------------------------------------------------------------*/
#wrap { min-width: var(--width-min); }


/* .gnav
---------------------------------------------------------------------------*/
.gnav {}


/* header
---------------------------------------------------------------------------*/
header {
	width: 100%;
	margin: 0 auto;
	padding: 0;
}

header .logo {}


/* footer
---------------------------------------------------------------------------*/
footer {
	width: 100%;
	margin: 0 auto;
	padding: 0;
	opacity: 0;
}

.copyright {}
.pagetop {}


/* contents
---------------------------------------------------------------------------*/
#mainContents {
	display: block;
	width: 100%;
	margin: 0 auto;
	padding: 0;
	text-align: left;
}

.contents {
	opacity: 0;
}


/* news archive
---------------------------------------------------------------------------*/
#newsContents,
#onlineshopContents {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 100px;
}

.news-list {

}

.news-list article {

}

.news-list article a {

}

.news-list figure {
	margin-bottom: 25rem;
}

.news-list time {
	font-size: 12rem;
}

.news-list .category {
	font-size: 12rem;
}

.news-list h2 {
	font-size: 14rem;
}


/* news single
---------------------------------------------------------------------------*/
.news-area {

}

/* .news-title
------------------------------------*/
.news-title {
	margin-bottom: 32rem;
}

.news-title time {
	display: inline-block;
	letter-spacing: 0.06em;
}

.news-title .post-categories {
	position: relative;
	display: inline-block;
	margin-left: 20rem;
	letter-spacing: 0.12em;
}

.news-title .post-categories:before {
	display: block;
	content: '/';
	position: absolute;
	top: 0;
	left: -15rem;
}

.news-title .post-categories li { display: inline-block; }
.news-title .post-categories li a { text-decoration: underline; }

.news-title h1 {
	padding-top: 24rem;
	font-size: 20rem;
	line-height: 1.6;
	letter-spacing: 0.12em;
}

/* .news-main
------------------------------------*/
.news-main > * {
	font-family: var(--font-gothic-jp) !important;
}

.news-main, .news-main h2, .news-main p {
	font-size: 14rem;
	line-height: 2;
	letter-spacing: 0.1em;
}

.news-main h2 {
	margin: 60rem 0 18rem;
	font-size: 16rem;
}

.news-main > h2:first-child {
	margin-top: 0;
}

.news-main p {
	margin-bottom: 24rem;
	text-align: justify;
	word-break: break-all;
}

.news-main p:last-child { margin-bottom: 0; }
.news-main a { text-decoration: underline; word-break: break-all; }
.news-main strong { font-weight: bold; }
.news-main em { font-style: italic; }
.news-main del { text-decoration: line-through; }

.news-main img {
	display: block;
	max-width: calc(100% + 0rem);
	height: auto;
	margin: 45rem 0 40rem !important;
}

.news-main .wp-caption { max-width: 100%; margin-bottom: 40rem; }
.news-main .wp-caption-text { margin: -30rem 0 0; font-size: 12rem; }

.news-main .gallery > dl { width: 49.5% !important; margin-right: 1% !important; }
.news-main .gallery > dl:nth-child(even) { margin-right: 0 !important; }
.news-main .gallery a { pointer-events: none; }
.news-main .gallery img { border: none !important; width: 100% !important; margin: 0 !important; }

.news-main ul, .news-main ol { margin: 30rem 0 30rem; }
.news-main ul li { list-style: disc; margin: 0 0 6rem 18rem; }
.news-main ol li { list-style: decimal; margin: 0 0 6rem 24rem; }
.news-main ul li:last-of-type,
.news-main ol li:last-of-type { margin-bottom: 0; }

.news-main blockquote { background: #F5F5F5; margin: 40rem 0; padding: 28rem 36rem; text-align: justify; }
.news-main blockquote p { font-size: 14rem; line-height: 1.9; }

.post-main iframe { width: 840rem; height: 476rem; }
/*.post-main iframe { width: 100%; height: calc(85vw * 0.5625); }*/

/* .news-table
------------------------------------*/
.news-table {
	margin-top: 80rem;
}

.news-table h3 {
	margin: 80rem 0 15rem;
	font-size: 16rem;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.news-table h3:first-child { margin-top: 0; }

.news-table table {
	box-sizing: border-box;
	width: calc(100% + 10rem);
	margin: 0 -5rem 40rem;
	font-size: 14rem;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.news-table tr:first-of-type { border-top: 1rem solid var(--color-border); }
.news-table tr { border-bottom: 1rem solid var(--color-border); }

.news-table th, .news-table td {
	padding-top: 20rem;
	padding-bottom: 20rem;
}

.news-table th {
	position: relative;
	box-sizing: border-box;
	min-width: 140rem;
	padding-right: 40rem;
	padding-left: 5rem;
	text-align: left;
	vertical-align: top;
}

.news-table td {
	box-sizing: border-box;
	width: 100%;
	padding-right: 5rem;
}

.news-table table.right td { text-align: right; }

.news-table-attention {
	margin-top: -22rem;
	font-size: 14rem;
	line-height: 1.8;
	letter-spacing: 0.1em;
}

/* .news-link
------------------------------------*/
.news-table + .news-link { margin-left: -5rem; }
.news-link { margin-top: 50rem; }
.news-link li { display: inline-block; margin: 0 12rem 14rem 0; }

/* .news-other
------------------------------------*/
.news-other {
	width: 840rem;
	margin: 160rem auto 0;
}


/* .wp-pagenavi
---------------------------------------------------------------------------*/
.wp-pagenavi {
	overflow: hidden;
	margin: 60rem 0 0;
	font-size: 16rem;
	text-align: center;
}

.wp-pagenavi .extend {
	
}

.wp-pagenavi a {
	margin: 0 5rem;
	padding: 5rem;
}

.wp-pagenavi .current {
	display: inline-block;
	border-bottom: 1rem solid #666666;
	margin: 0 10rem;
	padding: 5rem 0 2rem;
}

.wp-pagenavi a.first,
.wp-pagenavi a.last,
.wp-pagenavi a.previouspostslink,
.wp-pagenavi a.nextpostslink {
}

.wp-pagenavi a.previouspostslink {
}

.wp-pagenavi a.nextpostslink {
}


/* page top
---------------------------------------------------------------------------*/




/* page xxx
---------------------------------------------------------------------------*/










/* page error
---------------------------------------------------------------------------*/


/* print
---------------------------------------------------------------------------*/
@media print {

}









/* test shopify
---------------------------------------------------------------------------*/
.product-modal {
	/*position: inherit !important;
	display: block !important;
	opacity: 1 !important;*/
}