@charset "utf-8";

@media only screen and (min-width: 751px) and (max-width: 1340px) {
html { font-size: 0.7462686567164178vw; }

}


@media only screen and (min-width: 0px) and (max-width: 750px) {
html { font-size: 1.3333333333333335vw; }
.pc {
  display: none!important;
}
.sp {
  display: block!important;
}
#logo {
  width: 39.4rem;
}
#logo-sp {
  width: 39.4rem;
  margin-left: 3.0rem;
  padding-top: 3.0rem;
}
#btn-entry,
#btn-entry-w {
  width: 17.7rem;
  top: 2.0rem;
  right: 12.0rem;
}

#gnavi {
  width: 100%;
  overflow: scroll;
}
#gmenu {
  width: 57.0rem;
  margin: 0 auto;
/*  padding-top: 7.0rem;*/
  padding-left: 0;
}
#gmenu p.toggle_title,
#gmenu p.int {
  width: 100%;
  margin-bottom: 0;
  border-bottom: 1px solid #fff;
  padding: 0;
  position: relative;
}
#gmenu p.toggle_title,
#gmenu p.int a {
  width: 100%;
  height: 12.0rem;
  padding-left: 3.0rem;
  box-sizing: border-box;
  display: flex;
  align-items: center;
}
#gmenu p.active {
    margin-bottom: 5.0rem;
}
#gmenu p img {
  width: 20.0rem;
}
#gmenu p span.toggle_btn{
    text-indent: 100%;
    white-space: nowrap;
    width: 3.5rem;
    aspect-ratio: 1;
    display: block;
    position: absolute;
    top: 50%;
    right: 2.5vw;
    transform: translateY(-50%);
    overflow: hidden;
}
#gmenu p span.toggle_btn:before,
#gmenu p span.toggle_btn:after {
    content: '';
    display: block;
    background-color: #fff;
    width: 3.5rem;
    height: 1px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: 0.5s;
}
#gmenu p span.toggle_btn:before {
    width: 1px;
  	height: 3.5rem;
    transition: 0.5s;
}
#gmenu p.active .toggle_btn:before {
  	content: normal;
    transition: 0.5s;
}

#gmenu ul {
    width: 100%;
    max-height: 0;
    overflow: scroll;
    z-index: 100;
    opacity: 0;
    visibility: hidden;
    transition: all .5s;
    transform-origin: top;
    transform: scaleY(0);
    margin-bottom: 0;
}
#gmenu ul.open {
    max-height: 500px;
    opacity: 1;
    visibility: visible;
    transform: scaleY(1);
}
#gmenu ul li {
  margin-bottom: 5.0rem;
}
#gmenu ul li:before {
  content :'-';
  color: #fff;
  position: absolute;
  left: 0;
  top: 0;
}
#gmenu ul li a {
  font-size: 2.6rem;
  padding-left: 1.5rem;
}
#menu,
#btn-menu {
  width: 10.0rem;
  height: 10.0rem;
}
#btn-menu .menu-trigger span {
    left: 2.3rem;
    height: 0.55rem;
    border-radius: 1.0rem;
}
#btn-menu .menu-trigger span:nth-of-type(1) {
    top: 3.0rem;
    width: 5.5rem;
}
#btn-menu .menu-trigger span:nth-of-type(2) {
    top: 4.5rem;
    width: 4.5rem;
}
#btn-menu .menu-trigger span:nth-of-type(3) {
    top: 6.0rem;
    width: 3.5rem;
}

#btn-menu .menu-trigger.active span:nth-of-type(1) {
    -webkit-transform: translateY(14px) rotate(-315deg);
    transform: translateY(1.5rem) rotate(-315deg);
}
#btn-menu .menu-trigger.active span:nth-of-type(3) {
    -webkit-transform: translateY(-14px) rotate(315deg);
    transform: translateY(-1.5rem) rotate(315deg);
    width: 5.5rem;
}
#gmenu .gnavi-harassment {
  font-size: 2.6rem;
  text-align: center;
  display: block;
  margin: 16.0rem auto 0;
}

.title {
  width: 60.0rem;
  background: rgba(28,80,161,0.85);
  border-top-right-radius: 10.0rem;
  border-bottom-right-radius: 10.0rem;
  display: inline-block;
  margin-top: -7.0rem;
  padding: 6.0rem 6.0rem 6.0rem 7.0rem;
}
.title p {
  padding-right: 25.0rem;
}
.title span {
  font-size: 2.6rem;
}
/* 次のコンテンツ
-------------------------------------------*/
.next-content h2 {
  width: 39.4rem;
}
.next-content p {
  padding-top: 3.0rem;
  padding-bottom: 3.0rem;
}
.next-content .bg-zoom {
  width: 100%;
  padding-top: 35.0rem;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  background: #1c50a1;
}
/* ────────────────────── *
 *                                              *
 * Facebook                                     *
 *                                              *
 * ────────────────────── */

#facebook {
    padding: 15.625% 0 0;
    margin-bottom: 15.625%;
    overflow: hidden;
}
#facebook .inner {
    width: 90%;
    display: block;
}
#facebook .inner .inner-in {
    width: 100%;
    margin-bottom: 15.625%;
}

#facebook .inner h3 {
    font-size: 9.375vw;
    margin-bottom: 5%;
}
#facebook .inner p {
    font-size: 3.75vw;
    width: 100%;
    margin-bottom: 5%;
}
#facebook .inner .fb-page {
    width: 100%;
    display: block;
    position: relative;
    right: auto;
    top: auto;
    -webkit-transform: none;
    transform: none;
}
#facebook .inner .btn-more {
    width: 100%;
}
#facebook .inner .btn-more a {
    margin-bottom: 4.6875vw;
}
/* フッター
-------------------------------------------*/
footer {
  width: 100%;
  margin: 0 auto;
  padding: 3.0rem 0 12.0rem;
}
footer #pagetop {
  width: 12.2rem;
  margin: 0 auto 4.0rem;
}
footer #f-menu {
  display: none;
}
footer .f-harassment {
  font-size: 2.2rem;
}
footer .flr {
  display: block;
}
footer .fl {
  text-align: center;
}
footer .fl p {
  width: 50.4rem;
  margin: 0 auto 3.0rem;
}
footer .fl ul {
  justify-content: center;
  gap: 2.0rem;
  width: 100%;
  margin: 0 auto 4.0rem;
}
footer .fl ul li:first-of-type {
  display: none;
}
footer .fl ul li {
  margin-right: 0;
}
footer .fl ul li.sns {
  width: 7.2rem;
}
footer .fr {
  text-align: center;
}
footer .fr ul {
  justify-content: center;
  padding: 4.0rem 0px 10.0rem;
}
footer .fr ul li a {
  font-size: 2.2rem;
  background-size: 2.8rem 2.0rem;
  padding-right: 3.2rem;
}
footer .fr p {
  font-size: 2.2rem;
}

.pagetop {
  font-size: 1.8rem;
  width: 13.0rem;
}
.pagetop::before {
  height: 8.0rem;
  top: -5.0rem;
}


.mb00sp { margin-bottom: 0 !important; }
.mb05sp { margin-bottom: calc(100vw * 5 / 750) !important; }
.mb10sp { margin-bottom: calc(100vw * 10 / 750) !important; }
.mb15sp { margin-bottom: calc(100vw * 15 / 750) !important; }
.mb20sp { margin-bottom: calc(100vw * 20 / 750) !important; }
.mb25sp { margin-bottom: calc(100vw * 25 / 750) !important; }
.mb30sp { margin-bottom: calc(100vw * 30 / 750) !important; }
.mb35sp { margin-bottom: calc(100vw * 35 / 750) !important; }
.mb40sp { margin-bottom: calc(100vw * 40 / 750) !important; }
.mb45sp { margin-bottom: calc(100vw * 45 / 750) !important; }
.mb50sp { margin-bottom: calc(100vw * 50 / 750) !important; }
.mb55sp { margin-bottom: calc(100vw * 55 / 750) !important; }
.mb60sp { margin-bottom: calc(100vw * 60 / 750) !important; }
.mb65sp { margin-bottom: calc(100vw * 65 / 750) !important; }
.mb70sp { margin-bottom: calc(100vw * 70 / 750) !important; }
.mb75sp { margin-bottom: calc(100vw * 75 / 750) !important; }
.mb80sp { margin-bottom: calc(100vw * 80 / 750) !important; }
.mb85sp { margin-bottom: calc(100vw * 85 / 750) !important; }
.mb90sp { margin-bottom: calc(100vw * 90 / 750) !important; }
.mb95sp { margin-bottom: calc(100vw * 95 / 750) !important; }
.mb100sp { margin-bottom: calc(100vw * 100 / 750) !important; }
.mb110sp { margin-bottom: calc(100vw * 110 / 750) !important; }
.mb120sp { margin-bottom: calc(100vw * 120 / 750) !important; }
.mb130sp { margin-bottom: calc(100vw * 130 / 750) !important; }
.mb140sp { margin-bottom: calc(100vw * 140 / 750) !important; }
.mb150sp { margin-bottom: calc(100vw * 150 / 750) !important; }
.mb160sp { margin-bottom: calc(100vw * 160 / 750) !important; }
.mb170sp { margin-bottom: calc(100vw * 170 / 750) !important; }
.mb180sp { margin-bottom: calc(100vw * 180 / 750) !important; }
.mb190sp { margin-bottom: calc(100vw * 190 / 750) !important; }
.mb200sp { margin-bottom: calc(100vw * 200 / 750) !important; }

}
