@charset "UTF-8";
* { margin: 0; padding: 0; }

a { text-decoration: none; cursor: pointer; }

html { width: auto; height: 100%; }

body { display: flex; flex-direction: column; flex-wrap: nowrap; justify-content: flex-start; align-items: stretch; min-width: fit-content; min-height: 100%; color: #333333; font-family: "メイリオ", Meiryo, "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", sans-serif; line-height: 1.5; }

.u-mt15 { margin-top: 15px !important; }

.u-mb15 { margin-bottom: 15px !important; }

.article-Wrapper { width: 1280px; margin: 30px auto; padding: 0 10px; box-sizing: border-box; }

.article-Container { display: flex; flex-direction: row; flex-wrap: nowrap; justify-content: space-between; width: 100%; box-sizing: border-box; }

.article-MainContainer { width: 827px; }

.article-SideContainer { width: 406px; }

.article-MainContainerCenter { width: 1040px; margin: 0 auto; }

.article-BannerWrapper { position: relative; width: 406px; margin: auto; padding: 20px 0; background-color: #eeeeee; text-align: center; }
.article-BannerWrapper:after { content: "- PR -"; position: absolute; inset: auto 0 0 0; margin: auto; box-sizing: border-box; text-align: center; color: #999999; font-size: 12px; font-weight: bold; line-height: 20px; }

.article-DoubleBannerWrapper { position: relative; width: 100%; margin: auto; padding: 20px 0; background-color: #eeeeee; text-align: center; display: flex; justify-content: center; flex-direction: row; flex-wrap: nowrap; align-items: flex-start; box-sizing: border-box; }
.article-DoubleBannerWrapper:after { content: "- PR -"; position: absolute; inset: auto 0 0 0; margin: auto; box-sizing: border-box; text-align: center; color: #999999; font-size: 12px; font-weight: bold; line-height: 20px; }

.article-BillboardBannerWrapper { position: relative; width: 100%; margin: auto; padding: 20px 0; background-color: #eeeeee; text-align: center; }
.article-BillboardBannerWrapper:after { content: "- PR -"; position: absolute; inset: auto 0 0 0; margin: auto; box-sizing: border-box; text-align: center; color: #999999; font-size: 12px; font-weight: bold; line-height: 20px; }

.article-StickyBannerWrapper { position: relative; width: 406px; margin: auto; padding: 20px 0; background-color: #eeeeee; text-align: center; position: sticky; top: 20px; display: flex; justify-content: center; }
.article-StickyBannerWrapper:after { content: "- PR -"; position: absolute; inset: auto 0 0 0; margin: auto; box-sizing: border-box; text-align: center; color: #999999; font-size: 12px; font-weight: bold; line-height: 20px; }

.article-Banner336x280 { position: relative; display: inline-block; z-index: 0; min-width: 300px; min-height: 250px; margin: 0; text-align: center; }
.article-Banner336x280 div { margin-right: auto; margin-left: auto; }
.article-Banner336x280 img { width: auto; }
.article-Banner336x280:nth-of-type(n+2) { margin-left: 35px; }

.article-Banner300x600 { position: relative; display: inline-block; z-index: 0; min-width: 300px; min-height: 600px; margin: 0; text-align: center; }
.article-Banner300x600 div { margin-right: auto; margin-left: auto; }
.article-Banner300x600 img { width: auto; }

.article-BillboardBanner { position: relative; display: inline-block; z-index: 0; min-width: 970px; min-height: 250px; margin: 0; text-align: center; }
.article-BillboardBanner div { margin-right: auto; margin-left: auto; }
.article-BillboardBanner img { width: auto; }

.article-Header { width: 100%; margin: 0 auto; border-bottom: 1px solid #dddddd; box-sizing: border-box; }

.article-Header_Inner { display: flex; flex-direction: row; flex-wrap: nowrap; justify-content: space-between; align-items: center; width: 1280px; height: 70px; margin: auto; padding: 0 10px; box-sizing: border-box; }

.article-Header_IconWrapper { display: flex; flex-direction: row; flex-wrap: nowrap; justify-content: flex-start; align-items: center; padding-top: 4px; }

.article-Header_Icon-home { display: flex; flex-direction: column; flex-wrap: nowrap; justify-content: center; align-items: center; margin-right: 0; }

.article-Header_Icon-list { display: flex; flex-direction: column; flex-wrap: nowrap; justify-content: center; align-items: center; margin-right: 18px; }

.article-Header_Icon-history { display: flex; flex-direction: column; flex-wrap: nowrap; justify-content: center; align-items: center; margin-right: 14px; }

.article-Header_IconImage { display: block; margin: 0 auto; height: 26px; fill: currentColor; }

.article-Header_IconText { display: block; margin-top: 2px; font-size: 10pt; font-weight: bold; }

.article-Footer { margin-top: auto; background-color: #dddddd; text-align: center; }

.article-Footer_Credit { padding: 20px 0; color: #333333; font-size: 13px; line-height: 1.5; }

.article-Footer_Link { display: flex; align-items: center; justify-content: center; height: 30px; }

.article-Footer_LinkInner { color: #333333; }
.article-Footer_LinkInner:hover { opacity: 0.7; transition: all 0.2s; }

.article-SubBox { padding: 10px 5px 15px; border-top: 1px solid #dddddd; }

.article-SubBox_Stamp { padding: 0 5px 15px; }

.article-SubBox_StampCountAfter { margin-top: 15px; padding: 10px 0; border-radius: 2px; background-color: #dddddd; color: #333333; font-size: 15px; font-weight: bold; text-align: center; }

.article-SubBox_Category { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: flex-start; align-items: stretch; list-style: none; width: 100%; margin-top: 15px; border-left: 1px solid #dddddd; border-top: 1px solid #dddddd; }

.article-SubBox_CategoryItem { width: 50%; border-right: 1px solid #dddddd; border-bottom: 1px solid #dddddd; box-sizing: border-box; text-align: center; }

.article-SubBox_CategoryItemInner { display: flex; flex-direction: column; flex-wrap: nowrap; justify-content: center; align-items: center; width: 100%; height: 100%; padding: 10px; box-sizing: border-box; }
.article-SubBox_CategoryItemInner:hover { opacity: 0.7; transition: all 0.2s; }

.article-SubBox_CategoryItemName { color: #333333; font-size: 15px; line-height: 2; }

.article-SubBox_CategoryItemNumber { color: #999999; font-size: 12px; line-height: 1.6; }
