@charset "UTF-8";
/* =========================================================================
  1.h2,h3,h4,h5
  2.p
  3.font
  4.ul,ol
  5.hr
  6.table
  7.inneerbox
========================================================================= */

/*-------------------------------
# Typography
-------------------------------*/ 
#content p{margin-bottom:16px;}
section p:last-child{margin-bottom:0;}

/* == 見出し */
h1, h2, h3, h4, h5, h6 { line-height: 1.3; font-size: 100%; font-weight: 700; margin-top: 20px;}
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {text-decoration: underline;}
h2 { clear: both;}
h4, h5, h6 { margin-bottom: 16px;}
main h1 { font-size: 175% /*28px*/; font-weight: 500; margin: 0px auto 40px;padding-bottom: 10px; position: relative; width: 100%;}
main h1::before,
main h1::after {content: ""; position: absolute; display: block;
 border-bottom: solid 2px #A09DB1; bottom: -3px; width: 120px;}
main h1::after{width: 80px;border-bottom: solid 2px #00439A;}
h2 {
 border-bottom: 1px solid #A09DB1;
 font-size: 156.25%/*25px*/;
 padding: 0 0 10px;
 margin-top: 40px;
 margin-bottom: 30px;
 width: 100%;
}
h2.h2_front {
	text-align: center;
	font-size: 218.75%/*35px*/;
	padding:0;
	margin-top: 70px;
	margin-bottom: 70px;
	line-height: 1;
	background:none;
	border: none;
 position: relative;
}
h2.h2_front strong {
 font-weight: 500;
 color: #00439A;
 font-size: 13px; font-size: 1.3rem;
 display: block;
 position: absolute;
 bottom: -24px;right: 0;left: 0;
 margin: auto;
 width:150px; height: 10px;
}
h3 {
 background: url("/assets/images/bg_h3.svg") no-repeat 0 3px;
 font-size: 125%/*20px*/;
 margin-top: 40px;
 margin-bottom: 20px;
 padding: 0 0 0 20px;
}
h4 {
 font-size: 112.5%/*18px*/;
 margin-top: 30px;
 margin-bottom: 15px;
}
h5 {
 margin-top: 30px;
 margin-bottom: 15px;
}
@media print,screen and (min-width:769px) {
 main h1 { font-size: 225% /*36px*/; margin: 0px auto 80px;}
 h2 {padding-bottom: 20px;}
}

blockquote {
 font-size: 93.75%/*15px*/;
 background: #F5F5F5;
 padding: 20px;
 margin: 40px 0 1em;
}
blockquote p:last-child {
 margin-bottom: 0;
}
pre {
 background: #eee;
 font-size:93.75%/*15px*/;
 line-height: 1.6;
 margin-bottom: 1.6em;
 max-width: 100%;
 overflow: auto;
 padding: 1.6em;
}

p { margin: 0 0 20px 0;}
p + p { margin-top: 0;}
p.pNarrow {
 margin: 5px 0 5px 0;
 line-height: 1.1;
 font-size: 93.75%/*15px*/;
}
p { margin: 0 0 20px 0;}
p + p { margin-top: 0;}
p.pNarrow { margin: 5px 0 5px 0; line-height: 1.1; font-size: 96%;}
p.waku-blue { border: 1px solid #69c; padding: 0.5em;}
p.waku-red { border: 1px solid #c33; padding: 0.5em; background-color: #fee;}
.clear { clear: both;}

/*= font style*/
.xsmall { font-size: 75%/*12px*/;}
.small { font-size: 87.5%/*14px*/;}
.large { font-size:  125%/*20px*/;}
.xlarge { font-size: 150%/*24px*/;}
/*文字色（WW編集KITで入力）*/
.text_black { color: #312F3D;}
.text_blue { color: #00439A;}
.text_green { color: #679801;}
.red,
.text_red { color: #C1312C;}
.text_pink { color: #F04BDB;}
.text_orange { color: #e60;}
.text_brown { color: #734418;}
.text_white { color: #FFF;}
.text_marker { background-color: #FBF2DA;}
/* 表 */
table {
 border-collapse: collapse;
 border-spacing: 0;
 margin: 0 0 30px;
 border-color: #A09DB1;
}
table[border="1"], table[border="1"] td, table[border="1"] th { border: 1px solid #A09DB1;}
table tr, table td, table th {
 border-color: #A09DB1;
 vertical-align: top;
 height: auto !important;
}
table th { font-weight: 700; background-color: #E6EAF3;}
caption, th, td { padding: 10px 12px;}
th p:last-child, td p:last-child, th ul:last-child, td ul:last-child, td table {
 margin-bottom: 0 !important;
 line-height: 1.5;
}
table td a {
 position: relative;
 padding-left: 12px;
}
table td a::before {
 content: "";
 position: absolute;
 left: 0px;
 top: 10px;
 width: 6px;
 height: 6px;
 border-top: 2px solid #A09DB1;
 border-right: 2px solid #A09DB1;
 -webkit-transform: rotate(45deg);
 transform: rotate(45deg);
}
table[align="center"] { margin: 0 auto 30px;}
.tblStripe tr:nth-child(odd) { background: #F5F5F5;}

/*線なしの表*/
table.tblNoborder,
table.tblNoborder th,
table.tblNoborder td {	border: none !important;}
table.tblNoborder th{border-bottom: 1px solid #FFF !important;}
table.tblNoborder th:last-child{border-bottom: none !important;}
/* Table */
caption {
	padding-bottom: .5em;
	font-weight: bold;
}
table.bordered {
width: 100%;
margin: 0 0 1em;
border: 1px solid #c0cee0;
border-collapse: collapse;
border-spacing: 0;
font-weight: normal;
}
table.bordered th,
table.bordered td {
	padding: 10px 8px;
	border-right: 1px solid #c0cee0;
	border-bottom: 1px solid #c0cee0;
	background: #fff;
}
table.bordered th {
	background: #edf3fa;
}
/*table.bordered th+ th {
	background: #f7fbfD;
}*/
table.bordered td {
vertical-align: top;
}

@media screen and (max-width:767px){
.table_scroll { 
    display: block; 
	margin: 0 -8px;
    width: 100%; 
}
.table_scroll thead{ 
    display: block; 
    float: left;
    overflow-x:scroll;
}
.table_scroll tbody{ 
    display: block; 
    width: auto; 
    overflow-x: auto; 
    white-space: nowrap;
}
.table_scroll th{
    display: block;
    width:auto;
}
.table_scroll tbody tr{ 
    display: inline-block; 
    margin: 0 -3px;
}
.table_scroll td{ 
    display: block;
}

}

@media screen and (max-width:480px){
.table_box, .table_list {
	margin: 0 -8px;
}

.table_box th,
.table_box td {
	width: 100%;
	display: block;
	border-top: none;
}
.table_box tr:first-child th { border-top: 1px solid #ddd; }

.table_list tr {
    display:block;
    margin-bottom: 10px;
}

.table_list th {
    display:block;
    width: 100%;
}

.table_list td {
	background: none;
    display: list-item;
    width: 90%;
    margin-left: 10%;
    border:none;
}

}

.txtRight {text-align: right;}
.txtLeft {text-align:left;}
.txtCenter {text-align:center;}

img.right   { float: right;	margin-left: 20px; }
img.left    { float: left; margin-right: 20px; }
img.center {
	display: block;
	margin: 0 auto 15px;
}
@media screen and (max-width:768px){
	img.right ,img.left {
		display: block;
		float: none;
		margin: 0 auto;
		margin-bottom: 15px;
	}
}

@media print,screen and (min-width:768px) { /* Tablet */
 .imgRight {
  display: inline; clear: both;
  float: right;
  margin: 0 0 10px 10px;
 }
 .imgLeft {
  display: inline; clear: both;
  float: left;
  margin: 0 10px 10px 0;
 }
 .imgCenter {
  clear: both;
  margin: 0 auto 10px;
  display: block;
 }
 /* end min-width: 768px */}
/*
 = テキストボックス
-------------------------------*/
/*カラーボックス設定*/
.bgBlue,
.bgOrange,
.bgYellow,
.bgGray,
.bgGreen {
	width: 100%;
	padding: 15px;
	margin-bottom: 18px;
}


/* Box Module */
.borderbox,
.relatedinfo,
.contactunit {
    margin-top: 20px;
    margin-bottom: 20px;
    border: 1px solid #c0cee0;
    border-radius: 4px;
	box-sizing: border-box;
}
.borderbox {
	border-color: #A09DB1;
	padding: 10px 20px;
}
.relatedinfo{
	border-left: none;
	border-right: none;
	border-radius: 0;
}
.relatedinfo dt {
 border-bottom: 1px dotted #A09DB1;
	color: #333 !important;
	margin-bottom: 15px;
    padding: .75em 10px .75em 30px;
}
.contactunit {
	border-width: 3px;
}
.contactunit dt {
	padding:.75em 10px;
	border-bottom: 1px dotted #A09DB1;
	margin: 0 0 0.2em;
	font-weight: bold;
}
.contactunit dd { padding:10px; }
.contactunit address { margin-left: 1em; }

/* コメント */
.borderbox,
.commentArea {
	display: inline-block;
	width: 100%;
	padding: 20px 15px;
	margin-bottom: 30px;
	border: 1px solid #A09DB1;
 -webkit-border-radius: 5px;-moz-border-radius: 5px;-ms-border-radius: 5px;border-radius: 5px;
}
.borderbox p:last-child,
.commentArea p:last-child,
.bgBlue p:last-child,.bgOrange p:last-child,.bgLYellow p:last-child,.bgGray p:last-child,.bgGreen p:last-child {	margin-bottom: 0 !important;}
/*背景色設定*/
/*ブルー*/
.bgBlue {	background: #D1F3FE;}
/*ライトオレンジ*/
.bgOrange {	background: #FBF2DA;}
/*ライトグレー */
.bgGray {	background: #F5F5F5;}
/*ライトグリーン */
.bgGreen {	background: #E4F9DD;}

/*---------------------------
CMSKIT編集画面
---------------------------*/
#wcv_sys_edit_previewarea_wrap body { background: #FFF;}
#wcv_sys_wrapper h4.wcv_sys_edit_blockeditarea_rightcolumn_blockarea_title::before,
#wcv_sys_wrapper h4.wcv_sys_edit_blockeditarea_rightcolumn_blockarea_title::after,
#wcv_sys_wrapper h4.wcv_sys_edit_blockeditarea_leftcolumn_blockarea_title::before,
#wcv_sys_wrapper h4.wcv_sys_edit_blockeditarea_leftcolumn_blockarea_title::after{content: none;}
#wcv_sys_wrapper .ul-img.bnr4 li img:last-child,
#wcv_sys_wrapper .ul-img li img:last-child{ width:auto !important;	height: auto !important;}
#wcv_sys_wrapper .aboutList01 > div{display: flex; width: 100%; flex-wrap: wrap;}

#wcv_sys_wrapper .row > div,
#wcv_sys_wrapper .bnr3 > div,
#wcv_sys_wrapper .bnr4 > div{
 display: flex;
 /*justify-content: space-between;*/
 position: relative;
 flex-wrap: wrap;
}

.ico_blank,.ico_pdf,.pdf,.ico_xls,.xls,.ico_doc,.doc{padding-right: 36px; position: relative;}
.ico_blank::after,.ico_pdf::after,.pdf::after,.ico_xls::after,.xls::after,.ico_doc::after,.doc::after{content: ""; position: absolute; width: 32px; height: 32px; right: 0; bottom: 0px;}
.ico_blank::after{ background: url("/assets/images/ico_blank.png") no-repeat right bottom; }
.ico_pdf::after,
.pdf::after{ background: url("/assets/images/ico_pdf.png") no-repeat right bottom; }
.ico_xls::after,
.xls::after{ background: url("/assets/images/ico_xlsx.png") no-repeat right bottom; }
.ico_doc::after,
.doc::after{ background: url("/assets/images/ico_doc.png") no-repeat right bottom; }

