br.sp-only {
  display: block;
}

/*------------------------------------------------------------------ header */

header > div img {
  width: 250px;
}

/*------------------------------------------------------------------ breadcrumb */

div.breadcrumb ul li,
div.breadcrumb ul li a {
  font-size: 13px;
}
div.breadcrumb ul {
  flex-wrap: wrap;
  width: 95%;
  gap: 5px;
}
/* div.breadcrumb ul li
{
    width: calc(100/2);
} */
div.breadcrumb {
  background: #000;
  padding: 10px 0;
}

/*------------------------------------------------------------------ ��劻���若���若�＜���ャ�� */

/*
.h-openbtn
{
    top: 10px;
    right: -25px;
}
.h-openbtn span
{
    height: 5px;
}
.h-openbtn span:nth-of-type(1)
{
    top: 10px;
}
.h-openbtn span:nth-of-type(2)
{
    top: 25px;
}
.h-openbtn span:nth-of-type(3)
{
    top: 40px;
} */

.h-openbtn {
  right: -15px;
  top: 8px;
  width: 90px;
  height: 90px;

  /** add */
  display: block;
}
.h-openbtn span {
  height: 4px;
}
.h-openbtn span:nth-of-type(1) {
  top: 10px;
}
.h-openbtn span:nth-of-type(2) {
  top: 22px;
}
.h-openbtn span:nth-of-type(3) {
  top: 34px;
}

#g-nav {
  width: 100%;
  right: 50%;
  transform: translateX(50%);
}
#g-nav ul.g-nav_list {
  flex-direction: column;
  justify-content: inherit;
  padding-top: 50px;
  padding-bottom: 100px;
  gap: 20px;
  height: 100%;
  width: 100%;
  overflow-y: scroll;
}
#g-nav ul.g-nav_list li:first-child {
  flex: none;
}
#g-nav ul.g-nav_list img {
  max-width: 100px;
  padding: 0;
}
#g-nav ul.g-nav_list table th,
#g-nav ul.g-nav_list table td {
  text-align: center;
}
#g-nav ul.g-nav_list table th {
  font-size: 20px;
  margin: 30px 0;
}
#g-nav ul.g-nav_list table td {
  font-size: 15px;
  line-height: 40px;
  margin: 30px 0;
}
/*#g-nav ul.g-nav_list table tr:first-child td,
#g-nav ul.g-nav_list table tr:nth-child(3) td
{
    padding: 10px 30px 20px 30px;
}*/
#g-nav ul.g-nav_list li:last-child {
  width: auto;
}
/*#g-nav ul.g-nav_list table tr:first-child th
{
    padding-bottom: 5px;
    padding-top: 10px;
}
#g-nav ul.g-nav_list table tr:nth-child(3) th
{
    padding-bottom: 5px;
}*/
#g-nav ul.g-nav_list table tr:last-child {
  border-bottom: none;
}

/*.one-line{
    padding-bottom: 5px !important;
}
.one-line td{
    padding: 10px 30px 20px 30px !important;
}*/

/*------------------------------------------------------------------ footer */

footer div.contents {
  padding: 60px 0;
}
footer div.contents ul {
  /* padding-left: 30px; */
  width: 90%;
  margin: 0 auto;
  justify-content: space-between;
}
footer div.contents ul li {
  width: 40%;
}
footer div.contents ul li a {
  font-size: 14px;
  text-align: left !important;
  padding-right: 2px;
}

/* footer div.contents ul li:nth-child(2n+1) a
{
    text-align: left!important;
}
footer div.contents ul li:nth-child(2n+2) a,
footer div.contents ul li:nth-child(2n+2)
{
    text-align: right!important;
} */
footer div.contents img {
  width: 90%;
}
footer div.contents ul li a span.arrow_01 {
  display: none;
}
footer div.contents ul li a span.arrow_02 {
  display: inline-block;
  width: 18px;
  height: 18px;
  position: relative;
  top: 3px;
  background: url("../images/arrow.png") no-repeat;
  background-size: contain;
  background-position: center;
}
footer div.copyright {
  font-size: 11px;
}

footer div.footer-main ul {
  width: 95%;
}

footer .footer-main ul {
  flex-direction: column;
  padding-bottom: 0;
}
footer .footer-main li {
  width: 100%;
}
footer .footer-main li.association {
  margin-bottom: 30px;
  margin-top: 70px;
}
footer .footer-main li.tosaterrace h3 {
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 1px;
}
footer .footer-main li.tosaterrace h3 span {
  font-size: 14px;
  letter-spacing: 1px;
  padding-left: 2px;
}

footer .footer-main div.button a,
footer .footer-main div.buttons a {
  width: 160px;
}
footer .footer-main div.buttons a:last-child {
  width: 180px;
}
footer .footer-main div.button a div,
footer .footer-main div.buttons a div {
  font-size: 12px;
}
footer .footer-main div.buttons {
  gap: 10px;
}

footer .footer-main div.address {
  padding-bottom: 0;
}

footer .footer-main li > img {
  max-height: 40px;
  max-width: 80%;
}
footer .footer-main .copyright {
  box-sizing: border-box;
  padding: 10px;
  text-align: left;
}

footer div#page-top {
  bottom: 10px;
  right: 10px;
}
footer div#page-top a img {
  width: 60px;
}
