@charset "utf-8";

/* ==

　01. カラムモジュール／パーツ

=============================================================================== */

/* モジュール タイプ1
------------------------------------------------------------------------------- */
#main .colBlock01 {
	margin: 15px 0 25px;
}

/* モジュール タイプ2
------------------------------------------------------------------------------- */
#main .colBlock02 {
	margin: 15px 0 25px;
}
#main .colBlock02 .col1,
#main .colBlock02 .col2 {
	width: 49.2%;	
}
#main .colBlock02 .col1 {
	float: left;
}
#main .colBlock02 .col2 {
	float: right;
}
#main .colBlock02 h2,
#main .colBlock02 h3,
#main .colBlock02 h4 {
	margin-top: 0;
}
#main .colBlock02 .flowImg {
	margin: 0 15px 10px 0;
}
#main .colBlock02.reverse .flowImg {
	margin: 0 0 10px 15px;
}
@media screen and (max-width:556px) {
	#container #main .colBlock02 .col1,
	#container #main .colBlock02 .col2 {
		float: none;
		width: auto;
		margin-bottom: 15px;
	}
	#container #main .colBlock02 .col2 {
		margin-bottom: 0;
	}
	#main .colBlock02 .flowImg,
	#main .colBlock02.reverse .flowImg {
		margin: 0;
	}
}

/* モジュール タイプ3
------------------------------------------------------------------------------- */
#main .colBlock03 {
	margin: 15px 0 25px;
}
#main .colBlock03 .colN {
	float: left;
	width: 32.2%;
}
#main .colBlock03 .colW {
	float: right;
	width: 66.1%;
}
#main .colBlock03 h2,
#main .colBlock03 h3,
#main .colBlock03 h4 {
	margin-top: 0;
}
#main .colBlock03 .flowImg {
	margin: 0 15px 10px 0;
}
#main .colBlock03.reverse .flowImg {
	margin: 0 0 10px 15px;
}
@media screen and (max-width:768px) {
	#container #main .colBlock03.dropTbl .colN,
	#container #main .colBlock03.dropTbl .colW {
		float: none;
		width: auto;
	}
	#container #main .colBlock03.dropTbl .colN {
		margin-bottom: 15px;
	}
	#main .colBlock03.dropTbl .flowImg,
	#main .colBlock03.reverse.dropTbl .flowImg {
		margin: 0;
	}
}
@media screen and (max-width:480px) {
	#container #main .colBlock03 .colN,
	#container #main .colBlock03 .colW {
		float: none;
		width: auto;
		margin-bottom: 15px;
	}
	#container #main .colBlock03 .colW {
		margin-bottom: 0;
	}
	#main .colBlock03 .flowImg,
	#main .colBlock03.reverse .flowImg {
		margin: 0;
	}
}

/* モジュール タイプ4
------------------------------------------------------------------------------- */
#main .colBlock04 {
	margin: 15px 0 25px;
}
#main .colBlock04 .groupA {
	float: left;
	width: 66%;
}
#main .colBlock04 .groupB {
	float: right;
	width: 32.1%;
}
#main .colBlock04 .col1,
#main .colBlock04 .col2,
#main .colBlock04 .col3 {
	float: left;
	width: 32.1%;
	margin-right: 1.8%;
}
#main .colBlock04 .col3 {
	margin-right: 0;
}
#main .colBlock04 .groupA .col1,
#main .colBlock04 .groupA .col2 {
	float: left;
	width: 48.6%;
	margin: 0;
}
#main .colBlock04 .groupA .col2 {
	float: right;
}
#main .colBlock04 .groupB .col3 {
	width: 100%
}
#main .colBlock04 .boxA {
	margin-bottom: 13px;
	text-align: center;
}
#main .colBlock04 h2,
#main .colBlock04 h3,
#main .colBlock04 h4 {
	margin-top: 0;
}
@media screen and (max-width:768px) {
	#main .colBlock04 .col1,
	#main .colBlock04 .col2,
	#main .colBlock04 .col3,
	#main .colBlock04 .groupA,
	#main .colBlock04 .groupB {
		float: none;
		width: auto;
		margin: 0 0 25px;
	}
	#main .colBlock04 .groupA .col1,
	#main .colBlock04 .groupA .col2,
	#main .colBlock04 .groupB .col3 {
		width: 49.1%;
		text-align: center;
	}
	#main .colBlock04 .col3,
	#main .colBlock04 .groupB {
		margin-bottom: 0;		
	}
	#main .colBlock04 .boxA {
		float: left;
		width: 46.7%;
		margin-bottom: 0;
		text-align: center;
	}
	#main .colBlock04 .boxB {
		float: right;
		width: 51.6%;
	}
}
@media screen and (max-width:480px) {
	#main .colBlock04 .groupA .col1,
	#main .colBlock04 .groupA .col2,
	#main .colBlock04 .groupB .col3 {
		float: none;
		width: auto;
		margin: 0 0 25px;
	}
	#main .colBlock04 .groupA,
	#main .colBlock04 .groupB .col3 {
		margin-bottom: 0;
	}
	#main .colBlock04 .boxA,
	#main .colBlock04 .boxB {
		float: none;
		width: auto;
	}
	#main .colBlock04 .boxA {
		margin-bottom: 13px;
	}
}

/* モジュール タイプ5
------------------------------------------------------------------------------- */
#main .colBlock05 {
	margin: 15px 0 25px;
}
#main .colBlock05 .col1,
#main .colBlock05 .col2,
#main .colBlock05 .col3 {
	float: left;
	width: 32%;
	margin-right: 1.81%;
}
#main .colBlock05 .col3 {
	margin-right: 0;
}
#main .colBlock05 .boxA {
	float: left;
	width: 50.2%;
}
#main .colBlock05 .boxB {
	float: right;
	width: 47%;
}
#main .colBlock05 h2,
#main .colBlock05 h3,
#main .colBlock05 h4 {
	margin-top: 0;
}
@media screen and (max-width:768px) {
	#main .colBlock05 .boxA,
	#main .colBlock05 .boxB,
	#main .colBlock05 .reverse .boxA,
	#main .colBlock05 .reverse .boxB {
		float: none;
		width: auto;
	}
	#main .colBlock05 .boxA {
		margin-bottom: 13px;
		text-align: center;
	}
}
@media screen and (max-width:480px) {
	#main .colBlock05 .col1,
	#main .colBlock05 .col2,
	#main .colBlock05 .col3 {
		float: none;
		width: auto;
		margin: 0 0 25px;
	}
	#main .colBlock05 .col3 {
		margin-bottom: 0;		
	}
	#main .colBlock05 .boxA,
	#main .colBlock05 .reverse .boxA {
		float: left;
		width: 100px;
		margin: 0 10px 0 0;
	}
	#main .colBlock05 .reverse .boxA {
		float: right;
		margin: 0 0 0 10px;
	}
	#main .colBlock05 .boxB,
	#container #main .colBlock05 .col1 .boxB,
	#container #main .colBlock05 .col2 .boxB,
	#container #main .colBlock05 .col3 .boxB,
	#main .colBlock05 .reverse .boxB,
	#container #main .colBlock05 .col1.reverse .boxB,
	#container #main .colBlock05 .col2.reverse .boxB,
	#container #main .colBlock05 .col3.reverse .boxB {
		float: none;
		width: auto;
		overflow: hidden;
	}
}

/* モジュール タイプ6
------------------------------------------------------------------------------- */
#main .colBlock06 {
	margin: 15px 0 25px;
}
#main .colBlock06 .groupA,
#main .colBlock06 .groupB {
	float: left;
	width: 49.1%;
}
#main .colBlock06 .groupB {
	float: right;
}
#main .colBlock06 .col1,
#main .colBlock06 .col2,
#main .colBlock06 .col3,
#main .colBlock06 .col4 {
	float: left;
	width: 23.61%;
	margin-right: 1.8%;
}
#main .colBlock06 .col4 {
	margin-right: 0;
}
#main .colBlock06 .groupA .col1,
#main .colBlock06 .groupA .col2,
#main .colBlock06 .groupB .col3,
#main .colBlock06 .groupB .col4 {
	float: left;
	width: 48.2%;
	margin: 0;
}
#main .colBlock06 .groupA .col2,
#main .colBlock06 .groupB .col4 {
	float: right;
}
#main .colBlock06 .boxA {
	margin-bottom: 13px;
}
#main .colBlock06 h2,
#main .colBlock06 h3,
#main .colBlock06 h4 {
	margin-top: 0;
}
@media screen and (max-width:768px) {
#main .colBlock06 .col1,
#main .colBlock06 .col2,
#main .colBlock06 .col3,
#main .colBlock06 .col4,
#main .colBlock06 .groupA,
#main .colBlock06 .groupB {
	float: none;
	width: auto;
	margin: 0 0 25px;
}
#main .colBlock06 .groupA .col1,
#main .colBlock06 .groupA .col2,
#main .colBlock06 .groupB .col3,
#main .colBlock06 .groupB .col4 {
	width: 49.1%;
	text-align: center;
}
#main .colBlock06 .col4,
#main .colBlock06 .groupB {
	margin-bottom: 0;
}
#main .colBlock06 .boxA {
	float: left;
	width: 34.5%;
	margin-bottom: 0;
	text-align: center;
}
#main .colBlock06 .boxB {
	float: right;
	width: 63.8%;
}
}
@media screen and (max-width:480px) {
	#main .colBlock06 .boxA,
	#main .colBlock06 .boxB {
		float: none;
		width: auto;
	}
	#main .colBlock06 .boxA {
		margin-bottom: 13px;
	}
}

/* モジュール タイプ7
------------------------------------------------------------------------------- */
#main .colBlock07 {
	margin: 15px 0 25px;
}
#main .colBlock07 .colImg {
	float: left;
	width: 16.1%;
}
#main .colBlock07 .colTxt {
	float: right;
	width: 82.8%;
}
#main .colBlock07 h2,
#main .colBlock07 h3,
#main .colBlock07 h4 {
	margin-top: 0;
}
#main .colBlock07 .flowImg {
	margin: 0 15px 10px 0;
}
#main .colBlock07.reverse .flowImg {
	margin: 0 0 10px 15px;
}
@media screen and (max-width:768px) {
	#main .colBlock07 .colImg {
		float: left;
		width: 130px;
		margin-right: 10px;
	}
	#main .colBlock07.reverse .colImg {
		float: right;
		margin: 0 0 0 10px;
	}
	#container #main .colBlock07 .colTxt,
	#container #main .colBlock07.reverse .colTxt {
		float: none;
		width: auto;
		overflow: hidden;
	}
	#container #main .colBlock07 .flowTxt,
	#container #main .colBlock07.reverse .flowTxt {
		overflow: visible;
	}
}
@media screen and (max-width:488px) {
	#main .colBlock07 .colImg {
		width: 100px;
	}
}

/* モジュール タイプ8
------------------------------------------------------------------------------- */
#main .colBlock08 {
	margin: 15px 0 25px;
}
#main .colBlock08 .col1,
#main .colBlock08 .col2 {
	float: left;
	width: 49.1%;
}
#main .colBlock08 .col2 {
	float: right;
}
#main .colBlock08 .boxA {
	float: left;
	width: 32.71%;
}
#main .colBlock08 .boxB {
	float: right;
	width: 65.3%;
}
#main .colBlock08 h2,
#main .colBlock08 h3,
#main .colBlock08 h4 {
	margin-top: 0;
}
#main .colBlock08 .flowImg {
	margin: 0 15px 10px 0;
}
#main .colBlock08.reverse .flowImg {
	margin: 0 0 10px 15px;
}
@media screen and (max-width:768px) {
	#main .colBlock08 .col1,
	#main .colBlock08 .col2 {
		float: none;
		width: auto;
		margin-bottom: 25px;
	}
	#main .colBlock08 .col2 {
		margin-bottom: 0;
	}
	#main .colBlock08 .boxA {
		float: left;
		width: 130px;
		margin-right: 10px;
	}
	#main .colBlock08 .reverse .boxA {
		float: right;
		margin: 0 0 0 10px;
	}
	#main .colBlock08 .boxB,
	#container #main .colBlock08 .col1 .boxB,
	#container #main .colBlock08 .col2 .boxB {
		float: none;
		width: auto;
		overflow: hidden;
	}
	#main .colBlock08 .reverse .boxB,
	#container #main .colBlock08 .col1.reverse .boxB,
	#container #main .colBlock08 .col2.reverse .boxB {
		float: none;
	}
	#main .colBlock08 .flowTxt,
	#main .colBlock08 .reverse .flowTxt {
		overflow: visible;
	}
}
@media screen and (max-width:488px) {
	#main .colBlock08 .boxA {
		width: 100px;
	}
}

/* モジュール オプション
------------------------------------------------------------------------------- */
#main .reverse .colImg,
#main .reverse .colN,
#main .reverse .col1,
#main .reverse .boxA {
	float: right;
}
#main .reverse .colTxt,
#main .reverse .colW,
#main .reverse .col2,
#main .reverse .boxB {
	float: left;
}
@media screen and (max-width:480px) {
	#container #main .dropBorder .colImg,
	#container #main .dropBorder .colTxt,
	#container #main .dropBorder .boxA,
	#container #main .dropBorder .boxB,
	#container #main .dropBorder .col1.reverse .boxA,
	#container #main .dropBorder .col2.reverse .boxA {
		float: none;
		width: auto;
	}
	#container #main .dropBorder .colImg,
	#container #main .dropBorder .boxA {
		margin: 0 0 8px;
		padding: 5px;
		border: 1px solid #ccc;
		text-align: center;	
	}
	#container #main .dropBorder .colImg img,
	#container #main .dropBorder .boxA img {
		width: auto;
	}
	#container #main .dropBorder .colTxt,
	#container #main .dropBorder .boxB {
		padding-top: 5px;
	}
}
#container #main .colBlock02 .flowTxt,
#container #main .colBlock03 .flowTxt,
#container #main .colBlock07 .flowTxt,
#container #main .colBlock08 .flowTxt {
	float: none;
	width: auto;
}
*:first-child+html #container #main .flowTxt { /* ie7 */
	zoom: normal;
}

/* メニューリスト
------------------------------------------------------------------------------- */
#main .menuList01 {
	border-top: 1px solid #ccc;
	border-right: 1px solid #ccc;
	border-left: 1px solid #ccc;
	overflow: hidden;
}
#main .menuList01 ul,
#main .menuList01 ol {
	margin-right: -1px;
}
#main .menuList01 li {
	border-bottom: 1px solid #ccc;
}
#main .menuList01 .anchorLink li {
	background: url(../../images/tmp01/link_icon_01.gif) right center no-repeat;
}
#main .menuList01 .linkTxt li {
	padding-left: 0;
	background: none;
}
#main .menuList01 li a {
	display: block;
	padding: 9px 10px 8px;
	background-position: 8px center;
	background-repeat: no-repeat;
}
* html #main .menuList01 li a { /* ie6 */
	zoom: 1;
}
#main .menuList01 .linkTxt li a {
	padding-left: 28px;
	background-image: url(../../images/rn01/icon_07.png);
	background-position: 10px center;
}
#main .menuList01 .anchorLink li a {
	padding-right: 30px;
}
#main .menuList01 li a,
#main .menuList01 li a:hover {
	color: #333;
}
#main .menuList01 a {
	color: #333;
	text-decoration: none;
}
#main .menuList01 a:hover {
	text-decoration: underline;
}


/* ==

　02. 汎用スタイル

=============================================================================== */

/* 回り込み解除
------------------------------------------------------------------------------- */
* html #main .colBlock02 div,
* html #main .colBlock03 div,
* html #main .colBlock04 div,
* html #main .colBlock05 div,
* html #main .colBlock06 div,
* html #main .colBlock07 div,
* html #main .colBlock08 div { zoom: 1; } /* ie6 */

*:first-child+html #main .colBlock02 div,
*:first-child+html #main .colBlock03 div,
*:first-child+html #main .colBlock04 div,
*:first-child+html #main .colBlock05 div,
*:first-child+html #main .colBlock06 div,
*:first-child+html #main .colBlock07 div,
*:first-child+html #main .colBlock08 div { zoom: 1; } /* ie7 */

#main .colBlock02 div:after,
#main .colBlock03 div:after,
#main .colBlock04 div:after,
#main .colBlock05 div:after,
#main .colBlock06 div:after,
#main .colBlock07 div:after,
#main .colBlock08 div:after { content: ''; display: block; clear: both; height: 0; }