/* CSS Document */

/*----------------------------------------------
 parts
---------------------------------------------- */

/* column
-----------------------------------------------*/
.clm2-1 ,
.clm2-2 ,
.clm3-1 ,
.clm3-2 ,
.clm3-3 ,
.clm4-1 ,
.clm4-2 ,
.clm5-1 ,
.clm5-2 {
	display: flex;
	flex-wrap: wrap;
	/*justify-content: space-between;*/
	font-size: 16px;
}
.clm2-1 > div ,
.clm2-1 > li ,
.clm2-2 > div ,
.clm2-2 > li ,
.clm3-1 > div ,
.clm3-1 > li ,
.clm3-1 > dl ,
.clm3-2 > div ,
.clm3-2 > li ,
.clm3-3 > div ,
.clm3-3 > li ,
.clm4-1 > div ,
.clm4-1 > li ,
.clm4-2 > div ,
.clm4-2 > li ,
.clm4-2 > dl ,
.clm5-1 > div ,
.clm5-1 > li ,
.clm5-1 > dl ,
.clm5-2 > div ,
.clm5-2 > li {
	margin-bottom: 20px;
}
.clm2-1 > div img ,
.clm2-1 > li img ,
.clm2-2 > div img ,
.clm2-2 > li img ,
.clm3-1 > div img ,
.clm3-1 > li img ,
.clm3-1 > dl img ,
.clm3-2 > div img ,
.clm3-2 > li img ,
.clm3-3 > div img ,
.clm3-3 > li img ,
.clm4-1 > div img ,
.clm4-1 > li img ,
.clm4-2 > div img ,
.clm4-2 > li img ,
.clm4-2 > dl img ,
.clm5-1 > div img ,
.clm5-1 > li img ,
.clm5-1 > dl img ,
.clm5-2 > div img ,
.clm5-2 > li img {
	max-width: 100%;
	height: auto;
}

.clm3-3 > div ,
.clm3-3 > li {
	width: calc((100% - 2%) / 3);
	margin-right: 1%;
}

.clm3-3 > div:nth-child(3n) ,
.clm3-3 > li:nth-child(3n) {
	margin-right: 0%;
}

@media screen and (min-width: 768px) {
.clm2-1 > div ,
.clm2-1 > li ,
.clm2-2 > div ,
.clm2-2 > li {
	width: calc((100% - 2%) / 2);
	margin-right: 2%;
}
.clm2-1 > div:nth-child(2n) ,
.clm2-1 > li:nth-child(2n) ,
.clm2-2 > div:nth-child(2n) ,
.clm2-2 > li:nth-child(2n) {
	margin-right: 0%;
}


.clm3-1 > div ,
.clm3-1 > li ,
.clm3-1 > dl ,
.clm3-2 > div ,
.clm3-2 > li {
	width: calc((100% - 2%) / 3);
	margin-right: 1%;
}
.clm3-1 > div:nth-child(3n) ,
.clm3-1 > li:nth-child(3n) ,
.clm3-1 > dl:nth-child(3n) ,
.clm3-2 > div:nth-child(3n) ,
.clm3-2 > li:nth-child(3n) {
	margin-right: 0%;
}
.clm4-1 > div ,
.clm4-1 > li ,
.clm4-2 > div ,
.clm4-2 > dl ,
.clm4-2 > li {
	width: calc((100% - 3%) / 4);
	margin-right: 1%;
}
.clm4-1 > div:nth-child(4n) ,
.clm4-1 > li:nth-child(4n) ,
.clm4-2 > div:nth-child(4n) ,
.clm4-2 > dl:nth-child(4n) ,
.clm4-2 > li:nth-child(4n) {
	margin-right: 0%;
}
.clm5-1 > div ,
.clm5-1 > li ,
.clm5-1 > dl ,
.clm5-2 > div ,
.clm5-2 > li {
	width: calc((100% - 4%) / 5);
	margin-right: 1%;
}
.clm5-1 > div:nth-child(5n) ,
.clm5-1 > li:nth-child(5n) ,
.clm5-1 > dl:nth-child(5n) ,
.clm5-2 > div:nth-child(5n) ,
.clm5-2 > li:nth-child(5n) {
	margin-right: 0%;
}
}
@media screen and (max-width: 767px) {
.clm2-1 > div ,
.clm2-1 > li ,
.clm3-1 > div ,
.clm3-1 > li ,
.clm3-1 > dl ,
.clm4-1 > div ,
.clm4-1 > li ,
.clm5-1 > div ,
.clm5-1 > dl ,
.clm5-1 > li {
	width: 100%;
	
}
.clm2-2 ,
.clm3-2 ,
.clm4-2 ,
.clm5-2 {
	justify-content: space-between;
}
.clm2-2 > div ,
.clm2-2 > li ,
.clm3-2 > div ,
.clm3-2 > li ,
.clm4-2 > div ,
.clm4-2 > dl ,
.clm4-2 > li ,
.clm5-2 > div ,
.clm5-2 > li {
	width: 48%;
	margin-bottom: 10px;
}

}

.tb_center {
	display: flex;
	justify-content: center;
	align-items: center;
}



/* btn
-----------------------------------------------*/
/* common */
a.btn_base {
	padding: 15px 25px 15px 10px;
	text-align: center;
	display: block;
	color: #000;
	font-size: 16px;
	font-weight: bold;
	font-family: 'Noto Sans Japanese', serif;
	position:relative;
	
	border-radius: 40px;
	text-decoration: none;
	
}
.btn_base.arrow1:before, .btn_base.arrow1:after {
	background:#000;
	right:20px;
}
@media screen and (min-width: 768px) {
a.btn_base {
	font-size: 18px;
}
a.btn_base:hover {
	transform: scale(1.05);
}
.btn_base.arrow1:hover:before, .btn_base.arrow1:hover:after {
	right:10px;
}
}

/*yellow*/
a.btn_base.btn_yellow {
	background: #fffc00;  /* fallback for old browsers */
	background: -webkit-linear-gradient(to right, #ffb347, #FF0);  /* Chrome 10-25, Safari 5.1-6 */
	background: linear-gradient(to right, #ffb347, #FF0); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
}
@media screen and (min-width: 768px) {
a.btn_base.btn_yellow:hover {
	background: #ffb347;
}
}

/*black*/
a.btn_base.btn_black {
	background: #000000;  /* fallback for old browsers */
	background: -webkit-linear-gradient(to right, #434343, #000000);  /* Chrome 10-25, Safari 5.1-6 */
	background: linear-gradient(to right, #434343, #000000); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
	color:#FFF;
}
.btn_base.btn_black.arrow1:before, .btn_base.btn_black.arrow1:after {
	background:#FFF;
}
@media screen and (min-width: 768px) {
a.btn_base.btn_black:hover {
	background: #000000;
}
}





/* box
-----------------------------------------------*/
.box_black {
	background-color: #000;
	color: #FFF;
	display: inline-block;
}
.box_red {
	background-color: #CE4A50;
	color: #CE4A50;
	display: inline-block;
}


.box_stripe_yellow {
	background-color: #FF0;
	background-image: -webkit-gradient(linear, 0 0, 100% 100%,color-stop(.25, #FEFFD3), color-stop(.25, transparent),color-stop(.5, transparent), color-stop(.5, #FEFFD3),color-stop(.75, #FEFFD3), color-stop(.75, transparent),to(transparent));
	-webkit-background-size: 7px 7px;
}
.box_stripe_yellow2 {
	background: #FFFFB2;
	background-image: -webkit-gradient(linear, 0 0, 100% 100%,color-stop(.25, #FFF), color-stop(.25, transparent),color-stop(.5, transparent), color-stop(.5, #FFF),color-stop(.75, #FFF), color-stop(.75, transparent),to(transparent));
	-webkit-background-size: 7px 7px;
}

/* bg */
/*.bg_gray {
	background-color: #EEE;
	padding: 10px;
}*/
.bg_white {
	background-color: #FFF;
	padding: 10px;
}

/* border */
.bdGray { border: 1px solid #CCC ; padding: 15px;}
.bdBlack {	border: 1px solid #000;	padding: 15px;}
.bdBlack3 {	border: 1px solid #333;	padding: 15px;}
.bdRed {	border: 1px solid #CE4A50;	padding: 15px;}

.bdL1 { border-width :1px;}
.bdL2 { border-width :2px;}
.bdL5 { border-width :5px;}


/* box_img */
.box_img img {
	max-width: 45% !important;
	height: auto;
	margin-right: 10px;
	float: left;
}
.box_img .box_img_txt {
	word-wrap: break-word;
	float: left;
	width: calc(55% - 10px);
}
.box_img_r img {
	max-width: 45% !important;
	height: auto;
	margin-left: 10px;
	float: right;
}
.box_img_r .box_img_txt {
	word-wrap: break-word;
	float: right;
	width: calc(55% - 10px);
}

/* attention_box */
.attention_box {
	margin: 20px 0 0 0;
	padding: 20px;
	border: solid 3px #E60012;
	border-radius: 10px;
	color: #E60012;
}
@media screen and (max-width: 767px) {
.attention_box ul {
	font-size: 14px;
}
}


/* box_corners_4circle
-----------------------------------------------*/
.box_corners_4circle {
	border: 1px solid #000;
	position: relative;
}
.box_corners_4circle > div {
	width: 100%;
	height: 100%;
	text-align: center;
}
.box_corners_4circle::before, .box_corners_4circle::after, .box_corners_4circle > div::before, .box_corners_4circle > div::after {
	content: '';
	background: #000;
	width: 8px;
	height: 8px;
	border-radius: 100%;
	position: absolute;
}
.box_corners_4circle::before {
	top: -4px;
	left: -4px;
}
.box_corners_4circle::after {
	top: -4px;
	right: -4px;
}
.box_corners_4circle > div::before {
	bottom: -4px;
	left: -4px;
}
.box_corners_4circle > div::after {
	bottom: -4px;
	right: -4px;
}
.box_corners_4circle {
	margin-top: 50px;
}
.box_corners_4circle > div {
	padding: 30px;
}


@media screen and (max-width: 767px) {
.box_corners_4circle {
	margin-top: 30px;
}
.box_corners_4circle > div {
	padding: 15px 40px;
}
.featuresColum__pick {
	display: block;
}
.featuresColum2__set, .featuresColum3__set {
	width: 100%;
}
}

/* arrow
-----------------------------------------------*/
/* arrow1 (->)*/
.arrow1 {
	text-decoration:none;
	display:inline-block;
	padding-right:20px;
	position:relative;
}
.arrow1:before, .arrow1:after{
	content:"";
	display:block;
	-webkit-transform:skewX(45deg);
	transform:skewX(45deg);
	position:absolute;
	right:0;
	bottom:50%;
	background:#FFF;
	
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all  0.2s ease;
}
.arrow1:before{
	width:14px;
	height:1px;
	right: -1px;
}
.arrow1:after{
	width:2px;
	height:5px;
}
@media screen and (min-width: 768px) {
.arrow1:hover:before, .arrow1:hover:after {
	right:-5px;
}
}


/* arrow2(>) */
.arrow2 ,
.arrow2b {
	font-weight: normal;
	position: relative;
	/*margin-left: 10px;*/
	display: inline-block;
	padding: 0 0 0 16px;
	vertical-align: middle;
	text-decoration: none;
}
.arrow2:before ,
.arrow2b:before {
	position: absolute;
	top: 10px;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
	
	left: 3px;
	width: 4px;
	height: 4px;
	border-top: 1px solid #FFF;
	border-right: 1px solid #FFF;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.arrow2b:before {
	border-top: 1px solid #000;
	border-right: 1px solid #000;
}
/* arrow3(v) */
 .arrow3 ,
 .arrow3b {
	font-weight: normal;
	position: relative;
	display: inline-block;
	padding: 0 0 0 16px;
	vertical-align: middle;
	text-decoration: none;
}
.arrow3:before ,
.arrow3b:before {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
	
	left: 15px;
	width: 4px;
	height: 4px;
	border-top: 1px solid #FFF;
	border-right: 1px solid #FFF;
	-webkit-transform: rotate(-225deg);
	transform: rotate(-225deg);
}

.arrow3b:before {
	border-top: 1px solid #000;
	border-right: 1px solid #000;
}

/* arrow4(<) */
 .arrow4 ,
 .arrow4b {
	font-weight: normal;
	position: relative;
	display: inline-block;
	padding: 0 0 0 0;
	vertical-align: middle;
	text-decoration: none;
}
.arrow4:before ,
.arrow4b:before {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
	
	left: 15px;
	width: 4px;
	height: 4px;
	border-top: 1px solid #FFF;
	border-right: 1px solid #FFF;
	-webkit-transform: rotate(225deg);
	transform: rotate(225deg);
}

.arrow4b:before {
	border-top: 1px solid #000;
	border-right: 1px solid #000;
}




/* parallelogram
-----------------------------------------------*/
.parallelogram {
	display: inline-block;
	position: relative;
	z-index: 1;
	padding: 2px 0;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	display: block;
	margin: 0 auto 20px;
	width: 300px;
	letter-spacing: 3px;
}
.parallelogram:before {
	position: absolute;
	top: 0px;
	left: 0px;
	right: 0px;
	bottom: 0px;
	z-index: -1;
	transform: skewX(-30deg);
	background-color: #000;
	content: "";
}
@media screen and (max-width: 767px) {
.parallelogram:before {
	transform: skewX(-20deg);
}
}
/* hover animation
-----------------------------------------------*/
/* img */
@media screen and (min-width: 768px) {
a .hover_img_wrap img {
	-moz-transition:all 0.2s;
	-webkit-transition:all 0.2s;
	-o-transition:all 0.2s;
	transition:all 0.2s;
}
a .hover_img_wrap {
	position: relative;
	display: inline-block;
	border: 3px solid #000;
	transition: all .3s;
	z-index: 0;
}
a .hover_img_wrap::before,
a .hover_img_wrap::after {
	position: absolute;
	top: -3px;
	right: -3px;
	bottom: -3px;
	left: -3px;
	z-index: 2;
	content: '';
	transition: all .3s;
}
a .hover_img_wrap::before {
	border-top: 3px solid #FF0;
	border-bottom: 3px solid #FF0;
	transform: scale(0, 1);
}
a .hover_img_wrap::after {
	border-right: 3px solid #FF0;
	border-left: 3px solid #FF0;
	transform: scale(1, 0);
}
a:hover .hover_img_wrap::after,
a:hover .hover_img_wrap::before {
	transform: scale(1);
}
a:hover .hover_img_wrap img {
	transform: scale(1.1);
}
a .hover_img_wrap .hover_img {
	overflow: hidden;
	line-height: 0;
}
}

/* icon
-----------------------------------------------*/
.icon_new_l ,
.icon_new_r {
	font-size:14px;
	font-weight:normal;
	font-family: 'Fjalla One', sans-serif;
	display:inline;
	background-color:#E60012;
	color:#FFF;
	padding:2px 7px;
	
	position: relative;
}
.icon_new_l {
	margin:0 0 0 10px;
}
.icon_new_r {
	margin:0 10px 0 0;
}

.icon_new_l:after, .icon_new_l:before ,
.icon_new_r:after, .icon_new_r:before {
	top: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}
.icon_new_l:after, .icon_new_l:before {
	right: 100%;
}
.icon_new_r:after, .icon_new_r:before {
	left: 100%;
}
.icon_new_l:after {
	border-color: rgba(213, 0, 0, 0);
	border-right-color: #E60012;
	border-width: 5px;
	margin-top: -5px;
	margin-right: -1px;
}
.icon_new_l:before {
	border-color: rgba(0, 0, 0, 0);
	border-right-color: #E60012;
	border-width: 4px;
	margin-top: -4px;
}

.icon_new_r:after {
	border-color: rgba(213, 0, 0, 0);
	border-left-color: #E60012;
	border-width: 5px;
	margin-top: -5px;
	margin-left: -1px;
}
.icon_new_r:before {
	border-color: rgba(0, 0, 0, 0);
	border-left-color: #E60012;
	border-width: 4px;
	margin-top: -4px;
}



/*scroll
-------------------------------------*/
@media screen and (max-width: 767px) {
.scroll_height {
	margin-top:-80px;
	padding-top:80px;
}
}

@media screen and (min-width: 768px) {
.scroll_height {
	margin-top:-100px;
	padding-top:100px;
}
}

/* table
---------------------------------------------- */
table.base {
	border-collapse: collapse; 
	border-spacing:0;
	background-color:#FFF;
	width:100%;
	margin-top:10px;
}
table.base th,
table.base td {
	padding:20px 10px;
	background-color:#FFF;
	text-align:left;
	border:1px solid #F7B2B7;
}
table.base th {
	background-color:#FDEBEC;
	font-weight:bold;
	text-align:center;
	vertical-align:middle;
	color: #E60012;
	padding:10px;
}
table.base.txC td ,
table.base tr.txC td ,
table.base td.txC {
	text-align: center;
}
table.base td.table_center , table.base th.table_center {
	text-align:center;
	vertical-align:middle;	
}
table.base th.wd50 {
	width: 50%;
}
@media screen and (max-width: 767px) {
table.base th,
table.base td {
	padding:10px 5px;
	font-size: 12px;
}
table.base th {
	padding:5px 5px;
}
}

table.base .day {
	font-size: 18px;
}table.base .day span {
	font-size: 14px;
}
@media screen and (max-width: 767px) {
table.base .day {
	font-size: 16px;
}table.base .day span {
	font-size: 10px;
}
}


/* brackets
---------------------------------------------- */
.brackets_box {
	position: relative;
}
.brackets_box::before,
.brackets_box::after {
  position: absolute;
  content: '';
  width: 30px;
  height: 30px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.brackets_box::before {
  top: 0;
  left: 0;
  border-top: 1px solid #555;
  border-left: 1px solid #555;
}
.brackets_box::after {
  bottom: 0;
  right: 0;
  border-bottom: 1px solid #555;
  border-right: 1px solid #555;
}

/*flex_set
-------------------------------------*/
/*.flex__set {
	display: flex;
}
.flex__set_s_c {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}*/
.set_flex_sb {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.set_flex_sa {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
}

/* flex */
.set_flex_2-1 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.set_flex_2-1 > div ,
.set_flex_2-1 > li {
	margin-bottom: 15px;
}
@media screen and (min-width: 768px) {
.set_flex_2-1 > div ,
.set_flex_2-1 > li {
	width: calc(98% / 2);
	margin-right: 2%;
}
.set_flex_2-1 > div:nth-child(2n) ,
.set_flex_2-1 > li:nth-child(2n) {
	margin-right: 0%;
}
}
@media screen and (max-width: 767px) {
.set_flex_2-1 > div ,
.set_flex_2-1 > li {
	width: 100%;
}
}

.set_flex_3-1 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.set_flex_3-1 > div ,
.set_flex_3-1 > li {
	margin-bottom: 15px;
}
@media screen and (min-width: 768px) {
.set_flex_3-1 > div ,
.set_flex_3-1 > li {
	width: calc(96% / 3);
	margin-right: 2%;
}
.set_flex_3-1 > div:nth-child(3n) ,
.set_flex_3-1 > li:nth-child(3n) {
	margin-right: 0%;
}
}
@media screen and (max-width: 767px) {
.set_flex_3-1 > div ,
.set_flex_3-1 > li {
	width: 100%;
}
}

/*YouTube
-------------------------------------*/
.video {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.video iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

/*box_red_blue
-------------------------------------*/
.box_rb {
	border: solid 1px #E60012;
	background-color: #FFF;
	padding: 30px 40px;
	margin-top: 20px;
	position: relative;
	z-index: 1;
	border-radius: 10px;
}
.box_rb:before {
	content:"";
	position: absolute;
	top:-6px;
	left: -5px;
	width: 100%;
	height: 100%;
	border: solid 1px #123895;
	border-radius: 10px;
}
@media screen and (max-width: 767px) {
.box_rb {
	padding: 15px 15px;
	margin-top: 20px;
}
}
.box_rb p {
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 10px;
}
.box_rb ul li {
	color: #E60012;
}
.box_rb ul li:nth-child(2n) {
	color: #123895;
}


/*new icon
-------------------------------------*/
.icon_new {
	color:#FFF;
	background-color:#CC0000;
	font-family: 'Ropa Sans', sans-serif;
	font-size:12px;
	line-height:12px;
	padding:2px 5px;
	position: relative;
	display: inline-block;
	margin-left:8px;
	vertical-align: text-top;
}
.icon_new:after {
	content: "";
	position: absolute;
	top: 50%; left: -3px;
	margin-top: -3px;
	display: block;
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 3px 3px 3px 0;
	border-color: transparent #CC0000 transparent transparent;
}


/* pickup_menu
-------------------------------------*/
.pickup_menu_box {
	border: solid 3px #E60012;
	padding: 25px 15px 15px;
	margin-top: 50px;
	position: relative;
}
@media screen and (min-width: 768px) {
.pickup_menu_box {
	padding: 30px;
	box-shadow: 5px 5px #e60012;
}
}
.pickup_menu_box .pickup_menu_box_title {
	position: absolute;
	left: 50%;
	top: 0;
	transform: translate(-50%, -50%);
}
@media screen and (max-width: 767px) {
.pickup_menu_box .pickup_menu_box_title {
	width: 45vw;
}
}
.pickup_menu_box .pickup_menu_box_title_sub {
	font-weight: bold;
}
.pickup_menu_box .pickup_title {
	font-size: 18px;
	font-weight: bold;
}
@media screen and (min-width: 768px) {
.pickup_menu_box .pickup_title {
	font-size: 24px;
}
}
.pickup_menu_box .pickup_img {
float: right;
margin-left: 10px;
}
@media screen and (max-width: 767px) {
.pickup_menu_box .pickup_img {
	width: 50%;
}
}
@media screen and (min-width: 768px) {
.pickup_menu_box .pickup_img {
width: 35%;
max-width: 350px;
}
}
.pickup_menu_box .pickup_date span {
	color: #E60012;
	font-size: 18px;
	font-weight: bold;
}
@media screen and (min-width: 768px) {
.pickup_menu_box .pickup_date span {
	font-size: 20px;
}
}
.pickup_menu_box .pickup_detail {
	margin-top: 5px;
}

