@charset "UTF-8";

/*******************************************
*
* css for page frame
* ver 1.0
*
********************************************/

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500&display=swap');

@font-face {
	font-family: 'kure_icf';
	src:
		url('fonts/kure_icf.ttf?qt7r3j') format('truetype'),
	    url('fonts/kure_icf.woff?qt7r3j') format('woff'),
	    url('fonts/kure_icf.svg?qt7r3j#kure_icf') format('svg');
	font-weight: normal;
	font-style: normal;
	font-display: block;
}

#gavi ul > li:after,
[class^='icf_']:after,
[class^='icf_']:before,
a > span:after,
a > span:before,
a:after,
a:before{
	font-family: 'kure_icf' !important;
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;

	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}


/* ==========================================================
*
* Basic Setting
*
========================================================== */

html,
body {
    width: 100%;
    min-height:100%;
}

html {
    font-size: 62.5%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-text-size-adjust: 100%;
    font-feature-settings: "palt";
}

body {
    font-size: 1.4rem;
    line-height: 125%;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight:400;
    background-color:#ffffff;
    letter-spacing:0.05em;
}


body.locked {
    height: 100%;
    overflow: hidden;
}

input,
textarea{
	font-family: 'Noto Sans JP', sans-serif;
}

*,
*:before,
*:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    backface-visibility:hidden;
    -webkit-backface-visibility:hidden;
}

a{
	color:#404f6f;
	text-decoration:none;
}

a:link{
	color:#404f6f;
}

a > img{
	transition: all 0.3s ease-out;
	-webkit-transition: all 0.3s ease-out;
}

.pc a:hover{
	color:#404f6f;
	text-decoration:underline;
}

.pc a:hover > img{
	opacity:0.5;
}


/*
a[href^="http"][target="_blank"] > span:after{
	content: "\f08e";
	color:#fa0046;
	margin-left: 0.25em;
}

a[href$=".pdf"][target="_blank"] > span:after {
	content: "\eadf";
	color:#fa0046;
	margin-left: 0.25em;
}
*/

.innerFrame{
	display:block;
	width:100%;
	max-width:1100px;
	/*min-width: 950px;*/
	margin:0 auto;
	position:relative;
}


/* for TB ---------------------------------*/
@media screen and ( max-width:1019px) {

	.innerFrame{
		padding:0 10px;
	}
}

/* for SP ---------------------------------*/
@media screen and ( max-width:896px) {
	.innerFrame{
		width:100%;
		padding: 0 20px;
	}
}

/* ==========================================================
*
* ヘッダ
*
========================================================== */
header{
	display:block;
	width:100%;
	height:120px;
	background-color:#ffffff;
	position:relative;
	z-index:1000;
	min-width:1100px;
}

header a:hover{
	text-decoration:none!important;
}

#titleBox{
	display:block;
	overflow:hidden;
	width:100%;
	height:80px;
	position:relative;
}

/*サイトロゴ*/
#hdLogo{
	display:inline-block;
	overflow:hidden;
	width:116px;
	height:43px;
    position:absolute;
    top:50%;
    left:20px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}


ul#exLink{
	display:inline-block;
	overflow:hidden;
    position:absolute;
    top:50%;
    right:0;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}

ul#exLink li{
	display:inline-block;
	overflow:hidden;
	margin:0 2em;
}

ul#exLink li > a{
	display:block;
	overflow:hidden;
	font-size: 1.3rem;
	color:#000000;
	line-height:125%;
}




/* for TB ---------------------------------*/
@media screen and ( max-width:1019px) {

	header{
		/**/
	}
}

/* for SP ---------------------------------*/
@media screen and ( max-width:896px) {
	header{
		height:14vw;
		position:fixed;
		top:0;
		left:0;
		min-width:100%;
	}
	#titleBox{
		height:100%;
		position:relative;
	}

	#hdLogo{
		width:17vw;
	    height: auto;
	    position:absolute;
	    top:50%;
	    left:20px;
	    transform: translateY(-50%);
	    -webkit-transform: translateY(-50%);
	}

	#hdLogo img{
		width:100%;
		height:auto;
	}

	ul#exLink{
		display:none;
	}
}



/*------------------------------------------
 グローバルナビ
 ------------------------------------------*/
nav{
	/**/
}



#gavi{
	clear:both;
	display:block;
	/*overflow:hidden;*/
	background-color:#f4f4f4;
}

#gavi > ul{
	display:block;
	/*overflow:hidden;*/
	width:100%;
	max-width:1100px;
	margin:0 auto;
	position:relative;
	text-align:center;
	letter-spacing:-.4em;
}

#gavi > ul > li{
	display:inline-block;
	/*overflow:hidden;*/
	letter-spacing:normal;
	font-size:1.6rem;
	line-height:40px;
	font-weight:500;
	width:25%;
	padding:3px 8px;
	position:relative;
}

#gavi > ul > li > a{
	display:block;
	overflow:hidden;
	line-height:34px;
	color:#000000;
	border-radius: 5px;
	-webkit-border-radius: 5px;
}

#gavi > ul > li > a:hover,
#gavi > ul > li.current > a{
	background-color:#d80c25;
	color:#ffffff;
}
#gavi > ul > li.current > a{
	/*pointer-events:none;*/
}

#products #gavi > ul > li:nth-child(1) > a,
#i556series #gavi > ul > li:nth-child(2) > a,
#cm_movie #gavi > ul > li:nth-child(3) > a,
#faq #gavi > ul > li:nth-child(4) > a{
	background-color:#d80c25;
	color:#ffffff;
}

#gavi > ul > li:first-child:before{
	display:inline-block;
	content:"|";
	color:#c5c5c5;
	width:3px;
	position:absolute;
	left: 0;
    top:50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}

#gavi > ul > li:after{
	display:inline-block;
	content:"|";
	color:#c5c5c5;
	width:3px;
	position:absolute;
	right: 0;
    top:50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}

/*プルダウンメニュー*/
#gavi > ul > li > ul{
	display:block;
	overflow: hidden;
    width: 100%;
    position: absolute;
    top: 30px;
    left: 0;
    padding-top:0;
	background:url('../images/pulltop.png') no-repeat 50% 0;

    height:0;
	opacity:0;
	-webkit-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
}

#gavi > ul > li > ul > li{
	display: block;
	overflow:hidden;
	font-size:1.6rem;
	line-height:125%;
	border-bottom:1px solid #ebebeb;
    background-color: #d7d7d7;
}

#gavi > ul > li > ul > li > a{
	display:block;
	overflow:hidden;
	padding:1em 0;
	color:#000000;
}

.pc #gavi > ul > li > ul > li > a:hover{
	background-color:#d80d25;
	color:#ffffff;
}

.pc #gavi > ul > li:hover > ul{
	/*display:block;*/
	height:auto;
	height:initial;
  	top: 40px;
    opacity:1.0;
    padding-top:10px;
}

/* for TB ---------------------------------*/
@media screen and ( max-width:1019px) {


}


/* for SP ---------------------------------*/
@media screen and ( max-width:896px) {

	#gavi{
		width:100vw;
		height:100vh;
		overflow-y:auto;
		background-color:#d70c24;
		padding:14vw 20px 0;

		position:absolute;
		top:0;
		left:-100vw;

		transition: all 0.3s ease-out;
		-webkit-transition: all 0.3s ease-out;
	}

	#gavi > ul{
		text-align:left;
	}

	#gavi > ul > li{
		display:block;
		line-height:125%;
		width:100%;
		padding:3px 8px;
		border-bottom:1px solid #ef9ea8;
	}

	#gavi > ul > li > a{
		font-size:1.8rem;
		line-height:125%;
		padding:1em 0;
		color:#ffffff;
		border-radius:0;
		-webkit-border-radius:0;
	}

	#gavi > ul > li:first-child:before,
	#gavi > ul > li:after{
		content:"";
	}
	#gavi > ul > li > a:after{
		content:"\f054";
		color:#ffffff;
		float:right;
	}
	#gavi > ul > li > a.hasSub:after{
		content:"\f078";
	}
	#gavi > ul > li > a.opm:after{
		content: "\f077";
	}

	/*プルダウンメニュー*/
	#gavi > ul > li > ul{
		display:none;
		overflow: hidden;
	    width: 100%;
	    position: relative;
	    top: auto;
	    left: auto;
	    padding-top:0;
		background:none;
		border-top:1px solid #ef9ea8;

	    height:initial;
		opacity:1.0;
		-webkit-transition:unset;
		transition:unset;
	}

	#gavi > ul > li > ul > li{
		font-size:1.4rem;
		line-height:125%;
		border-bottom:none;
	    background-color:unset;
	}

	#gavi > ul > li > ul > li > a{
		padding:1em 0;
		color:#ffffff;
	}

}

/*------------------------------------------
 スマホナビ
 ------------------------------------------*/

/*開閉ボタン*/
a#menuBtn{
	display:none;
	width:12vw;
	height:12vw;
	position:absolute;
	top: 50%;
    right: 0;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    z-index:1100;
}

a#menuBtn > p{
	display:block;
	overflow:hidden;
	width:100%;
	height:100%;
	position:relative;
	margin-top:-2px;
}

a#menuBtn > p > span{
	display:block;
	overflow:hidden;
	width:4vw;
	height:3px;
	background-color:#d80c25;
	position:absolute;
    left:50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);

	transition: all 0.5s ease;
	-webkit-transition: all 0.5s ease;
	transform-origin: 50% 50%;
}

a#menuBtn > p > span:nth-child(1){
	top:40%;
}

a#menuBtn > p > span:nth-child(2){
	top:60%;
}


/*スマホナビフレーム*/
#spNavi{
	display:none;
}

/* for SP ---------------------------------*/
@media screen and ( max-width:896px) {

	a#menuBtn{
		display:inline-block;
	}

	#spNavi{
		display:block;
		overflow:hidden;
		margin-top:2em;
	}

	#spNavi > ul{
		display:block;
		overflow:hidden;
		letter-spacing:-.4em;
	}

	#spNavi > ul > li{
		display:inline-block;
		overflow:hidden;
		width:33.3%;
		letter-spacing:normal;
	}

	#spNavi > ul > li > a{
		display:block;
		overflow:hidden;
		text-align:center;
		color:#ffffff;
		font-size:1.4rem;
		padding:1em 0;
	}

}


/*スマホナビ本体*/
#naviBody{
	display:block;
	overflow:hidden;
	width:100%;
	padding:0 0 0;
}


#naviBody ul{
	display:block;
	overflow:hidden;
}


/*------------------------------------------
 Open Menu
 ------------------------------------------*/
@media screen and ( max-width:896px) {

	body.opmenu {
        height:100%;
        overflow:hidden;
    }

    .opmenu a#menuBtn > p > span{
    	background-color:#ffffff;
    }

	.opmenu a#menuBtn > p > span:nth-child(1){
		transform: rotate(45deg);
		width: 60%;
		top: 50%;
		left: 25%;
	}

	.opmenu a#menuBtn > p > span:nth-child(2){
		transform: rotate(135deg);
		width: 60%;
		left: 25%;
		top: 50%;
	}

	.opmenu #gavi{
		left:0;
	}

}


/* ==========================================================
*
* 本文
*
========================================================== */
#mainFrame{
	display:block;
	/*overflow:hidden;*/
	position:relative;
    width: 100%;
    min-width: 1100px;
}

#contentBody{
	display:block;
	overflow:hidden;
	position:relative;
	width:100%;
	/*width:1100px;*/
	margin:0 auto;
}

#sideNav{
	display:block;
	overflow:hidden;
	width: 215px;
	margin-right:55px;
	padding-top:36px;
	float:left;
}

#sideNav a:hover{
	text-decoration:none;
}

#sideNav h2{
	display:block;
	overflow:hidden;
	font-size:1.4rem;
	line-height:125%;
	margin-bottom:25px;
	position:relative;
}

#sideNav h2:before{
	content:"";
	width:100%;
	height:1px;
	border-top:1px solid #dadada;
	position:absolute;
	bottom:1px;
	right:0;
}

#sideNav h2 > span{
	display:inline-block;
	background-color:#ffffff;
	position:relative;
	padding-right:0.5em;
	z-index:10;
}

a.navTab{
	display:none;
}

.navBody{
	display:block;
	overflow:hidden;
}

#pageBody{
	display:block;
	overflow:hidden;
	padding-top:36px;
	width:100%;
}

#sideNav + #pageBody{
	width:calc(100% - 270px);
}


/* for TB ---------------------------------*/
@media screen and ( max-width:1019px) {


}


/* for SP ---------------------------------*/
@media screen and ( max-width:896px) {

	#mainFrame{
		/*padding-top: 14vw;*/
		overflow:hidden;
    	margin-top: 14vw;
    	min-width:100%;
	}

	/*#mainFrame:before{
		display:inline-block;
		overflow:hidden;
		height:14vw;
		content:"";
		margin-top: -50px;
		vertical-align:14vw;
	}*/

	#contentBody{
		width:100%;
		margin:0 auto;
	}

	#contentBody > .innerFrame{
		padding:0;
	}


	#sideNav{
		width:100%;
		margin-right:0;
	    padding-top:0;
	    float:none;
	}

	#sideNav h2{
		display:none;
	}

	a.navTab{
		display:block;
		overflow:hidden;
		font-size:1.4rem;
		line-height:125%;
		padding:10px;
		color:#000000;
		background-color:#f4f4f4;
	}

	a.navTab:after{
		content: "\f078";
		color:#d80c25;
		float:right;
	}

	a.navTab.opm:after{
		content: "\f077";
	}

	.navBody{
		display:none;
	}


	#pageBody{
		padding:40px 20px 0;
		width:100%!important;
	}

}


/*------------------------------------------
 パンくずリスト
 ------------------------------------------*/
#breadcrumb{
	display:block;
	overflow:hidden;
	/*padding: 1em 0;*/
	height:60px;
	color:#727171;
}

#breadcrumb > ul{
	display:inline-block;
	overflow:hidden;
	font-size: 1.2rem;
	/*line-height: 125%;*/
	line-height: 60px;
	float:left;
}

#breadcrumb > ul > li{
	display:inline-block;
	overflow: hidden;
}

#breadcrumb > ul > li:after{
	content:">";
	margin-left: 5px;
}
#breadcrumb > ul > li:last-child::after{
	content:"";
}

#breadcrumb > ul > li > a{
	color:#717071;
}

#breadcrumb > ul > li > a:hover{
	color:#404f6f;
}

#breadcrumb > p{
	display:inline-block;
	overflow:hidden;
	font-size: 1.2rem;
	line-height: 125%;
	color:#717071;
	float:right;
}



/* for TB ---------------------------------*/
@media screen and ( max-width:1019px) {


}


/* for SP ---------------------------------*/
@media screen and ( max-width:896px) {

	#breadcrumb{
		display:none;
	}

}


/*------------------------------------------
 メインタイトル
 ------------------------------------------*/
h1{
	display:block;
	overflow:hidden;
	width:100%;
	height:100px;
	text-align:center;
	background:url("../images/ttl_bg.png") 50% 50% no-repeat;
	background-size:cover;
	background-color:#cccccc;
	position: relative;
}

h1 > span{
	display:inline-block;
	overflow:hidden;
	font-size:3.0rem;
	/*font-weight:bold;*/
	font-weight:500;
	line-height:125%;
	position:absolute;
	top:50%;
    left:50%;;
    transform: translate(-50%,-50%);
    -webkit-transform: translate(-50%,-50%);
}



/* for TB ---------------------------------*/
@media screen and ( max-width:1019px) {


}


/* for SP ---------------------------------*/
@media screen and ( max-width:896px) {

	h1{
		height:14vw;
	}

	h1 > span{
		display:block;
		position:relative;
		font-size:2.1rem;
		width:100%;
		padding:0 1em;
	}

}

/*------------------------------------------
 検索窓
 ------------------------------------------*/
#serchBox{
	display:block;
	overflow:hidden;
	margin-bottom:30px;
}

#serchBox form{
	display:block;
	overflow:hidden;
	letter-spacing:-.4em;
	border-radius:5px;
	-webkit-border-radius:5px;
}

#serchBox input{
	border:none;
	padding:0.75em 0.5em;
	letter-spacing:normal;
}
#serchBox input:focus{
	outline:none;
}

#serchBox input[type="text"]{
	background-color:#f4f4f4;
	width:calc(100% - 60px);
	border-radius: 0;
	border-top-left-radius: 5px;
	-webkit-border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
	-webkit-border-bottom-left-radius: 5px;
}

#serchBox input[type="submit"]{
	background-color:#d80c25;
	color:#ffffff;
	width:60px;
	cursor:pointer;
	-webkit-appearance: none;
	border-radius: 0;
	border-top-right-radius: 5px;
	-webkit-border-top-right-radius: 5px;
	border-bottom-right-radius: 5px;
	-webkit-border-bottom-right-radius: 5px;
}

#serchBox form label.search_statuses{
	display:inline-block;
	letter-spacing:normal;
	font-size:1.4rem;
	line-height:125%;
	margin-top:0.5em;
	cursor:pointer;
}

label.search_statuses > *{
	vertical-align:middle;
}


/* for TB ---------------------------------*/
@media screen and ( max-width:1019px) {


}


/* for SP ---------------------------------*/
@media screen and ( max-width:896px) {

	#serchBox{
		margin-bottom:0;
		border-bottom: 1px solid #c3c3c3;
	}

	#serchBox .navBody{
		padding:20px 20px;
	}

	#serchBox input{
		font-size:1.6rem;
		padding:0.25em 0.5em;
		border-radius: 0;
	}
}


/*------------------------------------------
 カテゴリナビ
 ------------------------------------------*/
#ctglist,
.subNav{
	display:block;
	overflow:hidden;
}

.subNav{
	margin-bottom:30px;
}


#ctglist ul,
.subNav ul{
	display:block;
	overflow:hidden;
	background-color:#f4f4f4;
	border-radius: 5px;
    -webkit-border-radius: 5px;
}

#ctglist ul > li,
.subNav ul > li{
	display:block;
	overflow:hidden;
	border-bottom:1px solid #cccccc;
}
#ctglist ul > li:last-child,
.subNav ul > li:last-child{
	border-bottom:none;
}

#ctglist ul > li > a,
.subNav ul > li > a{
	display:block;
	overflow:hidden;
	line-height:125%;
	padding:1.2em 1em;
	font-size:1.4rem;
	font-weight:500;
	color:#000000;
}

#ctglist ul > li > a:hover,
#ctglist ul > li.current > a,
.subNav ul > li > a:hover,
.subNav ul > li.current > a{
	background-color:#d80c25;
	color:#ffffff;
}




/* for TB ---------------------------------*/
@media screen and ( max-width:1019px) {


}


/* for SP ---------------------------------*/
@media screen and ( max-width:896px) {

	#ctglist,
	.subNav{
		border-bottom: 1px solid #c3c3c3;
	}

	#ctglist,
	.subNav{
		margin-bottom:0;
	}

	#ctglist ul,
	.subNav ul{
		border-radius:0;
	    -webkit-border-radius:0;
	}

}


/*------------------------------------------
 ページタイトル
 ------------------------------------------*/
#pageBody h2{
	display:block;
	/*overflow:hidden;*/
	text-align:center;
	font-size:2.4rem;
	/*font-weight:bold;*/
	font-weight:500;
	line-height:125%;
	margin-bottom:45px;
}

#pageBody h2 > span{
	display:inline-block;
	/*overflow:hidden;*/
	position:relative;
}

#pageBody h2 > span:before,
#pageBody h2 > span:after{
	border-top: 1px solid #000000;
	content: "";
	width:1.5em;
	height:1px;
	margin-top:0.6em;
}

#pageBody h2 > span:before{
	margin-right:1em;
	float:left;
}
#pageBody h2 > span:after{
	margin-left:1em;
	float:right;
}



/* for TB ---------------------------------*/
@media screen and ( max-width:1019px) {


}


/* for SP ---------------------------------*/
@media screen and ( max-width:896px) {

	#pageBody h2{
		font-size:2.0rem;
		margin-bottom:40px;
	}

	#pageBody h2 > span:before,
	#pageBody h2 > span:after{
		display:none;
		/*width:1.0em;*/
	}

	/*#pageBody h2 > span:before{
		margin-right:0.5em;
	}
	#pageBody h2 > span:after{
		margin-left:0.5em;
	}*/
}


/*------------------------------------------
 コラムタイトル
 ------------------------------------------*/
#pageBody h3{
	display:block;
	overflow:hidden;
	text-align:center;
	font-size:2.0rem;
	/*font-weight:bold;*/
	font-weight:500;
	line-height:125%;
	color:#ffffff;
	background-color:#000000;
	padding:0.35em 1em;
	margin-bottom:30px;
}

#pageBody h3 > a{
	display:block;
	overflow:hidden;
	color:#ffffff;
}

#pageBody h3 > a:hober{
	text-decoration:underline;
}

/* for SP ---------------------------------*/
@media screen and ( max-width:896px) {

	#pageBody h3{
		font-size:1.6rem;
		padding:0.25em 1em;
		margin-bottom:15px;
	}
}

/*------------------------------------------
 アンカータブ
 ------------------------------------------*/
#anchorTab{
	display:block;
	overflow:hidden;
	margin-bottom:30px;
}


#anchorTab ul{
	display:block;
	overflow:hidden;
	letter-spacing:-.4em;
	line-height:0;
	border-bottom:1px solid #dadada;
}

#anchorTab ul > li{
	display:inline-block;
	overflow:hidden;
	letter-spacing:normal;
	padding:0 1em;
}

#anchorTab ul > li > a{
	display:block;
	overflow:hidden;
	padding:1em 0;
	font-size:1.4rem;
	line-height:125%;
	border-bottom:2px solid #ffffff;
	color:#000000;
}

#anchorTab ul > li > a:hover{
	text-decoration:none;
	color:#d80c25;
	border-color:#d80c25;
}


/* for SP ---------------------------------*/
@media screen and ( max-width:896px) {

	#anchorTab ul{
		border-top:1px solid #dadada;
	}
}


/*------------------------------------------
 ページネーション
 ------------------------------------------*/
#pager{
	clear:both;
	display:block;
	overflow:hidden;
	margin-bottom:50px;
	text-align:center;
	border-top:1px solid #f3f4f5;
	padding-top:1em;
}

#pager h2{
	display:none;
}


#pager ul{
	display:block;
	overflow:hidden;
	letter-spacing:-.4em;
}

#pager ul > li{
	display:inline-block;
	overflow:hidden;
	letter-spacing:normal;
	border-right: 1px solid #cccccc;
}

#pager ul > li:last-child{
	border-right:none;
}

#pager ul > li > a,
#pager ul > li > span{
	display:block;
	overflow:hidden;
    padding:0.25em 0.5em;
	min-width:3em;
	font-size: 1.6rem;
	line-height:125%;
    color: #000000;
    text-align:center;
}

#pager ul > li > a:hover{
	text-decoration:none;
	background-color:#d80c25;
	color:#ffffff;
}

#pager ul > li > span.current{
	background-color:#d80c25;
	color:#ffffff;
}

a.prev,
a.next{
	font-weight:bold;
}

a.prev:before,
a.next:after{
	display:inline-block;
	overflow:hidden;
    color: #d80c25;
	font-size: 1.6rem;
    line-height: 125%;
    padding-top:2px;
}


a.prev:before {
	content: "\f053";
    margin-right: 0.5em;
    float:left;
}


a.next:after {
    content: "\f054";
    margin-left: 0.5em;
    float:right;
}

a:hover.prev:before,
a:hover.next:after{
	color:#ffffff;
}

/*------------------------------------------
 最終ライン
 ------------------------------------------*/
#endline{
	clear:both;
	display:block;
	overflow:hidden;
	height:110px;
	/*text-align:right;
	padding:30px 30px;*/
	position:relative;
}


a#toTop{
	display:inline-block;
	overflow:hidden;
	width:50px;
	height:50px;
	text-align:center;
	color:#ffffff;
	background-color:#000000;
	border:1px solid #ffffff;
	border-radius: 5px;
	-webkit-border-radius: 5px;

	position:fixed;
	bottom:40px;
	right:30px;

	transition: all 0.3s ease-out;
	-webkit-transition: all 0.3s ease-out;
	opacity:0.0;
	pointer-events:none;
}


a#toTop::before{
	content: "\f0d8";
	display: block;
	line-height:50px;
	font-size:18px;
}
a#toTop > span{
	display:none;
}

a#toTop:hover{
	text-decoration:none;
	color:#e83e3d;
	/*border-color:#e83e3d;*/
}

.vion > a#toTop{
	opacity:1.0;
	pointer-events:initial;
}

#endline.scon a#toTop{
	position:absolute;
	bottom:30px;
	right:30px;
}



/* for TB ---------------------------------*/
@media screen and ( max-width:1019px) {


}


/* for SP ---------------------------------*/
@media screen and ( max-width:896px) {

	#endline{
		padding:10px 20px;
	}

	a#toTop{
		bottom:30px;
		right:10px;
	}

	#endline.scon a#toTop{
		bottom:20px;
		right:10px;
	}

}


/* ==========================================================
*
* フッタ
*
========================================================== */
footer{
	display:block;
	overflow:hidden;
	width:100%;
	min-width:1100px;
	background-color:#000000;
}


footer a{
	color:#ffffff!important;
}

footer > .innerFrame{
	padding:50px 0;
}


/* for TB ---------------------------------*/
@media screen and ( max-width:1019px) {

}


/* for SP ---------------------------------*/
@media screen and ( max-width:896px) {
	footer{
		min-width:100%;
	}

	footer > .innerFrame{
		padding:25px 20px;
	}

}


/*------------------------------------------
 フッタナビ
 ------------------------------------------*/
#footerNavi{
	display:block;
	overflow:hidden;
	margin-bottom:25px;
	letter-spacing:-.4em;
	padding-bottom:25px;
	border-bottom:1px solid #ffffff;
}


#footerNavi .ctglist{
	display:inline-block;
	overflow:hidden;
	width:25%;
	letter-spacing: normal;
	vertical-align:top;
	padding-left:60px;
}

#footerNavi .ctglist > a{
	display:none;
}

#footerNavi .ctglist ul{
	display:block;
	overflow:hidden;
}

#footerNavi .ctglist ul > li{
	display:block;
	overflow:hidden;
	margin-bottom:1.7em;
}

#footerNavi .ctglist ul > li > a{
	display:block;
	overflow:hidden;
	text-decoration:none;
}

#footerNavi .ctglist.noPC{
	display:none;
}

/* for TB ---------------------------------*/
@media screen and ( max-width:1019px) {


}


/* for SP ---------------------------------*/
@media screen and ( max-width:896px) {

	#footerNavi{
		margin-bottom:25px;
		padding-bottom:0;
		border-bottom:none;
	}


	#footerNavi .ctglist{
		display:block;
		width:100%;
		padding-left:0;
	}

	#footerNavi .ctglist > a{
		display:block;
		overflow:hidden;
		padding:1em 0;
		border-bottom:1px solid #4d4d4d;
		text-decoration:none;
	}

	#footerNavi .ctglist > a > span:after{
		content: "\f078";
		color:#d80c25;
		float:right;
	}

	#footerNavi .ctglist > a.opm > span:after{
		content: "\f077";
	}

	/*#footerNavi .ctglist > a[href^="/"] > span:after{
		content: "\f054";
	}*/


	#footerNavi .ctglist > a + ul{
		display:none;
		padding:0 1em;
	}


	#footerNavi .ctglist ul{
		background-color:#333333;
	}

	#footerNavi .ctglist ul > li{
		display:block;
		overflow:hidden;
		margin:0 0;
		border-bottom:1px solid #4d4d4d;
	}

	#footerNavi .ctglist ul > li > a{
		padding:1em 0;
	}

	#footerNavi .ctglist ul > li > a:after{
		content: "\f054";
		float:right;
	}

}


#snsLink{
	display:block;
	overflow:hidden;
	text-align:right;
}

#snsLink > ul{
	display:inline-block;
	overflow:hidden;
}

#snsLink > ul > li{
	display:inline-block;
	overflow:hidden;
	margin-left:1em;
}

#snsLink > ul > li > a{
	display:block;
	overflow:hidden;
	width:47px;
	height:47px;
	background-repeat:no-repeat;
	background-position:50% 50%;
	background-size:contain;
}

#snsLink > ul > li > a > span{
	display:none;
}

#snsLink > ul > li:nth-child(1){
	margin-left:0;
}
#snsLink > ul > li:nth-child(1) > a{
	width:70px;
	background-image: url("../images/svg/youtube.svg");
}
#snsLink > ul > li:nth-child(2) > a{
	background-image: url("../images/svg/facebook.svg");
}
#snsLink > ul > li:nth-child(3) > a{
	background-image: url("../images/svg/line.svg");
}

/* for TB ---------------------------------*/
@media screen and ( max-width:1019px) {


}


/* for SP ---------------------------------*/
@media screen and ( max-width:896px) {
	#snsLink{
		padding:10px 0;
		text-align:center;
	}

	#snsLink > ul > li > a:before{
		color:#ffffff!important;
	}
}



/*------------------------------------------
 コピーライト
 ------------------------------------------*/
#copy{
	display:block;
	overflow:hidden;
	position:relative;
	padding:25px 0;
	background-color:#505152;
	color:#ffffff;
}

#copy ul{
	display:inline-block;
	overflow:hidden;
	line-height:125%;
	letter-spacing: -.4em;
	float:left;
}

#copy ul > li{
	display:inline-block;
	overflow:hidden;
	letter-spacing:normal;
	margin-right:2em;
}

#copy p{
	display:inline-block;
	/*overflow:hidden;*/
	line-height:125%;
	float:right;
}


/* for TB ---------------------------------*/
@media screen and ( max-width:1019px) {


}


/* for SP ---------------------------------*/
@media screen and ( max-width:896px) {

	#copy ul{
		float:none;
		margin-bottom:1em;
	}

	#copy ul > li{
		margin-right:0;
		padding:0 0.5em;
	}
}


/* ==========================================================
*
* 共通パーツ
*
========================================================== */
#extraFld{
	clear:both;
	display:block;
	overflow:hidden;
	margin:40px 0;
}

.alCenter{
	text-align:center;
}

.alRight{
	text-align:right;
}

.redTxt{
	color:#e50012;
}

.blueTxt{
	color:#3f51b5;
}

.sTxt{
	font-size:0.8em;
}

strong{
	/*font-weight:bold;*/
	font-weight:500;

}

.noPC{
	display:none;
}

.mgb1em{
	margin-bottom:1em;
}


/* for TB ---------------------------------*/
@media screen and ( max-width:896px) {
	/**/
}


/* for SP --------------------------*/
@media screen and ( max-width:750px) {

	#extraFld{
		padding:0 20px;
	}

	.noSP{
		display:none;
	}

	.noPC{
		display:initial;
	}
	.spfullimg {
		max-width: 100%;
	}

}


/*------------------------------------------
 ドットリスト
 ------------------------------------------*/
ul.dotList{
	display:block;
	overflow:hidden;
	list-style-type:disc;
}

ul.dotList > li{
	margin-left: 1.5em;
	margin-bottom:0.5em;

}

/*------------------------------------------
 ナンバリングリスト
 ------------------------------------------*/
ol.numList{
	display:block;
	overflow:hidden;
	list-style-type:decimal;
}

ol.numList > li{
	margin-left: 1.5em;
	margin-bottom:0.5em;

}



/*------------------------------------------
 注意書きテキスト
 ------------------------------------------*/
.cautionTxt{
	text-indent: -1em;
	padding-left: 1em;
	font-size:1.2rem;
	line-height:155%;
}

/*------------------------------------------
 注意書きリスト
 ------------------------------------------*/
dl.cautionList{
	display:block;
	overflow:hidden;
	font-size:1.2rem;
	line-height:155%;
}
dl.cautionList > dt,
dl.cautionList > dd{
	display:block;
	overflow:hidden;
	float:left;
}

dl.cautionList > dt{
	width:2.5em;
	clear:both;
}

dl.cautionList > dd{
	width:calc(100% - 2.5em);
	margin-bottom:0.25em;
}


i{
	margin:0 0.25em;
}

/*------------------------------------------
 バナー 
 ------------------------------------------*/
.bnrBlock {
	margin-bottom: 2em;
}
@media screen and (max-width: 896px) {

.bnrBlock  img {
	width: 100%;
}
