/* Generated by less 2.5.1 */
@charset "utf-8";
/* CSS Document */
html,
body {
  margin: 0;
  padding: 0;
  color: #333333;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 10pt;
  font-weight: 600;
}
/*- ------------------------- ------------------------- ------------------------- ------------------------- -*/
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
}
.wrap {
  width: 950px;
  margin: 0 auto;
  padding: 0;
}
p.label {
  display: block;
  background: url(../images/label_bg.png) no-repeat;
  margin: 10px 0;
  padding: 24px 10px 17px 25px;
  color: #FFF;
  font-size: 1.2em;
  font-weight: bold;
}
.fs20 {
  font-size: 2.0em;
  margin-bottom: -0.5em;
}
.fs14 {
  font-size: 1.4em;
}
.fs13 {
  font-size: 1.3em;
}
.fs12 {
  font-size: 1.2em;
}
.fs11 {
  font-size: 1.1em;
}
.fs105 {
  font-size: 1.05em;
}
.tbl {
  display: table;
}
.tbl > * {
  display: table-cell;
  vertical-align: top;
}
.tbl > * > p {
  margin: 0 0 0 2em;
  padding: 0;
}
.tbl > * > p + p {
  margin-top: 1.5em;
}
.mt30 {
  margin-top: 30px;
}
.ml_n30 {
  margin-left: -30px;
}
.ml_n16 {
  margin-left: -16px;
}
.ml_n11 {
  margin-left: -11px;
}
/*- ------------------------- ------------------------- ------------------------- -*/
.bg1 {
  position: relative;
  background-image: url(../images/bg1.jpg);
  background-repeat: repeat;
  background-position: top center;
}
.bg2 {
  position: relative;
  background-image: url(../images/bg2.jpg);
  background-repeat: repeat;
  background-position: center bottom;
  border-top: #E7BCB9 solid 5px;
  margin: 0;
  padding: 50px 0 30px 0;
}
.bg2::before {
  content: "";
  position: absolute;
  top: -5px;
  left: 50%;
  display: block;
  width: 50px;
  height: 27px;
  margin: 0 0 0 -25px;
  padding: 0 0 0 0;
  background-image: url(../images/bg1_bottom.png);
  background-repeat: no-repeat;
  background-position: center -5px;
  z-index: 99999;
}
.bg2::after {
  content: "";
  position: absolute;
  bottom: -27px;
  left: 50%;
  display: block;
  width: 50px;
  height: 27px;
  margin: 0 0 0 -25px;
  padding: 0 0 0 0;
  background-image: url(../images/bg2_bottom.png);
  background-repeat: no-repeat;
  background-position: center -5px;
  z-index: 99999;
}
.bg3 {
  position: relative;
  background-image: url(../images/bg3.jpg);
  background-repeat: repeat;
  background-position: center bottom;
  border-top: #E7BCB9 solid 5px;
  margin: 0;
  padding: 50px 0 30px 0;
}
.bg3::after {
  content: "";
  position: absolute;
  bottom: -27px;
  left: 50%;
  display: block;
  width: 50px;
  height: 27px;
  margin: 0 0 0 -25px;
  padding: 0 0 0 0;
  background-image: url(../images/bg3_bottom.png);
  background-repeat: no-repeat;
  background-position: center -5px;
  z-index: 99999;
}
.bg4 {
  position: relative;
  background-image: url(../images/bg4.jpg);
  background-repeat: repeat;
  background-position: center bottom;
  border-top: #E7BCB9 solid 5px;
  margin: 0;
  padding: 50px 0 30px 0;
}
.bg4::after {
  content: "";
  position: absolute;
  bottom: -27px;
  left: 50%;
  display: block;
  width: 50px;
  height: 27px;
  margin: 0 0 0 -25px;
  padding: 0 0 0 0;
  background-image: url(../images/bg4_bottom.png);
  background-repeat: no-repeat;
  background-position: center -5px;
  z-index: 99999;
}
.bg5 {
  position: relative;
  background-image: url(../images/bg5.jpg);
  background-repeat: repeat;
  background-position: center bottom;
  border-top: #E7BCB9 solid 5px;
  margin: 0;
  padding: 50px 0 30px 0;
}
.bg5::after {
  content: "";
  position: absolute;
  bottom: -27px;
  left: 50%;
  display: block;
  width: 50px;
  height: 27px;
  margin: 0 0 0 -25px;
  padding: 0;
  background-image: url(../images/bg5_bottom.png);
  background-repeat: no-repeat;
  background-position: center -5px;
  z-index: 99999;
}
.bg6 {
  position: relative;
  background-color: #FFF;
  background-image: none;
  background-repeat: repeat;
  background-position: center bottom;
  border-top: #E7BCB9 solid 5px;
  margin: 0;
  padding: 50px 0 30px 0;
}
/*- ------------------------- ------------------------- ------------------------- ------------------------- -*/
header {
  border-bottom: #f2b540 solid 5px;
  padding: 0 0 5px 0;
}
header > .wrap > h1 {
  float: left;
  margin: 12px 0 0 0;
  padding: 0;
}
header > .wrap > h1 > a > img {
  display: block;
}
header > .wrap > p {
  float: right;
  background: #f2b540 url("../images/bg-memo.gif") no-repeat scroll right bottom;
  display: inline-block;
  margin: 0;
  padding: 15px 30px 15px 20px;
  color: #FFF;
  font-weight: bold;
  letter-spacing: 0.05em;
}
header > .wrap > nav {
  position: relative;
  display: block;
  float: right;
  margin: 10px 0 0 0;
  font-weight: bold;
  z-index: 99999;
}
header > .wrap > nav ul,
header > .wrap > nav > ul li {
  margin: 0;
  padding: 0;
  list-style: none;
}
header > .wrap > nav > ul > li {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  overflow: hidden;
}
header > .wrap > nav > ul > li:hover {
  overflow: visible;
}
header > .wrap > nav > ul > li > a,
header > .wrap > nav > ul > li > span {
  display: block;
  border-bottom: 5px solid transparent;
  text-decoration: none;
  height: 20px;
  margin: 0 10px;
  padding: 5px 20px;
  color: #333;
  cursor: pointer;
}
header > .wrap > nav > ul > li.current > a,
header > .wrap > nav > ul > li.current > span,
header > .wrap > nav > ul > li > a:hover,
header > .wrap > nav > ul > li > span:hover {
  border-bottom: 5px solid #f2b540;
}
header > .wrap > nav > ul > li > ul {
  position: absolute;
  left: 10px;
  display: table;
  border-collapse: collapse;
  border: solid 1px #f2b540;
  width: 100%;
  height: 0;
  margin: -1px 0 0 0;
  padding: 0;
  opacity: 0;
  transition: 0.3s;
  overflow: hidden;
}
header > .wrap > nav > ul > li:hover > ul {
  display: table;
  height: auto;
  opacity: 1;
  transition: 0.3s;
}
header > .wrap > nav > ul > li > ul > li {
  display: table-row;
  border: solid 1px #f2b540;
  margin: 0;
  padding: 0;
}
header > .wrap > nav > ul > li > ul > li > a {
  display: table-cell;
  background: #eaa028;
  margin: 0;
  padding: 1em 3em;
  color: #FFF;
  white-space: nowrap;
  text-align: center;
  text-decoration: none;
}
header > .wrap > nav > ul > li > ul > li > a:hover {
  background: #f2b540;
}
/*- ------------------------- ------------------------- ------------------------- ------------------------- -*/
main {
  display: block;
}
/*- ------------------------- ------------------------- ------------------------- -*/
main #eyecatch {
  background: #dbdcdc;
}
main #eyecatch h2 {
  margin: 0;
  padding: 0;
}
main #eyecatch h2 img {
  display: block;
}
/*- ------------------------- ------------------------- ------------------------- -*/
main #index_1 {
  position: relative;
  background: #df666f;
  border-radius: 1em;
  width: 800px;
  margin: 0 auto;
  padding: 35px 50px;
}
main #index_1 img {
  position: absolute;
  top: 35px;
  left: -40px;
}
main #index_1 img.b_rudius {
  position: static;
  display: block;
  border-radius: 0.5em;
  margin: 0 auto;
}
/*- ------------------------- ------------------------- ------------------------- -*/
main #index_2 {
  position: relative;
  background: #0068B7;
  border-radius: 1em;
  width: 800px;
  height: 530px;
  margin: 25px auto 25px auto;
  padding: 35px 50px;
  z-index: 1;
}
main #index_2 div.bg,
main #index_2 div.over {
  position: absolute;
}
main #index_2 div.bg img {
  position: absolute;
}
main #index_2 div.over img {
  position: absolute;
  top: -40px;
  left: -80px;
}
/*- ------------------------- ------------------------- ------------------------- -*/
main #index_3 {
  position: relative;
  margin: 0;
  padding: 0;
  z-index: 0;
}
main #index_3 img {
  display: block;
}
main #index_3 a {
  position: absolute;
  bottom: 1em;
  right: 0;
}
/*- ------------------------- ------------------------- ------------------------- -*/
div#pagetop {
  position: relative;
  text-align: right;
  margin: -1em 0 0 0;
  padding: 1em 0;
  z-index: 99999;
}
div#pagetop a {
  color: #888;
  text-decoration: none;
}
div#pagetop a:hover {
  color: #333;
}
/*- ------------------------- ------------------------- ------------------------- ------------------------- -*/
section section p span.col {
  color: #DF656E;
}
/*- ------------------------- ------------------------- ------------------------- ------------------------- -*/
#page2 > .wrap {
  position: relative;
  height: 265px;
}
#page2 > .wrap > h3 {
  position: static;
  margin: 0;
  padding: 5px 0 0 0;
}
#page2 > .wrap > h3 > img {
  display: block;
  margin: 0;
  padding: 0;
}
#page2 > .wrap > p {
  position: absolute;
  top: 135px;
  right: 10px;
}
/*- ------------------------- ------------------------- -*/
#page2 > section h4 {
  display: block;
  margin: 0 auto 30px auto;
  padding: 0;
  text-align: center;
}
/*- ------------------------- ------------------------- ------------------------- -*/
/*- ------------------------- ------------------------- ------------------------- -*/
/*- ------------------------- ------------------------- ------------------------- -*/
#page2_3 img {
  margin-top: -15px;
}
/*- ------------------------- ------------------------- ------------------------- -*/
#page2_4 p {
  text-align: center;
}
/*- ------------------------- ------------------------- ------------------------- -*/
#page2_5 {
  text-align: center;
}
#page2_5 .tbl {
  width: 100%;
}
#page2_5 .tbl > * {
  text-align: left;
  vertical-align: middle;
}
#page2_5 .tbl > * + * {
  text-align: center;
}
#page2_5 .tbl > * + * + * {
  text-align: right;
}
/*- ------------------------- ------------------------- ------------------------- ------------------------- -*/
#page3 > .wrap {
  position: relative;
}
#page3 > .wrap > h3 {
  position: static;
  margin: 0;
  padding: 5px 0;
}
#page3 > .wrap > h3 > img {
  display: block;
  margin: 0;
  padding: 0;
}
#page3 > .wrap > p {
  position: absolute;
  top: 130px;
  left: 300px;
}
#page3 section h4 {
  display: block;
  margin-bottom: 30px;
}
#page3 section h4 img {
  display: block;
  margin: 0 auto;
}
/*- ------------------------- ------------------------- ------------------------- -*/
#page3_1 > .wrap > img {
  margin: -150px 0 0 100px;
}
#page3_1 p {
  text-align: center;
}
/*- ------------------------- ------------------------- ------------------------- -*/
#page3_2 > .wrap > img {
  margin: -150px 0 0 20px;
}
#page3_2 p {
  text-align: center;
}
/*- ------------------------- ------------------------- ------------------------- -*/
#page3_3 {
  text-align: right;
}
#page3_3 > .wrap > img {
  margin: -160px 25px 0 0;
}
#page3_3 p {
  text-align: center;
}
/*- ------------------------- ------------------------- ------------------------- -*/
#page3_4 .tbl {
  display: table;
  width: 100%;
}
#page3_4 .tbl > * {
  display: table-cell;
  vertical-align: middle;
  text-align: left;
}
#page3_4 .tbl > * + * {
  text-align: center;
}
#page3_4 .tbl > * + * + * {
  text-align: right;
}
/*- ------------------------- ------------------------- ------------------------- ------------------------- -*/
#page4 > .wrap {
  position: relative;
}
#page4 > .wrap > h3 {
  position: static;
  margin: 0;
  padding: 5px 0;
}
#page4 > .wrap > h3 > img {
  display: block;
  margin: 0;
  padding: 0;
}
#page4 > .wrap > p {
  position: absolute;
  top: 120px;
  left: 290px;
}
/*- ------------------------- ------------------------- ------------------------- -*/
#page4 > section {
  text-align: center;
}
/*- ------------------------- ------------------------- -*/
#page4_1 > .wrap > h4 + img {
  display: block;
  margin: -90px 0 -50px -30px;
  padding: 0;
}
/*- ------------------------- ------------------------- -*/
#page4_2 > .wrap > h4 + img {
  display: block;
  margin: 0 0 -20px -16px;
  padding: 0;
}
/*- ------------------------- ------------------------- -*/
#page4_3 > .wrap > h4 + img {
  display: block;
  margin: -150px 0 -20px -10px;
  padding: 0;
}
/*- ------------------------- ------------------------- -*/
#page4_4 .tbl {
  display: table;
  width: 100%;
}
#page4_4 .tbl > * {
  display: table-cell;
  vertical-align: middle;
  text-align: left;
}
#page4_4 .tbl > * + * {
  text-align: center;
}
#page4_4 .tbl > * + * + * {
  text-align: right;
}
/*- ------------------------- ------------------------- ------------------------- ------------------------- -*/
#page5 > .wrap {
  position: relative;
}
#page5 > .wrap > h3 {
  position: static;
  margin: 0;
  padding: 5px 0;
}
#page5 > .wrap > h3 > img {
  display: block;
  margin: 0;
  padding: 0;
}
#page5 > .wrap > p {
  position: absolute;
  top: 110px;
  left: 280px;
}
/*- ------------------------- ------------------------- ------------------------- -*/
#page5 > section {
  text-align: center;
}
#page5_3 .tbl {
  display: table;
  width: 100%;
}
#page5_3 .tbl > * {
  display: table-cell;
  text-align: left;
  vertical-align: middle;
}
#page5_3 .tbl > * + * {
  text-align: right;
}
/*201804 ▼ ------------------------------------------------------------------*/
a {
  outline: none;
}
section section p span.col2 {
  color: #F08300;
}
main #index_4 {
  display: inline-table;
  display: block;
  position: relative;
  margin: 65px 0 0 0;
  padding: 0;
  z-index: 0;
}
main #index_4 .go_next {
  display: block;
  position: absolute;
  bottom: 1em;
  right: 0;
}
main #index_4 .rightarea {
  float: right;
  margin-top: 35px;
}
main #index_4 .rightarea a {
  display: block;
}
*[id^="if02_page"] .bg1,
*[id^="if02_page"] .bg2,
*[id^="if02_page"] .bg3,
*[id^="if02_page"] .bg4,
*[id^="if02_page"] .bg5,
*[id^="if02_page"] .bg6 {
  border-color: #F6D0A4;
}
*[id^="if02_page"] .bg2::before {
  background-image: url(../images/bg1_bottom_og.png);
}
*[id^="if02_page"] .bg2::after {
  background-image: url(../images/bg2_bottom_og.png);
}
*[id^="if02_page"] .bg3::after {
  background-image: url(../images/bg3_bottom_og.png);
}
*[id^="if02_page"] .bg4::after {
  background-image: url(../images/bg4_bottom_og.png);
}
*[id^="if02_page"] .bg5::after {
  background-image: url(../images/bg5_bottom_og.png);
}
.bg7 {
  position: relative;
  background-image: url(../images/bg7.gif);
  background-repeat: repeat;
  background-position: center bottom;
  border-top: #F6D0A4 solid 5px;
  margin: 0;
  padding: 50px 0 30px 0;
}
.bg7::after {
  content: "";
  position: absolute;
  bottom: -27px;
  left: 50%;
  display: block;
  width: 50px;
  height: 27px;
  margin: 0 0 0 -25px;
  padding: 0;
  background-image: url(../images/bg7_bottom_og.png);
  background-repeat: no-repeat;
  background-position: center -5px;
  z-index: 99999;
}
*[id^="if02_page2"] .wrap,
*[id^="if02_page4"] .wrap {
  position: relative;
}
*[id^="if02_page2"] h4,
*[id^="if02_page4"] h4 {
  text-align: center;
}
#if02_page2 > .wrap > h3 {
  margin-left: -82px;
}
#if02_page2 > .wrap p {
  position: absolute;
  left: 279px;
  top: 143px;
  margin-top: 0;
}
#if02_page2_1 h4 {
  margin-bottom: 50px;
}
#if02_page2_1 .tbl div img {
  margin-left: -5px;
}
#if02_page2_2 h4 {
  margin-bottom: 32px;
}
#if02_page2_2 .tbl div img {
  margin-left: -46px;
}
#if02_page2_3 h4 {
  margin-bottom: 32px;
}
#if02_page2_4 h4 {
  margin-bottom: 28px;
}
#if02_page2_5 img + img,
#if02_page3_1 img + img {
  margin-top: 39px;
}
#if02_page2_6 .tbl,
#if02_page3_2 .tbl,
#if02_page4_4 .tbl {
  display: table;
  width: 100%;
}
#if02_page2_6 .tbl > *,
#if02_page3_2 .tbl > *,
#if02_page4_4 .tbl > * {
  display: table-cell;
  vertical-align: middle;
  text-align: left;
}
#if02_page2_6 .tbl > * + *,
#if02_page3_2 .tbl > * + *,
#if02_page4_4 .tbl > * + * {
  text-align: center;
}
#if02_page2_6 .tbl > * + * + *,
#if02_page3_2 .tbl > * + * + *,
#if02_page4_4 .tbl > * + * + * {
  text-align: right;
}
#if02_page3 > .wrap {
  margin-bottom: 30px;
}
#if02_page3 > .wrap > h3 {
  margin-bottom: 15px;
  padding-top: 30px;
}
#if02_page3 > .wrap .tbl > div img {
  margin-left: -29px;
}
#if02_page3 .bg3::before {
  content: "";
  position: absolute;
  top: -5px;
  left: 50%;
  display: block;
  width: 50px;
  height: 27px;
  margin: 0 0 0 -25px;
  padding: 0 0 0 0;
  background-image: url(../images/bg1_bottom_og.png);
  background-repeat: no-repeat;
  background-position: center -5px;
  z-index: 99999;
}
#if02_page3_2,
#if02_page4_4,
#if02_page2_6 {
  border-top: #F6D0A4 solid 5px;
  margin: 0;
  padding: 50px 0 30px 0;
}
#if02_page4 > .wrap > h3 {
  margin-left: -48px;
  padding-top: 35px;
}
#if02_page4 > .wrap p {
  position: absolute;
  left: 281px;
  top: 156px;
  margin-top: 0;
}
#if02_page4_1 > .wrap > .tbl > div + div {
  padding-top: 23px;
}
#if02_page4_1 h4 {
  margin-bottom: 12px;
}
#if02_page4_2 h4,
#if02_page4_3 h4 {
  margin-bottom: 33px;
}
#pagetop.if02 {
  margin-top: -6em;
  padding-bottom: 3em;
}
#pagetop.if02 a {
  margin-right: 1em;
}
/*201804 ▲ ------------------------------------------------------------------*/
/*- ------------------------- ------------------------- ------------------------- ------------------------- -*/
footer > .wrap > ul {
  display: table;
  table-layout: fixed;
  width: 100%;
  margin: 0;
  padding: 1.5em 0;
}
footer > .wrap > ul > li {
  display: table-cell;
  margin: 0;
  padding: 0;
}
footer > .wrap > ul > li > dl {
  margin: 0;
  padding: 0;
}
footer > .wrap > ul > li > dl + dl {
  margin-top: 1em;
}
footer > .wrap > ul > li > dl > dt {
  margin: 0;
  padding: 0;
  color: #009fe8;
  font-weight: bold;
  line-height: 1.85em;
}
footer > .wrap > ul > li > dl > dd {
  display: list-item;
  list-style: disc inside;
  margin: 0;
  padding: 0 0 0 0.4em;
  color: #888;
  line-height: 1.9em;
}
footer > .wrap > ul > li > dl > dd > a {
  color: #888;
  text-decoration: none;
  margin: 0 0 0 -0.4em;
  padding: 0;
}
footer > .wrap > ul > li > dl > dd > a:hover {
  color: #333;
}
footer p {
  border-top: #CCC solid 1px;
  margin: 0;
  padding: 0.5em 0;
  text-align: center;
}
/*- ------------------------- ------------------------- ------------------------- ------------------------- -*/
.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
  font-size: 0;
}
.clearfix {
  display: inline-table;
}
/* Hides from IE-mac \*/
* html .clearfix {
  height: 1%;
}
.clearfix {
  display: block;
}
/* End hide from IE-mac */
