@charset "UTF-8";
header h1 { font-size: 15px !important; line-height: 1.6; padding: 12px 0 !important; }
body, p, li, dd, dt, td { font-size: 15px; }

nav { height:auto; }
nav ul { display:flex; flex-wrap:nowrap; justify-content:center; list-style:none;
         margin:0; padding:0; }
nav ul li { margin:0; width:auto !important; height:auto !important;
            flex:0 0 auto; float:none; background:none; }
nav ul li a.navtext {
  display:block; padding:14px 16px; font-size:16px; font-weight:bold;
  white-space:nowrap;
  color:#fff; text-decoration:none; letter-spacing:.06em;
  text-shadow:0 1px 2px rgba(0,0,0,.45);
}
nav ul li a.navtext:hover { color:#ffe45c; }

.pslider { position:relative; width:300px; max-width:100%; margin:18px; }
.pslider .frame { position:relative; width:100%; aspect-ratio:2/3;
                  overflow:hidden; background:#f6f2f5; border:1px solid #e6dde3; }
.pslider .frame img {
  position:absolute; inset:0; width:100% !important; height:100% !important;
  margin:0 !important; padding:0 !important; border:0 !important;
  box-sizing:border-box;
  object-fit:cover; opacity:0; transition:opacity .25s ease; display:block;
}
.pslider .frame img.is-on { opacity:1; }
.pslider .arw {
  position:absolute; top:50%; transform:translateY(-50%); z-index:2;
  width:34px; height:44px; border:0; cursor:pointer; font-size:24px; line-height:1;
  color:#fff; background:rgba(0,0,0,.34);
}
.pslider .arw:hover { background:rgba(0,0,0,.55); }
.pslider .arw.prev { left:0; } .pslider .arw.next { right:0; }
.pslider .dots { display:flex; justify-content:center; gap:8px; padding:10px 0 0; }
.pslider .dot { width:11px; height:11px; border-radius:50%; border:1px solid #c2185b;
                background:#fff; padding:0; cursor:pointer; }
.pslider .dot.is-on { background:#c2185b; }
.pslider .count { text-align:center; font-size:13px; color:#777; padding-top:4px; }

.girls, .girls-list, .profile {
  position:static; float:none; width:auto; max-width:1180px; height:auto;
  margin:0 auto; padding:0; background:rgba(255,255,255,.88);
}
.girls-list { margin-bottom:28px; padding-bottom:8px; }
.girls-list .tit, .girls-list .tit h2 {
  position:static; float:none; width:auto; height:auto; background:none;
  margin:0; padding:14px 18px 6px; font-size:19px; font-weight:bold;
  color:#3c7a00; border-bottom:2px solid #b6e05a;
}
.girls-list .box {
  position:static; float:none; width:auto; height:auto;
  display:flex; flex-wrap:wrap; gap:18px; padding:18px; margin:0;
}
.girls-list .detail, .profile .detail {
  position:static; float:none; width:160px; height:auto; margin:0; padding:0;
  background:none; overflow:visible;
}
.girls-list .detail p { margin:4px 0; padding:0; background:none;
                        position:static; width:auto; height:auto; }

.girls-list .detail p.image { line-height:0; width:160px; height:240px;
                              margin:0 0 6px; padding:0 !important;
                              overflow:hidden; background:#f6f2f5; }
.girls-list .detail p.image a { display:block; width:100%; height:100%;
                                margin:0; padding:0; border:0; }
.girls-list .detail p.image img {
  width:160px !important; height:240px !important;
  margin:0 !important; padding:0 !important; border:0 !important;
  box-sizing:border-box;
  object-fit:cover; object-position:center 22%; display:block;
}
.girls-list .detail p.image img.noimg { object-fit:contain; background:#f6f2f5; }

.today .detail, .newface .detail { height:auto !important; margin:0 !important; }
.today .box, .newface .area { display:flex; flex-wrap:wrap; gap:14px; }
.today .detail p.image, .newface .detail p.image {
  width:160px; height:240px; margin:0 auto 6px; padding:0 !important;
  overflow:hidden; background:#f6f2f5; line-height:0;
}
.today .detail p.image a, .newface .detail p.image a {
  display:block; width:100%; height:100%; margin:0; padding:0; border:0; }
.today .detail p.image img, .newface .detail p.image img {
  width:160px !important; height:240px !important;
  margin:0 !important; padding:0 !important; border:0 !important;
  box-sizing:border-box; object-fit:cover; object-position:center 22%; display:block;
}
.today .detail p.image img.noimg, .newface .detail p.image img.noimg {
  object-fit:contain; }

#slider > div { display:none; }
#slider > div:first-of-type { display:block; }
#slider .image { width:160px; height:240px; overflow:hidden;
                 background:#f6f2f5; margin:0 auto; }
#slider .image img { width:160px !important; height:240px !important;
                     margin:0 !important; padding:0 !important; border:0 !important;
                     object-fit:cover; display:block; }
#slider .image img.noimg { object-fit:contain; }
#slider .comment { padding:8px 10px; }
#slider .comment .name { font-size:16px; font-weight:bold; }
#slider .comment .size { font-size:13px; color:#555; }
#slider .comment .text { font-size:13px; line-height:1.7; }
.girls-list .detail p.name { font-weight:bold; font-size:15px; line-height:1.4; }
.girls-list .detail p.name a { color:#c2185b; text-decoration:none; }
.girls-list .detail p.size { font-size:13px; color:#555; }
.profile .gallery { display:flex; flex-wrap:wrap; gap:10px; padding:18px; }
.profile .gallery .image { margin:0; line-height:0; }
.profile .gallery .image img { width:220px !important; height:auto !important; }
.profile .profile-name, .profile .profile-qa-bg, .profile .profile-qa {
  position:static; float:none; width:auto; height:auto; background:none; }
.profile .profile-name h2 { font-size:22px; padding:8px 18px; }
.profile .profile-name h2 span { display:block; font-size:14px; color:#555;
                                 font-weight:normal; margin-top:4px; }
.profile .profile-qa { display:flex; border-bottom:1px solid #eee; margin:0 18px; }
.profile .profile-qa-left  { width:170px; padding:10px 0; font-weight:bold; color:#666; }
.profile .profile-qa-right { flex:1; padding:10px 0; }
.profile .profile-qa p { font-size:15px; margin:0; }
.notice { margin:14px 18px; padding:12px 14px; background:#fff8fb;
                border:1px solid #f0d8e4; font-size:15px; line-height:1.8;
                position:static; float:none; width:auto; height:auto; }
.era-nav { margin:10px 18px 0; font-size:15px; line-height:2.1; }
.era-nav a { margin-right:14px; white-space:nowrap; }
footer p { font-size:14px; padding:14px 0; text-align:center; }

.img-missing { display:inline-block; padding:6px 12px; font-size:15px;
               font-weight:bold; color:inherit; }
.img-missing-blank { display:none; }
a .img-missing { color:#fff; text-shadow:0 1px 2px rgba(0,0,0,.45); }
