@charset "UTF-8";

/*カバー==========================================================================*/
div#cover{
	position: fixed;
	z-index: 90;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background-color: #ffffff;
}

/*ヘッダ==================================*/
div#header{
	position: fixed;
	z-index: 102;
	width: 100%;
	left: 0;
	top: 0;
	background-color: rgba(255,255,255,.9);
	/*background-color: rgba(255,255,200,.9);*/
	font-size: 0;
	line-height: 0;
	letter-spacing: 0;
	border-bottom: solid 1px #eeeeee;
}
.sm_view div#header{
	/*position: relative;*/
}

.pc_view div#header_space{
	height: 96px;
}
.sm_view div#header_space{
	height: calc(10vw + 2vw + 6vw + 1px);
}

/*ヘッダ内側=============================================*/
div#header_inner{
	box-sizing: border-box;
	position: relative;
}
/*PC*/
.pc_view div#header_inner{
	margin: 0 auto;
	min-width: 1000px;/*W*/
	/*max-width: 1200px;/*W*/
	max-width: 100%;
	box-sizing: border-box;
	/*padding: 10px 30px 20px;/*●*/;
	padding: 8px 30px 47px;/*●*/;
	text-align: left;
}
/*スマホ*/
.sm_view div#header_inner{
	width: 100%;
	padding: 10vw 0 2vw 0; 
	text-align: left;
	transition: all .3s;
}
.sm_view div.header_sml div#header_inner{
	padding: 3vw 0 2vw 0; 
}


/*TAKENAKA*/
div#header_takenaka{
	background-image: url(../img/takenaka.png);
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: center center;
}
.pc_view div#header_takenaka{
	/*display: inline-block;*/
	/*width: 182px;*/
	/*height: 40px;*/
	/*top: 20px;*/
	/*left: 30px;*/
	position: fixed;
	width: 164px;
	height: 36px;
	right: 20px;
	top: 45px;
	transition: all .3s;
}
.touch_device.pc_view div#header_takenaka,
.narrow_view.pc_view div#header_takenaka{
	width: 146px;
	height: 32px;
	right: 90px;
	/*top: 47px;*/
	top: 49px;
}
.sm_view div#header_takenaka{
	position: absolute;
	left: 0;
	top: 0;
	width: 25vw;
	height: 5.5vw;
	left: 3vw;
	top: 2vw;
	transition: all .3s;
}
.sm_view div.header_sml div#header_takenaka{
	top: -6vw;
}

/*タイトル*/
div#header_title{
	display: inline-block;
	position: relative;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: left top;
}
.pc_view div#header_title{
	background-image: url(../img/head_title.png);
	/*margin-left: 20px;*/
	width: 525px;
	height: 40px;
	/*background-color: #ff0000;*/
}
.sm_view div#header_title{
	background-image: url(../img/head_title_sm.png);
	width: 90vw;
	height: 6vw;
	transition: all .3s;
}
.sm_view div.header_sml div#header_title{
	width: 80vw;
	height: 5vw;
}


/*フッタ用===========================================*/
div#footer{
	background-color: #eeeeee;
	text-align: center;
	/*border-top: solid 1px #eeeeee;*/
}
.pc_view div#footer{
	width: 100%;
	position: absolute;
	bottom: 0;
	z-index: 100 !important;
	-webkit-transform: translate3d(0,0,0);
}
.sm_view div#footer{
	position: relative;
	z-index: 100;
}

div#footer_inner{
	/*text-align: left;*/
}
.pc_view div#footer_inner{
	margin: 0 auto;
	min-width: 1000px;/*W*/
	/*max-width: 1200px;/*W*/
	box-sizing: border-box;
}
.sm_view div#footer_inner{
}


/*SNS*/
div#footer_sns{
	border-bottom: solid 1px #dddddd;
}
.pc_view div#footer_sns{
	padding: 20px 30px;
	/*margin: 0 30px/*●*/;
}
.sm_view div#footer_sns{
	padding: 10px 10px;
	/*margin: 0 10px;*/
}
div#footer_official,
div#footer_share{
	display: inline-block;
	vertical-align: top;
	white-space: nowrap;
	width: auto;
}
.pc_view div#footer_official,
.pc_view div#footer_share{
	height: 42px;
	margin: 0 20px;
}
.pc_view div#footer_official:before,
.pc_view div#footer_share:before{
	display: inline-block;
	vertical-align: top;
	margin: 0 5px;
	font-size: 13px;
	line-height: 42px;
	color: #999999;
}
.sm_view div#footer_official,
.sm_view div#footer_share{
	margin: 10px 10px;
}
.sm_view div#footer_official:before,
.sm_view div#footer_share:before{
	display: block;
	font-size: 13px;
	line-height: 25px;
	text-align: center;
	color: #999999;
}

div#footer_share:before{
	content:"Share";
}
div#footer_official:before{
	content:"Official Account";
}

/*メニュー*/
.pc_view div#footer_menu{
	background-color: #ffffff;
}

.pc_view div#footer_menu div.smenu{
	display: inline-block;
	vertical-align: top;
	position: relative;
	border-left:solid 1px #eeeeee;
}
.pc_view div#footer_menu div.smenu:last-of-type{
	border-right:solid 1px #eeeeee;
}
.pc_view div#footer_menu div.smenu>a{
	display: inline-block;
	font-size: 13px;
	line-height: 45px;
	/*font-weight: bold;*/
	padding: 0 15px;
	color: #666666;
	transition: all .3s;
	cursor: pointer;
}

.display_device div#footer_menu div.smenu>a:hover{
	text-decoration: none;
	background-color: #f6f6f6;
}

.sm_view div#footer_menu{
	background-color: #ffffff;
}

.sm_view div#footer_menu div.smenu{
	display: block;
	position: relative;
	border-bottom: solid 1px #eeeeee;
}
.sm_view div#footer_menu div.smenu:last-of-type{
	border: none;
}
.sm_view div#footer_menu div.smenu>a{
	display: block;
	font-size: 4.5vw;
	line-height: 3;
	padding: 0 15px;
	color: #333333;
	cursor: pointer;
}



/*コピーライト*/
p#footer_cpy{
	font-size: 12px;
	line-height: 20px;
	text-align: left;
	letter-spacing: 0;
	color: #999999;
	margin-top: 3px;
}
.pc_view p#footer_cpy{
	display: inline-block;
	vertical-align: top;
	padding: 10px 30px/*●*/;
}
.sm_view p#footer_cpy{
	padding: 10px 15px/*●*/;
}

/*リンクボタン*/
div#footer_link{
	text-align: left;
}
.pc_view div#footer_link{
	display: inline-block;
	vertical-align: top;
	padding: 10px 30px;
}
.sm_view div#footer_link{
	padding: 10px 5px;
}
div#footer_link>a{
	display: inline-block;
	color: #666666;
	font-size: 12px;
	line-height: 26px;
	text-decoration: none;
	padding: 0 10px;
	margin-bottom: 10px;
	border-right: solid 1px #dddddd;
	transition: all .3s;
}
div#footer_link>a:last-child{
	border: none;
}

.display_device #footer_link>a:hover{
	color: rgba(134,28,60,1);
	text-decoration: none;
}


/*SNS================================================*/
a.sns_icon{
	position: relative;
	display: inline-block;
	vertical-align: top;
	text-decoration: none;
	color: #aaaaaa;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	opacity: .6;
	transition: all .3s;
}
.display_device a.sns_icon:hover{
	opacity: 1;
}
a.sns_icon:before{
	content: "";
	display: block;
	padding-top: 100%;
}
.pc_view a.sns_icon{
	width: 42px;
	margin: 0 5px;
}
.sm_view a.sns_icon{
	width: 50px;
	margin: 0 5px;
}
a.sns_icon.icon_fb{	background-image: url(../img/sns_icon_facebook.svg);	}
a.sns_icon.icon_tw{	background-image: url(../img/sns_icon_twitter.svg);	}
a.sns_icon.icon_is{	background-image: url(../img/sns_icon_instagram.svg);	}
a.sns_icon.icon_ln{	background-image: url(../img/sns_icon_line.svg);	}


/*ページTOPボタン=========================================*/
div#to_top{
	position: fixed;
	z-index: 100;
	box-sizing: border-box;
	background-color: rgba(0,0,0,.3);
	background-clip: content-box;
	transition: all .2s;
	cursor: pointer;
}
div#to_top:before{
	content: "";
	display: block;
	padding-top: 100%;
}
div#to_top:after{
	content: "";
	display: block;
	position: absolute;
	box-sizing: border-box;
	left: 40%;
	top: 42%;
	width: 20%;
	height: 20%;
	border-top: solid 3px #ffffff;
	border-left: solid 3px #ffffff;
	-webkit-transform: rotateZ(45deg);
	-ms-transform: rotateZ(45deg);
	transform: rotateZ(45deg);
}

.pc_view div#to_top{
	padding: 15px;
	width: 80px;
	right: -80px;
	bottom: 5px;
}
.sm_view div#to_top{
	padding: 10px;
	width: 60px;
	right: -60px;
	bottom: 40px;
}
div#to_top.btn_show{
	right: 5px;
}
.display_device div#to_top:hover{
	background-color: rgba(134,28,60,.8);
}

/*PC WIDEのグローバルメニュー==================================*/
.pc_view div#header_menu{
	position: absolute;
	right: 200px;
	top: 42px;
	text-align: right;
	width: calc(100% - 220px);
	/*min-width: 500px;*/
	height: 54px;
	overflow: hidden;
	font-size: 0;
	line-height: 0;
	letter-spacing: 0;
	/*background: #ff0000 !important;*/
}
.pc_view div#header_menu:after{
	content: "";
	display: inline-block;
	width: 1px;
	height: 52px;
	background: transparent;
	vertical-align: middle;
}

.pc_view div#header_menu>div{
	display: inline-block;
	vertical-align: middle;
	width: calc(100% - 2px);
}
.pc_view div#header_menu div.smenu{
	display: inline-block;
	vertical-align: top;
	position: relative;
	margin: 0 17px 0 0;
}
.pc_view div#header_menu div.smenu:before{
	content: "";
	position: absolute;
	display: block;
	width: 5px;
	height: 5px;
	right: -11px;
	top: 11px;
	background: #bbbbbb;
	border-radius: 50%;
}
.pc_view div#header_menu div.smenu:last-of-type{
	/*margin: 0;*/
}
.pc_view div#header_menu div.smenu:last-of-type:before{
	display: none;
}
.pc_view div#header_menu div.smenu>a{
	display: inline-block;
	position: relative;
	font-size: 0;
	line-height: 0;
	letter-spacing: 0;
	height: 26px;
	background-size: auto 100%;
	background-repeat: no-repeat;
	background-position: center center;
	padding: 0 3px;
	/*font-size: 15px;
	line-height: 23px;
	font-weight: bold;
	color: #333333;*/
	/*background: #dddddd;*/
	transition: all .3s;
}
.pc_view div#header_menu div.smenu[data-smain="0"]>a{
	background-image: url(../img/menu0.png);
	width: 35px;
}
.pc_view div#header_menu div.smenu[data-smain="1"]>a{
	background-image: url(../img/menu1.png);
	width: 55px;
}
.pc_view div#header_menu div.smenu[data-smain="2"]>a{
	background-image: url(../img/menu2.png);
	width: 58px;
}
.pc_view div#header_menu div.smenu[data-smain="3"]>a{
	background-image: url(../img/menu3.png);
	width: 145px;
}
.pc_view div#header_menu div.smenu[data-smain="4"]>a{
	background-image: url(../img/menu4.png);
	width: 110px;
}
.pc_view div#header_menu div.smenu[data-smain="5"]>a{
	background-image: url(../img/menu5.png);
	width: 76px;
}
.pc_view div#header_menu div.smenu[data-smain="6"]>a{
	background-image: url(../img/menu6.png);
	width: 80px;
}
.pc_view div#header_menu div.smenu[data-smain="99"]>a{
	background-image: url(../img/menu99.png);
	width: 96px;
}
/*
.pc_view div#header_menu div.smenu:nth-child(8)>a{
	background-image: url(../img/menu_en.png);
	width: 61px;
}
*/
.pc_view div#header_menu div.smenu[data-smain="100"]>a{
	background-image: url(../img/menu_jp.png);
	width: 70px;
}


.pc_view div#header_menu div.smenu>a:after{
	content: "";
	display: block;
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 3px;
	background-color: transparent; 
	transition: all .3s;
}
.display_device div#header_menu div.smenu>a:hover:after{
	background-color: rgba(0,0,0,.1); 
}

.pc_view[data-cnt="0"] div#header_menu div.smenu[data-smain="0"]>a:after,
.pc_view[data-cnt ="1"] div#header_menu div.smenu[data-smain="1"]>a:after,
.pc_view[data-cnt ="2"] div#header_menu div.smenu[data-smain="2"]>a:after,
.pc_view[data-cnt ="3"] div#header_menu div.smenu[data-smain="3"]>a:after,
.pc_view[data-cnt ="4"] div#header_menu div.smenu[data-smain="4"]>a:after,
.pc_view[data-cnt ="5"] div#header_menu div.smenu[data-smain="5"]>a:after,
.pc_view[data-cnt ="6"] div#header_menu div.smenu[data-smain="6"]>a:after,
.pc_view[data-cnt ="7"] div#header_menu div.smenu[data-smain="7"]>a:after,
.pc_view[data-cnt ="8"] div#header_menu div.smenu[data-smain="8"]>a:after,
.pc_view[data-cnt ="9"] div#header_menu div.smenu[data-smain="9"]>a:after{
	background-color: rgba(134,28,60,1); 
}

/*PC narrow・タブレット・スマホでは表示しない*/
.pc_view.display_device.narrow_view div#header_menu,
.pc_view.touch_device div#header_menu,
.sm_view div#header_menu{
	display: none !important;
}

/*横から出てくるメニュー==========================================*/
div#smenu_btn{
	z-index: 1000;
	position: fixed;
	
	/*background-color: rgba(134,28,60,.5);*/
	cursor: pointer;
}
.display_device div#smenu_btn{
	transition: all .3s;
}
.pc_view div#smenu_btn{
	width: 70px;
	height: 70px;/*★*/
	right: 10px;
	top: 30px;
}
/*narrow_view のみ表示*/
.pc_view.display_device.wide_view div#smenu_btn{
	display: none !important;
}
.sm_view div#smenu_btn{
	background-color: rgba(134,28,60,.5);
	width: 14vw;
	height: 14vw;/*★*/
	right: 2vw;
	top: 2vw;
}
.touch_device div#smenu_btn:active,
.display_device div#smenu_btn:hover{
	background-color: rgba(0,0,0,.05);
}
div#smenu_btn>div{
	position: absolute;
	width: 50%;
	height: 2px;
	left: 25%;
	background-color: #222222;
	transition: all .3s;
}
.sm_view div#smenu_btn>div{
	background-color: #ffffff;
}
div#smenu_btn>div:nth-child(1){top: calc(30% - 1px);}
div#smenu_btn>div:nth-child(2){top: calc(50% - 1px);}
div#smenu_btn>div:nth-child(3){top: calc(70% - 1px);}

div#smenu_btn.opened>div:nth-child(2){
	background-color: #ffffff;
	width: 0;
	left:50%;
}
div#smenu_btn.opened>div:nth-child(1),
div#smenu_btn.opened>div:nth-child(3){
	background-color: #ffffff;
	width: 70%;
	left: 15%;
	top: calc(50% - 1px);
}
div#smenu_btn.opened>div:nth-child(1){
	-webkit-transform: rotateZ(45deg);
	-ms-transform: rotateZ(45deg);
	transform: rotateZ(45deg);
}
div#smenu_btn.opened>div:nth-child(3){
	-webkit-transform: rotateZ(-45deg);
	-ms-transform: rotateZ(-45deg);
	transform: rotateZ(-45deg);
}

div#side_menu{
	position: fixed;
	z-index: 999;
	right: -100%;
	top: 0;
	height: 100%;
	background-color: rgba(134,28,60,1);
	transition: right .3s;
}
div#side_menu.opened{
	right: 0px !important;
}
.pc_view div#side_menu{
	padding: 120px 20px 20px 20px;
}
.sm_view div#side_menu{
	padding: 20vw 3vw 3vw 3vw;
}
div#side_menu>div.smenu>a{
	display: block;
	text-align: center;
	letter-spacing: 0;
	/*font-weight: bold;*/
	color: #ffffff;
	/*border-bottom: solid 1px rgba(255,255,255,.3);*/
}
div#side_menu>div.smenu:first-child>a{
	/*border-top: solid 1px rgba(255,255,255,.3);*/
}
.pc_view div#side_menu>div.smenu>a{
	font-size: 20px;
	line-height: 3;
	padding: 0 15px;
	transition: background-color .3s;
}
.sm_view div#side_menu>div.smenu>a{
	font-size: 5vw;
	line-height: 2.5;
	padding: 0 3vw;
}
.display_device div#side_menu>div.smenu>a:hover{
	background-color: rgba(255,255,255,.2);
}

div#side_menu>div.smenu>a:hover{
	text-decoration: none;
}
div#side_menu>div.smenu>a:hover{
	text-decoration: none;
}

[data-cnt ="0"] div#side_menu div.smenu[data-smain="0"]>a,
[data-cnt ="1"] div#side_menu div.smenu[data-smain="1"]>a,
[data-cnt ="2"] div#side_menu div.smenu[data-smain="2"]>a,
[data-cnt ="3"] div#side_menu div.smenu[data-smain="3"]>a,
[data-cnt ="4"] div#side_menu div.smenu[data-smain="4"]>a,
[data-cnt ="5"] div#side_menu div.smenu[data-smain="5"]>a,
[data-cnt ="6"] div#side_menu div.smenu[data-smain="6"]>a,
[data-cnt ="7"] div#side_menu div.smenu[data-smain="7"]>a,
[data-cnt ="8"] div#side_menu div.smenu[data-smain="8"]>a,
[data-cnt ="9"] div#side_menu div.smenu[data-smain="9"]>a{
	background-color: #ffffff;
	color: rgba(134,28,60,1); 
}


div#smenu_bg{/*メニュー開いた時用*/
	position: fixed;
	z-index: 998;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	/*background: rgba(0,0,0,.5);*/
	background-color: transparent;
	display: none;
}


