/*!
Theme Name: Japan Erotic Guide
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: japan-erotic-guide
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

Japan Erotic Guide is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/* ************************************************ 
*	基本設定
* ************************************************ */	

body {
font-family:arial,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",Osaka,"ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
font-size: 14px;
background: #fff;
color: #444;
line-height: 180%;
  margin: 0;
	  overflow-x: hidden;
}



/* リンク */

a{
color:#45AAB8;
text-decoration:none;
transition: 0.5s;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
-ms-transition: 0.5s;

}

a:hover{
color:#666;
}

a:active, a:focus {
outline: 0;
}
.fa-tags{
	color:#45AAB8;
}

/* 画像 */

img{
border:0;
padding:0px;
margin:0px;
  max-width: 100%;
  height: auto;
}

img.aligncenter {
display: block;
margin-left: auto;
margin-right: auto;
}

img.alignleft {
    padding: 4px;
    margin: 0;
    display: inline;
}
img.alignright {
    padding: 4px;
    display: inline;
    margin: 20px 0 0 20px;
}
img.alignleft.size-full.wp-image-3778 {
    padding-top: 50px;
}

/* フロート */

.alignright { float: right; }

.alignleft { float: left; }

.right{ float: right; }

.left{ float: left; }

.clear{ clear:both; }


/* リスト */

ol{
margin: 0 0 0 5px;
padding: 0 0 0 0;
list-style: decimal;
}

ul{
margin: 0 0 0 0;
padding: 0 0 0 0;
list-style: disc;
}

li{
margin: 0 0 0 15px;
padding: 0 0 0 0;
}

li a{
color:#45AAB8;
transition: 0.5s;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
-ms-transition: 0.5s;

}

li a:hover{
color:#666;
}


/* ************************************************ 
*	全体Wrapper
* ************************************************ */	

.wrapper {
margin: auto; 
max-width: 960px;
padding: 30px 10px;
_width: 960px;
}


/* ************************************************ 
*	SP用バナー
* ************************************************ */
@media only screen and (min-width: 768px) {
#sp-banner{
	display:none !important;
}
}
.cycle-slideshow-sp{
	height:100px;
}
#sp{
	height:100%;
}
#sp h4{
	padding-top:12px;
	margin-bottom: 0px;
}
#sp img{
	height:100%;
	float: left;
	margin-right: 12px;
}
#sp a{
	color:#000;
}
#sp a span{
    color: #fff;
    background-color: #000;
    padding: 0 5px;
    border-radius: 3px;
	margin-right:6px;
	margin-top:15px;
	line-height:1.3;
	float:left;
}
#sp a p{
	font-size: 12px;
	line-height: 1.1;
}
/* ************************************************ 
*	ヘッダー
* ************************************************ */

#headNav {
background: #000000;
}

#headNav h1 {
text-align:center;
font-size: 13px;
color: #ffffff;
font-weight: normal;
line-height: 1.5;
margin: 0px 0px 0px 0px;
padding:0px 0px 0px 0px;	
}

#headNav p {
text-align:center;
font-size: 13px;
color: #ffffff;
font-weight: normal;
line-height: 1.5;
margin: 0px 0px 0px 0px;
padding:0px 0px 0px 0px;
}

#headNav h1.consul {
    text-align: center;
    font-size: 15px;
    color: #ffffff;
    font-weight: normal;
    line-height: 1.5;
    margin: 2px 0px;
    padding: 0px 0px 0px 0px;
}

#header {
width: 100%；
}

.header-inner {
    overflow: hidden;
    margin: 0px auto 0 auto;
    padding: 0;
    max-width: 960px;
    width: 100%;
}

#header h1 {
text-align:center;
margin: 0;	
}

.logo {
text-align:center;
max-width: 100%;
margin: 0px 0px 0px 0px;
padding:0px 0px 0px 0px;
}

/* ************************************************ 
*	スライド
* ************************************************ */	

#top-slide {
    width: 100%;
    padding: 0px;
    margin: 25px auto -10px auto;
}


.cycle-slideshow{
overflow: hidden;
max-width: 960px;
width: 100%;
margin: auto;
text-align: center;
height: 350px;
}

/* ************************************************ 
*	地図リスト
* ************************************************ */	
.Primary{
	display:flex;
	justify-content:space-around;
	background-color: #F4F4F4;
    border-radius: 10px 10px 0 0;
    padding: 20px;
}
.Primary-list ul{
    display: flex;
    flex-direction: column;
    gap: 20px;
	margin-top:20px;
}
.Primary-list ul li{
	list-style-type:none;
}
.Primary-list ul li a{
    display: block;
    padding-bottom: 10px;

    border-bottom: 1px solid #ddd;
    transition: all 0.2s;
}
.Primary-list ul li a img{ 
	width:230px;
}
.Primary-list ul li a:hover{
    transform: translateX(8px);
}
/* ************************************************ 
*エリアリスト
* ************************************************ */	
.Search{
    background-color: #F4F4F4;
    padding: 20px;
    border-radius: 0 0 10px 10px;
    font-size: 14px;

    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 20px;
}

/* 各エリアをカードっぽく */

.Search-prefecture{
    background: #fff;
    padding: 15px;
    border-radius: 8px;
}

/* 見出し */
.Search h2{
    font-size: 15px;
    font-weight: bold;
    margin-bottom: 12px;
    color: #333;
}
.Search h2 a{
    display: inline-block;
    transition: transform 0.2s ease;
}

.Search h2 a img{
    width: 170px;
    transition: opacity 0.2s ease;
}

/* ホバー */
.Search h2 a:hover{
    transform: translateY(-1px);
}

.Search h2 a:hover img{
    opacity: 0.75;
}
/* リスト */
.Search-prefecture ul{
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 0;
}

/* リストアイテム */
.Search-prefecture ul li{
    list-style: none;
    margin: 0;
}

/* ボタン（黒） */
.Search-prefecture ul li a{
    display: inline-block;
    padding: 6px 12px;
    background: #000;
    color: #fff;
    border-radius: 20px; /* 少し丸めて差別化 */
    text-decoration: none;
    font-size: 12px;
    transition: all 0.2s ease;
}

/* ホバー */
.Search-prefecture ul li a:hover{
    background: #333;
    transform: translateY(-1px);
}

/* 無効 */
.Search-prefecture ul li a.Search-prefecture-none{
    background-color: #D0D0D0;
    color: #888;
    pointer-events: none;
}
/* ************************************************ 
*バナー
* ************************************************ */
.Bnr{
	display:flex;
	justify-content:center;
	margin-top:30px;
}
.Bnr img,
.Bnr a{
	width:80%;
	text-align:center;
}
/* ************************************************ 
*説明文
* ************************************************ */	
.Description {
    padding: 60px 20px;
    background: #F4F4F4;
	margin:30px 0;
	border-radius:10px;
}

.Description-content {
    max-width: 800px;
    margin: 0 auto 40px auto;
    padding: 30px 35px;
    background: #ffffff;
    border-radius: 10px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.05);
}


.Description-content h2 {
    font-size: 24px;
    font-weight: 600;
    color: #222;
    margin-bottom: 18px;
    padding-left: 12px;
    border-left: 4px solid #333;
}

.Description-content p {
    font-size: 15px;
    line-height: 1.9;
    color: #555;
}
/* ************************************************ 
*女の子スライダー
* ************************************************ */	
.girl-slider {
  padding: 20px 0;
}

.swiper-wrapper {
  transition-timing-function: linear !important;
}


.item {
  position: relative;
  overflow: hidden;
}



.item-img {
  width: 100%;
	height:200px;
  overflow: hidden;
  background: #eee;
}

.item-img img {
  width: 100%;
  height: 100%;

  object-fit: cover;

  /* 顔を少し上寄せ */
  object-position: center 20%;

  display: block;
}


.last-block_text {

  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;

     padding: 3% 0 5%;

  /* 半透明白 */
  background: rgba(255,255,255,0.85);

  backdrop-filter: blur(4px);

  text-align: center;
}


.item-title {
  font-size: 0.75rem;
  font-weight: 700;

  margin: 0;
  margin-bottom: 4px;

  line-height: 1.3;
}

.item-title a {
  color: #444;
  text-decoration: none;
}

.item-title a:hover {
  color: #4fa6ad;
}


.pcmenu {
  color: #555;

  line-height: 1.4;
}

.pcmenu p{
	font-size:12px;
	margin:0;
}
.swiper-slide {
  height: auto;
}

.first-block {
  position: relative;
}
/* =========================
   Moreボタン全体
========================= */

.Girl-more {
  text-align: center;

  margin-bottom: 40px;
}


.Girl-more a {
    display: inline-block;
    padding: 6px 12px;
    background: #000;
    color: #fff;
    border-radius: 20px; /* 少し丸めて差別化 */
    text-decoration: none;
    font-size: 12px;
    transition: all 0.2s ease;
	    width: 200px;
    font-weight: bold;
}


.Girl-more a:hover {

  background: #333;

  transform: translateY(-1px);

}



.Girl-more a:active {

  transform: translateY(0);

  box-shadow: none;

}


@media (max-width: 767px) {

  .Girl-more a {

    width: 80%;

    padding: 16px 20px;

    font-size: 17px;

  }

}
@media (max-width: 767px) {

  .item-title {
    font-size: 16px;
  }

  .pcmenu {
    font-size: 12px;
  }

}
/* ************************************************ 
*	フッターエリア
* ************************************************ */	

#footer {
background: #000000;
clear:both;
width:100%;
font-size: 80%;
margin: 30px auto 0px auto;
padding: 25px 0;
}

.footer-inner {
margin: 0px auto 0px auto;
max-width: 960px;
width: 100%;
}

#sociallink {
text-align:center;
position: relative;
margin: 0 auto 10px auto;
padding: 0 0 0 0;
}

#copyright {
font-size:13px;
color:#ffffff;
text-align:center;
position: relative;
margin: 0 0 0 0;
padding: 0 0 0 0;
}

#copyright a{
font-size:13px;
color:#ffffff;
text-align:center;
position: relative;
margin: 0 0 0 0;
padding: 0 0 0 0;
}

#foot{
	position: fixed;
    z-index: 10000;
    width: 100%;
    height: 80px;
    bottom: 0px;
    display: block;
    background: rgba(0, 0, 0, 0.7);
}


/* ************************************************ 
*	ウィジット
* ************************************************ */	
footer .row{
	display:flex;
}
footer .third{
	flex:1;
	margin-left:30px;
}
footer .widget{
margin: 0 0 30px 0;
}

footer .textwidget{
font-size: 13px;
color: #ffffff;
line-height:170%;
margin: 0 0 30px 0;
padding: 5px 0 0 0;
}

footer .textwidget p{
font-size: 13px;
color: #ffffff;
line-height:170%;
margin: 0 0 opx 0;
padding: 5px 0 0 0;
}

footer .textwidget a{
font-size: 13px;
color: #ffffff;
line-height:170%;
margin: 0 0 30px 0;
padding: 5px 0 0 0;
}
footer .sidebar-title {
    font-family: arial, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-style: normal;
    margin: 0px 0px 10px 0px;
    padding: 0 0 3px 0;
    background: url() no-repeat;
    border-bottom: 1px solid #ccc;
}

footer #topbox li {
    floate: left;
    margin: 0 0 0 0;
    padding: 3px 0px 2px 0px;
    list-style: none;
    border-bottom: 1px dotted #ddd;
}

#sidebox{
color:#666;
margin: 0 0 0 0 ;
padding: 0 0 0 0 ;
}

#sidebox ul{
floate:left;
margin: 0 0 0 0;
padding: 0 0 0 0;
}

#sidebox li{
font-size: 13px;
floate:left;
list-style: none;
margin: 0 0 0 0;
padding: 6px 0 5px 0px;
}




.footer-widget-title{
font-family:arial,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",Osaka,"ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
font-size:14px;
font-weight:bold;
color: #999;
margin: 0 0px 10px 0px;
}


.widget ul{
margin: 0 0 0 0;
padding: 0 0 0 0;
}

.widget li{
font-size:88%;
list-style: none;
}

.widget li a{
color: #fff;
}

.widget li a:hover{
color: #999;
}


/* 本文下の広告枠 */

.widget-adspace {
margin: 30px 0 -30px 0px;
}
@media (max-width: 767px) {
	footer .row{
		display:inherit;
	}
}

/* =========================
   スマホ
========================= */
@media (max-width: 767px) {
	#headNav h1,
	#headNav p{
        font-size: 10px;
        line-height: 1;
        padding: 3px 0px 0px 0px;
	}
img.alignleft.size-full.wp-image-3778 {
    padding-top: 30px;
}
	#vip img.alignright{
		padding:4px 10px;
	}
	#big{
		margin:0 10px;
	}
.cycle-slideshow{
	height:auto;
}

.Bnr img, .Bnr a{
	width:100%;
}
.swiper-slide{
	width:160px !important;
}
footer .third{
	margin:0 auto;
}
#text-2{
	display:none;
}
footer .row{
	margin:0 10px;
}
}
/* =========================
   一番最後記述：横余白の完全対策
========================= */

*,
*::before,
*::after {
  box-sizing: border-box; /* ←超重要 */
}

html, body {
  width: 100%;
  overflow-x: hidden;
}
