@charset "UTF-8";

body{background:#fff;}

/*2018_0416_add slick slider start*/
.slider-container, .slider-nav-container {
    display: none;
    position: relative;
}
.slider-container.initialized, .slider-nav-container.initialized {
    display: block;
}
.slider-nav-container {
    margin-top: 18px;
}
.slider {
    overflow: hidden;
}
.slider-nav {
    margin: 0 26px;
}
.slider-arrow {
    position: absolute;
    top: 50%;
    height: 36px;
    margin-top: -18px;  /* 高さの半分だけネガティブマージン */
    color: #aaa;
    line-height: 36px;
    font-size: 28px;
    cursor: pointer;
    z-index: 10;  /* 重要 */
}
.slider-prev {
    left: 0;
}
.slider-next {
    right: 0;
}
.slick-slide {
    outline: 0;
}
.slider .slick-slide > img, .slider-nav .slick-slide > img {
    display: block;
    width: 100%;
    height: auto;
}

/* Please precise Image Dimension in HTML
and control by CSS
*/
#container{
    display:block;
	position:relative;
    top: -1px;
    height: fit-content;
}

#container .inner{
    display:block;
	position:relative;
	width:960px;
	margin:auto;
}

.event{opacity:0;}

#lheader { display: none }

#lnav {
	position: fixed;
	left:0;
	top:50%;
	z-index:900;
	margin-top:-95px;
}

#lnav ul {width:45px;}

#lnav ul li {
	background: url(../images/nav.png) left 10px center no-repeat;
	cursor: pointer;
}

#lnav ul li a {
	display: block;
	width:0;
	padding:10px 0;
	height:100%;
	overflow: hidden;
	transition:background-color 0.2s;
}

#lnav ul li:hover a {
	background: rgba(0,0,0,0.8);
}

#lnav ul li.blank:hover a {
	background: rgba(0,0,0,0.2);
}

#lnav ul li.blank:hover a img {
	opacity: 0.5;
}

#lnav ul li a img {
	vertical-align: middle;
}

img{height:auto;}

/********************
**** TOP
********************/

main{background:#fff;}

#container main section#top #top_bg.invisible{display:none;}

#container main section#top{
    display:fixed;
    position:relative;
}

#container main section#top #top_bg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1;
  background: #b30808 url(../images/hero_fond.png) center top repeat-x;
}

#atn{
    display:flex;
    flex-flow:row wrap;
    padding:9.5em 6% 0 4%;
    max-width:1200px;
    margin:auto;
}

#atn > div{
    flex:1 36%;
    text-align:center;
    padding:1em 0 0 0;
}

#atn > div:nth-of-type(1){
    flex:1 100%;
    padding:0 0 1em 0;
}

#atn > div:nth-of-type(3){
    flex:1 26%;
    padding:1em 1%;
}

#atn img{
    display:block;
    width:100%;
    height:auto;
    margin:auto;
}

.tpft > img{max-width:240px;}

.tpft > img:nth-of-type(3n-1){margin:.5em auto !important;}

#proinfo a{
    display:block;
    max-width:300px;
    background:#d46e6d;
    color:#fff;
    margin:.5em auto .1em auto;
    padding:.3em;
    text-align:center;
    text-decoration:none;
}

#proinfo a:hover{
    background:#fff;
    color:#d46e6d;
}

#gara,
#pchide{display:none;}

#tpct {
	position: relative;
}

#tpct > img:nth-of-type(2),
#tpct > img:nth-of-type(3),
#tpct > img:nth-of-type(4){max-width:312px;}

#tpct .anchorBtn {
	position: absolute;
	top: 60%;
	right: 20%;
}

#tpct .anchorBtn a img {
	width: 172px;
}

#scrl{
    margin:0;
    padding:0;
    font-family:Helvetica,Arial,sans-serif;
    font-weight:bold;
    color:#fff;
}

.navi_scroll_line{
    margin:0 auto;
    width:.2em;
    height:2em;
    background-color:transparent;
}

.navi_scroll_line > div{
    height:100%;
    height:0%;
    background:#fff;
}

@keyframes scrollbar{
    0%{height:0%;}
    70%{height:0%;}
    90%{height:100%;}
    100%{height:100%;}
}

.navi_scroll_line > div{
    animation:scrollbar 3s ease-in-out 0s infinite normal;
}

#container main section#top #top_bg ul li.left{left:0;}
#container main section#top #top_bg ul li.right{right:0;}
#container main section#top #top_bg ul li#decoy{position:static;}

#container main section#top #top_bg #bg2 {
	position: absolute;
	left:0;
	top:664px;
	width:100%;
	display: -webkit-flex;
	-webkit-justify-content: center;
	-webkit-align-items: flex-start;
	display: flex;
	justify-content: center;
	align-items: flex-start;
	overflow: hidden;
	opacity: 0;
}

#container main section#top #top1 {
	width:100%;
	position: relative;
	z-index:2;
	padding-top:60px;
}

#container main section#top #top2 {
    width: 100%;
    position: relative;
    z-index: 3;
    margin-top: 614px;
    background: #f3eeda;
    display: flex;
    justify-content: center;
    align-content: center;
    flex-wrap: wrap;
}

#container main section#top #top2 p {
	margin-bottom:75px;
	text-align: center;
}

#container main section#top #top2 h3 {
	padding:20px 0;
	width:100%;
	text-align: center;
	transition:background-color 0.1s linear;
}

#container main section#top #top2 h3.fixed {
	position: fixed;
	left:0;
	top:0;
	z-index:2;
    background: #f3eeda;
}


/********************
**** DETAIl
********************/

#container main section#detail {
	position: relative;
	z-index: 2;
	background: #c00d00;
	padding:100px 0 200px;
}

#container main section#detail #detail_bg {
	position:absolute;
	left:0;
	top:0;
	z-index:2;
	width:100%;
}

#container main section#detail #detail_bg img {
	position: absolute;
	left:50%;
}

#container main section#detail #detail_bg img#detail1_orn1 {
	top:85px;
	margin-left:-85px;
}

#container main section#detail #detail_bg img#detail1_orn2 {
	top:145px;
	margin-left:-600px;
}

#container main section#detail #detail_bg img#detail2_orn1 {
	top:547px;
	margin-left:-55px;
}

#container main section#detail #detail_bg img#detail2_orn2 {
	top:651px;
	margin-left:-194px;
}

#container main section#detail #detail_inner {
	position: relative;
	z-index:2;
}

#container main section#detail article#detail1 {
	margin-bottom:140px;
}

#container main section#detail article#detail1 p {
	position: absolute;
	right:0;
	top:180px;
}

#container main section#detail article#detail2 h3 {
	text-align: right;
	padding-right:30px;
}

#container main section#detail article#detail2 p {
	position: absolute;
	left:0;
	top:80px;
}


/********************
**** MESSAGE
********************/

#container main section#message {
	background:url(../images/message_bg.jpg) top center no-repeat;
	background-size:cover;
	background-position :0 0;
	background-attachment:fixed;
	/*display: flex;
	justify-content: center;
	align-items: center;
	display: -webkit-flex;
	-webkit-justify-content: center;
	-webkit-align-items: center;*/
	position:relative;
	z-index:3;
	padding:200px 0;
}

#container main section#message dl {
	display: -webkit-flex;
	-webkit-justify-content: space-between;
	-webkit-align-items: flex-start;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	width:820px;
	margin: auto;
}

#container main section#message dl dd {
	background: rgba(255,255,255,0.8);
	padding:20px 30px;
}


/********************
**** ENQUETE
********************/

#container main section#enquete {
	background: #fff;
	position:relative;
	z-index:3;
	padding:140px 0;
}

#container main section#enquete h3 {
	width:100%;
	text-align: center;
	margin-bottom:85px;
}

#container main section#enquete h3 dl {
	display: inline-block;
}

#container main section#enquete h3 dl dt {
	margin-bottom:45px;
}

#container main section#enquete h3 dl dd {
	padding-top:45px;
	background:url(../images/enquete_title_border.png) center top no-repeat;
	background-size:100% 2px;
	background-position:-100% 0;
}

#container main section#enquete #enquete_inner {
	display: -webkit-flex;
	-webkit-justify-content: space-between;
	-webkit-align-content: flex-start;
	display: flex;
	justify-content: space-between;
	align-content: flex-start;
}

#container main section#enquete #enquete_inner h4 {
	margin-bottom:35px;
}

#container main section#enquete #enquete_inner h4 dl dd img {
	margin-left:50px;
}

#container main section#enquete #enquete_inner #q2 {
	margin-top:240px;
}

#container main section#enquete #enquete_inner #q2 p {
	margin-bottom:50px;
}

#container main section#enquete #enquete_inner .graph {
	position: relative;
	width:413px;
	margin: auto;
}

#container main section#enquete #enquete_inner .graph img {
	max-width:initial;
}

#container main section#enquete #enquete_inner .graph .graph_container {
	position: relative;
	width:413px;
	height:348px;
}

#container main section#enquete #enquete_inner .graph .graph_container canvas {
	position: absolute;
	right:0;
	top:0;
}

#container main section#enquete #enquete_inner .graph .graph_container canvas.chart2 {
	right:19px;
	top:7px;
}

#container main section#enquete #enquete_inner .graph .legend {
	position: absolute;
	left:0;
	top:0;
}

#container main section#enquete #enquete_inner #q1 .graph .legend {
	top:17px;
	opacity: 0;
}

#container main section#enquete #enquete_inner #q2 .graph .legend {
	top:22px;
	opacity: 0;
}



/********************
**** COLUMN
********************/

#container main section#column {
	position:relative;
	z-index:3;
	width:420px;
	height:654px;
	margin-top:-468px;
	overflow: hidden;
}

#container main section#column #column_inner {
	position: absolute;
	right:0;
	top:0;
}

#container main section#column #column_inner a {
	position: absolute;
	top:360px;
	right:142px;
	transition : background-color 0.2s linear;
}

#container main section#column #column_inner a:hover {
	background: #fff;
}

#container main section#column #column_inner a#column_close2 {
	right:450px;
	top:20px;
}

/********************
**** SEASON 20180420add
********************/
.season{
    background: url(../images/season_bg.png) center top no-repeat;
    padding-top: 50px;
    padding-bottom: 1px;
}
.season h3{
    text-align: center;
    margin-bottom: 63px;
}

.inn{
    position: relative;
    width:1180px;
    margin:auto;
}

.glid_pict{
    width:100%;
    max-width:960px;
    margin:auto;
    display: flex;
    flex-flow:row wrap;
    display:-webkit-box;/*--- Androidブラウザ用 ---*/
    display:-ms-flexbox;/*--- IE10 ---*/
    display: -webkit-flex;/*--- safari（PC）用 ---*/
}

.glid_pict > h3{
    flex:1 98%;
    margin:1%;
    background:#cb0000;
    color:#fff;
    text-align:center;
    font:1.3em/2em sans-serif;
}

.pict_box{
    flex:1 23%;
    max-width:23%;
    margin:1%;
}

.pict_box img{
    displau:block;
    width:100%;
    height:auto;
}

.pict_box p{
    display:block;
    background-color:rgba(0,0,0,.8);
    color:#fff;
    font:1em/2em sans-serif;
    margin:0;
    padding:.0 .5em;
    text-overflow:ellipsis;
    overflow:hidden;
    white-space:nowrap;
}

.fa-angle-right{
    color:#fff;
    margin:0 .5em 0 0;
}

.nwrp{
    font:.7em/2.8em sans-serif !important;
    color:#fff;
}

.spring1{
    color:#e97989;
    padding-right: 8px;
}

.summer1{
    color:#60ad28;
    padding-right: 8px;
}

.summer2{
    color:#ea7500;
    padding-right: 8px;
}

/********************
**** season modal 20180420add
********************/

.ssmodal{
    display:block;
    width:100%;
    overflow:hidden;
    letter-spacing:-1em;
}

.ssmodal > div{
    display:inline-block;
    vertical-align:middle;
    padding:1em 2%;
}

.ssmodal > div:nth-of-type(1){width:50%;}

.ssmodal > div:nth-of-type(2){
    width:44%;
    padding:1em 0;
}

.ssmodal > div:nth-of-type(2) img{
    width:100%;
    height:auto;
}

.ssmodal img{
    margin:.5em 0;
    border-radius:.2em;
}

.ssmodal dl,
.ssmodal ul{
    display:block;
    margin:0;
    padding:0 0 1.5em 0; 
    letter-spacing:-1em;
}

.ssmodal dt,
.ssmodal dd{
    display:inline-block;
    vertical-align:top;
    width:48%;
    margin:0;
    padding:.1em 1%;
}

.ssmodal dt:nth-of-type(even),
.ssmodal dd:nth-of-type(even){background:#efefef;}

.rem{background:#fff !important;}

.ssmodal li > em{
    display:block;
    float:left;
    background:#ca0000;
    color:#fff;
    margin:0 .5em 0 0;
    padding:0 .5em;
    font-style:normal;
}

.ssmodal li > span{
    display:block;
    overflow:hidden;
}

.ssmodal li{
    margin:1em 0;
    border-bottom:1px solid #999;
    clear:both;
}

.ssmodal li:last-child{border:none;}

.season_comment img{max-width:247px;}

.season_comment > span:nth-of-type(1){
    width:50%;
    display:block;
    position:relative;
    z-index:1;
    background:#ca0000;
    padding:0 8px;
    text-align:center;
    border-radius:.2em;
}

.season_comment p{
    display:block;
    position:relative;
    z-index:0;
    margin:-1em 0 0 0;
}

.season_comment > p > span{
    display:block;
    background:#000;
    color:#fff;
    padding:2em;
    margin:0 0 0 2em;
    border-radius:.2em;
}
.ssmodal h2{
    display:block;
    font-size:2em;
    font-weight:bold;
    letter-spacing:0;
    margin:0 0 .5em 0;
}

.ssmodal li,
.ssmodal dt,
.ssmodal dd,
.ssmodal span{
    font:1.1em/1.6em sans-serif;
    letter-spacing:0;
}


.img_sp{display:none;}


/********************
**** RECIPE
********************/
#recipe {
    display:block;
    position: relative;
    top: -229px;
    z-index:3;
}

/* IMG dimension must be declared in HTML */
#recipe img{height:auto;}

/* Recipe Intro */
#container main section#recipe #recipe_intro {
	background: url(../images/recipe_bg.png) center top repeat;
	padding:40px 0;
}

#container main section#recipe #recipe_intro h3 {
	text-align: center;
	margin-bottom:75px;
}

#container main section#recipe #recipe_intro #recipe_lead {
	position: relative;
}

#container main section#recipe #recipe_intro #recipe_lead dl {
	position: absolute;
	right:0;
	top:75px;
}

#container main section#recipe #recipe_intro #recipe_lead dl dd {
	text-align: right;
	padding-top:45px;
}

/* Recipe Today */
#container main section#recipe #recipe_today {
	background: #fff;
	padding:45px 0;
}

#container main section#recipe #recipe_today dl {position:relative;}

#container main section#recipe #recipe_today dl dt {
	float:right;
	width:50%;
}

#container main section#recipe #recipe_today dl dt img {width:100%;}

#container main section#recipe #recipe_today dl dd {
	position: absolute;
	left:0;
	top:0;
	width:48%;
}

#container main section#recipe #recipe_today dl dd .recipe_today {
	margin-left:-10px;
	margin-bottom:5px;
	margin-top:-10px;
}

#container main section#recipe #recipe_today dl dd .recipe_today img {vertical-align: middle;}

#container main section#recipe #recipe_today dl dd .recipe_today .recipe_today_cal {width:75px;}

#container main section#recipe #recipe_today dl dd .recipe_name {margin-bottom:10px;}

#container main section#recipe #recipe_today dl dd a {
	display: inline-block;
	margin-left:90px;
	margin-top:12px;
}

#container main section#recipe #recipe_today a#recipe_today_open {
	-webkit-transition : opacity 0.2s;
	transition : opacity 0.2s;
}

#container main section#recipe #recipe_today a#recipe_today_open:hover {opacity:0.6;}

.recipe_name {
	position: relative;
	padding:5px;
}

.recipe_name span {display: block;}

.recipe_name .recipe_name_border {
	width:20px;
	height:100%;
	position: absolute;
	top:0;
	border:solid 1px #000;
}

.recipe_name .recipe_name_border_left {
	left:0;
	border-right:none;
}

.recipe_name .recipe_name_border_right {
	right:0;
	border-left:none;
}

.recipe_name .recipe_name_title {
	font-size:24pt;
	text-align: center;
	background: url(../images/recipe_name_bg.png) center center no-repeat;
	font-weight: normal;
	line-height:1.2em;
}

.recipe_comment {
	position: relative;
	padding-top:20px;
}

.recipe_comment h5 {
	background: #ca0000;
	padding:10px 15px;
	position: absolute;
	left:0;
	top:0;
}

.recipe_comment h5 img {vertical-align: middle;}

.recipe_comment p {
	background: #000;
	font-size:12pt;
	color:#fff;
	margin:0 0 0 90px;
	width:90%;
	padding:35px 15px 10px;
	line-height:1.4em;
}

#container main section#recipe #recipe_calendar {
	position: relative;
	padding:60px 0 20px;
	background: #ca0000;
}

#container main section#recipe #recipe_calendar ul {
	display: -webkit-flex;
	-webkit-justify-content: space-between;
	-webkit-flex-wrap: wrap;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

#container main section#recipe #recipe_calendar ul li {
	width:130px;
	margin-bottom:5px;
	background: #fff;
	position: relative;
}

#container main section#recipe #recipe_calendar ul li.blank {background: none;}

#container main section#recipe #recipe_calendar ul li a .cover {
	width:100%;
	height:100%;
	position: absolute;
	left:0;
	top:0;
	display: block;
}

#container main section#recipe #recipe_calendar ul li a img {
	-webkit-transition: opacity 0.2s linear;
	transition: opacity 0.2s linear;
}

#container main section#recipe #recipe_calendar ul li a:hover img{opacity: 0.6;}

#container main section#recipe #recipe_calendar ul li a img.thumb{width:100%;}

#container main section#recipe #recipe_calendar ul li a img.day {
	position: absolute;
	left:0;
	top:0;
}

#container main section#recipe #recipe_calendar ul li .balloon {
	position: absolute;
	bottom:100%;
	left:-20%;
	background: url(../images/recipe_balloon_bg.png) center bottom no-repeat;
	/*box-shadow: 2px 2px 3px rgba(0,0,0,0.4);*/
	padding-bottom:14px;
	z-index:6;
	width:140%;
}

#container main section#recipe #recipe_calendar ul li .balloon span {
	display: block;
	background: rgba(0,0,0,0.8);
	color:#fff;
	text-align: center;
	padding:0.4em 0.2em;
	line-height:1.2em;
}

#container main section#recipe #recipe_search {
	position: relative;
	background: #ca0000;
	padding-bottom:30px;

}

#container main section#recipe #recipe_search ul#recipe_search_nav {
	display: -webkit-flex;
	-webkit-justify-content: space-between;
	display: flex;
	justify-content: space-between;
}

#container main section#recipe #recipe_search ul#recipe_search_nav li.recipe_search_button {
	border:solid 1px #fff;
	width:32%;
	-webkit-transition: background-color 0.2s linear;
	transition: background-color 0.2s linear;
}

#container main section#recipe #recipe_search ul#recipe_search_nav li.recipe_search_button:hover,
#container main section#recipe #recipe_search ul#recipe_search_nav li.on.recipe_search_button {background: #000;}

#container main section#recipe #recipe_search ul#recipe_search_nav li.recipe_search_button a {
	display: block;
	background: url(../images/recipe_search_arrow.png) right 25px center no-repeat;
	padding:10px 0;
	text-align: center;
}

#container main section#recipe #recipe_search ul#recipe_search_nav li.recipe_search_button.on a {
	background-image:url(../images/recipe_search_arrow2.png);
}

#container main section#recipe #recipe_search ul#recipe_search_nav li.recipe_search_button a img {margin-right:30px;}

#container main section#recipe .recipe_genre {
	padding-top:10px;
	/*overflow: hidden;*/
}

#container main section#recipe .recipe_genre ul li {
	display: inline-block;
	width:30%;
	margin-bottom:10px;
	-webkit-transition:opacity 0.2s;
	transition:opacity 0.2s;
}

#container main section#recipe .recipe_genre ul a {
  text-decoration: none;
}

#container main section#recipe .recipe_genre ul li:hover {opacity: 0.6;}

#container main section#recipe .recipe_genre ul li dl {
	display: -webkit-flex;
	-webkit-justify-content:flex-start;
	display: flex;
	justify-content:flex-start;
}

#container main section#recipe .recipe_genre ul li dl dt {width:50px;}

#container main section#recipe .recipe_genre ul li dl dt img {width:100%;}

#container main section#recipe .recipe_genre ul li dl dd {
	padding-left:10px;
	color:#fff;
	font-weight: bold;
	display: -webkit-flex;
	-webkit-justify-content:flex-start;
	-webkit-align-items: center;
	display: flex;
	justify-content:flex-start;
	align-items: center;

}

/********************
**** RECIPE MODAL
********************/
#modal {
	position: fixed;
	left:0;
	top:0;
	width:100%;
	height:100%;
	z-index:1100;
	background: rgba(0,0,0,0.8);
	opacity : 0;
}

#modal.invisible {
	display: none;
}

#modal.visible {
	display: -webkit-flex;
	-webkit-justify-content: center;
	-webkit-align-content: center;
	-webkit-align-items: center;
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: center;
}

#modal #modal_inner {
	width:840px;
	padding:40px 60px;
	background: #fff;
	position: relative;
	max-height:75%;
	overflow: auto;
}

#modal #modal_inner #modal_body {
	display: -webkit-flex;
	-webkit-justify-content: space-between;
	display: flex;
	justify-content: space-between;
}

#modal #modal_inner #modal_body .modal_body_inner {
	width:48%;
}

#modal #modal_inner #modal_body #modal_left h4 {
	margin-bottom:25px;
}

#modal #modal_inner #modal_body #modal_left  h5 {
	margin-bottom:10px;
}

#modal #modal_inner #modal_body #modal_left  h5 img {
	vertical-align: middle;
}

#modal #modal_inner #modal_body #modal_left #modal_ingredient {
	margin-bottom:20px;
}

#modal #modal_inner #modal_body #modal_left #modal_ingredient_inner dl {
	padding:2px 0;
	display: -webkit-flex;
	-webkit-justify-content: space-between;
	display: flex;
	justify-content: space-between;
}

#modal #modal_inner #modal_body #modal_left #modal_ingredient_inner dl.gray {
	background: #efefef;
}

#modal #modal_inner #modal_body #modal_left #modal_ingredient_inner dl dt,
#modal #modal_inner #modal_body #modal_left #modal_ingredient_inner dl dd {
	padding:2px 10px;
	font-size:11pt;
}

#modal #modal_inner #modal_body #modal_left #modal_ingredient_inner dl dt {
	border-right:solid 1px #999;
	width:65%;
}

#modal #modal_inner #modal_body #modal_left #modal_ingredient_inner dl dd {
	width:32%;
}

#modal #modal_inner #modal_body #modal_left #modal_recipe li {
	border-bottom:solid 1px #999;
	padding:5px 0;
}

#modal #modal_inner #modal_body #modal_left #modal_recipe li dl {
	display: -webkit-flex;
	-webkit-justify-content: flex-start;
	display: flex;
	justify-content: flex-start;
}

#modal #modal_inner #modal_body #modal_left #modal_recipe li dl dt {
	background: #ca0000;
	display: -webkit-flex;
	-webkit-justify-content: center;
	-webkit-align-items: center;
	display: flex;
	justify-content: center;
	align-items: center;
	color:#fff;
	font-weight: bold;
	width:30px;
	margin-right:15px;
}

#modal #modal_inner #modal_body #modal_left #modal_recipe li dl dd {
	line-height:1.3em;
	padding:5px 0;
	width:100%;
}

#modal #modal_inner #modal_body #modal_right #modal_image {
	margin-bottom:10px;
}

#modal #modal_inner #modal_body #modal_right #modal_image img {
	width:100%;
}

#modal #modal_inner #modal_body #modal_right .recipe_comment p {
	margin-left:10%;
}

#modal #modal_inner #modal_cal {
	position: absolute;
	left:0;
	top:40px;
	width:60px;
}

#modal a {
	-webkit-transition:opacity 0.2s;
	transition:opacity 0.2s;
}

#modal a:hover {
	opacity:0.6;
}

#modal #modal_close {
	position: absolute;
	right:10px;
	top:10px;
	z-index:1000;
}

#modal #modal_inner .modal_nav {
	position: absolute;
	top:50%;
	width:30px;
	height:85px;
	display: -webkit-flex;
	-webkit-justify-content: center;
	-webkit-align-items: center;
	-webkit-align-content: center;
	display: flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	background: #ca0000;
	margin-top:-43px;
}

#modal #modal_inner #modal_prev.modal_nav {
	left:10px;
}

#modal #modal_inner #modal_next.modal_nav {
	right:10px;
}


/********************
**** CARAVAN
********************/

#container main section#caravan {
	background: #f9f6ec;
	position: relative;
	z-index:4;
	height:950px;
	width:100%;
	overflow: hidden;
    top:-228px;
}

#container main section#caravan h3 {
	position: absolute;
	left:50%;
	top:90px;
	margin-left:-647px;
}

#container main section#caravan article {
	position: relative;
	height:100%;
}

#container main section#caravan article #caravan_map {
	position: absolute;
	left:225px;
	top:65px;
}

#container main section#caravan article #caravan_sites {
	position: absolute;
	left:93px;
	top:65px;
}

#container main section#caravan article #caravan_sites .caravan_event {
	position: absolute;
	left:0;
	top:0;
	display: inline-block;
	transition:opacity 0.2s linear;
}

#container main section#caravan article #caravan_sites .caravan_event:hover {
	opacity: 0.7;
}

#container main section#caravan article #caravan_sites .caravan_event#caravan_hokkaido {
	left:499px;
	top:105px;
}

#container main section#caravan article #caravan_sites .caravan_event#caravan_miyagi {
	left: 741px;
	top: 338px;
}

#container main section#caravan article #caravan_sites .caravan_event#caravan_tokyo {
	left: 746px;
	top: 488px;
}

#container main section#caravan article #caravan_sites .caravan_event#caravan_kanagawa {
	left: 751px;
	top: 657px;
}

#container main section#caravan article #caravan_sites .caravan_event#caravan_osaka {
	left: 296px;
	top: 757px;
}

#container main section#caravan article #caravan_sites .caravan_event#caravan_aichi {
	left: 520px;
	top: 698px;
}

#container main section#caravan article #caravan_sites .caravan_event#caravan_fukuoka {
	left: 0;
	top: 599px;
}

/********************
**** REPORT
********************/

#report {
	position: fixed;
	left:0;
	top:0;
	background: rgba(0,0,0,0.8);
	width:100%;
	height:100%;
	z-index:10;
	display: -webkit-flex;
	-webkit-justify-content: center;
	-webkit-align-items: center;
	display: flex;
	justify-content: center;
	align-items: center;
	display:none;
	opacity:0;
	-webkit-transition:opacity 0.2s linear;
	transition:opacity 0.2s linear;
}

#report.on {
	display: flex;
	/*opacity:1;*/
}

#report #report_body {
	background: #fff;
	border-radius: 10px;
	position: relative;
}

#report #report_body #report_inner {
	padding:30px;
}

#report #report_body #report_inner #report_meta {
	text-align: center;
	padding-bottom:0.5em;
	border-bottom:solid 3px #c90000;
	margin-bottom:10px;
}

#report #report_body #report_inner #report_meta p {
	font-weight: bold;
	text-align: center;
	display: inline-block;
	font-size:12pt;
}

#report #report_body #report_inner #report_meta p strong {
	font-size:16pt;
}

#report #report_body #report_inner .report_photo {
	display: -webkit-flex;
	-webkit-justify-content: center;
	-webkit-align-items: flex-start;
	display: flex;
	justify-content: center;
	align-items: flex-start;
}

#report #report_body #report_inner .report_photo img {
	width:300px;
	margin:2px;
}

#report #report_body #report_inner .report_text {
	max-width:608px;
	margin:auto;
	padding-top:1em;
}

#report #report_close {
	position: absolute;
	right:0;
	top:-40px;
	z-index:1000;
}


/********************
**** CAMPAIGN
********************/

#campaign {
	padding:50px 0;
    position: relative;
    top: -230px;
	background: url(../images/campaign_bg.png);
	z-index: 3;
}

#campaign #campaign_inner {
}

#campaign h3 {
	text-align: center;
	margin-bottom:25px;
}

#campaign h3 img {
	max-width:90%;
}

#campaign #campaign_hashtag {
	padding:20px 0 0;
	text-align: center;
	/* background: #3296D4; */
	margin-bottom:60px;
}

#campaign #campaign_hashtag img {
	max-width:100%;
}

/* Twitter Campaign Entry List add:2018-08-31 */
/* -------------------------------------------- */
.slider {
  display:none;
}
.slider.slick-initialized {
  display: block;
}
.campaign_twcomment {
	background: #3296D4;
	padding-bottom: 70px;
	margin-bottom: 50px;
}
.campaign_twcomment p {
	text-align: center;
	color: #FEEA01;
	font-size: 24px;
	font-weight: bold;
	padding: 20px 0 30px;
}
.campaign_twcomment p.info_txt {
	text-align: center;
	color: #ffffff;
	font-size: 24px;
	font-weight: bold;
	padding: 30px 0 0;
}
.slick_twcomment {
	margin: 0 auto;
	background: #ffffff;
	width: 80%;
	display: table;
}
.slick_twcomment li {
	width: 100%;
	text-align: left;
	border-bottom: 1px solid #cccccc !important;
	height: 160px !important;
	display: table !important;
}
.slick_twcomment li span {
	padding: 0 40px;
	font-size: 18px;
	display: table-cell !important;
	vertical-align: middle;
	text-align: center;
}
.slick-current + .slick-active span {
	font-size: 18px !important;
	font-weight: bold !important;
}
/* -------------------------------------------- */

#campaign #campaign_inner #campaignb_step {
	margin-bottom:20px;
}
#campaign #campaign_inner #campaignb_step ul {
	display: -webkit-flex;
	-webkit-justify-content: space-between;
	display: flex;
	justify-content: space-between;
}

#campaign #campaign_inner #campaignb_step ul li {
	/*
	background: #CA0000;
	border-radius: 15px;
	*/
	padding: 10px 0;
	width: 33%;
}

#campaign #campaign_inner #campaignb_step ul li h4 {
	text-align: center;
	border-bottom: solid 1px #fff;
	padding-bottom: 5px;
	margin: auto;
	width: 96%;
}
#campaign #campaign_inner #campaignb_step ul li p {
	height: 100px;
	display: -webkit-flex;
	-webkit-justify-content: center;
	-webkit-align-items: center;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: auto;
	width: 96%;
	text-align: center;
}
#campaign #campaign_inner #campaignb_step ul li .tweet_sample {
	background-color: #fff;
	padding:5px;
	background-repeat: no-repeat;
	width:90%;
	margin: auto;
}
#campaign #campaign_inner #campaignb_step ul li .tweet_sample h5 {
	background: #3296D4;
	height: 22px;
	border-radius: 11px;
	padding: 1px 0;
	text-align: center;
	margin-bottom:10px;
}
#campaign #campaign_inner #campaignb_step ul li .tweet_sample h5 img {
	vertical-align: baseline;
	max-width:100%;
}
#campaign #campaign_inner #campaignb_step ul li .tweet_sample .tweet_sample_inner {
	position: relative;
	height:70px;
}
#campaign #campaign_inner #campaignb_step ul li .tweet_sample .tweet_sample_inner a,
#campaign #campaign_inner #campaignb_step ul li .tweet_sample .tweet_sample_inner iframe {
	position: absolute !important;
	left:50%;
	bottom:0;
	margin-left:-37px;
}
#campaign #campaign_inner #campaignb_step ul li#campaign_step1 .tweet_sample .tweet_sample_inner a,
#campaign #campaign_inner #campaignb_step ul li#campaign_step1 .tweet_sample .tweet_sample_inner iframe {
	margin-left:-60px;
}
#campaign #campaign_inner #campaignb_step ul li#campaign_step1 .tweet_sample .tweet_sample_inner {
	background: url(../images/campaign_step1_example.png) left 10px top no-repeat;
}
#campaign #campaign_inner #campaignb_step ul li#campaign_step2 .tweet_sample .tweet_sample_inner {
	background: url(../images/campaign_step2_example.png) left 10px top no-repeat;
}
#campaign #campaign_inner #campaignb_step ul li#campaign_step3 .tweet_sample .tweet_sample_inner {
	background: url(../images/campaign_step3_example.png) left 10px top no-repeat;
}
#campaign #campaign_inner #campaign_detail a {
	display: block;
	/*background: url(../images/campaign_btn_arrow.png) right 20px center no-repeat #CA0000;*/
	padding: 0;
	text-align: center;
	width:60%;
	margin: auto;
	transition: opacity 0.2s linear;
}

#campaign #campaign_inner #campaign_detail a:hover {
	opacity: 0.7;
}
#campaign_modal {
	position: fixed;
	left:0;
	top:0;
	width:100%;
	height:100%;
	z-index:1101;
	background: rgba(0,0,0,0.8);
	padding:5% 0;
	display: none;
	opacity:0;
	transition:opacity 0.2s linear;
}
#campaign_modal.on {
	display: block;
}
#campaign_modal #campaign_modal_inner {
	width:80%;
	height:80%;
	overflow: auto;
	background: #fff;
	margin: auto;
	padding:3%;
}
#campaign_modal #campaign_modal_inner h2 {
	border-bottom:solid 2px #ca0000;
	font-size:1.2rem;
	margin-bottom:1em;
	text-align: center;
}
#campaign_modal #campaign_modal_inner p,
#campaign_modal #campaign_modal_inner ul,
#campaign_modal #campaign_modal_inner h3 {
	margin-bottom:1em;
}
#campaign_modal #campaign_modal_inner ul {
	list-style: disc;
	padding-left:1.5em;
}
#campaign_modal #campaign_modal_inner ul ul {
	margin-bottom:0;
}
#campaign_modal #campaign_close {
	position: absolute;
	right:20px;
	top:20px;
}

/* add 2019campaign */
#campaign #campaign_inner #campaignb_step ul li div {
	position: relative;
}
#campaign #campaign_inner #campaignb_step ul li div img {
	width: 100%;
}
#campaign #campaign_inner #campaignb_step ul li div .tweet_follow_inner {
	position: absolute;
	bottom: 36px;
	left: 0;
	right: 0;
	margin: 0 auto;
	width: 246px;
	height: 36px;
}
#campaign #campaign_inner #campaignb_step ul li div .tweet_follow_inner a {
	display: block;
	height: 36px;
}
#campaign #campaign_inner #campaignb_step ul li div .tweet_share_inner {
	position: absolute;
	bottom: 12px;
	left: 0;
	right: 0;
	margin: 0 auto;
	width: 75px;
}
#campaign #campaign_inner #campaignb_step ul li div .tweet_share_inner2 {
	position: absolute;
	bottom: 10px;
	left: 0;
	right: 0;
	margin: 0 auto;
	width: 75px;
}
/********************
**** PAGE TOP
********************/

#container .pagetop {
	position: fixed;
	right:10px;
	bottom:10px;
  z-index:9999;
}

/********************
**** FOOTER
********************/

/*
footer {
	display: -webkit-flex;
	-webkit-justify-content: space-between;
	display: flex;
	justify-content: space-between;
	position: relative;
	z-index: 6;
	background: #fff;
	padding:20px;
    top: -200px;
}

footer ul li {
	display: inline-block;
	margin-right:20px;
}

footer ul li a {
	color:#000;
	font-size:9.5pt;
}

footer p {
	font-size:9.5pt;
}
*/

/* Twitter Campaign Entry List add:2018-08-31 */
/* -------------------------------------------- */
.br_Sp {
	display: none;
}
/* -------------------------------------------- */

#toggle{
    background:#f3eeda;
    padding:5em 0 2em 0;
}

#tglcnt{
    background:#f3eeda;
    padding:0 4% 1em 4%;
}

#toggle img,
#twcamp > img{
    display:block;
    margin:auto;
    width:90%;
    height:auto;
}

#tglbnr{
    max-width:930px;
    cursor:pointer;
}

#rotate{
    padding:1em 0;
    max-width:92px;
    cursor:pointer;
}

.rotate{transform:rotate(180deg);}

#twcamp{
    display:block;
    margin:0 0 1em 0;
    text-align:center;
}

#twcamp > img{max-width:707px;}

#pogS{display:none;}


/* Main Visual Change :2019-11-28 */
/* -------------------------------------------- */
#container main section#top #top_bg {
/*
  background: #b30808 url(../images/main_bg.png) center top;
  background-size: cover;
*/
  background: #b30808 url(../images/main_bg.png) center;
  background-size: cover;
}
#atn > div:nth-of-type(1),
#atn > div {
  padding: 0;
}
#atn #tpct .topBanner {
  position: absolute;
  top: 220px;
  left: 68%;
}
#atn #tpct .topBanner a img {
  width: 200px;
  transition: .2s;
}
#atn #tpct .topBanner a:hover img {
  opacity: 0.8;
}
#atn #tpct .topBanner .pc {
  display: block;
}
#atn #tpct .topBanner .sp {
  display: none;
}

/* 2022-08-18 */
.tx08 {
display: inline-block;
text-align: left;
}
@media screen and (max-width: 640px){

    .tx08 { display:none; }
}

/* Main Visual Change :2023-01-05 */
/* -------------------------------------------- */
#container main section#top #top_bg {
	background: #fff6e4;
}
#scrl {
  color: #221815;
}
.navi_scroll_line > div {
	background: #221815;
}
#proinfo a {
  margin-top: 2.3em;
  background: #e8340c;
}

/* TOP2 Youtube Change :2023-01-05 */
/* -------------------------------------------- */
.top2_youtube {
  display: flex;
  width: 100%;
  max-width: 960px;
  margin: 0 auto 8em;
  justify-content: space-between;
  align-items: center;
}
.top2_youtube iframe {
  width: 55%;
  max-width: 560px;
}
.youtube_catch {
  width: 42%;
  text-align: center;
}
.youtube_catch > img {
	margin: 0 auto;
}
.youtube_catch a {
  display: flex;
  width: 100%;
  max-width: 318px;
  height: 66px;
  margin: 1.5em auto 0;
  font-size: 20px;
  color: #FFF;
  text-decoration: none;
  background: #000;
  align-items: center;
  justify-content: center;
}
.youtube_catch a img {
  margin-left: 10px;
}
#container main section#top #top2 {
	background: #FFF;
}
#container main section#top #top2 h3.fixed {
	background: #FFF;
}