:root {
  --color00--bk: #222426;
  --color01--blue: #40b1e6;/*メイン青*/
  --color02--white: #ffffff ;/*メイン白*/
  --color03--grayP: #e5e8ea;/*灰薄い*/ 
  --color04--red: #c71e1b;/*赤*/ 
  --color05--navy: #002366;/*navy*/ 

  --space-unit: 4px;
  --space-4: 4px;
  --space-8: 8px;
  --space-12: 12px;
  --space-16: 16px;
  --space-24: 24px;/* ガター幅兼用 */
  --space-32: 32px;
  --space-48: 48px;
  --space-64: 64px;
  --space-72: 72px;
  --space-96: 96px;
  --space-128: 128px;
  --space-176: 176px;
  --space-256: 256px;
  --container: 1200px; /* 全体幅（ガター含む） */
  --extend: 80px;

  /*n / 17*/
  --font-size-main: 17px;
  --font-size14: 0.823rem;
  --font-size20: 1.176rem;
  --font-size24: 1.411rem;
  --font-size32: 1.882rem;
  --font-size40: 2.352rem;

  --columns: 12;        /* 総カラム数 */
  --gutter-count: calc(var(--columns) - 1); /* 11本のガター */

  /* 実際の1カラムの幅（全体からガター引いた実幅 ÷ カラム数） */
  --col-1-width: calc((var(--container) - var(--space-24) * var(--gutter-count)) / var(--columns));

  /* カラム幅：ガターを足す */
  --col-2-width: calc(var(--col-1-width) * 2 + var(--space-24) * 1);
  --col-3-width: calc(var(--col-1-width) * 3 + var(--space-24) * 2);
  --col-4-width: calc(var(--col-1-width) * 4 + var(--space-24) * 3);
  --col-5-width: calc(var(--col-1-width) * 5 + var(--space-24) * 4);
  --col-6-width: calc(var(--col-1-width) * 6 + var(--space-24) * 5);
  --col-7-width: calc(var(--col-1-width) * 7 + var(--space-24) * 6);
  --col-8-width: calc(var(--col-1-width) * 8 + var(--space-24) * 7);
  --col-9-width: calc(var(--col-1-width) * 9 + var(--space-24) * 8);
  --col-10-width: calc(var(--col-1-width) * 10 + var(--space-24) * 9);
  --col-11-width: calc(var(--col-1-width) * 11 + var(--space-24) * 10);
  --col-12-width: calc(var(--col-1-width) * 12 + var(--space-24) * 11); /* = 1200px */
}



html {height: 100%;font-size: var(--font-size-main);-webkit-text-size-adjust: none;line-height: 1.6; }
body { overflow-x: hidden;font-family: 'Noto Sans JP', sans-serif;font-weight: normal;}
img{width: 100%;height: auto;vertical-align: top;}
p{font-size: 1.0rem;line-height: 1.6em;margin: 0;}
h1 {font-size: 48px;line-height: 1.25;margin: 0;}
h2 {font-size: 36px;line-height: 1.3;margin: 0;}
h3 {font-size: 28px;line-height: 1.4;margin: 0;}
h4 {font-size: 20px;line-height: 1.5;margin: 0;}

a {text-decoration: none; color: inherit;border: none;transition: 0.1s;display: block;}
a:hover{opacity: 0.85;transition: 0.2s;}
ul,ol {list-style: none;padding: 0;margin: 0;}
*,*::before,*::after {  margin: 0;padding: 0;box-sizing: border-box;}
body,h1,h2,h3,h4,p,ul,ol,figure,blockquote,dl,dd {  margin: 0;}

table,tr,td,th{ margin: 0;padding: 0;line-height: 1.0;border-collapse: collapse;text-align: center;}

.col-1 {width: var(--col-1-width);}
.col-2 {width: var(--col-2-width);}
.col-3 {width: var(--col-3-width);}
.col-4 {width: var(--col-4-width);}
.col-5 {width: var(--col-5-width);}
.col-6 {width: var(--col-6-width);}
.col-7 {width: var(--col-7-width);}
.col-8 {width: var(--col-8-width);}
.col-9 {width: var(--col-9-width);}
.col-10 {width: var(--col-10-width);}
.col-11 {width: var(--col-11-width);}
.col-12 {width: var(--col-12-width);}

/*共通汎用パーツ*/
.displaySP{display: none;}
.main-container{margin: 0 auto;max-width: var(--col-12-width);}
.common-padding_upper {padding-top: var(--space-96);}
.common-padding_lower {padding-bottom: var(--space-96);}
.alignCenter{text-align: center;}
.text-highlight{font-weight: bold;font-size:28px; line-height: 1.4;}
.smallP{font-size: 15px;}
li{margin-bottom: var(--space-8);}
.fontRed{color: var(--color04--red);}
.mainH2 {margin: 0 auto;position: relative;padding-bottom: 25px;text-align: center;margin-bottom: var(--space-64);}
.mainH2::after {content: "";position: absolute;left: 50%; transform: translateX(-50%); bottom: 0;width: 300px;height: 5px;
  background: linear-gradient(
    to right,
    #083b63 0%,
    #083b63 20%,
    #8ed4ff 20%,
    #8ed4ff 100%);}
.mainH2::before {content: "";position: absolute;left: calc(50% - 150px + 300px * 0.20 - 5px); bottom: 0;width: 10px;height: 5px;background: #083b63;transform: skewX(-45deg);transform-origin: left bottom;z-index: 1;}
.btn {position: relative;padding: var(--space-24) var(--space-24);font-size: 24px;margin: 0 auto;width: 600px;color: #fff;font-weight: 700;text-align: center;background: linear-gradient(#56b4f8, #41a6e6); 
  border-radius: 12px;cursor: pointer;box-shadow: 0 6px 0 #083b63;transition: transform 0.05s ease-out, box-shadow 0.05s ease-out;user-select: none;}
.btn:hover {color: yellow;transform: translateY(6px);box-shadow: 0 0 0 #083b63;}
.btn::before {content: "";position: absolute;top: -42px;left: 50%;width: 304px;
  height: 28px;transform: translateX(-50%);background: url("../img/img47.png") no-repeat center/contain;}
.btnCap{text-align: center;font-size: 0.85rem;margin-top: var(--space-8);}
.outer-wrapper{background-image: url("../img/img45.jpg");background-repeat: no-repeat;background-position: center center;background-size: cover; }
.logo{position: relative;}
.logo img{position: absolute;left: 16px;top: 32px;max-width: 270px;}
.mainHero{text-align: center;}
.mainHeroSP{display: none;}
.mainHero img{max-width: 843px;padding-top: var(--space-48);}
header .main-container{padding-bottom: var(--space-48);}
header ul{list-style: disc;max-width: 660px;margin: 0 auto;
padding: var(--space-12) var(--space-24) var(--space-12) var(--space-24);padding-left: var(--space-96) ;border: 4px solid var(--color01--blue);border-radius: 20px;background: var(--color02--white);margin-top: var(--space-8);} 
header .textBlock li{margin-bottom:0;}

.reservation{background: #f6f7f9;background-image: url("../img/img73.jpg");background-repeat: repeat;background-size: auto;background-position: 0 0;}
.reservation .main-container{background: var(--color02--white);}
.reservation .imageBox{display: flex;gap: var(--space-24);justify-content: center;margin-top: var(--space-32);margin-bottom: var(--space-72);}
.reservation .imageBox img{max-width: 391px;}
.reservation .detailWrap{margin: 0 auto;display: flex;flex-direction: column;gap: var(--space-32);margin-top: var(--space-72);}
.reservation .detailBlock{display: flex;justify-content: center;gap: var(--space-24);align-items: flex-start;}
.reservation .detailBlock .left{padding: var(--space-4) var(--space-16);border: 1px solid var(--color00--bk);border-radius: 20px;max-width: 155px;width: 100%;text-align: center;font-size: 0.9rem;line-height: 1.2;}
.reservation .detailBlock .right{max-width: 540px;width: 100%;}
.reservation .detailBlock .right p{line-height: 1.3;}
.reservation .detailBlock .right p{margin-bottom: var(--space-12);}
.reservation .sche-rese{margin-top: var(--space-32);}
.reservation .sche-rese table{margin: 0 auto;max-width: var(--col-8-width);width: 100%;}
.reservation .sche-rese td{text-align: center;border: 1px solid var(--color00--bk);padding: var(--space-24) var(--space-4);line-height: 1.3;}
.reservation .sche-rese tr:first-child td{color: var(--color02--white);background: #555b60;padding: var(--space-16) var(--space-4) ;}
.reservation .sche-rese tr td:first-child{background: #e5e8ea;color: var(--color00--bk) !important;font-weight: bold;font-size: 0.95rem;}
.reservation .sche-rese p{margin-bottom: var(--space-32);}
.rakusenNotice{text-align: right;font-size: 0.9rem;max-width: var(--col-8-width);margin: 0 auto;margin-top: var(--space-8);}
.reservation .notice{margin: 0 auto;max-width: var(--col-8-width);padding-left: 16px;}
.reservation .notice ul{list-style: square;}
.reservation .notice a{text-decoration: underline;line-height: 3.0;}

.event {background-image: url("../img/img26.jpg");background-repeat: repeat; background-position: top left; background-size: auto; position: relative;}
.event .scheImg02{text-align: center;margin-bottom: var(--space-32);}
.event .scheImg02 img{max-width:802px;}
.event .event-decoration01{position: absolute;top: 0;left: 0;width: 289px;height: 330px;}
.event .event-decoration02{position: absolute;top: 0;right: 0;width: 289px;height: 330px;}
.event .event-decoration03{position: absolute;bottom: 0;left: 0;width: 289px;height: 330px;}
.event .event-decoration04{position: absolute;bottom: 0;right: 0;width: 289px;height: 330px;}
.event .event-decoration05{position: absolute;top: 33%;left: 0;width: 43px;height: 167px;}
.event .event-decoration06{position: absolute;top: 33%;right: 0;width: 43px;height: 167px;}
.event .event-decoration07{position: absolute;top: 66%;left: 0;width: 43px;height: 167px;}
.event .event-decoration08{position: absolute;top: 66%;right: 0;width: 43px;height: 167px;}
.event .scheBlock{position: relative;z-index: 2;}
.event .event-padding{padding: var(--space-128) 0 var(--space-128) 0;}
.event .eventBlock {position: relative;z-index: 2;background-repeat: no-repeat;background-position: center top;background-size: 95% 100%;}
.event .eventBlock01 {background-image: url("../img/img52.png");}
.event .headingWrap{display: flex;align-items: center;flex-direction: column;}
.event .heading {position: relative;text-align: center;display: inline-block;}
.event .heading::before {content: "";position: absolute;left: 0;top: 50%;transform: translate(-70%, -40%); width: 152px;
  height: 188px;background-size: contain;background-repeat: no-repeat;}
.event .heading01::before {background-image: url("../img/img48.png");max-width: 102px;}
.event .heading02::before {background-image: url("../img/img48.png");max-width: 102px;}
.event .heading p{padding:var(--space-4) var(--space-4); max-width: var(--col-4-width);margin: 0 auto;margin-top: var(--space-8);color: var(--color02--white);font-size: 1.1rem;}
.event .heading01 p{background:var(--color04--red);}
.event .heading02 p{background:var(--color05--navy);}
.event .eventBlock01 .btnWrap{margin-top: var(--space-72);}
.event .eventBlock01 .btn{width: 100%;}
.event .eventBlock01 .right img{margin-bottom: var(--space-32);}
.event .eventTitle{max-width: 540px;}
.event .freeEvent{background: var(--color02--white);max-width: var(--col-12-width);margin: 0 auto;position: relative;margin-top: var(--space-72);}
.event .freeEvent::before,
.event .freeEvent::after {content: "";position: absolute;left: 0;width: 100%;height: 20px;background: var(--color05--navy);}
.event .freeEvent::before {top: 0;}
.event .freeEvent::after {bottom: 0;}
.event .contentsWrap{margin-top: var(--space-96);display: flex;flex-direction: column;gap: var(--space-96);}
.event .eventBlock01 .contents01{margin-top: var(--space-72);}
.event .contents{display: flex;gap: var(--space-32);justify-content: center;}
.event .contents .left{max-width: var(--col-5-width);width: 100%;}
.event .contents h4{color: var(--color05--navy);font-size: 1.8rem;margin-bottom: var(--space-32);border-left: 8px solid var(--color05--navy);line-height: 1.1;padding-left: var(--space-16);}
.event .contents .text01{font-weight: bold;font-size:1.4rem; line-height: 1.4;}
.event .contents06 .text01{text-align: center;}
.event .contents .right{max-width: var(--col-5-width);}
.event .detailWrap{display: flex;flex-direction: column;gap: var(--space-4);
padding-top: var(--space-24);border-top: 1px solid var(--color00--bk);margin-top: var(--space-32);}
.event .detailBox {display: flex;align-items: flex-start;}
.event .detailLeft{width: 110px;flex-shrink: 0;} 
.event .eventBlock02{text-align: center;margin-top: var(--space-96);margin-bottom: var(--space-72);}
.event .eventBlock02 img{max-width: 700px;}
.event .scheImg{text-align: center;}
.event .scheImg img{max-width: 980px;}
.event .subBlock{margin: 0 auto;max-width: var(--col-11-width);width: 100%;border: 7px solid var(--color05--navy);border-radius: 20px;padding: var(--space-64) var(--space-64);background: var(--color02--white);display: flex;flex-direction: column;gap: var(--space-48);position: relative;}
.event .subContents{display: flex;justify-content: center;gap: var(--space-32);}
.event .subContents01{  background-image: url("../img/img62.png");background-repeat: no-repeat;background-position: right bottom; background-size:345px;}
.event .subContents02{flex-direction: row-reverse;align-items: flex-end;}
.event .subContents01 .left{flex: 0 0 379px;}
.event .subContents02 .left{flex: 0 0 580px;}
.event .subContents03 .left{flex: 0 0 382px;}
.event .subContents .right{flex: 1;}
.event .subContents03 .text03{width: 70%;}
.event .subContents03 .right{position: relative;}
.subContents03skate{position: absolute;bottom: -20px;right: 0;max-width: 137px;}
.event .subBlock .text01{}
.event .subBlock h4{font-size: 2.1rem;margin-bottom: var(--space-32);display: flex;align-items: center;}
.event .subBlock h4 .blueText{color: var(--color01--blue);}
.event .subBlock h4 .smallText{font-size: 0.75em;}
.event .subBlock .text02{margin-bottom: var(--space-24);}
.event .subBlock .text03{font-size: 0.85rem;}
.subBlock .subContents01,.subBlock .subContents02{border-bottom: 2px solid var(--color05--navy);padding-bottom: var(--space-48);}
.subBlock .subBlockDate{position: absolute;top: -60px;left: -60px;max-width: 162px;}
.stage{margin: 0 auto;max-width: var(--col-11-width);margin-top: var(--space-96);}
.stageBlock{width: 100%;background: var(--color02--white);border: 7px solid var(--color05--navy);border-radius: 20px;padding: var(--space-48) var(--space-12) var(--space-64) var(--space-12);}
.stageBlock01,.stageBlock02{position: relative;}
.stageBlock02{margin-top: var(--space-72);}
.stageBlock01Date,.stageBlock02Date{position: absolute; top: -60px;left: -60px;max-width: 128px;}
.stageBlockWrap{max-width: var(--col-8-width);margin: 0 auto;text-align: center;}
.stageBlockWrap01{padding-bottom: var(--space-48);border-bottom: 2px solid var(--color05--navy);margin-bottom: var(--space-32);}
.stageBlockWrap .text01{font-weight: bold;font-size: 1.8rem;}
.stageBlock img{margin-top: var(--space-24);}
.stageBlockWrap .text03{background: var(--color04--red);color: var(--color02--white);font-weight: bold;padding: var(--space-8) var(--space-96);display: inline-block;margin-top: var(--space-12);}
.stageBlockWrap .text04{text-align: center;font-size: 0.8rem;}
.stageBlockWrap02 img{max-width: 489px;display: block;margin: 0 auto;margin-top: var(--space-32);}
.stageBlockWrap03 img{max-width: 490px;}
.stageNoticeBlock{background: rgba(255, 241, 0, 0.5);text-align: center;padding: var(--space-32) var(--space-12);margin-top: var(--space-24);font-size: 1.2rem;font-weight: bold;}
.stageNotice{display: inline-block;text-decoration: underline;}
.lower-wrapper {background-image: url("../img/img27.jpg");background-repeat: repeat-y;
  background-position: center top;background-size: 100% auto; display: flex;flex-direction: column;gap: var(--space-128);}
.map .mapImage{background: var(--color02--white);border-radius: 0 80px 0 80px;text-align: center;padding: var(--space-32) var(--space-32);}
.ticket .btn{margin-top: var(--space-72);}
.ticket .detailContent{display: flex;flex-direction: column;gap: var(--space-32);margin-top: var(--space-64);max-width: var(--col-8-width);margin: 0 auto;margin-top: var(--space-72);margin-bottom: var(--space-72);}
.ticket .detailContent-Block{display: flex;gap: var(--space-24);align-items: flex-start;}
.ticket .detailContent-Block .left{max-width: var(--col-2-width);width: 100%;text-align: center;border:1px solid var(--color00--bk);border-radius:24px;padding:var(--space-4);font-size:0.9rem; }
.ticket .detailContent-Block .right{max-width: var(--col-6-width);}
.ticket .detailContent-Block .right p{margin-bottom: var(--space-12);}
.ticket .detailContent-Block .right .time{font-weight: bold;}
.ticket .text01{text-align: center;margin-top: var(--space-32);}
.sche_wrap{max-width: var(--col-8-width);margin: 0 auto;margin-top: var(--space-64);}
.sche_wrap p{text-align: right;font-size: 0.9rem;}
.sche_table{width: 100%;margin-bottom: var(--space-16);}
.sche_table td{padding: var(--space-32) var(--space-4);border: 1px solid var(--color00--bk);background: var(--color02--white);font-size: 0.9rem;}
.sche_table tr:first-child td{background: #555b60;font-weight: bold;color: var(--color02--white);}
.sche_table tr td:first-child {background: var(--color03--grayP);font-weight: bold;color: var(--color00--bk);}
.sche_list{max-width: var(--col-8-width);margin:  0 auto;margin-top: var(--space-72);} 
.sche_list ul{list-style-type: square;}
.sche_list a{display: block;text-decoration: underline;line-height:3.0;}
.note .note_mainUl{max-width: var(--col-8-width);margin:  0 auto;list-style: square;} 
.note .note_mainUl a{display: inline-block;text-decoration: underline;}
.note .note_innnerUl{list-style: disc;padding-left: var(--space-16);margin-top: var(--space-16);}
.note-snowland ul{max-width: var(--col-8-width);margin:  0 auto;list-style: disc;} 
.cancel ul{max-width: var(--col-8-width);margin:  0 auto;list-style: disc;} 
.cancel ul a{display: inline-block;text-decoration: underline;}
.faq .faq_box{margin: 0 auto; max-width: var(--col-9-width);display: flex;flex-direction: column;gap: var(--space-48);}
.faq_itemwrap{width: 100%;}
.faq_top{display: flex;}
.faq_top .left{background: #002366;padding: var(--space-16) var(--space-32);font-weight: bold;color: var(--color02--white);font-size: 34px;flex-shrink: 0;width: 90px;text-align: center;}
.faq_top .right{width: 100%;font-weight: bold;background: var(--color03--grayP);font-size: 19px;padding: var(--space-32) var(--space-24) var(--space-32) var(--space-24);}
.faq_bottom{display: flex;align-items: flex-start;}
.faq_bottom .left{background: var(--color01--blue);padding: var(--space-16) var(--space-32);font-weight: bold;color: var(--color02--white);font-size: 34px;flex-shrink: 0;width: 90px;text-align: center;}
.faq_bottom .right{width: 100%;background:#e6f7ff;padding: var(--space-24) var(--space-32) var(--space-24) var(--space-32);}
.faq_P{margin: 0 auto;max-width: var(--col-8-width);margin-top: var(--space-32);}
.footer_logo{text-align: center;}
.footer_logo img{max-width: 270px;}
.footer_add{text-align: center;font-size: 0.9rem;margin-top: var(--space-32);}

/*メディアクエリ チェックする代表的な幅の例
max-width: 1199px 1199px、1200px（直前直後）
max-width: 991px  991px、992px（直前直後）
max-width: 767px  767px、768px（直前直後）、480pxあたり（スマホ想定）
1320px以上 → 1319px → 1199px → 991px → 767px → 375px
*/




/* --- 1319px以下（ノートPC） */
@media (max-width: 1319px) {
  :root {
  --space-4:calc(4px - (var(--space-unit) * 0)); 
  --space-8:calc(8px - (var(--space-unit) * 0)); 
  --space-12:calc(12px - (var(--space-unit) * 0)); 
  --space-16:calc(16px - (var(--space-unit) * 0)); 
  --space-24:calc(24px - (var(--space-unit) * 1)); 
  --space-32:calc(32px - (var(--space-unit) * 1)); 
  --space-48:calc(48px - (var(--space-unit) * 3)); 
  --space-64:calc(64px - (var(--space-unit) * 3)); 
  --space-72:calc(72px - (var(--space-unit) * 4)); 
  --space-96:calc(96px - (var(--space-unit) * 4)); 
  --space-128:calc(128px - (var(--space-unit) * 12));
  --space-176:calc(176px - (var(--space-unit) * 20)); 
  --space-256:calc(256px - (var(--space-unit) * 30)); 

  --font-size-main: 16px; 
  }

h1 {font-size: 38px;line-height: 1.25;margin: 0;}
h2 {font-size: 30px;line-height: 1.3;margin: 0;}
h3 {font-size: 23px;line-height: 1.4;margin: 0;}
h4 {font-size: 19px;line-height: 1.5;margin: 0;}

.reservation{padding: 0 var(--space-72);}
.event .contents{padding: 0 var(--space-96);}
.event .eventBlock01 {background-image: url("../img/img52.png");background-size: 120% 100%;}
.freeEventWrap{padding:0 var(--space-72); }
.event .event-decoration01{position: absolute;top: 0;left: 0;width: 180px;height: 205px;}
.event .event-decoration02{position: absolute;top: 0;right: 0;width: 180px;height: 205px;}
.event .event-decoration03{position: absolute;bottom: 0;left: 0;width: 180px;height: 205px;}
.event .event-decoration04{position: absolute;bottom: 0;right: 0;width: 180px;height: 205px;}
.subBlockWrap{padding:0 var(--space-72); }
.subBlock .subBlockDate{max-width: 120px;left: -40px}
.event .subContents01 .left {flex: 0 0 209px;}
.event .subContents01{background-size: 200px;}
.event .subContents02 .left {flex: 0 0 380px;}
.event .subContents03 .left {flex: 0 0 200px;}
.stageWrap{padding:0 var(--space-72); }
.stageBlock01Date,.stageBlock02Date{position: absolute; top: -60px;max-width: 120px;left: -40px}
.stageNoticeBlock{position: relative;z-index: 10;}
.mapImageWrap{padding: 0 var(--space-72);}
.faq_top .left{font-size: 25px;width: 70px;display: flex;justify-content: center;}
.faq_bottom .left{font-size: 25px;width: 70px;display: flex;justify-content: center;}



}

/* --- 991px以下（タブレット） */
@media (max-width: 991px) {

  :root {
  --space-4:calc(4px - (var(--space-unit) * 0)); 
  --space-8:calc(8px - (var(--space-unit) * 0)); 
  --space-12:calc(12px - (var(--space-unit) * 0)); 
  --space-16:calc(16px - (var(--space-unit) * 0)); 
  --space-24:calc(24px - (var(--space-unit) * 1)); 
  --space-32:calc(32px - (var(--space-unit) * 1)); 
  --space-48:calc(48px - (var(--space-unit) * 3)); 
  --space-64:calc(64px - (var(--space-unit) * 3)); 
  --space-72:calc(72px - (var(--space-unit) * 4)); 
  --space-96:calc(96px - (var(--space-unit) * 4)); 
  --space-128:calc(128px - (var(--space-unit) * 12));
  --space-176:calc(176px - (var(--space-unit) * 20)); 
  --space-256:calc(256px - (var(--space-unit) * 30));  
  }

h1 {font-size: 30px;line-height: 1.25;margin: 0;}
h2 {font-size: 26px;line-height: 1.3;margin: 0;}
h3 {font-size: 21px;line-height: 1.4;margin: 0;}
h4 {font-size: 19px;line-height: 1.5;margin: 0;}

.sp-wrapper{padding: 0 var(--space-32);}
.reservation{padding: 0 var(--space-72);}
.event .contents{padding: 0 var(--space-32);}
.event .eventBlock01 {background-image: url("../img/img52.png");background-size: 120% 100%;}
.freeEventWrap{padding:0 var(--space-72); }
.event .event-decoration01{position: absolute;top: 0;left: 0;width: 180px;height: 205px;}
.event .event-decoration02{position: absolute;top: 0;right: 0;width: 180px;height: 205px;}
.event .event-decoration03{position: absolute;bottom: 0;left: 0;width: 180px;height: 205px;}
.event .event-decoration04{position: absolute;bottom: 0;right: 0;width: 180px;height: 205px;}
.subBlockWrap{padding:0 var(--space-72); }
.event .subBlock{padding:var(--space-64) var(--space-32);}
.subBlock .subBlockDate{max-width: 120px;left: -40px}
.event .subContents01 .left {flex: 0 0 200px;}
.event .subBlock h4{font-size: 1.7rem;}
.event .subContents01{background-size: 200px;}
.event .subContents02 .left {flex: 0 0 350px;}
.event .subContents03 .left {flex: 0 0 160px;}
.stageWrap{padding:0 var(--space-72); }
.stageBlock01Date,.stageBlock02Date{position: absolute; top: -60px;max-width: 120px;left: -40px}
.stageNoticeBlock{position: relative;z-index: 10;}
.mapImageWrap{padding: 0;}
.faq_top .left{font-size: 25px;width: 70px;display: flex;justify-content: center;}
.faq_bottom .left{font-size: 25px;width: 70px;display: flex;justify-content: center;}
.reservation .imageBox{max-width: 100%;}
.reservation .imageBox img{max-width: 40%;}
.text-highlight{font-size: 22px;}
.reservation .detailBlock .left{max-width: 120px;}
.event .contents .right{max-width: 35%;}
.event .contents .text01{font-size: 1.2rem;}
.event .contents h4{font-size: 1.5rem;}
.event .freeEvent::before, .event .freeEvent::after{height: 14px;}
.event .heading::before{transform: translate(-50%, -40%);}
.event .subContents03 .text03{width: 60%;}
.stageBlock{padding: var(--space-48) var(--space-32) var(--space-64) var(--space-32);}
.note .note_mainUl,.note-snowland ul,.cancel ul{padding-left: var(--space-32);}
.event .scheImg02 img{max-width: 650px;}
.event .eventBlock02 img{max-width: 650px;}

}


/* --- 767px以下（スマホ） */
@media (max-width: 767px) {

:root {
  --space-unit: 4px;
  --space-4:calc(4px - (var(--space-unit) * 0)); 
  --space-8:calc(8px - (var(--space-unit) * 1)); 
  --space-12:calc(12px - (var(--space-unit) * 1)); 
  --space-16:calc(16px - (var(--space-unit) * 2)); 
  --space-24:calc(24px - (var(--space-unit) * 4)); 
  --space-32:calc(32px - (var(--space-unit) * 5)); 
  --space-48:calc(48px - (var(--space-unit) * 8)); 
  --space-64:calc(64px - (var(--space-unit) * 8)); 
  --space-72:calc(72px - (var(--space-unit) * 14)); 
  --space-96:calc(96px - (var(--space-unit) * 16)); 
  --space-128:calc(128px - (var(--space-unit) * 18));
  --space-176:calc(176px - (var(--space-unit) * 20)); 
  --space-256:calc(256px - (var(--space-unit) * 44)); 

  --extend: 8px;
  --container: calc(100% - (var(--extend) * 2));

    /*n / 17*/
  --font-size-main: 14px;
  --font-size14: 0.823rem;
  --font-size20: 1.05rem;
  --font-size24: 1.411rem;
  --font-size32: 1.882rem;
  --font-size40: 2.352rem;

  }

h1 {font-size: 22px;line-height: 1.3;margin: 0;}
h2 {font-size: 21px;line-height: 1.4;margin: 0;}
h3 {font-size: 18px;line-height: 1.4;margin: 0;}
h4 {font-size: 18px;line-height: 1.5;margin: 0;}


/*共通汎用パーツ*/
.displayPC{display: none;}
.displaySP{display: inherit;}
.sp-wrapper{padding: 0 20px;}
.main-container{margin: 0 auto;max-width: var(--col-12-width);}
.common-padding_upper {padding-top: var(--space-96);}
.common-padding_lower {padding-bottom: var(--space-96);}
.alignCenter{text-align: center;}
.text-highlight{font-weight: bold;font-size:18px; line-height: 1.4;}
.smallP{font-size: 15px;}
li{margin-bottom: var(--space-8);}
.fontRed{color: var(--color04--red);}
.mainH2 {margin: 0 auto;position: relative;padding-bottom: 18px;text-align: center;margin-bottom: 24px;}
.mainH2::after {content: "";position: absolute;left: 50%; transform: translateX(-50%); bottom: 0;width: 200px;height: 5px;
  background: linear-gradient(
    to right,
    #083b63 0%,
    #083b63 20%,
    #8ed4ff 20%,
    #8ed4ff 100%);}
.mainH2::before {content: "";position: absolute;left: calc(50% - 100px + 200px * 0.20 - 5px); bottom: 0;width: 10px;height: 5px;background: #083b63;transform: skewX(-45deg);transform-origin: left bottom;z-index: 1;}
.btn {position: relative;padding: var(--space-48) var(--space-24);font-size: 18px;margin: 0 auto;width: 100%;color: #fff;font-weight: 700;text-align: center;background: linear-gradient(#56b4f8, #41a6e6); 
  border-radius: 12px;cursor: pointer;box-shadow: 0 6px 0 #083b63;transition: transform 0.05s ease-out, box-shadow 0.05s ease-out;user-select: none;}
.btn:hover {color: yellow;transform: translateY(6px);box-shadow: 0 0 0 #083b63;}
.btn::before {content: "";position: absolute;top: -28px;left: 50%;width: 304px;
  height: 22px;transform: translateX(-50%);background: url("../img/img47.png") no-repeat center/contain;}
.outer-wrapper{background-image: url("../img/img45.jpg");background-repeat: no-repeat;background-position: center center;background-size: cover; }
.logo{position: relative;}
.logo img{position: absolute;left: -4px;top: 24px;max-width: 120px;}
.mainHero{text-align: center;}
.mainHeroPC{display: none;}
.mainHeroSP{display: inherit;}
.mainHero img{max-width:100%;padding-top: var(--space-48);padding: 28px 0px 4px 0px;}
header .main-container{padding-bottom:0;}
header .textBlock{padding: 0 20px;}
header ul{list-style: disc;max-width: 660px;margin: 0 auto;
padding: var(--space-12) var(--space-24) var(--space-12) var(--space-24);padding-left: var(--space-96) ;border: 4px solid var(--color01--blue);border-radius: 12px;background: var(--color02--white);margin-top: var(--space-8);} 
header .textBlock li{margin-bottom:0;font-size: 0.7rem;}

.reservation{background: #f6f7f9;background-image: url("../img/img73.jpg");background-repeat: repeat;background-size: auto;background-position: 0 0;}
.reservation .main-container{background: var(--color02--white);}
.reservation .imageBox{display: flex;gap: var(--space-24);justify-content: center;margin-top: var(--space-32);margin-bottom:40px;flex-direction: column;align-items: center;}
.reservation .imageBox img{max-width: 391px;}
.reservation .detailWrap{margin: 0 auto;display: flex;flex-direction: column;gap: var(--space-32);margin-top:32px;}
.reservation .detailBlock{display: flex;justify-content: center;gap: var(--space-24);align-items: flex-start;}
.reservation .detailBlock .left{padding: var(--space-4) var(--space-16);border: 1px solid var(--color00--bk);border-radius: 20px;max-width: 90px;width: 100%;text-align: center;font-size: 0.9rem;line-height: 1.2;}
.reservation .detailBlock .right{max-width: 540px;width: 100%;}
.reservation .detailBlock .right p{line-height: 1.3;}
.reservation .detailBlock .right p{margin-bottom: var(--space-12);}
.reservation .sche-rese{margin-top: var(--space-32);}
.reservation .sche-rese table{margin: 0 auto;max-width:100%;width: 100%;}
.reservation .sche-rese td{text-align: center;border: 1px solid var(--color00--bk);padding: var(--space-24) var(--space-4);line-height: 1.3;}
.reservation .sche-rese tr:first-child td{color: var(--color02--white);background: #555b60;padding: var(--space-16) var(--space-4) ;}
.reservation .sche-rese tr td:first-child{background: #e5e8ea;color: var(--color00--bk) !important;font-weight: bold;font-size: 0.95rem;}
.reservation .sche-rese p{margin-bottom: var(--space-32);}
.rakusenNotice{text-align: right;font-size: 0.9rem;max-width: 100%;margin: 0 auto;margin-top: var(--space-8);}
.reservation .notice{margin: 0 auto;max-width: 100%;padding-left: 16px;}
.reservation .notice ul{list-style: square;}
.reservation .notice a{text-decoration: underline;line-height: 3.0;}

.event {background-image: url("../img/img26.jpg");background-repeat: repeat; background-position: top left; background-size: auto; position: relative;}
.event .scheImg02{text-align: center;margin-bottom: var(--space-32);}
.event .scheImg02 img{max-width:802px;}
.event .event-decoration01{position: absolute;top: 0;left: 0;width: 65px;height: 74px;}
.event .event-decoration02{position: absolute;top: 0;right: 0;width: 65px;height: 74px;}
.event .event-decoration03{position: absolute;bottom: 0;left: 0;width: 65px;height: 74px;}
.event .event-decoration04{position: absolute;bottom: 0;right: 0;width: 65px;height: 74px;}
.event .event-decoration05{position: absolute;top: 33%;left: 0;width: 43px;height: 167px;}
.event .event-decoration06{position: absolute;top: 33%;right: 0;width: 43px;height: 167px;}
.event .event-decoration07{position: absolute;top: 66%;left: 0;width: 43px;height: 167px;}
.event .event-decoration08{position: absolute;top: 66%;right: 0;width: 43px;height: 167px;}
.event .scheBlock{position: relative;z-index: 2;}
.event .event-padding{padding:32px 0;}
.event .eventBlock {position: relative;z-index: 2;background-repeat: no-repeat;background-position: center top;background-size: 120% 100%;}
.event .eventBlock01 {background-image: url("../img/img78.png");}
.event .headingWrap{display: flex;align-items: center;flex-direction: column;}
.event .heading {position: relative;text-align: center;display: inline-block;}
.event .heading::before {content: "";position: absolute;left: 0;top: 70%;transform: translate(20%, -30%); width: 152px;
  height: 188px;background-size: contain;background-repeat: no-repeat;}
.event .heading01::before {background-image: url("../img/img48.png");max-width: 42px;}
.event .heading02::before {background-image: url("../img/img48.png");max-width: 42px;}
.event .heading p{padding:var(--space-4) var(--space-4); max-width: 60%;margin: 0 auto;margin-top: var(--space-8);color: var(--color02--white);font-size: 1.1rem;}
.event .heading01 p{background:var(--color04--red);}
.event .heading02 p{background:var(--color05--navy);}
.event .eventBlock01 .btnWrap{margin-top: var(--space-72);}
.event .eventBlock01 .btn{width: 100%;}
.event .eventBlock01 .right img{margin-bottom: var(--space-32);}
.event .eventTitle{max-width:85%;}
.event .freeEvent .event-padding{padding:32px 0 0 0;}
.event .freeEvent{background: var(--color02--white);max-width: var(--col-12-width);margin: 0 auto;position: relative;margin-top: var(--space-72);}
.event .freeEvent::before,
.event .freeEvent::after {content: "";position: absolute;left: 0;width: 100%;height: 10px;background: var(--color05--navy);}
.event .freeEvent::before {top: 0;}
.event .freeEvent::after {bottom: 0;}
.event .freeEventSPImage{margin-top: 20px;}
.event .contentsWrap{margin-top: var(--space-96);display: flex;flex-direction: column;gap: 0;}
.event .eventBlock01 .contents01{margin-top: var(--space-72);}
.event .contents{display: block;gap: var(--space-32);justify-content: center;padding: 0 20px;}
.event .contents .left{max-width:100%;width: 100%;}
.event .contents h4{color: var(--color05--navy);font-size: 1.6rem;margin-bottom: var(--space-32);border-left: 8px solid var(--color05--navy);line-height: 1.1;padding-left: var(--space-16);}
.event .contents .text01{font-weight: bold;font-size:1.2rem; line-height: 1.4;}
.event .contents06 .text01{text-align: center;}
.event .contents .right{max-width: 100%;}
.event .detailWrap{display: flex;flex-direction: column;gap: var(--space-4);
padding-top: var(--space-24);border-top: 1px solid var(--color00--bk);margin-top: var(--space-32);margin-bottom: 50px;}
.event .detailBox {display: flex;align-items: flex-start;}
.event .detailLeft{width: 90px;flex-shrink: 0;} 
.event .eventBlock02{text-align: center;margin-top: var(--space-96);margin-bottom: var(--space-72);}
.event .eventBlock02 img{max-width:90%;}
.event .contents01SPimage{display: flex;flex-direction: column;gap: 16px;text-align: center;align-items: center;margin-top: 16px;}
.event .contents01SPimage img{width: 85%;}
.event .scheImg{text-align: center;}
.event .scheImg img{max-width: 980px;}
.event .subBlock{margin: 0 auto;max-width: var(--col-12-width);width: 100%;border: 3px solid var(--color05--navy);border-radius: 20px;padding:20px 20px;background: var(--color02--white);display: flex;flex-direction: column;gap: var(--space-48);position: relative;}
.event .subContents{display: block;justify-content: center;gap: var(--space-32);}
.event .subContents01{  background-image: url("../img/img62.png");background-repeat: no-repeat;background-position: right bottom; background-size:145px;}
.event .subContents02{flex-direction: row-reverse;align-items: flex-end;}
.subContents02SPimage{margin-bottom: 12px;}
.subContents03SPimage{margin-bottom: 12px;}
.event .subContents01 .left{flex: 0 0 379px;}
.subContents01sokubaiImage{margin-bottom: 8px;}
.event .subContents02 .left{flex: 0 0 580px;}
.event .subContents03 .left{flex: 0 0 382px;}
.event .subContents .right{flex: 1;}
.event .subContents03 .text03{width: 77%;}
.event .subContents03 .right{position: relative;}
.subContents03skate{position: absolute;bottom: -10px;right: -15px;max-width: 77px;}
.event .subBlock .text01{}
.event .subBlock h4{font-size: 1.7rem;margin-bottom: var(--space-32);display: block;align-items: center;line-height: 1.2;margin-top: 0px;}
.event .subBlock h4 .blueText{color: var(--color01--blue);}
.event .subBlock h4 .smallText{font-size: 0.75em;}
.event .subBlock .text02{margin-bottom: var(--space-24);}
.event .subBlock .text03{font-size: 0.85rem;padding-bottom: 10px;}
.subBlock .subContents01,.subBlock .subContents02{border-bottom: 2px solid var(--color05--navy);padding-bottom: var(--space-48);}
.subBlock .subBlockDate{position: absolute;top: -6px;left: -6px;max-width: 82px;}
.stage{margin: 0 auto;max-width: var(--col-12-width);margin-top: var(--space-96);}
.stageBlock{width: 100%;background: var(--color02--white);border: 3px solid var(--color05--navy);border-radius: 20px;padding:20px 20px;}
.stageBlock01,.stageBlock02{position: relative;}
.stageBlock02{margin-top: 50px;}
.stageBlock01Date,.stageBlock02Date{position: absolute; top: -36px;left: -6px;max-width: 82px;}
.stageBlock01Date{position: absolute; top: -65px;left: -6px;max-width: 82px;}
.stageBlock02Date{position: absolute; top: -65px;left: -6px;max-width: 82px;}
.stageBlockWrap{max-width: 100%;margin: 0 auto;text-align: center;}
.stageBlockWrap01{padding-bottom: var(--space-48);border-bottom: 2px solid var(--color05--navy);margin-bottom: var(--space-32);}
.stageBlockWrap .text01{font-weight: bold;font-size: 1.5rem;line-height: 1.2;}
.stageBlock img{margin-top: var(--space-24);}
.stageBlockWrap .text03{background: var(--color04--red);color: var(--color02--white);font-weight: bold;padding: var(--space-8) var(--space-96);display: inline-block;margin-top: var(--space-12);}
.stageBlockWrap .text04{text-align: center;font-size: 0.8rem;}
.stageBlockWrap02 img{max-width: 489px;display: block;margin: 0 auto;margin-top: var(--space-32);}
.stageBlockWrap03 img{max-width: 490px;}
.stageNoticeBlock{background: rgba(255, 241, 0, 0.5);text-align: center;padding: var(--space-32) var(--space-12);margin-top: var(--space-24);font-size: 1.1rem;font-weight: bold;position: relative;z-index: 10;line-height: 1.2;}
.stageNotice{display: inline-block;text-decoration: underline;}
.lower-wrapper {background-image: url("../img/img27.jpg");background-repeat: repeat-y;
  background-position: center top;background-size: 100% auto; display: flex;flex-direction: column;gap: var(--space-128);}
.map .mapImage{background: var(--color02--white);border-radius: 0 80px 0 80px;text-align: center;padding:0;}
.ticket .btn{margin-top: var(--space-72);}
.ticket .detailContent{display: flex;flex-direction: column;gap: var(--space-32);margin-top: var(--space-64);max-width: var(--col-8-width);margin: 0 auto;margin-top: var(--space-72);margin-bottom: var(--space-72);}
.ticket .detailContent-Block{display: flex;gap: var(--space-24);align-items: flex-start;}
.ticket .detailContent-Block .left{max-width: var(--col-2-width);width: 100%;text-align: center;border:1px solid var(--color00--bk);border-radius:24px;padding:var(--space-4);font-size:0.9rem; }
.ticket .detailContent-Block .right{max-width: var(--col-6-width);}
.ticket .detailContent-Block .right p{margin-bottom: var(--space-12);}
.ticket .detailContent-Block .right .time{font-weight: bold;}
.ticket .text01{text-align: center;margin-top: var(--space-32);}
.sche_wrap{max-width: var(--col-8-width);margin: 0 auto;margin-top: var(--space-64);}
.sche_wrap p{text-align: right;font-size: 0.9rem;}
.sche_table{width: 100%;margin-bottom: var(--space-16);}
.sche_table td{padding: var(--space-32) var(--space-4);border: 1px solid var(--color00--bk);background: var(--color02--white);font-size: 0.9rem;}
.sche_table tr:first-child td{background: #555b60;font-weight: bold;color: var(--color02--white);}
.sche_table tr td:first-child {background: var(--color03--grayP);font-weight: bold;color: var(--color00--bk);}
.sche_list{max-width: var(--col-8-width);margin:  0 auto;margin-top: var(--space-72);} 
.sche_list ul{list-style-type: square;}
.sche_list a{display: block;text-decoration: underline;line-height:3.0;}
.note .note_mainUl{max-width: 100%;margin:  0 auto;list-style: square;} 
.note .note_mainUl a{display: inline-block;text-decoration: underline;}
.note .note_innnerUl{list-style: disc;padding-left: var(--space-16);margin-top: var(--space-16);}
.note-snowland ul{max-width: 100%;margin:  0 auto;list-style: disc;} 
.cancel ul{max-width: 100%;margin:  0 auto;list-style: disc;} 
.cancel ul a{display: inline-block;text-decoration: underline;}
.faq .faq_box{margin: 0 auto; max-width: 100%;display: flex;flex-direction: column;gap: var(--space-48);}
.faq_itemwrap{width: 100%;}
.faq_top{display: flex;}
.faq_top .left{background: #002366;padding: var(--space-16) var(--space-32);font-weight: bold;color: var(--color02--white);font-size: 16px;flex-shrink: 0;width: 35px;text-align: center;display: flex;align-items: center;justify-content: center;}
.faq_top .right{width: 100%;font-weight: bold;background: var(--color03--grayP);font-size: 14px;padding: var(--space-32) var(--space-24) var(--space-32) var(--space-24);}
.faq_bottom{display: flex;align-items: flex-start;}
.faq_bottom .left{background: var(--color01--blue);padding: var(--space-16) var(--space-32);font-weight: bold;color: var(--color02--white);font-size: 16px;flex-shrink: 0;width: 35px;text-align: center;}
.faq_bottom .right{width: 100%;background:#e6f7ff;padding: var(--space-24) var(--space-32) var(--space-24) var(--space-32);}
.faq_P{margin: 0 auto;max-width: 100%;margin-top: var(--space-32);}
.footer_logo{text-align: center;}
.footer_logo img{max-width: 170px;}
.footer_add{text-align: center;font-size: 0.9rem;margin-top: var(--space-32);}




 }