@charset "utf-8";
/* CSS Document */

/*sidebar*/
.sidebar .box01 {
  background: url(img/side/con01_bg.jpg) top center repeat;
  box-sizing: border-box;
  border: 3px solid #b5b5b5;
}
.sidebar .box01 .mail {
  margin: 7px auto;
}
.sidebar .box02 {
  background: url(img/side/box02_bg.jpg) top center repeat;
  box-sizing: border-box;
  border: 3px solid #b5b5b5;
  padding: 10px 0 7px;
}
.sidebar .box03 {
  box-sizing: border-box;
  border: 3px solid #522f0e;
  padding: 10px 0;
}
.sidebar .box04 {
  background: url(img/side/box04_bg.jpg) bottom center no-repeat;
  background-size: cover;
  padding: 10px 0;
}
.sidebar .box05 {
  background: url(img/side/box05_bg.jpg) top center no-repeat;
  background-size: cover;
  padding: 20px 0 10px;
}

/*contactbnr*/
.contact_banner {
  box-sizing: border-box;
  border: 3px solid #522f0e;
  margin-top: 20px;
  position: relative;
}
.contact_banner .con_inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 20px;
  background: url(img/contactbnr/bg.jpg) top center no-repeat;
  font-size: 16px;
  line-height: 1;
}
.contact_banner .con_title {
  color: #ffe569;
  line-height: 1;
  padding: 5px 0;
  font-size: 40px;
  background-color: #522f0e;
}
.contact_banner .logo {
  font-size: 35px;
  line-height: 1;
  margin: 7px 0;
}
.contact_banner .tel {
  margin-bottom: 10px;
}
.contact_banner .icon {
  position: absolute;
  bottom: 0;
  left: 210px;
}
.contact_banner .min_txt {
  font-size: 12px;
  margin-top: 5px;
}

/*reason*/
#reason .bg {
  background: url(img/reason/bg.jpg) top center repeat;
  box-sizing: border-box;
  border: 3px solid #d6d6d6;
}
#reason .ul01 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 20px;
}
#reason .box01 {
  margin-top: 20px;
}
#reason .box01 .min {
  font-size: 20px;
  line-height: 1;
}
#reason .box01 .title_area {
  background-color: #eb6b06;
  padding: 10px;
  position: relative;
}
#reason .box01 .title {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 10;
}
#reason .box01 h2 {
  font-size: 30px;
  margin-top: 15px;
  margin-right: 10px;
}
#reason .box01 .title img {
  margin-top: -10px;
}
#reason .box01 .title_area .icon {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  left: -30px;
}
#reason .box01 .center {
  margin: 20px 0;
  font-size: 20px;
}
#reason .box01 .inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 15px;
  text-align: justify;
}
#reason .box01 .inner img {
  margin-right: 20px;
}
#reason .box01 .con {
  box-sizing: border-box;
  border: 1px solid #eb6b06;
  background: url(img/reason/box01_con_bg.jpg) top center repeat;
  padding: 20px;
  position: relative;
  margin-top: 50px;
  font-size: 16px;
  text-align: justify;
}
#reason .box01 .con .title {
  background-color: #eb6b06;
  padding: 5px 0;
  width: 500px;
  justify-content: flex-start;
  margin: -45px auto 0;
  box-shadow: 5px 5px #b5b5b5;
}
#reason .box01 .con .title img {
  margin-right: 10px;
  margin-left: 30px;
  margin-top: 0;
}
#reason .box01 .con .big {
  font-size: 27px;
  margin: 20px auto 15px;
}
#reason h3 {
  font-size: 20px;
}
#reason .box02 .title_area,
#reason .box02 .con .title {
  background-color: #016934;
}
#reason .box03 .title_area,
#reason .box03 .con .title {
  background-color: #522f0e;
}
#reason .box02 .con {
  border: 1px solid #016934;
}
#reason .box03 .con {
  border: 1px solid #522f0e;
}

/*specialty*/
#specialty .bg {
  box-sizing: border-box;
  border: 3px solid #6b5640;
}
#specialty .box01 .title {
  background-color: #016934;
  font-size: 25px;
  line-height: 1;
  margin-bottom: 20px;
  padding: 10px 0;
}
#specialty .box01 .title02 {
  background-color: #eb6b06;
  margin-top: 20px;
}
#specialty .box01 ul {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  text-align: justify;
}
#specialty .box01 li {
  width: 324px;
  font-size: 16px;
  position: relative;
}
#specialty .box01 li img {
  margin-bottom: 10px;
}
#specialty .box01 .icon {
  position: absolute;
  top: -15px;
  right: -10px;
}
#specialty .box02 .title_area {
  padding: 15px 0;
  background: url(img/specialty/box02_title_bg.png) center left no-repeat;
  background-color: #016934;
  position: relative;
  font-size: 20px;
}
#specialty .box02 .title_area .icon {
  position: absolute;
  bottom: 5px;
  right: 5px;
}
#specialty .box02 h2 {
  font-size: 40px;
  color: #ffefa2;
  font-weight: bold;
}
#specialty .box02 .text {
  font-size: 20px;
  line-height: 1;
  margin: 20px auto;
}
#specialty .box02 li {
  font-size: 20px;
  line-height: 1;
  margin-bottom: 20px;
}
#specialty .box02 li:nth-last-child(1) {
  margin-bottom: 0;
}
#specialty .box02 .con {
  box-sizing: border-box;
  border: 3px solid #d6d6d6;
  background: url(img/specialty/con_bg.jpg) top center repeat;
  padding: 20px;
  position: relative;
}
#specialty .box02 .con .zin {
  position: absolute;
  right: 0;
  bottom: 0;
}
#specialty .box02 h3 {
  font-size: 32px;
  color: #fff;
  padding: 10px 0;
  background-color: #016934;
  margin: 20px auto;
}
#specialty .box02 .inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#specialty .box02 .inner img {
  margin-right: 20px;
}
#specialty .box03 .title_area {
  background: url(img/specialty/box02_title_bg.png) center left no-repeat;
  background-color: #eb6b06;
}
#specialty .box03 h3 {
  background-color: #eb6b06;
}

/*questions*/
#questions .box {
  background: url(img/questions/box_bg.jpg) top center no-repeat;
  background-size: cover;
  padding: 20px;
}
#questions .box ul {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}
#questions .box li {
  margin-top: 20px;
}
#questions .box01 .title_area {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 35px;
  background-color: #ffefa2;
}
#questions .box01 .content {
  background: url(img/questions/box01_bg.jpg) top center repeat;
  box-sizing: border-box;
  border: 2px solid #d6d6d6;
  border-top: none;
  text-align: justify;
}
#questions .box01 .inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#questions .box01 .inner img {
  margin-right: 20px;
}
#questions .box01 .con {
  box-sizing: border-box;
  border: 2px solid #000000;
  padding: 20px;
  position: relative;
  background-color: #fff;
  margin-top: 50px;
  padding-top: 35px;
}
#questions .box01 .con .icon {
  position: absolute;
  top: -35px;
  left: 20px;
}
#questions .box01 .inner02 {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#questions .box01 .inner02 .img {
  margin-left: 20px;
}
#questions .box01 .big {
  font-size: 25px;
  line-height: 1.4;
  margin-bottom: 10px;
}

#company .table {
  width: 100%;
}
#company .table th,
#company .table td {
  font-weight: bold;
  box-sizing: border-box;
  border: 1px solid #000000;
  padding: 10px;
}
#company .table th {
  background-color: #eeeeee;
  text-align: center;
}
#company iframe {
  width: 100%;
}
#company .box01 {
  box-sizing: border-box;
  border: 3px solid #000000;
  font-size: 15px;
}
#company .inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  text-align: justify;
  margin-bottom: 20px;
  font-size: 16px;
}
#company .inner img {
  margin-right: 20px;
}
#company .inner02 img {
  margin-right: 0;
  margin-left: 20px;
}
#company .big {
  display: flex;
  align-items: center;
  font-size: 25px;
}
#company .big:before,
#company .big:after {
  content: '';
  flex-grow: 1;
  height: 2px; /* 線の太さを変えたいときはここを変える */
  background: #eb6b06; /* 線の色を変えたいときはここを変える */
  margin: 0 0.4em; /* 文字と線の余白用 なくても良い */
}
#company .box01 table {
  font-size: 15px;
}
#company .box01 table th {
  font-weight: bold;
}
#company .box01 .title {
  font-size: 20px;
  color: #eb6b06;
  line-height: 1;
  margin: 15px 0;
}

/*contact*/
#contact .box01 {
  box-sizing: border-box;
  border: 2px solid #016934;
  padding: 30px 20px;
}
#contact .box01 .big {
  font-size: 20px;
  line-height: 1;
  margin: 10px 0 5px;
}
#contact .box01 li {
  line-height: 2;
}
#contact table {
  width: 100%;
  box-sizing: border-box;
  border: 2px solid #000000;
  margin-top: 20px;
  margin-bottom: 30px;
}
#contact table th,
#contact table td {
  padding: 10px;
  box-sizing: border-box;
  border-bottom: 2px solid #000000;
}
#contact table th {
  font-weight: bold;
  background-color: #eeeeee;
  vertical-align: middle;
}
#contact table input,
#contact table textarea {
  width: 100%;
  box-sizing: border-box;
  padding: 3px;
}
#contact table .tel_area {
  width: auto;
}
/*確認画面へ進むボタン用*/
.mw_wp_form_input .btn input:hover,
.mw_wp_form_confirm .btn input:hover {
  opacity: 0.7;
}
.mw_wp_form_input .btn input {
  background: url(img/contact/btn_bg.png) right center no-repeat;
  background-position-x: 95%;
  font-size: 20px;
  width: 400px;
  padding: 20px 0;
  line-height: 1;
  color: #000;
  font-weight: bold;
  box-shadow: 5px 5px #b5b5b5;
  border: 1px solid #000000;
}
/*送信ボタン用*/
#contact .btn input {
  background: url(img/contact/btn_bg.png) right center no-repeat;
  background-position-x: 95%;
  font-size: 20px !important;
  width: 400px !important;
  padding: 20px 0 !important;
  line-height: 1;
  color: #000;
  border: 1px solid #000000;
  margin-top: 20px;
  cursor: pointer;
}

.cf7-cf-turnstile {
  display: table;
  margin: 0 auto;
  position: relative;
}

#contact .wpcf7-spinner {
  display: none;
}
/*blog*/
#blog .con {
  padding-bottom: 15px;
  box-sizing: border-box;
  border-bottom: 1px solid #ccc;
  margin-bottom: 15px;
}
#blog .con:nth-last-child(1) {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}
#blog_single .box01,
#blog .box01 {
  box-sizing: border-box;
  border: 3px solid #ccc;
  padding: 20px;
  background: url(img/side/box02_bg.jpg) top center repeat;
  margin-bottom: 20px;
}
#blog_single .box01 .inner {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 10px;
}
#blog_single .tag,
#blog .tag {
  background-color: #eb6b06;
  color: #fff;
  padding: 2px 0;
  margin-left: 10px;
  text-align: center;
  width: 80px;
}
#blog_single .tag02,
#blog .tag02 {
  background-color: #522f0e;
  color: #fff;
  padding: 2px 0;
  margin-left: 10px;
  text-align: center;
  width: 80px;
}
#blog .txt {
  margin-top: 5px;
}

/*voice*/
#case_single .img {
  box-sizing: border-box;
  border: 2px solid #ccc;
  padding: 20px;
}
#case_single .img img {
  width: 100%;
  height: 388px;
  object-fit: cover;
}
#case_single .gallery_area {
  box-sizing: border-box;
  padding: 20px;
  border: 2px solid #ccc;
  border-top: none;
}
#case_single .gallery_box {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
}
#case_single .gallery_box a {
  margin-right: 20px;
  margin-top: 20px;
  width: 210px;
}
#case_single .gallery_box a img {
  height: 155px;
  width: 100%;
}
#case_single .gallery_box a:nth-child(3n) {
  margin-right: 0;
}
#case_single .case_txt_box {
  box-sizing: border-box;
  padding: 20px;
  border: 2px solid #ccc;
  border-top: none;
}

/*一覧ページ*/
#case .item {
  position: relative;
  margin-right: 20px;
  width: 327px;
  padding: 10px;
  box-sizing: border-box;
  background-color: #f5f5f5;
}
#case .item:nth-child(2n) {
  margin-right: 0;
}
#case .item:nth-child(3),
#case .item:nth-child(4) {
  margin-top: 20px;
}
#case_arcive_list {
  padding: 20px;
  padding-top: 0;
}
#case .item img {
  width: 100%;
  height: 200px;
  object-fit: cover;
}
#case .txt_area {
  padding: 10px 10px 0;
}
#case .btn {
  background-color: #eb6b06;
  color: #fff;
  line-height: 1;
  font-size: 16px;
  padding: 7px 0;
  width: 60%;
  margin: 8px auto 0;
}

#sitemap li {
  font-size: 18px;
  padding-left: 15px;
  box-sizing: border-box;
  line-height: 2.5;
}
#sitemap li span {
  border-left: 5px solid #000;
  padding-left: 10px;
}
