@charset "UTF-8";
/*
Theme Name: 姓名判断 楷康
*/
/*-----------------------------------------
default
-----------------------------------------*/
* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}
html {
	font-size: 62.5%;
}
body {
	color: #505050;
	background: #FFF url("images/common/body_bg.png") no-repeat center top;
	font-family: 'Yu Mincho Light', 'YuMincho', 'Yu Mincho', '游明朝体', 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', sans-serif;
	font-weight: 500;
	font-size: 13px;
	font-size: 1.3rem;
	letter-spacing: 1px;
}
a {
	transition: 0.1s linear all;
	color: #505050;
	text-decoration: none;
}
a:hover {
	text-decoration: none;
	opacity: 0.8;
}
li {
	list-style-type: none;
}
p, th, td, li, dt, dd {
	line-height: 1.8;
}
img {
	border: none;
	max-width: 100%;
	height: auto;
}
.txt-C {
text-align: center;
}
header {
	height: 81px;
	background: url("images/common/header_bg.png") repeat-x;
}
.header_inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 920px;
	height: 81px;
	margin: 0 auto;
	color: #433910;
}
h1 {
	font-size: 2.5rem;
}
.header_phone {
	font-size: 1.2rem;
	text-align: center;
	line-height: 1.5;
}
.header_phone a {
	display: block;
	color: #433910;
	font-size: 2.2rem;
}
.header_contact a {
    display: inline-block;
    padding-left: 20px;
    background: url(images/common/ico_arrow3.png) no-repeat left center;
}
.wrapper {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 960px;
	margin: 0 auto;
	padding: 30px 20px 0;
	background: #FFF;
}
aside {
	width: 250px;
	background: #e5e1d3;
	padding: 15px;
	color: #433910;
}
aside a {
	color: #433910;
}
aside nav {
	margin-bottom: 40px;
	padding: 10px 10px 15px;
	background: #f7f6f2;
}
aside nav.blog_nav ul {
	margin-bottom: 20px;
}
aside nav .tit {
	padding-bottom: 12px;
	background: url("images/common/side_tit_bg.png") repeat-x left bottom;
	font-size: 1.5rem;
}
aside nav li {
	border-bottom: 1px solid #cac4a8;
}
aside nav li a {
	display: inline-block;
	font-size: 1.4rem;
	padding: 10px 0 10px 30px;
	background: url("images/common/ico_flower1.png") no-repeat left center;
}
aside nav.blog_nav ul.children {
	margin-bottom: 0;
}
aside nav.blog_nav ul.children li {
	border-top: 1px dotted #cac4a8;
	border-bottom: none;
}
aside nav.blog_nav li a {
	font-size: 1.3rem;
	background: url("images/common/ico_arrow2.png") no-repeat left 1em center;
}
aside section {
	margin-bottom: 40px;
}
aside section .tit {
	line-height: 21px;
	font-size: 1.5rem;
	margin-bottom: 20px;
	padding-left: 30px;
	background: url("images/common/ico_flower2.png") no-repeat left center;
}
aside figure img {
	margin-bottom: 1em;
	border: 1px solid #FFF;
	box-shadow: 0 0 5px rgba(156, 156, 156, 0.75);
}
/*-----------------------------------------
footer
-----------------------------------------*/
.pagetop {
	width: 100%;
	margin: 40px 0 5px;
	font-size: 1.2rem;
	text-align: right;
}
.pagetop a {
	display: inline-block;
	padding-left: 20px;
	background: url("images/common/ico_pagetop.png") no-repeat left center;
}
footer {
	padding: 20px 0 30px;
	border-top: 1px solid #e1dcca;
	background: rgb(225, 220, 202);
	background: linear-gradient(0deg, rgba(225, 220, 202, 1) 0%, rgba(255, 255, 255, 1) 100%);
	font-size: 1.2rem;
}
.footer_inner {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	width: 920px;
	margin: 0 auto;
	color: #433910;
}
.footer_inner a {
	color: #433910;
}
footer nav ul {
	margin-bottom: 10px;
}
footer nav li {
	display: inline-block;
	margin-right: 1.5em;
}
footer nav li a {
	display: inline-block;
	padding-left: 15px;
	background: url("images/common/ico_arrow.png") no-repeat left center;
}
.copyright {
	font-size: 1.0rem;
}
/*-----------------------------------------
main
-----------------------------------------*/
main {
	width: 650px;
	overflow: hidden;
}
main p {
	margin-bottom: 1em;
}
main p.center {
	text-align: center;
}
main figure.center {
	text-align: center;
	margin-bottom: 1em;
}
main p.right {
	text-align: right;
}
main a.link {
	padding-left: 15px;
	background: url("images/common/ico_arrow.png") no-repeat left center;
}
main section {
	margin-bottom: 30px;
}
main section:last-child {
	margin-bottom: 0;
}
main figure {
	padding: 5px;
}
main figure img {
	border: 1px solid #FFF;
	box-shadow: 0 0 5px rgba(156, 156, 156, 0.75);
}
main figure img.book {
border: none;
box-shadow: none;
}
main .imgR {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
main .imgR.first {
	padding-bottom: 20px;
	margin-bottom: 20px;
	border-bottom: 1px solid #505050;
}
main .imgR .cont {
	flex: 1;
}
main .imgR .img {
	width: 208px;
	margin-left: 30px;
	text-align: center;
}
main .imgR .img.vertical {
	width: 166px;
}
main table {
	margin-bottom: 1em;
}
main th, main td {
	padding: 7px 1em;
	border: 1px solid #cac4a8;
	color: #433910;
}
main th {
	width: 30%;
	background: #efebde;
}
main a.btn {
	display: inline-block;
	width: 150px;
	line-height: 38px;
	border-radius: 4px;
	background-image: -moz-linear-gradient(90deg, rgb(152, 205, 37) 0%, rgb(118, 186, 234) 0%, rgb(93, 176, 234) 100%);
	background-image: -webkit-linear-gradient(90deg, rgb(152, 205, 37) 0%, rgb(118, 186, 234) 0%, rgb(93, 176, 234) 100%);
	background-image: -ms-linear-gradient(90deg, rgb(152, 205, 37) 0%, rgb(118, 186, 234) 0%, rgb(93, 176, 234) 100%);
	color: #FFF;
	font-size: 14px;
	text-align: center;
}
main a.btn:before {
	content: url("images/common/ico_arrow.png");
	display: inline-block;
	padding: 0 0.5em 0 0;
	line-height: 38px;
}
main a.btn:hover {
	text-decoration: none;
}
/*-----------------------------------------
見出し
-----------------------------------------*/
main h2 {
	display: flex;
	align-items: center;
	width: 100%;
	height: 140px;
	margin-bottom: 10px;
	padding-left: 30px;
	background: url("images/common/h2_bg.png") no-repeat center;
	color: #FFF;
	font-size: 2.4rem;
}
main h2 span {
	display: inline-block;
	line-height: 48px;
	padding-left: 70px;
	background: url("images/common/ico_h2.png") no-repeat left center;
}
.home main h2 {
	display: block;
	height: auto;
	margin-bottom: 30px;
	padding-left: 0;
	background: none;
}
main h3 {
	line-height: 50px;
	margin-bottom: 20px;
	padding: 0 40px;
	background-image: url("images/common/ico_flower2.png"), url("images/common/h3_bg.png");
	background-repeat: no-repeat, repeat-x;
	background-position: left 10px top 14px, left top;
	color: #433910;
	font-size: 1.5rem;
}
main h4 {
	margin-bottom: 20px;

}
main h5 {
	color: #3f9cde;
	margin-top: 5px;
	margin-bottom: 10px;
}
main h6 {
	color: #3f9cde;
	line-height: 1.8em;
}
/*-----------------------------------------
top
-----------------------------------------*/
.home dl.profile {
	margin-bottom: 1em;
}
.home dl.profile dt {
	clear: left;
	float: left;
	width: 10em;
	padding: 7px 0 7px 1em;
	color: #433910;
	font-weight: normal;
}
.home dl.profile dd {
	padding: 7px 0;
	border-bottom: 1px solid #cac4a8;
}
main h3.more {
	position: relative;
}
main h3.more a {
	display: inline-block;
	position: absolute;
	right: 1em;
	top: 10px;
	line-height: 1;
}
.home dl.blog dt {
	clear: left;
	float: left;
	width: 10em;
	padding: 7px 0 7px 1em;
	color: #433910;
}
.home dl.blog dd {
	padding: 7px 0;
	border-bottom: 1px dotted #cac4a8;
}
/*-----------------------------------------
ぱんくず
-----------------------------------------*/
.breadcrumb {
	margin-bottom: 20px;
}
.breadcrumb li {
	display: inline-block;
	font-size: 11px;
}
.breadcrumb li a {
	color: #433910;
	text-decoration: underline;
}
.breadcrumb li a:hover {
	text-decoration: none;
}
/*-----------------------------------------
List
-----------------------------------------*/
main ul.img4, main ul.img3, main ul.img2 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 1em;
}
main ul.img4 li {
	width: 24%;
}
main ul.img3 li {
	width: 32%;
}
main ul.img2 li {
	width: 48%;
}
main ul.img4 li img, main ul.img3 li img, main ul.img2 li img {
	display: block;
	margin: 0 auto 1em;
}
/*-----------------------------------------
料金表　price
-----------------------------------------*/
.page-price table.price {
	width: 100%;
}
.page-price table.price th {
	width: 50%;
}
.page-price table.price td {
	text-align: center;
}
/*-----------------------------------------
製品情報　product
-----------------------------------------*/
.page-product {}
/*-----------------------------------------
新着情報 information
-----------------------------------------*/
.blog_cont {
	padding: 0 1em;
}
.blog_category {
	display: flex;
	justify-content: flex-end;
	align-items: baseline;
}
.blog_category ul li {
	display: inline-block;
}
/*-----------------------------------------
pagenavi
-----------------------------------------*/
.wp-pagenavi {
	margin-bottom: 5px;
}
.wp-pagenavi a, .wp-pagenavi span {
	background-color: #0033a1;
	border: 1px solid #0033a1 !important;
	color: white;
	padding: 5px 8px !important;
	font-size: 14px;
	transition: 0.1s linear all;
}
.wp-pagenavi span.current {
	background-color: white;
	font-weight: normal !important;
	color: #0033a1;
}
.wp-pagenavi a:hover {
	background-color: #0033a1;
	color: white;
}

/**------------------------------
   FORM
-------------------------------**/
.wpcf7-form table {
width: 100%;
}
.wpcf7-form th {
width: 30%;vertical-align: middle;
}
.wpcf7-form td {
}
.wpcf7-form .req:after {
content: "必須";
display: inline-block;
float: right;
padding: 0 5px;
background: #b8b28f;
border-radius: 3px;
color: #FFF;
font-size: 1.2rem;
line-height: 19px;
}
input[type="text"], input[type="tel"], input[type="email"], textarea {
    width: 100%;
    padding: 10px 15px;
    background: #FFF;
	border: 1px solid #CCC;
}
input[type="number"] {
    padding: 10px 15px;
    text-align: center;
    background: #FFF;
}
select {
    padding: 10px 45px 10px 15px;
    background: #FFF url("../img/common/ico_arrow_btm_b.png") no-repeat right 15px center;
}
textarea {
    height: 140px;
    padding-top: 15px;
}
.wpcf7-form-control {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.wpcf7-list-item.first {
    /*margin-left: 0;*/
}
.wpcf7 form .wpcf7-response-output {
margin: 0;
}
.wpcf7-submit {
margin: 0 auto;
    padding: 8px 35px 8px 30px;
    line-height: 1.4;
    background: #584700;
    color: #FFF;
}
/*--------------------------------------------------------------------------------
 レスポンシブ
---------------------------------------------------------------------------------*/

.sp {
	display: none;
}
@media screen and (max-width: 1194px) { /* iPad Pro */
}
@media screen and (max-width: 1024px) { /* タブレット横 */
}
@media screen and (max-width: 896px) { /* iPhone XS MAX 横表示 */
	.sp {
		display: inline-block;
	}
	.pc {
		display: none;
	}
	.wrapper {
		width: 100%;
		overflow: hidden;
	}
	.wrapper .sp {
		display: inline;
	}
	.wrapper .sp .btn {
		padding: 5px;
		position: fixed;
		top: 10px;
		right: 10px;
		width: 40px;
		z-index: 10;
	}
	.menu__line {
		background: #3b86d2; /* スマホメニュー3本線の色はここで変更できます */
		display: block;
		height: 3px;
		position: absolute;
		transition: transform .3s;
		width: 100%;
	}
	.menu__line--center {
		top: 9px;
	}
	.menu__line--bottom {
		bottom: 0;
	}
	.menu__line--top.active {
		top: 8px;
		transform: rotate(45deg);
	}
	.menu__line--center.active {
		transform: scaleX(0);
	}
	.menu__line--bottom.active {
		bottom: 10px;
		transform: rotate(135deg);
	}
	.wrapper .sp .spmenu {
		width: 50%;
		position: fixed;
		z-index: 9999;
		left: -80%;
		top: 0;
		background-color: rgba(255, 255, 255, 0.98);
		overflow: auto;
		height: 100%;
	}
	.wrapper .sp .spmenu li {
		width: 100%;
		border-bottom: 1px dotted #ddd;
		font-size: 14px;
		overflow: hidden;
	}
	.wrapper .sp .spmenu li:first-child {
		line-height: 1em;
		padding: 10px 0;
		width: 100%;
		text-align: center;
	}
	.wrapper .sp .spmenu li:last-child {
		border-bottom: none;
	}
	.wrapper .sp .spmenu li a {
		color: #222;
		display: block;
		font-size: 12px;
		padding: 10px 0 10px 15px;
	}
	.wrapper .sp .spmenu li:first-child a {
		padding: 10px 0 10px 0;
	}
	.wrapper .sp .spmenu li a:hover {
		text-decoration: none;
	}
	.wrapper .sp .spmenu li a img {
		width: 93%;
	}
}
@media screen and (max-width: 640px) {}
@media screen and (max-width: 320px) {}