@charset "utf-8";
/* contents------------------------------------------------------------------------------------------------------------ */
body {font-family: 'Noto Sans JP',"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;color:#333333;}
html,body {height: 100%;margin:0;padding:0;}
.maincontents {margin:0;padding:0;margin-top:10px;padding-bottom:100px;}
/*.wrap {height: 100%;margin:0;padding:0;}  右にできる余白を消すためのタグ */
.wrap{
min-height: 100vh;
position: relative;/*←相対位置*/
padding-bottom:0px;/*←footerの高さその都度変更が必要*/
box-sizing: border-box;/*←全て含めてmin-height:100vhに*/
}

/* topimgPC----------------------------------------------- */
#visual {
    padding-top:38.5%;margin-top:-30px;
    width: 100%;
    background:url("images/pc_top.jpg") no-repeat;
        background-position-x: 0%;
        background-position-y: 0%;
        background-size: auto auto;
    background-position: center top;
    position: relative;
    background-size:100%;border-bottom: solid 0px #333;
	animation: fadeIn 1.5s ease 0s 1 normal;
    -webkit-animation: fadeIn 1.5s ease 0s 1 normal;
}
/* 終了用でプラス
#visual::before,#visual2::before{
	background-color: rgba(0,0,0,0.7);
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	content: ' ';
}
#visual p,#visual2 p {
 position: absolute;
  color: white;
  font-weight:600;
  font-size:250%;z-index:201;
  font-family :Quicksand, sans-serif;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  margin:0;
  padding:0;
  }
*/
/* animation----------------------------------------------- */
@keyframes fadeIn { 
    0% {opacity: 0} /* 始め */
    100% {opacity: 1} /* 終わり */
}
/*古いブラウザ用*/
@-webkit-keyframes fadeIn {0% {opacity: 0} 100% {opacity: 1}
}
/* backimg----------------------------------------------- */
#wrapper{background:url('images/back.jpg') no-repeat;
		background-position:center top;
		background-attachment:fixed; background-size: cover;
		}/* PC */
#wrapper::before {
  content: "";
  background: url('images/back.jpg')no-repeat center center;
  background-size: cover;
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: -1;}

/* commonimg----------------------------------------------- */
.img-responsive,img {display: block;max-width: 100%;height: auto;}
.center-block {display: block;margin-right: auto; margin-left: auto;}
.goods-box {
  width: 100%;
  margin: 0 auto;
  border-radius:5px;
  background-color: #fff;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
}
.goods-box_image {width:100%;overflow:hidden;position: relative;}
.goods-box_info {padding:12px 20px;}
.goods-box_image img {height: auto;width: 100%;transition:1s all;}
.goods-box_imageimg:hover{transform:scale(1.2,1.2);transition:1s all;}
.goods-box .bottom-right {
position: absolute;bottom:-15px;right:10px; background:rgba(0, 0, 0, 0.6);
padding:0px 10px;color: aliceblue;font-size:1.5rem;
}
.goods-box .bottom-right:after{content:'+';}

/* swiper----------------------------------------------- */
.swiper{padding:10px!important;}
.swiper-wrapper {border:1px solid #ddd;}
.swiper-button-prev {color:aliceblue !important;opacity: 0.5;}
.swiper-button-next {color:aliceblue !important;opacity: 0.5;}
.swiper-button-next:hover,.swiper-button-prev:hover{color:#4D4B4B !important;transition:1s all;}
.swiper-scrollbar {position:relative!important;height:10px!important;margin-top:10px!important;width:97%!important;}
.swiper-scrollbar-drag {background: rgba(47, 157, 160, 1.7)!important;}
.swiper-pagination{position:relative!important;height:10px!important;}
.swiper-pagination-bullet {background-color:#24272D!important;height:14px!important;width:14px!important;margin-top:15px!important;}

/* lightbox----------------------------------------------- */
.lb-nav a.lb-prev {position: absolute;opacity:0.5;left: -80px;/*  0から-80pxへ変更*/} 
.lb-nav a.lb-next {position: absolute;opacity:0.5;right: -80px;/* 0から-80pxへ変更*/} 

/* info＆slider----------------------------------------------- */
.info {padding:0px;border-top: solid 0px #413603;border-bottom: solid 0px #413603;text-align: center;}
.info span.sub {font-size:250%; font-weight:100; padding-right: 3%; padding-left:1%; margin-bottom:5px; vertical-align:-50px;color:#1579c2;}
/* link----------------------------------------------- */
a:link.rink1,a:visited.rink1 {color:#ec7557; text-decoration:underline;}
a:hover.rink1,a:active.rink1 {color:#ffb6a3;text-decoration:none;overflow: hidden;outline: none;}

/* box1----------------------------------------------- */
.cont-box1 {width:97%; max-width:1080px;margin: 0 auto;padding:5px;}
.cont-box1 .inner {width:98%; max-width:1080px;margin: 0 auto;padding: 10px 15px 20px 15px;border-adius:5px;background:rgba(255, 255, 255, 0.0);margin-bottom:50px;border-radius:10px;box-shadow: 0 10px 15px 0 rgba(152, 162, 168, 0.0);}
.cont-box1 h2 {background:#59295b;color: #fff;font-size:180%;font-weight:800;text-align: center;padding: 10px 0 10px;margin-bottom:16px;border-radius: 30px;}
.cont-box1 h2 +div {font-size:180%;font-weight:800;color: #333;padding: 10px 0 10px;text-align: center;}
.cont-box1 h2:nth-child(n + 2) {margin-top:70px;}/*ｈ2の2番目以降指定*/
.cont-box1 .tx1 span {font-size:80%;}
.cont-box1 .tx1 span:after{content:' \A ';white-space: pre;}
.cont-box1 .tx2 {font-size:120%;font-weight:500;color: #333;padding: 0px 0 10px;margin-bottom:50px;}
.cont-box1 .tx2 span:after{content:' \A ';white-space: pre;}
.cont-box1 img{width:100%; max-width:1080px;margin: 0 auto;}
@media screen and (min-width: 768px){
.sp-br {display: none; }
}
/* box2----------------------------------------------- */
.cont-box2{width:97%; max-width:1200px;margin: 0 auto;padding:5px;}
.cont-box2 .inner{width:98%; max-width:1080px;margin: 0 auto;padding: 10px 15px 20px 15px;border-adius:5px;background:rgba(255, 255, 255, 1.0);margin-bottom:50px;box-shadow: 0 10px 15px 0 rgba(100, 75, 25, 0.5);	animation: fadeIn 1.5s ease 0s 1 normal; -webkit-animation: fadeIn 1.5s ease 0s 1 normal;}
.cont-box2 .inner2{background:rgba(230,230,230,0.0);border:0px solid #ddd;padding:10px 15px;}
/* box3----------------------------------------------- */
.cont-box3 {width:100.0%;margin: -5 auto;padding:50px 0px;background:rgba(255, 255, 255, 0.5);}
.cont-box3 .inner {
  width: 100%;
  margin: 0 auto;
  border-radius:15px;
  overflow: hidden;
  background-color: #fff;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  }
.cont-box3 .image {width:100%;}
.cont-box3 .event-box_info {padding:12px 20px;}
.cont-box3 .info_name {
  padding-right: 3%;
  display: inline-block;
  vertical-align: middle;
  font-size: 16px;
  line-height: 1.5;color:#000000;
}
.cont-box3 .info_btn-wrap {
  width: 90%;
  display: inline-block;
  vertical-align: middle;
}
.cont-box3 .btn {text-decoration: none;outline: none;
  margin-top: 0px;
  display: inline-block;
  color: #fff;
  background-color:#000;
  padding: 2px 10px;
  border-radius: 20px;
  font-size: 12px;
  width: 100%;
  box-sizing: border-box;
  text-align: center;transition: all 0.3s ease-out;
}
.cont-box3 .btn+.btn{margin-top:5px;}
.cont-box3 .btn:hover{transform: scale(0.95);}
/* box4----------------------------------------------- */
.cont-box4 {width:97%; max-width:1080px;margin: 0 auto;padding:5px;}
.cont-box4 .inner{width:98%; max-width:1080px;margin: 0 auto;padding: 10px 15px 20px 15px;margin-bottom:50px;}
.cont-box4 h2{font-size:160%;margin-top:-10px;margin-bottom:20px;font-weight:600;line-height: 1.3;border-radius: 30px;border: solid 5px #3f87be; background:#3f87be;text-align: center;display: block;padding:10px;color: aliceblue;}
.cont-box4 h2 +p {font-size:180%;font-weight:800;color: #333;padding: 20px 0 20px;text-align: center;color:#3f87be;}
.cont-box4 img{width:100%; max-width:1080px;margin: 0 auto;}



/* txt----------------------------------------------- */
.txtb{font-weight:800;}
.txt1{font-size:70%;}
.txt2{font-size:80%;}
.txt3{font-size:90%;}
.txt4{font-size:100%;}
.txt5{font-size:110%;}
.txt6{font-size:120%;}
.txt7{font-size:130%;}
.txt8{font-size:140%;}
.txtsp{font-weight:600;font-size:1.5rem;}
.white{color:aliceblue;}
.red1{color:#b40808;}
.pink1{color:#ec7557;}
.pink2{color:#ffb7b7;}
.gray{color:#9E9E9E;}
.gray2{color:#303340;}
.yellow{color:#fff226;}
.item-name p:nth-child(1){background:#1db3de;color:#fff;border-radius:3px;font-size:1.0rem;width:45.5%;text-align: center;}
.item-name{font-size:140%;font-weight:800;color:#1c2432; line-height:1.2em;}
.item-name span{font-size:90%;}
.item-name span:nth-child(3){font-size:70%;}
.item-day{font-size:120%;font-weight:800;margin-top:10px;}
.item-ex,.item-ex2,.item-ex3,.item-ex4,.item-ex5,.item-ex6,.item-ex7{font-size:1.5rem;font-weight:800;margin-top:5px;color:#e92b7d;}
.item-ex:after,.item-ex3:after,.item-ex4:after,.item-ex5:after,.item-ex6:after,.item-ex7:after{content:' (税込)';font-size:0.8rem;}
.item-ex2:after{content:' (税込) / ';font-size:0.8rem;}
.item-ex:before{content:' ';font-size:0.8rem;}


/* 高さ調整 */
.boxtop1{margin-top:10px;}
.boxtop2{margin-top:20px;}
.boxtop3{margin-top:30px;}
.boxtop4{margin-top:40px;}
.boxtop5{margin-top:100px;}
.boxdown1{margin-bottom:10px;}
.boxdown2{margin-bottom:20px;}
.boxdown3{margin-bottom:30px;}
.boxdown4{margin-bottom:40px;}
.boxdown5{margin-bottom:100px;}

/* list */
.inList,.inList2{padding-left:1.0em;}
.inList3,.inList4{padding-left:0.7em;}
.inList5 {padding-left:0.0em;}
.inList > li {list-style:none;list-style-type:none;line-height:1.2;margin-left:1.2em;text-indent:-1.2em;padding: 5px;}
.inList > li::before {content: '※';margin-right:5px;}
.inList2 > li {padding-left:0.7em;line-height:1.2;text-indent:-1.2em;margin-bottom:10px;padding-bottom:5px;border-bottom: dashed 1px #C8C9D1;list-style-position: inside;}
.inList3 > li ,.inList4 > li{list-style:none;list-style-type:none;padding-left:0.7em;line-height:1.2;text-indent:-1.2em;margin-bottom:10px;padding-bottom:5px;list-style-position: inside;}
.inList3 > li::before {content: '※';margin-right:5px;}
.inList4 > li::before {content: '◆';margin-right:5px;}
.inList5 > li {list-style:none;list-style-type:none;line-height:1.2;margin-left:0.1em;text-indent:-0.1em;padding: 5px;}


/* flexbox------------------------------------------------------------- */
.flexbox{display:flex;flex-wrap: wrap;justify-content: center;align-content:flex-start;width:100%;max-width:1080px;margin: 0 auto;padding:0px;}
.fb_item1{flex-basis:95%;max-width:95%;margin:2px;padding:5px;}
.fb_item2{flex-basis:40%;max-width:40%;margin:2px;padding:5px;}
.fb_item3{flex-basis:55%;max-width:55%;margin:2px;padding:5px;}
.fb_item4{flex-basis:48%;max-width:48%;margin:4px;padding:2px;}
.fb_item5{flex-basis:31.5%;max-width:31.5%;margin:4px;padding:2px;}

/* dltable--------------------------------------------------------- */
dt,dd {margin: 0;padding: 0;}
.dl_table {width:98%;margin-left:5px;background:rgba(230,230,230,0.0);
    border-top: 0px solid #ddd; /* テーブルの上の線 */
    border-left:0px solid #ddd; /* テーブルの左の線 */
    display: flex; /* 子要素のdtとddを横並びにする */
    flex-wrap: wrap; /* 1つのdtとddで1行になるよう改行させる */
}
.dl_table dt,.dl_table dd {
    border-bottom: 1px solid #ddd; /* 各セルの下の線。テーブルの下の線も補える。 */
    border-right: 0px solid #ddd; /* 各セルの右の線。テーブルの右の線も補える。 */
    box-sizing: border-box; /* widthの計算を楽にするため */
    padding: 10px 15px; /* 各セルに余白を取る */
}
.dl_table dt {font-size:1.0rem;width: 120px;font-weight:800;color:#17acdc;}/* dt横幅を200pxに指定 */
.dl_table dd {font-size:0.9rem;width: calc(100% - 120px);}/* テーブル幅からdtを引いた分の横幅を指定。 */

@media screen and (max-width:750px) {
.dl_table  {width: 100%;border-left: none;display: block;}
.dl_table dt,.dl_table  dd {border-right: none;width: 98%;padding:5px 10px;}
.dl_table dt {border-bottom: 1px solid #ddd;padding-bottom:0px;}
.dl_table dd {border-bottom: none;padding-bottom:20px;}
}
/* table------------------------------------------------------------- */
.kago-table,.kago-table2{width:100%;max-width:980px;margin: 0 auto;border-collapse: collapse;background: #ffecec;}
.kago-table td:nth-child(2n+1){width: calc(100% - 100px);font-size:110%;font-weight:700;text-align:right;padding:10px 20px 0 0 ;border-bottom: 1px solid #ddd;}/* 奇数td */
.kago-table td:nth-child(2n){width:100px;text-align:right;padding:7px 10px 0 0 ;}/* 偶数td */
.kago-table2 td:nth-child(2n+1){width: calc(100% - 100px);font-size:110%;font-weight:700;text-align:right;padding:10px 20px 0 0 ;}/* 奇数td */
.kago-table2 td:nth-child(2n){width:100px;text-align:right;padding:7px 10px 0 0 ;}/* 偶数td */

/* kago ------------------------------------------------------------- */
label.boxche{padding:7px;border-radius:5px;margin-top:10px;background-color:rgba(78, 94, 125,1.0);color:#fff;width:28.5%;}
.color-checkbox {
  display: block;
  position: relative;
  margin: 0.2em 0;
  padding-left:28px;;
  cursor: pointer;
  user-select: none; /* テキストの選択を防ぐ */
}
.color-checkbox input {display: none;}/* inputは非表示にする */
.checktxt{padding:0px;margin:30px;}
/* □ */
.checkmark-all {
  position: absolute;
  top: 0.38em; /* 上からの位置 */
  left:0.35em;
  height: 25px; /* 大きさ */
  width: 25px; /* 大きさ */
  border: solid 2px #9c9c9c; /* 線 */
  border-radius: 4px;
  box-sizing: border-box;background-color:rgba(255, 255, 255, 0.8);
}
.checkmark{
  position: absolute;
  top:0.1em; /* 上からの位置 */
  left:1.0em;
  height: 25px; /* 大きさ */
  width: 25px; /* 大きさ */
  border: solid 2px #9c9c9c; /* 線 */
  border-radius: 4px;
  box-sizing: border-box;background-color:rgba(255, 255, 255, 100);
}
.checkmark:hover,.checkmark-all:hover{background-color:#d3d3d3;}
/* ✓ */
.checkmark:after,.checkmark-all:after {
  content: "";
  position: absolute;
  left: 6px; /* チェックの位置 */
  top: 2px; /* チェックの位置 */
  width: 6px; /* チェックの大きさ */
  height: 10px; /* チェックの大きさ */
  border: solid #FFF;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
  opacity: 0; /* 透明にしておく */
}
.color-checkbox input:checked + .checkmark {background: #02607e;border-color:#02607e;}/* チェックが入ったときの□ */
.color-checkbox input:checked + .checkmark-all {background: #02607e;border-color: #02607e;}/* チェックが入ったときの□ */
.color-checkbox input:checked + .checkmark:after {opacity: 1;} /* 透明を解除 *//* チェックが入ったときの✓ */
.color-checkbox input:checked + .checkmark-all:after {opacity: 1;} /* 透明を解除 *//* チェックが入ったときの✓ */

/** Custom Select **/
.selectdiv {position:relative;float:left;min-width:120px;margin:-12px 0 0 65px;}
/* IE11 hide native button (thanks Matt!) */
select::-ms-expand {display: none;}
.selectdiv:after {
  content: '<>';
  font: 17px "Consolas", monospace;
  color: #333;
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
  right:5px;
  top: 13px;
  padding: 0 0 5px;
  border-bottom: 1px solid #999;
  position: absolute;
  pointer-events: none;
}
.selectdiv select {outline: none!important;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: block;
  width:80%;
  max-width:95px;border-radius:4px;
  height:40px;
  float: right;
  margin: 5px 0px;
  padding: 0px 5px;
  font-size:16px;
  line-height: 1.75;
  color: #333;
  background-color: #ffffff;
  background-image: none;
  border: 1px solid #cccccc;
  -ms-word-break: normal;
  word-break: normal;
}


/* button--------------------------------------------------------- */
.button1 {
width:95%;padding:10px;text-align:center;border: 0px;
background:#c20b0b;color:#fff;
text-decoration:none;font-size:150%;font-weight:600;
-webkit-transition:0.8s; transition:0.8s;
border-radius:40px;
margin:50px 0px 10px 8px;
box-shadow: 0 5px 5px rgba(55,55,55,0.2);
}
.button1:hover,.button1:focus,.button1:active {
color:#f9f9b2;border: 0px;
background-color:#500000;
transition: 0.5s;
}

.button1:hover{transform: scale(0.98);}

input[type="submit"] {
  -webkit-appearance: none;
  border-radius:40px;
}

/*改行------------------------------------------------------------- */
@media screen and (min-width: 768px){
.sp-br {display: none; }
}


/* 下部コピーライト */
.copy:after{content:' \A ';white-space: pre;}
.copytxt{font-size:100%;}


/* ▼表示領域が639px以上の場合 */
@media screen and (min-width:639px) {
img.grp1simage { display: none; }  /* miniを非表示 */
img.grp1image { display: block; } /* bigを表示 */
.txtsp2 {font-size:10px;display: none;}
.txtsp {font-size:14px;display: block;}
}
/* ▼表示領域が640px未満の場合 */
@media screen and (max-width:640px) {
img.grp1simage { display: block; } /* miniを表示 */
img.grp1image { display: none; }  /* bigを非表示 */
#visual {
    padding-top:82.5%;margin-top:-20px;
    width:100%;
    background: #fff url(images/sp_top.jpg) no-repeat;
        background-position-x: 0%;
        background-position-y: 0%;
        background-size: auto auto;
    background-position: center top;
    position: relative;
    background-size: 100%;
}
#visual p {width:80%;text-align: center;
  font-weight:600;
  font-size:180%;
  top: 50%;
  left:50%;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  margin:0;
  padding:0;
  }
.slick-arrow{border: solid 0px #413603!important;left:92%;}
.fb_item1,.fb_item2,.fb_item3,.fb_item4,.fb_item5{flex-basis:100%;max-width:100%;}
.cont-box1 h2 {font-size:120%;font-weight:800;text-align: center;padding: 7px 0 7px;}
.cont-box1 h2 +div {font-size:145%;}
.cont-box1 .inner,.cont-box2 .inner,.cont-box3 .inner,.cont-box4 .inner{width:90.5%;}
.cont-box3{width:100%;margin: 0 auto;padding:0px;}
.cont-box4 h2 +p {font-size:145%;}
.lb-nav a.lb-prev {position: absolute;opacity: 0.5;left:-15px;/* -80から0pxへ変更*/} /* lightbox */
.lb-nav a.lb-next {position: absolute;opacity: 0.5;right:-15px;/* -80から0pxへ変更*/}/* lightbox */
.item-name{font-size:120%;}
.item-ex2:after{content:' (税込) \A ';white-space: pre;}
.item-name p:nth-child(1){width:100%;}
.item-ex,.item-ex2,.item-ex3,.item-ex4{font-size:1.2rem;}
/* table------------------------------------------------------------- */
.kago-table td:nth-child(2n+1){font-size:90%;padding:10px 10px 0 0 ;}/* 奇数td */
.kago-table td:nth-child(2n){padding:10px 5px 0 0 ;}/* 偶数td*/
.kago-table2 td:nth-child(2n+1){font-size:90%;padding:10px 10px 0 0 ;}/* 奇数td */
.kago-table2 td:nth-child(2n){padding:10px 5px 0 0 ;}/* 偶数td*/
label.boxche{width:52%;margin:5px;padding:6px;}
.selectdiv {margin:-10px 0 0 40px;}
.checkmark{left:0.5em;}
}

@media screen and (max-width: 768px) and (min-width: 640px) {
.slick-prev:before{top:50%;left:200%;}
.slick-next:before {top:50%;left:-100%;}
.cont-box3{width:100%;margin: 0 auto;padding:0px;}
.cont-box1 .inner,.cont-box2 .inner,.cont-box3 .inner,.cont-box4 .inner{width:90.5%;}
.fb_item2{flex-basis:30%;max-width:30%;margin:2px;padding:5px;}
.fb_item3{flex-basis:60%;max-width:60%;margin:2px;padding:5px;}
.fb_item4{flex-basis:47.5%;max-width:47.5%;margin:4px;padding:2px;}
.fb_item5{flex-basis:47.5%;max-width:47.5%;margin:4px;padding:2px;}
.item-name p:nth-child(1){width:60%;}
/* table------------------------------------------------------------- */
.kago-table td:nth-child(2n+1){font-size:90%;}/* 奇数td */
.kago-table td:nth-child(2n){padding:10px 5px 0 0 ;}/* 偶数td*/
label.boxche{width:52%;margin:5px;padding:6px;}
.selectdiv {margin:-10px 0 0 40px;}
.checkmark{left:0.5em;}
}
@media screen and (max-width: 1099px) and (min-width: 769px) {
.cont-box3{width:100%;margin: 0 auto;padding:0px;}
.cont-box1 .inner,.cont-box2 .inner,.cont-box3 .inner,.cont-box4 .inner{width:90.5%;}
.fb_item2{flex-basis:40%;max-width:40%;margin:2px;padding:5px;}
.fb_item3{flex-basis:55%;max-width:55%;margin:2px;padding:5px;}
.fb_item4{flex-basis:45%;max-width:45%;margin:4px;padding:2px;}
.fb_item5{flex-basis:45%;max-width:45%;margin:4px;padding:2px;}
}
