@charset "UTF-8";
@import url("grid_0917.css");

img {
	max-width:100%;
	height: auto;/*高さ自動*/
}
a {
/*    display:block;*/
    color: #FFF;
    text-decoration-line: none;
	transition: .3s;
}
a:hover { 
    color: #ccaf89;
}
a img:hover {
	opacity: 0.8;	
}
.underline {
	border-bottom: 3px solid #000;
	padding-bottom: 0.5rem;
}

.small{font-size:70%}

.big{
font-size:140%;
}

.ns_logo{float: left; margin-top: 0px; position: relative;
}/**/
.logo_b{	position: fixed;
	display: flex;}

.logo{float: left; /*margin-top: 0px; */
	bottom: 0rem;
	left: 10%;	z-index: 10;
}


/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { display: block !important; }
.sp { display: none !important; }
 
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 750px) {
    .pc { display: none !important; }
    .sp { display: block !important; }
}

/*ヘッダー
-------------------------------------*/
header {
background: linear-gradient(rgba(0,0,20,0.8) 60%,rgba(0,0,20,0.0));
}
.head {
	display: flex;
    flex-direction: row;
    padding: 1rem 0 0 0;
	font-family: 'メイリオ', Meiryo,'ヒラギノ角ゴシック','Hiragino Sans',sans-serif;
	/*
		font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3","noto serif CJK", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;*/
}
.head img{margin: 0 0 0 10px;}

.head h1 { 
    padding: 1rem 0;
}

.header-box {
	/*margin: auto;*/
	position:absolute;
	right:25px;
	margin-top: 15px;
}

 select{
  position: relative;
/*  width: 120px;*/
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}

select::-ms-expand {
 display: none;
}
nav{
 z-index: 2;
}
nav ul {
	font-size: 1.35em;	
	display: flex;
    flex-direction: row;
    justify-content: space-around;
    list-style: none;
	margin-bottom: 0.5rem;
/*	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3","noto serif CJK", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;	font-weight: bold;*/
  font-family: "Hina Mincho", serif;
  font-weight: 400;
  font-style: normal;
	transform: rotate(.01deg);
}
nav li {
    display: block;
    flex: 1 0 auto;  text-align: center;
	letter-spacing: 0.11em;
}
nav li a {
	color: #fff; 
	text-decoration: none;
    text-align: center;
  position: relative;
  display: inline-block;   
}
nav a:hover {
	color: #d50025;	
  	transform: translateY(2px);
/*	text-shadow:#92b4a9 1px 1px 10px, #92b4a9 -1px 1px 10px,
	black 1px -1px 10px, #92b4a9 -1px -1px 10px;*/	
	font-weight: 800;
/*アニメーション追加*/
	animation: text-blur 0.5s;
}

/* アニメーション設定 */
@keyframes text-blur {
  0% {
    filter: blur(0);
  }
  50% {
    filter: blur(4px); /* ぼかしの強さ */
  }
  100% {
    filter: blur(0);
  }
}
nav a {
padding: 0.9em 0.5em 1.5em 0.5em;
}

nav a::before{   /* transform: translateY(2px);*/   
	content:"";
	display: block;
	position: absolute;
	top:0;
	left:0;
	width:0;
	height:100%;
	opacity: 0;
/*	background: url(../img/m_icon.png); background-position: center 0%;
	background-repeat: no-repeat;	
	background-size: contain;	
	z-index:-2;	border-bottom: 1px solid #d50025;*/
}
nav a:hover::before{
	content:"";
	display: block;
	width:100%;
	opacity: 1;
/**/
}
nav a::after{
	content:"";
	display: block;
	position: absolute;
	top:0;
	left:0;
	opacity: 0;
/*	transform:translate(0px,-10px);
	transition: 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);*/

}
nav a:hover::after{
	content:"";
	display: block;
	width:100%;
	opacity: 1;
}

/*cn
 <weight>: Use a value from 100 to 900
 <uniquifier>: Use a unique and descriptive class name
*/

.telbox {
	/*float: right; font-size: 2.0rem;margin-right: auto;	*/
	text-align: left;
	padding: 10px 0 10px 10px;
}

@media screen and (min-width: 768px){
/* PC時はMENUボタンを非表示 */
#open,#close {
    display: none !important;
}

#navi {
    display: block !important;
}	
}
/*550px*/
@media screen and (max-width: 690px){
.head {
	flex-direction: column;
    text-align: left;
    margin-bottom: 0px;
}
	.telbox {
	/*	margin:0 auto;	top: 0px;    float: center;	 */	
	text-align: center;
	position: absolute;
	font-size: 0.8em;	width: 90%;

}	
.logo{position: fixed;	left: -1em;
	width: 180px;
    height: auto; }
	
.header-box{  display: none;
}
	
.head #open,#close  {
    position: absolute;
    top: 0px;
    right: 0px;
    }

	nav ul {
	flex-direction: column;
	}

	nav li {
	padding-top: 0;
   /* background: rgba(64, 48, 40, 0.5);
			border-bottom: 1px solid #ccc;
*/	margin-bottom: 0;  text-align: center;
}
	
	/* スマホ時はMENUボタンを表示 */
#open {
    display: block;
    background: url(../img/button.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 50px;
    height: 50px;
    border: none;
    position: absolute;
    top: 0px;
    right: 0px; 
}
#close  {
    display: block;
    background: url(../img/button2.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 50px;
    height: 50px;
    border: none;
    position: absolute;
    top: 0px;
    right: 0px;
}
/* スマホ時はメニューを非表示 */
#navi {
    display: none;
}

.header-box {
	/*margin: auto;*/
	position:absolute;
	left:10px;
}
	
	

}


/*メインコンテンツ
-------------------------------------*/
main {
margin: -5rem 0 5rem 0; 
}

/*新着情報
-------------------------------------*/
.news h4 {
    border-bottom: 1px solid #fff;
	padding-bottom: 0.5rem;
}

.news{	background: url(../img/bg_asfalt.png);
	width: 100%;
	min-width: 250px;
	height: 95%;
	padding: 5px;
	/*border-radius: 10px;*/ 
	border: solid 5px #000;
}

.news_base  {	
	font-family: "Noto Serif JP", "Noto Serif SC", serif;
	overflow: auto;
	width: 100%;
	padding-top: 0px;
	padding-right: 10px;
	padding-left: 20px;
	padding-bottom: 10px;
	min-width: 260px;
	height: 100px;
	/*color: #FFFFFF; 	border: 1px solid #333;*/
	margin-right: 0px;
	margin-left: 0px;
/*	background: url(../img/m_icon.png);
	background-repeat: no-repeat;*/
/*		background-color:rgba(174,194,176,0.05);  background-position: left 0px;
		text-shadow:0px 0px 5px #000, 1px 1px 8px #000;*/

}

.news_base a{   white-space: nowrap;
	color: #ffa500;
	filter: alpha(opacity=50);
	font-weight: bold;
}

.news_base a:hover {
	opacity: 0.5;
	filter: alpha(opacity=50);
}

.news_base strong{
	color: #daa520;
}

.news_base dd {
	font-size: 100%;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 5px;
	margin-left: 15px;	border-bottom: none; border-bottom: 1px solid #ccc;
}
.news_base dt {
/*	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3","noto serif CJK", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;*/ 

	font-size: 1.2em;
	/*border-left: groove 10px #b22222;border-bottom: solid 1px #8a7b78;*/
	padding-left: 5px;	border-bottom: none;
}

/*product*/
.product dl{	text-align: left;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
	flex-wrap: wrap;
	align-items: stretch;	
	width: 100%;
	border-bottom: none;

}
.product dt{
	float: left;font-size: 80%; 
	padding: 5px;border-bottom: 1px dotted #777;
	width: 175px;font-weight: bold;
}
.product dd{ 
	padding: 5px;	border-bottom: 1px solid #777;
	width: calc(100% - 180px);
}
	
.product h1, h3, h4{ 
/*	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3","noto serif CJK", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;*/ 
	font-family: "M PLUS 1p", "LiHei Pro",serif;
	text-shadow:2px 2px 5px #000;
}

.copy h4{ 
	padding: 250px 0 200px 0;
	letter-spacing: 0.7em;
font-size:1.85em;	/*color: #DC143C;font-style: italic;*/
font-weight: bold;		
text-shadow:/*0px 0px 5px #990033,*/ 1px 1px 5px #dc143c;	
transform: scale(0.8, 1);
}


.st01{color: #ffa500;
	font-size:120%;
}

@media only screen and (max-width: 768px) {
.product dl dt{ 
	width: 100%;
	border-right: none;
	text-align: center;	margin: auto; 
	border-bottom: none;
	}
.product dl dd{
	width: 100%; 
	  text-align: center;	margin: auto; 
	}
.center01 h3{	
	font-size: 1.5em; 
}

}

.product h3{	
	border-bottom: 1px solid #ccc;
	font-size: 1.3em; text-align: center;
/*	font-weight: 800;*/
}

.about h1{
  font-family: "Hina Mincho", 'Noto Serif TC', serif;
  font-weight: 450;
  font-style: normal;
text-shadow:2px 2px 3px #330900;letter-spacing: 0.04em;
}
/*最初のテキストだけスタイルを適用*/
.about h1::first-letter{
	color: #d30000;
	font-size:1.3em;
}


.center{
	text-align: center;
    margin: 0 auto;
}

.pv a img:hover {
	transform: translateY(-5px); 
	transition: .2s;

}


/*フッター
-------------------------------------*/
footer {	font-size: 1em;
    color: #f5f5f5;
	padding: 4rem 0;	
background: rgba(0,0,0,0.8);
	/*background-color: #222;background: rgba(0,0,0,0.5);background: linear-gradient(rgba(0,0,20,0),rgba(0,0,20,1));background-image: url(../img/bg_asfalt.png);
*/
}
footer h3{border-bottom: 1px solid #999;
		font-size: 1.3em;	font-weight: bold;
}
footer  dl{	text-align: left;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
	flex-wrap: wrap;
	align-items: stretch;	
	width: 100%;
	border-bottom: none;
/*	background: #fff;	border: 1px solid #ccc;*/
}
footer  dt{  float: left;
	font-size: 75%; 
/*	background: #f5f5f5;	border-right: 1px solid #ddd;*/
	padding: 5px;
	width: 155px;
	border-bottom: 1px dotted #333;
}
footer  dd{ 
	/*background: #fff;font-weight: bold;*/	margin-left: 5px;
	padding: 5px;
	width: calc(95% - 154px);
	border-bottom: 1px solid #333;
}
@media only screen and (max-width: 768px) {
footer  dl dt{ 
		width: 100%;
		border-right: none;
	}
footer dl dd{
		width: 100%; 
	}

}


/*コピーライト
-------------------------------------*/
.copyright { 
	font-size: 0.94em;    color: #fff;
	text-align: center;
    padding: 1rem 0;
	padding-top: 20px;
	background: #000;
	/*background-image: url(../img/bg_0.jpg);background-repeat: repeat;*/
	font-family: "Hiragino Sans", 'Noto Serif TC',"Hiragino Kaku Gothic ProN", "Meiryo", "游ゴシック", YuGothic, sans-serif;
}
.copyright a {
    text-decoration: none;
	display: inline-block;
}


/*ページトップへ戻るボタン
-------------------------------------*/
#pagetop {
    position: fixed;
    bottom: -20px;
    right: 5px;
}
#pagetop a {
display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  width: 82px;
/* border: 3px solid #aaaaaa;  background-color: #FAF0E6;
  border-radius: 0vh;*/
	transition: 0.8s;
}
#pagetop a:hover {
  transform: translateY(-15px)translateX(-10px); /* 上に */
  transition-duration: 0.8s;
  /*  transform: rotateY( 360deg );	background-color: #B13546;border-radius: 50vh;*/
}


/*パンくずリスト
-----------------------------------*/
.breadcrumb {    font-size: 85%;
    margin: 0 0 1em 0;
    padding: 0;	
}
.breadcrumb li {
    list-style-type: none;
}
.breadcrumb li a {
    display: inline-block;
    color: #959fa5;
}

/*追加*/
.box17{
    position: relative;
	margin:2em 0 0 0;
    padding: 0.5em 0.5em;
}
.container h5{font-weight: bold;	text-align: center;}
.container p{padding: 0 12px;	font-size: 0.8em;}

.box01{
  position: relative;
}
.center01 {color: #fff;  margin: 50px 0 50px 0;
}
.center01 h2{
font-weight: bold;letter-spacing: 0.3em; line-height: 1.5;
font-size: 3.1em;
/*font-family: "ヒラギノ明朝 ProN W3", "游明朝", YuMincho, "Hiragino Mincho ProN W3","noto serif CJK", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
*/text-shadow:0px 0px 1px #000, 1px 1px 15px #000;
margin-top: 100px;
}

@media only screen and (max-width: 900px) {
	.center01 h2 {
	font-size: 2.1em;letter-spacing: 0.3em;}

	.center01 img{ width: 500px; height: Auto;
}
}	

/*Story*/
.story{	    
	color: #fff;
	font-size: 1.25em;
/*	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3","noto serif CJK", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;*/
  font-family: "Hina Mincho", 'Noto Serif TC',serif;
	font-weight: 550;
	text-shadow:0px 0px 1px #5a2929, 1px 1px 5px #5a2929;
	line-height:2.5;	   
	padding: 1.5em 0em 1.5em .5em;	height: 100%;

}
.storybg{
	padding: 10px;
	background-image: url("../img/story_bg_02.png");
    background-position: center;
/*	background-image: linear-gradient(rgba(200, 255, 255, .8), rgba(100, 100, 100, 0.0));1a1a33*/
}

/*縦書き（en以外）  text-align: left;*/
.story .tate{ 
  display: inline-block;
  text-align: left;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  display: inline-block;
	line-height:1.8;
}

.story_en{ 
	line-height:1.8;	
	font-size: 1.3em;
}

.st_end{
	font-size: .8em;
	letter-spacing: 0.07em;
	text-align: right;
}

.st_text {	
	font-size: 1.4em;    text-align:left  ;
	color: #000;
	font-family: "Hina Mincho",'Noto Serif TC', serif;
	line-height:1.6;	letter-spacing: 0.04em;	padding: 40px;
}

.sys {  
  display: flex;
  justify-content: center;
  align-items: center;	
	
  cursor: pointer;  margin: 0 auto;
  max-width: 500px;
  overflow: hidden;
  width: 100%;  border:3px solid #000;  background: #000;
}

.sys img {
  height: auto;
  transition: transform .9s ease; 
}
.sys:hover img {
  transform: scale(1.2);
}
/**/
/* ホバー時にアニメーションを1回だけ実行 */
.sys:hover {
  background-color: #0056b3;
  animation: flash-blur 0.4s ease-out;
}

/* 一瞬滲んで元に戻るアニメーション */
@keyframes flash-blur {
  0% {
    filter: blur(0px);
    transform: scale(1);
  }
  30% {
    filter: blur(4px);    /* 滲みの強さ */
    opacity: 0.8;         /* 透明度を下げるとより雰囲気が出ます */
    transform: scale(1.02); /* 少しだけ大きくすると立体感が出ます */
  }
  100% {
    filter: blur(0px);
    transform: scale(1);
  }
}


 .comi {   margin: 0 auto; 
}
.comi img {  width: 33%;	padding: 5px;
}

@media (max-width: 550px) {
/*.logo{
	width: 120px;
    height: auto; }*/

.comi img{width: 80%;
}	
	
.center01 h3{	

}	
.size span{	
	font-size: .85em; 
}
.story .tate{ 
	line-height:1.2;
}	
	
}

/*========= particle js を描画するエリア設定 ===============*/

#particles-js{ 
  position:fixed;/*描画固定*/
  z-index:-1;/*描画を一番下に*/
  width: 100%;
  height: 100%;
}

#wrapper{
  position: relative;/*描画を#particles-jsよりも上にするためposition:relative;を指定*/
  z-index: 2;/*z-indexの数字を大きくすることで描画を#particles-jsよりも上に*/
}

/*ボタン*/

.btn,
a.btn,
button.btn {    margin-bottom: 15px;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.4;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
/*  border-radius: 0.5rem;*/
  border:3px solid #eb0930;
}

a.btn-flat {
  overflow: hidden;
  padding: 1.0rem 2rem;

  color: #fff;
  border-radius: 0;
  background: #000;
}

a.btn-flat span {
  position: relative;
}

a.btn-flat:before {
  position: absolute;
  top: 0;
  left: 0;

  width: 180%;
  height: 570%;

  content: "";
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  -webkit-transform: translateX(-98%) translateY(-25%) rotate(45deg);
  transform: translateX(-98%) translateY(-25%) rotate(45deg);
  background: #eb0930;
}

a.btn-flat:hover:before {
  -webkit-transform: translateX(-9%) translateY(-25%) rotate(45deg);
  transform: translateX(-9%) translateY(-25%) rotate(45deg);
}


/*追加*/

.wrap-tab ul{
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.wrap-tab p{
  margin: 0;
}
.wrap-tab{
  overflow: hidden;
}

.list-tab{
  display: flex;
  margin: 0 -2px;  
/* border-bottom: 1px solid #997009;*/
}

.list-tab > li{
  display: block;
  padding: 0.5em 0em 0em 0em;
  margin: 0 auto;
  width: 100%;
/*  color: #fff; background: #ccc;*/
  box-sizing: border-box;
  cursor: pointer;
}
.list-tab img{
/*background:rgba(153,112,9,0.4);opacity: .8;*/
padding: 0.2em; opacity:1;
}

.list-tab .active{
 opacity: 1;	border-bottom: 2px solid #997009;
}
.list-tab img:hover{
 transition: 0.3s linear; opacity: 0.5;
}
/*.list-tab img{  margin: 0 auto;
text-align: center;}*/

.tab-content{
  display: none;  height: 100%;
  padding: 1em;  margin: 1.5em 0;
/*background:rgba(255,255,255,0.1);
border-bottom: 1px solid #997009;
  border-left: 1px solid #997009;
  border-right: 1px solid #997009;
*/  align-items: center;
  justify-content: center;
}
.tab-content.active{
  display: block;
}

/*フキダシ*/
.speechBubble {
  position: relative;
  display: inline-block;
  width: 85%;
  margin-top: 20px;
  padding: 20px;
  border: 3px solid #000000;
  border-radius: 40px;
  background-color: #fff;
  text-align: left;
  font-size: 1.2em;
  line-height: 1.4;
  color: #333;   font-family: "Shippori Antique", serif;

}

.speechBubble::before {
  content: "";
  position: absolute;
  top: 0;
  left: 25%;
  border-style: solid;
  border-width: 0 0 20px 20px;
  border-color: transparent transparent #000000;
  translate: -50% -100%;
}

.speechBubble::after {
  content: "";
  position: absolute;
  top: 0;
  left: 25%;
  border-style: solid;
  border-width: 0 0 15.2px 15.2px;
  border-color: transparent transparent #ffffff;
  translate: calc(-50% + 0.4px) -100%;
}

@media only screen and (min-width: 735px) {
	.is-sp{
		display: none!important;
	}
}
@media screen and (max-width:1249px){
	.is-pc{
		display: none!important;
	}
}
@media screen and (max-width:735px){
	.is-pc2{
		display: none!important;
	}
}


/*.imagete01{
font-size: 4em;
}
.imagete02{
font-size: 5.7em;      padding:5px 0px;
}*/

.pake{
filter: drop-shadow(0px 0px 15px gray);}


/*positionで重ねて画像全体をクリック*/

.example3{
    display: block;
    position: relative;
/*	background:rgba(0,0,0,0.8);*/
}

.example3 img{  
	margin: 0 auto;
    max-width: 100%;
    height: auto;
    display: block;
/* 	border: 10px solid #000;*/
}

.example3>span{
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    display: block;
    width: 200px;
    box-sizing: border-box;
    background: rgba(255,255,255,0.3);
    border: 1px solid #FFF;
    padding: 15px;
    text-align: center;
    color: #FFF;
    font-size: 120%;
    font-weight: bold;
    transition: .3s;
}
.example3:hover>span{
    background: rgba(255,255,255,1);
    color: #333;
}
/*
.fadeIn {
animation-name: fadeInAnime;
animation-fill-mode:backwards;
animation-duration:3s;
animation-iteration-count:infinite;
animation-timing-function:ease;
animation-delay: 0.5s;
animation-direction:normal;
}*/

@keyframes fadeInAnime{
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

.fadein {
    opacity : 0;
    transform : translate(0, 50px);
    transition : all 680ms;
}
.fadein.scrollin {
    opacity : 1;
    transform : translate(0, 0);
}


.catch{
	position: relative;
	top: 50px;
	text-align: right;
	z-index:2;
}
@media screen and (max-width: 735px){

.story{	    
	font-size: 1em;
	line-height:1;
}
}




/*追加*/
.footer-lang	{         font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", "游ゴシック", YuGothic, sans-serif;
/*text-align: center;background-color: rgba(0,0,0,0.7);*/ padding: 5px; font-size: 13px;   height: 40px;}
.footer-lang > a {text-decoration:none; }
.footer-lang > a:after {content:"|";  opacity:0.5; text-decoration:none; margin:1ex;}
.footer-lang > a:last-of-type:after {content:"";}
.footer-lang  a:hover{color: #ff0062 ; }/*#FFE4B5*/

.box0 {
    margin: 2em 0.5em;/**/
    padding: 2px 5px;
    color: #fff;/*文字色background: #f5f5f5;border: solid 1px #f69a00;*/
    background-color: rgba(255,140,0,0.85);
    border-radius: 3px;/*角の丸み*/ font-size: 1.1em;    font-weight: bold;
}

.box0 a:hover {
	opacity: 0.5;	
}


.box2 {
    position: relative;
/*    margin: 2em 0;*/
    padding: 25px 10px 7px;
    /*color: #87cefa;文字色background: #f5f5f5;*/
    background-color: rgba(255,255,255,0.9);
    border: solid 4px #f69a00;
    /*border-radius: 5px;角の丸み*/ 
}

.box2 .box-title {
    position: absolute;
    display: inline-block;
    top: -2px;
    left: -2px;
    padding: 0 9px;
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #f69a00;
    color: #ffffff;
    font-weight: bold;
}
.box2 p {
	color: #020222;
	margin: 0; 
    padding: 0;
    font-size: 1.0em;
}

.box2 .midashi {
	margin: 0.5em 0;
	padding: 0px 5px 0px 5px;
	    font-size: 1.2em;
		font-weight: 800;
/*		background:linear-gradient(transparent 60%, #fff 30%);*/
	background:#fff;
}


.box {
	max-width: 860px;
    margin:  0 auto;            /* 中央寄せ */
	text-align: center;
}
.box p {color: #ccc;
	font-size: .8em;
}
@media (max-width: 768px) {
.box {
	width: 100%;
  }
}

.title_te {
  text-align: center;
  padding: 0.5em;
 }
.title_te h1 {
font-size: 2.4em;
color: #e61a3e;/*　b80000*/
transform: scale(0.95, 1);
text-shadow: 0 2px 4px rgba(0,0,0,0.8); 
font-family: "Zen Antique Soft", serif;
}

.noto-sans-tc-900 {
  font-family: "Noto Sans TC", sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
}



/*店舗特典*/
.shop_top{	
    margin: 0 auto;
	text-align: center; 
}
.shop {
	width: 100%;
	font-family: 'メイリオ', Meiryo,'ヒラギノ角ゴシック','Hiragino Sans',sans-serif;
	padding: 5px;    margin-bottom: 2rem;
	border: 3px solid #091045;
	color: #333;
	background-color: #f9f7f2;
}

.shop p{
  padding: 0 0.4rem;
  text-align: left; letter-spacing:-0.01em;
}
.shop h3{ 
color: #22272f;
font-family: "M PLUS 1p", serif;
font-size: 2.1em; margin-top: 0.7rem; 
font-weight: bold;		
text-shadow:0px 0px 15px #f9f7f2, 1px 1px 8px #f9f7f2;
}
.shop h5{
margin-top: 0.7rem;    font-weight: bold;
font-size: 1.10em;
padding:5px 0;	
color:#f9f7f2;
background-color: #2c2d30;
}

.point{
	padding: 0 7px 0 7px;  font-weight: bold;
    background: linear-gradient(86.13deg, #ff9900 -3.42%, #d63939 59.59%);
	color: #fff;
	border-radius: 7px;
}

.point01{
	padding: 0 7px 0 7px;  font-weight: bold;
    background: linear-gradient(86.13deg, #060eb2 -3.42%, #0680b2 59.59%);
	color: #fff;
	border-radius: 7px;
}

.point02{
	padding: 0 7px 0 7px;  font-weight: bold;
    background: linear-gradient(86.13deg, #565656 -3.42%, #1e2735 59.59%);
	color: #fff;
	border-radius: 7px;
}



a.btn_03 {
	display: block;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	width: auto;/*120px*/
	margin: auto;
	padding: 0.5rem 1.2rem;
	font-weight: bold;
	border: 2px solid #ff0000;
	color: #ff0000;
	border-radius: 10vh;
	transition: 0.5s;
}
a.btn_03:hover {
	color: #fff;
	background: #ff0000;
}

.dot{
		position:relative;
		right:28px;
		top:-6px;
	}

 

/*==================================================
じわっ
===================================*/

/* ぼかしから出現 */
.blur{
  animation-name:blurAnime;
  animation-duration:1.8s;
  animation-fill-mode:forwards;
}

@keyframes blurAnime{
  from {
  filter: blur(10px);
  transform: scale(1.02);
  opacity: 0;
  }

  to {
  filter: blur(0);
  transform: scale(1);
  opacity: 1;
  }
}

/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
 
.blurTrigger{
    opacity: 0;
}
/*background: rgba(0,0,0,0.8);bg_red.jpg　background: linear-gradient(180deg,rgba(0,0,0,0.8), transparent); transform: scaleY(-1);
background-image: url(../img/bg_blood.png);
background-size: cover;      
background-repeat: no-repeat; 
background-position: bottom 0px center;
*/
.con_00 { background: linear-gradient(0deg,rgba(0,0,0,0.8), transparent);}

.con_02 { 
   background: linear-gradient(180deg,rgba(176,11,0,1), transparent); 
}

.so {
	background: linear-gradient(45deg,transparent,#b80000, transparent);
padding: 1em 0.8em; /*background:#990000;*/}

.cho{
	transform: scale(0.9, 1);
	letter-spacing: 0.03em;
	margin: 0.2em;
}
.ns_point{color: #ccc;
	font-size:1.2em;
}
.ns_point02{	text-align: center;
	color: #ccc;	font-size:1.1em;
	padding: 0em 0.5em;
}

.ns_point02 h5{  
	padding: .5em 0  0 0;
	transform: scale(0.9, 1);
}

.ns_text {padding: 0.8em;}

.color_r{color: #dc0013;}


.scroll-down-image {
  /* アニメーションの設定 */
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
  z-index: 9999;
}

/* 下スクロール中に付与するクラス */
.scroll-down-image.is-show {
  opacity: 1;
  visibility: visible;
}

