@charset "UTF-8";
/* *****************************************
/*+  下層・共通  +**************************
/***************************************** */
/* ヘディングタグ
----------------------------------------------------------*/
/* 
----------------------------------------------------------*/
/* wrapper
----------------------------------------------------------*/
/* .inner
----------------------------------------------------------*/
#main .inner {
	padding: 0 0 30px 20px;
}

/* contents
----------------------------------------------------------*/
#contents {
	width: 972px;
	margin: 0 auto;
	padding: 19px 14px 5px;
	background: #DCDDDD url(../images/common/bg_frame02_t.gif) no-repeat 50% 15px;
}

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

#contents {
	display: inline-block; /*IE7・Mac版IE向け */
}

#contents {
	display: block; /*Opera、Safari向け */
}

/* main
----------------------------------------------------------*/
#main {
	margin: 0 0 20px;
	padding: 15px;
	background: #fff url(../images/common/bg_frame02_b.gif) no-repeat bottom;
}

#main .heading {
	position: relative;
	margin: 0 0 20px;
	padding: 0 0 10px 20px;
	border-bottom: 1px solid #B0D6E5;
}

#main .heading02 {
	margin: 0 0 20px;
	padding: 0 0 10px 20px;
}

#main .heading .topBtn {
	position: absolute;
	right: 0px;
	bottom: 0px;
}

#main .head {
	margin: 0 0 30px;
}

/* sub
----------------------------------------------------------*/
#sub {
	overflow: hidden;
}

#sub .bottomNav {
	overflow: hidden;
}

#sub .bottomNav .list {
	float: left;
	width: 612px;
}

#sub .bottomNav .list01 {
	overflow: hidden;
	margin: 0 0 0 -7px;
	zoom: 1;
}

#sub .bottomNav .list01 li {
	float: left;
	margin: 0 0 7px 7px;
	line-height: 1;
}

#sub .bottomNav .list01 li a {
	display: block;
}

#sub .bottomNav .list01 li a:hover {
	opacity: 0.7;
}

#sub .bottomNav .list02 {
	overflow: hidden;
	margin: 0 0 0 -7px;
	zoom: 1;
}

#sub .bottomNav .list02 li {
	float: left;
	margin: 0 0 7px 7px;
}

#sub .bottomNav .bnr {
	float: right;
	width: 349px;
	line-height: 1;
}

/* アクセス
----------------------------------------------------------*/
#access .cont {
	margin: 0 0 30px;
}

#access .contInner {
	margin: 26px;
}

#access .colWrap {
	overflow: hidden;
	margin: 0 0 20px;
}

/* cont01 */
#access #cont01 .comment {
	margin: 0 0 30px;
}

#access #cont01 .figure {
	text-align: center;
}

#access #cont01 .figure img {
	margin: 0 0 15px;
}

/* cont02 */
#access #cont02 #accessMap {
	width: 888px;
	height: 382px;
}

#access #cont02 .map {
	padding: 0 0 10px;
}

#access #cont02 .moreBtn {
	text-align: right;
}

#access #cont02 .moreBtn a {
	padding: 0 0 0 20px;
	background: url(../images/common/ico_arrow01.gif) no-repeat left;
	color: #444;
}

#access #cont02 .infoCol {
	float: left;
	width: 350px;
}

#access #cont02 .infoCol .title {
	margin: 0 0 20px;
	font-size: 150%;
	font-weight: bold;
	line-height: 1.5;
}

#access #cont02 .infoCol .address {
	font-size: 118%;
}

#access #cont02 .infoCol .tel {
	font-size: 118%;
}

#access #cont02 .infoCol .tel a {
	color: #444;
}

#access #cont02 .bnrCol {
	float: right;
	width: 525px;
}

#access #cont02 .bnrCol p {
	margin: 0 0 15px;
	padding: 0 20px 20px;
}

#access #cont02 .bnrCol .first {
	border-bottom: 1px solid #B0D6E5;
}

#access .time {
	margin: 0 0 40px;
}

#access .time img {
	margin: 0 0 15px;
}

#access .trainLabel {
	margin: 0 0 20px;
	padding: 15px 0 5px 50px;
	background: url(../images/common/access_ico_train.gif) no-repeat left;
	font-size: 166%;
	font-weight: bold;
}

#access #trainCont .lCol {
	float: left;
	width: 290px;
}

#access #trainCont .rCol {
	float: right;
	width: 540px;
}

#access #trainCont .line {
	margin: 0 0 20px;
}

#access #trainCont .line p {
	padding: 0;
}

#access #trainCont .line .bar {
	margin: 0 0 8px;
	padding: 2px 0 0 8px;
	font-size: 133%;
	line-height: 1.2;
}

#access #trainCont #line01 .bar {
	border-left: 4px solid #0F6FA7;
}

#access #trainCont #line02 .bar {
	border-left: 4px solid #B7C62F;
}

#access #trainCont #line03 .bar {
	border-left: 4px solid #0D803B;
}

#access #trainCont #line04 .bar {
	border-left: 4px solid #1D9D80;
}

#access #trainCont .photoList {
	overflow: hidden;
}

#access #trainCont .photoList li {
	float: left;
	margin: 0 10px 0 0;
}

#access #trainCont .photoList li .eyecatch {
	padding: 0 0 10px;
}

/* newpatient
----------------------------------------------------------*/
#newpatient #cont01 {
	margin: 0 0 40px;
}

#newpatient .colWrap {
	overflow: hidden;
	margin: 0 0 20px;
}

#newpatient .stepList {
	overflow: hidden;
}

#newpatient .stepList li {
	float: left;
	width: 300px;
}

#newpatient .stepList li.step03 {
	width: 334px;
}

#newpatient .stepList li.step04 {
	width: 339px;
}

#newpatient .stepList li .title {
	color: #A2D0E1;
	font-size: 133%;
	text-align: center;
}

#newpatient .stepList li .comment {
	width: 255px;
	margin: 0 auto;
}

#newpatient #stepList01 {
	margin: 0 -15px 0 23px;
}

#newpatient #stepList02 {
	margin: 0 0 0 -15px;
}

#newpatient #cont02 .bnrCol {
	float: left;
	width: 525px;
}

#newpatient #cont02 .bnrCol p {
	margin: 0 0 15px;
	padding: 0 20px 20px;
}

#newpatient #cont02 .bnrCol .first {
	border-bottom: 1px solid #B0D6E5;
}

#newpatient #cont02 .btnCol {
	float: right;
	width: 360px;
	margin: 30px 30px 0 0;
}

#newpatient #cont02 .btnCol p {
	padding: 0;
}

/* cont03 */
#newpatient .voiceList {
	overflow: hidden;
	margin: 0 0 0 10px;
}

#newpatient .voiceList li {
	float: left;
	width: 437px;
	margin: 0 0 30px 15px;
	padding: 0 0 30px;
	background: #90C8DC url(../images/common/bg_frame03_b.gif) no-repeat bottom;
	color: #fff;
}

#newpatient .voiceList li .listInner {
	padding: 30px 20px 0;
	background: #90C8DC url(../images/common/bg_frame03_t.gif) no-repeat top;
}

#newpatient .voiceList li .title {
	margin: 0 0 10px;
	padding: 0 10px 10px;
	background: url(../images/common/bg_line01.gif) repeat-x bottom;
	font-size: 133%;
}

#newpatient .voiceList li .comment {
	margin: 0 10px 20px;
}

#newpatient .voiceList li .name {
	margin: 0 10px;
	text-align: right;
}

/* policy
----------------------------------------------------------*/
#policy .contInner {
	margin: 0 30px 30px;
}

#policy .catch {
	margin: 0 0 30px;
}

#policy .colWrap {
	overflow: hidden;
	margin: 0 0 30px;
}

#policy #cont01 {
	margin: 0 0 30px;
}

#policy #cont01 .txtCol {
	float: left;
	width: 485px;
}

#policy #cont01 .txtCol .title {
	color: #AAD4E4;
	font-size: 133%;
}

#policy #cont01 .imgCol {
	float: right;
	width: 345px;
}

#policy #cont02 .txtCol {
	float: right;
	width: 525px;
}

#policy #cont02 .imgCol {
	float: left;
	width: 345px;
}

/* contact
----------------------------------------------------------*/
#contact .contInner {
	margin: 25px;
}

#contact .caution {
	color: #1083b7;
	font-weight: bold;
}

#contact table.form {
	width: 100%;
	margin: 20px;
}

#contact table.form th {
	width: 200px;
	padding: 15px;
	font-size: 116%;
	border-top: 1px solid #ccc;
}

#contact table.form th .req {
	color: #90C8DC;
}

#contact table.form td {
	padding: 15px;
	border-top: 1px solid #ccc;
	font-size: 116%;
	line-height: 1.8;
}

#contact table.form td hr {
	margin: 10px 0;
	border: none;
	height: 1px;
	background: url(../images/common/bg_line03.gif) repeat-x;
}

#contact table.form .first th,
#contact table.form .first td {
	border: none;
}

#contact table.form .err {
	color: #f30;
}

#contact .block {
	margin: 10px;
}

/* qa
----------------------------------------------------------*/
#qa .qaList dt {
	padding: 20px 10px 0;
	background: url(../images/common/bg_line02.gif) repeat-x top;
}

#qa .qaList dt a {
	padding: 5px 0 0 30px;
	background: url(../images/common/ico_comment02.gif) no-repeat left;
	color: #444;
	font-size: 116%;
	font-weight: bold;
	line-height: 2;
}

#qa .qaList dt.first {
	background: none;
}

#qa .qaList dd {
	margin: 10px 10px 20px;
	width: 808px;
	padding: 20px 0 0;
	background: #90C8DC url(../images/common/bg_frame04_t.gif) no-repeat top;
	color: #fff;
}

#qa .qaList dd .answerInner {
	padding: 0 20px 20px;
	background: url(../images/common/bg_frame04_b.gif) no-repeat bottom;
}

/* agreement
----------------------------------------------------------*/
#agreement .contInner {
	margin: 15px;
}

#agreement .agreementList {
	margin: 0 0 30px;
	padding: 0 0 30px;
	border-bottom: 1px solid #ccc;
}

#agreement .agreementList dt {
	margin: 20px 0;
	padding: 2px 0 10px 35px;
	background: url(../images/common/ico_ex.gif) no-repeat 10px 2px;
	border-bottom: 1px solid #ccc;
	font-size: 116%;
	font-weight: bold;
}

#agreement .agreementList dd {
	margin: 0 0 5px 10px;
	padding: 0 0 0 30px;
	background: url(../images/common/ico_arrow02.gif) no-repeat 10px 2px;
}

#agreement .colWrap {
	margin: 20px 40px;
}

/* menu
----------------------------------------------------------*/
#menu .heading {
	margin: 0 0 30px;
}

#menu .head {
	margin: 0 0 30px;
}
#menu .head.menu-price {
	font-size: 24px;
	color: #251E1C;
	font-weight: 500;
}
#menu .head.menu-price .yen {
	font-size: 16px;
}

#menu .lead {
	margin: 0 0 30px;
}

#menu .figure {
	margin: 0 0 30px;
}

#menu .cont {
	margin: 0 0 30px;
}

#menu .contInner {
	margin: 15px 15px 40px;
}

#menu .caution {
	font-size: 91.6%;
}

/* colWrap */
#menu .colWrap {
	overflow: hidden;
	margin: 0 0 50px;
}

#menu .colWrap .imgCol {
	float: left;
	width: 475px;
}

#menu .colWrap .imgCol img {
	margin: 0 0 12px;
}

#menu .colWrap .imgCol .txt01 {
	margin: 15px 0;
}

#menu .colWrap .txtCol {
	float: right;
	width: 390px;
}

#menu .colWrap .txtCol .btnList {
	overflow: hidden;
	margin: 0 0 15px;
}

#menu .colWrap .txtCol .btnList li {
	float: left;
	margin: 0 10px 0 0;
}

/* colWrap02 */
#menu .colWrap02 {
	overflow: hidden;
	margin: 0 0 50px;
}

#menu .colWrap02 .lCol {
	float: left;
	width: 440px;
	margin: 0 0 20px;
}

#menu .colWrap02 .rCol {
	float: right;
	width: 440px;
	margin: 0 0 20px;
}

#menu .colWrap02 .btnList {
	overflow: hidden;
	margin: 0 0 15px;
}

#menu .colWrap02 .btnList li {
	float: left;
	margin: 0 10px 0 0;
}

/* typeList */
#menu .typeList ul {
	overflow: hidden;
}

#menu .typeList li {
	float: left;
	width: 288px;
	margin: 0 0 0 13px;
}

#menu .typeList li .title {
	padding: 0 0 10px;
	font-size: 133%;
	text-align: center;
}

#menu .typeList li .comment {
	margin: 0 20px;
}

/* menuList */
#menu .menuList {
	margin: 0 0 30px;
}

#menu .menuList ul {
	overflow: hidden;
}

#menu .menuList li {
	float: left;
	width: 287px;
	margin: 0 0 0 10px;
}

#menu .menuList li .eyecatch {
	padding: 0 0 10px;
}

#menu .menuList li .title {
	padding: 0 0 10px;
	color: #AAD4E4;
	font-size: 133%;
	text-decoration: underline;
	text-align: center;
}

#menu .menuList li .title a {
	color: #AAD4E4;
}

#menu .menuList li .title02 {
	padding: 0 0 10px;
	font-size: 133%;
	/*text-decoration:underline;*/
	text-align: center;
}

#menu .menuList li .title02 a {
	color: #AAD4E4;
}

#menu .menuList li .comment {
	text-align: center;
}

#menu .menuList li .btn {
	text-align: center;
}

#menu .menuList.small li {
	width: 213px;
}

/* menuList02 */
#menu .menuList02 {
	margin: 0 0 30px;
}

#menu .menuList02 ul {
	overflow: hidden;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	gap: 8px;
}

#menu .menuList02 li {
	width: 214px;
}

#menu .menuList02 li .eyecatch {
	padding: 0 0 10px;
}

#menu .menuList02 li .title {
	padding: 0 0 10px;
	font-size: 108%;
	text-align: center;
}

#menu .menuList02 li .title a {
	/*color:#444;*/
	color: #AAD4E4;
}

#menu .menuList02 li .comment {
	text-align: center;
}

#menu .menuList02 li .btn {
	text-align: center;
}

/* optionList */
#menu .optionList {
	margin: 0 0 40px;
}

#menu .optionList ul {
	overflow: hidden;
}

#menu .optionList li {
	float: left;
	width: 287px;
	margin: 0 0 0 10px;
}

#menu .optionList li .eyecatch {
	padding: 0 0 10px;
}

#menu .optionList li .title {
	padding: 0 0 10px;
	color: #AAD4E4;
	font-size: 133%;
	text-decoration: underline;
	text-align: center;
}

#menu .optionList li .title a {
	color: #AAD4E4;
}

#menu .optionList li .comment {
	text-align: center;
}

#menu .optionList li .btn {
	text-align: center;
}

/* othermenuList */
#menu .othermenuList {
	margin: 0 0 30px;
}

#menu .othermenuList ul {
	overflow: hidden;
}

#menu .othermenuList li {
	float: left;
	width: 287px;
	margin: 0 0 0 10px;
}

#menu .othermenuList li .eyecatch {
	padding: 0 0 10px;
}

#menu .othermenuList li .title {
	padding: 0 0 10px;
	font-size: 133%;
	/*text-decoration:underline;*/
	text-align: center;
}

#menu .othermenuList li .btn {
	text-align: center;
}

/* courseList*/
#menu .courseList {
	margin: 0 0 40px;
}

#menu .courseList ul {
	overflow: hidden;
}

#menu .courseList li {
	float: left;
	width: 172px;
	height: 80px;
	margin: 0 10px 0 0;
	padding: 20px 20px 50px;
	background: url(../images/common/bg_frame05.gif) no-repeat;
	color: #fff;
}

/* table.type01 */
#menu table.type01 {
	width: 889px;
	margin: 0 0 10px;
	background: url(../images/common/bg_table01_b.png) no-repeat bottom;
}

#menu table.type01 thead th {
	padding: 10px 15px;
	color: #fff;
	text-align: left;
}

#menu table.type01 thead th.left {
	width: 134px;
	background: url(../images/common/bg_table01_t.png) no-repeat 0% 0%;
}

#menu table.type01 thead th.right {
	background: url(../images/common/bg_table01_t.png) no-repeat 100% 0%;
}

#menu table.type01 tbody td {
	padding: 10px 15px;
	border-top: 1px solid #BFBABA;
}

/* table.type02 */
#menu table.type02 {
	width: 888px;
	margin: 0 0 10px;
	background: url(../images/common/bg_table02_b.png) no-repeat bottom;
}

#menu table.type02 thead th {
	padding: 10px 15px;
	color: #fff;
	background: url(../images/common/bg_table02_t.png) no-repeat 0% 0%;
}

#menu table.type02 tbody td {
	width: 50%;
	padding: 10px 15px;
	border-top: 1px solid #BFBABA;
}

/* table.type03 */
#menu table.type03 {
	width: 376px;
	margin: 0 0 10px;
	background: url(../images/common/bg_table03_b.png) no-repeat bottom;
}

#menu table.type03 thead th {
	padding: 10px 15px;
	color: #fff;
	background: url(../images/common/bg_table03_t.png) no-repeat 0% 0%;
}

#menu table.type03 tbody td {
	padding: 10px 15px;
	border-top: 1px solid #BFBABA;
}

/* stepList */
#menu .stepList {
	overflow: hidden;
	margin: 0 0 30px;
}

#menu .stepList li {
	float: left;
	width: 300px;
}

#menu .stepList li.step03 {
	width: 334px;
}

#menu .stepList li.step04 {
	width: 339px;
}

#menu .stepList li .eyecatch {
	padding: 0;
}

#menu .stepList li .title {
	font-size: 133%;
	text-align: center;
}

#menu .stepList li.step04 .title {
	text-align: right;
}

#menu .stepList li .comment {
	width: 255px;
	margin: 0 auto;
}

#menu #stepList01 {
	margin: 0 -15px 0 23px;
}

#menu #stepList02 {
	margin: 0 0 0 -15px;
}

#menu .price-tbl {
	color: #251E1C;
}
#menu .price-tbl * {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
#menu .price-tbl .col {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	padding: 10px 0 10px;
	background-image: url(../images/acupuncture_price_bdr.png);
	background-repeat: repeat-x;
	background-position: center bottom;
}
#menu .price-tbl .col:last-of-type {
	background-image: none;
}
#menu .price-tbl dt {
	width: 194px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	font-size: 35px;
}
#menu .price-tbl dt img {
	display: block;
	margin-right: 0.5em;
}
#menu .price-tbl dt .minit {
	font-size: 23px;
}
#menu .price-tbl dd {
	width: calc(100% - 194px);
	font-size: 34px;
}
#menu .price-tbl dd .yen {
	font-size: 20px;
}
#menu .price-tbl dd .tax {
	font-size: 15px;
	margin-left: 0.3em;
}