@charset "utf-8";

:root{
--bg_line:linear-gradient(-45deg, #9F8336, #9F8336 48.5%, #AF954C 49.5%, #AF954C 50.5%, #9F8336 51.5%, #9F8336);
--bg_line_02:linear-gradient(-45deg, #FFF, #FFF 48.5%, #F2F2F2 49.5%, #F2F2F2 50.5%, #FFF 51.5%, #FFF);
--bg_line_size:14px 14px;

--font_01:'Noto Sans JP', sans-serif;
--font_02:'Poppins', 'Noto Sans JP', sans-serif;

--e_01:#FDC110;
--e_02:#450000;
--e_03:#347181;
--e_04:#CEB073;
--e_05:#000000;

--keyc_01:#337BA8;
--gold:#D9C58A;
--dark_gold: #b59a57;
}

/* =base
------------------------------------------------------------------------------------------*/
* { box-sizing: border-box; }
body { background-color: #fff;
    color: #000;
	font-family: var(--font_01);
	font-size: 16px;
	font-weight: 500;
	line-height: 1.6em;
	position: relative;
	overflow-x: hidden;
}
body.day26{
	background-color: #f7f7ef;
	background-image: url("../images/bg_day26.png");
	background-position: center;
	background-size: 100%;
	background-repeat: repeat-y;
}

body:before{position: fixed;content: "";background-image: url(../images/bg/bg.jpg);background-position: center;background-repeat: no-repeat;background-size: cover;width: 100%;height: 100%;top: 0;left: 0; pointer-events: none;z-index: -1;}


img { vertical-align: bottom; transition: 0.2s ease;}
a { color: #756417; text-decoration: none; outline: none; transition: 0.2s ease;}
a:hover { text-decoration: none; opacity:0.9; transition: 0.2s ease;}
a:hover img{ opacity:0.9; transition: 0.2s ease;}

html {overflow-y:scroll; height:100%; scroll-behavior: smooth;}


.pc_only{ display:block;}
.sp_only{ display:none;}

.pc_only2{ display:inline-block; width:100%;}


@media screen and (max-width: 768px){
.pc_only{ display:none;}
.sp_only{ display:block;}

.pc_only2{ display:none;}
}


/* frame */
.frame {position: fixed;width: 100%;height: 100dvh;top: 0;left: 0;z-index: 9996;pointer-events: none;}
.frame .yoko{position: absolute; width: calc(100% - 10px); height: 10px;}
.frame .yoko.top{background-color: #019ee8; top: 0; left: 10px;}
.frame .yoko.bottom{background-color: #22ad38; bottom: 0; left: 0;}
.frame .tate{position: absolute; width: 10px; height: calc(100% - 10px);}
.frame .tate.left{background-color: #fecb00; top: 0; left: 0;}
.frame .tate.right{background-color: #e5132b; top: 10px; right: 0;}
@media screen and (max-width: 768px){
  .frame .yoko{width: calc(100% - 6px); height: 6px;}
  .frame .yoko.top{left: 6px;}
  .frame .tate{width: 6px; height: calc(100% - 6px);}
  .frame .tate.right{top: 6px;}
}


/* =header
------------------------------------------------------------------------------------------*/
header {position: fixed;width: calc(100% - 20px);z-index: 100;background-color: #fff;font-family: var(--font_02);display: flex;align-items: center;top: 10px;left: 10px;padding: 5px;}
header .pc_nav{display: flex;width: calc(100% - 140px);}
header .sp_nav{display: none;}

/* logo */
header .head_tit {position: relative; width: 100px;margin: 0 20px; z-index: 100;}
header .head_tit img { width: 100%; }

/* pc nav left */
header .left_nav{width: calc(100% - 750px);}
header .left_nav ul{display: flex;justify-content: left;gap: 0 12px;}
header .left_nav li{}
header .left_nav li a{font-size: 16px;font-weight: bold;white-space: nowrap;display: flex;align-items: center;justify-content: center;line-height: 60px;color: #000;}
header .left_nav li a:hover{color: #98821f;}
header .left_nav li a.active{color: #98821f;}
/* pc nav right */
header .right_nav{width: 750px;}
header .right_nav ul{display: flex;align-items: center;gap: 0 4px;}
header .right_nav ul li{width: 150px;}
header .right_nav ul li a{display: block;overflow: hidden;padding: 0;}
header .right_nav ul li a img{width: 100%;height: auto;border-radius: 6px;}


@media screen and (max-width: 1170px){
  header{height: 70px;}
  header .pc_nav{display: none;}
  header .sp_nav{display: block;}

  /* nav icon */
  .nav_trigger {display: block;position: absolute;width: 30px;right: 20px;top: 28px;z-index: 200;cursor: pointer;}
  .nav_trigger .line{display: block;width: 100%;height: 2px;background-color: #000;transition: 0.3s;}
  .nav_trigger .line.top{margin-bottom: 4px;}
  .nav_trigger .line.center{margin-bottom: 4px;}
  .nav_trigger .line.bottom{width: 60%;margin-left: auto;}

  /* nav active */
  .nav-active .nav_trigger { opacity: 0.7;}
  .nav-active .nav_trigger .line.top{transform: rotate(-45deg) translate(-6px,5px);margin-bottom: 6px;}
  .nav-active .nav_trigger .line.center{transform: rotate(45deg);}
  .nav-active .nav_trigger .line.bottom{opacity: 0;}
  .nav-active .sp_nav{height:100vh;padding-top:100px;overflow-y: scroll;}

  /* sp nav */
  .sp_nav{width:100%; position:fixed; z-index:10; top:0; left:0; overflow-y: hidden; padding-top:0; height:0; background:#fff; transition:0.5s ease;display: block;}
  .sp_nav .global{max-width: 600px;width: 100%;height: 100%;margin: 0 auto;overflow-y: auto;padding-bottom: 60px;-ms-overflow-style: none;scrollbar-width: none;}
  .sp_nav .global::-webkit-scrollbar,
  .sp_nav .global::-webkit-scrollbar{display: none;}
  .sp_nav .global nav{}
  .sp_nav .global nav ul{transition: 0.3s;}
  .sp_nav .global nav ul .eve_block{border-radius: 8px;margin-bottom: 6px;}
  .sp_nav .global nav ul .eve_block:last-child{}
  .sp_nav .global nav ul .eve_block .tit{position: relative;display: flex;height: 70px;align-items: center;padding: 0 20px;}
  .sp_nav .global nav ul .eve_block .tit:before,
  .sp_nav .global nav ul .eve_block .tit:after{right: 1.7em;}
  .sp_nav .global nav ul .eve_block .tit:before{transform: rotate(45deg);}
  .sp_nav .global nav ul .eve_block .tit:after{transform: rotate(135deg);}
  .sp_nav .global nav ul .eve_block li{}
  .sp_nav .global nav ul .eve_block li a{display: block;padding: 4px 40px;font-size: 14px;position: relative;}
  .sp_nav .global nav ul .eve_block li a:hover{transform: translateY(-3px);}
  .sp_nav .global nav ul .eve_block li a:before{position: absolute; content: ""; width: 6px;height: 1px;background-color: #000;left: 25px;top: 16px;}
  .sp_nav .global nav ul .eve_block li:last-of-type a{padding-bottom: 20px;}

  .sp_nav .global nav ul .eve_block.eve01{background-color: var(--e_01);}
  .sp_nav .global nav ul .eve_block.eve01 a{color: #000;}
  .sp_nav .global nav ul .eve_block.eve02{background-color: var(--e_02);}
  .sp_nav .global nav ul .eve_block.eve02 a{color: #fff;}
  .sp_nav .global nav ul .eve_block.eve02 a:before,
  .sp_nav .global nav ul .eve_block.eve02 a:after{background-color: #fff;}
  .sp_nav .global nav ul .eve_block.eve03{background-color: var(--e_03);}
  .sp_nav .global nav ul .eve_block.eve03 a{color: #fff;}
  .sp_nav .global nav ul .eve_block.eve03 a:before,
  .sp_nav .global nav ul .eve_block.eve03 a:after{background-color: #fff;}
  .sp_nav .global nav ul .eve_block.eve04{background-color: var(--e_04);}
  .sp_nav .global nav ul .eve_block.eve04 a{color: #000;}
  .sp_nav .global nav ul .eve_block.eve05{background-color: var(--e_05); margin-bottom: 20px;}
  .sp_nav .global nav ul .eve_block.eve05 a{color: #fff;}
  .sp_nav .global nav ul .eve_block.eve05 a:before,
  .sp_nav .global nav ul .eve_block.eve05 a:after{background-color: #fff;}

  .sp_nav .global nav ul .txt_link{margin-bottom: 8px;font-size: 20px; line-height: 1.7em; text-align: center;}
  .sp_nav .global nav ul .txt_link:first-of-type{}
  .sp_nav .global nav ul .txt_link a{color: #000;display: block;font-weight: bold;}
  .sp_nav .global nav ul .txt_link a:hover{color: #98821f;}

  /* accordion */
  .sp_nav .global nav ul .eve_block.down .tit.active:before{transform: rotate(225deg);}
  .sp_nav .global nav ul .eve_block.down .tit.active:after{transform: rotate(-45deg);}
  .sp_nav .global nav ul .eve_block.down .accordion {max-height: 0;overflow: hidden;transition: max-height 0.4s ease;}
  .sp_nav .global nav ul .eve_block.down .accordion.active {max-height: 1000px;}
}
@media screen and (max-width: 768px){
  header {
    width: calc(100% - 12px);
    top: 6px;
    left: 6px;
    height: 50px;
}
  header .head_tit{width: 70px;}

  /* nav icon */
  .nav_trigger{top: 18px;}

  /* sp nav */
  .sp_nav .global{width: 88%;}
}


.header_sub{padding: 0px 10px;position: fixed;width: 100%;z-index: 100;font-family: var(--font_02);display: flex;align-items: center;height: 60px;top: 80px;gap: 0 12px;}
.header_sub .head_logo{position: relative;width: 100px;margin: 0 20px;}
.header_sub .head_logo img{width: 100%; height: auto;}
.header_sub ul{display: flex;align-items: center;gap: 0 20px;}
.header_sub ul li{}
.header_sub ul li a{font-size: 16px;font-weight: bold;white-space: nowrap;display: flex;align-items: center;justify-content: center;line-height: 60px;color: #000;}
@media screen and (max-width: 1170px){
  .header_sub{display: none;}
}


/* =footer
-----------------------------------------------------------------------------------------*/
footer { width: 100%; text-align: center; position: relative; background-color: #000; padding: 40px 0;}
footer .bnr_box{ display: flex;flex-wrap: wrap;justify-content: center;gap: 12px 2%;margin-bottom: 20px;}
footer .bnr_box a{width: 12%;display: block;}
footer .bnr_box a img{width: 100%;height: auto;}

footer small{  font-size: 12px; color:#fff; width: 40%;text-align: left;}

@media screen and (max-width: 768px){
  footer .bnr_box{gap: 8px 2%;}
  footer .bnr_box a{width: 49%;}
}


/* = sp nav
------------------------------------------------------------------------------------------*/
.sp-nav { display: none; }

/* = wrap
------------------------------------------------------------------------------------------*/
/* main用のwrap */
.main-wrap {display: block;position: relative;padding: 80px 10px 0;}
.main-wrap.event-wrap{padding: 140px 10px 0;}
@media screen and (max-width: 1170px){
  .main-wrap.event-wrap{padding: 80px 10px 0;}
}
@media screen and (max-width: 768px){
  .main-wrap{padding: 50px 6px 0;}
  .main-wrap.event-wrap{padding: 56px 6px 0;}
}

/* セクションごとのwrap */
.section-wrap { margin: 0 auto 2vw; width: 94%; max-width: 1200px; }
.section-wrap img { vertical-align: bottom; }
.section-wrap p:not(:last-of-type) { margin-bottom: 1em; }

/* コンテンツごとのwrap */
.content-wrap { margin-bottom: 2vw; }



/* = parts
------------------------------------------------------------------------------------------*/
.pc-none { display: none; }
.sp-none { display: block; }

/* 横並びbox */
.clearfix::after,
.float-box::after { content: ""; clear: both; display: block; }
.float-box { width: 102%; }
.float-box .box01 { width: 98%; }
.float-box .box02,
.float-box .box03,
.float-box .box04 { float: left; margin: 0 1% 1% 0; }
.float-box .box02 { width: 48%; }
.float-box .box03 { width: 31.3%; }
.float-box .box04 { width: 24%; }
.float-box .box01 img,
.float-box .box02 img,
.float-box .box03 img,
.float-box .box04 img { width: 100%; }
.table-box { display: table; width: 100%; }
.table-box .box02,
.table-box .box03,
.table-box .box04 { display: table-cell; vertical-align: middle; }
.table-box .box02 { width: 50%; }
.table-box .box03 { width: 33.3%; }
.table-box .box04 { width: 25%; }
.table-box .box02 img,
.table-box .box03 img,
.table-box .box04 img { width: 100%; }

/* font */
.moreless { font-size: .8em; line-height: 1.4em; }
.less { font-size: .9em; line-height: 1.4em; }
.mid { font-size: 1.1em; line-height: 1em; }
.big { font-size: 1.2em; line-height: 1em; }
.bigger { font-size: 1.3em; line-height: 1em; }
.biggest { font-size:2em; line-height: 1.2em; }
.font-bold { font-weight: bold; }
.font-normal { font-weight: normal; }
.font-minchou { font-family: "ＭＳ 明朝",serif; font-weight: normal; }
.font-italic { font-style: italic; }
.copyright { font-size: 12px; }

/* textColor */
.text-red { color: #cc0000; }
.text-white { color: #fff; }
.text-black { color: #000; }
.sat { color: #0b5792; }
.sun { color: #a63646; }

/* textAlign */
.text-left { text-align: left; }
.text-center { text-align: center; }
.text-right { text-align: right; }

/* margin */
.mb-05vw { margin-bottom: .5vw !important; }
.mb-1vw { margin-bottom: 1vw !important; }
.mb-2vw { margin-bottom: 2vw !important; }
.mb-3vw { margin-bottom: 3vw !important; }
.mb-4vw { margin-bottom: 4vw !important; }
.mb-5vw { margin-bottom: 5vw !important; }
.mb-6vw { margin-bottom: 6vw !important; }
.mb-7vw { margin-bottom: 7vw !important; }
.mb-8vw { margin-bottom: 8vw !important; }
.mb-9vw { margin-bottom: 9vw !important; }
.mb-10vw { margin-bottom: 10vw !important; }
.mb-01em { margin-bottom: .1em !important; }
.mb-02em { margin-bottom: .2em !important; }
.mb-03em { margin-bottom: .3em !important; }
.mb-04em { margin-bottom: .4em !important; }
.mb-05em { margin-bottom: .5em !important; }
.mb-06em { margin-bottom: .6em !important; }
.mb-07em { margin-bottom: .7em !important; }
.mb-08em { margin-bottom: .8em !important; }
.mb-09em { margin-bottom: .9em !important; }
.mb-1em { margin-bottom: 1em !important; }
.mb-2em { margin-bottom: 2em !important; }
.mb-3em { margin-bottom: 3em !important; }

/* 16:9 wrap(youteubeとか) */
.video-outer-wrap { margin: 0 auto 3vw; width: 60%; }
.video-wrap { overflow: hidden; padding-bottom: 56.25%; position: relative; height: 0px; width: 100%; }
.video-wrap iframe { position: absolute; top: 0; left: 0; height: 100%; width: 100%; }
.video-wrap img { position: absolute; top: 50%; left: 50%; transform: translate3d(-50%, -50%, 0); width: 100%; }

/* playButton */
.play-button::before { content: ""; border: 3px solid rgba(255,255,255,.5); border-radius: 50%; position: absolute; top: 50%; left: 50%; transform: translate3d(-50%,-50%,0); width: 75px; height: 75px; transition: .15s; z-index: 1; }
.play-button::after { content: ""; border: 23px solid transparent; border-left: 35px solid rgba(255,255,255,.5); position: absolute; top: 50%; left: calc(50% + 17px); transform: translate3d(-50%,-50%,0);transition: .15s;  }
.play-button:hover::before { border: 3px solid rgba(255,255,255,1); }
.play-button:hover::after {  border-left: 35px solid rgba(255,255,255,1); }

/* periodBox */
.period-box { background: #f8f8f8; border: 1px solid #cc0000; box-sizing: border-box; color: #cc0000; font-size: 26px; font-weight: bold; line-height: 1.4em; margin: 0 auto 2vw; padding: 1em 0; text-align: center; width: 80%; }

/* bottomLineBased */
.solid-line { border-bottom: 1px solid #fff; }
.dotted-line { border-bottom: 1px dotted #fff; }
.dashed-line { border-bottom: 1px dashed #fff; }

/* bottomLinePadding */
.solid-line,
.dotted-line,
.dashed-line { padding-bottom: 1em; }

/* textList(div等で囲む) */
.text-list p,
.text-list ul li { padding: 0 0 .2em 1.1em; position: relative; }
.text-list p:not(:last-of-child) { margin-bottom: 1em; }
.text-list ul li:not(:last-of-child) { margin-bottom: .4em; }
.text-list p::before,
.text-list ul li::before { content: "※"; position: absolute; left: 0; }
.text-list-dotted p::before,
.text-list-dotted ul li::before { content: "・"; }




/* smartphone
------------------------------------------------------------------------------------------*/
@media screen and (max-width: 768px){
  /* =base
  ------------------------------------------------------------------------------------------*/
  body { font-size: 14px;  }


  /* =footer
-----------------------------------------------------------------------------------------*/
footer{}
footer .container{ display: block;}

footer .foot_center{ padding: 20px 0;}

footer .left{ width: 100%; margin-bottom: 20px;}
footer .left p { margin-bottom: 1em;}
footer .right{ width: 100%; justify-content: left;}
footer .right li{ margin-right: 12px; margin-left: 0;}
footer .right li img{ height: 80px;}

footer .foot_bottom{ padding: 20px 0;}
footer .foot_bottom .bnr_box{ justify-content: left;}
footer .foot_bottom .bnr_box a{width: 48%; margin: 0 1% 2%;}
footer .foot_bottom small{ margin-bottom: 2em; display: block; width: 100%; text-align: center;}



  /* =pagetop
  ------------------------------------------------------------------------------------------*/
  .page_top{ display: none; }



  /* = wrap
  ------------------------------------------------------------------------------------------*/

  /* セクションごとのwrap */
  .section-wrap { margin: 0 auto 7vw; width: 100%; }

  /* コンテンツごとのwrap */
  .content-wrap { margin-bottom: 7vw; padding: 0 3vw; }

  /* = parts
  ------------------------------------------------------------------------------------------*/
  .pc-none { display: block; }
  .sp-none { display: none; }

  /* box */
  .float-box,
  .float-box .box01,
  .float-box .box02,
  .float-box .box03 { width: 100%; }
  .float-box .box02,
  .float-box .box03 { float: none; margin: 0 0 5% 0; }
  .float-box .box04 { width: 48%; }
  .table-box .box02,
  .table-box .box03 { display: block; width: 100%; }
  .table-box .box04 { width: 50%; }

  /* textAlign */
  .sp-text-left { text-align: left; }
  .sp-text-right { text-align: right; }
  .sp-text-center { text-align: center; }

  /* margin */
  .sp-mb-05vw { margin-bottom: .5vw !important; }
  .sp-mb-1vw { margin-bottom: 1vw !important; }
  .sp-mb-2vw { margin-bottom: 2vw !important; }
  .sp-mb-3vw { margin-bottom: 3vw !important; }
  .sp-mb-4vw { margin-bottom: 4vw !important; }
  .sp-mb-5vw { margin-bottom: 5vw !important; }
  .sp-mb-6vw { margin-bottom: 6vw !important; }
  .sp-mb-7vw { margin-bottom: 7vw !important; }
  .sp-mb-8vw { margin-bottom: 8vw !important; }
  .sp-mb-9vw { margin-bottom: 9vw !important; }
  .sp-mb-10vw { margin-bottom: 10vw !important; }

  /* 16:9 wrap(youteubeとか) */
  .video-outer-wrap { width: 92%; }


  /* periodBox */
  .period-box { font-size: 18px; line-height: 1.2em; margin-bottom: 4vw; padding: .6em 0; width: 90%; }

  /* textList(div等で囲む) */
  .text-list p,
  .text-list ul li { padding-bottom: .3em; }
}


/******************************* error_404 *********************************/
#error_404 {text-align: center;width: 90%;max-width: 500px;margin: 0 auto;padding: 200px 0 200px;}
#error_404 .stit {font-size: 3em;line-height: 1.5em;margin-bottom: 0.5em;font-weight: bold;}
#error_404 .text {font-size: 1.2em;}
#error_404 .button-outer {margin-top: 3em;}
  /******************************* error_404 *********************************/