@charset "UTF-8";
/*
Author: zelo marketing
Author URI: https://zelo.jp/
*/
/*
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
reset
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ 
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video, a {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  font-weight: normal;
  box-sizing: border-box; }

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

body {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
  line-height: 1.8; }

div {
  overflow: hidden; }

p {
  color: #333; }

ol, ul {
  overflow: hidden;
  list-style: none;
  list-style-type: none; }

a, a:hover {
  text-decoration: none; }

a {
  transition: all .3s; }

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

img {
  vertical-align: bottom; }

/*
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
common
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
*/
/*----- レイアウト　-----------*/
#wrap {
  background: #fff; }

.inner {
  max-width: 1000px;
  margin: 0 auto;
  overflow: hidden; }

section {
  max-width: 100%;
  margin: 20px 0;
  padding: 20px 0;
  overflow: hidden; }

.sectionMain {
  max-width: 100%;
  margin: 20px 0;
  padding: 20px 0;
  overflow: hidden; }

/*----- フォント・見出し　-------------*/
p {
  padding: 0 15px;
  margin-bottom: 20px; }

h1 {
  font-size: 20px;
  color: #eee;
  font-weight: normal;
  padding: 5px 15px; }

h2 {
  font-size: 22px;
  color: #555;
  font-weight: bold;
  background-image: url("./img/h2Icon.png");
  background-repeat: no-repeat;
  background-position: left center;
  padding-left: 35px;
  margin: 0 10px; }

h3 {
  font-size: 20px;
  color: #777;
  font-weight: bold; }

/*----- フォント・ラベル装飾、etc　----*/
.redbold {
  color: red;
  font-size: 22px;
  font-weight: bold; }

.marker {
  background: linear-gradient(transparent 60%, #ffb400 60%);
  background: -webkit-linear-gradient(transparent 60%, #ffb400 60%);
  background: -webkit-gradient(transparent 60%, #ffb400 60%);
  font-weight: bold; }

/*-------- header --------*/
header .headerMain {
  background-image: url("./img/jennyMainPc.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  height: auto; }
  header .headerMain .mainImgPc .mainImgPcTxt {
    margin-top: 10%;
    margin-bottom: 15%; }
    header .headerMain .mainImgPc .mainImgPcTxt img {
      width: 100vw;
      max-width: 65%; }

@media (min-width: 350px) and (max-width: 768px) {
  header .headerMain {
    background-image: url("./img/jennyMainSp.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    height: auto; }
    header .headerMain .mainImgPc {
      display: none; }
    header .headerMain .mainImgSpTxt {
      margin-top: 24%;
      margin-bottom: 25%;
      margin-left: 3%; }
      header .headerMain .mainImgSpTxt img {
        width: 100vw;
        max-width: 85%; } }

@media (min-width: 768px) {
  header .headerMain .mainImgSp {
    display: none; } }

/*-------- gnav　---------*/
#gnav {
  background: #022754;
  -webkit-box-shadow: 0px 5px 10px 1px #999;
  -moz-box-shadow: 0px 5px 10px 1px #999;
  -ms-box-shadow: 0px 5px 10px 1px #999;
  -o-box-shadow: 0px 5px 10px 1px #999;
  box-shadow: 0px 5px 10px 1px #999; }
  #gnav ul li {
    float: left;
    width: 33.3%;
    border-left: 1px solid #fff; }
    #gnav ul li a {
      text-align: center;
      display: block;
      padding: 30px 0;
      color: #fff; }
      #gnav ul li a:hover {
        background: #0a64c5; }
    #gnav ul li:last-child {
      border-right: 1px solid #fff; }

/*-------- #contents　---------*/
#contents #breadCrumb {
  margin: 15px 10px 0;
  overflow: hidden; }
  #contents #breadCrumb li {
    float: left;
    margin-right: 20px; }
    #contents #breadCrumb li:after {
      content: ">";
      padding-left: 20px; }
    #contents #breadCrumb li:last-child:after {
      content: none; }
#contents .consept {
  border-width: 0px 0px 2px 0px;
  border-style: solid;
  border-color: #052554; }
  #contents .consept .splitLeft {
    float: left;
    width: 70%; }
  #contents .consept .splitRight {
    float: right;
    width: 30%; }
#contents .voice .staffMenu {
  margin: 40px 0; }
  #contents .voice .staffMenu li {
    float: left;
    width: 28%;
    margin-left: 4%; }
    #contents .voice .staffMenu li img {
      width: 100%; }
    #contents .voice .staffMenu li a:hover {
      opacity: 0.8; }
    #contents .voice .staffMenu li:last-child {
      margin: 0 4%; }
#contents .voice .sectionMain .staffColumn {
  padding: 0 4%;
  margin-bottom: 40px; }
  #contents .voice .sectionMain .staffColumn .staffProf {
    margin-bottom: 30px; }
    #contents .voice .sectionMain .staffColumn .staffProf ul {
      border-width: 2px 2px 2px 2px;
      border-style: solid;
      border-color: #052554; }
      #contents .voice .sectionMain .staffColumn .staffProf ul .staffPhoto img {
        width: 100%; }
      #contents .voice .sectionMain .staffColumn .staffProf ul .staffTxt .staffTitle {
        color: #043472;
        border-bottom: dotted 4px #FFB400;
        padding-bottom: 5px; }
      #contents .voice .sectionMain .staffColumn .staffProf ul .staffTxt span {
        font-weight: bold;
        color: #555;
        width: 90%;
        display: inline-block;
        margin: 3% 5%; }
#contents .details .detailsColumn dl dd .tag1 {
  padding: 5px 12px;
  border-radius: 10px;
  margin-right: 10px;
  font-size: 13px;
  background: #043472;
  color: #fff; }
#contents .details .detailsColumn dl dd .tag2 {
  padding: 5px 12px;
  border-radius: 10px;
  margin-right: 10px;
  font-size: 13px;
  background: #ffb400;
  color: #fff; }
#contents .access {
  margin-bottom: 40px; }
  #contents .access dl {
    margin: 0 auto;
    width: 95%;
    overflow: hidden; }
  #contents .access dt {
    float: left;
    width: 25%;
    padding: 20px 15px;
    border-bottom: 2px solid #052554;
    box-sizing: border-box;
    font-weight: bold; }
  #contents .access dd {
    margin-left: 25%;
    padding: 20px 15px;
    border-bottom: 2px solid #d9dce3;
    background: #fff;
    margin-bottom: 0; }
  #contents .access dd:after {
    display: block;
    clear: both; }

@media (min-width: 350px) and (max-width: 768px) {
  #contents .splitLeft {
    float: none;
    width: 100%; }
  #contents .splitRight {
    float: none;
    width: 100%; }
  #contents .splitRight img {
    margin: 0 auto;
    display: block;
    width: 50%;
    height: auto; }
  #contents .consept .splitLeft {
    float: none;
    width: 100%; }
  #contents .consept .splitRight {
    float: none;
    width: 100%; }
  #contents .sectionMain .staffColumn {
    padding: 0 4%;
    margin-bottom: 40px; }
    #contents .sectionMain .staffColumn .staffProf {
      margin-bottom: 30px; }
      #contents .sectionMain .staffColumn .staffProf ul {
        width: 100%;
        margin: 0 auto; }
      #contents .sectionMain .staffColumn .staffProf .staffTxt .staffTitle {
        font-size: 20px; }
      #contents .sectionMain .staffColumn .staffProf .staffTxt span {
        font-size: 18px; }
  #contents .details .detailsColumn {
    padding: 0 4%;
    margin-bottom: 40px; }
    #contents .details .detailsColumn dl {
      margin: 5px auto 0;
      width: 100%;
      overflow: hidden;
      border: 1px solid #ccc;
      border-top: none;
      background: #eee; }
      #contents .details .detailsColumn dl dt {
        width: 100%;
        padding: 5px 10px;
        border-top: 1px solid #ccc;
        box-sizing: border-box;
        font-weight: normal;
        color: #000; }
      #contents .details .detailsColumn dl dd {
        padding: 10px;
        border-top: 1px solid #ccc;
        background: #fff;
        margin-bottom: 0; }
        #contents .details .detailsColumn dl dd:after {
          display: block;
          clear: both; }
  #contents .voice .staffMenu {
    display: none; }
  #contents .access dl {
    margin: 0 auto;
    width: 95%;
    overflow: hidden; }
  #contents .access dt {
    float: none;
    width: 100%;
    padding: 20px 15px;
    border-bottom: 2px solid #052554;
    box-sizing: border-box;
    font-weight: bold; }
  #contents .access dd {
    margin-left: 0;
    padding: 20px 15px;
    border-bottom: 2px solid #d9dce3;
    background: #fff;
    margin-bottom: 0; }
  #contents .access dd:after {
    display: block;
    clear: both; }
  #contents .access dt {
    background: #f6f6f6; } }

@media (min-width: 768px) {
  #contents .consept .splitRight img {
    margin: 0 auto;
    display: block;
    width: 100%;
    height: auto; }
  #contents .sectionMain .staffColumn {
    padding: 0 4%;
    margin-bottom: 40px; }
    #contents .sectionMain .staffColumn .staffProf {
      margin-bottom: 30px; }
      #contents .sectionMain .staffColumn .staffProf ul {
        border-width: 2px 2px 2px 2px;
        border-style: solid;
        border-color: #052554;
        width: 100%;
        margin: 0 auto; }
        #contents .sectionMain .staffColumn .staffProf ul .staffPhoto {
          float: left;
          width: 40%; }
        #contents .sectionMain .staffColumn .staffProf ul .staffTxt {
          float: right;
          width: 60%; }
          #contents .sectionMain .staffColumn .staffProf ul .staffTxt .staffTitle {
            font-size: 22px; }
          #contents .sectionMain .staffColumn .staffProf ul .staffTxt span {
            font-size: 20px; }
  #contents .details .detailsColumn {
    padding: 0 4%;
    margin-bottom: 40px; }
    #contents .details .detailsColumn dl {
      margin: 5px auto;
      width: 100%;
      overflow: hidden;
      border: 1px solid #ccc;
      border-top: none;
      background: #eee; }
      #contents .details .detailsColumn dl dt {
        float: left;
        width: 25%;
        padding: 10px 15px;
        border-top: 1px solid #ccc;
        box-sizing: border-box;
        font-weight: normal;
        color: #000; }
      #contents .details .detailsColumn dl dd {
        margin-left: 25%;
        padding: 10px 15px;
        border-left: 1px solid #ccc;
        border-top: 1px solid #ccc;
        background: #fff;
        margin-bottom: 0; }
        #contents .details .detailsColumn dl dd:after {
          display: block;
          clear: both; } }

/*-------- footer　---------*/
footer {
  background: #043472; }
  footer .splitLeft {
    float: left;
    width: 60%; }
  footer .splitRight {
    float: right;
    width: 40%; }
  footer .splitLeft {
    margin: 10px 0;
    padding-top: 10px; }
    footer .splitLeft img {
      width: 80%;
      margin: 0 auto;
      margin-bottom: 10px;
      display: block; }
  footer .splitRight {
    margin: 20px 0; }
    footer .splitRight a {
      color: #fff; }
    footer .splitRight ul {
      margin: 10px 0;
      padding: 10px 0;
      border-width: 1px 0px 1px 0px;
      border-style: solid;
      border-color: #052554; }
      footer .splitRight ul li {
        float: left;
        margin-right: 40px; }
  footer #footerMenu {
    width: 80%;
    margin: 20px 10%;
    text-align: center; }
    footer #footerMenu ul li {
      float: left;
      width: 33%;
      margin: 0; }
  footer .cr {
    background: #022754;
    color: #fff;
    text-align: center;
    font-size: 13px;
    padding: 5px 0; }
    footer .cr a {
      color: #fff;
      font-weight: bold; }

@media (min-width: 350px) and (max-width: 768px) {
  footer .splitLeft {
    float: none;
    width: 100%; }
  footer .splitRight {
    float: none;
    width: 80%; }
  footer .splitRight {
    margin: 20px auto; } }
