@charset "UTF-8";
* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0px;
  padding: 0px;
  text-align: center;
  color: #333333;
  font-size: 1em;
  line-height: 140%;
  background-color: #c8d1bd;
  font-family: "Roboto Condensed", "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
}

.fadeIn {
  animation: fadeInAnime forwards 1s;
  opacity: 0;
}

@keyframes fadeInAnime {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
#modal {
  display: flex;
  flex-direction: column;
}
#modal img,
#modal a {
  display: block;
}

div,
p,
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0px;
  padding: 0px;
  display: block;
  text-align: left;
}

h1,
h2,
h3,
h4 {
  clear: both;
}

.clearfix::after {
  content: "";
  display: block;
  clear: both;
}

.clear {
  clear: both;
}

.floatL {
  float: left;
}

.floatR {
  float: right;
}

h1 {
  text-indent: -9999px;
}

.pc_none {
  display: none;
}

.FloatEnd {
  clear: both;
  display: block;
  height: 1px;
}

a img {
  border: none;
  text-decoration: none;
}

strong {
  margin: 0 0.2em;
  padding: 0;
  font-weight: bold;
}

ul,
ol {
  display: block;
  _margin-left: 0;
  _margin-right: 0;
}

dl {
  margin: 0;
  padding: 0;
}

ul {
  margin-top: 10px;
  margin-bottom: 10px;
  _margin-left: 20px;
  _padding-left: 20px;
}

ol {
  list-style-type: decimal;
  margin-top: 10px;
  margin-right: 0;
  margin-bottom: 10px;
  margin-left: 0;
  _margin-left: 30px;
  _padding-left: 20px;
}

*:first-child + html ol {
  margin-left: 30px;
  padding-left: 20px;
}

li {
  display: list-item;
  margin: 0;
}

ul li {
  list-style-type: none;
}

p {
  width: auto;
  margin-right: auto;
  margin-left: auto;
  margin-top: 0px;
  margin-bottom: 0px;
}

.sp-br {
  display: none;
}

#container {
  width: 100%;
  max-width: 1000px;
  background: #fff;
  box-shadow: 0px 0px 6px 3px rgba(0, 0, 0, 0.15);
  margin: 0 auto;
}

#nav {
  position: fixed;
  right: 1em;
  top: 50%;
  transform: translateY(-50%);
}
#nav uL {
  text-align: right;
}
#nav uL li {
  margin: 3em auto;
  overflow: hidden;
  padding: 0.4em 0;
}
#nav uL li a {
  text-decoration: none;
  font-size: max(1.5em, 18px);
  transition: 0.2s;
  font-weight: 500;
  color: #919191;
  font-weight: bold;
  position: relative;
}
#nav uL li a:hover {
  color: rgb(53, 53, 53);
}
#nav uL li a.active {
  color: rgb(53, 53, 53);
}
#nav uL li a.active::after {
  top: 1.3em;
}
#nav uL li a::after {
  content: "";
  position: absolute;
  top: 2em;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgb(53, 53, 53);
  transition: 0.2s;
}

#fixd-contacts {
  position: fixed;
  z-index: 9999999;
  bottom: 0;
  left: 50%;
  width: 100%;
  transform: translateX(-50%);
  -webkit-backdrop-filter: blur(4px) brightness(1.05);
          backdrop-filter: blur(4px) brightness(1.05);
  background-color: rgba(255, 255, 255, 0.3);
  height: 5.8em;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  flex-wrap: nowrap;
  gap: 1em;
}
#fixd-contacts .top-text {
  position: absolute;
  top: -1em;
  left: 50%;
  transform: translateX(-50%);
  background-color: #FFF3DC;
  border-radius: 100vw;
  border: #000 solid 0.15em;
  z-index: 10;
  padding: 0.25em 1.5em 0.2em;
}
#fixd-contacts .top-text p {
  text-align: center;
  color: #000;
  font-size: max(1.2em, 14px);
  font-weight: bold;
  white-space: nowrap;
  line-height: 1;
}
#fixd-contacts a {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.3em;
  font-size: 1.8em;
  font-weight: bold;
  text-decoration: none;
  padding: 0.2em 1em 0.2em;
  height: 2em;
  border-radius: 100vw;
  margin-bottom: 0.35em;
  color: white;
  position: relative;
  transition: 0.2s;
  border: 0.1em solid white;
  box-shadow: 0 0 0.5em white;
  z-index: 1;
}
#fixd-contacts a span {
  width: 100%;
  white-space: nowrap;
}
#fixd-contacts a::after {
  content: "";
  height: 0.25em;
  width: 0.25em;
  border-top: 0.15em solid white;
  border-right: 0.15em solid white;
  position: absolute;
  right: 0.5em;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  transition: 0.2s;
}
#fixd-contacts a:hover {
  filter: brightness(1.15);
}
#fixd-contacts a:hover::after {
  right: 0.3em;
}
#fixd-contacts a::before {
  content: "";
  height: 1.5em;
  width: 1.5em;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
#fixd-contacts .tel-fixd {
  background-color: #e8000b;
}
#fixd-contacts .tel-fixd::before {
  background-image: url(../images/FC_logo_negative.svg);
}
#fixd-contacts .tel-fixd span:nth-child(2) {
  display: none;
}
#fixd-contacts .line-fixd {
  background-color: #00B900;
}
#fixd-contacts .line-fixd::before {
  background-image: url(../images/icon_line.svg);
  height: 1.3em;
}

#header {
  padding: 2em 3em 2em;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1em;
}

.shop-name-wrap {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5em;
  white-space: nowrap;
  color: #e8000b;
}

.shop-name-sub {
  font-size: 1.2em;
  font-weight: bold;
}

.shop-name {
  font-size: 3.5em;
  font-weight: bold;
}

.header-border {
  width: 100%;
  height: 3em;
  display: flex;
  justify-content: space-between;
  flex-direction: column;
}
.header-border span {
  height: 0.5em;
  width: 100%;
  background-color: #e8000b;
}

.topImg {
  width: 100%;
  position: relative;
}
.topImg .top-base {
  width: 100%;
}

.top-price {
  position: absolute;
  left: 4em;
  top: 27%;
  color: white;
  font-weight: bold;
  line-height: 1;
}

.top-price-sub {
  font-size: 2em;
}

.top-price-price {
  font-size: 5.5em;
  text-align: right;
  background: linear-gradient(0deg, rgb(255, 255, 0) 0%, rgb(255, 255, 0) 24%, rgba(255, 255, 0, 0) 24%, rgba(255, 255, 0, 0) 86%);
  text-shadow: 0.05em 0.05em 0.03em #e8000b, 0.05em -0.05em 0.03em #e8000b;
  -webkit-text-stroke-width: 0.01em;
  -webkit-text-stroke-color: #e8000b;
}

.top-product {
  position: absolute;
  transform: translateX(50%);
  right: 19%;
  top: 5%;
  height: 17.5em;
  filter: drop-shadow(0 0 0.3em rgba(0, 0, 0, 0.3));
  -o-object-fit: contain;
     object-fit: contain;
}

.top-sub-info {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  gap: 0.5em;
  margin-top: 0.5em;
}
.top-sub-info p {
  background-color: #e8000b;
  color: white;
  font-size: 1.5em;
  font-weight: bold;
  padding: 0.3em 1em;
  border-radius: 0.5em;
  width: 100%;
  text-align: center;
  white-space: nowrap;
}

.padding-wrap {
  padding: 0 3em;
}

#topTel {
  height: auto;
  width: 100%;
  display: flex;
  align-items: center;
  font-size: 1em;
  flex-direction: column;
  gap: 1em;
  margin: 2em auto 1.5em;
}
#topTel a {
  background-color: #e8000b;
  margin: 0 auto;
  display: inline-block;
  padding: 1em 6em;
  border-radius: 10em;
  text-decoration: none;
  box-shadow: 0 0.7em 0 #b90009;
  position: relative;
  transition: 0.2s;
}
#topTel a::after {
  content: "";
  height: 1em;
  width: 1em;
  border-top: 0.5em solid white;
  border-right: 0.5em solid white;
  position: absolute;
  right: 2em;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
}
#topTel a p {
  background-color: white;
  border-radius: 100vw;
  text-align: center;
  color: #000;
  font-weight: bold;
  font-size: max(1.3em, 14px);
  padding: 0.2em 1em;
  margin-bottom: 0.5em;
  line-height: 1;
}
#topTel a .num {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5em;
}
#topTel a .num img {
  height: 3em;
  width: auto;
}
#topTel a .num span {
  font-size: 4em;
  color: #FFFF00;
  font-weight: bold;
  white-space: nowrap;
}
#topTel a:hover {
  transform: translateY(0.7em);
  box-shadow: 0 0em 0 #b90009;
}
#topTel p {
  font-size: max(1.2em, 14px);
  color: #e8000b;
  font-weight: bold;
}

.banners {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1.5em;
  width: 100%;
  margin-bottom: 3em;
}
.banners a {
  width: 100%;
  transition: 0.2s;
}
.banners a img {
  width: 100%;
}
.banners a:hover {
  filter: brightness(1.1);
}

#call {
  background-color: #e8000b;
  width: 100%;
  min-height: 5em;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1.5em;
  padding: 3em 1em 1.5em;
}
#call h2 {
  color: white;
  font-size: 2.3em;
  display: inline-block;
  text-align: center;
  margin-bottom: 0.5em;
}
#call div {
  max-width: 600px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 1em;
}
#call div span {
  background-color: white;
  color: #e8000b;
  font-size: 1.5em;
  width: 48%;
  display: inline-block;
  padding: 0.5em 1em;
  border-radius: 100vw;
  text-align: center;
  font-weight: bold;
}
#call p {
  color: white;
  font-size: 1.2em;
  max-width: 600px;
}

#items {
  background-color: #FFF3DC;
  line-height: 1;
}
#items .warranty {
  width: 100%;
  height: 25em;
  background-image: url(../images/warranty-back.svg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  margin-bottom: 5em;
  display: flex;
  align-items: center;
  justify-content: center;
}
#items .warranty div {
  margin-bottom: 2em;
  position: relative;
}
#items .warranty div .leaf-L,
#items .warranty div .leaf-R {
  position: absolute;
  top: 50%;
  height: 17em;
  width: auto;
  pointer-events: none;
}
#items .warranty div .leaf-L {
  left: -7em;
  transform: translateY(-50%);
}
#items .warranty div .leaf-R {
  right: -7em;
  transform: translateY(-50%) scale(-1, 1);
}
#items .warranty div p {
  color: white;
  font-weight: bold;
  text-align: center;
  font-size: 3.5em;
  line-height: 0.9;
  text-shadow: 0 0 0.1em #ca9100;
}
#items .warranty div p span {
  font-size: 1.4em;
}
#items .warranty div p:nth-child(3) {
  font-size: 5em;
}
#items .items-etc {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  padding: 0 3em 3em;
}
#items .items-etc h2 {
  margin: 0 auto;
  color: #e8000b;
  font-size: 4em;
  text-align: center;
  font-weight: 900;
  margin-bottom: 1em;
  width: auto;
  display: inline-block;
  background: linear-gradient(transparent 60%, #FFFF00 60%);
  padding: 0 0.3em 0.1em;
}
#items .items-etc .items-wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  grid-area: 1em;
  gap: 3em;
  row-gap: 8em;
  margin-top: 8em;
}
#items .items-etc .items-wrap .item {
  width: 26em;
  background-color: white;
  border: 0.25em solid #e8000b;
  border-radius: 1em;
  position: relative;
  top: -3em;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: stretch;
  box-shadow: 0 0 1em rgba(126, 0, 0, 0.2588235294);
}
#items .items-etc .items-wrap .item .subsidy {
  position: absolute;
  top: -3em;
  background: linear-gradient(90deg, rgba(49, 217, 0, 0) 0%, rgb(49, 217, 0) 10%, rgb(49, 217, 0) 90%, rgba(49, 217, 0, 0) 100%);
  width: 100%;
  text-align: center;
  color: white;
  font-weight: bold;
  font-size: 1.5em;
  padding: 0.3em 0.5em;
}
#items .items-etc .items-wrap .item .subsidy span:nth-child(2) {
  font-size: 1.3em;
}
#items .items-etc .items-wrap .item .subsidy span:nth-child(2) span {
  font-size: 1.5em;
}
#items .items-etc .items-wrap .item .model-code {
  width: 100%;
  background-color: #e8000b;
  display: block;
  text-align: center;
  color: white;
  font-weight: bold;
  font-size: 2.5em;
  padding: 0.2em;
  border-radius: 0.3em 0.3em 0 0;
}
#items .items-etc .items-wrap .item .img-tag {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: nowrap;
}
#items .items-etc .items-wrap .item .img-tag .item-img {
  width: 55%;
  height: 13em;
  overflow: hidden;
  position: relative;
}
#items .items-etc .items-wrap .item .img-tag .item-img img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
#items .items-etc .items-wrap .item .img-tag .maker-tags {
  width: 45%;
  padding: 1em 1em 0 0;
}
#items .items-etc .items-wrap .item .img-tag .maker-tags .maker {
  width: 100%;
}
#items .items-etc .items-wrap .item .img-tag .maker-tags .tags {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 0.3em;
}
#items .items-etc .items-wrap .item .img-tag .maker-tags .tags .tag {
  background-color: #e8000b;
  color: white;
  font-weight: bold;
  padding: 0.3em 0.5em 0.2em;
  white-space: nowrap;
  border-radius: 100vw;
  font-size: max(1.1em, 15px);
  vertical-align: middle;
  display: flex;
  align-items: center;
  justify-content: center;
}
#items .items-etc .items-wrap .item .info {
  padding: 1em;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: stretch;
  gap: 0.5em;
}
#items .items-etc .items-wrap .item .info .partition,
#items .items-etc .items-wrap .item .info .partition-arrow {
  width: 100%;
  height: 0.2em;
  background-color: #e8000b;
}
#items .items-etc .items-wrap .item .info .partition-arrow {
  margin: 0.25em auto 1.3em;
  position: relative;
}
#items .items-etc .items-wrap .item .info .partition-arrow img {
  position: absolute;
  left: 50%;
  top: -0.75em;
  transform: translateX(-50%);
  height: 2.5em;
}
#items .items-etc .items-wrap .item .info .list-price-wrap,
#items .items-etc .items-wrap .item .info .normal-price-wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  font-size: 1em;
}
#items .items-etc .items-wrap .item .info .normal-price-wrap {
  font-weight: bold;
  color: #e8000b;
  font-size: 1.1em;
}
#items .items-etc .items-wrap .item .info .normal-price-word,
#items .items-etc .items-wrap .item .info .list-price-word {
  text-align: left;
}
#items .items-etc .items-wrap .item .info .normal-price,
#items .items-etc .items-wrap .item .info .list-price {
  text-align: right;
}
#items .items-etc .items-wrap .item .info .normal-price span,
#items .items-etc .items-wrap .item .info .list-price span {
  font-weight: bold;
}
#items .items-etc .items-wrap .item .info .list-price span {
  font-size: 1.3em;
}
#items .items-etc .items-wrap .item .info .normal-price span {
  font-size: 1.7em;
}
#items .items-etc .items-wrap .item .info .komi {
  background-color: #e8000b;
  color: white;
  font-weight: bold;
  font-size: 1.4em;
  width: 100%;
  padding: 0.3em;
  text-align: center;
  border-radius: 100vw;
}
#items .items-etc .items-wrap .item .info .prices {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  font-weight: 900;
  color: #e8000b;
  background: linear-gradient(transparent 70%, #FFFF00 70%);
}
#items .items-etc .items-wrap .item .info .real {
  writing-mode: vertical-rl;
  font-size: 1.5em;
  margin-right: 0.3em;
}
#items .items-etc .items-wrap .item .info .price {
  font-size: 4em;
  margin-right: -0.2em;
}
#items .items-etc .items-wrap .item .info .tax-yen {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-left: 1em;
}
#items .items-etc .items-wrap .item .info .tax-yen .tax {
  font-size: 1em;
  white-space: nowrap;
  margin-left: -1.3em;
}
#items .items-etc .items-wrap .item .info .tax-yen .yen {
  font-size: 2.3em;
}
#items .items-etc .komikomi-content {
  width: 100%;
  background-color: white;
  border: 0.15em solid #e8000b;
  border-radius: 0.5em;
  overflow: hidden;
}
#items .items-etc .komikomi-content h3 {
  background-color: #e8000b;
  color: white;
  text-align: center;
  font-size: 2em;
  padding: 0.3em 1em;
}
#items .items-etc .komikomi-content p {
  padding: 1em;
  font-size: max(1.3em, 16px);
  margin: 0;
  line-height: 1.5;
}

.contact-wrap {
  width: calc(100% - 6em);
  margin: 5em auto;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  padding: 0em 0em 2em;
  background-color: #fff3dd;
  line-height: 1;
  font-size: 1em;
  gap: 1em;
  border: 0.5em solid #e8000b;
  border-top: none;
  border-radius: 1em;
  box-shadow: 0.2em 0.2em 1em #b90009;
  overflow: hidden;
}
.contact-wrap .contact-title {
  background-color: #e8000b;
  width: 100%;
  padding: 1em 1em 0.5em;
  display: flex;
  align-items: center;
  justify-content: center;
}
.contact-wrap h2 {
  font-size: 3em;
  font-weight: 900;
  color: #e8000b;
  background: linear-gradient(transparent 85%, #FFFF00 85%);
  padding: 0 0.2em 0.3em;
  color: white;
}
.contact-wrap .contact-text {
  font-size: max(1.3em, 18px);
  font-weight: bold;
  text-align: center;
}
.contact-wrap .btn-wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-around;
  gap: 1em;
  row-gap: 2em;
  width: 100%;
  padding: 0 1em;
}
.contact-wrap .btn-wrap a {
  background-color: #002368;
  border-radius: 100vw;
  text-decoration: none;
  color: white;
  font-weight: bold;
  height: 5.5em;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.5em 10em;
  width: 100%;
  gap: 0.5em;
  position: relative;
  transition: 0.2s;
}
.contact-wrap .btn-wrap a::after {
  content: "";
  height: 0.7em;
  width: 0.7em;
  border-top: 0.4em solid white;
  border-right: 0.4em solid white;
  position: absolute;
  right: 1.5em;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
}
.contact-wrap .btn-wrap a:hover {
  transform: translateY(0.7em);
}
.contact-wrap .btn-wrap a img {
  width: auto;
}
.contact-wrap .btn-wrap .tel-btn,
.contact-wrap .btn-wrap .mail-btn {
  width: 50%;
}
.contact-wrap .btn-wrap .tel-btn {
  background-color: #e8000b;
  padding: 2em 3em;
  flex-direction: column;
  box-shadow: 0 0.5em 0 #b90009;
  gap: 0;
}
.contact-wrap .btn-wrap .tel-btn:hover {
  box-shadow: 0 0em 0 #b90009;
}
.contact-wrap .btn-wrap .tel-btn div {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.3em;
  margin-bottom: 0.1em;
}
.contact-wrap .btn-wrap .tel-btn div img {
  height: 2.5em;
}
.contact-wrap .btn-wrap .tel-btn div span {
  font-size: 2.5em;
  white-space: nowrap;
}
.contact-wrap .btn-wrap .tel-btn p {
  background-color: white;
  text-align: center;
  color: #e8000b;
  border-radius: 100vw;
  width: 100%;
  font-size: max(1.1em, 14px);
}
.contact-wrap .btn-wrap .mail-btn {
  width: 40%;
  height: auto;
  background-color: #5f87fd;
  padding: 1em 12em;
  box-shadow: 0 0.5em 0 #355AC1;
}
.contact-wrap .btn-wrap .mail-btn img {
  height: 2em;
}
.contact-wrap .btn-wrap .mail-btn span {
  font-size: 2em;
  position: relative;
  white-space: nowrap;
}
.contact-wrap .btn-wrap .mail-btn:hover {
  box-shadow: 0 0em 0 #355AC1;
}

.hojokin-banner {
  width: calc(100% - 6em);
  margin: 0 auto;
  margin-top: 3em;
  display: flex;
  flex-direction: column;
  border-radius: 1em;
  overflow: hidden;
}
.hojokin-banner img {
  width: 100%;
}

/* 2024年補助金情報 */
#deals {
  margin: 0 auto;
  padding: 3em 2em 0;
  width: 50em;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: stretch;
  font-size: 1.1em;
  line-height: 1.2;
}
#deals .bold {
  font-weight: bold;
}
#deals .underline {
  background: linear-gradient(transparent 70%, #FFFF00 0%);
  margin-bottom: 1em;
  display: inline;
}
#deals a {
  text-decoration: none;
  color: black;
}
#deals p {
  margin: 0;
  padding: 0;
}
#deals #header {
  height: 4em;
  background-color: #142e79;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.5em;
}
#deals #header img {
  height: 100%;
}
#deals .main-title {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
#deals .main-title .sub {
  color: #00A9EB;
  font-weight: bold;
  font-size: 2em;
  text-align: center;
  line-height: 1.1;
  margin-bottom: 0.3em;
}
#deals .main-title .main {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: nowrap;
  margin-bottom: 0.5em;
  gap: 1em;
}
#deals .main-title .main img {
  height: 8em;
}
#deals .main-title .main h2 {
  font-size: 3em;
  white-space: normal;
  color: #faa527;
  text-indent: 0;
  position: static;
  font-weight: bold;
  line-height: 1.3;
  margin: 0;
  padding: 0;
  overflow-wrap: break-word;
}
#deals .top-text {
  width: calc(100% - 5em);
  margin: 0 auto 1em;
  text-align: center;
}
#deals #subsidy {
  padding: 1em 3em 3em;
  border-radius: 0.5em;
  background-color: #FAF9DD;
}
#deals #subsidy .category {
  background-color: #61ab48;
}
#deals #subsidy .items h4 {
  border-bottom: #faa527 solid 0.15em;
  font-weight: bold;
}
#deals .category {
  padding: 0.2em 1em 0.1em;
  font-size: 2em;
  text-align: center;
  font-weight: bold;
  color: white;
  border-radius: 0.5em;
}
#deals .section-top {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  gap: 1em;
  margin: 1em auto 2em;
}
#deals .section-top img {
  width: 35%;
}
#deals .section-top .section-title {
  text-align: center;
  line-height: 1;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
#deals .section-top .section-title span {
  font-size: 1.2em;
  white-space: nowrap;
  background: linear-gradient(transparent 50%, #FFDE34 60%);
  padding: 0 0.4em 0.2em;
  font-weight: bold;
  color: #1A1311;
}
#deals .section-top .section-title h3 {
  font-size: 3em;
  white-space: nowrap;
  margin: 0.3em auto;
  color: #61ab48;
  overflow: visible;
  padding: 0;
  font-weight: bold;
}
#deals .items {
  margin: 0 auto;
  width: 100%;
}
#deals .items:last-child {
  margin: 3em auto 0;
}
#deals .items h4 {
  font-size: 1.5em;
  line-height: 1.2;
  padding: 0 0.5em;
}
#deals .items .region-text {
  font-weight: bold;
  margin-bottom: 1em;
}
#deals .items .item {
  padding: 0 0.5em;
}
#deals .items .item h5 {
  font-size: 1.4em;
  margin: 0;
  margin-top: 0.3em;
  line-height: 2;
  font-weight: bold;
  color: #61ab48;
  text-indent: 0;
}
#deals .items .item p {
  margin: 0;
}
#deals .items .item .wrapper-img {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1em;
}
#deals .items .item .wrapper-img img {
  width: 13em;
}
#deals .items .item .wrapper-img div {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 0.1em;
}
#deals .items .item .wrapper-img div span {
  text-align: center;
}
#deals .items .item ul li {
  list-style: disc;
}
#deals .items .requirements-url {
  display: flex;
  align-items: center;
  background-color: rgb(255, 255, 255);
  padding: 1em;
  border-radius: 100vw;
  position: relative;
  transition: 0.2s;
  box-shadow: 0 0 0.5em 0 rgba(0, 0, 0, 0.1);
}
#deals .items .requirements-url p {
  margin: 0 auto;
  text-align: center;
}
#deals .items .requirements-url::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 2em;
  transform: translateY(-50%) rotate(45deg);
  height: 1em;
  width: 1em;
  border-top: 0.1em solid rgb(0, 0, 0);
  border-right: 0.1em solid rgb(0, 0, 0);
  transition: 0.2s;
}
#deals .items .requirements-url:hover {
  opacity: 0.8;
}
#deals .items .requirements-url:hover::after {
  right: 1.5em;
}
#deals .cards {
  margin-top: 1em;
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: stretch;
  gap: 1.5em;
}
#deals .cards .subsidy {
  background-color: #FFE9AA;
}
#deals .cards .subsidy .card-top {
  background-color: #FBA518;
}
#deals .cards .subsidy .card-top div {
  text-align: center;
}
#deals .cards .subsidy .card-items .card-subtitle {
  color: #FBA518;
  font-size: 1.5em;
  line-height: 1.3;
  padding-top: 0.1em;
}
#deals .cards .campaig {
  background-color: #CEEBFB;
}
#deals .cards .campaig .card-top {
  background-color: #00A8EB;
}
#deals .cards .campaig .card-top div {
  text-align: center;
}
#deals .cards .campaig .card-items .card-subtitle {
  color: #00A8EB;
  font-size: 1.5em;
  line-height: 1.3;
  padding-top: 0.1em;
}
#deals .cards .card {
  padding: 1em;
  width: 50%;
  border-radius: 0.5em;
}
#deals .cards .card .card-top {
  padding: 0.5em 1em;
  color: white;
  text-align: center;
  border-radius: 0.5em;
}
#deals .cards .card .card-top div {
  font-size: 1.5em;
  font-weight: bold;
}
#deals .cards .card .card-top span {
  padding-top: 0.5em;
  border-top: 0.15em solid white;
  font-size: 0.7em;
  display: inline-block;
}
#deals .cards .card .card-items {
  display: flex;
  align-items: stretch;
  justify-content: center;
  flex-direction: column;
  margin: 1em auto;
}
#deals .cards .card .card-items .card-item {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  flex-direction: column;
  margin-bottom: 0.5em;
}
#deals .cards .card .card-items .card-item:last-child {
  padding-bottom: 0;
  margin-bottom: 0;
}
#deals .cards .card .card-items .card-item .card-subtitle {
  background-color: white;
  font-weight: bold;
  text-align: center;
  border-radius: 100vw;
  margin-bottom: 0.5em;
}
#deals .cards .card .card-items .card-item .subsidy-wrapper {
  min-height: 10em;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
#deals .cards .card .card-items .card-item .subject {
  margin: 0 auto 0.5em;
  font-size: 0.8em;
  width: calc(100% - 1em);
  height: 6em;
}
#deals .cards .card .card-items .card-item p {
  font-size: max(12px, 0.8em);
  margin: 0 auto;
}
#deals .cards .card .card-items .card-item .product-img {
  position: relative;
  display: flex;
  align-items: center;
  height: 15em;
}
#deals .cards .card .card-items .card-item .product-img span {
  position: absolute;
  top: 0;
  left: 0;
}
#deals .cards .card .card-items .card-item .product-img img {
  margin: 0 auto;
  width: 80%;
}
#deals .cards .card .card-items .card-item .amount {
  font-size: 1.5em;
  font-weight: bold;
  text-align: center;
}
#deals .cards .card .card-items .card-item .amount2 {
  text-align: left;
  font-weight: bold;
  font-size: max(16px, 1.1em);
  margin: 0.5em auto 0;
}
#deals .cards .card .card-items .card-item .limit {
  text-align: center;
  font-weight: bold;
  font-size: max(14px, 1em);
}
#deals .requirements {
  margin-left: -2em;
}
#deals .requirements li {
  font-size: 14px;
  list-style: none;
  display: flex;
  margin-bottom: 0.5em;
}
#deals .requirements li p {
  margin-left: 0.5em;
}
#deals .leave-it-to {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: nowrap;
  flex-direction: column;
  background-color: #002368;
  color: white;
  padding: 1em;
  font-weight: bold;
  font-size: 1.2em;
  line-height: 1.6;
  border-radius: 0.5em;
  margin: 1em;
}
#deals .leave-it-to div {
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-end;
  justify-content: center;
}
#deals .leave-it-to div img {
  width: 7em;
  margin-bottom: 0.5em;
}
#deals .leave-it-to p {
  text-align: center;
}
#deals .kyutousyouenezigyou {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1em;
  margin: 2em auto 3em;
  text-align: center;
}
#deals .kyutousyouenezigyou img {
  width: 15em;
}
#deals .kyutousyouenezigyou p {
  line-height: 1.7;
  font-weight: bold;
}
#deals .kyutousyouenezigyou p a {
  background-color: #faa527;
  padding: 0.1em 0.5em;
  border-radius: 100vw;
  color: white;
  white-space: nowrap;
}
#deals .region {
  position: relative;
  margin-bottom: 14em;
}
#deals .region .regions {
  display: flex;
  flex-direction: column;
  gap: 0.7em;
}
#deals .region .regions div {
  display: flex;
  gap: 0.5em;
}
#deals .region .regions div a {
  color: white;
  padding: 0.2em 1.8em 0.1em 0.4em;
  border-radius: 0.3em;
  font-size: 1.2em;
  font-weight: bold;
  position: relative;
  transition: 0.2s;
}
#deals .region .regions div a::after {
  content: "";
  position: absolute;
  right: 0.4em;
  top: 50%;
  transform: translateY(-50%);
  width: 1em;
  height: 1em;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(../img/arrow.svg);
}
#deals .region .regions div a:hover {
  transform: translateY(0.2em);
}
#deals .region img {
  width: 100%;
  position: absolute;
  top: 3em;
  right: 0;
  pointer-events: none;
}
#deals .hokkaido a {
  background-color: #003E75;
  box-shadow: 0em 0.2em 0 #002951;
}
#deals .hokkaido a:hover {
  box-shadow: 0em 0em 0 #002951;
}
#deals .touhoku a {
  background-color: #186777;
  box-shadow: 0em 0.2em 0 #11505D;
}
#deals .touhoku a:hover {
  box-shadow: 0em 0em 0 #11505D;
}
#deals .kantou a {
  background-color: #55A771;
  box-shadow: 0em 0.2em 0 #478D5F;
}
#deals .kantou a:hover {
  box-shadow: 0em 0em 0 #478D5F;
}
#deals .chuubu a {
  background-color: #EEA600;
  box-shadow: 0em 0.2em 0 #C48A00;
}
#deals .chuubu a:hover {
  box-shadow: 0em 0em 0 #C48A00;
}
#deals .kinki a {
  background-color: #EB620C;
  box-shadow: 0em 0.2em 0 #B94E07;
}
#deals .kinki a:hover {
  box-shadow: 0em 0em 0 #B94E07;
}
#deals .chugoku a {
  background-color: #e8000b;
  box-shadow: 0em 0.2em 0 #b90009;
}
#deals .chugoku a:hover {
  box-shadow: 0em 0em 0 #b90009;
}
#deals .kyuusyuu a {
  background-color: #4A2D7E;
  box-shadow: 0em 0.2em 0 #351E5C;
}
#deals .kyuusyuu a:hover {
  box-shadow: 0em 0em 0 #351E5C;
}

/* 補助金申請の流れ */
#subsidy-flow {
  margin: 5em auto;
  padding: 0em 2em 3em;
  width: 50em;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: stretch;
  box-sizing: border-box;
  font-size: 1.1em;
  line-height: 1.2;
}
#subsidy-flow a {
  text-decoration: none;
  color: black;
}
#subsidy-flow p {
  margin: 0;
  padding: 0;
}
#subsidy-flow .main-title {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
#subsidy-flow .main-title .main {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: nowrap;
  gap: 1em;
}
#subsidy-flow .main-title .main img {
  height: 8em;
}
#subsidy-flow .main-title .main h2 {
  font-size: 3.5em;
  white-space: nowrap;
  color: #f79727;
  position: static;
  font-weight: bold;
  line-height: 1;
  text-indent: 0;
  line-height: 1.3;
  margin: 0;
  padding: 0;
}
#subsidy-flow .top-text {
  width: calc(100% - 5em);
  margin: 1em auto 1em;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}
#subsidy-flow section {
  width: 100%;
}
#subsidy-flow .flow-wrap {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
#subsidy-flow .flow-wrap .flow-line {
  width: 100%;
  margin-top: 8em;
  padding: 0 2em 2em;
  background: linear-gradient(90deg, #fae7f0 0%, #fae7f0 49%, rgb(255, 255, 255) 49%, rgb(255, 255, 255) 51%, #cfebfa 51%, #cfebfa 100%);
}
#subsidy-flow .flow-wrap .flow-line .icons {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-around;
  align-items: stretch;
  gap: 4em;
}
#subsidy-flow .flow-wrap .flow-line .icons .icon-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: stretch;
  gap: 0.5em;
  margin-top: -6.5em;
}
#subsidy-flow .flow-wrap .flow-line .icons .icon-wrap .icon {
  width: 13em;
}
#subsidy-flow .flow-wrap .flow-line .icons .icon-wrap span {
  font-size: 2.5em;
  font-weight: bold;
  line-height: 1;
  color: #d16e90;
  margin-top: 0.2em;
}
#subsidy-flow .flow-wrap .flow-line .icons .icon-wrap .icon-wrap-staff {
  color: #187db4;
}
#subsidy-flow .flow-wrap .flow-line .icons .icon-wrap .icon-logo {
  height: 3em;
}
#subsidy-flow .flow-wrap .flow-line h3 {
  background-color: white;
  text-align: center;
  padding: 0.1em 0.5em 0;
  font-size: 2.2em;
  font-weight: bold;
  line-height: 2;
  margin: 1em auto;
}
#subsidy-flow .flow-wrap .flow-line h4 {
  background-color: rgba(255, 255, 255, 0.6);
  padding: 0.5em 1em 0.4em;
  font-size: 1.7em;
  border-radius: 0.5em;
  margin: 1em auto;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  line-height: 1.3;
}
#subsidy-flow .flow-wrap .flow-line h4 span {
  text-align: left;
}
#subsidy-flow .flow-wrap .flow-line .side-by-side {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: nowrap;
  gap: 1em;
}
#subsidy-flow .flow-wrap .flow-line .side-by-side img {
  width: 60%;
}
#subsidy-flow .flow-wrap .flow-line .side-by-side #documents {
  width: 40%;
}
#subsidy-flow .flow-wrap .flow-line .side-by-side #documents h6 {
  border: 0.1em solid black;
  text-align: center;
  font-size: 1.3em;
  padding: 0.1em 0.5em 0;
  margin: 0.5em auto;
  text-indent: 0;
}
#subsidy-flow .flow-wrap .flow-line .side-by-side #documents p {
  font-weight: bold;
  font-size: 1.1em;
}
#subsidy-flow .flow-wrap .flow-line .side-by-side #documents p span {
  font-size: 0.8em;
  vertical-align: top;
}
#subsidy-flow .flow-wrap .flow-line .note {
  background-color: rgba(255, 255, 255, 0.6);
  padding: 1em;
  border-radius: 0.5em;
}
#subsidy-flow .flow-wrap .flow-line .note li {
  list-style: none;
  display: flex;
  gap: 0.3em;
  margin-bottom: 0.3em;
}
#subsidy-flow .flow-wrap .flow-line .note li .side-by-side {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: nowrap;
  gap: 1em;
}
#subsidy-flow .flow-wrap .flow-line .note li .side-by-side img {
  width: 60%;
}
#subsidy-flow .flow-wrap .flow-line .note li .side-by-side .documents {
  width: 40%;
}
#subsidy-flow .flow-wrap .flow-line .note li .side-by-side .documents h5 {
  border: 0.1em solid black;
  text-align: center;
  font-size: 1.3em;
  padding: 0.1em 0.5em 0;
  margin: 0.5em auto;
}
#subsidy-flow .flow-wrap .flow-line .note li .side-by-side .documents p {
  font-weight: bold;
  font-size: 1.1em;
}
#subsidy-flow .flow-wrap .flow-line .note li .side-by-side .documents p span {
  font-size: 0.8em;
  vertical-align: top;
}
#subsidy-flow .flow-wrap .flow-line .note li:last-child {
  margin-bottom: 0;
}
#subsidy-flow .flow-wrap .flow-line .caption {
  height: 12em;
  width: 90%;
  margin: 0 auto;
  display: block;
  -o-object-fit: contain;
  object-fit: contain;
}
#subsidy-flow #section-02 .flow-line {
  background: linear-gradient(90deg, #cfebfa 0%, #cfebfa 49%, rgb(255, 255, 255) 49%, rgb(255, 255, 255) 51%, #D4E6BD 51%, #D4E6BD 100%);
}
#subsidy-flow #section-02 .flow-line .icons .icon-wrap span {
  color: #7AB241;
}
#subsidy-flow #section-02 .flow-line .icons .icon-wrap .icon-wrap-staff {
  color: #187db4;
}

.comentBox {
  border: 0.2em solid #b90009;
  width: 100%;
  position: relative;
  margin: 5em auto;
}

.ribbon01 {
  display: block;
  position: relative;
  padding: 15px;
  padding-right: 0;
  margin-left: -0.8em;
  margin-bottom: 2%;
  margin-top: 0.5em;
  font-size: 24px;
  color: #FFF;
  background: #e8000b;
  font-size: max(1.5em, 16px);
  line-height: 1.5;
}
.ribbon01:before {
  position: absolute;
  content: "";
  top: 100%;
  left: 0;
  border: none;
  border-bottom: solid 15px transparent;
  border-right: solid 0.8em #b90009;
}

.comentImg-text {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.5em;
  padding: 0 1em 0;
}
.comentImg-text .comentImg {
  width: 40%;
}
.comentImg-text .comentImg img {
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.comentImg-text .coment {
  margin-top: -1em;
  padding: 1em 0;
}
.comentImg-text p {
  line-height: 1.5;
}

.telBox {
  margin: 3em auto;
  width: 100%;
}
.telBox .telBox-banner {
  margin: 0 auto;
  width: calc(100% - 6em);
  display: block;
}

.title_h3 {
  font-size: max(1.5em, 16px);
  font-weight: bold;
  background: #e8000b;
  padding: 15px;
  color: #FFF;
}

.text {
  font-size: 18px;
  text-indent: 1em;
}

.flowBox {
  margin: 7% 0;
}

.flowBox .text-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1em;
}

.kaiketsuList li {
  list-style-type: disc;
  line-height: 1.5;
  font-size: max(1.2em, 14px);
  margin-bottom: 1em;
}

.hosyouBox {
  margin-bottom: 3em;
}

.hosyouBox p {
  line-height: 1.5 !important;
  margin-bottom: 1em;
}

.hosyouTxt {
  margin: 2%;
  font-size: max(1.2em, 14px);
}

.sekou {
  margin: 7% 0;
}

#topmenu {
  background-repeat: repeat-x;
  height: 48px;
  line-height: 42px;
  width: 900px;
  position: absolute;
  top: 180px;
  margin: 0px;
  padding: 0px;
  background-image: url(img/topmenu.jpg);
  background-position: left top;
  font-size: 13px;
}

#topmenu span a {
  overflow: hidden;
  width: 20%;
  _width: 19.6%;
  text-align: center;
  color: #FFFFFF;
  font-weight: bold;
  text-decoration: none;
  float: left;
  height: 45px;
  _height: 47px;
  background-image: url(img/menu_item.jpg);
  background-repeat: repeat-x;
  margin: 0px;
  padding: 0px;
  padding-bottom: 3px;
  display: block;
}

#topmenu span a:hover {
  background-image: url(img/menu_item_hover.jpg);
  background-position: right top;
  color: #FFFFFF;
}

#siteNavi {
  font-size: 0.775em;
  line-height: 1.5em;
  margin-bottom: 15px;
}

#contents {
  min-height: 400px;
  margin-top: 0px;
}

#menu:after,
#contents:after {
  height: 1px;
  overflow: hidden;
  content: "";
  display: block;
  clear: both;
}

#footer {
  text-align: center;
  color: #FFFFFF;
  height: auto;
  overflow: hidden;
  background: #e8000b;
  padding: 3em 3em 1em;
}

#links08 {
  margin-left: -2.4em;
}

#footer a {
  color: #FFFFFF;
  text-decoration: none;
}

#footermenu {
  text-align: center;
  padding: 6px;
}

#GnaviPage li {
  list-style-type: disc;
  line-height: 1.5;
}
#GnaviPage li a {
  font-size: max(0.9em, 14px);
}

#footlink {
  text-align: center;
  padding-top: 8px;
  padding-bottom: 8px;
  color: #666666;
  font-size: 12px;
  background-color: #E5E5E5;
}

#footlink a {
  color: #666666;
  margin-left: 5px;
  margin-right: 5px;
}

#space3,
#space4,
#space5,
#space6 {
  background-color: #FFFFFF;
  text-align: center;
  line-height: 120%;
  font-size: 12px;
  padding: 8px;
}

#main {
  width: auto;
}

#menu {
  width: auto;
  padding-top: 25px;
}

#searchbox {
  position: absolute;
  top: 0px;
  width: 880px;
  padding-right: 10px;
  padding-left: 10px;
  text-align: right;
  line-height: 30px;
  height: 30px;
  font-size: 12px;
  padding-top: 6px;
}

#searchbox input {
  vertical-align: middle;
  margin-right: 2px;
  margin-left: 2px;
}

#searchbox form {
  padding: 0px;
  margin: 0px;
}

form input {
  vertical-align: middle;
}

h1 {
  font-weight: normal;
  font-size: 6px;
  color: #666666;
  line-height: 6px;
  background-repeat: no-repeat;
  position: absolute;
  top: 5px;
  padding-right: 6px;
  padding-left: 6px;
}

.voice_title {
  font-size: 40pt !important;
  font-weight: bold;
  color: #e8000b;
  line-height: 2em;
  text-align: center;
}

#voicebox {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1em;
}
#voicebox h4 {
  margin-bottom: -0.5em;
}

.koe-wrap {
  display: flex;
  align-items: stretch;
  justify-content: center;
  flex-wrap: wrap;
  gap: 2em;
  z-index: 1;
}

.koe {
  position: relative;
  padding: 1.5em 1.5em 0.5em;
  background-color: rgb(250, 248, 244);
  border-radius: 0.5em;
  width: 48%;
  box-shadow: 0 0 0.25em rgba(0, 0, 0, 0.5);
}
.koe p {
  font-size: 1em;
  padding-left: 0;
  line-height: 2;
  background-image: linear-gradient(#ccc 0.1px, transparent 0.1em);
  background-size: auto 2em;
  border-bottom: 1px solid #ccc;
  margin: 0;
}
.koe::after, .koe::before {
  z-index: -1;
  position: absolute;
  content: "";
  bottom: 15px;
  left: 10px;
  width: 50%;
  top: 80%;
  max-width: 300px;
  background-color: black;
  box-shadow: 0 1em 0.8em hsla(0, 0%, 0%, 0.3);
  transform: rotate(-3deg);
}
.koe:after {
  transform: rotate(3deg);
  right: 10px;
  left: auto;
}

.right {
  float: right;
}

.blog .title a {
  color: #b90009;
}

#main h5 {
  background-image: url(img/h5.jpg);
  background-position: left 2px;
  background-repeat: no-repeat;
  font-size: 15px;
  line-height: 26px;
  text-indent: 25px;
  margin-top: 10px;
  margin-bottom: 3px;
}

#main h6 {
  background-image: url(img/h6.jpg);
  background-repeat: no-repeat;
  background-position: left center;
  padding-left: 20px;
  font-size: 15px;
  line-height: 20px;
  margin-top: 6px;
  margin-bottom: 6px;
}

#sitemaps {
  padding-top: 0px;
  padding-right: 10px;
  padding-bottom: 0px;
  padding-left: 10px;
}

#sitemaps ul {
  margin: 0;
  padding: 0;
}

#sitemaps li {
  list-style-type: none;
  list-style-image: none;
}

#sitemaps .sbox1,
#sitemaps .sbox2 {
  width: 47%;
  margin-top: 5px;
  margin-bottom: 5px;
  padding: 5px;
}

#sitemaps .sbox1 {
  float: left;
  clear: left;
}

#sitemaps .sbox2 {
  float: right;
  clear: right;
}

#sitemaps .l1 {
  background-image: url(../images/sitemap_l1.jpg);
  line-height: 26px;
  height: 26px;
  font-weight: bold;
  margin-bottom: 5px;
  margin-top: 0px;
  background-repeat: no-repeat;
  background-position: 5px center;
  padding-left: 35px;
  overflow: hidden;
}

#sitemaps .l2 {
  background-image: url(img/sitemap_l2.jpg);
  background-repeat: no-repeat;
  background-position: left 4px;
  line-height: 20px;
  text-indent: 15px;
  margin-left: 22px;
  margin-bottom: 3px;
}

#sitemaps .l3 {
  background-image: url(img/sitemap_l3.jpg);
  background-repeat: no-repeat;
  background-position: left 4px;
  line-height: 20px;
  text-indent: 15px;
  margin-left: 38px;
  margin-bottom: 3px;
}

#whatsnew {
  border: 1px solid #CCCCCC;
  background-image: url(img/whats_top.jpg);
  background-repeat: no-repeat;
  background-position: left top;
  padding-top: 45px;
  padding-bottom: 10px;
  padding-right: 10px;
  padding-left: 10px;
}

#whatsnew li {
  line-height: 25px;
  list-style-image: url(img/whats_li.jpg);
  margin-right: 10px;
  margin-left: 10px;
}

#categorylist {
  padding: 10px;
  margin-top: 10px;
  margin-bottom: 10px;
}

#categorylist .cbox {
  margin-bottom: 15px;
  font-size: 13px;
}

#categorylist .cbox:after {
  clear: both;
}

#categorylist .desc {
  font-size: 12px;
  line-height: 130%;
  color: #505050;
  padding: 10px;
}

#categorylist .more {
  text-align: right;
  padding-right: 10px;
  padding-left: 10px;
  padding-bottom: 5px;
}

#categorylist .bottom {
  background-image: url(img/categorylist_bottom.jpg);
  background-repeat: no-repeat;
  background-position: center bottom;
}

#entrylist {
  padding: 10px;
}

#entrylist dl {
  padding: 6px;
  display: block;
}

#entrylist dt {
  font-weight: bold;
  font-size: 14px;
  background-image: url(../images/entlist.jpg);
  background-repeat: no-repeat;
  background-position: left 5px;
  line-height: 20px;
  padding-left: 15px;
}

#entrylist dd {
  margin-left: 15px;
  margin-bottom: 8px;
  font-size: 11px;
  color: #757575;
  line-height: 120%;
}

.txt-border {
  background-image: url(img/dott.gif);
  line-height: 22px;
  font-size: 13px;
  margin: 10px;
  padding: 0px;
  background-position: 0px 5px;
}

.txt-border p {
  line-height: 22px;
  font-size: 13px;
}

.txt-line {
  border: 2px solid #CCCCCC;
}

.txt-yellowback {
  background-color: #FFF9DF;
  border: 2px solid #b90009;
}

.txt-grayback {
  border: 1px solid #D9D9D9;
  background-color: #F5F5F5;
}

.txt-colorback {
  border: solid 1px #FFB380;
  background-color: #FFF2DF;
}

.txt-frame {
  border: solid 2px #CCCCCC;
}

.txt-colorframe {
  border: solid 2px #b90009;
}

.txt-rndbox .top {
  height: 15px;
  background-image: url(../images/round.gif);
  background-repeat: no-repeat;
  background-position: left top;
}

.txt-rndbox .body {
  border-left: solid 1px #B4B4B4;
  border-right: solid 1px #B4B4B4;
  padding: 10px 30px;
}

.txt-rndbox .bottom {
  height: 15px;
  background-image: url(../images/round.gif);
  background-repeat: no-repeat;
  background-position: left bottom;
}

.txt-decbox1 {
  background-image: url(../images/dec1_body.gif);
  background-repeat: repeat-y;
}

.txt-decbox1 .top {
  height: 50px;
  background-position: left top;
  background-image: url(../images/decbox1.gif);
  background-repeat: no-repeat;
  padding-top: 30px;
  padding-right: 50px;
  padding-left: 50px;
  font-size: 30px;
}

.txt-decbox1 .body {
  padding-top: 5px;
  padding-right: 50px;
  padding-bottom: 0px;
  padding-left: 50px;
}

.txt-decbox1 .bottom {
  height: 70px;
  background-image: url(../images/decbox1.gif);
  background-repeat: no-repeat;
  background-position: left bottom;
}

.txt-decbox2 {
  background-image: url(../images/dec2_body.gif);
  background-repeat: repeat-y;
}

.txt-decbox2 .top {
  height: 40px;
  background-image: url(../images/decbox2.gif);
  background-repeat: no-repeat;
  background-position: left top;
  padding-top: 40px;
  padding-right: 50px;
  padding-left: 50px;
  font-size: 30px;
}

.txt-decbox2 .body {
  padding-top: 5px;
  padding-right: 50px;
  padding-bottom: 0px;
  padding-left: 50px;
}

.txt-decbox2 .bottom {
  height: 65px;
  background-image: url(../images/decbox2.gif);
  background-repeat: no-repeat;
  background-position: left bottom;
}

#main .txt-grayback,
#main .txt-colorback,
#main .txt-line,
#main .txt-frame,
#main .txt-colorframe {
  margin-top: 10px;
  margin-bottom: 10px;
  padding: 30px;
}

#main .txt-rndbox,
#main .txt-decbox1,
#main .txt-decbox2 {
  padding: 0px;
}

#main .txt-decbox1 h3,
#main .txt-decbox2 h3,
#main .txt-decbox1 h2,
#main .txt-decbox2 h2 {
  width: auto;
  padding: 0px;
  position: static;
  background-image: none;
  border: none;
  font-size: 26px;
  text-align: center;
}

#main .txt-decbox1 h3 span,
#main .txt-decbox2 h3 span {
  background-image: none;
}

.txt-colorback {
  border: solid 1px #FFB380;
  background-color: #FFF2DF;
}

.txt-colorframe {
  border: solid 2px #b90009;
}

#main .txt-decbox1 h3,
#main .txt-decbox2 h3,
#main .txt-decbox1 h2,
#main .txt-decbox2 h2 {
  color: #333;
  background-color: #FFF;
  line-height: 140%;
}

.hd {
  color: #333;
  text-decoration: none;
}

#menu ul,
#rmenu ul {
  list-style-type: none;
  list-style-image: none;
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 0px;
  margin-left: 0;
  padding: 5px;
}

#menu li,
#rmenu li {
  list-style-type: none;
  list-style-image: none;
  margin: 0px;
  display: inline;
  _display: inline;
  background-image: url(img/line.gif);
  background-repeat: no-repeat;
  background-position: left center;
  padding-top: 0px;
  padding-right: 0px;
  padding-bottom: 0px;
  padding-left: 6px;
}

#menu #newEntry,
#rmenu #newEntry {
  padding-top: 10px;
  padding-right: 15px;
  padding-bottom: 10px;
  padding-left: 15px;
  margin: 0px;
}

#newEntry li {
  display: block;
  padding-bottom: 2px;
  background-image: url(../images/newtext.gif);
  padding-left: 20px;
  background-repeat: no-repeat;
  background-position: 2px center;
  border-top-style: none;
  border-right-style: none;
  border-bottom-style: none;
  border-left-style: none;
  line-height: 22px;
}

#menu .menubox,
#rmenu .menubox {
  margin-bottom: 5px;
}

#menu li a,
#rmenu li a {
  line-height: 16px;
  font-size: 12px;
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 0px;
  margin-left: 0;
  padding-top: 5px;
  padding-right: 5px;
  padding-bottom: 5px;
  padding-left: 5px;
  color: #484848;
}

#menu li a:hover,
#rmenu li a:hover {
  color: #e8000b;
}

#newEntry li a {
  color: #333333;
  display: inline;
  line-height: 18px;
  border: none;
  text-decoration: underline;
  background-image: none;
  padding: 0px;
}

#newEntry li a:hover {
  color: #e8000b;
  background-color: #FFF;
  background-image: none;
}

#searchresult {
  padding: 15px;
}

#searchresult dt {
  background-image: url(img/entlist.jpg);
  background-repeat: no-repeat;
  background-position: left center;
  margin-top: 15px;
  font-size: 14px;
  padding-left: 16px;
}

#searchresult dd {
  margin: 0px;
  line-height: 130%;
  font-size: 13px;
}

#linklist {
  padding: 15px;
}

#linklist dt {
  font-size: 14px;
  font-weight: bold;
  background-image: url(../images/entlist.jpg);
  background-repeat: no-repeat;
  background-position: left center;
  padding-left: 18px;
}

#linklist dd {
  padding-left: 18px;
  margin-left: 0px;
  margin-bottom: 10px;
}

.grayline {
  border: 1px solid #CCCCCC;
}

.intro {
  font-size: 18pt;
  color: #e8000b;
  font-weight: bold;
}

.bold {
  font-weight: bold;
  font-size: 120%;
}

.pp_h2 {
  margin-bottom: 30px;
}

#footer_naka {
  padding: 20px 40px;
}

.tenpo_text p {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 5px;
}

.menu {
  max-width: 1000px;
  margin: 0 auto 3em;
  padding: 0;
  color: #fff;
  font-size: 14px;
}

.menu a {
  display: block;
  padding: 10px;
  text-decoration: none;
  color: #000;
  line-height: 1;
}

.menu label {
  display: block;
  margin: 0 0 2px 0;
  padding: 12px;
  line-height: 1;
  color: #fff;
  font-weight: bold;
  background: #b90009;
}

.menu input {
  display: none;
}

#links07 li a:hover {
  color: #FF3;
  transition: all 0.3s;
}

.address {
  margin: 5% 0;
}

.pp {
  display: block;
  width: 150px;
  margin: 10px 0;
  font-size: 85%;
}

.information {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.5em;
  flex-wrap: wrap;
  font-size: max(1em, 14px);
}

.copyright {
  font-size: max(0.8em, 12px);
  text-align: center;
  margin-top: 2%;
}

#hamburger-btn {
  display: none;
}

.menu-back {
  position: fixed;
  height: 100%;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.3607843137);
  -webkit-backdrop-filter: blur(2px);
          backdrop-filter: blur(2px);
  left: 0;
  top: 0;
  opacity: 0;
  pointer-events: none;
  transition: 0.5s ease;
  z-index: 900;
}/*# sourceMappingURL=style.css.map */