/*
Theme Name: 接骨院コンサルティングのテーマ
*/

/*----------------------------------
reset
----------------------------------*/

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

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
display: block;
}

ol, ul {
list-style: none;
}

blockquote, q {
quotes: none;
}

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

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

/*----------------------------------
全体
----------------------------------*/

body {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 18px;
	line-height: 28px;
	word-break: break-all;
	text-size-adjust: none;
}

.wrapper {
	margin: 0 auto;
	width: 1000px;
}

.center {
	display: block;
	margin: 0 auto;
}

.left {
	float: left;
}

.right {
	float: right;
}

.t-center {
	text-align: center;
}

.t-left {
	text-align: left;
}

.t-right {
	text-align: right;
}

.clear {
	clear: both;
}

.block {
	display: block;
}

.of {
	overflow: hidden;
}

.pc-of {
	overflow: hidden;
}

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

.flex-center {
	display: flex;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	justify-content: center;
}

.flex-middle {
	align-items: center;
	display: flex;
	display: -ms-flexbox;
	display: -webkit-box;
	display: -webkit-flex;
	flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	justify-content: space-between;
}


img,
iframe {
	display: block;
}

a:hover img {
	opacity: 0.6;
}

a.bo {
	text-decoration: underline;
}

a.bo:hover {
	text-decoration: none;
}

a.no-bo {
	text-decoration: none;
}

a.no-bo:hover {
	text-decoration: underline;
}

.full {
	height: auto;
	width: 100%;
}

.list {
	margin-bottom: 20px;
}

.list li {
	list-style: disc;
	margin-left: 23px;
}

.douga {
	margin: 0 auto;
}

.douga iframe {
	margin: 0 auto;
}

.indent-1 {
	box-sizing: border-box;
	display: inline-block;
	padding-left: 1em;
	text-indent: -1em;
}

.indent-2 {
	box-sizing: border-box;
	display: inline-block;
	padding-left: 2em;
	text-indent: -2em;
}

.indent-3 {
	box-sizing: border-box;
	display: inline-block;
	padding-left: 3em;
	text-indent: -3em;
}

.indent-4 {
	box-sizing: border-box;
	display: inline-block;
	padding-left: 4em;
	text-indent: -4em;
}

.indent-5 {
	box-sizing: border-box;
	display: inline-block;
	padding-left: 5em;
	text-indent: -5em;
}

.indent-6 {
	box-sizing: border-box;
	display: inline-block;
	padding-left: 6em;
	text-indent: -6em;
}

.indent-7 {
	box-sizing: border-box;
	display: inline-block;
	padding-left: 7em;
	text-indent: -7em;
}

.indent-8 {
	box-sizing: border-box;
	display: inline-block;
	padding-left: 8em;
	text-indent: -8em;
}

.indent-9 {
	box-sizing: border-box;
	display: inline-block;
	padding-left: 9em;
	text-indent: -9em;
}

.indent-10 {
	box-sizing: border-box;
	display: inline-block;
	padding-left: 10em;
	text-indent: -10em;
}

.pc {
	display: block;
}

.mobi {
	display: none;
}

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

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

.m20 {
	margin: 20px !important;
}

.mt20 {
	margin-top: 20px !important;
}

.mb20 {
	margin-bottom: 20px !important;
}

.no-mt20 {
	margin-top: -20px !important;
}

.mb-20 {
	margin-bottom: 20px !important;
}

.ml20 {
	margin-left: 20px !important;
}

.mr20 {
	margin-right: 20px !important;
}

.m40 {
	margin: 40px !important;
}

.mt40 {
	margin-top: 40px !important;
}

.mb40 {
	margin-bottom: 40px !important;
}

.ml40 {
	margin-left: 40px !important;
}

.mr40 {
	margin-right: 40px !important;
}

.m60 {
	margin: 60px !important;
}

.mt60 {
	margin-top: 60px !important;
}

.mb60 {
	margin-bottom: 60px !important;
}

.m100 {
	margin: 100px !important;
}

.mt100 {
	margin-top: 100px !important;
}

.mb100 {
	margin-bottom: 100px !important;
}

.ml60 {
	margin-left: 60px !important;
}

.mr60 {
	margin-right: 60px !important;
}

.p20 {
	padding: 20px !important;
}

.pt20 {
	padding-top: 20px !important;
}

.pb20 {
	padding-bottom: 20px !important;
}

.pl20 {
	padding-left: 20px !important;
}

.pr20 {
	padding-right: 20px !important;
}

.p40 {
	padding: 40px !important;
}

.pt40 {
	padding-top: 40px !important;
}

.pb40 {
	padding-bottom: 40px !important;
}

.pl40 {
	padding-left: 40px !important;
}

.pr40 {
	padding-right: 40px !important;
}

.p60 {
	padding: 60px !important;
}

.pt60 {
	padding-top: 60px !important;
}

.pb60 {
	padding-bottom: 60px !important;
}

.pl60 {
	padding-left: 60px !important;
}

.pr60 {
	padding-right: 60px !important;
}

/*----------------------------------
文字スタイル
----------------------------------*/

strong,b,.strong {
	font-weight: bold;
}

.red {
	color: #ff0000;
}

.blue {
	color: #0000ff;
}

.yellow {
	color: #ffff00;
}

.green {
	color: #008800;
}

.orange {
	color: #ff8800;
}

.magenta {
	color: #F37C92;
}

.cyan {
	color: #5DBFF2;
}

.y-b {
	background: linear-gradient(transparent 50%, #ffff00 50%);
}

.fs12 {
	font-size: 12px !important;
	line-height: 22px !important;
}

.fs13 {
	font-size: 13px !important;
	line-height: 23px !important;
}

.fs14 {
	font-size: 14px !important;
	line-height: 24px !important;
}

.fs15 {
	font-size: 15px !important;
	line-height: 25px !important;
}

.fs16 {
	font-size: 16px !important;
	line-height: 26px !important;
}

.fs17 {
	font-size: 17px !important;
	line-height: 27px !important;
}

.fs18 {
	font-size: 18px !important;
	line-height: 28px !important;
}

.fs20 {
	font-size: 20px !important;
	line-height: 30px !important;
}

.fs22 {
	font-size: 22px !important;
	line-height: 32px !important;
}

.fs23 {
	font-size: 23px !important;
	line-height: 33px !important;
}

.fs25 {
	font-size: 25px !important;
	line-height: 35px !important;
}

.fs28 {
	font-size: 28px !important;
	line-height: 38px !important;
}

.fs30 {
	font-size: 30px !important;
	line-height: 40px !important;
}

.fs35 {
	font-size: 35px !important;
	line-height: 45px !important;
}

.fs40 {
	font-size: 40px !important;
	line-height: 50px !important;
}

.fs45 {
	font-size: 45px !important;
	line-height: 55px !important;
}

.fs50 {
	font-size: 50px !important;
	line-height: 60px !important;
}

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

.head-obi {
	background: #7b650c;
	box-sizing: border-box;
	color: #fff;
	font-size: 20px;
	line-height: 30px;
	padding: 5px 0;
	text-align: center;
}

/*----------------------------------
TOP画像
----------------------------------*/

.top-img img {
	margin: 0 auto;
}

/*----------------------------------
共有
----------------------------------*/

.y-bg {
	background: #e2ca59;
	box-sizing: border-box;
	padding: 60px 0;
}

.w-bg {
	background: #fff;
	box-sizing: border-box;
	padding: 60px 0;
}

.g-bg {
	background: #f5f5f5;
	box-sizing: border-box;
	padding: 60px 0;
}

.con-title {
	color: #745d00;
	font-weight: bold;
	margin-bottom: 40px;
}

.con-title-1 {
	margin-bottom: 10px;
	text-align: center;
}

.con-title-1 strong {
	font-size: 23px;
	line-height: 23px;
}

.con-title-2 {
	font-weight: bold;
	font-size: 44px;
	line-height: 54px;
	text-align: center;
}

/*----------------------------------
バナー一覧
----------------------------------*/

.top-banner-img-list {
	box-sizing: border-box;
}

.top-banner-img-list li {
	box-sizing: border-box;
	margin-bottom: 30px;
}

.top-banner-img-list li:last-child {
	margin-bottom: 0;
}

.top-banner-img-list-img {
	box-sizing: border-box;
	display: block;
	width: 100%;
}

.top-banner-img-list-img img {
	height: auto;
	width: 100%;
}

/*----------------------------------
サポート実績
----------------------------------*/

.support-list li {
	background-size: 100%;
	box-sizing: border-box;
	float: left;
	font-weight: bold;
	font-size: 20px;
	line-height: 30px;
	height: 148px;
	margin: 0 20px 20px 0;
	padding: 40px 0;
	text-align: center;
	width: 235px;
}

.support-list li strong {
	color: #745d00;
	display: block;
	font-size: 25px;
	line-height: 35px;
}

.support-list li.three-line {
	padding: 24px 0;
}

.support-list li:nth-child(4),
.support-list li:nth-child(8) {
	margin-right: 0;
}

.support-list li:nth-last-child(-n+4) {
	margin-bottom: 0;
}

.support-list li:nth-child(1) {
	background: url(images/support-1-bg.png) no-repeat;
}

.support-list li:nth-child(2) {
	background: url(images/support-2-bg.png) no-repeat;
}

.support-list li:nth-child(3) {
	background: url(images/support-3-bg.png) no-repeat;
}

.support-list li:nth-child(4) {
	background: url(images/support-4-bg.png) no-repeat;
}

.support-list li:nth-child(5) {
	background: url(images/support-5-bg.png) no-repeat;
}

.support-list li:nth-child(6) {
	background: url(images/support-6-bg.png) no-repeat;
}

.support-list li:nth-child(7) {
	background: url(images/support-7-bg.png) no-repeat;
}

.support-list li:nth-child(8) {
	background: url(images/support-8-bg.png) no-repeat;
}

/*----------------------------------
手厚いサポート
----------------------------------*/

.support-line {
	background: url(images/obi.png) repeat-x;
	box-sizing: border-box;
	color: #fff;
	font-weight: bold;
	font-size: 40px;
	line-height: 153px;
	height: 153px;
	margin: -13px 0;
	text-align: center;
}

/*----------------------------------
こんなお悩みございませんか？
----------------------------------*/

.top-worries-content {
	box-sizing: border-box;
}

.top-worries-content-in {
	box-sizing: border-box;
	padding: 17px;
}

.top-worries-content-in-in {
	background: #fff;
	box-sizing: border-box;
	box-shadow: 0 0 15px 0 rgba(0,0,0,0.6);
	min-height: 376px;
	padding: 40px;
	position: relative;
}

.top-worries-content-in-in-check-list {
	box-sizing: border-box;
}

.top-worries-content-in-in-check-list li {
	box-sizing: border-box;
	font-weight: 700;
	font-size: 32px;
	line-height: 42px;
	margin-bottom: 20px;
	padding-left: 49px;
	position: relative;
}

.top-worries-content-in-in-check-list li::before {
	background: #fff;
	box-sizing: border-box;
	border-color: #000 !important;
	border: 3px solid;
	content: "";
	left: 0;
	height: 35px;
	position: absolute;
	top: 6px;
	width: 35px;
}

.top-worries-content-in-in-check-list li:last-child {
	margin-bottom: 0;
}

.top-worries-content-in-in-check-list-icon {
	box-sizing: border-box;
	display: block;
	left: 12px;
	position: absolute;
	top: 8px;
	width: 32px;
}

.top-worries-content-in-in-check-list-icon::before {
	background: url(images/icon-check.png) no-repeat;
	background-size: 100% !important;
	box-sizing: border-box;
	content: "";
	display: block;
	height: 0;
	padding-bottom: 86.328%;
	position: relative;
	width: 100%;
}

.top-worries-content-in-in-img {
	box-sizing: border-box;
	bottom: 0;
	display: block;
	position: absolute;
	right: 40px;
	width: 200px;
}

.top-worries-content-in-in-img img {
	height: auto;
	width: 100%;
}

.top-worries-content-title {
	box-sizing: border-box;
	margin-top: 40px;
	text-align: center;
}

.top-worries-content-title-in {
	box-sizing: border-box;
	display: inline-block;
	padding: 0 43px;
	position: relative;
}

.top-worries-content-title-in::before,
.top-worries-content-title-in::after {
	background: #7b650c;
	box-sizing: border-box;
	content: "";
	height: 100%;
	position: absolute;
	top: 0;
	width: 3px;
}

.top-worries-content-title-in::before {
	left: 15px;
	transform: skewX(15deg);
	-webkit-transform: skewX(15deg);
}

.top-worries-content-title-in::after {
	right: 15px;
	transform: skewX(-15deg);
	-webkit-transform: skewX(-15deg);
}

.top-worries-content-title-in-main {
	box-sizing: border-box;
}

.top-worries-content-title-in-main-in {
	box-sizing: border-box;
	color: #7b650c;
	display: inline-block;
	font-weight: 700;
	font-size: 35px;
	line-height: 45px;
}

.top-worries-content-title-in-sub {
	box-sizing: border-box;
	margin-top: 10px;
}

.top-worries-content-title-in-sub-in {
	box-sizing: border-box;
	border-color: #ff0000 !important;
	border-bottom: 2px solid;
	display: inline-block;
	font-weight: 700;
	font-size: 35px;
	line-height: 45px;
	padding-bottom: 5px;
	position: relative;
}

.top-worries-content-title-in-sub-in::after {
	background: #ff0000;
	box-sizing: border-box;
	bottom: 2px;
	content: "";
	left: 0;
	height: 2px;
	position: absolute;
	width: 100%;
}

/*----------------------------------
導入の流れ
----------------------------------*/

.flow-list {
	margin-bottom: 20px;
}

.flow-list li {
	box-sizing: border-box;
	float: left;
	height: 187px;
	margin-right: 10px;
	padding-top: 125px;
	padding-right: 12px;
	width: 194px;
}

.flow-list li:last-child {
	margin-right: 0;
	width: 184px;
}

.flow-list li:nth-child(1) {
	background: url(images/flow-1.png) no-repeat;
}

.flow-list li:nth-child(2) {
	background: url(images/flow-2.png) no-repeat;
}

.flow-list li:nth-child(3) {
	background: url(images/flow-3.png) no-repeat;
}

.flow-list li:nth-child(4) {
	background: url(images/flow-4.png) no-repeat;
}

.flow-list li:nth-child(5) {
	background: url(images/flow-5.png) no-repeat;
	padding-right: 0;
}

.flow-text {
	font-weight: bold;
	line-height: 18px;
	text-align: center;
}

.num {
	background: #745d00;
	border-radius: 50%;
	box-sizing: border-box;
	color: #fff;
	display: inline-block;
	height: 30px;
	line-height: 30px;
	margin-right: 5px;
	text-align: center;
	width: 30px;
}

.flow-list li:nth-child(5) .num {
	background: #ED7623;
}

/*----------------------------------
サポートの特徴
----------------------------------*/

.point-list {
	margin: 0 auto;
	width: 800px;
}

.point-list li {
	background: #fff;
	border: 2px solid #e2ca59;
	border-radius: 5px;
	box-sizing: border-box;
	margin-bottom: 20px;
	overflow: hidden;
}

.point-list li:last-child {
	margin-bottom: 0;
}

.point-1 {
	box-sizing: border-box;
	color: #745d00;
	clear: both;
	float: left;
	font-weight: bold;
	font-size: 40px;
	line-height: 50px;
	padding: 5px 0;
	text-align: center;
	width: 10%;
}

.point-2 {
	border-left: 2px dashed #e2ca59;
	box-sizing: border-box;
	font-weight: bold;
	font-size: 23px;
	line-height: 33px;
	margin-left: 10%;
	padding: 14px 19px;
}

.point-2-in {
	box-sizing: border-box;
	margin-top: 10px;
}

.point-2-in-text {
	box-sizing: border-box;
	font-weight: 400;
	font-size: 18px;
	line-height: 1.556;
}

.point-2-in-text p {
	margin-bottom: 20px;
}

.point-2-in-text p:last-child {
	margin-bottom: 0;
}

.support-main-img {
	box-sizing: border-box;
	display: block;
	margin-bottom: 40px;
	width: 600px;
}

.support-main-img img {
	height: auto;
	width: 100%;
}

/*----------------------------------
提供プラン
----------------------------------*/

.top-plan-content-con {
	box-sizing: border-box;
	counter-reset: number 0;
	margin-bottom: -40px;
}

.top-plan-content-con section {
	box-sizing: border-box;
	float: left;
	margin: 0 40px 40px 0;
	width: 480px;
}

.top-plan-content-con section:nth-child(2n),
.top-plan-content-con section:last-child {
	margin-right: 0;
}

.top-plan-content-con-in {
	background: #fff;
	box-sizing: border-box;
	border-radius: 10px;
	padding: 30px;
}

.top-plan-content-con-in-title {
	box-sizing: border-box;
	text-align: center;
}

.top-plan-content-con-in-title-in {
	box-sizing: border-box;
}

.top-plan-content-con-in-title-in-in {
	box-sizing: border-box;
	display: inline-block;
	font-weight: 700;
	font-size: 28px;
	line-height: 38px;
	min-height: 50px;
	padding: 5px 0 0 60px;
	position: relative;
}

.top-plan-content-con-in-title-in-in::before {
	background: #de7C3a;
	box-sizing: border-box;
	border-radius: 50%;
	color: #fff;
	counter-increment: number 1;
	content: counter(number);
	font-weight: 700;
	font-size: 28px;
	line-height: 50px;
	left: 0;
	height: 50px;
	position: absolute;
	text-align: center;
	top: 0;
	width: 50px;
}

.top-plan-content-con-in-text {
	box-sizing: border-box;
	font-size: 18px;
	line-height: 28px;
	margin-top: 20px;
}

.top-plan-content-con-in-text p {
	margin-bottom: 20px;
}

.top-plan-content-con-in-text p:last-child {
	margin-bottom: 0;
}

/*----------------------------------
お客様の声
----------------------------------*/

.voice {
	margin-bottom: 40px;
}

.voice:last-child {
	margin-bottom: 0;
}

.voice-img {
	height: auto;
	width: 250px;
}

.voice-in {
	background: #f5f5f5;
	box-sizing: border-box;
	border-radius: 10px;
	margin-left: 60px;
	padding: 20px;
	position: relative;
	width: 690px;
}

.voice-in::before {
	background: url(images/yazirushi.png) no-repeat;
	background-size: 100%;
	content: "";
	height: 23px;
	left: -18px;
	position: absolute;
	transform: rotate(180deg);
	-webkit-transform: rotate(180deg);
	top: 50px;
	width: 20px;
}

.voice-in p {
	margin-bottom: 20px;
}

.voice-in p:last-child {
	margin-bottom: 0;
}

/*----------------------------------
ご相談フォーム
----------------------------------*/

.table {
	margin: 0 auto;
	width: 800px;
}

.table li {
	margin-bottom: 20px;
	overflow: hidden;
}

.table li:last-child {
	margin-bottom: 0;
}

.table-1 {
	box-sizing: border-box;
	clear: both;
	float: left;
	font-weight: bold;
	padding: 5px 0;
	width: 30%;
}

.table-2 {
	box-sizing: border-box;
	margin-left: 30%;
}

.table-2 input[type="text"],
.table-2 input[type="email"] {
	box-sizing: border-box;
	border-radius: 5px;
	border: 0;
	font-size: 18px;
	line-height: 28px;
	padding: 5px 10px;
	width: 100%;
	-webkit-appearance: none;
}

.table-2 textarea {
	box-sizing: border-box;
	border-radius: 5px;
	border: 0;
	font-size: 18px;
	line-height: 28px;
	height: 250px;
	padding: 5px 10px;
	width: 100%;
	-webkit-appearance: none;
}

.check-form .table-2 input[type="text"],
.check-form .table-2 input[type="email"],
.check-form .table-2 textarea {
	border: 1px solid #ccc;
}

.hissu {
	background: #ff0000;
	box-sizing: border-box;
	border-radius: 5px;
	color: #fff;
	display: inline-block;
	margin-left: 10px;
	padding: 0 10px;
}

.soushin {
	background: #ed7623;
	box-sizing: border-box;
	border: 0;
	border-radius: 10px;
	color: #fff;
	cursor: pointer;
	display: block;
	font-weight: bold;
	font-size: 18px;
	line-height: 28px;
	margin: 20px auto 0;
	padding: 15px 10px;
	width: 300px;
	-webkit-appearance: none;
}

.soushin:hover {
	opacity: 0.6;
}

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

footer {
	background: #fff;
	box-sizing: border-box;
	padding: 30px 0;
	text-align: center;
}

/*----------------------------------
投稿・固定ページ
----------------------------------*/

.page-con {
	background: #fff;
	box-sizing: border-box;
	border-radius: 10px;
	padding: 20px;
}

.page-con p {
	margin-bottom: 20px;
}

.page-con p:last-child {
	margin-bottom: 0;
}