@charset "utf-8";
/* ===========================
COMMON
--------------------------- */
body{
  background-color: #FFFFFF;
}
#allwrap{
  width: 100%;
  margin:0 auto;
}
body.top{
  background-color: #FFFFFF;
}
body.top #allwrap{
  width: 100%;
  margin:0 auto;
}

#bg{
  background-image: url("../img/bg_all.png");
  background-position: center 0;
  background-repeat:repeat-y;
}
.sp{
  display: none !important;
}
.inner{
  width: 1200px;
  min-width: 1200px;
  margin: 0 auto;
  position: relative;
}
p{
  line-height: 1.8;
  margin: 0 0 20px 0;
}
.icon{
  margin: 0 5px !important;
  vertical-align: middle;
}
#cover{
  display: none;
}
.inlineb{
  display: inline-block;
}


/* normallink */
a.normallink:link{
	color:#0059be !important;
	text-decoration: underline !important;
}
a.normallink:visited{
	color:#0059be !important;
	text-decoration: underline !important;
}
a.normallink:hover{
	color:#1787e6 !important;
	text-decoration: underline !important;
}
a.normallink:active{
	color:#1787e6 !important;
	text-decoration: underline !important;
}

/* nav
----------------- */
#nav{
  padding: 9px 0 0 0;
}
#nav ul{
  width: 1010px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
#nav ul li a{
  display: block;
  text-decoration: none;
  color: #555555;
  line-height: 52px;
  font-weight: bold;
  position: relative;
}
#nav ul li a:hover{
  color: #00a27c;
}
#nav ul li a.active{
  color: #00a27c;
  position: relative;
}
#nav ul li a.active::after{
 content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 4px;
  background-color: #00a27c;
}


/* navbtm
----------------- */
#navbtm{
  padding: 4px 0 3px 0;
  width: 100%;
  position: relative;
  min-width: 1200px;
  background-color: #FFFFFF;
  box-shadow: 0px -3px 10px -6px rgba(0,0,0,0.6);
}
#navbtm ul{
  width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
#navbtm ul li a{
  display: block;
  text-decoration: none;
  color: #555555;
  line-height: 52px;
  font-weight: bold;
  position: relative;
}
#navbtm ul li a:hover{
  color: #00a27c;
}
#navbtm ul li a.active{
  color: #00a27c;
  position: relative;
}
#navbtm ul li a.active::after{
 content: "";
  position: absolute;
  left: 0;
  top: -4px;
  width: 100%;
  height: 4px;
  background-color: #00a27c;
}


/* header
-------------------- */
#header{
  width: 100%;
  position: fixed;
  min-width: 1200px;
  background-color: #FFFFFF;
  box-shadow: 0px 3px 10px -6px rgba(0,0,0,0.6);
  z-index: 5;
  top: 0;
  left: 0;
}
#header #logo{
  width: 305px;
  padding: 16px 0 37px 0;
}

#hnavArea{
  position: absolute;
  top: 0;
  right: 0;
  
}
#hnavWrap{
  display: flex;
  justify-content: flex-end;
}
#hnav{
  margin: 0 48px 0 0;
}
#hnav ul{
  display: flex;
  border-right: 1px solid #eeeeee;
  border-bottom: 1px solid #eeeeee;
}
#hnav ul li{
  border-left: 1px solid #eeeeee;
}
#hnav ul li a{
  display: flex;
  align-items: center;
  justify-content: center;
  color: #333333;
  height:39px;
  padding: 0 15px;
  box-sizing: border-box;
  text-decoration: none;
}
#hnav ul li a:hover{
  color: #00a27c;
}
.btnlangchg{
  cursor: pointer;
}



/* btnmenu */
#btnmenu{
 display: none;
}
#spnav{
  display: none;
}

/* links */
#links{
  background-color: #444444;
  padding: 42px 0;
}
#links .inner{
  display: flex;
  justify-content: space-between;
}
#links .inner > div:nth-of-type(1){
  width: 320px;
}
#links .inner > div:nth-of-type(2){
  width: 330px;
}
#links .inner > div:nth-of-type(3){
  width: 350px;
}
#links .inner > div:nth-of-type(4){
  width: 200px;
}
#links ul li a{
  color: #FFFFFF;
}

#links .linkbox > ul > li{
  margin: 20px 0 0 0;
}
#links .linkbox > ul > li ul{
  margin: 0 0 0 15px;
}
#links .linkbox > ul > li ul.flex{
  display: flex;
  flex-wrap: wrap;
}
#links .linkbox > ul > li ul.flex li{
  width: 50%;
}
#links .linkbox > ul > li ul li{
  margin: 10px 0 0 0;
}
#links .linkbox > ul > li a{
  line-height: 1.6;
}

/* btnprint */
#btnprint{
  height: 32px;
  text-align: right;
}
#btnprint a{
  position: relative;
  color: #FFFFFF;
  display: inline-block;
  padding: 0 0 0 30px;
  text-decoration: none;
}
#btnprint a:before{
  content: "";
  position: absolute;
  left: 0;
  top: calc(50% - 12px);
  width: 24px;
  height: 24px;
  background-image:url("../img/icon_print.png");
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100%;
}
#btnprint a:hover{
  opacity: 0.6;
}
#btnprint a:hover::before{
  opacity: 0.6;
}

/* snav */
#snav{
  width:280px;
  position: relative;
  z-index: 2;
}
#snav #categoryttl{
  margin: 0;
}
#snav #categoryttl a{
  display: block;
  color: #FFFFFF;
  background-color: #002f7b;
  padding: 24px;
  text-decoration: none !important;
}

/* 1 */
#snav ul li{
  border-bottom: 1px solid #d5dde9;
}
#snav ul li a{
  display: block;
  box-sizing: border-box;
  padding: 15px 34px 15px 15px;
  line-height: 1.6;
  position: relative;
  text-decoration: none !important;
}
#snav ul li a:hover{
  color: #1787e6;
  text-decoration: underline;
}
#snav ul li a.active{
  color:#002c7d;
}
#snav ul li.active > .btnopen::after{
  background-position: 0 bottom;
}
#snav > ul > li > a::after{
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: 24px;
  height: 24px;
  background-image:url("../img/icon_arrow_s.png");
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100%;
}
#snav > ul > li > a.btnopen::after{
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: 24px;
  height: 24px;
  background-image:url("../img/icon_snav_open01.png");
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100%;
}
#snav > ul > li > a.btnopen.open::after{
  background-position: 0 bottom;
}

/* 2 */
#snav ul li ul{
  display: none;
}
#snav > ul > li > ul{
  background-image: url("../img/bg_snav.png");
  background-position: 0 0;
  background-repeat: repeat-y;
}
#snav ul li.active > ul{
  display: block;
  
}
#snav ul li ul li{
  width: 100%;
  border-bottom: none;
  box-sizing: border-box;
}
#snav ul li ul li a{
  color: #333333;
  margin: 0 0 0 15px;
  padding:  8px 15px 8px 8px;
  box-sizing: border-box;
}
#snav > ul > li > ul > li > a.btnopen{
  border-bottom: 1px solid #d9d9d9;  
}
#snav > ul > li > ul > li > a.btnopen::after{
  content: "";
  position: absolute;
  right: 10px;
  top: calc(50% - 4px);
  width:9px;
  height: 9px;
  background-image:url("../img/icon_snav_open02.png");
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100%;
}
#snav > ul > li > ul > li > a.btnopen.open{
  color:#002c7d;
}
#snav > ul > li > ul > li > a.btnopen.open::after{
  background-position: 0 bottom;
}

/* 3 */
#snav > ul > li > ul > li > ul{
  margin: 0 15px;
}
#snav > ul > li > ul > li > ul > li a{
  margin: 0 0 0 15px;
}
#snav > ul > li > ul > li > ul > li ul > li a{
  margin: 0 0 0 30px;
}


/* footer
----------------- */
#footer{
  min-width: 1280px;
  background-color: #ffffff;
  position: relative;
  height: 64px;
}
#footer .inner{
  width: 1200px;
  box-sizing: border-box;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}


/* fnav */
#fnav{
  padding: 0;
}
#fnav ul{
  display: flex;
}
#fnav ul li{
  margin: 0 16px 0 0;
  padding: 0 16px 0 0;
  position: relative;
}
#fnav ul li a{
  color: #333333;
  line-height: 64px;
}

/* copy */
#copy{
  color: #333333;
  line-height: 64px;
}

/* btnpagetop
---------------- */
#btnpagetop{
	position: absolute;	
	z-index: 12;
	right: 0;
}
#btnpagetop.fix{
	position:fixed !important;
	top:auto;
	bottom:0 !important;
}
#btnpagetop a{
	display: block;
	width: 64px;
	height: 64px;
	opacity: 1;
  text-align: center;
  text-decoration: none;
  background-image:url("../img/btn_pagetop.png");
  background-position: center center;
  background-repeat: no-repeat;
  text-indent: -9999px;
  overflow: hidden;
}
#btnpagetop a:hover::after, #btnpagetop a:active::after{
  transition: 0.3s;
  top: calc(50% - 15px);
}

/* pankuzu
---------------- */
#pankuzu{
  margin: 24px 0 16px 0;
}
#pankuzu ul{
  display: flex;
  flex-wrap: wrap;
}
#pankuzu ul li{
  margin: 0 17px 10px 0;
  position: relative;
}
#pankuzu ul li a{
  color: #0059be;
}
#pankuzu ul li::after{
  content: "/";
  position: absolute;
  right: -12px;
  top: calc(50% - 6px);
  color: #305695;
}
#pankuzu ul li:last-child::after{
  display: none;
}

.anchorlink {
	position: relative;
	top: -120px;
	display: block;
}


/* anchor */
.anchor{
	margin: 40px 0 5px 0;
}
.anchor ul{
	display: flex;
	flex-wrap: wrap;
}
.anchor ul li{
	margin: 0 40px 30px 0;
}
.anchor ul li a{
	color: #333333;
	text-decoration: none;
	position: relative;
	display: inline-block;
	padding: 0 0 0 22px;
}
.anchor ul li a::before{
	content: "";
	position: absolute;
	top: 1px;
	left: 0;
	background-image: url(../img/icon_anchor.png);
	background-position: 0 0;
	background-repeat: no-repeat;
	width: 16px;
	height: 16px;
}
.anchor ul li a:hover, .anchor ul li a:active{
	text-decoration: underline;
}


#bgh1{
  background-image: url("../img/bg_h1.png");
  background-position: center center;
  background-repeat: no-repeat;
  text-align: center;
  position: relative;
  height: 255px;
  z-index: 2;
}
#bgtop #bgh1{
  background-image: url("../img/bg_h1_top.png");
  height: 320px;
  background-color: #1fb996;
}
#btop h1{
  color: #FFFFFF !important;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 255px;
  box-sizing: border-box;
  line-height: 1.4;
  padding: 0 20px;
}
#bgtop #bgh1 h1{
  justify-content:flex-start;
}
#bgh1 h1{
  color: #FFFFFF;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 255px;
  box-sizing: border-box;
  line-height: 1.4;
  padding: 0 20px;
}
#bgtop #bgh1 h1{
  justify-content:flex-start;
}


/* TOPICS */
#topics{
  display: flex;
  width: 1020px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}
#topics .ttlwrap{
  width: 180px;
}
#topics .ttl{
  color: #002f7b;
  font-weight: bold;
  margin: 0 0 30px 0;
  line-height: 1;
}
#topics #slideshowwrap{
  width: 840px;
}

/* slideshow */
#slideshowwrap{
  overflow: hidden;
  height: 433px;
}
#slideshowwrap li{
	width: 400px !important;
  float: left;  
  display: block;
  margin: 0 40px 0 0;
  position: relative;
  box-sizing: border-box;
 }
#slideshowwrap li a{
  text-decoration: none;
}
#slideshowwrap li .img{
  margin: 0 0 20px 0;
  overflow: hidden;
}
#slideshowwrap li .img img{
  transition: all 0.3s;
}
#slideshowwrap li .date{
  color: #1fb996;
  margin: 0 0 12px 0;
}
#slideshowwrap li .txt{
  line-height: 1.5;
  font-weight:bold;
}
#slideshowwrap li a:hover .txt{
  text-decoration: underline;
}
#slideshowwrap li a:hover .img img{
  transform: scale(1.1);
  transition: all 0.3s;
}

/* pager */
.pager{
  width: 152px;
  margin: 0 0 0 4px;
}
.pager ul{
  display: flex;
  justify-content: space-between;
}
.pager li{
}
.pager.btnprev{
}
.pager .btnnext{
}
.pager a{
  display: block;
  cursor: pointer;
  text-indent: -9999px;
  overflow: hidden;
  width: 64px;
  height: 64px;
  background-color: #dbe7f5;
  position: relative;
  background-position: 0 0;
  background-repeat: no-repeat;
}
.pager .btnprev{
  background-image: url("../../img/btn_prev.png");
}
.pager .btnnext{
  background-image: url("../../img/btn_next.png");
}



/* title
---------------- */
h1{
  margin: 0 0 30px 0;
}
h2{
  margin:40px 0 30px 0;
  padding: 0;
  color: #00ab84;
  line-height: 1.4;
}
h2 span{
  color: #00ab84;
}
h2 sup,
h2 sub{
  color: #00ab84;
  vertical-align: baseline;
}
h3{
  margin: 30px 0 30px 0;
  padding: 12px 35px;
  position: relative;
  line-height: 1.4;
  color: #FFFFFF;
  background-color: #70c7b3;
  border-radius: 30px;
}
h3 span{
  margin: 30px 0 30px 0;
  padding: 12px 10px;
  position: relative;
  line-height: 1.4;
  color: #FFFFFF;
  background-color: #70c7b3;
  border-radius: 30px;
  font-size: 2.2rem;
}
h3 a{
  color: #FFFFFF !important;
}
.h3_1{
  position: relative;
  border:none;
}
.h3_1::before{
  border-top: 2px solid;
  content: "";
  position: absolute;
  top: 64%;
  left: 0;
  width: 100%;
  border-color: #70c7b3;
}
.h3_1 span{
  background-color: #70c7b3;
  display: inline-block;
  padding: 13px 19px;
  position: relative;
  text-align: center;
  font-size: 2.4rem;
  margin: 40px 0 10px 40px;
  border-radius: 33px;
  color: #FFFFFF;
  border-style: solid;
}
h4,
.h4{
  margin: 50px 0 30px 0;
  padding: 0 10px 15px 10px;
  color: #555555;
  line-height: 1.4;
  border-bottom: 2px solid #00ab84;
  border-radius: 0;
  background-color: none;
}
h5{
  margin: 50px 0 30px 0;
  padding: 6px 0 6px 15px;
  position: relative;
  line-height: 1.4;
  color: #555555;
}
h5::before{
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 4px;
  height: 100%;
  background-color: #00ab84;
  border-radius: 3px;
}
.h5{
  margin: 50px 0 30px 0;
  padding: 6px 0 6px 15px;
  position: relative;
  line-height: 1.4;
  color: #555555;
}
.h5::before{
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 4px;
  height: 100%;
  background-color: #00ab84;
  border-radius: 3px;
}
.colorttl1{
  margin: 0 0 30px 0;
  line-height: 1.4;
  color: #002f7b;
}
.colortxt1{
  color: #002f7b;
}
#contents{
  display: flex;
  justify-content: space-between;
  margin: -55px auto 0 auto;
  padding: 0 0 100px 0;
  position: relative;
  z-index: 2;
}

/* main
----------------*/
#main{
  min-width: 880px;
  width: 880px;
  padding: 16px 0 65px 0;
}
.single #main{
  width: 100%;
}
.single #snav{
  display: none;
}

.imgttl,
.tblttl{
  margin: 0 0 12px 0;
  text-align: center;
  font-weight: bold;
}
figcaption{
  margin: 8px 0 0 0;
  text-align: center;
  line-height: 1.6;
}

/* imgL */
.imgL{
  clear: both;
  margin: 0 0 50px 0;
  padding: 0;
  min-height: 212px;
}
.imgL img{
}
.imgL .img{
  float: left;
  margin: 0 20px 10px 0;
}


/* imgR */
.imgR{
  clear: both;
  margin: 0 0 50px 0;
  padding: 0;
  min-height: 212px;
}
.imgR .img{
  float: right;
  margin: 0 0 10px 20px;
}
.imgR figure{
  display: inline-block;
}


/* imgL1 */
.imgL1{
	display: flex;
	justify-content:space-between;
}
.imgL1 > .img{
}
.imgL1 > .txt{
	margin: 0 0 0 22px;
}
.imgL1.reverse{
	flex-direction : row-reverse;
}
.imgL1.vcenter{
  align-items: center;
}


/* imgR1 */
.imgR1{
	display: flex;
	justify-content:space-between;
	flex-flow:row-reverse;
}
.imgR1 > .img{
}
.imgR1 > .txt{
	margin: 0 22px 0 0;
}
.imgR1 > .img img{
}
.imgR1.reverse{
	flex-direction :row;
}

/* col3 */
.col3{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.col3 li{
	max-width: 280px;
	margin: 0 0 20px 0;
}
/* col3 center */
.col3.center{
	justify-content: center;
}
.col3.center li{
	margin: 0 5px 20px 5px;
}
/* col3 right */
.col3.right{
	justify-content: right;
}
.col3.right li{
	margin: 0 5px 20px 5px;
}


/* half */
.half{
	display: flex;
	justify-content: space-between;
	margin: 0;
	flex-wrap: wrap;
}
.half > li,
.half > .inhalf{
	width:428px;
	margin: 0 0 20px 0;
	box-sizing: border-box;
}
.half > .inhalf2{
	width: 49%;
}



/* third */
.third{
	display: flex;
	justify-content: space-between;
	margin: 0;
	flex-wrap: wrap;
}
.third > li,
.third > .inthird1{
	width:384px;
	margin: 0 0 20px 0;
	box-sizing: border-box;
}
.third > .inthird2{
	width:112px;
	margin: 0 0 20px 0;
	box-sizing: border-box;
	
}


.tblwrap{
  padding: 0 0 1px 0;
  background-color: #FFFFFF;
}
.w200per{
  width: 100%;
  box-sizing: border-box;
}

/* tbl1
------------------*/
.tbl1{
	border-bottom: 1px solid #00ab84;
	margin: 0;
}
.tbl1 th{
	padding: 10px 20px;
	line-height: 1.8;
	vertical-align: top;
	text-align: left;
	font-weight: bold;
	border-top: 1px solid #00ab84;
  background-color: #e5f7f2;
}
.tbl1 td{
	padding: 10px 30px;
	line-height: 1.8;
	font-weight: 100;
	background-color: #FFFFFF;
	border-top: 1px solid #00ab84;
}

/* tbl2
------------------*/
.tbl2{
	/*border-right: 1px solid #00ab84;
	border-bottom: 1px solid #00ab84;
  */
  background-color:#00ab84;
  border-collapse:separate;
  border-spacing:1px;
	margin: 0;
}
.tbl2 th{
	padding: 10px 20px;
	line-height: 1.8;
	vertical-align: top;
	text-align: left;
	font-weight: bold;
	/*border-top: 1px solid #00ab84;*/
  background-color: #e5f7f2;
}
.tbl2 td{
	padding: 10px 20px;
	line-height: 1.8;
	font-weight: 100;
	/*border-top: 1px solid #00ab84;*/
  background-color: #FFFFFF;
}
.tbl2 thead th{
  color: #FFFFFF;
  background-color: #56bca5;
	/*border-left: 1px solid #00ab84;*/
  text-align: center;
}
.tbl2 thead th sub{
  color: #FFFFFF;
  vertical-align: baseline;
}
.tbl2 tbody th{
	/*border-left: 1px solid #00ab84;*/
}
.tbl2 tbody td{
	/*border-left: 1px solid #00ab84;*/
}

/* tbl3
------------------*/
.tbl3{
	border-right: 1px solid #00ab84;
	border-bottom: 1px solid #00ab84;
	margin: 0;
}
.tbl3 th{
	padding: 10px 20px;
	line-height: 1.8;
	vertical-align: top;
	text-align: left;
	font-weight: bold;
	border-top: 1px solid #00ab84;
  background-color: #e5f7f2;
}
.tbl3 td{
	padding: 10px 20px;
	line-height: 1.8;
	font-weight: 100;
	border-top: 1px solid #00ab84;
  background-color: #FFFFFF;
}
.tbl3 thead th{
  color: #FFFFFF;
  background-color: #56bca5;
  border-left: 1px solid #00ab84;
  text-align: center;
}
.tbl3 thead th sub{
  color: #FFFFFF;
  vertical-align: baseline;
}
.tbl3 tbody th{
	border-left: 1px solid #00ab84;
}
.tbl3 tbody td{
	border-left: 1px solid #00ab84;
}


.thWhite tbody th{
  background-color: #FFFFFF !important;
}
.line2Color tbody tr > td:nth-of-type(1){
/*  background-color: #e5f7f2 !important;*/
  background-color: #00ab84 !important;
  color: #FFFFFF;
  border-top: 1px solid #FFFFFF;
}
.line2Color tbody tr:first-child > td:nth-of-type(1){
  border-top:1px solid #00ab84;
}

.thL th,
.tdL td{
  text-align: left !important;
}
.thR th,
.tdR td{
  text-align: right !important;
}
.thC th,
.tdC td{
  text-align: center !important;
}
.thVC th,
.tdVC td{
  vertical-align: middle !important;
}
th.left,
td.left{
  text-align: left !important;
}
th.right,
td.right{
  text-align: right !important;
}
th.center,
td.center{
  text-align: center !important;
}
th.vcenter,
td.vcenter{
  vertical-align: middle !important;
}
/* left */
.td1L tr > td:nth-of-type(1){
  text-align: left !important;
}
.td2L tr > td:nth-of-type(2){
  text-align: left !important;
}
.td3L tr > td:nth-of-type(3){
  txt-align: left !important;
}

/* center */
.td1C tr > td:nth-of-type(1){
  text-align: center !important;
}
.td2C tr > td:nth-of-type(2){
  text-align: center !important;
}
.td3C tr > td:nth-of-type(3){
  text-align: center !important;
}

.td1C tr > td.left,
.td2C tr > td.left,
.td3C tr > td.left{
  text-align: left !important;
}

.td1C tr > td.center,
.td2C tr > td.center,
.td3C tr > td.center{
  text-align: center !important;
}

.td1C tr > td.right,
.td2C tr > td.right,
.td3C tr > td.right{
  text-align: right !important;
}

.thintd td{
  padding: 10px;
}
.thVC th.tate{
  vertical-align: top !important;
  text-align: center !important;
}
.tate span{
-webkit-writing-mode: vertical-rl;
-ms-writing-mode: tb-rl;
-o-writing-mode: vertical-rl;
writing-mode: vertical-rl;
}
.tate .printtxt{
  display: none;
}


.bold{
  font-weight: bold !important;
}
.indenttxt1{
	padding: 10px 20px 10px calc(20px + 1em) !important;
}
.indenttxt2{
	padding: 10px 20px 10px calc(20px + 2em) !important;
}



/* imgwrap */
.imgwrap{
  margin: 0 0 40px 0;
}

/* imglist */
.imglist{
  display: flex;
  justify-content: space-between;
}
.imglist li{
  max-width: 50%;
  margin: 0 0 16px 0;
}
.imglist.center{
  justify-content: center;
}
.imglist.center li{
  margin: 0 10px;
}


/* imglist2 */
.imglist2{
}
.imglist2 li{
  margin: 0 0 10px 0;
}

.iconcheck{
  display: inline-block;
  position: relative;
  padding: 0;
  background-image:url("../img/icon_checktbl.png");
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100%;
  width: 15px;
  height: 15px;
  vertical-align: middle;
  margin: 0 0 0 5px;
}
.iconcheck.front{
  display: inline-block;
  position: relative;
  padding: 0 0 0 20px;
  background: none;
  width: auto;
  height: auto;
  margin: 0 5px 0 0;
}
.iconcheck.front::before{
  content: "";
  position: absolute;
  left: 0;
  top: calc(50% - 7px);
  width: 15px;
  height: 15px;
  background-image:url("../img/icon_checktbl.png");
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100%;
}


/* list */
.list{
  
}
.list li{
  line-height: 1.8;
  margin: 0 0 12px 0;
}

/* list1 */
.list1{
  margin: 0;
}
.list1 li{
  margin: 0 0 12px 0;
  padding: 0 0 0 15px;
  line-height: 1.6;
  position: relative;
  vertical-align: middle;
}
.list1 li::before{
  content: "";
  position: absolute;
  left: 0;
  top: 10px;
  color: #F7CCCD;
  background-color: #00ab84;
  width: 6px;
  height: 6px;
  border-radius: 3px;
}
.list1.note li::before{
  top:8px;
}
.list1 li ul li:before{
  display: none;
}


/* list2 */
.list2{
  margin: 0;
}
.list2 li{
  margin: 0 0 12px 0;
  padding: 0 0 0 12px;
  line-height: 1.6;
  position: relative;
}
.list2 li::before{
  content: "";
  position: absolute;
  left: 0;
  top: 9px;
  width: 6px;
  height: 9px;
  background-image:url("../img/icon_arrow02.png");
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100%;
}

hr{
  height: 2px;
  background-color: #00ab84;
  border: none;
  margin: 60px 0;
}

/* iconlink */
.iconlink{
  margin: 0 0 12px 0;
  padding: 0 0 0 12px;
  line-height: 1.8;
  position: relative;
}
.iconlink::before{
  content: "";
  position: absolute;
  left: 0;
  top: 3px;
  width: 6px;
  height: 9px;
  background-image:url("../img/icon_arrow02.png");
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100%;
}
p .iconlink::before{
  top: 8px;
}
.iconlink-h{
  margin: 0 0 12px 0;
  padding: 0 0 0 12px;
  line-height: 1.8;
  position: relative;
}
.iconlink-h::before{
  content: "";
  position: absolute;
  left: 0;
  top: calc(50% - 5px);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 4.5px 0 4.5px 6px;
  border-color: transparent transparent transparent #002f7b;
}

/* iconlist */
.iconlist_1{
  margin: 0 0 12px 0;
  padding: 0 0 0 12px;
  line-height: 1.8;
  position: relative;
}
.iconlist_1::before{
  content: "";
  position: absolute;
  left: 0;
  top: 49px;
  width: 33px;
  height: 33px;
  background-image:url("../img/icon_steakholder01.png");
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100%;
  margin: 0 0 0 15px;
}
.iconlist_2{
  margin: 0 0 12px 0;
  padding: 0 0 0 12px;
  line-height: 1.8;
  position: relative;
}
.iconlist_2::before{
  content: "";
  position: absolute;
  left: 0;
  top: 35px;
  width: 33px;
  height: 33px;
  background-image:url("../img/icon_steakholder02.png");
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100%;
  margin: 0 0 0 15px;
}
.iconlist_3{
  margin: 0 0 12px 0;
  padding: 0 0 0 12px;
  line-height: 1.8;
  position: relative;
}
.iconlist_3::before{
  content: "";
  position: absolute;
  left: 0;
  top: 22px;
  width: 33px;
  height: 32px;
  background-image:url("../img/icon_steakholder03.png");
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100%;
  margin: 0 0 0 15px;
}
.iconlist_4{
  margin: 0 0 12px 0;
  padding: 0 0 0 12px;
  line-height: 1.8;
  position: relative;
}
.iconlist_4::before{
  content: "";
  position: absolute;
  left: 0;
  top: 49px;
  width: 33px;
  height: 33px;
  background-image:url("../img/icon_steakholder04.png");
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100%;
  margin: 0 0 0 15px;
}
.iconlist_5{
  margin: 0 0 12px 0;
  padding: 0 0 0 12px;
  line-height: 1.8;
  position: relative;
}
.iconlist_5::before{
  content: "";
  position: absolute;
  left: 0;
  top: 47px;
  width: 33px;
  height: 33px;
  background-image:url("../img/icon_steakholder05.png");
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100%;
  margin: 0 0 0 15px;
}



/* list */
ol.list{
  margin: 0;
  padding: 0;
}
ol.list li{
  padding: 0 0 0 24px;
  position: relative;
  list-style-type: none;
}
ol.list li::before{
  content: attr(data-num);
  position: absolute;
  left: 0;
  top:7px;
  width: 18px;
  height: 18px;
  background-color: #00ad92;
  color: #FFFFFF;
  display: flex;
  align-items: center;
  justify-content: center;
  padding:  0;
  border-radius: 9px;
  line-height: 18px;
}


/* indent1 */
.indent1{
}
.indentlist1 li,
.indent1{
  padding-left:1em;
  line-height:1.6;
  margin: 0 0 12px 0;
}
.indentlist1 li span,
.indent1 span{
  display: inline-block;
  width: 1em;
  margin-left:-1em;
  line-height:1.6;
}


/* indent2 */
.indent2{
}
.indentlist2 > li,
.indent2{
  padding-left:2em;
  line-height:1.6;
  margin: 0 0 12px 0;
}
.indentlist2 > li > span,
.indent2 span{
  display: inline-block;
  width: 2em;
  margin-left:-2em;
  line-height:1.6;
}

/* indent3 */
.indent3{
}
.indentlist3 > li,
.indent3{
  padding-left:3em;
  line-height:1.6;
  margin: 0 0 12px 0;
}
.indentlist3 > li > span,
.indent3 span{
  display: inline-block;
  width: 3em;
  margin-left:-3em;
  line-height:1.6;
}


/* indent6 */
.indent6{
}
.indentlist6 li,
.indent6{
  padding-left:6em;
  line-height:1.6;
  margin: 0 0 12px 0;
}
.indentlist6 li span,
.indent6 span{
  display: inline-block;
  width: 6em;
  margin-left:-6em;
  line-height:1.6;
}
.list1 li.indent6{
  padding-left: calc(6em + 15px);
}
.list1.indentlist6 li{
  padding-left: calc(6em + 15px);  
}


/* indent8 */
.indent8{
}
.indentlist8 li,
p.indent8{
  padding-left:8em;
  line-height:1.6;
  margin: 0 0 12px 0;
}
.indentlist8 li span,
.indent8 span{
  display: inline-block;
  width: 8em;
  margin-left:-8em;
  line-height:1.6;
  vertical-align:middle;
}
.indentlist8 li span.note,
.indent8 span.note{
  width: auto;
  margin-left: 0;
}

/* indent10 */
.indent10{
}
.indentlist10 > li,
.indent10{
  padding-left:10em;
  line-height:1.6;
  margin: 0 0 12px 0;
  vertical-align: top;
}
.indentlist10 > li > span,
.indent10 span{
  display: inline-block;
  width: 10em;
  margin-left:-10em;
  line-height:1.6;
  vertical-align: top;
}
.list1 li.indent10{
  padding-left: calc(10em + 15px);
}
.list1.indentlist10 > li{
  padding-left: calc(10em + 15px);  
}
.indentlist10 > li > ul{
  display: inline-block;
  width: calc(100% - 10em);
}

/* indent11 */
.indent11{
}
.indentlist11 > li,
.indent11{
  padding-left:11em;
  line-height:1.6;
  margin: 0 0 12px 0;
  vertical-align: top;
}
.indentlist11 > li > span,
.indent11 span{
  display: inline-block;
  width: 11em;
  margin-left:-11em;
  line-height:1.6;
  vertical-align: top;
}
.list1 li.indent11{
  padding-left: calc(11em + 15px);
}
.list1.indentlist11 > li{
  padding-left: calc(11em + 15px);  
}
.indentlist11 > li > ul{
  display: inline-block;
  width: calc(100% - 10em);
}

/* indent15 */
.indent15{
}
.indentlist15 li,
.indent15{
  padding-left:15em;
  line-height:1.6;
  margin: 0 0 12px 0;
  vertical-align: top;
}
.indentlist15 li span,
.indent15 span{
  display: inline-block;
  width: 15em;
  margin-left:-15em;
  line-height:1.6;
  vertical-align: top;
}
.list1 li.indent15{
  padding-left: calc(15em + 15px);
}
.list1.indentlist15 li{
  padding-left: calc(15em + 15px);  
}

/* indent18 */
.indent18{
}
.indentlist18 li,
.indent18{
  padding-left:15em;
  line-height:1.6;
  margin: 0 0 12px 0;
  vertical-align: top;
}
.indentlist18 li span,
.indent18 span{
  display: inline-block;
  width: 15em;
  margin-left:-15em;
  line-height:1.6;
  vertical-align: top;
}
.list1 li.indent18{
  padding-left: calc(15em + 15px);
}
.list1.indentlist18 li{
  padding-left: calc(15em + 15px);  
}


.mb0list li{
  margin-bottom: 0 !important;  
}

/* btnL */
.btnL,
.btnLwrap input{
  box-sizing: border-box;
  display: inline-block;
  background-color: #dbe7f5;
  color: #002f7b !important;
  line-height: 1.2;
  text-decoration: none !important;
  padding: 25px 92px 25px 62px;
  position: relative;
  border: none;
  cursor: pointer;
  font-weight: bold;
}
.btnLwrap{
  position: relative;
  display: inline-block;
}
.btnL::after,
.btnLwrap::after{
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: 40px;
  height: 40px;
  background-image:url("../img/icon_arrow.png");
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100%;
}
.btnL{
  box-sizing: border-box;
  display: inline-block;
  background-color: #dbe7f5;
  color: #002f7b !important;
  line-height: 1.2;
  text-decoration: none !important;
  padding: 25px 40px 25px 32px;
  position: relative;
  border: none;
}
.btnL:hover,
.btnLwrap:hover input{
  color: #FFFFFF !important;
  background-color: #194389;
}
input.btnL{
  background-image:url("../img/icon_arrow.png");
  background-position: calc(100% - 40px) bottom;
  background-repeat: no-repeat;
  cursor: pointer;
}
.btnL:hover sub{
  color: #FFFFFF !important;
}
.w446{
  width: 446px;
}

/* btnM */
.btnM{
  box-sizing: border-box;
  display: inline-block;
  background-color: #dbe7f5;
  color: #002f7b !important;
  line-height: 1.2;
  text-decoration: none !important;
  padding: 20px 32px 20px 24px;
  position: relative;
  font-weight: bold;
}
.btnM::before{
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: 24px;
  height: 24px;
  background-image:url("../img/icon_arrow_s.png");
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100%;
}
.btnM:hover{
  color: #FFFFFF !important;
  background-color: #194389;
}

.stack1{
	display: flex;
    top: 410px;
	position: absolute;
}
.stack2{
  top: 50px;
  left: 32px;
	position: absolute;
  height: auto;
  padding: 0;
}
.stack2 p{
  margin: 0;
  padding: 0;
  line-height: 1.2 !important;
}
.stack2 a{
  color: #ff8315;
  padding: 0 27px 0 0 !important;
  background-image:url("../../img/icon_arrow_o.png");
  background-repeat: no-repeat;
  background-position: right center;
  line-height: 1.2 !important;
}
.btn_l{
  box-sizing: border-box;
  display: inline-block;
  background-color: #dbe7f5;
  color: #002f7b !important;
  line-height: 1.2;
  text-decoration: none !important;
  padding: 20px 32px 20px 50px;
  position: relative;
  font-weight: bold;
  font-size: 1.5rem;
  width: 230px;
  height: 60px;
  top: -86px;
  left: 72px;
  z-index: 2;
}
.btn_l::before{
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: 24px;
  height: 24px;
  background-image:url("../img/icon_arrow_s.png");
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100%;
}
.btn_l:hover{
  color: #FFFFFF !important;
  background-color: #194389;
}
.btn_r{
	box-sizing: border-box;
    display: inline-block;
    background-color: #dbe7f5;
    color: #002f7b !important;
    line-height: 1.2;
    text-decoration: none !important;
    padding: 13px 32px 15px 28px;
    position: relative;
    font-weight: bold;
    width: 230px;
    height: 60px;
    top: -87px;
    left: 125px;
	font-size: 1.5rem;
	text-align: center;
}
.btn_r::before{
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: 24px;
  height: 24px;
  background-image:url("../img/icon_arrow_s.png");
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100%;
}
.btn_r:hover{
  color: #FFFFFF !important;
  background-color: #194389;
}
.btn_c{
	box-sizing: border-box !important;
    display: inline-block !important;
    background-color: #dbe7f5;
    color: #002f7b !important;
    line-height: 1.2;
    text-decoration: none !important;
    padding: 12px 10px 12px 10px !important;
    position: relative !important;
    font-weight: bold;
    width: 260px !important;
    height: 60px !important;
    margin: 440px 30px 10px 30px;
    font-size: 1.5rem;
}
.btn_c::before{
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: 24px;
  height: 24px;
  background-image:url("../img/icon_arrow_s.png");
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100%;
}
.btn_c:hover{
  color: #FFFFFF !important;
  background-color: #194389;
}



/* btnicon */
.btnicon{
  box-sizing: border-box;
  display: inline-block;
  background-color: #dbe7f5;
  color: #002f7b !important;
  line-height: 1.2;
  text-decoration: none !important;
  padding: 20px 24px 20px 50px;
  position: relative;
  text-align: left;
  font-weight: bold;
}
.btnicon::before{
  content: "";
  position: absolute;
  left: 16px;
  top: calc(50% - 14px);
  width: 28px;
  height: 28px;
  background-image:url("../../sample/img/icon_dummy.png");
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100%;
}
.btnicon::after{
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: 24px;
  height: 24px;
  background-image:url("../img/icon_arrow_s.png");
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100%;
}
.btnicon:hover,
.btnicon:hover span{
  color: #FFFFFF !important;
  background-color: #194389;
}
.btnicon:hover::before{
  background-position: 0 bottom;
}

/* new */
.new{
  background-color: #FFFFFF;
  width: 70px;
  height: 45px;
  font-weight: bold;
}
.new p{
  font-size: 2.4rem;
  color: #FFA500;
  font-weight: bold;
  text-align: center;
}

/* btnS */
.btnS{
  line-height: 1.6;
  background-color: #dbe7f5;
  color: #002f7b !important;
  position: relative;
  display: inline-block;
  padding: 12px 34px 12px 20px;
  text-decoration: none !important;
  font-weight: bold;
}
.btnS:hover{
  color: #FFFFFF !important;
  background-color: #194389;
}
.btnS::after{
  content: "";
  position: absolute;
  right: 12px;
  top: calc(50% - 4px);
  width: 6px;
  height: 9px;
  background-image:url("../img/icon_btn_arrow01.png");
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100%;
}
.btnS:hover::after{
  background-position: 0 bottom;
}

/* btnreturn */
.btnreturn{
  line-height: 1.6;
  color: #555555 !important;
  background-color: #ececec;
  position: relative;
  display: inline-block;
  padding: 10px 20px 10px 34px;
  text-decoration: none !important;
  font-weight: bold;
}
.btnreturn:hover{
  line-height: 1.6;
  color: #FFFFFF !important;
  background-color: #efefef;
}
.btnreturn::before{
  content: "";
  position: absolute;
  left: 12px;
  top: calc(50% - 4px);
  width: 6px;
  height: 9px;
  background-image:url("../img/icon_btn_arrow02.png");
  background-position: 0 0;
  background-repeat: no-repeat;
}
.btnreturn:hover{
  color: #FFFFFF;
  background-color: #9a9a9a;
}
.btnreturn:hover::before{
  background-position: 0 bottom;
}

/* input */
.btnreturnwrap{
  position: relative;
}
.btnreturnwrap::before{
  content: "";
  position: absolute;
  left: 12px;
  top: calc(50% - 4px);
  width: 6px;
  height: 9px;
  background-image:url("../img/icon_btn_arrow02.png");
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100%;
  overflow: hidden;
}
.btnreturnwrap:hover::before{
  background-position: 0 bottom;
}
.btnreturnwrap input{
  height: 48px;
  line-height: 1.6;
  padding: 10px 20px 10px 34px;
  cursor: pointer;
  border:none;
  font-weight: bold;
}
.btnreturnwrap input:hover{
  color: #FFFFFF;
  background-color: #9a9a9a;
}



/* box1 */
.box1{
  background-color: #f7f7f7;
  padding: 16px 24px;
}
.box1 p:last-child{
  margin: 0;
}
.box1 .ttl{
  text-align: center;
  font-weight: bold;
}
.box1.note .ttl{
  text-align: left !important;
  margin: 0 0 5px 0;
}
.box1 .sttl{
  font-weight: bold;
}



/* box2 */
.box2{
  border: 4px solid #f5e8de;
  background-color: #FFFFFF;
  margin: 40px 0 0 0;
  padding: 28px 20px;
}
.box2 p:last-child{
  margin: 0;
}
.box2 .ttl{
  margin: 0 0 30px 0;
  padding: 0 10px 15px 10px;
  color: #555555;
  line-height: 1.4;
  border-bottom: 2px solid #00ab84;
}
.box2 .ttlwrap{
  margin: 0 0 30px 0;
  padding: 0 10px 15px 10px;
  color: #555555;
  line-height: 1.4;
  border-bottom: 2px solid #00ab84;
  display: flex;
}
.box2 .ttlwrap .ttl{
  border-bottom: none;
  margin: 0 10px 0 0;
}

/* related */
.related{
  border: 4px solid #3261ac;
  background-color: #FFFFFF;
  margin: 40px 0 70px 0;
  padding: 20px 16px 0 16px;
}
.related p:last-child{
  margin: 0;
}
.related .ttl{
  margin: 0 0 24px 0;
  padding:5px 0;
  color: #555555;
  line-height: 1.4;
  position: relative;
}
.related .ttl::before{
  content: "";
  position: absolute;
  left: -20px;
  top:0;
  width: 4px;
  height: 100%;
  background-color: #00ab84;
}
.related ul{
  display: flex;
  flex-wrap: wrap;
}

.related ul li{
	margin: 0 40px 30px 0;
}
.related ul li a{
	color: #333333;
	text-decoration: none;
	position: relative;
	display: inline-block;
	padding: 0 0 0 14px;
  line-height: 1.6;
}
.related ul li a::before{
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  width: 6px;
  height: 9px;
  background-image:url("../img/icon_arrow02.png");
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100%;
}
.related ul li a:hover, .related ul li a:active{
	text-decoration: underline;
}




/* ===========================
TOP
--------------------------- */
#bgtop{
  background-image: url("../../img/bg_top01.png");
  background-position: center -560px;
  background-repeat: no-repeat;
  max-width: 2000px;
  margin: 0 auto;
  padding: 100px 0 0 0;
}

/* btnreport */
#btnreport{
  margin: 0 0 24px 0;
}
#btnreport a{
  display: flex;
  background-image: url("../../img/bg_btnreport.png");
  background-position: 0 0;
  background-repeat:repeat-x;
  color: #FFFFFF;
  width: 360px;
  height: 80px;
  align-items: center;
  box-sizing: border-box;
  padding: 0 55px 0 20px;
  line-height: 1.6;
  text-decoration: none;
  position: relative;
  justify-content: center;
}
#btnreport a::after{
  content: "";
  position: absolute;
  right: 24px;
  top: calc(50% - 12px);
  width: 24px;
  height: 24px;
  background-image:url("../../img/icon_report.svg");
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 24px 24px;
}
#btnreport a span{
  color: #ffffff;
  font-weight: bold;
  line-height: 1.8;
}

#updatewrap{
  display: flex;
  justify-content: space-between;
  padding: 34px 0 0 0;
}
/* update */
#update{
  width: 800px;
  padding: 0 0 6px 0;
}
#update .ttlwrap{
  display: flex;
  justify-content: space-between;
  border-bottom: 1px solid #ffe2cc;
}
#update .ttl{
  width: 320px;
  padding: 6px 0;
}
#update .ttl p{
  margin: 0;
  color: #002f7b;
  font-weight: bold;
}
#update ul li,
#update ul li .date,
#update ul li .detail,

.newsrelease ul li,
.newsrelease ul li .date,
.newsrelease ul li .detail{
  line-height: 1.6;
  color: #333333;
}
#update ul li,
.newsrelease ul li{
  display:flex;
  padding: 20px 0;
  border-bottom: 1px solid #ffe2cc;
  color: #333333;
}
.newsrelease ul li{
  padding: 24px 0;
  border-bottom: 1px solid #dddddd;
}
#update ul li .date,
.newsrelease ul li .date{
  width: 18em;
  position: relative;
}
#update ul li .detail,
.newsrelease ul li .detail{
  width: calc(100% - 9em);
}
#update ul li .detail,
.newsrelease ul li .detail{
  color: #333333;
  padding: 0;
}

#update ul li .date::before,
.newsrelease ul li .date::before{
  content: attr(data-type);
  position: absolute;
  right: 1em;
  top: 0;
  background-color: #f19b4f;
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  border-radius: 20px;
  padding: 4px 8px;
  min-width: 120px;
  max-width: 120px;
  line-height: 1.2;
  box-sizing: border-box;
}

#update ul li .date.iconline2::before,
.newsrelease ul li .date.iconline2::before{
  top: -4px;
}


/* updatelist */
#updatelist{
  width: 800px;
  text-align: right;
  padding-top: 10px;
}
#updatelist a{
  font-size: 1.45rem;
  color: #002e7b;
  margin-right: 0.5rem;
  font-weight: bold;
}
#keywordsearch{
  width: 360px;
}
#topbtnlist{
  width: 1120px;
  margin: 0 auto;
  padding: 60px 0 104px 0;
  position: relative;
  z-index: 2;
}
#topbtnlist ul{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#topbtnlist ul li{
  margin: 0 0 16px 0;
  position: relative;
}
#topbtnlist ul li:nth-child(2){
  margin: 0;
}
#topbtnlist ul li > a{
  display: flex;
  align-items: center;
  box-sizing: border-box;
  background-position: 0 0;
  background-repeat: no-repeat;
  box-shadow: 0px 0px 11px -6px rgba(0,0,0,0.6);
  height: 160px;
  width: 360px;
  position: relative;
  padding: 32px;
  overflow: hidden;
  background-color: #ffffff;
}
#topbtnlist ul li a.blueyaji::after{
  content: "";
  position: absolute;
  right: 0;
  bottom:0;
  width: 40px;
  height: 40px;
  background-image:url("../img/icon_arrow.png");
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100%;
}
#topbtnlist ul li a.no_blueyaji{
  pointer-events: none;
}
#topbtnlist ul li a.no_blueyaji::after{
  display: none;
}
#topbtnlist ul li .stack2 a{
line-height: 1.2;
}
#topbtnlist ul li a span{
  color: #002f7b;
  display: inline-block;
  line-height:1.6;
  padding: 0;
  position: relative;
  z-index: 1;
  font-weight: bold;
}
#topbtnlist ul li a:hover{
  text-decoration: none;
}
#topbtnlist ul li a span sup{
  color: #002f7b;
}
#topbtnlist ul li a:hover .bg{
  transform: scale(1.1);
}
#topbtnlist ul li a .txt{
  position: absolute;
  top: 76px;
  left: 24px;
  display: block;
  z-index: 1;
}
#topbtnlist ul li a .bg{
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  transition: all 0.3s;
  z-index: 0;
}
  
#topbtnlist > ul > li:nth-of-type(1) a{
  width: 550px;
}
#topbtnlist > ul > li:nth-of-type(1) a .bg{
  background-image: url("../../img/img_top01.jpg");
}
#topbtnlist > ul > li:nth-of-type(2),
#topbtnlist > ul > li:nth-of-type(2) a{
  width: 550px;
}
#topbtnlist > ul > li:nth-of-type(2) li:nth-of-type(1) a,
#topbtnlist > ul > li:nth-of-type(2) li:nth-of-type(2) a{
  padding: 16px 0 0 24px;
}
#topbtnlist > ul > li:nth-of-type(2) li:nth-of-type(1) a .bg{
  background-image:url("../../img/img_top02.jpg");
}
#topbtnlist > ul > li:nth-of-type(2) li:nth-of-type(2) a .bg{
  background-image: url("../../img/img_top03.png");
}
#topbtnlist > ul > li:nth-of-type(2) li > a{
  height:172px;
}
#topbtnlist > ul > li:nth-of-type(3) > a,
#topbtnlist > ul > li:nth-of-type(4) > a,
#topbtnlist > ul > li:nth-of-type(5) > a{
  height:96px;
  background-color: #FFFFFF;
  display: flex;
}
#topbtnlist > ul > li:nth-of-type(3) a{
  padding: 0 32px 32px 32px;
}
#topbtnlist > ul > li:nth-of-type(3) > a span,
#topbtnlist > ul > li:nth-of-type(4) > a span,
#topbtnlist > ul > li:nth-of-type(5) > a span{
  border-bottom:none;
  padding: 0;
}
  
/* topcontents */
#topcontents{
  position: relative;
  background-image: url("../../img/bg_top04.png");
  background-position: 0 calc(100% - 307px);
  background-repeat: no-repeat;
  max-width: 2000px;
  margin: 0 auto;
}
#topcontents::before{
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 811px;
  height: 610px;
  background-image:url("../../img/bg_top02.png");
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100%;
  z-index: 0;
}
#topcontents::after{
  content: "";
  position: absolute;
  right: 0;
  top: 985px;
  width: 743px;
  height: 457px;
  background-image:url("../../img/bg_top03.png");
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100%;
  z-index: 0;
}

#topcontents .inner{
  padding: 0 0 120px 0;
}
#topcontents .ttl{
  width: 880px;
  height: 480px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-position: 0 0;
  background-repeat: no-repeat;
  position: absolute;
  z-index: 1;
}
#topcontents .ttl p{
  color: #FFFFFF;
  margin: 0;
}
#topcontents .ttl .jptxt{
  position: relative;
  margin: 20px 0 0 0;
  padding: 20px 0 0 0;
}
#topcontents .ttl .jptxt::before{
  content: "";
  position: absolute;
  left: calc(50% - 50px);
  top: 0;
  width: 100px;
  height: 1px;
  background-color: #FFFFFF;
}
#topcontents .links {
  position: relative;
  z-index: 2;
}
#topcontents .links ul li{
  position: relative;
  padding: 10px 10px 10px 42px;
}
#topcontents .links ul li::before{
  content: "";
  position: absolute;
  left: 18px;
  top: 18px;
  width: 6px;
  height: 9px;
  background-image:url("../img/icon_list01.png");
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100%;
}
#topcontents section{
  position: relative;
}
#topcontents .links{
  width: 560px;
  padding: 40px;
  box-sizing: border-box;
}
#topcontents .links ul li a{
  color: #FFFFFF;
  line-height: 1.6;
}

/* environment */
#environment{
  padding: 40px 0 0 0;
  position: relative;
}
#environment .ttl{
  background-image: url("../../img/img_enviroment01.jpg");
  top: 0;
  left: -120px;
}
#environment .links{
  background-color: #00ab84;
  margin: 0 0 0 600px;
}
#environment .links ul li{
  border-bottom: 1px solid #33bc9d;
}
#environment .links ul li:last-child{
  border-bottom: none;
}

/* social index */
.indexlist2{
  display: flex;
  flex-wrap: wrap;
}
.indexlist2 > div{
  width: 280px;
  margin: 16px 20px 48px 0;
  box-sizing: content-box;
}
.indexlist2 > div:nth-child(3n){
  margin: 16px 0 48px 0;
}
.indexlist2 .categoryttl a{
  border: 6px solid #dfecea;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 96px;
  color: #00ab84;
  font-weight: 600;
  padding: 0 10px;
  text-align: center;
  line-height: 1.2;
}
/* 1 */
.indexlist2 > div > ul > li{
  margin: 0 0 12px 0;
}
.indexlist2 > div > ul > li > a{
  display: block;
  padding: 0 0 0 21px;
  background-image: url("../img/icon_arrow02.png");
  background-position: 8px 8px;
  background-repeat: no-repeat;
  line-height: 1.5;
}
/* 2 */
.indexlist2 > div > ul > li > ul,
.indexlist2 > .anchorlist{
  margin:16px 0 16px 32px;
}
.indexlist2 > div > ul > li > ul > li,
.indexlist2 > div .anchorlist li{
  border-bottom: 1px solid #d8dee7;
}
.indexlist2 > div > ul > li > ul > li a,
.indexlist2 > div .anchorlist li a{
  display: block;
  padding: 14px;
  line-height: 1.5;
}

.indexlist2 > div .anchorlist li{
  margin: 0 0 0 32px;
  
}
.indexlist2 > div .anchorlist li a{
  background-image: none;
}

.indexlist2 div > ul > li > ul{
  display: none;
}
.indexlist2 div > ul > li.open > ul{
  display: block;
}
.indexlist2 a.btnopen2{
  cursor: pointer;
  position: relative;
  padding: 0 2em 0 21px;
}
.indexlist2 a.btnopen2::after{
  content: "+";
  position: absolute;
  right: 0;
  top: 0;
}
.indexlist2 a.btnopen2.open::after{
  content: "-";
  right: 2px;
  top: -1px;
}

/* indexlist4 */
.indexlist4{
  display: flex;
  flex-wrap: wrap;
}
.indexlist4 > div{
  width: 280px;
  margin: 16px 20px 48px 0;
  box-sizing: content-box;
}
.indexlist4 > div:nth-child(3n){
  margin: 16px 0 48px 0;
}
.indexlist4 .categoryttl a{
  border: 6px solid #dfecea;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 96px;
  color: #00ab84;
  font-weight: 600;
  padding: 0 10px;
  text-align: center;
  line-height: 1.6;
}
/* 1 */
.indexlist4 > div > ul > li{
  margin: 0 0 12px 0;
}
.indexlist4 > div > ul > li > a{
  display: block;
  padding: 0 0 0 21px;
  background-image: url("../img/icon_arrow02.png");
  background-position: 8px 8px;
  background-repeat: no-repeat;
  line-height: 1.5;
}
/* 2 */
.indexlist4 > div > ul > li > ul,
.indexlist4 > .anchorlist{
  margin:16px 0 16px 32px;
}
.indexlist4 > div > ul > li > ul > li,
.indexlist4 > div .anchorlist li{
  border-bottom: 1px solid #d8dee7;
}
.indexlist4 > div > ul > li > ul > li a,
.indexlist4 > div .anchorlist li a{
  display: block;
  padding: 14px;
  line-height: 1.5;
}

.indexlist4 > div .anchorlist li{
  margin: 0 0 0 32px;
  
}
.indexlist4 > div .anchorlist li a{
  background-image: none;
}

.indexlist4 div > ul > li > ul{
  display: block;
}
.indexlist4 div > ul > li.open > ul{
  display: block;
}
.indexlist4 a.btnopen3{
  cursor: pointer;
  position: relative;
  padding: 0 2em 0 21px;
}

.indexlist4 > div.mt{
  width: 280px;
  margin: 144px 20px 48px 0;
  box-sizing: content-box;
}
.indexlist4 > div.mt:nth-child(3n){
  margin: 144px 0 48px 0;
}
/*.indexlist4 a.btnopen2::after{
  content: "+";
  position: absolute;
  right: 0;
  top: 0;
}
.indexlist4 a.btnopen2.open::after{
  content: "-";
  right: 2px;
  top: -1px;
}*/


/* environment index */
.indexlist3{
  display: flex;
  flex-wrap: wrap;
}
.indexlist3 > div{
  width: 275px;
  margin: 16px 20px 15px 0;
  box-sizing: content-box;
  background-color: #dbe7f5;
  border: 2.5px solid #002f7b;
  border-radius: 30px;
}
.indexlist3 > div:nth-child(3n){
  margin: 16px 0 15px 0;
}
.indexlist3 .categoryttl{
  display: flex;
  align-items: center;
  justify-content: center;
  height: 65px;
  color: #002f7b;
  font-weight: 600;
  padding: 0 10px;
  text-align: center;
  line-height: 1.6;
  margin: 10px 0 0 0;
}
.indexlist3 p{
  text-align: center;
  line-height: 1.6;
  padding: 0 10px;
}

.indexlist3 > div > ul{
  display: flex;
}
.indexlist3 > div > ul > li{
  margin: 0 auto 10px;
  width: 2rem
}
.indexlist3 > div > ul > li > a{
  display: block;
  padding: 0 0 0 10px;
  line-height: 1.5;
}



/* social */
#social{
  margin: 80px 0 0 0;
  padding: 40px 0 0 0;
  position: relative;
}
#social .ttl{
  background-image: url("../../img/img_social01.jpg");
  top: 0;
  right: -120px;
}
#social .links{
  background-color: #002f7b;
  margin: 0 0 0 40px;
}
#social .links ul li{
  border-bottom: 1px solid #113d84;
}
#social .links ul li:last-child{
  border-bottom: none;
}

/* governance */
#governance{
  margin: 80px 0 0 0;
  padding: 64px 0 0 0;
  position: relative;
  box-sizing:border-box;
  min-height:400px; 
}
#governance .ttl{
  background-image: url("../../img/img_governance01.jpg");
  top: 0;
  left: -120px;
  height: 400px;
}
#governance .links{
  display: flex;
  align-items: center;
  background-color: #ed6d46;
  margin: 0 0 0 600px;
  min-height: 360px;
}
#governance .links ul li{
  border-bottom: 1px solid #ef7c58;
}
#governance .links ul li:last-child{
  border-bottom: none;
}


/* activity */
#activity{
  margin: 8px 0 0 0;
  width: 100%;
  background-color: #3363af;
  display: flex;
  box-sizing: border-box;
  padding: 16px;
}
.activityttl{
  margin: 80px 0 0 0;
  font-weight: bold;
  text-align: center;
}
.activityttl p{
  margin: 0;
  color: #0f3674;
}
#activity #btnlist{
  width: 280px;
}
#activity #detailwrap{
  width: 888px;
  background-color: #FFFFFF;
  box-sizing: border-box;
  padding: 25px 40px;
  
box-shadow: 4px 0px 12px -11px rgba(0,0,0,0.6);
}
#activity #btnlist ul li{
  border-bottom: 1px solid #5c82bf;
}
#activity #btnlist ul li a{
  color: #FFFFFF;
  display: block;
  text-align: center;
  padding: 16px 0;
  text-decoration: none;
  line-height: 1.6;
}
#activity #btnlist ul li a.active{
  background-color: #FFFFFF;
  color: #002f7b;
}
#activity #btnlist ul li a:hover{
  background-color: #FFFFFF;
  color: #002f7b;
  box-shadow: -2px 0px 8px -7px rgba(0,0,0,0.6);
}

#activity #detailwrap ul li{
  border-bottom: 1px solid #dddddd;
  position: relative;
  padding: 0 0 0 44px;
}
#activity #detailwrap ul li::before{
  content: "";
  position: absolute;
  left: 18px;
  top: calc(50% - 5px);
  width: 6px;
  height: 9px;
  background-image:url("../img/icon_arrow02.png");
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100%;
  
}
#activity #detailwrap ul li a{
  display: block;
  padding: 18px 0;
  color: #333333;
}

#activity #detailwrap .detailbox{
  display: none;
}
#activity #detailwrap .detailbox.active{
  display: block;
}

/* topiconbtn */
#topiconbtn{
  margin: 80px 0 0 0;
}
#topiconbtn ul{
  display: flex;
  justify-content: center;
}
#topiconbtn ul li{
  width: 240px;
  height: 160px;
  background-image: url("../../img/bg_btn.png");
  background-position: 0 0;
  background-repeat: no-repeat;
  margin: 0 12px;
  box-sizing: content-box;
}
#topiconbtn ul li a{
  display: flex;
  align-items: center;
  width: 100%;
  height:160px;
  position: relative;
  padding: 64px 0 16px 32px;
  box-sizing: border-box;
  line-height: 1.6;
  color: #002f7b;
  font-weight: bold;
}
#topiconbtn ul li a:hover{
  color: #FFFFFF;
  text-decoration: none;
  background-color: #194586;
}
#topiconbtn ul li a::after{
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: 40px;
  height: 40px;
  background-image:url("../img/icon_arrow.png");
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100%;
}
#topiconbtn ul li a::before{
  content: "";
  position: absolute;
  left: 32px;
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100%;
}
#topiconbtn ul li a:hover::before{
  color: #FFFFFF;
  background-position: 0 bottom;
}
#topiconbtn ul li:nth-of-type(1) a::before{
  top: 26px;
  width: 40px;
  height: 36px;
  background-image:url("../../img/icon_linklist01.png");
}
#topiconbtn ul li:nth-of-type(2) a::before{
  top: 24px;
  width: 40px;
  height: 40px;
  background-image:url("../../img/icon_linklist02.png");
}
#topiconbtn ul li:nth-of-type(3) a::before{
  top: 24px;
  width: 40px;
  height: 40px;
  background-image:url("../../img/icon_linklist03.png");
}
#topiconbtn ul li:nth-of-type(4) a::before{
  top: 25px;
  width: 40px;
  height: 38px;
  background-image:url("../../img/icon_linklist04.png");
}

/*  */
.iconwrap{
  position: relative;
}
.kpi{
  display: inline-block;
  position: absolute;
  right: 0;
  top: 0;
}

/* .iconarea  */
.iconarea{
  margin: 60px 0 0 0;
}
.iconarea + h3{
  margin: 15px 0 30px 0;
}
.iconarea span{
  display: inline-block;
  margin: 0 5px 0 0;
  padding: 8px;
  vertical-align: middle;
  color: #333333;
}
.icony{
  background-color:#FFF193;
}
.icong{
  background-color:#8ABD61;
}
.iconb{
  background-color:#62B5E3;
  color: #000000;
}
.icono{
  background-color:#FFBD4C;
}


/* editorial policy
---------------------- */
#editorial{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 15px 0 0 0;
}
#editorial .box{
  width: 280px;
  margin: 0 0 33px 0;
}
#editorial .box .img{
  background-position: 0 0;
  background-repeat: no-repeat;
}
#editorial .box .img a{
  display: block;
  text-align: center;
  padding: 183px 0 0 0;
  width: 280px;
  height: 240px;
  box-sizing: border-box;
  line-height: 1.2;
  text-decoration: none;
}
#editorial1{
  background-image: url("../../editorial_policy/img/img_editorial_policy01.png");
}
#editorial2{
  background-image: url("../../editorial_policy/img/img_editorial_policy02.png");
}
#editorial3{
  background-image: url("../../editorial_policy/img/img_editorial_policy03.png");
}
#editorial4{
  background-image: url("../../editorial_policy/img/img_editorial_policy04.png");
}
#editorial5{
  background-image: url("../../editorial_policy/img/img_editorial_policy05.png");
}
#editorial6{
  background-image: url("../../editorial_policy/img/img_editorial_policy06.png");
}
#editorial7{
  background-image: url("../../editorial_policy/img/img_editorial_policy07.png");
}

#editorial .box ul{
  margin: 18px 0 0 0;
}
#editorial .box ul li{
  line-height: 1.6;
  margin: 0 0 12px 0;
  padding: 0 0 0 22px;
  position: relative;
}
#editorial .box ul li.indent{
  margin: 0 0 12px 1em;
}
#editorial .box ul li::before{
  content: "";
  position: absolute;
  left: 8px;
  top: 8px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 4.5px 0 4.5px 6px;
  border-color: transparent transparent transparent #002f7b;
}




/* .indexlist
-------------------- */
.indexlist{
  padding: 30px 0 0 0;
}
.indexlist ul{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.indexlist ul li.last2{
  margin: 0 300px 0 0;
}
.indexlist ul li{
  width: 280px;
  margin: 0 0 16px 0;
}
.indexlist ul li .txt{
  margin: 20px 0 0 0;
}

/* btnimg */
.btnimg{
  display: block;
  box-sizing: border-box;
  background-position: 0 0;
  background-repeat: no-repeat;
  width: 280px;
  height: 240px;
  position: relative;
  padding: 25px;
  overflow: hidden;
}
.btnimg::after{
  content: "";
  position: absolute;
  right: 0;
  bottom:0;
  width: 40px;
  height: 40px;
  background-image:url("../img/icon_arrow.png");
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100%;
}
.btnimg span{
  color: #FFFFFF;
  display: inline-block;
  border-bottom: 2px solid #FFFFFF;
  line-height:1.6;
  padding: 0 0 5px 0;
  position: relative;
  z-index: 1;
}
.btnimg:hover .bg{
  transform: scale(1.1);
}
.btnimg .bg{
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  transition: all 0.3s;
  z-index: 0;
}

#report .img{
  width: 280px;
  text-align: center;
}
#report .txt{
  width: 600px;
  box-sizing: border-box;
}

.doubleup{
  /*border-top: double #00ab84 !important;*/
}
.doubleup{
  background-image: url("../img/line_double.png");
  background-position: 0 0;
  background-repeat: repeat-x;
}
/* news topics
-------------------- */
#newsdatail h1{
  line-height: 1.5;
  margin-top: 40px;
}
#newsdatail hr{
  margin: 40px 0;
  height: 1px;
  border: none;
  background-color: #d5dde9;
}
#newsdatail .newsdate{
  text-align: right;
  margin: 40px 0 20px 0;
}
#newsdatail .imgper100{
  text-align: center;
  margin-bottom: 40px;
}
#newsdatail .half{
  display: flex;
  justify-content: space-between;
  margin-bottom: 40px;
}
#newsdatail .imgR,
#newsdatail .imgL{
  margin-bottom: 40px;
}
#newsdatail .imgR .txt p,
#newsdatail .imgL .txt p{
  margin-bottom: 0;
}


/* ===================================================== */
/* CLEAR */
/* ===================================================== */
/*----------------------*/
.imgR,.imgL{
	min-height:1%;
}
.imgR:after,
.imgL:after{
/* for modern browser */ 
	content: "";
	clear: both;
	height: 0px;
	display: block;
	visibility: hidden;
} 
* html .imgR,
* html .imgL{/* for IE */ 
/*\*/height:1%;/* for WinIE*/ 
display:inline-table;/* for MacIE*/ 
}
body*.imgR:after,
body*.imgL:after{
	content: ".";
}


