body {
  position: relative; }

#content {
  min-width: 1000px;
  text-align: center; }
  @media screen and (max-width: 768px) {
    #content {
      min-width: 0;
      padding-top: 70px; } }
  #content .kv_pc {
    width: 100%;
    height: 586px;
    background: url(/common/img/bg_top.jpg) top center no-repeat;
    position: relative;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -ms-background-size: cover;
    background-size: cover; }
    @media screen and (max-width: 768px) {
      #content .kv_pc {
        display: none; } }
    #content .kv_pc .bg_kv {
      background: url(/outline/img/kv.jpg) top left no-repeat;
      -webkit-background-size: cover;
      -moz-background-size: cover;
      -ms-background-size: cover;
      background-size: cover;
      height: 400px;
      width: calc(100% - 300px);
      position: absolute;
      top: 99px;
      right: 0; }
      @media screen and (max-width: 1700px) {
        #content .kv_pc .bg_kv {
          width: 1400px; } }
    #content .kv_pc h1 {
      position: absolute;
      top: 247px;
      left: 50%;
      -moz-transform: translate(-50%, 0);
      -webkit-transform: translate(-50%, 0);
      -o-transform: translate(-50%, 0);
      -ms-transform: translate(-50%, 0);
      transform: translate(-50%, 0); }
  #content .kv_sp {
    display: none; }
    @media screen and (max-width: 768px) {
      #content .kv_sp {
        display: block;
        margin-bottom: 30px; } }
  @media screen and (max-width: 768px) and (max-width: 768px) {
    #content .kv_sp {
      margin-bottom: 0; } }
    @media screen and (max-width: 768px) {
        #content .kv_sp img {
          width: 100%; }
        #content .kv_sp h1 {
          margin-bottom: 30px; } }
    @media screen and (max-width: 768px) and (max-width: 768px) {
      #content .kv_sp h1 {
        margin-bottom: 0; } }

  #content .inner {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto; }
  #content .pankuzu {
    max-width: 1000px;
    margin: 0 auto;
    width: 100%;
    text-align: left;
    padding: 15px 0 0; }
    @media screen and (max-width: 768px) {
      #content .pankuzu {
        margin-bottom: 15px; } }
    #content .pankuzu ul {
      font-size: 0; }
      #content .pankuzu ul li {
        display: inline-block;
        font-size: 14px;
        font-size: 1.4rem; }
        @media screen and (max-width: 768px) {
          #content .pankuzu ul li {
            font-size: 12px;
            font-size: 1.2rem; } }
        #content .pankuzu ul li a, #content .pankuzu ul li strong {
          font-weight: normal;
          font-size: 14px;
          font-size: 1.4rem; }
          @media screen and (max-width: 768px) {
            #content .pankuzu ul li a, #content .pankuzu ul li strong {
              font-size: 12px;
              font-size: 1.2rem; } }
  @media screen and (max-width: 768px) {
    #content .bgFlower {
      background: url(/outline/img/bg_flower.jpg) top 200px center no-repeat;
      background-size: 90%; } }
  #content .overview {
    background: url(/outline/img/bg_flower.jpg) left bottom -250px no-repeat;
    padding-bottom: 100px; }
    @media screen and (max-width: 768px) {
      #content .overview {
        background: rgba(255, 255, 255, 0.75);
        padding: 0 3.5% 70px; } }
    #content .overview .ttl {
      margin: 35px 0 15px; }
      @media screen and (max-width: 768px) {
        #content .overview .ttl {
          margin: 25px 0 15px; }
          #content .overview .ttl img {
            width: 170px; } }
    #content .overview h2 {
      font-size: 18px;
      font-family: "Noto Serif Japanese" , serif;
      font-weight: 400 !important;
      font-feature-settings: 'palt' 1;
      margin-bottom: 25px; }
      @media screen and (max-width: 768px) {
        #content .overview h2 {
          font-size: 15px;
          margin-bottom: 15px; } }
    #content .overview table {
      width: 700px;
      margin: 0 auto; }
      @media screen and (max-width: 768px) {
        #content .overview table {
          width: 100%; } }
      #content .overview table th {
        border-bottom: 1px solid #dadada;
        padding: 20px 0;
        width: 320px;
        text-align: left; }
        @media screen and (max-width: 768px) {
          #content .overview table th {
            display: block;
            border: none;
            width: 100%;
            padding: 20px 0 0;
            font-weight: bold;
            font-size: 16px; } }
      #content .overview table td {
        border-bottom: 1px solid #dadada;
        padding: 20px 0;
        width: 370px;
        text-align: left; }
        @media screen and (max-width: 768px) {
          #content .overview table td {
            display: block;
            width: 100%;
            padding: 10px 0; } }
  #content .profile {
    width: 100%;
    height: 790px;
    background: url(/outline/img/bg_orange.jpg) center center;
    background-size: cover;
    padding: 15px 0 70px;
    text-align: left; }
    @media screen and (max-width: 768px) {
      #content .profile {
        height: auto;
        padding: 15px 3.5% 40px; } }
    #content .profile .ttl {
      text-align: center;
      margin: -54px 0 20px;
      padding-left: 370px; }
      @media screen and (max-width: 768px) {
        #content .profile .ttl {
          padding: 0;
          width: 200px;
          margin: -50px auto 20px; } }
    #content .profile .inner {
      max-width: 1000px;
      width: 100%;
      margin: 0 auto; }
      #content .profile .inner .boxL {
        float: left;
        width: 395px; }
        @media screen and (max-width: 768px) {
          #content .profile .inner .boxL {
            float: none;
            width: 100%; } }
        #content .profile .inner .boxL .img {
          text-align: center; }
          @media screen and (max-width: 768px) {
            #content .profile .inner .boxL .img {
              padding: 0 20%; } }
        #content .profile .inner .boxL .txt {
          padding: 20px;
          font-size: 14px;
          color: #ffffff;
          background-color: #011e54;
          line-height: 1.8; }
          @media screen and (max-width: 768px) {
            #content .profile .inner .boxL .txt {
              padding: 10px 5%;
              font-size: 13px; } }
      #content .profile .inner .boxR {
        float: right;
        width: 605px;
        padding-top: 20px; }
        @media screen and (max-width: 768px) {
          #content .profile .inner .boxR {
            float: none;
            width: 100%;
            padding: 0; } }
        #content .profile .inner .boxR .name {
          font-size: 18px;
          font-weight: bold;
          margin-bottom: 15px;
          padding-left: 15px; }
          @media screen and (max-width: 768px) {
            #content .profile .inner .boxR .name {
              padding: 20px 0 0; } }
        #content .profile .inner .boxR .txt {
          font-size: 14px;
          padding-left: 15px;
          line-height: 1.8; }
          @media screen and (max-width: 768px) {
            #content .profile .inner .boxR .txt {
              padding: 0 0 20px; } }
        #content .profile .inner .boxR .txt2 {
          background-color: #ffffff;
          font-size: 15px;
          padding: 25px 36px;
          line-height: 1.6;
          margin: 22px 0 0 -16px; }
          @media screen and (max-width: 768px) {
            #content .profile .inner .boxR .txt2 {
              font-size: 14px;
              padding: 15px 5%;
              margin: 20px 0 0 0; } }
        @media screen and (max-width: 768px) {
          #content .profile .inner .boxR .txt3 {
            color: #ffffff;
            background-color: #011e54;
            line-height: 1.8;
            padding: 10px 5%;
            font-size: 13px; } }
  #content .effort {
    background: url(/outline/img/bg_effort.gif) left top repeat;
    padding: 60px 0;
    height: 700px;
    position: relative; }
    @media screen and (max-width: 768px) {
      #content .effort {
        padding: 30px 0;
        height: auto; } }
    #content .effort .bg {
      background: url(/outline/img/bg_effort.jpg) top left no-repeat;
      -webkit-background-size: cover;
      -moz-background-size: cover;
      -ms-background-size: cover;
      background-size: cover;
      height: 700px;
      width: 30%;
      position: absolute;
      top: 0;
      right: 0; }
    #content .effort .cont {
      width: 860px;
      margin: 0;
      padding: 0 200px 0 0; }
      @media screen and (max-width: 1450px) {
        #content .effort .cont {
          padding: 0 20% 0 0; } }
      @media screen and (max-width: 768px) {
        #content .effort .cont {
          padding: 0 3.5%;
          width: 100%; } }
      #content .effort .cont .ttl {
        text-align: center; }
        @media screen and (max-width: 768px) {
          #content .effort .cont .ttl {
            padding: 0;
            width: 200px;
            margin: 0 auto; } }
      #content .effort .cont .flower {
        padding: 20px 0; }
      #content .effort .cont .txt {
        margin-top: 45px; }
        @media screen and (max-width: 768px) {
          #content .effort .cont .txt {
            margin-top: 0; } }
        #content .effort .cont .txt p {
          text-align: left;
          margin-bottom: 15px;
          font-size: 16px;
          line-height: 1.7; }
          @media screen and (max-width: 768px) {
            #content .effort .cont .txt p {
              font-size: 14px; } }
  #content .contact_area {
    text-align: center;
    padding: 70px 0; }
    @media screen and (max-width: 768px) {
      #content .contact_area {
        width: 100%;
        padding: 35px 3.5%; } }
    #content .contact_area .ttl {
      margin-bottom: 15px; }
      @media screen and (max-width: 768px) {
        #content .contact_area .ttl img {
          width: 140px; } }
    #content .contact_area h2 {
      font-size: 18px;
      font-size: 1.8rem;
      font-family: "Noto Serif Japanese" , serif;
      font-weight: 400 !important;
      font-feature-settings: 'palt' 1;
      margin-bottom: 25px; }
      @media screen and (max-width: 768px) {
        #content .contact_area h2 {
          font-size: 15px;
          font-size: 1.5rem;
          margin-bottom: 15px; } }
    #content .contact_area p.txt {
      font-size: 20px;
      font-size: 2rem;
      font-family: "Noto Serif Japanese" , serif;
      font-weight: 400 !important;
      font-feature-settings: 'palt' 1;
      margin-bottom: 35px; }
      @media screen and (max-width: 768px) {
        #content .contact_area p.txt {
          font-size: 16px;
          font-size: 1.6rem;
          margin-bottom: 20px; } }
    #content .contact_area .btn_area {
      width: 750px;
      margin: 0 auto;
      background: url(/outline/img/line_dotto.gif) top center repeat-x, url(/outline/img/line_dotto.gif) bottom center repeat-x;
      padding: 35px 0;
      -js-display: flex;
      display: -webkit-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: -webkit- center;
      align-items: center;
      -webkit-justify-content: space-between;
      justify-content: -webkit- space-between;
      justify-content: space-between; }
      @media screen and (max-width: 768px) {
        #content .contact_area .btn_area {
          display: block;
          text-align: center;
          width: 100%;
          padding: 20px 0; } }
      #content .contact_area .btn_area p {
        font-size: 24px;
        font-size: 2.4rem;
        font-family: "Noto Serif Japanese" , serif;
        font-weight: 400 !important;
        font-feature-settings: 'palt' 1;
        line-height: 1.4; }
        @media screen and (max-width: 768px) {
          #content .contact_area .btn_area p {
            font-size: 18px;
            font-size: 1.8rem;
            margin-bottom: 10px; } }
