@charset "UTF-8";
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

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

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none;
}

a img {
  border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}

.mt00 {
  margin-top: 0 !important;
}

.mt05 {
  margin-top: 5px !important;
}

.mt10 {
  margin-top: 10px !important;
}

.mt15 {
  margin-top: 15px !important;
}

.mt20 {
  margin-top: 20px !important;
}

.mt25 {
  margin-top: 25px !important;
}

.mt30 {
  margin-top: 30px !important;
}

.mt35 {
  margin-top: 35px !important;
}

.mt40 {
  margin-top: 40px !important;
}

.mt45 {
  margin-top: 45px !important;
}

.mt50 {
  margin-top: 50px !important;
}

.mt55 {
  margin-top: 55px !important;
}

.mt60 {
  margin-top: 60px !important;
}

.mt65 {
  margin-top: 65px !important;
}

.mt70 {
  margin-top: 60px !important;
}

.mt75 {
  margin-top: 75px !important;
}

.mt80 {
  margin-top: 80px !important;
}

.mt85 {
  margin-top: 85px !important;
}

.mt90 {
  margin-top: 90px !important;
}

.mt95 {
  margin-top: 95px !important;
}

.mt100 {
  margin-top: 100px !important;
}

.mr00 {
  margin-right: 0 !important;
}

.mr05 {
  margin-right: 5px !important;
}

.mr10 {
  margin-right: 10px !important;
}

.mr15 {
  margin-right: 15px !important;
}

.mr20 {
  margin-right: 20px !important;
}

.mr25 {
  margin-right: 25px !important;
}

.mr30 {
  margin-right: 30px !important;
}

.mr35 {
  margin-right: 35px !important;
}

.mr40 {
  margin-right: 40px !important;
}

.mr45 {
  margin-right: 45px !important;
}

.mr50 {
  margin-right: 50px !important;
}

.mr55 {
  margin-right: 55px !important;
}

.mr60 {
  margin-right: 60px !important;
}

.mr65 {
  margin-right: 65px !important;
}

.mr70 {
  margin-right: 70px !important;
}

.mr75 {
  margin-right: 75px !important;
}

.mr80 {
  margin-right: 80px !important;
}

.mr85 {
  margin-right: 85px !important;
}

.mr90 {
  margin-right: 90px !important;
}

.mr95 {
  margin-right: 95px !important;
}

.mr100 {
  margin-right: 100px !important;
}

.mb00 {
  margin-bottom: 0 !important;
}

.mb05 {
  margin-bottom: 5px !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.mb15 {
  margin-bottom: 15px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.mb25 {
  margin-bottom: 25px !important;
}

.mb30 {
  margin-bottom: 30px !important;
}

.mb35 {
  margin-bottom: 35px !important;
}

.mb40 {
  margin-bottom: 40px !important;
}

.mb45 {
  margin-bottom: 45px !important;
}

.mb50 {
  margin-bottom: 50px !important;
}

.mb55 {
  margin-bottom: 55px !important;
}

.mb60 {
  margin-bottom: 60px !important;
}

.mb65 {
  margin-bottom: 65px !important;
}

.mb70 {
  margin-bottom: 70px !important;
}

.mb75 {
  margin-bottom: 75px !important;
}

.mb80 {
  margin-bottom: 80px !important;
}

.mb85 {
  margin-bottom: 85px !important;
}

.mb90 {
  margin-bottom: 90px !important;
}

.mb95 {
  margin-bottom: 95px !important;
}

.mb100 {
  margin-bottom: 100px !important;
}

.ml00 {
  margin-left: 0 !important;
}

.ml05 {
  margin-left: 5px !important;
}

.ml10 {
  margin-left: 10px !important;
}

.ml15 {
  margin-left: 15px !important;
}

.ml20 {
  margin-left: 20px !important;
}

.ml25 {
  margin-left: 25px !important;
}

.ml30 {
  margin-left: 30px !important;
}

.ml35 {
  margin-left: 35px !important;
}

.ml40 {
  margin-left: 40px !important;
}

.ml45 {
  margin-left: 45px !important;
}

.ml50 {
  margin-left: 50px !important;
}

.ml55 {
  margin-left: 55px !important;
}

.ml60 {
  margin-left: 60px !important;
}

.ml65 {
  margin-left: 65px !important;
}

.ml70 {
  margin-left: 60px !important;
}

.ml75 {
  margin-left: 75px !important;
}

.ml80 {
  margin-left: 80px !important;
}

.ml85 {
  margin-left: 85px !important;
}

.ml90 {
  margin-left: 90px !important;
}

.ml95 {
  margin-left: 95px !important;
}

.ml100 {
  margin-left: 100px !important;
}

.pt00 {
  padding-top: 0 !important;
}

.pt05 {
  padding-top: 5px !important;
}

.pt10 {
  padding-top: 10px !important;
}

.pt15 {
  padding-top: 15px !important;
}

.pt20 {
  padding-top: 20px !important;
}

.pt25 {
  padding-top: 25px !important;
}

.pt30 {
  padding-top: 30px !important;
}

.pt35 {
  padding-top: 35px !important;
}

.pt40 {
  padding-top: 40px !important;
}

.pt45 {
  padding-top: 45px !important;
}

.pt50 {
  padding-top: 50px !important;
}

.pt55 {
  padding-top: 55px !important;
}

.pt60 {
  padding-top: 60px !important;
}

.pt65 {
  padding-top: 65px !important;
}

.pt70 {
  padding-top: 70px !important;
}

.pt75 {
  padding-top: 75px !important;
}

.pt80 {
  padding-top: 80px !important;
}

.pt85 {
  padding-top: 85px !important;
}

.pt90 {
  padding-top: 90px !important;
}

.pt95 {
  padding-top: 95px !important;
}

.pt100 {
  padding-top: 100px !important;
}

.pr00 {
  padding-right: 0 !important;
}

.pr05 {
  padding-right: 5px !important;
}

.pr10 {
  padding-right: 10px !important;
}

.pr15 {
  padding-right: 15px !important;
}

.pr20 {
  padding-right: 20px !important;
}

.pr25 {
  padding-right: 25px !important;
}

.pr30 {
  padding-right: 30px !important;
}

.pr35 {
  padding-right: 35px !important;
}

.pr40 {
  padding-right: 40px !important;
}

.pr45 {
  padding-right: 45px !important;
}

.pr50 {
  padding-right: 50px !important;
}

.pr55 {
  padding-right: 55px !important;
}

.pr60 {
  padding-right: 60px !important;
}

.pr65 {
  padding-right: 65px !important;
}

.pr70 {
  padding-right: 70px !important;
}

.pr75 {
  padding-right: 75px !important;
}

.pr80 {
  padding-right: 80px !important;
}

.pr85 {
  padding-right: 85px !important;
}

.pr90 {
  padding-right: 90px !important;
}

.pr95 {
  padding-right: 95px !important;
}

.pr100 {
  padding-right: 100px !important;
}

.pb00 {
  padding-bottom: 0 !important;
}

.pb05 {
  padding-bottom: 5px !important;
}

.pb10 {
  padding-bottom: 10px !important;
}

.pb15 {
  padding-bottom: 15px !important;
}

.pb20 {
  padding-bottom: 20px !important;
}

.pb25 {
  padding-bottom: 25px !important;
}

.pb30 {
  padding-bottom: 30px !important;
}

.pb35 {
  padding-bottom: 35px !important;
}

.pb40 {
  padding-bottom: 40px !important;
}

.pb45 {
  padding-bottom: 45px !important;
}

.pb50 {
  padding-bottom: 50px !important;
}

.pb55 {
  padding-bottom: 55px !important;
}

.pb60 {
  padding-bottom: 60px !important;
}

.pb65 {
  padding-bottom: 65px !important;
}

.pb70 {
  padding-bottom: 70px !important;
}

.pb75 {
  padding-bottom: 75px !important;
}

.pb80 {
  padding-bottom: 80px !important;
}

.pb85 {
  padding-bottom: 85px !important;
}

.pb90 {
  padding-bottom: 90px !important;
}

.pb95 {
  padding-bottom: 95px !important;
}

.pb100 {
  padding-bottom: 100px !important;
}

.pl00 {
  padding-left: 0 !important;
}

.pl05 {
  padding-left: 5px !important;
}

.pl10 {
  padding-left: 10px !important;
}

.pl15 {
  padding-left: 15px !important;
}

.pl20 {
  padding-left: 20px !important;
}

.pl25 {
  padding-left: 25px !important;
}

.pl30 {
  padding-left: 30px !important;
}

.pl35 {
  padding-left: 35px !important;
}

.pl40 {
  padding-left: 40px !important;
}

.pl45 {
  padding-left: 45px !important;
}

.pl50 {
  padding-left: 50px !important;
}

.pl55 {
  padding-left: 55px !important;
}

.pl60 {
  padding-left: 60px !important;
}

.pl65 {
  padding-left: 65px !important;
}

.pl70 {
  padding-left: 70px !important;
}

.pl75 {
  padding-left: 75px !important;
}

.pl80 {
  padding-left: 80px !important;
}

.pl85 {
  padding-left: 85px !important;
}

.pl90 {
  padding-left: 90px !important;
}

.pl95 {
  padding-left: 95px !important;
}

.pl100 {
  padding-left: 100px !important;
}

.mb20_sp {
  margin-bottom: 20px !important;
}
@media screen and (min-width: 600px) {
  .mb20_sp {
    margin-bottom: 0 !important;
  }
}

.mb30_sp {
  margin-bottom: 30px !important;
}
@media screen and (min-width: 600px) {
  .mb30_sp {
    margin-bottom: 0 !important;
  }
}

.mb40_sp {
  margin-bottom: 40px !important;
}
@media screen and (min-width: 600px) {
  .mb40_sp {
    margin-bottom: 0 !important;
  }
}

.pt15_sp {
  margin-top: 15px !important;
}
@media screen and (min-width: 600px) {
  .pt15_sp {
    padding-top: 0 !important;
  }
}

@media screen and (min-width: 600px) {
  .mt30_pc {
    margin-top: 30px !important;
  }

  .mt60_pc {
    margin-top: 60px !important;
  }

  .mt50_pc {
    margin-top: 50px !important;
  }

  .mb40_pc {
    margin-bottom: 40px !important;
  }

  .mb30_pc {
    margin-bottom: 30px !important;
  }

  .mb50_pc {
    margin-bottom: 50px !important;
  }

  .mb60_pc {
    margin-bottom: 60px !important;
  }

  .mb70_pc {
    margin-bottom: 70px !important;
  }

  .mb80_pc {
    margin-bottom: 80px !important;
  }

  .mb20_pc {
    margin-bottom: 20px !important;
  }

  .mr30_pc {
    margin-right: 30px !important;
  }
}
.pc_cont {
  display: none;
}
@media screen and (min-width: 600px) {
  .pc_cont {
    display: block;
  }
}

@media screen and (min-width: 600px) {
  .sp_cont {
    display: none;
  }
}
@media screen and (min-width: 600px) {
  .s_80 {
    width: 80%;
    margin: 0 auto;
  }

  .s_70 {
    width: 70%;
    margin: 0 auto;
  }

  .s_65 {
    width: 65%;
    margin: 0 auto;
  }

  .s_60 {
    width: 60%;
    margin: 0 auto;
  }

  .s_55 {
    width: 55% !important;
    margin: 0 auto;
  }

  .s_45 {
    width: 45% !important;
    margin: 0 auto;
  }

  .s_30 {
    width: 30% !important;
    margin: 0 auto;
  }

  .s_35 {
    width: 35% !important;
    margin: 0 auto;
  }
}
.bold {
  font-weight: bold;
}

.blue {
  color: #337278;
}

.d_blue {
  color: #446076;
}

.white {
  color: #FFF;
}

.under_line {
  text-decoration: underline;
}

.br_sp {
  display: inline;
}
@media screen and (min-width: 600px) {
  .br_sp {
    display: none;
  }
}

.br_pc {
  display: none;
}
@media screen and (min-width: 600px) {
  .br_pc {
    display: inline;
  }
}

.text_big {
  font-size: 120%;
}

@media screen and (min-width: 600px) {
  .sp_link {
    pointer-events: none;
  }
}
html {
  font-size: 62.5%;
  line-height: 1.6;
}
@media screen and (min-width: 600px) {
  html {
    font-size: 80%;
  }
}

body {
  color: #333;
  font-family: "Hiragino Kaku Gothic ProN","メイリオ", sans-serif;
}

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.cf:after {
  content: " ";
  display: block;
  clear: both;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

.box_white a img:hover {
  opacity: .75;
}

p, li {
  font-size: 1.5rem;
}

li {
  margin-bottom: 10px;
}

.inner_wrap {
  width: 92%;
  margin: 0 auto;
}
@media screen and (min-width: 600px) {
  .inner_wrap {
    width: 880px;
  }
}

.wrap96 {
  width: 92%;
  margin: 0 auto;
}
@media screen and (min-width: 600px) {
  .wrap96 {
    width: 960px;
    margin: 0 auto;
  }
}

.sp_wrap {
  width: 92%;
  margin: 0 auto;
}
@media screen and (min-width: 600px) {
  .sp_wrap {
    width: initial;
    margin: 0;
  }
}

@media screen and (min-width: 600px) {
  .pc_wrap {
    width: 960px;
    margin: 0 auto;
  }

  .pc_wrap880 {
    width: 880px;
    margin: 0 auto;
  }

  .pc_wrap1480 {
    max-width: 1480px;
    min-width: 1200px;
    margin: 0 auto;
  }

  .bold_pc {
    font-weight: bold;
  }

  .wi_half {
    width: 48%;
  }

  .wi_half_7 {
    width: 61%;
  }

  .wi_half_6 {
    width: 58%;
  }

  .wi_half_4 {
    width: 38%;
  }

  .wi_half_3 {
    width: 35%;
  }

  .p40 {
    padding: 40px 40px 0 40px;
  }
}
@media screen and (min-width: 600px) {
  .flex_center {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
  }

  .flex_between {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }

  .flex_left {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
  }

  .flex_list {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  .flex_list_item {
    -webkit-flex-basis: 49%;
    flex-basis: 49%;
    -webkit-align-items: center;
    align-items: center;
  }
}
h3 {
  line-height: 1.3;
}

.fs80_per {
  font-size: 80%;
}

@media screen and (min-width: 600px) {
  .fs80_per_pc {
    font-size: 80%;
  }
}
header {
  background-color: #FFF;
  width: 100%;
  height: 75px;
}
@media screen and (min-width: 600px) {
  header {
    height: 96px;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99;
    border-bottom: 1px solid #f5f5f5;
  }
}

#header_logo {
  width: 130px;
  margin: 5px 4% 5px 10px;
  float: left;
}
@media screen and (min-width: 600px) {
  #header_logo {
    width: 195px;
    margin: 13px 30px 5px 0;
  }
}

#header_info {
  font-size: 1.1rem;
  line-height: 1.4;
  margin-left: 10px;
  margin-top: 10px;
  float: left;
}

#header_cv {
  clear: both;
  width: 100%;
}
@media screen and (min-width: 600px) {
  #header_cv {
    clear: none;
    width: 451px;
    float: left;
    margin-left: 40px;
  }
}
#header_cv span {
  background-color: #232F3A;
  color: #fff;
  font-size: 1.2rem;
  width: 100%;
  padding: 2px;
  display: block;
  text-align: center;
}
#header_cv li {
  display: inline-block;
  width: 33.3%;
  margin: 0;
}
@media screen and (min-width: 600px) {
  #header_cv li {
    width: 112px;
  }
}
#header_cv li a {
  display: block;
  width: 100%;
}
#header_cv .cv_tel_pc {
  display: none;
}
@media screen and (min-width: 600px) {
  #header_cv .cv_tel_pc {
    display: inline-block;
    width: 227px;
  }
}
@media screen and (min-width: 600px) {
  #header_cv .cv_tel {
    display: none;
  }
}
#header_cv img {
  vertical-align: baseline;
}

.fixed-nav {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 99;
}
@media screen and (min-width: 600px) {
  .fixed-nav {
    position: static;
    width: initial;
  }
}

#top_banner_area_pc {
  display: none;
}

@media screen and (min-width: 600px) {
  #top_banner_area {
    display: none;
  }

  #top_banner_area_pc {
    display: block;
    margin: 15px auto;
    text-align: center;
    max-width: 1480px;
  }
  #top_banner_area_pc li {
    display: inline-block;
    width: 43%;
  }

  #container {
    padding-top: 96px;
    min-width: 1200px;
  }

  a img:hover {
    opacity: .7;
  }
}
@media screen and (min-width: 600px) {
  #mv_outer {
    min-width: 960px;
    background-image: -webkit-gradient(linear, left top, right top, color-stop(0, #f5f6fa), color-stop(1, #FFFFFF));
    background-image: -o-linear-gradient(left, #f5f6fa 0%, #FFFFFF 100%);
    background-image: -moz-linear-gradient(left, #f5f6fa 0%, #FFFFFF 100%);
    background-image: -webkit-linear-gradient(left, #f5f6fa 0%, #FFFFFF 100%);
    background-image: -ms-linear-gradient(left, #f5f6fa 0%, #FFFFFF 100%);
    background-image: linear-gradient(to left, #f5f6fa 0%, #ffffff 100%);
  }
}
#mv {
  padding-top: 74px;
}
@media screen and (min-width: 600px) {
  #mv {
    max-width: 1480px;
    min-width: 1200px;
    margin: 0 auto;
  }
}
#mv h1 {
  display: block;
  border: none;
  white-space: nowrap;
  text-indent: 200%;
  overflow: hidden;
  background-image: url("../images/main_visual_170911.jpg");
  background-repeat: no-repeat;
  -webkit-background-size: contain;
  -o-background-size: contain;
  background-size: contain;
  padding-top: 57%;
  height: 0;
}
@media screen and (min-width: 600px) {
  #mv h1 {
    background-image: url("../images/main_visual_pc170911.jpg");
    padding-top: 28.5%;
  }
}

#sec01 {
  background: -webkit-gradient(radial, 49% 48%, 0, 49% 48%, 153, color-stop(1, #dfdeda), color-stop(0.3, #ececec));
  background: -webkit-radial-gradient(49% 48%, circle, #ececec 30%, #dfdeda 100%);
  background: -moz-radial-gradient(49% 48%, circle, #ececec 30%, #dfdeda 100%);
  background: -o-radial-gradient(49% 48%, circle, #ececec 30%, #dfdeda 100%);
  background: -ms-radial-gradient(49% 48%, circle, #ececec 30%, #dfdeda 100%);
  background: radial-gradient(circle at 49% 48%, #ececec 30%, #dfdeda 100%);
}
@media screen and (min-width: 600px) {
  #sec01 h2 {
    margin-bottom: 40px;
  }
}

section {
  padding: 30px 0;
}

section h2 {
  margin-bottom: 20px;
}

section h3 {
  margin-bottom: 20px;
}

@media screen and (min-width: 600px) {
  .pc_prof_box {
    position: relative;
    background-color: #FFF;
    padding: 40px;
  }
  .pc_prof_box .box_white {
    padding: 0;
    width: 514px;
    margin-left: auto;
  }
}
.prof_img {
  margin: 0 auto;
  width: 204px;
}
@media screen and (min-width: 600px) {
  .prof_img {
    position: absolute;
    bottom: 0;
    left: 20px;
    width: 315px;
  }
}

.box_white {
  background-color: #FFF;
  padding: 4%;
}
@media screen and (min-width: 600px) {
  .box_white {
    padding: 40px;
  }
}

.goth_head {
  font-size: 2.4rem;
  width: 325px;
  margin: 0 auto 20px;
  text-align: center;
}
@media screen and (min-width: 600px) {
  .goth_head {
    width: 100%;
    font-size: 4.3rem;
    line-height: 1.2;
  }
}

.head_txt19 {
  font-size: 1.9rem;
  margin-bottom: 20px;
}
@media screen and (min-width: 600px) {
  .head_txt19 {
    font-size: 2.4rem;
  }
}

.head_txt20 {
  font-size: 2rem;
  margin-bottom: 20px;
}

.head_txt22 {
  font-size: 2.2rem;
}
@media screen and (min-width: 600px) {
  .head_txt22 {
    font-size: 2.5rem;
  }
}

.head_txt24 {
  font-size: 2.4rem;
}

@media screen and (min-width: 600px) {
  .glow_txt {
    text-shadow: 3px 3px 4px #fff;
  }
}
#sec02 {
  background-color: #ececec;
}
@media screen and (min-width: 600px) {
  #sec02 h3 {
    text-align: left;
    font-size: 2.2rem;
  }
  #sec02 .flex_between {
    margin-bottom: 20px;
  }
  #sec02 p {
    font-size: 1.3rem;
  }
}

.sec02_mv {
  width: 320px;
}

.check {
  color: #337278;
}

.txt_indent li {
  text-indent: -1.5rem;
  padding-left: 2.4rem;
}
@media screen and (min-width: 600px) {
  .txt_indent li {
    font-size: 2.2rem;
  }
}

.check {
  margin-right: 5px;
}

#sec03 {
  padding: 0 0 30px 0;
  background-color: #ECECEC;
}

.sec03_pore {
  position: relative;
  background-color: #ECECEC;
  padding-bottom: 62%;
}
@media screen and (min-width: 600px) {
  .sec03_pore {
    width: 880px;
    margin: 0 auto;
    padding-bottom: 0;
  }
  .sec03_pore .pb_pc {
    padding: 30px 0 50px;
  }
}

.gsgs01, .gsgs02, .gsgs03, .gsgs04, .gsgs05, .gsgs06, .gsgs07, .gsgs08 {
  position: absolute;
}

.gsgs01 {
  bottom: 43%;
  left: 27%;
}
@media screen and (min-width: 600px) {
  .gsgs01 {
    bottom: 94px;
    left: initial;
    right: 160px;
    width: 22px;
  }
}

.gsgs02 {
  bottom: 9%;
  left: 12%;
}
@media screen and (min-width: 600px) {
  .gsgs02 {
    bottom: 19px;
    left: initial;
    right: 231px;
    width: 22px;
  }
}

.gsgs03 {
  bottom: 43%;
  right: 20%;
}
@media screen and (min-width: 600px) {
  .gsgs03 {
    bottom: 7px;
    right: -19px;
    width: 22px;
  }
}

.gsgs04 {
  bottom: 5%;
  right: 12%;
}
@media screen and (min-width: 600px) {
  .gsgs04 {
    bottom: 100px;
    right: -33px;
    width: 22px;
  }
}

.gsgs05 {
  top: 0%;
  left: 2%;
}
@media screen and (min-width: 600px) {
  .gsgs05 {
    display: none;
  }
}

.gsgs06 {
  bottom: 20%;
  left: 0%;
}
@media screen and (min-width: 600px) {
  .gsgs06 {
    width: 22px;
    bottom: 90px;
    left: -40px;
  }
}

.gsgs07 {
  top: -2%;
  right: 2%;
}
@media screen and (min-width: 600px) {
  .gsgs07 {
    width: 22px;
    top: -29px;
    right: 80px;
  }
}

.gsgs08 {
  bottom: 10%;
  right: 2%;
}
@media screen and (min-width: 600px) {
  .gsgs08 {
    width: 22px;
    bottom: 80px;
    right: -20px;
  }
}

.worry_girl {
  position: absolute;
  width: 233px;
  left: 0;
  right: 0;
  bottom: -60px;
  margin: 0 auto;
}
@media screen and (min-width: 600px) {
  .worry_girl {
    width: 170px;
    left: initial;
    right: 24px;
    bottom: -64px;
  }
}

.green_band {
  background-color: #56bdb9;
  padding: 3% 3% 3% 9%;
  position: relative;
  left: -9%;
  width: 110%;
}
@media screen and (min-width: 600px) {
  .green_band {
    padding: 8px 8px 8px 68px;
    width: 100%;
  }
}

.tsumari_outer {
  position: relative;
}

.tsumari,
.tsumari_before {
  text-align: center;
  margin-bottom: 40px;
}

@media screen and (min-width: 600px) {
  .tsumari {
    width: 50%;
    margin: 0 auto 40px;
  }
}
#sec03_tsumari {
  background: url("../images/tsumari_bg.jpg") no-repeat;
  -webkit-background-size: contain;
  -o-background-size: contain;
  background-size: contain;
  padding-bottom: 93%;
  position: relative;
}
@media screen and (min-width: 600px) {
  #sec03_tsumari {
    background: url("../images/tsumari_bg_pc.jpg") no-repeat;
    -webkit-background-size: contain;
    -o-background-size: contain;
    background-size: contain;
    padding-bottom: 29.2%;
  }
}
#sec03_tsumari .tsumari_cont {
  position: absolute;
  top: 14%;
  left: 2%;
  width: 56%;
}
@media screen and (min-width: 600px) {
  #sec03_tsumari .tsumari_cont {
    top: 19%;
    left: 16%;
    width: 48%;
  }
}

@media screen and (min-width: 600px) {
  .white_outer {
    background: url("../images/white_outer_bg.png") repeat-x;
    -webkit-background-size: contain;
    -o-background-size: contain;
    background-size: contain;
  }
}
@media screen and (max-width: 1150px) {
  .white_outer {
    background: none;
  }
}
#sec05_tsumari {
  background: url("../images/sec05_tsumari_bg.jpg") no-repeat;
  -webkit-background-size: contain;
  -o-background-size: contain;
  background-size: contain;
  padding-bottom: 85%;
  position: relative;
}
@media screen and (min-width: 600px) {
  #sec05_tsumari {
    background: url("../images/sec05_tsumari_bg_pc.jpg") no-repeat;
    -webkit-background-size: contain;
    -o-background-size: contain;
    background-size: contain;
    padding-bottom: 33.2%;
  }
}
#sec05_tsumari .tsumari_cont {
  position: absolute;
  top: 6%;
  left: 1%;
  width: 79%;
}
@media screen and (min-width: 600px) {
  #sec05_tsumari .tsumari_cont {
    top: 9%;
    left: 9%;
    width: 52%;
  }
}

#sec06_tsumari {
  background: url("../images/tsumari_bg02.jpg") no-repeat;
  -webkit-background-size: contain;
  -o-background-size: contain;
  background-size: contain;
  padding-bottom: 86.8%;
  position: relative;
}
@media screen and (min-width: 600px) {
  #sec06_tsumari {
    background: url("../images/tsumari_bg02_pc.jpg") no-repeat;
    -webkit-background-size: contain;
    -o-background-size: contain;
    background-size: contain;
    padding-bottom: 36.4%;
  }
}
#sec06_tsumari .tsumari_cont {
  position: absolute;
  top: 14%;
  left: 3%;
  width: 92%;
}
@media screen and (min-width: 600px) {
  #sec06_tsumari .tsumari_cont {
    top: 10%;
    left: 11%;
    width: 45%;
  }
}

.mb_par20 {
  margin-bottom: 20%;
}

.however_cont {
  background-color: #FFF;
  padding: 20px 0;
}

.caution_box {
  border: 3px solid #9A2826;
  padding: 10px;
}
@media screen and (min-width: 600px) {
  .caution_box {
    padding: 15px 10px;
  }
}
.caution_box p {
  color: #9A2826;
  font-weight: bold;
}
@media screen and (min-width: 600px) {
  .caution_box p {
    font-size: 1.4rem;
  }
}

.tri_gray img {
  vertical-align: top;
}

.bb_red {
  border-bottom: 1px solid #9A2826;
}

.big_text {
  font-size: 130%;
}

.method_cont_outer {
  background: url("../images/method_cont_img.jpg") no-repeat;
  -webkit-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  position: relative;
  padding-bottom: 110%;
  min-height: 470px;
  background-position: center;
}
@media screen and (min-width: 600px) {
  .method_cont_outer {
    background: url("../images/method_cont_img_pc.jpg") no-repeat;
    -webkit-background-size: contain;
    -o-background-size: contain;
    background-size: contain;
    padding-bottom: 36.9%;
  }
}

.method_cont_txt {
  width: 56%;
  position: absolute;
  top: 10%;
  left: 3%;
}
@media screen and (min-width: 600px) {
  .method_cont_txt {
    top: 16%;
    left: 15%;
    width: 53%;
  }
}

.method_detail_txt {
  position: absolute;
  width: 90%;
  left: 3%;
  bottom: 10%;
  font-size: 1.3rem;
}
@media screen and (min-width: 600px) {
  .method_detail_txt {
    left: 15%;
    bottom: 32%;
    width: initial;
  }
}

@media screen and (min-width: 600px) {
  .dib_list {
    width: 435px;
  }
}
.dib_list li {
  display: inline-block;
  width: 47%;
  margin: 1%;
}
@media screen and (min-width: 600px) {
  .dib_list li {
    width: initial;
    -webkit-flex-basis: 48%;
    flex-basis: 48%;
  }
}

.head_green {
  background-color: #56bdb9;
  padding: 4%;
  margin-bottom: 40px;
}
@media screen and (min-width: 600px) {
  .head_green {
    padding: 30px;
  }
}

#sec04 {
  background-color: #ececec;
}

.brown_band {
  background-color: #BA9368;
  padding: 2% 2% 2% 4%;
}
@media screen and (min-width: 600px) {
  .brown_band {
    padding: 9px 9px 9px 40px;
  }
}

.left_fixed {
  width: 95%;
}
@media screen and (min-width: 600px) {
  .left_fixed {
    width: 100%;
  }
  .left_fixed li {
    margin-bottom: 40px;
  }
}

#sec05 {
  background-color: #FFF;
  padding: 0;
}

.bg_gray {
  background-color: #ECECEC;
}

#sec06 {
  background-color: #ececec;
  padding-top: 0;
}

.bg_white {
  background-color: #FFF;
}

#sec07 {
  background: url("../images/flw_bg.png");
}

@media screen and (min-width: 600px) {
  #pom_arrow {
    display: block;
    margin: 0 auto;
    text-align: center;
  }
}
.gold_border {
  border-bottom: 2px solid #ba9368;
  padding-bottom: 2px;
}
.gold_border .gold_bb {
  border-bottom: 1px solid #ba9368;
  display: block;
}
.gold_border h3 {
  margin-bottom: 5px;
}

.tac {
  text-align: center;
}

.border_green {
  border-bottom: 1px solid #56bdb9;
  width: 100%;
  left: -4.3%;
  background-color: #FFF;
  padding: 3% 3% 3% 6%;
}
@media screen and (min-width: 600px) {
  .border_green {
    padding: 5px 5px 7px 0px;
    position: static;
  }
}

.inner_small {
  width: 80%;
  margin: 0 auto;
}
@media screen and (min-width: 600px) {
  .inner_small {
    width: 185px;
  }
}

@media screen and (min-width: 600px) {
  .flex_between .inner_small {
    margin: 0;
  }
  .flex_between .right_txt {
    width: 585px;
  }
}
.gold_ribbon {
  padding: 3% 3% 3% 16%;
}
@media screen and (min-width: 600px) {
  .gold_ribbon {
    padding: 10px 9px 10px 120px;
  }
}
.gold_ribbon:after {
  content: "";
  display: block;
  background: url("../images/gold_ribbon_mini.png") no-repeat;
  position: absolute;
  -webkit-background-size: 36%;
  -o-background-size: 36%;
  background-size: 36%;
  top: -9%;
  left: 6%;
  width: 19.9%;
  height: 100%;
}
@media screen and (min-width: 600px) {
  .gold_ribbon:after {
    width: 37px;
    height: 65px;
    left: 68px;
    -webkit-background-size: 37px;
    -o-background-size: 37px;
    background-size: 37px;
  }
}

@media screen and (min-width: 600px) {
  .flex_between .left_col {
    width: 43%;
  }
  .flex_between .right_col {
    width: 54%;
  }
}
@media screen and (min-width: 600px) {
  .b_up_plan_head {
    width: 60%;
    margin: 80px auto 40px;
  }
}
.happy_list_head {
  border-bottom: 1px solid #56bdb9;
  padding-bottom: 5px;
  position: relative;
  padding-left: 13%;
}
@media screen and (min-width: 600px) {
  .happy_list_head {
    padding-left: 40px;
  }
}
.happy_list_head:after {
  content: "";
  display: block;
}

.happy_list01:after {
  background: url("../images/happy_list_num01.png") no-repeat;
  -webkit-background-size: 32%;
  -o-background-size: 32%;
  background-size: 32%;
  width: 22%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (min-width: 600px) {
  .happy_list01:after {
    width: 22px;
    -webkit-background-size: contain;
    -o-background-size: contain;
    background-size: contain;
    top: -7px;
  }
}

.happy_list02:after {
  background: url("../images/happy_list_num02.png") no-repeat;
  -webkit-background-size: 48%;
  -o-background-size: 48%;
  background-size: 48%;
  width: 22%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (min-width: 600px) {
  .happy_list02:after {
    width: 29px;
    -webkit-background-size: contain;
    -o-background-size: contain;
    background-size: contain;
    top: -7px;
  }
}

.happy_list03:after {
  background: url("../images/happy_list_num03.png") no-repeat;
  -webkit-background-size: 46%;
  -o-background-size: 46%;
  background-size: 46%;
  width: 22%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (min-width: 600px) {
  .happy_list03:after {
    width: 29px;
    -webkit-background-size: contain;
    -o-background-size: contain;
    background-size: contain;
    top: -7px;
  }
}

#sec10 {
  background: url("../images/faq_bg.png");
  padding-top: 0;
}

.faq_head {
  padding: 6% 4%;
  position: relative;
}
@media screen and (min-width: 600px) {
  .faq_head {
    padding: 20px;
  }
}
.faq_head:after {
  content: "";
  display: block;
  background: url("../images/faq_head_bg_icon.png") no-repeat;
  -webkit-background-size: contain;
  -o-background-size: contain;
  background-size: contain;
  width: 12%;
  height: 100%;
  position: absolute;
  top: 8%;
  left: 0;
  right: 0;
  margin-bottom: 0;
  margin: 0 auto;
}
@media screen and (min-width: 600px) {
  .faq_head:after {
    width: 50px;
  }
}

.faq_list {
  margin-bottom: 30px;
}
.faq_list dt {
  position: relative;
  font-size: 1.5rem;
  font-weight: bold;
  padding-left: 65px;
  margin-bottom: 30px;
}
@media screen and (min-width: 600px) {
  .faq_list dt {
    font-size: 1.8rem;
  }
}
.faq_list dt:after {
  content: "";
  display: block;
  background: url("../images/q_icon.png") no-repeat;
  -webkit-background-size: contain;
  -o-background-size: contain;
  background-size: contain;
  width: 14%;
  height: 50px;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (min-width: 600px) {
  .faq_list dt:after {
    width: 40px;
    height: 40px;
  }
}
.faq_list dd {
  border-bottom: 1px solid #B0B0B0;
  padding-bottom: 20px;
  margin-bottom: 30px;
}
.faq_list dd:last-child {
  border-bottom: none;
}
.faq_list .answer {
  font-weight: bold;
  position: relative;
  padding-left: 65px;
}
@media screen and (min-width: 600px) {
  .faq_list .answer {
    font-size: 1.8rem;
  }
}
.faq_list .answer:after {
  content: "";
  display: block;
  background: url("../images/a_icon.png") no-repeat;
  -webkit-background-size: contain;
  -o-background-size: contain;
  background-size: contain;
  width: 14%;
  height: 50px;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (min-width: 600px) {
  .faq_list .answer:after {
    width: 40px;
    height: 40px;
  }
}

.p_indent {
  padding-left: 65px;
}

#sec11 th, #sec11 td {
  border: 1px solid #ccc;
  width: 20%;
  font-size: 1.2rem;
}
#sec11 th {
  padding: 1%;
  background-color: #F2F2F2;
  text-align: center;
  font-weight: bold;
}
#sec11 td {
  padding: 3%;
  background-color: #FFF;
}
@media screen and (min-width: 600px) {
  #sec11 td {
    padding: 12px;
  }
}

.guideline {
  background: url("../images/guidelines_frame.png") no-repeat;
  -webkit-background-size: contain;
  -o-background-size: contain;
  background-size: contain;
  padding-top: 57.5%;
  position: relative;
}
@media screen and (min-width: 600px) {
  .guideline {
    background: url("../images/guidelines_frame_pc.png") no-repeat;
    -webkit-background-size: contain;
    -o-background-size: contain;
    background-size: contain;
    padding-top: 22%;
  }
}
.guideline p {
  position: absolute;
  top: 19%;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 90%;
  font-size: 1.8rem;
  line-height: 1.8;
}

.flow_arrow {
  display: block;
  width: 15%;
  margin: 20px auto;
}
@media screen and (min-width: 600px) {
  .flow_arrow {
    position: absolute;
    top: 70px;
    right: -62px;
    -webkit-transform: rotate(-90deg);
    -moz-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    -o-transform: rotate(-90deg);
    transform: rotate(-90deg);
    width: 60px;
    margin: 0;
  }
}

.flow_list {
  margin-bottom: 30px;
}
.flow_list .step_icon {
  display: table-cell;
  width: 24%;
  padding-right: 3%;
}
@media screen and (min-width: 600px) {
  .flow_list .step_icon {
    display: block;
    width: 160px;
    padding: 0;
    margin: 0 auto 15px;
  }
}
.flow_list p {
  display: table-cell;
  vertical-align: middle;
  font-size: 1.8rem;
}
@media screen and (min-width: 600px) {
  .flow_list p {
    display: block;
    font-size: 1.4rem;
  }
}
@media screen and (min-width: 600px) {
  .flow_list li {
    position: relative;
  }
}

.form_bord {
  margin-bottom: 30px;
}
.form_bord dl {
  background-color: #FFF;
  padding: 4%;
}
.form_bord dl dt {
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 5px;
}
.form_bord dl dt span {
  background-color: #E64437;
  color: #fff;
  font-weight: normal;
  font-size: 1.3rem;
  padding: 3px;
  margin-left: 15px;
}
.form_bord dl dd input {
  border: none;
  background-color: #EEE;
  font-size: 1.875rem;
  height: 5.3125rem;
  margin: 0 0 1rem 0;
  padding: 0.5rem;
  width: 100%;
}

input[type="submit"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.formBtn a {
  display: block;
  background-color: #56bdb9;
  width: 96%;
  height: 60px;
  margin: 0 auto;
  border-radius: 10px;
  color: #FFF;
  text-decoration: none;
  -webkit-box-shadow: 0 7px 0 #4aa19e;
  box-shadow: 0 7px 0 #4aa19e;
  border: none;
  font-size: 2rem;
  font-weight: bold;
  text-align: center;
  line-height: 60px;
}
@media screen and (min-width: 600px) {
  .formBtn a {
    height: 100px;
    line-height: 100px;
  }
}
.formBtn a:hover {
  -webkit-transform: translate3d(0, 7px, 1px);
  -moz-transform: translate3d(0, 7px, 1px);
  -ms-transform: translate3d(0, 7px, 1px);
  -o-transform: translate3d(0, 7px, 1px);
  transform: translate3d(0, 7px, 1px);
  -webkit-box-shadow: none;
  box-shadow: none;
  -webkit-transition: none;
  -moz-transition: none;
  -ms-transition: none;
  -o-transition: none;
  transition: none;
}

#last_sec dl dt {
  font-size: 1.5rem;
}
#last_sec dl dd {
  font-size: 1.5rem;
  margin-bottom: 10px;
}
@media screen and (min-width: 600px) {
  #last_sec .prof_img {
    position: static;
    float: left;
    margin: 0 45px 15px 0;
    width: 205px;
  }
}

.box_gray {
  background-color: #E0E0E0;
  padding: 4%;
}

@media screen and (min-width: 600px) {
  .bottom_logo_outer {
    width: 400px;
  }
}
#bottom_logo {
  width: 38%;
  margin: 0 auto;
}
@media screen and (min-width: 600px) {
  #bottom_logo {
    width: 100%;
  }
}

#gmap {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}

#gmap iframe,
#gmap object,
#gmap embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media screen and (min-width: 600px) {
  #bottom_nav {
    text-align: center;
  }
  #bottom_nav .sp_cont {
    display: none;
  }
}
@media screen and (min-width: 600px) {
  #bottom_nav li {
    display: inline-block;
    margin-right: 20px;
  }
}
#bottom_nav li a {
  color: #232F3A;
  text-decoration: none;
}
#bottom_nav li a:hover {
  color: #56BDB9;
}
#bottom_nav li a:hover .bb {
  border-bottom: 1px solid #56BDB9;
}
#bottom_nav li a .bb {
  border-bottom: 1px solid #232F3A;
}

footer {
  background-color: #232f3a;
  color: #fff;
  text-align: center;
  padding: 20px 0;
}
footer small {
  font-size: 1.2rem;
}

.inline_content {
  width: 75%;
  overflow: hidden;
  background-color: #FFF;
  margin: 30% auto 0;
  padding: 10%;
  text-align: center;
  -webkit-border-radius: 10px;
  border-radius: 10px;
}
.inline_content p {
  font-size: 1.8rem;
}

.tel_btn a {
  display: block;
  width: 100%;
}
