@charset "UTF-8";
/* CSS Document */





.contentsMainImage{
	width:100%;
	position:relative;
}

.contentsMainImage h2.contentsTitle{
	line-height:1;
	font-family: "NeueHelveticaforSpeedo-Bd";
	font-size:5.3em;
	width:90%;
	letter-spacing:0.02em;
	margin:0 auto;
	text-align:center;
}


.contentsMainTitleLine{
	width:100%;
	position:relative;
	background:#a2b2c3;
}

.contentsMainTitleLine h2.contentsTitle{
	line-height:1;
	font-family: "NeueHelveticaforSpeedo-Bd";
	font-size:4.7em;
	width:90%;
	letter-spacing:0.02em;
	margin:0 auto;
	text-align:left;
	max-width:980px;
	color:#FFF;
	padding:50px 0 47px;
}

.news .contentsMainTitleLine h2.contentsTitle{
	max-width:1200px;
}





/**/
.athletes .contentsMainImage{
	background:url(../athletes/images/mainimg.jpg) center center no-repeat;
	background-size:cover;
}
.athletes .contentsMainImage h2.contentsTitle{
	padding:13% 0;
	color:#FFF;
}

/**/
.history .contentsMainImage{
	background:url(../history/images/mainimg.jpg) center bottom no-repeat;
	background-size:cover;
}
.history .contentsMainImage h2.contentsTitle{
	padding:15% 0;
	color:#0A1317;
}

/**/
.support .contentsMainImage{
	background:url(../support/images/mainimg.jpg) center center no-repeat;
	background-size:cover;
}
.support .contentsMainImage h2.contentsTitle{
	padding:13% 0;
	color:#FFF;
}








@media (min-width: 1300px) {

.athletes .contentsMainImage h2.contentsTitle{padding:170px 0;}
.support .contentsMainImage h2.contentsTitle{padding:170px 0;}
.history .contentsMainImage h2.contentsTitle{padding:195px 0;}
}

@media (max-width: 768px) {
.contentsMainImage h2.contentsTitle{font-size:4.5em;}
.contentsMainTitleLine h2.contentsTitle{font-size:4.0em;text-align:center;}

}

@media (max-width: 720px) {
.athletes .contentsMainImage h2.contentsTitle{padding:19% 0;}
.support .contentsMainImage h2.contentsTitle{padding:19% 0;}
.history .contentsMainImage h2.contentsTitle{padding:19% 0;}
}

@media (max-width: 540px) {

.contentsMainImage h2.contentsTitle{font-size:3.0em;}

.contentsMainTitleLine h2.contentsTitle{font-size:2.8em;padding:35px 0;}


.athletes .contentsMainImage h2.contentsTitle{padding:25% 0;}
.support .contentsMainImage h2.contentsTitle{padding:25% 0;}
.history .contentsMainImage h2.contentsTitle{padding:27% 0;}

}







/* =============================== ATHLETES =================================== */


.athletes{
	padding-bottom:0;
}

.athletes .japanAthletes{
	width:92%;
	max-width:1200px;
	margin:80px auto 0;
	overflow:hidden;
	border-bottom:2px solid #989898;

}
.athletes .japanAthletes h2{
	font-family: "NeueHelveticaforSpeedo-Bd";
	text-align:center;
	font-size:3.2em;
	line-height:1.2;
	letter-spacing:0.02em;
	padding-bottom:80px;
}



.athletes .Ambassador{
	width:92%;
	max-width:1200px;
	margin:80px auto 0;
	overflow:hidden;
	border-bottom:2px solid #989898;

}
.athletes .Ambassador h2{
	font-family: "NeueHelveticaforSpeedo-Bd";
	text-align:center;
	font-size:3.2em;
	line-height:1.2;
	letter-spacing:0.02em;
	padding-bottom:80px;
}


.athletes .globalAthletes{
	width:92%;
	max-width:1200px;
	margin:80px auto 0;
	overflow:hidden;
}

.athletes .globalAthletes h2{
	font-family: "NeueHelveticaforSpeedo-Bd";
	text-align:center;
	font-size:3.2em;
	line-height:1.2;
	letter-spacing:0.02em;
	padding-bottom:80px;
}




.athletes ul.athCol-2{
	width:103%;
	font-size:0;
}
.athletes ul.athCol-2 li{
	width:47%;
	margin-right:3%;
	font-size:12px;
	display:inline-block;
	padding-bottom:50px;
	vertical-align:top;
	text-align:left;
}
.athletes ul.athCol-2 h3{
	font-family: "NeueHelveticaforSpeedo-Bd";
	line-height:1.0;
	padding-bottom:0.2em;
	font-size:2.2em;
	margin:15px 0 0 0;
}
.athletes ul.athCol-2 h4{
	color:#71859D;
	line-height:1.2;
	font-size:1.1em;
	padding-bottom:1em;
}
.athletes ul.athCol-2 p{
	font-size:1.1em;
    line-height: 1.5;
}



.athletes .officialHP{
	margin-top:0.5em;
}
.athletes .officialHP i{
	margin-right:5px;
}
.athletes .officialHP a{
	display:inline-block;
}




@media (max-width: 768px) {

.athletes .japanAthletes{width:85%;margin-top:10%;}
.athletes .Ambassador{width:85%;margin-top:10%;}
.athletes .globalAthletes{width:85%;margin-top:10%;}

.athletes .japanAthletes h2{font-size:3.0em;padding-bottom:10%;}
.athletes .Ambassador h2{font-size:3.0em;padding-bottom:10%;}
.athletes .globalAthletes h2{font-size:3.0em;padding-bottom:10%;}

.athletes ul.athCol-2{width:100%;font-size:0;}
.athletes ul.athCol-2 li{width:100%;margin-right:0%;}


}


@media (max-width: 540px) {
.athletes .japanAthletes{width:90%;margin-top:12%;}
.athletes .Ambassador{width:90%;margin-top:12%;}
.athletes .globalAthletes{width:90%;margin-top:12%;}

.athletes .japanAthletes h2{font-size:2.7em;padding-bottom:12%;}
.athletes .Ambassador h2{font-size:2.7em;padding-bottom:12%;}
.athletes .globalAthletes h2{font-size:2.7em;padding-bottom:12%;}

.athletes ul.athCol-2 h3{font-size:2.0em;}
.athletes ul.athCol-2 p{font-size:1.05em;}

}


@media (max-width: 450px) {
.athletes .japanAthletes h2{font-size:2.4em;}
.athletes .Ambassador h2{font-size:2.4em;}
.athletes .globalAthletes h2{font-size:2.4em;}

.athletes ul.athCol-2 h3{font-size:1.8em;}
.athletes ul.athCol-2 p{font-size:1.0em;}


}




/* =============================== ATHLETES OLD =================================== */

/*


.athletes .japanAthletes{
	width:94%;
	max-width:1200px;
	margin:80px auto 0;
	overflow:hidden;
}
.athletes .japanAthletes h2{
	font-family: "NeueHelveticaforSpeedo-Bd";
	text-align:center;
	font-size:3.2em;
	line-height:1.2;
	letter-spacing:0.02em;
	padding-bottom:80px;
}


.athletes .Ambassador{
	width:94%;
	max-width:1200px;
	margin:120px auto 0;
	overflow:hidden;
}
.athletes .Ambassador h2{
	font-family: "NeueHelveticaforSpeedo-Bd";
	text-align:center;
	font-size:3.2em;
	line-height:1.2;
	letter-spacing:0.02em;
	padding-bottom:80px;
}


.athletes .globalAthletes{
	width:94%;
	max-width:1200px;
	margin:120px auto 0;
	overflow:hidden;
}

.athletes .globalAthletes h2{
	font-family: "NeueHelveticaforSpeedo-Bd";
	text-align:center;
	font-size:3.2em;
	line-height:1.2;
	letter-spacing:0.02em;
	padding-bottom:40px;
}


.athletes .Ambassador .officialHP{
	margin-top:0.5em;
}
.athletes .Ambassador .officialHP i{
	margin-right:5px;
}


.athletes ul.athCol-2{
	width:103%;
	font-size:0;
}
.athletes ul.athCol-2 li{
	width:47%;
	margin-right:3%;
	font-size:12px;
	display:inline-block;
	border-bottom:2px solid #989898;
	padding-bottom:20px;
	vertical-align:top;
	text-align:left;
}
.athletes ul.athCol-2 h3{
	font-family: "NeueHelveticaforSpeedo-Bd";
	line-height:1.0;
	padding-bottom:0.2em;
	font-size:2.2em;
	margin:15px 0 0 0;
}
.athletes ul.athCol-2 h4{
	color:#71859D;
	line-height:1.2;
	font-size:1.2em;
	padding-bottom:1em;
}
.athletes ul.athCol-2 p{
	font-size:1.1em;
}



.athletes ul.athCol-3-2{
	width:103%;
	font-size:0;
}
.athletes ul.athCol-3-2 li{
	width:30.3333333%;
	margin-right:3%;
	font-size:12px;
	display:inline-block;
	border-bottom:2px solid #989898;
	padding-bottom:20px;
	vertical-align:top;
	text-align:left;
}
.athletes ul.athCol-3-2 h3{
	font-family: "NeueHelveticaforSpeedo-Bd";
	line-height:1.0;
	padding-bottom:0.2em;
	font-size:2.2em;
	margin:15px 0 0 0;
}
.athletes ul.athCol-3-2 h4{
	color:#71859D;
	line-height:1.2;
	font-size:1.2em;
	padding-bottom:1em;
}
.athletes ul.athCol-3-2 p{
	font-size:1.1em;
}







.athletes ul.athCol-3{
	width:103%;
	font-size:0;
}
.athletes ul.athCol-3 li{
	width:30.3333333%;
	margin-right:3%;
	margin-top:3%;
	font-size:12px;
	display:inline-block;
	vertical-align:top;
	text-align:left;
}
.athletes ul.athCol-3 .spec{
	background:#E9EEF5;
	padding:15px;
	box-sizing:border-box;

}

.athletes ul.athCol-3 h3{
	font-family: "NeueHelveticaforSpeedo-Bd";
	line-height:1.0;
	font-size:2.0em;
	padding-bottom:0.15em;
}
.athletes ul.athCol-3 h4{
	color:#71859D;
	line-height:1.2;
	font-size:1.1em;
	padding-bottom:0.7em;
}
.athletes ul.athCol-3 p{
}




@media (max-width: 980px) {
}

@media (max-width: 768px) {
.athletes .globalAthletes{margin-top:100px;}
.athletes ul.athCol-3-2 li{width:47%; margin-bottom:40px;}
.athletes .Ambassador{margin-top:80px;}
}

@media (max-width: 720px) {
.athletes .japanAthletes{width:90%;margin-top:70px;}
.athletes .japanAthletes h2{font-size:2.8em;}
.athletes .japanAthletes h2{font-size:2.8em;padding-bottom:50px;}

.athletes .globalAthletes{width:90%;margin-top:80px;}
.athletes .globalAthletes h2{font-size:2.8em;}

.athletes .Ambassador{width:90%;margin-top:80px;}
.athletes .Ambassador h2{font-size:2.8em;padding-bottom:50px;}


.athletes ul.athCol-2{width:100%;}
.athletes ul.athCol-2 li{width:100%;margin:30px 0 0;}
.athletes ul.athCol-2 li:first-child{margin:0;}

.athletes ul.athCol-3-2{width:100%;}
.athletes ul.athCol-3-2 li{width:100%;margin:30px 0 0;}
.athletes ul.athCol-3-2 li:first-child{margin:0;}


.athletes ul.athCol-3 li{width:47%;}

.athletes ul.athCol-3 h3{font-size:1.8em;padding-top:0.1em;}



}

@media (max-width: 540px) {
.athletes ul.athCol-2 li{text-align:center;border-bottom:none;}
.athletes ul.athCol-2 .spec{text-align:left;width:90%;margin:0 auto;}
.athletes ul.athCol-2 h3{margin:20px 0 0 0;}

.athletes ul.athCol-3-2 li{text-align:center;border-bottom:none;}
.athletes ul.athCol-3-2 .spec{text-align:left;width:90%;margin:0 auto;}
.athletes ul.athCol-3-2 h3{margin:20px 0 0 0;}

.athletes .japanAthletes{width:100%;margin-top:50px;}
.athletes .japanAthletes h2{font-size:2.5em;padding-bottom:45px;}


.athletes .globalAthletes{width:100%;margin-top:30px;padding-top:40px;border-top:1px solid #CCC;}
.athletes .globalAthletes h2{font-size:2.5em;padding-bottom:40px;}

.athletes .Ambassador{width:100%;margin-top:30px;padding-top:40px;border-top:1px solid #CCC;}
.athletes .Ambassador h2{font-size:2.5em;padding-bottom:45px;}

.athletes ul.athCol-3{width:101%;}
.athletes ul.athCol-3 li{width:49%;margin-right:1%;margin-top:1%;}

.athletes ul.athCol-3 h3{text-align:center;font-size:1.6em;}
.athletes ul.athCol-3 h4{text-align:center;font-size:1.05em;}
}

@media (max-width: 360px) {

}




*/




/* =============================== SUPPORT =================================== */




.support .spportList{
	width:94%;
	max-width:1200px;
	margin:60px auto 0;
	overflow:hidden;
}
.support .spportList > ul{
	width:104%;
	text-align:left;
	font-size:0;
}
.support .spportList > ul > li{
	width:46%;
	margin-right:4%;
	margin-bottom:60px;
	display:inline-block;
	font-size:12px;
	vertical-align:top;
}

.support .spportList h3{
	font-size:1.5em;
	font-weight:bold;
	padding:1em 0 0.5em;
}

.support .spportList p{
	font-size:1.1em;
	line-height:1.6;
	padding-bottom:0.6em;
}

.support .spportList p i{
	padding-right:0.3em;
}
.support .spportList a{
	display:inline-block;
}


@media (max-width: 980px) {
.support .spportList > ul{width:103%;}
.support .spportList > ul > li{width:47%;margin-right:3%;margin-bottom:50px;}

}
@media (max-width: 768px) {
.support .spportList{margin-top:3%;}
.support .spportList > ul > li{margin-bottom:5%;}
}
@media (max-width: 720px) {
.support .spportList{ width:90%;margin-top:5%;}
.support .spportList > ul{width:100%;}
.support .spportList > ul > li{width:100%;margin-right:0;margin-bottom:7%;}
}
@media (max-width: 540px) {
.support .spportList{margin-top:9%;}
.support .spportList h3{font-size:1.3em;}
.support .spportList p{line-height:1.5;}
.support .spportList > ul > li{margin-bottom:9%;}
}



/* =============================== History =================================== */


.main.history{
	background:url(../history/images/center_line.png) top center repeat-y;
}




.history .chronology{
	width:90%;
	max-width:1200px;
	margin:80px auto 30px;
}
.history .chronology .yearBox{
	width:45%;
	font-size:1.2em;
	position:relative;
}
.history .chronology .yearBox.red{
	color:#EE3224;
}
.history .chronology .yearBox h3{
	font-family: "NeueHelveticaforSpeedo-Bd";
	font-size:5.0em;
	color:#4B4747;
	line-height:1.0;
	padding-bottom:0.15em;
}
.history .chronology .yearBox p{
	line-height:1.6;
}
.history .chronology .yearBox.red h3{
	color:#EE3224;
}
.history .chronology .yearBox .hisImage{
	margin-top:20px;
}
.history .chronology .yearBox.right{
	float:right;
}
.history .chronology .yearBox.left{
	float:left;
}


.history .y1928{margin-top:0px;}
.history .y1956{margin-top:170px;}
.history .y1968{margin-top:70px;}
.history .y1972{margin-top:100px;}
.history .y1996{margin-top:100px;margin-bottom:300px;}
.history .y2000{margin-top:80px;}
.history .y2004{margin-top:90px;}
.history .y2008{margin-top:-90px;}
.history .y2008 .hisImage{
	width:50%;
	max-width:260px;
	position:relative;
	top:-50px;
	left:-100px;
}
.history .y2012{margin-top:90px;}
.history .y2014{margin-top:140px;}

.history .y2018{margin-top:40px;}

.anniversary75{display:none;}





@media (max-width: 980px) {
.history .chronology{margin:60px auto 20px;}
.history .chronology .yearBox h3{font-size:4.5em;}


.history .y1956{margin-top:120px;}
.history .y1968{margin-top:60px;}
.history .y1972{margin-top:90px;}
.history .y1996{margin-top:80px;margin-bottom:240px;}
.history .y2000{margin-top:70px;}
.history .y2004{margin-top:80px;}
.history .y2008{margin-top:-70px;margin-bottom:100px;}
.history .y2008 .hisImage{left:-90px;}
.history .y2012{margin-top:80px;}
.history .y2014{margin-top:30px;}

}

@media (max-width: 768px) {
.history .chronology{margin:60px auto 0px;}
.history .chronology .yearBox{font-size:1.1em;}

.history .y1996{margin-top:80px;margin-bottom:200px;}
.history .y2008 .hisImage{left:-70px;}
.history .y2012{margin-top:50px;}
}



@media (max-width: 720px) {
.main.history{background:none;}

.history .chronology .yearBox{width:100%;font-size:1.2em;}
.history .chronology .yearBox h3{
	text-align:center;
	padding-bottom:0.3em;
}
.history .chronology .yearBox .hisImage{
	width:80%;
	margin:20px auto 0;
}


.history .chronology .yearBox.right{float:none;}
.history .chronology .yearBox.left{float:none;}

.history .y1928,
.history .y1956,
.history .y1968,
.history .y1972,
.history .y1996,
.history .y2000,
.history .y2004,
.history .y2008,
.history .y2012,
.history .y2014,
.history .y2018{margin:80px 0 0;}

.history .y2008 .hisImage{display:none;}

.anniversary75{
	display:block;
	width:40%;
	margin:80px auto 0;
}

}



@media (max-width: 540px) {

.history .chronology .yearBox h3{font-size:3.5em;}
.history .chronology .yearBox .hisImage{width:100%;}
.history .y1928,
.history .y1956,
.history .y1968,
.history .y1972,
.history .y1996,
.history .y2000,
.history .y2004,
.history .y2008,
.history .y2012,
.history .y2014{margin:60px 0 0;}

.anniversary75{margin:60px auto 0;}
}








/* =============================== shopList =================================== */

.shoplist .topBox{
	margin-top:60px;
}
.shoplist .topBox h2{
	font-family: "NeueHelveticaforSpeedo-Bd";
	font-size:3.8em;
	line-height:1.2;
	padding-bottom:0.15em;
	text-align:center;
}




.shoplist h2.contentsTitle a{
	font-family: "NeueHelveticaforSpeedo-Bd";
	color:#FFF;
}

.shoplist h2.contentsTitle a:hover{
	color:#FFF;
}




.shoplist .topBox h3{
	color: #71859D;
	text-align:center;
	font-size:1.4em;
}




.topSpeedoShop{
	width:90%;
	max-width:980px;
	margin:0 auto;
	overflow:hidden;
}
ul.speedoShopList{
	width:103%;
	font-size:0px;
	margin-top:40px;
}

ul.speedoShopList li{
	width:47%;
	margin-right:3%;
	margin-bottom:3%;
	background:#E9EEF5;
	font-size:12px;
	display:inline-block;
	vertical-align:top;
}
ul.speedoShopList li .spec{
	padding:15px;
	box-sizing:border-box;
}
ul.speedoShopList li h4{
	font-weight:bold;
	font-size:1.2em;
	padding-bottom:0.5em;
}

ul.speedoShopList li .map{
	display:inline-block;
	font-size:2.5em;
	line-height:1.0em;
	margin-top:10px;
}







.topJapanShop{
	width:100%;
	margin-bottom:70px;
}

.topJapanShop .searchBox{
	width:100%;
	background:#42515B;
	padding:50px 0 80px;
	margin-top:40px;
}

.topJapanShop .searchBox .searchInner{
	width:90%;
	max-width:980px;
	margin:0 auto;
}

.topJapanShop .searchBox h4{
	font-family: "NeueHelveticaforSpeedo-Bd";
	font-size:2.5em;
	text-align:center;
	color:#FFF;
	padding-bottom:15px;
}


.topJapanShop .areaSearch{
	width:50%;
	box-sizing:border-box;
	float:left;
}

.topJapanShop .keywordSearch{
	width:50%;
	box-sizing:border-box;
	float:right;
}

.topJapanShop .areaSearch .innerBox,
.topJapanShop .keywordSearch .innerBox{
	width:92%;
	max-width:400px;
	margin:0 auto;
}




/* Select */

.selectSkin{
	position:relative;
	display:inline-block;
    overflow:hidden;
    z-index:0;
	width:100%;
}
.selectSkin:after {
    content: "";
    position:absolute;
    display:block;
    width:0;
    height:0;
    top:50%;
    right:0.6em;
	font-size:18px;
    margin-top:-0.2em;
    border-width:0.45em 0.3em;
    border-style:solid;
    border-color:#000 transparent transparent;
    z-index:10;
}
.selectSkin select{
    -webkit-appearance:none;
    -moz-appearance:none;
    appearance:none;
    padding:0 1.8em 0em 1em;
	height:3em;
	border:none;
	box-sizing:border-box;
    background:#FFF;
	-webkit-border-radius:5px;
	   -moz-border-radius:5px;
	    -ms-border-radius:5px;
	        border-radius:5px;
	font-size:15px;
	line-height:1.5;
    outline: none;
	width:100%;
	-webkit-box-sizing:border-box;
	   -moz-box-sizing:border-box;
	        box-sizing:border-box;
}
.ie8 .selectSkin select{padding-right:0.3em;}
.ie9 .selectSkin select{padding-right:0.3em;}

.selectSkin select:focus{}
.selectSkin select::-ms-expand {display:none;}
.selectSkin select::-moz-focus-inner {border:0;}
.selectSkin select * {}




.shoplist input[type="text"]{
	background:#FFF;
	font-size:15px;
	line-height:1.5;
	width:75%;
	border:none;
	box-sizing:border-box;
	padding:0 1em 0em 1em;
	height:3em;
	-webkit-border-radius:5px;
	   -moz-border-radius:5px;
	    -ms-border-radius:5px;
	        border-radius:5px;
}

.shoplist input[type="submit"]{
	background:#0A1317;
	color:#FFF;
	font-size:15px;
	line-height:1.5;
	padding:0;
	box-sizing:border-box;
	height:3em;
	width:23%;
	float:right;
	-webkit-border-radius:5px;
	   -moz-border-radius:5px;
	    -ms-border-radius:5px;
	        border-radius:5px;
}

input[type="text"],
input[type="submit"],
input[type="button"]{
  -webkit-appearance:button;
  appearance:button;
  cursor: pointer;
  font-family:sans-serif;
  -webkit-box-sizing:border-box;
	   -moz-box-sizing:border-box;
	        box-sizing:border-box;
}
input[type="text"]::-webkit-search-decoration,
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="text"]::focus,
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}



/* ===== shopList result ===== */


.resultSearch{
	width:100%;
}

.resultSearch .searchBox{
	width:100%;
	background:#42515B;
	padding:25px 0 25px;
}
.resultSearch .searchBox .searchInner{
	width:90%;
	max-width:650px;
	margin:0 auto;
}
.resultSearch .areaSearch{
	width:50%;
	box-sizing:border-box;
	float:left;

}
.resultSearch .keywordSearch{
	width:50%;
	box-sizing:border-box;
	float:right;
}
.resultSearch .areaSearch .innerBox,
.resultSearch .keywordSearch .innerBox{
	width:92%;
	margin:0 auto;
}

.resultSearch .selectSkin:after {
    border-color:#FFF transparent transparent;
}
.resultSearch select{
	background:none;
	border:2px solid #FFF;
	color: #FFF;

}


.resultSearch select:focus{
/*	color:#000;*/
}

.resultSearch select option{
	color:#000;
}
.shoplist .resultSearch input[type="text"]{
	background:none;
	color:#FFF;
	border:2px solid #FFF;
}

.shoplist .resultSearch input[type="submit"]{
	background:none;
	color:#FFF;
	border:2px solid #FFF;
}




.resultListBox{
	width:90%;
	max-width:980px;
	margin:60px auto 0;
}

.resultListBox h3{
	font-weight:bold;
	font-size:2.4em;
	width:100%;
	border-bottom:1px solid #0A1317;
	padding-bottom:0.2em;
}
.resultListBox h3 span{
	font-size:0.75em;
	padding-left:0.2em;
}

.resultListBox .shopListTable{
	width:100%;
	text-align:left;
	font-size:1.1em;
}
.resultListBox .shopListTable th{
	padding:1em 1em 1em 0;
	box-sizing:border-box;
	width:30%;
	text-align:left;
	border-bottom:1px solid #CBD5DF;
}
.resultListBox .shopListTable td{
	padding:1em 0;
	box-sizing:border-box;
	border-bottom:1px solid #CBD5DF;
}
.resultListBox .shopListTable td.add{
	padding-right:1em;
}
.resultListBox .shopListTable td.tel{
	width:8.5em;
}
.resultListBox .shopListTable td.map{
	width:25px;
	position:relative;
}
.resultListBox .shopListTable td.map i{
	position:absolute;
	top:50%;
	right:5px;
	line-height:1;
	font-size:1.7em;
	margin:-0.5em auto 0;
}

.resultListBox .shopListTable td.map a{
	color:#71859D;
}
.resultListBox .shopListTable td.map a:hover{
	color:#EE3224;
}




.shoplistNoSearch{
	font-size:1.2em;
	padding:10em 0 4em;
	text-align:center;
}
.shoplistNoSearch br{
	display:none;
}






@media (max-width: 768px) {


.shoplist .topBox h2{font-size:3.2em;}
.shoplist .topBox h3{font-size:1.3em;}


.topSpeedoShop{width:98%;}
ul.speedoShopList{width:101%;}
ul.speedoShopList li{width:49%;margin-right:1%;margin-bottom:1%;}


.topJapanShop{margin-bottom:0;}

.topJapanShop .areaSearch{width:100%;float:none;}
.topJapanShop .keywordSearch{width:100%;float:none; margin-top:40px;}
.topJapanShop .areaSearch .innerBox,
.topJapanShop .keywordSearch .innerBox{width:100%;max-width:none;}

.shoplist input[type="text"]{font-size:16px;}
.shoplist input[type="submit"]{font-size:16px;}

.selectSkin select{font-size:16px;}


/* -- shopList result -- */

.resultListBox{
	margin-top:40px;
}

.resultListBox h3{font-size:2.3em;text-align:center;padding-bottom:1em;}

.resultListBox .shopListTable th{
	padding:1em 0 0.5em;
	font-weight:bold;
	border-bottom:none;
	width:100%;
	display:block;
	font-size:1.1em;
}
.resultListBox .shopListTable td{
	padding:0;
	border-bottom:none;
	width:100%;
	display:block;
}


.resultListBox .shopListTable td.add{padding-right:0;}
.resultListBox .shopListTable td.tel{width:auto;}
.resultListBox .shopListTable td.map{
	width:100%;
	border-bottom:1px solid #CBD5DF;
	padding:0.5em 0 1em;
}

.resultListBox .shopListTable td.map i{
	position:static;
	top:0;
	right:0;
	font-size:3.0em;
	margin:0;
}





}


@media (max-width: 720px) {

/* -- shopList result -- */
.resultSearch .areaSearch{width:43%;}
.resultSearch .keywordSearch{width:57%;}
.resultSearch .areaSearch .inner
.resultSearch .keywordSearch .inner{width:100%;}

}


@media (max-width: 540px) {

.shoplist .topBox{margin-top:50px;}
.shoplist .topBox h2{font-size:2.5em;}
.shoplist .topBox h3{font-size:1.2em;}

.topSpeedoShop{width:100%;}
.topJapanShop .searchBox .searchInner{width:85%;}
ul.speedoShopList{width:100%; margin-top:30px;}
ul.speedoShopList li{width:100%;margin-right:0%;margin-bottom:15px;}
ul.speedoShopList li .map{
	font-size:3.5em;
	margin:15px auto 0;
	display:block;
	text-align:center;
}

.topJapanShop .searchBox{padding:40px 0 60px;margin-top:30px;}
.topJapanShop .searchBox h4{font-size:1.8em;}

/* -- shopList result -- */

.resultSearch .areaSearch{width:100%;float:none;}
.resultSearch .keywordSearch{width:100%;float:none;margin-top:15px;}

.resultListBox h3{font-size:2.0em;}

.resultListBox .shopListTable td.map{text-align:center;padding-top:0.8em;}




.shoplistNoSearch{font-size:1.1em;padding:6em 0 4em;}
.shoplistNoSearch br{display:block;}


}







/* =============================== SWIM Technique =================================== */


.techMainImg{
	width:100%;
	position:relative;
}
.techMainImg .imageBox{
	width:100%;
	background:url(../technique/images/mainimg.jpg) center center no-repeat;
	background-size:cover;
	padding:220px 0;
	position:relative;
	z-index:1;
}

.techMainImg .title{
	width:90%;
	max-width:1200px;
	position:absolute;
	top:50%;
	left:0;
	right:0;
	line-height:1.6;
	margin:0 auto;
	color:#FFF;
	z-index:10;
	-webkit-transform:translateY(-50%);
	   -moz-transform:translateY(-50%);
	    -ms-transform:translateY(-50%);
	        transform:translateY(-50%);
}

.techMainImg h2{
	line-height:1.1;
	font-family: "NeueHelveticaforSpeedo-Bd";
	font-size:6.0em;
}
.techMainImg h3{
	font-size:1.3em;
	margin-top:1em;
	font-weight:bold;
}




.techMainBox{
	width:90%;
	max-width:1200px;
	margin:0 auto;
}

.techMainBox h3{
	text-align:center;
	font-size:1.9em;
	font-weight:bold;
	line-height:1.3;
	margin:70px 0 20px;
}
.techMainBox h3 span{
	display:block;
	font-family: "NeueHelveticaforSpeedo-Bd";
	font-size:1.8em;
}
.techMainBox h3 b{
	color:#71859D;
    font-weight: bold;
}
.techMainBox h3.second{
	border-top:1px solid #a2b2c3;
	padding:60px 0 10px;

}

.techMainBox h4{
	text-align:left;
	font-size:1.9em;
	font-weight:bold;
	margin:70px 0 0;
	border-top:1px solid #a2b2c3;
	padding-top:15px;
}

.techMainBox h4 span{
	font-family: "NeueHelveticaforSpeedo-Bd";
	font-size:1.6em;
	padding-right:0.5em;
    line-height: 1.5;
}
.techMainBox h4 b{
	color:#71859D;
    font-weight: bold;
}


.techMainBox .movList{
	width:100%;
	margin:0 auto;
	overflow:hidden;
}
.techMainBox .movList ul{
	width:105%;
	font-size:0;
}
.techMainBox .movList li{
	width:45%;
	margin-right:5%;
	margin-top:3%;
	font-size:12px;
	text-align:left;
	display:inline-block;
	vertical-align:top;
}
.techMainBox .movList li span{
	display:block;
	position:relative;
}


.techMainBox .movList li span::before{
	content:"";
	display:block;
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
	margin:auto;
	border:5px solid #FFF;
	width:90px;
	height:90px;
	-webkit-border-radius:50%;
       -moz-border-radius:50%;
	    -ms-border-radius:50%;
	        border-radius:50%;
	-webkit-transition:border-color 0.3s;
	   -moz-transition:border-color 0.3s;
	        transition:border-color 0.3s;
}
.techMainBox .movList li span::after{
	content:"";
	display:inline-block;
	text-align:center;
	position:absolute;
	content: " \f04b";
	font-family: FontAwesome;
	font-size:3.2em;
	top:50%;
	left:50%;
	line-height:1;
	margin:-0.45em 0 0 -0.3em;
	color:#FFF;
	-webkit-transition:color 0.3s;
	   -moz-transition:color 0.3s;
	        transition:color 0.3s;
}

.techMainBox .movList li span:hover::before{
	border-color:#EE3224;
}
.techMainBox .movList li span:hover::after{
	color:#EE3224;
}
.techMainBox .movList li h5{
	font-family: "NeueHelveticaforSpeedo-Bd";
	font-size:2.0em;
	line-height:1.2;
	margin:0.3em 0 0;
}
.techMainBox .movList li h6{
	font-size:1.3em;
	line-height:1.2;
	color:#71859D;
	font-weight:bold;
}





@media (max-width: 920px) {
.techMainImg h2{font-size:5.5em;}
}


@media (max-width: 768px) {

.techMainImg .imageBox{padding:28% 0;}
.techMainImg h2{text-align:center;font-size:5.0em;}
.techMainImg h3{text-align:center;}



.techMainBox h3{font-size:1.8em;margin-bottom:0;}
.techMainBox h3.second{padding:60px 0 40px;}
.techMainBox h4{font-size:1.6em;line-height:1.3;padding:35px 0 10px;margin-top:60px;text-align:center;}
.techMainBox h4 span{display:block;padding:0;}

.techMainBox .movList ul{width:103%;}
.techMainBox .movList li{width:47%;margin-right:3%;margin-top:4%;}
.techMainBox .movList li span::before{width:70px;height:70px;}
.techMainBox .movList li span::after{margin:-0.5em 0 0 -0.3em;font-size:2.5em;}
.techMainBox .movList li span:hover::before{border-color:#FFF;}
.techMainBox .movList li span:hover::after{color:#FFF;}

.techMainBox .movList li h5{font-size:1.8em;}
.techMainBox .movList li h6{font-size:1.2em;}


}



@media (max-width: 680px) {

.techMainImg .imageBox{padding:18% 0;}
.techMainImg .title{
	position:static;
	color:#333;
	-webkit-transform:translateY(0);
	   -moz-transform:translateY(0);
	    -ms-transform:translateY(0);
	        transform:translateY(0);
}
.techMainImg h2{font-size:3.1em;margin-top:50px;}
.techMainImg h3{font-size:1.15em; font-weight:normal;}

.techMainBox{width:100%;}
.techMainBox h3{
	background:#E9EEF5;
	font-size:1.7em;
	padding:1.2em 0 1.5em;
	margin-top:50px;
}
.techMainBox h3.second{border-top:none;padding:1.2em 0 1.5em;margin:20px 0 60px;}
.techMainBox h4{font-size:1.7em;padding:2em 0;margin:0;}

.techMainBox .movList{width:70%;}
.techMainBox .movList ul{width:100%;}
.techMainBox .movList li{width:100%;margin:0 0 8%;}
.techMainBox .movList li h5{margin:0.3em 0 0;}

}



@media (max-width: 480px) {
.techMainImg .imageBox{padding:20% 0;}
.techMainImg h2{font-size:2.6em;margin-top:40px;}
.techMainImg h3{font-size:1.1em; width:90%;margin:1em auto 0;text-align:left;}
.techMainImg h3 br{display:none;}

.techMainBox h3{font-size:1.4em;margin-top:40px;}
.techMainBox h3.second{margin:20px 0 10%;}
.techMainBox h4{font-size:1.5em;}
.techMainBox .movList{width:90%;}
.techMainBox .movList li h5{font-size:1.5em;margin:0.3em 0 0.1em;	}
.techMainBox .movList li h6{font-size:1.1em;}


}





/* =============================== RECALL =================================== */


.recallList{
	width:90%;
	max-width:980px;
	margin:0 auto;
	overflow:hidden;
}
.recallList ul{
	border-top:1px solid #CBD5DF;
	margin-top:70px;
}

.recallList ul li{
	border-bottom:1px solid #CBD5DF;
}
.recallList ul li a{
	display:block;
	padding:25px 1em;
	box-sizing:border-box;
}

@media (max-width: 768px) {
.recallList ul{
	margin-top:10%;
}
}

@media (max-width: 480px) {
.recallList ul li a{
	padding:20px 0em;
}
}



/* =============================== EVENT NEWS =================================== */


.newsTopList{
	width:90%;
	max-width:1200px;
	margin:0 auto;
	overflow:hidden;
}

.newsTopList ul{
	width:103%;
	font-size:0;
	margin-top:60px;
}

.newsTopList ul li{
	width:30.33333%;
	margin-right:3%;
	margin-bottom:3%;
	font-size:12px;
	display:inline-block;
	vertical-align:top;
}
.newsTopList ul li h3{
	font-size:1.4em;
	text-align:center;
	font-weight:bold;
	padding:0.8em 0 0;
	line-height: 1.5;
}
.newsTopList ul li h4{
	font-size:1.0em;
	text-align:center;
	padding:0.5em 0 0;
	line-height: 1.5;
}

@media (max-width: 768px) {
.newsTopList ul{width:104%;}
.newsTopList ul li{width:46%;margin-right:4%;}
.newsTopList ul li h3{font-size:1.3em;}
}

@media (max-width: 720px) {

.newsTopList{width:80%;}
.newsTopList ul{width:100%;}
.newsTopList ul li{width:100%;margin-right:0;margin-bottom:8%;}
.newsTopList ul li h3{font-size:1.2em;}
}











/* =============================== ANNOUNCE =================================== */



.announce{}

.announce .viewPC{}
.announce .viewSP{display:none;}


.announceBox{
	width:90%;
	max-width:800px;
	margin:50px auto 0;
	font-size:1.1em;
	line-height:1.6;
}

.announceBox p {
    line-height: 1.6;
}

.announceBox > h2{
	font-size:1.7em;
	font-weight:bold;
	text-align:center;
	line-height:1.4;
	margin-bottom:2.0em;
}

.announceBox .annMessage{}
.announceBox .annMessage .date{
	text-align:right;
	margin-top:2em;
}

.announceBox .annBody{}
.announceBox .annBody h3{
	font-weight:bold;
	font-size:1.1em;
	margin:40px 0 5px;
	line-height: 1.6;
}

.announceBox .annBody .red{
	color:#EE3224;
}





/* ---------- */

table.sd96t_table{
	width:100% !important;
	border-right:1px solid #999;
	border-top:1px solid #999;
	text-align:center;
	margin-bottom:10px;
}
table.sd96t_table td{
	border-left:1px solid #999;
	border-bottom:1px solid #999;
	padding:0.5em 1em;
    line-height: 1.6;
}
.sd96t_falsehood{
	padding:0.6em 0 0em 1.8em;
	text-indent:-1.8em;
}

/* ---------- */
table.sd91a_table{
	width:100%;
	text-align:center;
	line-height:1.2;
	border-top:1px solid #999;
}
table.sd91a_table td{
	border-bottom:1px solid #999;
	border-right:1px solid #999;
	padding:0.5em 1em;
}
table.sd91a_table th{
	border-bottom:1px solid #999;
	border-right:1px solid #999;
	border-left:1px solid #999;
	text-align:left;
	width:110px;
	padding-left:1em;
}
table.sd91a_table td img{
	max-width:160px;
}







@media (max-width: 540px) {

.announceBox{font-size:1.0em; margin-top:30px;}
.announceBox > h2{font-size:1.5em;}
.announceBox > h2{font-size:1.5em;}

.announce .viewPC{display:none;}
.announce .viewSP{display:table;}

.announceBox .annBody h3{text-align:center;font-size:1.2em;margin-bottom:10px;}

table.sd96t_table{max-width:300px;margin:0 auto;border:none;}
table.sd96t_table.top{border-top:1px solid #999 !important;}
table.sd96t_table tr{display:block;width:100%;}
table.sd96t_table td{padding:0.5em 1em;width:100%;display:block;border-right:1px solid #999;}

table.sd91a_table{border-top:none;}
table.sd91a_table.top{border-top:1px solid #999 !important;}
table.sd91a_table th{width:100px;}
table.sd91a_table td{padding:0.4em 1em;}
}


/* include */

#footer {
    background: #fff none repeat scroll 0 0 !important;
    color: #000;
}

.arrow::after {
  border-top: solid 1px #1f2736 !important;
  border-right: solid 1px #1f2736 !important;
}

/* sp時　灰色矢印非表示 */
.footer-brand-info-btn:after {
    display: none;
}


































