﻿body {
    font-family: Arial, sans-serif;
    margin: 0;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    margin-left: 0px;
}

#all-bg {
    background-color: #fff;
}

a {
    color:#fff;
    text-decoration: none;
}

.link_red {
    color:#dd7070;
}

.red {
    color: #f85151
}

h1{
    color: #252525;
    font-size: 13px;
}

h3{
    color: #252525;
    font-size: 13px;
    text-align: center;
}

section{
    background-color: #fff;
}


header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 48px;
    background-color: #fff; 
}

#logo img {
    width: 90px;
    height: 48px;
}



.hamburger {
    background-color: #ffa8a8;
    width: 48px;
    height: 48px;
    position: relative;
    cursor: pointer;
}

.hamburger .line {
    background-color: #fff;
    height: 3px;
    width: 60%;
    position: absolute;
    left: 10px;
    border-radius: 1.5px;
}

.hamburger .line:nth-child(1) { top: 30%; }
.hamburger .line:nth-child(2) { top: 50%; transform: translateY(-50%); }
.hamburger .line:nth-child(3) { bottom: 30%; }



/* メニュー展開後 */
#nav-menu {
    position: absolute;
    top: 0%;
    left: 0;
    background-color: #ffa8a8;
    width: 100%;
    height: 100%;
    border: 1px solid #fff;
    z-index: 10;
}

#nav-menu ul {
    list-style-type: none;
    padding: 25px 40px 5px 40px;
    margin: 0;
}

#nav-menu li {
    border-bottom: 1px solid #fff;
}

#nav-menu li:last-child {
    border-bottom: none;
}

#nav-menu a {
    display: block;
    padding: 10px;
    text-decoration: none;
    color: #fff;
}

#nav-menu a:hover {
    background-color: #ffdbdb;
}

.hidden {
    display: none;
}

.close-button {
    font-size: 24px;
    padding: 3px 10px 3px 10px;
    cursor: pointer;
    position: absolute;
    right: 10px;
    top: 10px;
    color: #fff;
    border: 1px solid #fff;
}



/* メインビジュアル */
#main-visual {
    background-image: url('img/main-visual.webp'); /* webpフォーマットの画像のパスを指定 */
    background-size: cover; /* 背景画像をセクションのサイズに合わせて伸縮 */
    background-position: center; /* 背景画像を中央に配置 */
    background-repeat: no-repeat; /* 背景画像を繰り返さない */
    position: relative;  /* h1の絶対位置を基準とする */
    height: 450px; /* ここで適切な高さを指定するか、コンテンツの内容に合わせて自動的に調整します */
}

#main-visual h1 {
    position: absolute;  /* 絶対位置 */
    bottom: 0rem;           /* セクションの一番下に配置 */
    left: 50%;           /* セクションの中央に配置 */
    transform: translateX(-50%);  /* テキストの中央がセクションの中央にくるように調整 */
    text-align: center;  /* テキストを中央揃え */
    width: 90%;
    font-size: 15px;
    color: #252525;
    text-shadow: 
        -1px -1px 0 #ffe4e4,  
        1px -1px 0 #ffe4e4,
        -1px 1px 0 #ffe4e4,
        1px 1px 0 #ffe4e4;
}




#main-visual img, #about-us-visual img {
    width: 100%;
    height: 100%;
}

#about-us {
    font-size: 12px;
    text-align: center;
    color: #252525; 
}

#about-us p{
margin-top: 0.3rem;
}



/* コンテンツバナー */
#feature-section,#blog-section{
    width: 100%;
    height: 100%;
    margin-top: 1rem;
    margin-bottom: 2rem;
    text-align: center;
}

#feature-section img,#blog-section img {
    width: 86%;
    height: 100%;
}

#feature-section h2,#blog-section h2 {
    margin-top: 0%;
}


/* インフォメーション */
#info_container {
    border: 0.8vw solid #ffa8a8;  /* 境界線 */
    border-radius: 18px;  /* 角を丸くする */
    width: 84%;  /* 必要に応じて調整 */
    margin: 2rem auto 3rem auto;  /* コンテナをページの中央に配置 */
}

.info_title {
    display: block;
    width: 98%;
    text-align: center;
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
    color: #fff;
    font-size: 14px;
    margin: 1%;
    padding: 2px 0;
    background-color: #ffa8a8;
}

#info_container ul {
    margin: 0;
    padding: 0 0.5em 0.5em 1.5em;
    position: relative;
}

#info_container ul li{
    line-height: 24px;
    margin-bottom: 2px;
    padding: 2px 0;
    display: flex; /* フレックスボックスを有効にする */
    justify-content: space-between; /* 子要素を両端に配置する */
    list-style-type: none!important;
    border-bottom: solid #ddd 1px;
    font-size: 13px;
}


.info_day {
    margin-left: auto; /* 左側の余白を自動で調整して要素を右端に押し出す */
    font-size: 12px;
    color: #999;
}



#info_container ul li:before {
    font-family: "Font Awesome 5 Free";
    content: "\f138";/*アイコンの種類*/
    position: absolute;
    left : 0.4em;/*左端からのアイコンまでの距離*/
    color: #ffa8a8;/*アイコン色*/
  }

#info_container a {
    color: #252525;
}






/* フッター */
#footer-1st,#footer-2nd {
    background-color: #ffa8a8;
    color: #fff; 
    padding-top: 1rem;
    padding-bottom: 0.2rem;
}

#footer-1st h3 {
    margin: auto;
    text-align: left;
    font-size: 12px;
    color: #fff;
}

#footer-1st ul,#footer-2nd ul {
    column-gap: 0px;
    font-size: 12px;
    text-align: left;
    justify-content: center;
    margin-top: 0;
    padding-left: 5%;
}

#footer-1st li,#footer-2nd li {
    width: 95%; 
    height: 48px;
    display: block; 
}

#footer-1st li,#footer-2nd li a {
    display: inline-block; 
    line-height: 48px;  /* liの高さと同じ値 */
}


#footer-2nd {
    background-color: #dd7070;
}

#footer-2nd ul {
    column-count: 3; 
}


footer p {
    text-align: center;
    font-size: 11px;
    margin-top: 0;
    margin-bottom: 0.2rem;

}







/* GOOD BAD ===================================================================================*/
/* メニューボタン */
.good-bad_menu {
    display: flex; /* フレックスボックスを適用 */
    justify-content: space-between; /* アイテム間のスペースを均等に分配 */
    list-style: none;
    width: 90%; 
    margin: 0 auto;
    padding-inline-start: 0;
    padding-left: auto;

}
    
.good-bad_menu li {
    flex: 1; /* すべてのアイテムが均等な幅を持つようにする */
    margin: 0 1%; /* 必要に応じてマージンを追加して調整 */
}
    
.btn-img {
    width: 100%; /* 画像の幅を最大化 */
    height: 100%; /* 画像のアスペクト比を保持 */
    display: block; /* 画像下の余白を削除 */
}





.good-bad_menu2 {
    overflow: hidden; /* 追加 */
}

.good-bad_menu2 ul {
    list-style: none; /* リストのマーカーを非表示にする */
    padding: 0;       /* パディングを0に設定 */
    margin: 0;        /* マージンを0に設定 */
}

.good-bad_menu2 li {
    height: 3rem;   /* 高さを1.5remに設定 */
}

.good-bad_menu2 a {
    display: block;        
    width: 100%;
    height: 100%;          
    text-align: left;    
    padding-left: 25%;
    line-height: 3rem;   
    font-size: 12px;
    color: #252525;         
    text-decoration: none; 
    position: relative;  
    box-sizing: border-box; /* 追加 */
}

.blue-button a {
    background-color: #e8ffff; /* 明るい青色を設定 */
}

.blue-button_dark a {
    background-color: #c3ffff; /* 暗い青色を設定 */
}

.pink-button a {
    background-color: #ffefef; /* 明るい青色を設定 */
}

.pink-button_dark a {
    background-color: #ffe0e0; /* 暗い青色を設定 */
}

.good-bad_menu2 img {
    width: 1rem;
    height: 1rem;
    position: absolute; 
    top: 34%; 
    margin-left: 0.5rem;
}






/* GOOD BAD カテゴリ ====================*/
#good-bad_category {
    display: flex;
    flex-direction: column;  /* 上下に要素を配置 */
    align-items: center;  /* 中央寄せ */
    border-radius: 10px;  /* 角を丸くする */
    margin: 0 auto;  /* コンテナをページの中央に配置 */
    margin-top: 2.5rem;
    background-color: #e8ffff;
    padding-bottom: 2rem;
}

.page-title {
    background-color: #01c8cb;
    font-size: 16px;
    color: #fff;
    display: block;
    width: 100%;
    text-align: center;
    margin: 0;
}

.abut-category {
    font-size: 12px;
    text-align: center;
}





/* GOOD BADエリア =====================*/
.good-bad_container {
    display: flex;
    flex-direction: column;  /* 上下に要素を配置 */
    align-items: center;  /* 中央寄せ */
    border: 2px solid #01c8cb;  /* 境界線 */
    border-radius: 10px;  /* 角を丸くする */
    width: 85%;  /* 必要に応じて調整 */
    margin: 1.5rem auto;  /* コンテナをページの中央に配置 */
}

.image-container {
    display: flex;
    width: 100%;
    justify-content: space-between;  /* 画像を左右に均等に配置 */
}

.good-image, .bad-image {
    width: 50%;  /* 画像を親要素の50%の幅にする */
    height: 100%; /* 画像の縦の長さを自動調整 */
    display: block;  /* 画像下の余白を削除 */
    margin: 0;  /* 余白を削除 */
    padding: 0;  /* パディングを削除 */
    border: none;  /* 境界線を削除 */
}

.good-image {
    border-top-left-radius: 8px;
} 


.bad-image {
    border-top-right-radius: 8px;
}

.good-bad_title {
    display: block;
    width: 100%;
    text-align: center;
    color: #fff;
    font-size: 14px;
    margin: 0;
    padding: 0.3rem 0;
    background-color: #01c8cb;
}

.text {
    box-sizing: border-box;  /* こちらを追加 */
    margin: 0;
    padding: 0.5rem;
    width: 100%;
    font-size: 12px;
    text-align: left;
    background-color: #fff;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
}

.text strong{
    background: linear-gradient(transparent 60%, #dbfeff 60%);
    font-weight: normal;
}

.how-to_container .text strong,.mvp_text strong,#production-container strong {
    background: linear-gradient(transparent 60%, #ffdbe6 60%);
    font-weight: normal;
}

.text a {
    font-size: 12px;
    color: #dd7070;
    text-decoration: none;
}

.text .in_button {
    color: #fff;
}




/* How to カテゴリ ============================================================================================*/
#about-page .about {
    text-align: center;
}


#how-to_category {
    display: flex;
    flex-direction: column;  /* 上下に要素を配置 */
    align-items: center;  /* 中央寄せ */
    border-radius: 10px;  /* 角を丸くする */
    margin: 0 auto;  /* コンテナをページの中央に配置 */
    margin-top: 1rem;
    background-color: #fffafa;
    padding-bottom: 2rem;
}

#how-to_category .page-title {
    background-color: #dd7070;
    color: #fff;
    display: block;
    width: 100%;
    text-align: center;
    margin: 0;
}

.abut-category {
    font-size: 12px;
}



/* How to エリア =====================*/
.how-to_container {
    display: flex;
    flex-direction: column;  /* 上下に要素を配置 */
    align-items: center;  /* 中央寄せ */
    border: 2px solid #ffa8a8;  /* 境界線 */
    border-radius: 10px;  /* 角を丸くする */
    width: 85%;  /* 必要に応じて調整 */
    background-color: #fff;
    margin: 1rem auto;  /* コンテナをページの中央に配置 */
}

.how-to_container img {
    width: 100%;  /* 画像を親要素の50%の幅にする */
    height: 100%; /* 画像の縦の長さを自動調整 */
    display: block;  /* 画像下の余白を削除 */
    margin: 0;  /* 余白を削除 */
    padding: 0;  /* パディングを削除 */
    border: none;  /* 境界線を削除 */
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
}

.how-to_title {
    display: block;
    width: 100%;
    text-align: center;
    color: #fff;
    font-size: 14px;
    margin: 0;
    padding: 0.3rem 0;
    background-color: #ffa8a8;
}


/* コンテンツ内部バナー*/
.how-to_container .internal-link {
    background-color: #dd7070;
    font-size: 12px;
    text-align: center;
}





/* 運営者紹介 =================================================================================================*/
#profile-card {
    width: 80％;
    margin: 0 auto 1rem auto;
    text-align: left;
}

#profile-card table {
    width: 80％;
    padding: 20px;
    margin-bottom: 1rem;
    text-align: left;
    font-size: 12px;
}

.profile-pic {
    max-width: 100px;
    float: left;
    margin-right: 0.5rem;
}

.profile-name {
    font-size: 14px;
    font-weight: bold;
    margin: 0;
    text-align: left;
}

.profile-description {
    padding-bottom: 5px;
}

.profile-favorite a {
    font-size: 12px;
    color: #dd7070;
    text-decoration: none;
}




/* 誕生日 ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/

/* 月選択ボタン */
.month_button {
    display: flex; /* フレックスボックスを適用 */
    justify-content: space-between; /* アイテム間のスペースを均等に分配 */
    list-style: none;
    width: 100%; 
    margin: 0 auto;
    padding-inline-start: 0;
    padding-left: auto;
    border: #252525;


}
    
.month_button li {
    flex: 1; /* すべてのアイテムが均等な幅を持つようにする */
    display: block;
    height: 36px;
    margin: 0 1px; /* 必要に応じてマージンを追加して調整 */
    background-color: #ffa8a8;
    border-radius: 10px;  /* 角を丸くする */
    text-align: center;
}

.month_button li a {
    display: block;
    width: 100%;
    height: 100%;

}



/* カレンダー内 */
.custom-table {
    width: 85%;
    border-collapse: collapse;
    font-size: 14px;
    color:#252525;
}

.custom-table th, .custom-table td {
    border: 1px solid #ddd;
    text-align: center;
}

.custom-table th { /* 項目名※固定 */
    background-color: #ffa8a8;
    font-weight: bold;
    height: 24px;
}

.custom-table td {
    width: 15%;
    padding: 7px 0;
}

.custom-table tr.odd {
    background-color: #fdecec; /* 薄いピンクの色 */
}

.custom-table tr.even {
    background-color: #ffffff; /* 白色 */
}

.custom-table td:nth-child(2) {
    width: 25%; 
}

.custom-table td:nth-child(3) {
    width: 45%; /* 最大12文字の幅 */
}

.custom-table td a {
    text-decoration: none;
    color: black;
}





/* ランキング ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/

/* 日付選択 */
.date-selector {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0;
}

/* Safariのデフォルトのスタイルを無効にする */
select {
    -webkit-appearance: none;
    appearance: none;
    /* その他のカスタムスタイルを追加 */
    border: 1px solid #ccc;
    font-size: 14px;
    color: #252525;
    padding: 8px;
    margin-left: 8px;
    margin-right: 3px;
    border-radius: 4px;
    background-color: #fff;
}

.date-selector button{
    margin-left: 1.5rem;
    padding: 9px;
    border-radius: 4px;
    background-color: #ffdbdb;
    border-color: #ffa8a8;
    color: #252525;
}

/* 前日翌日リンク */
.date-navigation {
    display: flex;
    justify-content: space-between; /* ボタンと日付を画面の端に配置 */
    align-items: center;
    width: 100%;
    height: 38px;
    background-color: #dd7070;
}

.category-name {
    flex-grow: 1; /* 中央の項目が利用可能なスペースを取るようにする */
    text-align: center;
    margin: 0 10%; /* 中央の項目の左右にスペースを作る */
}

.prev-button,.next-button {
    width: 55px;
    border-radius: 10px;
    background-color: #fffafa;
    text-align: center;
}

.prev-button {
    margin-left: 15%;
}

.next-button {
    margin-right: 15%;
}

.prev-button a,.next-button a {
    border-radius: 10px;
    padding: 2px;
    font-size: 14px;
    font-weight: bold;
    color: #ffa8a8;
    display: block; /* アンカータグがボタン全体に広がるようにする */
}


/* ランキング表 */
.ranking_site-name {
    font-size: medium;

}


#ranking-table_DWM {
    width: 90%;
    border-collapse: separate;
    border-spacing: 5px 0; /* 横に隙間を作る */
  }
  
#ranking-table_DWM th,#ranking-table_DWM td {
    text-align: center;
    border: 1px solid #ddd;
    font-size: 12px;
    color:#252525;
  }

#ranking-table_DWM th { /* 項目名※固定 */
    background-color: #ffa8a8;
    font-weight: bold;
    height: 20px;
    padding: 7px 0;
}

#ranking-table_DWM td {
    width: 10%;
    padding: 7px 0;
}

#ranking-table_DWM tr.odd {
    background-color: #fdecec; /* 薄いピンクの色 */
}

#ranking-table_DWM tr.even {
    background-color: #ffffff; /* 白色 */
}

#ranking-table_DWM td:nth-child(2),#ranking-table_DWM td:nth-child(3),#ranking-table_DWM td:nth-child(4) {
    width: 25%; 
}

#ranking-table_DWM td a {
    text-decoration: none;
    color: black;
}



/* FANZA人妻 */
#ranking-table_DWM .Fm { 
    background-color: #e8bbff;
}

#ranking-table_DWM tr.Fm-odd {
    background-color: #faecfd; /* 薄紫 */
}

/* FANZAノンアダルト */
#ranking-table_DWM .Fo { 
    background-color: #90eea9;
}

#ranking-table_DWM tr.Fo-odd {
    background-color: #ecfdf1; /* 薄黄緑 */
}

/* FANZAバーチャル */
#ranking-table_DWM .Fv { 
    background-color: #a6d1ff;
}

#ranking-table_DWM tr.Fv-odd {
    background-color: #ecf8fd; /* 薄黄緑 */
}

/* ジュエルライブ */
#ranking-table_DWM .JL { 
    background-color: #ffb7e4;
}

#ranking-table_DWM tr.JL-odd {
    background-color: #fdecf4; /* 薄黄緑 */
}

/* マダムライブ */
#ranking-table_DWM .ML { 
    background-color: #b7f7ff;
}

#ranking-table_DWM tr.ML-odd {
    background-color: #ecfafd; /* 薄黄緑 */
}


hr {
    width: 90%;
    margin-top: 5%;
    border-top: 5px dotted #dd7070;
  }

.ttb a {
    font-size: 12px;
    color: #dd7070;
}

.ttb_L {
    margin-top: 10px;
}

.ttb_L a {
    font-size: 14px;
    color: #dd7070;
    text-decoration: solid underline 3px;
}

.ttb_M {
    margin-top: 0px;
}

.ttb_M p{
    margin-top: -10px;
}

.ttb_M a {
    font-size: 14px;
    color: #dd7070;
    text-decoration: solid underline 2px;
}


/* MVP */
.mvp_container {
    display: flex;
    flex-direction: column;  /* 上下に要素を配置 */
    align-items: center;  /* 中央寄せ */
    border-radius: 10px;  /* 角を丸くする */
    width: 85%;  /* 必要に応じて調整 */
    margin: 1rem auto;  /* コンテナをページの中央に配置 */
    padding-top: 2rem;
}

.mvp_container img {
    width: 100%;   /* 画像を親要素の幅に合わせる */
    height: 100%;  /* 画像の縦の長さを自動調整 */
    display: block;  /* 画像下の余白を削除 */
    margin: 0;  /* 余白を削除 */
    padding: 0;  /* パディングを削除 */
    border: none;  /* 境界線を削除 */

}

.mvp_title {
    display: block;
    width: 100%;
    text-align: center;
    color: #fff;
    font-size: 14px;
    margin: 0;
    padding: 0.3rem 0;
    background-color: #ffa8a8;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
}


.mvp_text {
    box-sizing: border-box;  /* こちらを追加 */
    margin: 0;
    padding: 0.5rem;
    width: 100%;
    font-size: 12px;
    text-align: left;
    border: 2px solid #ffa8a8;  /* 境界線 */
    background-color: #fff;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
}

.mvp_text img {
    width: 96%;
    margin: 1.5em 2%;
}

.in_button {
    align-items: center;
    display: inline-block; /* ブロック要素のように振る舞う */
    width: 74%;
    margin: 0.8em 8%;
    padding: 8px 15px; /* パディング */
    background-color: #f98b8b; /* 背景色 */
    text-decoration: none; /* リンクの下線を無効化 */
    text-align: center;
    border-radius: 8px; /* 角丸 */
}

.in_button_blue {
    align-items: center;
    display: inline-block; /* ブロック要素のように振る舞う */
    width: 74%;
    margin: -0.5rem 8% 0.5rem;
    padding: 8px 15px; /* パディング */
    background-color: #01c8cb; /* 背景色 */
    text-decoration: none; /* リンクの下線を無効化 */
    text-align: center;
    border-radius: 8px; /* 角丸 */
}


/* 事務所検索 ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/

#prefecture-select {
    margin-top: 1.5rem;
    margin-bottom: 10px;
}

#city-select {
    margin-bottom: 35px;
}

#prefecture-select, #city-select {
    width: 175px;
    border-width: 2px;
    border-color: #dd7070;
}

#shop-info {
    /* スタイリング */
}



#production-container div{
    display: flex;
    flex-direction: column;  /* 上下に要素を配置 */
    align-items: center;  /* 中央寄せ */
    border: 2px solid #ffa8a8;  /* 境界線 */
    border-radius: 10px;  /* 角を丸くする */
    background-color: #fff;
    width: 85%;  /* 必要に応じて調整 */
    margin: 1.5rem auto;  /* コンテナをページの中央に配置 */
}

#production-container img {
    width: 100%;  /* 画像を親要素の50%の幅にする */
    height: 100%; /* 画像の縦の長さを自動調整 */
    display: block;  /* 画像下の余白を削除 */
    margin: 0;  /* 余白を削除 */
    padding: 0;  /* パディングを削除 */
    border: none;  /* 境界線を削除 */
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
}

#production-container h2 {
    display: block;
    width: 100%;
    text-align: center;
    color: #fff;
    font-size: 14px;
    margin: 0;
    padding: 0.3rem 0;
    background-color: #ffa8a8;
}

#production-container div p {
    margin: 0;
    padding: 5px;
    font-size: 12px;
    color: #333;
    background-color: #fff;
    border-bottom-left-radius: 8px;
    border-bottom-right-radius: 8px;
}

#production-container a {
    color: #dd7070;
    text-decoration: none;
}

#production-container .invisible-img {
    width: 0;
    height: 0;
}



/* Pickup　英語 ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
.abut-category_E {
    width: 82%;
    font-size: 13px;
    text-align: left;
}

/* リスト内 */
.custom-table_E {
    width: 85%;
    border-collapse: collapse;
    font-size: 13px;
}

.custom-table_E th, .custom-table_E td {
    border: 1px solid #ddd;
    text-align: center;
}

.custom-table_E th { /* 項目名※固定 */
    background-color: #ffa8a8;
    font-weight: bold;
    height: 24px;
}

.custom-table_E td {
    width: 30%;
    padding: 7px 0;
}

.custom-table_E tr.odd {
    background-color: #fdecec; /* 薄いピンクの色 */
}

.custom-table_E tr.even {
    background-color: #ffffff; /* 白色 */
}

.custom-table_E td:nth-child(2) {
    width: 20%; 
}

.custom-table_E td:nth-child(3) {
    width: 28%; /* 最大12文字の幅 */
}

.custom-table_E td:nth-child(4) {
    width: 22%; /* 最大12文字の幅 */
}

.custom-table_E td a {
    text-decoration: none;
    color: black;
}


/* サイトマップ ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
.toggle-content {
    display: none;
}




/* アフィリエイトバナー ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
.link-banner {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0;
}


#a8_banner_L div,#a8_banner_L_ranking div {
    width: 100vw;
    height: 100%;
    margin-top: 2rem;
    margin-bottom: 1rem;
    text-align: center;
}

#a8_banner_L div img,#a8_banner_L_ranking div img {
    height: auto; /* 高さを自動にしてアスペクト比を維持 */
    max-width: 100%; /* 最大幅を親要素の幅に制限 */
}


#a8_banner_L p,#a8_banner_L_ranking p {
    width: 300px;
    margin-top: 0;
    margin-left: auto;
    margin-right: auto;
    font-size: 12px;
}

#a8_banner_L_ranking {
    background-color: #fffafa;
}

.pc-only {
    display: none;
}


/* Topics */
.how-to_container .banner0 {
    width: 0; 
    height: 0; 
}


/* メディアクエリ ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
@media screen and (max-width: 768px) {

    #feature-section h2, #blog-section h2 {
        font-size: 12px;
        margin-top: 0rem;
    }

    footer h3 {
        width: 80%;
    }

    footer ul {
        column-count: 2; 
    }

}




@media screen and (min-width: 769px) {
    body {
      max-width: 1000px;
      margin: 0 auto;
      background-color: #f0f0f0; 
    }

    section{
        background-color: #fff;
    }

    #about-us p {
        margin: 0 auto 0; /* 上下の余白を設定し、左右を中央揃え */
        padding-top: 1rem; /* 上下の余白を設定し、左右を中央揃え */
        padding-bottom: 2rem;

    }

    #about-us p br {
        display: none; /* PC版では<br>タグを無視（非表示）にする */
    }


    #feature-section, #blog-section {
        width: 100%; /* ビューポート幅ではなく、親要素の幅に合わせる */
        max-width: 1000px; /* 最大幅を設定 */
        margin: 0 auto 0; /* 上下の余白を設定し、左右を中央揃え */
        padding-top: 1rem; /* 上下の余白を設定し、左右を中央揃え */
        padding-bottom: 2rem;
        height: auto; /* 高さを自動調整 */
      }
    
      #feature-section img, #blog-section img {
        width: 50%; /* 幅を50%に設定 */
        height: auto; /* 高さを自動調整 */
      }
    
      #feature-section h2, #blog-section h2 {
        margin-top: 0.5rem; /* 余白を調整 */
        font-size: medium;
      }
 
      #nav-menu {
        position: absolute;
        top: 0;
        width: 420px; /* 適切な幅に設定 */
        height: 100%;
        background-color: #ffa8a8;
        border-left: 1px solid #fff;
        z-index: 1000;
    }

    #main-visual {
        background-image: url('img/main-visual_PC.webp'); /* webpフォーマットの画像のパスを指定 */
        background-size: cover; /* 背景画像をセクションのサイズに合わせて伸縮 */
        background-position: right; /* 背景画像を中央に配置 */
        background-repeat: no-repeat; /* 背景画像を繰り返さない */
        position: relative;  /* h1の絶対位置を基準とする */
        height: 300px; /* ここで適切な高さを指定するか、コンテンツの内容に合わせて自動的に調整します */
    }

    #main-visual h1 {
        text-align: left;
        font-size: 1.1rem;
    }



/* インフォメーション */
    #info_container {
        border: 4.5px solid #ffa8a8;  /* 境界線 */
        width: 49%;  /* 必要に応じて調整 */
        margin: 1rem auto 4rem auto;  /* コンテナをページの中央に配置 */
}



/* フッター */
#footer-1st,#footer-2nd {
    background-color: #ffa8a8;
    color: #fff; 
}

#footer-1st h3 {
    margin-left: 15%;
    width: 90%;
    text-align: left;
    font-size: medium;
}

#footer-1st ul,#footer-2nd ul {
    margin-left: 15%;
    width: 90%;
    padding:0;
    font-size: 14px;
    text-align: left;
    margin-top: 0;
}

#footer-1st li,#footer-2nd li {
    width: 30%; 
    height: 48px;
    display: block; 
}

#footer-1st li,#footer-2nd li a {
    display: inline-block; 
    line-height: 48px;  /* liの高さと同じ値 */
}

#footer-2nd {
    background-color: #dd7070;
}

#footer-2nd ul{
    display: flex;
    flex-wrap: wrap;  /* 必要に応じて折り返し */
}

#footer-2nd li{
    flex: 1;         /* 各li要素が均等に空間を取るようにする */
    min-width: 30%;  /* li要素を50%の幅で最小限にする */
}


footer p {
    text-align: center;
    font-size: 11px;
    margin-top: 0;
    margin-bottom: 0.2rem;

}





#main-visual img, #about-us-visual img {
    height: auto; /* 高さを自動にしてアスペクト比を維持 */
    max-width: 100%; /* 最大幅を親要素の幅に制限 */
}

.page-title {
    font-size: 20px;
}

#about-us .page-title {
    margin-top: 20px;
    font-size: 20px;
    background-color: #fff;
    color:#252525;
}

#profile-card table {
    font-size: 14px;
}


#about-page h3{
    font-size: 16px;
}

#about-page .about {
    text-align: center;
    font-size: medium;
}


.good-bad_menu,.good-bad_container,#profile-card,.how-to_container,#how-to_category .abut-category,.abut-category_E,.custom-table,.custom-table_E,.mvp_container,#production-container{
    width: 55%;
}

.abut-category br {
    display: none;
}

#how-to_category p br {
    display: inline; /* もともとの表示スタイルに戻す */
}

.good-bad_title, .how-to_title,.page-title {
    font-size: 18px;
}


.abut-category,.abut-category_E,.good-bad_container p,.good-bad_menu2 li a,#profile-card p,#profile-card a,.how-to_category p,.how-to_container p ,.mvp_container p,#production-container div p{
    font-size: medium;
}


 

.month_button {
    width: 65%;
}

.month_button li {
    flex: 1; /* すべてのアイテムが均等な幅を持つようにする */
    height: 55px;
    margin: 0 3px; /* 必要に応じてマージンを追加して調整 */
    padding-top: 3px;
    border-radius: 18px;  /* ここでの数値はお好みに合わせて調整できます */
    text-align: center;
    font-size: 20px;
}



/* ランキング日付選択 */
.date-selector {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0;
}

#year,#month,#day {
    font-size: large;
    padding: 10px;
    margin-left: 10px;
    margin-right: 5px;
}

.date-selector button{
    height: 36px;
    margin-left: 20px;
    background-color: #ffdbdb;
    border-color: #ffa8a8;
}


/* ランキング表 */
#ranking-table_DWM {
    width: 60%;
}
  
#ranking-table_DWM th,#ranking-table_DWM td {
    font-size: 14px;
}

#ranking-table_DWM td {
    width: 4%;
    padding: 7px 0;
}

#ranking-table_DWM td:nth-child(2),#ranking-table_DWM td:nth-child(3),#ranking-table_DWM td:nth-child(4) {
    width: 15%; 
}

.mvp_text img {
    width: 80%;
    margin: 2em 10%;
}


.in_button {
    align-items: center;
    display: inline-block; /* ブロック要素のように振る舞う */
    width: 60%;
    margin: 0.8em 17%;
    color: #fff;
    border-radius: 10px; /* 角丸 */
}

.text .in_button {
    font-size: medium;
    color: #fff;
}

.in_button_blue {
    align-items: center;
    display: inline-block; /* ブロック要素のように振る舞う */
    width: 40%;
    margin: -0.5rem 8% 0.5rem;
    padding: 8px 15px; /* パディング */
    background-color: #01c8cb; /* 背景色 */
    text-decoration: none; /* リンクの下線を無効化 */
    text-align: center;
    border-radius: 8px; /* 角丸 */
}



.ttb_L {
    margin-top: 20px;
}

.ttb_L a {
    font-size: 20px;
}


/* 縦色変えtable */
.custom-table2 td{
    font-size: 14px;
}





#a8_banner_L {
    text-align: center;    
}


.pc-only {
    height: auto; /* 高さを自動にしてアスペクト比を維持 */
    max-width: 1000px; /* 最大幅を親要素の幅に制限 */
    display: block; /* または他の適切な表示プロパティ値 */
}

.mobile-only {
    display: none;
}


}





