@charset "utf-8";

/* CSS Document */

@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@font-face { font-family: 'NotoSerifCJKjp-Regular'; src: url(./NotoSerifCJKjp-Regular.otf); }

/*------------------------------------------------------------------------------------------------------------------
　base style
-------------------------------------------------------------------------------------------------------------------*/

body {	
	color:#000000;
	font-size:16px;
	margin:0;
	height:100%;
	position:relative;
	font-family: "BIZ UDPGothic", "Noto Sans Japanese", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height:1.6;
	overflow-x:hidden;
}

@media screen and (max-width: 640px) {
	body {
		font-size: 24px;
	}
}

a:link {color:#cf3434; text-decoration:underline;}
a:visited {color:#cf3434; text-decoration:underline;}
a:hover {color:#e59c0e; text-decoration:underline;}

img {
	border:0;
	vertical-align: bottom;
}

/*------------------------------------------------------------------------------------------------------------------
　preparation
-------------------------------------------------------------------------------------------------------------------*/

#lineup-font-size-sampler { display:none; }

div:after, section:after, article:after, ul:after {
    content: "";
    display: block;
    clear: both;
}

.link a {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	display:block;
	text-indent:100%;
	overflow:hidden;
	white-space:nowrap;
}

/*------------------------------------------------------------------------------------------------------------------
　expression
-------------------------------------------------------------------------------------------------------------------*/

.clear { clear:both; }

.under { margin-bottom:30px !important; }
.under-harf { margin-bottom:15px !important; }
.under-db { margin-bottom:60px !important; }

.right { float:right; margin-left:30px; margin-bottom:15px; margin-top:5px;}
.left { float:left; margin-right:30px; margin-bottom:15px; margin-top:5px;}

.text-center { text-align:center; }
.text-left { text-align:left; }
.text-right { text-align:right; }

.first { padding-top:0 !important; margin-top:0 !important; }
.last { padding-bottom:0 !important; margin-bottom:0 !important; }

.ro img:hover,.ro:hover {
	opacity:0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
}

.dropshadow {
	box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.17);
    -moz-box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.17);
    -webkit-box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.17);
}

/*------------------------------------------------------------------------------------------------------------------
　img align for wordpress
-------------------------------------------------------------------------------------------------------------------*/

.aligncenter {
    display: block;
    margin: 0 auto;
	padding-bottom:25px;
	max-width:100%;
	height: auto;
}
.alignright { float: right; margin-left:30px; margin-bottom:25px; max-width:100%; height: auto; }
.alignleft { float: left; margin-right:30px; margin-bottom:25px; max-width:100%; height: auto; }

.aligncenter img, .alignright img, .alignleft img {
	max-width:100%;
	height:auto;
}

@media screen and (max-width: 1000px) {
	.aligncenter {
		display: block;
		margin: 0 auto;
		padding-bottom:25px;
		max-width:100%;
		height: auto;
		text-align:center;
	}
	.alignright { float: none; margin: 0 auto; margin-bottom:0; padding-bottom:25px; max-width:100%; text-align:center; width: inherit; height: auto; display: block;}
	.alignleft { float: none; margin: 0 auto; margin-bottom:0; padding-bottom:25px; max-width:100%; text-align:center; width: inherit; height: auto; display: block;}
}

/*------------------------------------------------------------------------------------------------------------------
　wp-pagenavi
-------------------------------------------------------------------------------------------------------------------*/

.wp-pagenavi {
	border-top:#d1d1d1 3px double;
	margin-top:40px;
	padding-top:40px;
	display:block !important;
	clear:both !important;
	text-align:center;
}

.wp-pagenavi a ,.wp-pagenavi span.pages, .wp-pagenavi span.extend {
		color:#333333 !important;
		text-shadow:0px 1px #F6F6F6 !important;
		padding:6px 9px 6px 9px !important;
		border:solid 1px #B6B6B6 !important;
		box-shadow:0px 1px #EFEFEF !important;
		-moz-box-shadow:0px 1px #EFEFEF !important;
		-webkit-box-shadow:0px 1px #EFEFEF !important;
		background:#E6E6E6 !important;
		background:-moz-linear-gradient(top,#FFFFFF 1px,#F3F3F3 1px,#E6E6E6) !important;
		background:-webkit-gradient(linear,0 0,0 100%,color-stop(0.02,#FFFFFF),color-stop(0.02,#F3F3F3),color-stop(1,#E6E6E6)) !important;
		font-size:12px !important;
		margin-right:3px !important;
		text-decoration:none !important;
}	
.wp-pagenavi a:hover {
		color:#fff !important;
		text-shadow:0px 1px #CA470E !important;
		border-color:#D13F11 !important;
		background:#E95B2B !important;
		background:-moz-linear-gradient(top,#FFBE01 1px,#FE7C02 1px,#E95B2B) !important;
		background:-webkit-gradient(linear,0 0,0 100%,color-stop(0.02,#FFBE01),color-stop(0.02,#FE7C02),color-stop(1,#E95B2B)) !important;
		color:#FFFFFF !important;
		box-shadow:0px 1px #E7E7E7 !important;
		-moz-box-shadow:0px 1px #E7E7E7 !important;
		-webkit-box-shadow:0px 1px #E7E7E7 !important;

}
 .wp-pagenavi span.current{
		padding:6px 9px 6px 9px !important;
		border:solid 1px #DCDCDC !important;
		color:#fff !important;
		box-shadow:0px 1px #E7E7E7 !important;
		-moz-box-shadow:0px 1px #E7E7E7 !important;
		-webkit-box-shadow:0px 1px #E7E7E7 !important;
		margin-right:3px !important;
		text-shadow:0px 1px #CA470E !important;
		border-color:#D13F11 !important;
		background:#E95B2B !important;
		background:-moz-linear-gradient(top,#FFBE01 1px,#FE7C02 1px,#E95B2B) !important;
		background:-webkit-gradient(linear,0 0,0 100%,color-stop(0.02,#FFBE01),color-stop(0.02,#FE7C02),color-stop(1,#E95B2B)) !important;
}

/*------------------------------------------------------------------------------------------------------------------
　primary
-------------------------------------------------------------------------------------------------------------------*/

#primary {
	width:100%;
	height:100%;
	min-width:640px;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
}

@media screen and (max-width: 640px) {
	#primary {
		width: 640px;
		overflow-x: hidden;
	}
}

article {
	width:100%;
	max-width: 1030px;
	margin-left:auto;
	margin-right:auto;
	position:relative;
	transition:0.3s;
	box-sizing:border-box;
}

@media screen and (max-width: 1030px) {
	article {
		width:100%;
		padding-left:30px;
		padding-right:30px;
	}
}

/*------------------------------------------------------------------------------------------------------------------
　header
-------------------------------------------------------------------------------------------------------------------*/

header {
}

.header-primary {
	padding-bottom: 15px;
}

.header-primary h1 {
	background-color: #fe8858;
	width: 100%;
	height: 30px;
	line-height: 30px;
	color: #ffffff;
	text-align: center;
	font-size: 16px;
	font-weight: normal;
	margin: 0;
	padding: 0;
	margin-bottom: 23px;
}

@media screen and (max-width: 840px) {
	.header-primary h1 {
		margin-bottom: 35px;
	}
}

.header-primary article {
}

.header-primary .logo {
	background-image: url("../image/header/logo.png?upd=20240909");
	width: 206px;
	height: 58px;
	position: relative;
	float: left;
	margin-right: 30px;
	vertical-align: bottom;
}

@media screen and (max-width: 1010px) {
	.header-primary {
		text-align: center;
	}
	.header-primary .logo {
		float: none;
		display: inline-block;
	}
}

.header-primary .logo a {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	overflow: hidden;
	white-space: nowrap;
	text-indent: 100%;
}

.header-primary .logo-icon {
	background-image:url("../image/header/logo-icon.png?upd=20240909");
	width: 232px;
	background-position: right;
	height: 70px;
	overflow: hidden;
	white-space: nowrap;
	text-indent: 100%;
	display: block;
	float: left;
	vertical-align: bottom;
}

@media screen and (max-width: 1010px) {
	.header-primary .logo-icon {
		float: none;
		display: inline-block;
	}
}

@media screen and (max-width: 840px) {
	.header-primary .logo-icon {
	}
}

.header-primary .states {
	clear: both;
	color: #401200;
	font-size: 17px;
	font-weight: bold;
}

@media screen and (max-width: 640px) {
	.header-primary .states {
		font-size: 22px;
	}
}

.header-primary .states div {
	position: relative;
	padding-left: 100px;
	display: inline-block;
	padding-right: 15px;
}

@media screen and (max-width: 640px) {
	.header-primary .states div {
		padding-left: 130px;
	}
}

.header-primary .states .address {
	padding-left: 0 !important;
	display: block !important;
}

.header-primary .states div span {
	width: 90px;
	height: 22px;
	background-color: #ac851c;
	text-align: center;
	line-height: 21px;
	font-size: 14px;
	position: absolute;
	top: 4px;
	left: 0;
	color: #ffffff;
	font-weight: normal;
	border-radius: 4px;
}

@media screen and (max-width: 640px) {
	.header-primary .states div span {
		font-size: 18px;
		width: 120px;
		height: 30px;
		line-height: 28px;
	}
}

.header-primary .option {
	position: absolute;
	top: 0;
	right: 0;
}

@media screen and (max-width: 1010px) {
	.header-primary .option {
		position: relative;
		top: inherit;
		right: inherit;
		text-align: center;
		padding-top: 15px;
	}
}

.header-primary .option .webapo-button {
	background-image: url("../image/header/24time.png");
	width: 413px;
	height: 55px;
	position: relative;
	margin-bottom: 15px;
}

@media screen and (max-width: 1010px) {
	.header-primary .option .webapo-button {
		display: inline-block;
		margin-bottom: 0;
	}
}

.header-primary .option .webapo-button a {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	overflow: hidden;
	white-space: nowrap;
	text-indent: 100%;
}

.header-primary .option .tel {
	background-image: url("../image/header/tel.png");
	width: 413px;
	height: 51px;
	position: relative;
}

@media screen and (max-width: 1010px) {
	.header-primary .option .tel {
		display: inline-block;
	}
}

.header-primary .option .tel a {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	overflow: hidden;
	white-space: nowrap;
	text-indent: 100%;
}


/*------------------------------------------------------------------------------------------------------------------
　mainvisual
-------------------------------------------------------------------------------------------------------------------*/

#mainvisual {
	width: 100%;
	background-color: #fffbf3;
}

@media screen and (max-width: 640px) {
	#mainvisual {
	}
}

#mainvisual .slider-primary {
	max-width: 1033px;
	width: 100%;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

#mainvisual .panel {
	width: 100%;
	height: 445px;
	overflow: hidden;
	white-space: nowrap;
	text-indent: 300%;
}

@media screen and (max-width: 1030px) {
	#mainvisual .panel {
		height: 0;
		background-position: center top;
		background-repeat: no-repeat;
		background-size: contain;
		padding-top: 43.203%;
	}
}

@media screen and (max-width: 640px) {
	#mainvisual .panel {
		height: 500px;
		padding-top: 0;
	}
}

#mainvisual .panel:nth-of-type(1) { background-image: url("../image/mainvisual/00.jpg?upd=20240920"); }

@media screen and (max-width: 640px) {
	#mainvisual .panel:nth-of-type(1) { background-image: url("../image/mainvisual/00_sp.jpg?upd=20240920"); }
}

/*------------------------------------------------------------------------------------------------------------------
　navi
-------------------------------------------------------------------------------------------------------------------*/

nav {
	width: 100%;
	height: 73px;
	background-color: #ffffff;
	box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.11);
}

@media screen and (max-width: 840px) {
	nav {
		display: none;
	}
}

nav ul {
	width: 100%;
	max-width: 1030px;
	height: 73px;
	list-style: none;
	margin: 0;
	padding: 0;
	position: relative;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

nav ul li a {
	width: 16.666%;
	height: 73px;
	float: left;
	display: block;
	text-align: center;
	box-sizing: border-box;
	padding-top: 13px;
	font-size: 18px;
	text-decoration: none !important;
	color: #000000 !important;
	border-right: 1px solid #eaeaea;
	transition: 0.2s;
	border-bottom: 3px solid #ffffff;
}

@media screen and (max-width: 1000px) {
	nav ul li a {
		font-size: 16px;
	}
}

nav ul li a:hover {
	border-bottom: 3px solid #ff4a00;
}

nav ul li:first-of-type a {
	border-left: 1px solid #eaeaea;
}

nav ul li a span {
	display: block;
	font-size: 12px;
	color: #a2a2a2;
}

/*------------------------------------------------------------------------------------------------------------------
　sidebar
-------------------------------------------------------------------------------------------------------------------*/

#sidebar {
	position:absolute;
	top: 0;
	left: 0;
	width: 263px;
	padding-bottom: 100px;
	transition: 0.3s;
}

@media screen and (max-width: 1030px) {
	#sidebar {
		left: 30px;
	}
}

@media screen and (max-width: 840px) {
	#sidebar {
		position: relative;
		top: inherit;
		left: inherit;
		width: 100%;
		padding-left: 30px;
		padding-right: 30px;
		margin-top: 50px;
		box-sizing: border-box;
	}
}

#sidebar .webapo-button {
	background-image: url("../image/sidebar/webapo.png");
	width: 263px;
	height: 118px;
	display: block;
	position: relative;
	margin-bottom: 30px;
}

@media screen and (max-width: 840px) {
	#sidebar .webapo-button {
		display: none;
	}
}

#sidebar .webapo-button a {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: block;
	overflow: hidden;
	white-space: nowrap;
	text-indent: 100%;
	transition: 0.2s;
}

#sidebar .webapo-button a:hover {
	background-color:rgba(255,255,255,0.3);
}

#sidebar .box {
	border: 1px solid #cecece;
	box-sizing: border-box;
	margin-bottom: 30px;
}

#sidebar .box h3 {
	border-bottom: 1px solid #cecece;
	margin: 0;
	padding: 0;
	display: block;
	font-size: 20px;
	color: #232323;
	font-weight: normal;
	padding-top: 15px;
	padding-bottom: 15px;
	padding-left: 35px;
	position: relative;
}

@media screen and (max-width: 640px) {
	#sidebar .box h3 {
		font-size: 24px;
	}
}

#sidebar .box h3:before {
	content: "";
	width: 2px;
	height: calc(100% - 10px);
	display: block;
	position: absolute;
	top: 0;
	left: 10px;
	background-color: #fe8858;
}

#sidebar .box ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

#sidebar .box ul li {
	border-bottom: 1px dotted #cecece;
}

#sidebar .box ul li:last-of-type {
	border-bottom: none;
}

#sidebar .box ul li a {
	display: block;
	text-decoration: none;
	padding-top: 10px;
	padding-bottom: 10px;
	padding-left: 30px;
	padding-right: 15px;
	color: #232323;
}

#sidebar .box select {
	width: 100%;
}

.select-form {
	padding: 20px;
}

.sidebar-bana-primary {
	margin-bottom: 30px;
}

.sidebar-bana-primary .bana {
	border: 1px solid #cecece;
	box-sizing: border-box;
	width: 100%;
	overflow: hidden;
}

.sidebar-bana-primary .bana img {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.sidebar-bana-primary .bana img:hover {
	opacity: 0.7;
}

#sidebar .box .content {
	padding: 10px;
}

@media screen and (max-width: 840px) {
	#sidebar .box .content {
		text-align: center;
	}
}

#sidebar .box h4 {
	margin: 0;
	padding: 0;
	display: block;
	padding-bottom: 10px;
}

#sidebar .box p {
	margin: 0;
	padding: 0;
	margin-bottom: 10px;
}

#sidebar .box .content .tel {
	margin-bottom: 15px;
}

#sidebar .box .content .webapo-button2 {
	margin-bottom: 15px;
}

@media screen and (max-width: 840px) {
	#sidebar .box iframe {
		height: 450px;
	}
}

.side-blockB.ekiten1 {
	display: block;
	margin-bottom: 30px;
}
.side-blockB.ekiten2 {
	display: block;
	margin-bottom: 15px;
}

.comic-bana {
	background-image: url("../image/sidebar/comic.png?upd=20240909");
	width: 262px;
	height: 160px;
	margin-bottom: 22px;
	display: block;
	position: relative;
}

@media screen and (max-width: 840px) {
	.comic-bana {
		background-image: url("../image/sidebar/comic_sp.png?upd=20240909");
		background-position: center top;
		background-repeat: no-repeat;
		background-size: contain;
		width: 100%;
		height: 0;
		padding-top: 21.8476%;
	}
}

.comic-bana a {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.comic-bana a:hover {
	background-color: rgba(255,255,255,0.3);
}



/*------------------------------------------------------------------------------------------------------------------
　sp-navi
-------------------------------------------------------------------------------------------------------------------*/

.navi-button {
	display: none;
}

@media screen and (max-width: 840px) {
	.navi-button {
		background-color:#252525;
		width:90px;
		height:90px;
		box-sizing:border-box;
		padding-left:20px;
		padding-top:22px;
		z-index:99;
		display:block;
		transform:scale(0.7,0.7);
		transform-origin:left top;
		position: fixed;
		top: 0;
		left: 0;
	}
	.navi-button:hover {
		cursor:pointer;
	}
}

.menu-trigger,
.menu-trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}
.menu-trigger {
  position: relative;
  width: 50px;
  height: 44px;
}
.menu-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 4px;
  background-color: #fff;
  border-radius: 4px;
}
.menu-trigger span:nth-of-type(1) {
  top: 0;
}
.menu-trigger span:nth-of-type(2) {
  top: 20px;
}
.menu-trigger span:nth-of-type(3) {
  bottom: 0;
}

.menu-trigger span:nth-of-type(1) {
  -webkit-animation: menu-bar01 .75s forwards;
  animation: menu-bar01 .75s forwards;
}
@-webkit-keyframes menu-bar01 {
  0% {
    -webkit-transform: translateY(20px) rotate(45deg);
  }
  50% {
    -webkit-transform: translateY(20px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
  }
}
@keyframes menu-bar01 {
  0% {
    transform: translateY(20px) rotate(45deg);
  }
  50% {
    transform: translateY(20px) rotate(0);
  }
  100% {
    transform: translateY(0) rotate(0);
  }
}
.menu-trigger span:nth-of-type(2) {
  transition: all .25s .25s;
  opacity: 1;
}
.menu-trigger span:nth-of-type(3) {
  -webkit-animation: menu-bar02 .75s forwards;
  animation: menu-bar02 .75s forwards;
}
@-webkit-keyframes menu-bar02 {
  0% {
    -webkit-transform: translateY(-20px) rotate(-45deg);
  }
  50% {
    -webkit-transform: translateY(-20px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
  }
}
@keyframes menu-bar02 {
  0% {
    transform: translateY(-20px) rotate(-45deg);
  }
  50% {
    transform: translateY(-20px) rotate(0);
  }
  100% {
    transform: translateY(0) rotate(0);
  }
}
.menu-trigger.active span:nth-of-type(1) {
  -webkit-animation: active-menu-bar01 .75s forwards;
  animation: active-menu-bar01 .75s forwards;
}
@-webkit-keyframes active-menu-bar01 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(20px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(20px) rotate(45deg);
  }
}
@keyframes active-menu-bar01 {
  0% {
    transform: translateY(0) rotate(0);
  }
  50% {
    transform: translateY(20px) rotate(0);
  }
  100% {
    transform: translateY(20px) rotate(45deg);
  }
}
.menu-trigger.active span:nth-of-type(2) {
  opacity: 0;
}
.menu-trigger.active span:nth-of-type(3) {
  -webkit-animation: active-menu-bar03 .75s forwards;
  animation: active-menu-bar03 .75s forwards;
}
@-webkit-keyframes active-menu-bar03 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(-20px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(-20px) rotate(-45deg);
  }
}
@keyframes active-menu-bar03 {
  0% {
    transform: translateY(0) rotate(0);
  }
  50% {
    transform: translateY(-20px) rotate(0);
  }
  100% {
    transform: translateY(-20px) rotate(-45deg);
  }
}

#sp-navi .sp-navi-primary {
	width:100%;
	height:100%;
	background-color:rgba(255,255,255,0.9);
	display:block;
	transition:0.3s;
	position:fixed;
	top:0;
	left:-100%;
	z-index:98;
}

#sp-navi.active .sp-navi-primary {
	left:0;
}

#sp-navi .sp-navi-primary ul {
	margin: 0;
	transition:0.3s;
	list-style: none;
	box-sizing: border-box;
	width: calc(100% - 100px);
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-top: 80px;
	background-color: #ffffff;
	padding: 30px;
	border: 5px solid #fe8858;
}

#sp-navi .sp-navi-primary ul li a {
	display: block;
	text-align: center;
	padding-bottom: 15px;
	margin-bottom: 15px;
	text-decoration: none;
	color: #333333;
	font-size: 24px;
	border-bottom: 2px solid #eeeeee;
	font-weight: bold;
}

#sp-navi .sp-navi-primary ul li a span {
	display: block;
	font-size: 18px;
	color: #fe8858;
}

#sp-navi .sp-navi-primary .option {
	text-align: center;
	display: block;
	width: 413px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 30px;
	margin-bottom: 30px;
}

#sp-navi .sp-navi-primary .webapo-button {
	background-image: url("../image/header/24time.png");
	width: 413px;
	height: 55px;
	position: relative;
	margin-bottom: 15px;
}

#sp-navi .sp-navi-primary .webapo-button a {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	overflow: hidden;
	white-space: nowrap;
	text-indent: 100%;
}

#sp-navi .sp-navi-primary .tel {
	background-image: url("../image/header/tel.png");
	width: 413px;
	height: 51px;
	position: relative;
}

#sp-navi .sp-navi-primary .tel a {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	overflow: hidden;
	white-space: nowrap;
	text-indent: 100%;
}

.sp-subnavi {
}

.sp-subnavi h3 {
	color: #ffffff;
	background-color: #fe8858;
	margin: 0;
	padding: 0;
	padding-top: 10px;
	padding-bottom: 10px;
	margin-bottom: 20px;
	text-align: center;
	display: block;
}

.sp-subnavi ul {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
	border: none !important;
}

.sp-subnavi ul li {
}


/*------------------------------------------------------------------------------------------------------------------
　footer
-------------------------------------------------------------------------------------------------------------------*/

#footer {
	width:100%;
	text-align: center;
	position: fixed;
	bottom:0;
	left: 0;
	height: 40px;
	line-height: 38px;
	color: #ffffff;
	background-color: #fe8858;
	z-index: 99;
}

.topback a {
	position:fixed;
	bottom:60px;
	right:30px;
	background-color: #ec442c;
	width:70px;
	height:70px;
	display:block;
	color: #ffffff !important;
	text-decoration: none !important;
	font-size: 24px;
	text-align: center;
	line-height: 67px;
	transition: 0.2s;
}

.topback a:hover {
	bottom: 70px;
}


/*------------------------------------------------------------------------------------------------------------------
　additional
-------------------------------------------------------------------------------------------------------------------*/

#contents-primary {
	position:relative;
	max-width: 1030px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
}

#contents {
	position:relative;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	padding-left: 303px;
	margin-top: 50px;
	padding-bottom: 100px;
	box-sizing: border-box;
}

@media screen and (max-width: 840px) {
	#contents {
		padding-left: 0;
		padding-bottom: 0;
	}
}

#contents h2 {
	font-size: 48px;
	color: #484848;
	font-weight: normal;
	text-align: center;
	margin: 0;
	padding: 0;
	padding-bottom: 15px;
	border-bottom: 3px solid #ff6526;
	margin-bottom: 50px;
	font-family: 'NotoSerifCJKjp-Regular';
}

#contents h2 span {
	position: relative;
}

#contents h2 span:after {
	background-color: #fff3a1;
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 40px;
	z-index: -1;
}

#contents h3 {
	color: #ff6526;
	text-align: left;
	font-weight: normal;
	margin: 0;
	padding: 0;
	font-size: 24px;
}

.subpage .content h3 {
	border-bottom: 2px solid #ff6526;
	padding-bottom: 15px !important;
	margin-bottom: 30px !important;
}

#contents .box {
	border: 3px solid #cecece;
	border-radius: 10px;
	padding: 30px;
	box-sizing: border-box;
}

.subpage .content {
	border: 1px solid #e0e0e0;
	box-sizing: border-box;
	padding: 30px;
	margin-bottom: 30px;
}

.subpage .content p {
	margin: 0;
	padding: 0;
	padding-bottom: 20px;
}

.subpage .content .title {
	margin: 0;
	padding: 0;
	padding-top: 10px;
	padding-bottom: 10px;
	padding-left: 20px;
	padding-right: 20px;
	margin-bottom: 30px;
	background-color: #fe8858;
	border-left: 3px solid #ff4b00;
	font-size: 26px;
	color: #ffffff;
	font-weight: bold;
	position: relative;
}

.subpage .content p {
	margin: 0;
	padding: 0;
	padding-bottom: 20px;
}

@media screen and (max-width: 640px) {
	.subpage .content ul li p {
		font-size: 24px;
	}
}

.subpage .content .mv {
	width: calc(100% + 60px);
	margin-left: -30px;
	margin-top: -30px;
	margin-bottom: 30px !important;
}

.subpage .content .page-comment {
	margin-bottom: 30px;
	padding: 30px;
	border: 1px solid #fe8858;
	box-sizing: border-box;
	text-align: center;
	font-size: 20px;
}

@media screen and (max-width: 640px) {
	.subpage .content .page-comment {
		font-size: 24px;
		text-align: left;
	}
}

#single h2, h2.archives {
	font-size: 36px !important;
	color: #ff6526 !important;
	border-top: 2px solid #ff6526 !important;
	border-bottom: 1px solid #cccccc !important;
	padding-top: 10px !important;
	margin-bottom: 30px !important;
}

#single h3 {
	font-weight: bold;
}

.subpage .content h3.archives {
	border-bottom: none !important;
	margin-bottom: 20px !important;
	padding-bottom: 0 !important;
}

#single .archives h3 {
	display: block;
}

#single h4 {
	color: #ff6526;
	font-size: 22px;
	padding: 0;
	margin: 0;
	padding-bottom: 0 !important;
	margin-bottom: 10px !important;
}

#single h5 {
	background-color: #ff6526;
	color: #ffffff;
	display: inline-block;
	margin: 0;
	margin-bottom: 20px;
	padding: 10px;
	padding-left: 20px;
	padding-right: 20px;
	text-align: center;
	font-size: 18px;
}

#single h6 {
	font-size: 22px;
	color: #333333;
	margin: 0;
	padding: 0;
	margin-bottom: 10px;
}

#single .content p:last-of-type {
	padding-bottom: 0;
	margin-bottom: 0;
}

#single .eyecatch {
	width: 100%;
	height: 260px;
	background-position: center top;
	background-repeat: no-repeat;
	background-size: cover;
	margin-bottom: 30px;
}

/*----------------------------------------------------------------------------
   home
------------------------------------------------------------------------------*/

.corona-box {
	background-image: url("../image/contents/top/coronabox-back.png");
	border-radius: 15px;
	padding: 20px;
	margin-bottom: 30px;
	box-sizing: border-box;
}

.corona-box .title {
	margin: 0;
	padding: 0;
	display: block;
	overflow: hidden;
	white-space: nowrap;
	text-indent: 100%;
	background-image: url("../image/contents/top/coronabox-title.png");
	width: 353px;
	height: 36px;
	margin-left: auto;
	margin-right: auto;
	border-bottom: none !important;
}

.corona-box p {
	color: #ffffff;
	display: block;
	text-align: center;
}

.corona-attack {
	background-color: #ffffff;
	box-sizing: border-box;
	padding: 25px;
}

.corona-box .list-primary {
	width: calc(100% + 15px);
}

.corona-box .list-primary .list {
	width: calc(33.333% - 15px);
	margin-right: 15px;
	float: left;
	box-sizing: border-box;
	border: 1px solid #cccccc;
}

@media screen and (max-width: 640px) {
	.corona-box .list-primary {
		width: 100%;
	}
	.corona-box .list-primary .list {
		width: 100%;
		float: none;
		margin-right: 0;
		margin-bottom: 15px;
	}
}

.corona-box .list-primary .list img {
	display: block;
	margin-left: auto;
	margin-right: auto;
	max-width: 100%;
}

.corona-box .list-primary .list p {
	text-align: center;
	font-size: 14px;
	color: #d90000;
}

@media screen and (max-width: 1060px) {
	.corona-box .list-primary .list p {
		padding-left: 15px;
		padding-right: 15px;
	}
	.corona-box .list-primary .list p br {
		display: none;
	}
}

@media screen and (max-width: 640px) {
	.corona-box .list-primary .list p {
		font-size: 24px;
		text-align: center;
		margin-top: 0;
		margin-bottom: 10px;
	}
}

.top-information {
	border: 1px solid #e0e0e0;
	box-sizing: border-box;
	padding: 30px;
	margin-bottom: 30px;
}

.top-information .title {
	margin: 0;
	padding: 0;
	border-bottom: 1px solid #e0e0e0;
	padding-top: 15px;
	padding-bottom: 15px;
	padding-left: 30px;
	margin-top: -30px;
	margin-bottom: 25px;
	font-weight: normal;
	font-size: 30px;
	color: #5a5959;
	position: relative;
}

.top-information .title:before {
	content: "";
	width: 2px;
	height: calc(100% - 10px);
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	background-color: #fe8858;
}

.top-information ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.top-information ul li {
	border-bottom: 1px dotted #e0e0e0;
	padding-bottom: 15px;
	margin-bottom: 15px;
	display: block;
	position: relative;
}

.top-information ul li:last-of-type {
	border-bottom: none;
	margin-bottom: 0;
	padding-bottom: 0;
}

.top-information ul li span {
	position: absolute;
	top: 3px;
	left: 0;
	color: #232323;
}

.top-information ul li p {
	margin: 0;
	padding: 0;
	padding-left: 128px;
	font-size: 18px;
}

@media screen and (max-width: 640px) {
	.top-information ul li p {
		font-size: 24px;
		padding-left: 138px;
	}
}

.top-cp {
	margin-bottom: 50px;
}

.top-cp img {
	max-width: 100%;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.top-webapo-button {
	margin-bottom: 30px;
}

.top-webapo-button img {
	display: block;
	margin-left: auto;
	margin-right: auto;
	max-width: 100%;
}

.top-yorokobi {
}

.top-yorokobi img {
	display: block;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
}

.top-mediain {
	text-align: center;
	margin-bottom: 50px;
}

.top-mediain img {
	max-width: 100%;
}

.top-tamokami {
	background-color: #fff8e9;
	padding: 30px;
	margin-bottom: 30px;
	position: relative;
}

.top-tamokami .thum {
	float: left;
	position: absolute;
	top: 0;
	left: 0;
}

@media screen and (max-width: 1030px) {
	.top-tamokami .thum {
		float: none;
		position: relative;
		top: inherit;
		left: inherit;
		display: block;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 30px;
	}
}

.top-tamokami .detail {
	padding-left: 342px;
}

@media screen and (max-width: 1030px) {
	.top-tamokami .detail {
		padding-left: 0;
	}
	.top-tamokami .detail img {
		display: block;
		margin-left: auto;
		margin-right: auto;
	}
}

.hosp-name {
	width: 151px;
	height: 45px;
	line-height: 45px;
	color: #ffffff;
	background-color: #565656;
	text-align:center;
	margin-left: auto;
	margin-right: auto;
	display: block;
	font-family: 'NotoSerifCJKjp-Regular';
	margin-bottom: 20px;
}

@media screen and (max-width: 640px) {
	.hosp-name {
		width: 250px;
		height: 70px;
		line-height: 70px;
	}
}

.top-othermedia {
	background-color: #fff8e9;
	padding: 30px;
}

.top-othermedia img {
	max-width: 100%;
}

.top-kuchikomi-mv {
	text-align: center;
	margin-bottom: 50px;
}

.top-kuchikomi-mv img {
	max-width: 100%;
}

.top-onayami {
	margin-bottom: 50px;
}

@media screen and (max-width: 1300px) and (min-width: 741px) {
	.top-onayami img {
		max-width: 100%;
	}
}

@media screen and (max-width: 700px) {
	.top-onayami img {
		max-width: 100%;
	}
}

@media screen and (max-width: 1300px) and (min-width: 741px) {
	.top-onlyone img {
		display: block;
		max-width: 100%;
	}
}

@media screen and (max-width: 740px) {
	.top-onlyone img {
		display: block;
		max-width: 100%;
	}
}

.top-profile {
	background-image: url("../image/contents/top/profile-back.png");
	background-position: top right;
	background-repeat: no-repeat;
	position: relative;
	min-height: 626px;
	padding-right: 250px;
}

.top-profile .ownar {
	position: absolute;
	top: 0;
	right: 0;
}

@media screen and (max-width: 640px) {
	.top-profile {
		padding-right: 150px;
	}
	.top-profile .ownar {
		right: -44px;
		top: 75px;
		width: 250px;
	}
}

.top-profile p {
	font-family: 'NotoSerifCJKjp-Regular';
	padding-left: 30px;
	text-shadow: 
    white 2px 0px,  white -2px 0px,
    white 0px -2px, white 0px 2px,
    white 2px 2px , white -2px 2px,
    white 2px -2px, white -2px -2px,
    white 1px 2px,  white -1px 2px,
    white 1px -2px, white -1px -2px,
    white 2px 1px,  white -2px 1px,
    white 2px -1px, white -2px -1px;
	display: block;
	z-index: 2;
	position: relative;
}

@media screen and (max-width: 640px) {
	.top-profile p {
		font-size: 18px;
		line-height: 26px;
	}
}

.top-profile .text-right {
	position: relative;
	margin-top: 30px;
}

@media screen and (max-width: 640px) {
	.top-profile .text-right {
		text-align: left;
		margin-left: 28px;
	}
}

.top-promiss {
	background-image: url("../image/contents/top/promis-header.png");
	background-repeat: no-repeat;
	background-position: center top;
	padding-top: 446px;
}

@media screen and (max-width: 960px) and (min-width: 840px) {
	.top-promiss {
		background-size:contain;
		padding-top: 70%;
	}
}

.promiss-list-primary {
	padding-left: 20px;
	padding-right: 20px;
}

.promiss-list-primary .list {
	background-color: #fff3e1;
	border-radius: 10px;
	padding: 30px;
	margin-bottom: 30px;
	position: relative;
	padding-left: 271px;
	min-height: 208px;
}

.promiss-list-primary .list .thum {
	width: 211px;
	height: 208px;
	position: absolute;
	top: 30px;
	left: 30px;
}

@media screen and (max-width: 1000px) and (min-width: 840px) {
	.promiss-list-primary .list {
		padding-left: 30px;
		padding-right: 30px;
	}
	.promiss-list-primary .list .thum {
		display: block;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 30px;
		position: relative;
		top: inherit;
		left: inherit;
	}
}

@media screen and (max-width: 740px) {
	.promiss-list-primary .list {
		padding-left: 30px;
		padding-right: 30px;
	}
	.promiss-list-primary .list .thum {
		display: block;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 30px;
		position: relative;
		top: inherit;
		left: inherit;
	}
}

.promiss-list-primary .list .detail {
}

.promiss-list-primary .list .detail h3 {
	margin: 0;
	padding: 0;
	margin-top: -6px;
	margin-bottom: 15px;
	font-size: 20px;
	color: #ff6526;
	font-family: 'NotoSerifCJKjp-Regular';
}

.promiss-list-primary .list .detail p {
	margin: 0;
	padding: 0;
	font-family: 'NotoSerifCJKjp-Regular';
}

.promiss-list-primary .list .detail p span {
	color: #ff0000;
}

.top-flow {
	padding-left: 20px;
	padding-right: 20px;
	margin-bottom: 30px;
}

@media screen and (max-width: 640px) {
	.top-flow {
		padding-left: 0;
		padding-right: 0;
	}
}

.flow-list-primary {
	width: calc(100% + 30px);
}

.flow-list-primary img {
	float: left;
	width: calc(50% - 30px);
	margin-right: 30px;
	margin-bottom: 30px;
	max-width: 100%;
}

.youtube {
	margin-bottom: 50px;
}

.youtube .resp {
     position: relative;
     padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
     height: 0;
     overflow: hidden;
}
 
.youtube .resp iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}

.top-notrecom {
	padding-bottom: 50px;
}

.notrecom-list-primary {
}

.notrecom-list-primary .list {
	padding-bottom: 15px;
	margin-bottom: 15px;
	border-bottom: 1px solid #cccccc;
}

.notrecom-list-primary .list:last-of-type {
	border-bottom: none;
	margin-bottom: 0;
	padding: 0;
}

.comic {
	margin-bottom: 30px;
}

.comic h2 {
	line-height: 60px !important;
}

.top-qa .qa-list-primary {
	padding-bottom: 20px;
}

.top-qa .qa-list-primary .list {
	background-color: #fff3e1;
	border-radius: 10px;
	padding: 30px;
	margin-bottom: 30px;
	overflow: hidden;
}

.top-qa .qa-list-primary .list .title {
	margin-left: -30px;
	margin-top: -10px;
}

@media screen and (max-width: 780px) {
	.top-qa .qa-list-primary .list .title img {
		max-width: 100%;
	}
}

.top-qa .qa-list-primary .list p {
	margin: 0;
	padding: 0;
	padding-top: 30px;
}

.top-access {
	padding-bottom: 50px;
}

.top-access iframe {
	width: 100%;
	height: 530px;
	margin-bottom: 30px;
}

.access-plate {
	display: block;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	z-index: 2;
}

@media screen and (max-width: 740px) {
	.access-plate {
		max-width: 100%;
	}
}


/*----------------------------------------------------------------------------
   flow - 施術の流れ
------------------------------------------------------------------------------*/

#flow .flow-title {
	font-size: 28px;
	position: relative;
	padding-left: 95px;
	padding-bottom: 15px;
	padding-top: 11px;
	border-bottom: 2px dotted #cccccc;
	margin-bottom: 30px;
	min-height: 70px;
	color: #fe8858;
	font-weight: bold;
}

#flow .flow-title span {
	position: absolute;
	top: 0;
	left: 0;
	background-color: #fe8858;
	width: 70px;
	height: 70px;
	line-height: 70px;
	text-align: center;
	font-size: 32px;
	color: #ffffff;
	font-weight: bold;
}

#flow .content ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

#flow .content ul li {
	margin-bottom: 40px;
	min-height: 320px;
}

#flow .content ul li:last-of-type {
	margin-bottom: 0;
	min-height: inherit;
}

#flow .content ul li p {
	padding-left: 0;
	overflow: hidden;
}

#flow .content ul li .flow-list-img {
	width: 300px;
	float: right;
	margin-left: 30px;
	margin-bottom: 30px;
}

#flow .content ul li:last-of-type .flow-list-img {
	margin-bottom: 0;
}

@media screen and (max-width: 1000px) {
	#flow .content ul li .flow-list-img {
		float: none;
		display: block;
		margin-left: auto;
		margin-right: auto;
	}
	#flow .content ul li:last-of-type .flow-list-img {
		margin-bottom: 30px;
	}
}

.flow-point {
	background-color: #fff8e8;
	padding: 30px;
	margin-bottom: 40px;
}

.flow-point h3 {
	padding-bottom: 20px !important;
	background-image: url("../image/contents/flow/icon-point.png");
	background-position: left;
	background-repeat: no-repeat;
	padding-left: 60px !important;
	padding-top: 17px !important;
	margin-top: -17px !important;
}

.flow-point p {
	margin: 0;
	padding: 0;
	padding-bottom: 20px;
}

.flow-point p:last-of-type {
	padding-bottom: 0;
}


/*----------------------------------------------------------------------------
   price - 施術料金
------------------------------------------------------------------------------*/

.price-table {
}

.price-table dt {
	font-size: 24px;
	border-bottom: 1px solid #cccccc;
	padding-bottom: 15px;
	margin-bottom: 15px;
	color: #ff4b00;
	font-weight: bold;
}

.price-table ul {
	list-style: none;
	margin: 0;
	padding: 0;
	margin-bottom: 30px;
}

.price-table ul li {
	border-bottom: 1px dotted #cccccc;
	padding-bottom: 10px;
	margin-bottom: 10px;
	position: relative;
}

.price-table ul li span:nth-of-type(1) {
	position: absolute;
	top: 0;
	left: 0;
}

.price-table ul li p {
	margin: 0;
	padding: 0;
	padding-bottom: 0 !important;
	padding-left: 148px !important;
	color: #ff0000;
}

.price-table ul li p span {
	position: relative !important;
	top: inherit !important;
	left: inherit !important;
}

@media screen and (max-width: 640px) {
	.price-table ul li span:nth-of-type(1) {
		position: relative;
		top: inherit;
		left: inherit;
	}
	.price-table ul li p {
		padding-left: 0 !important;
	}
}


/*----------------------------------------------------------------------------
   staff -　企業概要、院長さいさつ
------------------------------------------------------------------------------*/

.bio-list-primary {
}

.bio-list-primary .ornar-name {
	font-size: 32px;
	font-family: 'NotoSerifCJKjp-Regular';
	padding: 30px;
	padding-top: 15px;
	text-align: center;
}

.bio-list-primary .ornar-name span {
	font-size: 56px;
	display: inline-block;
	color: #28b69e;
	padding-left: 20px;
}

.bio-list-primary .ornar-name p {
	font-size: 24px;
	color: #cccccc;
	text-align: center;
	border-top: 1px solid #cccccc;
	padding-top: 15px;
	margin-top: 15px;
}

.bio-list-primary ul {
	list-style: none;
	margin: 0;
	padding: 0;
	margin-bottom: 0;
	width: calc(100% + 10px);
}

.bio-list-primary ul li {
	border: 1px solid #cccccc;
	margin-bottom: 10px;
	position: relative;
	box-sizing: border-box;
	width: calc(50% - 10px);
	margin-right: 10px;
	margin-bottom: 10px;
	float: left;
	text-align: center;
	padding-left: 15px;
	padding-right: 15px;
	padding-top: 10px;
	padding-bottom: 10px;
	font-family: 'NotoSerifCJKjp-Regular';
}

@media screen and (max-width: 640px) {
	.bio-list-primary ul {
		width: 100%;
	}
	.bio-list-primary ul li {
		width: 100%;
		float: none;
	}
}

.bio-list-primary ul li span {
	position: absolute;
	top: 0;
	left: 0;
}

.bio-list-primary ul li p {
	margin: 0;
	padding: 0;
	padding-bottom: 0 !important;
}

@media screen and (max-width: 640px) {
	.bio-list-primary ul li span {
		position: relative;
		top: inherit;
		left: inherit;
	}
	.bio-list-primary ul li p {
		padding-left: 0 !important;
	}
}

.staff-profile {
}

.staff-profile ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.staff-profile ul li {
	border-bottom: 1px solid #cccccc;
	padding-bottom: 15px;
	margin-bottom: 15px;
	position: relative;
}

.staff-profile ul li span {
	position: absolute;
	top: 0;
	left: 0;
}

.staff-profile ul li p {
	margin: 0;
	padding: 0;
	padding-left: 120px !important;
	padding-bottom: 0 !important;
}

@media screen and (max-width: 640px) {
	.staff-profile ul li p {
		padding-left: 140px !important;
	}
}


/*----------------------------------------------------------------------------
   access -　アクセス
------------------------------------------------------------------------------*/

.access-list-primary {
	padding-bottom: 30px;
}

.access-list-primary ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.access-list-primary ul li {
	border-bottom: 1px solid #cccccc;
	padding-bottom: 15px;
	margin-bottom: 15px;
	position: relative;
}

.access-list-primary ul li span {
	position: absolute;
	top: 0;
	left: 0;
}

.access-list-primary ul li p {
	margin: 0;
	padding: 0;
	padding-left: 120px !important;
	padding-bottom: 0 !important;
}

@media screen and (max-width: 640px) {
	.access-list-primary ul li p {
		padding-left: 140px !important;
	}
}

.str-flow {
	width: calc(100% + 30px);
	margin-bottom: 50px;
}

.str-flow .flow {
	width: calc(50% - 30px);
	margin-right: 30px;
	margin-bottom: 30px;
	float: left;
}

.str-flow .flow img {
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 15px;
	display: block;
}

.str-flow .flow p {
	margin: 0;
	padding: 0;
}

/*----------------------------------------------------------------------------
   about -　アクセス
------------------------------------------------------------------------------*/

.about-catch {
	font-family: 'NotoSerifCJKjp-Regular';
	font-size: 48px;
	text-align: center;
	display: block;
	margin-bottom: 30px;
}

.about-catch span {
	display: block;
	font-size: 24px;
	padding-top: 15px;
}

.about-symptoms {
	list-style: none;
	margin: 0;
	padding: 0;
	width: calc(100% + 30px);
}

.about-symptoms li {
	width: calc(33.333% - 30px);
	display: block;
	text-align: center;
	float: left;
	margin-right: 30px;
	margin-bottom: 30px;
}

.about-symptoms li:nth-child(4), .about-symptoms li:nth-child(5)  {
	width: calc(50% - 30px);
}

.about-symptoms li img {
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 15px !important;
}

@media screen and (max-width: 900px) {
	.about-symptoms li {
		width: calc(50% - 30px) !important;
	}
}


/*----------------------------------------------------------------------------
   comparison -　他院との違い
------------------------------------------------------------------------------*/

.comparison-list-primary {
}

.comparison-list-primary h3 {
	font-size: 28px !important;
}

.comparison-list-primary dd {
	width: calc(100% + 30px);
}

.comparison-list-primary ul {
	list-style: none;
	margin: 0;
	padding: 0;
	margin-bottom: 30px;
	width: calc(50% - 30px);
	margin-right: 30px;
	float: left;
}

@media screen and (max-width: 700px) {
	.comparison-list-primary dd {
		width: 100%;
	}
	.comparison-list-primary ul {
		width: 100%;
		float: none;
		margin-right: 0;
	}
}

.comparison-list-primary ul li {
	border-bottom: 1px solid #cccccc;
	padding-bottom: 15px;
	margin-bottom: 15px;
}

.comparison-list-primary ul li.other {
	background-color: #eeeeee;
	padding-left: 20px;
	padding-right: 20px;
	padding-top: 10px;
	padding-bottom: 10px;
	text-align: center;
	margin-bottom: 20px;
	border-bottom: none;
}

.comparison-list-primary ul li.todate {
	background-color: #fe8858;
	padding-left: 20px;
	padding-right: 20px;
	padding-top: 10px;
	padding-bottom: 10px;
	text-align: center;
	margin-bottom: 20px;
	border-bottom: none;
	color: #ffffff;
	font-weight: bold;
}


/*----------------------------------------------------------------------------
   choose-reason -　当院が選ばれる理由
------------------------------------------------------------------------------*/

.choose-list-primary {
}

.choose-list-primary dl {
	padding-bottom: 30px;
	min-height: 300px;
}

.choose-list-primary dl dt {
	position: relative;
	padding-left: 90px;
	font-size: 25px;
	color: #fe8858;
	padding-top: 13px;
	margin-bottom: 45px;
}

.choose-list-primary dl dt span {
	position:absolute;
	top: 0;
	left: 0;
	width: 70px;
	height: 70px;
	line-height: 70px;
	color: #ffffff;
	text-align: center;
	background-color: #fe8858;
	font-size: 24px;
}

.choose-list-primary dl dd img {
}

/*----------------------------------------------------------------------------
   s-face -　小顔整体
------------------------------------------------------------------------------*/

.kogao-merit {
}

.kogao-merit ul {
	list-style: none;
	margin: 0;
	padding: 0;
	width: calc(100% + 10px);
}

.kogao-merit ul li {
	width: calc(33.333% - 10px);
	margin-right: 10px;
	margin-bottom: 10px;
	float: left;
	background-color: #ffffff;
	padding: 15px;
	box-sizing: border-box;
	text-align: center;
	border: 2px dotted #fe8858;
	color: #ec442c;
	font-weight: bold;
}

@media screen and (max-width: 1030px) {
	.kogao-merit ul li {
		width: calc(50% - 10px);
	}
}

@media screen and (max-width: 700px) {
	.kogao-merit ul {
		width: 100%;
	}
	.kogao-merit ul li {
		width: 100%;
	}
}

.face-onayami ul {
	list-style: none;
	margin: 0;
	padding: 0;
	padding-right: 330px;
}

@media screen and (max-width: 1000px) {
	.face-onayami ul {
		padding-right: 0;
	}
}

.face-onayami ul li {
	padding-bottom: 10px;
	margin-bottom: 10px;
	border-bottom: 1px dotted #cccccc;
}

.face-onayami ul li:last-of-type {
	border-bottom: none;
}

.kogao-price-table table td {
	color: #666666;
}

.kogao-price-table table td p {
	margin: 0;
	padding: 0;
	padding-bottom: 0 !important;
	color: #ff4a00;
}

.kogao-price-table table td p span {
	color: #ff0000;
}

.kogao-price-table table td p span strong {
	font-size: 24px;
}

/*----------------------------------------------------------------------------
   experience -　体験された方々のご紹介
------------------------------------------------------------------------------*/

.voice-list-primary {
}

.voice-list-primary .list {
	position: relative;
	margin-bottom: 30px;
}

.voice-list-primary .list .img-auto-width img {
	width: calc(33.333% - 30px);
}

.voice-list-primary .list p {
	padding-bottom: 20px;
}

.voice-list-primary .list p:last-of-type {
	padding-bottom: 0;
}

.voice-list-primary .list .youtube, .voice-movie-list-primary .list .youtube {
	position: relative;
    padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
    height: 0;
    overflow: hidden;
	margin-bottom: 30px;
}

.voice-list-primary .list .youtube iframe, .voice-movie-list-primary .list .youtube iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
	 border: none;
}

.face-link-button a {
	display: block;
	background-color: #24b199;
	padding: 20px;
	color: #ffffff;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	font-size: 18px;
	background-image: url("../image/contents/experience/ar.png");
	background-position: right 20px center;
	background-repeat: no-repeat;
	transition: 0.2s;
}

.face-link-button a:hover {
	background-color: #38d5ba;
}

.voice-movie-list-primary {
	width: calc(100% + 30px);
}

.voice-movie-list-primary .list {
	width: calc(50% - 30px);
	margin-right: 30px;
	margin-bottom: 30px;
	float: left;
}

@media screen and (max-width: 1000px) and (min-width: 841px) {
	.voice-movie-list-primary {
		width: 100%;
	}

	.voice-movie-list-primary .list {
		width: 100%;
		margin-right: 0;
		margin-bottom: 30px;
		float: none;
	}
}
@media screen and (max-width: 740px) {
	.voice-movie-list-primary {
		width: 100%;
	}

	.voice-movie-list-primary .list {
		width: 100%;
		margin-right: 0;
		margin-bottom: 30px;
		float: none;
	}
}

.voice-movie-list-primary .list:last-of-type {
	margin-bottom: 0;
}

.voice-movie-list-primary .list p {
	margin: 0;
	padding: 0;
}


/*----------------------------------------------------------------------------
   face-monitor -　小顔施術モニター募集
------------------------------------------------------------------------------*/

.alart {
	background-color: #e34242;
	color: #ffffff;
	text-align: center;
	padding: 10px;
	margin-bottom: 30px;
}

.monitor-list ul {
	list-style: none;
	margin: 0;
	padding: 0;
	margin-bottom: 30px;
}

.monitor-list ul li {
	display: block;
	padding-bottom: 10px;
	margin-bottom: 10px;
	text-align: left;
	border-bottom: 1px solid #cccccc;
}

.tel-button a {
	display: block;
	background-color: #24b199;
	padding: 20px;
	color: #ffffff;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	font-size: 18px;
	background-image: url("../image/contents/experience/ar.png");
	background-position: right 20px center;
	background-repeat: no-repeat;
	transition: 0.2s;
}

@media screen and (max-width: 640px) {
	.tel-button a {
		font-size: 24px;
	}
}

.tel-button a:hover {
	background-color: #38d5ba;
}

/*----------------------------------------------------------------------------
   single archives -　投稿
------------------------------------------------------------------------------*/

.archives-list-primary {
}

.archives-list-primary .list {
	margin-bottom: 30px;
	padding-bottom: 30px;
	border-bottom: 1px solid #cccccc;
}

.archives-list-primary .list:last-of-type {
	border: none !important;
	margin-bottom: 0;
	padding-bottom: 0;
}


/*----------------------------------------------------------------------------
   customervoice -　お客様の声・口コミ
------------------------------------------------------------------------------*/

.customervoice {
}

.customervoice .list {
	position: relative;
	padding: 30px;
	background-color: #fffbf1;
	margin-bottom: 30px;
}

.customervoice .list .voice-hedder {
	height: 250px;
	margin-bottom: 20px;
}

.customervoice .list .voice-hedder .alignleft {
	position: absolute;
	top: 30px;
	left: 30px;
	width: 250px;
}

@media screen and (max-width: 640px) {
	.customervoice .list .voice-hedder {
		height: auto;
	}
	.customervoice .list .voice-hedder .alignleft {
		position: relative;
		top: inherit;
		left: inherit;
		width: 100%;
	}
}

.customervoice .list .voice-hedder .alignleft img {
	max-width: 100%;
	max-height: 250px;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.customervoice-option {
	width: calc(100% - 280px);
	float: right;
}

@media screen and (max-width: 640px) {
	.customervoice .list .voice-hedder .alignleft img {
		min-height: 350px;
	}
	.customervoice-option {
		float: none;
		width: 100%;
	}
}

.customervoice-option ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.customervoice-option ul li {
	position: relative;
	border-bottom: 1px dotted #cccccc;
	padding-bottom: 10px;
	margin-bottom: 10px;
	display: block;
}

.customervoice-option ul li span {
	position: absolute;
	top: 0;
	left: 0;
	font-weight: bold;
}

.customervoice-option ul li p {
	margin: 0 !important;
	padding: 0 !important;
	padding-left: 80px !important;
	display: block !important;
}

@media screen and (max-width: 640px) {
	.customervoice-option ul li p {
		padding-left: 110px !important;
	}
}

/*----------------------------------------------------------------------------
   zoom -　オンライン遠隔施術
------------------------------------------------------------------------------*/

#zoom .list {
	margin-bottom: 30px;
}

#zoom .list:last-of-type {
	margin-bottom: 0;
}

#zoom .zoom-title {
	font-size: 28px;
	position: relative;
	padding-left: 70px;
	padding-bottom: 15px;
	padding-top: 3px;
	border-bottom: 2px dotted #cccccc;
	margin-bottom: 20px;
	color: #fe8858;
	font-weight: bold;
}

#zoom .zoom-title span {
	position: absolute;
	top: 0;
	left: 0;
	background-color: #fe8858;
	width: 50px;
	height: 50px;
	line-height: 50px;
	text-align: center;
	font-size: 28px;
	color: #ffffff;
	font-weight: bold;
}

.zoom-itemlist {
	background-color: #fff3e1;
	border-radius: 5px;
	padding: 30px;
	margin-bottom: 50px;
}

#zoom .content ul {
	margin: 0;
	padding: 0;
	padding-left: 20px;
}

#zoom .content ul li {
	margin-bottom: 10px;
}

#zoom .content ul li:last-of-type {
	margin-bottom: 0;
	min-height: inherit;
}

.zoom-apo-link a {
	display: block;
	width: 400px;
	margin-left: auto;
	margin-right: auto;
	padding-top: 15px;
	padding-bottom: 15px;
	text-align: center;
	text-decoration: none;
	border: 3px solid #ff6526;
	border-radius: 5px;
	margin-bottom: 10px;
	color: #ff6526;
	font-weight: bold;
	font-size: 18px;
	position: relative;
	transition: 0.2s;
}

.zoom-apo-link a:hover {
	background-color: #ff6526;
	color: #ffffff;
}

.zoom-apo-link a:after {
	position: absolute;
	top: 15px;
	right: 12px;
	content: "▶";
	color: #ff6526;
	display: block;
}

.zoom-apo-link a:hover:after {
	color: #ffffff;
}

/*------------------------------------------------------------------------------------------------------------------
   symptom - 対応症状
-------------------------------------------------------------------------------------------------------------------*/
#symptom .mv {
	padding: 40px 0;
	margin-bottom: 30px;
	background-image: url("../image/contents/symptom/firstview_pc.jpg");
	background-size: cover;
	background-position: right;
}

@media screen and (max-width: 640px) {
	#symptom .mv {
		background-image: url("../image/contents/symptom/firstview_sp.jpg");
	}
}

#symptom .mv-txt {
	font-size: 32px;
	text-shadow: 0px 2px 1.92px rgb(51 51 51 / 30%);
}

@media screen and (max-width: 640px) {
	#symptom .mv-txt {
		text-shadow: 1px 0 5px rgb(255 255 255 / 80%);
	}
}

#symptom .mv-txt h2 {
	font-size: 32px;
	border-bottom: none;
	margin: 0;
	padding-bottom: 0;
	padding-left: 20px;
	color: #401200;
	font-family: inherit;
	font-weight: bold;
	text-align: left;
	line-height: 1.3;
	letter-spacing: -0.1em;
}

#symptom .mv-txt h2 strong {
	font-size: 44px;
	color: #ff6526;
	margin-right: 5px;
}

#symptom .mv-txt small span {
	padding: 0 10px;
	background: linear-gradient(transparent 70%, #38d5ba 70%);
}

#symptom .mv-txt small {
	display: inline-block;
	margin-top: 1em;
	margin-left: 20px;
	padding: 15px 20px;
	color: #401200;
	background: rgba(255, 255, 255, 0.8);
	border-top: 4px solid #ff6526;
	border-bottom: 4px solid #ff6526;
	box-shadow: 0 3px 10px rgba(255, 255, 255, 0.6);
}

.symptom-heading {
	padding: 10px 20px;
	margin-bottom: 30px;
	font-size: 26px;
	border-left: 5px solid #ff6526;
}

.symptom-title {
	position: relative;
	padding: 10px;
	background: #ff6526;
	font-size: 24px;
	text-align: center;
	color: #fff;
	border-radius: 10px;
	margin-bottom: 40px;
}

.symptom-title:after {
	position: absolute;
	bottom: -10px;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	content: '';
	border-width: 10px 10px 0 10px;
	border-style: solid;
	border-color: #ff6526 transparent transparent transparent;
}

.symptom-list {
	font-weight: bold;
	padding-left: 20px;
	margin-bottom: 40px;
	list-style-type: none;
	font-size: 18px;
}

@media screen and (max-width: 640px) {
	.symptom-list {
		padding-left: 0;
		font-size: 24px;
	}
}

.symptom-list li {
	display: flex;
}

.symptom-list li::before {
	content: '';
	width: 20px;
	height: 20px;
	display: inline-block;
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2053.54%2049.35%22%3E%3Cpath%20d%3D%22m12.04%2020.74%207.52%2012.05L51.65%2015.5%22%20style%3D%22fill%3Anone%3Bstroke%3A%23df442e%3Bstroke-miterlimit%3A10%3Bstroke-width%3A8px%22%2F%3E%3Cpath%20d%3D%22M47.35%2026.59v20.76H2V2h45.35v8.04%22%20style%3D%22fill%3Anone%3Bstroke%3A%23df442e%3Bstroke-miterlimit%3A10%3Bstroke-width%3A4px%22%2F%3E%3C%2Fsvg%3E');
	background-repeat: no-repeat;
	margin-top: 4px;
	margin-right: 10px;
	flex-shrink: 0;
}

@media screen and (max-width: 640px) {
	.symptom-list li::before {
		width: 24px;
		height: 24px;
		margin-top: 8px;
	}
}

.symptom-list li+li {
	margin-top: 1em;
	padding-top: 1em;
	border-top: 1px solid #e0e0e0;
}

#symptom h4 {
	text-align: center;
	font-size: 24px;
	background: #fffbf1;
	padding: 10px;
	border-bottom: 3px solid #ff6526;
}

@media screen and (max-width: 640px) {
	#symptom h4 br {
		display: none;
	}
}

.symptom-sec+.symptom-sec {
	margin-top: 40px;
}

.symptom-sec ul {
	font-size: 18px;
	list-style-type: none;
	padding-left: 20px;
}

@media screen and (max-width: 640px) {
	.symptom-sec ul {
		font-size: 24px;
	}
}

.symptom-sec ul li {
	display: flex;
}

.symptom-sec ul li+li {
	margin-top: 0.5em;
}

.symptom-sec ul li::before {
	content: '';
	width: 20px;
	height: 20px;
	display: inline-block;
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2050.61%2049.35%22%3E%3Cpath%20d%3D%22m13.78%2024.43%207.31%208.82%2025.77-13.92%22%20style%3D%22fill%3Anone%3Bstroke%3A%23ec642d%3Bstroke-linecap%3Around%3Bstroke-linejoin%3Around%3Bstroke-width%3A7.5px%22%2F%3E%3Cpath%20d%3D%22M46.71%2030.07c-2.42%209.92-11.37%2017.28-22.03%2017.28C12.16%2047.35%202%2037.2%202%2024.67S12.15%202%2024.68%202c7.55%200%2014.25%203.69%2018.37%209.37%22%20style%3D%22fill%3Anone%3Bstroke%3A%23ec642d%3Bstroke-linecap%3Around%3Bstroke-linejoin%3Around%3Bstroke-width%3A4px%22%2F%3E%3C%2Fsvg%3E');
	background-repeat: no-repeat;
	margin-top: 4px;
	margin-right: 10px;
	flex-shrink: 0;
}

@media screen and (max-width: 640px) {
	.symptom-sec ul li::before {
		width: 24px;
		height: 24px;
		margin-top: 8px;
	}
}

#symptom section .red {
	color: #d00;
}

.symptom-reason h5 {
	display: flex;
	align-items: center;
	background: #F6F6F6;
	padding: 20px;
}

.symptom-reason dl {
	text-align: center;
	padding-right: 20px;
	margin-right: 20px;
	position: relative;
}

.symptom-reason dl::before {
	content: '';
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 4px;
	height: 40%;
	background: #28b69e;
}

.symptom-reason dt {
	font-size: 18px;
	line-height: 1;
	color: #666666;
}

.symptom-reason dd {
	font-size: 56px;
	line-height: 1;
	color: #ff6526;
}

.symptom-reason-ttl {
	font-size: 22px;
}

.symptom-reason-ttl strong {
	color: #ff6526;
	background: linear-gradient(transparent 90%, #ff6526 90%);
}

.symptom-reason img {
	display: block;
	object-fit: contain;
	max-width: 100%;
	margin: 0 auto 40px;
}

.symptom-spacer {
	height: 40px;
}
