@charset "utf-8";
/*
Theme Name: まゆの館_develop（newsのみ修正）_20250321-162627
Theme URI: https://mayunoyakata.waza.co.jp/
Description: きものレンタル まゆの館
*/

/* ----------------------------------------------------------------
 * styles.css
 * ---------------------------------------------------------------- */

/* basic setting
 * ---------------------------------------------------------------- */
html,
body {
	position: relative;
	width: 100%;
	height: 100%;
}
body {
	-webkit-text-size-adjust: 100%;
}
body {
	margin: 0;
	padding: 0;
	font-size: 14px;
	font-family: Arial, Roboto, 'Droid Sans', '游ゴシック', YuGothic, 'ヒラギノ角ゴ ProN W3',
		'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif;
	line-height: 1.5;
	color: #333;
	background: #fff;
}
h1,
h2,
h3,
h4,
h5,
h6,
p,
em,
pre,
th,
td,
blockquote {
	margin: 0;
	padding: 0;
	font-size: 100%;
}
img,
table {
	border: 0;
	vertical-align: bottom;
}
img {
	max-width: 100%;
	height: auto;
}
form,
ul,
dl,
ol {
	margin: 0;
	padding: 0;
}
dl,
dd {
	margin: 0;
	padding: 0;
}
li {
	list-style: none;
}
a,
a:visited {
	color: #39f;
}
a {
	outline: none;
	text-decoration: none;
}
@media screen and (min-width: 769px) {
	a {
		transition-duration: 0.3s;
	}
	a:hover {
		opacity: 0.7;
	}
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
	display: block;
	margin: 0;
	padding: 0;
}
.clr {
	clear: both;
	height: 0px;
	overflow: hidden;
}
/*.cf{*zoom:1}*/
.cf:after {
	content: '';
	display: block;
	height: 0px;
	clear: both;
}

/* header
 * ---------------------------------------------------------------- */
header {
	width: 100%;
	background: #fff9f4;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 500;
}
header:before {
	content: '';
	display: block;
	width: 100%;
	height: 26px;
	background: #f98ea7 url(images/bg_headnav.png) repeat-x 0 50%;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 501;
}
header .inner {
	max-width: 1000px;
	margin: 0 auto;
	position: relative;
	z-index: 502;
}
header .hd_btn {
	width: 66%;
	position: absolute;
	top: 5px;
	right: 23px;
	z-index: 504;
}
header .hd_btn ul {
	display: flex;
	justify-content: center;
}
header .hd_btn li {
	width: calc((100% - 10px) / 2);
	max-width: 249px;
}
header .hd_btn li + li {
	margin-left: 10px;
}
header nav {
	position: relative;
	z-index: 503;
}
header nav .bar {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	height: 40px;
	padding: 42px 10px 5px 0;
}
header nav .bar p.tel {
	font-size: 16px;
	font-weight: bold;
	line-height: 1;
}
header nav .bar p.tel a {
	display: inline-block;
	color: #000;
	text-decoration: none;
	padding-left: 16px;
	position: relative;
}
header nav .bar p.tel span.small {
	font-size: 12px;
}
header nav .bar p.tel a:before {
	content: '';
	display: block;
	width: 14px;
	height: 14px;
	background: url(images/sym_tel.png) no-repeat;
	background-size: 100%;
	position: absolute;
	top: 2px;
	left: 0;
}
header nav .bar_inner {
	display: flex;
	align-items: center;
	height: 42px;
}
header nav .bar_inner .btn_reserve li {
	float: left;
	width: 80px;
	margin-left: 10px;
}
header nav .bar_inner .btn_reserve li a {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 32px;
	font-size: 12px;
	font-weight: bold;
	line-height: 1;
	color: #00badb;
	text-decoration: none;
	text-align: center;
	border: solid 1px #00badb;
}
header nav .bar_inner .sns li {
	float: left;
	width: 30px;
	margin-left: 10px;
}
/* header nav .bar_inner .lang{
  height:32px;
  margin:0 10px 0 15px;
  overflow:visible;
}
header nav .bar_inner .lang p{
  width: 80px;
  height:32px;
  line-height:17px;
  text-align:center;
  font-size:14px;
  color:#666;
  border-bottom:solid 1px #666;
}
header nav .bar_inner .lang p:after{
  content:"";
  display:block;
  width:6px;
  height:6px;
  margin:5px auto 0;
  border-right:solid 1px #000;
  border-bottom:solid 1px #000;
  transform: translateY(-40%) rotate(45deg);
}
header nav .bar_inner .lang ul{
  width:100%;
  max-height:0;
  overflow:hidden;
  transition: max-height 0.5s ease-out;
  position:relative;
  z-index:200;
}
header nav .bar_inner .lang li{
  width:100%;
  background:#fff;
  line-height:1;
}
header nav .bar_inner .lang li a{
  display: block;
  padding: 5px 0;
  border:solid 1px #999;
  border-width:0 1px 1px;
  text-align: center;
  font-size: 13px;
  color: #333;
  text-decoration: none;
} */
/* @media screen and (min-width:769px){
  header nav .bar_inner .lang li a:hover{
    color: #fff;
    background:#e53535;
  }
  header nav .bar_inner .btn_reserve li a:hover{
    color:#fff;
    background:#00badb;
    opacity:1;
  }
  header nav .bar_inner .lang p:hover + ul,
  header nav .bar_inner .lang ul:hover {
    max-height:500px;
  }
} */
.lang-for-gtranslate {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 8px;
	margin-left: 16px;
}
#google_language_translator {
	display: flex;
}
header nav .gnav {
	clear: both;
	text-align: center;
}
header nav .gnav > li {
	display: inline-block;
	height: 26px;
	margin: 0 3.2%;
	overflow: visible;
	vertical-align: top;
}
.sp_hd_btn {
	display: none;
}

@media screen and (max-width: 900px) {
	header {
		top: 44px;
	}
	header nav .bar {
		display: block;
		height: auto;
		padding: 10px 10px 0 0;
		margin-bottom: 5px;
		float: right;
	}
	header nav .bar p.tel {
		margin: 0 0 5px 10px;
	}
	header nav .bar p.tel br {
		display: none;
	}
	header nav .gnav > li {
		margin: 0 1.5%;
	}
	header .hd_btn {
		width: 100%;
		background: #fff;
		border-bottom: solid 1px #f7f2ea;
		position: fixed;
		top: 0;
		right: 0;
	}
	header .hd_btn ul {
		height: 44px;
		align-items: center;
	}
	.sp_hd_btn {
		display: none;
	}
}

header nav .gnav > li > a,
header nav .gnav > li > span {
	color: #fff;
	text-decoration: none;
	font-size: 13px;
	line-height: 26px;
	font-weight: bold;
}
header nav .gnav > li ul {
	background: #f98ea7;
	position: absolute;
	top: 100%;
	margin-left: -10px;
	padding: 0 7px;
	max-height: 0;
	transition: 0.5s ease-in-out;
	overflow: hidden;
}
header nav .gnav > li li {
	text-align: left;
	padding: 3px 3px 0;
	border-top: solid 1px #fff;
}
header nav .gnav > li li:last-child {
	padding-bottom: 3px;
}
header nav .gnav > li li a {
	display: block;
	color: #fff;
	font-size: 13px;
	font-weight: bold;
	padding: 2px;
}
@media screen and (min-width: 769px) {
	header nav .gnav > li > span:hover + ul,
	header nav .gnav > li > a:hover + ul,
	header nav .gnav > li ul:hover {
		max-height: 500px;
	}
}
header nav .gnav .sp {
	display: none;
}

header h1 {
	width: 300px;
	position: absolute;
	top: 3px;
	left: 5px;
	z-index: 510;
	font-size: 10px;
	line-height: 1.8;
}
header h1 img {
	width: 220px;
}
header .spmenu,
header #spmenu {
	display: none;
}

@media screen and (max-width: 768px) {
	header .inner {
		background: #fffcf9;
		border-bottom: solid 1px #d0d0ce;
	}
	header h1 {
		width: 100%;
		padding: 5px 10px 0;
		position: static;
		z-index: 503;
		font-size: 8px;
	}
	header h1 img {
		width: 180px;
	}
	header .sp_hd_btn {
		display: block;
		position: fixed;
		top: 53px;
		left: 250px;
	}
	header .sp_hd_btn li {
		float: left;
		margin: 10px;
	}
	header .sp_hd_btn li img {
		width: 30px;
	}
	@media screen and (max-width: 480px) {
		header .sp_hd_btn {
			display: block;
			position: fixed;
			top: 45px;
			left: 200px;
		}
		header .sp_hd_btn li {
			float: left;
			margin: 5px;
		}
	}

	header .spmenu {
		display: block;
		width: 30px;
		height: 26px;
		padding: 2px 0;
		position: fixed;
		top: 53px;
		right: 10px;
		z-index: 600;
	}
	header .spmenu label {
		display: block;
		width: 30px;
		height: 26px;
		position: relative;
	}
	header .spmenu label span {
		display: block;
		width: 100%;
		height: 4px;
		text-indent: -9999px;
		background: #f96182;
		position: absolute;
		top: 50%;
		left: 0;
		margin-top: -2px;
		transition: 0.3s;
	}
	header .spmenu label:before,
	header .spmenu label:after {
		content: '';
		display: block;
		width: 100%;
		height: 4px;
		background: #f96182;
		position: absolute;
		left: 0;
		transition: 0.3s;
	}
	header .spmenu label:before {
		top: 0;
	}
	header .spmenu label:after {
		bottom: 0;
	}

	header nav {
		position: fixed;
		top: 0;
		left: 100%;
		width: 280px;
		height: 100%;
		overflow: auto;
		z-index: 510;
		transition: 0.3s;
		background: #fffafa;
	}

	header nav .bar {
		display: block;
		height: auto;
		padding: 40px 0 0 15px;
		float: none;
	}
	header nav .bar p.tel {
		margin: 0 0 10px 0;
	}
	header nav .bar p.tel br {
		display: inline;
	}
	header nav .bar_inner {
		display: block;
		width: 100%;
		height: auto;
	}
	header nav .bar_inner .btn_reserve {
		margin: 0 10px 10px 5px;
	}
	header nav .bar_inner .lang {
		width: 80%;
		height: auto;
		margin: 0 0 10px;
		overflow: visible;
	}
	header nav .bar_inner .lang p {
		width: auto;
		height: 32px;
	}
	header nav .bar_inner .lang ul {
		max-height: inherit;
		text-align: center;
		border-bottom: solid 1px #666;
	}
	header nav .bar_inner .lang li {
		display: inline-block;
		width: auto;
		margin: 5px 7px;
	}
	header nav .bar_inner .lang li a {
		display: inline-block;
		padding: 2px 0;
		border: 0;
		font-size: 14px;
	}
	header nav .bar_inner .sns {
		margin: 0 10px 20px 5px;
	}
	header nav .gnav {
		width: 86%;
		margin: 0 auto;
		text-align: left;
	}
	header nav .gnav > li {
		display: block;
		margin: 0 0 10px;
		height: auto;
	}
	header nav .gnav .sp {
		display: block;
	}
	header nav .gnav > li > a,
	header nav .gnav > li > span {
		display: block;
		color: #000;
		position: relative;
	}
	header nav .gnav > li > a {
		border-bottom: dotted 1px #ccc;
	}
	header nav .gnav > li ul {
		background: transparent;
		position: static;
		top: 100%;
		margin-left: 0;
		padding: 0;
		max-height: 100%;
	}
	header nav .gnav > li li {
		text-align: left;
		padding: 3px 0 0;
		border: 0;
	}
	header nav .gnav > li li:last-child {
	}
	header nav .gnav > li li a {
		display: block;
		color: #000;
		font-weight: normal;
		padding: 2px 0;
		border-bottom: dotted 1px #ccc;
		position: relative;
	}
	header nav .gnav > li > a:after,
	header nav .gnav > li li a:after {
		content: '';
		display: block;
		width: 5px;
		height: 5px;
		border-top: solid 1px #ccc;
		border-right: solid 1px #ccc;
		position: absolute;
		top: 50%;
		right: 5px;
		transform: translateY(-50%) rotate(45deg);
	}

	header #spmenu:checked ~ .spmenu label span {
		opacity: 0;
	}
	header #spmenu:checked ~ .spmenu label:before {
		top: 50%;
		transform: translateY(-50%) rotate(45deg);
	}
	header #spmenu:checked ~ .spmenu label:after {
		top: 50%;
		transform: translateY(-50%) rotate(-45deg);
	}
	header #spmenu:checked ~ nav {
		left: calc(100% - 280px);
	}
}

/* footer
 * ---------------------------------------------------------------- */
footer {
	margin-top: 50px;
	padding: 30px 0 10px;
	background: #f7f7f5;
}
footer .mayu {
	margin-bottom: 15px;
}
footer .mayu ul {
	max-width: 1196.6px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
footer .mayu ul li {
	margin: 0 5px;
}
footer .mayu ul li:nth-child(1) {
	width: calc((100% - 20px) / 1.961);
}
footer .mayu ul li:nth-child(2) {
	width: calc((100% - 20px) / 1.961 * 0.961);
}

footer .mayu a {
	display: block;
	max-width: 600px;
}
footer .mayu p {
	font-size: 18px;
	margin-right: 10px;
}
footer > p {
	text-align: center;
	font-size: 13px;
}

.gototop {
	width: 60px;
	height: 60px;
	position: fixed;
	right: 40px;
	bottom: 40px;
	z-index: 490;
}
.gototop a {
	display: block;
	width: 60px;
	height: 60px;
	text-indent: -9999px;
	background: #f98ea7;
	border-radius: 50%;
	position: relative;
}
.gototop a:after {
	content: '';
	display: block;
	width: 18px;
	height: 18px;
	border-top: solid 2px #fff;
	border-left: solid 2px #fff;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-25%) rotate(45deg);
}

@media screen and (max-width: 480px) {
	.gototop {
		width: 40px;
		height: 40px;
		right: 20px;
		bottom: 20px;
	}
	.gototop a {
		width: 40px;
		height: 40px;
	}
	.gototop a:after {
		width: 10px;
		height: 10px;
		border-top: solid 2px #fff;
		border-left: solid 2px #fff;
		transform: translateX(-50%) translateY(-25%) rotate(45deg);
	}
}

/* common style
 * ---------------------------------------------------------------- */
.bold {
	font-weight: bold;
}
.ft_small {
	display: inline-block;
	font-size: 87.5%;
}

/* article
 * ---------------------------------------------------------------- */
.wrap {
	padding: 113px 0 0;
}
@media screen and (max-width: 900px) {
	.wrap {
		padding: 148px 0 0;
	}
}

.wrap a[href^='tel'] {
	color: #000;
}
.wrap a[href^='tel']:before {
	content: '';
	display: inline-block;
	width: 0.78em;
	height: 0;
	padding-top: 0.78em;
	margin-right: 3px;
	background: url(images/sym_tel.png) no-repeat;
	background-size: contain;
}
.page_header {
	text-align: center;
	color: #ff8da7;
	padding: 40px 10px 50px;
}
.page_header h2 {
	font-size: 30px;
	line-height: 1.2;
}
.page_header p {
	font-size: 16px;
}

.page_header .inner {
	display: inline-block;
	padding: 10px 30px;
	background: url(images/order_2.png) repeat-x 0 0, url(images/order_2.png) repeat-x 0 100%;
}

/* トップページ */
.top_mainimage_block .inner {
	text-align: center;
}
.top_mainimage_block .pc {
	display: inline;
}
.top_mainimage_block .sp {
	display: none;
}

.top_info_block {
	padding: 28px 0 40px;
	background: #ffe8ed url(images_top/bg_news.png) repeat 0 0;
}
.top_info_block .outer {
	max-width: 1000px;
	margin: 0 auto;
}
.top_info_block .inner {
	float: left;
	width: 48%;
	margin-right: 4%;
}
.top_info_block .inner:last-child {
	margin-right: 0;
}
.top_info_block h2 {
	color: #777;
	font-size: 20px;
	margin-bottom: 5px;
}
.top_info_block .inner .btn {
	text-align: center;
}
.top_info_block .inner .btn a {
	display: inline-block;
	padding: 0 15px;
	background: #ff8da7;
	color: #fff;
	font-weight: bold;
	font-size: 16px;
	line-height: 28px;
	border-radius: 3px;
}

.top_info_block .order_outer {
	background-color: #fff;
	background-image: url(images/order_1_t.png), url(images/order_1_l.png);
	background-repeat: repeat-x, repeat-y;
	background-position: 0 0, 0 0;
	padding: 0 0 0 40px;
	position: relative;
}
.top_info_block .order_outer:before,
.top_info_block .order_outer:after {
	content: '';
	display: block;
	width: 40px;
	height: 40px;
	background: #ffe8ed url(images/order_1.png) no-repeat 0 0;
	position: absolute;
}
.top_info_block .order_outer:before {
	background-position: 0 0;
	top: 0;
	left: 0;
}
.top_info_block .order_outer:after {
	background-position: 0 100%;
	bottom: 0;
	left: 0;
}
.top_info_block .order_inner {
	background-image: url(images/order_1_b.png), url(images/order_1_r.png);
	background-repeat: repeat-x, repeat-y;
	background-position: 0 100%, 100% 0;
	padding: 25px 40px 20px 0;
	position: relative;
}
.top_info_block .order_inner:before,
.top_info_block .order_inner:after {
	content: '';
	display: block;
	width: 40px;
	height: 40px;
	background: #ffe8ed url(images/order_1.png) no-repeat 100% 0;
	position: absolute;
}
.top_info_block .order_inner:before {
	background-position: 100% 0;
	top: 0;
	right: 0;
}
.top_info_block .order_inner:after {
	background-position: 100% 100%;
	bottom: 0;
	right: 0;
}
.top_info_block .order_inner p {
	padding: 20px;
}

.top_info_block dt {
	font-size: 16px;
	color: #999;
	padding-left: 23px;
	background: url(images/heart_1.png) no-repeat 2px 50%;
}
.top_info_block dd {
	padding: 0 0 10px;
	margin: 0 0 10px 0;
	font-size: 16px;
	background: url(images/line_1.png) repeat-x 0 100%;
}
.top_info_block li {
	padding: 0 2px 10px 25px;
	margin: 0 0 10px 0;
	font-size: 16px;
	line-height: 1.2;
	background: url(images/line_1.png) repeat-x 0 100%,
		url(images/heart_1.png) no-repeat 2px calc(50% - 5px);
}
.top_info_block li:last-of-type {
	padding-bottom: 0;
	background: url(images/heart_1.png) no-repeat 2px 50%;
}
/*
.top_info_block dd:last-of-type{
  background:none;
  margin-bottom:0;
}
*/
.top_info_block dd a,
.top_info_block li a {
	color: #000;
	text-decoration: none;
}
@media screen and (min-width: 769px) {
	.top_info_block dd a:hover,
	.top_info_block li a:hover {
		text-decoration: underline;
	}
}

.top_basicplan_block {
	width: 100%;
	padding-bottom: 20px;
	border-top: solid 1px #999;
}
.top_basicplan_block > .top_inner {
	padding-bottom: 50px;
	margin-bottom: 40px;
	background: url(images_top/bg_plan.png) repeat;
}

.top_basicplan_block .photo_slide {
	width: 100%;
	padding: 50px 0 40px;
	background: linear-gradient(0deg, rgba(255, 255, 255, 0.5), #fff);
}
.top_basicplan_block .photo_slide .outer {
	background: url(images_top/bg_slide_1.png) no-repeat 0 0,
		url(images_top/bg_slide_2.png) no-repeat 100% 0;
	background-size: contain, contain;
}
.top_basicplan_block .photo_slide .inner {
	max-width: 760px;
	margin: 0 auto;
	position: relative;
}

.top_basicplan_block .photo_slide_screen {
	width: 78.9%;
	height: 0;
	padding-top: 52.6%;
	margin: 0 auto;
	position: relative;
}
.top_basicplan_block .photo_slide_screen li {
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	text-align: center;
	font-size: 16px;
}
.top_basicplan_block .photo_slide_screen li img {
	border-radius: 8px;
}
.top_basicplan_block .photo_slide .arrow_left,
.top_basicplan_block .photo_slide .arrow_right {
	width: 50px;
	height: 50px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	text-indent: -9999px;
	cursor: pointer;
	overflow: hidden;
}
.top_basicplan_block .photo_slide .arrow_left {
	left: 10px;
	background: url(images_top/arrow_left_orange.png) no-repeat;
	background-size: contain;
}
.top_basicplan_block .photo_slide .arrow_right {
	right: 10px;
	background: url(images_top/arrow_right_orange.png) no-repeat;
	background-size: contain;
}

.top_basicplan_block .outer_01 {
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.5) 0%,
		transparent 25%,
		transparent 100%
	);
}
.top_basicplan_block .inner_01 {
	max-width: 990px;
	margin: 0 auto;
}

.top_basicplan_block .ttl {
	font-size: 30px;
	color: #e66432;
	margin-bottom: 40px;
	background: url(images_top/bg_sttl_baseplan.png) repeat-x;
	background-size: contain;
	line-height: 1;
	text-align: center;
	border-radius: 8px;
}
.top_basicplan_block .ttl span {
	display: inline-block;
	padding: 8px 38px;
	background: #fff;
}
.top_basicplan_block .inblock_01 {
	display: flex;
	margin-bottom: 30px;
}
.top_basicplan_block .inblock_01 .item_01 {
	width: calc(31.3% - 14px);
	margin-right: 3%;
	padding: 7px 7px 17px;
	background: #f5ebcc;
	border-radius: 12px;
}
.top_basicplan_block .inblock_01 .item_02 {
	width: calc(31.3% - 14px);
	padding: 5px 5px 25px;
	border: solid 2px #e0bf63;
	background: #fff;
	border-radius: 12px;
	position: relative;
}
.top_basicplan_block .inblock_01 .item_02::after {
	content: '';
	display: block;
	width: 100%;
	height: 10px;
	background: url(images_top/bg_baseplan.png) repeat;
	background-size: 25px 25px;
	border-radius: 0 0 10px 10px;
	position: absolute;
	bottom: 0;
	left: 0;
}
.top_basicplan_block .inblock_01 .item_01 h3,
.top_basicplan_block .inblock_01 .item_02 h3 {
	font-size: 22px;
	color: #fff;
	text-align: center;
	letter-spacing: 0.15em;
	margin-bottom: 25px;
	background: url(images_top/bg_baseplan.png) repeat;
	background-size: 25px 25px;
	position: relative;
}
.top_basicplan_block .inblock_01 .item_01 h3 span,
.top_basicplan_block .inblock_01 .item_02 h3 span {
	display: block;
	padding: 3px 0;
	position: relative;
}
.top_basicplan_block .inblock_01 .item_01 h3::before,
.top_basicplan_block .inblock_01 .item_02 h3::before,
.top_basicplan_block .inblock_01 .item_01 h3::after,
.top_basicplan_block .inblock_01 .item_02 h3::after,
.top_basicplan_block .inblock_01 .item_01 h3 span::before,
.top_basicplan_block .inblock_01 .item_02 h3 span::before,
.top_basicplan_block .inblock_01 .item_01 h3 span::after,
.top_basicplan_block .inblock_01 .item_02 h3 span::after {
	content: '';
	display: block;
	width: 8px;
	height: 8px;
	background: #f5ebcc;
	position: absolute;
}
.top_basicplan_block .inblock_01 .item_01 h3::before,
.top_basicplan_block .inblock_01 .item_02 h3::before {
	top: 0;
	left: 0;
	border-radius: 0 0 100% 0;
}
.top_basicplan_block .inblock_01 .item_01 h3::after,
.top_basicplan_block .inblock_01 .item_02 h3::after {
	top: 0;
	right: 0;
	border-radius: 0 0 0 100%;
}
.top_basicplan_block .inblock_01 .item_01 h3 span::before,
.top_basicplan_block .inblock_01 .item_02 h3 span::before {
	bottom: 0;
	left: 0;
	border-radius: 0 100% 0 0;
}
.top_basicplan_block .inblock_01 .item_01 h3 span::after,
.top_basicplan_block .inblock_01 .item_02 h3 span::after {
	bottom: 0;
	right: 0;
	border-radius: 100% 0 0 0;
}
.top_basicplan_block .inblock_01 .item_02 h3::before,
.top_basicplan_block .inblock_01 .item_02 h3::after,
.top_basicplan_block .inblock_01 .item_02 h3 span::before,
.top_basicplan_block .inblock_01 .item_02 h3 span::after {
	background: #fff;
}

.top_basicplan_block .inblock_01 .item_01 .price {
	margin: 0 8% 30px;
	background: #fff;
	border-radius: 15px;
	position: relative;
}
.top_basicplan_block .inblock_01 .item_01 .price ul {
	padding: 0 10px;
}
.top_basicplan_block .inblock_01 .item_01 .price li {
	font-size: 30px;
	font-weight: bold;
	padding: 2px 10px 2px 25px;
}
.top_basicplan_block .inblock_01 .item_01 .price li .sml {
	font-size: 18px;
}
.top_basicplan_block .inblock_01 .item_01 .price li.special {
	font-size: 18px;
	padding: 10px 10px 10px 25px;
}
.top_basicplan_block .inblock_01 .item_01 .price li.special .sml {
	font-size: 16px;
}
.top_basicplan_block .inblock_01 .item_01 .price li + li {
	border-top: dashed 2px #e8d28e;
}
.top_basicplan_block .inblock_01 .item_01 .price img {
	position: absolute;
}
.top_basicplan_block .inblock_01 .item_01 .price img:nth-of-type(1) {
	width: 38px;
	bottom: 0;
	left: 0;
	margin: 0 0 -9px -9px;
}
.top_basicplan_block .inblock_01 .item_01 .price img:nth-of-type(2) {
	width: 38px;
	top: 0;
	right: 0;
	margin: -9px -9px 0 0;
}
.top_basicplan_block .inblock_01 .item_01 p {
	padding-left: 1em;
	text-indent: -1em;
	font-size: 16px;
	margin: 0 8%;
}
.top_basicplan_block .inblock_01 .item_01 figure {
	margin: 0 8% 30px;
}
.top_basicplan_block .inblock_01 .item_02 p {
	font-size: 16px;
	line-height: 1.3;
	margin: 0 5%;
}
.top_basicplan_block .inblock_01 .item_02 p.kome {
	font-size: 14px;
	padding-left: 1em;
	text-indent: -1em;
	margin: 0 5%;
}
.top_basicplan_block .inblock_01 .item_02 .icons {
	display: flex;
	flex-wrap: wrap;
	margin: 15px 5% 10px;
}
.top_basicplan_block .inblock_01 .item_02 .icons li {
	width: calc((100% / 4) - 4px);
	text-align: center;
	font-size: 10px;
	line-height: 1.1;
	padding: 0 2px 5px;
}
.top_basicplan_block .inblock_01 .item_02 .icons img {
	display: block;
	width: 62px;
	margin: 0 auto 2px;
}

.top_basicplan_block .inblock_02 {
	display: flex;
}
.top_basicplan_block .inblock_02 .item_03 {
	width: 65.7%;
	margin-right: 3%;
	border: solid 2px #e0bf63;
	border-radius: 12px;
	background: url(images_top/bg_baseplan.png) repeat;
	background-size: 25px 25px;
}
.top_basicplan_block .inblock_02 .item_03 dl {
	display: flex;
	flex-wrap: wrap;
}
.top_basicplan_block .inblock_02 .item_03 dt {
	display: flex;
	align-items: center;
	justify-content: center;
	width: calc(20% - 24px);
	padding: 7px 12px;
	font-size: 17px;
	font-weight: bold;
	letter-spacing: 0.1em;
	color: #fff;
	border-bottom: dashed 2px #e8d28e;
}
.top_basicplan_block .inblock_02 .item_03 dd {
	width: calc(80% - 24px);
	padding: 14px 12px;
	background: #fff;
	font-size: 16px;
	line-height: 1;
	border-bottom: dashed 2px #e8d28e;
}
.top_basicplan_block .inblock_02 .item_03 .tbold {
	font-weight: bold;
}
.top_basicplan_block .inblock_02 .item_03 .sml {
	font-size: 14px;
}
.top_basicplan_block .inblock_02 .item_03 dd:first-of-type {
	border-radius: 0 10px 0 0;
}
.top_basicplan_block .inblock_02 .item_03 dd:last-of-type {
	border-radius: 0 0 10px 0;
}
.top_basicplan_block .inblock_02 .item_03 dt:last-of-type,
.top_basicplan_block .inblock_02 .item_03 dd:last-of-type {
	border: 0;
}
.top_basicplan_block .inblock_02 .btn {
	width: 31.3%;
}
.top_basicplan_block .inblock_01 .sp {
	display: none;
}

.top_basicplan_block .inblock_option {
	width: calc(100% - 66px);
	padding: 10px 22px 25px;
	margin: 0 auto 40px;
	background: #fff5f4;
	border: solid 2px #ff8da7;
	border-radius: 16px;
}
.top_basicplan_block .inblock_option h4 {
	display: inline-block;
	font-size: 22px;
	margin: 0 0 18px -33px;
	position: relative;
}
.top_basicplan_block .inblock_option .icon {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 10px;
}
.top_basicplan_block .inblock_option .icon li {
	width: calc((100% / 8) - 10px);
	margin-bottom: 8px;
	padding: 0 5px;
	font-size: 12px;
	line-height: 1.3;
	text-align: center;
	position: relative;
}
.top_basicplan_block .inblock_option .icon li:nth-of-type(4n) {
	margin-right: 0;
}
.top_basicplan_block .inblock_option .icon li figure {
	margin-bottom: 4px;
}
.top_basicplan_block .inblock_option .icon li figure img {
	width: 70px;
}
.top_basicplan_block .inblock_option .icon li a {
	color: #0a5e81;
	font-weight: bold;
	text-decoration: underline;
}
.top_basicplan_block .inblock_option .icon li span.ft_small {
	padding-left: 1%;
	text-align: left;
}
.top_basicplan_block .inblock_option .noicon {
	margin-bottom: 15px;
	padding: 0 2.2%;
}
.top_basicplan_block .inblock_option .noicon li {
	float: left;
	margin: 0 15px 3px 0;
	font-size: 16px;
	line-height: 1.3;
}
.top_basicplan_block .inblock_option p {
	font-size: 16px;
	padding: 0 2.2%;
}
.top_basicplan_block .inblock_option .noicon li:before,
.top_basicplan_block .inblock_option p:before {
	content: '';
	display: inline-block;
	width: 12px;
	height: 12px;
	background: #ff8da7;
	border-radius: 50%;
	margin-right: 3px;
	vertical-align: -0.03em;
}

.top_basicplan_block .inblock_05 {
	max-width: 990px;
	margin: 0 auto;
}
.top_basicplan_block .inblock_05 .top_ssttl {
	font-size: 30px;
	color: #eb5e67;
	margin-bottom: 25px;
	background: url(images_top/bg_sttl_otherplan.png) repeat-x;
	background-size: contain;
	border-radius: 8px;
	line-height: 1;
	text-align: center;
}
.top_basicplan_block .inblock_05 .top_ssttl span {
	display: inline-block;
	padding: 8px 38px;
	background: #fff;
}
.top_basicplan_block .inblock_05 .inner {
	display: flex;
	flex-wrap: wrap;
}
.top_basicplan_block .inblock_05 .inner .item {
	width: 30.6%;
	margin: 0 0 40px 2%;
	padding-bottom: 46px;
	position: relative;
}
.top_basicplan_block .inblock_05 .item figure {
	margin-bottom: 6px;
}
.top_basicplan_block .inblock_05 .item figure img {
	border-radius: 8px;
}
.top_basicplan_block .inblock_05 .item h4 {
	font-size: 16px;
	color: #333;
	border-bottom: solid 2px #ff8da7;
	margin-bottom: 2px;
	padding-bottom: 3px;
	line-height: 1.1;
}
.top_basicplan_block .inblock_05 .item .price {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 5px;
}
.top_basicplan_block .inblock_05 .item .price .currency {
	font-size: 80%;
}
.top_basicplan_block .inblock_05 .item .intro {
	font-size: 14px;
}
.top_basicplan_block .inblock_05 .item .btn {
	width: 100%;
	text-align: center;
	position: absolute;
	left: 0;
	bottom: 0;
}
.top_basicplan_block .inblock_05 .item .btn a {
	display: inline-block;
	padding: 10px 10px;
	margin: 0 2px;
	font-size: 14px;
	font-weight: bold;
	line-height: 1;
	color: #fff;
	background: #85c6f7;
	border-radius: 5px;
}
.top_basicplan_block .inblock_05 .item .btn a:first-of-type {
	background: #ff8da7;
}
/* 予約 */
.reservation_block,
.reservation_block.branch {
	margin: 0 0 40px;
	padding: 30px 0 40px;
	background: #e6f6f8;
}
.reservation_block.branch {
	margin: 0 0 40px;
}
.reservation_block.reservation_page {
	margin: 0 0 40px;
	padding: 0;
	background: #fff;
}
.reservation_block.top_page .top_sttl,
.reservation_block.branch h2 {
	max-width: 990px;
	font-size: 26px;
	padding: 5px;
	margin: 0 auto 20px;
	text-align: center;
	color: #fff;
	background: url(images/bg_sttl_1.png);
	border-radius: 10px;
}
.reservation_block .inner {
	max-width: calc(1000px - 4%);
	margin: 0 auto;
	padding: 15px 2%;
	background: #fff;
	border-radius: 10px;
}
.reservation_block .calendar {
	width: 45%;
	float: left;
}
.reservation_block .guide {
	width: 52%;
	float: right;
}
.reservation_block.reservation_page .calendar {
	width: auto;
	max-width: 600px;
	margin: 0 auto 30px;
	float: none;
}
.reservation_block.reservation_page .guide {
	width: auto;
	max-width: 700px;
	margin: 0 auto;
	float: none;
}
.reservation_block .calendar .cation {
	font-size: 14px;
	font-weight: bold;
	color: #ff0000;
	margin-bottom: 2px;
}
.reservation_block .calendar .note li {
	float: left;
	font-size: 16px;
	margin: 0 17px 6px 0;
}
.reservation_block .calendar .note img {
	width: 18px;
	vertical-align: text-bottom;
	margin-right: 3px;
}
.reservation_block .guide h3 {
	font-size: 18px;
	margin-bottom: 10px;
	padding: 0 0 2px 20px;
	border-bottom: solid 1px #ccc;
	background: url(images/ico_top_1.png) no-repeat 0 calc(50% - 2px);
}
.reservation_block .guide p {
	font-size: 16px;
	margin-bottom: 20px;
}

/* 月間予約カレンダー */
.monthly-calendar {
	clear: both;
	font-family: sans-serif;
	margin-bottom: 1.5rem;
	position: relative;
}

.monthly-calendar table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 1px;
	background: #999;
}

.monthly-calendar caption {
	font-size: 20px;
	line-height: 1.4;
	text-align: center;
	font-weight: bold;
	margin-bottom: 3px;
}

.monthly-calendar th {
	font-size: 15px;
	font-weight: normal;
}

.week-title.sun,
.day-box.sun .day-number {
	color: #ff6347;
}

.week-title.sat,
.day-box.sat .day-number {
	color: #000;
}

.day-box.holiday .day-number {
	color: #ff6347;
}

.monthly-calendar th,
.monthly-calendar td {
	width: calc((100% - 8px) / 7);
	padding: 0 4px;
	text-align: left;
	vertical-align: top;
	background: #fff;
}
.monthly-calendar th {
	text-align: center;
}

.monthly-calendar td {
	font-size: 13px;
	position: relative;
}
.monthly-calendar tr td:first-child:before {
	content: '';
	display: block;
	width: 0;
	height: 0;
	padding-top: calc(100% + 8px);
	float: left;
}

.day-box.no-day {
	background-color: #fff;
}

.day-box.today {
	background-color: #f5f5f5;
}
a.calendar-daylink,
.calendar-mark a {
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.monthly-prev-next {
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.monthly-prev {
	float: left;
}
.monthly-next {
	float: right;
	margin-right: 0;
}
.monthly-prev a,
.monthly-next a,
.monthly-prev span,
.monthly-next span {
	display: block;
	padding: 4px 10px;
	font-size: 16px;
	color: #fff;
	line-height: 1;
	background: #4c5563;
}
.monthly-prev span,
.monthly-next span {
	background: #ccc;
}
.calendar-mark {
	color: #888888;
	font-size: 1.4rem;
	text-indent: -9999px;
	width: 100%;
	height: 0;
	padding-top: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.vacant .calendar-mark {
	background: url(images/sym_enable.png) no-repeat 50% 60%;
	background-size: 32%;
}
.low .calendar-mark {
	background: url(images/sym_low.png) no-repeat 50% 60%;
	background-size: 32%;
}
.telephone .calendar-mark {
	background: url(images/sym_tel.png) no-repeat 50% 60%;
	background-size: 32%;
}
.disable .calendar-mark {
	background: url(images/sym_disable.png) no-repeat 50% 60%;
	background-size: 32%;
}

/* form 変更 */
.day-calendar table {
	border-collapse: collapse;
	border-spacing: 0;
	width: 100%;
}
.day-calendar table th,
.day-calendar table td {
	border-radius: 0;
	border-color: #ccc;
	font-size: 16px;
}
.day-right .calendar-mark {
	text-indent: 0;
	text-align: center;
	position: static;
	height: auto;
	padding: 0;
	font-size: 16px;
	font-weight: bold;
}
.day-right .calendar-mark a {
	position: static;
	padding: 5px 0;
	color: #28bfd5;
}
.content-form {
	max-width: 800px;
	margin: 0 auto;
	padding-top: 40px;
}
.content-form fieldset {
	width: auto;
	border: 0;
	margin-bottom: 10px;
	padding: 0;
}
.content-form legend {
	font-size: 18px;
	width: 100%;
	padding: 0;
}
.content-form table {
	border-collapse: collapse;
	border-spacing: 0;
	border-top: solid 1px #ccc;
}
.content-form th {
	border: solid 1px #ccc;
	border-width: 0 0 1px 0;
	width: 18%;
	padding: 10px 20px 10px 0;
	font-size: 16px;
	line-height: 1.2;
}
.content-form td {
	border: solid 1px #ccc;
	border-width: 0 0 1px 0;
	font-size: 16px;
	line-height: 1.2;
	padding: 10px 0;
}
.content-form table table {
	border: 0;
}
.content-form td td {
	width: 11%;
	border: solid 1px #ddd;
	font-size: 13px;
	line-height: 1.1;
	text-align: center;
	padding: 4px;
}
.content-form td tr td:first-of-type {
	width: 10%;
}
.clinet-amount {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 4px;
}
.dantai_cation {
	color: #f00;
}
.content-form select {
	background: #ffdecc;
	border: solid 1px #ddd;
	font-size: 14px;
}
.content-form input,
.content-form textarea {
	background: #ffdecc;
	border: solid 1px #ddd;
}

.content-form button {
	border: 0;
	background: #f98ea7;
	border-radius: 6px;
	font-size: 14px;
	color: #fff;
	font-weight: bold;
	padding: 10px;
	min-width: 150px;
	cursor: pointer;
}
.content-form .select_plan {
	margin-bottom: 30px;
}
.content-form .select_plan h3 {
	font-size: 18px;
	border-bottom: solid 1px #ccc;
}
.content-form .select_plan p {
	font-size: 14px;
	margin-bottom: 10px;
}
.content-form .select_plan label {
	display: inline-block;
	position: relative;
	margin: 0 3px 3px 0;
}
.content-form .select_plan .large_plan_check {
	display: none;
}
.content-form .select_plan > ul > li .plan_ttl {
	font-weight: bold;
	font-size: 16px;
	margin: 0 0 6px;
	padding: 0 30px 0 0;
	cursor: pointer;
}
.content-form .select_plan > ul > li .plan_ttl:after {
	content: '+';
	display: inline-block;
	width: 14px;
	font-weight: bold;
	font-size: 14px;
	color: #fff;
	line-height: 14px;
	text-align: center;
	margin-left: 5px;
	background: #df6c79;
	border-radius: 2px;
}
.content-form .select_plan > ul > li > ul {
	max-height: 0;
	overflow: hidden;
	transition: 0.5s ease-in-out;
}
.content-form .select_plan > ul > li .large_plan_check:checked ~ .plan_ttl:after {
	content: '-';
}
.content-form .select_plan > ul > li .large_plan_check:checked ~ ul {
	max-height: 4000px;
}

.content-form .select_plan label input {
	position: absolute;
	top: calc(50% - 5px);
	left: 15px;
	z-index: 10;
}
.content-form .select_plan label span {
	box-sizing: border-box;
	position: relative;
	display: inline-block;
	padding: 8px 10px 8px 30px;
	color: #fff;
	border-radius: 8px;
	z-index: 20;
}
.content-form .select_plan > ul > li > ul > li > label span {
	background: #ff8da7;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.1;
}
.content-form .select_plan > ul > li > ul > li > ul > li > label span {
	background: #5fd1e1;
	font-size: 14px;
}
.content-form .select_plan > ul > li {
	margin-bottom: 10px;
}
.content-form .select_plan > ul > li > ul > li > ul {
	display: flex;
	flex-wrap: wrap;
	padding: 0 0 5px 20px;
}
.content-form .select_plan label span:after {
	content: '';
	display: block;
	width: 14px;
	height: 14px;
	border: dotted 1px #fff;
	position: absolute;
	top: calc(50% - 8px);
	left: 8px;
}
.content-form .select_plan label input:checked ~ span:after {
	width: 11px;
	height: 8px;
	border: 0;
	border-left: solid 4px #fff;
	border-bottom: solid 4px #fff;
	position: absolute;
	top: calc(50% - 8px);
	left: 8px;
	transform: rotate(-45deg);
}
.content-form .select_plan > ul > li > ul > li > label input:checked ~ span,
.content-form .select_plan > ul > li > ul > li > ul > li > label input:checked ~ span {
	background: #fff;
	border: solid 2px #ff8da7;
	color: #666;
	padding: 6px 8px 6px 28px;
}
.content-form .select_plan > ul > li > ul > li > ul > li > label input:checked ~ span {
	border: solid 2px #5fd1e1;
}
.content-form .select_plan > ul > li > ul > li > label input:checked ~ span:after,
.content-form .select_plan > ul > li > ul > li > ul > li > label input:checked ~ span:after {
	width: 11px;
	height: 8px;
	border: 0;
	border-left: solid 4px #ff8da7;
	border-bottom: solid 4px #ff8da7;
	position: absolute;
	top: calc(50% - 8px);
	left: 8px;
	transform: rotate(-45deg);
}
.content-form .select_plan > ul > li > ul > li > ul > li > label input:checked ~ span:after {
	border-left: solid 4px #5fd1e1;
	border-bottom: solid 4px #5fd1e1;
}
.content-form .mayu_no_checkbtn {
	padding: 15px;
	margin-bottom: 30px;
	background: #fff0f0;
	border-radius: 6px;
}
.content-form .mayu_no_checkbtn p {
	font-size: 18px;
	font-weight: bold;
	line-height: 1.1;
	margin-bottom: 10px;
}
.content-form .mayu_no_checkbtn p .cation {
	display: inline-block;
	color: #f00;
	font-size: 14px;
}
.content-form .mayu_no_checkbtn .item {
	text-indent: -1em;
	padding-left: 1em;
	margin: 4px 0;
	padding-bottom: 4px;
	font-size: 14px;
	border-bottom: dashed 1px #ccc;
}
.content-form .mayu_no_checkbtn .item:last-child {
	border: 0;
	padding-bottom: 0;
}
.content-form .mayu_no_checkbtn .item input {
	margin-right: 4px;
}

.top_sns_block {
	max-width: 1000px;
	margin: 0 auto 60px;
	padding: 15px 0;
	border-top: solid 1px #ccc;
	border-bottom: solid 1px #ccc;
}
.top_sns_block .instagram {
	width: calc(96.1% - 640px);
	margin-left: 1%;
	float: left;
}
.top_sns_block .facebook {
	width: 320px;
	margin-left: 1%;
	float: left;
}
.top_sns_block .twitter {
	width: 318px;
	height: 478px;
	margin-left: 1%;
	float: left;
	border: solid 1px #eee;
}
.top_sns_block .instagram li {
	float: left;
	position: relative;
	width: 50%;
	height: 0;
	padding-top: 50%;
}
.top_sns_block .instagram li img {
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
}
.top_sns_block .instagram li.ttl img {
	width: 87.5%;
	height: 87.5%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
}

.top_policy_block {
	max-width: 1000px;
	margin: 0 auto 90px;
}
.top_policy_block .top_sttl {
	max-width: 760px;
	height: 66px;
	margin: 0 auto 30px;
	padding: 0 30px;
	background: url(images/order_3_h.png) repeat-x;
	position: relative;
	text-align: center;
	color: #fff;
	font-size: 28px;
}
.top_policy_block .top_sttl:before,
.top_policy_block .top_sttl:after {
	content: '';
	display: block;
	width: 30px;
	height: 66px;
	background: #fff url(images/order_3.png) no-repeat;
	position: absolute;
	top: 0;
}
.top_policy_block .top_sttl:before {
	left: 0;
	background-position: 0 0;
}
.top_policy_block .top_sttl:after {
	right: 0;
	background-position: 100% 0;
}
.top_policy_block .top_sttl span {
	display: inline-block;
	padding: 0 90px;
	line-height: 66px;
	background: url(images/star_policy_l.png) no-repeat 0 50%,
		url(images/star_policy_r.png) no-repeat 100% 50%;
}

.top_policy_block .inner {
	display: flex;
	flex-wrap: wrap;
	border: solid 3px #ffc356;
	padding: 5% 0 0;
}
.top_policy_block .item {
	width: 38%;
	margin: 0 0 15px 8%;
}
.top_policy_block .item figure {
	margin-bottom: 2px;
}
.top_policy_block .item figure img {
	border-radius: 8px;
}
.top_policy_block .item h3 {
	display: inline-block;
	font-size: 20px;
	margin-bottom: 5px;
	line-height: 1.2;
	position: relative;
}
.top_policy_block .item h3 span {
	display: inline-block;
	padding: 0 3px;
	position: relative;
	z-index: 20;
}
.top_policy_block .item h3:after {
	content: '';
	display: inline-block;
	width: 100%;
	height: 5px;
	background: #ffd68f;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 10;
}
.top_policy_block .item p {
	font-size: 16px;
}
.top_policy_block .item .btn {
	padding-top: 12px;
	text-align: center;
}
.top_policy_block .item .btn a {
	display: inline-block;
	padding: 10px 25px;
	font-size: 16px;
	font-weight: bold;
	line-height: 1;
	color: #fff;
	background: #ffc356;
	border-radius: 5px;
}
.top_policy_block > .btn {
	padding-top: 30px;
	text-align: center;
}
.top_policy_block > .btn a {
	display: inline-block;
	background: #fff url(images/ico_top_2.png) no-repeat calc(100% - 11px) 50%;
	border: solid 2px #ffc356;
	border-radius: 0;
	position: relative;
	font-size: 14px;
	font-weight: bold;
	color: #333;
	padding: 13px 33px 13px 22px;
}
.top_policy_block > .btn a span {
	display: inline-block;
	background: url(images/line_3.png) repeat-x 0 100%;
}
.top_policy_block > .btn a:after {
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-left: solid 14px #ffc356;
	border-bottom: solid 14px #fff;
	position: absolute;
	right: 0;
	bottom: 0;
	margin: 0 -2px -2px 0;
}

.top_recommend_block {
	margin: 0 0 70px;
	background: #f0edff;
}
.top_recommend_block > .inner {
	max-width: 1000px;
	padding: 40px 0;
	margin: 0 auto;
}
.top_recommend_block .top_sttl {
	font-size: 30px;
	color: #9389c7;
	margin-bottom: 25px;
	background: url(images_top/bg_sttl_recommend.png) repeat-x;
	background-size: contain;
	border-radius: 8px;
	line-height: 1;
	text-align: center;
}
.top_recommend_block .top_sttl span {
	display: inline-block;
	padding: 8px 38px;
	background: #fff;
}
.top_recommend_block p {
	max-width: 720px;
	margin: 0 auto 20px;
	font-size: 16px;
	text-align: center;
}
.top_recommend_block .photo_slide {
	max-width: 640px;
	margin: 0 auto 20px;
	position: relative;
}
.top_recommend_block .photo_slide_screen {
	width: 78.1%;
	height: 0;
	padding-top: 51.8%;
	margin: 0 auto;
	position: relative;
}
.top_recommend_block .photo_slide_screen li {
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	text-align: center;
	font-size: 16px;
}
.top_recommend_block .photo_slide_screen li img {
	border-radius: 8px;
}
.top_recommend_block .photo_slide .arrow_left,
.top_recommend_block .photo_slide .arrow_right {
	width: 26px;
	height: 48px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	text-indent: -9999px;
	cursor: pointer;
	overflow: hidden;
}
.top_recommend_block .photo_slide .arrow_left {
	left: 0;
}
.top_recommend_block .photo_slide .arrow_right {
	right: 0;
}

.top_recommend_block .photo_slide .arrow_left:before {
	content: '';
	display: block;
	width: 26px;
	height: 26px;
	border-top: solid 2px #9486c7;
	border-left: solid 2px #9486c7;
	position: absolute;
	top: 50%;
	left: 8px;
	transform: translateY(-50%) rotate(-45deg);
}
.top_recommend_block .photo_slide .arrow_right:before {
	content: '';
	display: block;
	width: 26px;
	height: 26px;
	border-top: solid 2px #9486c7;
	border-right: solid 2px #9486c7;
	position: absolute;
	top: 50%;
	right: 8px;
	transform: translateY(-50%) rotate(45deg);
}

.top_recommend_block .btn {
	text-align: center;
	padding-top: 10px;
}
.top_recommend_block .btn a {
	display: inline-block;
	background: #fff url(images/ico_top_3.png) no-repeat calc(100% - 11px) 50%;
	border: solid 2px #9085c6;
	border-radius: 0;
	position: relative;
	font-size: 14px;
	font-weight: bold;
	color: #333;
	padding: 13px 33px 13px 22px;
}
.top_recommend_block .btn a span {
	display: inline-block;
	background: url(images/line_4.png) repeat-x 0 100%;
}
.top_recommend_block .btn a:after {
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-left: solid 14px #9085c6;
	border-bottom: solid 14px #f0edff;
	position: absolute;
	right: 0;
	bottom: 0;
	margin: 0 -2px -2px 0;
}

.top_access_block {
	max-width: 1000px;
	margin: 0 auto 50px;
}
.top_access_block .info {
	float: left;
	width: 46%;
}
@media (width <= 768px) {
	.top_access_block .info {
		float: none;
		width: 100%;
	}
}
.top_access_block .info h2 {
	font-size: 30px;
	color: #a5bf11;
	margin-bottom: 20px;
	background: url(images_top/bg_sttl_access.png) repeat-x;
	background-size: contain;
	line-height: 1;
	text-align: center;
	border-radius: 8px;
}
.top_access_block .info h2 span {
	display: inline-block;
	padding: 8px 38px;
	background: #fff;
}
.top_access_block .info p {
	font-size: 16px;
}
.top_access_block .info .btn {
	padding-top: 25px;
}
.top_access_block .info .btn a {
	display: inline-block;
	padding: 13px 25px;
	font-size: 16px;
	font-weight: bold;
	color: #fff;
	line-height: 1;
	text-decoration: none;
	background: #c4d474;
	border-radius: 5px;
}
.top_access_block .gmap {
	float: right;
	width: 50%;
	height: 0;
	padding-top: 33.2%;
	border: solid 1px #ccc;
	position: relative;
}
.top_access_block .gmap #map {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

/* プラン */
.plan_course_block {
	max-width: 1000px;
	margin: 0 auto 40px;
	padding: 0 15px 40px;
	border-bottom: solid 1px #ffe8ee;
}
.wrap .plan_course_block:last-of-type {
	border: 0;
}
.plan_course_block .slider {
	float: left;
	width: 44.3%;
	margin-left: 3%;
}
.plan_course_block .info {
	float: right;
	width: 48%;
}
.plan_course_block .slider .slider_wrap {
	width: 100%;
	position: relative;
	margin-bottom: 8px;
}
.plan_course_block .slider .slider_wrap .screen {
	width: 81.3%;
	height: 0;
	padding-top: 81.3%;
	margin: 0 auto;
	position: relative;
}
.plan_course_block .slider .slider_wrap .screen li {
	width: 100%;
	height: 0;
	padding-top: 100%;
	background: #fff;
	position: absolute;
	top: 0;
	left: 0;
	overflow: hidden;
}
.plan_course_block .slider .slider_wrap .screen li img,
.plan_course_block .slider_thumb li img {
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	border-radius: 8px;
}
.plan_course_block .slider .slider_wrap .ctl_prev,
.plan_course_block .slider .slider_wrap .ctl_next {
	width: 21px;
	height: 37px;
	text-indent: -9999px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	cursor: pointer;
	overflow: hidden;
}
.plan_course_block .slider .slider_wrap .ctl_prev {
	left: 0;
}
.plan_course_block .slider .slider_wrap .ctl_next {
	right: 0;
}
.plan_course_block .slider .slider_wrap .ctl_prev:before {
	content: '';
	display: block;
	width: 26px;
	height: 26px;
	border-top: solid 2px #ff8da7;
	border-left: solid 2px #ff8da7;
	position: absolute;
	top: 50%;
	left: 6px;
	transform: translateY(-50%) rotate(-45deg);
}
.plan_course_block .slider .slider_wrap .ctl_next:before {
	content: '';
	display: block;
	width: 26px;
	height: 26px;
	border-top: solid 2px #ff8da7;
	border-right: solid 2px #ff8da7;
	position: absolute;
	top: 50%;
	right: 6px;
	transform: translateY(-50%) rotate(45deg);
}

.plan_course_block .slider .slider_thumb ul {
	width: 81.3%;
	margin: 0 auto;
}
.plan_course_block .slider .slider_thumb li {
	float: left;
	width: 22.6%;
	height: 0;
	padding-top: 22.6%;
	margin: 1.5% 5%;
	position: relative;
	overflow: hidden;
	cursor: pointer;
}
.plan_course_block .info h3 {
	font-size: 24px;
	color: #fff;
	line-height: 1.1;
	margin-bottom: 0px;
	padding: 10px 6px;
	background: #ff8da7;
}
.plan_course_block .info .price {
	font-size: 18px;
	margin-bottom: 5px;
	color: #ff8da7;
}
.plan_course_block .info .price .number {
	font-size: 24px;
	margin-right: 15px;
}
.plan_course_block .info .price .course {
	display: inline-block;
	line-height: 1.1;
}
.plan_course_block .info .catch {
	font-size: 16px;
	margin: 16px 0 20px;
}
.plan_course_block .info .back {
	background: #ffe8ee;
	padding: 1px 10px 15px;
	border-radius: 5px;
}
.plan_course_block .info h4 {
	font-size: 15px;
	color: #ce3927;
	border-bottom: dotted 1px #ccc;
	margin: 12px 0 5px;
}
.plan_course_block .info h4.service_point {
	font-size: 14px;
	color: #ce3927;
	border-bottom: 0;
	margin-bottom: 0;
}
.plan_course_block .info h4.service_point:before {
	content: '';
	display: inline-block;
	width: 0;
	height: 0;
	border-left: solid 5px #ce3927;
	border-top: solid 3px transparent;
	border-bottom: solid 3px transparent;
	margin-right: 4px;
	vertical-align: middle;
}
.plan_course_block .info .set,
.plan_course_block .info .option {
	font-size: 14px;
}
.plan_course_block .info .cation {
	font-size: 14px;
	margin: -10px 0 15px;
}
.plan_course_block .info .icon {
	display: flex;
	flex-wrap: wrap;
	margin: 6px 0 5px;
}
.plan_course_block .info .icon li {
	float: left;
	width: 50px;
	margin: 0 1px 1px 0;
	font-size: 10px;
	text-align: center;
	line-height: 1;
}
.plan_course_block .info .icon li img {
	margin-bottom: 2px;
}
.plan_course_block .info .btn {
	float: right;
	margin-top: 10px;
}
.plan_course_block .info .btn a.btn_product,
.plan_course_block .info .btn a.btn_reserve {
	display: block;
	width: 197px;
	background: #85c6f7 url(images/ico_reserve.png) no-repeat 10px 50%;
	background-size: 20px 15px;
	padding: 10px 18px 10px 40px;
	margin-bottom: 5px;
	font-size: 16px;
	font-weight: bold;
	color: #fff;
	line-height: 1;
	position: relative;
	border-radius: 5px;
}
.plan_course_block .info .btn a.btn_product {
	background-image: url(images/ico_product.png);
	background-position: 12px 50%;
	background-size: 17px 17px;
}
.plan_course_block .info .btn a.btn_product:after,
.plan_course_block .info .btn a.btn_reserve:after {
	content: '';
	display: block;
	width: 6px;
	height: 6px;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	position: absolute;
	top: 50%;
	right: 12px;
	margin-top: -4px;
	transform: rotate(45deg);
}
.plan_course_block_price {
	margin-bottom: 40px;
}
.plan_course_block_price p {
	text-align: center;
	font-size: 14px;
}

.other_plan {
	max-width: 1000px;
	margin: 0 auto 20px;
}
.other_plan h3 {
	font-size: 26px;
	color: #ff8da7;
	margin-bottom: 25px;
	background-image: url(images/order_2.png), url(images/order_2.png);
	background-repeat: repeat-x, repeat-x;
	background-position: 0 0, 0 100%;
	padding: 15px 3px;
	line-height: 1;
	text-align: center;
}
.other_plan h3 span {
	display: inline-block;
	padding: 0 50px;
	background: url(images/heart_2_l.png) no-repeat 0 50%,
		url(images/heart_2_r.png) no-repeat 100% 50%;
}
.other_plan .inner {
	display: flex;
	flex-wrap: wrap;
}
.other_plan .item {
	width: 30.3%;
	margin: 0 0 25px 2.3%;
	padding-bottom: 46px;
	position: relative;
}
.other_plan .item figure {
	margin-bottom: 3px;
}
.other_plan .item figure img {
	border-radius: 10px;
}
.other_plan .item h4 {
	font-size: 16px;
	line-height: 1.2;
	border-bottom: solid 2px #ff8da7;
	margin-bottom: 2px;
	padding-bottom: 3px;
}
.other_plan .item .price {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 3px;
}
.other_plan .item .price .currency {
	font-size: 80%;
}
.other_plan .item .intro {
	font-size: 14px;
}
.other_plan .item .btn {
	width: 100%;
	text-align: center;
	padding-top: 10px;
	position: absolute;
	left: 0;
	bottom: 0;
}
.other_plan .item .btn a {
	display: inline-block;
	padding: 10px 10px;
	margin: 0 2px;
	font-size: 14px;
	font-weight: bold;
	line-height: 1;
	color: #fff;
	background: #85c6f7;
	border-radius: 5px;
}
.other_plan .item .btn a:first-of-type {
	background: #ff8da7;
}

/* 取扱商品 */
.product_block {
	max-width: 1000px;
	margin: 0 auto 50px;
}
.product_block h3 {
	font-size: 20px;
	text-align: center;
	font-weight: normal;
}
.product_block p {
	font-size: 14px;
	text-align: center;
	margin-top: 10px;
}
.product_block ul {
	margin-top: 20px;
}
.product_block li {
	float: left;
	width: calc(23.2% - 2px);
	margin: 0 0 1.2% 1.2%;
	border: solid 1px #f0f0f0;
	border-radius: 8px;
}
.product_block li a {
	display: block;
	width: 100%;
	height: 0;
	padding-top: 100%;
	position: relative;
	overflow: hidden;
}
.product_block li a img {
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	border-radius: 8px;
}

/* 私たちのポリシー */
.policy_block_01 {
	max-width: 1000px;
	margin: 0 auto 40px;
}
.policy_block_01 .item {
	float: left;
	width: 44.3%;
	margin-left: 3.8%;
}
.policy_block_01 .item h3 {
	font-size: 20px;
	border-bottom: solid 1px #ccc;
	margin-bottom: 15px;
	padding-bottom: 5px;
}
.policy_block_01 .item p {
	font-size: 16px;
	margin: 15px 0;
}
.policy_block_01 .item figure {
	max-width: 400px;
	margin: 0 auto;
	text-align: center;
}
.policy_block_02,
.policy_block_03 {
	max-width: 924px;
	margin: 0 auto 40px;
	padding: 0 3.8%;
}
.policy_block_02 h3,
.policy_block_03 h3 {
	margin: 0 auto 15px;
	font-size: 20px;
	border-bottom: solid 1px #ccc;
	padding-bottom: 5px;
}
.policy_block_02 .item {
	float: left;
	width: 47.9%;
	margin-top: 30px;
}
.policy_block_02 .item:nth-of-type(2) {
	float: right;
}
.policy_block_02 .item:nth-of-type(3) {
	clear: both;
	float: none;
	width: 100%;
}

.policy_block_02 h4 {
	margin: 0 0 10px;
	font-size: 18px;
}
.policy_block_02 .txt h4 {
	margin: 0 9.4% 10px;
	font-size: 18px;
}
.policy_block_02 p {
	font-size: 16px;
	margin: 0 0 10px;
}
.policy_block_02 .txt p {
	margin: 0 9.4% 10px;
}
.policy_block_02 .item:nth-of-type(3) .slider {
	float: left;
	width: 47.9%;
}
.policy_block_02 .item:nth-of-type(3) .txt {
	float: right;
	width: 52%;
	padding-top: 15%;
}
.policy_block_02 .slider .slider_wrap {
	width: 100%;
	position: relative;
	margin-bottom: 8px;
}
.policy_block_02 .slider .slider_wrap .screen {
	width: 81.3%;
	height: 0;
	padding-top: 81.3%;
	margin: 0 auto;
	position: relative;
}
.policy_block_02 .slider .slider_wrap .screen li {
	width: calc(100% - 2px);
	height: 0;
	padding-top: calc(100% - 2px);
	background: #fff;
	position: absolute;
	top: 0;
	left: 0;
	overflow: hidden;
}
.policy_block_02 .slider .slider_wrap .screen li img {
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	border-radius: 8px;
}
.policy_block_02 .slider .slider_wrap .ctl_prev,
.policy_block_02 .slider .slider_wrap .ctl_next {
	width: 20px;
	height: 37px;
	text-indent: -9999px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	cursor: pointer;
}
.policy_block_02 .slider .slider_wrap .ctl_prev {
	left: 0;
	background: url(images/slide_arrow_left.png) no-repeat;
	background-size: contain;
}
.policy_block_02 .slider .slider_wrap .ctl_next {
	right: 0;
	background: url(images/slide_arrow_right.png) no-repeat;
	background-size: contain;
}
.policy_block_02 .slider .slider_thumb ul {
	width: 81.3%;
	margin: 0 auto;
}
.policy_block_02 .slider .slider_thumb li {
	float: left;
	width: 22.6%;
	height: 0;
	padding-top: 22.6%;
	margin: 0 2.4% 2% 0;
	position: relative;
	overflow: hidden;
	cursor: pointer;
}
.policy_block_02 .slider .slider_thumb li img {
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	border-radius: 8px;
}
.policy_block_03 .txt {
	float: left;
	width: 62.8%;
}
.policy_block_03 figure {
	float: right;
	width: 34.6%;
}
.policy_block_03 .txt p {
	font-size: 16px;
	margin-bottom: 1em;
}
.policy_block_01 img,
.policy_block_02 img,
.policy_block_03 img {
	border-radius: 8px;
}
.policy_block_01 img.nord,
.policy_block_02 img.nord,
.policy_block_03 img.nord {
	border-radius: 0;
}

/* ご利用の流れ */
.guide_block {
	max-width: 800px;
	margin: 0 auto 40px;
	padding: 0 15px;
}
.guide_block .item {
	padding-bottom: 20px;
	margin-bottom: 20px;
}
.guide_block .item:not(:last-of-type):after {
	content: '';
	clear: both;
	display: block;
	width: 0;
	margin: 0 auto;
	border-top: solid 20px #ccc;
	border-left: solid 40px transparent;
	border-right: solid 40px transparent;
}

.guide_block .item .txt {
	float: left;
	width: 61%;
	margin-bottom: 30px;
}
.guide_block .item:last-of-type .txt {
	width: 100%;
}
.guide_block .item figure {
	float: right;
	width: 37.5%;
	margin-bottom: 30px;
}
.guide_block .item.two_picture .txt {
	width: 36%;
}
.guide_block .item.two_picture figure {
	width: 62.4%;
}
.guide_block .item.two_picture figure img {
	width: 50%;
}
.guide_block .item .txt h3 {
	font-size: 22px;
	margin-bottom: 10px;
	border-bottom: solid 1px #ccc;
}
.guide_block .item .txt p {
	font-size: 16px;
	margin-bottom: 10px;
}

/* アクセス */
.access_block_01 {
	height: 400px;
	margin-bottom: 60px;
}
.access_block_02 {
	width: 90%;
	max-width: 900px;
	margin: 0 auto 80px;
}
.access_block_03 {
	max-width: 600px;
	margin: 0 auto 60px;
}
.access_block_02 .info {
	float: left;
	width: 48%;
}
.access_block_02 .traffic {
	float: right;
	width: 46%;
}
.access_block_02 .info dt {
	float: left;
	font-size: 16px;
}
.access_block_02 .info dd {
	padding: 0 0 10px 6em;
	margin: 0 0 10px 0;
	font-size: 16px;
	border-bottom: dashed 1px #ccc;
}
.access_block_02 .info a {
	color: #333;
}
.access_block_02 .traffic p {
	font-size: 16px;
	margin-bottom: 10px;
	padding: 0 0 10px 1em;
	text-indent: -1em;
	border-bottom: dashed 1px #ccc;
}
.access_block_02 h3 {
	font-size: 18px;
	padding-bottom: 5px;
	margin-bottom: 25px;
	border-bottom: solid 1px #ccc;
}
.access_block_03 .movie {
	width: 100%;
	padding-top: 56.25%;
	height: 0;
	position: relative;
}
.access_block_03 .movie iframe {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* スタッフおススメ */
.spot_block_01 {
	margin: 0 0 60px;
}
.spot_block_02 {
	max-width: 1000px;
	margin: 0 auto 30px;
}
.spot_block_03 {
	margin-bottom: 60px;
}
.spot_block_01 p {
	text-align: center;
	font-size: 16px;
	margin-bottom: 30px;
}
.spot_block_01 .inner {
	max-width: 600px;
	margin: 0 auto;
}
.spot_block_01 .movie {
	width: 100%;
	height: 0;
	padding-top: 56.3%;
	margin-bottom: 20px;
	background: #ddd;
	position: relative;
}
.spot_block_01 .movie iframe {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.spot_block_01 .linktxt {
	max-width: 500px;
	margin: 0 auto;
}
.spot_block_01 .linktxt p {
	float: left;
	width: 60%;
	text-align: left;
	margin-bottom: 0;
}
.spot_block_01 .linktxt .btn {
	display: block;
	float: right;
	padding: 13px 25px;
	background: #ff8da7;
	font-size: 15px;
	font-weight: bold;
	line-height: 1;
	color: #fff;
	border-radius: 5px;
}

.top_recommend_block .spot_block_01 {
	margin-bottom: 30px;
}

.spot_block_02 h3 {
	margin: 0 6.7% 20px;
	padding-left: 27px;
	border-bottom: solid 2px #e1b5fb;
	font-size: 20px;
	background: url(images/ico_spot.png) no-repeat 0 50%;
}
.spot_block_02 .inner {
	display: flex;
	flex-wrap: wrap;
}
.spot_block_02 .item {
	width: 40%;
	margin: 0 0 30px 6.7%;
}
.spot_block_02 .item figure {
	margin-bottom: 5px;
}
.spot_block_02 .item .slider {
	margin-bottom: 8px;
}
.spot_block_02 .item .slider .slider_wrap {
	width: 100%;
	position: relative;
	margin-bottom: 8px;
}
.spot_block_02 .item .slider .slider_wrap .screen {
	width: 100%;
	height: 0;
	padding-top: 66.6%;
	margin: 0 auto;
	position: relative;
}
.spot_block_02 .item .slider .slider_wrap .screen li {
	width: 100%;
	height: 0;
	padding-top: 66.6%;
	background: #fff;
	position: absolute;
	top: 0;
	left: 0;
	overflow: hidden;
}
.spot_block_02 .item .slider .slider_wrap .screen li img,
.spot_block_02 .item .slider_thumb li img {
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	border-radius: 8px;
}
.spot_block_02 .item .slider .slider_thumb li {
	float: left;
	width: 22.6%;
	height: 0;
	padding-top: 15%;
	margin-right: 2.4%;
	position: relative;
	overflow: hidden;
	cursor: pointer;
}

.spot_block_02 .item h4 {
	font-size: 18px;
	color: #966efb;
	padding-bottom: 5px;
	margin-bottom: 10px;
	border-bottom: solid 1px #ccc;
}
.spot_block_02 .item p {
	font-size: 14px;
}
.spot_block_02 img {
	border-radius: 8px;
}
.spot_block_02 img.nord {
	border-radius: 0;
}
.spot_block_03 {
	max-width: 866px;
	margin: 0 auto;
}
.spot_block_03 ul {
	display: flex;
	flex-wrap: wrap;
}
.spot_block_03 li {
	width: 29.3%;
	margin: 0 0 15px 3%;
}
.spot_block_03 li figure {
	margin-bottom: 8px;
	position: relative;
	overflow: hidden;
}
.spot_block_03 li figure::before {
	content: '';
	display: block;
	width: 100%;
	padding-top: 66.6%;
}
.spot_block_03 li figure img {
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	border-radius: 8px;
}
.spot_block_03 li > a {
	display: block;
	padding: 10px 0;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	color: #fff;
	position: relative;
	background: #b296f7;
	border-radius: 8px;
}
.spot_block_03 li > a:after {
	content: '';
	display: block;
	width: 6px;
	height: 6px;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	position: absolute;
	top: 50%;
	right: 12px;
	margin-top: -4px;
	transform: rotate(45deg);
}

/* News */
.news_body {
	max-width: 1000px;
	margin: 0 auto;
	padding: 0 10px;
}
.news_body_inner {
	float: left;
	width: 70%;
}
.sidebar {
	float: right;
	width: 23%;
}
.news_block {
	max-width: 700px;
	margin: 0 auto 100px;
	padding: 0 15px;
}
.news_block > h3 {
	font-size: 30px;
	line-height: 1.1;
	margin-bottom: 5px;
}
.news_block.catag > h3 {
	font-size: 22px;
	color: #f98ea7;
	line-height: 1.5;
	margin-bottom: 30px;
	border-bottom: solid 1px #f98ea7;
}
.news_block .date_cat_tag {
	font-size: 12px;
	color: #999;
}
.news_block .date_cat_tag .catag_link {
	display: inline-block;
}
.news_block .date_cat_tag a {
	color: #999;
}
.news_block .content {
	padding-top: 40px;
	font-size: 16px;
}
.news_block .content p {
	margin-bottom: 1em;
}
.news_btn {
	padding-top: 80px;
	text-align: center;
}
.news_btn a {
	display: inline-block;
	padding: 13px 25px;
	margin: 0 2px 6px;
	background: #ff8da7;
	font-size: 15px;
	font-weight: bold;
	line-height: 1;
	color: #fff;
	border-radius: 5px;
}
.news_block dt {
	float: left;
	font-size: 16px;
	color: #999;
}
.news_block dd {
	padding: 0 0 10px 6.5em;
	margin-bottom: 10px;
	font-size: 16px;
	background: url(images/line_1.png) repeat-x 0 100%;
}
.news_block dd a {
	color: #333;
}
.news_block dd a:hover {
	text-decoration: underline;
}
.news_page_navi {
	padding-top: 40px;
	text-align: center;
}
.news_page_navi a,
.news_page_navi span {
	display: inline-block;
	min-width: 30px;
	line-height: 30px;
	border-radius: 4px;
	font-size: 14px;
	font-weight: bold;
}
.news_page_navi a {
	background: #ff8da7;
	color: #fff;
}
.news_page_navi span {
	background: #eee;
	color: #888;
}
.sidebar h3 {
	font-size: 16px;
	color: #ff8da7;
	border-bottom: solid 1px #ff8da7;
	margin-bottom: 10px;
}
.sidebar ul {
	margin-bottom: 30px;
}
.sidebar li {
	margin-bottom: 8px;
	padding-left: 14px;
	line-height: 1.2;
	position: relative;
}
.sidebar li:before {
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-left: solid 6px #f089a0;
	border-top: solid 3px transparent;
	border-bottom: solid 3px transparent;
	position: absolute;
	top: 6px;
	left: 2px;
}
.sidebar a {
	color: #333;
}
@media screen and (min-width: 769px) {
	.sidebar a:hover {
		text-decoration: underline;
	}
}

/* ******************************************************************** */
@media screen and (max-width: 768px) {
	footer {
		padding: 30px 0 10px;
	}

	.wrap {
		padding: 109px 0 0;
	}
	.page_header {
		padding: 30px 10px 40px;
	}

	/* トップページ */

	.top_info_block {
		padding: 10px 10px 25px;
	}
	.top_info_block .inner {
		float: none;
		width: auto;
		margin: 0 0 20px;
	}
	.top_info_block .inner:last-child {
		margin: 0;
	}
	.top_info_block .order_outer {
		padding: 0 0 0 30px;
	}
	.top_info_block .order_outer:before,
	.top_info_block .order_outer:after {
		width: 30px;
		height: 30px;
	}
	.top_info_block .order_inner {
		padding: 23px 30px 18px 0;
	}
	.top_info_block .order_inner:before,
	.top_info_block .order_inner:after {
		width: 30px;
		height: 30px;
	}
	.top_info_block li {
		padding: 0 2px 7px 22px;
		margin: 0 0 7px 0;
		font-size: 14px;
	}

	.top_basicplan_block > .top_inner {
		padding-bottom: 20px;
		margin-bottom: 20px;
	}
	.top_basicplan_block .ttl {
		margin: 0 10px 25px;
	}
	.top_basicplan_block .inblock_01 .sp {
		display: block;
	}
	.top_basicplan_block .inblock_02 .pc {
		display: none;
	}

	.top_basicplan_block .inblock_01 {
		flex-wrap: wrap;
		padding: 0 10px;
		margin-bottom: 15px;
	}

	.top_basicplan_block .inblock_01 .item_01 .price {
		margin: 0 20px 30px;
	}
	.top_basicplan_block .inblock_01 .item_01 .price li {
		padding: 4px 10px 3px 45px;
	}
	.top_basicplan_block .inblock_01 .item_01 .price li.special {
		padding: 10px 10px 10px 45px;
	}
	.top_basicplan_block .inblock_01 .item_01 p {
		padding-left: 1em;
		text-indent: -1em;
		font-size: 16px;
		margin: 0 20px;
	}
	.top_basicplan_block .inblock_01 .item_01 figure {
		margin: 0 20px 30px;
	}
	.top_basicplan_block .inblock_01 .item_02 p {
		font-size: 16px;
		line-height: 1.3;
		margin: 0 20px;
	}
	.top_basicplan_block .inblock_01 .item_02 p.kome {
		font-size: 14px;
		padding-left: 1em;
		text-indent: -1em;
		margin: 0 20px;
	}
	.top_basicplan_block .inblock_01 .item_02 .icons {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		margin: 15px 20px 10px;
	}
	.top_basicplan_block .inblock_01 .item_02 .icons li {
		width: 62px;
		font-size: 12px;
	}

	.top_basicplan_block .inblock_01 .item_01 {
		width: calc(49% - 14px);
		margin-right: 0;
		margin-bottom: 15px;
		padding: 7px 7px 12px;
	}
	.top_basicplan_block .inblock_01 .item_01 + .item_01 {
		margin-left: 2%;
	}
	.top_basicplan_block .inblock_01 .item_02 {
		width: calc(100% - 14px);
		padding: 5px 5px 20px;
	}
	.top_basicplan_block .inblock_01 .item_03 {
		width: calc(100% - 4px);
		margin-bottom: 15px;
		border: solid 2px #e0bf63;
		border-radius: 12px;
		background: url(images_top/bg_baseplan.png) repeat;
		background-size: 25px 25px;
	}
	.top_basicplan_block .inblock_01 .item_03 dl {
		display: flex;
		flex-wrap: wrap;
	}
	.top_basicplan_block .inblock_01 .item_03 dt {
		display: flex;
		align-items: center;
		justify-content: center;
		width: calc(20% - 24px);
		padding: 7px 12px;
		font-size: 17px;
		font-weight: bold;
		letter-spacing: 0.1em;
		color: #fff;
		border-bottom: dashed 2px #e8d28e;
	}
	.top_basicplan_block .inblock_01 .item_03 dd {
		width: calc(80% - 24px);
		padding: 14px 12px;
		background: #fff;
		font-size: 16px;
		line-height: 1;
		border-bottom: dashed 2px #e8d28e;
	}
	.top_basicplan_block .inblock_01 .item_03 .tbold {
		font-weight: bold;
	}
	.top_basicplan_block .inblock_01 .item_03 .sml {
		font-size: 14px;
	}
	.top_basicplan_block .inblock_01 .item_03 dd:first-of-type {
		border-radius: 0 10px 0 0;
	}
	.top_basicplan_block .inblock_01 .item_03 dd:last-of-type {
		border-radius: 0 0 10px 0;
	}
	.top_basicplan_block .inblock_01 .item_03 dt:last-of-type,
	.top_basicplan_block .inblock_01 .item_03 dd:last-of-type {
		border: 0;
	}

	.top_basicplan_block .inblock_02 {
		display: block;
		margin: 0 10px;
	}
	.top_basicplan_block .inblock_02 .btn {
		width: auto;
		max-width: 300px;
		margin: 0 auto;
	}

	.top_basicplan_block .inblock_option {
		width: calc(100% - 74px);
	}
	.top_basicplan_block .inblock_option .icon {
		display: flex;
		flex-wrap: wrap;
		margin-bottom: 10px;
	}
	.top_basicplan_block .inblock_option .icon li {
		width: calc((100% / 5) - 10px);
	}

	.top_basicplan_block .inblock_05 .top_ssttl {
		margin: 0 10px 25px;
	}
	.top_basicplan_block .inblock_05 .inner .item {
		width: 47%;
		margin: 0 0 28px 2%;
	}
	.top_basicplan_block .inblock_05 .item .btn a {
		font-size: 14px;
	}

	/* 予約 */
	.reservation_block,
	.reservation_block.branch {
		margin-bottom: 30px;
		padding: 15px 10px;
	}
	.reservation_block .calendar {
		width: auto;
		float: none;
		margin: 0 0 20px;
		padding: 0 50px;
	}
	.reservation_block .guide {
		width: auto;
		float: none;
		margin: 0;
	}

	.top_sttl {
		font-size: 28px;
		margin-bottom: 20px;
	}

	.top_sns_block {
		margin: 60px 0;
		padding: 15px 0;
		border-top: solid 1px #ccc;
		border-bottom: solid 1px #ccc;
	}
	.top_sns_block .instagram {
		width: auto;
		margin: 0 0 20px;
		float: none;
	}
	.top_sns_block .instagram li {
		width: 33.3%;
		padding-top: 33.3%;
	}
	.top_sns_block .facebook {
		width: auto;
		max-width: 320px;
		margin: 0 auto 20px;
		float: none;
		overflow: hidden;
	}
	.top_sns_block .twitter {
		width: auto;
		max-width: 318px;
		margin: 0 auto;
		float: none;
		overflow: hidden;
	}
	.top_policy_block .top_sttl {
		width: calc(90% - 60px);
	}
	.top_policy_block {
		margin-bottom: 50px;
	}
	.top_policy_block .inner {
		display: flex;
		flex-wrap: wrap;
		margin: 0 15px;
		padding-top: 3%;
	}
	.top_policy_block .item {
		width: 44%;
		margin: 0 0 15px 4%;
	}
	.top_policy_block .item h3 {
		font-size: 20px;
	}
	.top_access_block {
		padding: 0 15px;
	}

	.top_recommend_block .top_sttl {
		margin: 0 10px 25px;
	}
	.top_recommend_block .photo_slide {
		margin-bottom: 5px;
	}

	/* プラン */
	.plan_course_block {
		margin-bottom: 50px;
	}
	.plan_course_block .slider {
		float: none;
		width: auto;
		max-width: 450px;
		margin: 0 auto 20px;
		padding: 0 5px;
	}
	.plan_course_block .info {
		float: none;
		width: auto;
		padding: 0 30px;
	}
	.plan_course_block .info h3 {
		font-size: 20px;
	}
	.plan_course_block .info .price {
		margin-bottom: 12px;
	}
	.plan_course_block .info .btn {
		float: none;
	}
	.plan_course_block .info .btn a.btn_product,
	.plan_course_block .info .btn a.btn_reserve {
		margin: 0 auto 5px;
	}

	.other_plan .item {
		width: 46.4%;
		margin: 0 0 25px 2.4%;
	}
	.other_plan .item .btn a {
		padding: 10px 15px;
	}

	/* アクセス */
	.access_block_01 {
		height: 300px;
		margin-bottom: 50px;
	}
	.access_block_02 {
		margin: 0 auto 70px;
	}
	.access_block_02 .info {
		float: none;
		width: 100%;
		margin-bottom: 50px;
	}
	.access_block_02 .traffic {
		float: none;
		width: 100%;
	}
	.access_block_03 {
		margin-bottom: 30px;
	}

	/* 取扱商品 */
	.product_block li {
		width: calc(31.7% - 2px);
	}

	/* 私たちのポリシー */
	.policy_block_01 {
		margin-bottom: 30px;
	}
	.policy_block_01 .item {
		width: 47%;
		margin-left: 2%;
	}
	.policy_block_01 .item h3 {
		margin-bottom: 10px;
		padding-bottom: 3px;
	}
	.policy_block_02,
	.policy_block_03 {
		width: 96%;
		margin: 0 0 30px;
		padding: 0 2%;
	}
	.policy_block_02 {
		margin-bottom: 50px;
	}
	.policy_block_02 h3,
	.policy_block_03 h3 {
		margin: 0 0 10px;
		padding-bottom: 3px;
	}
	.policy_block_02 .item {
		float: none;
		width: auto;
		max-width: 442px;
		margin: 30px auto 0;
	}
	.policy_block_02 .item:nth-of-type(2) {
		float: none;
	}
	.policy_block_02 .item:nth-of-type(3) {
		width: auto;
		max-width: 442px;
	}

	.policy_block_02 .txt h4 {
		margin: 0 9.3%;
		font-size: 18px;
	}
	.policy_block_02 p {
		font-size: 16px;
		margin: 0 0 10px;
	}
	.policy_block_02 .txt p {
		margin: 0 9.3% 10px;
	}
	.policy_block_02 .item:nth-of-type(3) .slider {
		float: none;
		width: auto;
	}
	.policy_block_02 .item:nth-of-type(3) .txt {
		float: none;
		width: auto;
		padding-top: 0;
	}
	.policy_block_03 .txt {
		float: left;
		width: 58%;
	}
	.policy_block_03 figure {
		float: right;
		width: 39.6%;
	}
	.policy_block_03 .txt p {
		font-size: 16px;
		margin-bottom: 1em;
	}

	/* ご利用の流れ */
	.guide_block .item:not(:last-of-type):after {
		border-top: solid 16px #ccc;
		border-left: solid 36px transparent;
		border-right: solid 36px transparent;
	}
	.guide_block .item .txt h3 {
		font-size: 18px;
		margin-bottom: 5px;
	}

	/* News */
	.news_body_inner {
		float: none;
		width: auto;
		margin-bottom: 30px;
	}
	.sidebar {
		float: none;
		width: auto;
	}
	.sidebar .side_block {
		width: 30%;
		margin-right: 5%;
		float: left;
	}
	.sidebar .side_block:last-child {
		margin-right: 0;
	}

	/* form 変更 */
	.content-form {
		padding-top: 20px;
	}
	.content-form fieldset {
		padding: 0 10px;
	}
	.content-form th {
		display: block;
		border: 0;
		width: auto;
		padding: 10px 0 0 0;
		text-align: left;
	}
	.content-form fieldset > table > tbody > tr > td {
		display: block;
		width: auto;
		padding-top: 5px;
	}
}
/* ******************************************************************** */
@media screen and (max-width: 480px) {
	header {
		top: 35px;
	}
	header .hd_btn ul {
		height: 35px;
		padding: 0 5px;
	}
	header .hd_btn li {
		width: calc((100% - 5px) / 2);
	}
	header .hd_btn li + li {
		margin-left: 5px;
	}
	header .spmenu {
		top: 44px;
	}

	footer {
		padding: 15px 0 5px;
	}
	footer .mayu ul li {
		width: auto;
		margin: 0 10px;
	}
	footer .mayu ul li + li {
		margin-top: 10px;
	}
	footer > p {
		font-size: 12px;
	}

	.wrap {
		padding: 100px 0 0;
	}

	.page_header {
		padding: 15px 10px 20px;
	}
	.page_header h2 {
		font-size: 28px;
	}
	.page_header p {
		font-size: 14px;
	}
	.page_header p iframe {
		width: auto;
		height: auto;
	}

	/* トップページ */
	.top_mainimage_block .pc {
		display: none;
	}
	.top_mainimage_block .sp {
		display: inline;
	}

	.top_info_block dt {
		float: none;
	}
	.top_info_block dd {
		padding-left: 2px;
		line-height: 1.3;
	}
	.top_basicplan_block .photo_slide {
		padding: 30px 0 20px;
	}
	.top_basicplan_block .photo_slide .arrow_left,
	.top_basicplan_block .photo_slide .arrow_right {
		width: 40px;
		height: 40px;
	}
	.top_basicplan_block .photo_slide .arrow_left {
		left: 3px;
	}
	.top_basicplan_block .photo_slide .arrow_right {
		right: 3px;
	}

	.top_basicplan_block .ttl {
		font-size: 18px;
		border-radius: 6px;
	}
	.top_basicplan_block .ttl span {
		padding: 10px;
	}
	.top_basicplan_block .inblock_01 {
		display: block;
		margin-bottom: 15px;
	}
	.top_basicplan_block .inblock_01 .item_01 {
		width: auto;
		margin-bottom: 15px;
		padding: 7px 7px 12px;
	}
	.top_basicplan_block .inblock_01 .item_01 + .item_01 {
		margin-left: 0;
	}
	.top_basicplan_block .inblock_01 .item_02 {
		padding: 5px 5px 20px;
	}
	.top_basicplan_block .inblock_01 .item_01 h3,
	.top_basicplan_block .inblock_01 .item_02 h3 {
		margin-bottom: 18px;
	}
	.top_basicplan_block .inblock_01 .item_01 p {
		font-size: 14px;
	}
	.top_basicplan_block .inblock_01 .item_02 p {
		font-size: 14px;
	}
	.top_basicplan_block .inblock_01 .item_02 p.kome {
		font-size: 13px;
	}
	.top_basicplan_block .inblock_01 .item_02 .icons {
		margin: 15px 20px 10px;
	}

	.top_basicplan_block .inblock_01 .item_03 dl {
		display: block;
	}
	.top_basicplan_block .inblock_01 .item_03 dt {
		text-align: center;
		width: auto;
		padding: 7px 10px;
		border: 0;
	}
	.top_basicplan_block .inblock_01 .item_03 dd {
		width: auto;
		padding: 10px;
		font-size: 16px;
		border: 0;
	}
	.top_basicplan_block .inblock_01 .item_03 .sml {
		font-size: 14px;
	}
	.top_basicplan_block .inblock_01 .item_03 dt:first-of-type {
		border-radius: 10px 10px 0 0;
	}
	.top_basicplan_block .inblock_01 .item_03 dd:first-of-type {
		border-radius: 0;
	}
	.top_basicplan_block .inblock_01 .item_03 dd:last-of-type {
		border-radius: 0 0 10px 10px;
	}

	.top_basicplan_block .inblock_05 {
		padding: 0 10px;
	}
	.top_basicplan_block .inblock_05 .top_ssttl {
		font-size: 18px;
		margin: 0 0 18px;
		border-radius: 6px;
	}
	.top_basicplan_block .inblock_05 .top_ssttl span {
		padding: 10px;
	}
	.top_basicplan_block .inblock_05 .inner .item {
		width: 100%;
		margin: 0 0 25px;
	}

	.reservation_block.top_page .top_sttl,
	.reservation_block.branch h2 {
		font-size: 20px;
		margin-bottom: 10px;
	}
	.reservation_block .calendar {
		padding: 0;
	}
	.reservation_block .calendar .cation {
		font-size: 12px;
	}
	.reservation_block .calendar .note li {
		font-size: 14px;
		margin: 0 10px 4px 0;
	}
	.reservation_block .calendar .note img {
		width: 15px;
		margin-right: 2px;
	}
	.reservation_block .guide h3 {
		font-size: 16px;
		margin-bottom: 5px;
	}
	.reservation_block .guide p {
		font-size: 14px;
		margin-bottom: 12px;
	}

	.monthly-calendar caption {
		font-size: 16px;
		margin-bottom: 2px;
	}
	.monthly-calendar th {
		font-size: 13px;
	}
	.monthly-calendar td {
		font-size: 12px;
	}
	.monthly-prev-next {
		top: 2px;
	}
	.monthly-prev a,
	.monthly-next a,
	.monthly-prev span,
	.monthly-next span {
		padding: 3px 6px;
		font-size: 13px;
	}

	.top_sttl {
		font-size: 24px;
		margin-bottom: 10px;
	}

	.top_sns_block {
		margin: 40px 0;
		padding: 10px 0;
	}
	.top_sns_block .instagram {
		margin: 0 0 10px;
	}
	.top_sns_block .instagram li {
		width: 50%;
		padding-top: 50%;
	}
	.top_sns_block .facebook {
		margin-bottom: 10px;
	}
	.top_policy_block .top_sttl {
		font-size: 20px;
		margin-bottom: 15px;
	}
	.top_policy_block .top_sttl span {
		background: none;
		padding: 0;
	}
	.top_policy_block .inner {
		margin: 0 10px;
		padding: 10px 10px 0;
	}
	.top_policy_block .item {
		width: 100%;
		margin: 0 0 15px;
	}
	.top_policy_block .item h3 {
		font-size: 18px;
		margin-bottom: 4px;
	}
	.top_policy_block .item p {
		font-size: 15px;
	}
	.top_policy_block .btn {
		padding-top: 15px;
	}
	.top_recommend_block {
		margin-bottom: 30px;
		padding: 0 15px;
	}
	.top_recommend_block .top_sttl {
		font-size: 18px;
		margin: 0 0 18px;
		border-radius: 6px;
	}
	.top_recommend_block .top_sttl span {
		padding: 10px;
	}
	.top_recommend_block p {
		margin-bottom: 20px;
		font-size: 15px;
		text-align: left;
	}
	.top_recommend_block .photo_slide_screen li {
		font-size: 14px;
	}
	.top_recommend_block .photo_slide .arrow_left,
	.top_recommend_block .photo_slide .arrow_right {
		width: 15px;
		height: 28px;
	}
	.top_recommend_block .btn {
		padding-top: 10px;
	}

	.top_access_block .info {
		float: none;
		width: auto;
		margin-bottom: 15px;
	}
	.top_access_block {
		margin-bottom: 30px;
	}
	.top_access_block .info h2 {
		font-size: 18px;
		margin-bottom: 20px;
		border-radius: 6px;
	}
	.top_access_block .info h2 span {
		padding: 10px;
	}
	.top_access_block .info p {
		font-size: 15px;
	}
	.top_access_block .info .btn {
		padding-top: 15px;
		text-align: center;
	}
	.top_access_block .info .btn a {
		padding: 10px 25px;
		font-size: 14px;
	}
	.top_access_block .gmap {
		float: none;
		width: auto;
		padding-top: 50%;
	}

	/* プラン */
	.plan_course_block {
		margin-bottom: 40px;
	}
	.plan_course_block .info {
		padding: 0;
	}
	.plan_course_block .info h3 {
		font-size: 18px;
		line-height: 1.1;
	}
	.plan_course_block .info .price {
		font-size: 15px;
		padding-bottom: 5px;
		margin-bottom: 10px;
		line-height: 1.1;
		border-bottom: solid 1px #eee;
	}
	.plan_course_block .info .price .number {
		font-size: 22px;
	}
	.plan_course_block .info .catch {
		margin-bottom: 15px;
	}
	.plan_course_block .info .btn a.btn_product,
	.plan_course_block .info .btn a.btn_reserve {
		width: 160px;
		font-size: 14px;
	}
	.other_plan h3 {
		font-size: 18px;
	}
	.other_plan .item {
		width: auto;
		margin: 0 10px 25px;
	}

	/* アクセス */
	.access_block_01 {
		height: 200px;
		margin-bottom: 25px;
	}
	.access_block_02 {
		width: auto;
		margin: 0 0 30px;
		padding: 0 15px;
	}
	.access_block_02 .info {
		margin-bottom: 25px;
	}
	.access_block_02 .info dt {
		float: none;
		font-weight: bold;
	}
	.access_block_02 .info dd {
		padding: 0 0 10px 0;
	}
	.access_block_02 h3 {
		padding-bottom: 3px;
		margin-bottom: 10px;
	}
	.access_block_03 {
		margin-bottom: 20px;
	}

	/* 取扱商品 */
	.product_block li {
		width: calc(48.2% - 2px);
	}

	/* 私たちのポリシー */
	.policy_block_01 {
		margin-bottom: 40px;
		padding: 0 15px;
	}
	.policy_block_01 .item {
		float: none;
		width: auto;
		margin-left: 0;
		margin-bottom: 30px;
	}
	.policy_block_01 .item h3 {
		font-size: 18px;
	}
	.policy_block_02,
	.policy_block_03 {
		width: auto;
		margin: 0 0 30px;
		padding: 0 15px;
	}
	.policy_block_02 {
		margin-bottom: 40px;
	}
	.policy_block_02 h3,
	.policy_block_03 h3 {
		font-size: 18px;
	}
	.policy_block_02 .item {
		margin: 25px auto 0;
	}

	.policy_block_02 .txt h4 {
		margin: 0 9.3%;
		font-size: 17px;
	}
	.policy_block_02 p {
		font-size: 15px;
	}
	.policy_block_03 .txt {
		float: none;
		width: auto;
	}
	.policy_block_03 figure {
		float: none;
		width: auto;
		text-align: center;
	}

	/* ご利用の流れ */
	.guide_block .item .txt {
		float: none;
		width: auto;
		margin-bottom: 20px;
	}
	.guide_block .item figure {
		float: none;
		width: auto;
		margin-bottom: 20px;
	}
	.guide_block .item.two_picture .txt {
		width: auto;
	}
	.guide_block .item.two_picture figure {
		width: auto;
	}
	.guide_block .item.two_picture figure img {
		display: block;
		width: auto;
	}

	/* スタッフおススメ */
	.spot_block_01 {
		margin: 0 auto 30px;
	}
	.spot_block_02 {
		margin-bottom: 20px;
		padding: 0 10px;
	}
	.spot_block_03 {
		margin-bottom: 40px;
	}
	.top_recommend_block .spot_block_03 {
		margin-bottom: 20px;
	}
	.spot_block_01 p {
		padding: 0 15px;
		text-align: left;
	}
	.spot_block_01 .linktxt p {
		float: none;
		width: auto;
		margin-bottom: 15px;
	}
	.spot_block_01 .linktxt p br {
		display: none;
	}
	.spot_block_01 .linktxt .btn {
		float: none;
		max-width: 120px;
		margin: 0 auto;
		text-align: center;
	}
	.spot_block_02 h3 {
		margin: 0 0 15px;
		padding-left: 25px;
		font-size: 18px;
	}
	.spot_block_02 .item {
		float: none;
		width: auto;
		margin: 0 0 20px;
	}
	.spot_block_02 .item figure {
		margin-bottom: 3px;
	}
	.spot_block_02 .item h4 {
		font-size: 16px;
	}
	.spot_block_03 li {
		width: calc(100% - 30px);
		margin: 0 auto 15px;
	}

	/* form 変更 */
	.content-form table table tr {
		display: block;
		width: calc(100% / 3);
	}
	.content-form table table td,
	.content-form table table td:first-of-type {
		display: flex;
		align-items: center;
		justify-content: center;
		width: auto;
		min-height: 2.2em;
		border-width: 0 1px 1px 0;
	}
	.content-form table table td br {
		display: none;
	}
	.content-form table table tbody {
		display: flex;
		border-top: solid 1px #ddd;
		border-left: solid 1px #ddd;
	}
	.content-text.medium {
		width: 95%;
	}

	/* News */
	.news_block > h3 {
		font-size: 24px;
	}
	.news_block.catag > h3 {
		font-size: 20px;
	}
	.news_block dt {
		float: none;
	}
	.news_block dd {
		padding-left: 0;
		line-height: 1.3;
	}
	.sidebar .side_block {
		width: auto;
		margin-right: 0;
		float: none;
	}
}

/* utility */
.u-pc {
	display: inherit;
}
.u-sp {
	display: none;
}
@media screen and (max-width: 768px) {
	.u-pc {
		display: none;
	}
	.u-sp {
		display: inherit;
	}
}

/* 
#glt-translate-trigger {
  z-index: 499;
  left: auto;
  right: 50px;
  top: 48px;
  bottom: auto;
  font-size: 12px;
  padding-inline: 8px;
  box-shadow: none;
} */

input,
select {
	-webkit-appearance: none;
	appearance: none;
}

.goog-te-combo {
	cursor: pointer;
}

.sp-gtranslate-button {
	background: none;
	box-shadow: none;
	border: none;
	-moz-appearance: none; /* Geko (firefox) */
	-webkit-appearance: none; /* Chrome*/
	cursor: pointer;
}

.sp-gtranslate-content {
	display: none;
	position: absolute;
	top: 38px;
	right: -56px;
	width: 143px;
	height: 25px;
}
.sp-place,
.pc-place {
	display: inherit;
	visibility: visible;
	position: relative;
	transform: translateZ(0); /* ハードウェアアクセラレーションを強制 */
}
