@charset "utf-8";

/*-----------------------------------------------------*/
/* PC版 基本スタイル
/*-----------------------------------------------------*/
body {color: #000;}
.clearfix {display: block;}
.sp {display: none;}

#container{
	width:100%!important;
	margin:0 auto;
	text-align:left;
    overflow: hidden;/*追加*/
}
.inner{
	width: 980px;
	margin: 0 auto;
	text-align: left;
  box-sizing: border-box;
}
.bg-fit {
    position: relative;
    padding-left: calc(50vw - 50%);
    padding-right: calc(50vw - 50%);
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
}
ul.indent li {
	text-indent: -1em;
	padding-left: 1em;
}
.fwb {font-weight: bold;}
.flex {display: flex;flex-wrap: wrap;}
img {-webkit-backface-visibility: hidden;}

/* 改行のスタイル */
.br980_hide {display: block;}
.sp900,.br850,.br770,.br400 {display: none;}

h2 , #prz_list , h3 , .pritext , .present_common  , p.coach{
	font-family: "kozuka-gothic-pr6n", sans-serif;
	font-weight: 900;
	font-style: normal;
}

/*-----------------------------------------------------*/
/* パンくずエリアのスタイル
/*-----------------------------------------------------*/

div#breadSns{width:980px;margin:5px auto 0;padding:0;height:32px;}
div#bread{float:left;margin:6px 0 0 5px;}
div#bread p.crumbs{font-size:10px;}

/*    IE用　　*/
div#bread{margin/*\**/: 0 0 0 5px\9;}

/*     SNSボタン用
------------------------------------------*/

#snsBox{
/*	width:400px;*/
	float:right;
    margin: 5px 0px 0px 0;
	vertical-align: top;
}
/*    IE用　　*/
#snsBox{margin/*\**/: 0 0 7px 0\9;}
#snsBox ul li{float: left;padding: 0px;display: inline;}
#snsBox ul li.fb{margin: 0px 10px 5px 0px;}
#snsBox ul li.fb div{width:110px!important;}
#snsBox ul li.gg{margin: 0px 10px 5px -10px;}
#snsBox ul li.tw{margin: 0px 10px 5px -10px;}

/*-----------------------------------------------------*/
/* メインビジュアル
/*-----------------------------------------------------*/

.mainvisual{
	background:url(images/bg_mainvisual.png) no-repeat;
	padding: 0;
	margin: 0 auto;
	width:100%;
	height:100%;
	background-position:center;
	background-size:cover;
}
.mainvisual h1{
	margin: 0 auto;
	padding: 0;
}

/*-----------------------------------------------------*/
/* リードタイトルとリード
/*-----------------------------------------------------*/

.lead_title {
  margin: 40px 0;
}

p.lead {
  margin: 0 auto;
  font-size: 18px;
  max-width: 1260px;
  padding-bottom: 50px;
  text-align: left;
}

h2.lead_title{padding: 0px 10px;}
p.lead{padding: 0px 10px 50px 10px;}

/*-----------------------------------------------------*/
/* ボタンエリアのスタイル
/*-----------------------------------------------------*/
/*キャンペーン詳細を確認する*/
div.btnArea_wrap{width: 880px;text-align: center;margin: 30px auto 40px;}
ul.btnArea_top{vertical-align: top;margin: 30px 0;}
ul.btnArea_top li{width:450px;margin:15px auto 0;}
ul.btnArea_top li a:hover{filter:alpha(opacity=60);-moz-opacity:0.6;opacity:0.6;}

/*応募・予約ボタン共通 btn_area*/
.btn_area{
    margin: 20px auto;
    width: 980px;
    text-align: center;
    font-size: 26px;
    font-family: 'メイリオ','Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'Meiryo', 'Osaka', 'ＭＳ Ｐゴシック', sans-serif;
    transition:.5s all;
}

.btn_beer {
    margin: 0px auto;
}
.btn_area ul li{
    padding: 20px;
    transition:.5s all;
    }
.btn_area ul li .pc{
    display: inline-block;
    width: 100%;
    position: relative;
 }
 .btn_area ul li .sp{display: none;}
.btn_area ul li a {
	position: relative;
	display: inline-block;
	font-weight: bold;
	border-radius: 7px;
	color: #fff;
	border: 3px solid #fff;
	box-shadow: 5px 6px 0px -2px rgba(0, 0, 0, 0.3);
	padding: 0.4em 1.2em 0.3em 0.5em;
	cursor: pointer;
	text-decoration: none;
	box-sizing: border-box;
	width: 100%;
	transition: .5s;
  background-color: #0086CD;
}
/* .btn_area ul li a:hover{opacity: 1;} */
.btn_area ul li a::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	width: .4em;
	height: .4em;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	background: none;
	right: 1em;
}

.btn_area .booking {
    width: 392px;
    margin: 0 auto;
}
.btn_area a.btn_booking{background-color: #ff7700;}

/* 賞品一覧 */

#prz_list {
	display: block;
	margin: 20px auto;
	margin: 15px auto 40px;
}

.btn_pre , .pritext_lead {
	font-family: "kozuka-gothic-pr6n", sans-serif;
	font-weight: 500;
	font-style: normal;
	font-size: 0.8em;
}

.prz_place , p.coach_lead{
	font-family: "kozuka-gothic-pr6n", sans-serif;
	font-weight: 500;
	font-style: normal;}

.pritext_lead{
	font-size: 1.2em;
	padding: 10px 30px;
}

ul.prize_anker {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
}
ul.prize_anker li a{
    display: block;
    color: #fff;
    text-decoration: none;
    text-align: center;
    padding: 12px 0 10px;
    font-size: 25px;
    font-weight: bold;
    position: relative;
    width: 12.5em;
    padding: 0.5em 1.1em 0.5em 0.3em;
    transition: .3s all;
}

li.beer a{
	background: #efbe14;
    border: 3px solid #ffe899;
}

li.lesson a{
	background: #147249;
    border: 3px solid #66b190;
}

li.pt a{
	background: #0a316a;
    border: 3px solid #365e9a;
}

ul.prize_anker li a:after{
    display: block;
    content: "";
    position: absolute;
    top: 1.2em;
    right: .8em;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: .6em .35em 0 .35em;
    border-color: #fff transparent transparent transparent;
    transition: .3s all;
}
ul.prize_anker li a:hover {
    transform: translateY(-3px);
}
ul.prize_anker li a:hover::after{
    transform:rotate(90deg);
}

/* ページTOPへ戻るボタン */
#pagetop_btn {width: 100%;box-sizing: border-box;overflow: hidden;}
#pagetop {position: fixed;z-index: 20;opacity: 0;transform: translateX(100px);display: block;cursor: pointer;right: 30px;bottom: 20px;font-size:16px;}
#pagetop a{display: inline-block;transition:all 0.3s;color: #fff;width: 100px;height:100px;border-radius:100px;box-sizing:border-box;text-decoration: none;padding: 3em 0;position:relative;text-align: center;background-color:rgba(33%,33%,33%,0.85);}
#pagetop a span{position: absolute;top: 25px;left: 50%;width: 20px;height: 20px;margin-left: -10px;border-left: 1px solid #fff;border-bottom: 1px solid #fff;-webkit-transform: rotate(135deg);transform: rotate(135deg);-webkit-animation: sdb 2s infinite;animation: sdb 2s infinite;opacity: 0;box-sizing: border-box;}
#pagetop a:hover {text-decoration: none;background: #929292;}
/*　左の動き　*/
#pagetop.LeftMove{animation: LeftAnime 0.5s forwards;}
  @keyframes LeftAnime{from {opacity: 0;transform: translateX(130px);}
	to {opacity: 1;transform: translateX(0);}} 
/*　右の動き　*/
#pagetop.RightMove{animation: RightAnime 0.5s forwards;}
  @keyframes RightAnime{from {opacity: 1;transform: translateX(0);}
	to {opacity: 1;transform: translateX(130px);}}
  @-webkit-keyframes sdb {0% {opacity: 0;}50% {opacity: 1;}100% {opacity: 0;}}
  @keyframes sdb {0% {opacity: 0;}50% {opacity: 1;}100% {opacity: 0;}}


/*-----------------------------------------------------*/
/* 賞品詳細
/*-----------------------------------------------------*/


@supports (-ms-ime-align:auto) {
  section.prz_lesson, section.prz_round, section.prz_point {
    margin-bottom:-14px;
  }
}
@media all and (-ms-high-contrast:none) {
  *::-ms-backdrop,
  section.prz_lesson, section.prz_round, section.prz_point {
    margin-bottom:-14px;
  }
}

/* ページ内リンク */
#lesson, #round, #kanto, #kansai, #point, #ball , #beer , #pt{
    padding-top: 170px;
    margin-top: -170px;
}

section h3 {
    color: #fff;
    width: 100%;
    display: block;
    font-size: 30px;
    text-align: center;
    padding: 0.3em 0;
    margin-bottom: 0px!important;/* media.cssの打消し */
}

h3.beer{
	background-color: #efbe14;
}

h3.lesson{
	background-color: #147249;
}

h3.pt{
	background-color: #0a316a;
}

section .prz_dtl {
    width: 100%!important;
    display: inline-block;
    padding-bottom: 40px;
    box-sizing: border-box;
}

section .prize_wrap , section .prize_wrap_980{
    display: block;
    box-sizing: border-box;
    background-color: #fff;
    max-width: 1260px;
    padding: 30px 50px 20px;
    margin: 0 auto ;
	margin-top: 50px;
    font-size: 16px;
}

/* tab */
.tab-kanto, .tab-kansai {
    width: 1200px;
    text-align: center;
    margin: 30px auto 0;
    display: flex;
    flex-wrap: nowrap;
    font-size: 30px;
    justify-content: space-between;
}
@supports (-ms-ime-align:auto) {
  .tab-kanto, .tab-kansai {margin-bottom: -.55em;}
}
@media all and (-ms-high-contrast:none) {
  *::-ms-backdrop,
  .tab-kanto, .tab-kansai {margin-bottom: -0.55em;}
}
.tab-kanto div, .tab-kansai div{display: block;width: 48%;margin: 0 auto; }
.tab-kanto a, .tab-kansai a {
    display: block;
    text-decoration: none;
    font-weight: bold;
    background-color: #fff;
    position:relative;
    transition: all .1s;
    height: 1.8em;
    padding: 0.4em 0 0;
}
.tab-kanto a.on {
  /* border-top: 4px solid #2a7bc7; 
  color: #2a7bc7; */
  background-color: #2a7bc7;
  color: #fff;
}
.tab-kansai a.on {
  /* border-top: 4px solid #d9422a;
  color: #d9422a; */
  background-color: #d9422a;
  color: #fff;
}
.tab-kansai a.off {color: #2a7bc7;}
.tab-kanto a.off {color: #d9422a;}
.tab-kanto a.off, .tab-kansai a.off {filter:alpha(opacity=70);-moz-opacity: 0.7;opacity: 0.7;}

.tab-kanto a:hover, .tab-kansai a:hover {
    transform: translateY(-0.2em);
    height: 2em;
    margin-bottom: -0.2em;
    filter:alpha(opacity=100);
    -moz-opacity: 1;
    opacity: 1;
}


/* prz_place */
.prz_place {display: flex;justify-content: space-evenly; align-items: center;}
.prz_place figure { width: 40%;transition:.5s;}
.prz_place figure img {width: auto;}
.prz_place div {width: 50%;}
.prz_place dl {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    padding: 0.8em 0 0.3em 0.7em;
    font-size: 20px;  
    box-sizing: border-box;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.prz_place dl dt { 
    width: 7em;
    text-align: center;
    border: solid 3px #0a316a;
	color: #0a316a;
    padding: 0.3em 0;
    letter-spacing: 0.1em;
}
.prz_place dl dd {
    padding: 0.3em 0 0.3em 0.5em;
}
.prz_place dl p {
    width: 100%;
    font-size: 85%;
    line-height: 1.6em;
}

p.Num {
    background-color: #f9e615;
    width: 560px;
    font-size: 25px;
    margin: 0.7em auto;
    padding: 0.2em 0;
    color: #000;
    text-align: center;
    font-weight: 900;
}
p.Num span {
    display: inline-block;
    font-size: 1.5em;
    vertical-align: -0.07em;
}


/* agreeBlock　この部分使用する */
.agreeBlock {width: 100%;margin: 1em auto;text-align: left;font-size: 13.2px;font-weight: normal;font-family: 'メイリオ','Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'Meiryo', 'Osaka', 'ＭＳ Ｐゴシック', sans-serif;line-height: 1.35;border: 2px solid red;padding: 2em;box-sizing: border-box;}
.agree {width: 100%;margin: 18px auto 0;padding: 20px 8px 20px 16px;background-color: #F6F6F6;border: 1px solid #DDDDDD;font-size: 108%;font-weight: bold;text-align: left;display: -webkit-flex;display: -moz-flex;display: flex;-webkit-box-align: center;-ms-flex-align: center;align-items: center;box-sizing: border-box;}
li.agree_button {margin-top: 10px;text-align: left !important;margin: 0;pointer-events: none;}
.agree input {width: 25px;height: 25px;margin: 0 5px 0 0;border: 1px solid #999;cursor: pointer;}

/* 〇名様にプレゼント */
.present_common {
  position: relative;
  display: inline-block;
}

.present_common p {
  position: relative;
  display: inline-block;
  font-size: 1.8rem;
  font-weight: bold;
  color: #002b6c;
  z-index: 1;
}

.present_common p::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0.1em;
  width: 100%;
  height: 0.5em;
  background-color: #f4bd26;
  z-index: -1;
}


/* ボタン共通 */
.present_common{width: auto; margin: 0 auto; text-align: center;}
.btn_common {width: 20em!important;}

/* レッスン賞*/
.prizetext_lesson {
    text-align: center;
    padding: 20px 10px;
    display: block;
    font-weight: bold;
    font-size: 2.3em;
    line-height: 1.2;
    background: url(/images/campaign/season/202208/leaf_lesson.png) no-repeat;
    background-size: auto;
    background-position: center center;
}
.prizetext_lesson em {
    font-size: 0.95em;
letter-spacing: -0.1em;
font-style: normal;
}

.lesson_btn{font-size: 1.3em; margin-bottom: 30px;}

@media screen and (max-width:500px) {.lesson_btn{font-size: 4.5vw;}}

.lecturer_info {text-align: center;}
.lecturer_info .link {display: flex;display: -webkit-flex;display:-ms-flexbox;flex-wrap: wrap;margin: 0 auto;-webkit-box-align: center;-ms-flex-align: center;align-items: center;justify-content: center;}
.lecturer_info figure img {
    width: auto;
}
.lecturer_info .btn_area {
    width: 50%;
    margin: 0 0 0 2em;
    transition:.5s all;}
.lecturer_info dl {font-size: 40px;line-height: 1.6;margin-bottom: 20px;font-weight: 900;}
.lecturer_info dt span{font-size: 0.6em;font-weight: bold;}
.lecturer_info dd {font-size: 16px;line-height: 1.4;}

.lecturer_info .btn_area ul{margin: 0 auto;font-size: 20px;}
.lecturer_info .btn_area ul li {padding: 0;}
.lecturer_info .btn_area ul li .pc {
    width: 100%;
    padding: 0.8em 1.8em 0.7em 0.5em;
    margin: 8px 0;
}


/* ラウンド賞 */

section.prz_round {
  margin: 0 calc(50% - 50vw);
  width: 100vw;
}
/* 横スクロール対策 */
.l-wrapper {
  overflow: hidden;
}

section .prize_wrap_980{
    max-width: 900px;
	display: flex;
	align-items: center;
	padding: 30px 50px 50px;
}

@media screen and (max-width:980px) {
	section .prize_wrap_980{
    max-width: 95%;
}
}

@media screen and (max-width:1280px) {
	.lesson_wrap{
    max-width: 95%!important;
}
}

@media screen and (max-width:1280px) {
.lesson_br{display: none;}
}

/*ビール・ポイント*/

section.prz_dtl_beer{
	background-image: url("images/bg_beer.jpg");
	background-size:cover;
	background-position: center;
	background-repeat: no-repeat;
}

section.prz_dtl_lesson{
	background-image: url("images/bg_lesson.jpg");
	background-size:cover;
	background-position: center;
	background-repeat: no-repeat;
}

section.prz_dtl_pt{
	background-image: url("images/bg_pt.jpg");
	background-size:cover;
	background-position: center;
	background-repeat: no-repeat;
}

.prize_wrap_980 {
  display: flex;
  align-items: flex-start; /* 上揃え */
  gap: 20px; /* 画像とテキストの間隔 */
  flex-wrap: wrap; /* レスポンシブ対応 */
}

.prize_wrap_980 img {
  max-width: 40%!important; /* 任意のサイズに調整可能 */
  height: auto;
  padding-top: 30px;
}

.pritextbox {
  flex: 1; /* 残りの幅を使う */
  min-width: 250px;
}

.pritext {
  font-size: 1.2em;
  font-weight: bold;
}

.pritext_2 {
  font-size: 1em;
  font-weight: normal;
}

.round_lead {
  margin-top: 10px;
  line-height: 1.5;
}

.pritext , .present_common p {
  margin: 30px 0 10px 0;
    text-align: center;
    display: block;
    font-weight: bold;
    font-size: 2.3em;
    line-height: 1.5;
    background-size: auto;
    background-position: center center;
	}

.present_common span{font-size: 0.6em;}
.present_common p {margin: 0px;}
.pritextbox p.beer{color: #efbe14;}
.pritextbox p.point{color: #0a316a; font-size: 3.3em; margin: 10px 0 10px 0;}

/*レッスン*/
span.lesson_sub{font-size: 0.8em;}
.lesson_wrap{text-align: center;}
p.lesson_lead{width: 90%; margin: 0 auto; text-align: left; line-height: 1.5;}
p.lesson_ttl{color: #147249;}
p.lesson_span{color: #002b6c; margin: 15px 0px 0px 0px; }
.pritext span , .lesson_span span {font-size: 0.8em;}
.pritextbox span.point{font-size: 0.5em;}
.pre_com_lesson{padding-bottom: 40px;}
.prz_place div {text-align: left; }
.prz_place {margin-bottom: 30px;}
br.lesson_ttl{display: none;}
p.coach{color: #0a316a; font-size: 20px; text-align: center; padding-bottom: 20px;}
p.coach_lead{width: 90%; margin: 0 auto; font-size: 20px; line-height: 1.5;}
p.coach_lead span{width: 90%; margin: 0 auto; font-size: 0.8em;}
@media screen and (max-width:53em) {br.lesson_ttl{display: block;}}
@media screen and (max-width:40em) { span.lesson_sub {font-size: 1em;} .present_common span {font-size: 0.8em;} p.coach_lead{margin-bottom: 10px;}}
.prz_place div dl {display: flex; flex-wrap: wrap; margin-bottom: 1em;}
.prz_place div dt {width: 150px; /* dtの幅は調整可能 */font-weight: bold;}
.prz_place div dd {margin: 0; /* ddの初期マージンをリセット */flex: 1;    /* 残り幅を使って広がる */}
@media screen and (max-width: 1100px) { .prz_place div dl{display: block; margin-bottom: 0em; padding: 0.4em 0 0.3em 0.7em;} .prz_place div dd {width: 100%;}
p.coach {font-size: 25px;}/* レスポンシブ（スマホなど）で縦並びにする */
@media screen and (max-width: 400px) {.prz_place dl{font-size: 5vw;}}
		
  .round_lead{
    text-align: center;
    line-height: 1.6em;
    margin: 0 10px;
    font-size: 18px;
  }
  .pritext span{font-size: 0.6em;}

.prz_round ul.round_btn {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    text-align: center;
    font-size: 34px;
    margin: 1em auto auto;
}
.prz_round ul.round_btn li {
    width: 31%;
    margin-left: .9em;
    margin-bottom: 0.7em;
}

.prz_round ul.round_btn li.item1, .prz_round ul.round_btn li.item4 {margin-left: 0em;}
.prz_round ul.round_btn li figure {width: auto; font-weight: bold;}
.prz_round ul.round_btn li figure img{width: 100%;margin-bottom: 0.2em;transition:.5s;}
.prz_round ul.round_btn li figure figcaption span {font-size: 90%;}
.prz_round .btn_area {
  margin: 20px auto;
  display: flex;
}


.prz_round .btn_area a::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	width: .4em;
	height: .4em;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	background: none;
	right: 1em;
}

section.prz_point .prize_wrap, section.prz_ball .prize_wrap{
  padding-top: 10px;
  padding-bottom: 10px;
}
  ul.prize_3-4 {
    font-size: 30px;
    justify-content: flex-start;
    align-items:center
  }
  ul.prize_3-4 li.image {width: 100%;display: block;}
  ul.prize_3-4 li.image img {
    width: auto;
    text-align: right;
    pointer-events: none;
  }
  ul.prize_3-4 li.dtl {width: 100%;text-align: center;}
  ul.prize_3-4 li.dtl .Num {width: 12em;}
  ul.prize_3-4 li.dtl .text {
    background: url(/images/campaign/season/202208/leaf_s.png) no-repeat;
    background-size: auto;
    background-position: center center;
    text-align: center;
    font-weight: bold;
    padding: 10px;
  }
  ul.prize_3-4 li.dtl .text span {font-size: 50px;}
  ul.prize_3-4 li.dtl .btn_area{
    font-size: 24px;
    width: 80%;
    margin: 0 auto;
  }
  ul.prize_3-4 li.dtl .btn_area ul li {
    padding: 0;
  }
  ul.prize_3-4 li.dtl .btn_area a {padding: 0.6em 1em 0.5em 0.2em;}
  ul.prize_3-4 li.dtl .btn_area a::after{
    width: .4em;
    height: .4em;
    top: 0;
    bottom: 0;
    margin: auto;
  }
/*-----------------------------------------------------*/
/* キャンペーン概要エリアのスタイル
/*-----------------------------------------------------*/
	
.campaignBtn_2022, .bookingBtn_2022 {
  display: inline-block;
  text-align: center;
  width: 65%;
  position: relative;
  padding: 0px;
}
@media screen and (max-width: 640px) {
    .bookingBtn_2022 {
        width: 80%!important;
		margin-top: 20px;
    }
}
	
@media screen and (max-width: 340px) {
	.campaignBtn_2022 a::after, .bookingBtn_2022 a::after {
    right: 20px;
	}
}
	
#cp-detail{
  margin-bottom: 0!important;
}
/* PCでのhoverアニメーション */
@media (hover: hover) and (pointer: fine) {

	/* ボタンのhoverアニメーション */
	.btnAnimation_2022 a:hover, figure a img:hover {
		-webkit-transform: translate(0, -2px);
		transform: translate(0, -2px)scale(1.05, 1.05);
		color: #fff;
		-webkit-box-shadow: 0 8px 15px rgba(0, 0, 0, .2);
		box-shadow: 0 10px 15px rgba(0, 0, 0, .4);
		transition: 0.3s ease-in-out;
		opacity: 1;
	}

	.btnAnimation_2022 a:hover::after {
		animation: arrowyoko infinite .7s ease-in;
	}
}
/* IE11でのアニメーションのカクツキ対応 */
@media (-ms-high-contrast: none),
(-ms-high-contrast: active) {
	.btnAnimation_2022 a:hover {
		box-shadow: 8px 8px 5px 0 rgb(224, 222, 222);
		transform: scale(1.05, 1.05) translate(0, -2px);
	}

	.btnAnimation_2022 a:hover::after {
		animation: arrowyoko infinite .7s ease-in;
	}
}
@keyframes arrowyoko {
	0% {
		right: 25px;
	}
	100% {
		right: 10px;
		opacity: 0;
	}

}

/*--------------------------------------------------------------------*/
/* レスポンシブル対応
/*--------------------------------------------------------------------*/

@font-face {
    font-family: 'WebSymbolsgfeditRegular';
    src: url('/css/font/websymbols_gf-edit-webfont.eot');
    src: url('/css/font/websymbols_gf-edit-webfont.eot?#iefix') format('embedded-opentype'),
         url('/css/font/websymbols_gf-edit-webfont.woff') format('woff'),
         url('/css/font/websymbols_gf-edit-webfont.ttf') format('truetype'),
         url('/css/font/websymbols_gf-edit-webfont.svg#WebSymbolsRegular') format('svg');
    font-weight: normal;
    font-style: normal;
}


/* max-width:1000px */
@media screen and (max-width:1260px) {
  .br980_hide {display: none;}
	#container{
		width: 100%;
		margin: 18px auto 0;
	}
	div#breadSns{
	  	width:100%;
	}
	.inner{
		width: 100%;
		padding: 0 3%;
		box-sizing: border-box;
	}
	dl.display_terms {
		width: 100% !important;
		padding: 0;
	}
  p.lead {margin: 15px 0;}
  .img_finish img {width: 100%;}
  .btn_area {width: 100%;}

	
	/* メインビジュアル */
	.mainvisual h1{width: 100%;padding: 0 2%;box-sizing: border-box;}
	#term p.term{width: 98%;margin: 0 1%;}
	.mainvisual h1 img,
	#term p.term img{width: 100%;}
    
    /* 賞品一覧 */

    #prz_list {
        width: 92%;
        margin: 10% auto 9%;
        box-sizing: border-box;
      }
      ul.prize_anker {
        margin: 0 auto;
        flex-wrap: wrap;
        width: 100%;
      }
      ul.prize_anker li {
        margin-bottom: .8em;
        width: 30%;
      }
      ul.prize_anker li a {
        width: auto;
        font-size: 2.5vw;
      }
    ul.prize_anker li a::after{right: .6em;}
    section .prize_wrap {width: 95%;padding: 3%;}
    /*.prz_place dl {font-size: 16px;}*/
    .prz_place dl dt{padding: 0.2em 0;}
    .prz_place dl p {font-size: 100%;}
    .prz_place figure img, .lecturer_info figure img {width: 100%;}

    p.Num {font-size: 22px;}

      /* レッスン賞 */
      .lecturer_info .btn_area {margin: 0 0 0 1em;}
      .lecturer_info .btn_area a{font-size: 2.1vw;}
      .lecturer_info .btn_area ul li a::after {right: 1em;}

      /* ラウンド賞 */
    .tab-kanto, .tab-kansai {width: 90%;}
    .prz_round ul.round_btn {font-size: 3vw;}

      /* ポイント賞・ボール賞 */
    ul.prize_3-4 {font-size: 3.5vw;}
    section.prz_point .prize_wrap, section.prz_ball .prize_wrap {padding-left: 0;padding-bottom: 26px;}
    ul.prize_3-4 li.image {width: 36%;}
    ul.prize_3-4 li.image img {width: 100%;}
    ul.prize_3-4 li.dtl {width: 68%;}
    ul.prize_3-4 li.dtl .text {background-size: contain;}

    ul.prize_3-4 li.image {
      width: 100%;
    }

    ul.prize_3-4 li.dtl {
      width: 100%;
}	

ul.prize_3-4 {
  font-size: 3vw;
}

ul.prize_3-4 li.dtl .text span {
  font-size: 3.5vw;
}

ul.prize_3-4 li.dtl {
  width: 90%;
  display: block;
  margin: 0 auto;
}

ul.prize_3-4 li.dtl .btn_area {
  font-size: 24px;
  width: 85%;
  margin: 0 auto;
  padding: 20px 0;
}
}
/* max-width:900px */
@media screen and (max-width:56.3em) {
    .prizetext_lesson, .prizetext_round {
        padding: 2% 10px;
        margin: 1.5% 3%;
        font-size: 3.5vw;
        background-size: 100%;
    }
    .lecturer_info .btn_area ul li a::after {right: 0.4em;}
	
	.sp900{display: block;}
}

/* max-width:850px */
@media screen and (max-width:53em) {
    .br850 {display: inline;}
 
	.pritext_lead {padding: 10px 0px;}
	
    /* レッスン賞 */
    .lecturer_info figure {width: 45%;}
    .lecturer_info .btn_area {width: 50%;margin: 0 auto;} 

      /* ラウンド賞 */
    .prz_round .btn_area {
        /* width: 100%; */
        margin: 0.2em auto 1em;
      }
    .prz_round .btn_area a {
        font-size: 3.5vw;
        padding: 0.6em 1.7em 0.6em 0.8em;
      }
      /* .prz_round .btn_area a::after {
        width: .8em;
        height: .8em;
      } */
      ul.prize_3-4 li.dtl .btn_area {font-size: 2.5vw;}
      ul.prize_3-4 li.dtl .btn_area a{padding: 0.6em 1.65em 0.6em .7em;}
}

/* max-width:770px */
@media screen and (max-width:48em) {
    .br770 {display: inline;}

    /* 賞品一覧 */
    ul.prize_anker {justify-content: center;}
    ul.prize_anker li {width: 45%;margin-bottom: 1em;}
    ul.prize_anker li:nth-child(2n){margin-left: 1em;}
    ul.prize_anker li a {
        font-size: 3.5vw;
      }

    /* hoverアクションの打消し */
    /* ul.prize_anker li a:hover {transform: unset;}
    ul.prize_anker li a:hover::after{transform:unset;border-color: #fff transparent transparent transparent;} */
    /* activに置き換え */
    ul.prize_anker li a:active {transform: translateY(-3px);}
    ul.prize_anker li a:active::after{transform:rotate(90deg);border-color: rgba(240,216,168,1) transparent transparent transparent;}

    /* レッスン賞 */
    .lecturer_info .btn_area a{
        font-size: 2.5vw;
        line-height: 1.4;
      }
      .lecturer_info .btn_area ul li a::after{right: 1em;}

      /* ラウンド賞 */
        /* hoverアクションの打消し */
      /* .tab-kanto a:hover, .tab-kansai a:hover {
        transform: unset;
        height: 1.5em;
        margin-bottom: 0;
        filter:alpha(opacity=70);
        -moz-opacity: 0.7;
        opacity: 0.7;
      } */
      /* activに置き換え */
      .tab-kanto a:active, .tab-kansai a:active {
        transform: translateY(-0.2em);
        height: 1.7em;
        margin-bottom: -0.2em;
        filter:alpha(opacity=100);
        -moz-opacity: 1;
        opacity: 1;
      }

    #pagetop a:active {text-decoration: none;background: #929292;}

}

/* max-width:640px */
@media screen and (max-width:40em) {
    .sp {display: block;}
    .pc {display: none;}

    #footer {display: none;}
    #breadSns {display: none;}
    header.common .logo {float: left;width: 275px;}
    header.common .navi li { float: right;padding-top: 15px;}

    .br770 {display: none;}

    #container{
      width:100% !important;
      position:relative;
      margin: 0;
    }	

    .img_finish img {width: 90%;margin: 4% 5%;text-align: center;}

  .prize_wrap_980 {
    flex-direction: column;
    align-items: center; /* テキストと画像を中央に */
    text-align: center;  /* テキストも中央揃えにしたい場合 */
  }

  .prize_wrap_980 img {
    width: 100%;
    max-width: 400px; /* 画像サイズ制限（必要に応じて） */
  }

  .pritextbox {
    width: 100%;
  }
	
	.br850{display: none;}
	.prize_wrap_980 img {max-width: 80% !important;}
	.pritext{margin: 0px;}
	.prize_wrap_980 img {padding-top: 10px;}
	section .prize_wrap_980 {padding: 30px 15px 50px;}
	.pritext, .present_common p {font-size: 7.6vw;}
	.pritext span {font-size: 0.8em;}
	
	
/*-----------------------------------------------------*/
/* メインビジュアル
/*-----------------------------------------------------*/
	.mainvisual{background: none;}
	.mainvisual h1 {padding: 0;}	
/*-----------------------------------------------------*/
/* 各種期間表示エリアのスタイル
/*-----------------------------------------------------*/
	#term {margin-bottom: 10px;padding:10px;color:#000;height: auto;text-align: center; }
	#term dt {color: #830c0c;text-align: center;font-weight: bold;}
	#term p.pc{display: none;}
	#term dl.sp{display: block;}
	#term dl{letter-spacing:-0.4em;text-align:left;text-align: center;font-weight: bold;}
	#term dt,#term dd{*display:inline;*zoom:1;letter-spacing:normal;font-size: 4.2vw;line-height: 130%;font-weight:bold;font-family: "Crimson Text", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif
	}
/* -------------------------------------------------------------- */
/* ボタンエリアのスタイル
/* -------------------------------------------------------------- */

	/*キャンペーン詳細を確認する*/
	
	dl.display_terms dt {
        width: 32%;
	}
	ul.btnArea_top{margin: 30px 0;}
	ul.btnArea_top li {width: 100%;padding: 3px 0;box-sizing: border-box;}
	
	ul.btnArea_top{float: none;width:100%;display: block!important;padding-bottom: 0;}
	/* p.agree {margin-bottom: 20px;} */
	/* .toTop {margin: -10 2% 10px 0;font-size: 3vw;} */

    .btn_area ul li .pc{display: none;}
    .btn_area ul li .sp{
      display: inline-block;
      width: 100%;
      padding: 0.8em 1.8em 0.7em 0.5em;
      margin: 8px 0;
    }
    .btn_area ul li a {
      border-radius: 8px;
      border: 2px solid #fff;
    }

    .btn_area .booking {
        width: 100%;
        margin: 0 auto;
        font-size: 5vw;
        padding: 2% 0;
    }
	
	.btn_common {width: 90%!important;}
	
    .btn_area ul.booking li a::after {right: 1em;}
	ul.prize_anker li {width: 75%;margin-bottom: 1em;}
	ul.prize_anker li:nth-child(2n) { margin-left: 0em;}
	
    /* リード */

    .mn .lead_title {
      font-size: 20px;
    }
    .mn .lead {
      text-align:left ;
      margin: 0 10px 35px!important;
      font-size: 16px;
    }

    /* 必要条件 */
    /* dl.display_terms dd {
      width: 100%!important;
    } */
    ul.prize_anker li a {font-size: 5.5vw;}

/*-----------------------------------------------------*/
/* 賞品詳細
/*-----------------------------------------------------*/

  /* ページ内リンク */
  #lesson, #round, #point, #ball {
      padding-top: 25px;
      margin-top: -25px;
  }
  #kanto, #kansai {
      padding-top: 65px;
      margin-top: -65px;
      display: inline-block;
  }


  .prizetext_lesson, .prizetext_round {
    padding: 3% 10px;
    font-size: 5.5vw;
    background: url(/images/campaign/season/202208/leaf_sp.png) no-repeat;
    background-size: 100%;
    background-position: center;
  }
  .prz_place {display: block;}
  .prz_place figure {width: 100%;}
  .prz_place div {margin-top: 1em;width: 100%;}
  .prz_place dl {padding: 0em 0 0.3em 0.7em;}
  p.Num {
    width: 100%;
    font-size: 4.5vw;
    line-height: 1.2;
    padding: 0.4em 0;
  }

  /* ラウンド賞 */
  .round_lead {
    text-align: left;
    font-size: 3.5vw;
  }
  .tab-kanto, .tab-kansai {font-size: 6vw;}
  .tab a:hover {
    transform: translateY(0em);
    height: 1.5em;
    margin-bottom: 0em;
    color: red;
    filter:alpha(opacity=100);
    -moz-opacity: 1;
    opacity: 1;
  }

  .prz_round ul.round_btn {font-size: 6vw;}
  .prz_round ul.round_btn .item1 {font-size: 7.5vw;}
  .prz_round ul.round_btn li {
    width: 48%;
    margin-left: .5em;
    margin-bottom: 0.7em;
  }
  .prz_round ul.round_btn li.item1 {width: 70%;}
  .prz_round ul.round_btn li.item2, .prz_round ul.round_btn li.item4 {margin-left: 0em;}

  .prz_round .btn_area {
    width: 80vw;
    margin: 0.3em auto 0.7em;
  }
  .prz_round .btn_area a {
    font-size: 4.6vw;
    padding: 0.5em 1em 0.5em .3em;
    border-radius: 8px;
    border: 2px solid #fff;
  }

  .prz_place dl p {
    display: block;
    margin-top: 10px;
  }

  /* ポイント賞・ボール賞 */
  section.prz_point .prize_wrap, section.prz_ball .prize_wrap {padding: 0 3% 5%;}
  ul.prize_3-4 {
    flex-wrap: wrap;
    justify-content: center;
    font-size: 5.5vw;
  }
  ul.prize_3-4 li.image {width: 70%;}
  ul.prize_3-4 li.dtl {width: 100%;font-weight: bold;}
  ul.prize_3-4 li.dtl .text {margin: .3em auto;}
  ul.prize_3-4 li.dtl .btn_area {font-size: 4.6vw;width: 80vw; padding: 20px 0;}
  ul.prize_3-4 li.dtl .btn_area a {padding: 0.5em 1em 0.5em .3em;}

ul.prize_3-4 li.image{
  width: 100%;
}

ul.prize_3-4 li.dtl .text span {
  font-size: 5.5vw;
}

ul.prize_3-4 li.dtl .text {
  padding: 0;
}

.pritextbox p.point{line-height: 50px; margin: 0px 0 20px 0;}
.prize_wrap_980 img {padding-top: 0px;}
/*-----------------------------------------------------*/
/* キャンペーン概要エリア */
/*-----------------------------------------------------*/
	
	#outline {padding-top: 0;margin-top: 0;}
	#outline .inner {margin: 0;}
	#outline h2 {margin: 20px 0 0 0!important;padding: 7px;border-left: 10px solid #2ca6e0;border-bottom: none;font-size: 18px;font-weight: bold;text-align: left;}
	#outline th {white-space: normal;}
	#outline table.cp_attentiontable th, #outline table.cp_attentiontable td {border-right: 0;}
	#outline th {padding: 10px 5px;display: block;width: auto;text-align: left;}
	#outline td {display: block;width: auto;text-align: left;}
	#outline table.cp_pointtable {width: 100%;}
	#outline table.cp_pointtable th,
	#outline table.cp_pointtable td {display: table-cell;}
	#outline table.course_detail th.courseName {width: 40%;white-space: normal;}
	#outline table.course_detail th.exemptPlay {width: 60%;white-space: normal;}
	#outline table.cp_attentiontable td {border-bottom: none;padding: 10px;}
	#outline th {white-space: normal;}

}

/* max-width:400px */
@media screen and (max-width:25em) {
    .br400 {display: inline;}
	.pritext_lead , p.coach_lead{font-size: 1em;}
	.prz_round .btn_area a {font-size: 6vw;}
	p.coach_lead span {font-size: 1em;}
}
	
@media screen and (max-width:380px) {p.coach_lead span {font-size: 4.2vw;}}
	
@media screen and (max-width:400px) {.btn_lesson a {font-size: 5.2vw!important;}}
	
/* タッチディバイスでのactiveアニメーション */
@media (hover: none) and (pointer: none) {
	.btnAnimation_2022 a:active {
		-webkit-transform: translate(0, -2px);
		transform: translate(0, -2px)scale(1.05, 1.05);
		color: #fff;
		-webkit-box-shadow: 0 8px 15px rgba(0, 0, 0, .2);
		box-shadow: 0 10px 15px rgba(0, 0, 0, .4);
		transition: 0.3s ease-in-out;
		opacity: 1;
	}
}
