@charset "utf-8";

/*================================================
CampaignName
================================================*/

.CampaignName {
  display: none;
}

/*================================================
Firstview
================================================*/

.Firstview {
  display: block;
  overflow: hidden;
  position: relative;
  width: 100%;
  padding: 0px 0px 100px 0px;
  background-color: #EEEEEE;
  background-image: url("../img/firstview_back_pc.webp");
  background-position: center center;
  background-size: cover;
  box-sizing: border-box;
}
.FirstviewInner {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 1060px;
  margin: 0px auto 0px auto;
  padding: 50px 0px 100px 0px;
  box-sizing: border-box;
}
.FirstviewInner::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
}
.FirstviewTitle {
  width: 1060px;
  height: 380px;
  margin-bottom: 25px;
}
.FirstviewTitle img {
  width: 100%;
  height: auto;
}

@media (max-width: 1365px) {

  .Firstview {
    padding: 0px 0px 75px 0px;
  }
  .FirstviewInner {
    padding: 50px 0px 100px 0px;
  }
}

@media (max-width: 1023px) {

  .Firstview {
    position: static;
    padding: 0px 0px 0px 0px;
    background-image: url("../img/firstview_back_sp.webp");
    background-position: bottom center;
  }
  .FirstviewInner {
    max-width: 90%;
    padding: 30px 0px 30px 0px;
  }
  .FirstviewTitle {
    width: 100%;
    height: auto;
    margin-bottom: 0px;
  }
}

/*================================================
Event
================================================*/

.Event {
  position: relative;
  margin-top: -200px;
  z-index: 9999;
  background-image: url(../img/event_back_pc.png);
}
.Event.CommonWrap {
  padding-bottom: 25px;
}
.EventInner {
  width: 80%;
  margin: 0px auto;
}
.EventSeries {
  width: 100%;
}
.EventSeriesOne {
  position: relative;
  z-index: 0;
  float: left;
  width: 29.333333%;
  margin: 0% 1%;
  padding-top: 50px;
  padding-bottom: 200px;
  border-radius: 20px;
  background-color: #FFFFFF;
  box-sizing: border-box;
}
.EventSeriesOneNunber {
  position: relative;
  z-index: 2;
  top: -110px;
  left: -29px;
  width: 200px;
  height: 112px;
}

.EventSeriesOneImage_01 { background-image: url(../img/event_series_one_image_01.png); background-color: #f8e5e5; border: 5px #790000 solid; }
.EventSeriesOneImage_02 { background-image: url(../img/event_series_one_image_02.png); background-color: #f4fff2; border: 5px #137900 solid; }
.EventSeriesOneImage_03 { background-image: url(../img/event_series_one_image_03.png); background-color: #F1F8FF; border: 5px #003d79 solid; }

.EventSeriesOneImage_01,
.EventSeriesOneImage_02,
.EventSeriesOneImage_03 {
  background-size: contain;
  background-position: top 30px center;
  background-repeat: no-repeat;
}
.EventSeriesOneAttention {
  position: absolute;
  z-index: 1;
  bottom: 0px;
  left: 0px;
  margin-top: 0px;
  padding: 0px 20px 10px 20px;
}
.EventSeriesOneAttention li {
  line-height: 1.75;
  text-align: justify;
  text-justify: inter-ideograph;
  font-weight: 400;
}

@media (max-width: 1365px) {

  .EventInner {
    width: 96%;
  }
  .EventSeriesOneNunber {
    top: -95px;
    left: -24px;
    width: 160px;
    height: 90px;
  }
}

@media (max-width: 1023px) {

  .Event {
    position: static;
    z-index: auto;
    margin-top: 0px;
    padding-top: 50px;
    background-image: url(../img/event_back_sp.png);
  }
  .EventInner {
    width: 90%;
  }
  .EventSeriesOne {
    float: none;
    width: 100%;
    margin-bottom: 40px;
    padding-bottom: 150px;
  }
  .EventSeriesOne:last-of-type {
    margin-bottom: 0px;
  }
  .EventSeriesOneNunber {
    top: -90px;
    left: -19px;
    width: 140px;
    height: 78px;
  }
  .EventSeriesOneImage_01,
  .EventSeriesOneImage_02,
  .EventSeriesOneImage_03 {
    background-position: top 20px center;
  }

  .EventSeriesOneAttention li {
    text-shadow:1px 1px 0 #FFF, -1px -1px 0 #FFF,
      -1px 1px 0 #FFF, 1px -1px 0 #FFF,
      0px 1px 0 #FFF,  0-1px 0 #FFF,
      -1px 0 0 #FFF, 1px 0 0 #FFF;
    font-weight: 700;
  }
}

/*================================================
Period
================================================*/

.Period {
  background-color: #790000;
}
.PeriodInner {
  width: 50%;
  padding: 10px 0px;
  margin: 0px auto;
}
.PeriodBook {
  display: inline-block;
  width: 100%;
  margin-bottom: 0px;
  line-height: 1.25;
  color: #FFFFFF;
}
.PeriodPlay {
  display: inline-block;
  width: 100%;
  margin-bottom: 0px;
  text-align: center;
  line-height: 1.25;
  color: #FFFFFF;
}
.PeriodBookName, .PeriodPlayName {
  float: left;
  width: 45%;
  padding: 10px 0px;
  border-radius: 5px;
  text-align: center;
  background-color: #FFFFFF;
  color: #790000;
  font-weight: 700;
  box-sizing: border-box;
}
.PeriodBookStart, .PeriodPlayStart {
  float: left;
  width: 25%;
  padding: 10px 0px;
  text-align: right;
  font-weight: 700;
}
.PeriodBookKara, .PeriodPlayKara {
  float: left;
  width: 5%;
  padding: 10px 0px;
  text-align: center;
  font-weight: 700;
}
.PeriodBookEnd, .PeriodPlayEnd {
  float: left;
  width: 25%;
  padding: 10px 0px;
  text-align: left;
  font-weight: 700;
}

@media (max-width: 1365px) {

  .PeriodInner {
    width: 70%;
  }
}

@media (max-width: 1023px) {

  .PeriodInner {
    width: 100%;
  }
  .PeriodBookName, .PeriodPlayName {
    float: none;
    width: 96%;
    margin: 0px auto;
    padding: 10px 0px;
    border-radius: 0px;
  }
  .PeriodBookStart, .PeriodPlayStart {
    float: left;
    width: 45%;
    padding: 10px 0px 0px 0px;
  }
  .PeriodBookKara, .PeriodPlayKara {
    float: left;
    width: 5%;
    padding: 10px 0px 0px 0px;
  }
  .PeriodBookEnd, .PeriodPlayEnd {
    float: left;
    width: 45%;
    padding: 10px 0px 0px 0px;
  }
}

/*================================================
Entry
================================================*/

.Entry {
  background-color: #f8e5e5;
  background-image: url("../img/entry_back.png");
}
.Entry .CommonTitleEnglish,
.Entry .CommonTitle,
.Entry .CommonLead {
  color: #790000;
}
.EntryPanelInner {
  width: 80%;
  margin: 0px auto;
}

@media (max-width: 1365px) {

  .EntryPanelInner {
    width: 90%;
  }
}

@media (max-width: 1023px) {

  .EntryPanelInner {
    width: 100%;
  }
}

/*================================================
EntryPanelOneRed
================================================*/

.EntryPanelOneRed {
  float: left;
  width: 49%;
  margin: 0px 0.5% 0px 0.5%;
  padding: 30px;
  border-radius: 25px;
  background-color: #BF0000;
  box-sizing: border-box;
}
.EntryPanelOneRedTitle {
  margin-bottom: 20px;
  line-height: 1.25;
  text-align: center;
  color: #FFFFFF;
  font-weight: 900;
}
.EntryPanelOneRedQr {
  margin-bottom: 20px;
  text-align: center;
}
.EntryPanelOneRedText {
  margin-bottom: 0px;
  line-height: 1.75;
  text-align: justify;
  text-justify: inter-ideograph;
  color: #FFFFFF;
  font-weight: 700;
}

@media (max-width: 1023px) {

  .EntryPanelOneRed {
    float: none;
    width: 100%;
    margin: 0px 0% 0px 0%;
  }
}

/*================================================
EntryPanelOneWhite
================================================*/

.EntryPanelOneWhite {
  float: left;
  width: 49%;
  margin: 0px 0.5% 0px 0.5%;
  padding: 30px;
  box-sizing: border-box;
}
.EntryPanelOneWhiteAttention {
  margin-bottom: 25px;
  line-height: 1.25;
  text-align: center;
  color: #000000;
  font-weight: 900;
}
.EntryPanelOneWhiteList li {
  margin-bottom: 10px;
  line-height: 1.75;
  text-align: justify;
  text-justify: inter-ideograph;
  font-weight: 700;
  text-shadow: 1px 1px 0 ##F8E5E5, -1px -1px 0 ##F8E5E5,
    -1px 1px 0 ##F8E5E5, 1px -1px 0 ##F8E5E5,
    0px 1px 0 ##F8E5E5,  0-1px 0 ##F8E5E5,
    -1px 0 0 ##F8E5E5, 1px 0 0 ##F8E5E5;
}
.EntryPanelOneWhiteList li:last-of-type {
  margin-bottom: 0px;
}

@media (max-width: 1023px) {

  .EntryPanelOneWhite {
    float: none;
    width: 100%;
    margin: 0px 0% 0px 0%;
    box-sizing: border-box;
  }
}

/*================================================
Prize
================================================*/

.PrizeInner {
  width: 100%;
  margin: 0px auto 50px auto;
}
.PrizeSeriesOne {
  float: left;
  width: 31.333333%;
  margin: 0px 1%;
  padding: 15px 20px 15px 20px;
  border-radius: 25px;
  background-color: #FFFFFF;
  box-sizing: border-box;
}
.PrizeSeriesOneImage {
  margin-bottom: 15px;
  padding-bottom: 15px;
  border-bottom: 1px #f4d0d0 solid;
}
.PrizeSeriesOneAttention li {
  line-height: 1.75;
  font-weight: 400;
}

@media (max-width: 1365px) {

  .PrizeInner {
    margin: 0px auto 25px auto;
  }
}

@media (max-width: 1023px) {

  .PrizeInner {
    width: 100%;
    margin: 0px auto 0px auto;
  }
  .PrizeSeriesOne {
    float: none;
    width: 100%;
    margin: 0px 0% 15px 0px;
    padding: 20px 20px 20px 20px;
    border-radius: 15px;
  }
}

/*================================================
Flow
================================================*/

.Flow {
  background-size: auto auto;
  background-color: rgba(255, 242, 242, 1);
  background-image: repeating-linear-gradient(135deg, transparent, transparent 10px, rgba(255, 248, 248, 1) 10px, rgba(255, 248, 248, 1) 20px );
}
.Flow .CommonTitleEnglish,
.Flow .CommonTitle,
.Flow .CommonLead {
  color: #790000;
}
.FlowStepWrap {
  width: 80%;
  margin: 0px auto 20px auto;
}
.FlowStepOne {
  float: left;
  width: 19%;
  margin: 0px 0.5% 20px 0.5%;
  padding: 25px 0px 20px 0px;
  border-radius: 25px;
  background-color: #FFFFFF;
  box-sizing: border-box;
}
.FlowStepOneNumber {
  margin-bottom: 10px;
  text-align: center;
}
.FlowStepOneNumber b {
  display: block;
  color: #790000;
  font-weight: 900;
}
.FlowStepOneNumber span {
  display: block;
  color: #790000;
  font-weight: 900;
}
.FlowStepOneTitle {
  margin-bottom: 20px;
  text-align: center;
  line-height: 1.50;
  font-weight: 700;
}
.FlowStepOneImage {
  width: 100%;
  margin: 0px auto 15px auto;
}
.FlowStepOneImage img {
  width: 100%;
  height: auto;
}
.FlowStepOneText {
  margin-bottom: 0px;
  padding: 0px 25px 0px 25px;
  text-align: justify;
  text-justify: inter-ideograph;
  line-height: 1.50;
}
.FlowAttention {
  width: 80%;
  margin: 0px auto;
}
.FlowAttentionText {
  line-height: 1.50;
  font-weight: 400;
}
.FlowToDetail {
  margin-bottom: 0px;
  line-height: 1.25;
  text-align: center;
  font-weight: 700;
}
.FlowToDetail:before,
.FlowToDetail:after {
  content: "▼";
  margin: 0px 5px;
}
.FlowToDetail a {
  color: #000000;
}

@media (max-width: 1365px) {

  .FlowStepWrap {
    width: 96%;
  }
}

@media (max-width: 1023px) {

  .FlowStepOne {
    float: none;
    width: 90%;
    margin: 0px auto 10px auto;
    padding: 25px 0px 15px 0px;
  }
  .FlowStepOneNumber b {
    display: inline;
  }
  .FlowStepOneNumber span {
    display: inline;
  }
  .FlowStepOneImage {
    width: 50%;
    margin: 0px auto 15px auto;
  }
  .FlowAttention {
    width: 90%;
  }
  .FlowToDetail {
    margin-bottom: 15px;
  }
}

/*================================================
Coupon
================================================*/

.Coupon {
  clear: both;
  padding: 50px 5% 5% 5%;
  background-color: #f4fff2;
  background-image: url("../img/coupon_back.webp");
  background-position: top center;
  background-size: cover;
  background-repeat: no-repeat;
  box-sizing: border-box;
}
.Coupon .CommonTitleEnglish,
.Coupon .CommonTitle,
.Coupon .CommonLead {
  color: #137900;
}
.CouponInner {
  max-width: 90%;
  margin: 0px auto;
}
.CouponOne {
  width: 50%;
  margin: 0px auto 20px auto;
}
.CouponOne:last-child {
  margin-bottom: 0px;
}
.CouponOneFlag {
  margin: 0px auto 30px auto;
  text-align: center;
}
.CouponOneFlagNumber {
  margin: 0px 5px;
  padding: 7px 15px;
  border: 3px #BF0000 solid;
  border-radius: 10px;
  background-color: #BF0000;
  color: #FFFFFF;
  font-weight: 700;
}
.CouponOneFlagTarget {
  margin: 0px 5px;
  padding: 7px 15px;
  border: 3px #BF0000 solid;
  border-radius: 10px;
  background-color: #FFFFFF;
  color: #BF0000;
  font-weight: 700;
}
.CouponOneImage {
  width: 80%;
  margin: 0px auto 20px auto;
  box-sizing: border-box;
}
.CouponOneImage img {
  width: 100%;
  height: auto;
}
.CouponOneImage img:hover {
  opacity: 0.5;
  transition: all 0.3s ease;
}

@media (max-width: 1365px) {

  .CouponInner {
    max-width: 100%;
  }
  .CouponOne {
    width: 75%;
  }
}

@media (max-width: 1023px) {
  
  .Coupon {
    padding: 50px 0% 5% 0%;
  }
  .CouponOne {
    float: none;
    width: 100%;
    margin-bottom: 50px;
  }
  .CouponOneImage {
    width: 90%;
    padding: 0px 0%;
  }
}

/*================================================
CouponDetail (Table)
================================================*/

.CouponDetail {
  width: 100%;
  border: 1px #137900 solid;
  border-collapse: collapse;
  box-sizing: border-box;
}
.CouponDetail tr {
  width: 100%;
}
.CouponDetail th {
  width: 26%;
  padding: 20px 2%;
  border-right: 1px #137900 solid;
  border-bottom: 1px #137900 solid;
  background-color: #C4DDBF;
  text-align: left;
  line-height: 1.75;
  vertical-align: top;
}
.CouponDetail td {
  width: 70%;
  padding: 20px 2%;
  border-bottom: 1px #137900 solid;
  text-align: justify;
  text-justify: inter-ideograph;
  background-color: #FFFFFF;
  line-height: 1.75;
  vertical-align: top;
}
.CouponDetail p {
  margin-bottom: 0px;
}
.CouponDetailAttentionBikkuri {
	margin-right: 5px;
  padding: 1px 8px !important;
  border: 3px #000000 solid;
  border-radius: 50px;
  background-color: #FFCC00;
  color: #000000 !important;
}

@media (max-width: 1023px) {

  .CouponDetail {
    width: 90%;
    margin: 0px auto;
    border-top: 1px #137900 solid;
    border-left: 1px #137900 solid;
    border-right: 1px #137900 solid;
    border-bottom: none;
  }
  .CouponDetail tr {
    width: 100%;
  }
  .CouponDetail th {
    display: block;
    width: 94%;
    padding: 20px 3%;
    border-right: none;
    border-bottom: 1px #137900 solid;
    text-align: center;
  }
  .CouponDetail td {
    display: block;
    width: 94%;
    padding: 20px 3%;
    border-bottom: 1px #137900 solid;
  }
  .CouponDetailAttentionWrap .AccordionSwitch {
    margin-bottom: 0px;
  }
  .CouponDetailAttentionBikkuri {
    padding: 1px 7px !important;
  }
}

/*================================================
Accordion
================================================*/

.AccordionSwitch {
  display: block;
  position: relative;
  width: 100%;
  margin: 0px 0px 0px 0px;
  padding: 18px 60px 18px 20px;
  border: none;
  border-radius: 12px;
  text-align: left;
  line-height: 1.50;
  background-color: #EEEEEE;
  color: #000000;
  font-weight: 900;
  cursor: pointer;
  box-sizing: border-box;
}
.AccordionSwitch::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 22px;
  width: 18px;
  height: 2px;
  margin: -1px 0px 0px 0px;
  background-color: #BF0000;
}
.AccordionSwitch::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 30px;
  width: 2px;
  height: 18px;
  margin: -9px 0px 0px 0px;
  background-color: #BF0000;
  transition: all 0.25s ease;
}
.AccordionSwitch.active {
  border-radius: 12px 12px 0px 0px;
}
.AccordionSwitch.active::after {
  transform: rotate(90deg);
}
.AccordionFold {
  display: none;
  width: 100%;
  margin: 0px 0px 0px 0px;
  padding: 20px 20px 20px 20px;
  background-color: #FFFFFF;
  border-radius: 0px 0px 12px 12px;
  box-sizing: border-box;
}

@media (max-width: 1023px) {

  .AccordionSwitch {
    padding: 16px 56px 16px 16px;
  }
  .AccordionFold {
    padding: 16px 16px 16px 16px;
  }
}

/*================================================
Longrun
================================================*/

.Longrun {
  background-color: #F1F8FF;
  background-image: url("../img/longrun_back.webp");
  background-attachment: fixed;
}
.Longrun .CommonTitleEnglish,
.Longrun .CommonTitle,
.Longrun .CommonLead {
  color: #003D79;
}
.LongrunInner {
  width: 80%;
  margin: 0px auto;
}
.LongrunInner .CommonTable th {
  background-image: url(../img/common_table_th.png)
}
.LongrunInner .CommonTable td {
  background-image: url(../img/common_table_td.png)
}

@media (max-width: 1365px) {

  .LongrunInner {
    width: 90%;
  }
}

@media (max-width: 1023px) {
  
  .Longrun {
    background-attachment: inherit;
    background-position: top center;
  }
}

/*================================================
Course
================================================*/

.Course {
  background-color: #70a24d;
  background-image: url("../img/course_back.webp");
  background-attachment: fixed;
}
.CourseAdjust {
  width: 90%;
  margin: 0px auto 50px auto;
}
.Course .CommonTitleEnglish,
.Course .CommonTitle,
.Course .CommonLead {
  color: #FFFFFF;
  text-shadow: 0px 0px 1px rgba(0, 0, 0, 0.75), 0px 0px 1px rgba(0, 0, 0, 0.75);
  font-weight: 900;
}
.CourseOne {
  position: relative;
  float: left;
  width: 24%;
  margin: 0px 0.5% 25px 0.5%;
  padding: 20px 20px 80px 20px;
  background-color: #FFFFFF;
  box-sizing: border-box;
}
.CourseOneImage {
  margin-bottom: 10px;
}
.CourseOneImage img {
  width: 100%;
  height: auto;
}
.CourseOneTextPref {
  display: inline-block;
  margin-bottom: 5px;
  padding: 7px 7px 5px 6px;
  line-height: 1.25;
  background-color: #BF0000;
  color: #FFFFFF;
  font-weight: 900;
}
.CourseOneTextSpell {
  display: none;
  margin-bottom: 5px;
  line-height: 1.25;
  color: #666666;
  font-weight: 400;
}
.CourseOneTextName {
  margin-bottom: 5px;
  line-height: 1.25;
  font-weight: 900;
}
.CourseOneTextAddressNum {
  display: block;
  margin-bottom: 5px;
  line-height: 1.25;
  font-weight: 400;
}
.CourseOneTextAddressRoute {
  display: block;
  margin-bottom: 5px;
  line-height: 1.25;
  font-weight: 400;
}
.CourseOneTextButton {
  position: absolute;
  left: 0px;
  bottom: 0px;
}
.CourseOneTextButtonNormal {
  display: block;
  float: left;
  width: 50%;
  padding: 15px 0px 16px 0px;
  text-align: center;
  text-decoration: none;
  line-height: 1.25;
  background-color: #BF0000;
  color: #FFFFFF;
  font-weight: 900;
  box-sizing: border-box;
}
.CourseOneTextButtonSingle {
  display: block;
  float: left;
  width: 50%;
  padding: 15px 0px 16px 0px;
  text-align: center;
  text-decoration: none;
  line-height: 1.25;
  background-color: #FF6600;
  color: #FFFFFF;
  font-weight: 900;
  box-sizing: border-box;
}
.CourseOneTextButtonNormal:hover {
  opacity: 0.75;
  transition: all 0.3s ease;
}
.CourseOneTextButtonSingle:hover {
  opacity: 0.75;
  transition: all 0.3s ease;
}
.CourseExtraCourse {
  width: 50%;
  margin: 0px auto;
  padding: 20px;
  border-radius: 15px;
  background-image: url(../img/common_table_th.png);
  box-sizing: border-box;
}
.CourseExtraCourse p {
  margin-bottom: 10px;
  font-weight: 700;
}
.CourseExtraCourse p:last-of-type {
  margin-bottom: 0px;
}

@media (max-width: 1365px) {

  .CourseExtraCourse {
    width: 70%;
  }
}

@media (max-width: 1023px) {

  .Course {
    padding: 50px 0px 0px 0px;
  }
  .CourseAdjust {
    margin: 0px auto 15px auto;
  }
  .CourseOne {
    position: static;
    float: none;
    width: 100%;
    margin: 0px 0% 10px 0%;
    padding: 15px 15px 15px 15px;
  }
  .CourseOne:last-of-type {
    margin: 0px 0% 0px 0%;
  }
  .CourseOneImage {
    float: left;
    width: 28%;
    margin-right: 2%;
    margin-bottom: 0px;
  }
  .CourseOneText {
    float: left;
    width: 70%;
  }
  .CourseOneTextPref {
    padding: 5px 5px 5px 6px;
  }
  .CourseOneTextButton {
    position: static;
    left: auto;
    bottom: auto;
  }
  .CourseOneTextButtonNormal {
    padding: 10px 0px 11px 0px;
  }
  .CourseOneTextButtonSingle {
    padding: 10px 0px 11px 0px;
  }
  .CourseExtraCourse {
    width: 90%;
    padding: 15px;
  }
}

/*================================================
Tax
================================================*/

.Tax {
  background-size: auto auto;
  background-color: rgba(255, 249, 242, 1);
  background-image: repeating-linear-gradient(135deg, transparent, transparent 10px, rgba(255, 252, 248, 1) 10px, rgba(255, 252, 248, 1) 20px );
}
.Tax .CommonTitleEnglish,
.Tax .CommonTitle,
.Tax .CommonLead {
  color: #796500;
}
.TaxInner {
  width: 100%;
  margin: 0px auto 0px auto;
  padding: 0px 0px 0px 0px;
  box-sizing: border-box;
}
.TaxImage {
  width: 90%;
  margin: 0px auto 50px auto;
}
.TaxImagePhoto {
  margin-bottom: 10px;
}
.TaxImagePhoto img {
  width: 100%;
  height: auto;
}
.TaxImageCaption {
  line-height: 1.75;
  text-align: center;
  font-weight: 400;
}
.TaxImageCaption:before {
  content: "▲";
  margin-right: 5px;
}
.TaxAbout {
  max-width: 1280px;
  margin: 0px auto;
  padding: 50px;
  background-color: #FFFFFF;
  box-sizing: border-box;
}
.TaxAboutTitle {
  margin-bottom: 10px;
  line-height: 1.25;
  font-weight: 700;
}
.TaxAboutText {
  margin: 0px auto 40px auto;
  line-height: 1.75;
  text-align: justify;
  text-justify: inter-ideograph;
  font-weight: 400;
}
.TaxAboutButton {
  text-align: center;
}
.TaxAboutButtonAll {
  display: inline-block;
  margin: 0px 10px;
  padding: 18px 25px 15px 25px;
  border-radius: 50px;
  text-decoration: none;
  line-height: 1.25;
  background-color: #BF0000;
  color: #FFFFFF;
  font-weight: 700;
}
.TaxAboutButtonGolf {
  display: inline-block;
  margin: 0px 10px;
  padding: 18px 25px 15px 25px;
  border-radius: 50px;
  text-decoration: none;
  line-height: 1.25;
  background-color: #FF6600;
  color: #FFFFFF;
  font-weight: 700;
}

@media (max-width: 1365px) {

  .TaxAbout {
    max-width: 90%;
  }
}

@media (max-width: 1023px) {

  .TaxImageCaption:before {
    content: "";
    margin-right: 0px;
  }
  .TaxAbout {
    max-width: 100%;
    width: 100%;
    padding: 0px;
    background-color: inherit;
  }
  .TaxAboutTitle {
    text-align: center;
  }
  .TaxAboutText {
    width: 80%;
    line-height: 1.75;
    text-align: justify;
    text-justify: inter-ideograph;
    font-weight: 400;
  }
  .TaxAboutButton {
    width: 85%;
    margin: 0px auto;
  }
  .TaxAboutButtonAll {
    display: block;
    margin-bottom: 25px;
  }
  .TaxAboutButtonGolf {
    display: block;
  }
}

/*================================================
Detail
================================================*/

.Detail {
  background-color: #FFF2F2;
  background-image: url("../img/entry_back.png");
}
.Detail .CommonTitleEnglish,
.Detail .CommonTitle,
.Detail .CommonLead {
  color: #790000;
}
.DetailInner .CommonTable th {
  background-image: url(../img/common_table_th.png);
}
.DetailInner .CommonTable td {
  background-image: url(../img/common_table_td.png);
}
.DetailInner {
  max-width: 1280px;
  margin: 0px auto 0px auto;
  box-sizing: border-box;
}
.DetailPrizeName {
  font-weight: 700;
}
.DetailPrizeTarget {
  padding-left: 15px;
}
.DetailPrizeNumber {
  padding-left: 15px;
}
.DetailPrizeExtra {
}
.DetailPrizeCourse {
  padding-bottom: 15px;
  padding-left: 15px;
}
.DetailPrizeAbout {
  padding-left: 15px;
}
.DetailList li {
  line-height: 1.75;
  color: #000000;
  font-weight: 700;
}

@media (max-width: 1365px) {
  
  .DetailInner {
    max-width: none;
    width: 90%;
  }
}

@media (max-width: 1023px) {
  
  .DetailInner .CommonTable {
    margin-bottom: 0px;
  }
}

/*================================================
CommonTable
================================================*/

.CommonTable {
  width: 100%;
  margin: 0px auto 15px auto;
  border-top: 1px #CCCCCC solid;
  border-collapse: collapse;
}
.CommonTable tr {
  width: 100%;
}
.CommonTable th {
  width: 20%;
  padding: 15px 20px;
  border-right: 1px #CCCCCC solid;
  border-bottom: 1px #CCCCCC solid;
  line-height: 1.75;
  text-align: left;
  color: #000000;
  vertical-align: top;
}
.CommonTable td {
  width: 80%;
  padding: 15px 20px;
  border-bottom: 1px #CCCCCC solid;
  text-align: justify;
  text-justify: inter-ideograph;
  line-height: 1.75;
  vertical-align: top;
}
.CommonTable td strong {
  color: #BF0000;
  font-weight: 700;
}
.CommonTable td em {
  text-decoration: underline;
  color: #BF0000;
}
.CommonTable p {
  margin-bottom: 0px;
}

@media (max-width: 1023px) {

  .CommonTable {
    margin: 0px auto 5px auto;
    border-top: 1px #CCCCCC solid;
    border-left: 1px #CCCCCC solid;
    border-right: 1px #CCCCCC solid;
    border-bottom: none;
  }
  .CommonTable th {
    display: block;
    width: 98%;
    padding: 20px 1%;
    border-right: none;
    text-align: center;
    line-height: 1.25;
  }
  .CommonTable th p {
    font-weight: 700;
  }
  .CommonTable td {
    display: block;
    width: 90%;
    padding: 20px 5%;
    line-height: 1.75;
  }
}

/*================================================
Common
================================================*/

.CommonWrap {
  padding: 75px 0px 100px 0px;
}
.CommonInner {
  max-width: 1280px;
  margin: 0px auto;
}
.CommonTitleRibbon {
  width: 30%;
  margin: 0px auto 20px auto;
}
.CommonTitleEnglish {
  margin-bottom: 3px;
  line-height: 1.25;
  text-align: center;
  font-weight: 400;
}
.CommonTitle {
  margin-bottom: 50px;
  line-height: 1.25;
  text-align: center;
  font-weight: 900;
}
.CommonLead {
  margin-bottom: 50px;
  line-height: 1.50;
  text-align: center;
  font-weight: 400;
}
.CommonAttention {
  width: 100%;
  margin: 0px auto 25px auto;
  padding: 25px;
  background-color: #FFFFFF;
  box-sizing: border-box;
}
.CommonAttention li {
  line-height: 1.75;
  font-size: 16px;
  font-weight: 700;
}
.CommonHover:hover {
  opacity: 0.75;
  transition: all 0.3s ease;
}

@media (max-width: 1365px) {

  .CommonInner {
    max-width: 90%;
    width: 90%;
  }
  .CommonAttention {
    width: 55%;
  }
  .CommonAttention li {
    font-size: 15px;
  }
}

@media (max-width: 1023px) {

  .CommonWrap {
    padding: 50px 0px 25px 0px;
  }
  .CommonInner {
    max-width: 85%;
    width: 85%;
  }
  .CommonTitleRibbon {
    width: 50%;
    margin: 0px auto 20px auto;
  }
  .CommonTitle {
    margin-bottom: 20px;
  }
  .CommonLead {
    margin-bottom: 50px;
  }
  .CommonAttention {
    max-width: 100%;
    width: 100%;
    padding: 20px;
    margin: 0px auto 25px auto;
  }
  .CommonAttention li {
    font-size: 12px;
  }
}

/*================================================
HeadingTag
================================================*/

.HeadingTag {
  background-color: #EEEEEE;
}
.HeadingTag ul {
  width: 80%;
  margin: 0px auto;
  padding-bottom: 5px;
}
.HeadingTag li {
  float: left;
  margin-top: 5px;
  margin-right: 5px;
  padding: 7px 8px 6px 8px;
  line-height: 1.25;
  background-color: #CCCCCC;
  font-weight: 900;
}

@media (max-width: 1365px) {

  .HeadingTag ul {
    width: 90%;
  }
}

@media (max-width: 1023px) {

  .HeadingTag ul {
    width: 100%;
    padding-left: 5px;
  }
}

/*================================================
FadeinUp
================================================*/

#main { overflow-x: hidden; }
.HeadlineUp { animation: SlideInUp 1.6s; } @keyframes SlideInUp { 0% { opacity: 0; transform: translateY(16px); } 100% { opacity: 1; transform: translateY(0); } }
.HeadlineDown { animation: SlideInDown 1.6s; } @keyframes SlideInDown { 0% { opacity: 0; transform: translateY(-16px); } 100% { opacity: 1; transform: translateY(0); } }
.HeadlineLeft { animation: SlideInLeft 1.6s; } @keyframes SlideInLeft { 0% { opacity: 0; transform: translateX(-16px); } 100% { opacity: 1; transform: translateX(0); } }
.HeadlineRight { animation: SlideInRight 1.6s; } @keyframes SlideInRight { 0% { opacity: 0; transform: translateX(16px); } 100% { opacity: 1; transform: translateX(0); } }
.HeadlineZoom { animation: SlideInZoom 2.0s; } @keyframes SlideInZoom { 0% { opacity: 0; transform: scale(0.85); } 100% { opacity: 1; transform: scale(1.0); } }
.HeadlineMegaZoom { animation: SlideInMegaZoom 2.0s; } @keyframes SlideInMegaZoom { 0% { opacity: 0; transform: scale(0.85); } 100% { opacity: 1; transform: scale(1.0); } }
.HeadlineLag { animation: SlideInLag 2.4s; } @keyframes SlideInLag { 0% { opacity: 0; transform: translateX(-16px); } 100% { opacity: 1; transform: translateX(0); } }

.FadeinUp {
  opacity : 0;
  transform : translate(0, 50px);
  transition : all 500ms;
}
.FadeinDown {
  opacity : 0;
  transform : translate(0, -50px);
  transition : all 500ms;
}
.FadeinLeft {
  opacity : 0;
  transform : translate(-100px, 0);
  transition : all 1000ms;
}
.FadeinRight {
  opacity : 0;
  transform : translate(100px, 0);
  transition : all 1000ms;
}
.FadeinZoomBig {
  opacity : 0;
  transform: scale(0.85,0.85);
  transition : all 750ms;
}
.FadeinZoomSmall {
  opacity : 0;
  transform: scale(1.15,1.15);
  transition : all 750ms;
}
.FadeinUp.Scrollin,
.FadeinDown.Scrollin,
.FadeinLeft.Scrollin,
.FadeinRight.Scrollin {
  opacity : 1;
  transform: scale(1.0,1.0);
  transform : translate(0, 0);
}
.FadeinZoomBig.Scrollin,
.FadeinZoomSmall.Scrollin {
  opacity : 1;
  transform: scale(1.0,1.0);
}

/*================================================
FlowStepOne (Fadein)
================================================*/

.FlowStepOne {
  opacity: 0;
  transition: opacity 0.25s ease, transform 0.25s ease;
}
.FlowStepOne:nth-child(1) { transition-delay: 0.00s; }
.FlowStepOne:nth-child(2) { transition-delay: 0.25s; }
.FlowStepOne:nth-child(3) { transition-delay: 0.50s; }
.FlowStepOne:nth-child(4) { transition-delay: 0.75s; }
.FlowStepOne:nth-child(5) { transition-delay: 1.00s; }

@media (min-width: 1024px) {
  .FlowStepOne { transform: translateX(-20px); }
  .FlowStepOne.Scrollin { opacity: 1; transform: translateX(0); }
}

@media (max-width: 1023px) {
  .FlowStepOne { transform: translateY(-20px); }
  .FlowStepOne.Scrollin { opacity: 1; transform: translateY(0); }
}

/*================================================
Parallel
================================================*/

.Parallel {
  width: 100%;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

/*================================================
clearfix
================================================*/

.clearfix:before,
.clearfix:after {
  content: "";
  display: table;
}
.clearfix:after {
  clear: both;
}
.clearfix {
  *zoom: 1;
}

/*================================================
display on / off
================================================*/

.pc-br {
  display: block;
}
.sp-br {
  display: none;
}

@media (max-width: 1023px) {

  .pc-br {
    display: none;
  }
  .sp-br {
    display: block;
  }
}

/*================================================
PageTop
================================================*/

.PageTop {
  display: block;
  width: 100%;
  padding: 20px 0px 5px 0px;
  background-color: #343434;
  box-sizing: border-box;
}
.PageTop span {
  display: none;
}
.PageTop:hover {
  transition: all 0.3s ease;
  background-color: #5C5C5C;
}

/*================================================
PagetopFix
================================================*/

.PagetopFix {
  position: fixed;
  z-index: 9999;
  width: 240px;
  height: 240px;
  right: 40px;
  bottom: 20px;
}
.PagetopFix a img {
  width: 240px;
  height: 240px;
}
.PagetopFix a {
  text-decoration: none;
  color: #FFFFFF;
  transition: all 0.3s ease;
}
.PagetopFix a:hover {
  opacity: 0.75;
  transition: all 0.3s ease;
}
.PagetopFix a span {
  display: inline-block;
}

@media (max-width: 1023px) {

  .PagetopFix {
    bottom: 0px;
    left: 0px;
    right: 0px;
    width: 100%;
    height: inherit;
    padding: 10px 0px;
    text-align: center;
    background-image: url(../img/firstview_screen.png);
  }
  .PagetopFix a {
    display: inline-block;
    padding: 20px 20px;
    border-radius: 50px;
    line-height: 1.25;
    background-color: #FF2323;
    font-weight: 900;
  }
  .PagetopFix a:hover {
    opacity: 1.00;
  }
  .PagetopFix a img {
    display: none;
  }
}

/*================================================
Arrow
================================================*/

.Arrow {
  position: relative;
  display: block;
  padding-left: 0px;
}
.Arrow::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  margin-top: -3px;
  width: 10px;
  height: 10px;
  border: 0px;
  border-top: solid 2px #FFFFFF;
  border-right: solid 2px #FFFFFF;
  -ms-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

/*================================================
List Point
================================================*/

.Pochi {
  margin-top: 3px;
  margin-bottom: 3px;
  padding-left: 1em;
  text-indent: -1em;
}
.Pochi:before {
  content: "\002A";
  margin: 0px 4px;
}
.Kome {
  margin-top: 3px;
  margin-bottom: 3px;
  padding-left: 1em;
  text-indent: -1em;
}
.Kome:before {
  content: "\203B";
  margin-right: 5px;
}

/*================================================
GoogleMap
================================================*/

.GoogleMap {
  width: 88%;
  margin: 75px auto 0px auto;
  padding: 0px 0px;
}
.GoogleMap p {
  margin-bottom: 0px;
}
.GoogleMapAttention {
  display: block;
  margin-bottom: 0px;
  padding: 10px 0px;
  text-align: center;
  line-height: 1.25;
  font-weight: 400;
  font-size: 16px;
}

/*================================================
GoogleMap (API)
================================================*/

#map {
  height: 700px;
  width: 100%;
}
.Gmp {
  padding: 10px;
}
.GmpName {
  margin-bottom: 5px;
  line-height: 1.25;
  font-weight: 700;
  font-size: 15px;
}
.GmpAddress {
  display: block;
  line-height: 1.25;
  font-weight: 400;
  font-size: 12px;
}
.GmpButton {
  margin-top: 10px;
}
.GmpButtonFeature {
  display: inline-block;
  margin-right: 3px;
  padding: 7px 7px 7px 7px;
  border-radius: 5px;
  text-decoration: none;
  line-height: 1.25;
  background-color: #BF0000;
  color: #FFFFFF;
  font-weight: 700;
}
.GmpButtonBooking {
  display: inline-block;
  margin-right: 3px;
  padding: 7px 7px 7px 7px;
  border-radius: 5px;
  text-decoration: none;
  line-height: 1.25;
  background-color: #FF6600;
  color: #FFFFFF;
  font-weight: 700;
}
.GmpButtonTravel {
  display: inline-block;
  margin-right: 3px;
  padding: 7px 7px 7px 7px;
  border-radius: 5px;
  text-decoration: none;
  line-height: 1.25;
  background-color: #00B300;
  color: #FFFFFF;
  font-weight: 700;
}
.GmpButtonFeature:hover,
.GmpButtonBooking:hover,
 .GmpButtonTravel:hover {
  opacity: 0.75;
  transition: all 0.3s ease;
}
.gm-style-iw {
    overflow: hidden ! important;
}
.gm-style-iw div {
    overflow: hidden ! important;
}

@media (max-width: 1023px) {

  #map {
    height: 330px;
  }
}

/*================================================
FontSize
================================================*/

.FontSizeUltraShout {
  font-size: clamp(4.6875rem, 3.90625rem + 3.125vw, 6.25rem);
}
.FontSizeHyperShout {
  font-size: clamp(3.75rem, 3.125rem + 2.5vw, 5rem);
}
.FontSizeSuperShout {
  font-size: clamp(3rem, 2.5rem + 2vw, 4rem);
}
.FontSizeEnglishDecoration {
  font-size: clamp(0.75rem, 0.65rem + 0.1vw, 0.8125rem);
}
.FontSizeMainTitle {
  font-size: clamp(2.5rem, 2rem + 2vw, 3.5rem);
}
.FontSizeSubTitle {
  font-size: clamp(1.5rem, 1.3rem + 1vw, 2rem);
}
.FontSizeLeadText {
  font-size: clamp(1.25rem, 1.1rem + 0.75vw, 1.75rem);
}
.FontSizeEmphasisText {
  font-size: clamp(1.125rem, 1.05rem + 0.35vw, 1.375rem);
}
.FontSizeNormalText {
  font-size: clamp(1rem, 0.9rem + 0.5vw, 1.125rem);
}
.FontSizeCautionText {
  font-size: clamp(0.9375rem, 0.85rem + 0.35vw, 1.0625rem);
}
.FontSizeAttentionText {
  font-size: clamp(0.75rem, 0.65rem + 0.2vw, 0.875rem);
}
.FontSizeVerySmallCaption {
  font-size: clamp(0.75rem, 0.65rem + 0.1vw, 0.8125rem);
}

@media (max-width: 1365px) {

  .FontSizeUltraShout {
    font-size: clamp(4.375rem, 3.75rem + 2.5vw, 5.625rem);
  }
  .FontSizeHyperShout {
    font-size: clamp(3.125rem, 2.5rem + 1.875vw, 4.375rem);
  }
  .FontSizeSuperShout {
    font-size: clamp(2.5rem, 2rem + 1.5vw, 3.5rem);
  }
  .FontSizeEnglishDecoration {
    font-size: clamp(0.6875rem, 0.6rem + 0.05vw, 0.75rem);
  }
  .FontSizeMainTitle {
    font-size: clamp(2rem, 1.75rem + 1vw, 2.8rem);
  }
  .FontSizeSubTitle {
    font-size: clamp(1.375rem, 1.25rem + 0.5vw, 1.75rem);
  }
  .FontSizeLeadText {
    font-size: clamp(1.125rem, 1rem + 0.5vw, 1.5rem);
  }
  .FontSizeEmphasisText {
    font-size: clamp(1.0625rem, 1rem + 0.25vw, 1.25rem);
  }
  .FontSizeNormalText {
    font-size: clamp(0.9375rem, 0.85rem + 0.3vw, 1rem);
  }
  .FontSizeCautionText {
    font-size: clamp(0.875rem, 0.78rem + 0.25vw, 0.9375rem);
  }
  .FontSizeAttentionText {
    font-size: clamp(0.6875rem, 0.6rem + 0.1vw, 0.8125rem);
  }
  .FontSizeVerySmallCaption {
    font-size: clamp(0.6875rem, 0.6rem + 0.05vw, 0.75rem);
  }
}

@media (max-width: 1023px) {

  .FontSizeUltraShout {
    font-size: clamp(3.125rem, 2.8125rem + 1.875vw, 4.375rem);
  }
  .FontSizeHyperShout {
    font-size: clamp(2.1875rem, 1.875rem + 1.25vw, 3.125rem);
  }
  .FontSizeSuperShout {
    font-size: clamp(1.75rem, 1.5rem + 1vw, 2.5rem);
  }
  .FontSizeEnglishDecoration {
    font-size: clamp(0.625rem, 0.55rem + 0.05vw, 0.6875rem);
  }
  .FontSizeMainTitle {
    font-size: clamp(1.75rem, 1.6rem + 0.6vw, 2.25rem);
  }
  .FontSizeSubTitle {
    font-size: clamp(1.25rem, 1.15rem + 0.4vw, 1.5rem);
  }
  .FontSizeLeadText {
    font-size: clamp(1rem, 0.9rem + 0.25vw, 1.25rem);
  }
  .FontSizeEmphasisText {
    font-size: clamp(0.9375rem, 0.875rem + 0.15vw, 1.0625rem);
  }
  .FontSizeNormalText {
    font-size: clamp(0.875rem, 0.8rem + 0.2vw, 0.9375rem);
  }
  .FontSizeCautionText {
    font-size: clamp(0.75rem, 0.68rem + 0.15vw, 0.8125rem);
  }
  .FontSizeAttentionText {
    font-size: clamp(0.625rem, 0.55rem + 0.1vw, 0.75rem);
  }
  .FontSizeVerySmallCaption {
    font-size: clamp(0.625rem, 0.55rem + 0.05vw, 0.6875rem);
  }
}
