@charset "shift_jis";

/* --------------------------------------------------------------------------------

【PC】
www.melodian.co.jp
	
-------------------------------------------------------------------------------- */


/* --------------------------------------------------------------------------------
	Reset
-------------------------------------------------------------------------------- */
html,body,div,span,applet,object,iframe,
h1,h2,h3,h4,h5,h6,p,blockquote,pre,
a,abbr,acronym,address,big,cite,code,
del,dfn,em,img,ins,kbd,q,s,samp,
small,strike,strong,sub,sup,tt,var,
b,u,i,center,
dl,dt,dd,ol,ul,li,
fieldset,form,label,legend,
table,caption,tbody,tfoot,thead,tr,th,td,
article,aside,canvas,details,embed,
figure,figcaption,footer,header,hgroup,
menu,nav,output,ruby,section,summary,
time,mark,audio,video{
	margin:0;
	padding:0;
	font-family:"游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
}
input,
textarea{
	font-weight:normal;
	font-size:100%;
}
ol,ul{
	list-style:none;
}
blockquote,q{
	quotes:none;
}
blockquote:before,blockquote:after,
q:before,q:after{
	content:'';
	content:none;
}
input,
textarea,
select{
	font-family:"游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
}
a{
	overflow:hidden;
	outline:none;
	text-decoration:none;
	color:#000;
}
a:hover,
a:active{
	text-decoration:underline;
}
input[type="text"]:focus{
	outline:0;
}
table{
	border-collapse:collapse;
	border-spacing:0;
}

img{
	max-width:100%;
	height:auto;
	border:none;
	-ms-interpolation-mode:bicubic;
	vertical-align:bottom;
}
a img{
	border:none;
}
a:hover img{
}
.br-pc{
	display:block;
}

/* --------------------------------------------------------------------------------
	タグ
-------------------------------------------------------------------------------- */
body{
	min-width:1200px;
	margin:150px 0 0;
	line-height:1.5;
/*	font-size:18px;*/
/*	font-size:26px;*/
	font-size:24px;
	-webkit-text-size-adjust:100%;
	color:#333;
}


/* --------------------------------------------------------------------------------
	共通クラス
-------------------------------------------------------------------------------- */
.clear{
	clear:both;
}
br.clear{
	display:block;
	margin:0;
	padding:0;
	clear:both;
	height:0;
	border:none;
	visibility:hidden;
	font-size:0;
}
.clearfix:after{
	content:".";
	display:block;
	clear:both;
	height:0;
	visibility:hidden;
}
.clearfix{
	min-height:1%;
}
* html .clearfix{
	height:1%;
	/*\*//*/
	height:auto;
	overflow:hidden;
	/**/
}

ul.ul{
	list-style:disc;
	padding:0 0 0 40px;
}
ol.ol{
	list-style:decimal;
	padding:0 0 0 40px;
}

.inner{
	width:1100px;
	margin:0 auto;
}

/* --------------------------------------------------------------------------------
	デバイスごとの表示・非表示
-------------------------------------------------------------------------------- */
.device-sp{
	display:none;
}
.device-sp-inline{
	display:none;
}
.device-pc{
	display:block;
}
.device-pc-inline{
	display:inline;
}


/* --------------------------------------------------------------------------------
	container
-------------------------------------------------------------------------------- */
#container{
}


/* --------------------------------------------------------------------------------
	header
-------------------------------------------------------------------------------- */
#header{
	position:fixed;
	width:100%;
	top:0;
	left:0;
	z-index:999999;
	background:#fff;
}

/********** ヘッダーコンテンツ **********/
#header .h-contents{
	border-bottom:solid 1px #e6e6e6;
}

#header .inner{
	position:relative;
	width:1100px;
	margin:0 auto;
	display:flex;
	z-index:999999;
}

/********** ロゴ **********/
#header .logo{
	width:277px;
	padding:30px 0 0;
	border-right:solid 1px #e6e6e6;
}
#header .logo a,
#header .logo a img{
	display:block;
	width:200px;
}
#header .logo a{
	margin:0 27px 0 49px;
}

/********** ナビゲーション **********/
#header .h-nav{
	width:772px;
	border-right:solid 1px #e6e6e6;
}
#header .h-nav nav > ul{
	width:100%;
	display:flex;
}
#header .h-nav nav > ul > li{
	width:167px;
	border-right:solid 1px #e6e6e6;
}
#header .h-nav nav > ul > li.h-nav-menu{
	width:100px;
}
#header .h-nav nav > ul > li > .btn a{
	display:block;
	height:100px;
	line-height:1.2;
	text-align:center;
	text-decoration:none;
}
#header .h-nav nav > ul > li > .btn a .label{
	padding:30px 0 3px;
	display:block;
	font-size:26px;
	font-weight:bold;
	color:#e50012;
}
#header .h-nav nav > ul > li > .btn a .en{
	display:block;
	font-size:12px;
	color:#b2b2b2;
	font-weight:bold;
}
#header .h-nav nav > ul > li:nth-of-type(4){
	border-right:solid 1px #e50012;
}
#header .h-nav nav > ul > li:last-child{
	border-right:solid 1px #e50012;
}

/********** アクティブ時 **********/
#header .h-nav nav > ul > li.active .btn a{
	background:#e50012;
}
#header .h-nav nav > ul > li.active .btn a .label{
	color:#fff;
}
#header .h-nav nav > ul > li.active .sub-menu{
	display: block;
	-webkit-animation: fadein 0.2s linear 0s 1;
	animation: fadein 0.2s linear 0s 1;
}
@-webkit-keyframes fadein {
	0%{
		display: none;
		opacity:0;
	}
	100% {
		display: block;
		opacity:1;
	}
}

/********** メニューボタン **********/
#header .h-nav nav .h-nav-menu{
	background:#e50012;
}
#header .h-nav nav .h-nav-menu .btn-open{
	width:98px;
	border-bottom:solid 1px #e50012;
}
#header .h-nav nav .h-nav-menu .btn-open img{
	display:block;
	cursor:pointer;
}
/* PCは消しておく、スマートフォンのみ表示 */
#header .h-nav nav .h-nav-menu .btn-open .h-btn-close{
	display:none;
}

/********** サブメニュー **********/
#header .sub-menu{
	display:none;
	width:1100px;
	position:absolute;
	left:0;
	padding:0 0 0;
	z-index:999999;
}
#header .sub-menu .sub-menu-box{
	padding:18px 50px;
	background:rgba(255,255,255,0.9);
}
#header .sub-menu .heading{
	padding:0 0 3px;
	font-weight:bold;
}
#header .sub-menu ul{
	width:100%;
	display:flex;
	flex-wrap:wrap;
}
#header .sub-menu ul li{
	margin:0 10px 9px 0;
}
#header .sub-menu ul li a{
	display:block;
	width:220px;
	border-radius:8px;
	padding:4px 0;
	text-align:center;
	text-decoration:none;
	letter-spacing:-0.02vw;
	font-weight:bold;
	font-size:18px;
	color:#333;
	background:#dffaff;
}
#header .sub-menu ul li a span{
	display:block;
	padding:0 20px 0 0;
	background:url(../images/common/icon-arr.png) no-repeat 97% 50%;
	background-size:0.5em auto;
}
#header .sub-menu .btn-close{
	position:absolute;
	bottom:16px;
	right:70px;
}
#header .sub-menu .btn-close img{
	width:32px;
	cursor:pointer;
}

/********** 言語 **********/
#header .language{
	width:980px;
	margin:0 auto;
}
#header .language .language-box{
	padding:10px 0 0;
	text-align:right;
	font-size:18px;
	font-weight:bold;
}
#header .language .btn-language a{
	display:inline-block;
	margin:0 10px 0 0;
	height:32px;
	color:#7A7A7A;
	background:url(../images/common/icon-arr-lang.png) no-repeat 0 30%;
	background-size:18px auto;
}
#header .language .btn-language:last-child a{
	margin:0;
}
#header .language a .label{
	padding:0 0 0 23px;
}

/* --------------------------------------------------------------------------------
	wrapper
-------------------------------------------------------------------------------- */
#wrapper{
    margin:0 auto 10px;
}


/* --------------------------------------------------------------------------------
	main
-------------------------------------------------------------------------------- */
#main{
}

#main .main-inner{
    width:1100px;
	margin:0 auto;
}

/********** パンくずリスト **********/
#main .breadcrumb ul{
	display:flex;
	justify-content:flex-start;
	flex-wrap:wrap;
	width:960px;
	margin:0 auto;
	padding:10px 0 30px;
	font-size:0.7em;
}
#main .breadcrumb ul li:after{
	margin:0 0.5em;
	content:'>';
}
#main .breadcrumb ul li:last-child:after{
	margin:0;
	content:'';
}
#main .breadcrumb ul li a{
	color:#e60012;
}

/********** メイン画像 **********/
#main .main-visual{
	width:auto;
	position:relative;
	overflow:hidden;
}
#main .main-visual .main-visual-wrapper{
	max-width:1900px;
	margin:0 auto;
	position:relative;
}
#main .main-visual .main-visual-box{
	position:relative;
	max-width:1900px;
	margin:0 auto;
	left:50%;
	margin-left:-950px;
}


/* --------------------------------------------------------------------------------
	footer
-------------------------------------------------------------------------------- */
#footer{
	padding:0 0 20px;
	border-top:1px solid #E6E6E6;
	border-bottom:5px solid #e50012;
}

#footer .f-contents{
	padding:47px 50px 10px;
}



/********** menu-logo **********/
#footer .logo-copyright{
	width:340px;
	float:left;
}

/********** ナビゲーション **********/
#footer .f-nav{
	float:right;
	width:660px;
}
#footer .f-nav .f-menu1{
	background:#F2F2F2;
	overflow:hidden;
	
	border-radius:8px;
}
#footer .f-nav .f-menu1 ul{
	display:flex;
	flex-wrap: wrap;
	line-height:1.2;
	
}
#footer .f-nav .f-menu1 ul li{
	width:25%;
}
#footer .f-nav .f-menu1 ul li:nth-child(1),
#footer .f-nav .f-menu1 ul li:nth-child(2),
#footer .f-nav .f-menu1 ul li:nth-child(3),
#footer .f-nav .f-menu1 ul li:nth-child(4){
	border-bottom:2px dotted #ffffff;
	margin-left:-2px;
	padding-left:1px;
}

#footer .f-nav .f-menu1 ul li a{
	display:block;
	padding:25px 0;
	text-align:center;
	font-weight:bold;
	color:#333;
	font-size:23px;
    letter-spacing: -0.1em;
}


/********** メニュー **********/
#footer .f-menu2{
	padding:5px 0 0;
	font-size:18px;
	color:#fff;
	text-align:right;
	color:#4D4D4D;
}
#footer .f-menu2 .f-menu-box{
	padding:0 0 9px;
}
#footer .f-menu2 a{
	color:#4D4D4D;
}

/********** ロゴ **********/
#footer .f-logo{
	padding:0 0 10px;
}
#footer .f-logo a{
}
#footer .f-logo a img{
	width:250px;
}

/********** 住所 **********/
#footer .address{
	font-size:20px;
	color:#4D4D4D;
	padding:0 0 45px;
}

/********** コピーライト **********/
#footer .copyright{
	font-size:14px;
	color:#B3B3B3;
}

/********** 言語 **********/
#footer .language{
	width:1000px;
	margin:0 auto;
}
#footer .language .language-box{
	padding:0 0 0;
	text-align:right;
	font-size:18px;
	font-weight:bold;
}
#footer .language .btn-language a{
	display:inline-block;
	margin:0 10px 0 0;
	height:32px;
	color:#7A7A7A;
	background:url(../images/common/icon-arr-lang.png) no-repeat 0 30%;
	background-size:18px auto;
}
#footer .language .btn-language:last-child a{
	margin:0;
}
#footer .language a .label{
	padding:0 0 0 23px;
}




/* --------------------------------------------------------------------------------
	header　英語用
-------------------------------------------------------------------------------- */
/********** ナビゲーション **********/
#header .en-inner .h-nav{
	border:none;
}
#header .en-inner .h-nav nav{
	float:left;
}
#header .en-inner .h-nav nav > ul > li{
	width:212px;
}
#header .en-inner .h-nav nav > ul > li:last-child{
	border-right: solid 1px #e6e6e6;
}
#header .en-inner .h-nav nav > ul > li:nth-of-type(1) > .btn a .label{
    padding: 37px 0 0;
}
#header .en-inner .h-nav nav > ul > li:nth-of-type(2) > .btn a .label,
#header .en-inner .h-nav nav > ul > li:nth-of-type(3) > .btn a .label {
    padding: 24px 0;
}
#header .en-inner .h-nav nav > ul > li > .btn a{
	line-height:1;
}
#header .en-inner .h-nav .btn-jp{
	float:right;
	padding:60px 0 0 10px;
}
#header .en-inner .h-nav .btn-jp a{
	font-size:18px;
	font-weight:bold;
	color:#7A7A7A;
	background:url(../images/page/en/icon-arr.png) no-repeat 0 30%;
	background-size:18px;
}
#header .en-inner .h-nav .btn-jp a .label{
	padding:0 0 0 23px;
}

/* --------------------------------------------------------------------------------
	footer　英語用
-------------------------------------------------------------------------------- */
/********** ナビゲーション **********/

#footer .en-inner .f-nav .f-menu1 ul li{
	border:none;
}

#footer .en-inner .f-nav .f-menu1 ul li:nth-of-type(1) a,
#footer .en-inner .f-nav .f-menu1 ul li:nth-of-type(2) a{
	padding:35px 0;
}
#footer .en-inner .f-nav .f-menu1 ul li:nth-of-type(3) a,
#footer .en-inner .f-nav .f-menu1 ul li:nth-of-type(4) a{
	padding:20px 0;
}


/********** ロゴ **********/
#footer .en-inner .f-logo {
    padding: 10px 0 20px;
}



/* --------------------------------------------------------------------------------
	header　中国語用
-------------------------------------------------------------------------------- */
/********** ナビゲーション **********/
#header .cn-inner .h-nav{
	border:none;
}
#header .cn-inner .h-nav nav{
	float:left;
}
#header .cn-inner .h-nav nav > ul > li{
	width:212px;
}
#header .cn-inner .h-nav nav > ul > li:last-child{
	border-right: solid 1px #e6e6e6;
}
#header .cn-inner .h-nav nav > ul > li > .btn a .label{
}

#header .cn-inner .h-nav nav > ul > li > .btn a{
	line-height:1;
}
#header .cn-inner .h-nav .btn-jp{
	float:right;
	padding:60px 0 0 10px;
}
#header .cn-inner .h-nav .btn-jp a{
	font-size:18px;
	font-weight:bold;
	color:#7A7A7A;
	background:url(../images/page/en/icon-arr.png) no-repeat 0 30%;
	background-size:18px;
}
#header .cn-inner .h-nav .btn-jp a .label{
	padding:0 0 0 23px;
}

/* --------------------------------------------------------------------------------
	footer　中国語用
-------------------------------------------------------------------------------- */

/********** ロゴ **********/
#footer .cn-inner .f-logo {
    padding: 10px 0 20px;
}

