@charset "UTF-8";
/* module css */
/*------------------------------------------------------------------------
Basic Layout (PC Layout)
------------------------------------------------------------------------*/
/* !title
---------------------------------------------------------- */
.h1_basic {
  margin: 18px 0;
  padding-bottom: 18px;
  border-bottom: 1px solid #eef2f6;
  font-size: 2.75rem; }

.h1_basic span {
  display: block;
  padding: 3px 0 0 15px;
  border-left: 7px solid #005bac;
  line-height: 1.3;
  margin: 0 auto;
  width: 918px; }

/*h1short**********/
.h1Short .h1_basic span {
  padding: 0 220px 0 15px;
  width: 698px; }

/**********h1short*/
.h2_basic {
  margin: 0 0 15px;
  border-left: 3px solid #0d5daa;
  background-color: #f4f6f8;
  color: #002746;
  font-size: 1.8rem;
  font-weight: bold;
  border-radius: 3px 3px 0 0;
  -webkit-border-radius: 3px 3px 0 0;
  -moz-border-radius: 3px 3px 0 0;
  -o-border-radius: 3px 3px 0 0;
  -ms-border-radius: 3px 3px 0 0;
  box-sizing: border-box; }

.h2_basic span {
  display: block;
  padding: .7em 0 .5em 1em;
  border-bottom: 1px solid #cdd7e5; }

.h3_basic {
  margin: 0 auto 10px;
  padding-bottom: .5em;
  border-bottom: solid 3px #cdd7e5;
  font-size: 1.7rem;
  font-weight: bold;
  color: #002746; }

.h4_basic {
  font-size: 1.6rem;
  background: #f4f6f8;
  padding: .7em 0 .5em 1em;
  margin-bottom: 16px;
  font-weight: bold; }

.h5_basic {
  font-size: 1.5rem;
  padding: .7em 0 .5em 1em;
  margin-bottom: 20px;
  border: 1px #e6ebf2 solid;
  font-weight: bold; }

.h6_basic {
  font-size: 1.4rem;
  border-left: 3px #cdd7e5 solid;
  padding: .5em 0 .3em 1em;
  margin-bottom: 30px;
  font-weight: bold; }

/* !subTvCm
---------------------------------------------------------- */
#subTvCm {
  width: 212px;
    /*
margin-top: 20px;*/
  padding: 0 4px;
  background-color: #005bac;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px; }

.tvcm_title {
  padding: 4px 0; }

.tvcm_title h2 {
  font-size: 10px;
  margin: 0;
  padding: 0;
  text-align: center;
  background: url(../images/ico_arrow_tvcm01.png) no-repeat; }

.tvcm_title h2 a {
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  display: block;
  height: 14px;
  -webkit-transition: all 0.6s ease;
  transition: all 0.6s ease; }

.tvcm_title h2 a:hover {
  text-shadow: 0px 0 15px #fff; }

/* !subSnsList
---------------------------------------------------------- */
.subSnsList {
  margin-top: 20px; }

.subSnsList dt {
  height: 26px;
  line-height: 26px;
  border-radius: 4px 4px 0 0;
  background-color: #0d5daa;
  text-align: center;
  font-size: 1.5rem;
  font-weight: bold;
  color: #fff; }

.subSnsList dd li {
  clear: both;
  margin-top: 1px; }

.subSnsList li a {
  padding: 10px;
  background-color: #e5eef1; }

.subSnsList li a .img {
  float: left;
  width: 50px; }

.subSnsList li a .txt {
  float: left;
  margin: 5px 0 0 10px;
  font-size: 1.4rem; }

.subSnsList li a .txt > span {
  background: url(../../template/images/ico_squre01.png) right 6px no-repeat;
  padding-right: 19px; }

/* !subSupport（サポートバナー）
---------------------------------------------------------- */
#subSupport {
  clear: both;
  margin-top: 20px; }

/* !subList01（バナー）
---------------------------------------------------------- */
.subList01 {
  margin: 20px 0 80px; }

.ul_subList01 li {
  overflow: hidden;
  display: table;
  width: 218px;
  margin-bottom: 10px; }

.ul_subList01 li:last-child {
  margin-bottom: 0; }

.ul_subList01 li a {
  display: block;
  border: 1px #cdd7e5 solid;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px; }

.ul_subList01 li a:hover {
  text-decoration: none;
  background-image: -o-linear-gradient(bottom, #f0f4fb 0%, white 30%);
  background-image: -moz-linear-gradient(bottom, #f0f4fb 0%, white 30%);
  background-image: -webkit-linear-gradient(bottom, #f0f4fb 0%, white 30%);
  background-image: -ms-linear-gradient(bottom, #f0f4fb 0%, white 30%);
  background-image: linear-gradient(to bottom, #f0f4fb 0%, white 30%); }

.ul_subList01 li a p {
  display: table-cell;
  vertical-align: middle;
  height: 68px; }

.ul_subList01 li a .img01 {
  padding: 0 0 0 9px;
  width: 17px; }

.ul_subList01 li a .img01 > img {
  /*margin-right: -5px;*/ }

.ul_subList01 li a .txt01 {
  padding-left: 10px;
  font-weight: bold; }

/* !subList02
---------------------------------------------------------- */
.notice {
  display: block;
  margin: 1em 0 0 0;
  font-size: 1.2rem;
  color: #41771d; }

/*============================= BREAK POINT ===============================
Tablet Layout
=============================== BREAK POINT =============================*/
@media screen and (max-width: 768px) {
    /* !title
---------------------------------------------------------- */
  .h1_basic span {
    width: 88%; }

  /*h1short**********/
  .h1Short .h1_basic span {
    padding: 3px 0 0 15px;
    width: auto; }

  /**********h1short*/
  /*サイドCM、SNSリスト、バナーを表示しない*/
  #subTvCm, .subSnsList, #subSupport, .subList01, .subList02 {
    display: none; } }
/*----------------------- BREAK POINT ------------------------------------
SP Layout
------------------------- BREAK POINT ----------------------------------*/
@media screen and (max-width: 480px) {
    /* !title
---------------------------------------------------------- */
  .h1_basic {
    font-size: 2.1rem; }

  .h1_basic span {
    width: 90.6%; } }
