@charset "UTF-8";
/* ===================================================================
	Author: aki
=================================================================== */
/*初期化*/
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, form, fieldset, input, select, option, textarea, p, table, th, tr, td, figure, img {
  margin: 0;
  padding: 0;
  text-decoration: none;
  font-style: normal;
  list-style: none;
  font-weight: normal;
  font-size: 100%;
  border: none; }

*:before, *:after {
  transition: 0.2s;
  box-sizing: border-box; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

caption, th {
  text-align: left; }

img {
  height: auto;
  line-height: 1em;
  vertical-align: top; }

summary {
  display: block;
  cursor: pointer;
  outline: none; }

summary::-webkit-details-marker {
  display: none; }

select option {
  padding: 0 5px; }

form label {
  cursor: pointer; }

input, textarea, select, option {
  font-size: 100%;
  font-family: inherit;
  background: none;
  -webkit-appearance: none;
  appearance: none;
  border: none; }

input:focus,
textarea:focus {
  outline: none; }

::placeholder {
  color: #aaa; }

input[type="radio"],
input[type="checkbox"] {
  display: none; }

input[type="submit"] {
  width: 100%;
  cursor: pointer;
  transition: 0.2s; }

input[type="submit"]:hover {
  opacity: 0.7; }

a {
  margin: 0;
  padding: 0; }

.t-right {
  text-align: right; }

.t-center {
  text-align: center; }

/*基本設定*/
.mf-inner:after,
.inner:after,
.cf:after {
  content: " ";
  display: block;
  clear: both;
  height: 0px;
  visibility: hidden;
  line-height: 0px; }

.mf-inner, .inner, .cf {
  display: inline-block; }

/* exlude MacIE5 */
* html .mf-inner,
* html .inner,
* html .cf {
  height: 1%; }

.mf-inner, .inner, .cf {
  display: block; }

/* end MacIE5 */
body {
  color: #000;
  font-size: 16px;
  line-height: 1.8;
  font-family: 'Noto Sans JP',"Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体","メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  position: relative; }

@media screen and (max-width: 1040px) {
  body {
    font-size: 3vw; } }
a {
  text-decoration: underline;
  color: #00a1e5; }

a:link {
  text-decoration: underline;
  color: #00a1e5; }

a:visited {
  text-decoration: none;
  color: #00a1e5; }

a:hover {
  text-decoration: none;
  color: #00a1e5; }

a:active {
  text-decoration: underline;
  color: #00a1e5; }

.br-sp {
  display: none; }

@media screen and (max-width: 1040px) {
  .br-pc {
    display: none; }

  .br-sp {
    display: block; } }
.img_pc {
  display: inline-block; }

@media screen and (max-width: 1040px) {
  .img_pc {
    display: none; } }
.img_sp {
  display: none; }

@media screen and (max-width: 1040px) {
  .img_sp {
    display: inline-block; } }
img {
  max-width: 100%; }

.mf-frame {
  width: 1040px;
  margin: 0 auto; }

@media screen and (max-width: 1040px) {
  .mf-frame {
    width: 100%; } }
#main_bg {
  background: url("../img/bg_btm.png") center bottom no-repeat #dcdde3; }

@media screen and (min-width: 2043px) {
  #main_bg {
    background-size: contain; } }
@media screen and (max-width: 1040px) {
  #main_bg {
    background: url("../img/bg_btm_sp.png") center bottom no-repeat #dcdde3;
    background-size: contain; } }
#header {
  background: url("../img/bg_top.png") center top no-repeat;
  background-size: cover; }

@media screen and (min-width: 2043px) {
  #header {
    background-size: cover; } }
@media screen and (max-width: 1040px) {
  #header {
    background: url("../img/bg_top_sp.png") center top no-repeat;
    background-size: cover; } }
#header .mf-frame {
  position: relative; }

#header .mf-inner {
  padding: 27px;
  padding-bottom: 27px; }

@media screen and (max-width: 1040px) {
  #header .mf-inner {
    padding: 0vw;
    padding-bottom: 5vw; } }
@media screen and (max-width: 1040px) {
  #header p {
    padding: 4.5vw;
    width: 23.5vw; } }
#header h1 {
  margin-top: 40px;
  text-align: center; }

@media screen and (max-width: 1040px) {
  #header h1 {
    margin-top: 40px;
    text-align: center;
    padding: 0 5vw; } }
#footer {
  padding-top: 50px; }
  @media screen and (max-width: 1040px) {
    #footer {
      padding-top: 5vw; } }

#footer p {
  text-align: center;
  margin-bottom: 40px;
  font-size: 0.75em; }

@media screen and (max-width: 1040px) {
  #footer p {
    padding: 0 4.5vw;
    margin-bottom: 10vw; } }
#main .mf-inner {
  padding: 0 79px; }

@media screen and (max-width: 1040px) {
  #main .mf-inner {
    padding: 0 4.5vw; } }
#main {
  padding: 50px 0 200px 0; }
  @media screen and (max-width: 1040px) {
    #main {
      padding: 10vw 0 25vw 0; } }

#main #tabmenu {
  margin-bottom: 30px; }
  #main #tabmenu ul {
    display: flex;
    justify-content: space-between;
    border-bottom: 3px solid #192350; }
  #main #tabmenu li {
    cursor: pointer;
    margin-right: auto; }
    #main #tabmenu li:last-child {
      margin-right: 0; }
    #main #tabmenu li:nth-of-type(1) {
      background: url("../img/tab1_ov.png") left top no-repeat; }
      @media screen and (max-width: 1040px) {
        #main #tabmenu li:nth-of-type(1) {
          background: url("../img/tab1_ov_sp.png") left top no-repeat;
          background-size: contain;
          margin-right: 1vw; } }
    #main #tabmenu li:nth-of-type(2) {
      background: url("../img/tab2_ov.png") left top no-repeat; }
      @media screen and (max-width: 1040px) {
        #main #tabmenu li:nth-of-type(2) {
          background: url("../img/tab2_ov_sp.png") left top no-repeat;
          background-size: contain;
          margin-right: 1vw; } }
    #main #tabmenu li:nth-of-type(3) {
      background: url("../img/tab3_ov.png") left top no-repeat; }
      @media screen and (max-width: 1040px) {
        #main #tabmenu li:nth-of-type(3) {
          background: url("../img/tab3_ov_sp.png") left top no-repeat;
          background-size: contain; } }
  #main #tabmenu li:hover img,
  #main #tabmenu li.ov img {
    visibility: hidden; }

#main #cbox1 {
  display: flex;
  justify-content: space-between;
  margin-bottom: 30px; }
  #main #cbox1 .img {
    widows: 120px; }
    @media screen and (max-width: 1040px) {
      #main #cbox1 .img {
        width: 14vw; } }
  #main #cbox1 .text {
    width: calc(100% - 140px); }
    @media screen and (max-width: 1040px) {
      #main #cbox1 .text {
        width: calc(100% - 15vw); } }
    #main #cbox1 .text h2 {
      color: #192350;
      font-size: 1.5em;
      margin-bottom: 10px;
      font-weight: bold; }
    #main #cbox1 .text .tyui {
      font-size: 0.8em;
      text-indent: -1em;
      margin-left: 1em;
      margin-top: 20px; }

#main #cbox2 {
  text-align: center;
  margin-bottom: 30px; }
  #main #cbox2 p {
    margin-bottom: 20px; }
  #main #cbox2 ul {
    text-align: left; }
    #main #cbox2 ul li {
      position: relative;
      padding: 0 0 0 1em;
      font-size: 0.8em; }
      #main #cbox2 ul li:before {
        content: "・";
        position: absolute;
        left: 0; }

#main #cbox7 {
  display: flex;
  justify-content: space-between;
  margin-bottom: 30px; }
  #main #cbox7 .img {
    widows: 120px; }
    @media screen and (max-width: 1040px) {
      #main #cbox7 .img {
        width: 14vw; } }
  #main #cbox7 .text {
    width: calc(100% - 140px); }
    @media screen and (max-width: 1040px) {
      #main #cbox7 .text {
        width: calc(100% - 15vw); } }
    #main #cbox7 .text h2 {
      color: #192350;
      font-size: 1.5em;
      margin-bottom: 10px;
      font-weight: bold; }
    #main #cbox7 .text p {
      padding: 0 14vw 0 0; }

#main #cbox3 {
  margin-bottom: 20px; }
  #main #cbox3 h2 {
    text-align: center;
    margin-bottom: 20px; }

#main #cbox4 {
  margin-bottom: 50px;
  background: #192350;
  padding: 20px; }
  @media screen and (max-width: 1040px) {
    #main #cbox4 {
      margin-bottom: 10vw;
      padding: 4.5vw; } }
  #main #cbox4 .cbox-inner {
    background: #fff;
    padding: 15px 15px 25px 15px;
    margin-bottom: 20px;
    text-align: center; }
    #main #cbox4 .cbox-innerlast-child {
      margin-bottom: 0; }
    @media screen and (max-width: 1040px) {
      #main #cbox4 .cbox-inner {
        padding: 4vw; } }
  #main #cbox4 h3 {
    text-align: center;
    padding-bottom: 20px; }
    @media screen and (max-width: 1040px) {
      #main #cbox4 h3 {
        padding: 0 25vw;
        padding-bottom: 4.5vw; } }
  #main #cbox4 .cbox-inner > h4 {
    color: #192350;
    font-size: 1.5em;
    margin-bottom: 10px;
    font-weight: bold; }
    @media screen and (max-width: 1040px) {
      #main #cbox4 .cbox-inner > h4 {
        font-size: 3.4vw; } }
    #main #cbox4 .cbox-inner > h4 + p {
      color: #192350;
      font-size: 1.125em;
      margin-bottom: 30px; }
      @media screen and (max-width: 1040px) {
        #main #cbox4 .cbox-inner > h4 + p {
          font-size: 3.0vw; } }
  #main #cbox4 dl {
    width: 256px;
    display: flex;
    justify-content: flex-start;
    flex-direction: column;
    align-items: center;
    margin: 0 auto; }
    @media screen and (max-width: 1040px) {
      #main #cbox4 dl {
        width: auto;
        display: block;
        margin: 0;
        margin-bottom: 5vw; } }
    #main #cbox4 dl:last-child {
      margin-bottom: 0; }
    #main #cbox4 dl dt {
      text-align: center;
      font-weight: bold;
      font-size: 1.125em;
      margin-bottom: 10px;
      color: #cb6120; }
      @media screen and (max-width: 1040px) {
        #main #cbox4 dl dt {
          font-size: 1.5625em; } }
    #main #cbox4 dl dd:nth-of-type(1) {
      height: 127px;
      display: flex;
      align-items: center;
      margin-bottom: 10px; }
      @media screen and (max-width: 1040px) {
        #main #cbox4 dl dd:nth-of-type(1) {
          text-align: center;
          display: block;
          height: auto; } }
    @media screen and (max-width: 1040px) {
      #main #cbox4 dl dd:nth-of-type(2) {
        text-align: center;
        padding: 0 10vw; } }

#main #cbox5 {
  margin-bottom: 50px;
  background: #192350;
  padding: 20px; }
  @media screen and (max-width: 1040px) {
    #main #cbox5 {
      margin-bottom: 10vw;
      padding: 4.5vw; } }
  #main #cbox5 .cbox-inner {
    background: #fff;
    padding: 25px 15px;
    display: flex;
    justify-content: center; }
    @media screen and (max-width: 1040px) {
      #main #cbox5 .cbox-inner {
        padding: 4vw 10vw;
        display: block; } }
  #main #cbox5 h3 {
    text-align: center;
    padding-bottom: 20px; }
    @media screen and (max-width: 1040px) {
      #main #cbox5 h3 {
        padding: 0 25vw;
        padding-bottom: 4.5vw; } }
  #main #cbox5 h3 + p {
    color: #fff;
    text-align: center;
    margin-bottom: 20px; }

#main #cbox6 {
  padding-bottom: 0px; }

@media screen and (max-width: 1040px) {
  #main #cbox6 {
    padding-bottom: 0vw; } }
#main #cbox6 .cbox-inner {
  background: #192350;
  padding: 20px; }

@media screen and (max-width: 1040px) {
  #main #cbox6 .cbox-inner {
    padding: 4.5vw; } }
#main #cbox6 h3 {
  text-align: center;
  padding-bottom: 20px; }

@media screen and (max-width: 1040px) {
  #main #cbox6 h3 {
    padding: 0 25vw;
    padding-bottom: 4.5vw; } }
#main #cbox6 dl {
  background: #fff;
  margin-bottom: 20px; }

#main #cbox6 dl:last-child {
  margin-bottom: 0; }

@media screen and (max-width: 1040px) {
  #main #cbox6 dl {
    margin-bottom: 5vw; } }
#main #cbox6 dl dt {
  background: #edeef0;
  color: #192350;
  font-weight: bold;
  padding: 10px 30px 10px 60px;
  cursor: pointer;
  font-size: 1.125em;
  position: relative; }

@media screen and (max-width: 1040px) {
  #main #cbox6 dl dt {
    padding: 3vw 5vw;
    padding-left: 10vw; } }
#main #cbox6 dl dt span {
  position: absolute;
  left: 27px; }

@media screen and (max-width: 1040px) {
  #main #cbox6 dl dt span {
    left: 5vw; } }
#main #cbox6 dl dt span:after {
  content: "＋"; }

#main #cbox6 dl dt.open span:after {
  content: "ー"; }

#main #cbox6 dl dd {
  padding: 20px 30px;
  display: none; }

@media screen and (max-width: 1040px) {
  #main #cbox6 dl dd {
    padding: 5vw; } }
#main #cbox6 .tyui {
  padding-top: 30px; }
  #main #cbox6 .tyui ul li {
    position: relative;
    padding: 0 0 0 1em;
    font-size: 0.8em; }
    #main #cbox6 .tyui ul li:before {
      content: "●";
      position: absolute;
      left: 0; }

#tab2, #tab3 {
  display: none; }
