@charset "utf-8";

/* CSS Document */

body{
font: 14px "メイリオ",Verdana,Arial,sans-serif;
margin:0;
color:#000000;
}

img{
outline:none;
border-style:none;
}

a{
  line-height: inherit;
  color: #0066CC;
  text-decoration: none;
  cursor: pointer;
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
}
a:visited{
  color:#0066CC;
}
a:hover {
  color: #0066CC;
  text-decoration: underline;
}
a img {
  border: 0;
}

b,
strong {
  font-weight: bolder; }

small {
  font-size: 80%; }

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0; }
select.blue_line {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0; }

p {
  font-size: 14px;
  line-height: 1.7;
  text-rendering: optimizeLegibility;
  color: #333333;
}

h1, .h1,
h2, .h2,
h3, .h3 {
  font-style: normal;
  font-weight: bold;
  color: #333333;
  text-rendering: optimizeLegibility; }
  h1 small, .h1 small,
  h2 small, .h2 small,
  h3 small, .h3 small {
    line-height: 0;
    color: #cacaca; }

h1, .h1 {
  font-size: 26px;
  font-weight: bold;
  line-height: 1.3;
  margin: 20px 0 30px 0;
  padding: 0 0 10px 0;/*上右下左の余白*/
  background: transparent;/*背景透明に*/
  border-bottom: solid 1px #e7e7e7;/*下線*/}
  h1.top_part{
    padding: 0 0 50px 0;/*上右下左の余白*/}
  h1 .sub_title01 {
    font-size: 85％;
    line-height: 1.6;
    padding: 0;/*上下 左右の余白*/
    background: transparent;/*背景透明に*/
    color: #333333;}
  h1 .sub_title02 {
    font-size: 85％;
    line-height: 1.6;
    padding: 0;/*上下 左右の余白*/
    background: transparent;/*背景透明に*/
    color: #B9B9B9;}

h2, .h2 {
  font-size: 22px;
  font-weight: bold;
  line-height: 1.3;
  margin-top: 20px;
  margin-bottom: 19px;
  padding: 0 10px;/*上下 左右の余白*/
  background: transparent;/*背景透明に*/
  border-left: solid 5px #2448A0;/*左線*/}

h3, .h3 {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.6;
  margin-top: 15px;
  margin-bottom: 19px;
  padding: 0 10px;/*上下 左右の余白*/
  background: transparent;/*背景透明に*/
  border-left: solid 2px #2448A0;/*左線*/}

  h3 p.sub_title03 {
    font-size: 85％;
    font-weight: normal;
    line-height: 1.6;
    margin-top: -5px;
    padding: 0;/*上下 左右の余白*/
    background: transparent;/*背景透明に*/
    color: #B9B9B9;}

h4, .h4 {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.6;
  margin: 10px 0;
  padding: 0;/*上下 左右の余白*/
  background: transparent;/*背景透明に*/}
h5, .h5 {
  font-size: 16px;
  font-weight: bold;
  line-height: 1.6;
  margin: 0 0 10px 0;
  padding: 0;/*上下 左右の余白*/
  background: transparent;/*背景透明に*/}
.message{
  font-size: 214%;
  font-weight: bold;
  line-height: 1.6;
  padding: 0;}
p.catch{
  font-size: 142%;
  line-height: 1.6;
  padding: 0 0 10px 0;}
p.pickup{
  font-size: 128%;
  line-height: 1.6;
  padding: 0;}
ul.notice_disc {
  list-style-type: none;}
ul.notice_disc li {
  position: relative;
  padding: 0 0 0 1.5em;
  line-height: 1.7;}
ul.notice_disc li:before{
  content:'';
  position: absolute;
  border-radius: 50%;}
ul.notice_disc li:before {
  top: 30%;
  left: 0.2em;
  width: 5px;
  height: 5px;
  background: #333333;}
  ul.notice_disc.disc_01 {
    padding: 0 0 0 2em;}
  ul.notice_disc li.disc_02:before{
    top: 20%;}
  ul.notice_disc li.disc_03:before{
    top: 5%;}
ol.notice_number {
  list-style-type:none;
}
ol.notice_number li {
  display: block;
  text-indent: -1.8em;
  margin-left: 1.8em;
}
ol.notice_number p, ol.notice_number ul.notice_disc li{
  font-weight: normal;
}
ol.notice_number span {
  position: relative;
  padding-right: 0.8em;
}
ol.notice_number span.text_indent2 {
  position: relative;
  padding-left: 1em;
}
ol.notice_number span.text_indent3 {
  position: relative;
  padding-left: 2.5em;
}
ol.notice_number span.text_indent4 {
  position: relative;
  padding-left: 3.5em;
}
ul.notice_disc li.type_01 {
  display: block;
  padding: 0 0 0 3.5em;
}
p.notes{
  text-indent: -2em;
  margin-left: 2em;
}
p.notes span {
  display: inline-block;
  width: 2em;
  text-indent: 0;
}

dl {
  margin-bottom: 1rem; }
  dl dt {
    margin-bottom: 0.3rem;
    font-weight: bold; }

hr {
  clear: both;
  max-width: 62.5rem;
  height: 0;
  margin: 1.25rem auto;
  border-top: 0;
  border-right: 0;
  border-bottom: 1px solid #cacaca;
  border-left: 0; }

.float-left {
  float: left !important; }
.float-right {
  float: right !important; }
.float-center {
  display: block;
  margin-right: auto;
  margin-left: auto; }
.clearfix::before, .clearfix::after {
  display: table;
  content: ' ';
  -webkit-flex-basis: 0;
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1; }
.clearfix::after {
  clear: both; }

.sp-top-10{
  margin-top: 10px;
}
.sp-top-20{
  margin-top: 20px;
}
.sp-top-30{
  margin-top: 30px;
}
.sp-top-50{
  margin-top: 50px;
}
.sp-btm-10{
  margin-bottom: 10px;
}
.sp-btm-20{
  margin-bottom: 20px;
}
.sp-btm-30{
  margin-bottom: 30px;
}
.sp-btm-60{
  margin-bottom: 60px;
}

/***** メインエリアスタイル*****/
main {
  display: block;
}
.main_wrap {
  overflow: hidden;
}
.main_inner {
  display: -webkit-box;
  display: flex;
  position: relative;
  max-width: 960px;
  margin-right: auto;
  margin-left: auto;
  padding: 0 0 60px 0;
  align-items: center;
  -webkit-box-align: center;
}
.bread_clumb_wrap {
    width: 100%;
    background-color: #2447A0;
    color: #fff;
    text-align: left;
}
.bread_clumb_inner {
    display: block;
    max-width: 960px;
    margin-right: auto;
    margin-left: auto;
    padding: 10px 0 20px 0;
}
.bread_clumb_body01 {
    font-size: 71%;
    margin-bottom: 10px;
}
.bread_clumb_body01 a{
    color: #fff;
}
.bread_clumb_body01 .no_link_arrow {
    margin-right: 10px;
}
.bread_clumb_body01 .link_arrow {
    margin-right: 15px;
    padding-left: 15px;
    background: url("/common/img/chevron-right.svg") 0 50% / 5px auto no-repeat;
    color: #fff;
}
.bread_clumb_body01 .link_arrow:hover, .bread_clumb_body01 .link_arrow:focus {
  text-decoration: underline;
}
.bread_clumb_body02 {
    color: #fff;
    font-size: 128%;
}

/*****ARTICLE*****/
section{
    display: block;
    width: 100%;
    overflow: hidden;
}
article{
    width: 100%;
    overflow: hidden;
}
/*テキスト右寄せ*/
.date_right{
text-align: right;
}

@media (max-width: 767px), print {
  .bread_clumb_inner {
    max-width: 767px;
    margin-right: auto;
    margin-left: auto;
    padding: 10px 15px 20px 15px;
  }
  .main_inner {
    max-width: 767px;
    padding: 0 15px 30px 15px;
  }
  .button03.primary {
    background: #2448A0 url("/common/img/chevron-right.svg") 92% 50% / 5px auto no-repeat;
  }
  .button03.primary:hover, .button03.primary:focus {
    background: #4973DB url("/common/img/chevron-right.svg") 92% 50% / 5px auto no-repeat;
  }
  .button04 {
    padding: 15px 150px 15px 20px;
  }
}

/*RDW対応*/
@media only screen and (max-width: 767px) {
  .news_list_wrap {
    width: 100%;
  }
  .news_list_item {
    background: url("/common/img/chevron-right2.svg") 90% 50% / 5px auto no-repeat;
  }
  .news_list_item:hover, .news_list_item:focus {
      background: url("/common/img/chevron-right2.svg") 90% 50% / 5px auto no-repeat, #E6F0F6;
  }
  .news_list_body01 {
    float: none;
  }
  .news_more {
    margin: 10px 30px 10px 0;
  }
  .footer_inner{
    padding: 25px 0 30px 0;
  }
  .footer_body01 .link_arrow {
    display: block;
    line-height: 1.7;
    margin: 0 0 0 15px;
  }
  .footer_logo{
    margin-left: 15px;
  }
  .footer_body02{
    margin: 0 0 0 15px;
  }
}

/*
暫定
*/
/*
.menu_item_group_sub {
  display: none;
}
*/
