@charset "UTF-8";


/*----------------------common----------------------*/
body {
  font-family: 'Noto Sans Japanese',"ヒラギノ丸ゴ ProN","Hiragino Maru Gothic ProN","メイリオ","ＭＳ Ｐゴシック",sans-serif;
  font-size: 13px;
  width: 100%;
}
img {
  outline: 0;
  vertical-align: top;
}
h1 {
  font-weight: 200;
}
h2 {
  font-size: 2em;
  margin: 0 0 1em 0;
  padding-bottom: .4em;
  border-bottom: 1px solid #ccc;
}
h3 {
  font-size: 1.4em;
  margin: 0 0 1em 0;
  padding-bottom: .4em;
  font-weight: normal;
}
a {
  color: #521717;
  transition: .6s;
}
a:hover, a:focus {
  text-decoration: none;
  color: #6a3300;
}
a img {
  transition: .2s;
}
a img:hover {
  opacity: .9;
  -webkit-opacity: .9;
  -moz-opacity: .9;
}
p {
  line-height: 1.6;
}

/*layout-div*/
.wrapper {
  overflow: hidden;
}

/*----------------------header----------------------*/
.header {
  padding: 5px 0 12px 0;
  border-top: 5px solid #330000;
  background: url('./header_bg.jpg') no-repeat;
  position: relative;
}
.header .logo {
  width: 200px;
  margin: 2.4em auto 1.2em auto;
}
.header .logo h1 {
  margin: 0;
}
.header .logo img {
  width: 100%
}
/*top-links*/
.top-links {
  position: absolute;
  top: 0;
  right: 0;
}
.top-links ul {
  margin: 0;
  padding: 0;
}
.top-links ul li {
  display: inline-block;
  margin-right: 1em;
}
.top-links a {
  font-size: 1em;
  color: #fff;
  font-weight: 500;
  display: block;
  width: 100%;
  height: 100%;
  padding: .6em 1.2em;
  transition: .6s;
  background: #480000 url('./top-links_bg.gif');
  border-bottom-left-radius: 6px;
  border-bottom-right-radius: 6px;
}
.top-links a:hover {
  background: #480000;
}
.top-links i {
  font-size: 1em;
  color: #330000;
  display: inline-block;
  background: #fff;
  border-radius: 50%;
  padding: .6em;
  margin-right: 1em;
}

/* header menu PC*/
.nav-pc {
  text-align: center;
  padding: 1.6em 0 0 0;
  margin: 0 auto;
  display: table;
}
.nav-pc li {
  position: relative;
  display: table-cell;
  margin: 0 2em;
  border-right: 2px solid #ccc;
}
.nav-pc li:last-child {
  border-right: none;
}
.nav-pc li a {
  font-size: 16px;
  color: #330000;
  font-weight: 500;
  display: block;
  width: 100%;
  height: 100%;
  padding: .4em 2.4em;
}
.nav-pc li a span {
  font-size: 13px;
  color: #505050;
  display: block;
  padding-top: .4em;
}
.nav-pc li:hover {
  color: #000;
  background: #f5f5f5;
}

/*----------------------frotnt page----------------------*/
/* front-page */
.front-section {
  padding: 2em 0;
}
.front-section h2 {
  font-size: 1.4em;
  font-weight: 500;
}
.front-section h2:before {
  font-family: FontAwesome;
  margin-right: .4em;
  content: " \f152";
}
.btn {
  display: block;
  margin: 2em auto;
  padding: .6em 1.2em;
  width: 240px;
  border-radius: 0;
}
/*mv*/
#mv {
  overflow: hidden;
  background-image: url('./mv_bg.gif');
  padding: 3em 0;
}
.mv-slide {
  position: relative;
}
.mv-slide img {
  max-width: 100%;
}
.mv-btn {
  display: block;
  position: absolute;
  right: 40px;
  bottom: 80px;
  z-index: 120;
  color: #fff;
  padding: .6em 1.6em;
  font-size: 1.2em;
  text-align: center;
  border: 2px solid #fff;
}
.mv-btn:hover {
  color: #fff;
  background: #310000;
}
.mv-btn:after {
  font-family: FontAwesome;
  margin-left: .3em;
  content: " \f105";
}

/*info*/
#info {
  padding: 2em 0;
}
.info-content {
  background: url('./info_bg.gif');
  padding: 1em;
  text-align: center;
  border-radius: 10px;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
#info i {
  padding-right: 1em;
}
#info a span {
  padding-right: .6em;
}

/*news*/
.news-list {
  margin: 0 0 2em 0;
  padding: 0;
  font-size: 1.2em;
}
.news-list li {
  list-style: none;
  margin-bottom: 1em;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.news-list li a {
  color: #000;
}
.news-list li a:hover {
  color: #521717;
}
.news-date {
  margin-right: .6em;
}
.news-cat {
  margin-right: .4em;
  padding: .2em .6em;
  font-size: .9em;
}
.cat-news {
  background: #6b5e30;
}
.cat-info {
  background: #325e44;
}
.news-list li .news-cat a {
  color: #fff;
}
.to-archive {
  border: 2px solid #3d0000;
  color: #3d0000;
  font-size: 1.4em;
}
.to-archive i {
  margin-left: 1em;
}
.to-archive:hover {
  border: 2px solid #3d0000;
  background: #3d0000;
  color: #fff;
}

/*for customers*/
#for-customers a {
  border: 2px solid #c5ab5e;
  display: block;
  margin-bottom: 1em;
  font-size: 1.4em;
  height: 124px;
  text-align: center;
}
#for-customers a:hover {
  background: #eeeadb;
}
#for-customers a img {
  float: left;
  width: 140px;
  height: 120px;
}
#for-customers a span {
  display: block;
  margin: 2.4em 1em;
  color: #454545;
  background: url('./customer_mark.png') right center no-repeat;
}

/*front-02*/
#front-02 {
  background: url('./bnrs_bg.gif');
  padding: 4em 0;
  color: #fff;
}
.bnrs-box {
  text-align: center;
  overflow: hidden;
  background: #f3f3f3;
}
.bnrs-box:hover {
  background: #eeeadb;
}
.bnrs-box img {
  max-width: 100%;
}
.bnrs-box p {
  display: block;
  margin: 0 1em;
  padding: 1em 0;
  color: #454545;
  font-size: 1.4em;
  background: url('./features_mark.png') right center no-repeat;
}
.front-02-bnr {
  position: relative;
  display: block;
  margin-bottom: 2.2em;
}
.front-02-bnr img {
  width: 100%;
}
.front-02-bnr p {
  position: absolute;
  display: block;
  background: url('./features_mark.png') right center no-repeat;
  color: #fff;
}
#front-02-retails p {
  top: 40%;
  right: 4%;
  width: 40%;
  font-size: 1.2em;
}
#front-02-overseas p {
  top: 25%;
  right: 4%;
  width: 40%;
  font-size: 1.1em;
}
#front-02-overseas p span {
  display: block;
  font-size: .9em;
}

/*front-03*/
#front-03 {
  padding: 2.4em 0;
}
.front-03-bnr {
  position: relative;
  display: block;
}
.front-03-bnr img {
  width: 100%;
}
.front-03-bnr p {
  position: absolute;
  top: 40%;
  right: 4%;
  width: 40%;
  display: block;
  color: #454545;
  font-size: 1.6em;
  background: url('./features_mark.png') right center no-repeat;
  color: #fff;
}

/*----------------------footer----------------------*/
#footer-1 {
  border-top: 8px solid #6a0e0e;
  background: url('./footer-01_bg.gif');
  margin: 0;
  padding: 4em 0;
}
.footer-logo {
  width: 160px;
}
.footer-pages {
  margin: 0;
  padding: 2.4em 0;
}
.footer-pages li {
  list-style: none;
  margin-bottom: .6em;
}
.footer-pages li:before {
  font-family: FontAwesome;
  margin-right: .4em;
  content: " \f105";
}
.contact-box {
  background: url('./contact-box_bg.gif');
  padding: 1em;
}
.contact-box-inner {
  background: #fff;
  text-align: center;
  padding: 2em;
}
.contact-box h2 {
  font-size: 1.2em;
  margin: 0 0 .2em 0;
  border: none;
}
.contact-box-tel {
  font-size: 2.4em;
  line-height: 1em;
  color: #6a0e0f;
}
.contact-box-tel span {
  font-size: .6em;
}
.contact-box-reception {
  font-size: 1.2em;
  color: #522200;
  margin-bottom: 1em;
}
.contact-box-btn {
  font-size: 1.4em;
  color: #fff;
  display: inline-block;
  background: #6a0e0f;
  border-radius: 12px;
  padding: .6em 1.2em;
}
.contact-box-btn:hover {
  color: #fff;
  background: #530a0b;
}
#footer-2 {
  background: #311501;
  margin: 0;
  padding: 2em;
  text-align: center;
}
#footer-2 .footer-links {
  margin: 0;
  padding: 0;
}
#footer-2 .footer-links li {
  list-style: none;
  display: inline-block;
  font-size: 1.2em;
  border-right: 1px solid #fff;
  padding: 0 1em;
}
#footer-2 .footer-links li:last-child {
  border: none;
}
#footer-2 .footer-links li a {
  color: #fff;
}
#footer-3 {
  background: #fff;
  padding: 1em 0;
  text-align: center;
}
.copyright {
  margin: 0;
}
/*go to top*/
.go-to-top {
  display: none;
  position: fixed;
  bottom: 7%;
  right: 5%;
}
.go-to-top a {
  display: block;
  background-color: #ccc;
  text-align: center;
  color: #222;
  font-size: 2em;
  text-decoration: none;
  padding: .6em 1em;
  filter: alpha(opacity=50);
  -moz-opacity: 0.5;
  opacity: 0.5;
}
.go-to-top a:hover {
  background-color: #333333;
  color: #fff;
  text-decoration: none;
  filter: alpha(opacity=0);
  -moz-opacity: 1;
  opacity: 1;
}

/*----------------------pages----------------------*/

/*page*/
.page-intro {
  background-size: cover;
  height: 200px;
  padding: 90px 0;
}
h1.page-title {
  font-size: 1.8em;
  margin: 0;
  padding: 0;
  font-weight: bold;
  color: #fff;
}
h1.page-title:before {
  font-family: FontAwesome;
  content: " \f152";
  margin: 0 .6em 0 0;
  font-weight: normal;
}
h1.post-title {
  font-size: 1.6em;
  margin: .4em 0 .4em 0;
  padding: 0 0 .4em 0;
  border-bottom: 1px solid #ccc;
}

/* breadcrumbs */
.breadcrumbs-wrapper {
  background: url('./breadcrumbs_bg.gif');
  padding: 1em 0;
}
.breadcrumbs {
  color: #fff;
  margin: 0;
  padding: 0;
}
.breadcrumbs a {
  color: #fff;
}
.breadcrumbs li {
  display: inline;
  margin: 0;
}
.breadcrumbs li:before {
  margin: 0 1em;
  font-family: FontAwesome;
  content: " \f105";
}
.breadcrumbs li:first-child:before {
  content: ""
}

/* Post archive page */
.post-archive {
  padding: 1.6em 0 1.6em 0;
}
.archive-article {
  margin-bottom: 1.6em;
  padding-bottom: 1.6em;
  border-bottom: 1px solid #ddd;
  overflow: hidden;
}
.archive-article h2 {
  margin: 0 0 .8em 0;
  padding: 0;
  font-size: 1.3em;
  font-weight: normal;
  line-height: 1.6em;
  border-bottom: none;
}
.archive-article .post-excerpt {
  margin: .8em 0;
}
.archive-article .link-next {
  text-align: center;
  float: right;
  padding: .4em .8em;
  background: #5a3535;
  color: #fff;
  font-size: 1em;
  display: inline-block;
}
.archive-article .link-next:hover {
  background: #331f1f;
  text-decoration: none;
}

/*Pagination*/
.pagination {
  display: block;
  margin: 1.6em auto;
  text-align: center;
  overflow: hidden;
}
.pagination ul {
  margin: 0;
}
.pagination li {
  display: inline-block;
  list-style: none outside none;
  margin-left: 4px;
}
.pagination li:first-child {
  margin-left: 0;
}
.pagination li.active {
  background-color: #999999;
  color: #fff;
  padding: 1em 2em;
}
.pagination li a {
  background: none repeat scroll 0 0 #CCCCCC;
  border-radius: 4px;
  color: #fff;
  display: block;
  padding: 1em 2em;
  text-decoration: none;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);
}
.pagination li a:hover {
  background-color: #444;
  color: #fff;
  opacity: 0.8;
  transition-duration: 500ms;
  transition-property: all;
  transition-timing-function: ease;
}

/*single-posts*/
.post-info {
  margin: 0;
  padding: 0;
}
.post-info li {
  display: inline-block;
  margin-right: 1em;
}
.post-info i {
  margin-right: .6em;
}

/*post-content*/
.post {
  padding: 1.6em 0;
}
.post-content {
  padding: 1.6em 0 1.6em 0;
  overflow: hidden;
}
.post-content h2 {
  margin: 1.6em 0 1em 0;
  font-size: 1.4em;
  border-bottom: 4px solid #5a3535;
}
.post-content h3 {
  margin: 2em 0 1em 0;
  font-size: 1.4em;
}
.post-content h4 {
  font-size: 1.3em;
  border-bottom: 1px dotted #ccc;
}
.post-content p {
  line-height: 1.8em;
  margin: 0 0 1.4em 0;
  font-size: 1.1em;
}
.post-content img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 0 auto 1.2em auto;
}
.post-content ul {
  margin: 0 0 1.6em 0;
  padding: 0;
  font-size: 1.2em;
}
.post-content ul li {
  list-style: none;
  border-bottom: 1px dotted #ccc;
  margin-bottom: .4em;
}
.post-content table {
  display: block;
  margin: 0 auto 1.6em auto;
}
.post-content table td {
  border: 1px solid #ccc;
  padding: 1em;
}
.post-content table td ul {
  font-size: 1em;
  margin: 0;
}
.post-content table td ul li {
  border: none;
  margin-bottom: 0;
}
.post-content blockquote {
  color: #545454;
  font-size: .9em;
  line-height: 1.8em;
  font-style: italic;
  margin: 1.6em 0;
  padding: 0 0 0 1em;
  border-left: 1px solid #ccc;
}

/*page-content*/
.page-section {
  padding: 1.2em 0 2.4em 0;
}
.page-content {
  padding: 1.6em 0 1.6em 0;
  overflow: hidden;
}
.page-content h2 {
  margin: 0 0 1em 0;
  font-size: 1.4em;
  border-bottom: 4px solid #5a3535;
}
.page-content h3 {
  margin: 0 0 .6em 0;
  font-size: 1.3em;
}
.page-content h4 {
  font-size: 1.2em;
  border-bottom: 1px dotted #ccc;
}
.page-content p {
  line-height: 1.8em;
  margin: 0 0 1.4em 0;
  font-size: 1.1em;
}
.page-content img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 0 auto 1.2em auto;
}
.page-content ul {
  margin: 0 0 0 0;
  padding: 0;
}
.page-content ul li {
  list-style: none;
}
.page-content table {
  margin: 0 auto 1.6em auto;
}
.page-content table td {
  border: 1px solid #ccc;
  padding: 1em;
}

/*sidebar*/
.sidebar {
  padding: 1.6em 0;
}
#menu-sidebar_nav {
  padding: 0;
  margin: 0 0 1.6em 0;
}
#menu-sidebar_nav li {
  list-style-type: none;
  font-size: 1.2em;
  border: 1px solid #ccc;
  border-bottom: none;
}
#menu-sidebar_nav li a {
  color: #000;
  display: block;
  width: 100%;
  padding: 1.2em 0 1.2em 1.2em;
}
#menu-sidebar_nav li a:hover {
  background: #f0edda;
  text-decoration: none;
}
#menu-sidebar_nav li a:after {
  font-family: FontAwesome;
  float: right;
  margin-right: 1.6em;
  content: " \f138";
  color: #ababab;
}
#menu-sidebar_nav li:last-child {
  border-bottom: 1px solid #ccc;
}
#menu-sidebar_nav li.current-menu-item a {
  background: #f0edda;
}
#menu-sidebar_nav li.current-menu-item a:after {
  color: #545341;
}
.side-bnrs {
  margin: 0;
  padding: 0;
}
.side-bnrs li {
  list-style: none;
}
.side-bnrs img {
  width: 100%;
}

/*page-company*/
.page-company .page-intro {
  background-image: url('./page-intro_bg-company.jpg');
}
.company-philosophy {
  border: 1px solid #ccc;
  padding: 1.6em;
}
.company-philosophy li {
  font-size: 1.2em;
  font-weight: 500;
  margin-bottom: 1em;
}
.company-philosophy li:before {
  font-family: FontAwesome;
  content: " \f111";
  color: #5f3603;
  margin-right: 1em;
}
.company-philosophy li:last-child {
  margin-bottom: 0;
}
.company-policy {
  margin-bottom: 1em;
}
.company-policy h3 {
  margin-bottom: .8em;
}
.company-policy h3 span {
  border-bottom: 1px solid #000;
  padding-bottom: .4em;
}
.company-policy p {
  font-size: 1em;
}
.company-greeting p {
  margin-bottom: 1em;
}
.company-greeting .company-greeting-pic {
  float: left;
  margin: 0 1em 1em 0;
  width: 160px;
}
.company-tbl {
  width: 100%;
  margin: 0 auto;
  font-size: 1.2em;
}
.company-tbl th,
.company-tbl td {
  border: 1px solid #ccc;
  padding: 1.2em 1em;
}
.company-tbl th {
  background: #ececec;
  font-weight: normal;
  text-align: center;
  width: 30%;
}
.company-tbl td {
  width: 70%;
}
.company-base {
  margin-bottom: .6em;
}
.company-base li {
  margin-bottom: .4em;
}
.company-base li i {
  margin-right: .8em;
}

/*page-product*/
.page-product .page-intro {
  background-image: url('./page-intro_bg-product.jpg');
}
.product-wrapper {
  display: flex;
  flex-wrap: wrap;
}
.product-box {
  margin-bottom: 2em;
}
.product-box .product-pic {
  border: 12px solid #f0edda;
  margin-bottom: .6em;
}
.product-box .product-name {
  margin-bottom: .6em;
  line-height: 1.6em;
  padding-bottom: .6em;
  border-bottom: 1px dotted #ccc;
}
.product-box .product-desc {
  line-height: 1.5em;
}
.product-box .product-info {
  border: 1px solid #ccc;
  padding: .6em;
}
.product-box .product-info li {
  margin-bottom: .4em;
  font-size: .7em;
}
.product-btn-download {
  background: #940e0f;
  color: #fff;
  text-align: center;
  padding: 1em;
  display: block;
  font-size: 1.6em;
  width: 400px;
  margin: 0 auto;
  border-radius: 12px;
}
.product-btn-download:hover {
  color: #fff;
  background: #790506;
}

/*page-factory*/
.page-factory .page-intro {
  background-image: url('./page-intro_bg-factory.jpg');
}
.factory-section {
  margin-bottom: 1.6em;
}
.factory-section h3 {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  margin: 0 0 1em 0;
  padding: .6em .8em;
  text-align: center;
  font-size: 2.8em;
  background-color: #c98d1f;
  color: #000;
}
.factory-section h3 span {
  padding: 0 0 0 .8em;
  font-size: .6em;
  color: #fff;
}
.factory-section h4 {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 1.6em;
  line-height: 1.5em;
  margin: 1em 0 1em 0;
  border: none;
}
.ecology-section {
  margin-bottom: 1.2em;
}
.ecology-section h3 {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 1.4em;
  margin: 0 0 1em 0;
  padding: .8em .8em;
  background-color: #59953d;
  color: #fff;
}

/*page-kyujin*/
.page-kyujin .page-intro {
  background-image: url('./page-intro_bg-kyujin.jpg');
}
.kyujin-tbl {
  width: 100%;
  font-size: 1.2em;
  table-layout: fixed;
  word-break: break-word;
}
.kyujin-tbl th,
.kyujin-tbl td {
  border: 1px solid #ccc;
  padding: 1.2em 1em;
}
.kyujin-tbl th {
  background: #ececec;
  font-weight: normal;
  text-align: center;
  width: 30%;
}
.kyujin-h3 {
  font-weight: bold;
  font-size: 1.1em;
  padding: 0;
}

/*page-pb*/
.page-pb .page-intro {
  background-image: url('./page-intro_bg-pb.jpg');
}

/*page-retails*/
.page-retails .page-intro {
  background-image: url('./page-intro_bg-retails.jpg');
}
.retails-date {
  text-align: right;
}
.retails-notes {
  margin-bottom: 2em;
  border: 1px solid #ccc;
  border-radius: 8px;
  padding: 1.2em;
  text-align: center;
}
.retails-notes ul {
  margin: 0;
  padding: 0;
}
.retails-notes ul li {
  display: inline-block;
}
.retails-notes ul li {
  display: inline-block;
  margin: 0 1em;
}
.retails-notes ul li span {
  font-size: 1em;
}
.retails-notes ul li span:after {
  content: "：";
  font-size: .8em;
}
.retails-table {
  width: 100%;
}
.retails-table td {
  border: none !important;
  text-align: center;
  padding: .6em;
}
.retails-table th {
  white-space: nowrap;
  padding: .6em 0;
}
.retails-table img {
  width: 72px;
  margin: 0;
}
.retails-area {
  background: #f0edda;
  color: #000;
  display: inline-block;
  padding: .6em 1.2em;
}
.retails-link {
  color: #310000;
}
.retails-link:after {
  font-family: FontAwesome;
  content: " \f08e";
}
.tooltip-inner {
  max-width: 240px;
  background: #310000;
  -webkit-border-radius:4px;
  -moz-border-radius:4px;
  border-radius:4px
}
.tooltip.top .tooltip-arrow {
  border-top-color: #310000;
}

/*page-overseas*/
.page-overseas .page-intro {
  background-image: url('./page-intro_bg-overseas.jpg');
}
.divider {
  border-top: 1px solid #ccc;
  padding: 0 0 2.4em 0;
}

/*page-pb*/
.pb-wrapper {
  background: #f0edda;
  padding: 1.6em;
}
.pb-box {
  background: #fff;
  padding: .8em;
}
.pb-achievement {
  margin-bottom: 2.4em;
  width: 600px;
  max-width: 100%;
}
.pb-achievement h3 {
  font-size: 1.2em;
  background: #efefef;
  padding: .6em;
  border-radius: 8px;
}
.pb-achievement li {
  font-size: 1.1em;
  border-bottom: 1px dotted #ccc;
  margin-bottom: .8em;
}

/*page-contact*/
.page-contact .page-intro {
  background-image: url('./page-intro_bg-contact.jpg');
}
#faq-content dt {
  display: block;
  border-bottom: #666 1px solid;
  margin-bottom: .6em;
  padding: .6em;
  border: 1px solid #ccc;
  cursor: pointer;
  font-size: 1.2em;
}
#faq-content dd {
  display: none;
  margin-bottom: 1.6em;
  padding: .6em;
  font-size: 1.1em;
}
.faq-active {
  background: #f9f8e7;
}
#faq-content dt:after {
  position: absolute;
  right: 32px;
  content: '>';
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  -moz-transition: all, 0.25s, linear;
  -o-transition: all, 0.25s, linear;
  -webkit-transition: all, 0.25s, linear;
  transition: all, 0.25s, linear;
}
#faq-content dt.faq-active:after {
  -moz-transform: translate(0, 50%);
  -ms-transform: translate(0, 50%);
  -webkit-transform: translate(0, 50%);
  transform: translate(0, 50%);
  -moz-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
}
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="url"],
.wpcf7 select,
.wpcf7 textarea {
  background-color: #fff;
  color: #333;
  width: 100%;
  border: 1px solid #ddd;
  padding: 0.6em;
  border-radius: 4px;
  box-shadow: 1px 1px 3px rgba(0,0,0,.1) inset;
}
.wpcf7-submit {
  padding: 1em .4em;
  background: #3e2706;
  color: #fff;
  border-radius: 4px;
  cursor: pointer;
  box-shadow: 0 0 1px rgba(0,0,0,.2);
  border: 1px solid #ccc;
  width: 400px;
  margin: 0 auto;
  display: block;
}
.wpcf7-submit:hover {
  background: #734402;
}
.wpcf7 .required {
  color: #fff;
  background: #dc8787;
  padding-left: 4px;
  padding: .2em .6em;
  margin-left: .8em;
}
.wpcf7 .optional {
  color: #fff;
  background: #5f88a7;
  padding-left: 4px;
  padding: .2em .6em;
  margin-left: .8em;
}
.wpcf7 .wpcf7-mail-sent-ok {
  border: 2px solid #ffffff;
  padding: 1em;
  text-align: center;
}
.form-dl {
  border-bottom: 1px solid #ccc;
  border-left: 1px solid #ccc;
  border-right: 1px solid #ccc;
  background-color: #e8e8e8;
}
.form-dl dt {
  float: left;
  clear: left;
  width: 200px;
  font-weight: bold;
  background-color: #e8e8e8;
  border-top: 1px solid #ccc;
  padding: 1em;
}
.form-dl dd {
  background-color: #fff;
  border-top: 1px solid #ccc;
  margin-left: 200px;
  padding: 1em;
  overflow: hidden;
}
.form-dl p.form-notes {
  font-size: .8em;
  margin: .6em 0;
}
.contact-tel {
  border: 1px solid #ccc;
  padding: 1.6em;
}
p.contact-tel-number {
  font-size: 2.4em;
  margin: 0 0 .2em 0;
  color: #6a0e0f;
  line-height: 1.6;
}
p.contact-tel-number span {
  font-size: .6em;
  padding-left: 1em;
}
p.contact-tel-reception {
  font-size: 1.2em;
  margin: 0;
  color: #522200;
}
.contact-notes {
  font-size: .9em;
  padding: 1em;
  border: 1px solid #ccc;
  border-radius: 4px;
}
.contact-notes p {
  margin: 0;
}

/*page-recruit*/
.page-recruit .page-intro {
  background-image: url('./page-intro_bg-recruit.jpg');
}
.recruit-tbl {
  width: 100%;
  font-size: 1.2em;
  margin-bottom: 2em !important;
  table-layout: fixed;
  word-break: break-word;
}
.recruit-tbl th,
.recruit-tbl td {
  border: 1px solid #ccc;
  padding: 1.2em 1em;
  line-height: 1.7;
}
.recruit-tbl th {
  background: #ececec;
  font-weight: normal;
  text-align: center;
  width: 30%;
}
.recruit-tbl td ul:last-child {
  margin-top: 1em;
}
.recruit-tbl td p {
  font-size: 1em;
  margin-bottom: 0;
}
.recruit-h3 {
  font-weight: bold;
  font-size: 1.1em;
  padding: 0;
}

img.recruit-president-pic {
  margin-bottom: 1em;
}
.recruit-message {
  line-height: 2.4;
}
.iframe-wrapper {
  position: relative;
  width: 100%;
  padding: 75% 0 0 0;
  margin-bottom: 1em;
}
.iframe-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.recruit-btn {
  background: #940e0f;
  color: #fff;
  text-align: center;
  padding: 1em;
  display: block;
  font-size: 1.6em;
  width: 400px;
  margin: 0 auto;
  border-radius: 12px;
}
.recruit-btn:hover {
  color: #fff;
  background: #790506;
}

/*page-blog*/
.blog .page-intro, .archive .page-intro {
  background-image: url('./page-intro_bg-blog.jpg');
}

/*page-sitemap*/
.page-sitemaps .page-intro {
  background-image: url('./page-intro_bg-sitemap.jpg');
}
.sitemap-list {
  margin: 0 0 2em 0;
  padding: 0;
}
.sitemap-list li {
  border-bottom: 1px dotted #ccc;
  list-style: none;
}
.sitemap-list li a {
  display: block;
  padding: .6em;
}
.sitemap-list li a:hover {
  background: #f3f3f3;
}

/*page-privacy*/
.page-privacy .page-intro {
  background-image: url('./page-intro_bg-privacy.jpg');
}
.page-privacy .page-section {
  padding: .8em 0 1em 0;
}

/*page-404*/
.error404 .page-intro {
  background-image: url('./page-intro_bg-company.jpg');
}
