/*------------------------------------------------------

 max-width 767px　mediaの記述無し スマホ用

 ------------------------------------------------------*/

@font-face {
  /*フォントの名前*/
  font-family: "arial black";
  /*フォントファイルへのパス（複数指定の場合、上から順に読み込まれる）*/
  font-display: swap;
  src: url("/fonts/ArialBlack.woff2") format("woff2"),
   url("/fonts/ArialBlack.woff") format("woff");
}
@font-face {
  font-family: 'Noto Sans CJK JP Subset';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: local('Noto Sans CJK JP'),
    local('NotoSansCJKjp-Regular'),
    local('NotoSansJP-Regular'),
    url('/fonts/NotoSansCJKjp-Regular.woff2') format('woff2'),
    url('/fonts/NotoSansCJKjp-Regular.woff') format('woff');
}
@font-face {
  font-family: 'Noto Sans CJK JP Subset';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: local('NotoSansCJKjp-Bold'),
    local('NotoSansJP-Bold'),
    url('/fonts/NotoSansCJKjp-Bold.woff2') format('woff2'),
    url('/fonts/NotoSansCJKjp-Bold.woff') format('woff');
}

/*---------- 共通 ----------*/

body{
  width: 100%;
  min-width: 310px;
  color: #1c1c1c;
  background: #fff;
  height: auto;
  font-size: 0.9em;
  line-height: 1.6em;
  font-family: 'Noto Sans CJK JP Subset',"メイリオ",Meiryo;
  font-weight: 400;
}

html{
  scroll-behavior: smooth;
}

input::placeholder,
textarea::placeholder {
  color: #cdcdcd;
}
a{
  text-decoration: none;
  color: #1c1c1c;
  cursor: pointer;
  display: block;
}
a.opa:hover,
.topics-list a:hover{
  display: block;
  opacity: 0.7;
  transition: 0.5s;
  cursor: pointer;
}
a.banner-img{
  width: 80%;
  max-width: 440px;
  display: block;
  margin: 30px auto;
}

img,video{
  width: 100%;
  vertical-align: bottom;
}
header,section,footer{
  clear: both;
}
iframe{
  border: none;
}
.d-flex{
  display:flex;
  flex-wrap: wrap;
}
.red{
  color: #eb0000;
  text-indent: 0;
}
.txta-c{
  text-align: center;
}
.txta-r{
  text-align: right;
}

/* 均一に真ん中に整列 */
.between{
  justify-content: space-between;
}
.lr-center{
  justify-content: center;
}
.item-center{
  align-items: center;
}
/* 上にある要素のfloat回り込み解除 */
.clear-b{
  clear: both;
}
.pc-only{
    display: none !important;
}
.sp-only{
    display: block !important;
}

.mt5{ margin-top: 5px !important;}
.mt10{ margin-top: 10px !important;}
.mt15{ margin-top: 15px !important;}
.mt25{ margin-top: 25px !important;}
.mt30{ margin-top: 30px !important;}
.mt40{ margin-top: 40px !important;}
.mb15{ margin-bottom: 15px !important;}
.mb30{ margin-bottom: 30px !important;}

.mail-icon{
  width: 13px;
  height: 12px;
  vertical-align: middle;
}
.attention{
  color: #eb0000 !important;
  font-size: 0.95em;
  line-height: 1.48;
  text-indent: -13px;
  padding-left: 15px;
}
.blue{
  color: #349ae8 !important;
  font-size: 0.93em;
  font-weight: bold;
}
.orange-attention{
  color: #f47900 !important;
  text-indent: -18px;
  padding-left: 28px;
  display: block;
  line-height: 1.45;
}
.other-attention{
  color: #0b8bec;
  font-size: 0.88em;
  line-height: 1.48;
  text-indent: -13px;
  padding-left: 15px;
  clear: both;
}
.other-attention a{
  color: #0b8bec;
}
.common-btn a{
  max-width: 350px;
  width: 100%;
  margin: 10px auto;
  background: none;
  padding: 15px 0;
  border: 2px solid #000;
  font-weight: bold;
  text-align: center;
  cursor: pointer;
}
.common-btn a:hover {
  color: #fff;
  background: #000;
  transition: 0.5s;
  cursor: pointer;
}

.beach-bg{
    background: url(/images/beach-design04.png) right 30px top 20px no-repeat,
                url(/images/common-parts-beach.jpg) repeat;
    padding: 5px 0 30px;
}
.school-details-calendar .cal_wrapper{
  position: relative;
}

/* スクール情報公開後削除 ここから */
.calendar-yazi{
  width: 230px;
  text-align: center;
  background: #f19126;
  color: #fff;
  font-size: 0.9em;
  padding: 5px 10px;
  border-radius: 10px;
  position: absolute;
  left: 0;
  top: -55px;
}
.calendar-yazi:after{
  content: "";
  width: 0;
  height: 0;
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
  border-top: 15px solid #f19126;
  position: absolute;
  left: 10%;
  bottom: -10px;
}
/* スクール情報公開後削除 ここまで */

.common-iframe-wrap iframe{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.cancel{
  font-size: 0.9em;
  padding: 15px 20px 0;
  margin-top: 20px;
  border: 1px dotted #eb0000;
  background: #fffafa;
}
.cancel h4{
  font-size: 1.1em;
  font-weight: bold;
  color: #eb0000;
}
.cancel p{
  margin: 5px 0 15px !important;
}

/*-----------------------------------------------

 ヘッダー 

-----------------------------------------------*/

header{
  width: 100%;
}
.header-menu{
  height: 48px;
  width: 100%;
  position: absolute;
  z-index: 9999;
}
.sp-header{
  height: 48px;
}
.sp-header a{
  display: inline-block;
}
#gnavi{
  text-align: left;
  padding: 15px;
  color: #fff;
  line-height: 2.6em;
}
#gnavi ul > li{
  font-weight: bold;
  line-height: 2em;
}
#gnavi ul > li a{
  padding: 8px 14px;
  color: #000;
  display: inline-block;
}
#gnavi ul li .low{
  margin: 0 0 0 20px;
  font-size: 0.95em;
  display: block !important;
}
#gnavi ul li ul li{
  font-weight: normal;
  line-height: 1.7em;
}
#gnavi ul li .low li:before{
  content: '\25B6\a0';
  color: #f8b500;
  font-size: 0.7em;
}
#gnavi .lineb{
  width: 65px;
  height: 5px;
  display: inline-block;
  background: #f8b500;
}
.sp-otherlink{
  margin: 15px 0 0;
}
.sp-otherlink li{
  width: 48%;
  text-align: center;
  margin-bottom: 20px;
  font-weight: bold !important;
  border: 1px solid #000;
  line-height: 1.7em;
}
.sp-otherlink li a{
    width: 100%;
    padding: 3px 0 !important;
    display: inline-block;
    font-size: 0.9em;
}
.sp-otherlink + .sp-icon a{
  width: 40px;
  margin-right: 5px;
  text-align: left;
  border: 0;
  padding: 0 !important;
}
.sp-otherlink + .sp-icon a img{
  width: 100%;
}
/* OVERLAY */
.overlay {
  position: fixed;
  top: 0;
  z-index: 1;
  display: none;
  opacity: 0.9;
  overflow: auto;
  width: 100%;
  height: 100%;
  background: #fff;
}
.sp-logo{
  width: 132px;
  padding: 10px 15px;
}

/* メニューアイコンアニメーション */

#panel-btn{
  display: inline-block;
  position: relative;
  width: 25px;
  height: 25px;
  border-radius: 50%;
}
#panel-btn-icon{
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 14px;
  height: 2px;
  margin: -1px 0 0 -7px;
  background: #fff;
  transition: .2s;
}
#panel-btn-icon:before, #panel-btn-icon:after{
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 14px;
  height: 2px;
  background: #fff;
  transition: .3s;
}
#panel-btn-icon:before{
  margin-top: -6px;
}
#panel-btn-icon:after{
  margin-top: 4px;
}
#panel-btn .close{
  background: transparent !important;
}
#panel-btn .close:before, #panel-btn .close:after{
  margin-top: 0;
}
#panel-btn .close:before{
  transform: rotate(-45deg);
}
#panel-btn .close:after{
  transform: rotate(-135deg);
}
.menu-sp{
  width: 70px;
  margin-left: 30px;
  padding-top: 3px;
  display: inline-block;
  color: #fff;
}
.menu-btn{
  width: 114px;
  position: fixed;
  padding: 11px 10px;
  z-index: 999;
  right: 0;
  top: 0;
  background: rgba(000,000,000,0.85);
}

/*-----------------------------------------------

 TOP画像

-----------------------------------------------*/

/*----- TOP -----*/

.topimg-bg{
  background: url(/images/top-topimg.jpg);
  width: 100%;
  height: 0;
  padding-bottom: 75%;
  background-size: cover;
  background-position: center center;
  padding-top: 48px;
}
.topimg-bg .dotted{
  background: url(/images/dot-black.png);
  width: 100%;
  height: 0;
  padding-bottom: 59.75%;
  background-size: initial;
}

.header-sns,.top-search,.header-pc-logo,.header-sns.schoolver{
  display: none !important;
}
.toptxt-wrap h1 span{
  display: block;
  color: #000;
  font-weight: bold;
  font-size: 1em;
  line-height: 1.5em;
  margin: 14% 0 0;
  padding: 10px 15px;
  background-color: rgba(255, 255, 255, 0.3 );
}

.school .schooltxt-wrap h1 span{
  display: block;
  color: #000;
  font-weight: bold;
  font-size: 1em;
  line-height: 1.5em;
  margin: 50px 0 0;
  padding: 10px 15px;
  background-color: rgba( 255, 255, 255, 0.6 );
}

/*----- 下層 -----*/
.lowerimg-bg{
  padding-top: 0;
  position: relative;
}
.lowerimg-bg .dotted{
  background: url(/images/dot-black.png);
  width: 100%;
  height: 0;
  padding-bottom: 25%;
  background-size: initial;
  position: absolute;
  top: 0;
}

/*-----------------------------------------------

 フッター

-----------------------------------------------*/

footer{
  margin: 100px 0 0;
  padding: 30px 0;
  background-image: url(/images/common-footer-bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}
.footer-school{
  margin: 0;
}
#footer{
  width: 100%;
  margin: 0 auto;
}
.footer-logo{
  max-width: 170px;
  width: 37%;
  margin: 0 auto 15px;
  text-align: center;
  display: block;
}
.footer-sns{
  padding: 5px 0 15px 0;
}
.footer-sns{
  width: 90px; /* アイコンの数で変更 */
  margin: 0 auto;
}
.footer-sns li a{
  width: 40px;
  height: 40px;
  margin: 0 10px 0 0;
  float: left;
}
.footer-sns li:last-child a{
  margin: 0;
}
#footer .f-snavi li:first-child:before{
  content: none;
}
#footer .f-snavi{
  margin: 10px auto;
  text-align: center;
}
#footer .f-snavi li:before {
  content: "|";
  color: #fff;
  padding-right: 20px;
}
#footer .f-snavi li a{
  display: inline-block;
  color: #fff;
  padding-right: 20px;
  font-size: 0.85em;
}
#footer .f-snavi li a:hover{
  color: #f8b500;
}
footer small{
  width: 100%;
  padding: 2px 15px 0;
  display: block;
  color: rgba(255,255,255,0.5);
  text-align: center;
}

/*-----------------------------------------------

 共通パーツ

-----------------------------------------------*/

/* 星 + title */
.tit-style01{
  margin: 30px 0;
}
.tit-style01 > img{
  width: 120px;
  margin: 0 auto 5px;
  display: block;
}
.tit-style01 em{
    font-weight: bold;
    text-align: center;
    display: block;
    padding: 12px 0 0;
    font-size: 1.3em;
    color: #eb0000;
}
.tit-style01 span.jp{
  text-align: center;
  display: block;
  font-size: 0.7em;
  font-weight: bold;
  margin: 0 0 5px;
  letter-spacing: 0.05em;
  color: rgba(000,000,000,0.6);
}
.tit-style01 span.jp:before{
  content: "\30FC\a0";
}
.tit-style01 span.jp:after{
  content: "\a0\30FC";
}
.tit-style01 span.en{
  text-align: center;
  display: block;
  font-size: 2.2em;
  line-height: 1.1em;
  font-weight: bold;
  font-family: arial black,"Hiragino Kaku Gothic Pro","メイリオ",Meiryo;
  color: #000;
}

/* 上下ボーダー ＋ 英字 + title */
.tit-style02{
  width: 100%;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  padding: 12px 8px;
  margin: 30px 0 0 !important;
}
.tit-style02 span{
  display: inline-block;
}
.tit-style02 .jp{
  font-size: 1.15em;
  line-height: 1.3em;
  font-weight: bold;
  text-align: left;
  display: inline-block;
}
.tit-style02 .en{
    font-size: 0.5em;
    letter-spacing: 0;
    color: #d7d7d7;
    font-weight: bold;
    display: block;
}

/* サブタイトルに左右ボーダー + title */
.tit-style03{
  width: 100%;
  text-align: center;
}
.tit-style03 span{
  display: block;
}
.tit-style03 .sub{
  font-size: 1em;
}
.tit-style03 .sub:before{ content:'\30FC'; padding: 0 10px 0 0; }
.tit-style03 .sub:after{ content:'\30FC'; padding: 0 0 0 10px; }

.tit-style03 .main{
  font-size: 1.5em;
  letter-spacing: 0.05em;
  font-weight: bold;
  padding-top: 10px;
}

/* 左よせtitle (店舗案内使用) */
.tit-style04{
  width: 100%;
  margin: 0 0 20px;
  text-align: left;
}
.tit-style04 span{
  display: block;
}
.tit-style04 .sub{
  font-size: 0.9em;
}
.tit-style04 .main{
  font-size: 1.3em;
  letter-spacing: 0.05em;
  font-weight: bold;
  padding-top: 3px;
}

/* オレンジ */
.tit-style05{
  width: 100%;
  font-size: 1.2em;
  color: #f88600;
  font-weight: bold;
  margin: 17px 0 7px;
}

/* 真ん中よせtitle ( サーフTEAM使用) */
.tit-style06{
  width: 100%;
  border-top: 4px double #000;
  border-bottom: 4px double #000;
  font-size: 1.68em;
  margin: 0 0 20px;
  text-align: center;
  font-weight: bold;
  padding: 15px 0;
}

/* 会員特典タイトル (サーフTEAM使用) */
.tit-style07{
  width: 100%;
  border-top: 3px solid #000;
  /* border-bottom: 3px solid #000; */
  font-size: 1.5em;
  margin: 0 0 20px;
  font-weight: bold;
  padding: 15px 8px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  line-height: 1.4;
}
.tit-style07 .num{
  font-size: 1.2rem;
}
.tit-style07 .num::before{
  content: "\25A0\a0";
}

/* 大枠 */
section{
margin: 0 auto;
}
section:not(.max){
  width: 100% !important;
  padding: 0 12px !important;
}
section.max{
  width: 100%;
}
section.two{
  width: 100%;
}
section.max .top-school-main{
  width: 100%;
  padding: 0 12px;
}
.wrap1000{
  width: 100%;
}


/* パンくずナビ */
.breadcrumb-bg{
  background: url(/images/breadcrumb-bg.gif);
  color: #000;
}
.breadcrumb{
  width: 100%;
  padding: 3px 15px;
  font-size: 0.8em;
}
.breadcrumb li{
  display: inline-block;
  color: #000;
}
.breadcrumb li a{
  color: #000;
}
.breadcrumb li a:after{
  content: '>';
  padding: 0 5px;
}

/*-----------------------------------------------

 TOPページ

-----------------------------------------------*/

.top-calendar .tit-style02 .en{
  display: none;
}
.top-school{
  background: #f7f7f7;
  padding: 1px 0 0;
  border-top: 7px double #000;
}
.top-school .box01{
  width: 100%;
  margin-bottom: 20px;
  position: relative;
}
.top-school .box01 .img-wrap{
  width: 100%;
}
.top-school .box01 .txt-wrap{
  width: 100%;
  margin: 20px 0 0;
}
.top-school .box01 h3{
  font-size: 1.3em;
  font-weight: bold;
}
.top-school .box01 p.txt{
  font-size: 1em;
  line-height: 1.6em;
  letter-spacing: -0.05em;
  margin: 7px 0 10px;
}
.top-school .btn a{
  width: 100%;
  max-width: 200px;
  display: block;
  font-size: 0.9em;
  padding: 8px 0;
  margin: 30px 0 25px;
  color: #000;
  border: 1px solid #000;
  text-align: center;
}
.top-school .btn a:hover{
  color: #fff;
  background: #000;
  transition: 0.3s;
  opacity: 1;
}
.top-school .box02{
  width: 100%;
}
.top-school .box02 .txt-wrap{
  font-size: 1em;
  padding-top: 5px;
  text-align: center;
}
.top-school .box02 h3{
  color: #4e4e4e;
  font-weight: bold;
  letter-spacing: -0.04em;
  padding: 5px 0 3px;
}
.top-school .box02 p{
  padding-top: 5px;
  line-height: 1.3em;
  font-size: 0.8em;
}
.top-school .box02 > div{
  width: 48%;
}
.top-school .box02 .img-wrap{
  width: 100%;
  overflow: hidden;
}
.top-school .box02 img{
  width: 110%;
}
.top-school .box02 .iframe-wrap{
  position: relative;
  padding: 74% 0 0 0;
  z-index: 1;
}
.top-school .box02 .iframe-wrap iframe{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.school-details.top-calendar{
  background: #f7f7f7;
  padding: 0 15px;
}
.school-details-calendar.top-calendar{
  padding-top: 30px;
}
.school-details-calendar.top-calendar ul{
  background: #e4e4e4;
  font-size: 0.9em;
}
.school-details-calendar.top-calendar ul li{
  margin: 0 0 1px;
}
.school-details.top-calendar .tit-style02{
  margin: 0 auto !important;
}

.top-otherlink-bg{
    background:url(/images/beach-design01.png) right 30px bottom 90px no-repeat,
                url(/images/beach-design02.png) left 30px bottom 100px no-repeat,
                url(/images/beach-bg-top.jpg) left top repeat-x,
                url(/images/common-parts-beach.jpg) repeat;
    padding: 80px 0 30px;
}
.top-otherlink-wrap .top-otherlink{
  width: 100%;
}
.top-otherlink-wrap .top-otherlink ul{
  width: 90%;
  margin: 0 auto;
  padding: 30px 0;
}
.top-otherlink-wrap .top-otherlink ul li:first-child{
  margin-bottom: 15px;
}
.top-otherlink-wrap .top-otherlink .facebook{
  display: none;
}


.top-gallery{
  width: 100%;
}
.top-gallery ul li{
  width: 100%;
}
.top-topics{
  padding: 5px 0 40px;
}
.top-topics ul{
  width: 100%;
  margin: 30px auto 0;
  padding: 0 20px;
}
.top-topics li{
  width: 100%;
  padding: 6px 22px 15px;
  margin: 0 0 10px;
  background: #fff;
  position: relative;
  border: 1px solid #cacaca;
}
.top-topics li .new{
    width: 12%;
    height: auto;
    position: absolute;
    top: 7px;
    right: 8px;
}
.top-topics li .category{
  padding: 3px 5px;
  color: #fff;
  margin-top: 14px;
  background: #000;
  font-size: 0.87em;
  line-height: 1.5em;
}
/*.top-topics li .shop{ background-color: #ef6500;}
.top-topics li .item{ background-color: #ea0079;}
.top-topics li .camp{ background-color: #0a8700;}
.top-topics li .school{ background-color: #0058dc;}*/

.top-topics li span{
  display: inline-block;
}
.top-topics li .day{
  font-weight: bold;
  margin-left: 10px;
}
.top-topics li h3{
  font-size: 1.3em;
  font-weight: 700;
  margin: 10px 0 15px;
  color: #000;
}
.top-topics li .img{
  width: 100%;
  max-height: auto;
  overflow: hidden;
}
.top-topics li p{
  padding: 8px 0;
  font-size: 0.9em;
  line-height: 1.6em;
}
.top-topics .more{
  width: 94%;
  margin: 0 auto;
  background: none;
  padding: 14px 0 10px;
  border: 2px solid #000;
  font-weight: bold;
  text-align: center;
  cursor: pointer;
}
.top-shop-main{
  clear: both;
}
.top-shop-main div,.top-shop-main iframe{
  width: 100%;
  float: left;
  margin-bottom: 15px;
}
.top-shop-main iframe{
  height: 230px;
  border: 1px solid #cdcdcd;
  width: 100%;
  margin-bottom: 15px;
}
.top-shop-main ul,.top-shop-main dl{
  width: 100%;
  float: right;
  font-size: 0.9em;
}
.top-shop-main ul li{
  width: 24%;
  margin: 0 0 8px;
}
.top-shop-main ul li img{
  width: 100%;
  height: auto;
}
.top-shop-main dl .f4{ background: #f4f4f4; }
.top-shop-main dl .e{ background: #eee; }

.top-shop-main dl dt,
.top-shop-main dl dd{
  padding: 15px;
}
.top-shop-main dl dt{
  width: 25%;
}
.top-shop-main dl dd{
  width: 75%;
  white-space: pre-line;
  line-height: 1.6em;
}

.top-shop-main.info .map-ul {
  width: 100% !important;
  margin: 5px 0 10px;
}
.top-shop-main.info{
  display:flex;
  flex-wrap: wrap;
}
.top-shop-main.info .order1{
  order: 1;
}
.top-shop-main.info .order2{
  order: 3;
}
.top-shop-main.info .order3{
  order: 2;
}


/*-----------------------------------------------

 トピックス

-----------------------------------------------*/

.topics aside{
  width: 95%;
  margin: 60px auto 0;
}

.topics-list select{
  width: 100%;
  font-size: 16px;
  margin: 0 0 15px;
  height: 34px !important;
}
.topics-list ul{
  margin: 20px 0 30px;
}
.topics-list ul li{
  margin: 20px 0;
  padding-top: 20px;
  border-top: 1px dotted #4e4e4e;
}
.topics-list ul li a{
  overflow: hidden;
}
.topics-list ul li:first-child{
  margin: 0;
  border-top: 0;
}
.topics-list ul li .img-wrap{
  width: 37%;
  float: left;
}
.topics-list ul li .txt-wrap{
  width: 60%;
  float: right;
}
.topics time{
  font-size: 0.74em;
  font-weight: bold;
  display: block;
  line-height: 1.6em;
}
.topics-list ul li:first-child time:before{
  content: 'NEW';
  padding: 0px 3px;
  margin-right: 10px;
  background: #ff0000;
  font-size: 0.7em;
  color: #fff;
  vertical-align: middle;
}
.topics-list h3{
  font-size: 1em;
  line-height: 1.5em;
  font-weight: bold;
  color: #4e4e4e;
  margin: 4px 0 2px;
}
.topics-list p{
  font-size: 0.78em;
  white-space: normal;
  line-height: 1.4em;
}
.pagination li{
  margin: 20px 0 !important;
  padding-top: 0 !important;
  border-top: 0 !important;
}
.pagination{
  text-align: center;
}
.pagination ul,.pagination ul li{
  display: inline-block;
  margin-bottom: 5px;
}
.pagination ul li.s-now a {
    background: #cccccc;
    color: #fff;
}
.pagination ul li a {
    border: 1px solid #e0e0e0;
    padding: 2px 5px;
    display: block;
}

.topics aside h3.category-tit{
  padding: 0 10px 14px 0;
  border-bottom: 1px solid #000;
  font-weight: bold;
  font-size: 1.1em;
}
.topics aside ul li a{
  padding: 14px 10px;
  display: block;
  position: relative;
  border-bottom: 1px dotted #000;
}
.topics aside ul li.on a,
.topics aside ul li.on a:hover{
  background: #e3e3e3;
  transition: 0.5s;
}
.topics aside ul li a:hover{
  background: #f4f4f4;
  transition: 0.5s;
}

/*-----------------------------------------------

 トピックス詳細

-----------------------------------------------*/
.topics-content{
  width: 100%;
}
.topics-content .category{
  display: inline-block;
  background: #000;
  color: #fff;
  margin: 18px 0;
  padding: 5px 10px;
}
.cate-top .category{
  display: inline-block;
  background: #000;
  color: #fff;
  margin: 6px 0 0;
  padding: 1px 6px;
  font-size: 0.75em;
  line-height: 1.6em;
}
.topics-content time{
  display: inline-block;
  color: #ef8100;
  font-weight: bold;
  font-size: 1em !important;
}
.topics-content img{
  max-width: 100%;
  width: auto;
}
.topics-content .top-img + .txt-wrap{
  padding: 10px 0 0;
}
.topics-content .txt-wrap{
  padding: 20px 0 0;
  font-size: 0.9em;
  line-height: 1.6em;
}
.topics-content .txt-wrap p{
  font-size: 1em;
}
.topics-content .txt-wrap h2{
  margin: 0 0 10px;
  font-size: 1.1em;
  font-weight: bold;
}
.topics-content .top-img + .txt-wrap a{
  text-decoration: underline;
  color: #ef8100;
  display: inline-block;
  padding: 5px 0;
}

/*-----------------------------------------------

 スクール

-----------------------------------------------*/

.school .attention{
  display: inline-block;
}
.school-title{
  padding: 20px 0 25px !important;
  border-bottom: 0;
}
.school-title .jp::before{
  content: "\25A0";
  display: inline-block;
  padding-right: 10px;
}
.school-title .jp{
  text-indent: -13px;
  padding-left: 35px;
}
.school-title .jp .small{
  font-size: 0.8em;
  background: none;
}

.school section:not(.max){
  padding: 10px 20px 40px;
}

.lower.school h1 {
  width: 70%;
  max-width: 580px;
  position: absolute;
  top: 57%;
  left: 50%;
  transform: translateY(-57%) translateX(-50%);
  margin: auto;
}
.lower.school .subtit{
  font-weight: bold;
  font-size: 1.1em;
  color: #f88600;
  margin: 0 0 5px;
}

/* youtube */
.school section{
  width: 100% !important;
  margin: 0!important;
}
.video-wrap{
  width: 100%;
  height: 0;
  position: relative;
  background-image: url(/images/school-topimg.jpg);
  /* padding-bottom: 75%; */
  padding-bottom: 133%;
  background-size: cover;
  background-position: right;
  padding-top: 18px;
}
.video-wrap iframe{
  display: none;
}
#video-background {
  z-index: -999;
}
#video-overlay {
  z-index: -998;
}
section.school-info,.school-details-belongings{
  margin-bottom: 30px !important;
}

.school-info .d-flex .txt-wrap h3{
  font-weight: bold;
  font-size: 1.3em;
  line-height: 1.4em;
  margin: 15px 0 10px;
}
.school-info .txt-wrap p{
  margin: 0 0 10px;
}

.school-info .d-flex .h3-wrap{
  width: 100%;
  margin-top: 10px;
  padding: 20px 20px 10px;
  background: #fce8de;
}
.school-info .h3-wrap h3{
  margin: auto 0;
}
.school-info .h3-wrap span{
  display: block;
  font-size: 1.2em;
  line-height: 1.5;
  font-weight: bold;
}
.school-info .h3-wrap .title01{
  color: #d21d24;
}
.school-info .h3-wrap .title02{
  padding: 15px 0;
}
.school-info .h3-wrap .title03{
  color: #e96338;
}
.school-info .subtxt-wrap{
  margin: 15px 0;
  padding: 15px;
  background: #f3f4f3;
}
.school-info .subtxt-wrap p b{
  color: #e96338;
  text-decoration: underline;
}
.orange-txtline{
  display: inline;
  background: linear-gradient(transparent 42%, #f6c379 0%);
}

.school-info .blog-allwrap .blog01,
.school-info .blog-allwrap .blog02{
  margin-bottom: 15px;
}
.school-info .blog-allwrap .blog{
  width: 100%;
  background: #f0f0f0;
  padding: 18px;
}
.school-info .blog-allwrap a{
  display:flex;
  flex-wrap: wrap;
  align-items: center;
}
.school-info .blog-allwrap .img-wrap{
  width: 40%;
}
.school-info .blog-allwrap .txt-wrap{
  width: 60%;
  padding-left: 15px;
}
.school-info .blog-allwrap .txt-wrap .btn{
  width: 113px;
  margin: 0;
  display: block;
  padding: 4px 10px 7px;
  background: #000;
  color: #fff;
  border-radius: 5px;
  font-size: 0.8em;
  line-height: 1.3;
  text-align: center;
}

.school-info .blog-allwrap .txt-wrap p{
  font-size: 0.95em;
}
.school-info .blog-allwrap .iframe-wrap{
  position: relative;
  padding: 56% 0 0 0;
  z-index: 1;
}
.school-info .blog-allwrap .iframe-wrap iframe{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.school-info .blog-allwrap .txt-wrap h3{
  font-weight: bold;
  font-size: 1.1em !important;
  line-height: 1.5em;
  margin: 0 0 2px;
}

section.school-point > p{
  background: rgba(255,255,255,0.2);
  padding: 10px 15px;
  margin-bottom: 30px;
}
.school-point .point-wrap{
  padding: 0 15px;
}
.school-point .point-wrap .point{
  background: #fff;
  padding: 20px;
  margin-bottom: 15px;
}
.school-point .point-wrap .point .txt-wrap{
  margin: 15px 0 0;
}
.school-point .point-wrap .point .txt-wrap h3{
  font-weight: bold;
  font-size: 1.2em;
  margin: 0 0 10px;
}
.school-point .point-wrap .point .txt-wrap p span{
  font-weight: bold;
}
.school-point .point-wrap .point01 .txt-wrap p span{
  font-size: 1em;
  color: #f40000;
  margin: 0 0 10px;
  display: block;
}
.school-point .point-wrap .point01 .txt-wrap p span.red{
  display: inline;
}
.school-point .point-wrap .point02 .txt-wrap p span{ color: #f47900; }
.school-point .point-wrap .point03 .txt-wrap p span{ color: #205bd2; }
.school-point .point-wrap .point04 .txt-wrap p span{ color: #048002; }

.school-details .table-wrap table{
  width: 100%;
  border: 1px solid #dcdcdc;
  margin:  20px 0 0; 
}
.school-details .table-wrap table td{
  padding: 10px 14px;
}
.school-details .table-wrap table td:first-child{
  border-right: 1px solid #dcdcdc;
}
.school-details .table-wrap table tr{
  border-bottom: 1px solid #cdcdcd;
}
.school-details .table-wrap .list-head th,
.school-details-belongings .list-head{
  background-color: #dbdbdb;
  /*background-image: -webkit-gradient(linear, 0 0, 100% 100%,color-stop(.25, #d7d7d7), color-stop(.25, transparent),color-stop(.5, transparent), color-stop(.5, #d7d7d7),color-stop(.75, #d7d7d7), color-stop(.75, transparent),to(transparent));*/
  padding: 8px 13px;
  text-align: center;
}
.school-details .table-wrap.max table th span,
.school-details .table-wrap.max table td span{
  display: inline-block;
  margin-bottom: 0;
  font-size: 0.92em;
}
.school-details .table-wrap.max table td:nth-child(1){
  width: 75%;
  line-height: 1.4;
}
.school-details .table-wrap.max table td:nth-child(2){
  width: 25%;
  min-width: 100px;
}
/* 基礎パドリングプール練習会スクール */
.school-details .table-wrap.three table{
  width: 100%;
}
.school-details .table-wrap.three table td span{
  font-size: 0.88em;
  color: #9e0b0f;
  display: inline-block;
  padding-left: 10px;
}
.school-details .table-wrap.three table td a{
  text-decoration: underline;
  display: block;
  text-align: center;
}

.school-details .indent{
  text-indent: -13px;
  padding: 5px 14px 0 13px !important;
  white-space: pre-line;
  color: #eb0000;
  font-size: 0.92em;
  display: block;
  line-height: 1.4;
}

.school-details p{
  margin: 10px 0 15px;
}

.school-details p.bg-skinclr{
  font-size: 1.45em;
  font-weight: bold;
}
.school-details ul + p,
.school-details ul.spmb65{
  margin: 10px 0 65px;
}
.school-details ul + p a{
  color: #f19126;
  text-decoration: underline;
  font-weight: bold;
  margin-top: 10px;
}
.orange-txtlink{
  color: #f19126;
  text-decoration: underline;
  font-weight: bold;
}
.school-details ul + p a:hover,
.orange-txtlink:hover{
  text-decoration: none;
}
.school-details-schedule b{
  font-weight: normal;
  font-size: 0.9em;
  text-indent: -17px;
  padding-left: 18px;
  display: block;
  line-height: 1.4;
}
.school-details-schedule h4{
  width: 100%;
  margin-bottom: 8px;
  font-weight: bold;
  font-size: 1.1em;
  border-top: 1px dotted #393939;
  border-bottom: 1px dotted #393939;
  padding: 15px 10px;
  color: #393939;
}
.school-details-schedule h4 span{
  display: inline-block;
  font-size: 0.8em;
  text-indent: -14px;
  padding-left: 15px;
  line-height: 1.4;
  margin-top: 2px;
  font-weight: normal;
}
.school-details-schedule a.entry-link{
  margin: 0 auto 40px;
}

.school-details-schedule ul li{
  width: 100%;
  border: 1px solid #dcdcdc;
  line-height: 1.65em;
  margin-bottom: 15px;
}
.school-details-schedule ul li p{
  padding: 4px 13px 0;
}
.school-details-schedule ul li p span{
  display: block;
  font-weight: bold;
}
.school-details-schedule .wrap-dl h4 + span{
  font-weight: normal;
  display: inline-block;
  font-size: 0.9em;
  padding-top: 7px;
}

.school-details-schedule h5{
  font-weight: bold;
  padding: 12px 0 10px;
  color: #393939;
}
/* 反映後削除 20250804 */
.school-details-schedule h5 span{
  font-size: 0.7em;
  font-weight: normal;
  color: #eb0000;
}
/* 反映後削除 20250804 ここまで */

.school-details-schedule .four h5 span {
  font-size: 1em;
  font-weight: bold;
  color: #eb0000;
}
.school-details-schedule dl,
.school-details-schedule dl div{
  display: flex;
  flex-wrap: wrap;
}
.school-details-schedule dl div::after{
  content: '';
  display: inline-block;
  width: 20px;
  height: 22px;
  margin: 6px auto;
  background-image: url(/images/school-schedule-icon01.png);
  background-size: contain;
  vertical-align: middle;
}
.school-details-schedule .dissolution-time dl div::after{
  background-image: url(/images/school-schedule-icon02.png);
  background-size: contain;
  vertical-align: middle;
}
.school-details-schedule .dissolution-time dl div:last-child::after{
  content: none;
}

.school-details-schedule .time-txt{
  width: 100%;
  margin: 15px 0 0;
  padding: 10px 15px;
  text-align: center;
  border: 3px dotted #f6c379;
}
.school-details-schedule .d-flex + .attention{
  width: 100%;
}

.school-details-schedule dl dt,
.school-details-schedule dl dd{
  display: flex;
  align-items: center;
}
.school-details-schedule dl dt{
  width: 50%;
  padding: 10px 15px;
  margin-top: 10px;
}
.school-details-schedule dl dd{
  width: 50%;
  padding: 10px 15px;
  margin-top: 10px;
}
.school-details-schedule .dissolution-time dl dt{
  width: 50%;
}
.school-details-schedule .dissolution-time dl dd{
  width: 50%;
}

/* 反映後削除0250804 */
.school-details-schedule .three .wrap-dl dt,
.school-details-schedule .three .wrap-dl dd{
  margin-top: 0 !important;
}
/* 反映後削除0250804 ここまで */
.school-details-schedule .four .wrap-dl dt,
.school-details-schedule .four .wrap-dl dd{
  margin-top: 0 !important;
}
.school-details-schedule .four .head-place{
  display: none;
}
.school-details-schedule .four .wrap-dl dt{
  border-radius: 5px 0 0 5px;
}
.school-details-schedule .four .wrap-dl dd{
  border-radius: 0 5px 5px 0;
}

.school-details-schedule dl dd.attention{
  width: 100%;
  background: none;
  padding: 0 5px 15px 1em;
  margin-top: 2px;
  text-indent: -1em;
}
.school-details-schedule .meeting-time dl dt{ background: #fdc26e; }
.school-details-schedule .meeting-time dl dd{ background: #fff1d6; }

.school-details-schedule .dissolution-time dl dt{ background: #88c7eb; }
.school-details-schedule .dissolution-time dl dd{ background: #d4edfb; }

.school-details-schedule .meeting-time dd span{
  font-weight: bold;
  color: #e96800;
}
.school-details-schedule .dissolution-time dl dd{
  display: block;
}
.school-details-schedule .dissolution-time dd span{
  font-weight: bold;
  color: #007ae2;
}

.school-details-schedule a.banner-img {
  margin: 35px auto 50px;
}
.school-details-fee strong{
  margin: 15px 0 25px;
  font-weight: bold;
  font-size: 1.28em;
  text-align: center;
  display: block;
  line-height: 1.5;
}
.school-details-fee strong.sp-only{
  margin: 15px 0 0;
}

.school-photo{
  width: 100%;
  overflow: auto;
  margin: 0 auto;
  background: #fff5e6;
  border-radius: 20px;
  padding: 15px;
  border: 2px solid #000;
}
.school-photo .d-flex{
  width: 100%;
  margin: 0 auto;
}
.school-photo .img-wrap{
  width: 50%;
  max-width: 272px;
}
.school-photo .txt-wrap{
  width: 49%;
  padding-left: 15px;
}
.school-photo .txt-wrap span{
  margin-bottom: 5px;
  display: block;
  font-weight: bold;
  color:#eb8d00;
  font-size: 1.2em;
}

.school-details-calendar ul{
  background: #fff7e7;
  padding: 10px 15px;
  line-height: 1.7em;
}
.school-details-schedule .wrap-dl{
  margin-bottom: 10px;
}

/* Googleカレンダー */
.cal_wrapper {
  max-width: 600px;
  min-width: 300px;
  margin: 5.0833% auto 0;
}
.googlecal {
position: relative;
padding-bottom: 100%;
height: 0;
}
.googlecal iframe {
position: absolute;
top: 0;
left: 0;
width: 100% !important;
height: 100% !important;
}
@media only screen and (min-width: 768px) {
  .googlecal { padding-bottom: 75%; }
}

.bg-skinclr{
  background: #fff7e7;
}
p.bg-skinclr{
  padding: 20px;
  font-size: 1.1em;
  text-align: center;
  line-height: 1.5;
}
div.bg-skinclr{
  margin-top: 20px;
  padding: 20px;
}
div.bg-skinclr h4{
  font-weight: bold;
  font-size: 1.3em;
  margin-bottom: 10px;
}
div.bg-skinclr p{
  font-size: 1em;
  margin: 0;
}

.school-details .tit-style02 + p .attention-b{
  display: block;
  background: #fff1d6;
  padding: 10px;
  margin-top: 15px;
  text-indent: -0.6em;
  padding-left: 1.5em;
}
.school-details .tit-style02 + p .attention-b span{
  color: #eb6400;
  font-weight: bold;
  display: block;
}
.school-details-lesson .img-wrap{
  width: 100%;
  margin-top: 20px;
}
.school-details-lesson .txt-wrap,
.school-details-lesson .txt{
  width: 100%;
  margin-top: 10px;
  padding: 20px;
}

/* 新しいh4スタイル */
.school-details-lesson .txt-wrap h4{
  margin-top: auto;
  margin-bottom: auto;
  font-size: 1.28em;
  line-height: 1.4;
  font-weight: bold;
  color: #1c1c1c;
}
.school-details-lesson .txt-wrap h4 span{
  display: block;
}
.school-details-lesson .txt-wrap h4 .title01{
  color: #d21d24;
  padding: 0;
}
.school-details-lesson .txt-wrap h4 .title02{
  padding: 15px 0;
}
.school-details-lesson .txt-wrap h4 .title03{
  color: #e96338;
  padding: 0;
}


.school-details-lesson .txt-wrap p{
  margin: 15px 0 0 !important;
}

.school-details-lesson .beginner .txt-wrap,
.school-details-lesson .beginner .txt{
  background: #ffefee;
}
.school-details-lesson .intermediate .txt-wrap,
.school-details-lesson .intermediate .txt{
  background: #ebe6fb;
}
.school-details-lesson .advanced .txt-wrap,
.school-details-lesson .advanced .txt{
  background: #dcf8da;
}
.school-details-lesson .private .txt-wrap,
.school-details-lesson .private .txt{
  background: #fffbce;
}
.school-details-lesson .basis .txt-wrap,
.school-details-lesson .basis .txt{
  background: #f6e6f1;
}
.school-details-lesson .basis .txt mark{
  margin-top: 4px;
  display: block;
  text-align: center;
  color: #9e0b0f;
  background: none;
}
.school-details-belongings ul.img-list-three + p{
  margin: 20px 0 25px;
}
.school-details-belongings .list-wrap .list ul{
  border: 1px solid #cdcdcd;
  margin-bottom: 15px;
}
.school-details-belongings .list-wrap .list ul li{
  border-bottom: 1px solid #cdcdcd;
  padding: 5px 10px;
}
.school-details-belongings .list-wrap .list ul li span{
  display: block;
  font-size: 0.9em;
  color: #d21d24;
  line-height: 1.4;
  padding-top: 2px;
  text-indent: -12px;
  padding-left: 12px;
}
.school-details-belongings .list-wrap .list ul li:last-child{
  border-bottom: 0;
}
/* スクール動画 */
#school-youtube{
  background: #fff;
  background-color: #fff5ae;
  background-image: linear-gradient(45deg, rgba(255, 249, 212, 0.8) 25%, transparent 25%, transparent 50%, rgba(255, 249, 212, 0.8) 50%, rgba(255, 249, 212, 0.8) 75%, transparent 75%, transparent);
  background-size: 20px 20px;
  padding: 1px 15px 40px;
}
.common-iframe-wrap.school-p{
  width: 96%;
  margin: 40px auto 0;
  border: 4px solid #fff;
}
.common-iframe-wrap.school-p .common-iframe{
  position: relative;
  padding: 56.3% 0 0 0;
  z-index: 1;
  background: #fbf3ba;
}
.common-iframe-wrap.school-p p {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  letter-spacing: 4px;
  color: #757575;
}
#school-flow.beach-bg {
  background: url(/images/common-parts-beach.jpg) repeat;
  padding: 5px 0 0;
}
#school-flow .txt-wrap{
  background: rgb(255,255,255,0.8);
  padding: 20px;
  margin: 10px 0 15px;
}
#school-flow .txt-wrap h3{
  font-weight: bold;
  font-size: 1.2em;
  padding-top: 7px;
  padding-bottom: 15px;
  text-indent: -1.8em;
  padding-left: 1.8em;
}
#school-flow .txt-wrap h3:first-letter{
  background: #000;
  color: #fff;
  font-size: 1em;
  height: 20px;
  width: 20px;
  border-radius: 50%;
  display: inline-block;
  padding: 0px 9px 1px;
  margin-right: 5px;
}
.slick-dots li button:before {
  font-size: 23px !important;/* スラドショーdocサイズ */
}
#school-flow .txt-wrap p{
  white-space: pre-line;
  font-size: 0.9em;
  line-height: 1.6em;
}
#school-flow .txt-wrap p em{
  display: block;
  margin-bottom: 5px;
  color: #f88600;
  font-weight: bold;
  font-size: 1.11em;
  line-height: 1.38em;
}
.school-finally{
  background: rgb(255,255,255,0.9);
  padding: 25px;
  margin-top: 60px !important;
}
.school-finally img{
  display: block;
  margin: 20px 0;
}
.school-finally p{
  white-space: pre-line;
}
.school-finally .tit-style02{
  border-top: 1px dotted #000;
  border-bottom: 1px dotted #000;
  margin: 15px 0 !important;
}
.entry-link {
  max-width: 300px;
  width: 100%;
  margin: 30px auto;
  background: none;
  padding: 14px 0 10px;
  border: 2px solid #000;
  font-weight: bold;
  text-align: center;
  cursor: pointer;
}
.entry-link:hover {
  color: #fff;
  background: #000;
  transition: 0.5s;
  cursor: pointer;
}

/*-----------------------------------------------

 スクール申し込み・お問い合わせ

-----------------------------------------------*/

section.inquiry-process-bg{
  width: 100%;
  height: auto;
  margin-bottom: 30px;
}
.inquiry-process-bg.thanks{
  margin: 0 auto;
}
.inquiry-process-bg.thanks .inquiry-process{
  margin: 0 auto 45px;
}
.inquiry-process{
  margin: 20px auto 0;
  font-size: 1em;
}
.inquiry-process div{
  width: 33.3%;
  float: left;
  padding: 8px 0;
  position: relative;
  text-align: center;
}
.inquiry-process .step1,
.inquiry-process .step2,
.inquiry-process .step3{
  color: #2e2e2e;
  background: #ffd156;
}
.inquiry-process .step1_on,
.inquiry-process .step2_on,
.inquiry-process .step3_on{
  color: #fff;
  background: #f29a00;
}
.inquiry-process .step2_on,
.inquiry-process .step3_on{
  padding-left: 2.5% !important;
}
.inquiry-process .step1_on:after,
.inquiry-process .step2_on:after{
  content: "";
  position: absolute;
  top: 50%;
  display: block;
  width: 0px;
  height: 0px;
  border-style: solid;
  border-color: transparent transparent transparent #f29a00;
  z-index: 1;
  right: -15px;
  margin-top: -19px;
  border-width: 19px 0 19px 15px;
}
.inquiry-process .step1_off,
.inquiry-process .step2_off{
  color: #2e2e2e;
  background: #ffd156;
}
.inquiry-process .step1_off:after,
.inquiry-process .step2_off:after {
  content: "";
  position: absolute;
  top: 50%;
  display: block;
  width: 0px;
  height: 0px;
  border-style: solid;
  border-color: transparent transparent transparent #ffd156;
  z-index: 1;
  right: -15px;
  margin-top: -19px;
  border-width: 19px 0 19px 15px;
}
.entry-intro .txt-only p,
.inquiry-intro .txt-only p{
  line-height: 1.5em;
  white-space: pre-line;
}
.entry-intro .txt-only p:first-child,
.inquiry-intro .txt-only p:first-child{
  color: #eb5e00;
  margin: 0 0 20px;
}
.entry-school-btn{
  max-width: 350px;
  width: 70%;
  margin: 30px auto;
  padding: 12px ;
  display: block;
  background: #5eace8;
  color: #fff;
  text-align: center;
}
.entry-school-btn:hover{
  background: #3e8dc9;
  transition: 0.3s;
}

.entry-intro .entry-school-btn{
  margin: 20px auto 0;
}
form + p .entry-school-btn{
  margin: 30px auto 0;
  padding: 20px;
}
.form-a{
  display: inline-block;
  text-indent: 0;
  padding: 0 5px;
  color: #eb0000;
  text-decoration: underline;
}
.form{
  width: 654px !important;
  margin: 2em 0 0;
}
.form dt.hissu span:after{
  content: '\203B';
  color: #ff0000;
  margin-left: 5px;
}
.form .txt{
  margin: 15px 0 0;
  line-height: 1.8em;
  color: #000;
  font-size: 0.9em;
}
.form .txt + .attention{
  text-indent: -1em;
  padding-left: 1em;
  padding-top: 0;
}
#main-full{
  width: 100%;
  margin: 0 auto;
}
section.form{
  padding-left: 0;
  margin-top: 20px !important;
}
.form .form-txt{
  margin: 20px 0;
  text-align: center;
}
.form-img{
  width: 250px;
  height: 188px;
}
.form-p{
  width: 60%;
  padding-left: 20px;
}
.form-p02{
  width: 75%;
  padding: 15px 20px 0 0;
  margin-top: 0 !important;
  float: left;
}
.form-img02{
  width: 142px;
  height: 154px;
  margin-top: 15px;
  padding: 8px;
  border: 1px solid #999;
  float: right;
}

.form-ul{
  margin: 10px 0;
  padding: 10px;
  clear: both;
}
.ul-blue{ border: dotted 1px #58b4ef; background: #fbfbfb;}
.ul-red{ border: dotted 1px #ef5858; background: #fffef6;}
.form-ul li{
  text-indent: -1.3em;
  padding-left: 1em;
  line-height: 1.6 !important;
  margin-bottom: 4px !important;
}
.ul-blue li:before{
  content: '\25A0\a0';
  color: #8ccef9;
}
.ul-red li:before{
  content: '\25A0\a0';
  color: #fca9a9;
}
.form-ul li:last-child{
  margin-bottom: 0 !important;
}
.form-ul li > .fa{
  color: #ef5858;
}

.form-img{
  width: 100%;
  height: 10%;
}
.form-p{
  width: 100%;
  padding-left: 0;
}
.form-p02{
  width: 70%;
  padding: 0;
}
.form-img02{
  width: 30%;
  height: 10%;
  padding-top: 0;
}
.form form div.attention p, .form form p.attention {
  margin-bottom: 0;
}
.form form .ul-cbox p.attention{
  margin-bottom: 5px;
  padding-top: 0;
}
.form{
  width: 100% !important;
  margin: 0 auto !important;
}
.new_header .box.sp{
  padding-bottom: 0 !important;
}
.new_header .box.sp .bg_white{
  position: relative;
}
.new_header .box.sp .logo,
.new_header .box.sp #nav-toggle{
  position: absolute;
}
#main-full{
  width: 100%;
}
#main-full .prelude{
  padding: 30px 15px;
  white-space: pre-line;
}
.form .form-txt{
  padding: 0 20px;
}
.form form dl dt{
  width: 100%;
  background: #eee;
  margin: 0;
  padding: 8px 10px;
}
.form form dl dt > span{
  border-top: 0;
  margin: 0;
  padding: 0;
  font-weight: bold;
}
.form form dl dd{
  width: 100%;
  border-top: 0;
  margin: 0;
  padding: 12px 10px 25px;
  line-height: 1.6em;
}
.form form dl dt:last-of-type{
  padding-bottom: 35px;
}
.form form dl dd.ckbx-rental{
  width: 64%;
}
.form form dl dd.ckbx-rental label{
  width: 50%;
  float: left;
}
.form textarea{
  width: 100%;
}
.form select {
  width: 100%;
}
.add-time b{
  padding: 0 0 0 10px;
  border-left: 6px solid #f29a00;
  display: block;
}

.form .radio-school label{
  text-indent: -18px;
  padding-left: 20px;
  display: inline-block;
}
.form .radio-school li:last-child{
  margin-bottom: 10px !important;
}

.form input[type="submit"]{
  width: 90%;
  margin: 20px auto;
}
.form .ok_icon + span.ok_span{
  width: 30px;
  height: 30px;
}
.form .hissu + dd .ok_icon{
  background: #fff !important;
}
.form .hissu + dd .err{
  background: #fff2f0 !important;
}
.form .hissu span + small{
  display: block;
  padding: 2px 0 0;
  color: #888;
  font-size: 0.8em;
} 
.form .ui-datepicker-trigger{
  width: 140px;
  margin: 0 0 0 15px;
}
.ui-datepicker-div{
  z-index: 9999;
}
.form #datepicker1,.form #datepicker2{
  width: 53%;
  margin: 0 0 0 3%;
}
.form .footer-tel-icon{
  width: 90%;
  margin: 0 auto 40px;
}
.form .form-arrow{
  background: #ffeab3;
  color: #656661;
  font-size: 18px;
  line-height: 1.35em;
  font-weight: bold;
}
.form .form-arrow:before{
  content: none;
}
.form .form-arrow + .arrow-icon{
  width: 100%;
  margin-bottom: 20px;
}

.form .ul-radio,
.form .ul-cbox {
  width: 100%;
  padding: 0;
}
.form .ul-radio li{
  width: 100%;
  margin-right: 0;
  margin-bottom: 10px;
}
.form .ul-cbox li {
  width: 100%;
  margin-right: 0;
  margin-bottom: 8px;
}
.form .ul-cbox li:first-child {
  padding-bottom: 8px;
  margin-bottom: 8px;
  border-bottom: 1px dotted #000;
}
.form .ul-radio li:last-child{
  margin-bottom: 0px;
}
.ml15{
  margin-left: 15px;
}
.form .label {
  width: 100%;
  padding: 6px 8px;
}
.select-rental label{
  width: 100%;
  display: inline-block;
  margin-top: 10px !important;
}
.select-rental label:first-child{
  margin-top: 0 !important;
}
.form input[type="text"],
.form input[type="email"],
.form input[type="tel"],
.form input[type="number"],
.form input[type="name"],
.form input[type="url"]{
  width: 70%;
  margin: 0;
  height: 40px;
  padding: 10px;
  font-size: 16px;
  line-height: 18px;
  background: #fff;
  border: 1px solid #adadad;
  box-shadow: 0 0 0 !important;
  border-radius: 5px;
}
.ad-num{
  width: 100px !important;
}
.ad-txt{
  margin-top: 10px !important;
}
.form input.ok_icon + span.ok_span,
.form input.ok_icon + img + .d-block select.ok_icon + span.ok_span,
.form textarea.ok_icon + span.ok_span{
  display: inline-block;
  width: 30px;
  height: 30px;
  background-image: url("/images/form-ok.gif");
  margin-left: 10px;
  vertical-align: text-bottom;
  background-size: cover;
}
.form .err + span.ok_span,
.form input.err + img + .d-block select.ok_icon + span.ok_span{
  display: none !important;
}
.form .hissu + dd input,.form .hissu + dd textarea{
  /* background: #fff2f0 !important; */
}
.form .hissu + dd .ok_icon{
  background: #fff !important;
}
.form .hissu + dd .err{
  background: #fff2f0 !important;
}
.form textarea{
  width: 100%;
  height: 160px;
  margin: 0;
  padding: 10px;
  font-size: 16px;
  line-height: 18px;
  background: #fff;
  border: 1px solid #ccc;
  box-shadow: 0 0 0 !important;
  border-radius: 5px;
}
.short{ width: 30% !important; }
.midium{ width: 50% !important; }
.long{ width: 70% !important; }
.max{ width: 100% !important; }

.form select{
  box-shadow: 0 0 0 !important;
  margin-top: 0!important;
}
.form input[type="button"],
.form input[type="submit"]{
  border-radius: 0;
  cursor: pointer;
}
.form input[type="submit"]{
  width: 80%;
  color: #fff;
  padding: 25px 0;
  background: #f8b500;
  border: 0;
  font-size: 16px;
  margin: 40px auto 10px;
  display: block;
}

.form-thanks h2{
  font-size: 1.7em;
  font-weight: bold;
  text-align:  center;
  padding: 0 0 20px;
}
.form-thanks p{
  text-align:  center;
  line-height: 1.9em;
}
.form-thanks p a{
  color: #f19126;
  text-decoration: underline;
  font-weight: bold;
  margin-top: 15px;
}
.form-thanks p a:hover{
  text-decoration: none;
}

.form .btn-wrap{
  width: 98%;
  margin: 0 auto;
}
.form .btn-wrap button{
  background: #b8b8b8;
  color: #fff;
  border: 0;
}
.form .btn-wrap button,
.form .btn-wrap input{
  width: 43% !important;
  max-width: 300px;
  font-size: 1.1em;
  margin: 80px auto 0;
  cursor: pointer;
}

/*-----------------------------------------------

 店舗案内

-----------------------------------------------*/
section.shop-wrap{
  padding: 30px 15px !important;
}
.shop-gallery{
  width: 100%;
}
.shop-gallery > div{
  width: 100%;
  margin: 15px 0;
}
div,.shop-gallery ul{
  width: 100%;
}
.shop-gallery ul li{
  width: 24%;
  margin: 0 0 8px;
}
.shop-gallery ul li img{
  width: 100%;
  height: auto;
}
.shop-detail dl{
  margin: 10px 0;
  font-size: 0.9em;
}
.shop-detail dt{
  width: 100%;
  padding-bottom: 6px;
  margin-bottom: 5px;
  font-weight: bold;
  border-bottom: 1px dotted #000;
  font-size: 1.1em;
}
.shop-detail dd{
  width: 100%;
  margin-bottom: 15px;
  white-space: pre-line;
  color: #4a4a4a;
}
.shop-detail dd span{
  font-weight: bold;
  font-size: 0.95em;
  display: block;
  margin-right: 4px;
}
.shop-detail dd a{
  display: inline;
}
.shop-wrap .traffic{
  overflow: auto;
}
.shop-wrap .map-wrap{
  width: 100%;
}
.shop-wrap .traffic .traffic-txt{
  width: 100%;
  margin-top: 20px;
}
.shop-wrap .traffic .traffic-txt h3,
.shop-wrap .map-wrap h3{
  width: 100%;
  margin-bottom: 10px;
  padding-bottom: 6px;
  font-weight: bold;
  border-bottom: 1px dotted #000;
  font-size: 1.1em;
}
.shop-wrap .map-wrap h3{
  margin-top: 40px;
}
.shop-wrap .traffic .traffic-txt dl{
  background: #f3f3f3;
  overflow: auto;
  font-size: 0.94em;
}
.shop-wrap .traffic .traffic-txt dl.bgcl{
  background: #eaeaea;
}
.shop-wrap .traffic .traffic-txt dt{
  width: 100%;
  font-weight: bold;
  padding: 7px 10px 0 12px;
}
.shop-wrap .traffic .traffic-txt dd{
  width: 100%;
  padding: 0 10px 10px 10px;
}
.shop-wrap .traffic .traffic-txt dd ul li:not(.no-indent),
.shop-wrap .traffic .traffic-txt dd ul li div,
.shop-wrap .traffic .traffic-txt dd ul li ol li{
  text-indent: -1em;
  padding-left: 1em;
}
.shop-wrap .traffic .traffic-txt dd ul li.come{
  font-size: 0.9em;
  color: #d90101;
}
.shop-wrap .traffic .traffic-txt dd ul li div + ol{
  padding: 0 5px 10px 15px;
  font-size: 0.94em;
  line-height: 1.5em;
}
.shop-wrap .traffic .traffic-txt dd ul li div + ol li{
  padding-top: 5px;
}
.shop-wrap iframe{
  width: 100%;
  height: 250px;
}
.shop-wrap article.shop-brand{
  margin-bottom: 60px;
}
.shop .shop-brand ul{
  max-width: 1030px;
  width: 100%;
  margin: 0 auto;
  padding: 0 15px;
  display:flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.shop .shop-brand ul li{
  width: 33.3333%;
  padding: 10px;
}

/* 20201209追記 */
.shop .shop-display{
  padding: 0 15px;
}
.shop .shop-display .tit-style01 {
  margin: 40px 0 15px;
}
.shop .shop-display h1 + p{
  font-weight: bold;
  text-align: center;
  margin: 10px 0;
  font-size: 1.23em;
}
.shop .shopimg{
  /*margin: 20px 0;*/
}
.shop .shopimg li{
  width: 50%;
}

.shop-info .greeting-wrap{
  padding: 20px 0 30px;
}
.shop-info .greeting-wrap .img-wrap{
  width: 60%;
  margin: 0 auto;
}
.shop-info .greeting-wrap .txt{
  width: 100%;
  padding: 20px 0 0 0;
  white-space: pre-line;
}

.shop-info .trajectory-wrap{
  background: #f2f2f2;
  padding: 20px 15px;
}
.shop-info .trajectory-wrap h3{
  width: 100%;
  text-align: center;
  font-weight: bold;
  padding: 0 0 18px;
  display: block;
  font-size: 1.2em;
}
.shop-info .trajectory-wrap .img-wrap{
  width: 100%;
}
.shop-info .trajectory-wrap .txt{
  width: 100%;
  padding: 20px 0 0 0;
  font-size: 0.96em;
  white-space: pre-line;
}
.shop-info .trajectory-wrap .txt span{
  font-weight: bold;
  display: block;
  font-size: 1.3em;
  margin-bottom: 8px; 
}

.map-ul{
  width: 100% !important;
  margin: 20px 0 0;
}
.map-ul li{
  width: 48.5% !important;
}
.map-ul li img{
  width: 100%;
  border: 10px solid #f2d294;
}
.map-ul li p{
  width: 100%;
  text-align: center;
  padding: 8px 10px 0;
  margin: 0 ;
  font-size: 0.9em;
  background: #f2d294;
}

/* 店舗動画 */
#shop-youtube{
  padding: 0 15px;
}
#shop-youtube.bg{
  border-top: 10px solid #fff5ae;
  border-bottom: 10px solid #fff5ae;
  background-color: #fff5ae;
  background-image: linear-gradient(45deg, rgba(255, 249, 212, 0.8) 25%, transparent 0),
  linear-gradient(45deg, transparent 75%, rgba(255, 249, 212, 0.8) 0),
  linear-gradient(45deg, rgba(255, 249, 212, 0.8) 25%, transparent 0),
  linear-gradient(45deg, transparent 75%, rgba(255, 249, 212, 0.8) 0);
  background-size: 30px 30px;
  background-position: 0 0, 15px 15px, 15px 15px, 30px 30px;
  color: #000;
  padding: 0 0 40px !important;
}
#shop-youtube.bg .tit-style01 span.jp,
#shop-youtube.bg .tit-style01 span.en{
  color: #000;
}
.common-iframe-wrap.shop-p{
  width: 96%;
  margin: 40px auto 0;
  border: 0;
}
.bg .common-iframe-wrap.shop-p{
  border: 4px solid #f4eee9;
}
.common-iframe-wrap.shop-p .common-iframe{
  position: relative;
  padding: 56.2% 0 0 0;
  z-index: 1;
  background: #fff5ae;
}
#shop-youtube.bg .tit-style01{
  margin: 0 0 45px;
  padding-top: 40px;
}



/*-----------------------------------------------

 サーフボードリペア・修理

-----------------------------------------------*/
.repair-intro .img-wrap{
  width: 100%;
  height: auto;
}
.repair-intro .img-wrap ul li{
  width: 32.5%;
  margin: 5px 0;
}
.repair-intro .txt-wrap{
  margin: 15px 0 20px;
}
.repair-intro .txt-wrap p{
  white-space: pre-line;
}
.repair-intro p span{
  background: linear-gradient(transparent 45%, #fffebb 0%);
  display: inline;
  line-height: 1.2em;
}
section.repair-main{
  margin: 30px 0 0;
  padding: 40px !important;
  background: #f2f2f2;
}
.repair-main h2 {
  font-weight: bold;
  text-align: center;
  padding: 0 0 15px;
  font-size: 1.5em;
}
.repair-main .attention{
  padding: 10px 0;
}
.repair-main .img-wrap ul{
  width: 100%;
  margin-bottom: 20px;
}
.repair-main .img-wrap ul li{
  width: 100%;
  margin-top: 20px;
}
.repair-main .img-wrap ul li div{
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.repair-main .img-wrap ul li .before,
.repair-main .img-wrap ul li .after{
  width: 49.6%;
  position: relative;
  border: 1px solid #cdcdcd;
}
.repair-main .img-wrap ul li .before:after{
  content: "BEFORE";
  font-family: arial black,"Hiragino Kaku Gothic Pro","メイリオ",Meiryo;
  padding: 2px 5px;
  border: 1px solid #fff;
  position: absolute;
  right: 5px;
  top: 5px;
  background: rgba(255,255,255,0.8);
  font-size: 13px;
}
.repair-main .img-wrap ul li .after:after{
  content: "AFTER";
  font-family: arial black,"Hiragino Kaku Gothic Pro","メイリオ",Meiryo;
  padding: 2px 5px;
  border: 1px solid #f88600;
  position: absolute;
  right: 5px;
  top: 5px;
  background: rgba(248,134,0,0.8);
  color: #fff;
  font-size: 13px;
}
.repair-main .img-wrap ul li p{
  width: 100%;
  font-size: 1.05em;
  padding: 3px 7px;
  background: #2b2b2b;
  color: #fff;
  margin-bottom: 6px;
  font-size: 0.9em;
}
.repair-main .img-wrap ul li span{
  font-size: 0.9em;
  display: block;
  padding: 5px 0 0;
  line-height: 1.5em;
}

.repair-wax{
  margin: 0 0 40px;
}

.repair-rental .img-wrap{
  width: 100%;
  height: auto;
  margin-bottom: 10px;
}
.repair-rental .img-wrap ul li{
  width: 32.5%;
  margin: 5px 0;
}
.repair-rental .txt-wrap p{
  white-space: pre-line;
}
.repair-rental .attention-b{
  padding: 15px 22px;
  font-size: 0.94em;
  clear: both;
  margin-bottom: 25px;
  background: #ffeaea;
}

.rental-table .common-list{
  width: 100% !important;
  border: 1px solid #dcdcdc;
  margin-bottom: 15px; 
  clear: both;
}
.common-list{
  width: 100%;
  border: 1px solid #dcdcdc;
  margin-bottom: 15px; 
}
.common-list td{
  padding: 10px 14px;
}
.common-list td:first-child{
  border-right: 1px solid #dcdcdc;
}
.common-list tr{
  border-bottom: 1px solid #cdcdcd;
}
.common-list .list-head th{
  background-color: #dbdbdb;
  background-image: -webkit-gradient(linear, 0 0, 100% 100%,color-stop(.25, #d7d7d7), color-stop(.25, transparent),color-stop(.5, transparent), color-stop(.5, #d7d7d7),color-stop(.75, #d7d7d7), color-stop(.75, transparent),to(transparent));
  padding: 8px 13px;
  text-align: center;
}
section.repair-attention{
  margin: 20px auto 0 !important;
}
.repair-attention h2{
  width: 100%;
  padding: 8px 12px;
  background: #2b2b2b;
  color: #fff;
  margin-bottom: 6px;
  font-size: 1em;
}
.repair-attention p{
  margin: 20px 0;
}
.repair-attention p a{
  display: inline;
  text-decoration: underline;
}
.repair-attention p span{
  color: #eb0000;
  font-weight: bold;
}
.repair-attention ul{
  border: 1px dotted #000;
  padding: 20px;
}
.repair-attention ul li{
  text-indent: -1em;
  padding-left: 1em;
  margin-bottom: 10px;
}
.repair-attention ul li span{
  display: block;
  color: #eb0000;
  padding-left: 1em;
  font-size: 0.92em;
}

/*-----------------------------------------------

 初心者フルセット

-----------------------------------------------*/
section.fullset-info{
  margin:0 0 30px;
}

.fullset-info .txt-wrap ul li{
  margin: 10px 5px 10px 0;
  display: inline-block;
  padding: 3px 5px;
  color: #fff;
  font-size: 0.9em;
  font-weight: bold;
}
.fullset-info .txt-wrap ul li:first-child{ background: #0065c3;}
.fullset-info .txt-wrap ul li:last-child{ 
  background: #ff2d2d;
  margin: 10px 0;
}
.fullset-info .txt-wrap h2 {
  font-weight: bold;
  font-size: 1.3em;
  margin: 0 0 10px;
  line-height: 1.5em;
}
.fullset-info p{
  line-height: 1.5em;
  white-space: pre-line;
}

section.fullset-point{
  width: 92%;
  padding: 45px 30px 35px !important;
  margin-bottom: -100px;
  background: #ececec;
}
.fullset-point h3{
  font-weight: bold;
  text-align: center;
  padding: 0 0 15px;
  font-size: 1.25em;
}
.fullset-point h3:before{
  content: "\2605";
  padding-right: 3px;
}
.fullset-point h3:after{
  content: "\2605";
  padding-left: 3px;
}
.fullset-point p{
  width: 92%;
  margin: 0 auto;
  text-align: center;
}
.fullset-point ul {
  padding: 30px 15px;
}
.fullset-point ul li{
  width: 48%;
  margin-bottom: 15px;
}
.fullset-point ul li:nth-child(3),
.fullset-point ul li:nth-child(4){
  margin-bottom: 0;
}
.fullset-point ul li h4{
  font-weight: bold;
  text-align: center;
  font-size: 0.95em;
  padding: 8px 0 0;
}

section.fullset-product > p{
  margin-top: 10px;
  background: #fff7e7;
  padding: 10px 15px;
  font-size: 0.9em;
}
section.fullset-product > p a{
  display: inline;
  text-decoration: underline;
  color: #f86f00;
}
.fullset-product .link-list{
  padding: 10px 0 18px;
}
.fullset-product .link-list > li{
  margin-bottom: 14px;
}
.fullset-product .link-list > li a{
  text-indent: -0.9em;
  padding-left: 0.9em;
}
.fullset-product .link-list > li a:before{
  content: "\30FB";
  color: #ff9600;
}
.fullset-product .link-list > li a:hover{
  text-decoration: underline;
}
.fullset-product .product-list > li{
  margin-bottom: 25px;
  padding: 30px 15px 20px;
  background: #f2f2f2;
}
.fullset-product .product-list > li .img-wrap{
  width: 100%;
  margin: 0 auto;
}
.fullset-product .product-list #full01 ul li{
  width: 49.2%;
  margin-top: 5px;
}

.fullset-product .product-list > li .txt-wrap{
  margin-top: 15px;
}
.fullset-product .product-list > li .txt-wrap h3{
  font-size: 1.3em;
  font-weight: bold;
  border-bottom: 1px dotted #000;
  padding: 0 0 10px;
  line-height: 1.3em;
}
.fullset-product .product-list > li .txt-wrap h3:before{
  content: "NEWモデル";
  text-decoration: underline;
  font-weight: bold;
  color: #ff0000;
  display: block;
  font-size: 0.75em;
  padding-bottom: 4px;
}
.fullset-product .product-list > li .txt-wrap h3 + p{
  margin: 10px 0;
}
.fullset-product .product-list > li .txt-wrap ul + p{
  margin: 10px 0;
  color: #f86f00;
  font-weight: bold;
}
.fullset-product .product-list > li .txt-wrap dl{
  background: #fff;
  padding: 15px;
}
.fullset-product .product-list > li .txt-wrap dl dt{
  width: 100%;
  line-height: 1.4em;
}
.fullset-product .product-list > li .txt-wrap dl dt span{
  font-size: 0.87em;
  display: inline-block;
  padding-left: 5px;
}
.fullset-product .product-list > li .txt-wrap dl dd{
  width: 100%;
  line-height: 1.4em;
  margin-left: 15px;
  margin-bottom: 10px;
}
.fullset-product .product-list > li .txt-wrap .price{
  margin: 10px 0;
}
.fullset-product .product-list .normal{
  font-size: 1em;
  padding-bottom: 8px;
  text-decoration: line-through;
}
.fullset-product .product-list .sale{
  font-size: 1.1em;
  color: #ff0000;
  font-weight: bold;
  padding-bottom: 10px;
}
.fullset-product .product-list .sale span{
  font-size: 1.3em;
  padding: 0 5px 0 0;
}
.fullset-product .product-list .school-sale{
  display: inline-block;
  font-size: 1.2em;
  background: #ff0000;
  font-weight: bold;
  color: #fff;
  padding: 7px 10px;
  text-align: center;
  line-height: 1.45em;
}
.fullset-product .product-list .school-sale span{
  font-size: 1.6em;
  vertical-align: bottom;
  line-height: 1.1em;
}
.fullset-product .product-list > li .txt-wrap ul{
  background: #fff;
  padding: 15px;
}
.fullset-product .product-list > li .txt-wrap ul li{
  width: 100% !important;
  text-indent: -1.1em;
  padding-left: 1.1em;
  line-height: 1.2em;
  margin: 8px 0 0;
}
.fullset-product .product-list > li .txt-wrap ul li:first-child{
  margin: 0;
}
.fullset-product .product-list > li .txt-wrap ul li:before,
.fullset-product .product-list > li .txt-wrap dl dt:before{
  content:"\30FB";
  font-weight: bold;
  font-size: 1.1em;
  vertical-align: middle;
}
.fullset-product .product-list > li .txt-wrap ul li:before{ color: #989898; }
.fullset-product .product-list > li .txt-wrap dl dt:before{ color: #ffae00; }

.fullset-product .product-list > li .txt-wrap .attention{
  text-indent: -1.1em;
  padding-left: 1.1em;
  margin-top: 5px
}
.max450{
  display: none;
}

/*閉じるボタンの設定*/
#boxer .boxer-close {
  background: #fff url(../images/boxer/jquery.fs.boxer-icons.png) no-repeat -70px 10px;
}
/*ナビゲーションの設定*/
#boxer .boxer-control {
  background: #fff url(../images/boxer/jquery.fs.boxer-icons.png) no-repeat 0 0;
}
/*ローディング画像の設定*/
#boxer.loading .boxer-container {
  background: #fff url(../images/boxer/jquery.fs.boxer-loading.gif) no-repeat center;
}
/*モバイル用ローディング画像の設定*/
#boxer.mobile.loading .boxer-container {
  background: #000 url(../images/boxer/jquery.fs.boxer-loading-dark.gif) no-repeat center;
}
/*オーバーレイの設定*/
#boxer-overlay {
  background: #000;
  height: 100%;
  left: 0;
  opacity: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 105;
}
/*オーバーレイの不透明度の設定*/
.boxer-open #boxer-overlay {
  opacity: 0.75;
}


/*-----------------------------------------------

 サーフTEAM

-----------------------------------------------*/

.surfteam-explanation .img-wrap{
  width: 100%;
}
.surfteam-explanation .txt-wrap{
  width: 100%;
  padding: 12px 15px 0;
}
.surfteam-explanation .img-list-three{
  padding: 0 15px 10px;
}
.surfteam-explanation .txt-wrap p.mark{
  width: 187px;
  margin: 0 0 4px 0;
  padding: 5px;
  display: block;
  background: #f56f00;
  color: #fff;
  font-size: 1.05rem;
  letter-spacing: 1px;
  text-align: center;
}
.surfteam-explanation .txt-wrap p.mark::before{
  content: "\2605";
  color: yellow;
  display: inline-block;
  padding-right: 8px;
}

.surfteam-explanation .txt-wrap p.mark + span{
  display: inline-block;
  font-size: 0.85rem;
  color: #eb0000;
  padding: 4px 0 0 20px;
  text-indent: -15px;
  line-height: 1.4;
}
.surfteam-explanation .txt-wrap h3{
  font-size: 1.5em;
  font-weight: bold;
  margin: 10px 0 15px;
  line-height: 1.4;
}
.surfteam-explanation .txt-wrap h4{
  font-size: 1.2em;
  font-weight: bold;
  color: #ec6b00;
  margin: 0 0 15px;
  line-height: 1.66em;
}
.surfteam-explanation .txt-wrap h4 span{
  display: block;
  color: #0e77b7;
  margin-top: 5px;
}
.img-list-three,
.img-list-two{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.img-list-three li{
  width: 33.1%;
}
.img-list-two li{
  width: 49.85%;
}
.surfteam-explanation .orange-wrap{
  width: 95%;
  margin: 0 auto;
}
.surfteam-benefits{
  width: 96%;
  background: #f3f3f3;
  padding: 35px 30px;
  margin: 30px auto 0;
}
.surfteam-benefits h3{
  margin: 0 0 20px;
  font-weight: bold;
  font-size: 1.3em;
  text-align: center;
}
.surfteam-benefits ol li{
  width: 48.5%;
  background: #fff;
  padding: 25px 20px 15px 33px;
  margin-top: 15px;
  position: relative;
}
/* ラベル部分 左上に表示 */
.surfteam-benefits ol li::before {
  content: "";
  top: 0;
  left: 0;
  border-bottom: 3.4em solid transparent;
  border-left: 3.4em solid #000;
  position: absolute;
  z-index: 100;
}
.surfteam-benefits ol li::after {
  content: "1";
  display: block;
  top: 5px;
  color: #fff;
  left: 8px;
  position: absolute;
  z-index: 101;
}
.surfteam-benefits ol li:nth-child(2)::after { content: "2"; }
.surfteam-benefits ol li:nth-child(3)::after { content: "3"; }
.surfteam-benefits ol li:nth-child(4)::after { content: "4"; }
.surfteam-benefits ol li:nth-child(5)::after { content: "5"; }
.surfteam-benefits ol li:nth-child(6)::after { content: "6"; }
.surfteam-benefits ol li:nth-child(7)::after { content: "7"; }
.surfteam-benefits ol li:nth-child(8)::after { content: "8"; }
.surfteam-benefits ol li:nth-child(9)::after { content: "9"; }
.surfteam-benefits ol li:nth-child(10)::after { 
  content: "10";
  left: 5px;
}

.surfteam-benefits ol li h4{
  margin: 0 0 5px;
  font-size: 1.1em;
  font-weight: bold;
}
.surfteam-benefits ol li p{
  font-size: 0.92em;
  line-height: 1.6em;
}


.orange-wrap p{
  border: 5px solid #ed731c;
  background: #fff4dc;
  padding: 15px;
  word-break: break-all;
}
.orange-wrap p span{
  display: block;
  margin-top: 15px;
  font-weight: bold;
}
.orange-wrap p a{
  display: inline;
  text-decoration: underline;
  color: #ed731c;
}
.orange-wrap h4{
  padding: 8px 15px 4px;
  background: #ed731c;
  color: #fff;
  font-size: 1.3em;
  line-height: 1.45;
  font-weight: bold;
}

.em-wrap{
  text-align: center;
}
.surfteam-intro em{
  font-size: 1.6em;
  font-weight: bold;
  display: inline;
  line-height: 1.6;
  letter-spacing: -1px;
  background: linear-gradient(transparent 65%, #ffff15 0%);
}

.benefits-base{
  margin-top: 40px;
  padding: 0 15px;
}

.surfteam-benefits01 .vipcard{
  max-width: 800px;
  width: 100%;
  margin: 15px auto 20px;
}
.surfteam-benefits02 .sponsor-list{
  margin: 50px 0 10px;
}
.surfteam-benefits02 .sponsor-list > li{
  margin-bottom: 25px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
.surfteam-benefits02 .sponsor-list .detail-wrap{
  width: 100%;
}
.surfteam-benefits02 .sponsor-list .detail-wrap h4{
  background: #000;
  display: flex;
  flex-flow: row wrap;
}
.surfteam-benefits02 .sponsor-list .detail-wrap h4 span{
  width: 100%;
  padding: 5px 15px 8px;
  color: #fff;
  font-size: 1.15em;
  line-height: 1.4;
  display: block;
  order: 2;
}
.surfteam-benefits02 .sponsor-list .detail-wrap h4 mark{
  width: auto;
  margin: 10px 0 0 15px;
  padding: 2px 10px;
  display: block;
  color: #000;
  background: #8acbf3;
  border-radius: 5px;
  font-weight: bold;
  font-size: 0.9em;
  line-height: 1.4;
  order: 1;
  text-align: center;
}
.surfteam-benefits02 .sponsor-list .detail-wrap .info{
  padding: 10px 15px;
  border: 1px solid #000;
  font-size: 0.97em;
}
.surfteam-benefits02 .sponsor-list .detail-wrap .info ul{
  font-size: 0.95em;
}
.surfteam-benefits02 .sponsor-list .detail-wrap .info p:first-child{
  margin-bottom: 10px;
}
.surfteam-benefits02 .sponsor-list .detail-wrap .info p:empty{
  display: none;
}
.surfteam-benefits02 .sponsor-list .detail-wrap li{
  line-height: 1.3;
  margin-bottom: 7px;
}
.surfteam-benefits02 .sponsor-list .detail-wrap li:last-child{
  margin-bottom: 0;
}
.surfteam-benefits02 .sponsor-list .detail-wrap a{
  display: inline;
  word-break: break-all;
}
.surfteam-benefits02 .sponsor-list .img-wrap{
  display: none;
}
.surfteam-benefits02 .sponsor-list .service{
  margin-top: 10px;
  font-size: 1.1em;
}
.surfteam-benefits02 .sponsor-list .service span{
  font-weight: bold;
  padding-right: 5px;
}
.surfteam-benefits02 .sponsor-list + .em-wrap{
  border: 1px solid #000;
  padding: 20px 0 25px;
}
.surfteam-benefits02 .sponsor-list + .em-wrap em{
  font-size: 1.6em;
}
.surfteam-benefits02 .sponsor-list + .em-wrap + p a{
  display: inline-block;
}


.surfteam-benefits03 .point-card{
  width: 100%;
  margin: 0 auto 20px;
}
.surfteam-benefits03 .point-card li:nth-child(1){
  width: 90%;
  margin: 0 auto 15px;
}
.surfteam-benefits03 .point-card li:nth-child(2){
  width: 100%;
}
.surfteam-benefits03 .point-card li .txt-wrap{
  margin-top: 10px;
  padding: 15px 5px;
  text-align: center;
}
.surfteam-benefits03 .point-card li:nth-child(1) .txt-wrap{
  border: 5px solid #935e42;
}
.surfteam-benefits03 .point-card li:nth-child(2) .txt-wrap{
  border: 5px solid #ff9100;
  color: #ff0025;
}
.point-card li .txt-wrap h4{
  font-weight: bold;
  margin-bottom: 5px;
}
.point-card li:nth-child(1) .txt-wrap h4{
  font-size: 1.2em;
}
.point-card li:nth-child(2) .txt-wrap h4{
  font-size: 1.4em;
  line-height: 1.2;
}

.surfteam-benefits07 .em-wrap{
  margin-top: 25px;
}
.surfteam-benefits07 em{
  font-size: 1.4em;
}

.surfteam-benefits09 ul{
  margin-bottom: 15px;
}
.surfteam-benefits09 ul li{
  width: 49.2%;
}

.surfteam-benefits10{
  padding: 1px 0 100px !important;
}
.surfteam-benefits10 .wrap1000{
  padding: 0 15px;
}


div.surfterm-event{
  padding: 20px 0 60px;
  margin: 40px 0 -100px;
  background-color: #e7e7e7;
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.3) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.3) 50%, rgba(255, 255, 255, 0.3) 75%, transparent 75%, transparent);
  background-size: 20px 20px;
}
div.surfterm-event a.banner-img{
  margin: 60px auto;
}

.surfterm-event h2 + p{
  padding: 20px 30px;
  margin-bottom: 0;
  white-space: pre-line;
  background: rgba(255,255,255,0.4);
  text-align: center;
}
.surfterm-event h2 + p img{
  max-width: 500px;
  width: 100%;
  padding: 0 15px;
}

.surfterm-event .calendar{
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
  padding: 0 0 10px;
}
.surfterm-event .calendar li{
  width: 48.5%;
  background: #fff;
  padding: 10px 10px 30px 10px;
  margin: 30px 0 0;
  text-align: center;
  position: relative;
  border: 4px solid #fff;
}
.surfterm-event .calendar li::before {
  content: "";
  bottom: 0;
  right: 0;
  border-top: 3em solid transparent;
  border-right: 3em solid #000;
  position: absolute;
  z-index: 100;
}
.surfterm-event .calendar li p{
  font-weight: bold;
  font-size: 1.2em;
  padding: 15px 0 10px;
}
/*1月*/
.surfterm-event .calendar li:nth-child(1)::before{ border-right: 3em solid #4a47bc; }
.surfterm-event .calendar li:nth-child(1) p{ color: #4a47bc; }

/*2月*/
.surfterm-event .calendar li:nth-child(2)::before,
.surfterm-event .calendar li:nth-child(3)::before,
.surfterm-event .calendar li:nth-child(4)::before{ border-right: 3em solid #3788d8; }
.surfterm-event .calendar li:nth-child(2) p,
.surfterm-event .calendar li:nth-child(3) p,
.surfterm-event .calendar li:nth-child(4) p{ color: #3788d8; }

/*3月*/
.surfterm-event .calendar li:nth-child(5)::before,
.surfterm-event .calendar li:nth-child(6)::before{ border-right: 3em solid #83b41d; }
.surfterm-event .calendar li:nth-child(5) p,
.surfterm-event .calendar li:nth-child(6) p{ color: #83b41d; }

/*4月*/
.surfterm-event .calendar li:nth-child(7)::before{ border-right: 3em solid #ff669a; }
.surfterm-event .calendar li:nth-child(7) p{ color: #ff669a; }

/*5月*/
.surfterm-event .calendar li:nth-child(8)::before,
.surfterm-event .calendar li:nth-child(9)::before{ border-right: 3em solid #eb3f44; }
.surfterm-event .calendar li:nth-child(8) p,
.surfterm-event .calendar li:nth-child(9) p{ color: #eb3f44; }

/*6月*/
.surfterm-event .calendar li:nth-child(10)::before,
.surfterm-event .calendar li:nth-child(11)::before{ border-right: 3em solid #029834; }
.surfterm-event .calendar li:nth-child(10) p,
.surfterm-event .calendar li:nth-child(11) p{ color: #029834; }

/*7月
.surfterm-event .calendar li:nth-child(12)::before{ border-right: 3em solid #bfbe21; }
.surfterm-event .calendar li:nth-child(12) p{ color: #bfbe21; }
*/

/*8月*/
.surfterm-event .calendar li:nth-child(12)::before,
.surfterm-event .calendar li:nth-child(13)::before{ border-right: 3em solid #cd9933; }
.surfterm-event .calendar li:nth-child(12) p,
.surfterm-event .calendar li:nth-child(13) p{ color: #cd9933; }

/*9月*/
.surfterm-event .calendar li:nth-child(14)::before{ border-right: 3em solid #ce6538; }
.surfterm-event .calendar li:nth-child(14) p{ color: #ce6538; }

/*10月*/
.surfterm-event .calendar li:nth-child(15)::before,
.surfterm-event .calendar li:nth-child(16)::before{ border-right: 3em solid #cd3301; }
.surfterm-event .calendar li:nth-child(15) p,
.surfterm-event .calendar li:nth-child(16) p{ color: #cd3301; }

/*11月*/
.surfterm-event .calendar li:nth-child(17)::before{ border-right: 3em solid #346667; }
.surfterm-event .calendar li:nth-child(17) p{ color: #346667; }

/*12月*/
.surfterm-event .calendar li:nth-child(18)::before{ border-right: 3em solid #67329a; }
.surfterm-event .calendar li:nth-child(18) p{ color: #67329a; }

.surfterm-event .tag{
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.surfterm-event .tag li{
  width: 100%;
  margin: 10px 0 0 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.surfterm-event .tag span{
  width: 40%;
  border-radius: 5px;
  padding: 4px 10px 6px;
  font-size: 0.8em;
  font-weight: bold;
  line-height: 1;
  text-align: center;
}

.surfterm-event .team-tag,
.surfterm-event .all-tag,
.surfterm-event .boad-tag{
  width: 90%;
  max-width: 160px;
  border-radius: 5px;
  padding: 5px 15px 7px;
  font-size: 0.9em;
  font-weight: bold;
  line-height: 1;
  margin-top: 17px;
  display: block;
  margin: 9px auto 0;
}

.surfterm-event .tag .team,
.surfterm-event .team-tag{ background: #ff076d; color: #fff}
.surfterm-event .tag .all,
.surfterm-event .all-tag{ background: #c3ff2d; color: #000}
.surfterm-event .tag .boad,
.surfterm-event .boad-tag{ background: #98c1ff; color: #000}


.surfterm-event .tag p{
  width: 60%;
  padding-left: 10px;
  font-weight: bold;
  font-size: 0.8em;
}

.team-only{
  border: 4px solid #ff076d !important;
}




.big-wrap .img-wrap{
  width: 100%;
  overflow: hidden;
}
.surfteam .big-wrap{
  position: relative;
}
.surfteam .big-wrap .month-img{
  width: 60%;
  position: absolute;
  right: 0;
  bottom: 0;
}
#surfteam-anniversary{
  background: url(/images/surfteam-anniversary-bg.png);
  background-repeat: repeat-x;
  background-position: top;
  margin: 0 auto;
}
#surfteam-anniversary .tit-style01 {
  margin: 0 0 25px;
  padding: 104px 0 5px;
}
#surfteam-anniversary .big-wrap{
  width: 90%;
  margin: 0 auto;
}
#surfteam-anniversary .img-wrap{
  border: 6px solid #fff;
  box-shadow: 0 0 8px #c3c3c3;
}
.common-iframe-wrap.surfteam-p{
  width: 90%;
  margin: 20px auto;
}
.common-iframe-wrap.surfteam-p .common-iframe{
  position: relative;
  padding: 75% 0 0 0;
  z-index: 1;
}
.common-iframe-wrap.surfteam-p p{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  letter-spacing: 4px;
  color: #757575;
}
.movie-link{
  width: 90%;
  margin: 20px auto;
}
.movie-link a{
  cursor: pointer;
  display: block;
  margin: 0 0 10px;
}
.movie-link a:hover{
  display: block;
  opacity: 0.7;
  transition: 0.5s;
  cursor: pointer;
}

/*-----------------------------------------------

 プライバシーポリシー

-----------------------------------------------*/

.privacy-section > p{
  background: #ebebeb;
  padding: 20px;
  margin-bottom: 20px;
}

.privacy-section dl dt{
  font-size: 1.1em;
  color: #000;
  font-weight: bold;
  padding-bottom: 5px;
  margin-top: 35px;
}
.privacy-section dl dd{
  padding-top: 5px;
}
.privacy-section dl dd dl dt {
  width: 35px;
  font-size: 1em;
  color: #000;
  font-weight: normal;
  display: inline-block;
  padding-bottom: 0;
  margin-top: 0;
}
.privacy-section dl dd dl dd:before{
  content: '\FF1A';
}
.privacy-section dl dd dl dd {
  display: inline-block;
  padding-top: 0;
}
.privacy-section .info{
  border: 1px dotted #000;
  padding: 15px;
  margin-top: 10px;
  line-height: 1.5em;
}
.privacy-section .info h2{
  font-weight: bold;
  font-size: 1.1em;
  margin: 0 0 5px;
}
/*-----------------------------------------------

 サイトマップ

-----------------------------------------------*/
.sitemap-section a:hover{
  display: block;
  color: #eb5e00;
  transition: 0.5s;
  cursor: pointer;
}
.sitemap-wrap{
  width: 100%;
  margin: 0 auto;
  text-align: center;
}
section.sitemap-section ul li{
  width: 100%;
  font-weight: bold;
  margin-bottom: 20px;
}
.sitemap-section ul.low{
  color: #eb5e00;
}
.sitemap-section ul.low li{
  width: 100% !important;
  margin-top: 10px !important;
  margin-bottom: 0 !important;
  font-weight: normal !important;
}
.sitemap-section ul.low li a{
  color: #eb5e00;
  font-size: 0.9em;
  padding-left: 3px;
}
.sitemap-section ul.low li a:hover{
  display: block;
  opacity: 0.7;
  transition: 0.5s;
  cursor: pointer;
}


/* 20250611 エラー */

.warning{
  color: #f60000;
  margin: 20px 0;
  padding: 15px 20px;
  border: 2px dotted #f60000;
}
.warning:empty{
  display: none;
}
