body {
  background-color: #232323;
  margin: 0px;
  color: #efefef;
  font-size: 13px;
  line-height: 1.5em;
  font-family: sans-serif;
  -webkit-text-size-adjust: 100%;
}
img {
  border: 0
}
a:link { text-decoration: none; color: #efefef; }
a:visited { text-decoration: none; color: #efefef; }
a:hover { text-decoration: none; color: #efefef; }
a:active { text-decoration: none; color: #efefef; }

span {
  display: inline-block;
}
/*========= スクロール途中でヘッダーが表示＆非表示するためのCSS start ===============*/

#header{
  position: fixed;/*fixedで上部固定*/
  top: 0;
  width:100%;
  z-index: 999;/*最前面へ*/
  transition: transform 1s;
}


/*========= スクロール途中でヘッダーが表示＆非表示するためのCSS end ===============*/
#header {
  width: 100%;
  background-color: #232323;
  padding: 0 0 0.5px 0;
  }
.header_msg {
  display: flex;
  align-items: center;
  background-color: #a5a5a5;
  width: 100%;
  padding: 5px 0;
  line-height: 1.3em;
  }
.header_msg-inner p {
  font-size: 10px;
  letter-spacing: 0.3em;
  margin: 0px;
  color: #232323;
  line-height: 1.3em;
  }
.header_main-inner {
  display: flex;
  -webkit-box-pack: justify;
  -moz-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  align-items: center;
  margin: 15px 0;
  letter-spacing: 0.15em;
  }
.header-top_inner {
  margin: 0 0 10px 0;
  }
.header_main-logo {
  display: flex;
  width: 360px;
  }
.daiichimatchi-logo img {
  width: 100%;
  height: 70px;
  object-fit: contain;
  margin-left: -5px;
  }
.header_navigation-inner-top {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.header_nav-block {
  display: flex;
  justify-content: flex-end;
  }
.header_contact-block {
  display: flex;
  align-items: center;
  }
.header_tel {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-content: space-between;
  }
.header_tel dl {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: 3px 8px 0 5px ;
  font-weight: 600;
  }
.header_tel dt {
  margin: 0;
  }
.header_tel dd {
  margin: 0;
  }
.header_contact-menu {
  display: flex;
  align-items: center;
  }
.contact-menu_btn {
  width: 120px;
  height: 50%;
  margin: 5px;
  padding: 8px 10px 8px 16px;
  color: #efefef;
  letter-spacing: 0.2em;
  font-weight: 600;
  background-color: #b70000;
  display: flex;
  justify-content: center;
  align-items: center;
  /*border-radius: 5pt;*/
  }
.contact-menu_btn:hover {
  background-color: #db1f22;
}
.contact-menu_btn img {
  width:21px;
  margin-right: 5px;
}
.under-header_space {
  padding-top: 120px;
  background-color: #232323;
}
.title-space {
  padding-top: 60px 0;
}

.more_btn {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  width: 180px;
  height: 50%;
  padding: 10px 5px;
  color: #c8c8c8;
  letter-spacing: 0.2em;
  text-indent: calc(0.2em + 10px);
  border: 1px solid #c8c8c8;
  line-height: 1.5em;
  border-radius: 6px;      /* 角丸 CSS3草案 */
  -webkit-border-radius: 6px;  /* 角丸 Safari,Google Chrome用 */
  -moz-border-radius: 6px;  /* 角丸 Firefox用 */
  -webkit-transition: all 0.3s ease;  /* 徐々に変化*/
  -moz-transition: all 0.3s ease;  /* 徐々に変化*/
  -o-transition: all 0.3s ease;  /* 徐々に変化*/
  transition: all  0.3s ease;  /* 徐々に変化*/
}
_::-webkit-full-page-media, _:future, :root .more_btn {
  text-indent: calc(0.2em + 10px);
}
.more_btn:hover {
    border: 1px solid #e5cfa3;
    color: #e5cfa3;
}
.more_arrow {
  display: inline-block;
  vertical-align: middle;
  color: #c8c8c8;
  line-height: 1.5em;
  position: relative;
  width: 0.8em;
  height: 0.8em;
  transform: translateX(-25%) rotate(45deg);
  margin: 0 5px;
}
.more_btn:hover .more_arrow {
    color: #e5cfa3;
}
.more_arrow::before, .more_arrow::after {
  content: '';
  position: absolute;
  background: currentColor;
  border-radius: 0.1em;
}
.more_arrow::before {
  top: 0;
  left: 0;
  right: 0;
  height: 0.1em;
}
.more_arrow::after {
  top: 0;
  right: 0;
  bottom: 0;
  width: 0.1em;
}
#footer {
  display: flex;
  justify-content: center;
  background-color: #e5cfa3;
}
.footer_inner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: #333333;
  padding: 10px 0;
  width: 100%;
}
.footer_nav {
  display: flex;
  width: 100%;
}
.footer_nav-inner {
  padding-left: 30px;
}
.footer_nav ul {
  display: flex;
  flex-wrap: wrap;
  margin: 10px 0 5px 0;
  padding: 0;
  width: 100%;
}
.footer_nav li {
  list-style: none;
  text-align: center;
  font-size: 0.9rem;
  padding: 5px 20px 5px 20px;
}

footer a:link { text-decoration: none; color: #333333; }
footer a:visited { text-decoration: none; color: #333333; }
footer a:hover { text-decoration: none; color: #333333; }
footer a:active { text-decoration: none; color: #333333; }

.footer_main {
  display: flex;
  margin: 40px 0;
}
.footer_main-logo {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  width: 360px;
}
.footer_main-info {
  margin: 0 10px;
  display: flex;
  align-items: end;
}
.footer_main-text p {
  margin-bottom: 1em;
}
.footer_main-address {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  font-size: 0.9rem;
}
.footer_main-address-bottom {
  display: flex;
  flex-wrap: wrap;
}
.footer_main-address dl {
  display: flex;
  flex-wrap: wrap;
  margin: 0 0 0.4em 0;
}
.footer_main-address dd {
  margin: 0 16px 0 0;
}
.footer_main-address-add dd {
  margin: 0 16px 0 0;
  line-height: 1.5em;
}
.footer_main-address-tel {
  display: flex;
  flex-wrap: wrap;
}

.back-to-top {
  display: none;
  position: fixed;
  color: #fff;
  padding: 2rem;
  border-radius: 50%;
  text-decoration: none;
  opacity: 0.8;
}
.footer_pagetop-arrow-inner {
  position: fixed;
  right: 20px;
  bottom: 35px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background-color: #fff;
}
.up-arrow {
  display: inline-block;
  vertical-align: middle;
  color: #3d3d3d;
  line-height: 1;
  width: 1em;
  height: 1em;
  border: 0.3em solid currentColor;
  border-left: 0;
  border-bottom: 0;
  box-sizing: border-box;
  transform: translateY(25%) rotate(-45deg);
}
.footer_copyright {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding: 5px 0;
}
.footer_copyright p {
  font-size: 0.75rem;
  letter-spacing: 0.1em;
  margin: 0px;
  color: #232323;
  }

a.anchor{        /*ページ内リンクのスペース*/
  display: block;
  padding-top: 114px;
  margin-top: -114px;
}
.breadcrumb-list { /*パンくず*/
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding: 14px 0px;
  font-size: 0.9rem;
  align-items: center;
}
.breadcrumb-list li{
  color: #969696;
  text-align: center;
}
.breadcrumb-list li:not(:last-of-type)::after {
  content: "›";
  margin: 0 .6em; /* 記号の左右の余白 */
  color: #969696; /* 記号の色 */
  text-align: center;
}
.breadcrumb-list a:link { text-decoration: none; color: #969696; }
.breadcrumb-list a:visited { text-decoration: none; color: #969696; }
.breadcrumb-list a:hover { text-decoration: none; color: #969696; }
.breadcrumb-list a:active { text-decoration: none; color: #969696; }

/*電話番号認識*/
.tel {
  pointer-events: initial;
}

/*------ 画面サイズ条件 -------*/
@media (min-width: 1101px) {
.header_msg {
  justify-content: center;
  }
.header_msg-inner {
  width:1100px;
  }
.header_main {
  display: flex;
  justify-content: center;
  }
.header_main-inner {
  width:1100px;
  line-height: 1em;
  }

.header_main-logo {
  height: 70px;
  align-items: flex-end;
  }
.daiichimatchi-logo img {
  width: 95%;
  height: auto;
	}
.header_navigation-inner {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  }
button#js-hamburger {
  display: none;
  }
.global-navigation__list {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  margin: 10px 0 5px 0;
  padding: 0;
  }
.global-navigation__list li {
  list-style: none;
  text-align: center;
  font-size: 0.9rem;
  padding: 0 15px;
  line-height: 1em;
  }
.global-navigation__item:last-child{
  padding: 0 0 0 15px;
  }
/*hover start*/
.global-navigation__list a{
  position: relative;
  }
.global-navigation__list a::after {
  position: absolute;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background: #efefef;
  bottom: -8px;               /*アンダーラインがaタグの下端から現れる*/
  transform: scale(0, 1);     /*アンダーラインの縮尺比率。ホバー前はx方向に0*/
  transform-origin: center top; /*変形（アンダーラインの伸長）の原点がaタグ（各メニュー）の左端*/
  transition: transform 0.5s; /*変形の時間*/
  }
.global-navigation__list a:hover::after {
  transform: scale(1, 1);     /*ホバー後、x軸方向に1（相対値）伸長*/
  }
/*hover end*/
.global-navigation__list li+ li {
  border-left: 1px solid #efefef;
  height: 14.3px;
  }
.footer_inner {
  width: 1100px;
  }

.footer_main {
  align-items: center;
}
.footer_main-logo {
  height: 70px;
}
.footer_main-logo-inner {
  margin-right: 0;
  }
.breadcrumb { /*パンくず*/
  display: flex;
  justify-content: center;
  width: 100%;
  }
.breadcrumb_inner {
  width: 1100px;
  }
} /*↑ @media (min-width: 1101px)*/

@media (max-width: 1100px) {
.header_main-logo {
  width: 260px;
  }
.header_main-inner {
  margin: 10px;
  }
.header_tel {
  font-size: 0.73rem;
  letter-spacing: 0.12em;
  }
.under-header_space {
  padding-top: 113px;
  }
.footer_navi {
  margin-left: 35px;
  }
.footer_nav-inner {
  padding-left: 0px;
  }
.header_navigation-inner {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  }
.header_tel {
  display: flex;
  flex-direction: column;
  align-content: space-between;
  }
.footer_main-logo-inner {
  width: 260px;
  }
}
@media (max-width: 768px) {
.header_msg{
  display: none;
  }
.header_contact-menu {
  width: 100%;
  display: flex;
  -webkit-box-pack: justify;
  -moz-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  }
.header_contact-menu a{
  width: calc(100% - 15px);
  }
.contact-menu_btn{
  width: 100%;
  margin: 0;
  padding: 12px 15px 12px 0;
  font-size: 0.9rem;
  }
  
.contact-menu_btn img {
  margin: 0 15px;
  }
.under-header_space {
  padding-top: 90px;
  }
.footer_nav-inner {
  padding-left: 20px;
  }
.footer_nav ul {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 8px 30px;
  }
.footer_nav li {
  padding: 5px 0;
  text-align: left;
  }
.footer_nav li+ li {
  border-left: none;
  }
.footer_main {
  justify-content: center;
  flex-direction: column;
  margin: 40px 0;
  }
.footer_main-logo {
  width: 100%;
  }
.footer_main-text {
  display: flex;
  }
.footer_main-text p {
  margin-top: 5px;
  }
.footer_main-address-bottom {
  flex-direction: column;
  }
.footer_copyright {
  justify-content: center;
  }
a.anchor{        /*ページ内リンク*/
  display: block;
  padding-top: 90px;
  margin-top: -90px;
  }
}
@media (min-width: 767px) {
}

@media (max-width: 430px) {
.breadcrumb-list { /*パンくず*/
  font-size: 0.8rem;
}
.breadcrumb-list li:not(:last-of-type)::after {
  font-size: 0.9rem;
  margin: 0 .4em;
}
.footer_nav ul {
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  }
.footer_main-text p {
  letter-spacing: 0;
  }
.footer_main-address {
  justify-content: center;
  flex-direction: row;
  }
.footer_main-address-inner {
  display: flex;
  flex-direction: column;
  }
.footer_main-address-add dl {
  display: flex;
  flex-direction: column;
  }
.footer_main-address dl {
  margin-right: 0;
  }
.footer_copyright p {
  font-size: 0.6rem;
  }


}
/*------ 画面サイズ条件 end-------*/

.inner_sidespace {      /*ページ両端のmargin*/
  margin-right: 50px;
  margin-left: 50px;
}

@media (max-width: 1100px) {
.inner_sidespace {      /*ページ両端のmargin*/
  margin-right: 20px;
  margin-left: 20px;
  }
}

.space-betw {                  /*safari用space-between*/
  -webkit-box-pack: justify;
  -moz-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
  
/*========= ↓背景色 =========*/
.dark-gray {
  background-color: #232323;
}
.gray {
  background-color: #303030;
}
.light-gray {
  background-color: #3d3d3d;
}
/*========= ↑背景色 =========*/