@charset "UTF-8";
/*
* style.cssを一部クリア
*/
h1:not(.site-title):before,
h2:before,
.entry .entry-title:before {
  display: none; }

html[lang="ja"] * {
  outline: none;
  line-height: 1; }

html[lang="ja"] .site * {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif; }

body {
  font-weight: 500;
  line-height: 1.2;
  color: #080808; }
  body.mask {
    overflow: hidden; }
    body.mask::before {
      position: absolute;
      display: block;
      content: "";
      width: 100%;
      height: 100%;
      top: 0;
      left: 0;
      z-index: 10;
      background: rgba(0, 0, 0, 0.3); }

@media all and (-ms-high-contrast: none) {
  body {
    vertical-align: middle; } }
a, a:link, a:visited {
  color: #002d5d;
  outline: none;
  text-decoration: none; }

a:focus {
  text-decoration: none;
  outline: none; }

img {
  -webkit-backface-visibility: hidden; }

.site-content {
  width: 1040px;
  max-width: 100%;
  margin: 10px auto 0;
  padding: 0; }
  .site-content .advertizing {
    clear: both; }
  .site-content #primary {
    width: 100%;
    max-width: 100%;
    padding: 0 10px; }
  .site-content #secondary {
    width: 100%;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding: 0; }

@media (min-width: 840px) {
  body.has_sidebar #primary {
    width: calc(100% - 320px);
    float: left; }
  body.has_sidebar #secondary {
    width: 300px;
    float: right; } }
.image-filters-enabled .entry .post-thumbnail::before, .image-filters-enabled .entry .post-thumbnail::after {
  display: none; }

html[lang="ja"] .entry-title, html[lang="ja"] .not-found .page-title, html[lang="ja"] .error-404 .page-title, html[lang="ja"] .has-larger-font-size, html[lang="ja"] h2 {
  font-size: 16px; }
html[lang="ja"] .site .fa {
  font-family: 'FontAwesome'; }

.entry {
  margin-top: 0; }
  .entry .entry-content > * {
    max-width: 100%; }

.entry .entry-meta a:hover,
.entry .entry-footer a:hover {
  transition: all 0.5s; }
  .entry .entry-meta a:hover[rel="tag"],
  .entry .entry-footer a:hover[rel="tag"] {
    color: #fff;
    background: #002d5d; }

a[rel="tag"] {
  display: inline-block;
  margin: 2px 10px 4px 0;
  padding: 3px 11px;
  font-size: 12px;
  font-weight: bold;
  color: #333;
  background: #ececec;
  border-radius: 30px; }
  a[rel="tag"]:hover {
    color: #fff;
    background: #002d5d; }

.entry .entry-content {
  margin: 0; }
.entry .entry-footer {
  margin: 0; }

@media (min-width: 768px) {
  .hfeed .entry .entry-header {
    margin: 0; }

  .entry .entry-content {
    max-width: 100%;
    padding: 0;
    font-weight: 500; }
  .entry .entry-footer {
    max-width: inherit; } }
.pc {
  display: block; }

.sp {
  display: none; }

@media (max-width: 1040px) {
  .pc {
    display: none; }

  .sp {
    display: block; } }
.mb0 {
  margin-bottom: 0; }

.loader {
  position: absolute;
  font-size: 10px;
  margin: 50px auto;
  text-indent: -9999em;
  width: 100px;
  height: 100px;
  top: calc(50% - 100px);
  left: calc(50% - 50px);
  border-radius: 50%;
  background: #ffffff;
  background: -moz-linear-gradient(left, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
  background: -webkit-linear-gradient(left, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
  background: -o-linear-gradient(left, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
  background: -ms-linear-gradient(left, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
  background: linear-gradient(to right, #ffffff 10%, rgba(255, 255, 255, 0) 42%);
  -webkit-animation: load3 1.4s infinite linear;
  animation: load3 1.4s infinite linear;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  z-index: 11; }

.loader:before {
  width: 50%;
  height: 50%;
  background: #ffffff;
  border-radius: 100% 0 0 0;
  position: absolute;
  top: 0;
  left: 0;
  content: ''; }

.loader:after {
  background: #b2b2b2;
  width: 75%;
  height: 75%;
  border-radius: 50%;
  content: '';
  margin: auto;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0; }

@-webkit-keyframes load3 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }
@keyframes load3 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }
.bcn_wrap {
  margin: 0 10px 20px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 12px; }
  .bcn_wrap span, .bcn_wrap a {
    display: inline-block;
    line-height: 22px;
    font-weight: 500; }
  .bcn_wrap span:first-child a::before {
    display: none; }
  .bcn_wrap a {
    position: relative;
    margin-right: 10px;
    padding: 0 5px;
    color: #fff;
    background: #002d5d; }
    .bcn_wrap a::before, .bcn_wrap a::after {
      position: absolute;
      display: block;
      content: "";
      top: 0; }
    .bcn_wrap a::before {
      left: -11px;
      border: 11px solid #002d5d;
      border-left: 11px solid transparent;
      border-right: 11px solid transparent; }
    .bcn_wrap a::after {
      right: -22px;
      border: 11px solid transparent;
      border-left: 11px solid #002d5d; }

.entry-header span.cat,
.entry-header a.category {
  margin-right: 3px;
  padding: 3px 10px;
  font-size: 12px;
  font-weight: bold;
  line-height: 1.1;
  color: #002d5d;
  border: 1px solid #002d5d;
  border-radius: 3px;
  vertical-align: middle;
  transition: all 0.5s;
  text-decoration: none; }
  .entry-header span.cat:hover,
  .entry-header a.category:hover {
    color: #fff;
    background: #002d5d; }

@media (min-width: 768px) {
  .entry .entry-header {
    margin: 0; } }
.entry .entry-content {
  font-size: 16px;
  font-weight: 500; }

h2.blue_bg_title {
  padding: 10px 15px 8px;
  color: #fff;
  background: #002d5d;
  line-height: 1.3;
  border-radius: 5px 5px 0 0; }

p.more {
  margin-top: 30px;
  font-size: 14px;
  line-height: 1;
  text-align: center; }
  p.more a {
    display: inline-block;
    max-width: 100%;
    padding: 10px 60px;
    background: #002d5d;
    color: #fff;
    font-weight: bold;
    border-radius: 30px;
    transition: all 0.4s; }
    p.more a::after {
      font-family: "Fontawesome";
      content: "\f105";
      display: inline-block;
      margin-left: 0.5em;
      font-weight: normal; }
    p.more a:hover {
      text-decoration: none;
      opacity: 0.8; }

input[type="radio"] {
  opacity: 0;
  position: absolute; }
  input[type="radio"]:checked + label::after {
    background: #f08c00; }

label.radio,
.gender + label {
  position: relative;
  padding-left: 24px;
  font-size: 14px;
  font-weight: bold;
  color: #002d5d;
  cursor: pointer; }
  label.radio::before,
  .gender + label::before {
    position: absolute;
    content: "";
    display: block;
    width: 18px;
    height: 18px;
    top: 0;
    left: 0;
    border: 1px solid #bababa;
    border-radius: 30px; }
  label.radio::after,
  .gender + label::after {
    position: absolute;
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    top: 4px;
    left: 4px;
    background: #bababa;
    border-radius: 30px; }

input[type="checkbox"] {
  opacity: 0;
  position: absolute; }
  input[type="checkbox"]:checked + label::after {
    opacity: 1; }

input[type="checkbox"] + label {
  position: relative;
  padding-left: 30px;
  font-size: 14px;
  font-weight: bold;
  color: #002d5d;
  cursor: pointer; }
  input[type="checkbox"] + label::before {
    position: absolute;
    content: "";
    display: block;
    width: 24px;
    height: 24px;
    top: -4px;
    left: 0;
    border: 1px solid #bababa;
    border-radius: 4px; }
  input[type="checkbox"] + label::after {
    position: absolute;
    content: "\e914";
    font-family: "nsj";
    display: block;
    top: 3px;
    left: 6px;
    font-size: 10px;
    color: #f08c00;
    opacity: 0; }

input[type="submit"] {
  display: block;
  padding: 0 30px;
  color: #fff;
  background: #002d5d;
  line-height: 56px;
  font-size: 18px; }

.icon-lock {
  color: #84840D; }

.text_ad {
  display: table;
  margin: 0 0 20px;
  font-size: 12px;
  font-weight: bold;
  line-height: 1.5; }
  .text_ad > * {
    display: table-cell; }
  .text_ad span {
    position: relative;
    margin-right: 10px;
    padding: 4px 15px 4px 10px;
    color: #fff;
    background: url(../images/blue_arrow.png) no-repeat left center;
    background-size: 100% 100%;
    vertical-align: middle;
    white-space: nowrap; }
  .text_ad a {
    padding: 5px; }

.site-main + .advertizing {
  margin-top: 60px;
  margin-bottom: 30px; }

.flex {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex; }

.seminar_slider_wrap {
  margin: 40px 0; }
  .seminar_slider_wrap .slick-prev, .seminar_slider_wrap .slick-next {
    min-height: 50px; }
    .seminar_slider_wrap .slick-prev::after, .seminar_slider_wrap .slick-next::after {
      display: block;
      font-family: "Fontawesome";
      content: "\f104";
      font-size: 48px;
      color: #002D5D;
      font-weight: normal; }
  .seminar_slider_wrap .slick-prev {
    left: 2px; }
    .seminar_slider_wrap .slick-prev::before {
      display: none; }
    .seminar_slider_wrap .slick-prev::after {
      content: "\f104"; }
  .seminar_slider_wrap .slick-next {
    right: 2px; }
    .seminar_slider_wrap .slick-next::before {
      display: none; }
    .seminar_slider_wrap .slick-next::after {
      content: "\f105"; }
  .seminar_slider_wrap .slick-disabled::after {
    display: none; }

.seminar_list {
  margin: 0 0 30px 0;
  padding: 0 15px; }

.seminar {
  margin: 0 12px; }
  .seminar a:hover {
    text-decoration: none; }
  .seminar h3 {
    margin: 0;
    font-size: 17px; }
  .seminar p {
    margin: 10px 0 0; }
  .seminar .img {
    display: table-cell;
    width: 200px;
    height: 200px;
    margin-left: auto;
    margin-right: auto;
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 5px;
    vertical-align: middle; }
    @media (min-width: 481px) {
      .seminar .img {
        max-width: 200px; } }
    @media (max-width: 480px) {
      .seminar .img {
        display: block;
        width: 100%;
        height: auto; } }
    .seminar .img img {
      margin: 0 auto;
      max-width: 178px;
      max-height: 178px; }
  .seminar .kouen {
    font-size: 16px;
    font-weight: bold;
    line-height: 1.5; }
    .seminar .kouen span {
      display: inline-block;
      padding: 5px 10px;
      font-size: 12px;
      color: #fff;
      background: #f08c00;
      border-radius: 30px;
      vertical-align: top; }

.entry-content span.meigara {
  color: #008000; }

.no-results.not-found .page-content {
  margin: 40px 0;
  font-size: 14px; }

.gsc-control-searchbox-only form.gsc-search-box {
  position: relative;
  margin: 0; }
  .gsc-control-searchbox-only form.gsc-search-box td {
    display: block;
    padding: 0;
    border: none; }
  .gsc-control-searchbox-only form.gsc-search-box td.gsc-input {
    width: 100%;
    padding-right: 0; }
  .gsc-control-searchbox-only form.gsc-search-box td.gsc-search-button {
    position: absolute;
    top: 0;
    right: 0;
    width: 44px;
    height: 40px; }
    .gsc-control-searchbox-only form.gsc-search-box td.gsc-search-button::before {
      position: absolute;
      display: block;
      font-family: "nsj";
      content: "\e908";
      width: 40px;
      line-height: 40px;
      top: 0;
      right: 0;
      text-align: center;
      color: #002d5d;
      z-index: 2;
      font-size: 21px; }
    .gsc-control-searchbox-only form.gsc-search-box td.gsc-search-button button {
      position: relative;
      width: 100%;
      height: 100%;
      padding: 0;
      opacity: 0;
      z-index: 3; }
  .gsc-control-searchbox-only form.gsc-search-box .gsc-input-box {
    padding: 0;
    border: none;
    background: none; }
  .gsc-control-searchbox-only form.gsc-search-box input.gsc-input {
    min-height: 38px;
    height: auto !important;
    padding: 5px 5px 5px 10px !important;
    font-size: 16px;
    border-radius: 5px !important;
    border: 1px solid #ccc !important; }
  .gsc-control-searchbox-only form.gsc-search-box td.gsib_b {
    display: none; }
  .gsc-control-searchbox-only form.gsc-search-box td.gsc-clear-button {
    display: none; }
  .gsc-control-searchbox-only form.gsc-search-box table {
    margin: 0;
    border: none; }

.header_search.sp .gsc-search-box-tools {
  width: calc(100% - 20px); }

.entry-content .search_results {
  margin-top: 0; }
  .entry-content .search_results .gsc-control-cse {
    padding: 0; }
  .entry-content .search_results .gsc-result-info {
    padding: 0; }
  .entry-content .search_results .gsc-selected-option-container {
    white-space: nowrap; }
    .entry-content .search_results .gsc-selected-option-container .gsc-selected-option {
      line-height: 27px; }
  .entry-content .search_results table, .entry-content .search_results td {
    border: none; }
  .entry-content .search_results .gs-bidi-start-align {
    line-height: 1.7; }
  .entry-content .search_results .gs-webResult > * {
    padding-left: 0; }
  .entry-content .search_results .gsc-table-result {
    margin-bottom: 0; }
  .entry-content .search_results .gs-no-results-result .gs-snippet {
    border: none;
    background: none; }
  .entry-content .search_results .gs-title {
    line-height: 1.5; }

.page404 h1.entry-title {
  color: #002d5d;
  font-size: 18px; }
.page404 p {
  font-size: 14px;
  line-height: 1.7; }

.adsbygoogle {
  display: block !important;
  margin-left: auto;
  margin-right: auto; }

.site-header .search-container-query {
  position: relative;
  flex-basis: 100%; }
  .site-header .search-container-query::after {
    position: absolute;
    display: block;
    font-family: "nsj";
    content: "\e908";
    width: 40px;
    line-height: 40px;
    top: 0;
    right: 0;
    text-align: center;
    color: #002d5d;
    z-index: 2;
    font-size: 21px; }
.site-header .search-query-text[type="search"] {
  min-height: 38px;
  padding: 5px 35px 5px 10px;
  font-size: 16px;
  border-radius: 5px; }
.site-header [data-header-hidden="true"] {
  display: none; }
.site-header .search-query-text {
  width: 100%; }

.search-result-header input[type="radio"] {
  width: 100%;
  height: 18px;
  margin-top: 4px;
  z-index: 2; }

.search-result-header {
  margin-bottom: 40px;
  padding: 20px;
  background: #f5f5f5;
  border: 1px solid #e6e6e6;
  border-radius: 10px; }
  .search-result-header [class*="search-container-"] {
    margin-bottom: 20px; }
  .search-result-header .search-container-category,
  .search-result-header .search-container-order {
    flex-grow: 2;
    overflow: hidden; }
  .search-result-header .search-query-text {
    width: 100%; }
  .search-result-header .search-query-text,
  .search-result-header .postform,
  .search-result-header .datepicker {
    min-height: 38px;
    padding: 5px 10px;
    font-size: 16px;
    border-radius: 5px;
    border-color: #ccc; }
    .search-result-header .search-query-text:focus,
    .search-result-header .postform:focus,
    .search-result-header .datepicker:focus {
      border-color: #0073aa;
      outline: thin solid rgba(0, 115, 170, 0.15);
      outline-offset: -4px; }
  .search-result-header .postform {
    width: 100%; }
  .search-result-header .search-label {
    display: block;
    margin-bottom: 5px;
    color: #002d5d;
    font-size: 14px;
    font-weight: bold; }
  .search-result-header .search-container-order .search-label {
    margin-bottom: 10px; }
  .search-result-header .search-date-wrap {
    display: flex;
    align-items: center;
    justify-content: space-between; }
    .search-result-header .search-date-wrap .datepicker {
      width: calc(50% - 20px); }
    .search-result-header .search-date-wrap .separate {
      width: 40px;
      text-align: center; }
  .search-result-header .search-radio-wrap {
    position: relative;
    margin-right: 10px;
    margin-bottom: 5px; }
  .search-result-header .search-submit {
    width: 140px;
    margin-left: auto;
    margin-right: auto;
    font-size: 16px;
    line-height: 38px; }
  .search-result-header .example {
    margin-top: 5px;
    font-size: 14px; }
  .search-result-header .search-note {
    margin-bottom: 0;
    padding-left: 1em;
    text-indent: -1em;
    font-size: 14px;
    line-height: 1.5; }
  @media (min-width: 840px) {
    .search-result-header .search-row {
      width: 100%;
      display: flex; }
    .search-result-header .search-radio-wrap {
      display: block; }
    .search-result-header .search-container-query,
    .search-result-header .search-container-date {
      width: 66%;
      flex-shrink: 0;
      margin-right: 30px; } }

.search_results .nsj_post_list article.seminar {
  margin-top: 0;
  padding: 20px 0 20px 40px; }
  .search_results .nsj_post_list article.seminar.free_contents:not(.top_post) {
    padding-left: 40px; }
.search_results article.type-seminar .entry-content {
  display: none; }
.search_results mark {
  background: #bfdcea; }

.ui-datepicker.ui-widget {
  font-size: 16px;
  z-index: 11 !important; }

.search-query-text:-ms-input-placehold {
  color: #757575;
  opacity: 1; }

.search-query-text::placeholder {
  color: #757575;
  opacity: 1; }

.search-query-text::-ms-input-placeholder {
  color: #757575;
  opacity: 1; }

:-ms-input-placeholder {
  color: #757575;
  opacity: 1; }

/*
* header, navigation
*/
header.site-header {
  padding: 20px 0 0; }
  header.site-header .site-title img {
    max-width: 210px; }
  header.site-header .site-branding-container {
    overflow: hidden;
    margin-bottom: 20px; }
  header.site-header .header_info_area {
    display: inline-block;
    margin: 0 20px; }
    header.site-header .header_info_area .text_ad {
      display: block;
      max-width: 100%;
      margin: 0 0 5px; }
      header.site-header .header_info_area .text_ad > * {
        display: inline-block;
        vertical-align: middle; }
      header.site-header .header_info_area .text_ad span {
        width: 55px;
        min-width: 55px;
        line-height: 1.1; }
      header.site-header .header_info_area .text_ad .advertizing {
        position: relative;
        width: calc(100% - 70px); }
      header.site-header .header_info_area .text_ad a {
        display: block;
        max-width: 470px;
        padding: 0;
        white-space: nowrap;
        overflow: hidden;
        line-height: 24px;
        text-overflow: ellipsis;
        font-size: 14px; }
    header.site-header .header_info_area .advertizing {
      display: inline-block; }
  header.site-header .header_right_area {
    float: right;
    min-width: 300px; }
    header.site-header .header_right_area > *:first-child {
      margin-right: 10px; }
    header.site-header .header_right_area a {
      display: inline-block;
      width: 145px;
      text-align: center;
      color: #fff;
      font-weight: bold;
      font-size: 14px;
      border-radius: 4px;
      line-height: 34px;
      text-decoration: none;
      transition: all 0.4s; }
      header.site-header .header_right_area a.mypage {
        color: #002d5d;
        background: #fff;
        border: 1px solid #002d5d; }
        header.site-header .header_right_area a.mypage:hover {
          color: #fff;
          background: #002d5d; }
      header.site-header .header_right_area a.login, header.site-header .header_right_area a.logout {
        background: #002d5d; }
      header.site-header .header_right_area a.apply {
        background: #f08c00; }
      header.site-header .header_right_area a:hover {
        opacity: 0.7; }
      @media (max-width: 1040px) {
        header.site-header .header_right_area a {
          width: inherit;
          min-width: 48px;
          padding: 3px;
          font-size: 10px;
          line-height: 1;
          vertical-align: sub; }
          header.site-header .header_right_area a i {
            display: block;
            margin-bottom: 3px;
            font-size: 20px;
            line-height: 1; }
          header.site-header .header_right_area a.mypage, header.site-header .header_right_area a.login, header.site-header .header_right_area a.logout {
            color: #002d5d;
            background: none; }
          header.site-header .header_right_area a.apply {
            color: #f08c00;
            background: none; }
          header.site-header .header_right_area a.mypage {
            border: none; }
            header.site-header .header_right_area a.mypage:hover {
              color: #002d5d;
              background: none; } }
  header.site-header .header_search {
    max-width: 100%;
    margin-top: 10px;
    font-size: 14px; }
    @media (min-width: 1041px) {
      header.site-header .header_search {
        min-height: 38px; } }
    header.site-header .header_search .search-form {
      position: relative; }
      header.site-header .header_search .search-form > label::after {
        position: absolute;
        display: block;
        font-family: "nsj";
        content: "\e908";
        top: 4px;
        right: 10px;
        color: #002d5d;
        z-index: 2;
        font-size: 21px; }
    header.site-header .header_search .search-field {
      width: 100%;
      padding-right: 40px;
      border-radius: 5px; }
    header.site-header .header_search .search-submit {
      position: absolute;
      opacity: 0;
      width: 40px;
      height: 100%;
      top: 0;
      right: 0;
      background: none;
      padding: 1em;
      z-index: 3; }
    header.site-header .header_search #search-clear {
      display: none; }
  header.site-header .header_search.sp {
    max-width: 100%;
    margin-top: 0;
    background: #e6e6e6; }
    header.site-header .header_search.sp form {
      margin: 10px; }

@media (max-width: 1040px) {
  header.site-header {
    padding: 0; }
    header.site-header .site-branding-container {
      margin-bottom: 0; }
      header.site-header .site-branding-container .site-branding {
        display: block;
        padding: 0; }
      header.site-header .site-branding-container .logo {
        height: 48px;
        padding-left: 48px;
        padding-top: 8px;
        border-bottom: 1px solid #ccc;
        font-size: 12px; }
      header.site-header .site-branding-container .site-title img {
        max-height: 33px; }
    header.site-header .header_info_area {
      width: 100%;
      margin: 10px 10px 5px; }
      header.site-header .header_info_area .text_ad {
        max-width: calc(100% - 20px); }
        header.site-header .header_info_area .text_ad a {
          max-width: inherit; }
          header.site-header .header_info_area .text_ad a::after {
            position: absolute;
            display: block;
            content: "\f105";
            font-family: "Fontawesome";
            top: 0;
            right: -5px;
            color: #002d5d; }
    header.site-header .header_right_area {
      position: absolute;
      top: 0;
      right: 0;
      min-width: inherit; }
      header.site-header .header_right_area .header_search {
        display: inline-block;
        width: 48px;
        height: 48px;
        margin: 0; }
        header.site-header .header_right_area .header_search::before {
          display: block;
          line-height: 48px;
          text-align: center;
          background: #002d5d;
          font-family: "nsj";
          content: "\e908";
          color: #fff;
          font-size: 20px; }
        header.site-header .header_right_area .header_search form {
          display: none; }
    header.site-header .site-branding > .header_search {
      position: relative;
      max-height: 0;
      overflow: hidden;
      transition-duration: 0.5s;
      transition-property: max-height;
      z-index: 10; }
      header.site-header .site-branding > .header_search.open {
        max-height: 60px; } }
@media (max-width: 840px) {
  header.site-header {
    padding: 0; } }
@media (min-width: 768px) {
  .site-branding {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 1040px;
    margin: 0 auto;
    padding: 0 10px; } }
/*
* フッター上常設ADバナー用
*/
.sidebar + .advertizing {
  padding-top: 40px; }

/*
* フッター
*/
@media (min-width: 1168px) {
  #colophon .widget-column .widget {
    width: 100%;
    margin-right: 0; } }

#colophon .site-info {
  margin: 0; }

footer#colophon {
  margin-top: 80px; }
  footer#colophon aside.widget-area {
    margin: 0 auto; }
    footer#colophon aside.widget-area .widget_nav_menu {
      padding: 15px 0;
      text-align: center;
      background: #ececec; }
      footer#colophon aside.widget-area .widget_nav_menu a {
        color: #666;
        padding: 0 10px 0 5px;
        font-size: 12px;
        border-right: 1px solid #666; }
        footer#colophon aside.widget-area .widget_nav_menu a:hover {
          text-decoration: underline; }
      footer#colophon aside.widget-area .widget_nav_menu li {
        margin-left: 0; }
        footer#colophon aside.widget-area .widget_nav_menu li:first-child a {
          border-left: 1px solid #666; }
    @media (max-width: 840px) {
      footer#colophon aside.widget-area .widget_nav_menu {
        padding: 0;
        border-top: 1px solid #ccc; }
        footer#colophon aside.widget-area .widget_nav_menu li {
          display: block;
          text-align: left; }
          footer#colophon aside.widget-area .widget_nav_menu li a {
            position: relative;
            width: 100%;
            display: block;
            padding: 15px;
            border: none;
            border-bottom: 1px solid #ccc; }
            footer#colophon aside.widget-area .widget_nav_menu li a::after {
              position: absolute;
              display: block;
              font-family: "Fontawesome";
              content: "\f105";
              right: 10px;
              top: 15px; }
          footer#colophon aside.widget-area .widget_nav_menu li a:focus, footer#colophon aside.widget-area .widget_nav_menu li a:hover {
            text-decoration: none; }
          footer#colophon aside.widget-area .widget_nav_menu li:first-child a {
            border-left: none; } }
    footer#colophon aside.widget-area .footer_info {
      max-width: 1020px;
      width: 100%;
      margin: 30px auto;
      padding: 0 15px;
      font-size: 11px;
      line-height: 1.8;
      zoom: 1; }
      footer#colophon aside.widget-area .footer_info::after {
        clear: both;
        display: block;
        content: ""; }
      footer#colophon aside.widget-area .footer_info .footer_logo {
        float: right;
        margin-left: 20px; }
    footer#colophon aside.widget-area .widget {
      margin: 0; }
    footer#colophon aside.widget-area .menu {
      margin: 0; }
      footer#colophon aside.widget-area .menu li {
        margin-top: 0;
        margin-bottom: 0; }
  footer#colophon .widget_nav_menu li {
    display: inline-block; }
    footer#colophon .widget_nav_menu li:not(:first-child) {
      margin-left: 10px; }
    footer#colophon .widget_nav_menu li a {
      font-size: 14px; }
  footer#colophon .site-info {
    padding: 10px;
    background: #002d5d;
    text-align: center;
    color: #fff;
    font-size: 14px; }

/*
* navigation
*/
@media (min-width: 1041px) {
  .site-branding .bt_spnav {
    display: none; }

  header.site-header .main-navigation {
    background: #002d5d;
    color: #fff; }
    header.site-header .main-navigation .main-menu {
      line-height: 1; }
      header.site-header .main-navigation .main-menu > li {
        position: inherit;
        display: inline-block;
        line-height: 1;
        vertical-align: bottom;
        zoom: 1; }
        header.site-header .main-navigation .main-menu > li::after {
          clear: both;
          display: block;
          content: ""; }
        header.site-header .main-navigation .main-menu > li:hover > a {
          color: #002d5d;
          background: #fff; }
        header.site-header .main-navigation .main-menu > li > a {
          display: inline-block;
          margin: 3px 0 0 0;
          padding: 10px 13px;
          border-radius: 5px 5px 0 0;
          color: #fff;
          font-weight: bold;
          font-size: 12px; }
          header.site-header .main-navigation .main-menu > li > a:hover + button + .sub-menu {
            display: block; }
        header.site-header .main-navigation .main-menu > li.current > a {
          color: #002d5d;
          background: #fff; }
        header.site-header .main-navigation .main-menu > li > .sub-menu {
          display: none;
          overflow: hidden;
          width: 375px;
          max-width: 100%;
          min-width: inherit;
          margin: 0 auto 0 -10px;
          padding: 0;
          opacity: 1;
          left: inherit;
          background: #fff;
          transition: all 0.5s;
          border-radius: 0 0 5px 5px;
          box-shadow: 0px 10px 10px 5px rgba(0, 0, 0, 0.05);
          clear: both;
          z-index: 10; }
          header.site-header .main-navigation .main-menu > li > .sub-menu:hover {
            display: block; }
          header.site-header .main-navigation .main-menu > li > .sub-menu > li {
            display: block;
            min-height: 42px;
            border-bottom: 1px solid #dbdbdb;
            clear: both; }
            header.site-header .main-navigation .main-menu > li > .sub-menu > li:first-child {
              display: none; }
            header.site-header .main-navigation .main-menu > li > .sub-menu > li:first-child, header.site-header .main-navigation .main-menu > li > .sub-menu > li:last-child {
              border-bottom: none; }
            header.site-header .main-navigation .main-menu > li > .sub-menu > li > a {
              position: relative;
              padding: 14px 12px;
              color: #002d5d;
              font-size: 12px;
              line-height: 1.1; }
              header.site-header .main-navigation .main-menu > li > .sub-menu > li > a:hover {
                background: #f5f5f5; }
              header.site-header .main-navigation .main-menu > li > .sub-menu > li > a:not([aria-haspopup="true"])::after {
                position: absolute;
                display: block;
                font-family: "Fontawesome";
                content: "\f105";
                font-size: 1.25em;
                top: 14px;
                right: 14px;
                background: none; }
              header.site-header .main-navigation .main-menu > li > .sub-menu > li > a[aria-haspopup="true"] {
                display: block;
                float: left;
                width: calc(100% - 40px); }
                header.site-header .main-navigation .main-menu > li > .sub-menu > li > a[aria-haspopup="true"] + .submenu-expand {
                  display: block;
                  float: right;
                  width: 40px;
                  min-height: 41px;
                  opacity: 1;
                  zoom: 1; }
                  header.site-header .main-navigation .main-menu > li > .sub-menu > li > a[aria-haspopup="true"] + .submenu-expand svg {
                    display: none; }
                  header.site-header .main-navigation .main-menu > li > .sub-menu > li > a[aria-haspopup="true"] + .submenu-expand:hover {
                    background: #f5f5f5; }
                  header.site-header .main-navigation .main-menu > li > .sub-menu > li > a[aria-haspopup="true"] + .submenu-expand::before {
                    position: absolute;
                    display: block;
                    font-family: "Fontawesome";
                    content: "\f107";
                    top: 0;
                    right: 14px;
                    line-height: 41px;
                    color: #002d5d;
                    font-size: 18px;
                    background: none;
                    font-weight: normal; }
                  header.site-header .main-navigation .main-menu > li > .sub-menu > li > a[aria-haspopup="true"] + .submenu-expand::after {
                    clear: both;
                    display: block;
                    content: ""; }
            header.site-header .main-navigation .main-menu > li > .sub-menu > li.open {
              background: #f5f5f5; }
              header.site-header .main-navigation .main-menu > li > .sub-menu > li.open > a + .submenu-expand::before {
                content: "\f106"; }
          header.site-header .main-navigation .main-menu > li > .sub-menu .submenu-expand {
            display: block; }
          header.site-header .main-navigation .main-menu > li > .sub-menu .sub-menu {
            display: none;
            position: relative;
            min-width: inherit;
            left: inherit;
            padding: 0 10px 10px;
            clear: both;
            white-space: inherit;
            opacity: 1;
            background: none;
            line-height: 1.1; }
            header.site-header .main-navigation .main-menu > li > .sub-menu .sub-menu li {
              display: inline-block; }
              header.site-header .main-navigation .main-menu > li > .sub-menu .sub-menu li:first-child {
                display: none; }
            header.site-header .main-navigation .main-menu > li > .sub-menu .sub-menu a {
              padding: 5px 10px;
              color: #666;
              background: #fff;
              font-size: 12px;
              font-weight: bold;
              border-radius: 30px;
              border: 1px solid #e6e6e6; }
              header.site-header .main-navigation .main-menu > li > .sub-menu .sub-menu a:hover {
                color: #fff;
                background: #002d5d;
                border: 1px solid #002d5d; }
    header.site-header .main-navigation .submenu-expand {
      display: none; }
  header.site-header .menu-gnav-container {
    display: block;
    width: 1020px;
    max-width: 100%;
    margin: 0 auto;
    line-height: 1; }
  header.site-header .main-menu-more {
    display: none; } }
@media (max-width: 1040px) {
  body.sp_nav_open {
    overflow: hidden; }
    body.sp_nav_open .site-branding .bt_spnav::before {
      content: "\e916"; }
    body.sp_nav_open header.site-header .main-navigation {
      left: 0; }

  body > .mask {
    display: none;
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 48px;
    z-index: 10;
    background: rgba(0, 0, 0, 0.5); }

  .site-branding .bt_spnav {
    position: absolute;
    display: block;
    width: 48px;
    height: 48px;
    text-align: center; }
    .site-branding .bt_spnav::before {
      display: block;
      line-height: 48px;
      font-family: "nsj";
      content: "\e915";
      color: #002d5d;
      font-size: 16px; }

  header.site-header .main-menu-more {
    display: none; }
  header.site-header .main-navigation {
    position: absolute;
    overflow-y: auto;
    width: 375px;
    max-width: 100%;
    height: 100%;
    max-height: calc(100% - 48px);
    top: 48px;
    left: -375px;
    margin: 0;
    background: #002d5d;
    font-size: 0;
    z-index: 999;
    transition: all 0.5s; }
    header.site-header .main-navigation li {
      position: relative;
      display: block; }
    header.site-header .main-navigation a {
      position: relative;
      display: block;
      margin-right: 0;
      padding: 0 10px;
      color: #fff;
      font-size: 12px;
      line-height: 40px;
      overflow: hidden;
      white-space: nowrap;
      text-overflow: ellipsis; }
      header.site-header .main-navigation a:hover {
        color: #fff; }
      header.site-header .main-navigation a:not([aria-haspopup="true"]) {
        padding-right: 15px; }
        header.site-header .main-navigation a:not([aria-haspopup="true"])::after {
          position: absolute;
          display: block;
          margin-right: 0;
          top: 0;
          right: 10px;
          font-family: "Fontawesome";
          content: "\f105";
          line-height: 40px; }
      header.site-header .main-navigation a[aria-haspopup="true"] {
        margin-right: 40px;
        padding-right: 0; }
        header.site-header .main-navigation a[aria-haspopup="true"] + .submenu-expand {
          position: absolute;
          top: 0;
          right: 0;
          width: 40px;
          height: 40px;
          text-align: center; }
          header.site-header .main-navigation a[aria-haspopup="true"] + .submenu-expand::before {
            display: block;
            font-size: 16px;
            line-height: 40px;
            content: "\e918";
            font-family: "nsj";
            color: #fff;
            font-weight: normal; }
          header.site-header .main-navigation a[aria-haspopup="true"] + .submenu-expand svg {
            display: none; }
    header.site-header .main-navigation ul.main-menu {
      width: 100%; }
      header.site-header .main-navigation ul.main-menu > li {
        border-bottom: 1px solid #fff; }
        header.site-header .main-navigation ul.main-menu > li:last-child a::after {
          right: 10px; }
    header.site-header .main-navigation li.open > .submenu-expand::before {
      content: "\e917"; }
    header.site-header .main-navigation .sub-menu {
      display: none;
      position: relative;
      min-width: inherit;
      padding-left: 10px;
      opacity: 1;
      left: inherit;
      background: #fff; }
      header.site-header .main-navigation .sub-menu li:first-child {
        display: none; }
      header.site-header .main-navigation .sub-menu li:not(:last-child) {
        border-bottom: 1px solid #e6e6e6; }
      header.site-header .main-navigation .sub-menu a {
        padding: 0;
        line-height: 32px;
        color: #002d5d; }
        header.site-header .main-navigation .sub-menu a:hover {
          background: none; }
        header.site-header .main-navigation .sub-menu a:not([aria-haspopup="true"])::after {
          right: 10px;
          line-height: 32px;
          color: #666;
          background: none; }
        header.site-header .main-navigation .sub-menu a[aria-haspopup="true"] + .submenu-expand {
          width: 32px;
          height: 32px; }
          header.site-header .main-navigation .sub-menu a[aria-haspopup="true"] + .submenu-expand::before {
            line-height: 32px;
            color: #002d5d;
            background: none; }
      header.site-header .main-navigation .sub-menu .sub-menu {
        background: #f5f5f5; }
        header.site-header .main-navigation .sub-menu .sub-menu a {
          padding-right: 26px;
          color: #666; } }
/*
* ウィジェット
*/
.widget_media_image {
  text-align: center; }

.widget.seminar {
  margin: 0 0 1rem; }
.widget.popular-posts > .widget-title {
  display: none; }

.widget.nsj_post_list article {
  padding: 20px 15px;
  border: 1px solid #e6e6e6;
  border-top: none; }
  .widget.nsj_post_list article .entry-title {
    font-size: 14px; }
  .widget.nsj_post_list article.free_contents .entry-footer::before {
    content: "Free";
    display: inline-block;
    margin-right: 6px;
    padding: 3px 20px;
    font-size: 12px;
    font-weight: bold;
    color: #fff;
    background: #f08c00;
    border-radius: 30px;
    line-height: 1.5; }
.widget.nsj_post_list p.more {
  margin-top: 0; }
  .widget.nsj_post_list p.more a {
    display: block;
    padding: 10px;
    border-radius: 0;
    color: #002d5d;
    background: #e6e6e6; }
    .widget.nsj_post_list p.more a:hover {
      opacity: 1;
      color: #fff;
      background: #002d5d; }

.widget_chart_search h2 {
  margin: 0; }
.widget_chart_search form {
  position: relative;
  padding: 16px 12px;
  border: 1px solid #e6e6e6;
  border-top: none; }
.widget_chart_search .input_button {
  position: relative;
  margin-top: 5px; }
  .widget_chart_search .input_button::before {
    position: absolute;
    display: block;
    font-family: "nsj";
    content: "\e908";
    top: calc(50% - 12.5px);
    right: 10px;
    color: #002d5d;
    z-index: 2;
    font-size: 21px; }
.widget_chart_search input[type="text"] {
  width: 100%;
  padding: 10px 40px 10px 6px;
  font-size: 14px;
  border-radius: 5px; }
.widget_chart_search input[type="submit"] {
  position: absolute;
  width: 40px;
  height: 100%;
  right: 0;
  top: 0;
  padding: 0;
  opacity: 0;
  z-index: 3; }

.widget.popular_posts article:nth-child(1) .entry-header::before {
  content: "0"; }
.widget.popular_posts article:nth-child(2) .entry-header::before {
  content: "1"; }
.widget.popular_posts article:nth-child(3) .entry-header::before {
  content: "2"; }
.widget.popular_posts article:nth-child(4) .entry-header::before {
  content: "3"; }
.widget.popular_posts article:nth-child(5) .entry-header::before {
  content: "4"; }
.widget.popular_posts article:nth-child(6) .entry-header::before {
  content: "5"; }
.widget.popular_posts article span.free, .widget.popular_posts article span.date {
  display: none; }
.widget.popular_posts .entry-header {
  position: relative;
  margin-bottom: 10px;
  padding-left: 30px; }
  .widget.popular_posts .entry-header::before {
    position: absolute;
    display: block;
    width: 22px;
    height: 22px;
    top: 0;
    left: 0;
    font-size: 12px;
    line-height: 22px;
    font-weight: bold;
    background: #002d5d;
    color: #fff;
    border-radius: 5px;
    text-align: center; }

.widget_nav_menu.seminar,
.widget_tag_cloud.seminar {
  margin: 0 0 20px; }
  .widget_nav_menu.seminar .widget-title,
  .widget_tag_cloud.seminar .widget-title {
    margin: 0;
    padding: 10px 15px 8px;
    color: #fff;
    background: #002d5d;
    line-height: 1.3;
    border-radius: 5px 5px 0 0; }
    .widget_nav_menu.seminar .widget-title::before,
    .widget_tag_cloud.seminar .widget-title::before {
      display: inline-block;
      margin: 0;
      font-family: "nsj";
      font-size: 1.25em;
      background: none;
      vertical-align: sub; }

.widget_nav_menu.seminar .widget-title::before {
  content: "\e90c"; }
.widget_nav_menu.seminar .menu {
  margin: 0;
  border-left: 1px solid #ccc;
  border-right: 1px solid #ccc; }
  .widget_nav_menu.seminar .menu li {
    margin: 0; }
  .widget_nav_menu.seminar .menu a {
    position: relative;
    display: block;
    width: 100%;
    padding: 15px 10px;
    font-size: 14px;
    border-bottom: 1px solid #ccc; }
    .widget_nav_menu.seminar .menu a:hover {
      background: #f5f5f5; }
    .widget_nav_menu.seminar .menu a::after {
      position: absolute;
      display: inline-block;
      font-family: "Fontawesome";
      content: "\f105";
      font-size: 1.25em;
      right: 10px;
      top: 15px; }

.widget_tag_cloud.seminar .widget-title::before {
  content: "\e90c"; }
.widget_tag_cloud.seminar .tagcloud {
  padding: 10px;
  border: 1px solid #ccc;
  border-top: none; }
  .widget_tag_cloud.seminar .tagcloud a {
    display: inline-block;
    margin: 2px 0;
    padding: 3px 11px;
    font-size: 12px !important;
    font-weight: bold;
    color: #333;
    background: #ececec;
    border-radius: 30px; }

/*
* 投稿リスト用
*/
.nsj_post_list {
  overflow: hidden;
  margin-bottom: 20px; }
  .nsj_post_list h2.widget-title {
    margin: 0;
    font-size: 14px; }
    .nsj_post_list h2.widget-title::before {
      display: none; }
  .nsj_post_list .post-thumbnail {
    float: left;
    margin: 0;
    width: 42%;
    max-width: 100%;
    height: auto;
    text-align: center; }
    @media (max-width: 840px) {
      .nsj_post_list .post-thumbnail {
        float: none;
        width: 100%;
        margin-bottom: 10px; } }
    .nsj_post_list .post-thumbnail img {
      width: auto;
      height: auto;
      max-height: 240px;
      margin-left: auto;
      margin-right: auto; }
  .nsj_post_list .content {
    float: right;
    width: 56%;
    max-width: 100%; }
    @media (max-width: 840px) {
      .nsj_post_list .content {
        float: none;
        width: 100%; } }
  .nsj_post_list article {
    position: relative;
    border-bottom: 1px solid #d9d9d9;
    padding: 20px 0 20px 5px;
    overflow: hidden;
    zoom: 1; }
    @media (max-width: 840px) {
      .nsj_post_list article {
        padding-left: 10px;
        padding-right: 10px; } }
    .nsj_post_list article::after {
      clear: both;
      display: block;
      content: ""; }
    .nsj_post_list article.top_post {
      padding-top: 5px; }
    .nsj_post_list article.free_contents span.free {
      position: absolute;
      left: -30px;
      top: 10px;
      width: 100px;
      padding: 0 10px;
      line-height: 22px;
      font-size: 12px;
      font-weight: bold;
      transform: rotate(-45deg);
      text-align: center;
      background: #f08c00;
      color: #fff;
      z-index: 10; }
      @media (max-width: 840px) {
        .nsj_post_list article.free_contents span.free {
          left: -25px; } }
    .nsj_post_list article .entry-header {
      margin: 0; }
    .nsj_post_list article .category + .date {
      float: right; }
    .nsj_post_list article .time {
      color: #666;
      float: left;
      font-size: 14px; }
      .nsj_post_list article .time::before {
        display: inline-block;
        font-family: "nsj";
        content: "\e90b";
        vertical-align: bottom; }
      .nsj_post_list article .time + .date {
        float: right; }
    .nsj_post_list article .date {
      margin-bottom: 10px;
      color: #666;
      font-size: 14px; }
    .nsj_post_list article .entry-title {
      clear: both;
      margin: 7px 0 0 0;
      font-size: 16px;
      line-height: 1.5; }
      .nsj_post_list article .entry-title a {
        color: #002d5d; }
      .nsj_post_list article .entry-title::before {
        display: none; }
      .nsj_post_list article .entry-title .fa-lock {
        color: #a80; }
    .nsj_post_list article .entry-content {
      padding: 10px 0;
      font-size: 12px;
      line-height: 1.7; }
    .nsj_post_list article .entry-footer {
      margin-top: 6px; }

.site-main .nsj_post_list article.free_contents:not(.top_post) {
  padding-left: 40px; }

/*
* front-page
*/
body.home .site-content {
  margin-top: 20px; }
  @media (max-width: 840px) {
    body.home .site-content {
      margin-top: 0; } }
  @media (max-width: 840px) {
    body.home .site-content #primary {
      padding: 0; } }
body.home .site-main .text_ad {
  width: 100%;
  background: #E6E6E6;
  line-height: 1.2; }
  @media (max-width: 1040px) {
    body.home .site-main .text_ad {
      margin-bottom: 5px; } }
  body.home .site-main .text_ad span {
    width: 3.5em; }
body.home .slick_slider {
  display: none;
  max-width: 100%; }
  @media (max-width: 1040px) {
    body.home .slick_slider {
      margin-bottom: 0; } }
  body.home .slick_slider.slick-initialized {
    display: block; }

ul.tab_list {
  margin: 0;
  padding: 0;
  border-bottom: 2px solid #002d5d; }
  @media (max-width: 768px) {
    ul.tab_list {
      width: 100%;
      white-space: nowrap;
      overflow-x: auto; } }
  ul.tab_list li {
    display: inline-block;
    list-style: none;
    padding: 8px 12px;
    font-size: 14px;
    font-weight: bold;
    text-decoration: none;
    color: #fff;
    background: #bababa;
    border-radius: 5px 5px 0 0;
    transition: all 0.5s;
    cursor: pointer; }
    ul.tab_list li:hover {
      background: #002d5d; }
    ul.tab_list li::before {
      display: inline-block;
      margin-right: 5px;
      font-family: "nsj"; }
    ul.tab_list li.active {
      background: #002d5d; }

.tab_data > div {
  display: none; }
  .tab_data > div.show {
    display: block; }

.tradex {
  position: relative;
  margin: 30px 0;
  padding: 15px 50px 15px 15px;
  font-size: 12px;
  background: #f5f5f5;
  border: 1px solid #e6e6e6;
  zoom: 1; }
  .tradex::after {
    clear: both;
    display: block;
    content: ""; }
  .tradex h2 {
    margin: 0 0 15px 0;
    padding-left: 10px;
    line-height: 1.5;
    color: #002d5d;
    border-left: 5px solid #002d5d; }
  .tradex iframe {
    float: left;
    margin-right: 20px; }
  .tradex p {
    line-height: 1.5;
    font-weight: 500; }
  .tradex strong {
    font-size: 14px;
    color: #002d5d; }
  .tradex a.angle-right {
    position: absolute;
    top: calc(50% - 24px);
    right: 15px; }
    .tradex a.angle-right::after {
      display: inline-block;
      content: "\f105";
      font-size: 48px; }

/*
* single
*/
@media (max-width: 840px) {
  .single .site-main {
    padding: 0 10px; } }
.single .site-main > .entry-header {
  margin: 10px 0 30px;
  margin-top: 10px;
  padding-bottom: 15px;
  border-bottom: 1px solid #ccc; }
  .single .site-main > .entry-header .date {
    float: right;
    color: #666;
    font-size: 13px;
    line-height: 1.5; }
  .single .site-main > .entry-header .entry-title {
    clear: both;
    margin: 10px 0;
    font-size: 24px;
    line-height: 1.5;
    color: #002d5d; }
    .single .site-main > .entry-header .entry-title::before {
      display: none; }
.single .site-main > .entry .entry-content {
  margin: 0;
  max-width: 100%;
  border-bottom: 1px solid #ccc;
  font-size: 14px; }
  .single .site-main > .entry .entry-content::before {
    display: none; }
  .single .site-main > .entry .entry-content > *:first-child {
    margin-top: 0; }
  @media (max-width: 840px) {
    .single .site-main > .entry .entry-content > * {
      max-width: 100%; } }
  .single .site-main > .entry .entry-content h1 {
    font-size: 16px; }
    .single .site-main > .entry .entry-content h1::before {
      display: none; }
  .single .site-main > .entry .entry-content h2, .single .site-main > .entry .entry-content h3, .single .site-main > .entry .entry-content h4 {
    margin: 42px 0 22px; }
  .single .site-main > .entry .entry-content h2 {
    padding-left: 10px;
    font-size: 20px;
    color: #002d5d;
    border-left: 5px solid #002d5d; }
  .single .site-main > .entry .entry-content h3 {
    padding: 10px 15px;
    font-size: 16px;
    background: #eee;
    border-radius: 5px; }
  .single .site-main > .entry .entry-content h4 {
    color: #002d5d;
    font-size: 14px; }
  .single .site-main > .entry .entry-content p {
    line-height: 1.5; }
  .single .site-main > .entry .entry-content .chart_img {
    margin-bottom: 2em; }
    .single .site-main > .entry .entry-content .chart_img + * {
      margin-top: 0; }
  .single .site-main > .entry .entry-content .old_post {
    font-size: 16px;
    line-height: 1.8; }
    .single .site-main > .entry .entry-content .old_post > * {
      line-height: 1.8; }
    .single .site-main > .entry .entry-content .old_post figure {
      width: 30%; }
    .single .site-main > .entry .entry-content .old_post h3 {
      padding: 0;
      border-radius: 0;
      border: none;
      background: none; }
    .single .site-main > .entry .entry-content .old_post li {
      line-height: 1.5; }
    .single .site-main > .entry .entry-content .old_post td, .single .site-main > .entry .entry-content .old_post th {
      line-height: 1.5; }
    @media (max-width: 480px) {
      .single .site-main > .entry .entry-content .old_post img {
        float: none !important;
        max-width: 100% !important;
        width: 100%;
        margin-left: 0 !important;
        margin-right: 0 !important; } }
  .single .site-main > .entry .entry-content .text_block {
    line-height: 1.7;
    clear: both;
    zoom: 1; }
    .single .site-main > .entry .entry-content .text_block::after {
      display: block;
      clear: both;
      content: ""; }
    .single .site-main > .entry .entry-content .text_block p {
      font-size: 16px;
      line-height: 1.8; }
  .single .site-main > .entry .entry-content .img_left {
    float: left;
    margin: 0 2em 2em 0; }
  .single .site-main > .entry .entry-content .img_right {
    float: right;
    margin: 0 0 2em 2em; }
  .single .site-main > .entry .entry-content .img_left, .single .site-main > .entry .entry-content .img_right {
    max-width: 30%;
    text-align: center; }
    .single .site-main > .entry .entry-content .img_left img, .single .site-main > .entry .entry-content .img_right img {
      display: block; }
    @media (max-width: 768px) {
      .single .site-main > .entry .entry-content .img_left, .single .site-main > .entry .entry-content .img_right {
        float: none;
        width: 100%;
        max-width: 100%;
        margin-left: 0;
        margin-right: 0; }
        .single .site-main > .entry .entry-content .img_left img, .single .site-main > .entry .entry-content .img_right img {
          margin: 0 auto; } }
  .single .site-main > .entry .entry-content .icon-magnify {
    display: inline-block;
    vertical-align: middle; }
  .single .site-main > .entry .entry-content .caption {
    font-size: 12px;
    color: #666; }
  .single .site-main > .entry .entry-content table {
    width: 100% !important;
    max-width: 100%;
    border-color: #ccc; }
    .single .site-main > .entry .entry-content table th, .single .site-main > .entry .entry-content table td {
      width: inherit !important;
      padding: 0.5em;
      border-color: #999;
      word-break: break-all; }
  .single .site-main > .entry .entry-content .alert {
    padding-bottom: 30px; }
    .single .site-main > .entry .entry-content .alert h3 {
      margin-top: 30px; }
    .single .site-main > .entry .entry-content .alert p {
      margin: 10px 1em;
      line-height: 1.7; }
  .single .site-main > .entry .entry-content .quick_report {
    clear: both; }
.single .site-main > .entry .entry-footer {
  margin: 40px 0; }
.single .site-main > .entry .fb_iframe_widget {
  margin-bottom: 10px; }
.single .site-main > .entry .twitter-share-button {
  margin-bottom: 10px;
  vertical-align: bottom; }
.single .site-main > .entry .print {
  padding: 4px 6px 2px;
  color: #fff;
  background: #f08c00;
  font-size: 11px;
  vertical-align: middle;
  border-radius: 3px; }
  .single .site-main > .entry .print:hover {
    color: #fff;
    background: #ec7900; }
.single .site-main .single_bottom_list > h2 {
  margin-bottom: 0; }
.single .site-main .single_bottom_list .icon-related {
  font-size: 21px;
  vertical-align: middle; }
.single.single-seminar .site-main > article {
  margin: 0; }
.single.single-seminar .site-main .entry-content h2 + .company h3 {
  margin-top: 0; }
.single.single-seminar .site-main .entry-content .company h3 a {
  color: #333;
  text-decoration: none; }
  .single.single-seminar .site-main .entry-content .company h3 a:hover {
    text-decoration: underline; }
.single.single-seminar .site-main .entry-content .company .data {
  align-items: center; }
  .single.single-seminar .site-main .entry-content .company .data .logo {
    width: 240px;
    margin-right: 20px; }
  .single.single-seminar .site-main .entry-content .company .data .text {
    width: calc(100% - 260px);
    line-height: 1.7; }
  @media (max-width: 768px) {
    .single.single-seminar .site-main .entry-content .company .data {
      display: block; }
      .single.single-seminar .site-main .entry-content .company .data .logo, .single.single-seminar .site-main .entry-content .company .data .text {
        width: 100%; } }
.single.single-seminar .site-main .entry-content .outline .data {
  display: table;
  border-spacing: 0 10px; }
.single.single-seminar .site-main .entry-content .outline dl {
  display: table-row; }
.single.single-seminar .site-main .entry-content .outline dt, .single.single-seminar .site-main .entry-content .outline dd {
  display: table-cell;
  padding: 10px;
  font-size: 14px;
  line-height: 1.7; }
.single.single-seminar .site-main .entry-content .outline dt {
  width: 25%;
  margin: 0 0 10px;
  background: #f5f5f5;
  text-align: center;
  vertical-align: middle; }
.single.single-seminar .site-main .entry-content .outline dd {
  width: 75%;
  margin: 0 0 10px;
  padding-left: 20px; }
.single.single-seminar .site-main .entry-content .outline iframe {
  max-width: 100%;
  margin: 10px 0; }
.single.single-seminar .site-main .entry-content .schedule .photo {
  width: 130px; }
.single.single-seminar .site-main .entry-content .schedule .text {
  width: calc(100% - 150px);
  margin-left: 20px;
  line-height: 1.7; }
.single.single-seminar .site-main .seminar_slider_wrap .seminar_list {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between;
  padding: 0; }
  @media (max-width: 768px) {
    .single.single-seminar .site-main .seminar_slider_wrap .seminar_list:not(.count_2) {
      display: block; } }
  .single.single-seminar .site-main .seminar_slider_wrap .seminar_list.count_2 {
    display: block; }
    .single.single-seminar .site-main .seminar_slider_wrap .seminar_list.count_2 li {
      display: inline-block;
      margin-left: 20px; }
      @media (max-width: 768px) {
        .single.single-seminar .site-main .seminar_slider_wrap .seminar_list.count_2 li {
          width: 200px; } }
      @media (max-width: 500px) {
        .single.single-seminar .site-main .seminar_slider_wrap .seminar_list.count_2 li {
          width: 100%;
          margin-left: 0;
          display: block; } }
  .single.single-seminar .site-main .seminar_slider_wrap .seminar_list li {
    width: 30%;
    margin: 0;
    list-style: none; }
    @media (max-width: 768px) {
      .single.single-seminar .site-main .seminar_slider_wrap .seminar_list li {
        width: 100%;
        margin-bottom: 20px; } }
    .single.single-seminar .site-main .seminar_slider_wrap .seminar_list li .img {
      text-align: center; }
.single.single-seminar .site-main .seminar_slider_wrap .more {
  display: none; }

.site-main .archive-header {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  margin: 0;
  border-bottom: 1px solid #ccc; }
  .site-main .archive-header::after {
    clear: both; }
  @media (max-width: 840px) {
    .site-main .archive-header {
      padding: 0 10px; } }
  .site-main .archive-header .page-title {
    color: #002d5d;
    font-size: 20px;
    font-weight: bold;
    flex-grow: 2;
    margin: 10px 0; }
  .site-main .archive-header .count {
    text-align: right;
    flex-grow: 1;
    white-space: nowrap;
    margin-bottom: 10px;
    font-size: 11px;
    color: #666; }
    .site-main .archive-header .count span.blue {
      color: #002d5d; }
    .site-main .archive-header .count strong {
      font-size: 18px; }

.nsj_post_list article.seminar {
  position: relative;
  margin: 15px 0 0;
  padding: 0 0 20px;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex; }
  .nsj_post_list article.seminar.free_contents:not(.top_post) {
    padding-left: 0; }
  .nsj_post_list article.seminar::before {
    position: absolute;
    display: block;
    left: -35px;
    top: 15px;
    width: 120px;
    padding: 0 10px;
    line-height: 22px;
    font-size: 12px;
    font-weight: bold;
    transform: rotate(-45deg);
    text-align: center;
    background: #f08c00;
    color: #fff;
    z-index: 10; }
  .nsj_post_list article.seminar.free::before {
    content: "参加無料"; }
  .nsj_post_list article.seminar.end::before {
    content: "終了";
    background: #666; }
  .nsj_post_list article.seminar .thumbnail_wrap {
    position: relative;
    width: 220px;
    text-align: center; }
    .nsj_post_list article.seminar .thumbnail_wrap a {
      display: block;
      padding: 10px 0;
      text-align: center; }
    .nsj_post_list article.seminar .thumbnail_wrap img {
      max-width: 150px;
      max-height: 150px; }
  .nsj_post_list article.seminar .body_wrap {
    width: calc(100% - 230px); }
    .nsj_post_list article.seminar .body_wrap .seminar_cat {
      float: right;
      margin: 0 0 10px; }
    .nsj_post_list article.seminar .body_wrap .date {
      margin: 5px 0 10px;
      font-size: 14px;
      font-weight: bold; }
    .nsj_post_list article.seminar .body_wrap .entry-content p {
      margin: 0;
      font-size: 12px;
      line-height: 1.7; }
  @media (max-width: 480px) {
    .nsj_post_list article.seminar {
      display: block; }
      .nsj_post_list article.seminar .thumbnail_wrap {
        width: 100%; }
        .nsj_post_list article.seminar .thumbnail_wrap img {
          max-width: 80%; }
      .nsj_post_list article.seminar .body_wrap {
        width: 100%; }
      .nsj_post_list article.seminar .entry-content {
        max-width: inherit; } }

.post-type-archive-calendar .site-main i.pdf, .post-type-archive-calendar .site-main i.event {
  display: inline-block;
  width: 6px;
  height: 6px;
  margin: 0 2px;
  border-radius: 6px; }
.post-type-archive-calendar .site-main i.pdf {
  background: #002d5d; }
.post-type-archive-calendar .site-main i.event {
  background: #f08c00; }

.calendar_head {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between;
  margin: 20px 0 10px; }
  @media (max-width: 840px) {
    .calendar_head {
      margin-left: 10px;
      margin-right: 10px; } }
  @media (max-width: 480px) {
    .calendar_head {
      display: block;
      text-align: center; } }
  .calendar_head .nav {
    color: #002d5d;
    font-size: 16px;
    font-weight: bold; }
    @media (max-width: 480px) {
      .calendar_head .nav {
        display: inline-block; } }
    .calendar_head .nav p {
      display: inline-block;
      margin: 0;
      vertical-align: middle; }
    .calendar_head .nav .month_num {
      padding: 0 5px;
      color: #f08c00;
      font-size: 48px;
      vertical-align: middle; }
    .calendar_head .nav .month_name {
      text-transform: uppercase; }
    .calendar_head .nav .prev i::before, .calendar_head .nav .next i::before {
      display: block;
      font-size: 1.25em;
      font-family: "Fontawesome"; }
    .calendar_head .nav .prev:hover, .calendar_head .nav .next:hover {
      opacity: 0.7; }
    .calendar_head .nav .prev i::before {
      margin-right: 20px;
      content: "\f104"; }
    .calendar_head .nav .next i::before {
      margin-left: 20px;
      content: "\f105"; }
  .calendar_head .notes {
    margin: 0;
    padding: 0;
    text-align: right; }
    .calendar_head .notes li {
      display: inline-block;
      margin-top: 25px;
      color: #666;
      font-size: 11px;
      font-weight: bold;
      list-style: none;
      vertical-align: bottom; }
      @media (max-width: 480px) {
        .calendar_head .notes li {
          margin-top: 0; } }

.calendar {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap; }
  @media (max-width: 840px) {
    .calendar {
      margin-left: 10px;
      margin-right: 10px; } }
  .calendar > div {
    display: table;
    width: 14.28%;
    height: 99px;
    margin: 0;
    text-align: center;
    font-size: 18px;
    border-bottom: 1px solid #e6e6e6; }
    @media (max-width: 480px) {
      .calendar > div {
        font-size: 15px; } }
    .calendar > div a, .calendar > div > span {
      position: relative;
      display: table-cell;
      width: 100%;
      color: #002d5d;
      font-weight: bold;
      text-align: center;
      vertical-align: middle; }
    .calendar > div a:hover {
      background: #f5f5f5; }
    .calendar > div.off > span {
      color: #bababa; }
  .calendar .week {
    height: auto;
    padding: 12px 0;
    text-align: center;
    font-size: 14px;
    font-weight: bold;
    color: #fff;
    background: #002d5d; }
    @media (max-width: 480px) {
      .calendar .week {
        font-size: 12px; } }
  .calendar .today {
    color: #fff; }
    .calendar .today span {
      position: relative;
      z-index: 2; }
    .calendar .today::after {
      position: absolute;
      display: block;
      content: "";
      width: 40px;
      height: 40px;
      color: #fff;
      background: #002d5d;
      border-radius: 40px;
      left: calc(50% - 20px);
      top: 28px; }
  .calendar span.data {
    position: absolute;
    display: block;
    width: 100%;
    height: 6px;
    top: 74px;
    line-height: 1;
    font-size: 6px; }

.calendar_dialog_set {
  height: 0;
  max-height: 0;
  overflow: hidden;
  pointer-events: none; }

.calendar_dialog {
  position: relative;
  display: block;
  width: 640px;
  height: 560px;
  max-width: 90%;
  max-height: 100%;
  margin: 0 auto;
  padding: 10px;
  background: #fff;
  border-radius: 5px; }
  .calendar_dialog .inner_wrap {
    width: 100%;
    height: 100%;
    overflow: hidden;
    margin: 0;
    padding: 15px 10px;
    border: 1px solid #bababa;
    border-radius: 5px; }
  .calendar_dialog h4 {
    margin: 0 0 15px;
    color: #002d5d;
    font-size: 18px; }
  .calendar_dialog h5 {
    margin: 0;
    padding: 10px;
    font-size: 16px;
    background: #f5f5f5;
    line-height: 24px; }
    .calendar_dialog h5::before {
      display: inline-block;
      content: "";
      width: 5px;
      height: 24px;
      margin-right: 10px;
      background: #002d5d;
      vertical-align: middle; }
  .calendar_dialog .data_wrap {
    position: relative;
    background: #fff;
    transition: all 0.75s ease; }
    .calendar_dialog .data_wrap + .data_wrap {
      margin-top: 40px; }
    .calendar_dialog .data_wrap.over::before {
      position: absolute;
      content: "";
      width: 100%;
      height: 150px;
      bottom: 0;
      z-index: 2;
      background: -moz-linear-gradient(top, rgba(255, 255, 255, 0) 0%, white 100%);
      background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, white 100%);
      background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, white 100%); }
    .calendar_dialog .data_wrap.open::before {
      display: none; }
    .calendar_dialog .data_wrap.open .data {
      overflow-y: auto;
      max-height: 310px;
      opacity: 1; }
      .calendar_dialog .data_wrap.open .data::before {
        display: none; }
    .calendar_dialog .data_wrap.open + .toggle_bt::before {
      content: "閉じる"; }
    .calendar_dialog .data_wrap.open + .toggle_bt::after {
      content: "\f106"; }
    .calendar_dialog .data_wrap.close::before {
      display: none; }
    .calendar_dialog .data_wrap.close .data {
      max-height: 10px;
      opacity: 0; }
  .calendar_dialog .data {
    position: relative;
    height: 100%;
    opacity: 1;
    overflow: hidden;
    max-height: 160px;
    padding-bottom: 30px;
    padding: 0 10px;
    font-size: 14px;
    line-height: 1.8;
    transition: all 0.75s ease; }
    @media (max-width: 480px) {
      .calendar_dialog .data {
        font-size: 12px; } }
    .calendar_dialog .data p {
      line-height: 1.7; }
  .calendar_dialog .event h5::before {
    background: #f08c00; }
  .calendar_dialog span.toggle_bt {
    position: relative;
    display: block;
    width: 100%;
    padding: 5px 10px 10px;
    text-align: center;
    color: #002d5d;
    font-size: 14px;
    cursor: pointer;
    background: #fff; }
    .calendar_dialog span.toggle_bt::before {
      display: inline-block;
      content: "もっと見る"; }
    .calendar_dialog span.toggle_bt::after {
      display: inline-block;
      content: "\f107";
      margin-left: 7px;
      font-family: "Fontawesome";
      font-size: 1.25em; }
  .calendar_dialog button.mfp-close {
    margin: -44px 0 0 0;
    color: #fff; }

.mfp-bg.mfp-ready {
  opacity: 0.35; }

.mfp-container .nsj-arrow-left,
.mfp-container .nsj-arrow-right {
  position: absolute;
  display: block;
  top: 50%;
  width: 50px;
  height: 50px;
  padding: 0;
  background: none;
  cursor: pointer;
  z-index: 9999; }
  @media (max-width: 740px) {
    .mfp-container .nsj-arrow-left,
    .mfp-container .nsj-arrow-right {
      width: 30px;
      height: 30px; } }
  .mfp-container .nsj-arrow-left::before,
  .mfp-container .nsj-arrow-right::before {
    display: block;
    content: "";
    width: 28px;
    height: 28px;
    border: 2px solid #fff;
    border-radius: 0;
    transform: rotate(-45deg); }
    @media (max-width: 740px) {
      .mfp-container .nsj-arrow-left::before,
      .mfp-container .nsj-arrow-right::before {
        position: absolute;
        width: 20px;
        height: 20px;
        top: 5px; } }
  .mfp-container .nsj-arrow-left:hover,
  .mfp-container .nsj-arrow-right:hover {
    opacity: 0.7; }
  .mfp-container .nsj-arrow-left.none,
  .mfp-container .nsj-arrow-right.none {
    display: none; }
.mfp-container .nsj-arrow-left {
  left: 0; }
  @media (min-width: 740px) {
    .mfp-container .nsj-arrow-left {
      left: calc((100% - 640px)/2 - 40px); } }
  .mfp-container .nsj-arrow-left::before {
    margin-left: 7px;
    border-right: none;
    border-bottom: none; }
.mfp-container .nsj-arrow-right {
  right: 0; }
  @media (min-width: 740px) {
    .mfp-container .nsj-arrow-right {
      right: calc((100% - 640px)/2 - 40px); } }
  .mfp-container .nsj-arrow-right::before {
    margin-left: 10px;
    border-left: none;
    border-top: none; }
    @media (max-width: 740px) {
      .mfp-container .nsj-arrow-right::before {
        right: 7px;
        margin-left: 0; } }
.mfp-container .mfp-arrow-left,
.mfp-container .mfp-arrow-right {
  width: 30px;
  height: 30px;
  opacity: 1; }
  .mfp-container .mfp-arrow-left::before,
  .mfp-container .mfp-arrow-right::before {
    margin-left: 10px;
    border: none;
    content: "\f104";
    font-size: 48px;
    font-family: "Fontawesome";
    transform: scale(1); }
  .mfp-container .mfp-arrow-left::after,
  .mfp-container .mfp-arrow-right::after {
    display: none; }
.mfp-container .mfp-arrow-right::before {
  content: "\f105";
  left: inherit; }

/*
* simple members関連
*/
form#swpm-login-form {
  width: 480px;
  max-width: 100%;
  margin: 40px auto;
  padding: 50px;
  font-size: 14px;
  background: #f5f5f5;
  border-radius: 7px;
  border: 1px solid #e6e6e6; }
  @media (max-width: 480px) {
    form#swpm-login-form {
      padding: 40px 20px;
      border-radius: 4px; } }
  form#swpm-login-form .input-set:not(:last-child) {
    margin-bottom: 20px; }
  form#swpm-login-form .input-set a {
    position: relative; }
    form#swpm-login-form .input-set a::before {
      display: inline-block;
      margin-right: 5px;
      font-family: "Fontawesome";
      content: "\f105";
      font-size: 1.25em; }
  form#swpm-login-form label {
    display: block;
    margin-bottom: 4px;
    font-size: 14px;
    font-weight: bold;
    color: #002d5d; }
  form#swpm-login-form .swpm-text-field {
    width: 100%;
    margin-bottom: 5px;
    font-size: 16px;
    border-radius: 4px; }
  form#swpm-login-form .input-submit {
    position: relative; }
    form#swpm-login-form .input-submit::after {
      position: absolute;
      display: block;
      top: 0;
      right: 20px;
      line-height: 56px;
      font-family: "Fontawesome";
      content: "\f105";
      font-size: 24px;
      font-weight: normal;
      opacity: 0.85;
      color: #fff; }
  form#swpm-login-form input[type="submit"] {
    width: 100%;
    margin: 0 0 5px;
    padding: 0;
    background: #002d5d;
    font-size: 18px;
    line-height: 56px;
    transition: all 0.5s; }
    form#swpm-login-form input[type="submit"]:hover {
      opacity: 0.8; }
  form#swpm-login-form a.apply {
    display: block;
    margin-top: 16px;
    padding: 12px 0;
    background: #f08c00;
    color: #fff;
    font-size: 16px;
    text-align: center;
    text-decoration: none;
    border-radius: 4px;
    transition: all 0.5s; }
    form#swpm-login-form a.apply:hover {
      opacity: 0.7; }
    form#swpm-login-form a.apply::before {
      display: none; }

/* パスワードリセットページ */
form#swpm-pw-reset-form {
  width: 480px;
  max-width: 100%;
  margin: 40px auto;
  padding: 50px;
  font-size: 14px;
  background: #f5f5f5;
  border-radius: 7px;
  border: 1px solid #e6e6e6;
  box-sizing: border-box; }
  @media (max-width: 480px) {
    form#swpm-pw-reset-form {
      padding: 40px 20px;
      border-radius: 4px; } }
  form#swpm-pw-reset-form .swpm-text-field {
    width: 100%;
    font-size: 16px;
    border-radius: 4px;
    box-sizing: border-box; }
  form#swpm-pw-reset-form .swpm-pw-reset-email-input {
    margin-bottom: 20px; }
  form#swpm-pw-reset-form .swpm-pw-reset-submit-button {
    position: relative; }
    form#swpm-pw-reset-form .swpm-pw-reset-submit-button::after {
      position: absolute;
      display: block;
      top: 0;
      right: 20px;
      line-height: 56px;
      font-family: "Fontawesome";
      content: "\f105";
      font-size: 24px;
      font-weight: normal;
      opacity: 0.85;
      color: #fff;
      pointer-events: none; }
  form#swpm-pw-reset-form .swpm-pw-reset-submit {
    width: 100%;
    margin: 0;
    padding: 0;
    background: #002d5d;
    color: #fff;
    font-size: 18px;
    line-height: 56px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.5s; }
    form#swpm-pw-reset-form .swpm-pw-reset-submit:hover {
      opacity: 0.8; }

form.swpm-form-builder fieldset.swpm-fieldset {
  position: relative;
  width: 800px;
  max-width: 100%;
  margin: 0 auto;
  padding: 30px 30px 0 30px;
  border: 1px solid #e6e6e6;
  border-radius: 7px 7px 0 0; }
  form.swpm-form-builder fieldset.swpm-fieldset.confirm .swpm-section-div {
    width: auto; }
    form.swpm-form-builder fieldset.swpm-fieldset.confirm .swpm-section-div > h4::before {
      display: none; }
  form.swpm-form-builder fieldset.swpm-fieldset.confirm p.note {
    display: none; }
  form.swpm-form-builder fieldset.swpm-fieldset.confirm .swpm-span p {
    display: none; }
form.swpm-form-builder p.note {
  margin: 0;
  font-size: 14px; }
form.swpm-form-builder .swpm-section {
  padding: 0; }
form.swpm-form-builder .swpm-section-div {
  background: none;
  display: table;
  width: 100%;
  max-width: 600px; }
  form.swpm-form-builder .swpm-section-div > h4 {
    display: table-cell;
    width: 240px;
    min-height: 72px;
    padding: 20px 15px;
    font-size: 14px;
    vertical-align: middle;
    background: #f5f5f5;
    border-bottom: 10px solid #fff; }
  form.swpm-form-builder .swpm-section-div > li {
    display: table-cell;
    padding: 10px 0 10px 20px;
    vertical-align: middle;
    border-bottom: 10px solid #fff; }
    form.swpm-form-builder .swpm-section-div > li label:not(.swpm-choice) {
      display: none; }
    form.swpm-form-builder .swpm-section-div > li .swpm-desc {
      display: none; }
    form.swpm-form-builder .swpm-section-div > li p {
      margin: 0; }
    form.swpm-form-builder .swpm-section-div > li .swpm-span p {
      display: inline-block;
      margin-left: 10px;
      font-size: 12px;
      color: #666; }
  form.swpm-form-builder .swpm-section-div .swpm-item-radio .swpm-span {
    display: inline-block;
    margin-right: 15px; }
  form.swpm-form-builder .swpm-section-div.birthday {
    width: auto; }
    form.swpm-form-builder .swpm-section-div.birthday .swpm-item[class*="-third"] {
      width: auto; }
    form.swpm-form-builder .swpm-section-div.birthday .swpm-middle-third, form.swpm-form-builder .swpm-section-div.birthday .swpm-right-third {
      padding-left: 10px; }
    form.swpm-form-builder .swpm-section-div.birthday .swpm-left-third::after, form.swpm-form-builder .swpm-section-div.birthday .swpm-middle-third::after, form.swpm-form-builder .swpm-section-div.birthday .swpm-right-third::after {
      display: inline-block;
      margin-left: 5px; }
    form.swpm-form-builder .swpm-section-div.birthday .swpm-left-third::after {
      content: "年"; }
    form.swpm-form-builder .swpm-section-div.birthday .swpm-middle-third::after {
      content: "月"; }
    form.swpm-form-builder .swpm-section-div.birthday .swpm-right-third::after {
      content: "日"; }
form.swpm-form-builder .swpm-item {
  width: calc(100% - 240px); }
  form.swpm-form-builder .swpm-item[class*="-half"] {
    width: calc((100% - 240px)/2); }
  form.swpm-form-builder .swpm-item[class*="-third"] {
    width: calc((100% - 240px)/3); }
form.swpm-form-builder .swpm-item-instructions {
  display: none; }
  form.swpm-form-builder .swpm-item-instructions + .swpm-item {
    overflow: hidden;
    height: 0;
    max-height: 0; }
form.swpm-form-builder input {
  width: 100%;
  font-size: 16px; }
  form.swpm-form-builder input::placeholder {
    color: #ccc; }
form.swpm-form-builder input.swpm-text {
  border-radius: 5px;
  border: 1px solid #bababa; }
form.swpm-form-builder input[type="password"] {
  margin-bottom: 10px; }
form.swpm-form-builder select {
  padding: 5px;
  border-radius: 5px; }
form.swpm-form-builder input.swpm-small {
  width: 8em; }
form.swpm-form-builder .submit_wrapper {
  width: 800px;
  max-width: 100%;
  margin: 0 auto;
  padding: 30px 0;
  border: 1px solid #e6e6e6;
  border-top: none; }
form.swpm-form-builder .swpm-edit-profile-submit-section {
  position: relative;
  width: 360px;
  max-width: 80%;
  margin: 0 auto; }
  form.swpm-form-builder .swpm-edit-profile-submit-section::after {
    position: absolute;
    display: block;
    top: 0;
    right: 20px;
    line-height: 56px;
    font-family: "Fontawesome";
    content: "\f105";
    color: #fff;
    font-size: 24px;
    font-weight: normal;
    opacity: 0.85; }
form.swpm-form-builder .swpm-item-submit input[type="submit"] {
  display: block;
  width: 100%;
  margin-bottom: 10px;
  padding: 0;
  font-size: 18px;
  line-height: 56px;
  background: #002d5d;
  transition: all 0.5s; }
  form.swpm-form-builder .swpm-item-submit input[type="submit"]:hover {
    opacity: 0.8; }
form.swpm-form-builder .swpm-item-submit span {
  font-size: 12px; }
form.swpm-form-builder .swpm-item-submit .autoConfirmBack {
  position: relative;
  display: none;
  width: 100%;
  margin-top: 20px;
  padding: 0;
  line-height: 56px;
  color: #002d5d;
  background: none;
  border: 1px solid #002d5d;
  border-radius: 5px;
  text-decoration: none;
  font-weight: bold;
  cursor: pointer; }
  form.swpm-form-builder .swpm-item-submit .autoConfirmBack::before {
    position: absolute;
    display: block;
    top: 0;
    left: 20px;
    line-height: 56px;
    font-family: "Fontawesome";
    content: "\f104";
    color: #002d5d;
    font-size: 24px;
    font-weight: normal; }
  form.swpm-form-builder .swpm-item-submit .autoConfirmBack:hover {
    opacity: 0.7; }
form.swpm-form-builder .swpm-form-builder-error {
  display: block;
  margin-top: 5px;
  color: #f00;
  font-size: 12px; }
form.swpm-form-builder div.error {
  margin-top: 3px;
  font-size: 12px;
  color: #f00; }

@media (max-width: 768px) {
  form.swpm-form-builder fieldset.swpm-fieldset {
    width: 100%;
    max-width: inherit;
    margin: 0;
    padding: 25px 15px 0; }
  form.swpm-form-builder .swpm-section-div {
    display: block; }
    form.swpm-form-builder .swpm-section-div > h4, form.swpm-form-builder .swpm-section-div > li {
      display: block;
      width: 100%;
      padding: 0;
      border: none; }
    form.swpm-form-builder .swpm-section-div > h4 {
      min-height: inherit;
      margin: 20px 0 10px;
      padding: 10px; }
    form.swpm-form-builder .swpm-section-div > li {
      margin: 0 0 10px;
      padding: 0 10px; }
      form.swpm-form-builder .swpm-section-div > li .swpm-span p {
        display: block;
        margin: 5px 0 0; }
    form.swpm-form-builder .swpm-section-div input.swpm-text {
      width: 100%; }
    form.swpm-form-builder .swpm-section-div.birthday li {
      display: inline-block;
      width: auto;
      padding-right: 0;
      font-size: 12px; }
      form.swpm-form-builder .swpm-section-div.birthday li:not(.swpm-left-third) {
        padding-left: 5px; }
      form.swpm-form-builder .swpm-section-div.birthday li select {
        font-size: 16px; }
  form.swpm-form-builder .swpm-item {
    width: 100%; }
    form.swpm-form-builder .swpm-item[class*="-half"], form.swpm-form-builder .swpm-item[class*="-third"] {
      width: 100%; } }
body.logged-in fieldset.swpm-fieldset {
  padding: 0;
  border: none; }
body.logged-in form.swpm-form-builder .submit_wrapper {
  border: none;
  border-top: 1px solid #e6e6e6;
  padding: 30px 0 0 0; }

.swpm-login-widget-logged.mypage .mypage_menu {
  margin-bottom: 60px; }
  .swpm-login-widget-logged.mypage .mypage_menu .menu_list {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap;
    margin: 0;
    padding: 0; }
    .swpm-login-widget-logged.mypage .mypage_menu .menu_list li {
      width: 30%;
      margin: 0;
      padding: 0; }
      .swpm-login-widget-logged.mypage .mypage_menu .menu_list li a {
        position: relative;
        display: block;
        width: 100%;
        height: 100%;
        padding: 30px 0;
        text-align: center;
        background: #f5f5f5;
        border-radius: 7px;
        text-decoration: none;
        font-weight: bold; }
        .swpm-login-widget-logged.mypage .mypage_menu .menu_list li a::before {
          position: absolute;
          display: block;
          right: 10px;
          top: calc(50% - 0.5em);
          font-size: 24px;
          content: "\f105";
          font-family: "Fontawesome";
          font-weight: normal; }
        .swpm-login-widget-logged.mypage .mypage_menu .menu_list li a:hover {
          opacity: 0.8; }
      .swpm-login-widget-logged.mypage .mypage_menu .menu_list li i {
        display: block;
        margin: 0 auto 10px;
        font-size: 55px;
        font-weight: normal; }
.swpm-login-widget-logged.mypage .mypage_data {
  padding-bottom: 40px;
  border-bottom: 1px solid #e5e5e5; }
.swpm-login-widget-logged.mypage dl {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap; }
.swpm-login-widget-logged.mypage dt, .swpm-login-widget-logged.mypage dd {
  margin: 0 0 10px;
  padding: 22px;
  font-size: 14px;
  line-height: 1.5;
  vertical-align: middle; }
.swpm-login-widget-logged.mypage dt {
  width: 220px;
  background: #f5f5f5; }
.swpm-login-widget-logged.mypage dd {
  width: calc(100% - 220px); }
@media (max-width: 480px) {
  .swpm-login-widget-logged.mypage dl {
    display: block;
    width: 100%; }
  .swpm-login-widget-logged.mypage dt, .swpm-login-widget-logged.mypage dd {
    display: block;
    width: 100%;
    padding: 10px; } }

/* 会員登録画面 reCAPTCHA対応 */
.membership-registration form.swpm-form-builder fieldset.swpm-verification {
	display: block;
	border-radius: 0;
	border-top: none;
}

.membership-registration form.swpm-form-builder .swpm-item {
	width: auto;
}

.membership-registration .swpm-verification .swpm-legend {
	display: none;
}

.membership-registration .swpm-fieldset-1 {
	border-bottom: none;
}

.membership-registration form.swpm-form-builder .submit_wrapper {
	border: none;
}

.membership-registration form.swpm-form-builder .submit_wrapper {
	width: auto;
}

.membership-registration .swpm_g_captcha .g-recaptcha-response {
	display: none !important;
}

.membership-registration .swpm_g_captcha .autoConfirmVal {
	display: none !important;
}

.membership-registration form.swpm-form-builder .swpm-section-div > h4,
.membership-registration form.swpm-form-builder .swpm-section-div > li {
	border-bottom: none;
	border-bottom: none;
}