@charset "UTF-8";

/*------------------------------------------------------------
align
-------------------------------------------------------------*/

.al-c{ text-align: center; }
.al-r{ text-align: right; }
.al-l{ text-align: left; }

/*------------------------------------------------------------
valign
-------------------------------------------------------------*/

.vl-t{ vertical-align: top!important; }
.vl-m{ vertical-align: middle!important; }
.vl-b{ vertical-align: bottom!important; }

/*------------------------------------------------------------
margin
-------------------------------------------------------------*/

.m0{ margin: 0!important; }
.m0-t{ margin-top: 0!important; }
.m0-r{ margin-right: 0!important; }
.m0-b{ margin-bottom: 0!important; }
.m0-l{ margin-left: 0!important; }

.m5{ margin: 5px!important; }
.m5-t{ margin-top: 5px!important; }
.m5-r{ margin-right: 5px!important; }
.m5-b{ margin-bottom: 5px!important; }
.m5-l{ margin-left: 5px!important; }

.m10{ margin: 10px!important; }
.m10-t{ margin-top: 10px!important; }
.m10-r{ margin-right: 10px!important; }
.m10-b{ margin-bottom: 10px!important; }
.m10-l{ margin-left: 10px!important; }

.m15{ margin: 15px!important; }
.m15-t{ margin-top: 15px!important; }
.m15-r{ margin-right: 15px!important; }
.m15-b{ margin-bottom: 15px!important; }
.m15-l{ margin-left: 15px!important; }

.m20{ margin: 20px!important; }
.m20-t{ margin-top: 20px!important; }
.m20-r{ margin-right: 20px!important; }
.m20-b{ margin-bottom: 20px!important; }
.m20-l{ margin-left: 20px!important; }

.m25{ margin: 25px!important; }
.m25-t{ margin-top: 25px!important; }
.m25-r{ margin-right: 25px!important; }
.m25-b{ margin-bottom: 25px!important; }
.m25-l{ margin-left: 25px!important; }

.m30{ margin: 30px!important; }
.m30-t{ margin-top: 30px!important; }
.m30-r{ margin-right: 30px!important; }
.m30-b{ margin-bottom: 30px!important; }
.m30-l{ margin-left: 30px!important; }

.m40{ margin: 40px!important; }
.m40-t{ margin-top: 40px!important; }
.m40-r{ margin-right: 40px!important; }
.m40-b{ margin-bottom: 40px!important; }
.m40-l{ margin-left: 40px!important; }

.m50{ margin: 50px!important; }
.m50-t{ margin-top: 50px!important; }
.m50-r{ margin-right: 50px!important; }
.m50-b{ margin-bottom: 50px!important; }
.m50-l{ margin-left: 50px!important; }


/*------------------------------------------------------------
padding
-------------------------------------------------------------*/

.p0{ padding: 0!important; }
.p0-t{ padding-top: 0!important; }
.p0-r{ padding-right: 0!important; }
.p0-b{ padding-bottom: 0!important; }
.p0-l{ padding-left: 0!important; }

.p5{ padding: 5px!important; }
.p5-t{ padding-top: 5px!important; }
.p5-r{ padding-right: 5px!important; }
.p5-b{ padding-bottom: 5px!important; }
.p5-l{ padding-left: 5px!important; }

.p10{ padding: 10px!important; }
.p10-t{ padding-top: 10px!important; }
.p10-r{ padding-right: 10px!important; }
.p10-b{ padding-bottom: 10px!important; }
.p10-l{ padding-left: 10px!important; }

.p15{ padding: 15px!important; }
.p15-t{ padding-top: 15px!important; }
.p15-r{ padding-right: 15px!important; }
.p15-b{ padding-bottom: 15px!important; }
.p15-l{ padding-left: 15px!important; }

.p20{ padding: 20px!important; }
.p20-t{ padding-top: 20px!important; }
.p20-r{ padding-right: 20px!important; }
.p20-b{ padding-bottom: 20px!important; }
.p20-l{ padding-left: 20px!important; }

.p25{ padding: 25px!important; }
.p25-t{ padding-top: 25px!important; }
.p25-r{ padding-right: 25px!important; }
.p25-b{ padding-bottom: 25px!important; }
.p25-l{ padding-left: 25px!important; }

.p30{ padding: 30px!important; }
.p30-t{ padding-top: 30px!important; }
.p30-r{ padding-right: 30px!important; }
.p30-b{ padding-bottom: 30px!important; }
.p30-l{ padding-left: 30px!important; }

.p40{ padding: 40px!important; }
.p40-t{ padding-top: 40px!important; }
.p40-r{ padding-right: 40px!important; }
.p40-b{ padding-bottom: 40px!important; }
.p40-l{ padding-left: 40px!important; }

.p50{ padding: 50px!important; }
.p50-t{ padding-top: 50px!important; }
.p50-r{ padding-right: 50px!important; }
.p50-b{ padding-bottom: 50px!important; }
.p50-l{ padding-left: 50px!important; }
/*------------------------------------------------------------
ボタン
-------------------------------------------------------------*/

.btn{
	box-sizing: border-box;
	-moz-box-sizing: padding-box;
	margin: 2.5em 0 3em;
	text-align: center;
}
@media only screen and (max-width : 640px){
	.btn{
			margin: 2.5em 0;
	}
}
.btn-cv{
	position: relative;
	padding: .5em 0;
	overflow: hidden;
}
.btn-cv a{
	position: relative;
	display: block;
	width: 59%;
	margin: 0 auto;
	padding: 1em 2em;
	border: solid #fff 3px;
	background: #00a23f;
	background: -webkit-linear-gradient(#00a23f, #39900a);
	background: linear-gradient(#00a23f, #39900a);
	border-radius: 12px;
	box-shadow: 1px 1px 10px 0 #a1a1a1;
	color: #fff;
	font-size: 1.8em;
	font-weight: bold;
	text-shadow: 0 0 10px rgba(255,255,255,.8), 1px 1px 1px rgba(0,0,0,.8);
	letter-spacing: 0.05em;
	line-height: 1.3;
	text-align: center;
	text-decoration: none;
	-webkit-transition: .2s ease-in-out;
	transition: .2s ease-in-out;
	vertical-align: middle;
}
@media only screen and (max-width : 640px){
	.btn-cv a{
		font-size: 1.4em;
		letter-spacing: 0.03em;
	}
}
.btn-cv a img{
	vertical-align: middle;
}
.btn-cv a:after{
	content: ' '!important;
}
.btn-cv a:before{
	position: absolute;
	top: 50%;
	right: 15px;
	margin-top: -.5em;
	font-family: "fontawesome";
	font-weight: normal;
	font-size: 1.1em;
	content: "\f138";
}
@media only screen and (max-width : 640px){
	.btn-cv a:before{
		margin-top: -.5.6em;
	}
}
.btn-cv a:hover{
	color: #fff;
	box-shadow: 1px 1px 2px 0 #a1a1a1;
	filter: alpha(opacity=70);
	opacity: .7;
}
.btn-cv + .btn-cv a{
	margin-top: 0;
}
.btn-cv.is-blue a{
	background: #09c;
	background: -webkit-linear-gradient(#09c, #069);
	background: linear-gradient(#09c, #069);
}
.is-reflection a{
	overflow: hidden;
}
.is-reflection a:after{
	position: absolute;
	width: 30px;
	height: 100%;
	top: -180px;
	left: 0;
	-moz-animation: is-reflection 4s ease-in-out infinite;
	-moz-transform: rotate(45deg);
	-ms-animation: is-reflection 4s ease-in-out infinite;
	-ms-transform: rotate(45deg);
	-o-animation: is-reflection 4s ease-in-out infinite;
	-o-transform: rotate(45deg);
	-webkit-animation: is-reflection 4s ease-in-out infinite;
	-webkit-transform: rotate(45deg);
	animation: is-reflection 4s ease-in-out infinite;
	background-color: #fff;
	content: " ";
	opacity: 0;
	transform: rotate(45deg);
}
.is-reflection + .is-reflection a:after{
	-webkit-animation-delay: .3s;
	animation-delay: .3s;
}
@keyframes is-reflection{
	0%{ -webkit-transform: scale(0) rotate(45deg); transform: scale(0) rotate(45deg); opacity: 0; }
	80%{ -webkit-transform: scale(0) rotate(45deg); transform: scale(0) rotate(45deg); opacity: 0.5; }
	81%{ -webkit-transform: scale(4) rotate(45deg); transform: scale(4) rotate(45deg); opacity: 1; }
	100%{ -webkit-transform: scale(50) rotate(45deg); transform: scale(50) rotate(45deg); opacity: 0; }
}
@-webkit-keyframes is-reflection{
	0%{ -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
	80%{ -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
	81%{ -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
	100%{ -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}
.is-trembling a:before{
	-webkit-animation-name:is-trembling;
	-webkit-animation-duration:.8s;
	-webkit-animation-iteration-count:infinite;
	-webkit-animation-timing-function:ease;
	-moz-animation-name:is-trembling;
	-moz-animation-duration:1s;
	-moz-animation-iteration-count:infinite;
	-moz-animation-timing-function:ease;
}
@-webkit-keyframes is-trembling{
	0%{-webkit-transform:translate(-3px, 0);}
	100%{-webkit-transform:translate(0, 0);}
}
.is-bounce{
	animation: bounce 4s infinite;
	-moz-animation: bounce 4s infinite;
	-webkit-animation: bounce 4s infinite;
	-webkit-animation-delay: 4s;
	animation-delay: 4s;
}
@-webkit-keyframes bounce{
	0%, 4%, 10%, 18%, 100%{-webkit-transform: translateY(0);}
	5%{-webkit-transform: translateY(-6px);}
	12%{-webkit-transform: translateY(-4px);}
}
@keyframes bounce{
	20%, 24%, 30%, 34%, 100%{-webkit-transform: translateY(0);transform: translateY(0);}
	25%{-webkit-transform: translateY(-6px);transform: translateY(-6px);}
	32%{-webkit-transform: translateY(-4px);transform: translateY(-4px);}
}
.is-bounce + .is-bounce{
	-webkit-animation-delay: .5s;
	animation-delay: .5s;
}


/*------------------------------------------------------------
補足説明・注意説明
-------------------------------------------------------------*/

.supplement{
	margin: 1.5em 0 2em;
	padding: 3% 4%;
	background: lightyellow;
	background: rgba(255,255,0,.2);
	-webkit-border-radius:4px;
	-moz-border-radius:4px;
	border-radius:4px;
	border: 1px solid #999;
	border-color: rgba(165, 165, 165, 0.2);
	font-size: .94em;
}
@media only screen and (max-width : 640px){
	.supplement{
		margin: 1.5em 0.8em 2em;
	}
}
.supplement p{
	margin-bottom:.8em!important;
}
@media only screen and (max-width : 640px){
	.supplement p{
		margin-left: 0!important;
		margin-right: 0!important;
		line-height: 1.8em!important;
	}
}
.supplement p:last-child{
	margin-bottom:0!important;
}
.supplement.warning{
	background: pink;
	background: rgba(255, 0, 45, 0.18);color:#333;
}
.supplement:before{
	display: inline-block;
	margin-right: .3em;
	font-family: "fontawesome";
	font-size: 1.2em;
	content: '\f0e6';
}
.supplement.warning:before{content:'\f071';}
.supplement.boader:before{content: none;}
.supplement.noicon:before{content: none;}
.supplement.boader{background: none;}


/*------------------------------------------------------------
吹き出し
-------------------------------------------------------------*/

.voice{
	box-sizing: border-box;
	-moz-box-sizing: padding-box;
	margin: 1em 0 1.8em;
	font-size: 0.95em;
	overflow: hidden;
	/zoom: 1;
}
@media only screen and (max-width : 640px){
	.voice{
		width: 94%;
		margin: 1em 3% 1.8em
	}
}
.voice .voicecomment{
	box-sizing: border-box;
	-moz-box-sizing: padding-box;
	position: relative;
	width: 85%;
	padding: 2.5%;
	border: 3px solid #eee;
	background-color: #fff;
	border-radius: 5px;
	color: #444;
	letter-spacing: 0.03em;
	line-height: 1.8em;
}
@media only screen and (max-width : 640px){
	.voice .voicecomment{
		width: 80%;
		letter-spacing: 0.08em;
	}
}
.voice.l .voicecomment{
	float: right;
}
.voice.r .voicecomment{
	float: left;
}
.voice.l .voicecomment:before{
	position: absolute;
	top: 10px;
	left: -11px;
	border-right: 8px solid #eee;
	border-bottom: 8px solid transparent;
	border-top: 8px solid transparent;
	content: '';
}
.voice.l .voicecomment:after{
	position: absolute;
	top: 10px;
	left: -7px;
	border-right: 10px solid #fff;
	border-bottom: 8px solid transparent;
	border-top: 8px solid transparent;
	content: '';
}
.voice.r .voicecomment:before{
	position: absolute;
	top: 10px;
	right: -11px;
	border-left: 8px solid #eee;
	border-bottom: 8px solid transparent;
	border-top: 8px solid transparent;
	content: '';
}
.voice.r .voicecomment:after{
	position: absolute;
	top: 10px;
	right: -7px;
	border-left: 10px solid #fff;
	border-bottom: 8px solid transparent;
	border-top: 8px solid transparent;
	content: '';
}
.voice .voicecomment p{
	margin-bottom: 1em!important;
}
.voice .voicecomment p:last-child{
	margin-bottom: 0!important;
}
.voice figure,
.voice figcaption{
	box-sizing: border-box;
	-moz-box-sizing: padding-box;
	margin: 0;
	padding: 0;
}
.voice .icon{
	box-sizing: border-box;
	-moz-box-sizing: padding-box;
	width: 12%;
	text-align: center;
}
.voice.l .icon{
	float: left;
}
.voice.r .icon{
	float: right;
}
.voice .icon img{
	margin: 0;
	border: 4px solid #f5f5f5;
	border-radius: 50%;
}
.voice .name{
	box-sizing: border-box;
	-moz-box-sizing: padding-box;
	margin-left: 0.8em;
}


/*------------------------------------------------------------
font-size
-------------------------------------------------------------*/

.b{ font-weight: bold!important; }
.normal{ font-weight: normal!important; }

.big{ font-size: 1.2em!important; }
.big2{ font-size: 1.5em!important; }
.big3{ font-size: 1.8em!important; }
.small{ font-size: 0.8em!important; }

.f08em{ font-size: 0.8em; }
.f09em{ font-size: 0.9em; }
.f10em{ font-size: 1.0em; }
.f11em{ font-size: 1.1em; }
.f12em{ font-size: 1.2em; }
.f13em{ font-size: 1.3em; }
.f14em{ font-size: 1.4em; }
.f15em{ font-size: 1.5em; }
.f16em{ font-size: 1.6em; }
.f17em{ font-size: 1.7em; }
.f18em{ font-size: 1.8em; }
.f19em{ font-size: 1.9em; }
.f20em{ font-size: 2.0em; }
.f21em{ font-size: 2.1em; }
.f22em{ font-size: 2.2em; }
.f23em{ font-size: 2.3em; }
.f24em{ font-size: 2.4em; }

.f8pt{ font-size: 8.5pt!important; }
.f9pt{ font-size: 9.0pt!important; }
.f10pt{ font-size: 10pt!important; }
.f11pt{ font-size: 11pt!important; }
.f12pt{ font-size: 12pt!important; }
.f13pt{ font-size: 13pt!important; }
.f14pt{ font-size: 14pt!important; }
.f15pt{ font-size: 15pt!important; }
.f16pt{ font-size: 16pt!important; }
.f17pt{ font-size: 17pt!important; }
.f18pt{ font-size: 18pt!important; }
.f19pt{ font-size: 19pt!important; }
.f20pt{ font-size: 20pt!important; }
.f21pt{ font-size: 21pt!important; }
.f22pt{ font-size: 22pt!important; }
.f23pt{ font-size: 23pt!important; }
.f24pt{ font-size: 24pt!important; }


/*------------------------------------------------------------
font-color
-------------------------------------------------------------*/

.red{ color: #ff3300!important; }/*赤*/
.blue{ color: #0000dd!important; }/*青*/
.green{ color: #008000!important; }/*緑*/
.yellow{ color: #ffff00!important; }/*黄*/
.navy{ color: #1F26A9!important; }/*紺*/
.orange{ color: #ff6600!important; }/*橙*/
.pink{ color: #cc6699!important; }/*ピンク*/
.purple{ color: #660099!important; }/*紫*/
.olive{ color: #808000!important; }/*黄土色*/
.lime{ color: #00ff00!important; }/*黄緑*/
.aqua{ color: #167FA6!important; }/*水色*/
.black{ color: #000!important; }/*黒*/
.gray{ color: #ccc!important; }/*灰*/
.white{ color: #fff!important; }/*白*/


/*------------------------------------------------------------
マーカー
-------------------------------------------------------------*/

.yellow_marker{ background: linear-gradient(transparent 60%, #ffff66 60%)!important; }
.blue_marker{ background: linear-gradient(transparent 60%, #bdddfe 60%)!important; }
.green_marker{ background: linear-gradient(transparent 60%, #def4df 60%)!important; }
.orange_marker{ background: linear-gradient(to bottom, rgba(255, 209, 53, 0) 60%, rgba(255, 209, 53, 0.7) 60%, rgba(255, 209, 53, 0.7) 100%); }


/*------------------------------------------------------------
引用
-------------------------------------------------------------*/

#main-contents blockquote{
		box-sizing: border-box;
	-moz-box-sizing: padding-box;
}
#main-contents blockquote{font-size: 0.95em;padding: 6% 4% 2%;margin: 2.5em 0 3em;position:relative;border: 1px solid;opacity: .8;filter: alpha(opacity=80);-ms-filter: "alpha(opacity=90)";}
#main-contents blockquote:before,
#main-contents blockquote:after{font-family: 'FontAwesome';position:absolute;width:1em;height:1em;display:block;padding: .2em;text-align:center;font-size: 1.3em;line-height:1;background: #fff;}
#main-contents blockquote:before{content:'\f10d';left: -.2em;top: -.3em;}
#main-contents blockquote:after{content:'\f10e';right: -.2em;bottom: -.4em;}
@media only screen and (max-width : 640px){
	#main-contents blockquote{
		width: 94%;
		margin-left: 3%;
		margin-right: 3%;
		padding: 6% 4% 6%
	}
}
#main-contents blockquote p{
	margin-bottom: 1em!important;
}
.cite{
	text-align: right;
}


/*------------------------------------------------------------
下線や取消線の設定
-------------------------------------------------------------*/

.underline{ text-decoration: underline!important; }
.del{ text-decoration: line-through ; }
.noborder{ border: 0!important; }


/*------------------------------------------------------------
box
-------------------------------------------------------------*/

.c_box{
	box-sizing: border-box;
	-moz-box-sizing: padding-box;
	margin: 3em 0 2.5em;
	padding: 1em 4%;
	border: 2px solid #dddddd;
	border-radius: 0.2em;
}
@media only screen and (max-width : 640px){
	.c_box{
		width: 94%;
		margin: 3em 3% 2.5em;
		padding: 1em 4%;
	}
}
.c_box.intitle{
	padding-top: 0;
	padding-bottom: 1.8em;
}
.c_box.intitle .box_title span{
	display: inline-block;
	position: relative;
	top: -0.85em;
	padding: 0.1em 0.7em;
	background: #6d6d6d;
	border-radius: 0.2em;
	color: #ffffff;
	font-size: 1.3em;
	font-weight: bold;
	letter-spacing: 0.08em;
	vertical-align: bottom;
}
@media only screen and (max-width : 640px){
	.c_box.intitle .box_title span{
		letter-spacing: 0.03em;
	}
}
.c_box p{
	margin-bottom: .8em!important;
}
.c_box p:last-of-type{
	margin-bottom: 0!important;
}
@media only screen and (max-width : 640px){
	.c_box p{
		letter-spacing: 0.03em;
		line-height: 1.8em!important;
	}
}
.c_box ul{
	margin: 0!important;
	padding: 0!important;
	list-style-type: none;
}
.c_box ol{
	margin: 0!important;
	padding: 0;
}
.c_box li{
	position: relative;
	margin: 0 0 .8em!important;
	padding-left: 1.2em!important;
	font-weight: bold;
	line-height: 1.7em!important;
}
@media only screen and (max-width : 640px){
	.c_box li{
		margin-bottom: 1em;
		line-height: 1.5em!important;
	}
}
.c_box li:last-child{
	margin-bottom: 0!important;
}
.c_box ul li:before{
	position: absolute;
	display: block;
	top: 9px;
	left: 2px;
	width: 9px;
	height: 9px;
	background: #3e3e3e;
	box-shadow: 0 0 20px rgba(51, 51, 51, 0.15) inset;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	content:" ";
}
@media only screen and (max-width : 640px){
	.c_box ul li:before{
		top: 7px;
	}
}
.c_box.blue_box{
	background: #d4f3ff;
	border-color: #b2d8e6;
	color: #465d65;
}
.c_box.blue_box .box_title span{
	background: #b2d8e6;
}
.c_box.blue_box p{
	color: #465d65!important;
}
.c_box.blue_box li:before{
	background: #465d65!important;
}
.c_box.red_box{
	background: #ffafaf;
	border-color: #d68a8a;
	color: #654646;
}
.c_box.red_box .box_title span{
	background: #d68a8a;
}
.c_box.red_box p{
	color: #654646!important;
}
.c_box.red_box li:before{
	background: #654646!important;
}
.c_box.yellow_box{
	background: #fff8d4;
	border-color: #ded647;
	color: #636546;
}
.c_box.yellow_box .box_title span{
	background: #ded647;
}
.c_box.yellow_box p{
	color: #636649!important;
}
.c_box.yellow_box ul li:before{
	background: #636546!important;
}
.c_box.green_box{
	background: #d8f7c3;
	border-color: #a0dcaa;
	color: #42613a;
}
.c_box.green_box .box_title span{
	background: #a0dcaa;
}
.c_box.green_box p{
	color: #42613a!important;
}
.c_box.green_box ul li:before{
	background: #42613a!important;
}
.c_box.pink_box{
	background: #ffeeee;
	border-color: #f1c9c9;
	color: #775454;
}
.c_box.pink_box .box_title span{
	background: #f1c9c9;
}
.c_box.pink_box p{
	color: #845252!important;
}
.c_box.pink_box ul li:before{
	background: #845252!important;
}
.c_box.glay_box{
	background: #ececec;
	border-color: #c5c5c5;
}
.c_box.glay_box .box_title span{
	background: #9c9c9c;
}
.c_box.black_box{
	background: #313131;
	border-color: #757575;
	color: #ffffff;
}
.c_box.black_box .box_title span{
	background: #757575;
}


/*------------------------------------------------------------
関連記事
-------------------------------------------------------------*/

.related_article{
	box-sizing: border-box;
	-moz-box-sizing: padding-box;
	position: relative;
	margin: 2.6em 0 3em;
	padding: 1.8em 1em 1em;
	background: #fffbf5;
	border: solid 2px #e18081;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	text-align: left;
}
@media only screen and (max-width : 640px){
	.related_article{
		width: 94%;
		margin: 2.6em 3% 3em;
	}
}
.related_article::before{
	position: absolute;
	top: -12px;
	left: 28px;
	padding: 0 0.8em;
	background: #e18081;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	color: #fff;
	font-size: 1em;
	letter-spacing: 0.05em;
	font-weight: bold;
	line-height: 24px;
	content: "あわせて読みたい";
}
@media only screen and (max-width : 640px){
	.related_article::before{
		letter-spacing: 0.03em;
	}
}
.related_article::after{
	box-sizing: border-box;
	-moz-box-sizing: padding-box;
	position: absolute;
	top: -18px;
	left: 4px;
	width: 36px;
	height: 36px;
	padding: 4px 0 0 2px;
	background: #e18081;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	color: #fff;
	font-size: 1.3em;
	font-family: "fontawesome";
	text-align: center;
	content: "\f044";
}
.related_article p{
	margin: 1em!important;
	line-height: 1.4em!important;
}
.related_article p:last-child{
	margin: 0!important;
}
.related_article a{
	display: block;
	color: #333;
	text-decoration: underline;
}
.related_article a:hover{
	color: #666;
	text-decoration: none;
}


/*------------------------------------------------------------
input:focus・・・入力フォームをハイライトする
-------------------------------------------------------------*/

input:focus,
textarea:focus,
input.focus,
textarea.focus{ background-color: #ffffe4!important; }


/*------------------------------------------------------------
left、right・・・画像を簡単に回り込ませる設定
-------------------------------------------------------------*/

.left{
	float: left;
	margin: 0 30px 20px 0!important;
}
.right{
	float: right;
	margin: 0 0 20px 30px!important;
}
@media only screen and (max-width : 640px){
	.left,
	.right{
		float: none;
		margin-right: 0!important;
		margin-left: 0!important;
	}
}


/*------------------------------------------------------------
ノートのような線を引く
-------------------------------------------------------------*/

.noteline{
	display: inline!important;
	padding-bottom: 0.3em!important;
	border-bottom: 1px dashed #7070ba!important;
	line-height: 2.1em!important;
}


/*------------------------------------------------------------
テキストボックスのIME制御（IE＆Firefox）
-------------------------------------------------------------*/

.ime-active{ ime-mode: active; }
.ime-inactive{ ime-mode: inactive; }
.ime-disabled{ ime-mode: disabled; }


