html,body{
  -webkit-text-size-adjust: 100%;
  font-size: 62.5%;
}

img.full {
  display: block;
  width: 100%;
}

section {
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 10px;
}

h2 {
  margin: 0;
}

#contents {
  padding: 10px;
}

#contents .inner {
  background: #fff;
  border: 1px solid #c4cfd9;
  border-radius: 3px;
  margin: 0 0 30px;
  padding: 30px 9px;
  box-sizing: border-box;
}

#contents .inner .wrap-img img {
  width: 100%;
  display: block;
}

#contents .inner h1 {
  margin-bottom: 18px;
}



section#taiken_skd { margin-bottom:15px;}



#taiken_skd .subsection.active .area-btn {
  background:#fff352 !important;
}

#taiken_skd .subsection.active .area-btn .btn {
  border: 2px solid #e60012;
  background:#e60012;
  color:#ffffff;
}

#taiken_skd .subsection.sub3 .area-btn {
  padding: 0 0 10px;
  border: none;
}

#taiken_skd .subsection.sub3 .area-btn {
  background: #fff352;
}

#taiken_skd .subsection .btn {
  width: 187px;
  background: #e60012;
  border: 2px solid #e60012;
  border-radius: 5px;
  padding: 5px 0;
  margin: 0 auto;
  font-size: 12px;
  font-weight: bold;
  color: #ffffff;
  text-align: center;
  position: relative;
  cursor: pointer;
}

#taiken_skd .subsection .btn:after {
  content: "";
  width: 12px;
  height: 7.5px;
  display: block;
  position: absolute;
  top: 50%;
  margin-top: -3.75px;
  right: 7.5px;
  background: url(../img/arrow-w.png) no-repeat;
  -webkit-background-size: contain;
  background-size: contain;
}

#taiken_skd .subsection.active .btn:after {
  transform: rotate(180deg);
}


#taiken_skd .incontent {
	background:#fff352;
	}
	
#taiken_skd .incontent div {
	margin:0 10px;
	background:#fff352;
	padding-bottom:5px;
}
	
#taiken_skd .incontent div table {
	width:100%;
	border-collapse: collapse;
	font-size:12px;
}

#taiken_skd .incontent div table th,
#taiken_skd .incontent div table td {
	padding:10px;
	background:#ffffff;
	text-align:center;
	vertical-align:middle;
}

#taiken_skd .incontent div table td {width:42%;}
#taiken_skd .incontent div table td.table_td_days {
	width:16%!important;
}

#taiken_skd .incontent div table.taiken01 th { border:1px solid #00abeb;}
#taiken_skd .incontent div table.taiken01 td { background:#d2f1fc; border:1px solid #00abeb;}

#taiken_skd .incontent div table.taiken02 th { border:1px solid #00a6af;}
#taiken_skd .incontent div table.taiken02 td { background:#ccedef; border:1px solid #00a6af;}

#taiken_skd .incontent div table.taiken03 th { border:1px solid #f19aa8;}
#taiken_skd .incontent div table.taiken03 td { background:#fcebee; border:1px solid #f19aa8;}

#taiken_skd .incontent div table.taiken04 th { border:1px solid #f5a22c;}
#taiken_skd .incontent div table.taiken04 td { background:#fdecd5; border:1px solid #f5a22c;}

#taiken_skd .incontent div table.taiken05 th { border:1px solid #e60021;}
#taiken_skd .incontent div table.taiken05 td { background:#faccd3; border:1px solid #e60021;}

#taiken_skd .incontent div table.taiken06 th { border:1px solid #a38b78;}
#taiken_skd .incontent div table.taiken06 td { background:#ede8e4; border:1px solid #a38b78;}







section#swim {
  margin: 0 0 20px;
}

#swim .in {
  background: url(../img/bg_swim.jpg) repeat;
  -webkit-background-size: 25px;
  background-size: 25px;
  border: 2px solid #00a0e9;
  border-top: none;
  border-radius: 0 0 10px 10px;
  overflow: hidden;
  padding-bottom: 10px;
}

#swim h2 {
  width: 100%;
  height: auto;
  background: #00a0e9;
  border-radius: 10px 10px 0 0;
  position: relative;
  overflow: hidden;
  padding-bottom: 1%;
}

#swim h2:before {
  content: "";
  width: 100%;
  height: auto;
  background: url(../img/bg-rainbow.png) no-repeat;
  background-size: 100%;
  background-position: 0 100%;
  position: absolute;
  top: 2px;
  right: 2px;
}

#swim h2 img {
	width: 98%;
	margin: 5px auto 0;
	position: relative;
	left: 3px;
	top: -3px;
	padding-bottom: 2%;
}

#swim h3 {
  margin: 10px 0;
}

#swim h3 img {
  width: 90%;
  display: block;
  margin: auto;
}

#swim .wrap-img.fig2 img {
  width: 103%;
  margin-left: -11px;
}

#swim p {
  font-size: 13px;
  line-height: 20px;
  margin: 0 10px;
}

#swim .wrap-img.fig2 {
  margin-bottom: 5px;
}

#swim .subsection {
  margin: 0 10px;
  border-radius: 10px;
  overflow: hidden;
}

#swim .subsection.sub2, #swim .subsection.sub3 {
  border: none;
}

#swim .subsection h3 {
  background: #0051a4;
  padding: 10px 0;
  margin: 0;
  border: 2px solid #174777;
  border-bottom: none;
  border-radius: 10px 10px 0 0;
  transition: all .2s ease-in-out 0s;
}

#swim .subsection h3 img{
  width: 95%;
}

#swim .subsection.sub2 h3 {
  background: #ea535e;
  border: none;
}

#swim .subsection.sub3 h3 {
  height: auto;
  color: #fff;
  font-size: 19px;
  line-height: 24px;
  text-align: center;
  font-weight: bold;
  background: #00a2ff;
  padding: 10px 0 6px;
  border: none;
}

#swim .subsection .area-btn {
  background: #0051a4;
  padding: 8px 0;
  border: 2px solid #174777;
  border-top: none;
  border-radius: 0 0 10px 10px;
}

#swim .subsection.active .area-btn {
  border: 2px solid #00a2ff;
  color: #00a2ff;
  background: none !important;
}

#swim .subsection.active .area-btn .btn {
  border: 2px solid #00a2ff;
}

#swim .subsection.sub2 .area-btn, #swim .subsection.sub3 .area-btn {
  padding: 0 0 10px;
  border: none;
}

#swim .subsection.sub2 .area-btn {
  background: #ea535e;
}

#swim .subsection.sub3 .area-btn {
  background: #00a2ff;
}

#swim .subsection .btn {
  width: 187px;
  background: #fff;
  border: 2px solid #174777;
  border-radius: 5px;
  padding: 5px 0;
  margin: 0 auto;
  font-size: 12px;
  font-weight: bold;
  color: #0051a4;
  text-align: center;
  position: relative;
  cursor: pointer;
}

#swim .subsection .btn:after {
  content: "";
  width: 12px;
  height: 7.5px;
  display: block;
  position: absolute;
  top: 50%;
  margin-top: -3.75px;
  right: 7.5px;
  background: url(../img/arrow-db.png) no-repeat;
  -webkit-background-size: contain;
  background-size: contain;
}

#swim .subsection.active .btn:after {
  transform: rotate(180deg);
}

#swim .subsection.sub2 .btn {
  border: none;
  color: #ea535e;
}

#studio .subsection.sub2 .notice{
  font-size: 12px;
  margin: 0 10px 20px;
}

#swim .subsection.sub2 .btn:after {
  background: url(../img/arrow-r.png) no-repeat;
  -webkit-background-size: contain;
  background-size: contain;
}

#swim .subsection.sub3 .btn {
  border: none;
  color: #00a2ff;
}

#swim .subsection.sub3 .btn:after {
  background: url(../img/arrow-lb.png) no-repeat;
  -webkit-background-size: contain;
  background-size: contain;
}

#swim .subsection.sub1 .incontent {
  background: #498ed5;
  border-left: 2px solid #174777;
  border-right: 2px solid #174777;
  border-bottom: 2px solid #174777;
  border-radius: 0 0 10px 10px;
  padding: 0 0 10px;
  margin-bottom: 10px;
}

#swim .subsection.sub1 .incontent .txt {
  color: #fff;
  font-size: 13px;
  line-height: 20px;
  padding: 15px 0;
}

#swim .subsection.sub1 .incontent ul li.wrap-img {
  margin-bottom: 5px;
}

#swim .subsection.sub1 .incontent ul li.wrap-img:last-child {
  margin-bottom: 0;
}

#swim .subsection.sub2 .incontent {
  background: #e5f2ff;
  border-left: 2px solid #ea535e;
  border-right: 2px solid #ea535e;
  border-bottom: 2px solid #ea535e;
  border-radius: 0 0 10px 10px;
  padding: 0 0 10px;
  margin-bottom: 17.5px;
}

#swim .subsection.sub2 .incontent .txt {
  font-size: 13px;
  line-height: 20px;
  padding: 15px 0;
}

#swim .subsection.sub3 h3 {
  padding: 15px 0;
}

#swim .subsection.sub3 .txt {
  margin: 0;
  padding: 0;
}

#swim .subsection.sub3.active h3 {
  border-radius: 10px;
}

#swim .subsection.sub3 .notice {
  margin: 5px 0 10px;
}

#swim table {
  width: 100%;
  border: 1px solid #989898;
  border-collapse: collapse;
  margin: 0 0 12.5px;
}

#swim table tr th {
  width: 30%;
  border: 1px solid #989898;
  font-size: 12px;
  background: #e6e6e7;
}

#swim table tr td {
  width: 70%;
  border: 1px solid #989898;
  font-size: 12px;
  background: #fff;
  text-align: center;
  padding: 10px;
}

#swim table tr td.table-label {
  font-size: 15px;
  font-weight: bold;
  text-align: center;
  padding: 10px 0;
}

#swim table tr td.table-label span {
  font-size: 12px;
}

section#studio {
  margin: 0 0 15px;
}

#studio .in {
  background: url(../img/bg_studio.jpg) repeat;
  -webkit-background-size: 25px;
  background-size: 25px;
  border: 2px solid #ed6d00;
  border-top: none;
  border-radius: 0 0 10px 10px;
  overflow: hidden;
  padding: 10px 10px 0;
}

#studio h2 {
  width: 100%;
  height: auto;
  background: #ed6d00;
  border-radius: 10px 10px 0 0;
  position: relative;
  overflow: hidden;
  margin-bottom: -1px;
}

#studio h2 img {
	width: 93%;
	    position: relative;
	    margin: auto;
	    position: relative;
	    top: 2px;
	    left: 0;
	    padding-bottom: 3%;
		}

#studio h3 {
  margin: 10px 0;
}

#studio .subsection {
  margin: 0 0 5px;
  padding: 0 10px;
  border-radius: 10px;
  border: 2px solid #00a6af;
  background: #d8fdff;
  overflow: hidden;
}

#studio .subsection .incontent {
  padding: 0;
}

#studio .subsection.sub2 {
  border: 2px solid #f19495;
  background: #ffeaea;
}

#studio .subsection.sub3 {
  border: 2px solid #eb7e00;
  background: #fff4e8;
}

#studio .subsection.sub4 {
  border: 2px solid #eb1732;
  background: #ffede8;
}

#studio .subsection.sub5 {
  border: 2px solid #a39b92;
  background: #e9e4df;
}

#studio .subsection.sub6 {
  border: 2px solid #3dc9ff;
  background: #d4f3ff;
}

#studio .subsection.sub7 {
  border: 2px solid #8f0038;
  background: #fff4f8;
}

#studio .subsection.sub8 {
  border: 2px solid #e259d6;
  background: #ffe7fd;
}

#studio .subsection h3 img {
  width: 95%;
  display: block;
  margin: auto;
}

#studio .subsection.sub2 h3 img {
  width: 92%;
  display: block;
  margin: auto;
}

#studio .subsection.sub3 h3 img {
  width: 94%;
  display: block;
  margin: auto;
}

#studio .subsection.sub4 h3 {
  margin: 10px -10px;
}

#studio .subsection.sub4 h3 img {
  width: 98%;
  display: block;
  margin: auto;
}

#studio .subsection.sub5 h3 img {
  width: 49%;
  display: block;
  margin: auto;
}

#studio .subsection.sub6 h3 img {
  width: 49%;
  display: block;
  margin: auto;
}

#studio .subsection.sub7 h3 img {
  width: 98%;
  display: block;
  margin: auto;
}

#studio .subsection.sub8 h3 img {
  width: 98%;
  display: block;
  margin: auto;
}

#studio .subsection p {
  font-size: 13px;
  line-height: 20px;
  margin: 0 10px 15px;
}

#studio .subsection p {
  margin: 0 0 15px;
}

#studio .subsection.sub2 .wrap-img img {
  margin-top: -15px;
}

#studio .subsection.sub3 .wrap-img img {
  margin-top: -10px;
}

#studio .subsection .btn {
  width: 187px;
  background: #00a6af;
  border-radius: 5px;
  padding: 7px 0;
  margin: 0 auto 12.5px;
  font-size: 12px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  position: relative;
  cursor: pointer;
}

#studio .subsection.sub2 .btn {
  background: #f19495;
}

#studio .subsection.sub3 .btn {
  background: #eb7e00;
}

#studio .subsection.sub4 .btn {
  background: #eb1732;
}

#studio .subsection.sub5 .btn {
  background: #a39b92;
}

#studio .subsection.sub6 .btn {
  background: #0a5aaa;
}

#studio .subsection.sub7 .btn {
  background: #8f0038;
}

#studio .subsection.sub8 .btn {
  background: #e259d6;
}

#studio .subsection .btn:after {
  content: "";
  width: 12px;
  height: 7.5px;
  display: block;
  position: absolute;
  top: 50%;
  margin-top: -3.75px;
  right: 10px;
  background: url(../img/arrow-w.png) no-repeat;
  -webkit-background-size: contain;
  background-size: contain;
}

#studio .subsection .label {
  font-size: 12px;
  font-weight: bold;
  text-align: center;
  color: #fff;
  padding: 7px 0;
  margin: 0 0 5px;
  background: #00a6af;
}

#studio .subsection.sub2 .label {
  background: #ed5d5f;
}

#studio .subsection.sub3 .label {
  background: #eb7e00;
}

#studio .subsection.sub4 .label {
  background: #eb1732;
}

#studio .subsection.sub5 .label {
  background: #a39b92;
}

#studio .subsection.sub6 .label {
  background: #0a5aaa;
}

#studio .subsection.sub7 .label {
  background: #8f0038;
}

#studio .subsection.sub8 .label {
  background: #e259d6;
}

#swim .subsection.active .btn:after, #studio .subsection.active .btn:after {
  transform: rotate(180deg);
}

#studio table {
  width: 100%;
  border: 1px solid #989898;
  border-collapse: collapse;
  margin: 0 0 12.5px;
}

#studio .subsection.sub2 table{
  margin-bottom: 10px;
}

#studio table tr th {
  width: 30%;
  border: 1px solid #989898;
  font-size: 12px;
  background: #e6e6e7;
  padding: 10px 0;
}

#studio table tr td {
  width: 70%;
  border: 1px solid #989898;
  font-size: 12px;
  background: #fff;
  text-align: center;
  padding: 10px;
}

#studio table tr td.table-label {
  font-size: 15px;
  font-weight: bold;
  text-align: center;
  padding: 10px 0;
}

#studio table tr td.table-label span {
  font-size: 12px;
}

#campaign {
  padding: 10px 0 0;
  margin: 0 0 22.5px;
}

#campaign .wrap-img:nth-child(1) {
}

#campaign .wrap-img:nth-child(2) {
}

#campaign .wrap-img:nth-child(3) {
}

#campaign .wrap-img:nth-child(3) img {
}

#campaign small {
  display: block;
  font-size: 10px;
  line-height: 14px;
  padding: 5px 10px 10px;
}

#join {
  border-radius: 0 0 10px 10px;
  background: #014099;
  color: #fff;
  position: relative;
  padding-bottom:10px;
}

#join:before {
  content: "";
  width: 100%;
  height: 5px;
  background: url(../img/wave.png) no-repeat;
  -webkit-background-size: 100% 100%;
  background-size: 100% 100%;
  display: block;
  position: relative;
  top: -5px;
}

#join h3 {
  font-size: 20px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  margin: 20px 0 5px;
}

#join p.text01 {
  font-size: 12px;
  font-weight: bold;
  margin: 10px 10px 15px;
}

#join h4 {
  font-size: 16px;
  color: #ffffad;
  margin: 15px 10px 5px;
}

#join h4 .small {
  font-size: 12px;
  font-weight: bold;
  color: #fff;
  text-decoration: underline;
  margin-left: 1px;
  letter-spacing: normal;
}

#join h4 .small span {
  letter-spacing: -.1em;
}

#join h4+p {
  font-size: 12px;
  font-weight: bold;
  line-height: 15px;
  margin: 0 10px 15px;
}

#join ul li {
}

#join .pop {
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  position: relative;
  margin: 0 0 5px;
}

#join .pop:before {
  content: "";
  width: 12px;
  height: 17px;
  display: inline-block;
  position: relative;
  top: 3px;
  background: url(../img/icon-pop.png) no-repeat;
  -webkit-background-size: contain;
  background-size: contain;
  margin: 0 5px 0 0;
}

#join .pop:after {
  content: "";
  width: 12px;
  height: 17px;
  display: inline-block;
  position: relative;
  top: 3px;
  background: url(../img/icon-pop.png) no-repeat;
  -webkit-background-size: contain;
  background-size: contain;
  transform: rotateY(180deg);
  margin: 0 0 0 5px;
}

#join .btn-conf {
  display: block;
  margin: 0 10px;
  padding: 0;
}

#join .btn-conf img {
  display: block;
  width: 100%;
}

#join .btn-conf::after {
  content: "";
  display: block;
}

#join small {
  font-size: 10px;
  margin: 5px 10px 10px;
  text-align: left;
  display: block;
}

#join .list {
  margin: 0 10px;
  border-radius: 10px;
}

#join .list li {
  padding: 10px;
  background: #fff;
  margin: 0 0 5px;
  border-radius: 5px;
  box-sizing: border-box;
}

#join .list p {
  color: #000;
  font-size: 12px;
  line-height: 14px;
}

#join .list p.red {
  color: #f00;
  font-weight: bold;
  text-align: center;
  margin: 0 0 5px;
}

#join .list p.small {
  color: #000;
  font-size: 10px;
}

#join .notice {
  font-size: 10px;
  line-height: 16px;
  font-weight: normal;
  color: #fff;
  text-align: left;
  margin: 0 10px;
  padding: 5px 0 10px;
}

.incontent {
  display: none;
}


p.note_zeikomi {
	font-size: 15px;
	text-align: center;
	font-weight: bold;
}


/* slide */
#shopRotationBanner {
	height: auto;
	min-height:auto;
	margin-bottom: 30px;
}
#shopRotationBanner .mainBannerList { width: 100%; height: auto; margin: 0; position: static;}
#shopRotationBanner .mainBannerList li{ width: 100%; height: auto; position: static; visibility: visible!important; opacity: 1!important; margin-bottom: 25px;}
#shopRotationBanner .mainBannerList li:last-child { margin-bottom: 0px!important;}
#shopRotationBanner .mainBannerList li img { width: 100%; height: auto; opacity: 1!important;}
#shopRotationBanner .thumbnailList { display: none;}
#shopRotationBanner .thumbnailList_05 { display: none;}




/* taiken_btn */

.taiken_btn_box_sp {
	width: 93%;
	margin: 0 auto;
}

.taiken_btn_box_sp p {
	text-align: center;
	font-size: 14px;
}

.taiken_btn_box_sp p span { font-size: 12px;}

.taiken_btn_sp {
	display: block;
  margin: auto;
  background: linear-gradient(90deg, #c63427 0%, #c63427 88%, #a20f12 88%, #a20f12 100%);
  border-radius: 0;
  box-shadow: 5px 5px 0 rgba(177, 220, 249, 1);
  color: #ffffff;
  font-size: 18px;
  line-height: 20px;
  font-weight: 700;
  text-align: center;
  padding: 13px 30px 17px 0;
  position: relative;
  text-decoration: none;
  transition: 0.3s;
	margin-bottom: 10px;
}
.studio_taiken_btn {
	box-shadow: 5px 5px 0 rgba(253, 214, 121, 1)!important;
}

a.taiken_btn_sp::after {
  position: absolute;
  display: inline-block;
  right: 3.2%;
  font-size: 20px;
  font-weight: normal;
  top: 50%;
  transform: translateY(-52%);
  line-height: 1;
	content: "\e5e1";
	font-family: "Material Icons";
  transition: 0.5s;
}

a.taiken_btn_sp span {
	font-size: 14px;
}

a.taiken_btn_sp:hover {
  opacity: 0.8;
}
a.taiken_btn_sp:visited { color: #ffffff;}
a.taiken_btn_sp.active:after {
  transform: translateY(-52%) rotate(225deg);
}



/* taiken_announce */
.taiken_announce {width: 100%;  text-align: center; padding: 10px; box-sizing: border-box; background: #c73527; border: 2px solid #a20f12; margin-bottom: 30px; color: #Ffffff;}
.taiken_announce dt{ font-size: 18px; font-weight: bold; margin-bottom: 5px;}
.taiken_announce dt span { background: linear-gradient(transparent 50%, #a20f12 50%);}
.taiken_announce dd{ font-size: 14px;}


/* margin-top */
.mt0 { margin-top: 0 !important;}
.mt5 {margin-top: 5px !important; }
.mt09em {margin-top: 0.85em !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;}
.mt35 {margin-top: 35px !important;}
.mt40 {margin-top: 40px !important;}
.mt45 {margin-top: 45px !important;}
.mt50 {margin-top: 50px !important;}
.mt60 {margin-top: 60px !important;}
.mt70 {margin-top: 70px !important;}

/* margin-bottom */
.mb0 {margin-bottom: 0 !important;}
.mb5 {margin-bottom: 5px !important; }
.mb10 {margin-bottom: 10px !important;}
.mb15 {margin-bottom: 15px !important;}
.mb20 {margin-bottom: 20px !important;}
.mb25 {margin-bottom: 25px !important;}
.mb30 {margin-bottom: 30px !important;}
.mb35 {margin-bottom: 35px !important;}
.mb40 {margin-bottom: 40px !important;}
.mb45 {margin-bottom: 45px !important;}
.mb50 {margin-bottom: 50px !important;}