@charset "utf-8";
/* CSS Document */
/*
Theme Name: アルファジール　歯科サンプルのテーマ
Author: アルファージール
Description: 歯科サンプルのテーマ
Version: 10000
*/

.main h2,
.main h3,
.main h4,
.main h5,
.main h6 {
	clear: both;
}
.main h2 {
	-webkit-background-size: 30px auto;
	-moz-background-size: 30px auto;
	background-size: 30px auto;
	padding-top: 2px;
	/*
	padding-left: 35px;
	margin-left: -35px;
	*/
    color: #81bf24;
	font-size: 20px;
	margin-bottom: 20px;
}
.main h3 {
	padding: 5px 10px;
	font-size: 16px;
	margin-bottom: 10px;
	margin-left: -10px;
	position: relative;
	color: #81bf24;
	position: relative;
}
.main h3::after {
	content: "";
	background: -moz-linear-gradient(left, rgba(129,191,36,1) 0%, rgba(255,255,255,0) 100%);
	background: -webkit-linear-gradient(left, rgba(129,191,36,1) 0%,rgba(255,255,255,0) 100%);
	background: linear-gradient(to right, rgba(129,191,36,1) 0%,rgba(255,255,255,0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#81bf24', endColorstr='#00ffffff',GradientType=1 );
	position: absolute;
	bottom: 0;
	left: 5px;
	width: 200px;
	height: 1px;
}
.main .h3_02 {
	color: #618b23;
	background-image: url(img/common/ico_h3_02.png);
}
.main .h3_02::after {
	background: -moz-linear-gradient(left, rgba(97,138,35,1) 0%, rgba(255,255,255,0) 100%);
	background: -webkit-linear-gradient(left, rgba(97,138,35,1) 0%,rgba(255,255,255,0) 100%);
	background: linear-gradient(to right, rgba(97,138,35,1) 0%,rgba(255,255,255,0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#618a23', endColorstr='#00ffffff',GradientType=1 );	
}
.main h4 {
    color: #618b23;
    font-size: 15px;
    /*
    text-shadow: 1px 1px 5px #fff,
    2px 2px 0px #ccc;
    */
}
@media only screen and (max-width: 767px){
	.main h2,
	.main h3 {
		margin-left: 0;
	}
	.main h3 { padding: 5px;}
	.main h3::after { margin-left: -1%;}
}

.faq dl {
	margin-bottom: 10px;
	border-bottom: 1px dashed #81bf24;;
	
}
.faq dt,
.faq dd {
	padding-left: 30px;
	position: relative;
	margin-bottom: 10px;
}
.faq dt::before,
.faq dd::before {
	position: absolute;
	border: 1px solid #81bf24;
	left: 0;
	padding: 0px 2px;
	width: 20px;
	text-align: center;
	display: inline-block;
}
.faq dt::before {
	content: "Q";
	background: #81bf24;
	color: #fff;
}
.faq dd::before {
	content: "A";
}
/*=====================

　チェックボックス
 
======================*/

.checkbox li {
	position: relative;
	padding-left: 25px;
	margin-bottom: 5px;
}
.checkbox li::before {
	font-family: FontAwesome;
	position: absolute;
	left: 0;
	font-size: 14px;
	margin-right: 5px;
	border: 1px solid #81bf24;
	width: 18px;
	height: 18px;
	line-height: 17px;
	text-align: center;
	color: #81bf24;
}
.checkbox li::before {
	content: "\f00c";
}


.list_flow::after {
	content: "";
	display: block;
	clear: both;
}
.list_flow li {
	float: left;
	width: 50%;
}

/****************************************

コンタクトフォーム

****************************************/
.contact_form {
	width: 100%;
	margin-bottom: 20px;
	line-height: 1;
}
.contact_form th,
.contact_form td {
	padding: 10px;
	border-top: 1px solid rgba(129, 191, 36, 0.5);
}
.contact_form tr:last-child th,
.contact_form tr:last-child td {
	border-bottom: 1px solid rgba(129, 191, 36, 0.5);
}
.contact_form tr:nth-child(2n+1) th,
.contact_form tr:nth-child(2n+1) td {
	background: rgba(129, 191, 36, 0.2);
}
.contact_form tr:nth-child(2n+0) th,
.contact_form tr:nth-child(2n+0) td {
	background: rgba(255,255,255,.2);
}
.contact_form th {
	width: 40%;
}
.contact_form input,
.contact_form textarea {
	width: 100%;
	padding: 5px 10px;
	font-size: 16px;
	line-height: 1.5;
	border: 1px solid #81bf24;
}
.contact_form textarea {
	height: 140px;
}
.contact_form .rq,
.contact_form .no_rq {
	font-size: 12px;
	vertical-align: top;
	display: inline-block;
	color: #fff;
	padding: 2px;
	margin-top: -5px;
}
.contact_form .rq {
	background: #f00;
}
.contact_form .no_rq {
	background: #00b7ca;
}
.contact_form .wpcf7-not-valid-tip {
	margin-top: 5px;
	display: inline-block;
}
.submit_btn {
	text-align: center;
	margin-bottom: 30px;
}
.submit_btn >span {
	display: inline-block;
	position: relative;
	margin-bottom: 20px;
}
.submit_btn >span::after {
	content: "";
	position: absolute;
	bottom: 3px;
	left: 192px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 0 15px 15px;
	border-color: transparent transparent #ffffff transparent;
}
.submit_btn input {
	width: 200px;
	padding: 7px 10px;
	margin: 0 10px;
	-webkit-appearance: none;
	background: rgb(129, 191, 36);
	border: 0;
	color: #fff;
	font-size: 18px;
	cursor: pointer;
}
.submit_btn input:hover {
	opacity: .7;
}
.wpcf7 .submit_btn .ajax-loader {
	display: none;
}
.contact_form .wpcf7c-conf,
.contact_form .wpcf7c-conf input:-webkit-autofill,
.contact_form .wpcf7c-conf textarea:-webkit-autofill,
.contact_form .wpcf7c-conf select:-webkit-autofill {
	background: #ccc !important;
	-webkit-box-shadow: 0 0 0 1000px #ccc inset;
}
.wpcf7-mail-sent-ok {
	display: none !Important;
}

@media only screen and (max-width: 767px) {
	.contact_form th,
	.contact_form td {
		width: 100%;
		display: block;
	}
	.contact_form tr:last-child th{
		border-bottom: 0;
	}
	.contact_form td {
		border-top: 0;
	}
	.contact_form .rq,
	.contact_form .no_rq {
		margin: 0;
	}
}

/* ■■■■■■■■■■■■■■■■■■■■■■■■
　料金表
■■■■■■■■■■■■■■■■■■■■■■■■ */

.priceTable01,
.priceTable02 {
	width: 100%;
	table-layout: fixed;
	margin-bottom: 20px;
}
.priceTable01 th,
.priceTable01 td {
	border: 1px solid #444;
	padding: 10px;
}
.priceTable01 th {
	width: 30%;
	background: #ccc;
}
.priceTable02 th,
.priceTable02 td {
	border: 1px solid #4267b2;
	padding: 10px;
}
.priceTable02 th {
	width: 40%;
	background: rgb(160, 179, 216);
	color: rgba(66, 103, 178, 1);
}
.priceTable02 thead th,
.priceTable02 thead td {
	background: rgba(66, 103, 178, 1);
	color: #fff;
}
.priceTable02 thead th {
	border-right-color: #fff;
}
.priceTable02 tbody th {
	border-bottom-color:#fff;
}
.priceTable02 tr:last-child th {
	border-bottom-color: rgba(66, 103, 178, 1);
}

@media only screen and (max-width: 767px){
	.priceTable01 th,
	.priceTable01 td {
		width: 100%;
		display: block;
		border-bottom-width: 0;
	}
	.priceTable01 tr:last-child td:last-child {
		border-bottom-width: 1px;
	}
}