@charset "utf-8";

/* =========================================================
#Rside
========================================================= */
#Rside { width:260px; }

/* =========================================================
Mainvis
========================================================= */
#Mainvis {}
#MainvisInner { width: 1008px; margin: 0 auto; position: relative; }
#MainvisInner figure { }
#MainvisInner .mainvisTxtWrap { width: 100%; position: absolute; left: 0; top: 0; color: #FFF; height: 240px; }
#MainvisInner .mainvisTxtWrap .mainvisTxt { font-size:40px; font-size: 4.0rem; font-weight: bold; margin-left: 49px; line-height: 1.8;margin-top: -9px; }
#MainvisInner .mainvisTxtWrap .mainvisCaption { font-size:16px; font-size: 1.6rem; line-height: 2; margin-left: 49px; }

/* =========================================================
Main
========================================================= */
#Main { }
#MainInner { width: 1008px; margin: 0 auto; }
#MainInner:after { content: ""; clear: both; display: block; }

/*----------mainTitle------------*/
.mainTitle { font-size:34px; font-size:3.4rem; color:#222; line-height:50px; padding: 35px 0 35px 50px;font-weight: bold; }
.mainTitle.tfMain { background-color: #EAEAEA; }


/* =========================================================
Cont
========================================================= */
#Cont { width: 748px; float: right; padding: 36px 0 0 0; }
#Cont .contBlock { padding: 0 50px 40px 50px; }
#Cont .contBlock02 { padding-top: 0; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; }
#Cont .contBlock .contBlockTitle { font-size: 30px; font-size: 3.0rem; font-weight: bold; line-height: 1; color: #222222; margin-bottom: 42px; }

#Cont section { padding-top: 15px; }

.cmnBox01 { margin-bottom: 20px; padding-right: 50px; padding-left: 50px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #F6F6F6; padding-bottom: 25px; }

.cmnBox01:last-child{
	border:none;
}

/*----------contBlockTitle------------*/
.contBlockTitle01 { font-size: 30px; font-size: 3.0rem; font-weight: bold; color: #222222; margin-bottom: 30px; }
.contBlockTitle02 { font-size: 24px; font-size: 2.4rem; font-weight: bold; color: #222222; margin-bottom: 10px; }
.contBlockTitle03 { font-size: 20px; font-size: 2rem; font-weight: bold; color: #222222; margin-bottom: 5px; }

/*----------link style------------*/
.contBlocklinkBlank { padding-left: 24px; display: inline-block; position: relative; font-size: 16px; font-size: 1.6rem; color: #005b3f; }
.contBlocklinkBlank:before { content: ''; width: 13px; height: 10px; position: absolute; left: 0; top: 50%; background: url(/common_en/images/icn_blank_green.png) 0 0 no-repeat; -webkit-background-size: 13px 25px; background-size: 13px 25px; margin-top: -5px; }
.contBlocklinkBlank:hover:before { background-position: left bottom; }

.contBlocklinkBlank.sizeS { font-size: 14px; font-size: 1.4rem; }
.contBlocklinkBlank.sizeSS { font-size: 12px; font-size: 1.2rem; }

.contBlocklink02 { display: inline-block; position: relative; font-size: 24px; font-size: 2.4rem; color: #005b3f; margin-bottom:3px; }
.contBlocklink02 span{ position: relative; top: 1px; }

/*----------contBlockText------------*/
.contBlockText01 { margin-bottom: 15px; }
.contBlockText01 p { font-size: 16px; font-size: 1.6rem; margin-top: 20px; line-height: 1.9; }
.contBlockText01 p:first-child { margin-top: 0px; }

/*----------contBlockText02------------*/
.contBlockText02 { margin-bottom: 15px; }
.contBlockText02 p { font-size: 16px; font-size: 1.6rem; margin-bottom: 25px; line-height: 1.9; }

/*----------contBlockTable01------------*/
.contBlockTable01 table { width: 100%; table-layout: fixed; }
.contBlockTable01 table thead th { background-color: #f0efed; }
.contBlockTable01 table tbody th { background-color: #f7f7f7; }
.contBlockTable01 table th { word-wrap: break-word; }
.contBlockTable01 table th,
.contBlockTable01 table td { border: 1px solid #ececec; padding: 12px 18px; font-size: 15px; font-size: 1.5rem; }

/*----------contBlockList------------*/
.contBlockList01 { margin-bottom: 15px; }
.contBlockList01 ul li { font-size: 16px; font-size: 1.6rem; margin-bottom: 35px; line-height: 1.9; background-image: url(../../images/business/icon01.png); background-repeat: no-repeat; background-position: left 6px; padding-left: 20px; }


/*----------contImgTxtBox01------------*/
.contImgTxtBox01 { background-color: #F6F6F6; padding: 40px; }
.contImgTxtBox01 .picBlock { margin-bottom: 25px; }
.contImgTxtBox01 .txtBlock { background-color: #FFF; padding: 25px; }
.contImgTxtBox01 .txtBlock p { font-size: 1.6rem; }
.contImgTxtBox01 .txtBlock .contBlockList01 { margin-bottom: 0px; }
.contImgTxtBox01 .txtBlock .contBlockList01 ul li { margin-bottom: 5px; }
.contImgTxtBox01 .txtBlock .contBlockList01 ul li:last-child { margin-bottom: 0px; }

/*----------table column style------------*/
table.clm3-7 thead tr.dummy th { border:none !important; padding:0 !important; }
table.clm3-7 .col1 { width: 25%; }
table.clm3-7 .col2 { width:75%; }

table.clm3-3 .col1,
table.clm3-3 .col2 { width: 33.33%; }
table.clm3-3 .col3 { }

table.clm2-2-5 .col1,
table.clm2-2-5 .col2 { width: 25%; }
table.clm2-2-5 .col3 { }

/*----------tableNotes style------------*/

.tableNotes table { width:100%; border-collapse:collapse; border-spacing:0; }
.tableNotes table thead th { background-color: #f0efed; }
.tableNotes table thead th.col1 { width:; }
.tableNotes table thead th.col1 { width:; }
.tableNotes table thead th.col1 { width:; }
.tableNotes table thead th.col1 { width:; }
.tableNotes table thead th.col1 { width:; }
.tableNotes table thead th.col1 { width:; }
.tableNotes table thead th.col1 { width:; }
.tableNotes table tbody th { background-color: #f7f7f7; }
.tableNotes table th,
.tableNotes table td { border: 1px solid #ececec; padding:2px; font-size: 14px; font-size: 1.4rem; }
.tableNotes table th { word-wrap: break-word; }
.tableNotes table td p { font-size: 14px; font-size: 1.4rem; }


/*----------box style------------*/
.contBlockBox01 { margin-bottom: 30px; }
.contBlockBox01 .contBlockBoxInner { clear: both; }
.contBlockBox01 .contBlockBoxInner:after { content: ""; clear: both; display: block; }

.clmbox.clm3-7 .boxL { width: 170px; float: left; }
.clmbox.clm3-7 .boxR { width: 448px; float: right; }
.clmbox.clm3-7.reverse .boxL { width: 448px; }
.clmbox.clm3-7.reverse .boxR { width: 170px; }

.clmbox.clm5-5 .boxL { width: 314px; float: left; }
.clmbox.clm5-5 .boxR { width: 314px; float: right; }

/*----------commonFlowBlock style------------*/
.commonFlowBlock{ margin-bottom: 20px; overflow: hidden; }
.commonFlowBlock .commonFlowImgBlock { width: 314px; float: left; background-color: #F6F6F6; padding: 25px; }
.commonFlowBlock .commonFlowTxtBlock { width: 314px; float: right; }
.commonFlowBlock .commonFlowTxtBlock .contBlockTitle02{ margin-bottom: 20px; }

.commonFlowBlock .commonFlowTxtBlock .commonFlowTxtList { position: relative; }
.commonFlowBlock .commonFlowTxtBlock .commonFlowTxtList dt { font-size: 12px; position:absolute; margin-top: 3px; }
.commonFlowBlock .commonFlowTxtBlock .commonFlowTxtList dt span { background-color: #F6F6F6; line-height: 1; border-radius: 50%; -moz-border-radius: 50%; -webkit-border-radius: 50%; text-align: center; display: inline-block; height: 18px; width: 18px; padding-top: 3px; }
.commonFlowBlock .commonFlowTxtBlock .commonFlowTxtList dd { padding-left: 25px; margin-bottom: 15px; font-size: 16px; font-size: 1.6rem; }





/*----------panel style------------*/
.panelSec01 { background-color: #f7f7f7; padding: 31px 40px 30px 40px; margin-bottom: 50px; }

/*----------hr style------------*/
hr.line-boundary { display: block; height:1px; border:none; border-top:1px solid #f7f7f7; margin:45px 0 30px; }


@media screen and (max-width:667px) {
/* =========================================================
#Rside
========================================================= */
#Rside { width:100%; }

/* =========================================================
Mainvis
========================================================= */
#Mainvis {}
#MainvisInner { width: 100%; overflow: hidden; }
#MainvisInner figure { }
#MainvisInner .mainvisTxtWrap { width: 100%; height: auto; position: absolute; left: 0; top: 50%; margin-top: -1.5em; }
#MainvisInner .mainvisTxtWrap .mainvisTxt { font-size: 2.0rem; font-weight: normal; margin-left: 0; text-align: center; margin-top: 0.5rem; }
#MainvisInner .mainvisTxtWrap .mainvisCaption { display: none; }

/* =========================================================
Main
========================================================= */
#Main { }
#MainInner { width: 100%; }
#MainInner:after { content: ""; clear: both; display: block; }

/*----------mainTitle------------*/
.mainTitle { font-size:20px; font-size:2rem; line-height:30px; padding: 12px 4.6875%; }

/* =========================================================
Cont
========================================================= */
#Cont { width: 100%; float: none; padding: 20px 0 0; }
#Cont .contBlock { padding:0 4.6875% 15px 4.6875%; margin-bottom:20px; }
#Cont .contBlock02 { padding:0 4.6875% 15px 4.6875%; margin-bottom:20px; }
#Cont .contBlock .contBlockTitle { font-size: 1.5rem; margin-bottom: 20px; text-align: center; }

#Cont section { padding-top: 10px; }

.cmnBox01 { margin-bottom: 20px; padding: 0px; border:none; }

/*----------contBlockTitle------------*/
.contBlockTitle01 { font-size: 1.5rem; margin-bottom: 20px; }
.contBlockTitle02 { font-size: 1.2rem; margin-bottom: 10px; }
.contBlockTitle03 { font-size: 1rem; }

/*----------link style------------*/
.contBlocklinkBlank { font-size: 0.8rem; }
.contBlocklinkBlank.sizeS { font-size: 0.75rem; }
.contBlocklinkBlank.sizeSS { font-size: 0.7rem; }

.contBlocklinkBlank.sizeS { padding-left:20px; }
.contBlocklinkBlank.sizeS:before { margin-top: -5px; }
.contBlocklinkBlank.sizeSS { padding-left:20px; }
.contBlocklinkBlank.sizeSS:before { margin-top: -5px; }

.contBlocklink02 { display: inline-block; position: relative; font-size: 1.2rem; margin-bottom:3px; }
.contBlocklink02 span{ position: relative; top: 0px; }

/*----------contBlockText------------*/
.contBlockText01 { margin-bottom: 15px; }
.contBlockText01 p { font-size: 0.8rem; }

/*----------contBlockText02------------*/
.contBlockText02 { margin-bottom: 15px; }
.contBlockText02 p { font-size: 0.8rem; }

/*----------contBlockTable01------------*/
.contBlockTable01 table th,
.contBlockTable01 table td { font-size: 0.75rem; padding: 12px 3%; }

/*----------contBlockList------------*/
.contBlockList01 { margin-bottom: 15px; }
.contBlockList01 ul li { font-size: 16px; font-size: 0.8rem; margin-bottom: 15px; line-height: 1.9; background-image: url(../../images/business/icon01.png); background-repeat: no-repeat; background-position: left 5px; padding-left: 10px; background-size:6px;}

/*----------contImgTxtBox01------------*/
.contImgTxtBox01 { background-color: #F6F6F6; padding: 20px; }
.contImgTxtBox01 .picBlock { margin-bottom: 15px; }
.contImgTxtBox01 .txtBlock { background-color: #FFF; padding: 10px; }
.contImgTxtBox01 .txtBlock p { font-size: 0.8rem; }

/*----------tableNotes style------------*/
.tableNotes table th,
.tableNotes table td { font-size: 0.7rem; }
.tableNotes table td p { font-size: 0.7rem; }

.clmbox.clm3-7 .boxL { width: 21.25%; float: left; }
.clmbox.clm3-7 .boxR { width: 75%; float: right; }
.clmbox.clm3-7.reverse .boxL { width: 75%; }
.clmbox.clm3-7.reverse .boxR { width: 21.25%; }

.clmbox.clm5-5 .boxL { width: 48%; float: left; }
.clmbox.clm5-5 .boxR { width: 48%; float: right; }

/*----------commonFlowBlock style------------*/
.commonFlowBlock{ margin-bottom: 20px; overflow: hidden; }
.commonFlowBlock .commonFlowImgBlock { width: 48%; float: left; background-color: #F6F6F6; padding: 10px; }
.commonFlowBlock .commonFlowTxtBlock { width: 48%; float: right; }
.commonFlowBlock .commonFlowTxtBlock .contBlockTitle02{ margin-bottom: 10px; }
.commonFlowBlock .commonFlowTxtBlock .commonFlowTxtList dt { font-size: 10px; position:absolute; }
.commonFlowBlock .commonFlowTxtBlock .commonFlowTxtList dt span { background-color: #F6F6F6; line-height: 1; border-radius: 50%; -moz-border-radius: 50%; -webkit-border-radius: 50%; text-align: center; display: inline-block; height: 16px; width: 16px; padding-top: 3px; }
.commonFlowBlock .commonFlowTxtBlock .commonFlowTxtList dd { padding-left: 20px; margin-bottom: 10px; font-size: 0.8rem; }

/*----------Other style------------*/
.panelSec { margin-bottom: 50px; padding: 30px 4%; }
.contMap { width: 100%; }
.contMap iframe { width: 100%; margin-bottom: 24px; height: 290px !important; }

}
