@charset "utf-8";

/* ------------------ media ------------------ */
.pc_only {
}
.mobile_only {
  display:none;
}

/* ------------------ generic tags ------------------ */
* {
  margin:0;
  padding:0;
//  font-family: arial,sans-serif;
  font-family: proxima-nova,Hiragino Sans,Hiragino Kaku Gothic ProN,Meiryo,Helvetica,Roboto,Arial,sans-serif;
  font-size: 18px;
  box-sizing:border-box;
}
body {
}
hr {
  margin-top:10px;
  margin-bottom:10px;
}
body {
  background-color:#fff;
}
div {
  box-sizing:border-box;
}
a:link { text-decoration:none; }
a:visited { text-decoration:none; }
a:hover { text-decoration:none; }
a:active { text-decoration:none; }
i {
  font-family:Meiryo;
  display:inline-block;
  -webkit-transform: skewX(-20deg);
  -ms-transform: skewX(-20deg);
  transform: skewX(-20deg);
}


h1 {
  margin-top: 80px;
  margin-bottom: 20px;
  font-size: 36px;
  display: block;
  font-size: 2em;
  font-weight: bold;
  color:#333;
}
h2 {
  margin-top: 90px;
  font-size: 1.4em;
  font-weight: bold;
}
h3 {
  margin-top: 60px;
  font-size: 1.25em;
  font-weight: bold;
}
h4 {
  margin-top: 30px;
  font-size: 1.2em;
  font-weight: bold;
}
h5 {
  margin-top: 30px;
  font-size: 1.2em;
  font-weight: bold;
}
p {
  margin-top:5px;
  margin-bottom:5px;
}
p:before {
  content:"";
  padding-left:0.5em;
}
ul {
  margin-top:10px;
  margin-left:30px;
}
ul>li {
}

/* ------------------ generic class ------------------ */
.none {
  display:none;
}
.left {
  float:left;
}
.right {
  float:right;
}
.clear {
  clear:both;
}
.disabled_link {
  pointer-events: none;
  cursor: default;
  color:#333;
}
.strikethrough {
  text-decoration: line-through;
}
span.red {
  color:#b30000;
}
span.blue {
  color:#0000ff;
}
span.bold {
  font-weight:bold;
}
table.desc_table {
  border-collapse: collapse;
  border-spacing: 0;
  min-width:600px;
  max-width:100vw;
}
table.desc_table th {
  padding:5px 10px;
  text-align:center;
  border:solid 1px #555;
  border-bottom:double 3px #555;
  background-color:#ccffcc;
}
table.desc_table td {
  padding:5px 10px;
  text-align:center;
  border:solid 1px #555;
}
.description {
  padding:7px 15px 5px 15px;
  border:solid 1px #aaa;
  margin:20px auto;
}
.frame {
  margin:10px 0 10px 0;
  padding:7px 15px 5px 15px;
  border:solid 1px #333;
}
.frame.gray {
  border:solid 1px #999;
}
.round5 {
  border-radius: 5px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
}
.round10 {
  border-radius: 10px;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
}
.exp_img {
//  margin-top:-40px;
  border:solid 1px #ddd;
}
img.exp_img.exp_img_pc {
  width:100%;
}
img.exp_img.exp_img_pc.half {
  width:50%;
}
img.exp_img.exp_img_pc.p75 {
  width:75%;
}
img.exp_img.exp_img_sp {
//  width:100%;
  display:none;
}
.exp_img_box {
  text-align:center;
  padding-top:15px;
  margin-bottom:30px;
}
.exp_img_label {
  font-size:1.1em;
  text-decoration:underline;
  font-weight:bold;
  color:#203864;
}
.exp_img_box.align_bottom {
}
.exp_img_box.align_bottom .exp_img_label {
  position:relative;
  margin-top:-40px;
  background-color:#fff;
  bottom:0;
  padding-bottom:10px;
}
.exp_img_box_outer {
  overflow:hidden;
}
.exp_img.align_bottom {
  margin-top:0;
}
.exp_img_vertical {
  max-width:100%;
}
.exp_img_icon {
//  margin-top:5px;
}
.exp_table {
  width:100%;
  border:solid 1px #ccc;
}
.exp_table th {
  font-weight:bold;
  border:solid 1px #ccc;
  padding: 5px;
}
.exp_table.vertical th {
  background-color:#ecf0fb;
  width:200px;
}
.exp_table th {
  background-color:#f3f3f3;
  text-align:center;
  white-space:nowrap;
}
.exp_table td {
  border:solid 1px #ccc;
  padding:5px;
  text-align:center;
}
.exp_table td:before  {
//  content:"";
//  padding-left:3px;
}
.exp_table .inner_label {
  font-weight:bold;
//  text-decoration:underline;
}
.exp_table .inner_label:before {
//  content:"[";
}
.exp_table .inner_label:after {
//  content:"]";
}
.exp_table ul {
  margin-top:0;
//  margin-left:35px;
}

div.note_box {
  width:800px;
  max-width:100%;
  border:solid 1px #f00;
  background-color:#ffffcc;
  padding:10px;
}

/* ------------------ header navi_bar ------------------ */
.navi_bar_pc {
  background-color:#fff;
  border:none;
}
.navi_bar_pc.fixed {
  position:fixed;
  top:0;
  left:0;
  width:100%;
  background-color:#63a7fb;
  box-shadow:0px 0px 3px 0 #345c8e;
}
.navi_bar_pc.fixed.display_none {
}
.navi_logo {
  width:80px;
}
.navi_logo_box {
  padding:8px 10px 0 10px;
}
.navi_operation_box {
  padding:0 10px 0 10px;
  height:50px;
  line-height:50px;
  color:#1f4170;
}
.navi_operation_box:hover {
  color:#ff4717;
  background-color:#edf4ff;
}
.navi_bar_pc.fixed .navi_operation_box {
  color:#fff;
}
.navi_bar_pc.fixed .navi_operation_box:hover {
  color:#1f4170;
}
.navi_apply_free:hover {
  color:#fff;
  background-color:#transparent;
  opacity:0.8;
}
.navi_bar_mobile {
  position:fixed;
  top:0;
  left:0;
  width:100vw;
  height:45px;
  background-color:#63a7fb;
  background-color:#fff;
//  border-top:solid 1px #5b8bc6;
  border-bottom:solid 1px #5b8bc6;
}
.navi_bar_mobile_menu {
  height:45px;
  width:45px;
  font-size:24px;
  line-height:45px;
  vertical-align:top;
  text-align:center;
  color:#0070c0;
}
.navi_bar_mobile_menu:hover {
  opacity:0.8;
}
.navi_bar_mobile_logo_box {
  padding:5px 0 0 5px;
}
.navi_menu_mobile {
  position:fixed;
  top:45px;
  left:0;
  width:210px;
  height:calc(100vh - 45px);
  background-color:#63a7fb;
  box-shadow:0px 3px 3px 0 #4b5176;
  padding-top:20px;
}
.navi_menu_mobile_line {
  wodth:100%;
  margin:0 0 15px 5px;
  padding:2px 10px;
  font-size:21px;
  color:#fff;
  background-color:#63a7fb;
}
.navi_menu_mobile_line:hover {
  color:#4b5176;
  background-color:#fff;
}
.navi_apply_free {
  display: block;
  background-color:#ff5e39;
  color:#fff;
  padding:0px 15px;
  height:34px;
  line-height:34px;
  border-radius:5px;
  -moz-border-radius:5px;
  -webkit-border-radius:5px;
  margin:8px;
}

/* ------------------ header block ------------------ */
.header {
}
.header_title_box {
  color:#header_description_label;
  border-top:solid 1px #aaa;
  border-bottom:solid 1px #aaa;
  overflow:hidden;
  padding:20px 0;
  text-align:center;
}
.header_logo {
  width:64px;

}
.header_title {
  margin-top: 5px;
  margin-bottom: 0px;
  font-size:24px;
  font-weight:normal;
  color:#02252e;
}
.header_description {
  text-align:left;
  background-color:#f2fbfe;
  padding:10px 0 15px 0;
}
.header_description_text {
  max-width:700px;
  margin:0 auto;
  vertical-align:middle;
  color:#555;
  text-align:center;
}

. {
  margin:10px 0 0 0;
}
._title {
  text-align:center;
  padding:0;
}
._title_logo {
  width:180px;
}
._text {
  margin:0 auto;
  width:560px;
  max-width:100%;
  color:#313158;
  text-align:center;
  font-size:18px;
}
.header_action_box {
 width:50vw;
 text-slign:center;
}
.header_img_box {
  width:48vw;
  max-height:450px;
  overflow:hidden;
}
.header_img {
  width:750px;
  margin:60px 0 0 20px;
  box-shadow:-3px -3px 30px 0 #345c8e;
  border-radius:15px;
}
/* ------------------ header_box ------------------ */
.header_feature_box_outer {
  margin:0 20px;
}
.header_feature_box {
  width:calc((100vw - 60px)/2);
  min-height:280px;
  background-color:#fff;
  float:left;
  box-sizing:border-box;
  padding:8px;
  margin-bottom:10px;
}
.header_feature_box:hover {
  background-color:#ebfffd;
}
.header_feature_title {
  text-align:center;
  font-weight:bold;
  color:#007d70;
  text-decoration:underline;
  min-height:40px;
  overflow:hidden;
  whitespace:nowrap;
}
.header_feature_content {
  box-sizing:border-box;
  text-align:left;
  font-size:0.9em;
  min-height:100px;
}
.header_feature_image {
  min-height:100px;
}
/* ------------------ action block ------------------ */
.action_box {
  margin:40px 0;
  width:100%;
}
.flat-button {
  width:300px;
  height:46px;
  line-height:46px;
  vertical-align:middle;
  text-align:center;
  margin:0 auto;
  border-radius:3px;
  -moz-border-radius:3px;
  -webkit-border-radius:3px;
  font-size:22px;
  text-decoration:none;
  background-color:#f9f7f7;
}
.flat-button:hover, .flat-button:active {
  opacity:0.9;
}
.flat-button.blue {
  color:#fff;
  background-color:#1b7dc8;
}
.flat-button.green {
  color:#fff;
  background-color:#1abb00;
}
.flat-button.orange {
  color:#fff;
  background-color:#ff5e39;
}

/* ------------------ body ------------------ */
/* ------------------ header ------------------ */


/* ------------------ wrapper ------------------ */
.wrapper {
  width:90%;
  min-height:calc(100vh - 60px);
  margin:0px auto;
  background-color:#fff;
}
/* ------------------ content ------------------ */
.content {
  line-height: 30px;
  max-width:760px;
  margin:0 auto;
}
.content_block {
  margin:0 auto 50px auto;
}
/* ------------------ content_head ------------------ */
.content_head {

}
.eye_catch_box {
  margin:30px 0 0 0;
  width:100%;
  overflow:hidden;
  text-align:center;
}
.eye_catch {
  max-width:100%;
}
.eye_catch_back_top_box {
  width:100%;
  height:20px;
  text-align:center;
  overflow:hidden;
}
.eye_catch_back_top {
  margin-top:-100px;
  max-width:130%;
  opacity: .3; /* Standard: FF gt 1.5, Opera, Safari */
  filter: alpha(opacity=30); /* IE lt 8 */
  -ms-filter: "alpha(opacity=30)"; /* IE 8 */
  -khtml-opacity: .3; /* Safari 1.x */
  -moz-opacity: .3; /* FF lt 1.5, Netscape */
}
.eye_catch_back_bottom_box {
  width:100%;
  height:20px;
  text-align:center;
  overflow:hidden;
  vertical-align:bottom;
}
.eye_catch_back_bottom {
  margin-top:-300px;
  max-width:130%;
  opacity: .3; /* Standard: FF gt 1.5, Opera, Safari */
  filter: alpha(opacity=30); /* IE lt 8 */
  -ms-filter: "alpha(opacity=30)"; /* IE 8 */
  -khtml-opacity: .3; /* Safari 1.x */
  -moz-opacity: .3; /* FF lt 1.5, Netscape */
}
.content_menu {
  background-color:#f3f3f3;
  padding:10px;
}
.content_menu h2 {
  margin-top: 10px;
  font-size: 1.2em;
}
ul.navi_menu>li.li_H1 {
  margin-left:0px;
}
ul.navi_menu>li.li_H2 {
  margin-left:0px;
}
ul.navi_menu>li.li_H3 {
  margin-left:25px;
}
ul.navi_menu>li.li_H4 {
  margin-left:50px;
}
ul.navi_menu>li.li_H5 {
  margin-left:75px;
}
ul.navi_menu>li.li_H6 {
  margin-left:100px;
}

/* ------------------ content_menu ------------------ */
.content_menu {

}
/* ------------------ content_body ------------------ */
.content_body {
  margin-bottom:70px;
}
/* ------------------ footer ------------------ */
.footer {
  border-top:solid 2px #ccc;
  background-color:#fafafa;
  height:40px;
  line-height:40px;
  vertical-align:middle;
  text-align:center;
  color:#333;
}

