  @charset "utf-8";
/* ==================================================================
CSS information
style info :RESET
================================================================== */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
	margin:0; padding:0; border:0; outline:0; font-size:100%; vertical-align:baseline; background:transparent;
}
body { line-height:1; }
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section { display:block; }
nav ul { list-style:none; }
blockquote, q { quotes:none; }
blockquote:before, blockquote:after,q:before, q:after { content:''; content:none; }
a { margin:0; padding:0; font-size:100%; vertical-align:baseline; background:transparent; }
ins { background-color:#ff9; color:#000; text-decoration:none; }
mark { background-color:#ff9; color:#000;  font-style:italic; font-weight:bold; }
del { text-decoration: line-through; }
abbr[title], dfn[title] { border-bottom:1px dotted; cursor:help; }
table { border-collapse:collapse; border-spacing:0; }
hr { display:block; height:1px; border:0; border-top:1px solid #cccccc; margin:1em 0; padding:0; }
input, select { vertical-align:middle; }

h1 , h2 , h3 , h4 { line-height:1; }
ul { list-style:none; }
p { line-height:1; }
img { vertical-align:bottom; border:none; }
table { font-size:inherit; font:100%;}




/* ==================================================================
CSS information
style info :¹²Í¨
================================================================== */
html,body { -webkit-text-size-adjust: none; }
html { font-size: 62.5%; }
body { font-size: 14px; font-size: 1.4rem; }
body { font-family: '¥Ò¥é¥®¥Î½Ç¥´ Pro W3', 'Hiragino Kaku Gothic Pro', '¥á¥¤¥ê¥ª', Meiryo, Osaka, '£Í£Ó £Ð¥´¥·¥Ã¥¯', 'MS PGothic', sans-serif;}
nav, section, div, h1, h2, h3, h4, h5, p, 
ul, li, dl, dt, dd, a { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }
img { max-width: 100%; height: auto;}
div, ul, li, dl, dt, dd, h1, h2, h3, h4, h5, p { position: relative; } 

/* --------------------------------------------------------
FONT
-------------------------------------------------------- */
/*
body {
	font-size: 83%;
	font-family: "£Í£Ó £Ð¥´¥·¥Ã¥¯", "HiraKakuPro-W3", "¥Ò¥é¥®¥Î½Ç¥´ Pro W3", "Osaka", sans-serif;
	line-height: 1.8;
	color: #333333;
}
*/



/* --------------------------------------------------------
#allwrap
-------------------------------------------------------- */
#allwrap {
text-align: left;
min-height: 100%; height: auto !important; height: 100%;
min-width: 100%; width: auto !important; width: 100%;
overflow: hidden;
}

/* --------------------------------------------------------
nowloading
-------------------------------------------------------- */
#nowloading { position: fixed; width: 100%; height: 100%; height: 100%; top: 0px; left: 0px; background: #fff; z-index: 9990; }
#loadingicon { position: absolute; top: 50%; left: 50%; width: 100px; height: 100px; margin-top: -50px; margin-left: -50px; text-align: center;  z-index: 9991; }
@media screen and (min-width: 641px) {
}


/* --------------------------------------------------------
nav
-------------------------------------------------------- */
#spmenu { position: fixed; top: 0; right: 5.333333%; margin-top: 5.333333%; width: 9.859154%; z-index: 9901;}
nav { position: fixed; top: 0; left: 0; z-index: 9900; width: 100%; height: 100%; padding: 2.666666%; background: rgba(255,255,255,0.8); }
nav { display: none;}

@media screen and (max-width: 640px) {
#globalNav { background: #d2edf6 url(../img/globalnav_bg_sp.png) top center no-repeat; padding: 6.619718% 2.816901% 2.816901%; border-radius: 10px;}
#globalNav .logo { width: calc(340/660*100%); margin: 0 auto calc(50/660*100%); }
#globalNav ul { width: 100%; margin: 0 auto;}
#globalNav ul li { border-top: 2px solid #b1d6e3; }
#globalNav ul li a { display: block; border-top: 1px solid rgba(255,255,255,0.5); }
#globalNav.scroll { overflow-y: scroll; position: relative; width: 100%;}
}
@media screen and (min-width: 641px) {
nav { display: block; height: auto; padding: 0; background: #e4eef1;}
#spmenu { display: none;}

#globalNav { text-align: center;}
#globalNav .logo { display: none;}
#globalNav ul { display: block; max-width: 1140px; margin: 0 auto; letter-spacing: -.45em;}
#globalNav ul li { display: inline-block; letter-spacing: normal;}
#globalNav ul li.gnav0 { max-width: 71px; width: calc(71/1140*100%); }
#globalNav ul li.gnav1 { max-width: 135px; width: calc(135/1140*100%); }
#globalNav ul li.gnav2 { max-width: 151px; width: calc(151/1140*100%); }
#globalNav ul li.gnav3 { max-width: 147px; width: calc(147/1140*100%); }
#globalNav ul li.gnav4 { max-width: 151px; width: calc(151/1140*100%); }
#globalNav ul li.gnav5 { max-width: 146px; width: calc(146/1140*100%); }
#globalNav ul li.gnav6 { max-width: 163px; width: calc(163/1140*100%); }
#globalNav ul li.gnav7 { max-width: 176px; width: calc(176/1140*100%); }

#globalNav ul li a { display: block; border-bottom: 4px solid #e4eef1;}
#globalNav ul li a:hover , #globalNav ul li.active a { border-bottom: 4px solid #1575b5;}
}




/* --------------------------------------------------------
#contents
-------------------------------------------------------- */
#contents:after { content: ""; display: block; clear: both; }
#contents { zoom:1; }
#contents { overflow: hidden; background: #fff; }
@media screen and (min-width: 641px) {
}


.inner { padding: 0 calc(50/750*100%); width: 100%; }
@media screen and (min-width: 641px) {
	.inner { padding: 0 calc(40/1220*100%); max-width: 1220px; margin: 0 auto;}
}
@media screen and (min-width: 1221px) {
	.inner { padding: 0 40px; width: 1220px; }
}








/* --------------------------------------------------------
#section-Area
-------------------------------------------------------- */
#section-Area { padding-bottom: 9.375%; position: relative; }
@media screen and (min-width: 641px) {
	#section-Area { margin: 0 auto; padding: 0 1.879699%; max-width: 1064px; }
}
@media screen and (min-width: 1064px) {
	#section-Area { padding: 0 20px 20px; width: 1064px; }
}


.frame { border: 1px solid #fff; background: #cf0075; padding: 1px; display: block; position: relative; border-radius: 6px;}
.frame .pic { border-radius: 4px;}
.frame img { vertical-align: top; }
@media screen and (min-width: 641px) {
.frame { border: 2px solid #fff; padding: 2px; }
.frame { -webkit-transform: scale(1.0); transform: scale(1.0); -webkit-transition: .1s ease-in-out; transition: .1s ease-in-out; -webkit-backface-visibility: hidden;}
.frame:not(.off):hover { -webkit-transform: scale(1.03); transform: scale(1.03);}
}









/* ----------------------------------------------------------------------------------------------------------------
#footer
---------------------------------------------------------------------------------------------------------------- */
#footer #subNav li a { color: #1575b5; }

@media screen and (max-width: 640px) {
#footer { background: #f3f3f3; border-top: 2px solid #cccccc; padding: 2.666666% 0;}

#footer #subNav { letter-spacing: -.45em;}
#footer #subNav li { display: inline-block; letter-spacing: normal; width: calc(300/650*100%); border-bottom: 2px solid #d2edf6; margin-bottom: 1.5em;}
#footer #subNav li:nth-child(odd) { margin-right: calc(25/650*100%);}
#footer #subNav li:nth-child(even) { margin-left: calc(25/650*100%);}
#footer #subNav li a { display: block; text-align: center; width: 100%; padding: 1em 0 0.5em; font-size: 1.3rem; font-size: 3vw; letter-spacing: 0.3em; }
#footer #subNav li.oth { display: block; width: 100%; border-bottom: none; margin: 0;}

#footer #copyright { text-align: center; padding-top: 2em; }
#footer #copyright img { width: 60%; }
}

@media screen and (min-width: 641px) {
	#footer #subNav li a { font-size: 1.3rem; color: #3388dd; }

	#footer { background: #f3f3f3 url(../img/com_bg002.gif) repeat-x left top; padding: calc(28/1220*100%) 0 calc(50/1220*100%); }
	#footer .inner { display: -webkit-flex; display: flex; -webkit-flex-wrap: nowrap; flex-wrap: nowrap; -webkit-justify-content: space-between; justify-content: space-between; }
	#footer .inner_ { background: #f00; }


	#footer #subNav { display: block; width: calc(650/1140*100%); letter-spacing: -.45em;}

	#footer #subNav li { display: inline-block; letter-spacing: normal; background: url(/cm/_common/img/footer_bg001.gif) repeat-y right top; width: calc(135/650*100%); margin: 0 calc(30/650*100%) 1em 0; padding-right: 1em; vertical-align: top; }
	#footer #subNav li:nth-child(4) { margin-right: 0; background: none;}
	#footer #subNav li:nth-child(5) { margin-bottom: 0; }
	#footer #subNav li:last-child { margin-bottom: 0; margin-right: 0; background: none; width: calc(160/650*100%); }
	#footer #copyright { display: block;}
	
}


/* ----------------------------------------------------------------------------------------------------------------
#colorbox
---------------------------------------------------------------------------------------------------------------- */
#colorbox.forMV , .forMV #cboxWrapper { overflow: visible!important; }
.forMV #cboxContent { background: none; }
#cboxOverlay { background: #fff!important; opacity: 0.8!important; }
#cboxLoadingOverlay{ background: #000!important; display: none!important;}
#cboxLoadingGraphic{ /*background:url(/cm/_common/css/images/loading.gif) no-repeat center center;*/ display: none!important;}
.forMV #cboxLoadedContent { background: none; padding: 0; background-color: #fff;}
.forMV #cboxLoadedContent { -webkit-box-sizing: border-box!important; -moz-box-sizing: border-box!important; -ms-box-sizing: border-box!important; box-sizing: border-box!important;}
.forMV #cboxClose { display: none;}
/*
.forMV #cboxClose { width: 30px; height: 30px; background: #f00 url(../img/btn_close.png) center center no-repeat; background-size: cover; top: -30px; right: 0px;}
.forMV #cboxClose:hover { background-position: center center;}
*/

/* #colorbox.forMV
---------------------------------------------------------------------------------------------------------------- */
.forMV .cboxIframe { background: none; }
.forMV .cboxIframe { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }
@media screen and (min-width: 641px) {
	/*.forMV #cboxClose { width: 50px; height: 50px; top: -55px; right: 0px;}*/
}



/* --------------------------------------------------------
šøÓÃ¥¯¥é¥¹
-------------------------------------------------------- */
@media screen and (max-width: 640px) {
.pc { display: none; }
}
@media screen and (min-width: 641px) {
.sp { display: none; }
}

/*clearfix
----------------------------------------------------*/
a { text-decoration: none;}
a:hover { text-decoration: underline;}

/*clearfix
----------------------------------------------------*/
.clearfix:after { content: ""; display: block; clear: both; }
.clearfix { zoom:1; }
.cr { clear:both; }

/*pagetop
----------------------------------------------------*/
#pageTop { width:100%; text-align:right; }
#pageTop a { display: inline-block; text-align: right; }
#pageTop img { }
@media screen and (max-width: 640px) {
}



