.fontfamily_ja,
.fontfamily_ja h1,
.fontfamily_ja h2,
.fontfamily_ja h3,
.fontfamily_ja h4,
.fontfamily_ja p,
.fontfamily_ja li {
	font-family: "メイリオ", meiryo, verdana, "ＭＳ Ｐゴシック","ヒラギノ角ゴ Pro W3" ,Osaka ,arial ,sans-serif;
}
.maintitle i {
	margin-bottom: 10px;
}
.maintitle2 {
	padding-bottom: 10px;
}
.maintitle3 {
	margin-top: 15px;
	padding-bottom: 5px;
}
.maintitle3 i {
	font-size: 100%;
	margin-left: 5px;
	margin-right: 7px;
	margin-top: 1px;
}
img[usemap] {
	border: none;
	height: auto;
	max-width: 100%;
	width: auto;
}
/*マップリンクの線消しChrome等用*/
.rolloverimgmap {
  border:none;
  outline:none;
}
.maintitle4 {
	margin-top: 0;
	padding-bottom: 5px;
}
.headerlogotitle {
	margin-top: 18px;
	padding: 0;
}
.headerlogo {
}
.headerlogo_s {
	display: none;
}
#headerwrap {
	background-color: #8f0c2e;
	background-image: none;
	/*background: url(../img/top_bg_mainimg.png) repeat-x center 85px;*/
	min-height: 480px;
	padding-top: 85px;
	min-height: 107px;
}
#headerwrap img {
	margin: 0 auto;
	width: 100%;
	max-width: 1280px;
	height: 100%;
}
#theMenu a {
	padding-left: 10px;
	font-weight: normal;
	color: #ccc;
	border-bottom: 1px #666 dotted;
	margin-right: 20px;
}
a.menu_home {
	border-top: 1px #666 dotted;
}
#theMenu a:hover {
	text-decoration: none;
	background-color: #666;
	padding-left: 10px;
	margin-right: 20px;
}
.menu-wrap {
	padding-top: 70px;
}
.menu-close {
	font-size: 150%;
}

/* membersbox Wrap */
#membersbox {
	display: block;
	margin-top: 80px;
	padding-bottom: 80px;
	background-color: #eee;
}
.membersbox h1 {
	margin-bottom: 80px;
}
.membersbox img:hover {
	opacity: 0.8;
	border: 2px solid #ccc;
}
.img-center {
	margin-left: auto;
	margin-right: auto;
}

/* servicewrap Wrap */
.servicesbox_add {
	margin-top: 80px;
	border-top: dotted 3px #ccc;
	padding-top: 80px;
}

/* table */
#companybox .table {
	border-bottom: 1px solid #ddd;
	margin-bottom: 80px;
}
#companybox .table th {
	background-color: #f5f5f5;
	text-align: right;
	width: 11em;
	font-weight: normal;
	padding: 15px 20px;
}
#companybox .table td {
	text-align: left;
	padding: 15px 20px;
}
#contactbox .table td {
	text-align: left;
}

/* Contact Wrap */
#contactwrap .title {
	margin-top: 10px;
}

/* Footer Wrap */
#footerbox {
	background-color: #2f2f2f;
	margin-top: 0px;
	padding-top: 40px;
	padding-bottom: 40px;
	color: #fff;
}
#footerbox li {
	margin-bottom: 5px;
}
#footerbox li a {
	color: #fff;
}

/* contentsheader Wrap */
.contentsheaderwrap {
	display: block;
	margin-top: 80px;
	margin-bottom: 40px;
	background-color: #ac143b;
	color: #fff;
}
.contentsheaderwrap2 {
	display: block;
	margin-top: 150px;
	margin-bottom: 40px;
	border-top: double 3px #ac143b;
	border-bottom: double 3px #ac143b;
}
.contentsheaderwrap3 {
	display: block;
	background-color: #ffe6ff;
	margin-bottom: 40px;
}
.contentsheaderwrap_cbpa {
	display: block;
	margin-top: 100px;
	margin-bottom: 40px;
	border-top: double 3px #ac143b;
	border-bottom: double 3px #ac143b;
}
.contentsheaderbox {
	padding: 40px;
}
.contentsheaderbox2 {
	padding: 10px;
}
.contentsheaderbox3 {
	padding: 10px;
}
/* servicecontents Wrap */
.contentswrap {
	display: block;
	margin-bottom: 60px;
}
.contentswrap_otu {
	padding-top: 40px;
	padding-bottom: 40px;
	background-color: #eee;
	margin-bottom: 40px;
}
.servicesbox .mt {
	margin-top: 30px
}
.messagebox .mt {
	margin-top: 30px
}
.messagebox p {
	margin-bottom: 20px;
}
/* memberbox Wrap */
.memberwrap {
	display: block;
	margin-bottom: 20px;
}
.memberbox .mt {
	margin-top: 20px
}
.memberbox p {
	margin-bottom: 20px;
}
.memberbox2 .mt {
	margin-top: 0px
}
.memberbox2 p {
	margin-bottom: 20px;
	line-height: 1.7;
}
.memberbox2 h4 {
	margin-bottom: 20px;
	font-size: 24px;
	font-weight: 300;
	text-align: center;
	padding-top: 20px;
	padding-bottom: 10px;
	border-bottom: 4px double #bbb;
}
.memberbox2 ul {
	margin-bottom: 30px;
}
.memberbox2 li {
	margin-bottom: 10px;
}
.memberbox2 .blog-date {
	text-align: right;
}
.servicesboxL {
	text-align: right;
}
/* servicesboxR */
.servicecontlist {
	padding-left: 20px;
}
.servicecontlist li {
	line-height: 1.6;
	margin-bottom: 5px;
}
.teikyostyle {
	padding-left: 0px;
}
.teikyostyle li {
	line-height: 1.6;
	margin-bottom: 5px;
	list-style-type: none;
}
.teikyostyle i {
	margin-right: 5px;
}

/* Large devices Desktops (≥1200px) */
@media (max-width: 1200px) {
.maintitle3 {
	margin-bottom: 40px;
}
.text {
	margin-bottom: 40px;
}
.md3text {
	margin-bottom: 10px;
}
}
/* Medium devices Desktops (≥992px) */
@media (max-width: 992px) {
.servicesboxL {
	text-align: left;
}
}
/* Small devices Tablets (≥768px) */
@media (max-width: 768px) {
.headerlogo {
	display: none;
}
.headerlogo_s {
	display: block;
}
}

.caution {
	color: red;
	font-weight: bold;
}
#contactbox {
	margin-bottom: 80px;
}
#contactbox label.form-label-th {
	display: block;
	text-align: left;
	margin-top: 15px;
	margin-left: 5px;
	font-weight: normal;
}

.card:focus {
	border-color: #6F390E;
}
table {
    display: table;
    border-collapse: separate;
    border-spacing: 2px;
    border-color: grey;
}
th {
	width: 200px;
  font-weight: bold;
}
td, th {
    display: table-cell;
    vertical-align: inherit;
    padding: 1em;
    text-align: left;
    border-bottom: solid #ccc;
}
div.radioBox {
	margin: 10px auto 0;
	text-align: center;
	background-color: white;
	padding: 10px;
}
div.radioBox label {
	margin-right:20px;
}