/*
*** COLORS

	red:			 	#DE0935;
	dark (text etc): 	#434344;
	beige:			 	#BBBD9C;
	cream:			 	#F0EDD8;
	off beige:			#72735F;
	light gray: 		#E6E6E6;
	14px = 0.875em
*/


body { background:#434344 url(../images/bg.png) repeat-x 0 0; font-family: Georgia, serif; }
body { font-size: 93.75%; }

h1, h2, h3, h4 { font-family: Helvetica, sans-serif; }
input, select, textarea { font-size: 1em; }
h1 { font-size: 1.125em; }
h2, h3 { font-size: 1em; }

a:link { color: #DE0935; text-decoration: none }
a:visited { color: #72735F; text-decoration: none }
a:hover { color: #DE0935; text-decoration: underline; }
a:visited:hover { color: #DE0935; text-decoration: underline; }


.highlight,
.form-required { color:#DE0935; }

#page { width: 960px; margin: 0 auto 64px auto; background:#F0EDD8 url(../images/footer.png) no-repeat 0 100%; }

#header { width:944px; height:112px; background-color: white; color: #72735F; font-size: 0.875em; padding:24px 8px 0px 8px; }
#header { font-size: 0.9333em; }
#header .contact1 {width:304px; float:right;}
#header .contact2 {width:240px; float:right;}
#header .contact1, #header .contact2 {font-size: 0.875em;}

#logo { float:left; display:block; width:152px; height:88px; }
#logo a,
#logo img { display: block; }
#logo span { display: none; }

#menu { position: relative; width:960px; display:block; border-top:8px solid #DE0935; overflow: visible; background-color: #434344; font-family: Helvetica, sans-serif; }
	#menu ul,
	#menu li { list-style: none; padding: 0; margin: 0; }
	#menu ul.nav { float:left; width: 882px; }

#menu li { float: left; }
	#menu li a { display: block; padding: 6px 12px; color: white; font-size: 1em; text-decoration: none; }
	#menu li a:hover,
	#menu li a:focus,
	#menu li a.active,
	#menu li.active-trail a { background-color: #DE0935; outline: none; }
	#menu .languages { position: absolute; right: 0; }
	#menu .languages .active { display: none; }
	#menu ul ul.nav { position: absolute; bottom:-1.5em; left:0; padding: 0.2em 0; z-index: 99 !important; display:block; width:960px; background-color: #72735F; color:white; font-size: 0.875em; }
	#menu ul ul li {border-right: white solid 2px;}
	#menu ul ul li a { display: block; margin:0; padding: 0 16px; color: white; text-decoration: none; }
	#menu li.active-trail ul.nav li a,
	#menu li ul.nav li.active-trail a { background: transparent; }
	#menu li ul.nav li.active-trail a,
	#menu ul ul li a.active,
	#menu ul ul li a:hover { text-decoration: underline; background: transparent; }
	#menu ul ul li.last {border-right: 0;}

/* .ja #menu li.news { display: none; } */

.news #menu li.news { background-color: #DE0935; }

#topbox { position: relative; display:block; width:960px; padding-top: 264px; height:8px; background-image: url(../images/headers/header_03.jpg);}
	#topbox .tagline { background-color: #DE0935; padding: 2px; position:absolute; top:115px; right: 0; min-width: 328px; line-height: 1; padding: 6px 16px 10px 16px; z-index: 999; }
	#topbox .tagline p {color: white; font-size: 1.125em; margin: 0; }
	#topbox .lip { height:8px; z-index: 100; overflow: hidden; background-image: url(../images/lip2.png); }
	#topbox .tabs { position: absolute; bottom: 10px; right:64px; z-index: 999; border: none; margin: 0; }
	#topbox .tabs li { display: inline; padding: 0; margin: 0; padding: 6px 8px; background: #F0ECD7; }
	#topbox .tabs a { border: none; }
	#topbox .tabs a.active { text-decoration: underline; }
	#topbox ul.secondary {  }


.hr { clear:both; height:1px; color:#DE0935; border-top: solid 1px #DE0935; }
.hrdotted { border-top: dashed 1px #DE0935; margin: 0 16px 0 16px; }

#content { width:816px; background-color: #F0EDD8; padding:8px 72px 56px 72px;}
	#content h1 { position: relative; margin: 0; left: -8px; padding:0 0 8px 24px; background: transparent url(../images/red24.png) no-repeat 0px 0; }
	#content .inner { border-top: solid 1px #DE0935; padding:16px; margin: 0; }
	#content .intro { font-weight: bold; }
	#content .main .entry .inner { clear: both; padding:16px; margin-bottom: 32px; border-top: solid 1px #DE0935; border-bottom: dashed 1px #DE0935; }
	#content .main ul.links { margin: 0; padding: 0; text-align: right; }
	#content .main ul.links li { display: inline; margin-left: 1em; }

	#content .newsletter { border: 1px solid #DE0935; padding:16px; margin:16px 0 16px 0;}
	#content .main .hrdotted { border-top: dashed 1px #DE0935; margin: 16px 0 ;}

.main { float:right; width:496px; }
.main a:visited { text-decoration: underline; }

.main img.left { margin: 0 1em 1em 0; }
.main img.right { margin: 0 0 1em 1em; }

.template1 .main,
.page .main { float: left; }

.template1 .sidebar,
.page .sidebar { float: right !important; }

.template1 .main {  }
.template2 .main { float:none; width:816px; }
	.template2 .main .col { width:360px; margin: 8px 0 8px 0; }

#content .video { margin-bottom: 1.5em; }

#content .messages { border: solid 2px #DE0935; padding: 16px; margin-bottom: 1.5em; }
#content .messages p,
#content .messages ul { margin-bottom: 0; }

#content .pager { list-style: none; padding: 0; overflow: hidden; line-height: 1; }
	#content .pager li { display: inline; float: left; padding: 0.25em 1em; border: solid 1px #DE0935; border-width: 0 1px 0 0; }
	#content .pager a {  line-height: 1; }
	#content .pager .last { border: 0; }
	#content .pager .pager-current { color: #434344; font-weight: bold; }

#content .main table { width: 100%; clear:both; margin: 0 0 4px 0; padding: 0; border-top: solid 1px #DE0935; border-bottom: solid 1px #DE0935; }
	#content .main table thead { border-bottom: dashed 1px #DE0935;}
	#content .main table thead th { padding: 8px 0; }
	#content .main table th { text-align: left; background: none; font-weight: normal; }
	#content .main table tr { }
	#content .main table td { padding: 8px; }
	#content .main table td.replies { padding: 8px; }
	#content .main table .description { margin: 0; padding: 0; }
	#content .main table .last-reply { font-size: 14px; }

#content .main table tbody {}
	#content .main table tbody tr { border-bottom: dashed 1px #DE0935; }
	#content .main table tbody td { padding: 8px 0; margin: 0; text-align: left; }
	#content .main table tbody td.forum { background: none; padding: 8px 0; margin: 0; }
	#content .main table tbody td.topics a { font-size: 14px;  }
	#content .main table tbody td.forum .links { display: none; }
	#content .main table tbody td.forum div.indent { margin: 0; }
	#content .main table tbody td.forum div.name { margin: 0; font-family: Helvetica, Arial; font-weight: bold; }
	#content .main table tbody td.forum div.description { margin: 0; }	

/* forms */

.main form { padding: 0; }
.main form fieldset { margin: 8px 0 1.5em 0; }
.main form legend { display: block; font-weight: bold; margin-bottom: 1em; white-space: normal; }
.main form .form-item { margin:8px 0; }
.main form .form-item label { display: block; }
.main form .form-text { width: 60%; }
.main form .form-file {  }
.main form .description { font-size: 0.875em; }
.main form .form-textarea { width: 60%; font-size: 1em; }
.main form span.password-strength,
.main form span.password-confirm { margin-left: 8px; font-size: 0.875em;  }
.main form .error { color: #DE0935; font-size: 0.875em; }

/* webforms */

.main .webform-client-form {  }
.main .webform-component-fieldset { border: 1px solid #BBBD9C; padding: 0 16px 8px 16px; margin: 0 0 1.5em 0;}
.main .webform-component-fieldset legend { padding: 0 8px; width: 80%; margin: 0 8px 0 -8px; font-size: 1.285em; text-transform: uppercase; }
.main .webform-component-fieldset fieldset { padding: 16px; margin-bottom: 8px; }
.main .webform-component-fieldset fieldset legend { margin: 0 0 0 -8px; }

.main .webform-component-markup { margin-bottom: 1.5em; }

.webform-component-date_of_birth {}

#webform-component-name {}
#webform-component-name label { /* float:left; margin: 0 8px 0 0; */ }
#webform-component-name select { margin: 0 8px 0 0; }

#webform-component-years_abroad {}
#webform-component-years_abroad label { float:left; margin: 0 8px 0 0; }
#webform-component-years_abroad input { float:left; width: 24px; margin: 0 8px 0 0; }
#webform-component-country_abroad {}
#webform-component-country_abroad label { float:left; margin: 0 8px 0 0; }
#webform-component-country_abroad input { float:left; margin: 0 8px 0 0; }

#webform-component-day { float:left; }
#webform-component-day label { float:left; margin: 0 8px 0 0; }
#webform-component-day input { float:left; width: 24px; margin: 0 8px 0 0; }
#webform-component-month { float:left; }
#webform-component-month label { float:left; margin: 0 8px 0 0; }
#webform-component-month input { float:left; width: 24px; margin: 0 8px 0 0; }
#webform-component-year { float:left; }
#webform-component-year label { float:left; margin: 0 8px 0 0; }
#webform-component-year input { float:left; width: 40px; margin: 0 8px 0 0; }
#webform-component-years_in_japan {}
#webform-component-years_in_japan label { float:left; margin: 0 8px 0 0; }
#webform-component-years_in_japan input { float:left; width: 24px; margin: 0 8px 0 0; }

#edit-submitted-language-ability-toefl--toeic-scores-or-equivalent-wrapper { margin: 0 0 0 24px; }
#webform-component-japanese_proficiency_test_if_applicable_level { margin: 0 0 0 24px; }
#webform-component-spoken, #webform-component-reading { margin: 0 0 0 24px; }

#webform-component-for_students { margin-top: 8px; }
#webform-component-for_students legend { display: none; }


#content .sidebar { float:left; width:256px; }
	#content .sidebar h2 { position: relative; left: -8px; padding:0 0 12px 24px; background: url(../images/red24.png) no-repeat 0 0;}
	#content .sidebar .entry { margin:0 16px; border-bottom: dashed 1px #DE0935; }
	#content .sidebar .entry.last {  }
	#content .sidebar .more-link { padding: 16px; text-align: right; }
	#content .sidebar h3 { padding: 8px 0; }
	#content .sidebar p { font-size: 0.875em; }
	#content .sidebar .hrdotted { margin: 0 16px 0 16px; }

#content .sidebar .whitebox { width:256px; padding: 16px 0 0 0; background:#fff url(../images/sidebar_top.png) no-repeat 0 0; text-align: center;}
	#content .sidebar ul.whitebox { list-style: none; }
	#content .sidebar .whitebox li { margin: 16px; padding:0 0 16px 0; line-height: 1; border-bottom:solid 1px #E6E6E6; }
	#content .sidebar .whitebox li.first { margin-top: 0; }
	#content .sidebar .whitebox li.last {border: none; background: url(../images/sidebar_bot.png) no-repeat 0 100%; padding-bottom: 16px; margin: 0; }

#content .sidebar form { border-top: solid 1px #DE0935; padding:8px 16px 0 16px; }
#content .sidebar input { font-size: 0.875em; }
#content .sidebar label { display: block; padding:8px 0; font-size: 0.875em; }
#content .sidebar input.form-text {border:1px solid #72735F; width:222px; height:20px; margin: 0;}
#content .sidebar input.form-submit { float:right; margin:16px 0; }
#content .sidebar form .item-list { clear: both; font-size: 0.875em; }
#content .sidebar form .item-list ul {  }


#content .main #newsletter-signup { border: solid 1px #DE0935; padding: 16px; }
#content .sidebar #newsletter-signup { border: none; }
#content .main #newsletter-signup h2 { border-bottom: dashed 1px #DE0935; padding-bottom: 8px; margin-bottom: 8px; }
#content #newsletter-signup .form-item { margin: 4px 0; }
#newsletter-signup label { float:left; clear:left; width:144px; margin:0px; padding: 0 0 16px 0;}
#newsletter-signup input { float:right; clear: right; padding:2px; }
#content .sidebar #newsletter-signup .form-text { width: 216px; float: none; }
#content #newsletter-signup .form-text { border:solid 1px #72735F; }
.main #newsletter-signup .form-text { width:304px; }
#content .sidebar #newsletter-signup #captchaPreview { margin-top: 16px; }
#content #newsletter-signup #captchaPreview label { padding-bottom: 0; }
#content #newsletter-signup input.form-image { margin: 8px 0 0 0; }
#content #newsletter-signup .description { margin-bottom: 0; }
#content .sidebar #newsletter-signup .description { margin-top: 32px; }

#footer { padding:8px 0 24px 0; margin:0 72px; border-top: solid 1px #DE0935; text-align: center; }
#footer p { padding: 8px 0 0 0; font-size: 0.875em; }

/* page specific */

#home #topbox { background-image: url(../images/headers/header_03.jpg); }

body.about-jmec #topbox,
#about-jmec #topbox { background-image: url(../images/headers/header_07.jpg); }

body.corporate-sponsors #topbox,
#corporate-sponsors #topbox { background-image: url(../images/headers/header_sponsors.jpg); }

body.participants #topbox,
#participants #topbox { background-image: url(../images/headers/header_08.jpg); }

body.news #topbox,
#news #topbox { background-image: url(../images/headers/header_02.jpg); }

#alumni #topbox { background-image: url(../images/headers/header_01.jpg); }


#news .main .date { margin: 0 0 8px 0; text-align: right; font-size: 0.875em; }
#news .main h2 { position: relative; width: 380px; margin: 0 0 -1.3em -8px; padding:0 0 0 24px; font-size: 1.125em; background: url(../images/red24.png) no-repeat 0 0; }


#corporate-sponsors .inner { border-bottom: solid 1px #DE0935; padding-bottom: 0; margin-bottom: 3em; }
	#corporate-sponsors .main h2 { position: relative; margin:32px 0 0 0; left: -8px; padding:0 0 8px 24px; background: url(../images/red24.png) no-repeat 0 0; }
	#corporate-sponsors .cols { margin-bottom: 0; }
	#corporate-sponsors .col { margin-bottom: 0; }
#corporate-sponsors .sponsorlogos { background-color: white; text-align: center; margin:16px 0 0 0; padding: 0 8px; }
	#corporate-sponsors .sponsorlogos .top { position: relative; margin: 0 -8px; display: block; height:16px; overflow: hidden; font-size: 1px; line-height: 1; background-image:url(../images/logobar_top.png);}
	#corporate-sponsors .sponsorlogos .bottom { position: relative; margin: 0 -8px; display: block; clear: both; height:16px; background-image:url(../images/logobar_bottom.png); vertical-align: bottom; font-size: 10px; line-height: 10px; }
	#corporate-sponsors .sponsorlogos .entry { padding:0 8px; width: 144px; display: inline; }
	#corporate-sponsors .sponsorlogos .entry img { vertical-align: middle; }
	#corporate-sponsors .sponsorlogos .hr { margin:8px 16px; border-top: solid 1px #E6E6E6; }


#sponsorship-benefits .benefits { position: relative; margin: 0 0 1.5em 0 !important; font-size: 0.875em; border: solid 1px #AEAEB1 !important; border-width: 1px 0 0 1px; }
	#sponsorship-benefits .benefits th { padding: 8px !important; border: solid 1px #AEAEB1; border-width: 0 1px 1px 0; }
	#sponsorship-benefits .benefits td { text-align: center; padding: 8px !important; border:  solid 1px #AEAEB1; border-width: 0 1px 1px 0; }
	#sponsorship-benefits .benefits td.benefit { text-align: left; }


#faq .main li ul,
#faq .main li ol { margin-bottom: 0; }


/* secure area */

body.secure,
body.user,
body.node { background-image: url(../images/bg-secure.png); }
body.secure #topbox,
body.user #topbox,
body.node #topbox { background: #BBBC9B !important; padding-top: 32px; }
#topbox .alltabs { bottom: -1.5em; position: absolute; bottom: -1.5em; margin:0; right:64px; z-index:999; }
#topbox .alltabs .tabs { position: static; display: inline; }

#alumni.secure #content h1,
body.alumni #content h1,
body.group #content h1 { background: none; }

#alumni.secure #content .inner,
body.alumni #content .inner,
body.group #content .inner { border-top: 0; }

#alumni.secure .main h1 a,
body.alumni #content h1 a,
body.group .main h1 a { color: #434344; }


body.secure #forum h2 { float:left; position: relative; margin:2px 0 12px 0; left: -8px; padding: 3px 0 0 16px; background: transparent url(../images/red24.png) no-repeat 0px 0; }
body.secure #forum h2 span { font-size: 0.875em; font-weight: normal; /* margin-left: 1em; */ }
body.secure #forum .links { line-height: 1; }
body.secure #forum table td.icon { padding: 0; margin: 0; width: 0; }

/* calendar */

body.secure #content div.calendar-calendar th { text-align: center; }
body.secure #content div.calendar-calendar td { padding: 0; }
	body.secure #content div.calendar-calendar td .inner { padding: 0; }
	body.secure #content .calendar-calendar td .inner div.day a { color: #DE0935; }
	body.secure .calendar-calendar tr td.today, 
	body.secure .calendar-calendar tr.odd td.today, 
	body.secure .calendar-calendar tr.even td.today { background: #F0EDD8; }
	body.secure .calendar-calendar td.empty { background: #ddd; }
	body.secure .calendar-empty { height:0; overflow: hidden; }
	
	body.secure .calendar-calendar td .inner div, 
	body.secure .calendar-calendar td .inner div a,
	body.secure .calendar-calendar td .inner div.calendar div, 
	body.secure .calendar-calendar td .inner div.calendar div a { background: transparent; }


/* exposed forms */

body.secure .views-exposed-form .views-exposed-widget { float: left; padding: 0; margin:0 0 16px 0; }
	body.secure .views-exposed-form .views-exposed-widget label { float: left; margin-right: 8px; }
	body.secure .views-exposed-form .views-exposed-widget .views-widget { float: left; }
	body.secure .views-exposed-form .views-exposed-widget .form-item { margin: 0 8px 0 0; }
	body.secure .views-exposed-form .views-exposed-widget .form-submit { margin: 0; }
/*
#content .main .inner .forum-topic-navigation { padding: 8px 0 8px 0; border-top: solid 1px #BBBD9C; border-bottom: solid 1px #BBBD9C; }
#content .main .inner .forum-topic-navigation .topic-next { float: right; text-align: right; }
#content .main .inner .forum-topic-navigation .topic-previous { float: left; text-align: left; }
#content .main .inner .date { padding: 0 0 8px 0; border-bottom: solid 1px #BBBD9C; }
*/


.main #comments { margin: 32px 0 0 0; }

.main #comments .box h2 { margin-top: 32px; }

.main #comments .comment { margin: 16px 0 0 0; padding: 16px; background: #e3e5ca; border: solid 1px #BBBD9C; /* width: 75%; */ }
.main #comments .comment .links li { border-right: solid 1px #BBBD9C; margin: 0 !important; padding: 0 8px; }
.main #comments .comment .links li.last { border: none; }
.main #comments .submitted { margin: 0 0 16px 0; padding: 0 0 8px 0; font-size: 14px; border-bottom: solid 1px #BBBD9C; }

.main #comments #comment-form { border-top: solid 1px #DE0935; }
	.main #comments #comment-form .tips { font-size: 0.875em; }
	.main #comments #comment-form .form-text,
	.main #comments #comment-form .form-textarea { border: solid 1px #434344; }


/* group/team page  */

body.group #content .inner { padding-top: 0; }
body.group .og-mission { margin-bottom: 1.5em; }

body.group #content h2 { position: relative; left: -8px; padding: 3px 0 0 16px; margin-bottom: 8px; background: transparent url(../images/red24.png) no-repeat 0px 0; }

body.group #content .rows { border: solid 1px #DE0935; border-width: 1px 0; padding: 0 0 8px 8px; margin: 0; list-style: none; }
body.group #content .rows li { padding: 8px 0 8px 0; clear: both; overflow: auto; border-bottom: dashed 1px #DE0935; }
body.group #content .rows li.last { border: none; padding-bottom: 0; }
body.group #content .rows h3 { font-weight: bold; }
body.group #content .rows li .text { }

body.group #content .col .rows h3 span { font-weight: normal; }
body.group #content .cols .events h3 { font-weight: bold; margin-left: 4.8em; }
body.group #content .cols .events li .text { margin-left: 4.8em; }
body.group #content .cols .events .date { float: left; width: 3.6em; margin:0; color: #434344; background-color: #fff; border: solid 1px #DE0935; }
body.group #content .cols .events .date span { display: block; padding: 4px 8px; text-align: center; }
body.group #content .cols .events .date .day { font-weight: bold; color: #DE0935; }
body.group #content .cols .events .date .month { border-top: solid 1px #DE0935; font-weight: bold; font-size: 0.875em; }
body.group #content .cols .files { float: right; }

body.group #content .posts { margin-bottom: 2em; }

body.group #content .posts h3 { float: left; width: 60%; font-weight: normal; }
body.group #content .posts .date { float: right; width: 35%; margin: 0; border: 0; text-align: right; font-size: 0.9em; }
body.group #content .date em { color: inherit; }
body.group #content .view-header { padding-bottom: 4px; line-height: 1; margin-top: 1em; }

body.group #content .views-view-grid tr { border: 0; }
body.group #content .views-view-grid td { padding: 16px 0 16px 0; width: 33%; text-align: center; vertical-align: bottom; }

#secure .rows { padding: 0; }
#secure .rows li { float: left; width:100%; margin: 0; padding: 8px 0 8px 0; border-bottom: dashed 1px #DE0935; list-style: none; }

#events.secure .rows { padding: 0; }
#events.secure .rows li { float: left; width:100%; margin: 0; padding: 8px 0 8px 0; border-bottom: dashed 1px #DE0935; list-style: none; }

#events.secure .rows h3 { font-weight: bold; margin-left: 4.8em; }
#events.secure .rows .text { margin-left: 4.8em; }
#events.secure .rows .date { float: left; width: 3.6em; margin: 0; color: #434344; background-color: #fff; border: solid 1px #DE0935; }
#events.secure .rows .date span { display: block; padding: 4px 8px; text-align: center; }
#events.secure .rows .date .day { font-weight: bold; color: #DE0935; }
#events.secure .rows .date .month { border-top: solid 1px #DE0935; font-weight: bold; font-size: 0.875em; }

#files.secure .rows { padding: 0; }
#files.secure .rows li { margin: 0; padding: 8px 0 8px 0; border-bottom: dashed 1px #DE0935; list-style: none; }
#files.secure .rows .filefield-file { margin: 8px 0 0 0; }
#files.secure .rows .filefield-icon { float: left; margin: 0 8px 0 0; }
#files.secure .rows .filefield-icon img { vertical-align: middle; }

#posts.secure .rows { padding: 0; }
#posts.secure .rows li { overflow: auto; margin: 0; padding: 8px 0 8px 0; border-bottom: dashed 1px #DE0935; list-style: none; }
#posts.secure .rows h3 { float: left; width: 60%; font-weight: normal; }
#posts.secure .rows .date { float: right; width: 35%; margin: 0; border: 0; text-align: right; font-size: 0.9em; }
#posts.secure .rows .date em { color: inherit; }
#posts.secure .rows .text { clear: both; }

.main .filefield-file { margin: 0 0 4px 0; }
.main .filefield-icon { float: left; margin: 0 8px 0 0; }
.main .filefield-icon img { vertical-align: middle; }
.main .filefield .field-items { list-style: none; padding: 0; }

.secure .views-table td.views-field-name img { vertical-align: middle; margin-right: 0.5em; }

/* profiles */
#content .profile {  }
#content .profile .picture { float: left; margin-right: 16px; width: 178px; height: 178px; border: solid 1px #434344; }
#content .profile .details { float: left; }
	#content .profile .details h3 { float: left; width: 10em; margin-right: 16px; font-weight: normal; text-align: right; }
	#content .profile .details p { float: left; width: 360px; margin-bottom: 4px; }
	#content .profile .details p.profile-profile_firstname,
	#content .profile .details p.profile-profile_lastname  { font-weight: bold; }
	
	
/* hide og public checkbox on node edit form */
#edit-og-public-wrapper { visibility: hidden; height: 0; margin: 0; overflow: hidden; }

/* vertical box fix */
body.secure #node-form .standard,
#node #node-form .admin { clear: both; margin-bottom:1em; }

