@charset "UTF-8";
/*
LPの変更はこのCSSで作業します        
/*
/* レスポンシブのブレイクポイントは下記を使う
※記載を追加するときには、該当CSSの要素の下に追加記載をしていく
複数ある場合にはまとめて書くようにする*/

/* col-lg- 1200px以上はそのまま */

/* col-md- 1199px以下
@media screen
and (max-width: 1199px) {
}
*/

/* col-sm- 991px 以下
@media screen
and (max-width: 991px) {
}
*/

/* col-xs- 767px 以下
@media screen
and (max-width: 767px) {
}
*/

/* Webフォント読み込み 明朝 */

@import url('https://fonts.googleapis.com/css?family=EB+Garamond');

@font-face {
  font-family: 'MyYuGothicM';
  font-weight: normal;
  src: local('YuGothic-Medium'),
    /* PostScript Name = localの正式な指定方法 */
    local('Yu Gothic Medium'),
    /* PostScript Nameを認識できないChrome用にFull Nameを指定 */
    local('YuGothic-Regular');
  /* 游ゴシックMediumが存在しないWindows8.1用 */
}

@font-face {
  font-family: 'MyYuGothicM';
  font-weight: bold;
  src: local('YuGothic-Bold'),
    /* PostScript Name = localの正式な指定方法 */
    local('Yu Gothic');
  /* PostScript Nameを認識できないChrome用にFull Nameを指定 */
}

.mincho {
  font-family: Times New Roman, "Hiragino Mincho ProN", 游明朝, "Yu Mincho", YuMincho, HGS明朝E, メイリオ, Meiryo, serif;
}

/* 基本設定事項 */
* {
  box-sizing: border-box;
}

html {
  font-size: 10px;
  min-width: 100%;
  overflow-x: hidden;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

body {
  background-color: #fff;
  font-family: 'Public Sans', 'Noto Sans JP', sans-serif;
  width: 100%;
  font-size: 1.4rem;
  font-weight: 400;
  font-feature-settings: "palt";
  color: #212121;
  overflow-x: hidden;
  animation: fadeIn 2s ease 0s 1 normal;
  -webkit-animation: fadeIn 2s ease 0s 1 normal;
  line-height: 1.42857143;
  margin: 0;
  padding: 0;
}

.show-pc {
  display: block;
}

.show-sp {
  display: none;
}

p {
  font-size: 1.6rem;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.7;
  letter-spacing: normal;
}


@keyframes fadeIn {
  0% {
    opacity: 0
  }

  100% {
    opacity: 1
  }
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0
  }

  100% {
    opacity: 1
  }
}

#entry {
  position: relative;
}

a,
a:visited {
  color: #083656;
  -webkit-transition: .5s !important;
  -o-transition: .5s !important;
  transition: .5s !important;
  text-decoration: none;
}

a:active,
a:hover,
a:focus {
  color: #40769e;
  text-decoration: none !important;
}

.fa.pull-left {
  margin-right: 5px;
}

.fixed {
  position: fixed;
  bottom: 100px;
}

img {
  max-width: 100%;
}

section {
  padding: 50px 0rem;
}

ul,
dl,
ol {
  margin: 0 0 0rem 0;
  padding: 0;
}

.container {
  margin-right: auto;
  margin-left: auto;
  padding-left: 15px;
  padding-right: 15px;
  position: relative;
  width: 980px;
}

.row {
  margin-left: -15px;
  margin-right: -15px;
}

section.header-content {
  padding: 0 !important;
  max-height: 75px;
  background: rgba(0, 0, 0, 1);
  background: linear-gradient(90deg, rgba(0, 0, 0, 1) 0%, rgba(80, 80, 80, 1) 50%, rgba(0, 0, 0, 1) 100%);
  position: absolute;
  width: 100%;
  z-index: 1;
}

/* アイコンフォントのマージンあける */

i.fa {
  padding-right: 1rem;
}

/* 便利な独自CSS */

/* 親要素が指定しているフォントの60% */
.smaller50 {
  font-size: 50% !important;
}

/* 共通色 */

.main-color,
.main-color a {
  color: #bc000e !important;
}

.gray-color {
  color: #6c6c6c !important;
}

.main-color:hover a {
  opacity: 0.7 !important;
}

.bold {
  font-weight: 700 !important;
}

.underline {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, rgba(254, 239, 80, 0.5)));
  background: -webkit-linear-gradient(transparent 60%, rgba(254, 239, 80, 0.5) 60%);
  background: -o-linear-gradient(transparent 60%, rgba(254, 239, 80, 0.5) 60%);
  background: linear-gradient(transparent 60%, rgba(254, 239, 80, 0.5) 60%);
}



/* h1の余分なマージンを削除 */

h1 {
  margin: 0;
}

/* h2 メインタイトルの装飾 */

h2 {
  font-size: 4rem;
  line-height: 1.25;
  margin-top: -80px;
  padding-top: 130px;
  padding-bottom: 3rem;
  font-weight: 400;
  text-align: center;
}

h2 span {
  font-family: 'Barlow Semi Condensed', sans-serif;
}

h2 span.num {
  font-family: futura, Century Gothic;
  font-size: 32px;
  font-weight: bold;
  width: 60px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: url(../images/common/bg_num.png) no-repeat 0 0;
  background-size: contain;
  margin-right: 0.5em;
  padding: 0;
  line-height: 1;
}

h4 {
  font-size: 5rem;
  line-height: 1.25;
  margin-top: -80px;
  padding-top: 130px;
  margin-bottom: 3rem;
  font-weight: 400;
  text-align: center;
}

h5 {
  font-size: 2rem;
  padding: 0.2em 0 0.2em 1em;
  position: relative;
  display: flex;
  align-items: center;
}

/*h5:before {
  content: "";
  position: absolute;
  background: #f5b199;
  top: 0;
  left: 0;
  width: 8px;
  height: 100%;
}

h5:after {
  content: "";
  position: absolute;
  background: #ccc;
  top: 50%;
  left: 0;
  width: 8px;
  height: 50%;

}*/


.pc_only {
  display: block !important;
}

.sp_only {
  display: none !important;
}


ol li,
ul li {
  list-style: none;
}

/* flexboxを使いたい場合のクラス名 */

.flex {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
}

.f-align {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.f-align-stretch {
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
}

.f-align-s {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}

.f-direction {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.f-jus-c {
  /* Safari etc. */
  -ms-justify-content: center;
  /* IE10        */
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.flex-row {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
}

.flex-nowrap {
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

/* logo周り */

.header-content {
  animation-delay: 2s;
}

.header-content p.logo {
  position: relative;
  width: 100%;
  margin: 10px 0;
}

.header-content p.logo img {
  max-height: 50px;
  width: auto;
  margin: 0 auto;
  display: block;
}

.header-content p.logo a {
  color: #fff;
  font-size: 3rem;
}

.header-content .logo small {
  font-size: 60%;
}

.header-content_top {
  position: absolute;
  top: 0;
  right: 0;
  text-align: right;
  width: 200px;
  z-index: -1;
}

.header-content_top img {
  width: 100%;
  height: auto;
}

/*                      
ヒーローイメージ
*/

/* 1. 箱（hero_image）の設定 */
header.hero_image {
  /* ▼ 背景や余計な設定の完全リセット */
  background: none !important;
  padding: 0 !important;
  margin: 0 !important;
  min-height: auto !important;
  height: auto !important;

  /* ▼ 親要素の幅制限を突破して全幅(100vw)にする必須設定 */
  width: 100vw !important;
  position: relative !important;
  left: 50% !important;
  right: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;

  /* 要素の基準位置リセット */
  box-sizing: border-box !important;
}

/* 2. 画像（img）の設定 */
header.hero_image img {
  /* 箱に合わせて100%表示 */
  width: 100% !important;
  height: auto !important;

  /* 隙間消し・画質調整 */
  display: block !important;
  margin: 0 auto !important;
  image-rendering: -webkit-optimize-contrast;
}

/* 空のh1が悪さをしないように消す */
header.hero_image h1 {
  display: contents !important;
  /* または none */
}

.hero_image:before {
  background: inherit;
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  filter: blur(2px);
  top: 0;
  left: 0;

}


.hero_image_tokuten {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 220px;
  margin: 0;
  padding: 0;
  overflow-y: hidden;
}

.hero_image_tokuten img {
  width: 100%;
  height: auto;
  vertical-align: top;
  animation-delay: 3s;
  display: none;
}

/*
.hero_image_bg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url("../images/header_bg.png") repeat;
  background-attachment: fixed;
  display: none;
}
*/

.hero_image_bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url("../images/hero_image_bg.png") no-repeat;
  background-size: 100%;
  background-position: 0 50%;
  opacity: 0.7;
  display: flex;
  justify-content: stretch;
}

.top_content {
  padding: 0 !important;
  position: relative;
}

.top_content .special {
  position: absolute;
  top: 0;
  left: 10px;
  color: #fff;
  line-height: 1.0;
  width: 280px;
  font-size: 40px;
}

.top_content .special p {
  display: block;
  margin: 0;
  padding: 0;
  position: relative;
  color: #fff;
  line-height: 1.0;
  width: 100%;
}

.top_content .special p img {
  width: 150px;
  height: auto;
}

.top_content .special p i {
  font-size: 96%;
  padding-top: 0.4em;
}

.top_content .special p small {
  font-size: 60%;
  font-weight: 600;
}

.top_content .special p span {
  display: block;
  margin: 0;
  padding: 0 0 10px;
  width: 280px;
}

.top_content .special span img {
  width: 100%;
  height: auto;
}

.top_content h1 {
  align-items: center;
  animation-delay: 1s;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  /* max-width: 900px; */
  margin: 0 auto;
  /* padding: 40px 0 30px; */
  position: relative;
  color: #fff;
  font-size: 12rem;
  font-weight: 700;
  text-align: center;
  line-height: 1.3;
  width: auto;
}



.top_content h1 big {
  font-size: 120%;
}

.top_content h1 em {
  display: block;
  font-style: normal;
}

.top_content h1 span {
  animation-delay: 3s;
  display: inline-block;
  text-align: center;
  font-size: 60%;
  left: -60px;
  margin: 0;
  padding: 0;
  position: relative;
  width: auto;
  position: absolute;
  top: -5%;
  width: 200px;
}

.top_content h1:after {
  content: "";
  border-bottom: 3px solid #FFF;
  width: 100%;
  display: none;
}

.top_content h1 img {
  width: 90%;
  height: auto;
}

.top_content h1 span.sub {
  color: #093D6A;
  position: relative;
  font-size: 2.8rem;
  width: 88%;
  text-align: center;
  margin: 0.6em 0 0;
  padding: 0;
  left: unset;
  top: unset;
  animation-delay: 2s;
}

.top_content p.hero_lead {
  color: #fff;
  font-size: 3.4rem;
  font-weight: 600;
  margin: 0;
  padding: 0;
  text-align: center;
  animation-delay: 3.5s;
}

.top_content p.hero_lead img {
  margin: 0 auto;
  width: auto;
}

.top_content p.header_text {
  font-size: 2rem;
  position: absolute;
  top: 5rem;
  left: 0;
  text-indent: 0;
  line-height: 1.2;
  font-weight: bold;
}

.top_content p.header_text br {
  display: none;
}

.top_content h1 .h1_header {
  color: #bc000e;
}




.hero_nav {
  background: rgba(8, 54, 86, 0.9);
  width: 100%;
  min-height: 50px;
  z-index: 99;
}

.hero_nav::after,
.content03::after {
  height: 30px;
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  bottom: -30px;
}

.hero_nav::after {
  height: 30px;
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  bottom: -30px;
}

.hero_nav_list {
  width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 50px;
}

.hero_nav_list li {
  font-size: 2rem;
  padding: 0.5em 1em;
}

.hero_nav_list li a {
  display: flex;
  align-items: center;
  font-weight: 500;
  color: #fff;
}

.hero_nav_list li a:before {
  content: "\25BE";
  color: #B4B4B4;
  margin-right: 0.5em;
  font-size: 0.8em;
  width: 1em;
}



/* fixedbtn-content */

.fixedbtn-content {
  background-color: rgba(255, 255, 255, 0.7);
  background-blend-mode: multiply;
  position: fixed;
  bottom: 0px;
  width: 100%;
  padding: 1rem 0;
  text-align: center;
  z-index: 101;
  -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
}

.fixedbtn-content>.container-fluid {
  padding: 0;
}

/* CVボタン 通常時 */

.cvbtn {
  margin: 0;
}

.hs-button,
.cvbtn {
  font-weight: normal !important;
  background-color: #083656 !important;
  background-image: none !important;
  color: #FFF !important;
  position: relative !important;
  font-size: 20px !important;
  width: 420px;
  line-height: 2.5 !important;
  margin: 0 auto !important;
  border: none !important;
  text-shadow: none !important;
  border-radius: 0 !important;
}

.cvbtn a {
  color: #FFF;
  display: block;
  text-decoration: none;
  padding: 0;
}

.cvbtn:before {
  position: absolute;
  top: 0%;
  right: 5%;
  content: "\2B07";
}

.hs-button:before {
  position: absolute;
  top: 0%;
  right: 5%;
  content: "\f107";
  font-weight: 900;
  font-family: "Font Awesome 5 Free";
}

/* CVボタン マウスオーバー */

.hs-button:hover,
.cvbtn:hover {
  opacity: 0.8;
  color: #FFF;
  position: relative;
  font-size: 20px;
  width: 420px;
  line-height: 2.5;
  margin: 0 auto;
  border: none;
}

.content {}

.content h2 {
  color: #000;
  font-weight: 700;
  margin: 0 0 40px;
  padding: 0;
}

.content h2 span {
  display: block;
  font-size: 3rem;
  font-weight: 700;
  font-style: normal;
  color: #888;
  padding: 0 0 0.8em;
}

.content02 h2 {
  color: #fff;
}



/* コンテンツ01*/

.content01 {
  display: block;
  position: relative;
  /*z-index: 1;*/
}

.content01 h3 {
  border-top: solid 2px #ccc;
  border-bottom: solid 2px #ccc;
  font-size: 3rem;
  font-weight: 700;
  margin: 1em 0;
  padding: 0.5em 0 0.4em;
}


.content01 h3 img {
  text-align: center;
  margin: 0 auto;
}

.cont01_article {
  max-width: 1000px;
  margin: 50px auto 0;
}

.cont01_article:nth-child(even) {}

.cont01_article:nth-child(even) h3 {
  margin-left: 350px;
}

.cont01_article_image {
  display: block;
  float: right;
  width: 350px;
  margin: 0 0 0 50px;
}

.cont01_article_image--left {
  float: left;
  margin: 0 50px 0 0;
}

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

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

.cont01_article--center h4 {
  font-size: 24px;
  padding: 0.2em 0 0 1em;
  text-align: center;
  display: block;
}

.cont01_article--center h4:before,
.cont01_article--center h4:after {
  display: none;
}

.cont01_article--center .cont {
  display: flex;
  justify-content: space-between;
}

.cont01_article--center .cont_inner {
  width: 24%;
}

.cont01_article--center .cont_inner img {
  width: 100%;
  height: auto;
  border: solid 1px #a73836;
}


.lead {
  margin: 0 10%;
  padding: 1.3em 0 0;

}

.lead p {
  font-size: 2rem;
}

.cont01_list {
  display: flex;
  justify-content: space-between;
}

.cont01_list li {
  width: 180px;
}

.cont01_list li img {
  width: 180px;
  height: auto;
}

.cont01_list li span {
  color: #8D8D8D;
  margin-top: 2rem;
  font-size: 1.5rem;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
  display: block;
}

.point {
  max-width: 1000px;
  margin: 0 auto;
}

.point .point_inner {
  display: block;
  height: auto;
  margin: 0;
  padding: 0;
}

.point .point_inner h3 {
  border-bottom: solid 2px #F0F0F0;
  display: flex;
  justify-content: flex-start;
  font-size: 18px;
  font-weight: 600;
  align-items: center;
  margin: 0;
  padding: 0;
}

.point .point_inner h3 span {
  font-size: 150%;
  width: 5em;
  color: #195191;
  font-weight: 600;
  text-align: left;
}

.point .point_inner p {
  display: block;
  position: relative;
  margin: 1em 0;
  padding: 0;
}

/* topic_area */

.topic_area .topic_title {
  display: inline-block;
  color: #e5bf73;
  background-color: #212121;
  border-radius: 25px;
  font-size: 2rem;
  letter-spacing: 1px;
  padding: 1.3rem 3rem;
  line-height: 1rem;
  margin-bottom: 1rem;
}

.topic_area .topic_content {
  max-width: 60%;
  margin: 1rem auto;
}

.topic_area_left .topic_content_center {
  max-width: 85%;
  margin: 1rem auto;
}

.topic_area .topic_content li {
  font-size: 2.1rem;
  border-bottom: 1px dashed #ddd;
  padding-bottom: 0.4rem;
  margin-bottom: 1.7rem;
}

/* topic_area 左 */

.topic_area_left .topic_title {
  display: inline-block;
  color: #212112;
  background-color: #e5bf73;
  border-radius: 25px;
  font-size: 2rem;
  letter-spacing: 1px;
  padding: 1.3rem 3rem;
  line-height: 1rem;
  margin-bottom: 1rem;
}

.topic_area_left .topic_content {
  max-width: 100%;
  margin: 1rem auto;
}

.topic_area_left .topic_content li,
.topic_area_left .topic_content_center li {
  font-size: 2.1rem;
  border-bottom: 1px dashed rgba(255, 255, 255, 0.3);
  padding-bottom: 0.4rem;
  margin-bottom: 1.7rem;
}

/* コンテンツ02*/

.content02,
.content04 {
  background: #4D4D4D;
  color: #FFF;
  position: relative;
}

.content02 {
  background-image: url("../images/AdobeStock_938727569.jpeg");
  background-repeat: no-repeat;
  /*background-color: rgba(0, 0, 0, 0.8);*/
  /*background-blend-mode: darken;*/
  background-size: cover;
  background-attachment: fixed;
  background-size: cover;
  background-position: center;
}

.cont02_list {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  margin: 50px 50px 0;
}

.cont02_list_inner {
  width: 48%;
}

.cont02_list_inner dl {
  background: #fff;
  border-radius: 6px;
  overflow: hidden;
}

.cont02_list_inner dt {
  background: #000;
  text-align: center;
  padding: 0.5em;
  font-size: 1.8rem;
}

.cont02_list_inner dd {
  background: #fff;
  text-align: center;
  padding: 0.5em;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 4em;
  flex-wrap: wrap;
  color: #000;
  margin: 0;
  padding: 0;
  font-weight: bold;
  font-size: 2rem;
}

.cont02_list_inner ul {
  margin: 20px 0;
  padding: 0;
  width: 100%;
  border-bottom: dashed 2px #A3A3A3;
}

.cont02_list_inner ul li {
  border-top: dashed 2px #A3A3A3;
  color: #fff;
  font-size: 1.3rem;
  line-height: 1.3;
  margin: 0;
  padding: 0.7em 0;
  display: flex;
  justify-content: flex-start;
}

.cont02_list_inner ul li:nth-child(4) {
  border-top: none;
  padding-top: 0;
  padding-left: 4em;
}

.cont02_list_inner ul li p {
  margin: 0;
  padding: 0;
  font-size: 1.3rem;
}

.cont02_list_inner ul li p:first-child {
  width: 3em;
  margin-right: 1em;
}

.cont02_list li span {
  font-size: 140%;
  font-weight: bold;
}

.intro_wrap {
  padding: 0;
}

.box_program {
  margin: 50px auto;
  width: 1120px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;

}

.box_program_item {
  width: 100%;
  background: rgba(255, 255, 255, 0.95);
  background-blend-mode: lighten;
  /*background-color: #fafafa;*/
  color: #000;
  margin: 40px 0 0;
  padding: 30px 0 0;
  position: relative;
}

.box_program_item .part {
  position: absolute;
  left: -15px;
  top: -15px;
  background: #871e1e;
  font-size: 2.4rem;
  font-weight: 500;
  color: #fff;
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: center;
}

.box_program_item .part p {
  display: block;
  margin: 0;
  padding: 0.4em 0.8em;
  text-align: center;
  width: 25em;
}

.box_program_item .part p:last-child {
  background: #fff;
  border: 2px solid #871e1e;
  color: #354052;
}

.box_program_item h4 {
  border-bottom: 2px dotted #ddd;
  font-size: 2.8rem;
  line-height: 1.4;
  margin: 0;
  padding: 0 0 0.2em;
  font-weight: 600;
  text-align: left;
}

.box_program_item h4 span {
  display: inline-block;
  font-size: 60%;
  margin-left: 1em;
}

.item_inner {
  display: flex;
  justify-content: space-between;
  margin: 0 50px 20px;
  flex-wrap: wrap;
}

.item_inner_profile {
  display: flex;
  justify-content: space-between;
  margin: 0 50px 20px;
  flex-wrap: wrap;
  border-bottom: 2px solid #DDD;
}

.item_inner h3 {
  border-top: 2px solid #ddd;
  font-size: 2.8rem;
  margin: 0.7em 0 0;
  padding: 1.2em 0 1em;
  position: relative;
  text-align: center;
  width: 100%;
}

.item_inner h3:first-child {
  border-top: none;
  margin: 0;
}

.item_inner h3:before,
.item_inner h3:after {
  color: #ccc;
}

.item_inner h3:before {
  content: "\2770";
  margin-right: 0.4em;
}

.item_inner h3:after {
  content: "\2771";
  margin-left: 0.4em;
}

.item_inner h4 {
  font-size: 2.2rem;
  margin: 0 0 0.7em;
  padding: 0 0 0.2em;
}

.item_inner h4 span {
  display: inline-block;
  font-size: 60%;
  margin-left: 1em;
  font-weight: normal;
}

.box_program_item h5 {
  font-size: 1.5rem;
  font-weight: 600;
  margin: 0.5em 0 0.3em;
}

.item_inner_title {
  width: 100%;
  font-size: 3.4rem;
  font-weight: 600;
  line-height: 1.4;
  padding: 0 0 0.3em 3em;
  position: relative;
}

.item_inner_title:before {
  position: absolute;
  content: "テーマ：";
  font-size: 60%;
  left: 0;
  top: 0.5em;

}

.item_inner_list {


  margin: 0 0 20px;
  padding: 0 0 20px;
  width: 100%;
}

.item_inner_list ul {
  margin: 0;
  padding: 0 0 0 20px;
  width: auto;
}

.item_inner_list li {
  font-size: 2rem;
  font-weight: 500;
  padding: 0 0 0.4em 1.3em;
  position: relative;
}

.item_inner_list li:before {
  color: #555;
  content: "\261B";
  left: 0;
  position: absolute;
}

.item_inner_list_image {
  width: 35%;
}

.item_inner_img {
  width: 240px;
}

.item_inner_img img {
  width: 100%;
  height: auto;
  border: 1px solid #ddd;
}

.item_inner_right {
  width: calc(100% - 280px);
  font-size: 1.4rem;
  line-height: 1.4;
  text-align: justify;
  padding: 0 0 20px;
}

.item_inner h5 {
  font-size: 1.6rem;
  margin: 0.5em 0 0.2em;
  padding: 0.2em 0 0.2em 0;
}

.item_inner h5:before {
  content: "\25A3";
  margin-right: 0.3em;
}

.item_inner_right p {

  line-height: 1.5;
}

.item_inner_right p span {
  display: block;
  font-size: 1.6rem;
  font-weight: 600;
  margin: 0 0 20px;
}

.item_inner_right span small {
  display: block;
  font-size: 80%;
}

.item_inner_btn {
  display: block;
  margin: 30 auto 0;
  width: 100%;
  animation-delay: 3.5s;
}

.item_inner_btn a {
  background: #bc000e;
  box-shadow: 0 3px 0 #912626;
  border-radius: 8px;
  color: #fff;
  display: block;
  font-size: 2rem;
  font-weight: 600;
  padding: 0.3em;
  text-align: center;
  margin: 0 auto;
  width: 12em;
}

.item_inner_btn a:before {
  content: "\27A9";
  margin-right: 0.3em;
}

.item_inner_btn a:hover {
  background: #912626;
}

.item_inner_results {
  display: flex;
  justify-content: space-between;
  width: 100%;

}

.item_inner_results h6 {
  font-size: 1.5rem;
  margin: 0.5em 0 0.3em;
  padding: 0;
  width: 100%;

}

.item_inner_results_left {
  width: 16%;
  flex-wrap: wrap;
  margin-right: 6%;
}

.item_inner_book {
  margin: 0;
  display: flex;
  justify-content: flex-start;
  width: 78%;
  flex-wrap: wrap;
}

.item_inner_book p {
  font-size: 1rem;
  line-height: 1.3;
  text-align: center;
  width: 17%;
  margin: 0 3% 0 0;
}

.item_inner_results p img {
  width: 100%;
  height: auto;

}

.item_inner_results p span {
  display: block;
  font-size: 1rem;
  padding: 1em 0 0;
}

.item_inner_seminar {
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.item_inner_about {}

.item_inner_about ul {
  display: flex;
  justify-content: space-between;
  width: 100%;
  flex-wrap: wrap;
  margin: 0 0 30px;
}

.item_inner_about ul li p {

  font-weight: 600;
  min-height: 4em;
  margin: 0;
  padding: 0 0 0.5em;
  text-align: center;
  width: 100%;
}

.item_inner_content ul li p {
  font-size: 1.8rem;
}

.item_inner_about ul.col3 li {
  margin: 20px 0 0;
  width: 31%;
}

.item_inner_about p {
  display: block;
  margin: 2em 2.5% 2em;
  padding: 0.5em 0 1em;
  width: auto;
}

.item_inner_about ul.col2 {
  border-top: 2px dotted #ddd;
  padding: 30px 0 0;
}

.item_inner_about ul.col2 li {
  width: 48%;

}

.item_inner_speakers {
  width: auto;
  border-top: 2px dotted #ddd;
  ;
}

.item_inner_speakers ul.col3 {
  padding: 30px 5% 40px;
  display: flex;
  justify-content: space-between;

}

.item_inner_speakers ul.col3 li {
  width: 29%;
}

.item_inner_speakers ul.col3 li p {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: unset;
  margin: 0.2em 0;
}

.item_inner_speakers ul.col3 li p span {
  font-size: 80%;
  font-weight: 300;
  margin-right: 1.3em;
}



.seminar_child {
  width: 48.5%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  margin: 0 0 30px;

}

.seminar_child h5 {
  display: flex;
  align-items: center;
  width: 100%;
  background: #000;
  color: #fff;
  font-size: 1.7rem;
  margin: 0 0 10px;
  padding: 0.5em;
  position: relative;
}

.seminar_child h5:after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 14px 14px 0;
  border-color: transparent #efefef transparent transparent;
  position: absolute;
  right: 0;
  top: 0;
}

.seminar_child h5 span {
  background: #cdcdcd;
  color: #000;
  font-size: 70%;
  font-weight: 400;
  padding: 0.4em 1em;
  margin-left: auto;
  margin-right: 1.3em;
}

.seminar_child h5 small {
  font-weight: 400;
  margin-top: auto;
  margin-bottom: 0.2em;
  margin-left: 0.6em;

}



.seminar_child p {
  font-size: 1.7rem;
  font-weight: 600;
  margin: 0;
  padding: 0.3em 0.2em 0.7em;
  line-height: 1.4;
  width: calc(100% - 5em);
}

.seminar_child p a {
  color: #000;
}


.seminar_child p:last-child {
  font-size: 70%;
  width: 7em;

}

.seminar_child p:last-child a {
  border-radius: 4px;
  /*box-shadow: 0 2px 0 #225989;*/
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 75%;
  background: #9ec5e6;
  color: #333;
  padding: 0.5em;
  text-align: center;
}

.seminar_child p:last-child a:after {
  content: "\e923";
  font-family: zo-icons;
  margin-left: 0.2em;
  color: #666;
}

.seminar_child p span {
  display: block;
  font-size: 70%;
}

.seminar_child.full {
  position: relative;

}

.seminar_child.full h5 {
  opacity: 0.1;
}

.seminar_child.full p {
  opacity: 0.1;
}

.seminar_child.full:before {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  content: "満席のため受付終了しました";
  color: #000;
  font-size: 1.3rem;
  font-weight: 600;
}

.introArea {
  position: relative;
  box-sizing: border-box;
  background-color: rgba(255, 255, 255, 0.95);
  padding: 0;
  color: #212121;
  margin: 50px auto;
  width: 100%;
  display: flex;
  flex-wrap: wrap;

}

.introArea .intro_part {
  /*position: absolute;
  left: -15px;
  top: -15px;*/
  background: #083656;
  /*border: 2px solid #871e1e;*/
  font-size: 1.4rem;
  font-weight: 500;
  color: #fff;
  padding: 0;
  display: flex;
  align-items: center;
  width: 100%;

}

.introArea .intro_part p {
  font-size: 2.2rem;
  margin: 0;
  padding: 0.3em;
  width: 50%;
  text-align: center;
  font-weight: 600;
}

.introArea .intro_part p:last-child {
  align-items: center;
  background: #b3d0e7;
  color: #354052;
  display: flex;
  font-size: 1.8rem;
  justify-content: center;
  width: 50%;
  height: 100%;
}

.introArea .intro_part p span {
  display: block;
  font-size: 80%;
  font-weight: 400;
}

.introArea h4 {
  margin: 0;
  padding: 40px 0 40px 2%;
  font-size: 2.4rem;
  font-weight: 700;
  display: block;
  line-height: 1.2;
  width: 75%
}

.introArea h4 small {
  font-size: 70%;
  font-weight: 600;
  display: block;
  padding: 0 0 0.3em;
}

.introArea--last h4 {
  padding: 15px 5% 0;
}

.introArea h4:before,
.introArea h4:after {
  content: none;
}

.introArea h4 span {
  display: block;
  padding: 0.5em 0 0;
  font-size: 40%;
  font-weight: 300;
  text-align: right;
}

.introArea h4 span em {
  font-weight: 500;
  font-style: normal;
}

.introArea p.speech-content {
  padding: 0 35% 0 15px;
}

.introArea ul {
  margin: 0.5em 0 0 15px;
}

.introArea ul li {
  color: #6c2c2f;
  font-weight: 600;
  padding: 0.2em 0 0.2em 1em;
  position: relative;
}

.introArea ul li:before {
  content: "・";
  position: absolute;
  left: 0;
}

.introArea--last p.speech-content {
  width: 88%;
  margin: 0 auto;
  padding: 20px 0 30px;
}

.introArea--last ul {
  width: 88%;
  margin: 0 auto;
}



.introArea_profile {
  background: #F7F7F7;
  padding: 15px;
  padding-right: 35%;
}

.introArea_profile p {
  margin: 0;
  padding: 0;
  font-size: 1.6rem;
}

.introArea_profile p.intro_name {
  font-size: 3rem;
  font-weight: 700;
  text-align: right;
  padding: 0 0 0.3em;
}

.introArea_profile p.intro_name span {
  font-size: 1.7rem;
  font-weight: 500;
  padding-left: 1em;
  color: #aaa;
  font-family: futura, Century Gothic, sans-serif;
}

.introArea_right {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 25%;
  /*height: 100%;
  position: absolute;
  top: 0;
  right: 0;*/
}

.introArea_right a {
  background: #2e5877;
  box-shadow: 0 3px 0 #083656;
  border-radius: 8px;
  color: #fff !important;
  display: block;
  font-size: 1.6rem;
  font-weight: 600;
  padding: 0.5em 0;
  text-align: center;
  margin: 0;
  width: 90%;
}

.introArea_right a:before {
  content: "\e934";
  font-family: icons;
  margin-right: 0.3em;
}

.introArea_right a:hover,
.introArea_right a:active,
.introArea_right a:visited,
.introArea_right a::focus {
  color: #fff;
  background: #083656;
}

.introArea_right--part2 {
  background: url(../images/intro_bg_tomita.png) no-repeat 100% 0;
  background-size: cover;
}

.introArea_right--part3 {
  background: url(../images/intro_bg_zuucool.png?20012202) no-repeat 100% 0;
  background-size: cover;
}

.introArea_right--part4 {
  background: url(../images/intro_bg_moriyama.png?20012202) no-repeat 100% 0;
  background-size: cover;
}

.name_sub {
  text-transform: uppercase;
  font-size: 1.4rem;
  margin-left: 2rem;
  font-family: Futura, Century Gothic, sans-serif;
  color: #ccc;
  letter-spacing: 0.1em;
  font-weight: normal;
}

.introArea .introImag {
  position: absolute;
  bottom: -1px;
  right: -20px;
  padding: 0;
  text-align: right;
}

.introArea .introImag img {
  width: 300px;
  height: auto;
}

.intro li .introText {
  position: relative;
  left: 33.33333%;
  padding: 20px;
}

.introArea .introText dt {
  font-size: 3.3rem;
  margin-bottom: 10px;
  font-weight: bold;
}

.introArea .introText dd {
  font-size: 1.4rem;
  margin: 0 230px 0 0;
  text-align: justify;
}

.introArea .introText dd.literary {
  font-size: 1.3rem;
  display: flex;
  flex-wrap: wrap;
  position: relative;
  color: #212121;
  padding: 10px 0 0;
}

.introArea .introText dd.literary h4 {
  width: 100%;
  margin: 0;
  padding: 0;
}

.introArea .introText dd.literary p {
  font-size: 0.8rem;
  width: 20%;
  text-align: center;
  box-sizing: border-box;
  padding: 0 3%;
  line-height: 1.2;
}

.introArea .introText dd.literary p img {
  height: 130px;
  width: auto;
  margin: 0 auto 10px;
  display: block;
  border: 1px solid #ddd;
}

.introArea .introText dd.literary p span {
  font-size: 80%;
  display: block;
  padding: 0.3em 0 0;
}

.introArea .introText dt br {
  display: none;
}

.introArea--reverse .introImag {
  position: absolute;
  bottom: -1px;
  left: -20px;
  padding: 0;
  text-align: left;
}

.introArea--reverse .introText {
  margin: 0 30px 0 0;
}

.introArea--reverse .introText dt {
  margin: 0 0 10px 210px;
}

.introArea--reverse .introText dd {
  margin: 0 0 0 210px;
}

/* 背景白コンテンツの場合（デフォルトが白でない場合は使う） */

.white-content {
  background-color: #FFF !important;
}

/* content03 */

.content03 {
  display: block;
  position: relative;

  display: block;
  position: relative;
  background-image: url("../images/bg_02.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
  background-size: cover;
  background-position: center;
  /*background-color: rgba(8,54,86,0.8);
  background-blend-mode: darken;*/
  background-color: rgba(255, 255, 255, 0.9);
  background-blend-mode: lighten;
}

.content03 .container {
  width: 980px;
  margin: 50px auto;
}

.cont03_inner {
  padding: 0 0 40px;
}

.cont03_inner p {
  margin: 0.5em 0 0;
  padding: 0;
  width: auto;
}

.cont03_inner .cover {
  float: left;
  margin: -10px 40px 0 0;
  padding: 0;
  position: relative;
}

.cont03_inner .cover span {
  position: absolute;
  bottom: -40px;
  right: -70px;
}

.cont03_inner .bt {
  margin: 50px 0 0;
  text-align: center;
  padding-left: 300px;
}

.cont03_inner .bt a {
  display: block;
  font-weight: normal !important;
  background-color: #bc000e !important;
  background-image: none !important;
  color: #FFF !important;
  padding: 0.3em;
  position: relative !important;
  font-size: 20px !important;
  width: 350px;
  margin: 0 auto !important;
  border: none !important;
  text-shadow: none !important;
  text-align: center;
}

.pdca_area {
  background-color: #FFF;
}

.pdca_area li img {
  max-height: 500px;
  width: auto;
}

/* コンテンツ04*/

.content04 {
  display: block;
  position: relative;
  background: #eee;
  background-image: url("../images/bg_02.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
  background-size: cover;
  background-position: center;
  background-color: rgba(255, 255, 255, 0.9);
  background-blend-mode: lighten;
}

.cont04_inner h3 {
  color: #fff;
  display: flex;
  align-items: center;
  background: #176F9D;
  padding: 5px;
  position: relative;
  padding-left: 16em;
}

.cont04_inner h3 span {
  background: #054364;
  position: absolute;
  left: 0;
  top: 0;
  padding: 5px 1.5em 5px 0.7em;
  height: 100%;
  overflow: hidden;
}

.cont04_inner h3 span em {
  font-style: normal;
}

.cont04_inner h3 span span {
  position: relative;
  left: unset;
  top: unset;
  padding: 0;
  color: #FDC454;
}

.cont04_inner_before-after {
  display: flex;
  justify-content: space-between;
  margin: 50px auto 0;
  position: relative;
  width: 940px;
}

.cont04_inner_before-after div:first-child {
  margin-right: 70px;
}

.before-after_inner {
  width: 430px;
  box-sizing: border-box;
  position: relative;

}

.before-after_inner:first-child:after {
  content: "";
  width: 110px;
  height: 77px;
  background: url(../images/common/sec03_arrow.png) no-repeat 0 0;
  background-size: cover;
  position: absolute;
  top: 30%;
  right: -96px;
  z-index: 2;
}

.before-after_inner p {
  font-size: 18px;
  font-weight: bold;
  text-align: center;
}

.before-after_inner p.comment {
  color: #054364;
  font-size: 18px;
  font-weight: bold;
}

.before-after_inner p.img {
  font-size: 18px;
  font-weight: bold;
  border: solid 1px #ccc;
  padding: 20px 0;
  position: relative;
}

.before-after_inner p.img--color {
  background: #EEEEF2;
  border: solid 1px #EEEEF2;

}

.before-after_inner p.img:before {
  position: absolute;
  line-height: 1.3;
  border-radius: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 60px;
  left: -30px;
  top: -30px;
  color: #fff;
}

.before-after_inner:first-child p.img:before {
  background: #A5A5A5;
  content: "現状";
  width: 60px;
}

.before-after_inner:last-child p.img:before {
  background: #7A95CB;
  content: "鬼速PDCA\Aプログラム後";
  white-space: pre;
  width: 150px;
}

.cont04_inner_balloon {
  background: #FFF4F4;
  border: solid 2px #F4B2B2;
  box-sizing: border-box;
  color: #535353;
  margin: 30px 0 60px 100px;
  padding: 10px;
  position: relative;
  width: 50%;
}

.cont04_inner_balloon--sp {
  display: none;
}



.cont04_inner_balloon:before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 15px 50px 15px;
  border-color: transparent transparent #f4b2b2 transparent;
  position: absolute;
  left: 30px;
  top: -50px;
}

.cont04_inner_balloon:after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 13px 46px 13px;
  border-color: transparent transparent #FFF4F4 transparent;
  position: absolute;
  left: 32px;
  top: -44px;
}

.cont04_inner_balloon h4 {
  color: #D66C6C;
  margin: 0;
  padding: 0 0 0.5em;
  display: flex;
  align-items: center;
}

.cont04_inner_balloon h4:before {
  content: "\ea3d";
  font-family: zo-icons;
  font-weight: normal;
  font-size: 140%;
  margin-right: 0.3em;
}

.cont04_inner_balloon ul li {
  font-size: 14px;
  padding: 0 0 0.4em;
}

.cont04_inner_balloon ul li:before {
  content: "\eb38";
  font-family: zo-icons;
  margin-right: 0.4em;
}

.content05 {
  position: relative;
  /*background-image: url("../images/bg_02.jpg");
  background-repeat: no-repeat;
  background-color: rgba(6,42,60,0.8);
  background-blend-mode: darken;
  background-size: cover;
  background-attachment: fixed;
  background-size: cover;
  background-position: center;*/
  background: #fff;
}

.three-points {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

.content05 h2 {
  color: #000;

}

.content05 h3 {
  background: #176F9D;
  color: #000;
  width: 100%;
  margin: 40px 0 0;
  padding: 0.3em 0;
  text-align: center;
}



.three-points h3 {}

.three-points_inner {
  width: 330px;
  background: #fff;
  border: solid 2px #ED0000;
  margin: 30px 30px 30px 0;
  padding: 0;
}

.three-points_inner:last-child {
  margin-right: 0;
}

.three-points_inner h4 {
  background: #ED0000;
  color: #fff;
  text-align: center;
  margin: 0;
  padding: 0.5em 0;

}

.three-points_inner p {
  width: 290px;
  margin: 0 auto 20px;
  font-size: 14px;
  text-align: justify;
}

.three-points_inner p.img {
  margin-top: 20px;
}

.original {
  width: 1100px;
  margin: 0 auto 40px;
  display: flex;
  justify-content: space-between;
}

.original_inner {
  width: 47%;
}

.original_inner h4 {
  color: #ED0000;
  font-size: 18px;
  margin: 1.5em 0 0.4em;
  padding: 0 0 0 1.4em;
  font-weight: normal;
  position: relative;
}

.original_inner h4:before {
  font-family: zo-icons;
  content: "\eb95";
  margin-right: 0.4em;
  position: absolute;
  left: 0;
}

.original_inner .left {
  font-size: 14px;
  padding: 0 0 0 1em;
}

.original_inner .left li {
  font-size: 16px;
  padding-left: 0.5em;

}

.original_inner .left li:before {
  position: absolute;
  left: 1em;
  content: "・";
}

.original_inner .right {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.original_inner .right li {
  width: 32%;
  text-align: center;
  padding: 0 0 20px;
}

.original_inner .right li:first-child {
  width: 100%;
}

.book {
  width: 1100px;
  margin: 30px auto;
}

.book p.cover {
  width: 280px;
  float: left;
  margin: 0;
}

.book p.text {
  margin: 40px 0 0;
  padding-left: 340px;
}

.book p.text span {
  margin: 30px 0 0;
  display: block;
}

.system {
  width: 1100px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.system li {
  width: 32%;
  text-align: center;
  font-size: 14px;
  padding: 0 0 40px;
}

.system li span {
  display: block;
  padding: 0.5em 0 0;
  font-size: 14px;
}

.content06 {
  background: #fff;
  /*z-index: -4;*/
  position: relative;
}

.content06:after {
  height: 30px;
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  bottom: -30px;
  background: linear-gradient(135deg, #fff 10px, transparent 0), linear-gradient(225deg, #fff 10px, transparent 0);
  background-size: 30px 30px;
  /*z-index: 5;*/
}

.content07 {

  position: relative;
}

.detail_Area {
  max-width: 900px;
  margin: 20px auto 0;
  padding: 0;
  background: #eee;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  font-size: 1.8rem;
}

.detail_Area dt {
  box-sizing: border-box;
  background: #083656;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 0 2px;
  padding: 0.5em;
  font-weight: 600;
  text-align: left;
  width: 20%;

}

.detail_Area dd {
  box-sizing: border-box;
  background: #fff;
  color: #000;
  font-size: 1.7rem;
  margin: 0 0 2px;
  padding: 0.5em 1em;
  width: 80%;
}

.detail_Area dd p {
  display: block;
  font-size: 1.7rem;
  margin: 0;
  padding: 0 0 0.4em;
}

.detail_Area dd .note {
  color: #777;
  display: block;
  font-size: 70%;
  margin: 0.3em 0 0;
  position: relative;
  padding-left: 1.3em;
}

.detail_Area dd .note:before {
  content: "\2726";
  position: absolute;
  left: 0;
}

.detail_Area dd .full,
.detail_Area dd .ended {
  color: #a3a3a3;
  display: inline-block;
  position: relative;
  text-decoration: line-through;
}

.detail_Area dd .full:after,
.detail_Area dd .ended:after {
  color: #000;
  position: absolute;
  right: 0;
}

.detail_Area dd .full:after {
  content: "（満席）";
}

.detail_Area dd .ended:after {
  content: "（終了）";
}

.detail_Area dd p em {
  font-style: normal;
  font-weight: bold;
}

.detail_Area dd p em.sat {
  color: #2e50ce;
}

.detail_Area dd p em.sun {
  color: #bc000e;
}




.detail_Area dd table {
  margin: 0;
  font-size: 1.4rem;
}

.detail_Area dd table th {
  width: 5em;
  font-weight: 500;
  text-align: left;
}

.detail_Area dd table th,
.detail_Area table td {
  padding: 0.3em 0 0;
  vertical-align: top;
}

.detail_Area_inner p {
  font-size: 2rem;
  margin: 0;
  padding: 0 0 0.5em;
  font-weight: 500;
}

.detail_Area_inner ul,
.detail_Area_table td ul {
  padding: 15px 0;

}

.detail_Area_inner ul li,
.detail_Area_table td ul li {
  font-size: 1.2rem;
  font-weight: 300;
  position: relative;
  margin-left: 1em;
}

.detail_Area_inner ul li:before,
.detail_Area_table td ul li:before {
  content: "・";
  position: absolute;
  left: -1em;
}

.detail_Area_inner ul li p.btn {
  padding-left: 0;
  text-align: center;
  display: block;
}

.detail_Area_inner ul li p.btn:before {
  content: "";
}

.detail_Area_inner ul li p.btn a {
  background: #021043;
  color: #fff;
  display: block;
  text-align: center;
  width: 17em;
  margin: 10px auto;
  padding: 0.6em;
  font-size: 110%;
}

.detail_Area_inner ul li p.btn a:hover {
  background: #0D6491;
}

.detail_Area_inner ul.subject li:before,
.detail_Area_table td ul.subject li:before {
  content: "※";
}








.inner_venue {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 auto;
  padding: 0 0 30px;
  width: 900px;
}

.inner_venue h3 {
  width: 100%;
  cursor: pointer;
  background: #0D4C74;
  border-bottom: 2px solid #5F839A;
  color: #fff;
  font-size: 2.5rem;
  font-weight: bold;
  margin: 10px 0 0;
  padding: 0.4em 0.7em;
  text-align: center;
  position: relative;
}

.inner_venue h3:after {
  content: "\e932";
  font-family: icons;
  position: absolute;
  right: 1em;
}

.inner_venue h3.active {
  color: yellow;
}

.inner_venue h3.active:after {
  content: "\e935";
}


.inner_venue .area_detail {
  display: none;
  background: #fff;
  font-size: 1.6rem;
  margin: 0;
  padding: 0 20px 20px;
  width: 100%;
}

.inner_venue .area_detail h4 {
  font-size: 2.4rem;
  font-weight: 700;
  margin: 1em 0 0.3em;
  padding: 0 0 0 0.7em;
  text-align: left;
  position: relative;
}

.inner_venue .area_detail h4:before {
  content: "";
  width: 8px;
  height: 100%;
  left: 0;
  top: 0;
  background: #76a1bc;
  position: absolute;
}

.inner_venue .area_detail h4:after {
  content: "";
  position: absolute;
  background: #ccc;
  top: 50%;
  left: 0;
  width: 8px;
  height: 50%;
}

.inner_venue .area_detail p {
  font-size: 1.6rem;
  display: block;
  margin: 0 0 0 20px;
  padding: 0 0 0.6em;
}

.inner_venue .area_detail p.venue_name {
  font-weight: 700;
  font-size: 2rem;
}

.inner_venue .area_detail p span {
  font-size: 80%;
  font-weight: 400;
  display: block;
  margin: 0.5em 0 0;
}

.inner_venue .area_detail p a.btn_access {
  margin: 0 0 0 1em;
  text-decoration: none;
  color: #0061B4;
}

.inner_venue .area_detail p a.btn_access:after {
  content: "\e95e";
  font-family: icons;
}

.inner_venue .area_detail p.notes {
  font-size: 1.4rem;
  margin: 0 0 0 20px;
  padding: 0 0 0.3em 1.2em;
  position: relative;

}

.inner_venue .area_detail p.notes:before {
  color: #777;
  content: "\f128";
  font-family: icons;
  position: absolute;
  left: 0;


}


.inner_venue .area_detail ul.dates {
  display: flex;
  justify-content: flex-start;
  width: 100%;
  margin: 0 0 0 20px;
  flex-wrap: wrap;
}

.inner_venue .area_detail ul.dates li {
  width: 25%;
  font-size: 2.2rem;
  margin: 0 0 0.7em;
}

.inner_venue .area_detail ul.dates li.ended {
  text-decoration: line-through;
  color: #aaa;
}

.inner_venue .area_detail ul.dates li span {
  display: block;
  font-size: 1.7rem;
}

.inner_venue .area_detail .area_detail_inner {
  display: flex;
  justify-content: space-between;
  width: 100%;

}

.inner_venue .area_detail .area_detail_inner h5 {
  font-size: 1.8rem;
  margin: 0;
  padding: 0;
}

.inner_venue .area_detail .area_detail_inner p {
  margin-left: 0;
}

.inner_venue .area_detail .area_detail_inner p.btn {
  margin: 20px 0 0;
}

.inner_venue .area_detail .area_detail_inner p.btn a {
  background: #EEE;
  border-bottom: 2px solid #ddd;
  color: #000;
  font-size: 1.5rem;
  font-weight: 600;
  margin: 0;
  padding: 10px 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  width: 100%;
  border-radius: 4px;
  position: relative;
}

.inner_venue .area_detail .area_detail_inner p.btn a:before {
  content: "\e912";
  font-family: icons;
  margin-right: 0.2em;
}

.inner_venue .area_detail .area_detail_inner p.btn a:hover {
  background: #0D4C74;
  border-bottom: 2px solid #052539;
  color: #FFF;
}

.inner_venue .area_detail .area_detail_inner p.btn a span {
  font-size: 1rem;
  width: 100%;
  margin: 0.4em 0 0;
  padding: 0;
}

.inner_venue .area_detail .area_detail_inner .area_detail_address {
  width: 55%;
  padding: 0 20px 0 20px;
}

.inner_venue .area_detail .area_detail_inner .area_detail_map {
  width: 45%;
  text-align: center;
}

.inner_venue .area_detail .area_detail_inner .area_detail_map img {
  width: 100%;
  height: auto;
}

.inner_venue_item {
  width: 49%;
  position: relative;
  margin: 10px 0 0;
  padding: 0;
}

.detail_Area_inner h4.inner_venue_item_title {
  text-align: center;
  box-sizing: border-box;
  font-size: 1.5rem;
  font-weight: 500;
  margin: 0 0 0.8em;
  padding: 0.5em;
  background: #a86965;
  color: #fff;
  width: 100%;
}

.detail_Area_inner h4.inner_venue_item_title:before,
.detail_Area_inner h4.inner_venue_item_title:after {
  content: none;
  display: none;
}

.inner_venue_item h5 {
  font-size: 1.8rem;
  margin: 0;
  padding: 0 10px;
  font-weight: 500;
}

.inner_venue_item h5 small {
  display: inline-block;
  margin-left: 0.8em;
  font-weight: 400;
}

.detail_Area_inner p,
.detail_Area_table td p {
  padding: 0 10px;
}

.detail_Area_inner p.inner_venue_item_date {
  font-size: 2.4rem;
  line-height: 1.3;
  font-weight: 700;
  margin-bottom: 0.1em !important;
  color: #a73836;
}

.detail_Area_inner p.inner_venue_item_date-ended {
  color: #a78282;
}

.detail_Area_inner p.inner_venue_item_date span {
  font-size: 1.5rem;
}

.detail_Area_inner p.inner_venue_item_address {
  font-size: 1.4rem;
  font-weight: 400;
}

.detail_Area_inner p.inner_venue_item_access {
  margin: 10px 0;
}

.inner_venue_item_access a {
  background: #eee;
  display: block;
  margin: 0 20%;
  padding: 0.5em;
  text-align: center;
  font-size: 1.3rem;
  text-decoration: none;
  color: #666;
  border-radius: 6px;
  box-shadow: 0 3px 0 #ddd;
}

.detail_Area .venue {
  position: relative;
  padding: 0;
  display: flex;
  justify-content: space-between;

}

.detail_Area .venue p {
  font-size: 1.4rem;
  font-weight: 300;
}

.detail_Area .venue .gmap {
  padding: 0 0 15px;
}


.detail_Area .venue .gmapleft {
  width: calc(100% - 340px);
}

.detail_Area .venue .gmapleft h4 {
  background: #6C8490;
  color: #fff;
  font-weight: 300;
  font-size: 1.4rem;
  margin: 0;
  padding-left: 0.4em;
}

.detail_Area .venue .gmapleft h4:before,
.detail_Area .venue .gmapleft h4:after {
  content: none;
}

.detail_Area .venue .cname {
  font-weight: bold;
  font-size: 18px;
}

.detail_Area .venue .address {
  font-size: 14px;
  margin: 0;
  padding: 0 0 1em;
}

.detail_Area .venue .access {
  font-size: 12px;
  margin: 0;
  padding: 0.5em 0 10px 0.2em;
}

.detail_Area .venue .cname small {
  font-weight: normal;
  font-size: 70%;
}



/* content_zuu */

.content_zuu {
  background-color: #969696;
  color: #FFF;
  padding: 1rem 0;
}

.content_zuu h3 {
  font-size: 2.5rem;
}

.content_zuu p {
  font-size: 1.4rem;
}

/* 前面に出したいコンテンツがあるときに使う */

.form-content {
  position: relative;
}

.footer-content {
  position: relative;
  z-index: 80;
  padding: 1rem;
}

/* form */

.content05 .container {
  width: 980px;
}

.formArea {}

fieldset {
  margin: 0 auto !important;
  max-width: 100% !important;
}



.formArea input[type="text"],
.formArea input[type="password"],
.formArea input[type="datetime"],
.formArea input[type="datetime-local"],
.formArea input[type="date"],
.formArea input[type="month"],
.formArea input[type="time"],
.formArea input[type="week"],
.formArea input[type="number"],
.formArea input[type="email"],
.formArea input[type="url"],
.formArea input[type="search"],
.formArea input[type="tel"],
.formArea input[type="color"],
.formArea input[type="file"],
.formArea textarea {
  background-color: #ffffff;
  border: solid 1px #6c6c6c;
  font-size: 1.6rem;
  padding: 1rem;
  color: #212121;
  max-width: 100%;
  border-radius: 0;
}

.formArea .icon_n {
  font-size: 10px;
  color: #FFF;
  background-color: #d94040;
}

.formArea .hs_lastname label,
.formArea .hs_firstname label,
.formArea .hs_email label,
.formArea .hs_phone label,
.formArea .hs_seminar_date label {
  padding-left: 0;
  font-weight: normal;
}

/* セレクト */

select {
  outline: none;
  text-indent: 0.01px;
  text-overflow: '';
  background: #FFF;
  vertical-align: middle;
  font-size: inherit;
  color: inherit;
  -webkit-appearance: button;
  -moz-appearance: button;
  appearance: button;
  border: solid 1px #6c6c6c;
}

.hs-fieldtype-select .input {
  position: relative;
  width: 105%;
  margin: 0;
  padding: 0;
}

.hs-fieldtype-select .input:before {
  z-index: 1;
  position: absolute;
  right: 14%;
  top: 0px;
  content: "\f078";
  font-weight: 900;
  font-family: "Font Awesome 5 Free";
  line-height: 43px;
  color: #212121;
  font-size: 12px;
  padding: 0;
  pointer-events: none;
}

select.hs-input {
  height: 40px !important;
  border: solid 1px #6c6c6c !important;
  border-radius: 0px !important;
  padding-left: 1rem !important;
}

select option {
  background-color: #fff;
  color: #333;
}

select::-ms-expand {
  display: none;
}

select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #828c9a;
}

/* エラー時のメッセージ設定 */

.formArea .hs-form-checkbox label,
.hs-error-msgs li label {
  border-left: none !important;
  padding-left: 0 !important;
}

.hs-error-msgs {
  margin: 0rem 0 1rem 0;
  padding: 0;
}

.hs-error-msgs li label {
  color: #dd4542 !important;
  font-size: 12px !important;
  text-align: left !important;
  font-style: italic !important;
}

.hs-form-required {
  color: #b71c1c !important;
}

.actions {
  text-align: center;
  margin: 1rem 0;
}

/* 初期値テキストカラー */

.hs-form input::-webkit-input-placeholder {
  color: #adadad;
  font-size: 16px;
}

.hs-form input::-moz-placeholder {
  color: #adadad;
  font-size: 16px;
}

.hs-form input:-moz-placeholder {
  color: #adadad;
  font-size: 16px;
}

.hs-form input:-ms-input-placeholder {
  color: #adadad;
  font-size: 16px;
}

.hs-richtext {
  font-weight: normal;
  font-size: 2rem !important;
}

.hs-richtext h6 {
  font-weight: normal;
}

form.form p.submit input {
  border: 1px solid #bc000e;
  background-color: #000 !important;
}

/* footer */

.footer-content {
  background-color: #083656;
  color: #FFF;
  font-size: 12px;
  text-align: center;
}

/*  ＊＊＊＊＊＊＊＊＊＊＊＊
*****LP内のアニメーション部分について*****
＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊
用意しているアニメーション
全てクラス名で指定

「fade系」
.fadeIn
.fadeUp
.fadeDown
.fadeRight
.fadeLeft

「zoom系」
.zoomOut
.zoomIn
.zoomOutUp
.zoomOutLeft
.zoomOutDown
.zoomOutRight

「フリップ」
.flip
.flipX
.flipY

「ロール系」
.rollUp
.rollRight
.rollDown
.rollLeft

「くるっとまわって現れる」
.rotate
.rotateDownLeft
.rotateDownRight
.rotateUpLeft
.rotateUpRight

「スライド」
.slideUp
.slideUp
.slideRight
.slideDown
.slideLeft

「」

*/


/* 画面外にいる状態 */
.fadein {
  opacity: 0.05;
  transform: translate(0, 50px);
  transition: all 700ms;
}

/* 画面内に入った状態 */
.fadein.scrollin {
  opacity: 1;
  transform: translate(0, 0);
}

/* Toggle Button */
#nav-toggle {
  display: none;
  position: absolute;
  right: 12px;
  top: 14px;
  width: 34px;
  height: 36px;
  cursor: pointer;
  z-index: 101;
}

#nav-toggle div {
  position: relative;
}

#nav-toggle span {
  display: block;
  position: absolute;
  height: 4px;
  width: 100%;
  background: #666;
  left: 0;
  -webkit-transition: .35s ease-in-out;
  -moz-transition: .35s ease-in-out;
  transition: .35s ease-in-out;
}

#nav-toggle span:nth-child(1) {
  top: 0;
}

#nav-toggle span:nth-child(2) {
  top: 11px;
}

#nav-toggle span:nth-child(3) {
  top: 22px;
}

.pagetop {
  position: fixed;
  bottom: -150px;
  right: 30px;
  z-index: 200;
}

.pagetop a {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  background-color: #ccc;
  text-align: center;
  color: #222;
  font-size: 1.4rem;
  text-decoration: none;
  margin: 0;
  padding: 0;
  filter: alpha(opacity=50);
  -moz-opacity: 0.5;
  opacity: 0.5;
  width: 90px;
  height: 90px;
  line-height: 1;
}

.pagetop a:after {
  content: "\2B06";
  font-family: u1f800;
  font-size: 44px;
  width: 100%;
  line-height: 1;
  margin: -0.5em 0 0;
  padding: 0;
}

.pagetop a:hover {
  background-color: #666;
  text-align: center;
  color: #fff;
  text-decoration: none;
  filter: alpha(opacity=50);
  -moz-opacity: 0.5;
  opacity: 0.5;
}


@media screen and (max-width: 1199px) {

  p {
    font-size: 1.3rem;
  }

  .container {
    width: auto !important;
  }

  .hero_image {
    min-height: 550px;
    background-position: 50% -70%;
  }

  .hero_image_tokuten {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 180px;
    margin: 0;
    padding: 0;
    display: none;
  }


  .header-content_top {
    width: 220px;
    margin: 0 20px;
  }

  .hero_nav_list {
    width: auto;
    margin: 0 10px;
    font-size: 14px;
  }

  .hero_nav_list li {
    padding: 0.5em;
  }

  .top_content h1 {
    font-size: 10rem;
    width: 88%;
    margin: 0 auto;
    padding: 0;
  }

  .top_content h1 span {
    width: 13%;

    left: -40px;
  }

  .top_content p.hero_lead {
    margin: 10px auto 0;
    width: 80%;
  }

  .top_content p.hero_lead img {
    width: 80%;
  }

  .content01 h3 {
    margin: 1em 5%;
  }

  .cont01_article {
    margin: 30px 5% 0;
  }

  .cont01_article h4 {
    font-size: 16px;
    padding: 0.2em 0 0 1em;
  }

  .cont01_article p {
    font-size: 12px;
  }

  .cont01_article_image {
    margin-left: 20px;
  }

  .cont01_article_image--left {
    margin-right: 20px;
  }


  .lead {
    padding: 1.3em 0 0;
  }

  .lead p {
    font-size: 1.8rem;
  }

  .detail_Area {
    width: auto;
  }

  .box_program {
    width: auto;
    margin: 0 30px;
  }

  .item_inner_list li {
    font-size: 1.8rem;
  }

  .item_inner_img {
    border: none;
  }

  .content03 .container {
    padding: 0 30px;
  }
}

@media screen and (max-width: 991px) {

  .header-content_top {
    width: 180px;
  }

  .header-content p.logo {
    width: 160px;
  }

  .hero_image {
    min-height: 480px;
    /* padding-top: 60px; */
    background-size: cover;
    background-attachment: unset;
    background-position: 50% 50%;
  }

  .hero_image_tokuten {
    width: 170px;
  }

  .top_content h1 {
    font-size: 8rem;
    margin: 30px auto 0;
    padding: 0;
    width: 80%;
  }

  .top_content h1 span {
    width: 100px;
    left: -20px;
  }

  .hero_nav_list li {
    font-size: 1.5rem;
  }

  .lead {
    width: auto;
    max-width: 100%;
  }

  .introArea_right {
    background-position: 50% 0;
    background-size: auto 100%;
  }

  .introArea .intro_part {
    left: -20px;
    top: -25px;
    font-size: 2rem;
    padding: 0;
  }

  .box_program {
    margin: 0 30px;
  }

  .box_program_item {
    width: auto;
    display: block;
    margin: 0 0 50px;
  }

  .box_program_item h4 {
    font-size: 2rem;
  }

  .box_program_item h5 {
    font-size: 1.5rem;
  }

  .item_inner {
    margin: 0 30px 20px;
  }

  .item_inner_title {
    font-size: 2.8rem;
  }

  .item_inner h3 {
    font-size: 2.2rem;
    padding: 0.8em 0 0.5em;
  }

  .item_inner_img {
    width: 180px;
  }

  .item_inner_right {
    width: calc(100% - 200px);
  }


  .item_inner_list ul {
    padding-left: 0;
  }

  .item_inner_list li {
    font-size: 1.4rem;
  }

  .item_inner_results {
    display: block;
  }

  .item_inner_results h6 {
    font-size: 1.3rem;
  }

  .item_inner_results_left {
    width: auto;
    margin: 0;
  }

  .item_inner_results_left p img {
    width: 40%;
    margin: 0 auto;
    display: block;
  }

  .item_inner_book {
    margin: 0;
    justify-content: center;
    width: auto;
  }

  .item_inner_book p {
    width: 18%;
    margin: 0 1% 5vw;
  }

  .item_inner_about ul li p {
    font-size: 1.3rem;
    line-height: 1.3;
  }

  .item_inner_about ul li p br {
    display: none;
  }



  .detail_Area {
    width: auto;
    max-width: 100%;
  }

  .introArea h4 {
    font-size: 1.8rem;
  }

  .introArea_right a {
    font-size: 1.3rem;
  }

  .inner_venue {
    width: auto;
  }
}

@media screen and (max-width: 900px) {

  .content {
    background-size: cover !important;
    background-attachment: unset !important;
  }

  .hero_image {
    min-height: 400px;
  }

  .top_content h1 {
    margin-top: 50px;
    width: 80%;
  }

  .top_content h1 span {
    width: 170px;
    left: -80px;
  }

  .top_content h1 span.sub {
    font-size: 2rem;
    width: 100%;
    text-align: center;
  }

  .intro {
    width: 95%;
  }

  .intro_list {
    width: auto;
    margin: 0 auto;
  }

  .hero_nav_list {
    width: auto;
    margin: 0 10px;
    overflow-x: auto;
  }

  .hero_nav_list li {
    padding: 0.5em;
    white-space: nowrap;
  }

  .hero_nav_list li a {
    font-size: 1.6rem;
  }

  .inner_venue {
    width: auto;
  }

  .item_inner {
    width: auto;
    margin: 0 5% 20px;
  }


  .item_inner_btn {
    padding: 20px 0;
  }

  .item_inner_btn a {

    font-size: 1.7rem;
    padding: 0.3em;
    width: 12em;
  }

  .item_inner_speakers ul.col3 {
    padding: 20px 0 40px;
  }

  .item_inner_speakers ul.col3 li {
    width: 31%;
  }

  .item_inner_speakers ul.col3 li p span {
    margin-right: 0.3em;
  }
}

@media screen and (max-width: 767px) {
  .header-content_top {
    width: 40vw;
  }

  section.header-content {
    height: 14vw;
  }

  .header-content p.logo {
    margin: 0 auto;
    padding: 0;
    width: 70vw;
  }

  .header-content p.logo img {
    height: 30px;
    margin: 10px auto;
  }

  .item_inner h4 {
    display: block;
    font-size: 5vw;
    margin: 0.4em 0 0.7em;
    padding: 0 0 0.5em;
    text-align: center;

  }

  .item_inner h4 span {
    display: block;
    font-size: 70%;
    margin: 0.4em 0 0;
    padding: 0 0 0.5vw;
    text-align: center;
  }

  .item_inner_profile {
    margin: 0 0 5vw;
    padding: 0 0 5vw;
  }
}


@media screen and (max-width: 479px) {

  body * {
    animation: none;
    animation-delay: 0s;
  }

  a,
  a:active,
  a:visited,
  a:hover,
  a:focus {
    color: #083656;
    -webkit-transition: unset;
    -o-transition: unset;
    transition: unset;
  }

  .show-pc {
    display: none;
  }

  .show-sp {
    display: block;
  }

  section {
    padding: 6.25vw 0;
  }

  h2 {
    margin-top: -80px;
    padding-top: 80px;
    font-size: 5vw;
  }

  .content h2 {
    font-size: 5.625vw !important;
    margin: 0 0 1em;
    padding: 0;
  }

  .content h2 span {
    font-size: 4.375vw;
    padding: 0 0 0.4em;
  }

  p {
    font-size: 3.75vw;
  }

  .lead {
    font-size: 3.75vw;
    margin: 0;
    padding: 0 0 1em;
    text-align: justify;
  }

  .lead p {
    font-size: 3.125vw;
    margin: 0 0 0.5em;
  }

  .lead--voice {
    font-size: 3.75vw;
    padding: 0;
    margin: 0 5%;
  }

  .container {
    margin-right: auto;
    margin-left: auto;
    padding-left: 2.5vw;
    padding-right: 2.5vw;
    width: auto;
  }

  .top_content h1 {
    text-align: center;
    margin: 0 auto;
    padding: 5vw 0 0;
    font-size: 12.5vw;
    line-height: 1.3;
    width: 90vw;
    animation: none;
    animation-delay: 0;
  }

  .top_content h1 small {
    font-size: 50%;
    padding: 5vw 0 2.5vw;

  }

  .top_content h1 span {
    display: block;
    font-size: 5vw;
    left: -3.125vw;
    margin: 0;
    padding: 0;
    text-align: center;
    width: 25vw;
    top: -4.375vw;
    animation: none;
  }

  .top_content h1 img {
    max-width: auto;
    width: 100%;
  }

  .top_content p.hero_lead {
    width: auto;
    animation: none;
    animation-delay: 0;
    margin: 0;
    padding: 0 0 5vw;
    line-height: 1;
  }

  .top_content p.hero_lead img {
    width: 86vw;
  }

  .header-content {
    height: 15.625vw;
  }

  .header-content_top {
    margin: 0;
    padding: 0;
    width: 40vw;
    top: 2.5vw;
    right: 2.5vw;
  }


  .header-content_top img {
    width: 100%;
  }

  .header-content_top p.header_logo {
    width: 12.5vw;
  }

  .header-content_top p:last-child {
    font-size: 3.75vw;
    margin: 0;
  }

  .header-content p.logo {
    margin: 0;
    padding: 2vw 0 0;
    width: 33vw;
  }

  .header-content p.logo a {
    font-size: 7.5vw;
  }

  .header-content .logo img {
    max-height: 12.5vw;
    width: auto;
  }

  .hero_image {
    min-height: 80vw;
    padding: 20vw 0 0;
  }

  .hero_image_tokuten {
    display: none;
  }

  .hero_nav {
    position: relative;
    min-height: unset !important;
    overflow-x: auto;
    overflow-y: hidden;
    width: auto;
  }

  .hero_nav::after {
    height: 6.25vw;
    bottom: -6.25vw;
    background-size: 6.25vw 6.25vw;
  }

  .hero_nav_list {

    min-height: 7.5vw;
    overflow-x: auto;
    justify-content: space-between;
    padding-bottom: 0.5em;
  }

  .hero_nav_list.active {
    display: inline-block;
    width: auto;
    margin: 0;
    padding-top: 2.5em;
  }

  .hero_nav_list li {
    font-size: 3.125vw;
    padding: 0.5em 1em 0 0;
    white-space: nowrap;

  }

  .hero_nav_list li a {
    font-size: 3.125vw;
  }

  .hero_nav_list li a:before {
    margin-right: 0.4em
  }

  h3 {
    font-size: 5vw;
    margin: 2em 0 0;
    padding: 0.2em 0 0.2em 1em;
  }

  .content01 h3 {
    margin: 0 5% 1em;
    font-size: 5vw;
    text-align: left;
  }

  .cont01_article {
    margin: 0 5%;
  }

  .cont01_article:nth-child(even) {}

  .cont01_article:nth-child(even) h3 {
    margin-left: 0;
  }

  .cont01_article_image {
    float: none;
    width: auto;
    margin: 5vw 0 0;
    /*display: none;*/
  }

  .cont01_article_image--left {
    float: none;
    margin: 0;
  }

  .cont01_article_image img {
    width: 100%;
    height: auto;
  }

  .cont01_article--center {}

  .cont01_article--center h4 {
    padding: 0;
  }

  .cont01_article--center .cont {
    padding: 0 0 12.5vw;
    flex-wrap: wrap;
  }

  .cont01_article--center .cont .cont_inner {
    width: 48%;
    padding: 0 0 3.75vw;
  }

  .cont01_list {
    flex-wrap: wrap;
    margin: 0;
    justify-content: center;
  }

  .cont01_list li {
    width: 48%;
    margin: 0;
    text-align: center;
  }

  .cont01_list li:nth-child(odd) {
    margin-right: 2%;
  }

  .cont01_list li:last-child {
    margin-right: 0;
  }

  .cont01_list li img {
    width: 90%;
    height: auto;
    margin: 0 auto;
  }

  .cont01_list li span {
    display: block;
    font-size: 3.75vw;
    margin: 0.5em 0 0;
    padding-bottom: 1em;
  }

  .content02 h2 {
    color: #000;
  }


  .cont02_list {
    display: block;
    margin: 0;
  }

  .cont02_list_inner {
    width: auto;
  }

  .cont02_list li {
    font-size: 5.625vw;
    margin: 0 0 3.125vw;
    padding: 1.5625vw 0;
  }

  .cont02_list li span {
    font-size: 120%;
  }

  .cont02_list_inner dd {
    font-size: 5vw;
    height: auto;
    padding: 0.5em;
  }

  .cont02_list_inner ul {
    margin: 3.125vw 0 6.25vw;
  }

  .cont02_list_inner ul li p:first-child {
    width: 4em;
  }

  .box_program {
    margin: 0 5vw;
  }

  .item_inner {
    padding: 0 0 5vw;
    margin: 0 0 5vw;
  }

  .item_inner h3 {
    font-size: 5vw;
    padding-bottom: 0.8em;
  }

  .item_inner_title {
    font-size: 5vw;
  }

  .item_inner_title br {
    display: none;
  }

  .item_inner_img,
  .item_inner_right {
    width: auto;
    font-size: 3.125vw;
  }

  .item_inner_img {
    width: auto;
    margin: 0 auto;
  }

  .item_inner_img img {
    object-fit: cover;
    width: 768px;
    aspect-ratio: 5 / 5;
    object-position: 50% 0%;
  }

  .item_inner_right {
    padding: 0;
  }

  .item_inner_right span {
    font-size: 3.75vw;
    margin: 0 0 0.5em;
    text-align: center;
  }

  .item_inner_btn {
    padding: 2.5vw 0 5vw;
    animation: none;
    animation-delay: 0s;
  }

  .item_inner_btn a {
    font-size: 3.75vw;
    margin: 0 auto;
    width: 90%;
  }

  .item_inner_right p {
    font-size: 3.125vw;
  }


  .item_inner_book {
    margin: 0 auto 10vw;
    flex-wrap: wrap;
  }

  .item_inner_book p {
    width: 27%;
  }

  .item_inner_book p span {
    font-size: 2.5vw;
    padding: 0.5em 0;
    margin: 0;

  }


  .item_inner_list {
    display: block;
    margin: 0;
    padding: 0;
  }

  .item_inner_list ul,
  .item_inner_list_image {
    padding: 0;
    width: auto;
  }

  .item_inner_list li {
    font-size: 3.75vw;
  }

  .item_inner_about ul {
    display: block;
    margin: 0 2.5vw;
    padding: 0 !important;
    width: auto;
  }

  .item_inner_about ul li,
  .item_inner_about ul.col3 li,
  .item_inner_about ul.col2 li {
    width: auto;
  }

  .item_inner_about ul li p {
    min-height: unset;
    padding-bottom: 1em;
  }

  .item_inner_about p {
    display: block;
    font-size: 3.125vw;
    margin: 1em 2.5%;
    padding: 0.5em 0 0;
    width: auto;
  }

  .item_inner_speakers ul.col3 {
    display: flex;
    justify-content: space-between;
    margin: 5vw 0;
    padding: 0;
  }

  .item_inner_speakers ul.col3 li {
    width: 32%;
  }

  .item_inner_speakers ul.col3 li p {
    display: block;
    font-size: 3.125vw;
    margin: 0;
  }

  .item_inner_speakers ul.col3 li p span {
    display: block;
    margin: 0;
    padding: 0;
    font-size: 2vw;
  }

  .seminar_child {
    display: block;
    width: 100%;
    margin: 0 0 10px;
  }

  .seminar_child h5 {
    width: 100%;
    font-size: 3.75vw;
  }

  .seminar_child h5 span {
    font-size: 60%;
    padding: 0.4em 0.5em;
    margin-right: 1em;
  }

  .seminar_child h5:after {
    border-width: 0 8px 8px 0;
  }

  .seminar_child p {
    width: auto;
  }

  .seminar_child p:last-child {
    width: auto;
    font-size: 4.375vw;
    margin: 0 5vw;
  }

  .seminar_child.full:before {
    font-size: 5vw;
  }

  .content03 .container {
    margin: 0 5vw;
    padding: 0;
  }


  .cont03_inner .cover {
    float: none;
    margin: 0 10%;
    padding: 0 0 12.5vw;
  }

  .cont03_inner .cover img {
    width: 100%;
    height: auto;
  }

  .cont03_inner .cover span {
    position: absolute;
    bottom: 0;
    right: 0;
    left: 0;
    width: 100%;
    text-align: center;
  }

  .cont03_inner .cover span img {
    width: 50%;
    height: auto;
  }

  .cont03_inner .bt {
    margin: 5vw 0 0;
    padding-left: 0;
  }

  .introArea {
    margin: 0 0 5vw;
    padding: 0 0 5vw;
  }

  .introArea .intro_part {
    position: relative;
    width: 100%;
    top: unset;
    left: unset;
    font-size: 5vw;
    display: block;
    padding: 0;
    border: none;

  }

  .introArea .intro_part p {
    text-align: center;
    width: 100%;
    font-size: 5vw;
  }

  .introArea .intro_part p:last-child {
    width: 100%;
    font-size: 3.75vw;
    font-weight: bold;
    height: auto;
  }

  .introArea h4 {
    font-size: 4.375vw;
    padding: 0.8em 3.125vw;
    text-align: justify;
    width: auto;
  }

  .introArea h4 span {
    margin: 0.5vw 0 0;
    font-size: 3.125vw;
  }

  .introArea h4 span em {
    font-size: 3.75vw;
    margin-left: 0.5vw;
  }

  .introArea p {
    text-align: justify;
    font-size: 3.75vw;
  }

  .introArea p.speech-content {
    margin: 0;
    padding: 3.75vw;
    font-size: 3.125vw;
  }

  .introArea ul,
  .introArea--last ul {
    width: auto;
    margin: 0;
    padding: 3.75vw 2.75vw 0;
  }

  .introArea ul li {
    font-size: 4.375vw;
  }

  .introArea--last p.speech-content {
    width: auto;
  }

  .introArea_profile {
    padding: 3.75vw;
  }

  .introArea_profile img {
    width: 100%;
    height: auto;
  }

  .introArea_profile p {
    font-size: 3.125vw;
  }

  .introArea_profile p.intro_name {
    font-size: 6.875vw;
    text-align: center;
    line-height: 1.3;
    padding: 3.125vw 0;
  }

  .introArea_profile p.intro_name span {
    display: block;
    font-size: 3.125vw;
    font-weight: 400;
    padding-left: 0;

  }

  .introArea_right {
    display: block;
    background: none;
    position: relative;
    width: 100%;

  }

  .introArea_right a {
    width: auto;
    margin: 0 5vw;
    font-size: 4.375vw;
  }

  .name_sub {
    display: block;
    margin: 0;
    font-size: 3.125vw;
  }

  .introArea .introImag img {
    width: 100%;
    height: auto;
  }

  .cont04_inner h3 {
    display: block;
    padding: 2em 0.5em 0.5em;
    font-size: 4.375vw;
  }

  .cont04_inner h3 span {
    display: block;
    font-size: 3.75vw;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    text-align: center;
  }

  .cont04_inner h3 span span {
    display: inline;
  }

  .cont04_inner h3 span span {}

  .detail_Area {
    width: auto;
    margin: 0;
    font-size: 3.125vw;
  }

  .detail_Area dt {
    width: 1em;
    font-size: 3.75vw;
    padding: 1em;
    line-height: 1.2;
  }

  .detail_Area dt,
  .detail_Area dd {
    margin: 0 0 2px;

  }

  .detail_Area dd {
    width: calc(100% - 2em);
    font-size: 3.75vw;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
  }

  .detail_Area dd p {
    font-size: 3.75vw;
    width: 100%;
  }

  .detail_Area dd .full:after,
  .detail_Area dd .ended:after {
    right: 0;
  }

  .detail_Area dd table {
    font-size: 3.125vw;
  }


  .inner_venue {
    display: block;
  }

  .inner_venue {
    display: block;
    width: auto;
  }

  .inner_venue h3 {
    font-size: 5vw;
  }

  .inner_venue .area_detail {
    margin: 0;
    padding: 5vw 2.5vw;
  }

  .inner_venue .area_detail h4 {
    font-size: 5vw;
    margin: 5vw 0 0;
  }

  .inner_venue .area_detail ul.dates {
    display: block;
    margin: 5vw 0 0;
  }

  .inner_venue .area_detail ul.dates li {
    font-size: 4.375vw;
    width: auto;
  }

  .inner_venue .area_detail ul.dates li span {
    font-size: 80%;
    display: inline-block;
  }

  .inner_venue .area_detail ul.dates li.ended span {
    text-decoration: line-through;
  }

  .inner_venue .area_detail .area_detail_inner {
    display: block;
  }

  .inner_venue .area_detail .area_detail_inner h5 {
    font-size: 4.375vw;
  }

  .inner_venue .area_detail .area_detail_inner .area_detail_address {
    width: 100%;
    padding: 5vw 0;
  }

  .inner_venue .area_detail .area_detail_inner .area_detail_map {
    width: 100%;
    text-align: center;
  }

  .inner_venue .area_detail p {
    font-size: 3.75vw;
  }

  .inner_venue .area_detail p.notes {
    margin: 0;
    font-size: 3.125vw;
  }

  .inner_venue .area_detail p.venue_name {
    margin: 3.125vw 0 0;
    font-size: 5vw;
  }

  .inner_venue .area_detail p.venue_name span {
    font-size: 3.125vw;
  }

  .inner_venue .area_detail p a.btn_access {
    display: block;
    margin: 0.2em 0 0;
    text-align: right;
  }

  .inner_venue_item {
    width: auto;
    padding: 0 0 5vw;
  }

  .inner_venue_item h5 {
    font-size: 5vw;
    padding: 0;
  }

  .inner_venue_item h5 small {
    margin-left: 0;
  }


  .inner_venue_item h5 {
    font-size: 5vw;
    padding: 0;
  }

  .inner_venue_item h5 small {
    margin-left: 0;
  }

  .inner_venue_item {
    width: auto;
    padding: 0 0 5vw;
  }

  .detail_Area_inner p {
    padding: 0;
    font-size: 5vw;
  }

  .detail_Area_inner p.inner_venue_item_date {
    font-size: 6.25vw;
  }

  .detail_Area_inner p.inner_venue_item_address {
    font-size: 3.125vw;
  }

  .detail_Area_inner p.inner_venue_item_access a {
    width: auto;
    margin: 0;
  }

  .detail_Area_inner p.inner_venue_item_address {
    font-weight: 400;
  }

  .detail_Area_inner .venue {
    display: block;
  }

  .detail_Area_inner .venue .gmapleft {
    width: 100%;
  }

  .detail_Area_inner .venue .gmap {
    margin: 0;
    height: 0;
    overflow: hidden;
    padding-bottom: 56.25%;
    position: relative;
    display: block;
  }

  .detail_Area_inner .venue .gmap iframe {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    padding-bottom: 3.75vw;
  }


  .content05 h3 {
    margin: 5vw 0;
    padding: 0.3em;
    text-align: left;
  }

  /* CVボタン 通常時 */

  .cvbtn {
    margin: 0;
  }

  .hs-button,
  .cvbtn,
  .hs-button:hover,
  .cvbtn:hover {
    font-size: 5vw !important;
    width: 94%;
    margin: 0 auto !important;
  }

  .cvbtn a {
    color: #FFF;
    display: block;
    text-decoration: none;
  }

  .pagetop {
    bottom: 5vw;
    right: 5vw;
  }

  .pagetop a {
    background-color: #666;
    font-size: 2.5vw;
    width: 15vw;
    height: 15vw;
    color: #fff;
  }

  .pagetop a:after {
    font-size: 8.125vw;
    margin: -0.3em 0 0;
  }

  .pagetop a:hover {
    color: #fff;
  }

  .content02,
  .content03 {
    background-repeat: no-repeat;
    height: auto;
    background-image: none;
    background-color: rgba(255, 255, 255, 0.8);
  }
}

.fs_large {
  font-size: 125%;
}

.fs_larger {
  font-size: 150%;
}

.fs_largest {
  font-size: 200%;
}


/* Modal 追加クラス */

.profs {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.profs li {
  margin: 0 0 30px;
  width: 23%;
  position: relative;
  cursor: pointer;
}

.profs li img {
  width: 100%;
  height: auto;
}

/*.profs li p {
  color: #fff;
  font-size: 2.2rem;
  font-weight: 600;
  margin: 10px 0 0;
  position: relative;
  display: flex;
  flex-wrap: wrap;
}

.profs li p:last-of-type {
  font-size: 1.3rem;
  font-weight: 400;
  margin: 4px 0 0;
  padding: 0.5em 0 0;
  min-height: 4em;
}

.profs li p:last-of-type:before {
  background: #BF7171;
  content:  "";
  height: 2px;
  left: 0;
  position: absolute;
  top:  0;
  width: 50%;
}

.profs li p span {
  display: block;
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 60%;
  font-weight: 500;
  width: 100%;
}*/

.profs:after {
  content: "";
  display: block;
  width: 22.5%;
}

.profs li button {
  /* ↓ reset */
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
  /* ↑ reset */
  padding: 0.3em 0;
  margin: 0 auto;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #F7C3C3;
  border-radius: 20px;
  color: #AF1A21;
  display: flex;
  font-size: 1.4rem;
  font-weight: 600;
  text-align: center;
  justify-content: center;
  width: 10em;
}

.profs li button:before {
  content: "\e934";
  font-family: icons;
  margin-right: 0.2em;
}

.profs li:hover button {
  background: #FF5F5F;
  color: #fff;
}

.profs li a.link_invisible {
  cursor: pointer;
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  text-indent: -99999px;
}

.iziModal {
  max-width: 70% !important;
  position: relative;
}

.closeModal {
  position: absolute;
  top: 5px;
  right: 5px;
  z-index: 1000;
}

.closeModal a:before {
  color: #ccc;
  content: "\f395";
  font-family: icons;
  font-size: 2.4rem;
}

.profs_inner {
  width: 100%;
  padding: 30px;
  display: flex;
  position: relative;
}

.profs_inner_image {
  width: 30%;
  height: auto;
  align-self: flex-start;
  position: relative;
}

.profs_inner_image:before {
  content: "";
  display: block;
  padding-top: 100%;
}

.profs_inner_image img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  object-fit: cover;
}

.profs_inner_item {
  width: 70%;
  padding: 0 0 0 30px;
}

.profs_inner_name {
  align-items: flex-end;
  border-bottom: 2px solid #D0D0D0;
  display: flex;
  justify-content: space-between;
  padding: 0 0 0.8em;
}

.profs_inner_name p {
  font-size: 2.4rem;
  font-weight: 600;
}

.profs_inner_name p span {
  color: #9A9A9A;
  display: block;
  font-family: 'Barlow Semi Condensed', sans-serif;
  font-size: 60%;
  line-height: 1;
  margin: 0;
  padding: 0;
}

.profs_inner_name p:last-of-type {
  color: #575757;
  font-size: 1.6rem;
  font-weight: 400;
  text-align: right;
}

.profs_inner_text {
  padding: 0.7em 0 0;
  font-size: 1.7rem;
}

.profs_inner_text p {
  font-size: 1.3rem;
  padding: 0 0 0.4em;
  text-align: justify;
}

@media screen and (max-width: 900px) {

  .profs li {
    width: 31%;
  }

  .iziModal {
    max-width: 80% !important;
  }

  .profs_inner img {
    width: 180px;
  }

  .profs_inner img {
    width: 180px;
  }

  .profs_inner {
    padding: 20px;
  }

  .profs_inner_item {
    margin: 0 0 0 20px;
  }

  .profs_inner_name p {
    font-size: 2rem;
  }

  .profs_inner_name p:last-of-type {
    font-size: 1rem;
    line-height: 1.2;
  }

  .profs_inner_text p {
    font-size: 1.1rem;
  }

}

@media screen and (max-width: 767px) {

  .profs li {
    width: 48%;
  }

  .profs li p {
    display: block;
    font-size: 5vw;
    text-align: center;
  }

  .profs li p span {
    text-align: center;
    display: block;
  }

  .profs li p:last-of-type {
    font-size: 2.5vw;
    text-align: center;
    min-height: unset;
    padding: 0.5em 0;
  }

  .profs li p:last-of-type:before {
    left: 25%;
  }

  .profs li button {
    font-size: 3.125vw;
    width: 100%;
  }

  .profs_inner {
    display: block;
  }

  .profs_inner img {
    width: 60%;
    margin: 0 auto 3.125vw;
  }

  .profs_inner_image {
    width: 100%;
  }

  .profs_inner_image:before {
    display: none;
  }

  .profs_inner_image img {
    width: 100%;
    height: auto;
    position: relative;
  }

  .profs_inner_item {
    margin: 0;
    padding: 0;
    width: auto;
  }

  .profs_inner_name {
    display: block;
  }

  .profs_inner_name p,
  .profs_inner_name p:last-of-type {
    font-size: 6.25vw;
    text-align: center;
  }

  .profs_inner_name p:last-of-type {
    font-size: 3.125vw;
    margin: 0.5em 0 0;
  }

}

/* timer */
.detail_Area dd.dates p.cancel,
.detail_Area dd.dates p.full,
.detail_Area dd.dates p.ended {
  display: block;
  position: relative;
  text-decoration: none;
  color: #000;
}

.detail_Area dd.dates p {
  line-height: 1.4;
}

.detail_Area dd.dates p span {
  font-size: 80%;
}

.detail_Area dd.dates p.cancel:before,
.detail_Area dd.dates p.full:before,
.detail_Area dd.dates p.ended:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(255, 255, 255, 0.6);
}

.detail_Area dd.dates p.cancel:after,
.detail_Area dd.dates p.full:after,
.detail_Area dd.dates p.ended:after {
  /*position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;*/
  content: "";
  /*display: flex;
  align-items: center;
  justify-content: flex-start;*/
  text-decoration: none;
  color: #C00;
  font-weight: 700;
  font-size: 1.4rem;
  text-shadow: 1px 1px 0 #FFF, -1px -1px 0 #FFF,
    -1px 1px 0 #FFF, 1px -1px 0 #FFF,
    0px 1px 0 #FFF, 0-1px 0 #FFF,
    -1px 0 0 #FFF, 1px 0 0 #FFF;
  position: relative;
  margin-left: 0.5em;
}

.detail_Area dd.dates p.ended:after {
  content: "終了しました" !important;
}

.detail_Area dd.dates p.full:after {
  content: "申込締切（満席）";
}

.detail_Area dd.dates p.cancel:after {
  content: "開催中止" !important;
}

@media screen and (max-width: 767px) {
  .header-content_top {
    top: 10px;
  }

  .content01 {
    background: #fff;
  }

  .hero_image:before {
    filter: blur(1px);
  }

  .hero_image_bg {
    background-image: url(../images/hero_image_sp_bg.png);
    opacity: 0.4;
  }

  .hero_image,
  .content02,
  .content04 {
    background-attachment: unset;
  }

  .hero_nav_list {
    justify-content: flex-start;
  }

  .detail_Area dd.dates p.cancel:before,
  .detail_Area dd.dates p.full:before,
  .detail_Area dd.dates p.ended:before {
    background: rgba(255, 255, 255, 0.6);
  }

  .detail_Area dd.dates p.cancel:after,
  .detail_Area dd.dates p.full:after,
  .detail_Area dd.dates p.ended:after {
    position: relative;
    width: unset;
    height: unset;
    top: unset;
    left: unset;
    display: inline-block;
    margin-left: 0.5em;
    font-size: 3.75vw;
  }
}

@media screen and (max-width: 479px) {
  .detail_Area dd.dates p {
    font-size: 3.75vw;
    width: auto;
    display: flex;
    align-items: center;
  }

  /*.inner_venue .area_detail ul.dates li.full span br,
  .inner_venue .area_detail ul.dates li.ended span br {
  display: none;
  }*/
  .detail_Area dd.dates p.cancel span,
  .detail_Area dd.dates p.full span,
  .detail_Area dd.dates p.ended span {
    text-decoration: none;
  }

  .detail_Area dd.dates p.ended:after {
    content: "終了" !important;
  }

  .detail_Area dd.dates p.full:after {
    content: "満席";
  }

  .detail_Area dd.dates p.cancel:after {
    content: "中止" !important;
  }
}