@charset "utf-8";
body {
	background: #fff;
	color: #231815;
	/*
    font-family: YakuHanJP, 'Helvetica Neue', Helvetica, Arial, Verdana, Roboto, 'Noto Sans JP', '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Hiragino Sans W3', 'Meiryo UI', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    */
    font-family: "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 14px;
	font-feature-settings: "palt"1;
	line-height: 2;
	word-break: break-all;
	overflow-wrap: break-word;
	-webkit-text-size-adjust: 100%;
}
_:-ms-lang(x)::-ms-backdrop, body {
	font-family: YakuHanJP, 'Helvetica Neue', Helvetica, Arial, Verdana, Roboto, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Hiragino Sans W3', 'Meiryo UI', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

::placeholder {
	color: #737373;
}

.modal-open,
.baguetteBox-open {
	overflow: hidden;
}

::before,
::after,
a,
svg,
svg path {
	transition: 0.3s;
}

div, h1, h2, h3, h4, h5, h6,
dl, dt, dd, ul, ol, li,
p, blockquote, pre, cite, code, caption, hr, figure,
form, fieldset, legend, input, textarea, select, option, label {
	letter-spacing: 0.1em;
}

a {
	color: inherit;
}
a:hover {
	color: #bd4c4c;
}

.small {
	font-size: 0.8em;
}

img {
	max-width: 100%;
	height: auto;
    image-rendering: -webkit-optimize-contrast;
}
img.ofi {
	object-fit: cover;
	object-position: 50% 50%;
	font-family: 'object-fit:cover; object-position:50% 50%;';
}

input,
select,
textarea,
form button {
	-webkit-appearance: none;
	appearance: none;
	display: inline-block;
	margin: 0.25em 0;
	padding: 0.5em;
	outline: 0;
	border: 1px solid #cecece;
	border-radius: 0;
	font: inherit;
	line-height: inherit;
	vertical-align: middle;
}
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
textarea {
	width: 100%;
}
form input[type="button"],
form button {
	border-radius: 3px;
	background: linear-gradient(to bottom, #e1f2f1 0%, #e1f2f1 50%, #e1e1e1 50%, #e1e1e1 100%);
	padding: 0.5em 1em;
	cursor: pointer;
}

input[type="checkbox"],
 input[type="radio"] {
	display: none !important;
}
input[type="checkbox"] + span,
 input[type="radio"] + span {
	display: inline-block;
	position: relative;
}
input[type="checkbox"] + span::before,
 input[type="radio"] + span::before {
	display: inline-block;
	width: 1.4em;
	height: 1.4em;
	margin-right: 0.5em;
	background: #fff;
	border: 1px solid #cecece;
	text-align: center;
	vertical-align: middle;
	cursor: pointer;
	content: '';
}

input[type="checkbox"] + span::after {
	display: inline-block;
	position: absolute;
	top: 0.625em;
	left: 0.5em;
	width: 0.5em;
	height: 0.8em;
	content: '';
	transform: rotate(45deg);
	transition: 0s;
}
input[type="checkbox"]:not([disabled]):checked + span::after {
	border: 2px solid #d54f0b;
	border-top: none;
	border-left: none;
}
input[type="checkbox"]:not([checked]):disabled + span::before {
	background: #eff0f3;
}
input[type="checkbox"]:disabled:checked + span::before {
	border-color: #b4b4b4;
}
input[type="checkbox"]:disabled:checked + span::after {
	border: 2px solid #b4b4b4;
	border-top: none;
	border-left: none;
}

input[type="radio"] + span::before {
	border-radius: 100%;
}
input[type="radio"]:not([disabled]):checked + span::before {
	background-color: #d54f0b;
	box-shadow: inset 0 0 0 4px #fff;
}
input[type="radio"]:not([checked]):disabled + span::before {
	background: #eff0f3;
}
input[type="radio"]:disabled:checked + span::before {
	background: #cecece;
	box-shadow: inset 0 0 0 4px #fff;
}

input:not([disabled]):checked + span::before,
 input:focus + span::before {
	outline: none;
	border-color: #d54f0b;
}

input[id="postcode"] {
	width: 10em;
	margin-left: 0.5em;
}
input[type="file"] {
	max-width: 100%;
}
input[type="submit"] {
	line-height: 1;
	cursor: pointer;
}
textarea {
	max-width: 100%;
	height: 12em;
}
label {
	cursor: pointer;
	margin: 0.25em 0;
	padding-right: 1.5em;
}
select {
	width: 100%;
	text-overflow: 'ellipsis';
}
select::-ms-expand {
	display: none;
}
.selectWrap {
	display: inline-block;
	position: relative;
}
.selectWrap.st01 {
	width: 7em;
}
.selectWrap.st02 {
	width: 5em;
}
.selectWrap::after {
	display: block;
	position: absolute;
	top: 50%;
	right: 1em;
	font-size: 0.625em;
	line-height: 1;
	content: '▼';
	pointer-events: none;
	transform: translateY(-50%);
}
.dateWrap {
	display: inline-block;
	position: relative;
	width: 13em;
	border: 1px solid #cecece;
	background: #fff;
	vertical-align: middle;
}
.dateWrap::before,
.dateWrap::after {
	position: absolute;
	top: 0;
	right: 0;
	width: 2.5em;
	height: 100%;
	content: '';
	pointer-events: none;
}
.dateWrap::before {
	background: currentColor;
}
.dateWrap::after {
	background-color: #fff;
	-webkit-mask: url(../img/share/calendar.svg) no-repeat center / 55% auto;
	mask: url(../img/share/calendar.svg) no-repeat center / 55% auto;
}
.dateWrap input {
	position: relative;
	width: 100%;
	margin: 0;
	border: 0;
	background: transparent;
}
.dateWrap input::-webkit-inner-spin-button {
	-webkit-appearance: none;
}
.dateWrap input::-webkit-clear-button {
	-webkit-appearance: none;
}
.dateWrap input::-webkit-calendar-picker-indicator {
	position: absolute;
	top: 0;
	right: 0;
	width: 36px;
	height: 100%;
	padding: 0;
	background: transparent;
	color: transparent;
	cursor: pointer;
}

.spDisp,
.tabDisp {
	display: none;
}


/* --- container --- */
#container {
	overflow: hidden;
	min-width: 640px;
	opacity: 0;
}
.inner {
	position: relative;
	width: 100%;
	max-width: 1120px;
	margin: 0 auto;
	padding: 0 20px;
}

ul.sitemap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 90%;
	max-width: 1080px;
	margin: 0 auto;
	color: #fff;
}
ul.sitemap li {
	width: calc((100% - 60px) / 4);
}
ul.sitemap a {
	display: block;
	padding: 1em 0;
	border: 1px solid currentColor;
	line-height: 1;
	text-align: center;
	text-decoration: none;
}
ul.sitemap a:hover {
	background: #fff;
	color: #3d2b06;
	opacity: 1;
}
ul.sitemap li:nth-child(n+5) {
	margin-top: 20px;
}
body:not(.takeout):not(.afternoon-tea) ul.sitemap li:last-child a {
	color: #3d2b06;
	background: #fff;
}
body:not(.takeout):not(.afternoon-tea) ul.sitemap li:last-child a:hover {
	color: #fff;
	background: transparent;
	opacity: 1;
}
ul.sitemap li:nth-child(4n+1):last-child {
	width: calc(50% - 10px);
	margin-right: auto;
	margin-left: auto;
}
ul.sitemap li:nth-child(4n+2):last-child {
	width: calc(50% - 10px);
	margin-right: auto;
	margin-left: 20px;
}
ul.sitemap li:nth-child(4n+3):last-child {
	margin-right: calc(25% + 5px);
}

ul.sns {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	padding-top: 32px;
}
ul.sns + ul.sns {
	padding-top: 20px;
}
ul.sns li {
	margin: 0 10px;
}
ul.sns a {
	display: block;
	width: 40px;
}
ul.sns a:hover {
	opacity: 0.5;
}
ul.sns p {
	margin-top: 1em;
	text-align: center;
}

ul.subNav {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	color: #fff;
	padding-top: 12px;
}
ul.subNav li {
	padding: 20px 10px 0;
}
ul.subNav a {
	display: block;
	padding: 0.5em 1.5em;
	border: 1px solid #fff;
	border-radius: 100px;
	line-height: 1;
	text-decoration: none;
}
ul.subNav a:hover {
	color: #3d2b06;
	background: #fff;
	opacity: 1;
}

.address p {
	margin-top: 1em;
	text-align: center;
}
.address p:first-child {
	margin-top: 0;
}
.address p strong {
	display: inline-block;
	margin-bottom: 0.5em;
	font-size: 1.142857em;
	font-weight: bold;
}
.address p span {
	display: block;
	padding-top: 0.5em;
}
.address a {
	display: inline-block;
	margin-bottom: 0.5em;
	font-family: YakuHanMP, 'Playfair Display', 'Noto Serif JP', '游明朝', YuMincho, 'Hiragino Mincho ProN W3', 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
	font-size: 2.2857em;
	line-height: 1;
	text-decoration: none;
}
.address a b {
	font-weight: 500;
}
.address a .svg {
	width: 0.75em;
	height: 0.75em;
	margin-right: 0.25em;
	stroke-width: 1.5px;
	vertical-align: middle;
}


/* --- header --- */
#header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
	width: 100%;
	padding: 14px 20px;
	line-height: 1;
}

#header .headLogo a {
	line-height: 1;
}
#header .headLogo .svg {
	width: 100px;
	height: 39px;
}
#header .headLogo.change .svg .gray,
#header .headLogo.change .svg .black {
	fill: #fff;
}

.hamburger {
	position: relative;
	width: 50px;
	height: 50px;
	background: #231815;
}
.hamburger span {
	position: absolute;
	width: calc(100% - 16px);
	top: 50%;
	left: 8px;
	height: 2px;
	margin-top: -1px;
	background: #fff;
	transition: 0.35s ease-in-out;
}
.hamburger span:nth-child(1) {
	transform: translateY(-8px);
}
.hamburger span:nth-child(3) {
	transform: translateY(8px);
}

#header.is-open .headLogo .svg .gray,
#header.is-open .headLogo .svg .black {
	fill: #fff;
}
#header.is-open .hamburger span:nth-child(1) {
	transform: rotate(-45deg);
}
#header.is-open .hamburger span:nth-child(2) {
	opacity: 0;
}
#header.is-open .hamburger span:nth-child(3) {
	transform: rotate(45deg);
}


/* --- nav --- */
#nav {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 95;
	width: 100%;
	height: 100%;
	padding: 90px 0;
	background: rgba(35, 24 ,21 , 0.9);
	color: #fff;
	text-align: center;
	opacity: 0;
	visibility: hidden;
	transform: translateY(-101%);
	transition: opacity 0.8s, visibility 0s ease 1s;
}
.loadComp #nav {
	transform: translateY(0);
}
#nav .navBox {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-content: center;
	overflow-x: hidden;
	overflow-y: auto;
	width: 100%;
	height: 100%;
}
#nav .navBox::-webkit-scrollbar {
	width: 10px;
}
#nav .navBox::-webkit-scrollbar-thumb {
	background: #f4f4f4;
}
#nav .navBox::-webkit-scrollbar-track-piece:start {
	background: #231815;
}
#nav .navBox::-webkit-scrollbar-track-piece:end {
	background: #222;
}
#nav .navBox > * {
	width: 100%;
}
#nav .sitemap {
	font-size: 1.125em;
}

#nav.is-open {
	opacity: 1;
	visibility: visible;
	transition-delay: 0s;
}


/* --- footer --- */
#footer {
	background: #231815;
}
#footer .footCont {
	color: #fff;
}
#footer .footLogo {
	margin: 0 auto;
	padding: 48px 0;
	text-align: center;
}
#footer .footLogo a {
	display: inline-block;
}
#footer .footLogo .svg {
	width: 155px;
	height: 60px;
}
#footer .footLogo path.logotype {
	fill: currentColor;
}
#footer .address {
	padding-top: 32px;
	color: #fff;
}
#footer .copyright {
	display: block;
	padding: 48px 0;
	color: #fff;
	font-size: 0.92857em;
	text-align: center;
}


/* -- fixedNav -- */
#fixedNav {
	display: none;
	position: fixed;
	left: 0;
	bottom: -1px;
	z-index: 100;
	width: 100%;
	background: rgba(97, 193, 190, 0.95);
	transform: translateY(100%);
	transition: 0.3s;
}
#fixedNav._in {
	transform: translateY(0);
}
#fixedNav ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
}
#fixedNav li {
	order: 1;
	width: calc(25% - 1px);
	height: 3.5em;
	line-height: 1.375;
}
#fixedNav li:not(.online) + li {
	border-left: 1px solid #fff;
}
#fixedNav a {
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	height: 100%;
	color: #fff;
	font-weight: bold;
	letter-spacing: 0.05em;
	text-align: center;
	text-decoration: none !important;
}
#fixedNav a .svg {
	width: 1em;
	height: 1em;
	margin-right: 0.25em;
	stroke-width: 1.5px;
	vertical-align: middle;
}
#fixedNav li.online,
body.takeout #fixedNav li,
body.afternoon-tea #fixedNav li {
	width: 100%;
}
#fixedNav li.tel {
	width: 50%;
}
#fixedNav li.online {
	width: 100%;
	border-bottom: 1px solid #fff;
}
#fixedNav li.tel:nth-child(3) {
	order: 0;
	border-left: none;
	border-right: 1px solid #fff;
}


/* --- script --- */
.slideCont img {
	max-width: 100%;
	height: auto;
}

.slick-arrow {
	position: absolute;
	top: 50%;
	z-index: 1;
	overflow: hidden;
	margin: 0;
	padding: 0;
	width: 40px;
	height: 64px;
	border: none;
	background: transparent;
	color: #3d2b06;
	line-height: 1;
	text-indent: -10em;
	cursor: pointer;
	transform: translateY(-50%);
}
.slick-arrow:hover,
.slick-arrow:focus {
	color: #bd4c4c;
}
.slick-arrow::after {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 32px;
	height: 32px;
	border: 3px solid currentColor;
	content: '';
	transform: translate(-50%, -50%) rotate(45deg);
}
.slick-prev {
	left: 10px;
}
.slick-prev::after {
	margin-left: 12px;
	border-top: none;
	border-right: none;
}
.slick-next {
	right: 10px;
}
.slick-next::after {
	margin-left: -12px;
	border-bottom: none;
	border-left: none;
}
.slick-dotted .slick-arrow {
	margin-top: -16px;
}

.slick-dots {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	line-height: 1;
}
.slick-dots li {
	margin: 10px 5px 0;
}
.slick-dots li:only-child {
	display: none;
}
.slick-dots li button {
	display: block;
	overflow: hidden;
	width: 10px;
	height: 10px;
	padding: 0;
	outline: none;
	border: none;
	border-radius: 50%;
	background: #61c1be;
	font-size: 0;
	cursor: pointer;
}
.slick-dots li:hover button,
.slick-dots li.slick-active button {
	background: #bd4c4c;
}

.visualSlide {
	width: 100%;
	z-index: 1;
}
.visualSlide a:hover {
	opacity: 0.7;
}
.visualSlide .slideCont {
	position: relative;
	background: #efefef;
}
.visualSlide .slideCont::before {
	display: block;
	padding-top: 56.25%;
	content: '';
}
.visualSlide img {
	position: absolute;
	top: 50%;
	left: 50%;
	max-width: 100%;
	max-height: 100%;
	transform: translate(-50%, -50%);
}


/* --- contents --- */
#contents {}
.section {
	padding-top: 150px;
}

.btn {
	display: block;
	max-width: 18em;
	color: #fff;
	padding: 0.625em 0.1em;
	border: 1px solid currentColor;
	background: #61C1BE;
	line-height: 1.25;
	text-align: center;
	text-decoration: none;
	transition: color 0.3s, border 0.3s, background 0.3s;
}
.btn:hover {
	color: #61C1BE;
	background: #fff;
}

.media {
	position: relative;
	width: 100%;
}
.media::before {
	display: block;
	padding-top: 56.25%;
	content: '';
}
.media iframe {
	position: absolute;
	top: 0;
	right: 0;
	border: none;
	width: 100% !important;
	height: 100% !important;
}

svg {
	overflow: visible;
	width: 100%;
	height: auto;
	vertical-align: top;
}

.svgWrap {
	position: relative;
	width: 100%;
}
.svgWrap::before {
	display: block;
	padding-top: calc(20 / 52 * 100%);
	content: '';
}
.svgWrap .svg {
	display: block;
	position: absolute;
	height: 100%;
	width: 100%;
	top: 0;
	left: 0;
}

.secTtl {
	text-align: center;
	font-size: 1.5em;
	font-weight: normal;
	text-transform: uppercase;
}
.secTtl span {
	display: block;
	font-size: 0.75em;
}
.secTtl span::before {
	display: block;
	width: 22em;
	margin: 10px auto;
	border-top: 1px solid currentcolor;
	content: '';
	opacity: 0.5;
}
.secTtl2 {
	font-size: 1.57142857em;
	font-weight: bold;
	line-height: 1;
	text-transform: uppercase;
}

.textArea p + p {
	margin-top: 1em;
}

dl.table {
	display: flex;
	flex-wrap: wrap;
}
.secTtl2 + dl.table {
	margin-top: 32px;
}
dl.table dt,
dl.table dd {
	padding: 1em 0;
	border-bottom: 1px solid #e5e5e5;
}
dl.table dt:first-of-type,
dl.table dd:first-of-type {
	padding-top: 0;
}
dl.table dt {
	width: 7em;
	font-weight: bold;
}
dl.table dd {
	width: calc(100% - 7em);
}
dl.table dd a {
	color: inherit;
}

.indent {
	padding-left: 1em;
	text-indent: -1em;
}
.aks {
	display: inline-block;
	text-indent: 0;
}

.marker {
	display: inline;
	margin: 0 0.125em;
	background: linear-gradient(transparent 64%, #ffe100 64%, #ffe100 90%, transparent 90%);
}


/* --- page --- */
body.page {
	padding-top: 32px;
}
body.page #footer {
	margin-top: 80px;
}
body.page .section {
	padding-top: 80px;
}

#pageTtl {
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	padding: 120px 20px 0;
}
#pageTtl h1 {
	font-size: 1.75em;
	font-weight: bold;
	line-height: 1.125;
	text-align: center;
	word-break: break-word;
}
#pageTtl h1 .en {
	display: block;
	margin-bottom: 0.25em;
	padding-left: 0.1em;
	font-family: YakuHanMP, 'EB Garamond', 'Noto Serif JP', '游明朝', YuMincho, 'Hiragino Mincho ProN W3', 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
	font-size: 2.25em;
	font-weight: normal;
	text-transform: uppercase;
}
#pageTtl h1 .jp {
	position: relative;
	padding: 0 1.5em;
	font-size: 0.75em;
	font-weight: normal;
}
#pageTtl h1 .jp::before,
#pageTtl h1 .jp::after {
	position: absolute;
	top: 50%;
	width: 1em;
	height: 1px;
	background: currentColor;
	content: '';
	transform: translateY(-50%);
}
#pageTtl h1 .jp::before {
	left: 0;
}
#pageTtl h1 .jp::after {
	right: 0;
}


/* --- fairCat--- */
#fairCat ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 30px;
}
#fairCat ul li {
	width: calc((100% - 60px) / 3);
}
#fairCat ul li:nth-child(n+4) {
	margin-top: 32px;
}

#fairCat ul li .img {
	background: center/cover no-repeat;
}
#fairCat ul li .img,
#fairCat ul li .img-overlay {
	border-radius: 2px;
}

#fairCat ul li a {
	display: block;
	position: relative;
	text-decoration: none;
}
#fairCat ul li .img::before {
	display: block;
	padding-top: 100%;
	content: '';
}

#fairCat ul li .textArea {
	padding-top: 16px;
}
#fairCat ul li h3 {
	font-size: 1.25em;
	font-weight: normal;
	line-height: 1.5;
	text-align: center;
}

#fairCat + #calendar {
	padding-top: 64px;
}


/* --- calendar--- */
#calendar .slide {
	width: 100%;
	margin-top: 30px;
}
#calendar .slide .slick-prev,
#calendar .slide .slick-next {
	top: 0;
	width: 20px;
	height: 32px;
	transform: translateY(25%);
}

#calendar .monthly h3 {
	padding: 0 0 14px;
	font-size: 3em;
	font-weight: normal;
	line-height: 1;
	text-align: center;
}

#calendar table {
	width: 100%;
	table-layout: fixed;
}
#calendar table tr {
	border-bottom: 2px solid #e1f2f1;
}
#calendar table tr:first-child {
	border-color: #61C1BE;
}
#calendar table th,
#calendar table td {
	line-height: 1;
	text-align: center;
}
#calendar table th {
	padding: 1.25em 1em;
	background: #e1f2f1;
	font-weight: normal;
	border-right: 2px solid #fff;
}
#calendar table th:last-of-type {
	border-right: none;
}
#calendar table tr th:nth-last-of-type(2),
#calendar table tr td:nth-last-of-type(2) {
	color: #0046aa;
}
#calendar table tr th:last-of-type,
#calendar table tr td:last-of-type,
#calendar table tr td.holiday {
	color: #b40014;
}
#calendar table tr td.closed {
	color: #c8c8c8;
	background: #f9f9f9;
}
#calendar table tr td.disable {
	background: #f9f9f9;
	opacity: 0.25;
}

#calendar table td {
	padding: 1.5em 0;
	font-size: 1.16em;
}
#calendar table td a {
	display: inline-block;
	padding: 0 0.5em;
}

@media (min-width: 813px) {
	/* iPhoneX縦サイズ 812px */
	a[href^="tel:"] {
		pointer-events: none;
		cursor: default;
	}
	a[href^="tel:"]:hover {
		opacity: 1;
	}
}
@media (max-width: 810px), (max-height: 1024px) {
	/* --- nav --- */
	#nav .navBox {
		align-content: flex-start;
	}
}
@media (max-width: 810px) {
	.pcDisp2 {
		display: none;
	}
	.tabDisp {
		display: block;
	}
	br.tabDisp {
		display: inline-block;
	}


	/* --- fairCat--- */
	#fairCat ul {
		justify-content: space-between;
	}
	#fairCat ul li {
		width: calc(50% - 16px);
		max-width: none;
		margin: 0;
	}
	#fairCat ul li:nth-child(n+3) {
		margin-top: 32px;
	}


	/* --- container --- */
	ul.sitemap li,
	ul.sitemap li:nth-child(4n+2):last-child {
		width: calc(50% - 10px);
	}
	ul.sitemap li:nth-child(n+3) {
		margin-top: 20px;
	}
	ul.sitemap li:nth-child(4n+1):last-child {
		width: 100%;
	}
	ul.sitemap li:nth-child(4n+3):last-child {
		margin-right: 0;
	}

	ul.sns a {
		width: 70px;
	}
}
@media (max-width: 640px) {
	body {
		font-size: 22px;
	}
	.pcDisp {
		display: none;
	}
	.spDisp {
		display: block;
	}
	br.spDisp {
		display: inline-block;
	}

	#fairCat ul li h3 {
		font-size: 1em;
	}


	/* --- nav --- */
	#nav {
		padding: 90px 0 100px;
	}
	#nav .sitemap {
		font-size: 1em;
	}

	
	/* --- contents --- */
	.btn {
		max-width: none;
	}

	.secTtl span::before {
		width: 15.75em;
	}
	.secTtl2 {
		font-size: 1.454545em;
	}

	dl.table dt,
	dl.table dd {
		width: 100%;
	}
	dl.table dt {
		padding-bottom: 0.5em;
		border-bottom: none;
	}
	dl.table dd {
		padding-top: 0;
	}


	/* -- fixedNav -- */
	#fixedNav {
		display: block;
	}


	/* --- page --- */
	#pageTtl h1 .en {
		font-size: 1.75em;
	}
	#pageTtl h1 .jp {
		font-size: 0.75em;
	}
}


/* #clickClose */
/*#clickClose {display:none;}*/
#clickClose a img {max-width:100%;}

#clickClose {
    display:block;
    width: 180px;
    height:180px;
    position:fixed; bottom:90px; right:30px;
    z-index:1000;
}
.closebtn {
    position:absolute; top:-8px; right:-8px;
    color: white;
    font-size:22px;
    padding:2px;
    line-height: 1;
    cursor: pointer;
    z-index: 1;
    background:#000;
}
.closebtn:hover {color:lightgrey;}

@media only screen and (max-width:640px){
    
    #calloutElm {
        width: 150px;
        height:150px;
        bottom:100px; right:30px;
    }
}