/*
Theme Name: plushouse
Template: businesspress
Description: PLUSHOUSING theme custom
Author: FL
Version: 1.0
*/

@import url('https://fonts.googleapis.com/css2?family=Lato:wght@400;700;900&family=Shippori+Mincho+B1:wght@400;500;600;700;800&family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap');

*,
*:before,
*:after {
  box-sizing: inherit;
}

:root {
--easing: cubic-bezier(.2, 1, .2, 1);
--transition: .8s var(--easing);
}


html {
  box-sizing: border-box;
}
html:lang(ja) {
    font-size: 82%;
}
@media screen and (min-width: 782px){
	html:lang(ja) {
	    font-size: 88%;
	}
}


body:lang(ja){
    font-family:"Lato","Zen Kaku Gothic New","游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", 'メイリオ' , Meiryo , Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight: 400;
	line-height: 1.8;
	letter-spacing: .01rem;
	color:#383433;
	background-image:url("img/haikei.jpg");
	background-size: 50%;
	font-feature-settings: "palt";
}



.gohtic{
    font-family:'Zen Kaku Gothic New',"游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", 'メイリオ' , Meiryo , Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.en{font-family: "Lato", sans-serif;}
.mincho{font-family: "Shippori Mincho B1", serif;}

.paragraph{
    letter-spacing: 0.04em;
    line-height: 2.1;
}


a{text-decoration:none}


/*===========Margin And Paddings============*/

.mt-0 {
    margin-top: 0 !important;
}
.mt-5 {
    margin-top: 5px !important;
}
.mt-10 {
    margin-top: 10px !important;
}
.mt-15 {
    margin-top: 15px !important;
}
.mt-20 {
    margin-top: 20px !important;
}
.mt-25 {
    margin-top: 25px !important;
}
.mt-30 {
    margin-top: 30px !important;
}
.mt-35 {
    margin-top: 35px !important;
}
.mt-40 {
    margin-top: 40px !important;
}
.mt-45 {
    margin-top: 45px !important;
}
.mt-50 {
    margin-top: 50px !important;
}
.mt-55 {
    margin-top: 55px !important;
}
.mt-60 {
    margin-top: 60px !important;
}
.mt-62 {
    margin-top: 62px !important;
}
.mt-65 {
    margin-top: 65px !important;
}
.mt-70 {
    margin-top: 70px !important;
}
.mt-75 {
    margin-top: 75px !important;
}
.mt-80 {
    margin-top: 80px !important;
}
.mt-85 {
    margin-top: 85px !important;
}
.mt-90 {
    margin-top: 90px !important;
}
.mt-95 {
    margin-top: 95px !important;
}
.mt-100 {
    margin-top: 100px !important;
}
/* Custom Margin Bottom */
.mb-0 {
    margin-bottom: 0 !important;
}
.mb-5 {
    margin-bottom: 5px !important;
}
.mb-10 {
    margin-bottom: 10px !important;
}
.mb-15 {
    margin-bottom: 15px !important;
}
.mb-20 {
    margin-bottom: 20px !important;
}
.mb-25 {
    margin-bottom: 25px !important;
}
.mb-30 {
    margin-bottom: 30px !important;
}
.mb-35 {
    margin-bottom: 35px !important;
}
.mb-40 {
    margin-bottom: 40px !important;
}
.mb-45 {
    margin-bottom: 45px !important;
}
.mb-50 {
    margin-bottom: 50px !important;
}
.mb-55 {
    margin-bottom: 55px !important;
}
.mb-60 {
    margin-bottom: 60px !important;
}
.mb-62 {
    margin-bottom: 62px !important;
}
.mb-65 {
    margin-bottom: 65px !important;
}
.mb-70 {
    margin-bottom: 70px !important;
}
.mb-75 {
    margin-bottom: 75px !important;
}
.mb-80 {
    margin-bottom: 80px !important;
}
.mb-85 {
    margin-bottom: 85px !important;
}
.mb-90 {
    margin-bottom: 90px !important;
}
.mb-95 {
    margin-bottom: 95px !important;
}
.mb-100 {
    margin-bottom: 100px !important;
}
.m-0 {
    margin: 0px !important;
}
.m-15{margin:5px 15px !important}


/* Custom Padding top */
.pt-0 {
    padding-top: 0 !important;
}
.pt-5 {
    padding-top: 5px !important;
}
.pt-10 {
    padding-top: 10px !important;
}
.pt-15 {
    padding-top: 15px !important;
}
.pt-20 {
    padding-top: 20px !important;
}
.pt-25 {
    padding-top: 25px !important;
}
.pt-30 {
    padding-top: 30px !important;
}
.pt-35 {
    padding-top: 35px !important;
}
.pt-40 {
    padding-top: 40px !important;
}
.pt-45 {
    padding-top: 45px !important;
}
.pt-50 {
    padding-top: 50px !important;
}
.pt-55 {
    padding-top: 55px !important;
}
.pt-60 {
    padding-top: 60px !important;
}
.pt-65 {
    padding-top: 65px !important;
}
.pt-70 {
    padding-top: 70px !important;
}
.pt-75 {
    padding-top: 75px !important;
}
.pt-80 {
    padding-top: 80px !important;
}
.pt-85 {
    padding-top: 85px !important;
}
.pt-90 {
    padding-top: 90px !important;
}
.pt-95 {
    padding-top: 95px !important;
}
.pt-100 {
    padding-top: 100px !important;
}
/* Custom Padding top */
.pb-0 {
    padding-bottom: 0 !important;
}
.pb-5 {
    padding-bottom: 5px !important;
}
.pb-10 {
    padding-bottom: 10px !important;
}
.pb-15 {
    padding-bottom: 15px !important;
}
.pb-20 {
    padding-bottom: 20px !important;
}
.pb-25 {
    padding-bottom: 25px !important;
}
.pb-30 {
    padding-bottom: 30px !important;
}
.pb-35 {
    padding-bottom: 35px !important;
}
.pb-40 {
    padding-bottom: 40px !important;
}
.pb-45 {
    padding-bottom: 45px !important;
}
.pb-50 {
    padding-bottom: 50px !important;
}
.pb-55 {
    padding-bottom: 55px !important;
}
.pb-60 {
    padding-bottom: 60px !important;
}
.pb-65 {
    padding-bottom: 65px !important;
}
.pb-70 {
    padding-bottom: 70px !important;
}
.pb-75 {
    padding-bottom: 75px !important;
}
.pb-80 {
    padding-bottom: 80px !important;
}
.pb-85 {
    padding-bottom: 85px !important;
}
.pb-90 {
    padding-bottom: 90px !important;
}
.pb-95 {
    padding-bottom: 95px !important;
}
.pb-100 {
    padding-bottom: 100px !important;
}
.p-0 {
    padding: 0 !important;
}
.p-15{
    padding: 15px !important;
}
.p-20{
    padding: 20px !important;
}
.p-30{
    padding: 30px !important;
}


h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6{
	font-weight:normal;
	margin-top:0.5em;
	margin-bottom:0.5em;
	color:unset;
}


h1, .h1 {
	font-size: 2.5rem;
}
h2, .h2 {
	font-size: 1.86rem;
}
h3, .h3 {
	font-size: 1.5rem;
}
h4, .h4 {
	font-size: 1.25rem;
}
h5, .h5 {
	font-size: 1.125rem;
}
h6, .h6 {
	font-size: 1rem;
}


.font-bold{
    font-weight: 700;
}
.font-normal{
    font-weight: 400;
}
b, strong {
    font-weight: 700;
}


img{max-width: 100%;}

.text-center{
	text-align:center;
}
.text-left{
	text-align:left;
}
.text-right{
	text-align:right;
}

/* Table */
table {
	font-size: 100%;
}

.rad5 ,.rad5 img{border-radius:5px;overflow: hidden;}
.rad10,.rad10 img{border-radius:10px;overflow: hidden;}
.rad20,.rad20 img{border-radius:20px;overflow: hidden;}
.rad50,.rad50 img{border-radius:50%;overflow: hidden;}

.kage{
    /*text-shadow: 0px 1px 8px #222;*/
    text-shadow: 0px 1px 2px #5e5c50;
}

.kage2{
 text-shadow    : 
       1px  1px 1px #FFF,
      -1px  1px 1px #FFF,
       1px -1px 1px #FFF,
      -1px -1px 1px #FFF,
       1px  0px 1px #FFF,
       0px  1px 1px #FFF,
      -1px  0px 1px #FFF,
       0px -1px 1px #FFF;  
}

.txt-white{
    color:#FFF !important;
}

.lh01{line-height:1.1}
.lh02{line-height:1.2}
.lh03{line-height:1.3}

/*------------------------------------------*/
/*loading*/
/*------------------------------------------*/
.loader-wrap {
    position: fixed;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
	background-image:url("img/haikei.jpg");
	background-size: 50%;
    z-index: 1050;
    font-weight: normal;
    letter-spacing: 2px;
}

.loader-wrap h6{
	position: absolute;
    top: calc(50% - 3em);
}

.loader{
  display: flex;
}

.wp-block-table td, .wp-block-table th {
    border: 1px solid #f4f5f6;
}



@keyframes arrows {
  0%,
  100% {
    color: #000;
    transform: translateY(0);
  }
  50% {
    color: #a990c3;
    transform: translateY(10px);
  }
}

.loader span {
  --delay: 0s;
  animation: arrows 1s var(--delay) infinite ease-in;
  font-size:30px;
  margin:0 5px;
  font-weight: 900;
}


.site-content{
	color:#FFF;
}
.site-content, .container-content{
    max-width: 920px;
}

.post-type-archive-works .jumbotron,
.tax-wkcate .jumbotron{
	background-position: top center;
}

.jumbotron-title {
    letter-spacing: .066em;
    font-weight: 600;
    line-height:1.2;
}
.jumbotron-overlay {
    background-color: rgba( 0, 0, 0 , 0);
}
@media screen and (max-width: 781.777px){
	.jumbotron-title {
		font-size: 2.5rem;
	}
}

.site-logo img {
    min-width: 180px;
}


/*===========custom ============*/
.site{overflow:hidden;}

.top-bar-main {
    color: #000;
    font-size: 14px;
    font-weight: 600;
}


.top-bar-main li:before {
    color: #716c66;
    top: -2px;
}

.top-bar-main li.top-bar-main-access:before,
.top-bar-main li.top-bar-main-contact:before{
    font-size: 20px;
} 


.top-bar-main-phone{font-size:25px;}
.top-bar-main li.top-bar-main-phone:before {
    content: "\f10b";
    font-size: 25px;
}
.menu a:before {
    color: #000;
}

.jumbotron {
    background-color: transparent;
}


.site-header{
	border:none;
	position:relative;
}

.site-description{
	font-size:10px;
}

.main-header-clone {
    background-color: rgba(148, 144, 133, 1);
}



/* flexbox
--------------------------------------- */
.flexbox {
  display        : flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: center;
  position:relative;
}

.flexbox.align-items-noset{
  align-items: initial;;
}



.colum100 {
    width: calc(90% - 1.3%);
    margin: 0 auto;
}

.flexbox .colum25{
	width:calc(25% - 1.3%);
}

.flexbox .colum30{
	width:calc(30% - 1.3%);
}
.flexbox .colum35{
	width:calc(35% - 1.3%);
}
.flexbox .colum40{
	width:calc(40% - 1.3%);
}
.flexbox .colum45{
	width:calc(45% - 1.3%);
}
.flexbox .colum50{
	width: calc(50% - 1.3%);
}
.flexbox .colum55{
	width: calc(55% - 1.3%);
}
.flexbox .colum60{
	width:calc(60% - 1.3%);
}
.flexbox .colum65{
	width:calc(65% - 1.3%);
}

.flexbox .colum70{
	width:calc(70% - 1.3%);
}

@media screen and (min-width: 782px) {
 .flexrev{
     flex-direction: row-reverse;
  }

 .flexrev .wp-block-column:not(:first-child) {
    margin-left: 0em;
    margin-right: 0em;
 }

}

@media screen and (max-width: 781.777px) {
  .flexbox {
    flex-direction: column;
  }
  .flexbox.flexwrap{
    flex-direction: row; ;
    padding: 0 0px;
  }
  .flexbox .colum25{
	 width: calc(50% - 15px);
	 margin: 0 auto;
  }
  .flexbox .colum25.mt-service{
	 margin-top: 0;
  }

  .flexbox .colum30,
  .flexbox .colum35,
  .flexbox .colum40,
  .flexbox .colum45,
  .flexbox .colum50,
  .flexbox .colum55,
  .flexbox .colum60,
  .flexbox .colum65,
  .flexbox .colum70{
     width: calc(100% - 30px);
     margin: 0 auto;
   }
}

.hishi{
	clip-path: polygon(0 0, 68% 0, 100% 100%, 32% 100%);
}



.drawer-hamburger-icon{
	width: 120%;
}
.drawer-hamburger-icon:before,
.drawer-hamburger-icon:after {
	width: 70%;
}
@media screen and (min-width: 980px) {
	.main-header-content, .home-header-content {
	    max-width: 100%;
	    padding-right: 0;
	}

	.main-navigation {
	    font-size: 90%;
	}
	.main-navigation ul ul {
        background-color: #f4f4f4;
        border-radius: 15px;
	}

	.main-navigation ul ul:before {
	    content: "";
	    position: absolute;
	    top: -23px;
	    left: 22%;
	    margin-left: -17px;
	    border: 9px solid transparent;
	    border-bottom: 16px solid #f4f4f4;
	}

	.main-navigation ul>li:last-child ul:before {
	    top: -23px;
	    right: 22%;
	    left:auto;
	}


	.main-navigation div.menu > ul > li, .main-navigation ul.menu > li {
	    margin: 0px 11px;
	    text-shadow: 0px 1px 3px #5e5c50;
	}

	.nav_entry{
        background: #FFF;
        margin-right: 0 !important;
        padding: 0px 18px 0 16px;
        border-radius: 0 0 0 20px;
	    text-shadow: none !important;

	}
	li.nav_entry > a,
	li.nav_entry > a:hover{color:#595854}




	.main-navigation ul ul li:first-child a {
        border-top: none;
    }

	.main-navigation a,
	.main-navigation a:hover{
		color:#FFF;
	}
	.main-navigation ul.menu ul.sub-menu li a,
	.main-navigation ul.menu ul.sub-menu li:hover,
	.main-navigation ul.menu ul.sub-menu li a:hover{
	    color: #595854;
        text-shadow: none;
        font-size: 100%;
	}

}

.post-dsp{
    line-height: 1.2;
    font-size: small;
}


.link_more{
    background: #595854;
    font-size: 11px;
    padding: 1px 5px;
    border-radius: 3px;
    letter-spacing: 1px;
}


.smf-button-control__control,
.btn-base,
a.btn-base{
    font-weight: 700;
    line-height: 1.5;
    position: relative;
    display: inline-block;
    padding: .5rem 4rem;
    min-width: 200px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: all .3s;
    transition: all .3s;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    letter-spacing: .1em;
    color: #212529;
    background: #fff
}
a.btn1 {
    color: #000;
    border: 1px solid #bccbc6;
    border-radius: 20px;
    -webkit-box-shadow: 0 5px 10px rgba(0,0,0,.1);
    box-shadow: 0 5px 10px rgba(0,0,0,.1)
}

a.btn1.bdwhite {
    border: 1px solid #fff;
    color: #fff
}

a.btn1:hover {
    -webkit-transform: translate(0,-2px);
    transform: translate(0,-2px);
    color: #000;
    -webkit-box-shadow: 0 8px 15px rgba(0,0,0,.2);
    box-shadow: 0 8px 15px rgba(0,0,0,.2)
}

a.btn1.bdwhite:hover {
    color: #fff
}


.btnhover:hover{
    -webkit-transition: var(--transition);
    transition: var(--transition);
    -webkit-transform: translateY(-1px);
    transform: translateY(-6px);
    opacity:.8;
}


.term_list{margin:0;padding:0}

.term_list li {
    list-style-type: none;
    display: inline-block;
    padding: 3px 5px 3px;
    margin-right: 5px;
    line-height: 1.1	;
    margin: 0 5px 0 0 !important;
    border-radius: 0px;
    font-size: 10px;
	background:#00ac9a;
	color:#FFF;
	border:1px solid #000;
}
.term_list li a{color:#000}



.entry-meta {
    margin-top: .8rem;
    font-size: .9rem;
    font-weight: 300;
    color: #8e8e8e;
    font-family: "Lato","Zen Kaku Gothic New";
    line-height: 1.3;
}

.entry-meta span.posted-on{
	font-size:10px;
}

.widget .recent-posts-text .post-date{
    color: #8e8e8e;
    font-family: "Lato","Zen Kaku Gothic New";
	font-size:10px;
}
.widget .recent-posts-text .post-date:after{
	content:"更新";
	display:inline-block;
}


.zindex{
    position: relative;
    z-index: 1;
}

/*-------------------------------*/
/*input fotm*/
/*-------------------------------*/

input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], textarea ,input[type="tel"]{
	border: solid 1px #e6e6e6;
	color: #000;
	margin-top: 0.6em;
	padding: 0.6em;
/*    width: 100%;*/
    border-radius: 6px;
}
input[type="date"]{
	border: solid 1px #e6e6e6;
	color: #777;
	margin-top: 0.6em;
	padding: 0.6em;
    width: 100%;
	max-width:300px;
}
input::placeholder,textarea::placeholder {
  color: #DDD;
}
/* IE */
input:-ms-input-placeholder,textarea:-ms-input-placeholder {
  color: #DDD;}

/* Edge */
input::-ms-input-placeholder,textarea::-ms-input-placeholder {
  color: #DDD;}


[type="checkbox"],
[type="radio"] {
  width: 18px;
  height: 18px;
}



p {
    margin: .8em 0 1.2em;
}

.col-w{
	color:#FFF;
}

.main-header {
    padding-bottom: 0px;
    padding-top: 0px;
}


.site-branding {
    display: flex;
    justify-content: start;
    align-items: center;
    flex-wrap: wrap;
    position: relative;
}

.site-title{
    margin-top: 0;
    line-height: 1.2;
    color: #FFF;
    font-size: 1.5rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-shadow: 0px 1px 3px #5e5c50;
}
.site-title a, .site-title a:hover{color:#FFF}
.jumbotron-title .subttl{
    font-size: 60%;
    margin: 0 0.4em;
}

.site-description {
    width: 100%;
    position: absolute;
    top: -1.7em;
}

.subheader {
    color:#FFF;
    font-size: .9rem;
    letter-spacing: 3px;
    margin-top:1em;
}

.site-branding .site-title a, 
.site-branding .site-title a:hover {
    text-decoration: none;
    letter-spacing: 1px;
    font-weight: 800;
}

.jumbotron{
	position:relative;
}

.contetnt-wrap{
    max-width: 840px;
    margin-left:auto;
    margin-right:auto;
}

.nav_ruby{
    display:block;
    font-size: 10px;
    letter-spacing: 1px;
    position: absolute;
    bottom: .8em;
    left: 50%;
    transform: translateX(-50%);
    font-weight: 700;
}

.main-navigation ul.menu > li.menu-item-has-children > a span.nav_ruby{
    left: calc(50%);
    transform: translateX(calc(-50% - 0px));

/*    transform: translateX(calc(-50% - 8px));*/
}

@media screen and (max-width: 781.777px){
	.contetnt-wrap{
	    margin-left:20px;
	    margin-right:20px;
	}
}

.trim-wrap{
  position:relative;
  width:100%;
  height:0;
  padding-bottom:100%;/* 幅に対する縦のサイズ */
  overflow:hidden;
  background-color:#ccc;
}
.trim-wrap>img{
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  width:auto !important;
  height:auto;
  max-width:179%;/* 横向き16:9の画像が表示エリア一杯になるように指定 */
  max-height:initial;
}

.cat-links a {
    text-decoration: none;
    background-color: #595854;
    color: #FFF;
    padding: 3px 10px;
    font-size: smaller;
    margin:0 2.5px 5px 0;
}

.midashi {
  padding: 0.5em;/*文字周りの余白*/
  display: block;
  line-height: 1.3;/*行高*/
  background: #595854;/*背景色*/
  vertical-align: middle;
  color: #FFF;
  border-radius: 12px;
}

.midashi:before {
  font-family: fontawesome;
  content: '\f111';
  color: white;
  margin-right: 5px;
}

.midashi-under {
  position: relative;
  display: block;
  margin-bottom: 1em;
}
.midashi-under:before {
  content: '';
  position: absolute;
  bottom: -.5em;
  display: inline-block;
  width: 68px;
  height: 4px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #e5e4da;
}


.midashi-M{
    position: relative;
    margin: 0em 0 1em;
    line-height: 1.6;
    padding: 0 0 0 1.1em;
    letter-spacing: 2px;
}
.midashi-M:not(:first-child){
    margin: 1.3em 0 1em;
}
.midashi-M:before {
    content: "";
    position: absolute;
    left: 0;
    width: 0.6em;
    height: 0.6em;
    background-color: #73bce0;
    top: 0.4em;
    border-radius: 50%;
}
.midashi-M:after {
    content: "";
    position: absolute;
    left: 0.4em;
    width: 0.5em;
    height: 0.5em;
    background-color: #f2bf1c;
    top: 0.8em;
    border-radius: 50%;
}

.midashi-waku{
    border: 2px solid #000;
    padding: 5px 22px;
    text-align: center;
    border-radius: 22px;
    position: relative;
    top: 1.7em;
    background: #FFF;
    display: inline-block;
}

.hentry,
.page .hentry {
    margin-bottom: 3rem;
}

.wp-block-image .aligncenter>figcaption{
	text-align:center;
}

.wp-block-image figcaption {
    font-size: 90%;
    margin-top: 0.2em;
}


table{margin-bottom:0;}

table th, table td {
    min-width: 5.5em;
}
table th, table td {
    border: solid 1px #eee;
    padding: 0.6rem 1.2em;
}
.sm-table table th, .sm-table table td{
	padding: 0.3em 0.5em;
    font-size: 90%;
}


.footer-widget-area {
    border-top: none; 
    padding-bottom: 4rem;
    padding-top: 3rem;
}


.widget {
    color: initial;
    font-size: 85%;
}

footer .widget_text{
	margin-bottom:0rem;
    letter-spacing: 1px;

}

#menu-ftnav li{
    margin-bottom: 0.4em;
    letter-spacing: 2px;
    line-height: 1.4;
}
#menu-ftnav li::before{
    font-family: fontawesome;
	content:"\f105";
	margin-right:2px;
	color:#000;
}


.widget-title {
    font-size: 1.3rem;
}
.widget-title{
    position: relative;
    margin: 0em 0 1em;
    font-weight: 700;
    line-height: 1.6;
    padding: 0px;
    letter-spacing: 2px;
}

.sidebar-area  .widget-title{
    padding: 0px 0 0 14px;
}

.sidebar-area .widget-title:before {
    content: "";
    position: absolute;
    left: 0;
    width: 8px;
    height: 8px;
    background-color: #716c66;
    top: .63em;
}

.post-navigation .nav-previous,
.post-navigation .nav-next{
	line-height: 1.3;
    font-size: 1.1rem;
}
.post-navigation a{
    font-size: 1.1rem;
}


/*------------------------------------------*/
/* archive */
/*------------------------------------------*/
.post-grid .entry-header{
	margin-bottom:0;
}

.post-grid .entry-title {
    font-size: 1.2rem;
}


.post-nav-title,
.post-navigation a,
.post-grid .entry-summary {
    color:#FFF;
}

.post-grid .entry-summary p{
    font-size: 0.9rem;
	line-height:1.4;
}

@media screen and (min-width: 540px){
	.post-list .entry-title,
	.post-grid .entry-title {
	    font-size: 1.2rem;
	}

	.post-list .post-thumbnail {
	    flex-basis: 18%;
	}


}


@media screen and (min-width: 768px){
	.two-column .loop-wrapper{
	    justify-content: space-between;
	}

	.two-column .post-grid {
	    box-sizing: border-box;
		width: 49%;
		padding-left: 0;
		padding-right: 0;
	}

	.three-column .post-grid {
	    box-sizing: border-box;
	    width: 33.333%;
	    padding-left: 1.2%;
	    padding-right:1.2%;
	}
}

@media screen and (max-width: 767.666px){
	.two-column .loop-wrapper,
	.three-column .loop-wrapper {
	    justify-content: space-between;
	}
	.two-column .post-grid,
	.three-column .post-grid {
	    box-sizing: border-box;
		width: 49%;
		padding-left: 0;
		padding-right: 0;
	}
}


.post-list .post-thumbnail img{
	border: 1px solid #DDD;
}
.post-grid .post-thumbnail{
    width: 100%;
    padding-bottom: 65%;
    height: 0px;
    position: relative;
    margin-bottom: 1rem;
}

.post-grid .post-thumbnail img{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 0;
    border-radius: 6px;
}

.wrapframe{
    height: 243px;
    overflow: auto;
    border: 1px solid #e6e6e6;
    padding: 20px;
    font-size: 90%;
}
/*------------------------------------------*/
/* form base */
/*------------------------------------------*/
input[type="file"]{
	margin:2px 1px;
}

select {
	border: 1px solid #bbb;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	max-width: 100%;
    padding: 0.4em;
}

input[type="radio"],
input[type="checkbox"] {
	margin-right: 2px;
}

label,
input[type="radio"] + label,
input[type="checkbox"] + label {
	font-weight: 400;
	word-break: break-all;
}


input::placeholder {
  color: #DDD;
}

.form-control::-webkit-input-placeholder{color:#e6e6e6;opacity:1}
.form-control::-moz-placeholder{color:#e6e6e6;opacity:1}
.form-control:-ms-input-placeholder{color:#e6e6e6;opacity:1}
.form-control::-ms-input-placeholder{color:#e6e6e6;opacity:1}
.form-control::placeholder{color:#e6e6e6;opacity:1}


.hissu {
    display: inline;
    padding: 2px 5px 3px;
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    color: #000;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: 0.25em;
    background-color: yellow;
    margin-left: 3px;
}


table.wpform th {
    text-align: center;
    max-width: 10em
}

table{
	background:#949085;
}
table.wpform .wptel {
    width: 5em
}

table th {
    min-width: 7em;
    text-align: center;
    background:#8a867d;
    text-align: left;
}


@media screen and (min-width: 782px) {
    table th {
        min-width:12em;
        text-align: center;
        letter-spacing: 1px
    }
}

@media screen and (max-width: 767.666px) {
    a.btn1.bdwhite {
        background:rgba(255,255,255,.8);
        color: #000
    }

    a.btn1.bdwhite:hover {
        color: #000
    }

    .mw_wp_form .wpform tr th,.mw_wp_form .wpform tr td {
        display: block;
        max-width: 90vw
    }
}

.mw-wp-form_image {
    max-width: 120px
}

.mw_wp_form .error {
    font-size: 12px;
    color: #fff;
    display: inline-block;
    background: red;
    padding: 2px 6px 3px;
    border-radius: 3px;
    line-height: 1.4
}

.mw_wp_form_confirm .touroku {
    display: none
}

.mw_wp_form_input .kakunin {
    display: none
}


.wp-block-table.is-style-stripes{
	border-bottom:none;
}


.wp-block-table.is-style-stripes tbody tr:nth-child(even) {
    background-color: #a7a399
}

.wp-block-table.is-style-stripes.has-subtle-light-gray-background-color tbody tr:nth-child(even) {
    background-color: #f3f4f5
}

.wp-block-table.is-style-stripes.has-subtle-pale-green-background-color tbody tr:nth-child(even) {
    background-color: #e9fbe5
}

.wp-block-table.is-style-stripes.has-subtle-pale-blue-background-color tbody tr:nth-child(even) {
    background-color: #e7f5fe
}

.wp-block-table.is-style-stripes.has-subtle-pale-pink-background-color tbody tr:nth-child(even) {
    background-color: #fcf0ef
}

.wp-block-table.is-style-stripes td,.wp-block-table.is-style-stripes th {
    border-color: transparent
}

.wp-block-table.is-style-stripes tbody tr:nth-child(odd),
.wp-block-table.is-style-stripes.has-subtle-light-gray-background-color tbody tr:nth-child(odd),
.wp-block-table.is-style-stripes.has-subtle-pale-green-background-color tbody tr:nth-child(odd),
.wp-block-table.is-style-stripes.has-subtle-pale-blue-background-color tbody tr:nth-child(odd),
.wp-block-table.is-style-stripes.has-subtle-pale-pink-background-color tbody tr:nth-child(odd){
    background-color: initial;
}

.wp-block-table.is-style-stripes td,.wp-block-table.is-style-stripes th {
    border-color: transparent;
}

.wp-block-table thead {
    border-bottom: 1.5px solid #DDD;
}


@media screen and (max-width: 767.666px) {

	a.btn1.bdwhite{
	  background:rgba(255,255,255,.8);
	  color: #000;
	}
	a.btn1.bdwhite:hover {
	  color: #000;
	}


}


.back-to-top{
	border-radius: 50%;
}

.back-to-top:hover{
	background:#716c66;
}
.back-to-top:before {
    color: #FFF;
}



/* ========================================================== 
  Animation
============================================================*/
/* ========================================================== 
  Animation
============================================================*/
.fadeInUp {
  animation-fill-mode: both;
  animation-duration : 1.5s;
  animation-name     : fadeInUp;
  visibility         : visible !important;
}

@keyframes fadeInUp {
  0% {
    opacity  : 0;
    transform: translateY(40px);
  }

  100% {
    opacity  : 1;
    transform: translateY(0);
  }
}
.order-fade {
  opacity: 0;
  transform: translateY(60px);
  transition: all 1.5s;
}
.order-scroll {
  opacity: 1;
  transform: translateY(0);
}
.order-fade:nth-of-type(1) {
  transition-delay: 300ms;
}
.order-fade:nth-of-type(2) {
  transition-delay: 600ms;
}
.order-fade:nth-of-type(3) {
  transition-delay: 900ms;
}
.order-fade:nth-of-type(4) {
  transition-delay: 1200ms;
}

.slidein_L {
  opacity: 0.1;
  transform: translateX(-80px);
  transition: all 2s;
}
.slidein_L.scrollin {
  opacity: 1;
  transform: translate(0);
}
.slidein_R {
  opacity: 0.1;
  transform: translateX(80px);
  transition: all 2s;
}
.slidein_R.scrollin {
  opacity: 1;
  transform: translate(0);
}

/* ---------------------
Animation2
-----------------------*/
.float_01 {
  animation : float_01 5s infinite ease-in-out .8s alternate;
  display   : inline-block;
  transition: 3.5s ease-in-out;
}

@keyframes float_01 {

  0% {
    transform: translate(0, 0);
  }

  50% {
    transform: translate(3px, 15px);
  }

  100% {
    transform: translate(-3px, -10px);
  }
}

.float_02 {
  animation : float_02 7s infinite ease-in-out .8s alternate;
  display   : inline-block;
  transition: 2.5s ease-in-out;
}

@keyframes float_02 {

  0% {
    transform: translate(0, 0);
  }

  50% {
    transform: translate(-2px, 15px);
  }

  100% {
    transform: translate(2px, -10px);
  }
}

@media screen and (min-width: 782px) {
	body:lang(ja) {
	    font-size: 16px;
	}
	.top-bar-main li {
	    margin-right: 1.2em;
	}

	.jumbotron-content {
	    padding-bottom: 120px;
	    padding-top: 120px;
	}

}
@media screen and (min-width: 980px) {
	html:lang(ja) {
	    font-size: 100%;
	}

	.main-navigation {
	    line-height: 38px;
	}

	.main-navigation div.menu > ul > li:last-child > a, .main-navigation ul.menu > li:last-child > a,
	.main-navigation ul.menu > li:first-child > a,
	.main-navigation a {
		font-weight: 600;
		padding: 0.4em 14px 1.5em;
		margin: 0 0px;
		letter-spacing: 1px;
		font-size: 18px;
	}

	.main-navigation .current_page_item > a, .main-navigation .current-menu-item > a {
	    font-weight: 400;
	}
	.main-navigation .sub-menu .current_page_item > a,
	.main-navigation .sub-menu .current-menu-item > a{
		color:#716c66;
	}


	.main-navigation .current_page_item > a,
	.main-navigation .current-menu-item > a{
        color: #655d54;
        text-shadow: none;
	}

	.main-header-clone-show{
	    box-shadow: none;
	}
	.main-header-clone {
	    background-color: rgba(148, 144, 133, 1);
	}
	.nav_contact{
	    background: linear-gradient(to bottom right, #595854, #00ac9a);
	    border-radius: 0 0 0 10px;
	    min-width: 10em;
	    text-align: center;
	}

	.jumbotron{
		position:relative;
	    margin-top: -70px;
	    z-index: -1;
	}
	.jumbotron-content {
	    padding-bottom: 18vh;
	    padding-top: 18vh;
	}


	input[type="text"], input[type="email"], input[type="url"], input[type="password"],
	input[type="search"], textarea, input[type="tel"] {
	   width: 80%;
	    margin: .7em 0;
	}
}

@media screen and (max-width: 979.666px) {
	.main-header {
	    padding-bottom: 8px;
	    padding-top: 8px;
	}

	.drawer-hamburger-icon, .drawer-hamburger-icon:before, .drawer-hamburger-icon:after {
	    background-color: #FFF;
	}

	.drawer-opened .drawer-navigation {
	    background-image: url(img/haikei.jpg);
	    background-size: contain;
	}

	.drawer-navigation .sub-menu{
		letter-spacing: 0;
	}
	.drawer-navigation ul ul a{color:#383433;font-size: 90%;}
	.drawer-navigation ul ul a:hover{color:#595854;}


	.drawer-navigation-content {
	    box-sizing: border-box;
	    height: 100%;
	    overflow-y: auto;
	    padding: 54px 40px 60px 40px;
	    width: 100%;
	    letter-spacing: 2px;
	}

	/* Drawer Button */
	.drawer-hamburger,
	.drawer-hamburger:hover{
		width: 24px;
		height: 24px;
	}

	.drawer-navigation{
	    width: 97%;
	    border-radius: 35px 0 0 0px;
	}

	.drawer-hamburger-icon, .drawer-hamburger-icon:before, .drawer-hamburger-icon:after {
	    height: 2px;
	    transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
	}

	.drawer-navigation ul li {
	    padding-bottom: 8px;
	    padding-top: 8px;
	}

	.drawer-navigation ul li {
		border-radius: 20px;
		margin: 20px 0;
		text-align: center;
		color: #595854;
		border: 1px solid #595854;
		background: #FFF;
	}

	.drawer-navigation ul ul {
		margin:0px 15px;
	}
	.drawer-navigation ul li li {
	    padding-bottom: 8px;
	    padding-top: 8px;
	    background: #f4f4f4;
	    border:1px solid #f4f4f4;

	}

	.drawer-navigation .page_item_has_children > a, .drawer-navigation .menu-item-has-children > a {
	    padding-right: 0px;
	}

	.drawer-navigation ul ul a:hover,
	.drawer-navigation .current_page_item > a, .drawer-navigation .current-menu-item > a {
		color: #595854;
	}


	.drawer-navigation ul li li:last-child{
		padding-bottom: 8px;
	}


	.drawer-navigation .dropdown-toggle {
	    background-color: transparent;
	    outline: 0;
	    padding: 10px;
	    position: absolute;
	    right: 2px;
	    top: 3px;
	}


	.site-description {
		font-size:10px;
		top: -1.6em;
	}	

	.draw-logo{margin-bottom:15px;}

	.main-navigation ul.menu > li > a{display:block;position:relative;top:-6px}
	.main-navigation ul.menu > li.menu-item-has-children > a span.nav_ruby,
	.main-navigation ul.menu > li > a span.nav_ruby{
	    left: calc(50%);
	    transform: translateX(calc(-50%));
		bottom:-10px;
		display:block;
    }

	.table-responsive table th{
		white-space: nowrap;
	}

	.copy_sp{display:block;}
	.copy_pc{display:none;}
	.widget_nav_menu{
		margin-bottom: 1rem;
		margin-top: 1rem;
	}
}

@media screen and (max-width: 781.777px){
	.sp_center {
	    text-align:center !important;
	}
	.jumbotron-content {
	    padding-bottom: 88px;
	    padding-top: 88px;
	}
	
}

@media screen and (max-width: 640px) {

	.top-bar-main li{font-size:12px;margin-right: 12px;}
	.top-bar-main-phone{
		font-size:16px !important;
		letter-spacing: -1px;
	}

	.restable tr th,
	.restable tr td{
		display:block;
		width:100%;
	}

	.table-responsive table th{
		min-width:40vw;
	}

	.br_none {
	    display: none!important;
	}
	.sp_br{
		display:block;
	}
	.sp_left {
	    text-align:left !important;
	}

	.sp_none{
		display:none;
	}

}

@media screen and (max-width: 599px){
	.site-branding .site-title a,
	.site-branding .site-title a:hover{
		font-size:20px;
	}

}

