*,
*::before,
*::after{box-sizing: border-box;}
html {background-color:#004098; }
body {
  color: #727272;
  font: normal 400 16px sans-serif;
  margin: 0;
}
body.index {color: #333;}
a {
  color: #727272;
  outline: none;
  text-decoration: underline;
}
a:hover,
a:focus {color: #d31e2f;}
div.logobox {
  display:flex;
  height:33px;
  width:449px;
}
a.logo1 {
  background: url(logo1.svg) center top no-repeat;
  background-size: contain;
  display: block; 
  height: 33px;
  width: 300px;
  text-decoration:none;
}
h1 {
  font: normal 400 30px sans-serif;
  padding: 0;
}
h2 {
  font: normal 400 24px sans-serif;
  margin-bottom: 15px;
  padding: 0;
}
h3 {
  font: normal 700 1.17em/1.27em sans-serif;
  margin: 1em 0;
  padding: 0;
}
img {
  border: 0;
  display: block;
}
ol, ul {
  margin: 1em 0;
  padding: 0 0 0 1.25em;
}
li {
padding:5px;
}
.faqSpacing {
padding-top:15px;
}
p {
  margin: 1em 0;
  padding: 0;
}
.contain {
  margin: 0 auto;
  width: 1200px;
}
.fill {
  min-width: 1200px;
  width: 100%;
}
.bottom {
  margin-bottom: 0;
  padding-bottom: 0;
}
.top {
  margin-top: 0;
  padding-top: 0;
}
.center {
  text-align:center;
}
/* header */
header {
  background: #ccc url(background.jpg) no-repeat left 47%;  
  background-size: cover;
  min-height: 500px;
  display: block;
  position:relative;
  z-index:1;
}
.bgscreen {
  background-color:rgba(0,0,0,.4);
  height:500px;
  min-width:1200px;
  width:100%;
  position:absolute;
  z-index:2;
}
header.subpage {
  height:145px;
  min-height:145px;
  max-height:145px;
}
.subbgscreen {
  background-color:rgba(0,0,0,.4);
  height:145px;
  min-width:1200px;
  width:100%;
  position:absolute;
  z-index:2;  
}
.navWrap {
  display: flex;
  justify-content: space-between;
  position:relative;
  z-index:10;
  background: #fff;
  box-shadow: 0 0 3px 3px rgba(152, 166, 181, 0.5);
  padding: 25px;
  position: relative;
  top: 36px;
  /* z-index: 100; */
}
header > .contain {
  
}
div.quote {
  color:#fff;
  display:block;
  font-size:22px;
  padding:40px 0 0;
  position: relative;
  text-align:center;
  z-index: 10;
}
div.quote:lang(ja){
  font-size:16px;
}
div.quote strong:lang(ja) {font-size:30px;}
div.quote strong {font-size:40px;}
div.attribute {
  color:#fff;
  display:block;
  font-size:24px;
  font-weight:bold; 
  text-align:center;
  padding-top:0;
  position: relative;
  z-index: 10;
}
#epAttention {
  padding: 10px 0;
  text-align: center;
}

.langbar{
  display: inline-block;
  position: relative;
  top: -52px;
}
#epLang {
  display: inline-block;
  /* justify-content: space-between; */
  /* margin: 15px; */
  /* flex-direction: row; */
  position: absolute;
  width: 119px;
}
#epLang a {
  color: #fff;
  display: inline-block;
  font-size: 15px;
  text-decoration: none;
  margin-left:10px;
}
#epLang a:hover,
#epLang a:focus {color: #05bbda;}
nav {
  display: flex;
  font: normal 700 14px sans-serif;
  justify-content: space-between;
  align-items: center;
  width: 900px;
}
nav a {
  color: #727272;
  display: inline-block;
  padding: 0 15px;
  text-decoration: none;
}
/* nav a:first-child {border-right:2px solid #727272;} */
nav a:hover,
nav a:focus {color: #d31e2f;}
.breadcrumb {
  background-color:#004098;
  color:#fff;
}
.breadcrumb div.contain {
  display:flex;
  align-items:center;
  height:40px;
  font-size:.9em;
  padding-left:30px;
}
.breadcrumb a {
  color:#fff;
  font-weight:bold;
  text-decoration:none;
}
.breadcrumb a:hover,
.breadcrumb a:focus {text-decoration:underline;}
.buttoncontainer {background-color:#eee;}
.buttons {
  display: flex;
  justify-content: space-between;
  padding: 0 25px;
}
.buttons a {
  align-items: center;
  background: #eee url() no-repeat center top;
  border-right:1px solid #cecece;
  box-sizing: border-box;
  color: #000;
  display: flex;
  flex-direction:column;
  height:100%;
  margin:10px 0;
  padding: 145px 15px 50px;
  text-decoration: none;
  width: 25%;
}
.buttons a:last-child {border-right:none;}
.buttons a:hover,
.buttons a:focus {}
.buttons a.report {
  background-image: url(report.png);
  background-size:201px 155px;
}
.buttons a.phone {
  background-image: url(phone.png);
  background-size:201px 155px;  
}
.buttons a.faq {
  background-image: url(faq.png);
  background-size:201px 155px;    
}
.buttons a.follow {
  background-image: url(follow.png);
  background-size:201px 155px;  
}
.buttons span.title {
  display: block;
  font-size: 18px;
  font-weight:bold;
  text-align: center;
  text-transform:uppercase;
  width: 100%;
}
/* content */
main {
  background-color:#fff;
  display: block;
  padding:0;
}
.mainHome {padding: 50px 0 70px;}
section {display: block;}
section.flex {
  display: flex;
  padding: 20px 0;
}
.bluebg {
  background-color:#004098;
  color:#fff;
  padding:20px 0 40px;
}
.text-index {margin-top: 50px;}
[class^="col-"] { /* Applies to all CSS classes that start with "col-" */
  vertical-align: top;
}
.col-100 {
  display: inline-block;
  padding: 10px 25px;
  width: 100%;
}
.col-66 {
  display: inline-block;
  padding: 10px 25px;
  vertical-align: top;
  width: 66%;
}
.col-50 { /* Column-50 is technically 49% so columns do not break to a new line in all browsers */
  display: inline-block;
  padding: 10px 25px;
  width: 49%;
}
.col-33 {
  display: inline-block;
  padding: 10px 25px;
  width: 33%;
}
.col-left {
  margin-right: 2%;
  padding: 10px 25px;
  width: 60%;
}
.col-right {
  padding: 10px 25px;
  width: 38%;
}
#epEmergency {
  padding: 10px 0;
  text-align: center;
}
#epEmergency br {display: none;}
#epEmergency strong {
  display: inline-block;
  margin-right: 7px;
}
#epDDN {
  font-weight: bold;
  white-space: nowrap;
}
.listor {
  list-style: none;
  margin: 1em 0;
}
/* dp and phone */
#epDataPrivacy .online, #epDataPrivacy .phone {display:none;}
#epDataPrivacy .output {display: block;}
#epDataPrivacy ol.dropDowns {
  list-style: none;
  margin: 0;
  padding: 0;
}
#epDataPrivacy .text {color: #1f3667;}
#epPhone{
}
select {
  font: normal 400 14px sans-serif;
  margin: 5px 0 15px;
  min-width: 355px;
  padding: 5px;
  max-width:500px;
}
button, .submit {
  background: #28234d;
  border: none;
  border-radius: 5px;
  color: #fff;
  cursor: pointer;
  display:block;
  font-size: 13px;
  font-weight:700;
  height:54px;
  margin: 15px 0;
  padding: 20px;
  text-align:center;
  text-decoration: none;
  text-transform:uppercase;
  width:175px;
}
button:disabled, button:disabled:hover, input.submit:disabled, input.submit:disabled:hover,
button:disabled, button:disabled:focus, input.submit:disabled, input.submit:disabled:focus {
  background: #ccc;
  cursor: default;
}
button:hover, .submit:hover,
button:focus, .submit:focus {
  color: #fff;
  background: #d31e2f;
}
.nowrap {white-space: nowrap;}
/* issues */
#epIssues {width: 100%;}
#epIssues .category {
  display: flex;
  margin-bottom: 20px;
}
#epIssues .category{background: #1f3667;}
#epIssues .catdesc {display: none;}
#epIssues .catname {
  color: #fff;
  font: normal 700 20px sans-serif;
  padding: 20px 20px 20px 30px;
  width: 24%;
}
#epIssues .details {
  font: italic 400 11px sans-serif;
  position: absolute;
  right: 7px;
  text-decoration: underline;
  top: 3px;
}
#epIssues .issue {
  margin-bottom: 10px;
  padding: 0 5px 0 10px;
  position: relative;
}
#epIssues .issue:last-of-type {margin-bottom: 0;}
#epIssues .issue:hover,
#epIssues .issue:focus {background: #eee;}
#epIssues .issuebox {
  background: #fff;
  padding-left: 20px;
  width: 77%;
}
#epIssues .name {
  font: normal 400 16px/20px sans-serif;
  padding: 5px 0;
}
#epIssues .desc {
  color: #777;
  font: normal 400 14px/20px sans-serif;
  padding: 0 60px 10px 15px;
}
input.text-input  {
  margin: 5px 0 20px;
  min-width: 300px;
  padding: 5px;
}
.follow-page section span {font-size: 18px;}
.faqpage, .noticepage, .issuespage {padding:20px 20px 40px;}
.consentpadding, .issuespadding {
  padding-left:20px;
  padding-right:20px;
}
/* footer */
footer {
  background-color:#004098; 
  color:#fff;
  font-size: 14px;
  padding: 20px 0;
}
footer th {display: none;}
footer td {padding: 5px 0 0 !important;}
footer .line1 {
  float: left;
  padding-left: 10px;
}
footer .line2 {
  color: #fff;
  float: right;
  padding-right: 10px;
}
footer .line2 a {color:#fff;}
footer .line2 a:hover,
footer .line2 a:focus {}
footer table {
  font-size: 12px;
  margin: 15px auto 0 !important;
  width: 1200px !important;
}