﻿html:not(.responsive) {
	width: 100%; /* viewport */
}

/*=============================================
 * body
 *=============================================*/
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
.btn-over img, .over-img img, img.over, img:not(.btn):not(.non-over), button img, .btn {
	opacity: 1;
	transform: none !important;
	-moz-transform: none !important;
	-webkit-transform: none !important;
	transition: opacity .3s ease;
	-moz-transition: opacity .3s ease;
	-webkit-transition: opacity .3s ease;
}
.btn {
	transition: none !important;
	-moz-transition: none !important;
	-webkit-transition: none !important;
}
.over-img img:hover, img.over:hover, /* a:not([href=""]):hover img:not(.btn):not(.non-over), */ a:hover img:not(.btn):not(.non-over), button:hover img {
	cursor: pointer;
	opacity: .8;
	transform: none !important;
	-moz-transform: none !important;
	-webkit-transform: none !important;
}
}
.ie-smoothscroll {
}
body {
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-size: 15px;
	letter-spacing: 0.06em;
	text-align: left;
	line-height: 34px;	
	background: url(../img/shared/bd_bg.jpg) center 0 repeat;
	color: #413327;
	min-width: inherit;
	min-height: inherit;
	max-height: 100%;
}
.navOpen #pagetop {
	opacity: 0;
}
.txt-center {
	text-align: center;
}
.break_all {
	word-break: break-all;
}
.slick_auto {}
/*=============================================
 * fonts - DON'T EDIT
 *=============================================*/

@font-face {
	font-family: yugothic;
	src: url(../font/../font/YuGothR.ttc);
}
@font-face {
	font-family: yugothicB;
	src: url(../font/../font/yugothib.ttf);
}
.fnt-mincho {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "メイリオ", Meiryo, "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-weight: normal;
}
.fnt-meiryo {
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴシックPro", "ＭＳ ゴシック", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.fnt-noto {
	/*font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;*/
	
	font-family: noto-sans-cjk-jp, sans-serif;
	font-style: normal;
	font-weight: 500;
}
.fnt-gothic {
	font-family: yugothic;
}
.fnt-gothicB {
	font-family: yugothicB;
	font-weight: normal;
	font-style: normal;
}
/* Syntax: font format */

.fnt-elina {
	font-family: elina, sans-serif;
	font-weight: 400;
	font-style: normal;
}
.fnt-shippori {
	font-family: 'Shippori Mincho', serif;
	font-style: normal;
	font-weight: 600;
}
.fr {
	float: right;
}
.fl {
	float: left;
}
.object-fit-cover {
}
.object-fit-cover {
	object-fit: cover;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 100%;
	width: 100%;
}
a {
	text-decoration: none;
}
a:hover {
	text-decoration: none;
}

@media screen and (max-width: 767px) {
body {
	font-size: 14px;
	line-height: 28px;
	padding-top: 1px;
}
.fnt-mincho {
	font-family: 'Noto Serif JP', serif;
}
}
/*=============================================
 * .fnt - customs
 *=============================================*/


/*=============================================
 * <main>
 *=============================================*/

main {
	clear: both;
	width: 100%;
	position: relative;
	overflow: hidden;
}
/*=============================================
 * <header>
 *=============================================*/

header {
}
header h1 {
}
header .logo {
}
header .tel {
}
header nav {
}
/*=============================================
 * key
 *=============================================*/


/*=============================================
 * <section>
 *=============================================*/

section {
}
/*=============================================
 * <footer>
 *=============================================*/

footer {
	text-align: center;
	line-height: 18px;
	z-index: 9;
}
footer .logo {
}
footer .tel {
}
footer nav {
}
/*
.socialbuttons .social-facebook   {
	    width: 93px !important;
    overflow: hidden;
	
}
.socialbuttons .fb_iframe_widget iframe {
	left: -67px;
}
*/
/*=============================================
 * .socialbuttons
 *=============================================*/

footer address {
}
#socialbuttons .fb-like > span {
	width: 100px !important;
}
#socialbuttons .fb-like > span iframe {
	left: -15px;
}
/*=============================================
 * copyright
 *=============================================*/

address {
}

@media screen and (min-width: 769px) {
.pc_view {
	display: block;
}
}
.hamburger-btn {
	cursor: pointer;
	width: 70px !important;
	height: 70px !important;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
	z-index: 105;
	line-height: 1;
	font-size: 10px;
	text-align: center;
	letter-spacing: 0em;
}
.hamburger-btn i {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
}
.hamburger-btn span {
	line-height: 1;
	background-color: #000;
	border-radius: 3px;
	height: 3px;
	width: 30px;
	position: absolute;
	top: 34px;
	left: calc(50% - 15px);
	display: block;
	-webkit-transition: all .45s ease 0s;
	transition: all .45s ease 0s;
}
.hamburger-btn:before {
	content: '';
	position: absolute;
	width: 30px;
	top: 25px;
	left: calc(50% - 15px);
	background-color: #000;
	height: 3px;
	border-radius: 3px;
	-webkit-transition: all .45s ease 0s;
	transition: all .45s ease 0s;
}
.hamburger-btn:after {
	content: '';
	position: absolute;
	width: 30px;
	top: 43px;
	border-radius: 3px;
	left: calc(50% - 15px);
	background-color: #000;
	height: 3px;
	-webkit-transition: all .45s ease 0s;
	transition: all .45s ease 0s;
}
.hamburger-btn.is-active:before {
	transform: rotate(-45deg);
	width: 28px;
	top: 35px;
	left: 21px;
}
.hamburger-btn.is-active:after {
	transform: rotate(45deg);
	width: 28px;
	top: 35px;
	left: 21px;
}
.hamburger-btn.is-active span {
	opacity: 0;
	left: 64px;
}
.hamburger-btn span:last-child {
	font-size: 11px;
	display: none !important;
	opacity: 1 !important;
	top: 13px;
	transform: none;
	left: 0;
	right: 0;
	background-color: transparent;
	width: 100%;
}
button {
	-webkit-appearance: none;
	-moz-appearance: none;
	border: none;
	background: transparent;
	cursor: pointer;
}
.i-custom {
	cursor: pointer;
	display: block;
	position: relative;
	line-height: 50px;
	margin-bottom: 40px;
}
.i-custom +.i-custom {
}
.i-custom input {
	opacity: 0;
	position: absolute;
}
.i-custom .ico {
	padding-left: 60px;
	position: relative;
	display: inline-block;
}
.i-custom .ico:before, .i-custom .ico:after {
	content: "";
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	transition: all .3s ease;
}
.i-custom input[type="radio"] .ico:before, .i-custom input[type="radio"] .ico:after {
	border-radius: 100%;
}
.i-custom .ico:before {
	width: 50px;
	height: 50px;
	left: 0;
	background: #FFFFFF;
	border: 1px solid #333333;
	box-sizing: border-box;
	border-radius: 8px;
}
.i-custom .ico:after {
	background: url(../img/shared/check.png) no-repeat 0 0;
	-webkit-background-size: 100%;
	background-size: 100%;
	width: 16px;
	height: 15px;
	margin: 0;
	position: absolute;
	top: 17px;
	left: 17px;
	opacity: 0;
}
.i-custom:hover .ico:after {
	opacity: .5;
	transform: scale(1);
}
.i-custom input:checked ~ .ico:after {
	opacity: 1;
	transform: scale(1);
}

@media screen and (max-width: 767px) {
.i-custom .ico {
	padding-left: 51px;
}
.i-custom .ico:before {
	width: 36px;
	height: 36px;
}
.i-custom {
	font-size: 16px;
	line-height: 36px;
	margin-bottom: 30px;
}
.i-custom .ico:after {
	width: 12px;
	top: 12px;
	left: 12px;
}
}
 @-webkit-keyframes fadeInZoom {
0% {
transform: scale(1.2);
}
to {
transform: scale(1);
}
}
@keyframes fadeInZoom {
0% {
transform: scale(1.2);
}
to {
transform: scale(1);
}
}
.fadeInZoom {
	-webkit-animation-name: fadeInZoom;
	animation-name: fadeInZoom;
	-webkit-animation-duration: 8.5s;
	animation-duration: 8.5s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-timing-function: linear;
	animation-timing-function: linear;
	animation-iteration-count: infinite;
	-webkit-animation-iteration-count: infinite;
}

/*====================== ft_fixed ====================== */


/* iPhone X */
@media only screen and (min-device-width: 375px) and (min-device-height: 812px) and (-webkit-device-pixel-ratio: 3) and (orientation: portrait) {
.has_nav footer:after {
	background: #000;
	content: '';
	position: fixed;
	bottom: 0px;
	left: 0;
	right: 0px;
	height: 36px;
}
.ft_bnr_fixed {
	bottom: calc(env(safe-area-inset-bottom) - 0px)!important;
}
footer {
	padding-bottom: 100px !important;
}
#pagetop {
	bottom: 120px !important;
}
}

/* iPhone XR */
@media only screen and (min-device-width: 414px) and (min-device-height: 896px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait) {
.has_nav footer:after {
	background: #000;
	content: '';
	position: fixed;
	bottom: 0px;
	left: 0;
	right: 0px;
	height: 36px;
}
.ft_bnr_fixed {
	bottom: calc(env(safe-area-inset-bottom) - 0px)!important;
}
#pagetop {
	bottom: 120px !important;
}
footer {
	padding-bottom: 100px !important;
}
}
/* iPhone 11 */
@media only screen and (device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio: 2), @media only screen and (device-width: 375px) and (device-height: 812px) and (-webkit-device-pixel-ratio: 3), @media only screen and (device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio: 3) {
.has_nav footer:after {
background:#000;
 content: '';
 position: fixed;
 bottom: 0px;
 left: 0;
 right: 0px;
 height: 36px;
}
.ft_bnr_fixed {
 bottom: calc(env(safe-area-inset-bottom) - 0px) !important;
}
 #pagetop {
 bottom: 120px !important;
}
footer {
padding-bottom: 100px !important;
}
}

@media screen and (min-width: 768px) {
	.has_nav footer:after {
		display: none !important;
	}
	}