@charset 'UTF-8';

*,
*::before,
*::after {
  margin: 0px;
  padding: 0px;
  box-sizing: border-box;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-size: 16px;
  line-height: 1.2em;
  color: #555;
}

ul {
  list-style: none;
}

a,
a:link,
a:hover,
a:visited {
  text-decoration: none;
  color: inherit;
}

a:hover {
  opacity: 0.5;
}

img {
  vertical-align: bottom;
}

input,
select,
textarea {
  margin: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -o-border-radius: 5px;
  -ms-border-radius: 5px;
  border-radius: 5px;
  outline: none;
}

.view__sp { display: none; }
.view__ssp { display: none; }
.view__cell { display: table-cell; }

#images { display: block; margin: 0px auto; width: max(100%, 1200px); position: relative; }
#images img { width: max(100%, 1200px); }
#images img:nth-child(n + 2) { position: absolute; top: 0px; left: 0px; }

header #menu { display: flex; align-items: center; justify-content: center; margin: 0px auto; width: max(100%, 1200px); height: 120px; z-index: 99; }
header #menu .logo { padding-left: 20px; }
header #menu .logo img { height: 80px; }
header #menu .menu { width: 100%; }
header #menu .menu ul { display: flex; align-items: center; justify-content: center; }
header #menu .menu li { margin: 0px 20px; font-size: 18px; font-weight: bold; }
header #menu .contact a { display: block; width: 220px; height: 120px; background: linear-gradient(to right, #37c7ff, #198ce6); position: relative; }
header #menu .contact a span { font-size: 22px; font-weight: bold; white-space: nowrap; color: #fff; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }
header #menu .button a img { display: none; }

.main { margin: 0px auto; width: max(100%, 1200px); text-align: center; background-color: #f2f2f2; background-size: 130px; background-position: 50% 50%; background-image: repeating-linear-gradient(90deg, #efefef, #efefef 4px, transparent 4px, transparent 130px), repeating-linear-gradient(0deg, #efefef, #efefef 4px, transparent 4px, transparent 130px); }
.main .images img { width: max(100%, 1200px); }
.main h1 { font-size: 46px; }
.main h2 { margin-top: 10px; font-size: 16px; color: #1746b5; }
.main .news li { padding: 20px 0px 10px; }
.main .news { margin: 0px auto; padding: 100px 0px; width: max(100%, 1200px); text-align: center; }
.main .news dl { display: inline-flex; align-items: center; justify-content: center; width: 1000px; }
.main .news dt { width: 215px; font-size: 18px;}
.main .news dd { flex: 1; font-size: 18px; font-weight: bold; text-align: left; }
.main .news hr { display: inline-block; width: 1000px; }

.pager { font-size: 26px; font-weight: bold; text-align: center; color: #999; }
.pager span { font-size: 26px; color: #999; }
.pager a { font-size: 26px; }
.pager .current { color: #38a0ff; }
.pager .prev { margin-right: 40px; }
.pager .next { margin-left: 40px; }
.pager .separate { margin: 0px 20px; }
.pager .disabled { opacity: 0.5; }

#top .more { display: inline-block; margin-top: 60px; width: 1000px; text-align: right; }
#top .more a { display: inline-block; }
#top .more img { width: 210px; }
#top .content { margin: 0px auto; padding: 70px 0px; text-align: center; }
#top .content .aboutBox { display: inline-block; width: 1000px; }
#top .content p { display: inline-block; margin-top: 30px; width: 1000px; text-align: left; line-height: 2em; }
#top .content .service { text-align: center; }
#top .content .service span { display: inline-block; text-align: left; line-height: 2em; }
#top .spacer { display: inline-block; width: max(calc(1600 / 1920 * 100vw), 1000px); }
#top .article { margin: 0px auto; padding: 120px 0px; width: max(100%, 1200px); text-align: center; background-image: url('images/background.jpg'); background-size: cover; }
#top .article ul { display: inline-flex; align-items: flex-start; justify-content: space-between; width: max(calc(1300 / 1920 * 100vw), 1100px); max-width: 1300px; }
#top .article .introduction { display: inline-block; margin-right: 50px; width: 375px; text-align: left; }
#top .article p { margin-top: 40px; width: 375px; font-size: 18px; text-align: left; line-height: 2em; }
#top .article .link { padding-left: 50px; text-align: left; border-left: 1px #999 solid; }
#top .article .link ul { display: flex; align-items: center; justify-content: center; padding: 25px; width: max(calc(800 / 1920 * 100vw), 600px); max-width: 800px; height: 140px; color: #fff; background: linear-gradient(to right, #198ce6, #37c7ff); box-shadow: 7px 7px 2px rgba(150, 150, 150, 0.7); }
#top .article .link ul:first-child { margin-bottom: 30px; }
#top .article .link li { padding: 0px; height: 100%; display: flex; align-items: center; justify-content: flex-start; }
#top .article .link li:first-child { width: 56px; }
#top .article .link li:nth-child(2) { padding-right: 20px; font-size: 36px; font-weight: bold; text-align: center; white-space: nowrap; }
#top .article .link li:nth-child(2) span { font-size: 36px; font-weight: bold; color: #fff; white-space: nowrap; }
#top .article .link li:nth-child(3) { flex: 1; padding: 0px 25px; min-width: 220px; font-size: 16px; border-left: 1px #fff solid; }
#top .article .link li:nth-child(3) span { font-size: 16px; color: #fff; }
#top .article .link li:nth-child(4) { width: 155px; }
#top .article .link li:first-of-type img { margin-right: 10px; }
#top .news { margin: 0px auto; padding: 70px 0px; width: max(100%, 1200px); text-align: center; background-color: #e6e6e6; background-size: 130px; background-position: 50% 50%; background-image: repeating-linear-gradient(90deg, #dedede, #dedede 4px, transparent 4px, transparent 130px), repeating-linear-gradient(0deg, #dedede, #dedede 4px, transparent 4px, transparent 130px); }
#top .news ul { margin-top: 30px; }
#top .banner { padding: 100px 0px; text-align: center; background-color: #f7f7f7; background-size: 130px; background-position: 50% 50%; background-image: repeating-linear-gradient(90deg, #efefef, #efefef 4px, transparent 4px, transparent 130px), repeating-linear-gradient(0deg, #efefef, #efefef 4px, transparent 4px, transparent 130px);}
#top .friends { margin-top: 50px; }

#news .list { margin: 0 auto; padding: 70px 0px; width: 1000px; }
#news .list ul { padding: 30px 0px; }
#news .list li a { display: flex; align-items: flex-start; justify-content: flex-start; padding: 30px 20px; width: 1000px; }
#news .list li:first-child a { padding-top: 0px; }
#news .list li a div { font-size: 18px; text-align: left; line-height: 2em; }
#news .list li a dt { margin-left: 40px; font-size: 18px; font-weight: bold; text-align: left; line-height: 2em; }
#news .list li a dd { margin-left: 40px; font-size: 16px; text-align: left; line-height: 2em; }
#news .detail { margin: 0 auto; padding: 70px 0px; width: 1000px; }
#news .detail p { margin-top: 30px; font-size: 18px; text-align: left; }
#news .detail dt { margin-top: 20px; font-size: 22px; font-weight: bold; text-align: left; line-height: 2em; }
#news .detail hr { margin: 30px 0px; text-align: left; }
#news .detail dd p { margin-top: 0px; font-size: 16px; line-height: 2em; }
#news .return { display: inline-block; margin: 0px auto 70px; position: relative; }
#news .return a { display: inline-flex; align-items: center; justify-content: center; width: 420px; height: 70px; background-color: #666; }
#news .return a span { font-size: 22px; color: #fff; }
#news .return img { position: absolute; top: 50%; left: 20px; transform: translateY(-50%); }

#selling .list { padding: 70px 0px; }
#selling .list p { margin: 30px auto 0px; width: 1000px; font-size: 18px; text-align: left; line-height: 2em; }
#selling .list .article { margin: 50px auto; padding: 30px 30px 70px; width: max(calc(1200 / 1920 * 100vw), 1100px); max-width: 1200px; background-color: #fff; box-shadow: 7px 7px 2px rgba(150, 150, 150, 0.7); position: relative; }
#selling .list .article li:first-child { margin: 0px 0px 20px; text-align: left; font-size: 36px; font-weight: bold; }
#selling .list dl { display: flex; align-items: flex-start; justify-content: flex-start; }
#selling .list dt img { width: 520px; aspect-ratio: 16 / 13;  object-fit: contain; }
#selling .list dd table { border-collapse: collapse; }
#selling .list dd td { padding: 10px 20px; font-size: 18px; text-align: left; vertical-align: top; }
#selling .list dd td:first-child { font-weight: bold; white-space: nowrap; border-right: 1px #000 solid; }
#selling .list .button a { display: inline-flex; align-items: center; justify-content: flex-end; flex-wrap: nowrap; padding: 15px; width: 280px; background: linear-gradient(to right, #198ce6, #37c7ff); position: absolute; bottom: 0px; right: 0px; }
#selling .list .button a span { flex: 1; font-weight: bold; text-align: left; color: #fff; }

#selling .detail { padding: 70px 0px; }
#selling .detail .article { margin: 50px auto 0px; padding: 30px; width: 1200px; background-color: #fff; box-shadow: 7px 7px 2px rgba(150, 150, 150, 0.7); }
#selling .detail h3 { font-size: 36px; text-align: left; }
#selling .detail h4 { margin-top: 30px; padding: 20px; font-size: 26px; text-align: left; background-color: rgba(55, 160, 255, 0.2); }
#selling .detail h4 span { font-size: 26px; color: #37a0ff; }
#selling .detail .pickup { margin-top: 20px; position: relative; }
#selling .detail .pickup img { width: 100%; aspect-ratio: 16 / 13; object-fit: contain; }
#selling .detail .pickup .comment { position: absolute; bottom: 0px; left: 0px; }
#selling .detail .comment { padding: 20px; width: 100%; font-size: 18px; text-align: left; line-height: 1.5em; color: #fff; background-color: rgba(0, 0, 0, 0.6); }
#selling .detail dd div { flex: 1; }
#selling .detail dd .map { margin-left: 20px; width: 550px; height: 350px; overflow: hidden; }
#selling .detail dd iframe { margin-top: -170px; width: 100%; height: 710px; }
#selling .detail .place-card { diaplya: none; }
#selling .detail .feature { padding: 20px; font-size: 18px; text-align: left; line-height: 2em; }
#selling .detail .slick { margin: 20px auto 0px; width: 940px; }
#selling .detail .slick .slick-slide { width: auto !important; }
#selling .detail .slick img { margin: 0px 10px; width: 215px; cursor: pointer; }
#selling .detail .slick .slick-prev { width: 90px ; height: 100%; left: -100px; color: #fff; background-color: #666; }
#selling .detail .slick .slick-prev::before { content: url("./images/left.png"); }
#selling .detail .slick .slick-next { width: 90px; height: 100%; right: -100px; color: #fff; background-color: #666; }
#selling .detail .slick .slick-next::before { content: url("./images/right.png"); }

#selling .article dl { margin-top: 30px; width: 100%; }
#selling .article dd { display: flex; align-items: flex-start; justify-content: flex-start; margin-top: 20px; padding: 0px 20px; }
#selling .article dd table { border-collapse: collapse; }
#selling .article dd td { padding: 10px 0px; font-size: 18px; text-align: left; line-height: 1.5em; vertical-align: top; }
#selling .article dd td:first-child { padding-right: 20px; font-weight: bold; white-space: nowrap; border-right: 1px #000 solid; }
#selling .article dd td:last-child { padding-left: 20px; }
#selling .article dd td a { font-size: 18px; }
#selling .return { display: inline-block; margin: 0px auto 70px; position: relative; }
#selling .return a { display: inline-flex; align-items: center; justify-content: center; width: 420px; height: 70px; background-color: #666; }
#selling .return a span { font-size: 22px; font-weight: bold; color: #fff; }
#selling .return img { position: absolute; top: 50%; left: 20px; transform: translateY(-50%); }

#rental .list { padding: 70px 0px; }
#rental .list p { margin: 35px auto 0px; width: 1000px; font-size: 18px; text-align: left; line-height: 2em; }
#rental .list .article { margin: 50px auto; padding: 30px 30px 70px; width: max(calc(1200 / 1920 * 100vw), 1100px); max-width: 1200px; background-color: #fff; box-shadow: 7px 7px 2px rgba(150, 150, 150, 0.7); position: relative; }
#rental .list li:first-child { margin: 0px 0px 20px; text-align: left; font-size: 36px; font-weight: bold; }
#rental .list dl { display: flex; align-items: flex-start; justify-content: flex-start; }
#rental .list dt img { width: 520px; aspect-ratio: 16 / 13;  object-fit: contain; }
#rental .list dd table { border-collapse: collapse; }
#rental .list dd td { padding: 10px 20px; font-size: 18px; text-align: left; vertical-align: top; }
#rental .list dd td:first-child { font-weight: bold; white-space: nowrap; border-right: 1px #000 solid; }
#rental .list .button a { display: inline-flex; align-items: center; justify-content: flex-end; flex-wrap: nowrap; padding: 15px; width: 280px; background: linear-gradient(to right, #198ce6, #37c7ff); position: absolute; bottom: 0px; right: 0px; }
#rental .list .button a span { flex: 1; font-weight: bold; text-align: left; color: #fff; }

#rental .detail { padding: 70px 0px; }
#rental .detail .article { margin: 50px auto 0px; padding: 30px; width: 1200px; background-color: #fff; box-shadow: 7px 7px 2px rgba(150, 150, 150, 0.7); }
#rental .detail h3 { font-size: 36px; text-align: left; }
#rental .detail h4 { margin-top: 30px; padding: 20px; font-size: 26px; text-align: left; background-color: rgba(55, 160, 255, 0.2); }
#rental .detail h4 span { font-size: 26px; color: #37a0ff; }
#rental .detail .pickup { margin-top: 20px; position: relative; }
#rental .detail .pickup img { width: 100%; aspect-ratio: 16 / 13;  object-fit: contain; }
#rental .detail .pickup .comment { position: absolute; bottom: 0px; left: 0px; }
#rental .detail .comment { padding: 20px; width: 100%; font-size: 18px; text-align: left; line-height: 2em; color: #fff; background-color: rgba(0, 0, 0, 0.6); }
#rental .detail dd div { flex: 1; }
#rental .detail dd .map { margin-left: 20px; width: 550px; height: 350px; overflow: hidden; }
#rental .detail dd iframe { margin-top: -170px; width: 100%; height: 710px; }
#rental .detail .place-card { diaplya: none; }
#rental .detail .feature { padding: 20px; font-size: 18px; text-align: left; line-height: 2em; }
#rental .detail .slick { margin: 20px auto 0px; width: 940px; }
#rental .detail .slick .slick-slide { width: auto !important; }
#rental .detail .slick img { margin: 0px 10px; width: 215px; cursor: pointer; }
#rental .detail .slick .slick-prev { width: 90px ; height: 100%; left: -100px; color: #fff; background-color: #666; }
#rental .detail .slick .slick-prev::before { content: url("./images/left.png"); }
#rental .detail .slick .slick-next { width: 90px; height: 100%; right: -100px; color: #fff; background-color: #666; }
#rental .detail .slick .slick-next::before { content: url("./images/right.png"); }

#rental .article dl { margin-top: 30px; width: 100%; }
#rental .article dd { display: flex; align-items: flex-start; justify-content: flex-start; margin-top: 20px; padding: 0px 20px; }
#rental .article dd table { flex: 1; border-collapse: collapse; }
#rental .article dd td { padding: 10px 0px; font-size: 18px; text-align: left; line-height: 1.5em; vertical-align: top; }
#rental .article dd td:first-child { padding-right: 20px; font-weight: bold; white-space: nowrap; border-right: 1px #000 solid; }
#rental .article dd td:last-child { padding-left: 20px; }
#rental .article dd td a { font-size: 18px; }
#rental .return { display: inline-block; margin: 0px auto 70px; position: relative; }
#rental .return a { display: inline-flex; align-items: center; justify-content: center; width: 420px; height: 70px; background-color: #666; }
#rental .return a span { font-size: 22px; font-weight: bold; color: #fff; }
#rental .return img { position: absolute; top: 50%; left: 20px; transform: translateY(-50%); }

#about .about { padding: 70px 0px; }
#about .about .content { margin: 50px auto 0px; width: 1000px; }
#about .about .content h3 { font-size: 32px; font-weight: bold; }
#about .about .content hr { margin: 10px 0px 20px; height: 1px; background-color: #37a0ff; border: 0; }
#about .about .content ul { display: flex; align-items: flex-start; justify-content: space-between; }
#about .about .content p { text-align: left; line-height: 2em; }
#about .about .greeting div { padding: 0px 20px; }
#about .about .greeting p { width: 730px; text-align: left; line-height: 2em; }
#about .about .greeting img { width: 200px; }
#about .about .greeting figcaption { padding-top: 20px; font-size: 16px; font-weight: bold; text-align: right; }
#about .about .greeting li div { margin-top: 20px; font-size: 22px; font-weight: bold; text-align: right; }
#about .about .sdgs div { margin-top: 40px; }
#about .about .sdgs h4 { margin-top: 30px; font-size: 24px; font-weight: bold; }
#about .about .sdgs h5 { margin-top: 30px; padding: 10px; font-size: 20px; font-weight: bold; background-color: #ccc; }
#about .about .sdgs ul { flex-wrap: nowrap; padding: 20px 20px 0px; }
#about .about .sdgs li:first-of-type { flex: 1; padding-right: 20px; }
#about .about .sdgs li img:first-of-type { margin-right: 10px; }
#about .about .sdgs dt { font-size: 20px; font-weight: bold; line-height: 1.5em; text-align: left; }
#about .about .sdgs dd { margin-top: 10px; text-align: left; line-height: 2em; white-space: normal; }
#about .about .overview table { border-collapse: collapse; }
#about .about .overview td { padding-top: 1em; text-align: left; vertical-align: top; }
#about .about .overview td:first-of-type { padding-right: 20px; width: 150px; font-weight: bold; text-align: right; }
#about .about .overview td:last-of-type { padding-left: 20px; border-left: 1px #000 solid; }
#about .about .overview tr:first-of-type td { padding-top: 0px; }
#about .about .cooperation table { border-collapse: collapse; }
#about .about .cooperation td { padding-top: 1em; text-align: left; vertical-align: top; }
#about .about .cooperation td:first-of-type { padding-right: 20px; width: 150px; font-weight: bold; text-align: right; }
#about .about .cooperation td:last-of-type { padding-left: 20px; border-left: 1px #000 solid; }
#about .about .cooperation tr:first-of-type td { padding-top: 0px; }
#about .about .access .map { margin: 0px 20px; width: calc(100% - 40px); height: 360px; border: 2px #b3b3b3 solid; overflow: hidden; }
#about .about .access iframe { margin-top: -170px; width: 100%; height: 720px; }
#about .return { display: inline-block; margin: 0px auto 70px; position: relative; }
#about .return a { display: inline-flex; align-items: center; justify-content: center; width: 420px; height: 70px; background-color: #666; }
#about .return a span { font-size: 22px; font-weight: bold; color: #fff; }
#about .return img { position: absolute; top: 50%; left: 20px; transform: translateY(-50%); }

#contact .contact { padding: 70px 0px; }
#contact .contact p { margin: 30px auto 0px; display: block; width: 960px; font-size: 16px; text-align: center; line-height: 2em; }
#contact .contact p span { font-weight: bold; }
#contact .form { margin: 50px auto 0px; padding: 30px; width: 1000px; background-color: #fff; }
#contact .form li { display: flex; padding-bottom: 10px; align-items: center; justify-content: flex-start; }
#contact .form li:last-of-type { align-items: flex-start; padding-bottom: 0px; }
#contact .form span { width: 180px; font-size: 20px; font-weight: bold; text-align: left; white-space: nowrap; }
#contact .form li:last-of-type span { padding-top: 10px; }
#contact .form input { padding: 20px; width: 100%; font-size: 20px; border-radius: 0px; border: none; background-color: #f2f2f2; }
#contact .form textarea { margin:10px 0px; padding: 20px; width: 100%; height: 180px; font-size: 20px; border-radius: 0px; border: none; background-color: #f2f2f2; }
#contact .form p { width: auto; text-align: left; }
#contact .form a { text-decoration: underline; text-decoration-color: #000; }
#contact .next { display: inline-block; margin: 0px auto 70px; position: relative; }
#contact .next a { display: inline-flex; align-items: center; justify-content: center; width: 420px; height: 70px; background: linear-gradient(to right, #198ce6, #37c7ff); }
#contact .next a span { font-size: 22px; font-weight: bold; color: #fff; }
#contact .next img { position: absolute; top: 50%; right: 20px; transform: translateY(-50%); }

#confirm .confirm { padding: 70px 0px; }
#confirm .confirm p { margin: 30px auto 0px; display: block; width: 960px; font-size: 16px; text-align: center; line-height: 2em; }
#confirm .confirm p span { font-weight: bold; }
#confirm .form { margin: 50px auto 0px; padding: 30px; width: 1000px; background-color: #fff; }
#confirm .form li { display: flex; margin-bottom: 30px; padding-bottom: 5px; align-items: center; justify-content: flex-start; border-bottom: 1px #000 dotted; }
#confirm .form li:last-of-type { align-items: flex-start; margin-bottom: 0px; }
#confirm .form span { width: 180px; font-size: 20px; text-align: left; white-space: nowrap; }
#confirm .form span { font-weight: bold; }
#confirm .form div { display:inline-block; width: 100%; font-size: 20px; text-align: left; }
#confirm .form li:last-of-type span { padding-top: 10px; }
#confirm .form li:last-of-type div { line-height: 2em; }
#confirm .form input { margin:10px 0px; padding: 20px; width: 100%; font-size: 20px; border-radius: 0px; border: none; background-color: #f2f2f2; }
#confirm .form textarea { padding: 20px; width: 100%; height: 180px; font-size: 20px; border-radius: 0px; border: none; background-color: #f2f2f2; }
#confirm .form p { width: auto; text-align: left; }
#confirm .form a { text-decoration: underline; text-decoration-color: #000; }
#confirm .return { display: inline-block; margin: 0px auto 70px; position: relative; }
#confirm .return a { display: inline-flex; align-items: center; justify-content: center; width: 420px; height: 70px; background-color: #666; }
#confirm .return a span { font-size: 22px; font-weight: bold; color: #fff; }
#confirm .return img { position: absolute; top: 50%; left: 20px; transform: translateY(-50%); }
#confirm .next { display: inline-block; margin: 0px auto 70px; padding-left: 30px; position: relative; }
#confirm .next a { display: inline-flex; align-items: center; justify-content: center; width: 420px; height: 70px; background: linear-gradient(to right, #198ce6, #37c7ff); }
#confirm .next a span { font-size: 22px; font-weight: bold; color: #fff; }
#confirm .next img { position: absolute; top: 50%; right: 20px; transform: translateY(-50%); }

#thanks .thanks { padding: 70px 0px; }
#thanks .thanks p { margin: 30px auto 0px; display: block; width: 960px; font-size: 16px; text-align: center; line-height: 2em; }
#thanks .thanks p span { font-weight: bold; }
#thanks .return { display: inline-block; margin: 0px auto 70px; position: relative; }
#thanks .return a { display: inline-flex; align-items: center; justify-content: center; width: 420px; height: 70px; background-color: #666; }
#thanks .return a span { font-size: 22px; font-weight: bold; color: #fff; }
#thanks .return img { position: absolute; top: 50%; left: 20px; transform: translateY(-50%); }

#policy .policy { padding: 70px 0px; }
#policy .policy p { margin: 30px auto 0px; display: block; width: 960px; font-size: 16px; text-align: left; line-height: 2em; }
#policy .policy p span { font-weight: bold; }
#policy .return { display: inline-block; margin: 0px auto 70px; position: relative; }
#policy .return a { display: inline-flex; align-items: center; justify-content: center; width: 420px; height: 70px; background-color: #666; }
#policy .return a span { font-size: 22px; font-weight: bold; color: #fff; }
#policy .return img { position: absolute; top: 50%; left: 20px; transform: translateY(-50%); }

footer .footer { margin: 0px auto; padding: 50px 0px 0px; width: max(100%, 1200px); text-align: center; position: relative; }
footer .footer .address { margin-top: 15px; font-size: 14px; text-align: center; font-weight: bold; }
footer .footer ul { display: inline-flex; align-items: center; justify-content: center; position: absolute; top: 30px; right: 20px; }
footer .footer li { margin: 0px 17px; }
footer .footer li:first-child { margin-left: 0px; }
footer .footer li:last-child { margin-right: 0px; }
footer .footer a { display: inline-block; font-weight: bold; }
footer .footer .copyright { padding: 10px 10px; text-align: left; }
footer .footer .copyright a { margin-right: 15px; }
footer .footer .copyright span { font-size: 13px; font-weight: bold; }
footer .footer .copyright img { vertical-align: middle; }

@media screen and (max-width: 1300px) {
  #selling .detail .article { width: 1000px; }
  #selling .detail .slick { margin: 20px auto 0px; width: 748px; }
  #selling .detail .slick .slick-slide { width: auto !important; }
  #selling .detail .slick img { margin: 0px 10px; width: 167px; }
  #selling .detail .slick .slick-prev { left: -96px; }
  #selling .detail .slick .slick-next { right: -96px; }
}

@media screen and (min-width: 801px) {
  header #menu .menu { display : block !important; }
}

@media screen and (max-width: 800px) {
  .view__pc { display: none !important; }
  .view__cell { display: none; }
  .view__sp { display: block; }
  .view__cell_sp { display: table-cell; }
  
  header #menu { width: 100%; height: auto; max-height: 100px; background-color: #fff; position: fixed; top: 0px; left: 0px; }
  header #menu .logo { flex: 1; padding-left: 10px; }
  header #menu .logo img { width: max(calc(385 / 800 * 100vw), 100px); height: auto; }
  header #menu .menu { display: none; }
  header #menu .contact a { display: block; width: max(calc(220 / 800 * 100vw), 50px); padding-top: calc(5 / 11 * 100%); height: max(calc(100 / 800 * 100vw), 10px); }
  header #menu .contact a span { font-size: max(calc(28 / 800 * 100vw), 10px); }
  header #menu .button { height: auto; }
  header #menu .button a { display: block; width: max(calc(100 / 800 * 100vw), 10px); height: max(calc(100 / 800 * 100vw), 10px); padding-top: 100%; background-image: url("images/menu_sp.png"); background-size: contain; position: relative; }
  header #menu .button a img { width: max(calc(100 / 800 * 100vw), 10px); height: auto; position: absolute; top: 0px; left: 0px; }
  header #menu .menu { width: 100%; height: 100%; position: fixed; top: max(calc(100 / 800 * 100vw), 10px); left: 0px; z-index: 99;}
  header #menu ul { display: block !important; width: 100%; height: 100%; background: linear-gradient(to right, #198ce6, #37c7ff); }
  header #menu ul li { display: block; margin: 0px !important; width: 100%; color: #fff; font-weight: bold; border-bottom: 1px #fff solid; position: relative; }
  header #menu ul li:after { content: url("images/next.png"); float: right; color: #fff; font-weight: bold; position: absolute; top: 50%; right: 20px; transform: translateY(-50%); }
  header #menu ul li a { display: block; padding: 20px 10px; width: 100%; height: 100%; }
  
  .main { width: 100%; margin-top: max(calc(100 / 800 * 100vw), 10px); }
  .main h1 { font-size: max(calc(60 / 800 * 100vw), 16px); }
  .main h2 { margin-top: 10px; font-size: max(calc(28 / 800 * 100vw), 16px); }
  .main .images img { width: 100%; }
  .main .content { padding: 50px 20px !important; width: 100%; }
  .main .content h1 { font-size: max(calc(60 / 800 * 100vw), 16px); }
  .main .content h2 { font-size: max(calc(28 / 800 * 100vw), 16px); }
  .main .content .aboutBox { width: 100% !important; }
  .main .content p { width: 100% !important; font-size: max(calc(28 / 800 * 100vw), 16px); line-height: 1.5em !important; }
  .main .content p span { width: 100%; font-size: max(calc(28 / 800 * 100vw), 16px); line-height: 1.5em !important; }
  .main .news { padding: 50px 20px !important; width: 100% !important; }
  .main .news li:first-of-type { padding-top: 0px; }
  .main .news h1 { font-size: max(calc(60 / 800 * 100vw), 16px); }
  .main .news dl { display: block; width: 100%; }
  .main .news dt { width: 100%; text-align: left; font-size: max(calc(30 / 800 * 100vw), 16px); }
  .main .news dd { margin-top: 20px; width: 100%; text-align: left; font-size: max(calc(30 / 800 * 100vw), 16px); }
  .main .news hr { width: 100%; }
  
  .pager span { font-size: max(calc(34 / 800 * 100vw), 16px); }
  .pager a { font-size: max(calc(34 / 800 * 100vw), 16px); }

  #top .more { margin-top: max(calc(60 / 800 * 100vw), 10px); width: 100%; }
  #top .more img { width: max(calc(280 /800 * 100vw), 10px); }
  
  #top .article { padding: max(calc(120 / 800 * 100vw), 10px) 20px; }
  #top .spacer { width: max(calc(760 / 800 * 100vw), 10px); }
  #top .article { width: 100%; }
  #top .article ul { display: block; width: 100%; }
  #top .article .introduction { margin-right: 0px; width: 100%; }
  #top .article .introduction h1 { font-size: max(calc(46 / 800 * 100vw), 16px); }
  #top .article .introduction h2 { font-size: max(calc(24 / 800 * 100vw), 16px); }
  #top .article .introduction p { margin-top: max(calc(40 / 800 * 100vw), 10px); width: 100%; font-size: max(calc(28 / 800 * 100vw), 16px); line-height: 1.5em !important; }
  #top .article hr { display: inline-block; margin: max(calc(55 / 800 * 100vw), 10px) 0px; width: 200px; }
  #top .article .link ul { padding: 20px; width: max(calc(720 / 800 * 100vw), 100px); box-shadow: 7px 7px 2px rgba(150, 150, 150, 0.7); }
  #top .article .link { padding: 0px; border: none; }
  #top .article .link li:first-child { width: auto; }
  #top .article .link li:first-child img { width: max(calc(43 / 800 * 100vw), 20px); }
  #top .article .link li:nth-child(2) { text-align: left; border-right: 1px #fff solid; }
  #top .article .link li:nth-child(2) span { font-size: max(calc(40 / 800 * 100vw), 16px); }
  #top .article .link li:nth-child(2) img { margin-top: max(calc(20 / 800 * 100vw), 10px); width: max(calc(165 / 800 * 100vw), 10px); }
  #top .article .link li:nth-child(3) { flex: 1; padding: 0px 0px 0px 10px; width: 100%; min-width: auto; border-left: none; }
  #top .article .link li:nth-child(4) { width: auto; }
  #top .banner { padding: 50px 20px; }
  #top .banner .sdgs img { width: max(calc(680 / 800 * 100vw), 10px); }
  #top .banner .friends { margin-top: max(calc(65 / 800 * 100vw), 10px); }
  #top .banner .friends img { width: max(calc(416 / 800 * 100vw), 10px); }
  
  #news .list { padding: 50px 20px; width: 100%; }
  #news .list li a { display: block; padding: 30px 0px; width: 100%; }
  #news .list li a dl { width: 100%; }
  #news .list li a dt { white-space: normal; margin: 0px; line-height: 1.5em; }
  #news .list li a dd { white-space: normal; margin: 20px 0px 0px; line-height: 1.5em; }
  #news .detail { padding: 50px 20px !important; width: 100% !important; }
  #news .detail p { margin-top: 30px; }
  #news .detail dt { line-height: 1.5em; }
  #news .detail dd p { line-height: 1.5em; }
  #news .return { margin-bottom: 50px; }
  #news .return a { display: inline-flex; align-items: center; justify-content: center; width: max(calc(500 / 800 * 100vw), 10px); height: max(calc(100 / 800 * 100vw), 10px); background-color: #666; position: relative; }
  #news .return a span { font-size: max(calc(30 / 800 * 100vw), 16px); color: #fff; }
  
  #selling .list { padding: 50px 20px; width: 100%; }
  #selling .list p { width: 100%; font-size: max(calc(18 / 800 * 100vw), 16px); }
  #selling .list ul { width: 100%; }
  #selling .list li:first-child { font-size: max(calc(36 / 800 * 100vw), 16px) !important; }
  #selling .list dl { display: block; }
  #selling .list dt img { width: 100%; }
  #selling .list dd table { width: 100%; }
  #selling .list dd tr td { padding: 20px 0px; font-size: max(calc(28 / 800 * 100vw), 16px); white-space: normal !important; border-right: none !important; border-bottom: 1px #000 solid; }
  #selling .list dd tr td:nth-child(2) { padding-left: 10px; width: 50%; border-left: 1px #000 solid; }
  #selling .list li a { width: max(calc(400 / 800 * 100vw), 50px); }
  #selling .list li a span { font-size: max(calc(28 / 800 * 100vw), 16px); }
  #selling .list li a img { width: max(calc(65 / 800 * 100vw), 10px); }

  #selling .article { margin-top: 30px !important; width: 100% !important; padding: 30px 20px 70px !important; }
  #selling .article dd { display: block; padding: 0px; width: 100% !important; text-align: center; }
  #selling .article dd table { width: 100%; }
  #selling .article dd tr td { padding: 20px 0px !important; font-size: max(calc(28 / 800 * 100vw), 16px); font-weight: normal !important; white-space: normal !important; border-right: none !important; border-bottom: 1px #000 solid; }
  #selling .article dd tr td a { font-size: max(calc(28 / 800 * 100vw), 16px); font-weight: normal !important; white-space: normal !important; }
  #selling .article dd tr:first-of-type td { padding-top: 0px !important; }
  #selling .article dd tr td:nth-child(2) { padding-left: 10px !important; width: 50%; border-left: 1px #000 solid; }
  #selling .article dd tr td span { font-size: max(calc(28 / 800 * 100vw), 16px); font-weight: bold; }
  #selling .article .feature { padding: 20px 0px; font-size: max(calc(18 / 800 * 100vw), 16px); line-height: 1.5em; }
  
  #selling .detail { padding: 50px 20px; }
  #selling .detail .article { padding-bottom: 30px !important; }
  #selling .detail h3 { font-size: max(calc(36 / 800 * 100vw), 16px); }
  #selling .detail h4 { padding: 10px; font-size: max(calc(32 / 800 * 100vw), 16px); }
  #selling .detail h4 span { font-size: max(calc(32 / 800 * 100vw), 16px); }
  #selling .detail .comment { padding: 10px; font-size: max(calc(26 / 800 * 100vw), 16px); }
  #selling .detail .slick { width: calc(100% - calc(180 / 800 * 100vw)); }
  #selling .detail .slick img { margin: 0px max(calc(10 / 800 * 100vw), 1px); width: max(calc(250 / 800 * 100vw), 10px) !important; }
  #selling .detail .slick .slick-prev { width: max(calc(90 / 800 * 100vw), 10px); left: calc(-1 * (90 / 800) * 100vw); }
  #selling .detail .slick .slick-next { width: max(calc(90 / 800 * 100vw), 10px); right: calc(-1 * (90 / 800) * 100vw); }
  #selling .detail .map { margin: 20px 0px 0px !important; width: 100%!important; }
  #selling .detail iframe { width: 100% !important; }
  #selling .return { margin-bottom: 50px; }
  #selling .return a { display: inline-flex; align-items: center; justify-content: center; width: max(calc(500 / 800 * 100vw), 10px); height: max(calc(100 / 800 * 100vw), 10px); background-color: #666; position: relative; }
  #selling .return a span { font-size: max(calc(30 / 800 * 100vw), 16px); color: #fff; }
  
  #rental .list { padding: 50px 20px; width: 100%; }
  #rental .list p { width: 100%; }
  #rental .list ul { width: 100%; }
  #rental .list li:first-child { font-size: max(calc(36 / 800 * 100vw), 16px); }
  #rental .list dl { display: block; }
  #rental .list dt img { width: 100%; }
  #rental .list dd table { width: 100%; }
  #rental .list dd tr td { padding: 20px 0px; font-size: max(calc(28 / 800 * 100vw), 16px); white-space: normal !important; border-right: none !important; border-bottom: 1px #000 solid; }
  #rental .list dd tr td:nth-child(2) { padding-left: 10px; width: 50%; border-left: 1px #000 solid; }
  #rental .list li a { width: max(calc(400 / 800 * 100vw), 50px); }
  #rental .list li a span { font-size: max(calc(28 / 800 * 100vw), 16px); }
  #rental .list li a img { width: max(calc(65 / 800 * 100vw), 10px); }
  
  #rental .article { margin-top: 30px !important; width: 100% !important; padding: 30px 20px 70px !important; }
  #rental .article dd { display: block; padding: 0px; width: 100% !important; text-align: center; }
  #rental .article dd table { width: 100%; }
  #rental .article dd tr td { padding: 20px 0px !important; font-size: max(calc(28 / 800 * 100vw), 16px); font-weight: normal !important; white-space: normal !important; border-right: none !important; border-bottom: 1px #000 solid; }
  #rental .article dd tr td a { font-size: max(calc(28 / 800 * 100vw), 16px); font-weight: normal !important; white-space: normal !important; }
  #rental .article dd tr:first-of-type td { padding-top: 0px !important; }
  #rental .article dd tr td:nth-child(2) { padding-left: 10px !important; width: 50%; border-left: 1px #000 solid; }
  #rental .article dd tr td span { font-size: max(calc(28 / 800 * 100vw), 16px); font-weight: bold; }
  #rental .article .feature { padding: 20px 0px; font-size: max(calc(18 / 800 * 100vw), 16px); line-height: 1.5em; }
  
  #rental .detail { padding: 50px 20px; }
  #rental .detail .article { padding-bottom: 30px !important; }
  #rental .detail h3 { font-size: max(calc(36 / 800 * 100vw), 16px); }
  #rental .detail h4 { padding: 10px; font-size: max(calc(32 / 800 * 100vw), 16px); }
  #rental .detail h4 span { font-size: max(calc(32 / 800 * 100vw), 16px); }
  #rental .detail .comment { padding: 10px; font-size: max(calc(26 / 800 * 100vw), 16px); }
  #rental .detail .slick { width: calc(100% - calc(180 / 800 * 100vw)); }
  #rental .detail .slick img { margin: 0px max(calc(10 / 800 * 100vw), 1px); width: max(calc(250 / 800 * 100vw), 10px) !important; }
  #rental .detail .slick .slick-prev { width: max(calc(90 / 800 * 100vw), 10px); left: calc(-1 * (90 / 800) * 100vw); }
  #rental .detail .slick .slick-next { width: max(calc(90 / 800 * 100vw), 10px); right: calc(-1 * (90 / 800) * 100vw); }
  #rental .detail .map { margin: 20px 0px 0px !important; width: 100%!important; }
  #rental .detail iframe { width: 100% !important; }
  #rental .return { margin-bottom: 50px; }
  #rental .return a { display: inline-flex; align-items: center; justify-content: center; width: max(calc(500 / 800 * 100vw), 10px); height: max(calc(100 / 800 * 100vw), 10px); background-color: #666; position: relative; }
  #rental .return a span { font-size: max(calc(30 / 800 * 100vw), 16px); color: #fff; }
  
  #about .about  { padding: 50px 0px; }
  #about .about .content { margin-top: 0px; padding: 50px 10px 0px !important; width: 100%;}
  #about .about h3 { font-size: max(calc(40 / 800 * 100vw), 16px) !important; }
  #about .about .greeting figure { margin: 0px 0px 50px 30px; }
  #about .about .greeting figure img { width: max(calc(360 / 800 * 100vw), 10px); }
  #about .about .greeting figcaption { font-size: max(calc(32 / 800 * 100vw), 16px); }
  #about .about .sdgs div img { width: max(calc(600 / 800 * 100vw), 10px); }
  #about .about .sdgs h4 { font-size: max(calc(34 / 800 * 100vw), 16px); }
  #about .about .sdgs h5 { font-size: max(calc(32 / 800 * 100vw), 16px); }
  #about .about .sdgs ul { display: block; width: 100%; }
  #about .about .sdgs li { dosplay: block; }
  #about .about .sdgs li dt { font-size: max(calc(32 / 800 * 100vw), 16px); }
  #about .about .sdgs li dd { font-size: max(calc(28 / 800 * 100vw), 16px); line-height: 1.5em; }
  #about .about .sdgs li img { margin-top: 20px; width: max(calc(290 / 800 * 100vw), 10px); dosplay: block; }
  #about .about .overview table { display: block; }
  #about .about .overview tbody { display: block; }
  #about .about .overview tr { display: block; }
  #about .about .overview td { display: block; text-align: left !important; border-left: none !important; }
  #about .about .overview td:first-of-type { padding-top: 20px 0px 0px!important; font-size: max(calc(30 / 800 * 100vw), 16px); }
  #about .about .overview td:last-of-type{ padding: 10px 0px!important; font-size: max(calc(28 / 800 * 100vw), 16px); border-bottom: 1px #000 solid; }
  #about .about .cooperation table { display: block; }
  #about .about .cooperation tbody { display: block; }
  #about .about .cooperation tr { display: block; }
  #about .about .cooperation td { display: block; text-align: left !important; border-left: none !important; }
  #about .about .cooperation td:first-of-type { padding-top: 20px 0px 0px!important; font-size: max(calc(30 / 800 * 100vw), 16px); }
  #about .about .cooperation td:last-of-type{ padding: 10px 0px!important; font-size: max(calc(28 / 800 * 100vw), 16px); border-bottom: 1px #000 solid; }
  #about .about .access { padding-bottom: 0px !important; }
  #about .about .access .map { height: max(calc(270 / 800 * 100vw), 10px); }
  #about .about .access iframe { margin-top: -50%; height: max(calc(1000 / 800 * 100vw), 10px); }

  #contact .contact { padding: 50px 20px; width: 100%; }
  #contact .contact p { width: 100%; text-align: left; line-height: 1.5em; }
  #contact .contact .form { width: 100%; }
  #contact .contact .form li { display: block; margin-top: max(calc(40 / 800 * 100vw), 20px); padding-bottom: 0px; text-align: left; }
  #contact .contact .form li:first-of-type { margin-top: 0px; }
  #contact .contact .form span { font-size: max(calc(30 / 800 * 100vw), 16px); }
  #contact .contact .form input { padding: max(calc(20 / 800 * 100vw), 5px); font-size: max(calc(30 / 800 * 100vw), 16px); }
  #contact .contact .form textarea { padding: max(calc(20 / 800 * 100vw), 5px); height: 240px; font-size: max(calc(30 / 800 * 100vw), 16px); }
  #contact .next { margin-bottom: 50px; }
  #contact .next a { display: inline-flex; align-items: center; justify-content: center; width: max(calc(500 / 800 * 100vw), 10px); height: max(calc(100 / 800 * 100vw), 10px); background-color: #666; position: relative; }
  #contact .next a span { font-size: max(calc(30 / 800 * 100vw), 16px); color: #fff; }
  
  #confirm .confirm { padding: 30px 20px; width: 100%; }
  #confirm .confirm p { width: 100%; text-align: left; line-height: 1.5em; }
  #confirm .confirm .form { width: 100%; }
  #confirm .confirm .form li { display: block; margin-top: max(calc(40 / 800 * 100vw), 20px); margin-bottom: 0px; text-align: left; }
  #confirm .confirm .form li:first-of-type { margin-top: 0px; }
  #confirm .confirm .form span { font-size: max(calc(30 / 800 * 100vw), 16px); }
  #confirm .confirm .form div { margin-top: 10px; font-size: max(calc(30 / 800 * 100vw), 16px); }
  #confirm .confirm .form input { padding: max(calc(20 / 800 * 100vw), 5px); font-size: max(calc(30 / 800 * 100vw), 16px); }
  #confirm .confirm .form textarea { padding: max(calc(20 / 800 * 100vw), 5px); height: 240px; font-size: max(calc(30 / 800 * 100vw), 16px); }
  #confirm .return { margin-bottom: 30px; }
  #confirm .return a { display: inline-flex; align-items: center; justify-content: center; width: max(calc(500 / 800 * 100vw), 10px); height: max(calc(100 / 800 * 100vw), 10px); background-color: #666; position: relative; }
  #confirm .return a span { font-size: max(calc(30 / 800 * 100vw), 16px); color: #fff; }
  #confirm .next { margin-bottom: 50px; padding-left: 0px; }
  #confirm .next a { display: inline-flex; align-items: center; justify-content: center; width: max(calc(500 / 800 * 100vw), 10px); height: max(calc(100 / 800 * 100vw), 10px); background-color: #666; position: relative; }
  #confirm .next a span { font-size: max(calc(30 / 800 * 100vw), 16px); color: #fff; }
  
  #thanks .thanks { padding: 50px 20px; width: 100%; }
  #thanks .thanks p { width: 100%; text-align: left; line-height: 1.5em; }
  #thanks .return { margin-bottom: 50px; }
  #thanks .return a { display: inline-flex; align-items: center; justify-content: center; width: max(calc(500 / 800 * 100vw), 10px); height: max(calc(100 / 800 * 100vw), 10px); background-color: #666; position: relative; }
  #thanks .return a span { font-size: max(calc(30 / 800 * 100vw), 16px); color: #fff; }
  
  #policy .policy { padding: 50px 20px; width: 100%; }
  #policy .policy p { width: 100%; line-height: 1.5em; }
  #policy .return { margin-bottom: 50px; }
  #policy .return a { display: inline-flex; align-items: center; justify-content: center; width: max(calc(500 / 800 * 100vw), 10px); height: max(calc(100 / 800 * 100vw), 10px); background-color: #666; position: relative; }
  #policy .return a span { font-size: max(calc(30 / 800 * 100vw), 16px); color: #fff; }

  footer .footer { width: 100%; position: relative; }
  footer .footer ul { display: block; position: static; }
  footer .footer li { margin: 0px 0px 45px 0px; text-align: center; }
  footer .footer a { font-size: max(calc(28 / 800 * 100vw), 16px); }
  footer .footer img { width: max(calc(576 / 800 * 100vw), 10px); }
  footer .footer .address { font-size: max(calc(28 / 800 * 100vw), 16px); }
  footer .footer a { margin-right: 10px; display: inline-block; }
  footer .footer .copyright { display: flex; padding: 30px 0px max(calc(30 / 800 * 100vw), 10px) max(calc(30 / 800 * 100vw), 10px); align-items: center; justify-content: center; }
  footer .footer .copyright img { margin: 0px; width: max(calc(58 / 800 * 100vw), 10px); }
  footer .footer .copyright span { font-size: max(calc(22 / 800 * 100vw), 13px); }
  footer .footer .toTop { display: inline-block; position: absolute; top: 0px; right: 0px; width: max(calc(80 / 800 * 100vw), 10px); }
}

@media screen and (max-width: 480px) {
  .view__spc { display: none; }
  .view__ssp { display: block; }
}