@charset "UTF-8";
:root {
  --cont-gap: 40px;
  --cont-padd: 1em;
  --light-glay: #E3E3E3;
}

/* CSS Document */
.back_btn {
  position: fixed;
  bottom: 40px;
  right: 0;
  margin: 0;
  padding: 0;
  width: 140px;
  height: auto;
  z-index: 2;
}

body {
  width: 100%;
}

.pc {
  display: none;
}

.sp {
  display: inherit !important;
}

.pc_inline {
  display: none;
}

.sp_inline {
  display: inline;
}

h2 {
  font-size: 4.7vmin;
}

h3 {
  font-size: 1.7em;
}

.cl2_lf,
.cl2_rt {
  width: 100%;
}

.cl3_lf,
.cl3_cn,
.cl3_rt {
  margin: 1em 0 1em 0;
  width: 100%;
}

ul.btn_area li {
  margin: 1em 0 1em 0;
  display: block;
}

.button {
  position: relative;
  padding: 1em 1em 1em 45px;
  width: 100%;
  text-align: center;
  background: #ffffff;
  box-sizing: border-box;
}

.container {
  padding: 50px 0 50px 0;
}

.space_03 {
  margin: 0 0 1em 0;
  padding: 0;
  width: 100%;
  height: 0;
}

.mar_2em {
  margin: 0;
}

/* ////////////////////////////////// */
/* contents */
/* ////////////////////////////////// */
/*アンカーリンク画面ギリギリ回避*/
#keihin_map,
#keihin,
#score,
#course4,
#course6,
#course8,
#course10,
#course12,
#course16 {
  margin-top: -60px;
  padding-top: 60px;
}

.cp_rogo {
  width: 60%;
  margin: 0 auto;
}

.head_black {
  padding: 15px 5% 10px 5%;
  display: flex;
  flex-flow: column wrap;
  gap: 6px;
}
.head_black img {
  max-width: 90%;
}
.head_black p {
  margin: 0 0;
  font-size: 3.46vmin;
}

.contents01_in02_contenr {
  background-color: #333;
  border-radius: none;
  margin-bottom: 0;
  padding: 4% 0;
}

/*.contents01 {
	padding:var(--cont-padd) 0 0 0 ;
	background: linear-gradient(150deg, var(--red) 15%, var(--red) 30%,var(--inv-black) 30%, var(--inv-black) 35%,
	var(--red) 35%, var(--red) 40%,var(--inv-black) 40%, var(--inv-black) 100% );
}
*/
.contents01 {
  padding: var(--cont-padd) 0 0 0;
  background: repeating-linear-gradient(90deg, var(--red), var(--red) 11.2%, var(--inv-black) 11.2%, var(--inv-black) 22.5%);
}

.contents01 a {
  width: 100%;
  padding: 30px 0;
}

.contents01 p {
  font-size: 6.4vmin;
  text-align: center;
}

.contents01 a p {
  color: #ED7D31 !important;
}

.contents01 h1 p {
  font-size: 1rem;
}

/* .contents01::before{

	content: "";
    background-repeat: no-repeat;
    display: block;
    height: 480px;
    position: absolute;
    width: 100%;
        background: url("../images/separate1.svg");
        background-size: cover;
        z-index: -1;
        bottom: 50px;
} */
.contents01 .contst {
  width: 100%;
  text-align: center;
  margin: 0 auto;
  padding-right: initial;
  font-size: 90%;
}

.contents01 .period {
  margin: 0 0;
  color: #ffffff !important;
}

.contents01_in {
  width: 100%;
  padding: 0 0;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto auto auto;
  grid-template-areas: "date" "in01" "in02" "in04" "in05" "in03";
  align-items: end;
}

.contents01_in01 {
  position: relative;
  padding-bottom: 2em;
  z-index: 0;
}

.contents01_in01 picture {
  display: flex;
}

.contents01_in01 img {
  width: 60%;
  height: 100%;
  margin: 0 auto;
}

/* .contents01_in01::before{

	content: "";
    background-repeat: no-repeat;
    display: block;
    height: 480px;
    position: absolute;
    width: 100%;
        background: url("../images/separate1_sp.svg");
        background-size: cover;
        z-index: -1;
        bottom: -120px;
} */
.contents01_in02 {
  text-align: center;
  width: 100%;
  /* background-color: #004098; */
  background-color: #333;
  margin: 0 auto;
  padding: 1em;
  justify-content: center;
}

.contents01_in02 > .sp {
  position: relative;
  /* background: #FFF; */
  border-radius: 1em;
  padding: 0.5em;
}

.contents01_in02 > .sp > span {
  position: absolute;
  width: calc((100% - 2em) / 4);
  top: -1em;
  right: 1%;
}

.contents01_in03 {
  flex-flow: column wrap;
  padding: 1em;
  padding: var(--cont-gap) var(--cont-padd);
  background-color: var(--csd-blue);
  margin-bottom: 0;
}

.contents01_in03 p {
  margin: 0 auto;
  padding: 2em 0 1em 0;
  color: #fff !important;
}

.contents01_in03 a {
  /*font-size: 1.2em;*/
  padding: 1em 0 2em 0;
  margin: 0 auto;
}

.contents01_in04 {
  flex-flow: column nowrap;
  object-fit: cover;
  margin: 0 0;
  padding: 2em 1em;
  width: 100%;
  min-width: 100%;
  max-width: 100%;
}

.contents01_in04 .slide {
  width: 100%;
}

.contents02 {
  display: flex;
  /* flex-flow: row wrap; */
  /* flex-direction: column; */
  /*justify-content: center;*/
  gap: 1em;
  background-color: var(--light-glay);
}

.contents02 a {
  width: 80%;
  width: 47%;
  /* padding: 0.6em 1em 0.6em 0; */
  border-radius: 10px;
  font-size: 15px;
}

.illust {
  display: flex;
  flex-flow: row wrap;
  gap: 1em;
}

.illust figure {
  width: 100%;
  /*margin: 1em;
  padding: 6px 4px;*/
}
.illust figure figcaption {
  max-width: 90%;
}

.contents03 {
  /*background-color: #fff;*/
}

h2 {
  margin: 0 auto;
  width: 95%;
  padding: 0.8em 0;
  box-sizing: border-box;
  font-size: 1.7em;
}

.contents03 p {
  margin: 0 auto;
  width: 100%;
}

.entry {
  display: flex;
  justify-content: center;
}

.contents04 {
  /*background: url(../images/contents04-back_sp.png) no-repeat bottom/cover #a6111b;*/
}

.contents04 > .column {
  display: flex;
  flex-direction: column;
}

.contents04 > .column > .column_1 {
  width: 100%;
  margin: auto;
  padding: 2% 5%;
}

.contents04 > .column > .column_2 {
  width: 100%;
  flex-grow: 1;
  margin: auto;
  /* padding: 2px 5%; */
  text-align: center;
}

.contents04 > .column > .column_2 > p {
  font-weight: bold;
  font-size: 1.5em;
}

.contents04 > .column > .column_2 > .text {
  text-align: left;
  display: inline-block;
}

.column_3 div img {
  width: 100%;
}

.c100 img {
  width: 32%;
  align-items: center;
  justify-content: flex-start;
  margin: 0 auto;
  max-width: 100px;
  text-align: left;
}

.fig_box_1 > .c100 img {
  width: 32%;
  align-items: stretch;
  justify-content: space-between;
  margin: 0 auto;
}

.fig_box {
  display: flex;
  flex-direction: column;
}

.fig_box_1 {
  display: flex;
  flex-wrap: wrap;
}

.fig_box_1 > .c100 {
  /* display: flex; */
  /* flex-flow: row wrap; */
  width: 100%;
  /* gap: 1em 1em; */
  /* padding: 20px 0; */
}

.fig_box_1 > .c100 img {
  width: 32%;
  align-items: stretch;
  justify-content: space-between;
  margin: 0 auto;
}

.fig_box_2 {
  display: flex;
  flex-wrap: wrap;
}

.fig_box_2 img {
  width: 32%;
  align-items: stretch;
  justify-content: space-between;
  margin: 10px auto;
}

.note {
  display: flex;
  flex-direction: column;
  width: 100%;
  margin: 1em auto;
  padding: 0;
  color: black;
}

.note > .bg_head {
  background: #843C0C;
  width: 100%;
  /* padding: 1em 1em; */
}

.note > .bg_head_3 {
  background: #ffffff;
  padding: 1em;
  /* padding: 1em 1em; */
}

.note > .bg_head_3 h3 {
  font-size: 1.2em;
  padding: 0.3em;
  margin: 0.5em auto;
}

.note > .bg_head_3 > .column {
  display: flex;
  flex-wrap: wrap;
}

.note > .bg_head_3 > .column > .columns {
  max-width: 30%;
}

.note > .bg_head_3 > .column > .column_1 {
  width: 100%;
}

.note > .bg_head_3 > .column > .column_2 {
  width: 100%;
}

.note ul li {
  padding-left: 1em;
  text-indent: -1em;
  margin: 0 auto;
  text-align: left;
}

.BUTTON_ZLL {
  min-width: inherit;
  width: 90%;
}

.fotter_button {
  flex-flow: row nowrap;
  justify-content: center;
}
.fotter_button div a {
  font-size: 1.2em;
}

.course_Anchor li {
  margin: 0;
  padding: 0;
  border-radius: 10px;
  width: calc((100% - 2em) / 2);
  text-align: center;
}

.w95 {
  width: 100%;
  margin: 0 auto;
}

.item img {
  height: auto;
}

.item figure {
  display: flex;
  flex-flow: column wrap;
  position: relative;
  margin: 0;
  width: 50%;
  height: auto;
}

.item figcaption {
  position: relative;
  width: initial;
  max-width: 100%;
  padding: 0.5em 1em;
  color: #fff;
}

.item img {
  width: 100%;
  height: auto;
}

.item p {
  width: 60%;
  margin: 0 auto;
  padding: 0 0.5em;
}

.hk_map {
  position: relative;
}

.hk_map .top-right {
  position: initial;
  width: 100%;
}

.top-right p {
  text-align: right;
}

.hk_map .btm-right {
  position: initial;
  width: 100%;
}

.top-left {
  position: relative;
}

.list-item {
  display: flex;
  flex-flow: column wrap;
  width: calc(50% - 1em);
}

.list-container::after {
  /* 奇数の場合最後のボックスを左寄せ */
  content: "";
  display: block;
  width: calc(50% - 1em);
  height: 0;
}

.list-item h3 {
  font-size: 1.2em;
}

/*********************/
#keihin {
  display: flex;
  flex-flow: column wrap;
}

#keihin h2 {
  width: 100%;
}

.course_container {
  width: 100%;
  margin: 0 auto;
}

.item_container h3 {
  font-size: 1.4em;
  margin: 1em 0.8em 0 0.8em;
}

.itemset {
  display: grid;
  grid-template-columns: auto auto 15% 50%;
  grid-template-rows: auto auto 48px 40px;
  grid-auto-flow: row;
  align-self: center;
  justify-self: center;
  grid-template-areas: "item-images item-images item-images item-p" "name name name item-p" "course course number item-p" "area area number item-p";
  gap: 0 0;
  box-sizing: border-box;
  margin: auto 1em;
}

.testB {
  display: grid;
  grid-template-rows: auto auto auto auto;
  grid-template-columns: auto auto 4em;
  grid-auto-flow: row;
  align-self: center;
  justify-self: center;
  grid-template-areas: "item-images item-images item-images" "name name keep" "item-p item-p item-p" "course area number";
  gap: 0 0;
  box-sizing: border-box;
}

.itemset i {
  box-sizing: border-box;
  position: absolute;
  /* width: 80px; */
  display: inline-block;
  top: -1px;
  left: 0;
  z-index: 10;
  width: 50%;
  padding: 0.5em 1em;
  color: #fff;
}

.itemset figure {
  margin: 2.3em 0 0 0;
}

.itemset .course {
  grid-area: course;
  display: flex;
  justify-content: center;
  align-items: center;
  align-items: center;
  flex-flow: column wrap;
  margin: 0 auto;
  padding: 0.3em 0;
  width: 100%;
  font-size: 1.6em;
  font-weight: 600;
  box-sizing: border-box;
}

.itemset .course:before {
  text-align: center;
  font-size: 0.5em;
  font-weight: 400;
  width: 100%;
  padding-right: initial;
}

.itemset .area {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  padding: 0.3em 0;
  width: 100%;
  font-size: 4.3vmin;
  letter-spacing: 0.1em;
  box-sizing: border-box;
}

.itemset .coment {
  position: relative;
}

.itemset .caption {
  /*grid-area: caption;*/
  margin: 0.5em 0;
}

.itemset .capa {
  /*grid-area: capa;*/
  font-size: 90%;
  margin: 0.5em 0;
}

.itemset .keep {
  position: absolute;
  top: -40px;
  right: 1%;
  margin: 0.5em 0;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  z-index: -1;
}

.itemset .keep i {
  position: relative;
  width: 30px;
  height: 30px;
  padding: 0 0;
}

.itemset .name {
  font-weight: 600;
  padding: 0.8em 0;
  font-size: 1.1em;
}

.itemset .number {
  display: flex;
  justify-content: center;
  flex-flow: column wrap;
  align-items: center;
  font-size: 1.5em;
  margin: 10px 0 10px 4px;
  border-radius: 20px;
  /*aspect-ratio: 1 / 1;*/
}

.testB .number {
  margin: 4px 0 4px 4px;
}

.itemset .coment {
  padding: 0 0 0 8px;
  line-height: 1.5em;
}

.itemset p {
  margin: 0 auto;
  padding: 0 0.5em;
  font-size: 1em;
}

.caption_box {
  position: relative;
  margin-top: 5em;
  padding: 1em 1em;
  border-top: 1px solid black;
}

.caption_box .caption {
  position: absolute;
  top: -0.4em;
  left: -2em;
  font-size: 1em;
  color: white;
  padding: 0 2em 0 0.5em;
  margin: 10px;
  border-radius: 60% 0% 100% 0%/90% 100% 0% 62%;
  width: 40%;
  height: 30px;
  background-color: #db0f2f;
  transform: translateY(-115%) translateX(1em);
}

.caption_box .text {
  position: absolute;
  top: -30%;
  left: 50%;
  width: 80%;
  font-size: 1.5em;
  color: white;
  text-align: center;
  /* padding: 0.1em 0.5em 0.2em 0em; */
  margin: 0.5em 0em 0.5em 0em;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  /* text-align: center; */
}

.s_01 .accordion_one .tast_accordion_inner .box_one ul {
  display: flex;
  list-style-type: none;
  padding: 0;
  flex-wrap: wrap;
  width: 100%;
}

.s_01 .accordion_one .tast_accordion_inner .box_one ul li {
  /* display: inline-flex; */
  align-self: auto;
  /* flex: 1; */
  border-right: 1px solid #fff;
  width: 12.5%;
  font-size: 1em;
  text-align: center;
}

.s_01 .accordion_one .tast_accordion_inner .box_one ul::after {
  content: "";
  width: 12.5%;
}

area {
  border: none;
  outline: none;
}

.cardlayout-wrap {
  /* position: relative; */
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  margin: 0 auto;
  /* max-width: 1280px; */
  width: 100%;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  justify-content: space-between;
}

.cardlayout-wrap img {
  /* display: block; */
  max-width: 100%;
  height: auto;
}

.card-list {
  width: 16.6666666667%;
  text-align: center;
  margin: 1em;
}

.card-title {
  margin-top: auto;
  text-align: center;
  font-weight: bold;
}

.card-list img {
  width: 100%;
}

.list_az {
  display: flex;
  flex-direction: column;
  margin: 2em auto;
  width: 40%;
  text-align: center;
}

.list_az img {
  width: 100%;
}

.list3 {
  width: 100%;
  flex-wrap: wrap;
}

.sm-wrap {
  /* position: relative; */
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  margin: 0 auto;
  /* max-width: 1280px; */
  width: 100%;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  justify-content: space-between;
}

.sm-wrap img {
  /* display: block; */
  max-width: 100%;
  height: auto;
}

.fotter_button {
  flex-flow: column wrap;
  margin: 0 auto;
  width: 100%;
}

/*景品グリッド*/
.prize_containers {
  padding: 2em 0 0 0;
  display: grid;
  grid-template-columns: 1fr;
  grid-auto-columns: auto;
  grid-auto-rows: auto;
  gap: 1em 0.5em;
  grid-auto-flow: row;
  grid-template-areas: "div1" "div2" "div3" "div4" "div5";
}

.prize_containers h3 {
  color: #000;
}
.prize_containers .div1 {
  margin-top: 1em;
}
.prize_containers .div1 h3 {
  overflow-wrap: anywhere;
  font-size: 4.7vmin;
  line-height: 1.4;
}
.prize_containers .div1 span.icon {
  width: 38%;
  position: absolute;
  top: -9%;
  right: 2%;
}
.prize_containers .div1 span img {
  width: 100%;
}
.prize_containers {
  flex: 0 0 20%;
}

.div1 .containers {
  width: 100%;
}

.div1_01 {
  width: 100%;
  margin: 0 auto;
}

.div1_02 {
  width: 100%;
  float: none;
}

.div1_03 {
  width: 100%;
  float: none;
}

.gift_a-cast {
  padding: 1% 2% 0 2%;
  gap: 3%;
}
.gift_a-cast figure {
  padding-bottom: 2%;
}
.gift_a-cast figcaption {
  width: 100%;
  font-size: 11.5px;
  line-height: 1em;
}
.gift_a-cast figcaption span {
  line-height: 1em;
  width: auto !important;
  position: relative !important;
  top: inherit !important;
  right: inherit !important;
}

#prize_details.contents03 {
  background: #a6111b;
}
#prize_details.contents03 .note {
  margin: 0 auto;
  padding: 0 0;
}
#prize_details.contents03 dl {
  flex-direction: row wrap;
  margin-top: 1em;
}
#prize_details.contents03 dt {
  color: var(--dk-blue);
  flex: 0 0 100%;
  padding: 12px 8px 4px 1em;
}
#prize_details.contents03 dd {
  flex: 0 0 100%;
  padding: 8px 1em 12px 1em;
  margin: 0;
}

.prize_containers > div p {
  /* font-size: clamp( 14px ,3.38vmin, 1.6rem); */
  font-size: 3.38vmin;
}

div.div2 > .containers {
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  width: 100%;
}
div.div2 > .containers .div2_02 {
  width: 80%;
  margin: 0 auto;
  max-height: 100%;
}

.div3 {
  gap: 0;
}

.div3 > .gift_c_02 {
  display: flex;
  flex-flow: column nowrap;
  padding: 2% 3% 1% 2%;
}
.div3 > .gift_c_02 img {
  width: 50%;
  margin: 0 auto;
}
.div3 > .gift_c_02 p {
  padding: 0 0 0 0;
}
.div3 > .gift_c_02 .gift_c_02_text {
  width: 100%;
  gap: 1em 0;
}
.div3 > .gift_c_02 p.caption {
  font-size: 1.1em;
}

.div5 img {
  width: 100%;
  margin: 0 auto;
}

#applitem > .prize_containers {
  width: 100%;
  grid-template-columns: 1fr;
  grid-template-areas: "div1" "div2" "div3" "p";
}

.contents03 > .note {
  width: inherit;
}

.apply a {
  width: 90%;
}

.apply_inner01 h4 + p {
  padding-left: 0;
  align-self: center;
}

.contents03 > .note > .bg_head_3 > .apply {
  width: inherit;
  margin: 0 auto;
}

.apply h3 {
  padding-left: 1.2em !important;
  text-indent: -1em;
}

.apply h5 + p {
  padding: 0.4em 0 0.4em 0;
}

.apply_inner01 {
  align-items: start;
}

.apply_inner01 h4 {
  width: 30%;
  text-align: center;
  display: flex;
  flex-flow: column;
  padding-right: 0.8em;
}

.section .apply_inner01 p {
  width: 70%;
  height: 100%;
  font-size: 1.1em !important;
  font-weight: 700;
  display: flex;
  align-items: center;
}

.contents03 p.apply {
  width: 100%;
}

.apply_box1 {
  display: flex;
  flex-flow: column;
  gap: 0.8em;
  padding: 0.5em;
  margin: 1em 0;
}

.modal-content {
  margin: 1em;
  padding: 2em 1em;
}

.row_item_sp {
  flex-grow: 1;
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  width: 100%;
}

.row_item_sp a {
  display: flex;
  width: 48%;
}

.row_item_sp img {
  display: block;
  width: auto;
  margin: 0 auto;
  padding: 0 0 1rem 0;
}

.fair_date_wrap {
  width: 90%;
  margin: 0 auto;
  padding: 1em 0 2em 0;
}

.fair_date_container {
  order: inherit;
  display: flex;
  gap: 0;
  flex-flow: column;
  width: 100%;
  padding: 0 0;
}

.fair_date {
  justify-content: flex-start;
  padding: 0 0;
}
.fair_date h3 {
  padding: 0.3em 0;
}
.fair_date P {
  padding: 0.5em 0.5em;
  font-size: 3.2vmin;
  text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  white-space: nowrap;
}
.fair_date P span {
  font-size: 150%;
  color: inherit;
}/*# sourceMappingURL=consadole_cp-event_s.css.map */