@charset "UTF-8";
/* CSS Document */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Lato:wght@300;400;700;900&family=Noto+Sans+JP:wght@300;400;500;700&display=swap');

body {
    font-size: 12px;
    font-family: 'Noto Sans JP', sans-serif;
    height: 100%;
    width: 100%;
    margin: 0;
    color: #444;
    background-color: #FFFFFF;
    line-height: 2em;
    text-justify: inter-ideograph;
    text-align: justify;
    font-weight: 400;
    overflow-x: hidden;
    padding: 0;
}

*, *:before, *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
a:link {
  color:#444;
  text-decoration: none;
}
a:visited {
  color:#444;
  text-decoration: none;
}
a:hover {
    color: #666;
    text-decoration: none;
}
a:active {
    color: #666;
    text-decoration: none;
}
#spm {
	display: none;
}

/* FLEX */
.flex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}
.flex_c {
  display: -webkit-box !important; 
  display: -ms-flexbox !important; 
  display: -webkit-flex !important; 
  display: flex !important;
  -webkit-justify-content: center; 
  justify-content: center;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.pc_no {
  display: none !important;
}
img {
  height: auto;
 max-width: 100%;
  vertical-align: bottom;
}



.warp {
      display: block;
    overflow: hidden;
    }


/*---ヘッダー ---*/
header {
    max-width: 100%;
    display: block;
    overflow: hidden;
}
.head_in {
    max-width: 1140px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 80px;
    padding-bottom: 80px;
    text-align: center;
    border-bottom: 1px solid #ddd;
}
.head_in h1 {
    text-align: center;
}

.head_in h1 img {
    max-width: 40%;
    margin-left: auto;
    margin-right: auto;
}

/*---ヘッダー ---*/
/*---メニュー ---*/
.head_in2 {
    width: 100%;
}
.head_in2 menu {
    
}




.gnavi__wrap {
    max-width: 1140px;
    margin-left: auto;
    margin-right: auto;
    border-bottom: 1px solid #ddd;
}
.gnavi__lists {
    display: flex;
   justify-content: center;
}
.gnavi__list {
display: block;
     position: relative;
    text-align: center;
}
.gnavi__list:hover {
  
}
.gnavi__list:not(:first-child)::before {
   
}
.gnavi__list:hover::before {
   
}

.gnavi__list a {
    font-size: 12px;
    font-weight: 500;
    text-decoration: none;
    letter-spacing: 0.05em;
    transition: all .3s;
    padding-left: 24px;
    line-height: 65px;
    display: block;
}

.gnavi__list a:hover {
    
}

.dropdown__lists {
    transform: scaleY(0);/*デフォルトでは非表示の状態にしておく*/
    transform-origin: center top;/*変形を適応する基準をtopとする*/
    transition: all .3s;/*表示の変化を0.3秒に指定*/
    position: absolute;
    top: 55px;
    left: 0;
    width: max-content;
    cursor: pointer;
    padding-bottom: 15px;
    padding-top: 15px;
    z-index: 99;    
}
.gnavi__list:hover .dropdown__lists {
    transform: scaleY(1);/*Gナビメニューにホバーしたら表示*/
    
      
}
.dropdown__list {
    transition: all .5s;
    position: relative;
    display: block;
    overflow: hidden;
    margin-bottom: 3px;
}

.dropdown__lists a:hover {


}
.dropdown__lists a {
    padding-right: 20px;
    padding-left: 20px;
    font-size: 16px;
    line-height: 32px;
    padding-bottom: 15px;
    padding-top: 15px;
    font-weight: 400;
    text-align: left !important;
    display: block !important;
    background-color: #976a1f;
    width: 130%;
}


.fixed{
position: fixed;
top: 0;
left: 0;
    width: 100%;
    z-index: 9999;
}


/*---メニュー ---*/




/*---トップコンテンツ ---*/

.box00 {
    width: 100%;
    display: block;
  overflow: hidden;
}


.box00 .main {
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto;
}

.box00_w {
    display: block;
    padding-top: 88px;
    padding-bottom: 88px;
    overflow: hidden;
}

.box_1280 {
    max-width: 1140px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    overflow: hidden;
}
.ttl {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    font-size: 32px;
    font-weight: 800;
}
 

.works li {
    position: relative;
    width: 33%;
    margin-bottom: 32px;
    overflow: hidden;
    display: block;
}
.works::after{
  content:"";
  display: block;
  width:31%;
}
.works li img {
     width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}
.works a h2 {
    text-align: left;
    font-size: 10px;
	color: #C3C3C3;
	line-height: 1.3em;
	padding-top: 10px;
}




.info_m4 {
    display: block;
    font-size: 14px;
    text-align: center;
    line-height: 2em;
    margin-top: 32px;
}


input[type="checkbox"] {
  position: relative;
  width: 24px;
  height: 24px;
  border: 1px solid #444;
    margin-right: 10px;
  vertical-align: -5px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
    top:3px;
}

input[type="checkbox"]:checked:before {
  position: absolute;
  top: 1px;
  left: 8px;
  transform: rotate(50deg);
  width: 8px;
  height: 16px;
  border-right: 2px solid #444;
  border-bottom: 2px solid #444;
  content: '';
}


input[type="text"], input[type="email"], input[type="tel"], input[type="url"] {
		padding: 10px;
		font-size: 16px;
		margin: 0;
		width: 100%;
    border: 1px dotted #444 !important;
    background-color:rgba(0,0,0,0) !important;
    color: #444 !important;
    outline: 0 !important;
}
textarea {
		width: 100%;
		height: 14.3em;
		font-size: 16px;
		border: 1px dotted #444 !important;
    background-color:rgba(0,0,0,0) !important;
    outline: 0 !important;
}
input[type="submit"] {
    display: inline;
    text-align: center;
    width: 20%;
    display: block;
    margin-right: auto;
    margin-left: auto;
    font-size: 16px;
    color: #444;
    line-height: 64px;
 
    background-color:rgba(0,0,0,0);
    border: 1px solid #444 !important;
    border-radius: 50px !important;
    
}
input[type="submit"]:hover {
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    background-color: #000;
    color: #FFFFFF;
}

.wpcf7-form-control-wrap {
		margin: 0;
}

.box800 .box800_left p {
	display: block;
}
.wpcf7-list-item-label {
	line-height: 24px;
}

.box800 {
	max-width: 900px;
	margin-right: auto;
	margin-left: auto;
	margin-top:48px;
	display: block;
	overflow: hidden;
	clear: both;
	
}
.box800 ul {
 
}
.box800 li {
    width: 47%;
}
.box800_user dl {
    display: block;
    clear: both;
    overflow: hidden;
    width: 100%;
    margin-bottom: 24px; 
}
.box800_user dl dt {
    text-align: left;
    width: 100%;
    display: block;
    float: left;
    overflow: hidden;
    padding-right: 25px;
    font-size: 14px;
    line-height: 2em;
}
.box800_user dl dd {
    display: block;
    float: left;
    width: 100%;
    overflow: hidden;
    text-align: left;
    font-size: 16px;
    line-height: 2em;
}
.name_l {
	float: left;
	width: 45%;
	margin-right: 5%;
	overflow: hidden;
}
.name_2 {
	float: left;
	width: 50%;
}
.wpcf7-form-control-wrap {
	clear: both;
	display: block;
}
.info_mm2 {
    text-align: center;
    display: block;
    overflow: hidden;
    margin-top: 15px;
    margin-bottom: 15px;
    font-size: 14px;
}







/*---トップコンテンツ ---*/


/*--- フッター ---*/

footer {
    padding-top: 64px;
    padding-bottom: 64px;
    background-position: center center;
    background-color: #E8E8E8;
}
footer h1 {
    width: 30%;
    margin-bottom: 48px;
    margin-left: auto;
    margin-right: auto;
}
footer h3 {
    margin-top: 48px;
     font-size: 18px;
    line-height: 2em;
    font-weight: 500;
}
footer .f_menu {
    
}
footer .f_menu li {
    border-left: 2px solid #444;
    padding-left: 14px;
    padding-right: 14px;
}
footer .f_menu li:last-child {
    border-right: 2px solid #444;
}
footer .f_menu li a {
    font-size: 14px;

}
.copyright {
    text-align: center;
    display: block;
    font-size: 14px;

    line-height: 48px;
    background-color: #FFF;
}

/*---ページトップ ---*/

#page-top {
	position: fixed;
	bottom: 20px;
	right: 20px;
}
#page-top a img {
	height: auto;
	width: 70px;
}
#page-top a:hover img {
	opacity: 0.9;
	filter: alpha(opacity=90);
	-ms-filter: "alpha( opacity=90 )";
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
#page-top2 {
	position: fixed;
	bottom: 130px;
	right: 20px;
}
#page-top2 a img {
	height: auto;
	width: 300px;
}
#page-top2 a:hover img {
	opacity: 0.9;
	filter: alpha(opacity=90);
	-ms-filter: "alpha( opacity=90 )";
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
ul.footer_menu {
    display: none;
}
/*---ページトップ ---*/

/*--- フッター ---*/






/*--- ページ ---*/


/*---NEWS---*/



/*--- ページ ---*/

.block_1280_main .kiji_1 {
    text-align: left;
    margin-bottom: 64px;
    border-bottom-width: 1px;
    border-bottom-style: dotted;
    border-bottom-color: #666;
    line-height: 2em;
    font-size: 16px;
    display: block;
    overflow: hidden;
    padding-bottom: 64px;
    text-justify: inter-ideograph;
    text-align: justify;
}


.block_1280_main .b_tt h1 {
    font-size: 22px;
    line-height: 1.8em;
    border-bottom-width: 4px;
    border-bottom-style: solid;
    border-bottom-color: #444;
    text-justify: inter-ideograph;
    text-align: justify;
    display: block;
    overflow: hidden;
    padding-bottom: 0.5em;
    font-weight: 500;
}


.kiji_1 h1 {
    font-size: 20px !important;
    margin-bottom: 32px !important;
    border-bottom-width: 3px !important;
    border-bottom-style: solid !important;
    border-bottom-color: #444 !important;
    text-justify: inter-ideograph !important;
    text-align: justify !important;
    display: block;
    overflow: hidden;
    margin-top: 64px;
    padding-bottom: 0.3em;
    font-weight: 500;
}
.kiji_1 h2 {
	font-size: 20px !important;
	margin-bottom: 32px !important;
	text-align: left !important;
	border-bottom-width: 5px !important;
	border-bottom-style: double !important;
	border-bottom-color: #444 !important;
	letter-spacing: 0em !important;
	text-indent: 0px !important;
	text-justify: inter-ideograph !important;
	text-align: justify !important;
	background-image: none !important;
	padding-bottom: 5px;
	display: block;
	overflow: hidden;
    margin-top: 64px;
    padding-bottom: 0.3em;
    font-weight: 500;
}
.kiji_1 h3 {
	font-size: 18px !important;
	margin-bottom: 32px !important;
	padding: 0.5em !important;/*左線（実線 太さ 色）*/
	border-top-width: 1px !important;
	border-right-width: 1px !important;
	border-bottom-width: 1px !important;
	border-left-width: 5px !important;
	border-top-style: solid !important;
	border-right-style: solid !important;
	border-bottom-style: solid !important;
	border-left-style: solid !important;
	border-top-color: #444 !important;
	border-right-color: #444 !important;
	border-bottom-color: #444 !important;
	border-left-color: #444 !important;
	display: block !important;
	width: 100% !important;
	text-justify: inter-ideograph !important;
	text-align: justify !important;
    margin-top: 64px;
    font-weight: 500;
}
.kiji_1 h4 {
	font-size: 18px !important;
	margin-bottom: 32px;
	position: relative;
	padding: 0.6em;
	background-color: #444;
	text-justify: inter-ideograph;
	text-align: justify;
	display: block;
    margin-top: 64px;
    color: #FFF;
    font-weight: 500;
}
.kiji_1 h4:after {
	position: absolute;
	content: '';
	top: 100%;
	left: 30px;
	width: 0;
	height: 0;
	border-top-width: 15px;
	border-right-width: 15px;
	border-bottom-width: 15px;
	border-left-width: 15px;
	border-top-style: solid;
	border-right-style: solid;
	border-bottom-style: solid;
	border-left-style: solid;
	border-top-color: #444;
	border-right-color: #FFF;
	border-bottom-color: #FFF;
	border-left-color: #FFF;
    
    
}
.kiji_1 h5 {
	font-size: 16px !important;
	margin-bottom: 32px;
	border: 1px dashed #444;
	text-justify: inter-ideograph;
	text-align: justify;
	display: block;
	padding-top: 0.2em;
	padding-right: 0.5em;
	padding-bottom: 0.2em;
	padding-left: 0.5em;
    margin-top: 64px;
    font-weight: 500;
}
.kiji_1 h6 {
	position: relative;
	font-size: 16px !important;
	margin-bottom: 32px;
	text-justify: inter-ideograph;
	text-align: justify;
	display: block;
    margin-top: 64px;
    padding-bottom: 0.2em;
    font-weight: 500;
}
.kiji_1 h6:after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 7px;
	background: -webkit-repeating-linear-gradient(-45deg, #444, #444 2px, #fff 2px, #fff 4px);
	background: repeating-linear-gradient(-45deg, #444, #444 2px, #fff 2px, #fff 4px);
}
.kiji_1 h1:first-child,
.kiji_1 h2:first-child,
.kiji_1 h3:first-child,
.kiji_1 h4:first-child,
.kiji_1 h5:first-child,
.kiji_1 h6:first-child {
	margin-top: 32px;;
}


.kiji_1 a {
	text-decoration: underline;
}

.wp-pagenavi a, .wp-pagenavi span {
    font-size: 16px;
}
#box_blog {
max-width: 900px;
    margin-left: auto;
    margin-right: auto;
}
.block_1050_n {
max-width: 900px;
    margin-left: auto;
    margin-right: auto;
}
.block_1280_main .block_1050_n .navigation.clearfix .navigation_in {
	display: flex;
}
.block_1280_main .block_1050_n .navigation.clearfix .navigation_in p {
	float: left;
	width: 33%;
    text-align: center;
}
.block_1280_main .block_1050_n .button_all a {
    border: 1px solid #444;
    color: #444;
    display: block;
    padding: 24px;
    margin-top: 48px;
    clear: both;
    font-size: 16px;
    line-height: 16px;
}
.block_1280_main .block_1050_n .button_all a:hover {
    color: #FFF;
    background-color: #444;
}
.mgt48 {
    margin-top: 64px;
}

.box_cont2 {
    text-align: left;
    width: 1040px;
    margin-right: auto;
    margin-left: auto;
    margin-top: 40px;
    font-size: 14px;
    border-top-width: 1px;
    border-right-width: 1px;
    border-left-width: 1px;
    border-top-style: dotted;
    border-right-style: dotted;
    border-left-style: dotted;
    border-top-color: #444;
    border-right-color: #444;
    border-left-color: #444;
    line-height: 2em;
    background-color: #444;
}
.box_cont2 dl dt {
	width: 30%;
	padding: 20px;
	float: left;
	display: block;
	color: #FFF;
	font-weight: 500;
	text-align: center !important;
	
}
.box_cont2 dl dd {
	display: block;
	float: left;
	width: 70%;
	padding: 20px;
	background-color: #FFF;
	text-justify: inter-ideograph;
	text-align: justify;
}
.box_cont2 dl {
	
	overflow: hidden;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #999;
	  display: -webkit-flex; /* Safari逕ｨ */
  display: flex;
  -webkit-justify-content: center; /* Safari逕ｨ */
  justify-content: center;
  -webkit-align-items: center; /* Safari逕ｨ */
  align-items: center;
}
.box_cont2 dl dd ul li {
	list-style-position: outside;
	list-style-type: disc;
	margin-left: 25px;
	margin-top: 5px;
	margin-bottom: 5px;
}

.info_m10 {
    width: 900px;
    margin-left: auto;
    margin-right: auto;
    display: block;
    font-size: 14px;
    text-align: left;
    line-height: 2em;
    margin-top: 32px;
}