* {
    box-sizing: border-box;
}

.pc {display:block;}
.tb {display:none;}
.pctb {display:block;}
.tbmb {display:none;}
.mb {display:none;}

@media screen and (min-width:600px) and (max-width: 1024px) {
.pc {display:none;}
.tb {display:block;}
.pctb {display:block;}
.tbmb {display:block;}
.mb {display:none;}
}

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, dialog, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;  
}

article, aside, dialog, figure, footer, header, hgroup, nav, section { 
  display:block;
}

ul,ol,li { 
	list-style: none; 
	zoom: normal;
	list-style-position:outside;
}

.hide { 
	display: none;
}

.clear {
    clear: both;
}

.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
    visibility:hidden;
}

.clearfix {
    *zoom: 1;
}

/* -----------------------------------
	style
 ----------------------------------- */

body {
  background:#FFFFFF;
  color: #222;
  font-size: 88%;
  font-family: Roboto, "Droid Sans", "Helvetica Neue", Helvetica, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  line-height: 1.5;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: none;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%;
  overflow-y: scroll;
  margin:0 auto;
  text-align:center;
}
/* 固定背景 */
body.top_back::before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  z-index: -2;
  width: 100%;
  height: 100vh;

  background: url(../img/top_back2.webp)
              center bottom / cover no-repeat;
}

/* 上部画像 */
.top_visual {
  background: url("../img/top_back.webp")
              center top / 100% auto no-repeat;

  padding-top: 41.67%; /* 800 ÷ 1920 × 100 */
}

body.reel_back::before {
  content:"";
  display:block;
  position:fixed;
  top:0;
  left:0;
  z-index:-1;
  width:100%;
  height:100vh;
  background:#FFF;
  background-image:url(../img/reel_back.webp);
  background-repeat:no-repeat;
  background-position:center top;
  background-size:cover;
}
body.rod_back::before {
  content:"";
  display:block;
  position:fixed;
  top:0;
  left:0;
  z-index:-1;
  width:100%;
  height:100vh;
  background:#FFF;
  background-image:url(../img/rod_back.webp);
  background-repeat:no-repeat;
  background-position:center bottom;
  background-size:cover;
}

body.lure_back::before {
  content:"";
  display:block;
  position:fixed;
  top:0;
  left:0;
  z-index:-1;
  width:100%;
  height:100vh;
  background:#FFF;
  background-image:url(../img/lure_back.webp);
  background-repeat:no-repeat;
  background-position:center top;
  background-size:cover;
}
body.seagoods_back::before {
  content:"";
  display:block;
  position:fixed;
  top:0;
  left:0;
  z-index:-1;
  width:100%;
  height:100vh;
  background:#FFF;
  background-image:url(../img/seagoods_back.webp);
  background-repeat:no-repeat;
  background-position:center top;
  background-size:cover;
}
.wear_back::before {
  content:"";
  display:block;
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:100vh;
  background:#FFF;
  background-image:url(../img/wear_back.webp);
  background-repeat:no-repeat;
  background-position:center top;
  background-size:cover;
  z-index: -2;
}
.sale_back::before {
  content:"";
  display:block;
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:100vh;
  background:#FFF;
  background-image:url(../img/sale_back.webp);
  background-repeat:no-repeat;
  background-position:center top;
  background-size:cover;
  z-index: -2;
}
.brand_back::before {
  content:"";
  display:block;
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:100vh;
  background:#FFF;
  background-image:url(../img/brand_back.webp);
  background-repeat:no-repeat;
  background-position:left top;
  background-size:cover;
  z-index: -2;
}
.info_back::before {
  content:"";
  display:block;
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:100vh;
  background:#FFF;
  background-image:url(../img/info_back.webp);
  background-repeat:no-repeat;
  background-position:center top;
  background-size:cover;
  z-index: -2;
}

@media all and (-ms-high-contrast:none){ 
	*::-ms-backdrop, body.back {background-image: url('../img/back.jpg'); background-position: center top; min-height: 100vh; background-attachment: fixed; background-size: cover;} /* IE11 */}

a {
  color: #52330B;
  outline: none;
  text-decoration: underline;
}

a:hover {
  color: #E73656;
  text-decoration: none;
}

a img:hover {
  opacity: 0.9;
  filter: alpha(opacity=90);
}

img {
  vertical-align: bottom;
}

.imgfit {
  width: 100%;
  height: 100%;
  text-align:center;
  overflow:hidden;
  position: relative;
}

.imgfit img {
	position: relative;
	width: 100%;
	height: auto;
}

.hover-alpha:hover {
  opacity: 0.8;
  filter: alpha(opacity=80);
}

/* -----------------------------------
	navi
 ----------------------------------- */

ul.itemlist{
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  width: 94%;
  max-width: 1200px;
  margin: 0 auto 20px auto;
  padding: 0;
  list-style: none;
}

ul.itemlist li{
  width: calc((100% - 60px) / 4);
  box-sizing: border-box;
}

ul.itemlist-3 {
  margin: 0 auto 30px auto;
}

ul.itemlist-3 li{
  width: calc((100% - 40px) / 3);
}

ul.itemlist li a img:hover,
ul.itemlist-3 li a img:hover {
  opacity: 1;
  filter: alpha(opacity=100);
}

ul.itemlist li img,
ul.itemlist-3 li img {
  width:100%;
  height:auto;
}

@media (max-width: 748px) {
ul.itemlist { gap: 12px; margin: 0 auto 12px auto;}
ul.itemlist-3 { margin: 0 auto 20px auto;}
ul.itemlist li { width: calc((100% - 36px) / 4);}
ul.itemlist-3 li { width: calc((100% - 24px) / 3);}
}

/* -----------------------------------
	top
 ----------------------------------- */

.title {
  background: url(../img/top_back.webp) no-repeat center top;
  background-size: 100% auto;
  width:100%;
  margin: 0 auto 2em auto;
  text-align:center;
}

@media (max-width: 1200px) {
.title { width: 100%;}
}

.title h1 {
  width: 100%;
  margin: 0 auto 1.5em auto;
  padding-top: 0;
}

.title img {
  width: 100%;
  height: auto;
}

.title-nav {
  width: 90%;
  max-width: 1000px;
  margin: -3em auto 2em auto;
}

.title-nav img {
  width: 100%;
  height: auto;
  display: block;
}

@media (max-width: 599px) {
  .title-nav { flex-direction: column; gap: 10px; width: 80%; margin-top: -11%;}
  .title-nav-left, .title-nav-right { max-width: 100%;}
  .title figure { margin-top: 0.4em;}
}

.title-nav a {
  display: block;
  overflow: hidden;
}

.top_bn {
  width: 90%;
  max-width:1200px;
  margin: 2em auto 3em auto;
  text-align:center;
}

.title-nav img,
.top_bn img {
  width: 100%;
  height: auto;
}

.top_wrap ul.itemlist {
    margin: 10px auto 15px auto;
} 

h2.item-title {
  width:94%;
  max-width:860px;
  margin:2em auto 0 auto;
  text-align:center;
}

.top-title h1 img,
.sub_title01 img,
.sub_title02 img,
h2.item-title img {
  display:inline-block;
  width:100%;
  height:auto;
}

/* -----------------------------------
	contetns
 ----------------------------------- */

.wrap {
  width: 94%;
  max-width: 1200px;
  margin: 0 auto;
  text-align:center;
}

.seagoods-wrap {
  width: 100%;
  max-width: 1322px;
}
.brand-wrap {
  width: 100%;
  max-width: 1253px;
}

.n-margin { margin-top: -2.5% !important;}
.searod-margin { margin-top: -16.5% !important;}

h1 {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding-top: 1.5em;
  text-align:center;
}

h1.seagoods-h1 {
  max-width: 1322px;
  margin-top: -3.5em !important;
  text-align:center;
}

h2 {
  width:100%;
  margin: 0 auto;
  text-align:center;
}

h1 img,
h2 img,
.wrap p img { 
  width:100%;
  height:auto;
}

ul.shop-event {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: end;
}

ul.shop-event li { 
  width: 49.33%;
  margin-bottom: 1.33%;
}

ul.shop-event li img {
  width: 100%;
  height:auto;
}

.obje-top {
  position: relative;
  display: inline-block;
  margin-top: -0.5em;
}

.bg-rod-obje {
    background-image: url("../img/rod-obje.png");
	position: absolute;
    top: -10px;
    left: -35px;
    width: 100%;
	height:400px;
    background-size: contain;
    background-repeat: no-repeat;
    z-index: 0;
}
.bg-searod-obje {
    background-image: url(../img/searod-obje.png);
    position: absolute;
    top: -40px;
    left: -65px;
    width: 56%;
    height: 340px;
    background-size: contain;
    background-repeat: no-repeat;
    z-index: 0;
}
.bg-wear-obje {
    background-image: url(../img/wear-obje.png);
    position: absolute;
    top: -40px;
    left: -65px;
    width: 90%;
    height: 300px;
    background-size: contain;
    background-repeat: no-repeat;
    z-index: 0;
}
.bg-tansui-obje {
    background-image: url(../img/tansui-obje.png);
    position: absolute;
    top: 0;
    left: -25px;
    width: 90%;
    height: 300px;
    background-size: contain;
    background-repeat: no-repeat;
    z-index: 0;
}

.obje-top img {
  position: relative;
  z-index: 1;
}

.space-05em {
  margin-top: -0.5em;
}

.space-1em {
  margin-top: -1em;
}

ul.cution{
  width: 92%;
  max-width: 1200px;
  margin: 1em auto 3em auto;
  text-align: center;
}

ul.cution-seagoods {
  margin-top: -1.1em;
}

@media (max-width: 1200px) {
ul.cution-seagoods { margin-top: -0.4em;}
}

ul.cution li{ 
  font-size: 93%;
  font-family: "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic",'Century Gothic', sans-serif; 
  font-weight: normal;
  -webkit-text-stroke: 4px white;
  paint-order:stroke fill;
  text-align: left;
}

ul.cution li.space{  
  background-color: rgba(255, 255, 255, 0.9);
  padding: 0.8em;
}

ul.cution li.wear-cution {
  padding: 1em 3em 1.5em 3em;
}

ul.box-cution{
  background:rgba(255,255,255,0.8);
  width:100%;
  max-width: 1200px;
  margin:0 auto;
  text-align:center;
  box-sizing: border-box;
}
ul.box-cution li{
  font-size:93%;
  font-weight:normal;
  line-height:1.4;
  text-align:left;
  padding:0.8em;
  box-sizing: border-box;
}

/* -----------------------------------
	info
 ----------------------------------- */

h1.infomation { 
  width: 70%; 
  max-width: 606px;
  margin: 1.8em auto;
}

h1.infomation img { 
  width: 100%; 
  height: auto;
}

.info-wrap { 
  background:rgba(255,255,255,1);
  width:92%; 
  max-width: 1240px;
  margin: 0 auto 1.5em auto;
  padding:0 20px 20px 20px;
  box-sizing: border-box;
}

.info-box {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  text-align:center;
}

.info-app ul,
.info-02 ul,
.info-03 ul,
.info-04 ul,
.info-onair ul {
  width:100%;
  display: flex;
  justify-content: space-between;
  margin-bottom: 10px;
}

.info-app ul li.left {
  width: 67.33%;
  max-width: 1562px;
}

.info-app ul li.right {
  width: 32.67%;
  max-width: 758px;
}

.info-01 ul {
  padding-top: 20px;
}

.info-01 ul li {
  width: 100%;
  max-width: 1200px;
}

.info-02 ul {
  margin-bottom: 0;
}

.info-02 ul li.left {
  width: 65.25%;
  max-width: 783px;
}

.info-02 ul li.right {
  width: 33.75%;
  max-width: 405px;
}

.info-03 ul li.left {
  width: 65.25%;
  max-width: 783px;
}
.info-03 ul li.right {
  width: 33.75%;
  max-width: 405px;
}

.info-03 ul li.right ul li:first-child {
 margin-bottom:10px;
}

.info-03 ul li.left ul,
.info-03 ul li.right ul {
  display: flex;
  flex-direction: column;
  margin-bottom: 0;
}

.info-04 ul li.left {
  width: 25.83%;
  max-width: 310px;
}
.info-04 ul li.middle {
  width: 38.75%;
  max-width: 465px;
}
.info-04 ul li.right {
  width: 33.33%;
  max-width: 400px;
}

.info-onair ul li {
  display:block;
}

.info-onair ul li.n01 {
  width: 14.33%;
  max-width: 344px;
}
.info-onair ul li.n02 {
  width: 42.50%;
  max-width: 1020px;
}
.info-onair ul li.n03 {
  width: 15.42%;
  max-width: 370px;
}
.info-onair ul li.n04 {
  width: 12.33%;
  max-width: 296px;
}
.info-onair ul li.n05 {
  width: 15.42%;
  max-width: 370px;
}

.info-box img {
  width:100%;
  height:auto;
}

.visit {
  background: #D9E7E6;
  width:100%;
  max-width: 1200px;
  margin:0 auto 1em auto;
  text-align:center;
}

.visit h2 {
  margin-bottom: 0.5em;
}

.overclub {
  width:100%;
}

.overclub ul {
  width:100%;
  max-width: 1200px;
  margin:0 auto;
  text-align:center;
}

.overclub ul img {
  width:100%;
  height:auto;
}

@media (min-width:768px) and (max-width:1024px) {
.info-01 {margin-top:20px;}
.info_wrap { max-width:96%; padding:2%;}
h1.infomation img { width: auto; height: 40px;}
}

/* -----------------------------------
	footer
 ----------------------------------- */

.footer-box {
  width: 100%;
  padding: 1.8em 0 0.8em 0;
  background: #231815;
}

.footer-box-top {
  background: rgba(47, 45, 44, 1);
}

.footer {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  width: 90%;
  max-width: 1200px;
  margin: 0 auto 10px auto;
  text-align: center;
  z-index: 1; /* 背景より上に */
}

.footer_side {
  display: flex;
  justify-content: flex-start;
  width: 15%;
  max-width: 199px;
}

.footer_main {
  flex: 1;
}

ul.shop-list {
  width: 100%;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  flex-wrap: wrap;
  justify-content: space-between; 
  align-items: center;
  margin:0 auto;
}

ul.shop-list li {
  display:flex;
}

ul.shop-list li:nth-child(-n+4){
  margin-bottom:10px;
}

.footer_side img {
  width: 100%;
  max-width: 140px;
  height: auto;
}

.footer_main picture img {
  transform: scale(0.5);
  transform-origin: left top;
}

.temporary {
  width: 94%;
  max-width: 1200px;
  margin:1em auto 2.5em auto;
}

.temporary img {
  display:inline-block;
  width: 100%;
  height:auto;
}

.footer_shop-info {
  width: 100%;
}

.footer_shop-info div {
  width: 94%;
  position:relative;
  display:inline-block;
  padding: 0.8em 0;
}

.footer_shop-info img {
  display:inline-block;
  width: 100%;
  max-width: 1200px;
  height:auto;
}

/* ページTOPに戻る */
.pagetop{
  display: none;
  position: fixed;
  right: 15px;
  bottom: 54px;
}

.pagetop a{
  display: block;
  font-size: 0;
  width: 50px;
  height: 50px;
  text-align: center;
  background: #004098;
  border-radius: 50%;
  line-height: 50px;
}

.pagetop a i{
  font-size: 20px;
  color:#fff;
  line-height: 50px;
}

@media (min-width:981px) and (max-width:1256px) {
  .footer{ align-items: center;}
  .footer_side { margin: 1em 3% 0 0;}
}

@media screen and (max-width:980px) {
.footer{
  width: 100%;
  margin:0 auto 0 auto;
  flex-direction: column;
  flex-wrap: wrap;
}
.footer_side {
  width: 80%;
  max-width: 120px;
  margin:0 auto 1.5em auto;
}
.footer-left{
  flex-direction: column;
  flex-wrap: wrap;
  width: 100%;
  margin-right:0;
  padding:1em 0;
}
.footer-right{
  width: 100%;
  padding:1em 0;
}
ul.shop-list {
  width: 94%;
  display:flex;
  justify-content: center; 
  margin: 0 auto;
}
ul.shop-list li {
  margin-left: 2%;
  margin-bottom: 2%;
}
ul.shop-list li:first-child {
  display:block;
  width: 90%;
  margin: 0 auto 2% auto;
  text-align: center;
}
}

@media (min-width:1188px) and (max-width:1300px) {
ul.shop-list li a img { width: auto; height:48px;}
}
@media (min-width:1090px) and (max-width:1189px) {
ul.shop-list li a img { width: auto; height:44px;}
}
@media (min-width:980px) and (max-width:1089px) {
ul.shop-list li a img { width: auto; height:40px;}
}
@media (min-width:856px) and (max-width:979px) {
ul.shop-list li a img { width: auto; height:52px;}
}
@media (min-width:600px) and (max-width:855px) {
ul.shop-list li a img { width: auto; height:40px;}
}

/*-----------------------------------------------
 __margin_padding
-----------------------------------------------*/

.mt0{ margin-top:0 !important;}
.mt05{ margin-top:5px !important;}
.mt10{ margin-top:10px !important;}
.mt15{ margin-top:15px !important;}
.mt20{ margin-top:20px !important;}
.mt25{ margin-top:25px !important;}
.mt30{ margin-top:30px !important;}
.mt40{ margin-top:40px !important;}

.mb0{ margin-bottom:0px !important;}
.mb05{ margin-bottom:5px !important;}
.mb08{ margin-bottom:8px !important;}
.mb10{ margin-bottom:10px !important;}
.mb12{ margin-bottom:12px !important;}
.mb15{ margin-bottom:15px !important;}
.mb20{ margin-bottom:20px !important;}
.mb25{ margin-bottom:25px !important;}
.mb30{ margin-bottom:30px !important;}
.mb40{ margin-bottom:40px !important;}
.mb50{ margin-bottom:50px !important;}

.pt0{ padding:0 0 0 0 !important;}
.pt05{ padding-top:5px !important;}
.pt10{ padding-top:10px !important;}
.pt20{ padding-top:20px !important;}
.pt30{ padding-top:30px !important;}

.pb05{ padding-bottom:5px !important;}
.pb10{ padding-bottom:10px !important;}
.pb12{ padding-bottom:12px !important;}
.pb20{ padding-bottom:20px !important;}
.pb30{ padding-bottom:30px !important;}
.pb40{ padding-bottom:40px !important;}

hr {
  background-image: url(../img/line.png);
  border: 0;
  height: 16px;
  margin:0;
}

.border {
  clear:both;
  float:left;
  width:100%;
  background:#888888;
  height: 2px;
  border: 0px none;
  margin-bottom:50px !important;
}

/*-----------------------------------------------
 __position
-----------------------------------------------*/

.center{ margin:0 auto; text-align:center;}
.nav-back{background-color:#005BAC;padding:25px 0 6px 0;}
.red{color:#E60013;}