@charset 'UTF-8';

/***** 全般 *****/
body {
	margin: 0;
	padding: 0;
	font-family: sans-serif;
	line-height: 1.4;
	color: #555555;
	background-image: url(../images/misc/bg.jpg);
}

a:link {
	color: #0C89CB;
}

a:visited {
	color: #E63E89;
}

a.remake {
	display: inline-block;
	margin: 8px;
	vertical-align:-25px;
	width: 223px;
	height: 58px;

	background-image: url(../images/buttons/btn_remake.png);
}
a.remake:hover {
	background-image: url(../images/buttons/btn_remake_on.png);
}

img {
	vertical-align: middle;
	border: 0;
}

table th {
	white-space: nowrap;
}

table caption {
	font-weight: bold;
}

fieldset {
	margin: .25em;
	padding: 5px;
	border: 1px solid #CCCCCC;
}

div.fieldset {
	padding: 5px;
	border: 1px solid #CCCCCC;
	margin-top: 2em;
}

div.fieldset div.legend {
	height: 0;
	position: relative;
	right: 6px;
	bottom: 24px;
	font-weight: bold;
	color: #DC6F96;
}

input,
select,
button {
	vertical-align: middle;
}

.invisible {
	display: none;
}

.warn,
.red {
	color: #FE4334;
	line-height: 130%;
	letter-spacing: normal;
	font-weight: bold;
}
.required {
	color: #FE4334;
}

.note {
	color: #608B16;
	border: 2px solid;
	padding: .5em;
	font-size: 14px;
}

.notice {
	background-color: #FBF0F4;
	padding: .5em;
	text-align: center;
}

.warning {
	background-color: #FFFF88;
	border: 2px solid Red;
	padding: .5em;
	text-align: center;
}
.example {
	color: #C71585;
	font-size: 80%;
}

/* 通貨・数字 */
.money {
	font-family: monospace;
	text-align: right;
	white-space: nowrap;
}

.grand-total {
	font-weight: bold;
	font-size: large;
	text-decoration: underline;
}

/* ヘッダを固定 */
div.header {
	position: fixed;
	top: 0;
	left: 0;
	height: 90px;
	z-index: 10;
	background-color: #FFFFFF;
	width: 100%;
}

/* タイトルバー*/
div.titlebar {
	padding: 0 20px;
	border-bottom: 2px solid #F7DDE6;
}

div.titlebar div.title {
	font-weight: bold;
	font-size: 10pt;
	margin-top: 10px;
	color: #E63E89;
	vertical-align: middle;
	float: left;
}
div.titlebar div.title img {
	vertical-align: middle;
	margin-right: 2em;
}

div.titlebar div.links {
	float: right;
}
div.titlebar div.links .social,
div.titlebar div.links .social .fb-like,
div.titlebar div.links .social .mixi-like  {
	float: left;
}

div.titlebar div.links a.item {
	font-size: 9pt;
	margin-top: 5px;
	margin-left: 1em;
	float: right;
	text-decoration: none;
	color: #555555;
	text-indent: 10px;
	background-image: url(../images/icons/toplink.gif);
	background-repeat: no-repeat;
	background-position: 0 50%;
}
div.titlebar div.links span.item {
	font-size: 9pt;
	margin-top: 5px;
	float: right;
}
div.titlebar div.links a:hover {
	color: #E498B2;
}
div.titlebar div.flow {
	display: inline-block;
	white-space: nowrap;
}
div.titlebar,
div.body {
	min-width: 380px;
}

/***** 下部メニュー *****/
div.bottombar {
	margin-left: 20px;
	line-height: 40px;
}

div.bottombar a {
	font-size: 9pt;
	text-align: center;
	float: left;
	width: 108px;
	text-decoration: none;
	color: #555555;
}

/***** 内容 *****/
div.body {
	position: relative;
	margin: 20px;
	margin-top: 120px;
}

div.body form {
	margin: 0;
}

div.body table.visible {
	border-collapse: collapse;
	margin: 1em;
	font-size: 10pt;
}

div.body table.visible th {
	background-color: #F7DDE6;
	padding: .25em;
	border: 1px solid #CCCCCC;
}

div.body table.visible td {
	padding: .25em;
	border: 1px solid #CCCCCC;
}

/***** フッタ *****/
div.footer {
	clear: both;
	padding: 8px 0 0 20px;
	border-top: 1px solid #DB7D97;
	background-color: #E599B3;
	height: 46px;
	font-size: 9pt;
}

div.footer a {
	color: White;
	text-decoration: none;
}

/***** サイドバー *****/
div.sidebar {
	float: right;
	width: 208px;
}
div.sidebar .showmenu {
	display: none;
	background-color: Gray;
	color: White;
	padding: .5em;
	text-align: center;
}

div.sidebar div.login {
	border: 1px solid #CCCCCC;
	background-color: White;
	margin: 4px 0 0 0;
	font-size: 10pt;
	height: 30px;
}
div.sidebar div.login a {
	float: left;
	width: 98px;
	line-height: 30px;
	text-align: center;
	color: #555555;
	text-decoration: none;
}
div.sidebar div.login a:hover {
	background-color: #FDE7EE;
}
	
div.sidebar div.login a.left {
	border-right: 1px solid #CCCCCC;
	width: 99px;
}

div.sidebar div.items {
	border: 1px solid #CCCCCC;
}

div.sidebar div.box {
	border: 4px solid #F7DDE6;
	background-color: #F7DDE6;
}

div.sidebar h2 {
	font-size: 14px;
	line-height: 40px;
	background-color: #F6F6F6;
	margin: 0;
	padding: 0 10px;
}

div.sidebar div.items div {
	font-size: 12px;
	background-color: White;
}
div.sidebar div.items a {
	color: #555555;
	text-decoration: none;
	display: block;
	line-height: 30px;
	padding: 0 10px 0 20px;
	background-image: url(../images/misc/top-dotted.gif);
	white-space: nowrap;
}
div.sidebar div.items a:hover {
	background-image: url(../images/misc/top-dotted-pink.gif);
	color: White;
}
div.sidebar div.items a.first {
	background-image: url(../images/misc/top-dotted-first.gif);
}
div.sidebar div.items a.first:hover {
	background-color: #E498B2;
	background-image: none;
}
div.sidebar div.banners {
	text-align: center;
}
div.sidebar div.banners img {
	margin: 4px 0 0 0;
}
div.sidebar div.calendar {
	text-align: center;
	font-weight: bold;
	font-size: 9pt;
}

/***** 内容 *****/
div.content {
	margin: 0 208px 0 0;
	padding: 0 8px 0 0;
	font-size: 10pt;
}

div.content h1 {
	border-bottom: 1px dashed #CCCCCC;
	font-size: 18pt;
	font-weight: normal;
	line-height: 1.8;
}

div.content h2 {
	font-size: 11pt;
	text-indent: 12px;
	background-image: url(../images/icons/h2.gif);
	background-repeat: no-repeat;
	background-position: 0 50%;
}

h3 {
	font-size: 11pt;
	padding: 5pt;
	border: 1px solid #CCCCCC;
	border-left: 3px solid #E498B2;
}
div.content div.box {
	margin-left: 5px;
}

div.more {
	text-indent: 12px;
	background-image: url(../images/icons/arrow.gif);
	background-repeat: no-repeat;
	background-position: 0 50%;
}

/***** オプション *****/
div.content div.options div.fieldset {
	border: none;
}
div.content div.options div.legend {
	color: #EEA95B;
}

#textStyle { width:200px; margin-right:20px; float:left; }
#textStyleOptions{ margin-left:220px; }


div.content div.options div.description {background-color: #FBEEDE;	padding: 10px; margin-top:-25px;

}
div.content div.options div.select div.fieldset,
div.content div.options div.description { display:block}
div.content div.options div.description {
	font-size: 9pt;

}
div.content div.options div.description span.caption {
	color: White;
	background-color: #EEA95B;
	font-weight: bold;
	padding: 5px;
}
div.content div.options div.description div.item {
	padding: 0 10px 5px 10px;
	border-bottom: 1px solid #EEA95B;
	margin: 5px 0;
	background-image: url(../images/misc/style-list.gif);
	background-repeat: no-repeat;
	background-position: 0 2px;
}
div.content div.options div.input { margin-left:-220px;
}
div.content div.options div.input div.fieldset div.fieldset {
	border: 1px solid #CCCCCC; width:99%;
}
div.content div.options div.input div.fieldset div.fieldset div.legend {
	color: #555555;
}

.ib {
	display: inline-block;
	margin-right: 5px;
}
.ib label {
	font-weight: bold;
	display: block;
	text-align: center;
}
.ib label img{ margin-bottom:5px;}
div.content div.flow {
	white-space: nowrap;
}

#categories div {
	margin: 2px;
	padding: 2px;
	border: 1px solid LightGray;
	background-color: White;
	cursor: default;
}
#categories.disabled {
	color: LightGray;
}


/***** 2015/4/15 Supplementary image add
--------------------------------------- *****/
.clearfix { display: inline-table; }
.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

div.content div.box-approach {float:left; width:auto; margin-right:30px;}
div.supplementaryImg{ float:right;}

div.supplementaryImg,div.supplementaryImg-02,div.supplementaryImg-03{ padding-top:10px;}
div.supplementaryImg-03 img{float:left;}
div.supplementaryImg-03 br{display: none;}

div.supplementaryImg-03_2 { padding:0 10px; float:left;}
div.supplementaryImg-03_2 p{ margin:0 0 10px;}

textarea#title,
textarea#description {
	width: 60ex;
	text-align: center;
}
