@charset "utf-8";

/*

Template: weluka-theme-00

Theme Name: Weluka Theme 00 child

Theme URI: http://www.weluka.me/

Author: Weluka Team

Author URI: https://www.weluka.me/

Description: weluka plugins theme 00.

Version: 1.0

License: GNU General Public License v2 or later

License URI: http://www.gnu.org/licenses/gpl-2.0.html

Tags: white, weluka, responsive-layout, featured-images, custom-menu, bootstrap, custom-header, custom-footer, editor-style, webfont, threaded-comments

*/

@import url("../weluka-theme-00/style.css");  /* こちらで親テーマのstyleを継承 */

.weluka-container {
}
body {
 font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
 color: #412d1e;
 font-size: 15.4px;
 background: #fdfaf2;
}
@keyframes fadeIn { 
 0% {opacity: 0} 
 100% {opacity: 1} 
}
@-webkit-keyframes fadeIn {
 0% {opacity: 0}
 100% {opacity: 1}
}
#weluka-main-header {
 background: #fdfaf2;
}
.parent {
 position: relative;
}
.bodoni-moda {
 font-family: "Bodoni Moda", serif;
 font-optical-sizing: auto;
 font-weight: <weight>;
 font-style: normal;
 font-size: 3.0em;
}
.green {
 color: #017e43;
}
.circle-arrow {
 width: 100px;
 height: 100px;
 border: 2px solid #fff;
 border-radius: 50%;
 background: transparent;
 cursor: pointer;
 display: flex;
 align-items: center;
 justify-content: center;
 padding: 0;
 position: absolute;
 top: 40px;
 right: 0;
 transform: translateY(-50%);
}
.circle-arrow span {
  width: 10px;
  height: 10px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  margin-left: -2px; /* 見た目の微調整 */
}
.circle-arrow:hover {
  background: rgba(0,0,0,0.5);
}
.circle-arrow:hover span {
  border-color: #fff;
  transform: rotate(45deg) translateX(2px);
}
.flow {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  margin: 0px auto;
}
.flow-item {
  flex: 1;                 /* 5等分 */
  text-align: center;
  padding: 30px 20px;
  position: relative;
  background: #fff;
}
.flow-number {
  font-size: 1.2em;
  font-weight: bold;
  margin-bottom: 15px;
}
.flow-icon {
  font-size: 3.0em;
  font-weight: bold;
  color: #ccc;
  margin-bottom: 15px;
}
.flow-item h3 {
  font-size: 18px;
  margin-bottom: 10px;
}
.flow-item p {
  font-size: 14px;
  line-height: 1.6;
}
/* 矢印を右側に表示 */
.flow-item:not(:last-child)::after {
  content: "→";
  position: absolute;
  right: -15px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 20px;
  color: #412d1e;
}
.workscatgory .wrap {
 background-color: #fff;
 margin: 0.1em;
 box-shadow: 0px 5px 20px 0px rgba(0, 0, 0, 0.2);
}
.workscatgory h4 {
 font-size: 1.0em;
 text-align: center;
 padding: 12px 24px 0 24px;
}
.workscatgory .weluka-list-content {
 padding: 0 20px 24px 24px;
}
.contact_bg {
 margin: 0 0.1em;
 padding: 40px;
 color: #fff;
 background: url(/img/contact_bg.jpg);
 background-size: cover;
 position: relative;
 background-blend-mode: multiply;
 background-color: rgba(26,26,26,0.5);
 border-radius: 10px;
}
.aisatsu {
 font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
 font-size: 1.1em;
 line-height: 2.4em;
 letter-spacing: 0.05em;
}
.shomei {
 font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
 font-size: 1.3em;
 line-height: 2.0em;
 margin: 0 0 1.0em 0;
 letter-spacing: 0.1em;
}
.company {
 width: 100%;
}    
.company dl {
 width:100%;
 border-bottom:1px solid #fafafa;
}
.company dl dt {
 border-top:1px solid #fafafa;
 float: left;
 width: 20%;
 padding:2.0% 0;
 font-weight: normal; 
 color: #666;
}
.company dl dd {
 border-top:1px solid #fafafa;
 padding:2.0% 0;
 margin-left: 20%;
}
.company dl dd a {
 text-decoration: underline;
}
.jigyo h5 {
 font-size: 1.0em;
 padding: 0 0 0.5em 0;
 border-bottom: 1px solid rgba(65,45,30,0.5);
}
.jigyo_content {
 display: flex;
 flex-flow: row wrap;
 margin: 0 0 20px 0;
 font-size: 0.9em;
}
/* flexアイテム（子要素） */
.jigyo_content .box{
 padding: 0.5em 1.0em;
 background: #fff;
 flex-basis: auto;
 margin: 10px 10px 0px 0;
}
.for {
 border: 1px solid #f3f3f3;
 padding: 1.0em;
 margin: 20px 0.15em 0.15em 0.15em;
 text-align: center;
}
.estimate {
 background-color: rgba(65,45,30,0.8);
 color: #fff;
 padding: 30px;
 margin: 0.15em;
 text-align: center;
}
.frame {
 border: solid 1px rgba(65,45,30,0.5);
 padding: 20px;
 margin: 0.15em;
}
.top_bg {
 background-image: url(/img/mark.svg);
 background-repeat: no-repeat;
 background-size: 30%;
 background-blend-mode: multiply;
 background-position: right bottom;
}
.top_bg01 {
 margin: 0 0.1em;
 padding: 40px;
 color: #fff;
 background: url(/img/newsbg.jpg);
 background-size: cover;
 position: relative;
 background-blend-mode: multiply;
 background-color: rgba(65,45,30,0.5);
}
.about_bg {
 background: #412d1e;
 color: #fff;
 margin: 0 0.1em 20px 0.1em;
 padding: 0.5em;
 text-align: center;
 border-radius: 5px;
}
.about {
 margin: 0.2em 0 20px 0;
 padding: 0;
}

.business_cont {
 padding: 30px;
 margin: 0.2em;
 background-color: #fff;
 color: #1A1A1A;
 border: solid 1px #fff;
 border-radius: 2px;
}
.service img.img-thumbnail {
  width: 200px;
  height: 180px !important;
 object-fit: cover;
 font-family: 'object-fit: cover;'
 border-radius: 0px;
}
 img.img-thumbnail {
 border-radius: 0px !important;
 padding: 10px;
}
.service h4 {
 font-size: 1.4em;
 color: #ffffff;
 background: linear-gradient(to left,#284678,#147DBE);
 padding: 0.25em 1.0em;
}
.service .weluka-list {
 margin: 0 0 40px 0;
}
.service .weluka-list-title {
 font-size: 1.0em;
}
.link {
 text-decoration: underline;
}
.link a {
 color: #1A1A1A;
}
.servicepoint {
 margin: 0 0 40px 0;
}
.servicepoint .weluka-list-title {
 font-size: 1.2em;
 color: #ffffff;
 border: solid 2px #fff;
 text-align: center;
 padding: 0.2em;
}
.contact_cont {
 padding: 25px 40px 20px 40px;
 background-color: #fff;
 color: #1A1A1A;
 display: flex; 
 border: solid 1px #fff;
 border-radius: 2px;
}
.contact_cont:hover {
 background-color: #1A1A1A;
 color: #fff;
}

.slideti {
 background: linear-gradient(#147DBE, #284678FF);
}
.t_navi {
 margin: 20px 0 0 0;
 color: #412d1e;
}
.tel {
 margin: 26px 0 0 0;
 font-weight: bold;
 font-size: 1.2em;
 text-align: center;
 border: solid 2px #412d1e;
 color: #412d1e;
}
.tel i {
 margin: 0 0.2em 0 0;
}
.tel a {
 color: #1A1A1A !important;
}
.plink {
 text-decoration: underline;
}
.foot_bg {
 background-color: #FFF;
}
.foot_bg a {
 text-decoration: underline;
}
.cr {
 border-top: solid 1px rgba(65,45,30,0.5);
 padding: 20px 0 0 0;
 margin: 40px 0 0 0;
}
.cr a {
 color: #412d1e;
}
footer p {
 font-size: 0.8em;
}
.t_right {
 text-align: right;
}
.t_center {
 text-align: center;
}
.bg_contact {
 background-color: #ffffff;
 padding: 0 20px;
}
.bg01 {
 background-color: #1A1A1A;
 color: #fff;
}
.bg02 {
 background-color: #ccc;
}
.bg03 {
 color: #fff;
 background: url(/img/slide03.jpg);
 background-size: cover;
 position: relative;
 height:100%;
 padding: 60px 0;
 background-blend-mode: multiply;
 background-color: rgba(26,26,26,0.8);
}
.bg04 {
 background-color: #F5F8FA;
}
.m_title {
 color: #fff;
 background: url(/img/slide03.jpg);
 background-size: cover;
 position: relative;
 height:100%;
 text-align: center;
 font-weight: bold;
 background-blend-mode: multiply;
 background-color: rgba(26,26,26,0.8);
}
.m_title p {
 color: #fff;
 font-family: 'Open Sans', sans-serif;
}
.bridge_title {
 color: #fff;
 background: url(/img/bridge.jpg);
 background-size: cover;
 position: relative;
 height:100%;
 text-align: center;
 font-weight: bold;
 background-blend-mode: multiply;
 background-color: rgba(26,26,26,0.8);
}
.title p {
 color: #fff;
 font-family: 'Open Sans', sans-serif;
}
.midashi {
 font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
 letter-spacing: 0;
 color: #017e43;
 font-weight: normal;
 padding: 0 0 0.5em 0;
}
h2, h3, h4, h5 {
 font-weight: bold;
 line-height: 1.5em;
}
.page-title {
 text-align: center;
 margin: 40px 0 0 0;
}
h1 {
 font-size: 11px;
}
h2 {
 font-size: 2.4em;
}
h3 {
 font-size: 2.0em;
}
h4 {
 font-size: 1.4em;
}
h5 {
 font-size: 1.15em;
}
p {
 line-height: 1.8em;
}
.f11 {
 font-size: 1.1em;
 line-height: 1.8em;
}
.f12 {
 font-size: 1.2em;
 line-height: 1.8em;
}
.f15 {
 font-size: 1.5em;
 line-height: 1.8em;
}
.pp h5 {
 font-size: 1.2em;
 line-height: 1.0em;
 margin-top: 2.0em;
}
.pp ul {
 margin: 0;
 padding: 0;
}
.pp ul li {
 list-style: none;
}
.mb20 {
  margin-bottom: 20px;
}
.mb40 {
  margin-bottom: 40px;
}
.footlink {
 color: #ffffff;
}
.footlink a {
 color: #ffffff;
}
/* media topの場合のタイトルと日付表示順並べ替え */
.cst-postlist .weluka-list-mediatop .weluka-list-row .wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-direction: row;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
/* 日時（カテゴリ―部分） */
.cst-postlist .weluka-list-mediatop .weluka-col .weluka-list-meta {
  -webkit-box-ordinal-group: 1;
  -ms-flex-order: 1;
  -webkit-order: 1;
  order: 1;
  margin-top: 0;
  font-size: 15.2px;
  padding-right: 15.2px;
}
/* 投稿タイトル */
.cst-postlist .weluka-list-mediatop .weluka-col .weluka-list-title {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 2;
  -webkit-order: 2;
  order: 2;
  margin-top: -2px;
  font-size: 15.2px;
}
.cst-postlist .wrap {
 border-bottom:1px solid #999999;
 padding: 0 0 1.0em 0;
}
.cst-postlist {
 border-top:1px solid #999999;
 padding: 1.5em 0 0 0;
}
.br-pc {
 display:block;
}
.br-sp {
 display:none;
}
/*Contact Form 7カスタマイズ*/
/*スマホContact Form 7カスタマイズ*/
@media(max-width:500px){
.inquiry th,.inquiry td {
 display:block!important;
 width:100%!important;
 border-top:none!important;
 -webkit-box-sizing:border-box!important;
 -moz-box-sizing:border-box!important;
 box-sizing:border-box!important;
}
.inquiry tr:first-child th{
 border-top:1px solid #d7d7d7!important;
}
/* 必須・任意のサイズ調整 */	
.inquiry .haveto,.inquiry .any {	
font-size:10px;
}}
/*見出し欄*/
.inquiry th{
 text-align:left;
 font-size:14px;
 color:#444;
 padding-right:5px;
 width:30%;
 border:solid 1px #d7d7d7;
}
/*通常欄*/
.inquiry td{
 font-size:13px;
 border:solid 1px #d7d7d7;	
}
.inquiry {
 background:#ffffff;
}
/*横の行とテーブル全体*/
.entry-content .inquiry tr,.entry-content table{
 border:solid 1px #d7d7d7;	
}
/*必須の調整*/
.haveto{
 font-size:7px;
 padding:5px;
 background:#aaa;
 color:#fff;
 border-radius:2px;
 margin-right:5px;
 position:relative;
 bottom:1px;
}
/*任意の調整*/
.any{
 font-size:7px;
 padding:5px;
 background:#93c9ff;
 color:#fff;
 border-radius:2px;
 margin-right:5px;
 position:relative;
 bottom:1px;
}
/*ラジオボタンを縦並び指定*/
.verticallist .wpcf7-list-item{
 display:block;
}
/*送信ボタンのデザイン変更*/
#formbtn{
 display: block;
 padding:1em 0;
 margin-top:30px;
 width:100%;
 background:#222;
 color:#fff;
 font-size:18px;
 font-weight:bold;	 
 border-radius:2px;
 border: none;
}
/*送信ボタンマウスホバー時*/
#formbtn:hover{
 background:rgba(34,34,34,0.7);
 color:#fff;
}
@media (max-width: 991px) {
.weluka-container {
 max-width: 95%;
}
body {
 font-size: 15.0px;
}
.h_navi {
 margin: 20px 0 0 0;
}
.tel {
 margin: 10px 0 0 0;
}
.shomei {
 font-size: 1.0em;
 line-height: 1.8em;
 letter-spacing: 0;
}
.servicepoint .weluka-list-title {
 margin: 0 0 0px 0;
}
.workscatgory h4 {
 font-size: 1.2em;
}
h3 {
 font-size: 1.6em;
}
h4 {
 font-size: 1.3em;
}
h5 {
 font-size: 1.1em;
}
.f15 {
 font-size: 1.3em;
 line-height: 1.4em;
}
.business_cont {
 padding: 15px;
}
.contact_cont {
 display: block;
}
.flex-item{
 flex-direction: column;
 align-items: center;
}
.flex-item:nth-child(odd) {
 flex-direction: column;
}
.flex-item__img {
 width: 100%;
 height: 250px;
 padding-bottom: 30px;
}
.flex-item__txt {
 width: 100%;
 padding: 0px;
}

.about_bg {
 background-size: 100% auto;
}
.top_bg01 {
 background-position: right top 0px;
}
.top_bg02 {
 background-position: left top 0px;
}
.top_bg03 {
 background-position: right top 0px;
}
.top_bg04 {
 background-position: left top 0px;
}
.spmb {
 margin-bottom: 100px;
}
.logo {
 padding: 0 20px;
}
.f_logo {
 padding: 0 80px;
}
.t_right {
 text-align: center;
}
.contact_bg {
 padding: 20px 20px 100px 20px;
 border-radius: 5px;
}
.circle-arrow {
 top: 40px;
 left: 35%;
 transform: translateY(-50%);
}
.flow {
 flex-direction: column;
}
.flow-item:not(:last-child)::after {
 content: "↓";
 right: 50%;
 top: auto;
 bottom: -20px;
 transform: translateX(50%);
}
.sp-center {
 text-align: center;
}
.br-pc {
 display:none;
}
.br-sp {
 display:block;
}
}