@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 {
  min-width: 100%;
  overflow-x: hidden;
  -webkit-tap-highlight-color: rgba(0,0,0,0);
}
body {
  background-color: #fff;
  font-family: "Helvetica Neue", Arial, "Hiragino Sans", "游ゴシック体", YuGothic, "YuGothic M", Meiryo, メイリオ, sans-serif;
  width: 100%;
  font-size: 16px;
  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;
}

.show-pc {
  display: block;
}

.show-sp {
  display: none;
}

.underline {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, rgba(239, 161, 50, 0.5)));
  background: -webkit-linear-gradient(transparent 60%, rgba(239, 161, 50, 0.5) 60%);
  background: -o-linear-gradient(transparent 60%, rgba(239, 161, 50, 0.5) 60%);
  background: linear-gradient(transparent 60%, rgba(239, 161, 50, 0.5) 60%);
  font-weight: 600;
}

p {
  font-size: 16px;
  font-style: normal;
  font-stretch: normal;
  line-height: 1.7;
  letter-spacing: normal;
}
.lead {
  margin: 0 100px;
  padding: 1.3em 0 0;
  font-weight: 500;
}

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

.lead p span {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(80%, transparent), color-stop(80%, rgba(239, 161, 50, 0.5)));
  background: -webkit-linear-gradient(transparent 80%, rgba(239, 161, 50, 0.5) 80%);
  background: -o-linear-gradient(transparent 80%, rgba(239, 161, 50, 0.5) 80%);
  background: linear-gradient(transparent 80%, rgba(239, 161, 50, 0.5) 80%);
  font-weight: 600;
}


@keyframes fadeIn {
  0% {
    opacity: 0
  }
  100% {
    opacity: 1
  }
}
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0
  }
  100% {
    opacity: 1
  }
}
#entry {
  position: relative;
}
a {
  -webkit-transition: .5s !important;
  -o-transition: .5s !important;
  transition: .5s !important;
  text-decoration: none;
}
a:active,a:visited,a:hover,a:focus {
  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;
}
.row {
    margin-left: -15px;
    margin-right: -15px;
}
section.header-content {
  padding: 0 !important;
  max-height: 50px;
  /*background-color: rgba(0, 0, 0, 0.8);*/
  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(80%, transparent), color-stop(80%, rgba(239, 161, 50, 0.5)));
  background: -webkit-linear-gradient(transparent 80%, rgba(239, 161, 50, 0.5) 80%);
  background: -o-linear-gradient(transparent 80%, rgba(239, 161, 50, 0.5) 80%);
  background: linear-gradient(transparent 80%, rgba(239, 161, 50, 0.5) 80%);
  font-weight: 600;
}

.text-right {
  text-align: right;
}

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

.text-left {
  text-align: left;
}

.bigger {
  font-size: 170% !important;
}

.smalltext {
  font-size: 70% !important;
}

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

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

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

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

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

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

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

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

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

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

/* もともとついてしまうスタイルの調整 */

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

h1 {
  margin: 0;
}

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

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

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;
}


h2.h2_white {
  color: #ffffff;
}

h2.h2_black {
  color: #212121;
}

.h2_sub_g {

  color: #e5bf73;
  font-size: 1.8rem;
  letter-spacing: 3px;
  line-height: 1.7;
  text-align: center;
  margin: 0;
  padding: 1em 0;

}

.h2_sub_r {
  /*background-image: -webkit-gradient(linear, left top, left bottom, from(#a20000), to(#550000));
  background-image: -webkit-linear-gradient(top, #a20000, #550000);
  background-image: -o-linear-gradient(top, #a20000, #550000);
  background-image: linear-gradient(to bottom, #a20000, #550000);*/
  display: block;
  font-size: 3rem;
  font-family: 'Roboto Condensed' ,sans-serif;
  font-weight: 400;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: 0.1em;
  line-height: 1.3;
  padding: 0 0 1em;
  text-align: center;
  width: 100%;
}

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

h4 {
  font-size: 20px;
  padding: 0.2em 0 0.2em 1em;
  position: relative;
  display: flex;
  align-items: center;
}

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

h4: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 .logo img {
  max-height: 113px;
  width: auto;
}

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

.header-content_top {
  position: absolute;
  top: 0;
  margin: 30px auto 0;
  display: block;
  text-align: center;
  width: 100%;
  font-size: 3.6rem;
  font-family: serif;
  font-weight: bold;
}

.header-content_top p {
  font-size: 3.6rem;
  width: 15em;
  background: url(../images/header_content_top_bg.png) no-repeat 50% 100%;
  background-size: contain;
  margin: 0 auto;
  padding: 1em 0 0.7em;
  display: block;
  line-height: 1.3;
  position: relative;
}

.header-content_top p:before {
  content: "";
  font-size: 3.6rem;
  width: 100%;
  height: 1rem;
  background: url(../images/header_content_top_bg.png) no-repeat 50% 100%;
  background-size: contain;
  height: 3rem;
  position: absolute;
  top: 0;
  left: 0;
}

.header-content_top img {
  width: 500px;
  height: auto;
  margin: 0 auto 50px;
}

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

.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 p.present {
  position: absolute;
  left: 6%;
  top: 0px;
  width: 180px;
  z-index: 1;
}

.top_content p.present img {
  width: 100%;
  height: auto;
}

.top_content h1 {
  max-width: 900px;
  margin: 0 auto;
  padding: 0 0 30px;
  position: relative;
  color: #000;
  font-weight: 700;
  text-align: center;
  line-height: 1.3;
  display: flex;
  flex-wrap: wrap;
}

.top_content h1 em {
  display: block;
  text-align: center;
  font-size: 3.2rem;
  font-style: normal;
  margin: 20px 0 0;
  padding: 0.3em 0.5em;
  position: relative;
  border-top: solid 2px #fff;
  background: rgba(0, 0, 0, 0.8);
  color: #fff;
  width: 100%;
}

.top_content h1 span {
  width: 60%;
}

.top_content h1 span:nth-child(2) {
  width: 40%;
}


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

.top_content h1 span i {
  font-size: 140%;
  padding-top: 0.2em;
}

.top_content h1 span small {
  font-size: 80%;
}

.top_content h1 small {
  font-size: 70%;
  display: block;
  font-weight: 600;
  text-align: right;
}



.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;
}

.top_content .date {
  font-weight: 400;
  display: block;
  margin: 0 auto;
  padding: 0;
  width: 8em;
  line-height: 1;
  width: 100%;
}

.top_content .date p {
  font-size: 1.5rem;
  line-height: 1.4;
  margin: 0;
  padding: 0 0 0.3em;
}
.top_content .date em {
  font-family: futura,Century Gothic, sans-serif;
  font-style: normal;
}

.top_content .date big {
  font-size: 6rem;
  display: inline;
}

.top_content .date small {
  font-size: 2.5rem;
  font-weight: 500;
  display: inline;
}

.top_content .date span {
  display: block;
  font-size: 1.5rem;
  margin: 0.5em 0 0;
  padding: 0.5em 0 0;
  border-top: solid 2px #fff;
  font-weight: 400;
}

.top_content .date .media {
  font-size: 1.5rem;
  margin: 0 0 20px;
  padding: 0 0 20px;
  text-align: center;
  position: relative;
}

.top_content .date .media h2 {
  font-size: 2rem;
  margin: 0;
  padding: 0.3em;
  text-align: center;
  background: #dbdbdc;
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#eeeeee+0,cccccc+100;Gren+3D */
  background: rgb(238,238,238); /* Old browsers */
  background: -moz-linear-gradient(top,  rgba(238,238,238,1) 0%, rgba(204,204,204,1) 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(top,  rgba(238,238,238,1) 0%,rgba(204,204,204,1) 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom,  rgba(238,238,238,1) 0%,rgba(204,204,204,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eeeeee', endColorstr='#cccccc',GradientType=0 ); /* IE6-9 */
  text-shadow: 0 1px 0 #fff;

}

.top_content .date .media img {
  width: 500px;
  height: auto;
  margin: 0 auto 20px;
  display: block;
}

.top_content .date .media p {
  background: rgba(0,0,0,0.6);
  border-radius: 9999px;
  color: lemonchiffon;
  /*position: absolute;
  right: 0;
  top: 0;*/
  font-size: 2.2rem;
  font-weight: 600;
  text-align: left;
  /*font-family: serif;*/
  display: inline-block;
  margin: 0;
  padding: 0.5em 1.2em;
  text-shadow:1px 1px 0 #000, -1px -1px 0 #000,
              -1px 1px 0 #000, 1px -1px 0 #000,
              0px 1px 0 #000,  0-1px 0 #000,
              -1px 0 0 #000, 1px 0 0 #000;
}

.top_content .date .media p big {
  font-size: 140%;
  font-weight: bold;
  margin: 0;
  padding: 0;
}

.top_content .date .media ul {
  margin: 20px 10px;
  padding: 0;
  list-style: none;
}

.top_content .date .media ul li {
  display: inline-block;
  margin-right: 1em;

}

.top_content .date .media ul li:before {
  content: "・";
}

.top_content .date .media ul li:last-child:before {
  content: none;
}

.hero_image {
  background-color: #000;
  position: relative;
  padding-top: 30px;
  min-height: 550px;
  background-image: url("../images/bg_01_02.jpg");
  background-repeat: no-repeat;
  background-color:rgba(255,255,255,0.6);
  background-blend-mode: darken;
  background-size: cover;
  background-position: center;
}

/*.hero_image:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 50%;
  height: 100%;
  background: url(../images/fv_ah.png) no-repeat 100% 0;
  transform: translatex(10%);
  background-size: contain;
  z-index: 0;
}*/


.hero_nav {
  background: rgba(0,0,0,0.9);
  width: 100%;
  min-height: 50px;
  z-index: 2;
}
.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 {
  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.2em;
  font-size: 0.8em;
  width: 1em;
}

.icon-hamburger {
  cursor: pointer;
  height: 40px;
  position: relative;
  width: 40px;
  display: none;
  margin: 0 0  0.4em 5px;
}

.icon-hamburger:after {
  content: "MENU";
  position: absolute;
  left: 44px;
}

.icon-hamburger span {
  background: #cccccc;
  display: block;
  height: 10%;
  left: 50%;
  margin: -8% 0 0 -42%;
  position: absolute;
  top: 50%;
  width: 84%;
}

.icon-hamburger span::before,
.icon-hamburger span::after {
  background: #cccccc;
  content: "";
  display: block;
  height: 100%;
  left: 50%;
  margin: -19% 0 0 -50%;
  position: absolute;
  top: 50%;
  width: 100%;
}

.icon-hamburger span::before {
  margin-top: -38%;
}

.icon-hamburger span::after {
  margin-top: 25%;
}


.hero_slide {
  mix-blend-mode: multiply;
  opacity: 0.9;
  padding: 0;
  position: relative;
}

.hero_slide::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 101%;
  background: linear-gradient(180deg, #000 0%, transparent 20%, transparent 90%, #000 100%);
}

.hero_slide ul {
  display: flex;
  flex-wrap: wrap;
  position: relative;
}

.hero_slide ul li {
  width: calc(100% / 2);
  background: #000;
}

.hero_slide ul li img {
  max-width: 100%;
  height: auto;
  image-rendering: -webkit-optimize-contrast;
  opacity: 0.4;
}

.hero_slide ul::before,
.hero_slide ul::after {
  position: absolute;
  content: "";
  z-index: 1;
  border: 4px solid #fff;
  background-blend-mode: darken;
}

.hero_slide ul::before {
  top: 5%;
  left: 3%;
  background: url(../images/slide_left.jpg) no-repeat 0 0 rgba(0,0,0,0.5);
  width: 20%;
  height: calc(25% / 0.7);
  background-size: cover;

}

.hero_slide ul::after {
  position: absolute;
  content: "";
  bottom: 24%;
  right: 3%;
  background: url(../images/slide_right.jpg) no-repeat 0 0 rgba(0,0,0,0.5);
  width: 20%;
  height: calc(25% / 0.7);
  background-size: cover;
}

.hero_slide p {
  position: absolute;
  width: 100%;
  text-align: center;
  padding: 0.4em;
  margin: 0;
  bottom: 3%;
  color: #fff;
  font-weight: 600;
  font-size: 3.4rem;
  z-index: 2;
  text-shadow: 3px 3px 0 #000;
}



/* fixedbtn-content */

.fixedbtn-content {
  background-color: rgba(255, 255, 255, 0.95);
  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: #000 !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;
}

.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;
}

.content h2 span {
  display: block;
  font-size: 2rem;
  font-family: Futura, Century Gothic ,sans-serif;
  font-weight: 700;
  font-style: normal;
  color: #B2B2B2;
}

.content02 h2,
.content04 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: 6rem;
  font-weight: 700;
  margin: 0 100px;
  padding: 0.5em 0;
}

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

.topic, .voices {
  margin: 0 100px 5rem;
  padding: 20px;
  border: 2px solid #eee;
  background: #fafafa;
}

.topic h3,.voices h3 {
  background: #021e37;
  color: #fff;
  font-size: 2.2rem;
  text-align: center;
  padding: 0.4em;
  margin: 0;
}

.topic > ol.count-ex01 {
  margin: 0;
  padding: 1.3em 0 0;
  font-weight: 500;
}

.topic > ol.count-ex01 > li {
  font-size: 2rem;
  margin-bottom: 20px;
  counter-increment: count-ex01; 
  position: relative;
  padding-left: 5em;
  line-height: 1.8;
}

.topic > ol.count-ex01 > li:before {
 content:  "Topic 0" counter(count-ex01);
 position: absolute;
 top: 0;
 left: 0;
 font-family: serif;
}

.voices > ul {
  display: flex;
  flex-wrap: wrap;
  margin: 20px 0 0;
}

.voices > ul > li {
  width: 48%;
  margin: 1%;
  padding: 2rem;
  background: #fff;
  box-shadow: 3px 3px 0 rgba(0,0,0,0.1);
  font-size: 2.2rem;
  font-family: serif;
  text-align: center;
  font-weight: bold;
  position: relative;
}

.voices > ul > li:before {
  content: "┏";
  font-size: 3rem;
  font-weight: bold;
  font-family: sans-serif;
  color: #ddd;
  position: absolute;
  left: 0;
  top: -0.3em;
}

.voices > ul > li:after {
  content: "┛";
  font-size: 3rem;
  font-weight: bold;
  font-family: sans-serif;
  color: #ddd;
  position: absolute;
  bottom: -0.3em;
  right: 0;
}

.voices > ul > li > em {
  color: #C00;
  font-style: normal;
  font-size: 120%;
}


/* コンテンツ02*/

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

.content02 {
  background-image: url("../images/bg_04.jpg");
  background-repeat: no-repeat;
  background-color:rgba(20,39,70,0.7);
  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;
}
.introArea,.tokuten {
  position: relative;
  box-sizing: border-box;
  background-color: rgba(255, 255, 255, 1);
  padding: 0;
  color: #212121;
  margin: 50px auto 0;
  width: 1000px;
}

.introArea--part2 {
  height: 300px;
  background: rgb(236,207,109);
  background: linear-gradient(90deg, rgba(236,207,109,1) 0%, rgba(255,237,188,1) 50%, rgba(236,207,109,1) 100%);
  display: flex;
  justify-content: center;
  align-items: center;
}

.introArea .intro_part {
  position: absolute;
  left: -30px;
  top: -30px;
  background: #000;
  font-size: 2.4rem;
  font-weight: 500;
  color: #fff;
  padding: 0.4em 0.7em;
}
.introArea h4 {
  margin: 0;
  padding: 40px 35% 20px 5%;
  font-size: 2rem;
  font-weight: 700;
  text-align: center;
  display: block;
  line-height: 1.2;
}

.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: 70%;
	font-weight: 300;
}
.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.4rem;
}

.introArea--part2 .introArea_profile {
  background: unset;
  padding: 0;
  width: auto;
}

.introArea--part2 .introArea_profile p {
  margin: 0;
  padding: 0;
  font-size: 4rem;
  font-family: serif;
  text-align: center;
}

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

.introArea_profile p.intro_name small {
  font-size: 60%;
}

.introArea_profile p.intro_name span {
  font-size: 1.5rem;
  font-weight: 500;
  padding-left: 1em;
  color: #666;
  font-family: futura, Century Gothic, sans-serif;
  display: block;
}
.introArea_right {
  width: 35%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  background: url(../images/intro_bg_tomita.png) no-repeat 100% 0;
  background-size: cover;
}
.introArea_right--part1 {
  background: url(../images/intro_bg_tomita.png) no-repeat 100% 0;
  background-size: cover;
}
.introArea_right--part2 {
  background: url(../images/intro_bg_part2.png) no-repeat 100% 0;
  background-size: cover;
}
.introArea_right--part3 {
  background: url(../images/intro_bg_party.jpg) 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;
}

.introBooks {
  position: relative;
  box-sizing: border-box;
  background-color: rgba(255, 255, 255, 1);
  padding: 0;
  color: #212121;
  margin: 0 auto;
  width: 1000px;
}

.introBooks h3 {
  margin: 0;
  padding: 1em 0;
  font-size: 2.4rem;
}

.introBooks ul {
  display: flex;
  margin: 0 40px;
}

.introBooks ul li {
  margin: 0;
}

.introBooks ul li p {
  font-size: 1.3rem;
  line-height: 1.3;
  text-align: center;
}

.introBooks ul li img {
  margin: 0 auto;
  width: 80%;
  display: block;
  border: 1px solid #ccc;

}


.tokuten {
  margin-top: 30px;
  padding: 15px;
}

.tokuten .tokuten_outer {
  display: flex;
  margin: 0 60px;
}

.tokuten .tokuten_item {
  width: calc(100% / 3 );
  text-align: center;
  margin: 40px 0 0;
}

.tokuten .tokuten_item h3 {
  margin: 0 30px;
  padding: 20px 0;
  font-size: 1.6rem;
}

.tokuten .tokuten_item img {
  width: 60%;
  height: auto;
  margin: 0 auto;
  display: block;
  border: 2px solid #ccc;
  box-shadow: 6px 6px 3px rgba(0,0,0,0.3);
  transform: rotate(4deg);
}

.tokuten ul {
  margin: 20px 50px 0;
  padding: 20px;
  background: #fafafa;
}

.tokuten ul li {
  font-size: 1.6rem;
  padding: 0 0 0.5em 1em;
  position: relative;
}

.tokuten ul li:last-child {
  padding-bottom: 0;
}

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


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

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

/* content03 */

.content03 {
  display: block;
  position: relative;
  background: #eee;
}
.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-image: url("../images/bg_02.jpg");
  background-repeat: no-repeat;
  background-color:rgba(167,56,54,0.8);
  background-blend-mode: multiply;
  background-size: cover;
  background-attachment: fixed;
  background-size: cover;
  background-position: center;
}

.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: #fcfcfc;
}
.three-points {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

.content05 h3 {
    background: #176F9D;
    color: #fff;
    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_table {
  width: 1200px;
  table-layout: fixed;
  margin: 90px auto 0;
  background: #fff;
  border: solid 1px #adadad;
  box-sizing:border-box;
  border-collapse: collapse;
}

.detail_Area_table th {
  background: #dcdddd;
  color: #000;
  margin: 0;
  padding: 0.5em 0.8em;
  font-size: 2rem;
  font-weight: 400;
  text-align: center;
  padding: 10px;
  width: 6em;
  border-bottom: solid 1px #adadad;

}

.detail_Area_table td {
  color: #000;
  padding: 10px;
  font-size: 2rem;
  font-weight: 500;
  border-bottom: solid 1px #adadad;
}

.detail_Area_table table,
.detail_Area_table table th,
.detail_Area_table table td {
  background: none;
  color: #000;
  border: none;
  font-size: 2rem;
  padding: 0.2em;
  text-align: left;
}

.detail_Area {
  max-width: 1000px;
  margin: 90px auto 0;
  background: #fff;
}

.detail_Area h3 {
  background: #021e37;
  color: #fff;
  margin: 0;
  padding: 0.5em 0.8em;
  font-size: 2rem;
  font-weight: 600;
  text-align: left;
}

.detail_Area_inner {
	padding: 15px 15px 10px;
	color: #000;
}

.detail_Area_inner table {
  margin: 0 0 15px;
}

.detail_Area_inner table th {
  width: 6em;
  font-weight: 500;
}

.detail_Area_inner table th,
.detail_Area_inner table td {
  padding: 0.5em 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: 0 0 15px;

}

.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;
  padding: 0 0 30px;
}
.inner_venue_item {
  /*width: 49%; 2col*/
  width: auto;
  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: #114877;
  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: #114877;
  position: relative;
}

.detail_Area_inner p.ended {
  color: rgba(17, 72, 119, 0.5);
  display:inline-block;
  position: relative;
}

.detail_Area_inner p.ended:after {
  content: "（終了しました。）";
  font-size: 1.4rem;
  color: #bc000e;
  margin-left: 0.5em;
}



.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%;
}


.detail_Area dl {
  margin: 0;
}

.detail_Area dl dt {
  background-color: #969696;
  color: #FFF;
  font-size: 2.2rem;
  padding: 1.3rem 3rem;
  font-weight: 700;
}

.detail_Area dl dd {
  font-size: 1.8rem;
  padding: 1.3rem 3rem;
  color: #000;
  /*border: solid 1px #969696;*/
  margin-left: 0;
  background-color: #fff;
}

.detail_Area dl dd.caution {
}

.detail_Area dl dd.venue {
  position: relative;
  padding: 20px 3rem;
  display: flex;
  justify-content: space-between;
}

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

.detail_Area dl dd.venue:before {
  position: absolute;
  content: "";
  width: 94%;
  height: 2px;
  background: #969696;
  left: 3%;
  top: -2px;
}

.detail_Area dl dd:after {
  clear: both;
  content: "";
  display: block;
}

.detail_Area dl dd p {
  font-size: 16px;
  margin: 0;
}

.detail_Area dl dd.inquiry p {
  font-size: 18px;
  position: relative;
  padding-left: 0;
  padding-bottom: 0.4em;
}

.detail_Area dl dd.inquiry p.number {
  margin: 0;
  padding: 0 0 0 1em;
  display: block;
}

.detail_Area dl dd.inquiry p.number small {
    font-size: 12px;
}

.detail_Area dl dd.caution p {
  font-size: 12px;
  position: relative;
  padding-left: 1em;
  padding-bottom: 0.4em;
}


.detail_Area dl dd.caution p a span {
  font-size: 70%;
}

.detail_Area dl dd.caution p:before {
  content:"・";
  position: absolute;
  left: 0;
}

.detail_Area dl dd.caution p.btn {
  padding-left: 0;
  text-align: center;
  display: block;
}

.detail_Area dl dd.caution p.btn:before {
    content: "";
}

.detail_Area dl dd.caution p.btn a {
  background: #021043;
  color: #fff;
  display: block;
  text-align: center;
  width: 15em;
  margin: 10px auto;
  padding: 0.6em;
  font-size: 170%;
}

.detail_Area dl dd.caution p.btn a:hover {
  background: #0D6491;
}

.detail_Area dl dd p span {
  font-size: 14px;
  display: block;
}

.detail_Area dl dd .gmap {
  margin: 0 0 0 20px;
  padding: 20px 0 0 0;
  background: #fff;
}

.detail_Area dl dd h4 {
  background: #bababa;
  color: #fff;
  margin: 10px 0;
  padding: 0.3em;
  font-size: 14px;
}

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

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

.detail_Area dl dd .access {
  font-size: 12px;
  margin: 0;
  padding: 0 0 0 18px;
}

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

.detail_Area dl dd .button  {
  text-align: center;
  margin: 0.5em 0 1em;
  display: block;
}

.detail_Area dl dd .button a {
  background: #f2f2f2;
  border: solid 1px #ddd;
  color: #0D6491;
  font-size: 12px;
  margin: 10px auto;
  padding: 0.4em 0.6em;
  text-align: center;
}
.detail_Area dl dd .button a:before {
  content: "\e952";
  font-family: zo-icons;
  margin-right: 0.2em;
}

.detail_Area dl dd .button a:hover {
  background: #adadad;
  border: solid 1px #adadad;
  color: #fff;
}
/* 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;
}


.guide {
  width: 980px;
  margin: 0 auto;
  position: relative;
  display: block;
  border-top: 1px solid #ddd;
}

.guide li {
  padding: 0.5em 0;
  font-feature-settings: normal;
  font-size: 1.3rem;
  display: flex;
  flex-wrap: wrap;
  border-bottom: 1px solid #ddd;

}

.guide li em {
  width: 10em;
  display: inline-block;
  font-weight: bold;
  font-style: normal;

}

.guide li span {
  width: calc(100% - 10em);
}

.guide li::before {
  /*content: "※";
  position: absolute;
  left: 0;*/
}

.guide li ul {
  margin: 0.5em 0 0 10em;
  position: relative;
}

.guide li ul li {
  padding: 0 0 0.5em 0;
  border: none;

}

.guide li ul li::before {
  content: "";
}



/* form */

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

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

.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: #212121;
  color: #FFF;
  font-size: 12px;
}

/*  ＊＊＊＊＊＊＊＊＊＊＊＊
*****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: 70px;
  right: 20px;
}

#pageTop i {
  padding-top: 6px
}

#pageTop a {
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 999;
  padding: 0;
  border-radius: 25px;
  width: 50px;
  height: 50px;
  background-color: rgba(0,0,0,0.6);
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
  font-size: 40px;
  text-align: center;
}
#pageTop a:after {
  content: "\2B06";
  font-family: u1f800;
  font-size: 32px;
  width: 100%;
  line-height: 1;
  margin: 0;
  padding: 0;
}

#pageTop a:hover {
  text-decoration: none;
  opacity: 0.7;
}

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

@media screen and (max-width: 1200px) {
  .hero_nav_list {
    width: auto;
    margin: 0 10px;
    font-size: 14px;
    overflow-x: auto;
  }
  .hero_nav_list li {
    padding: 0.5em;
  }

  .top_content p.present {
    position: absolute;
    left: 2%;
    top: 0px;
    width: 150px;
    z-index: 1;
  }
  .top_content h1 {
    font-size: 450%;
    padding-bottom: 0;
  }

  .top_content h1 em {
    font-size: 2.4rem;
  }

  .top_content .date .media p {
  }

  .top_content .date .media img {
    width: 400px;
  }
  .content01 h3 {
    margin: 0 5%;
  }

  .topic, .voices {
    margin: 0 5% 60px;
  }

  .topic > ol.count-ex01 > li {
    font-size: 2rem;
  }

  .voices > ul > li {
    font-size: 1.8rem;
  }



  .lead {
    margin: 0 5%;
    padding: 1.3em 0 0;
  }
  .introArea, .introBooks {
    width: auto;
    margin: 70px 5% 0;
  }
  .introArea--part2 {
    display: block;
  }
  .introArea h4 {
    padding: 2rem 30% 0.5em 1em;
    font-size: 1.6rem;
  }
  .introArea--last h4 {
    padding: 15px 0 0 0;
  }

  .introArea p.speech-content {
    padding-right: 32%;
    font-size: 14px;
  }

  .introArea--last p.speech-content {
    padding-right: 0;
  }
  .introArea_profile {
    padding-right: 32%;
  }
  .introArea_profile p {
    font-size: 1.2rem;
  }

  .introArea--part2 {
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .introArea--part2 .introArea_profile p {
    /*display: none;*/
  }

  .introArea--part2 .introArea_profile p {}

  .introArea_profile p.intro_name {
    font-size: 2rem;
  }

  .introArea_profile p.intro_name span {
    font-size: 1.5rem;
  }
  .introArea_right {
    width: 30%;
    background: url(../images/intro_bg_takeuchi.jpg?20012202) no-repeat 80% 0;
    background-size: auto 120%;
  }
  .introArea_right--part1 {
    width: 30%;
    background: url(../images/intro_bg_tomita.jpg) no-repeat 80% 0;
    background-size: auto 120%;
  }

    .introArea_right--part2 {
    width: 30%;
    background: url(../images/intro_bg_part2.png) no-repeat 80% 0;
    background-size: auto 120%;
  }

  .introArea_right--part3 {
    width: 30%;
    background: url(../images/intro_bg_party.jpg) no-repeat 80% 0;
    background-size: auto 120%;
  }
  .introArea_right--part4 {
    width: 30%;
    background: url(../images/intro_bg_moriyama.jpg?20012202) no-repeat 80% 0;
    background-size: auto 120%;
  }

  .introBooks {
    margin: 0 5%;
  }

  .introBooks h3 {
    font-size: 2rem;
  }

  .introBooks ul {
    margin: 0 10px;
  }

  .introBooks ul li p {
    font-size: 1.1rem;
  }

  .tokuten {
    margin: 50px 2.5% 0;
    width: auto;
  }

  .detail_Area {
    width: auto;
    margin: 0 5%;
  }


}

@media screen and (max-width: 1024px) {
  .top_content h1 {
    font-size: 370%;
    padding: 0;
  }

  .topic, .voices {
     margin: 0 0 50px;
  }

  .topic > ol.count-ex01 > li {
    font-size: 1.8rem;
  }

  .voices > ul > li {
    font-size: 1.6rem;
  }

  .introArea_right {
    background-position: 50% 0;
    background-size: auto 100%;
  }
  .introArea .intro_part {
    left: -20px;
    top: -25px;
    font-size: 2rem;
    padding: 0.3em 0.6em;
  }

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

  .guide {
    width: auto;
  }
}


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

  .show-pc {
    display: none;
  }
  .show-sp {
    display: block;
  }
  h2 {
    margin-top: -80px;
    padding-top: 80px;
    font-size: 6.25vw;
  }
  h2 span {
    font-size: 4.375vw;
  }
  p {
    font-size: 3.75vw;
  }
  .lead {
    font-size: 3.75vw;
    margin: 0 2.5vw;
    padding: 0 0 1em;
    text-align: justify;
  }

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

  .top_content .special {
    align-items: flex-start;
    width: 100%;
    font-size: 7.5vw;
  }
  .top_content .special p {
    font-size: 7.5vw;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
  }
  .top_content .special span {
    text-align: left;
    font-size: 65%;
  }

  .top_content p.present {
    left: 5vw;
    top: 2.5vw;
    width: 27vw;
    margin: 0;
    padding: 0;
  }
  .top_content h1 {
    text-align: center;
    width: 100%;
    margin: 5vw auto 0;
    padding: 0;
    font-size: 11.25vw;
    line-height: 1.3;
  }
  .top_content h1 small {
    font-size: 50%;
    padding: 5vw 0 2.5vw;
  }

  .top_content h1 span,
  .top_content h1 span:nth-child(2) {
    width: 60%;
    margin: 0 auto 0 30vw;
  }
  .top_content h1 em {
    font-size: 4.375vw;
    margin: 5vw 0 0;
    padding: 0.4em 0.3em;
    text-align: center;
  }
  .top_content h1 img {
    max-width: auto;
    width: 100%;
  }

  .top_content .date .media {
    width: auto;
    margin: 5vw auto 0;
  }

  .top_content .date .media p {
    font-size: 3.75vw;
    margin: 2.5vw auto;
    width: auto;
    position: relative;
  }

   .top_content .date .media p small {}

  .top_content .date .media img {
    width: 96%;
    margin: 0 auto;
  }
  .top_content p.date big {
    font-size: 150%;
  }
  .top_content p.date small {
    font-size: 60%;
  }
  .top_content p.date span {
    font-size: 5vw;
  }

  .top_content .date .media h2 {
    font-size: 4.375vw;
  }
  .top_content .date .media ul {
    margin: 3.125vw 3.125vw 0;
  }
  .top_content .date .media ul li {
    font-size: 3.75vw;
    padding: 0 0 0.6em;
  }  
  .header-content {
    max-height: 15.625vw;
  }

  .header-content_top {
    position: relative;
    font-size: 5vw;
    width: auto;
    margin: 5vw 5% 0;
  }

  .header-content_top p {
    width: auto;
    font-size: 5vw;
    padding: 0.6em 0;
    display: block;
  }

  .header-content_top p:before {
    top: -0.4em;
  }
  .header-content_top img {
    width: 90%;
  }
  .header-content .logo {
    padding: 0 0 0 3.125vw;
  }
  .header-content .logo a {
    font-size: 5vw;
  }
  .header-content .logo img {
    max-height: 12.5vw;
    width: auto;
  }
  .hero_image {
    min-height: 20vw;
    padding-top: 0;
  }

  .hero_image:before {
    width: 80%;
    background-position: 100% 0;
    transform: translatex(20%);
    opacity: 70%;
  }

  .hero_nav {
    position: relative;
    min-height: unset!important;
    min-height: 8.75vw;
    overflow-x: auto;
    overflow-y: hidden;
  }
  .hero_nav::after {
    height: 6.25vw;
    bottom: -6.25vw;
    background-size: 6.25vw 6.25vw;
  }
  .hero_nav_list {
    justify-content: flex-start;
  }
  .hero_nav_list.active {
    display: inline-block;
    width: auto;
    padding-top: 2.5em;
  }
  .hero_nav_list li {
    font-size: 3.125vw;
    padding: 0 1em 0 0;
    white-space: nowrap;
  }
  .hero_slide ul::before,
  .hero_slide ul::after {
    width: 30%;
    height: calc(30% / 0.6);
    top: 7%;
    border: 2px solid #fff;
  }

   .hero_slide ul::after {
    top: unset;
    bottom: 7%;
   }

  .hero_slide p {
    font-size: 6.25vw;
    color: #fff;
    background: none;
    padding: 0;
    line-height: 1.4;
    text-shadow: 2px 2px 0 #000;
    bottom:28%;
  }

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

  .topic, .voices {
    padding: 2.5vw;
  }

  .topic > ol.count-ex01 > li {
    font-size: 3.75vw;
  }

  .voices > ul {
    display: block;
    flex-wrap: unset;
  }

  .voices > ul > li {
    width: auto;
    font-size: 4.375vw;
    padding: 2.5vw;
    margin: 0 0 5vw;
  }
  


  .point {
    margin: 0 5%;
  }

  .point .point_inner h3 {
    display: block;
    text-align: left;
    font-size: 4.375vw;
    padding: 0 0 0.3em;
  }
  .point .point_inner h3 span {
    display: block;
  }

  .h2_sub_r {
    line-height: 1.4;
    font-size: 5.625vw;
  }
  .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;
  }
  .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: 10vw 5% 0;
    padding: 0;
  }
  .introArea .intro_part {
    position: relative;
    width: 100%;
    top: unset;
    left: unset;
    font-size: 5vw;
  }
  .introArea h4 {
    font-size: 5.625vw;
    padding: 0.8em 3.125vw 0;
    text-align: left;
  }
  .introArea h4 span {
    font-size: 3.75vw;
  }
  .introArea h4 span em {
    font-size: 4.375vw;
  }
  .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: none;
  }
  .name_sub {
    display: block;
    margin: 0;
    font-size: 3.125vw;
  }
  .introArea .introImag img {
    width: 100%;
    height: auto;
  }

  .introBooks {
    width: auto;
    margin: 0 5%;
  }

  .introBooks ul {
    margin: 0;
    flex-wrap: wrap;
  }

  .introBooks ul li {
    margin: 0 0;
    width: calc(100% / 3);
  }

  .introBooks ul li p {
    font-size: 2.5vw;
  }

  .tokuten {
    margin: 0 2.5%;
    width: auto;
  }

  .tokuten .tokuten_outer {
    margin: 0;
  }

  .tokuten .tokuten_item {
    margin: 5vw 0 0;
  }

  .tokuten .tokuten_item img {
    width: 86%;
  }

  .tokuten .tokuten_item h3 {
    margin: 5vw 0 0;
    padding: 0;
    font-size: 3.125vw;
  }

  .tokuten ul {
    margin: 5vw 0 0;
    padding: 2.5vw;
  }

  .tokuten ul li {
    font-size: 3.75vw;
  }

  .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;
  }
  .detail_Area_inner {
    padding: 3.75vw;
  }

  .detail_Area_inner p {
    font-size: 5vw;
    font-weight: 600;
    text-align: justify;
  }
  .detail_Area_inner ul {
    padding-bottom: 3.75vw;
  }
  .detail_Area_inner ul li {
    padding-top: 0.3em;
    font-size: 3.125vw;
  }
  .detail_Area_inner ul li p.btn a {
    width: auto;
    font-size: 5vw;
  }

  .inner_venue {
    display: block;
  }
  .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: 6.25vw !important;
    width: 94%;
    margin: 0 auto !important;
  }
  .cvbtn a {
    color: #FFF;
    display: block;
    text-decoration: none;
  }
  #pageTop {
    bottom: 90px;
  }

  .content02 {
    background-image: url("../images/bg_04.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
    background-size: cover;
    background-position: center;
    height:auto;
  }
  .introArea--part2 {
    display: block;
  }
  .introArea--part2 .introArea_profile p {
    display: none;
  }
}

.fs_large { font-size: 125%; }
.fs_larger { font-size: 150%; }
.fs_largest { font-size: 200%; }
