@charset"UTF-8";

/*
Theme Name: kashio
Description: designed by B&C.Design
Author:B&C.Design
Version: 1.0
License: 2020B&C.Design All rights reserve.
*/

html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}

* {
   -webkit-appearance: none;
}

body{
	font-family: 'Noto Sans JP', sans-serif ,'Noto Sans Mono', monospace;;
	font-weight:normal;
	position:relative;
	min-height:100vh;
}

.no-scroll {
  overflow: hidden;
  height: 100%;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}

section {
	width:100%;
	margin:0 auto;
	overflow:hidden;
}

ul{
  padding-left:1rem;
}

li{
    color:#000;
}

blockquote,
q {
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none;
}

a {
  text-decoration:none;
	
}


a:hover{
  text-decoration:underline;
}

div{
  font-size:16px;
	line-height:1.5em;
}

#breadcrumb ul{
  padding:20px 30px;
  display:flex;
  justify-content:center;
}

#breadcrumb li{
  margin:0 10px 5px 0;
  flex-shrink:0;
  margin-bottom:0;
  list-style:none;
  color:#32373c;
}

#breadcrumb li a{
  color:#eb361c;
}

#breadcrumb li i{
  margin-right:10px;
}


/* change colours to suit your needs */

ins {
    background-color: #ff9;
    color: #000;
    text-decoration: none;
}


/* change colours to suit your needs */

mark {
    background-color: #ff9;
    color: #000;
    font-style: italic;
    font-weight: bold;
}

del {
    text-decoration: line-through;
}

abbr[title],
dfn[title] {
    border-bottom: 1px dotted;
    cursor: help;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
	background-color:#fff;
  font-size:12px;
}

table td:first-child{
  width:150px;
  min-width:150px;
}

table td{
  min-width:200px;
}

table td strong{
  display:inline-block;
  padding:2px 10px;
}

table td strong:first-child{
  background-color:#72aee6;
  color:#fff;
  font-weight:normal;
  border-radius:100px;
  font-size:10px;
  line-height:1em;
}

table td strong:nth-child(4){
  background-color:#3cb371;
  color:#fff;
  font-weight:normal;
  border-radius:100px;
  font-size:10px;
  line-height:1em;
}

table td strong:nth-child(7){
  background-color:rgb(193 162 15);
  color:#fff;
  font-weight:normal;
  border-radius:100px;
  font-size:10px;
  line-height:10px;
}


/* change border colour to suit your needs */

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #cccccc;
    margin: 1em 0;
    padding: 0;
}

input,
select {
    vertical-align: middle;
}


body,
html {
    /* important */
    font-size: 16px;
    margin: 0;
    line-height:1.5em;
    background-color:#ffff;
}

* {
    box-sizing: border-box;
}

h1 {

}

h2 {

}


h3 {
  font-size:24px;
  line-height:1.5em;
  margin-bottom:20px;
  color:#555;
  border-left:8px solid #72aee6;
  padding:0 0 0 10px;
 
}

h4 {

}

h5 {

}


img {
    width:100%;
    height:auto;
    display:block;
}

p {
    font-size:1rem;
    color:#000;
    font-weight:normal;
    margin: 0;
    margin-bottom:20px;
    line-height:1.7em;
}

strong {
    font-weight: bold;
    font-size: 1em;
}

ul {
    font-size:0;
    margin-bottom:30px;
}

li{
  font-size:1rem;
}

.container {
    width: 100%;
    position:relative;
}

.cf:before,
.cf:after {
    display: table;
    content: "";
}

.cf:after {
    clear: both;
}

#toTop{
  position:fixed;
  bottom:0px;
  right:3%;
  z-index:8;
  box-shadow:0 3px 5px rgba(0,0,0,.4);
}

#toTop i{
  line-height:52px;
  padding-bottom:8px;
  width:60px;
  text-align:center;
  font-size:30px;
  color:#fff;
  background-color:#32373c;
}

.sec_inner{
  padding:0 10%;
}

ol{
  padding-left:20px;
  margin-bottom:20px;
}

ol li ol{
  margin-top:10px;
}

/* wp */



main{
  position:relative;
  margin:0 auto;
}

.bg_wh{
  background-color:#fff;
}

.mobileonly{
  display:none;
}

.container{
  margin:0 auto;
}

.link_btn_bk{
	transition:.2s;
	display:block;
	width:250px;
	background-color:#1a73e8;
	color:#fff;
	padding:10px 10px 15px 10px;
	position:relative;
	border:1px solid #1a73e8;
}

.link_btn_bk:after{
	transition:.2s;
	content:"";
	position:absolute;
	display:block;
	width:calc(100% - 25px);
	right:0;
	border-bottom:2px solid #fff;
	border-right:2px solid #fff;
	height:10px;
	bottom:10px;
	left:5px;
	transform:skew(45deg);	
}

.link_btn_bk:hover{
	text-decoration:none;
	background-color:#fff;
	color:#1a73e8;
}

.link_btn_bk:hover:after{
	border-bottom:2px solid #1a73e8;
	border-right:2px solid #1a73e8;
	left:20%;
}

.link_btn_wh{
	transition:.2s;
	display:block;
	width:250px;
	background-color:#fff;
	color:#1a73e8;
	padding:10px 10px 15px 10px;
	position:relative;
	border:1px solid #fff;
	font-weight:bold;
}

.link_btn_wh:after{
	transition:.2s;
	content:"";
	position:absolute;
	display:block;
	width:calc(100% - 25px);
	right:0;
	border-bottom:2px solid #1a73e8;
	border-right:2px solid #1a73e8;
	height:10px;
	bottom:10px;
	left:5px;
	transform:skew(45deg);	
}

.link_btn_wh:hover{
	text-decoration:none;
	background-color:inherit;
	color:#fff;
}

.link_btn_wh:hover:after{
	border-bottom:2px solid #fff;
	border-right:2px solid #fff;
	left:20%;
}

/* layout */

.the_content{
  padding:50px 0 50px;
  max-width:1000px;
  margin:0 auto;
	min-height:500px;
}

.wp-block-button__link{
  transition:.2s;
  min-width:250px;
}

.wp-block-button__link:hover{
  opacity:.7;
  text-decoration:none;
}

.wp-block-separator{
  margin:50px auto;
	color:#ccc;
}

/* header */

header{
  margin:auto;
	background-color:#fff;
}

.header-inner{
	max-width:1500px;
  display:flex;
  align-items:center;
	margin:0 auto;
}

.header-brand{
  display:block;
	padding:10px 0;
  width:250px;
  margin-left:20px;
	flex-shrink:0;
}

.header-brand:hover{
	opacity:.7;
	text-decoration:none;
}

.header-brand img{
  display:block;
  width:100%;
  height:100%;
}

.header-brand span{
	font-size:10px;
	color:#000;
	line-height:1em;
}

.header-nav{
  width:calc(100% - 210px);
	height:120px;
}

header ul{
  display:flex;
  padding:0;
  padding-left:0px;
  margin:0;
  width:100%;
  justify-content:flex-end;
	align-items:center;
	height:100%;
}

header ul li{
  display:block;
  min-width:150px;
	height:100%;
}

header ul li a{
	display:flex;
	align-items:center;
  text-decoration:none;
  height:100%;
	justify-content:center;
  line-height:1em;
  padding:20px 20px;
  text-align:center;
	transition:.2s;
	font-weight:bold;
}

header ul li a{
  position:relative;
	color:#000;
}

header ul li a:hover{
  text-decoration:none;
	background-color:#000;
	color:#fff;
}

header ul li:last-child a{
	background-color:#29abe2;
	color:#fff;
}

header ul li:last-child a:hover{
	opacity:.7;
}


/* footer */

footer{
  background-color:#333;
}

.footer-brand{
  display:block;
  width:250px;
  margin:0 auto 0px;
}

.footer-brand img{
  width:100%;
  height:auto;
}


.footer_nav{
  max-width:1000px;
  margin:0 auto;
  padding:30px 5%;
  display:block;
  
}

.footer_nav ul {
  padding:0;
  margin:0;
  display:flex;
  flex-wrap:wrap;
  margin-top:30px auto 0;
  width:100%;
  justify-content:center;
}

.footer_nav ul li{
  display:block;
}

.footer_nav ul li:last-child:after{
  content:"";
}

.footer_nav ul li a{
  color:#fff;
}

.footer_nav ul li a:hover{
  opacity:.7;
  text-decoration:none;
}

.footer_nav ul li:after{
  content:"|";
  margin:0 5px;
	color:#fff;
}

.footer_info p{
  margin-bottom:10px;
  color:#fff;
  text-align:center;
}

.footer_info p span{
  font-size:20px;
  margin-right:10px;
  display:block;
}

.copyright{
  background-color:#000;
  margin-bottom:0;
}

.copyright p{
  color:#fff;
  margin-bottom:0;
  text-align:center;
  font-size:12px;
}

.footer_sub{
	text-align:center;
	display:flex;
	justify-content:center;
}

.footer_sub a{
	text-align:center;
	color:#fff;
	font-size:12px;
}

.footer_sub a:first-child:after{
	content:"";
	margin:0 5px;
}

/* contact form */

.wpcf7{
  margin:0 auto 50px;
  background-color:#fff;
  padding:30px;
}

.wpcf7 table{
	width:100%;
	max-width:800px;
	margin:0 auto 20px;
}


.wpcf7 tr{
	border:1px solid #ccc;
}

.wpcf7 th{
	padding:10px;
	text-align:left;
	width:180px;
}

.wpcf7 td{
	padding:10px;
}

.wpcf7 td{
	border:1px solid #ccc;
}

.wpcf7 td p{
	margin:0 !important;
}

.wpcf7 th p{
	margin:0;
}

td input{
  width:100%;
  display:block;
  font-size:1rem;
  padding:.5em;
  border:3px solid #23282d;
}

td textarea{
  width:100%;
  display:block;
  font-size:1rem;
  padding:.5em;
  border:3px solid #23282d;
}

th span{
  font-size:10px;
  padding:2px 5px;
  line-height:13px;
  display:block;
  color:#fff;
  border-radius:5px;
  margin-right:8px;
	width:35px;
}

th span{
  background-color:#cf2e2e;
}

th span.opt{
  background-color:#007cba;
}

input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}

input[type="submit"],
input[type="button"] {
  background-color:#2ea816;
  padding:.5em 2em;
  font-size:18px;
  color:#fff;
  border:2px solid #3cb371;
  border-radius:5px;
  display:block;
  width:100%;
	max-width:500px;
	margin:0 auto;
	font-size:24px;
}

input[type="submit"]:hover,
input[type="button"] :hover{
opacity:.7;
}

.wpcf7-not-valid-tip{
  background-color:#cf2e2e;
  font-size:13px;
  color:#fff;
  padding:0 10px;
  box-shadow:0 2px 5px inset rgba(0,0,0,.4);
}

span.ajax-loader{
  display:block !important;
  width:20px;
  text-align:center !important;
  margin:10px auto !important;
}

.wpcf7-response-output{
  background-color:#324453;
  color:#fff;
  text-shadow:0 0 3px #000;
  text-align:center;
}

.privacy{
	background-color:#f7f7f7;
	padding:2%;
	height:130px;
	overflow:scroll;
	max-width:800px;
	margin:0 auto;
	border:1px solid #ccc;
}

.privacy_text p{
	font-size:13px;
	line-height:1.5em;
}

.privacy_text h4{
	margin-bottom:10px;
}

.agree_box p{
	margin:10px auto 20px;
	padding:2%;
	background-color:#f7f7f7;
	max-width:800px;
	border:1px solid #ccc;
	
}

.wpcf7-form-control-wrap {
  display: block;
}
.wpcf7-form-control.wpcf7-checkbox {
  display: flex;
  flex-wrap: wrap;
}
span.wpcf7-list-item {
  position: relative;
  margin: 0 50px 0 0 !important;
}
.wpcf7-list-item-label {
	color: #000;
  cursor: pointer;
  font-size: 16px;
	font-weight:bold;
}
input[type="checkbox"] {
  position: absolute;
  opacity: 0;
}
.wpcf7-list-item-label:before {
	content: '';
  border: 2px solid #000;
	background-color:#fff;
  display: inline-block;
  width: 20px;
  height: 20px;
  position: relative;
  top: -3px;
  margin-right: 8px;
  vertical-align: middle;
  cursor: pointer;
  text-align: center;
}
input[type="checkbox"]:checked + .wpcf7-list-item-label:after {
	content: "\f00c";
	font-family:forkawesome;
  display: block;
  position: absolute;
	font-size:22px;
	line-height:20px;
  top: 3px;
  left: 3px;
  width: 20px;
  height: 20px;
  background-size: contain;
	color:#00aa63;
	
}

.accept{
	display:flex;
	justify-content:center;
	align-items:center;
	padding:20px;
	margin-top:5px;
	background-color:#ececec;
	margin-bottom:10px;
}

.accept span{
	margin:0 !important;
}

.accept p{
	margin-bottom:0;
}






/* Front */

#hero_container{
  background-size:cover;
  background-position:left center;
	padding:10% 0;
	position:relative;
	background-image:url(./img/top.jpg);
}


#hero_container .inner{
  height:100%;
  width:100%;
  display:flex;
  align-items:center;
	flex-wrap:wrap;
  padding:0 5%;
	justify-content:center;
	background-color:rgba(0,0,0,.2);
}

#hero_container .inner img{
	width:200px;
	margin:0 auto;
}

#hero_container .inner p{
	width:100%;
	text-align:center;
	color:#fff;
	font-size:24px;
}

#hero_container .inner p.main_catch{
	font-size:4vw;
	color:#fff;
	font-weight:bold;
	border-bottom:1px solid #fff;
	margin-bottom:30px;
}

#service{
	padding:5% 0;
}

.service_text{
	margin-right:5%;
}

.service_text p{
	font-size:1.4vw;
}


#service .inner{
	max-width:1300px;
	margin:0 auto;
	display:flex;
	align-items:center;
	width:100%;
	position:relative;
	
}

.service_img{
	display:block;
	width:40%;
	flex-shrink:0;
	aspect-ratio:10 / 8;
	background-size:cover;
	clip-path: polygon(10% 0%, 100% 0%, 90% 100%, 0% 100%);
	position:relative;
	z-index:2;
}

.service_img_border{
	width:40%;
	flex-shrink:0;
	aspect-ratio:10 / 9;
	position:absolute;
	right:0;
	background-color:#ddeafa;
	clip-path: polygon(0 0, 90% 0, 100% 100%, 10% 100%);
	z-index:1;

}

.footer_contact_wrap{
	background-color:rgb(0 45 104 / 67%);
	padding:4% 0;
}

#contact{
	background-size:cover;
	background-position:center;
}

#contact .inner{
	max-width:1000px;
	padding:0 5%;
	margin:0 auto;
}

#contact .inner p{
	text-align:center;
	margin-bottom:0;
	color:#fff;
}

#contact .inner a{
	margin-bottom:0;
	margin-top:50px;
	margin:50px auto 0;
}

#home_map{
	aspect-ratio:16 / 3;
	position:relative;
}

#home_map iframe{
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	
}


/* archive */
#archive .the_content ul{
	padding:0;
	display:flex;
}

#archive .the_content ul li {
	width:30%;
	margin:0 auto 20px;
	position:relative;
	padding-top:25%;
	display:block;
}

#archive .the_content ul li h4{
	position:absolute;
	background-position:center;
	background-size:cover;
	width:100%;
	height:100%;
	position:absolute;
	top:0;
}

#archive .the_content ul li h4 a{
	background:linear-gradient(rgba(0,0,0,0), rgba(0,0,0,.7));
	display:flex;
	align-items:flex-end;
	justify-content:flex-end;
	color:#fff;
	font-weight:normal;
	width:100%;
	height:100%;
	padding:20px 20px 10px 20px;
	position:absolute;
	bottom:0;
	right:0;
	transition:.2s;
}

#archive .the_content ul li h4 a:hover{
	text-decoration:none;
	opacity:.7;
}

/* service */

.service_img_list{
	display:flex;
	flex-wrap:wrap;
}

.service_img_list_item{
	width:calc(100% / 4 - 20px);
	margin:0 10px 10px;
	border-radius:5px;
	overflow:hidden;
}

.service_img_list_item p{
	margin:0;
	padding:5px 10px;
	background-color:#c3d7f1;
}

.service_img_list_item_photo{
	aspect-ratio:16 / 9;
	background-size:cover;
	background-position:center;
}

/* company */

.the_content h2{
	margin-top:30px;
}

p.name{
	text-align:right;
}

.company_table{
	max-width:1000px;
	width:100%;
	margin-bottom:50px;
	font-size:16px;
	margin:0 auto 50px;
}

.company_table th{
	border:1px solid #000;
	padding:20px;
	width:200px;
	text-align:left;
	background-color:#e6f1fc;
}

.company_table td{
	border:1px solid #000;
	padding:20px;
}

/* page single */

.single-header{
  background-size:cover;
  background-position:right center;
}

.single-header h1{
  padding:10vh 5% 10vh;
  color:#fff;
  font-size:32px;
	line-height:1.2em;
	text-align:center;
  text-shadow:0 0 10px #000;
}

.singlepage .single-header h1{
  padding:10vh 5% 0;
  color:#fff;
  font-size:32px;
	line-height:1.2em;
  text-shadow:0 0 10px #000;
}

.page_header{
  padding-top:150px;
  padding-bottom:100px;
  background-size:cover;
  background-position:center;
}

.page_header h1{
  font-size:32px;
  line-height:1.5em;
  color:#fff;
}

.the_content h2{
  font-size:32px;
  line-height:1.5em;
  margin-bottom:30px;
  border-bottom:1px solid #999;
  padding:0 0 20px 0;
}

.the_content h2 span{
  font-size:.7em;
}

.flex_wrap{
  display:flex;
  align-items:flex-start;
}

.company_photo{
  flex-shrink:0;
  width:100%;
}

.company_syatyou{
	width:180px;
	margin-left:auto;
}



/* pagination*/

.pagination {
    list-style-type: none;
    padding-left: 0;
    margin: 30px 0;
}

ul.pagination{
  margin:0;
}

.pagination,
.pagination li a {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    font-size:16px;
    color:#000;
    font-weight:800;
}

.pagination a {
    transition: .2s;
    padding-top: 1px;
    min-width: 36px;
    min-height: 36px;
    line-height:36px;
}

.pagination li a:hover{
  text-decoration:none;
  opacity:.7;
}

.pagination li:not([class*="current"]) a:hover {
    
}

.pagination li:first-of-type a {
    border-left-width: 1px;
}

.pagination li.first span,
.pagination li.last span,
.pagination li.previous span,
.pagination li.next span {
    /* screen readers only */
    position: absolute;
    top: -9999px;
    left: -9999px;
}

.pagination li.first a::before,
.pagination li.last a::after,
.pagination li.previous a::before,
.pagination li.next a::after {
    display:block;
    font-family: 'FontAwesome';
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    transform: translate(0, 0);
}

.pagination li.first a::before {
    content: "|<";
}

.pagination li.last a::after {
    content: ">|";
}

.pagination li.previous a::before {
    content: "<";
}

.pagination li.next a::after {
    content: ">";
}

.pagination li.current a {
    font-size:16px;
    cursor: default;
    font-weight: bold;
    color: #fff;
    background-color:#000;
    pointer-events: none;
    font-weight:800;
}

@media only screen and ( max-width: 680px) {
    .pagination li.first,
    .pagination li.last {
        /* screen readers only */
        position: absolute;
        top: -9999px;
        left: -9999px;
    }
    .pagination li.previous a {
        border-left-width: 1px;
    }
}

@media only screen and ( max-width: 500px) {
    .pagination li {
        /* screen readers only */
        position: absolute;
        top: -9999px;
        left: -9999px;
    }
    .pagination li.current,
    .pagination li.first,
    .pagination li.last,
    .pagination li.previous,
    .pagination li.next {
        position: initial;
        top: initial;
        left: initial;
    }
    .pagination li.previous a {
        border-left-width: 0;
    }

}

@media only screen and ( max-width: 400px) {
    .pagination li.first,
    .pagination li.last {
        /* screen readers only */
        position: absolute;
        top: -9999px;
        left: -9999px;
    }
    .pagination li.previous a {
        border-left-width: 1px;
    }
}

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

	.header-nav ul{
		display:block !important;
	}

		.header-nav ul li{
		display:block !important;
			height:auto;
	}

	.wpcf7{
		padding:20px !important;
	}

	.sec_inner{
		padding:0;
	}

	.pconly{
		display:none !important;
	}

#wpadminbar{
  display:none;
}

	.the_content{
		padding:30px 5% !important;
	}

  header{
  position:static;
    height:60px;

}

.header-inner{
  display:flex;
  align-items:center;
}

  .header-nav{
    display:none;
    height:100vh;
  }

  .header-brand {
	  padding:5px;
	  height:60px;
	  margin:0;
  }

	.header-brand span{
		display:none;
	}

.header-brand img{
  display:block;
  width:auto;
}

  #hero_container{
    background-position:center;
  }

  #hero_container .inner{
    padding:50px 5%;
	  display:block;
  }

	#service .inner{
		display:block;
		padding:50px 5%;
	}

	#service .inner a{
		margin:0 auto;
	}

	#service .inner p{
		font-size:16px;
	}

	.service_text{
		margin:0 0 50px 0;
	}

	.service_img{
		width:100%;
	}

		.service_img_border{
			width:90%;
			bottom:35px;
			left:0;
			right:0;
			margin:auto;
		}

	#hero_container .inner p{
		font-size:16px;
	}

	#hero_container .inner p.main_catch{
		font-size:32px;
	}


  .footer_flex{
    display:block;
  }

  .footer_nav{
    padding:20px 5%;
    width:100%;
  }

	footer p{
		font-size:12px;
	}

  header ul li a{
    color:#fff;
  }

  .footer_flex iframe{
    width:100%;
    height:200px;
  }

  .copyright{
    padding:20px 0;
  }

  
  .the_content{
    padding:30px 0 50px;
  }

  .the_content h2{
    font-size:24px;
  }

  .menu-open{
    display:block;
    position:fixed;
    right:0;
    top:0;
    background-color:#000;
    height:60px;
    width:60px;
    z-index:99;
  }

  .menu-open .t,.menu-open .m,.menu-open .b{
    display:block;
    height:3px;
    width:40px;
    background-color:#fff;
    position:absolute;
    left:10px;
    transition:.2s;
    
  }

  .menu-open .t{
    top:15px;
  }

  .menu-open .m{
    top:28px;
    
  }

  .menu-open .b{
    bottom:15px;
    
  }


  .menu-open.open .t{
    transform:rotate(45deg);
    top:28px;
  }

  .menu-open.open .m{
    left:20px;
    opacity:0;
  }

  .menu-open.open .b{
    transform:rotate(-45deg);
    bottom:28px;
  }

  .mobileonly{
    display:block;
  }

  .header-nav{
    position:fixed;
    top:0;
    z-index:9;
    background-color:#000;
    right:0;
    padding:60px 0;
    width:80%;
  }

  .header-nav ul{
    display:block;
  }

  body.no-scroll:before{
    content:"";
    position:absolute;
    top:0;
    width:100%;
    height:100vh;
    background-color:rgba(0,0,0,.8);
    z-index:9;
  }

  

	#archive .the_content ul{
	display:block;
}

#archive .the_content ul li {
	width:100%;
	margin:0 0 10px;
	padding-top:45%;
}
	
	.wpcf7{
		padding:0 !important;
	}

	.wpcf7 tr{
		display:block;
		margin-bottom:20px;
		border:none;
		border-bottom:1px solid #cccc;
	}

	.wpcf7 th, .wpcf7 td{
		display:block;
		border:none !important;
		padding:0 0 10px 0;

	}

	.wpcf7-list-item{
		width:100%;
	}
	
	.wpcf7 table{
		margin-bottom:0;
	}

	.service_img_list{
		display:block;
	}

	.service_img_list_item{
		width:100%;
		margin:0 0 10px;
	}

	.footer_contact_wrap{
		padding:50px 0;
	}

	#home_map{
		aspect-ratio:16 / 9;
	}

	.company_table th{
		width:80px;
		padding:10px;
	}

	.company_table td{
		padding:10px;
	}

	.company_syatyou{
		margin:0 auto;
	}

	p.name{
		text-align:center;
	}

}

p span.footer_tel{
	font-size:32px !important;
	line-height:1.5em !important;
	font-weight:bold;
}

p span.footer_tel a{
	color:#fff !important;
}

.grecaptcha-badge { visibility: hidden; }
.recaptcha_policy p{font-size:10px;padding:10px 2%;margin:0;text-align:center;}
