@charset "UTF-8";
/* CSS Document */

*{
	margin:0;
	padding:0;
}

html {
	height:100%;
}

body {
	-webkit-text-size-adjust: none;
	width:100%;
	height:100%;
	margin:0 auto;
	
	position:relative;
	
	text-align:center;
	background:#FFF;
	font-family: Roboto, ArialMT, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", メイリオ, sans-serif;
	font-size: 13px;
	line-height: 1.5;
	color:#333;
}


form {
	overflow-x:hidden;
}


h1,h2,h3,h4,h5,h6,h7,p {
	margin:0;
}

a {
	color:#0a6ff5;
}
a:hover {
	color:#33CCFF;
}

img {
	border:none;
	width:100%;
}

.clear {
	clear:both;
	height:0;
	overflow:hidden;
	position:relative;
}

a.link_txt_out {
	background:url(../images/mk_link_out.gif) no-repeat left top;
	padding-left:18px;
	min-height:18px;
}

a.link_txt {
	background:url(../images/mk_link_text.gif) no-repeat left 2px;
	padding-left:14px;
	min-height:16px;
}


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

#container {
	width: 100%;
	position: relative;
}

body > #container {
	height: auto;
}


/*ヘッダー部*/
/*--------------------------------------------------------------------------*/


#header {
	border-bottom:1px solid #BBBBBB;
	background-color:#BB90CF;
	padding:5px;
	position:relative;
	text-align:left;
}

#header .logo {
	display:inline-block;
	margin:1px 0;
	position:relative;
	width:123px; height::21px;
	font-size:12px;
}

#header .goHome {
	display:inline-block;
	position:absolute;
	top:5px; right:5px;
	width:90px; height::22px;
}



/*コンテンツ部*/
/*--------------------------------------------------------------------------*/

#contents {
	padding:0 10px 30px;
	text-align:center;
}


/* ピンクの枠線 */
#main {
	background: url(../images/sp/bg_main_top.png) repeat-x center top #FFF;
	background-size:300px auto;
	border:2px solid #BB90CF;
	border-radius:0 0 10px 10px;
	position:relative;
	margin:1.5em 0;
	text-align:left;
	padding-top:20px;
	
	box-shadow:2px 2px 4px 0px rgba(0,0,0,0.2);
	-webkit-box-shadow:rgba(0,0,0,0.2) 2px 2px 4px 0px;
	-moz-box-shadow:rgba(0,0,0,0.2) 2px 2px 4px 0px;
}

#main-inner {
	margin:13px;
	margin-bottom:2em;
	padding:0;
	background:#cff0ff;
	border:5px solid #cff0ff;
	border-radius:10px;
	box-shadow:1px 0 0 1px #fff inset;
}

#main-inner2 {
	margin:0;
	padding: 0;
	padding-bottom:10px;
	background:#cff0ff;
	border:1px solid #fff;
	border-radius:8px;
	text-align:center;
}

/* 説明文 */
.lead {
	margin:15px;
	margin-top:1em;
}





/*フッター*/
/*--------------------------------------------------------------------------*/


#footer {
	padding-top:14%;
	background: #bae33a url(../images/sp/bg_main_btm.png) no-repeat left top;
	background-size:100% auto;
	
	text-align:center;
	width:100%;
}

#footer-inner {
	color:#FFF;
	font-size:12px;
	background-color:#BB90CF;
	margin:0 auto;
	padding:5px;
}


/*共通パーツ*/
/*--------------------------------------------------------------------------*/

input[type="text"],
input[type="password"] {
	-webkit-appearance: none;
	appearance: none;
	border:1px solid #999;
	box-shadow: 2px 2px 2px 0 rgba(0,0,0,0.2) inset;
	-webkit-box-shadow:rgba(0,0,0,0.2) 2px 2px 2px 0px inset;
	-moz-box-shadow:rgba(0,0,0,0.2) 2px 2px 2px 0px inset;
}

input[type="image"] {
	width:240px;
}


/*エラーメッセージ*/
.errMsg {
	color:#F00;
	margin:0px auto;
	background-color:#FF9;
	padding:2px 6px;
	position: relative;
	border-radius: 5px;
	font-size:11px;
}

.fm_login .errMsg {
	padding:2px 6px;
	margin:0;
}
.fm_login td.msg {
	padding:5px 0;
}


/*ページタイトル*/
h2.pTitle {
	margin:15px;
	margin-top:1em;
	border:1px solid #ff7b90;
	border-radius:10px;
	background-color:#fff7fa;
	color:#ff5b74;
	font-size:14px;
	font-weight:bold;
	text-align:center;
	padding:0.3em 1em;
}



/*ログイン*/
/*--------------------------------------------------------------------------*/


input.uid, 
input.pwd {
	width:100%; height:23px;
}


.block-form .login {
	padding:15px;
	text-align:left;
	width:100%;
}
.login th {
	color:#FF658D;
	font-size:14px;
	font-weight:bold;
	padding-botom:5px;
	padding-right:10px;
	width:6em;
}
.login td {
	width:auto;
	padding:5px 0px;
	text-align:left;
}



/*ログイン方法など*/
.block-caution {
	border:1px solid #b3b3b3;
	margin:15px;
}

.block-caution dl {
	margin:0;
}
.block-caution dt {
	background-color:#b3b3b3;
	color:#fff;
	text-align:center;
	font-size:13px;
	font-weight:bold;
	padding:0.2em 0.5em;
}
.block-caution dd {
	background-color:#f9f9f9;
	padding:0.4em 0.8em;
	font-size:13px;
}
.block-caution dd span {
	color:#ff7bac;
}

/*対象書籍*/
.target_book {
	margin: 20px auto 0 auto;
	border: 1px solid #CCC;
	background-color:#F2F2F2;
	position: relative;
	border-radius: 5px;
	text-align:left;
}

.target_book h2 {
	background-color:#7ac943;
	color:#fff;
	font-weight: bold;
	font-size:13px;
	text-align:center;
	padding:0.2em 0.5em;
}
.target_book p {
	margin:10px 15px;
}
.target_book .book {
	margin:15px;
}

.book {
	line-height:1.7;
	display:inline-block;
	white-space:nowrap;
	min-width:18em;
}
.book img {
	display:block;
	float:left;
	width:60px;
	margin-right:15px;
}
.book h3 {
	font-size:12px;
}




/*入力*/
/*--------------------------------------------------------------------------*/

.fm_input {
	position: relative;
}

.inBody {
	padding:0 10px;
}

/*入力項目の見出し*/
.block-form .idx {
	text-align:left;
	font-size:14px;
	font-weight:bold;
	letter-spacing:0.1em;
	margin:10px 10px 5px;
}
.block-form .idx .must {
	font-size:10px;
	color:#ff1d25;
}
.block-form .idx .notMust {
	font-size:10px;
	color:#728eae;
}

input.name_l, 
input.name_f, 
input.name_l_yomi, 
input.name_f_yomi {
	width:100%; height:23px;
}

/*テーブル*/
.block-form .input1,
.block-form .input2,
.block-form .input3 {
	background-color:#FFF;
	border-radius: 10px;
	width:100%;
	padding:5px 2px;
	margin-bottom:10px;
}

.block-form .input1,
.block-form .input3 {
}

.input1 th,
.input3 th {
	padding:10px;
	text-align:center;
	width:25px;
}
.input1 td,
.input3 td {
	width:auto;
	text-align:left;
	padding-right:15px;
}
.input3 th.sei,
.input3 th.mei {
	font-size:12px;
}

.block-form .input2 {
	margin-bottom:1.5em;
}
.input2 input {
	margin-right:10px;
}

.input2 td {
	white-space:nowrap;
	height:17px;
	text-align:center;
	font-size:14px;
	font-weight:bold;
}
.input2 td.boy {
	width:50%;
	padding:5px;
	color:#3fa9f5;
}
.input2 td.girl {
	width:50%;
	padding:5px;
	color:#ff5b74;
}



/**/
.yomiCaution {
	margin:5px 0px;
	font-size:10px;
	color:#446994;
	text-align:left;
}


/*診断に関するご注意*/
.caution_input {
	margin-top:25px;
	border:1px solid #b3b3b3;
	margin:15px;
	background-color:#f9f9f9;
	font-size:13px;
	text-align:left;
}
.caution_input h2 {
	background-color:#b3b3b3;
	color:#fff;
	text-align:center;
	font-size:13px;
	font-weight:bold;
	padding:0.2em 0.5em;
}
.caution_input ul {
	margin:0;
	padding:10px 15px;
	background-color:#F9F9F9;
	font-size:12px;
}

.caution_input li {
	margin-bottom:5px;
	line-height:1.5;
	margin-left:1.2em;
}





/*診断結果*/
/*--------------------------------------------------------------------------*/

.fm_result {
	text-align:center;
	padding:10px;
	padding-top:20px;
}

/*入力された名前*/

.inName {
	color:#FF6464;
	margin-top:6px;
	width:100%;
	background-color:#FFF;
	text-align:center;
	border-radius: 20px;
}
.inName table {
	max-width:100%;
	margin:0 auto;
}

.nm {
	vertical-align:bottom;
	font-size:16px;
	line-height:100%;
	white-space:nowrap;
	padding:10px 0px 8px 0px;
	text-align:center;
	
}

.chan_kun {
	font-size:11px;
	letter-spacing:-2px;
	
	font-weight:bold;
	color:#333;
	white-space:nowrap;
	text-align:left;
	
	padding-left:5px;
	padding-bottom:6px;
	vertical-align:bottom;
	
}


/*名前の１文字毎の文字数*/
.inPart {
	width:100%;
	margin:0 auto;
	font-size:16px;
}
.char {
	font-size:21px;
	text-align:center;
	position:relative;
	
	width:1em;
	letter-spacing:0px;
	margin:0;
	display:inline-block;
	min-height:1em;
	display:inline-block;
	font-weight:bold;
	
}
.num {
	position:absolute;
	top:-28px;
	font-size:10px;
	width:100%;
	text-align:center;
}
.nm span {
	display:inline-block;
	width:100%;
}


/*  響き＆バランスCheck!　　*/
.tbl_yomi {
	margin:20px 0;
	word-wrap:break-word;
}
.tbl_yomi h2 {
	background-color:#3fa9fe;
	color:#fff;
	font-size:10px;
	text-align:center;
	padding:0.3em 0.8em;
	border-radius:5px 5px 0 0;
}

.tbl_yomi div {
	border-radius: 0 0 5px 5px;
	border:1px solid #3fa9fe;
	border-top:none;
	background-color:#edf7fe;
	font-size:12px;
	text-align:left;
	padding:0.3em 0.8em;
}

.tbl_yomi dl {
	position:relative;
	color:#FF6464;
	margin:0;
	padding:2px;
	border-bottom:1px dotted #ffabab;
}
.tbl_yomi dt {
	position:absolute;
	left:0; top:2px;
	width:5em;
}
.tbl_yomi dd {
	margin-left:6em;
	letter-spacing:0.1em;
}

.yomi dt {
	letter-spacing:1em;
}

.tbl_yomi dl.ini {
	border-bottom:none;
}



/*運勢*/

.tbl_result {
	padding:0px 15px 5px;
	background-color:#3fa9f5;
	border-radius:5px;
	margin-bottom:0.5em;
}
.tbl_result table {
	width:100%;
	border-spacing:5px;
	padding:5px 0;
}

.tbl_result th {
	vertical-align:middle;
	width:26%;
	color:#fff;
	font-size:15px;
	font-weight:bold;
	text-align:center;
	padding-right:10px;
	letter-spacing:0.2em;
}

.tbl_result th.kakusu {
	width:30%;
	text-align:center;
}
.tbl_result th.unsei {
	width:40%;
	margin:0;
	text-align:center;
}

.tbl_result td.kakusu {
	width:30%;
	background-color:#fff;
	border-radius:5px;
	font-weight:bold;
}
.tbl_result td.unsei {
	width:40%;
	margin:0;
	background-color:#fff;
	border-radius:5px;
}



.tbl_result td {
	font-size:18px;
	color:#555;
	text-align:center;
	padding:7px 0;
}
.tbl_result td img {
	width:80px;
}



.rowSoukaku {
	border-bottom:2px dotted #fff;
}
.tbl_result .rowSoukaku td {
	background-color:#ffffb3;
}




/*比較検討*/
.kento {
	text-align:left;
	font-size:10px;
}
.kento ul {
	margin:0; padding:0;
}
.kento li {
	margin-left:1.5em;
	padding:0;
}


/*ボタン*/
.btn_result img {
	width:120px;
}




/*決定の前に*/

.block-beforeDeside {
	margin: 13px;
	position:relative;
	padding:2em;
	padding-left:27%;
	border-bottom:1px solid #ccc;
	border-top:1px solid #ccc;
	margin-bottom:2em;
	
	background:url(../images/img_family.png) no-repeat 5% 2.9em;
	background-size:70px auto;
}
.block-beforeDeside h2 {
	background-color:#ff7bac;
	text-align:center;
	color:#fff;
	padding:0.3em 1em;
	font-size:13px;
}
.block-beforeDeside p {
	background-color:#ffe8f2;
	border:2px solid #ff7bac;
	padding:0.5em 0.8em;
	text-align:left;
	
}








/*
バナーローテーション
*/

#banner {
	position:relative;
	margin:0px 0 30px;
	text-align:center;
	width:300px; height:90px;
	display:inline-block;
}

ul#rotation {
	position:relative;
	margin:0 auto;
	padding:0;
	list-style:none;
	width:300px;
}

ul#rotation li {
	margin:0;
	padding:0;
	position:absolute;
	top:0;
	left:50%;
	margin-left:-150px;
	display: block;
	width:100%; height:auto;
}

a img {
    border-style:none;
}




/*エピソード募集*/
.block-episode {
	margin:0 auto 30px;
	position:static;
	width:300px;
	display:block;
}




/*西東社のおすすめＢＯＯＫ*/
.block-osusume {
	margin:0;
	text-align:left;
}

.block-osusume h2 {
	background-color:#fbb03b;
	color:#fff;
	font-size:13px;
	font-weight:bold;
	text-align:center;
	padding:0.3em 1em;
	border-bottom:1px solid #ccc;
}

.block-osusume ul {
	margin:0; padding:0;
	background-color:#f9f9f9;
	list-style:none;
}

.block-osusume li {
	background:url(../images/sp/mk_link.png) no-repeat 10px center;
	background-size: auto 25%;
	padding:10px 15px 10px 30px;
	border:1px solid #ccc;
	border-top:none;
}






/*注意事項*/
/*--------------------------------------------------------------------------*/

#caution #contents {
	text-align:left;
}

#caution h1 {
	padding:0.3em 1em;
	color:#fff;
	background:#ff5b74;
	border-radius:0.6em;
	font-size:14px;
	text-align:center;
	margin-bottom:1em;
	margin-top:20px;
}


.block-01,
.block-02,
.block-03 {
	padding:0 10px;
	margin-bottom:1em;
}


#caution .block-01 ul {
	margin:0;
	margin-bottom:20px;
	padding-left:1.5em;
}
#caution .block-01 li {
	margin-bottom:10px;
}

#caution .sample {
	margin-bottom:1em;
}

#caution h2 {
	padding:0.5em 1em;
	color:#ff4f6a;
	background:#ffe4e8;
	border:1px solid #ff788d;
	border-radius:2.0em;
	font-size:13px;
	margin-bottom:0.5em;
	margin-top:2em;
}

#caution h2 span {
	font-size:10px;
}
#caution h2 span:before {
	content:"　";
}

#caution .tbl {
	border:2px solid #ff7bac;
	margin:0.5em 0;
	overflow:scroll;
}

#caution .tbl img {
/*	height:355px;*/ width:inherit;
}


.pc_condition {
	background:#e8f5ff;
	border: 1px solid #ccc;
	padding:1em 2em;
	font-size:13px;
	line-height:1.8;
	margin-bottom:1em;
}



ul.condCaution {
	list-style-type:none;
	padding-bottom:1em;
	border-bottom:1px solid #ccc;
}

.condCaution li {
	padding-left:1em;
	color:#FF0000;
}

.condCaution li span {
	margin-left:-1em;
}

.btn_close {
	text-align:center;
	margin:0 auto;
	
	width:40%;
	padding:0.5em;
	border:1px solid #808080;
	border-radius:0.5em;
	
	background-color:#e6e6e6;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0.84, #e6e6e6), color-stop(0.00, #ffffff));
	background: -webkit-linear-gradient(top, #ffffff 0%, #e6e6e6 84%);
	background: -moz-linear-gradient(top, #ffffff 0%, #e6e6e6 84%);
	background: -o-linear-gradient(top, #ffffff 0%, #e6e6e6 84%);
	background: -ms-linear-gradient(top, #ffffff 0%, #e6e6e6 84%);
	background: linear-gradient(to bottom, #ffffff 0%, #e6e6e6 84%);
	
	box-shadow:2px 3px 5px 0 rgba(0,0,0,0.2);
	-webkit-box-shadow:rgba(0,0,0,0.2) 2px 3px 5px 0;
	-moz-box-shadow:rgba(0,0,0,0.2) 2px 3px 5px 0;
}


.btn_close a {
	text-decoration:none;
	color:#333;
}



/*　画数解説欄　*/
#kakusu {
	margin-top: 0;
	padding: 0 13px 2.5em;
}
#kakusu h3 {
	background-color: #BB90CF;
	color: #fff;
	padding: 0.3em;
	text-align: center;
	font-size: 14px;
	border-radius: 0.3em;
}
#kakusu dt {
	background-color: #ECE0F1;
	font-size: 14px;
	font-weight: bold;
	text-align: left;
	padding: 0.3em 1em;
	margin-top: 1.2em;
	letter-spacing: 0.1em
}
#kakusu dt span {
	font-size: 12px;
}
#kakusu dt em {
	color: #FF1D25;
	font-style:normal;
}
#kakusu dd {
	margin-left: 1.8em;
	margin-top: 1.2em;
	text-align: left;
}


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


