@import url(//fonts.googleapis.com/css2?family=Montserrat:wght@700&family=Noto+Sans+JP&display=swap);

/*=====================================
reset
=====================================*/

/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/

html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
	background: transparent;
	border: 0;
	font-size: 100%;
	margin: 0;
	outline: 0;
	padding: 0;
	vertical-align: baseline;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
	display: block;
}

ol,
ul {
	list-style: none;
}

img {
	font-size: 0;
	line-height: 0;
	vertical-align: top;
}

blockquote,
q {
	quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: "";
	content: none;
}

a {
	background: transparent;
	font-size: 100%;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
}

/* change colors to suit your needs */

ins {
	background-color: #ff9;
	color: #000;
	text-decoration: none;
}

/* change colors to suit your needs */

mark {
	background-color: #ff9;
	color: #000;
	font-style: italic;
	font-weight: bold;
}

del {
	text-decoration: line-through;
}

abbr[title],
dfn[title] {
	border-bottom: 1px dotted;
	cursor: help;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* change border color to suit your needs */

hr {
	border: 0;
	border-top: 1px solid #cccccc;
	display: block;
	height: 1px;
	margin: 1em 0;
	padding: 0;
}

input,
select {
	vertical-align: middle;
}

address {
	font-style: normal;
}

/* clearfix */

.clearfix:after {
	clear: both;
	content: ".";
	display: block;
	height: 0;
	visibility: hidden;
}

body {
	color: #000;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ",
 Meiryo, Osaka, sans-serif;
	font-size: 15px;
	line-height: 1.5;
}

img {
	-webkit-transition: ease-in-out 0.2s;
	display: block;
	height: auto;
	margin: 0 auto;
	max-width: 100%;
	transition: ease-in-out 0.2s;
	width: auto;
}

a img:hover {
	opacity: 0.9;
}

.right {
	text-align: right;
}

.left {
	text-align: left;
}

.center {
	text-align: center;
}

.map {
	height: 70px;
	margin: 0 auto 0.3em;
	max-width: 600px;
	overflow: hidden;
	padding-bottom: 250px;
	position: relative;
	width: 95%;
}

.map iframe {
	height: 100% !important;
	left: 0;
	position: absolute;
	top: 0;
	width: 100% !important;
}

.pconly {
	display: none;
}

.sponly {
	display: block;
}

.liner {
	background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(70%, #ffff00));
	background: -webkit-linear-gradient(transparent 60%, #ffff00 70%);
	background: linear-gradient(transparent 60%, #ffff00 70%);
}

.top_h2 {
	background-color: #000;
	color: #fff;
	font-family: "Montserrat", sans-serif;
	font-size: 36px;
	letter-spacing: 0.1em;
	margin-bottom: 2em;
	padding: 0.5em 0 1em;
	position: relative;
	text-align: center;
}

.top_h2 span {
	display: block;
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
	font-size: 20px;
	line-height: 0.5em;
}

.top_h2::after {
	border: 30px solid transparent;
	border-top: 30px solid #000;
	content: "";
	height: 0;
	left: 0;
	margin: auto;
	position: absolute;
	right: 0;
	top: 100%;
	width: 0;
}

.top_h2_black {
	background-color: #000;
	border-bottom: 1px solid #fff;
	color: #fff;
	font-family: "Montserrat", sans-serif;
	font-size: 36px;
	letter-spacing: 0.1em;
	margin-bottom: 2em;
	padding: 0.5em 0 1em;
	position: relative;
	text-align: center;
}

.top_h2_black span {
	display: block;
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
	font-size: 20px;
	line-height: 0.5em;
}

.top_h2_black::before,
.top_h2_black::after {
	-webkit-transform: translateX(-50%);
	border: 24px solid transparent;
	content: "";
	left: 50%;
	position: absolute;
	top: 100%;
	transform: translateX(-50%);
}

.top_h2_black::before {
	border-top: 24px solid #fff;
}

.top_h2_black::after {
	border-top: 25px solid #000;
	margin-top: -3px;
}

a.morebtn {
	-webkit-box-sizing: border-box;
	-webkit-transition: all ease-in-out 0.2s;
	background-color: #ffd801;
	border: 2px solid #ffd801;
	box-sizing: border-box;
	clear: both;
	color: #000;
	display: block;
	font-family: "Montserrat", sans-serif;
	font-size: 34px;
	letter-spacing: 0.1em;
	line-height: 1em;
	margin: auto;
	max-width: 300px;
	padding: 0.5em;
	position: relative;
	text-align: center;
	text-decoration: none;
	transition: all ease-in-out 0.2s;
}

a.morebtn span {
	display: block;
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
	font-size: 20px;
	font-weight: 500;
}

a.morebtn::after {
	border-color: transparent transparent #fff transparent;
	border-style: solid;
	border-width: 0 0 25px 25px;
	bottom: 5px;
	content: "";
	height: 0;
	position: absolute;
	right: 5px;
	width: 0;
}

a.morebtn:hover {
	background-color: #fff;
}

a.morebtn:hover::after {
	border-color: transparent transparent #ffd801 transparent;
}

/*=================================
Navigation_SP
=================================*/

header {
	background-color: #000;
	border-bottom: 1px solid #fff;
	padding: 0.2em 0.2em 0;
}

#header {
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 9999;
}

.h_logo {
	margin: 10px 20px 10px 0;
	width: 60%;
}

.h_logo img {
	margin: 0;
}

.h_pc_right {
	display: none;
}

/*============
nav
=============*/

nav.h_nav {
	-webkit-overflow-scrolling: touch;
	-webkit-transition: all 0.5s;
	background: #ffffff;
	bottom: 0;
	display: block;
	left: -300px;
	opacity: 0;
	overflow-x: hidden;
	overflow-y: auto;
	position: fixed;
	top: 0;
	transition: all 0.5s;
	width: 300px;
	z-index: 3;
}

nav.h_nav .inner {
	padding: 25px;
}

nav.h_nav .inner ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

nav.h_nav .inner ul li {
	border-bottom: 1px solid #333;
	margin: 0;
	position: relative;
}

nav.h_nav .inner ul li a {
	-webkit-transition-duration: 0.2s;
	color: #333;
	display: block;
	font-size: 14px;
	padding: 1em;
	text-decoration: none;
	transition-duration: 0.2s;
}

nav.h_nav .inner ul li a:hover {
	background: #e4e4e4;
}

nav.h_nav .inner ul li.nav_tel a {
	background-color: #ffd801;
}

nav.h_nav .inner ul li.nav_line a {
	background-color: #00d700;
}

/*============
.toggle_btn
=============*/

.toggle_btn {
	-webkit-transform: translateY(-50%);
	-webkit-transition: all 0.5s;
	cursor: pointer;
	display: block;
	height: 30px;
	position: absolute;
	right: 30px;
	top: 50%;
	transform: translateY(-50%);
	transition: all 0.5s;
	width: 30px;
	z-index: 3;
}

.toggle_btn span {
	-webkit-transition: all 0.5s;
	background-color: #fff;
	border-radius: 4px;
	display: block;
	height: 2px;
	left: 0;
	position: absolute;
	transition: all 0.5s;
	width: 30px;
}

.toggle_btn span:nth-child(1) {
	top: 4px;
}

.toggle_btn span:nth-child(2) {
	top: 14px;
}

.toggle_btn span:nth-child(3) {
	bottom: 4px;
}

/*============
#mask
=============*/

#mask {
	-webkit-transition: all 0.5s;
	display: none;
	transition: all 0.5s;
}

/*============
.open
=============*/

.open nav.h_nav {
	left: 0;
	opacity: 1;
}

.open .toggle_btn span {
	background-color: #fff;
}

.open .toggle_btn span:nth-child(1) {
	-webkit-transform: translateY(10px) rotate(-315deg);
	transform: translateY(10px) rotate(-315deg);
}

.open .toggle_btn span:nth-child(2) {
	opacity: 0;
}

.open .toggle_btn span:nth-child(3) {
	-webkit-transform: translateY(-10px) rotate(315deg);
	transform: translateY(-10px) rotate(315deg);
}

.open #mask {
	background: #000;
	cursor: pointer;
	display: block;
	height: 100%;
	left: 0;
	opacity: 0.8;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 2;
}

/*=================================
Navigation_PC
=================================*/

.header_base {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-transition: 0.3s;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: space-between;
	margin: 0;
	padding: 0 16px;
	position: relative;
	transition: 0.3s;
}

.main_img {
	background: #fff;
	background-image: -webkit-radial-gradient(#e5e5e5 20%, transparent 0), -webkit-radial-gradient(#e5e5e5 20%, transparent 0);
	background-image: radial-gradient(#e5e5e5 20%, transparent 0), radial-gradient(#e5e5e5 20%, transparent 0);
	background-position: 0 0, 8px 8px;
	background-size: 16px 16px;
}

.corona_bnr {
	-webkit-box-sizing: border-box;
	background-color: #737373;
	box-sizing: border-box;
	margin: auto;
	max-width: 1000px;
	padding: 2em;
}

.corona_bnr img:nth-of-type(2) {
	margin-top: 16px;
}

.concept_wrapper {
	background-color: #e5e5e5;
	padding-bottom: 4em;
}

.concept_inner {
	margin: auto;
	max-width: 1000px;
	position: relative;
}

.concept_inner_list {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	counter-reset: concept;
	margin-top: 6em;
}

.concept_inner_list_conts {
	margin-top: 1em;
}

.concept_inner_list_conts:not(:first-of-type) {
	margin-top: 5em;
}

.concept_inner_list_conts figure {
	position: relative;
}

.concept_inner_list_conts figure img {
	border: 6px solid #56554a;
	border-radius: 42px;
	max-width: 90%;
}

.concept_inner_list_conts figure::before {
	content: url(../image/top/top_con_ico.png);
	position: absolute;
	top: -20%;
}

.concept_inner_list_conts figure::after {
	color: #fff;
	content: counter(concept);
	counter-increment: concept;
	font-family: "Montserrat", sans-serif;
	font-size: 50px;
	position: absolute;
	text-shadow: 2px 2px 0px #000000, -2px 2px 0px #000000,
 2px -2px 0px #000000, -2px -2px 0px #000000, 2px 0px 0px #000000,
 0px 2px 0px #000000, -2px 0px 0px #000000, 0px -2px 0px #000000,
 5px 5px 0px #000000;
	top: -9%;
}

.concept_inner_list_conts:nth-of-type(odd) figure::before {
	left: 4px;
}

.concept_inner_list_conts:nth-of-type(odd) figure::after {
	left: 40.5px;
}

.concept_inner_list_conts:nth-of-type(even) figure::before {
	right: 4px;
}

.concept_inner_list_conts:nth-of-type(even) figure::after {
	right: 40.5px;
}

.concept_inner_list_conts_box {
	-webkit-box-sizing: border-box;
	background-color: #fff;
	border: 6px solid #fff;
	border-radius: 42px;
	box-sizing: border-box;
	margin: 2em auto 0;
	max-width: 93%;
	padding: 1em 1em 2em;
}

.concept_inner_list_conts_box h3 {
	border-bottom: 1px solid #000;
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
	font-size: 24px;
	line-height: 2em;
	text-align: center;
}

.concept_inner_list_conts_box ul {
	list-style-type: disc;
	margin-top: 1.8em;
	padding: 0 2em;
}

.about_wrapper_black {
	background-color: #000;
}

.about_inner {
	margin: auto;
	max-width: 1000px;
	position: relative;
}

.about_inner_black {
	padding-bottom: 10em;
}

.about_inner_black_h3 {
	color: #fff;
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
	font-size: 24px;
	margin: auto;
	text-decoration: underline;
	width: 90%;
}

.about_inner_black_h3 span {
	display: block;
}

.about_inner_black_h3 span:last-of-type {
	margin-top: 0.5em;
	text-align: right;
}

.about_inner_black figure {
	float: left;
	margin: 24px 12px 0;
	position: relative;
	z-index: 1;
}

.about_inner_black figure img {
	border-radius: 50px;
}

.about_inner_grey {
	background-color: #e5e5e5;
	padding-bottom: 5em;
	padding-top: 26vh;
}

.about_inner_grey figure {
	margin: auto;
	width: 90%;
}

.about_inner_kuma {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-direction: row-reverse;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: row-reverse;
	justify-content: center;
	margin: 2em auto 0;
	width: 90%;
}

.about a.morebtn {
	margin-top: 1em;
}

.flow_inner {
	margin: auto;
	margin-top: 10vh;
	max-width: 1000px;
}

.flow_inner_list {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.flow_inner_list li {
	border: 1px solid #000;
	border-radius: 40px 40px 30px 30px;
	margin: 3em auto 0.5em;
	padding-top: 1em;
	width: 90%;
}

.flow_inner_list li h3 {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
	color: #535353;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
	font-size: 26px;
	justify-content: center;
}

.flow_inner_list li h3 img {
	margin: 0;
	max-width: 60px;
}

.flow_inner_list li h3 span {
	border-bottom: 1px dotted #000;
	display: block;
	line-height: 2em;
	margin-left: 0.5em;
	width: 70%;
}

.flow_inner_list li p {
	margin: 1.5em;
}

.price_wrapper {
	background: #fff;
	background-image: -webkit-radial-gradient(#e5e5e5 20%, transparent 0), -webkit-radial-gradient(#e5e5e5 20%, transparent 0);
	background-image: radial-gradient(#e5e5e5 20%, transparent 0), radial-gradient(#e5e5e5 20%, transparent 0);
	background-position: 0 0, 8px 8px;
	background-size: 16px 16px;
	margin-top: 10vh;
	padding-bottom: 3em;
}

.price_inner {
	background: url(../image/top/top_ryoukin_pic.png) no-repeat;
	background-position: top 25vh center;
	background-size: 70%;
	margin: auto;
	max-width: 1000px;
	position: relative;
}

.price_inner_list {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-ms-flex-wrap: wrap;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 0 1em;
}

.price_inner_list:first-of-type {
	margin-top: 42vh;
}

.price_inner_list:last-of-type {
	margin-top: 1.5em;
}

.price_inner_list li {
	width: 45%;
	margin: 0 .5em
}

.price_inner .morebtn {
	margin-top: 1em;
}

footer {
	background-color: #000;
	color: #fff;
}

.footer_inner {
	margin: auto;
	max-width: 1000px;
}

.footer_inner_upper_left {
	text-align: center;
}

.footer_inner_upper_left_logo {
	margin: auto;
	width: 80%;
}

.footer_inner_upper_left_address {
	margin-top: 1.5em;
}

.footer_inner_upper_right {
	-webkit-box-align: end;
	-ms-flex-align: end;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	align-items: flex-end;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
	justify-content: center;
	margin-top: 2em;
}

.footer_inner_upper_right_time {
	border: 1px solid #fff;
	line-height: 1.2em;
	padding: 1em 1.1em 0.9em;
}

.footer_inner_upper_right_table {
	font-weight: 500;
	margin-left: 1em;
}

.footer_inner_upper_right_table th,
.footer_inner_upper_right_table td {
	border-bottom: 2px solid #fff;
	padding: 0.6em 1em 0.3em;
}

.footer_inner_bottom {
	margin-top: 5vh;
}

.footer_inner_bottom a {
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
	font-size: 24px;
	font-weight: bold;
	letter-spacing: normal;
	margin-top: 0.5em;
	padding: 1em;
}

.footer_inner_bottom a span {
	display: inline-block;
	font-size: 1.1em;
	margin-right: 0.6em;
}

.footer_inner_bottom .moreline {
	background-color: #00d700;
	border-color: #00d700;
}

.footer_inner_bottom .moreline:hover::after {
	border-color: transparent transparent #00d700 transparent;
}

.footer_inner iframe {
	margin-top: 5vh;
}

p.copyright {
	background-color: #636363;
	font-size: 10px;
	margin-top: 20vh;
	padding: 0.5em 0;
	text-align: center;
}

/* 料金ページ */

.ryoukin_base {
	background-color: #eee;
	padding-bottom: 5em;
}

.ryoukin_inner {
	margin: auto;
	max-width: 1000px;
}

.ryoukin_list_outer {
	margin: 5em 0.5em 0;
}

.ryoukin_list_outer li.coupon {
	margin-top: 6em;
}

.ryoukin_list_outer li.allbody {
	margin-top: 8em;
}
.ryoukin_list_outer li.allbody01 {
	margin-top: 2em;
}

.ryoukin_list_outer_li {
	background-color: #fff;
	border: 4px solid #000;
	border-radius: 40px;
	position: relative; /* 料金タイトル */ /* 料金部位 */ /* 料金回数券 */
}

.ryoukin_list_outer_li:not(:first-of-type) {
	margin-top: 3em;
}
.ryoukin_list_outer li:last-child {
	/*margin-bottom: 5em;*/
}
.ryoukin_list_outer_li p.chuui {
	font-size: 12px;
	margin: -1em 2em 2em;
	text-align: right;
}

.ryoukin_list_outer_li_ttl {
	background-color: #000;
	border-radius: 30px 30px 0 0;
	color: #fff;
	font-family: "Montserrat", sans-serif;
	font-size: 34px;
	padding: 0.4em 0.7em;
	position: relative;
}

.ryoukin_list_outer_li_ttl div {
	border-bottom: dotted 3px #fff;
	width: 100%;
}

.ryoukin_list_outer_li_ttl h3 {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.ryoukin_list_outer_li_ttl h3 span {
	letter-spacing: 0.2em;
}

.ryoukin_list_outer_li_ttl p {
	line-height: 0.8em;
	margin-top: 0.5em;
	text-align: right;
}

.ryoukin_list_outer_li_ttl p span {
	font-size: 16px;
	letter-spacing: 0em;
}

.ryoukin_list_outer_li_ttl h3,
.ryoukin_list_outer_li_ttl p {
	background-color: #000;
	letter-spacing: 0.05em;
	position: static;
	z-index: 1;
}

.ryoukin_list_outer_li_ttl span {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 18px;
	margin: 0 0.2em;
	vertical-align: middle;
}

.ryoukin_list_outer_li_inner {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: center;
	padding: 2.5em 0.5em;
}

.ryoukin_list_outer_li_couponttl {
	left: 0;
	margin: auto;
	position: absolute;
	right: 0;
	top: -28%;
	width: 90%;
}

.ryoukin_list_outer_li_couponlist {
	margin: 2.5em 1em 2em;
}

.ryoukin_list_outer_li_couponlist li {
	margin-top: 1.5em;
}

.ryoukin_list_outer_li .allbody_ttl {
	left: 0;
	position: absolute;
	right: 0;
	top: -19%;
}
.ryoukin_list_ok {
	margin: 1em 8px;
	padding: 8px 8px 0;
}
.ryoukin_list_ok p{
	margin-top: 2em;
}
.ryoukin_list_ok ul {
	display: block;
}
.ryoukin_list_ok ul li {
	margin: 2em auto;
}
.ryoukin_list_outer_li .allbody_img {
	width: 65%;
}

/* LUMIXーA9 ページ */

.lumix_base {
	background-color: #e5e5e5;
	padding-bottom: 5em;
}

.lumix_inner {
	margin: auto;
	max-width: 1000px;
}

.lumix_inner_conts01 {
	overflow: hidden;
}

.lumix_inner_conts01_h3 {
	color: #151413;
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
	font-size: 24px;
	letter-spacing: 0.1em;
	margin: auto;
	text-align: center;
	text-decoration: underline;
	width: 90%;
}

.lumix_inner_conts01_h3 span {
	display: block;
}

.lumix_inner_conts01_h3 span:last-of-type {
	margin-top: 0.3em;
}

.lumix_inner_conts01 figure {
	margin-top: 2em;
}

.lumix_inner_conts01 figure img {
	max-width: 50%;
}

.lumix_inner_conts01_txt {
	background-color: #fff;
	border-radius: 40px;
	margin: 2em 0.5em 0;
	padding: 3em;
}

.lumix_inner_conts01_txt p:not(:first-of-type) {
	margin-top: 2em;
}

.lumix_inner_conts02 {
	background-color: #fff;
	border: 4px solid #000;
	border-radius: 40px;
	margin: 2em 0.5em 0;
}

.lumix_inner_conts02_h3 {
	background-color: #000;
	border-radius: 30px 30px 0 0;
	color: #fff;
	font-family: "FOT-筑紫A丸ゴシック Std B";
	font-size: 24px;
	letter-spacing: 0.05em;
	padding: 0.5em;
	text-align: center;
}

.lumix_inner_conts02_box {
	margin-top: 1em;
	padding: 0.5em 0.8em 3em;
}

.lumix_inner_conts02_box_hikaku {
	padding: 0 1em;
}

.lumix_inner_conts02_box_hikaku p {
	margin-top: 24px;
}

.lumix_inner_conts02_box_hikaku div:nth-of-type(2) {
	margin-top: 4em;
}

.lumix_inner_conts02_box_syuuki {
	background-color: #ffffbf;
	border-radius: 20px;
	margin-top: 3em;
	padding: 1.5em 1em;
}

.lumix_inner_conts02_box_tokuchou {
	margin-top: 3em;
}

.lumix_inner_conts02_box_tokuchou_h4 {
	background-color: inherit;
	border-color: #221e1f;
	color: #221e1f;
	font-family: "FOT-筑紫A丸ゴシック Std B";
	font-size: 34px;
	padding: 0.5em 0;
}

.lumix_inner_conts02_box_tokuchou_h4::before {
	border-top: 24px solid #221e1f;
}

.lumix_inner_conts02_box_tokuchou_h4::after {
	border-top: 25px solid #fff;
	margin-top: -3px;
}

.lumix_inner_conts02_box_tokuchou_list li {
	margin-top: 1.5em;
}

.lumix_inner_conts02_box_tokuchou_list li p {
	padding: 1.5em;
}

.lumix_inner_conts03 {
	margin-top: 3em;
}

.lumix_inner_conts03 figure img {
	width: 85%;
}

.lumix_inner_conts03_table {
	-webkit-box-sizing: border-box;
	background-color: #fff;
	border: 3px solid #000;
	border-collapse: separate;
	border-radius: 40px;
	border-spacing: 0;
	box-sizing: border-box;
	margin: 0 2%;
	overflow: hidden;
	width: 96%;
}

.lumix_inner_conts03_table th,
.lumix_inner_conts03_table td {
	border-bottom: 1px solid #000;
	border-left: 1px solid #000;
	font-size: 12px;
	padding: 1em 0.5em;
	text-align: center;
	vertical-align: middle;
	width: 25%;
}

.lumix_inner_conts03_table tr:last-child th,
.lumix_inner_conts03_table tr:last-child td {
	border-bottom: none;
}

.lumix_inner_conts03_table tr th:first-of-type {
	width: 18%;
}

.lumix_inner_conts03_table th.lumix_th {
	background-color: #ffd801;
}

.lumix_inner_conts03_table th.sonota_th {
	background-color: #bfbfbf;
}

.lumix_inner_conts03_table th.sonota_th:last-of-type img {
	max-width: 80%;
}

.lumix_inner_conts03_table td:first-of-type {
	background-color: #fff4b9;
	width: 32%;
}

.lumix_inner_conts03_table td span {
	display: block;
	font-size: 30px;
	text-align: center;
}

@media (min-width: 479px) {

.flow_inner_list li {
	border-radius: 40px;
	margin: 3em auto 0.5em;
	max-width: 470px;
}

.price_inner {
	background-position: bottom 38vh center;
	background-size: 35%;
}

.price_inner .top_h2 {
	margin-bottom: 1.5em;
}

.price_inner_list li {
	margin: 1em;
	width: 30%;
}
.price_inner_list {
	justify-content: space-between;
}
.price_inner_list:first-of-type {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin-top: 0em;
}

.price_inner .morebtn {
	margin-top: 2em;
}

.ryoukin_list_outer li.coupon {
	margin-top: 8em;
}

.ryoukin_list_outer li.allbody {
	margin-top: 12em;
}
.ryoukin_list_outer li.allbody01 {
	margin-top: 4em;
}
.ryoukin_list_outer_li { /* 料金回数券 */
}

.ryoukin_list_outer_li_couponttl {
	top: -65%;
	width: 80%;
}

.ryoukin_list_outer_li_couponlist {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin: 3em 1em 3em;
}

.ryoukin_list_outer_li_couponlist li {
	margin: 0 16px;
}

.ryoukin_list_outer_li .allbody_ttl {
	top: -36%;
}

.ryoukin_list_outer_li .allbody_img {
	width: 100%;
}
.ryoukin_list_ok {
	margin-top: 5em;
}
.ryoukin_list_ok p {
	margin-top: 3em;
}
.ryoukin_list_ok ul {
	display: flex;
}
.ryoukin_list_ok ul li {
	width: 30%;
	margin: 3em auto 0;
}

.lumix_inner_conts02_box_tokuchou {
	margin: 3em 2em 0;
}

.lumix_inner_conts02_box_tokuchou_list {
	-ms-flex-wrap: wrap;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
}

.lumix_inner_conts02_box_tokuchou_list li {
	width: 50%;
}

}

@media screen and (min-width: 580px) and (max-width: 959px) {

.concept_inner_list_conts figure::before {
	right: 16vw;
	top: -12%;
}

.concept_inner_list_conts figure::after {
	right: 20.5vw;
	top: -4%;
}

}

@media screen and (min-width: 680px) {

#nav-toggle {
	right: 38px;
	top: 28px;
}

}

@media (min-width: 760px) {

.sponly {
	display: none;
}

a.morebtn {
	max-width: 380px;
}

.corona_bnr {
	margin-top: 45px;
}

.about_inner_black {
	padding-bottom: 15em;
}

.about_inner_black_h3 {
	float: right;
	font-size: 30px;
	margin-right: 5%;
	margin-top: 1em;
	width: 40%;
}

.about_inner_black figure {
	margin-top: -16px;
	width: 50%;
}

.about_inner_black figure img {
	margin: 0;
	width: 100%;
}

.about_inner_grey {
	border-radius: 50px;
	float: right;
	margin-bottom: 5em;
	margin-right: 8px;
	margin-top: -80px;
	padding-top: 10vh;
	position: relative;
	width: 70%;
}

.about_inner_grey figure {
	margin: auto;
	width: 90%;
}

.about_inner_kuma {
	display: block;
	left: 5vw;
	position: absolute;
	top: 12vh;
}

.about_inner_kuma img {
	margin: 0;
	max-width: 150px;
}

.flow_inner_list {
	-ms-flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 6px;
}

.flow_inner_list li {
	margin: 5vh 0 0;
	width: 48%;
}

.flow_inner_list li p {
	min-height: 4.5em;
}

.price_inner {
	background-position: bottom 15vh center;
	background-size: 35%;
}

.footer_inner_upper {
	-ms-flex-pack: distribute;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: space-around;
}

.footer_inner_upper_right {
	margin-top: 0;
}

.footer_inner_bottom {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.footer_inner_bottom a {
	font-size: 36px;
	max-width: 480px;
	padding: 0.8em;
	width: 48%;
}

.ryoukin_list_outer li.coupon {
	margin-top: 12em;
}

.ryoukin_list_outer li.allbody {
	margin-top: 16em;
}
.ryoukin_list_outer li.allbody01 {
	margin-top: 4em;
}
.ryoukin_list_outer_li_ttl {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: space-between; /* 料金タイトル */
	padding: 0.5em 1.5em;
}

.ryoukin_list_outer_li_ttl h3 {
	padding-right: 0.5em;
}

.ryoukin_list_outer_li_ttl p {
	margin-top: 0;
	padding-left: 0.5em;
}

.ryoukin_list_outer_li_ttl div {
	-webkit-transform: translateY(-50%);
	left: 0;
	margin: auto;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 80%;
}

.ryoukin_list_outer_li_inner {
	-ms-flex-pack: distribute;
	justify-content: space-around; /* 料金部位 */
	padding: 2.5em 4em;
}

.ryoukin_list_outer_li { /* 料金回数券 */
}

.ryoukin_list_outer_li_couponttl {
	top: -70%;
}

.ryoukin_list_outer_li_couponlist {
	margin: 3.5em 1em 3em;
}

.ryoukin_list_outer_li .allbody_ttl {
	top: -42%;
}

.lumix_inner_conts01_h3,
.lumix_inner_conts01_txt {
	float: right;
	width: 52%;
}

.lumix_inner_conts01_h3 {
	font-size: 30px;
	padding: 1em 1.65em 0;
}

.lumix_inner_conts01 figure {
	float: left;
	margin-top: 0;
	width: 34%;
}

.lumix_inner_conts01 figure img {
	max-width: 80%;
}

.lumix_inner_conts01_txt {
	margin-top: 3em;
}

.lumix_inner_conts02_h3 {
	font-size: 36px;
}

.lumix_inner_conts02_box_hikaku {
	-ms-flex-pack: distribute;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: space-around;
}

.lumix_inner_conts02_box_hikaku div:nth-of-type(2) {
	margin-top: 0;
}

.lumix_inner_conts02_box_syuuki {
	margin: 3em 3em 0;
	padding: 3em 2em;
}

.lumix_inner_conts02_box_tokuchou_h4 {
	font-size: 40px;
}

.lumix_inner_conts03 figure img {
	width: 60%;
}

.lumix_inner_conts03_table th {
	font-size: 24px;
}

.lumix_inner_conts03_table td {
	font-size: 18px;
}

.lumix_inner_conts03_table td span {
	font-size: 36px;
}

}

@media (min-width: 760px) and (min-width: 960px) {

.flow_inner_list li p {
	margin: 1.5em 3em;
}

}

@media (min-width: 960px) {

.pconly {
	display: block;
}

#navArea {
	display: none;
}

.h_pc_right {
	display: block;
	width: 100%;
}

.h_pc_right_nav {
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	color: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: flex-end;
}

.h_pc_right_nav li {
	margin: 1em 0;
	padding: 0.5em 1em;
}

.h_pc_right_nav li:not(:last-of-type) {
	border-right: 1px solid #fff;
}

.pc_nav {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	border-top: 1px solid #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: center;
}

.pc_nav li {
	font-family: "Montserrat", sans-serif;
	font-size: 16px;
	padding: 0.8em 0;
	text-align: center;
	width: 20%;
}

.pc_nav li a {
	color: #fff;
	text-decoration: none;
}

.concept_wrapper {
	margin-top: 8em;
}

.concept_inner .top_h2 {
	position: absolute;
	top: -1.5em;
	width: 1000px;
}

.concept_inner_list {
	overflow: hidden;
}

.concept_inner_list_conts {
	margin-top: 15em;
}

.concept_inner_list_conts figure {
	margin-top: -3em;
}

.concept_inner_list_conts figure::after {
	top: -12%;
}

.concept_inner_list_conts_box {
	margin-top: 10em;
}

.concept_inner_list_conts_box h3 {
	width: 50%;
}

.concept_inner_list_conts:nth-of-type(odd) figure {
	float: left;
}

.concept_inner_list_conts:nth-of-type(odd) figure::before {
	left: 0;
}

.concept_inner_list_conts:nth-of-type(odd) figure::after {
	left: 39.5px;
}

.concept_inner_list_conts:nth-of-type(odd) div h3 {
	margin-left: auto;
}

.concept_inner_list_conts:nth-of-type(odd) div ul {
	margin-left: auto;
	width: 40%;
}

.concept_inner_list_conts:nth-of-type(even) figure {
	float: right;
}

.concept_inner_list_conts:nth-of-type(even) div h3 {
	margin-right: auto;
}

.concept_inner_list_conts:nth-of-type(even) div ul {
	margin-left: auto;
	width: 90%;
}

.about_inner_black {
	padding-bottom: 20em;
}

.about_inner_grey {
	margin-top: -10vh;
	padding-top: 12vh;
}

.about_inner_kuma {
	left: 8px;
	top: 18vh;
}

.about_inner_kuma img {
	margin: 0;
	max-width: 200px;
}

.price_wrapper {
	margin-top: 20vh;
	padding-bottom: 5em;
}

.price_inner .top_h2 {
	top: -1.5em;
	width: 1000px;
}

.price_inner_list:last-of-type {
	margin-top: 2em;
}

.footer_inner_upper_left {
	font-size: 18px;
}

.footer_inner_upper_right {
	font-size: 20px;
	margin-top: 0;
}

.ryoukin_list_outer_li { /* 料金回数券 */
}

.ryoukin_list_outer_li_couponttl {
	top: -65%;
}

.ryoukin_list_outer_li_couponlist {
	margin: 4em 2em 3em;
}

.ryoukin_list_outer_li .allbody_ttl {
	top: -41%;
}

.lumix_inner_conts01_h3,
.lumix_inner_conts01_txt {
	width: 55%;
}

}

@media screen and (max-width: 767px) {

nav.h_nav {
	left: -220px;
	width: 220px;
}

}

