@charset "utf-8";
/*-------------------------------------------------------------------

	Init

-------------------------------------------------------------------*/
html {
	font-size: 62.5%;
}
body {
	color: #1c1c1c;
	font-size: 14px;
	line-height: 1.7;
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
	font-weight: normal;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
h1, h2, h3, h4, h5, h6, p, ul, ol, dl, dt, dd, figure {
	margin: 0;
	padding: 0
}
ul li {
	list-style: none;
	margin: 0;
	padding: 0;
}
h1, h2, h3, h4, h5, h6 {
	line-height: 1.3;
	font-size: 1em;
}
address {
	font-style: inherit
}
a {
	color: #01a5e4;
	text-decoration: underline;
}
a:hover {
	text-decoration: none;
}
p {
	margin-bottom: 1em;
}
.clearfix::after {
	content: "";
	display: block;
	clear: both;
}
img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}
table {
	width: 100%;
	border-collapse: collapse;
	table-layout: fixed;
}
hr {
	border: none;
	height: 1px;
	background: #1c1c1c;
	margin-bottom: 1em;
}

/*-------------------------------------------------------------------
	PC
-------------------------------------------------------------------*/
@media (min-width: 768px) {
body {
	font-size: 20px;
	min-width: 1200px;
}
}
/*-------------------------------------------------------------------

	Utility

-------------------------------------------------------------------*/
.u-sp-item {
	display: block !important;
}
.u-sp-item-inline {
	display: inline !important;
}
.u-pc-item, .u-pc-item-inline {
	display: none !important;
}
.u-marker {
	background: #ffff00;
}
.u-clr {
	clear: both;
}
.u-mb-0em {
	margin-bottom: 0;
}
.u-mb-05em {
	margin-bottom: .5em;
}
.u-mb-1em {
	margin-bottom: 1em;
}
.u-mb-1-5em {
	margin-bottom: 1.5em;
}
.u-mb-2em {
	margin-bottom: 2em;
}
.u-mb-3em {
	margin-bottom: 3em;
}
.u-text-center {
	text-align: center;
}
.u-text-left {
	text-align: left;
}
.u-text-right {
	text-align: right;
}
.u-text-bold {
	font-weight: bold;
}
.u-text-red {
	color: #d04d5a;
}
.u-text-blue {
	color: #254a78;
}
.u-text-small {
	font-size: .93em;
}
.u-text-x-small {
	font-size: .86em;
}
.u-text-xx-small {
	font-size: .79em;
}
.u-text-large {
	font-size: 1.07em;
}
.u-text-x-large {
	font-size: 1.14em;
}
.u-text-xx-large {
	font-size: 1.29em;
}
.u-text-serif {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.u-replace {
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}
.u-item-left {
	float: left;
}
.u-item-right {
	float: right;
}
.u-item-left.is-margin {
	margin: 0 1.5em 1em 0;
}
.u-item-right.is-margin {
	margin: 0 0 1em 1.5em;
}
.u-item-auto {
	margin-left: auto;
	margin-right: auto;
}
.u-figcaption-basic {
	text-align: center;
	padding-top: .5em;
}
.u-ul-basic, .u-ol-basic {
	padding-left: 1.5em;
	line-height: 1.3;
}
.u-ul-basic li {
	list-style-type: disc;
	padding: 0 0 .5em 0;
}
.u-ol-basic li {
	list-style-type: decimal;
	padding: 0 0 .5em 0;
}
.u-ul-basic > :last-child, .u-ol-basic > :last-child {
	padding: 0;
}
.u-check-list li {
	margin: 0 0 .7em 0;
	padding: 0 0 0 2em;
	line-height: 1.3;
}
.u-check-list li:last-child {
	margin: 0;
}
.u-check-list li::before {
	content: "\f00c";
	display: inline-block;
	margin-left: -2em;
	width: 2em;
	color: #f23a6c;
	font-family: fontAwesome;
	text-align: center;
}
.u-dl-basic dt {
	padding-left: .8em;
	margin-bottom: .5em;
	line-height: 1.3;
	font-weight: 600;
	color: #254a78;
	border-left: 4px solid #254a78;
	border-radius: 2px 0 0 2px;
}
.u-dl-basic dd {
	font-size: .88em;
	margin-bottom: 1.5em;
}
.u-dl-basic dl > dd > :last-child {
	margin-bottom: 0;
}
.u-dl-basic dl > dd:last-child {
	margin-bottom: 0;
}
/*table*/
.u-table-basic {
	width: 100%;
	border: 1px solid #DDD;
	background: #FFF;
}
.u-table-basic th, .u-table-basic td {
	border: 1px solid #DDD;
	padding: 1em .5em;
}
.u-table-basic th {
	border: 1px solid #DDD;
	padding: 1em .5em;
	font-weight: 600;
	text-align: center;
	vertical-align: middle;
	background: #efefef;
	line-height: 1.3;
}
.u-table-basic td {
	text-align: left;
	vertical-align: top;
	line-height: 1.4;
	font-weight: 500;
}
.u-table-basic td.yen {
	text-align: right;
}
.u-table-basic td.unit {
	text-align: center;
}
.u-table-basic .emp {
	background-color: #ffeeee;
}
.u-table-basic.price td {
	vertical-align: middle;
}
/*button*/
.u-button-detail {
	font-size: 12px;
	line-height: 1.2;
	font-weight: 600;
}
.u-button-detail a {
	display: inline-block;
	text-decoration: none;
	color: #1c1c1c;
	background: #efd381;
	padding: 1em;
}
.u-button-detail a::after {
	content: "\f054";
	display: inline-block;
	font-family: FontAwesome;
	margin-left: .5em;
}
.u-button-detail.is-back a::after {
	content: "\f0e2";
}
.u-button-detail.is-center {
	text-align: center;
}
.u-button-detail.is-right {
	text-align: right;
}
.u-button-detail.is-middle a {
	font-size: 1.16em;
}
.u-button-detail.is-large a {
	font-size: 1.33em;
}
/*flex*/
.u-flex-basic {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-justify-content: space-between;
	-ms-justify-content: space-between;
	justify-content: space-between;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
.u-flex-center {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: center;
	-ms-align-items: center;
	align-items: center;
	-webkit-justify-content:center;
	-ms-justify-content:center;
	justify-content:center;
}
/*column*/
.u-column-basic::after {
	content: "";
	display: block;
	clear: both;
}
.u-column-basic > li {
	float: left;
	line-height: 1.5;
	font-weight: 500;
}
.u-column-basic.is-2col > li {
	width: 48.0519%;
	margin-right: 3.8961%;
	margin-bottom: 1em;
}
.u-column-basic.is-2col > li:nth-child(2n) {
	margin-right: 0;
}
.u-column-basic.is-arrow > li figure {
	position: relative;
}
.u-column-basic.is-arrow > li:first-child figure::after {
	content: "";
	position: absolute;
	width: 5px;
	height: 20px;
	top: 50%;
	right: -5.9459%;
	background: url(/img/ico_arrow_bf.svg) no-repeat center center;
	background-size: cover;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
.u-column-basic.is-3col > li {
	width: 31.4285%;
	margin-right: 2.8571%;
	margin-bottom: 1em;
}
.u-column-basic.is-3col > li:nth-child(3n) {
	margin-right: 0;
}
.u-column-basic.is-1-2col > li {
	width: 31.4285%;
	margin-right: 2.8571%;
	margin-bottom: 1em;
}
.u-column-basic.is-1-2col > li:nth-child(2n) {
	width: 65.7142%;
	margin-right: 0;
}
.u-hr-basic {
	border:none;
	width:40px;
	height:3px;
	background:#1c1c1c;
	margin:0 auto 2em;
}
/*animate*/
.a-animate {
	transition: all 0.4s ease;
	-webkit-transition: all 0.4s ease;
	-moz-transition: all 0.4s ease;
}

/*-------------------------------------------------------------------
	SP
-------------------------------------------------------------------*/
@media (max-width: 767px) {
.u-spitem-w-30 {
	width: 30%;
}
.u-spitem-w-40 {
	width: 40%;
}
.u-spitem-w-45 {
	width: 45%;
}
.u-spitem-w-50 {
	width: 50%;
}
.u-spitem-w-60 {
	width: 60%;
}
.u-spitem-w-70 {
	width: 70%;
}
.u-spitem-w-80 {
	width: 80%;
}
.u-spitem-w-90 {
	width: 90%;
}
.u-spitem-w-100 {
	width: 100%;
}
.u-spitem-center {
	float: none !important;
	margin-left: auto !important;
	margin-right: auto !important;
}
}

/*-------------------------------------------------------------------
	PC
-------------------------------------------------------------------*/
@media (min-width: 768px) {
.u-sp-item, .u-sp-item-inline {
	display: none !important;
}
.u-pc-item {
	display: block !important;
}
.u-pc-item-inline {
	display: inline !important;
}
.u-button-detail.is-middle a {
	font-size: 1.33em;
}
.u-button-detail.is-large a {
	font-size: 1.5em;
}
.u-text-small {
	font-size: .88em;
}
.u-text-x-small {
	font-size: .77em;
}
.u-text-xx-small {
	font-size: .66em;
}
.u-text-large {
	font-size: 1.11em;
}
.u-text-x-large {
	font-size: 1.22em;
}
.u-text-xx-large {
	font-size: 1.33em;
}
.u-column-basic.is-arrow > li:first-child figure::after {
	width: 9px;
	height: 34px;
}
.u-hr-basic {
	width:60px;
	height:4px;
}
}
/*-------------------------------------------------------------------

	Header

-------------------------------------------------------------------*/
#header {
	position: fixed;
	width: 100%;
	left: 0;
	top: 0;
	z-index: 500;
	background: #f5f5f7;
	padding: 10px 2.6666%;
	box-sizing: border-box;
	box-shadow: 0 0 6px 0 rgba(0,0,0,.2);
}
#header > p {
	margin-bottom: 0;
}
.header_logo {
	width: 158px;
	float: left;
}
.header_reserve, .header_tel {
	float: right;
	width: 50px;
}
.header_tel {
	margin-left: 5px;
}
.dummy {
	height: 55px;
}

/*-------------------------------------------------------------------
	Header PC
-------------------------------------------------------------------*/
@media (min-width: 768px) {
.dummy {
	display: none;
}
}
/*-------------------------------------------------------------------

	mv

-------------------------------------------------------------------*/
#mv {
	height: 113.3333vw;
	background: url(../img/mv_photo_sp.jpg) no-repeat center 0;
	position: relative;
	background-size: cover;
}
#mv .mv_dot {
	position: absolute;
	width: 100%;
	height: 100%;
	background: url(../img/dot.png) repeat 0 0;
	top: 0;
	left: 0;
}
#mv .mv_text {
	position: absolute;
	width:100%;
	left:0;
	bottom:15vw;
	color:#FFF;
	font-size:5.3333vw;
	line-height: 1.4;
	font-weight:500;
	text-align: center;
	text-shadow: 2px 2px 0 rgba(0,0,0,.3);
}
#mv .mv_text span {
	display:block;
	font-size:9vw;
	line-height: 1.2;
	font-weight:600;
	margin-top:10px;
}

/*-------------------------------------------------------------------
	mv PC
-------------------------------------------------------------------*/
@media (min-width: 768px) {
#mv {
	height: auto;
	background:none;
}
#mv .mv_logo {
	position: absolute;
	width: 238px;
	top: 30px;
	left: 30px;
}
#mv .mv_mov {
	width:100%;
	height:auto;
	margin:0;
	padding:0;
	vertical-align: bottom;
}
#mv .mv_text {
	bottom:15vw;
	font-size:40px;
	text-shadow: 4px 4px 0 rgba(0,0,0,.3);
}
#mv .mv_text span {
	font-size:70px;
	margin-top:10px;
}
}
/*-------------------------------------------------------------------

	common

-------------------------------------------------------------------*/
.basic-title {
	font-size: 6.6vw;
	text-align: center;
}
.basic-title i {
	display: block;
	margin-bottom: .5em;
	font-size: 4vw;
	font-family: "Times New Roman", Times, "serif";
	font-weight: 400;
	font-style: italic;
	letter-spacing: 3px;
}
.basic-block {
	padding: 9.3% 4%;
}
.basic-block.is-mb0 {
	padding: 9.3% 4% 0;
}
.basic-block > :last-child {
	margin-bottom: 0;
}
.title-line:after {
	display:block;
	content:"";
	width:40px;
	height:3px;
	margin:.8em auto 1em;
}
.title-line.is-black:after {
	background-color:#1c1c1c;
}
.title-line.is-brown:after {
	background-color:#8c7653;
}
.title-line.is-white:after {
	background-color:#FFF;
}
.case-caption {
	position:absolute;
	bottom:0;
	right:0;
	display:inline-block;
	padding:.5em;
	background:rgba(0,0,0,.4);
	color:#FFF;
	line-height: 1;
	z-index: 50;
}
.skew {
	-ms-transform: skew(0, -4deg);
	-webkit-transform: skew(0, -4deg);
	transform: skew(0, -4deg);
	overflow: hidden;
	position: relative;
}
.skew_inner {
	padding: 11.4% 4%;
	-ms-transform: skew(0, 4deg);
	-webkit-transform: skew(0, 4deg);
	transform: skew(0, 4deg);
	margin:0 auto;
}
.skew.is-cream {
	background-color:#ece3d5;
}
.skew.is-gray {
	background:url(../img/gplaypattern.png) repeat 0 0;
}
.skew.is-brown {
	background-color:#b09a77;
}
/*-------------------------------------------------------------------
	common PC
-------------------------------------------------------------------*/
@media (min-width: 768px) {
.basic-title {
	font-size: 50px;
}
.basic-title i {
	font-size: 20px;
}
.basic-block {
	padding: 70px 0;
	width: 900px;
	margin: auto;
}
.title-line:after {
	width:60px;
	height:4px;
}
.skew_inner {
	width:900px;
	padding: 100px 0;
}
}
/*-------------------------------------------------------------------

	intro

-------------------------------------------------------------------*/
#intro {
	background: #FFF;
}
.intro_inner {
	padding: 10% 0;
}
.intro_title {
	font-size: 24px;
	color:#8c7653;
	text-align: center;
}
.intro_case-list > section {
	width:100%;
	margin-bottom:1.5em;
}
.intro_case-list > section h3 {
	font-size:13px;
	font-weight: 500;
	margin-bottom:.5em;
	text-align: center;
}
.intro_case-list > section figure {
	width:49.3333%;
	position: relative;
	font-size:10px;
}
.intro_last-text {
	width:90%;
	margin:0 auto;
	text-align: center;
}
/*-------------------------------------------------------------------
	intro PC
-------------------------------------------------------------------*/
@media (min-width: 768px) {
.intro_inner {
	max-width:1440px;
	box-sizing: border-box;
	padding: 80px 3.47222%;
	margin: auto;
}
.intro_title {
	font-size: 52px;
}
.intro_case-list > section {
	width:48.913%;
}
.intro_case-list > section h3 {
	font-size:18px;
}
.intro_case-list > section figure {
	width:49.7777%;
	font-size:14px;
}
.intro_last-text {
	width:auto;
	padding-top:1em;
}
}
/*-------------------------------------------------------------------

	case

-------------------------------------------------------------------*/
#case {
	background: #ece3d5;
}
.case_case-list {
	width:86.9565%;
	margin:0 auto 1em;
}
.case_case-list > section {
	width:100%;
	margin-bottom:1.5em;
}
.case_case-list > section h3 {
	font-size:12px;
	font-weight: 500;
	margin-bottom:.5em;
	text-align: center;
}
.case_case-list > section figure {
	width:49.3333%;
	position: relative;
	font-size:10px;
}
.case_last-text {
	font-size:6.6vw;
	line-height: 1.4;
	font-weight: 600;
	text-align: center;
	margin:0;
}
.case-box-small-text {
	margin-top: 0.5rem;
	font-size: 11px;
  line-height: 1.4;
}
.is-top {
	padding: 0 1.5rem 0;
}
/*-------------------------------------------------------------------
	case PC
-------------------------------------------------------------------*/
@media (min-width: 768px) {
.case_case-list {
	width:900px;
}
.case_case-list > section {
	width:48.5555%;
}
.case_case-list > section h3 {
	font-size:16px;
}
.case_case-list > section figure {
	width:49.8855%;
	font-size:12px;
}
.case_last-text {
	font-size:50px;
}
.is-top {
	padding: 0;
}
}
/*-------------------------------------------------------------------

	reason

-------------------------------------------------------------------*/
#reason {
	background: #FFF;
}
.title-box {
	display:inline-block;
	font-size:.52em;
	line-height: 1;
	color:#FFF;
	padding:.6em .6em .5em;
	background-color:#1c1c1c;
	margin-right:.5em;
	vertical-align: .4em;
}
.reason_pie {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-bottom:1em;
}
.reason_pie > section {
	width:49.855%;
	box-sizing: border-box;
	padding:5% 0;
	background:#b09a77;
	margin-bottom:0.2898%;
	text-align: center;
	color:#FFF;
}
.reason_pie > section:first-child {
	margin-right:0.2898%;
}
.reason_pie > section h3 {
	font-size:3.2vw;
	line-height: 1.3;
	margin-bottom:1em;
}
.reason_pie > section figure {
	width:76.7441%;
	margin:auto;
}
.reason_last-text {
	margin-bottom:0;
	font-weight: 500;
}
.reason_sub-text {
	font-size: 12px;
}
/*-------------------------------------------------------------------
	reason PC
-------------------------------------------------------------------*/
@media (min-width: 768px) {
.reason_pie {
	-webkit-justify-content: space-between;
	-ms-justify-content: space-between;
	justify-content: space-between;
}
.reason_pie > section {
	width:32%;
	padding:30px 0;
	margin-bottom:0;
}
.reason_pie > section:first-child {
	margin-right:0;
}
.reason_pie > section h3 {
	font-size:18px;
}
.reason_pie > section figure {
	width:76.3888%;
}
.reason_last-text {
	text-align:center;
	font-size:20px;
}
}
/*-------------------------------------------------------------------

	policy

-------------------------------------------------------------------*/
.policy_lead {
	font-weight: 600;
	text-align: center;
	font-size: 4.8vw;
}
.policy_comment-photo {
	width:40.7246%;
	float:left;
	margin:0 1em 1em -4.3478%;
}
.policy_point {
	width:100%;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-justify-content: center;
	-ms-justify-content: center;
	justify-content: center;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-bottom:-2em;
}
.policy_point li {
	width:28.5231%;
	margin: 0 1.7391% .5em;
}

/*-------------------------------------------------------------------
	policy PC
-------------------------------------------------------------------*/
@media (min-width: 768px) {
.policy_lead {
	font-size: 30px;
}
.policy_comment-photo {
	width:46.7777%;
	margin:0 1em 1em -11.2222%;
}
.policy_point {
	-webkit-justify-content: space-between;
	-ms-justify-content: space-between;
	justify-content: space-between;
	margin-bottom:0;
}
.policy_point li {
	width:18.2222%;
	margin: 0;
}
}
/*-------------------------------------------------------------------

	voice

-------------------------------------------------------------------*/
.voice_card li {
	width:23.4782%;
	margin-bottom:1em;
	box-shadow: 0 0 6px 0 rgba(0,0,0,.15);
}
.voice_card::before{
  content:"";
  display: block;
  width:23.4782%;
  order:1;
}
.voice_card::after{
  content:"";
  display: block;
  width:23.4782%;
}
.voice_card li a {
	position: relative;
	display:block;
	text-align:center;
}
.voice_card li a::after {
	position:absolute;
	display: block;
	top:48%;
	left:0;
	content:"";
	width: 100%;
	height:15px;
	background: url(../img/ico_zoom.svg) no-repeat center center;
	background-size:contain;
	/*-webkit-transform: translateX(-50%);
	transform: translateX(-50%);*/
	-webkit-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
	opacity: .5;
	z-index: 10;
}
.voice_card li:hover a::after {
	-webkit-transform: scale(1.8,1.8);
	transform: scale(1.8,1.8);
	
	opacity: 1;
}
/*-------------------------------------------------------------------
	voice PC
-------------------------------------------------------------------*/
@media (min-width: 768px) {
.voice_card li {
	width:18.2222%;
}
.voice_card::before{
  width:18.2222%;
}
.voice_card::after{
  width:18.2222%;
}
.voice_card li a {
}
.voice_card li a::after {
	height:30px;
}
.voice_card li:hover a::after {
	-webkit-transform: scale(1.8,1.8);
	transform: scale(1.8,1.8);
}
}
/*-------------------------------------------------------------------

	contact

-------------------------------------------------------------------*/
.contact-block {
	background: #1c1c1c;
	color: #FFF;
	text-align: center;
}
.contact-block_inner {
	padding: 6% 4% 4%;
}
.contact-block_inner .lead {
	font-size: 4.6vw;
	font-weight: bold;
	line-height: 1.2;
	margin-bottom: .5em;
}
.contact-block_inner ul li {
	margin-bottom: 2.6%;
}
.contact-block_inner ul li:last-child {
	margin-bottom: 0;
}

/*-------------------------------------------------------------------
	contact PC
-------------------------------------------------------------------*/
@media (min-width: 768px) {
.contact-block_inner {
	width: 900px;
	margin: auto;
	padding: 50px 0;
}
.contact-block_inner .lead {
	font-size: 26px;
}
.contact-block_inner ul li {
	float: left;
	width: 292px;
	margin-right: 12px;
	margin-bottom: 0;
}
.contact-block_inner ul li:last-child {
	margin-right: 0;
}
}
/*-------------------------------------------------------------------

	price

-------------------------------------------------------------------*/
.price-title {
	font-size: 4.8vw;
	color:#FFF;
}
.price_table {
	width: 100%;
	border: 1px solid #83745c;
	background: #FFF;
	font-size: 12px;
	line-height: 1.3;
}
.price_table th, .price_table td {
	border-bottom: 1px solid #83745c;
	padding: 1em .5em;
	vertical-align: middle;
	font-weight: 500;
}
.price_table th {
	text-align: left;
}
.price_table .head th {
	background: #c8b8a0;
	text-align: center;
}
.price_table .yen {
	text-align: right;
}
.price_caption {
	font-weight:600;
	color:#FFF;
}
.price_option li {
	width: 100%;
	margin-bottom: .5em;
	border: 2px solid #FFF;
	padding: 1em;
	line-height: 1.5;
	color: #FFF;
	box-sizing: border-box;
}
.price_option li:last-child {
	margin-bottom: 0;
}
.price_option li > i {
	display: block;
	width: 40px;
	height: 34px;
	float: left;
	margin-right: 1em;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.price_option li > i.hojo {
	background-image: url(../img/ico_hojo.svg);
}
.price_option li > i.hosho {
	background-image: url(../img/ico_hosho.svg);
}
.price_option li > i.credit {
	background-image: url(../img/ico_credit.svg);
}
.price_option li > div {
	overflow: hidden;
}
.price_option li > div > strong {
	display: block;
}

/*-------------------------------------------------------------------
	price PC
-------------------------------------------------------------------*/
@media (min-width: 768px) {
.price-title {
	font-size: 36px;
	color:#FFF;
}
.price_table {
	font-size: 18px;
}
.price_table th, .price_table td {
	padding: 1em 1em;
}
.price_option li {
	width: 284px;
	box-sizing: border-box;
	font-size: 16px;
	margin-bottom: 0;
}
.price_option li > i {
	width: 62px;
	height: 52px;
	float: none;
	margin: 0 auto .5em;
}
.price_option li > div > strong {
	text-align: center;
	font-size: 18px;
}
}
/*-------------------------------------------------------------------

	doctor

-------------------------------------------------------------------*/
.doctor_photo {
	width: 44.6376%;
	float: left;
	margin-right: 1em;
}
.doctor_carrier {
	overflow: hidden;
	font-size: 12px;
	line-height: 1.4;
	margin-bottom: 1em;
}
.doctor_name {
	display: block;
	margin-bottom: .5em;
	font-size: 18px;
}
.doctor_carrier dd {
	margin-bottom: .5em;
}
.doctor_req {
	border: 1px solid #DDD;
	padding: 1em;
	font-size: 12px;
	clear: both;
}
.doctor_banner {
	margin-bottom: 2.5em;
}
.doctor_banner li {
	margin-bottom: .5em;
	width: 100%;
}

/*-------------------------------------------------------------------
	doctor PC
-------------------------------------------------------------------*/
@media (min-width: 768px) {
.doctor_photo {
	width: 308px;
}
.doctor_carrier {
	font-size: 16px;
}
.doctor_name {
	font-size: 30px;
}
.doctor_carrier dt {
	clear: left;
	float: left;
	width: 5em;
}
.doctor_carrier dd {
	padding: 0 0 0 5em;
	margin-bottom: 1em;
}
.doctor_req {
	border: none;
	border-top: 1px solid #DDD;
	padding: 2em 0 0 0;
	font-size: 14px;
	clear: none;
	overflow: hidden;
}
.doctor_req > p {
	width: 336px;
	float: left;
}
.doctor_req > figure {
	float: right;
}
.doctor_banner li {
	width: 434px;
}
}
/*-------------------------------------------------------------------

	clinic

-------------------------------------------------------------------*/
.clinic_data {
	margin-bottom: 1em;
}
.clinic_data-info {
	padding-top: .8em;
	margin-bottom: 1em;
	border-top: 1px solid #1c1c1c;
	font-size: 12px;
	line-height: 1.3;
	font-weight: 500;
}
.clinic_data-info dt {
	clear: left;
	float: left;
	width: 8em;
	font-weight: 600;
}
.clinic_data-info dd {
	padding: 0 0 .8em 8em;
	margin-bottom: .8em;
	border-bottom: 1px solid #1c1c1c;
}
.clinic_data-contact {
	padding: 4.3%;
	background: #1c1c1c;
	color: #FFF;
	text-align: center;
}
.clinic_data-contact strong {
	display: block;
	margin-bottom: .5em;
}
.clinic_data-contact .c-wide {
	width: 100%;
	margin-bottom: .5em;
}
.clinic_data-contact .c-half {
	width: 49.2063%;
}
.clinic_photo {
}
.clinic_access-title {
	font-family: "Times New Roman", Times, "serif";
	font-style: italic;
	font-weight: 500;
	font-size: 4vw;
	text-align: center;
	margin-bottom: 1em;
	letter-spacing: 3px;
}
.clinic_access-map {
	width: 100%;
	height: 78vw;
	position: relative;
}
.clinic_access-map > iframe {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

/*-------------------------------------------------------------------
	clinic PC
-------------------------------------------------------------------*/
@media (min-width: 768px) {
.clinic_data {
	width: 500px;
	float: left;
}
.clinic_data-info {
	font-size: 15px;
}
.clinic_data-contact {
	padding: 20px;
}
.clinic_data-contact .c-half {
	width: 224px;
}
.clinic_photo {
	width: 360px;
	float: right;
}
.clinic_access-title {
	font-size: 30px;
}
.clinic_access-map {
	height: 400px;
}
}/*-------------------------------------------------------------------

	banner

-------------------------------------------------------------------*/
.banner-block {
	background-color:#e2acb0;
}
.banner-block_inner {
	padding:4%;
}
.banner-list {
	width:100%;
	margin-bottom:1em;
}
.banner-list h3 {
	color:#FFF;
	font-size:15px;
	line-height: 1.3;
	text-align: center;
	height:30.6666vw;
	background-color:#333;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}
.banner-list.is-vaser h3 {
	background-image:url(../img/banner_vaser_sp.jpg);
}
.banner-list.is-after h3 {
	background-image:url(../img/banner_after_sp.jpg);
}
.banner-text {
	margin:0;
	background-color:#FFF;
	padding:1em;
	font-size:13px;
}
.banner-button {
	display: block;
	padding:1.5em 1em;
	background-color:#d04d5a;
	color:#FFF;
	text-align: center;
	font-size:11px;
	font-weight: 600;
	line-height: 1;
	text-decoration: none;
}
.banner-text-last {
	margin:0;
	font-size:13px;
	font-weight:600;
}
/*-------------------------------------------------------------------
	banner PC
-------------------------------------------------------------------*/
@media (min-width: 768px) {
.banner-block_inner {
	padding:50px 0 70px;
	width:900px;
	margin:auto;
}
.banner-list {
	width:48.8888%;
}
.banner-list h3 {
	font-size:20px;
	height:190px;
}
.banner-list.is-vaser h3 {
	background-image:url(../img/banner_vaser_pc.jpg);
}
.banner-list.is-after h3 {
	background-image:url(../img/banner_after_pc.jpg);
}
.banner-text {
	font-size:17px;
	padding:2em;
}
.banner-button {
	text-align: center;
	font-size:16px;
}
.banner-text-last {
	font-size:26px;
}
}
/*-------------------------------------------------------------------

	footer

-------------------------------------------------------------------*/
#footer {
	padding: 4.4vw 0 15.6vw;
	background: #1c1c1c;
	text-align: center;
	color: #FFF;
	font-size: 10px;
	line-height: 1.3;
	font-weight: 500;
}
.footer_pagetop {
	width: 25px;
	margin: 0 auto 10px;
}
#menu-button {
	position: fixed;
	width: 52px;
	bottom: 8px;
	right: 8px;
	z-index: 100;
}
#menu-overlay {
	display: none;
	position: fixed;
	width: 100%;
	height: 100vh;
	top: 0;
	left: 0;
	z-index: 200;
	padding: 75px 4% 4%;
	background: rgba(0,0,0,.9);
	color: #FFF;
	box-sizing: border-box;
	overflow: auto;
}
#menu-overlay ul li {
	margin-bottom: .5em;
}
#menu-overlay ul li a {
	display: block;
	padding: 1em 2em 1em 1em;
	background: #FFF url(../img/menu_arrow.svg) no-repeat 97% center;
	background-size: 10px;
	color: #1c1c1c;
	text-decoration: none;
}

/*-------------------------------------------------------------------
	footer PC
-------------------------------------------------------------------*/
@media (min-width: 768px) {
#footer {
	padding: 20px 0 100px;
	font-size: 14px;
}
.footer_pagetop {
	width: 50px;
	margin: 0 auto 30px;
}
#menu-overlay {
	display: none;
}
}
/*-------------------------------------------------------------------
	side 
-------------------------------------------------------------------*/
#pc-side-button {
	display:none;
}
/*-------------------------------------------------------------------
	side PC
-------------------------------------------------------------------*/
@media (min-width: 768px) {
#pc-side-button {
	display:block;
	position: fixed;
	right:0;
	top:50%;
	width:50px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
#pc-side-button li {
	margin-bottom:10px;
}
#pc-side-button li:last-child {
	margin-bottom:0;
}
}

