@charset "UTF-8";

/*==============================================================
# 変数設定
==============================================================*/
/*==============================================================
# @mixin 設定
==============================================================*/
/*==============================================================
# 初期設定
==============================================================*/
html {
  font-size: 62.5%;
}

body {
  color: #000;
  background-color: #fff;
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 16px;
  font-weight: 400px;
  line-height: 1.75;
  letter-spacing: 0.1rem;
  -webkit-text-size-adjust:100%
}

body img {
  width: 100%;
  height: auto;
}

body a {
  text-decoration: none;
  color: #000000;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

body a:hover {
  opacity: 0.6;
}

.container {
  max-width: 1200px;
  margin: 0 auto;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  width: 90%;
}
.contents-title {
  text-align: center;
  font-size: 3.6rem;
  margin-bottom: 100px;
  letter-spacing: 0.1rem;
}

@media screen and (max-width: 767px) {
  .contents-title {
    font-size: 2.7rem;
    margin-bottom: 40px;
  }
}

.section {padding: 160px 0; background: #fff;}

@media screen and (max-width: 1039px) {
  .section {
    padding: 120px 0;
  }
}

@media screen and (max-width: 767px) {
  .section {
    padding: 80px 0;
  }
}

.btn-wrapper {margin-top: 60px; text-align: center;}
.btn {
	color: #FF0000;
    border: 1px solid #FF0000;
    max-width: 300px;
    width: 100%;
    padding: 15px 10px;
    display: inline-block;
    text-align: center;
}
.btn:hover {
  opacity: 0.8;
}

@media screen and (max-width: 1039px) {
  .is-pc {
    display: none;
  }
}

.is-sp {
  display: none;
}

@media screen and (max-width: 767px) {
  .is-sp {
    display: block;
  }
}

p { font-size:16px; margin: 0; padding:0; line-height:2; display:block; color:#000; }
ul { margin:0; padding:0; }
li { margin:0; padding:0; font-size:16px; line-height: 1.8;}
i { padding-right:6px; }
dt,
dd {line-height: 1.8;}


/* ------------------------------フォント------------------------------　*/
.wf-oswald {font-family: 'Oswald', sans-serif;} 
.wf_hiragino-mincyo {font-family: 'Hiragino Mincho ProN', 'ヒラギノ明朝 ProN', 'Hiragino Mincho Pro', 'ヒラギノ明朝 Pro', 'YuMinchoW','YuMinchoM','游明朝' ,"Yu Mincho",'YuMincho' , 'HGS明朝E' ,'メイリオ', 'Meiryo', serif;}

/* ------------------------------アイコン------------------------------　*/
@font-face {
  font-family: 'icomoon';
  src:  url('fonts/icomoon.eot?9k851l');
  src:  url('fonts/icomoon.eot?9k851l#iefix') format('embedded-opentype'),
    url('fonts/icomoon.ttf?9k851l') format('truetype'),
    url('fonts/icomoon.woff?9k851l') format('woff'),
    url('fonts/icomoon.svg?9k851l#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-comments:before {
  content: "\e900";
}
.icon-pen:before {
  content: "\e901";
}
.icon-tent:before {
  content: "\e902";
}



/*==============================================================
# ヘッダー
==============================================================*/
body.noscroll #global-nav {position: fixed; top: 0; z-index: 99999;}
body.noscroll h1.site-title {background: #fff;} 
body.noscroll .burger-btn {background: #fff;} 
.header {width: 100%; align-items: center; color: #fff; display: flex; height: 60px; justify-content: space-between; position: fixed; top: 0;}
h1.site-title {z-index: 9999;z-index: 10; width: 100%; display: flex; align-items: center;}
h1.site-title img {width: 310px; height: auto; padding-left: 15%;}
.nav-list {display: flex;}
.nav-item {margin-right: 55px;}
.burger-btn {display: none;}
button {-webkit-appearance: none; -moz-appearance: none; appearance: none; background: transparent; border: 0; border-radius: 0; color: inherit; cursor: pointer; font: inherit; margin: 0; outline: none; padding: 0; vertical-align: middle;}
.menu-txt {margin-left:  16px; top: 25px; position: fixed; left: 50px; z-index: 10000;  /* mix-blend-mode: difference; */}
.burger-btn {display: block; height: 39px; right: 0; width: 39px; z-index: 3; background-color: transparent; border: none; top: 0; position: absolute; height: 100px; width: 100px;}
.bar {background-color: #000; display: block; height: 2px; left: 50%; position: absolute; transform: translateX(-50%); width: 3em;}
.bar_top {top: 35px;}
.bar_mid {top: 50%; transform: translate(-50%,-50%); width: 2em; left: 43px;}
.bar_bottom {bottom: 35px;}
.burger-btn.close .bar_top {transform: translate(-50%,10px) rotate(45deg); transition: transform .3s;}
.burger-btn.close .bar {bottom: 44px}
.burger-btn.close .bar_mid {opacity: 0; transition: opacity .3s;}
.burger-btn.close .bar_bottom {transform: translate(-50%,-8px) rotate(-45deg); transition: transform .3s;} 
button.burger-btn.close span {background: #000;}
button.burger-btn.close + .menu-txt {display: none;}
#global-nav.m_fixed .burger-btn.close {background: #fff;}
#global-nav.m_fixed .burger-btn.close span {background: #000;}
button.burger-btn.scroll-nav + .menu-txt {color: #000;}
.nav-wrapper {visibility: hidden; height: 100%; left: 0; width: 100%; opacity: 0; transition: all .3s ; z-index: 2;}
.header-nav {background-color: rgba(255, 255, 255, 1); height: 100%; width: 100%; z-index: 2; display: flex; align-items: center; padding-left: 100px; padding-right: 100px; position: relative;}
.header-nav h1 img { max-width: 250px; margin-bottom: 40px;}
.header-nav > div ul {display: flex; flex-wrap: wrap; justify-content: center;}
.header-nav > div ul a {font-size: 20px; padding: 0 15px;}
.nav-list {display: flex; flex-wrap: wrap; padding-left: 130px;}
.nav-list li {flex-basis: 100%; padding: 10px 0; position: relative; padding-left: 45px;}
.nav-list li p:first-of-type {font-size: 36px; color: #000; font-weight: bold; line-height: 1.5;}
.nav-list li p:first-of-type:before {content: ''; width: 35px; height: 1px; display: inline-block; background-color: #FF0000; position: absolute; top: 40%; left: 0px; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%);}
.nav-list li p:last-of-type {font-size: 14px; line-height: 2; font-weight: normal;}
.nav-item {margin-right: 0;}
.nav-item {flex-basis: 100%; }
.nav-item a {display: block; color: #fff; font-size: 0.8rem; padding: 20px 40px; border-bottom: 1px solid #999; line-height: 1.5; }
.nav-btn-wrapper {width: 220px; height: 220px; background: #FF0000; border-radius: 50%; text-align: center; position: absolute; bottom: 2em; right: 2em; display: flex; align-items: center; justify-content: center;}
a.nav-anchor {display: block; color: #fff;text-decoration: none; }
a.nav-anchor span {text-decoration: underline;}
.nav-wrapper.fade {opacity: 1; visibility: visible;}
#global-nav {transition: all 0.3s ease 0s; background: #fff; border-bottom: 2px solid red;}
#global-nav.m_fixed {position: fixed; top: 0; background: #fff; height: 100px; z-index: 999; border-bottom: 2px solid red;}
/* #global-nav.m_fixed .bar {background-color: #fff;} */
#global-nav.m_fixed .burger-btn {height: 100px; width: 100px; /* background: #FF0000; */}
#global-nav.m_fixed {height: 60px;}
#global-nav.m_fixed .burger-btn {height: 60px; width: 60px;}
#global-nav.m_fixed .burger-btn .bar_top {top: 20px;}
#global-nav.m_fixed .burger-btn .bar_bottom {bottom: 20px;}
header#global-nav .nav-wrapper {position: fixed; top: 0px;}
h1.site-title {height: 60px;}
.burger-btn {height: 60px; width: 60px; z-index: 20;}
.bar {width: 2em;}
.bar_top {top: 38px;}
.bar_bottom {bottom: 38px;}
.bar_mid {width: 1em; left: 24px;}
.burger-btn.close .bar {bottom: 44px;}
.burger-btn.close .bar_top {top: 20px;}
.burger-btn.close .bar_bottom {bottom: 20px;}
.header-nav div {flex-basis: 40%;}
.header-nav div img {height: 70vh;
object-fit: cover;}
.nav-list {flex-basis: 55%; padding-left: 80px;}
.h-btn {background: #FF0000; color: #fff; margin-right: 60px; height: 60px; display: flex; align-items: center; justify-content: center; padding: 0 25px; font-weight: bold; position: absolute; right: 0; z-index: 100;
    line-height: 1.5; text-align: center;s}

@media screen and (max-width:1200px){
	.nav-list li {padding-left: 30px;}
	.nav-list li p:first-of-type {font-size: 30px;}
	.nav-btn-wrapper {width: 200px; height: 200px;}
	.nav-btn-wrapper a {font-size: 14px;}
}

@media screen and (max-width:966px){
	.header-nav {display: block; padding-left: 0; padding-right: 0; overflow: scroll;}
	.header-nav img {height: 25vh; object-fit: cover; margin-top: 60px; object-position: center center;}
	.header-nav > div ul {display: none;}
	.header-nav > div ul a  {font-size: 30px;}
	.nav-list li {padding-left: 7%;}
	.nav-list li p:first-of-type {font-size: 6vw; text-align: left;}
	.nav-list li p:first-of-type:before {width: 7%;}
	.nav-list li a {font-size: 8.5vw; text-align: left;}
	.nav-list li p:last-of-type {font-size: 3.5vw;}
	.nav-list {padding-left: 0; width: 80%; margin: 0 auto; text-align: center; padding-bottom: 100px; padding-top: 20px;}
	.nav-item a {padding: 3% 5%;}
	.nav-wrapper {width: 100%;}
	.nav-btn-wrapper {position: fixed; width: 100%; height: 60px; border-radius: 0; bottom: 0; left: 0;}
	.nav-btn-wrapper a {font-size: .8em;}
	.nav-wrapper.fade {width: 100%;}
	a.nav-anchor span {padding-left: 0.8em;}
}

@media screen and (max-width:766px){
	.header-nav div img {height: auto;}
	h1.site-title img {width: auto; height: 35px; padding-left: 15px;}
	
}

@media screen and (max-width:466px){
	.h-btn {font-size: 12px;}
}

/*==============================================================
# メインビジュアル
==============================================================*/
.top-kv {height: calc(100vh - 60px); margin-top: 60px;
	background-image: url(../img/kv.jpg);
  background-position: 100% 0%; background-size: contain; background-repeat: no-repeat; background-color: #fff;
}
.top-kv .img-wrapper {display: none;}
.top-kv .container {height: 100vh; background: #fff; max-width: 300px; margin: 0 auto 0 0; display: flex; align-items: center; justify-content: end;}
.top-kv .txt-wrapper {position: absolute; top: 0; left: 5%; display: flex; align-items: center; justify-content: center; height: 100vh; padding-top: 100px; padding-bottom: 50px;} 
.top-kv .txt h1 {font-size: 76px; width: 100%; max-width: none;}
.sp_466 {display: none;}
.top-kv .txt h2 {writing-mode: vertical-rl; text-orientation: upright; font-size: 39px; padding-top: 40px;}

@media screen and (max-width: 1200px) {
	.top-kv .txt-wrapper {padding-top: 50px;}
	.top-kv .txt h1 {font-size: 60px; line-height: 1.4;}
	.top-kv .txt h2 {font-size: 30px; padding-top: 20px;}
}

@media screen and (max-width: 966px) {
	.top-kv {background-position: 50% 50%; background-size: cover;}
	.top-kv .txt h1 {font-size: 5vw;}
}

@media screen and (max-width: 766px) {
	.top-kv {background-image: none; display: flex;
    flex-wrap: wrap; flex-direction: row-reverse;}
	.top-kv .img-wrapper {display: block; flex-basis: 50%; width: 50%;}
	.top-kv .img-wrapper img {width: 100%; height: 100%; object-fit: cover;}
	.top-kv .container {flex-basis: 50%;}
	.top-kv .txt h1 {font-size: 5vw;}
	.top-kv .txt h2 {writing-mode: initial; font-size: 3.3vw; line-height: 1.5;} 
}

@media screen and (max-width: 466px) {
	.top-kv {background-image: none; display: flex; flex-wrap: wrap; height: 100vh; margin-top: 0;}
	.top-kv .img-wrapper {display: block; height: 50vh; flex-basis: 100%; padding-top: 60px;}
	.top-kv .img-wrapper img {width: 100%; height: 100%; object-fit: cover;}
	.top-kv .container {max-width: 90%; flex-basis: 100%; height: 50vh; display: block; margin: 0 auto;}
  .top-kv .txt-wrapper {position: relative; display: block; padding-top: 0; padding-bottom: 0; left: 0; margin-top: -54vw;}
	.top-kv .txt h1 {font-size: 15vw; line-height: 1.2;}
  .top-kv .txt h1 span {color: #fff;}
  .sp_466 {display: block;}
	.top-kv .txt h2 {font-size: 7vw; }
}

/*==============================================================
# フッター
==============================================================*/
.footer {background: #23405C;}
.footer .container {max-width: 96%; padding: 70px 0; margin: 0 auto; display: flex; justify-content: space-between;}
.footer .footer-left {flex-basis: 40%;}
.footer .footer-right {flex-basis: 60%;}
.footer-left a.footer-logo {display: block; width: 250px; background: #fff; margin-top: 20px;}
.footer-left a.footer-logo img {width: 100%; height: 100%; object-fit: contain;/*  padding: 14px; */}
.footer-left .btn-wrapper {margin-top: 20px;}
.footer-left .btn-wrapper p {color: #fff; text-align: left;}
.footer-left .btn-wrapper a {text-decoration: underline; color: #fff; padding-left: 0.5em;}
.footer-right nav ul {display: flex; justify-content: end;}
.footer-right nav ul li a {color: #fff; padding: 25px 15px;}
.footer-copyright {text-align: center; font-size: 14px; background: #000; color: #fff; padding: 15px;}

@media screen and (max-width: 1100px) {
	.footer-left a.footer-logo {width: 300px;}
	.footer-left .btn-wrapper {display: block; text-align: left;}
	.footer-left .btn-wrapper a {padding-left: 0;}
	.footer-right nav ul li a {padding: 25px 0.8em;}
}

@media screen and (max-width: 966px) {
	.footer .footer-right {flex-basis: 50%;}
	.footer-right nav ul {flex-wrap: wrap; justify-content: flex-start;}
	.footer-right nav ul li {flex-basis: 50%;}
	.footer-right nav ul li a {display: block;}
}

@media screen and (max-width: 766px) {
	.footer .container {flex-direction: column-reverse; padding: 40px 0;}
	.footer .footer-right nav ul li a {padding: 1em 0;}
	.footer .footer-left {margin: 2em auto 0; flex-basis: 100%;}
	.footer-left .btn-wrapper {text-align: center;}
	.footer-left .btn-wrapper p {text-align: center;}
	.footer-left a.footer-logo {width: 280px; margin: 30px auto 0;}
	.footer-right nav ul li a {padding: 10px 0.8em;}
	
}

@media screen and (max-width: 466px) {
	.footer-left a.footer-logo {width: 240px;}
}

/*==============================================================
# 下層ページトップ
==============================================================*/
#kv_kaso {height: 300px; margin-top: 60px; 
	background-image: url(../img/kaso-kv.jpg);
  background-image: image-set(url(../img/kaso-kv.jpg) 1x, url(../img/kaso-kv@2x.jpg) 2x);
  background-image: -webkit-image-set(url(../img/kaso-kv.jpg) 1x, url(../img/kaso-kv@2x.jpg) 2x);
  background-size: contain; background-position: center; 
}  
.kaso-inner {height: 300px; display: flex; align-items: center; justify-content: center; text-align: center;}    
#kv_kaso .top-ttl h2 {color: #fff; font-size: 67px; line-height: 1;}
#kv_kaso .top-ttl p {color: #fff; font-size: 18px;}

a.anchor{ display: block; padding-top: 70px; margin-top: -70px;} 
.copy p {text-align: center; font-weight: bold; margin-bottom: 0;}

@media screen and (max-width:1200px){
	#kv_kaso {background-size: cover;}
}

@media screen and (max-width:766px){
	#kv_kaso {margin-top: 60px; height: 240px;}
	#kv_kaso .top-ttl h2 {font-size: 5rem}
	.kaso-inner {height: 240px;}
	.top-ttl h2 {font-size: 5rem; margin-bottom: 0;}
	article#page_top {margin-top: -20vh;}
}

@media screen and (max-width:466px){
	#kv_kaso {height: 180px;}
	.kaso-inner {height: 180px;}
}

/*==============================================================
#
# AT-1とは
#
==============================================================*/
#page_about .top-ttl h2 {font-size: 38px;}
#page_about .top-ttl p {font-size: 24px;}

@media screen and (max-width:766px){
	#page_about .top-ttl h2 {font-size: 3rem;}
	#page_about .top-ttl p {font-size: 1.6rem;}
}

/*==============================================================
# 目指しているもの
==============================================================*/
.goal .container {width: 100%; max-width: none;}
.goal ul {display: flex; justify-content: space-between;}
.goal ul:first-of-type {margin-bottom: 70px;}
.goal ul:first-of-type li:first-of-type {flex-basis: 50%;}
.goal ul:first-of-type li:last-of-type {flex-basis: 45%;}
.goal ul:first-of-type .txt-wrapper {max-width: 600px; width: 95%; margin-left: auto; margin-right: 0;}
.goal ul li h3 {font-size: 28px; color: #FF0000; margin-bottom: 20px;}
.goal ul:last-of-type {flex-direction: row-reverse;}
.goal ul:last-of-type li:first-of-type {flex-basis: 50%;}
.goal ul:last-of-type li:last-of-type {flex-basis: 45%;}
.goal ul:last-of-type .txt-wrapper {max-width: 600px; width: 95%; margin-right: auto; margin-left: 0;}

@media screen and (max-width: 966px) {
	.goal ul {flex-wrap: wrap;}
	.goal ul:first-of-type li:first-of-type {flex-basis: 90%; margin: 0 auto 40px;}
	.goal ul:first-of-type li:last-of-type {flex-basis: 90%; margin: 0 auto;}
	.goal ul:first-of-type .txt-wrapper {max-width: 100%; width: 100%;}
	.goal ul:last-of-type {flex-direction: row;}
	.goal ul:last-of-type li:first-of-type {flex-basis: 100%;}
	.goal ul:last-of-type li:last-of-type {flex-basis: 90%; margin: 0 auto;}
	.goal ul:last-of-type .txt-wrapper {max-width: 90%; margin: 0 auto 40px;}
}

@media screen and (max-width: 766px) {
	.goal ul li h3 {font-size: 6.5vw;}
}

/*==============================================================
# 活動内容
==============================================================*/
.do {background: #F0F6F9;}
.do ul {display: flex; justify-content: space-between; }
.do ul li {flex-basis: 31%; padding: 40px 30px; background: #fff; -webkit-box-shadow: 3px 3px 12px rgb(0 0 0 / 10%), -3px -3px 12px rgb(0 0 0 / 10%); box-shadow: 0px 0px 15px rgb(0 0 0 / 10%), 0 0px 15px rgb(0 0 0 / 10%);}
.do ul li .img-wrapper {width: 130px; height: 130px; display: flex; align-items: center; justify-content: center; border: 1px solid #FF0000; border-radius: 50%; margin: 0 auto 20px; color: #FF0000;}
.do ul li:nth-of-type(1) img {width: 40px;}
.do ul li:nth-of-type(2) img {width: 45px;}
.do ul li:nth-of-type(3) img {width: 50px;}
.do ul li h3 {font-size: 20px; font-weight: bold; margin-bottom: 20px; text-align: center;}

@media screen and (max-width: 966px) {
	.do ul {flex-wrap: wrap;}
	.do ul li {flex-basis: 100%; margin-bottom: 30px;}
}

@media screen and (max-width: 966px) {
	.do ul li {padding: 7%;}
	.do ul li .img-wrapper {width: 100px; height: 100px;}
	.do ul li:nth-of-type(1) img {width: 30px;}
	.do ul li:nth-of-type(2) img {width: 35px;}
	.do ul li:nth-of-type(3) img {width: 40px;}
}

/*==============================================================
# 参加について
==============================================================*/
.notes {padding: 0 0 160px 0;}
.notes .red_bg {height: 520px; background: #FF0000;}
.notes .container {margin-top: -370px;}
.notes .top-ttl h2 {color: #fff;}
.notes .top-ttl p {color: #fff;}
.notes .top-ttl h2:before {background-color: #fff;}
.notes .txt-wrapper {background: #fff; padding: 85px; -webkit-box-shadow: 3px 3px 12px rgb(0 0 0 / 10%), -3px -3px 12px rgb(0 0 0 / 10%); box-shadow: 0px 0px 15px rgb(0 0 0 / 10%), 0 0px 15px rgb(0 0 0 / 10%);}
    
@media screen and (max-width: 1039px) {    
    .notes {padding: 0 0 120px 0;}
}

@media screen and (max-width: 766px) { 
	.notes {padding: 0 0 80px 0;} 
	.notes .txt-wrapper {padding: 10%;}
}
@media screen and (max-width: 466px) { 
	.notes .container {margin-top: -410px;}
}

/*==============================================================
#
# 設立趣意書
#
==============================================================*/
.prospectus img {margin-bottom: 35px;}
.prospectus h3 {font-size: 36px; color: #FF0000; margin-bottom: 20px;}
.prospectus .txt-wrapper p:last-of-type {text-align: right; margin: 20px 0 0 0 ;}

@media screen and (max-width:766px){
	.prospectus h3 {font-size: 6vw;}
	
}

@media screen and (max-width:466px){
	.prospectus .txt-wrapper p {font-size: 14px;}
}

/*==============================================================
#
# SEMINAR(page-seminar.php)
#
==============================================================*/
#page_seminar .next {background: #F0F6F9;}

/*==============================================================
#
# ARCHIVE(page-seminar_archive.php)
#
==============================================================*/
#page_archive .next {background: #F0F6F9;}

/*==============================================================
# これからの会
==============================================================*/
#page_archive .seminar .next-item {flex-basis: 15%;}
#page_archive .seminar .next-item:not(:last-of-type) {margin-right: 2%;}
#page_archive .seminar .next-item img {width: 100%; -webkit-box-shadow: 3px 3px 12px rgb(0 0 0 / 10%), -3px -3px 12px rgb(0 0 0 / 10%); box-shadow: 0px 0px 15px rgb(0 0 0 / 10%), 0 0px 15px rgb(0 0 0 / 10%);}
#page_archive .seminar .next-item-img {width: 100%; max-width: 100%;}

@media screen and (max-width: 966px) {
	#page_archive .seminar .next-list {justify-content: flex-start;}
}

@media screen and (max-width: 766px) { 
	#page_archive .seminar .next-list {justify-content: space-between;}
	#page_archive .seminar .next-item {flex-basis: 48%;}
	#page_archive .seminar .next-item:not(:last-of-type) {margin-right: 0;}

}

/*==============================================================
# 過去年の一覧
==============================================================*/
.year {
  background-color: #fff;
}

.year-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media screen and (min-width: 1040px) {
  .year-item-btn {
    width: calc(25% - 30px * 3 / 4);
  }

  .year-item-btn:not(:nth-child(4n+1)) {
    margin-left: 30px;
  }

  .year-item-btn:nth-child(n+5) {
    margin-top: 40px;
  }
}

@media screen and (max-width: 1039px) {
  .year-item-btn {
    width: calc(50% - 30px * 1 / 2);
  }

  .year-item-btn:not(:nth-child(2n+1)) {
    margin-left: 30px;
  }

  .year-item-btn:nth-child(n+3) {
    margin-top: 60px;
  }
}

@media screen and (max-width: 767px) {
  .year-item-btn {
    width: calc(50% - 20px * 1 / 2);
  }

  .year-item-btn:not(:nth-child(2n+1)) {
    margin-left: 20px;
  }

  .year-item-btn:nth-child(n+3) {
    margin-top: 20px !important;
  }
}

.year-item-btn .btn {
  width: 100%;
}

.year-title {
  margin-bottom: 40px;
  color: #666666;
  font-size: 3.0rem;
  border-bottom: 1px solid #cccccc;
}

@media screen and (max-width: 1039px) {
  .year-title {
    margin-bottom: 20px;
  }
}

@media screen and (max-width: 767px) {
  .year-title {
    font-size: 2.4rem;
  }
}

/*==============================================================
#	
# セミナー記事
#
==============================================================*/

@media screen and (max-width: 1039px) {
  .single .contents-title {
    max-width: 720px;
    margin: 0 auto 100px;
    font-size: 2.7rem;
  }
}

@media screen and (max-width: 767px) {
  .single .contents-title {
    font-size: 2.1rem;
    line-height: 1.5;
  }
}

.single-thanks-text {
  text-align: center;
  color: #c63232;
  font-size: 2.1rem;
  margin-bottom: 20px;
}

@media screen and (max-width: 766px) {
  .single-thanks-text {font-size: 1.6rem;}
}

@media screen and (max-width: 466px) {
.single-thanks-text {font-size: 1.4rem;}
}

/*==============================================================
# 共通KV
==============================================================*/
#kv_shingle {min-height: 400px; margin-top: 110px; background: #FF0000; display: flex; align-items: center; text-align: center; padding: 60px 0 100px 0;}
#kv_shingle .container {padding-bottom: 50px;}
#kv_shingle .single-thanks-text {background: #fff; color: #FF0000; display: inline-block; padding: 10px 10px;}   
#kv_shingle .contents-title {color: #fff; margin-bottom: 10px; font-size: 5rem;}
#kv_shingle .contents-excerpt p {color: #fff; font-size: 30px;}

@media screen and (max-width: 766px) {
	#kv_shingle {padding: 60px 0 190px 0;}
	#kv_shingle .contents-title {font-size: 3rem;}
	#kv_shingle .contents-excerpt p {font-size: 16px;}
}

/*==============================================================
# 記事
==============================================================*/
.single {background: #F0F6F9;}
.single .container {margin-top: -270px; }
.single-list {padding: 60px 50px; background: #fff; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-shadow: 3px 3px 12px rgb(0 0 0 / 10%), -3px -3px 12px rgb(0 0 0 / 10%); box-shadow: 0px 0px 15px rgb(0 0 0 / 10%), 0 0px 15px rgb(0 0 0 / 10%);}
.single-item {width: 70%; margin-left: 60px;}
.single-item-img {width: 30%; text-align: center;}
.single-item-img img {width: 230px; margin: 0 auto;}
 .profile-wrapper {margin-top: 40px; text-align: left;} 
.single-item-excerpt {font-size: 3rem; color: #666666; border-bottom: 1px solid #999999; padding-bottom: 10px; margin-bottom: 20px;}
 
@media screen and (max-width: 766px) {
  .single-list {display: block; padding: 60px 5%;}
  .single-item {width: 100%; margin-left: 0;}
  .single-item-img {width: 100%; margin-left: 0;}
}

@media screen and (max-width: 466px) {
	.single-item-img img {width: 170px;}
}

/*==============================================================
# コメント（古賀Facebookより）
==============================================================*/
.comment-wrapper {background: #fff; margin-top: 60px; border-top: 3px solid #FF0000; padding: 60px 50px; -webkit-box-shadow: 3px 3px 12px rgb(0 0 0 / 10%), -3px -3px 12px rgb(0 0 0 / 10%); box-shadow: 0px 0px 15px rgb(0 0 0 / 10%), 0 0px 15px rgb(0 0 0 / 10%);}

@media screen and (max-width: 1039px) {
	.comment-wrapper {padding: 60px 10%;}
}

.single-main-text {line-height: 1.5; overflow: hidden;}
.single-main-text dl {display: flex; justify-content: space-between;  border-bottom: 5px solid #fff;}
.single-main-text dt {flex-basis: 30%; background: #F0F6F9; padding: 20px 20px;}
.single-main-text dt h3 {color: #000; font-size: 2.4rem;}
.single-main-text dd {flex-basis: 70%;  padding: 20px 20px;}
.single-main-text a {color: blue; border-bottom: 1px solid blue; font-family: sans-serif;}
.single-main-text p {margin-bottom: 1.6rem;}

@media screen and (max-width: 766px) {
	.single-main-text dl {flex-wrap: wrap;}
	.single-main-text dt {flex-basis: 100%; padding: 10px 5%;}
	.single-main-text dd {flex-basis: 100%; padding: 10px 5%;}
}

@media screen and (max-width: 424px) {
  .single-main-text p {
    margin-bottom: 1.4rem;
  }
}

.single-main-text h3,
.single-main-text h4 {
  border-bottom: 1px solid #FF0000;
    padding-bottom: 10px;
    padding-top: 10px;
    margin-bottom: 10px;
}
.single-main-text h1 {
  font-size: 3.6rem;
}
.single-main-text h2 {
  font-size: 2.5rem;
    background: #F0F6F9;
    border-left: 2px solid #FF0000;
    padding: 10px 10px 10px 1em;
    margin-bottom: 20px;
    font-weight: bold;
}

.single-main-text h3 {
  font-size: 2.4rem;
}
.single-main-text h4 {
  font-size: 1.8rem;
}
@media screen and (max-width: 767px) {
	.single-main-text h1 {font-size: 3.0rem;}
	.single-main-text h2 {font-size: 2.4rem;}
	.single-main-text h3 {font-size: 2.0rem;}
	.single-main-text h4 {
    font-size: 1.6rem;
  }
}


@media screen and (max-width: 1039px) {
  .single-main-text {
    margin-top: 40px;
  }
}

@media screen and (max-width: 424px) {
  .single-main-text {
    font-size: 1.4rem;
  }
}

.single-btn {
  text-align: center;
  margin-top: 40px;
}

@media screen and (max-width: 767px) {
  .single-btn+.single-btn {
    margin-top: 20px;
  }
}

.single-btn .btn {
  width: 480px;
  max-width: 100%;
}

@media screen and (max-width: 1039px) {
  .single-btn .btn {
    width: 500px;
  }
}

@media screen and (max-width: 767px) {
  .single-btn .btn {
    width: 400px;
  }
}

.display_none {
  display: none;
}

/*==============================================================
# セミナー議事録
==============================================================*/
.record {background-color: #f7f7f7; padding: 0 0 160px 0;}
.ttl-bg {background: #FF0000; padding: 80px 0; margin-bottom: 80px;}
.record .top-ttl {max-width: 1200px; margin: 0 auto; -webkit-box-sizing: content-box; box-sizing: content-box; width: 90%; margin: 0 auto;}
.record .top-ttl h2 {color: #fff;}  
.record .top-ttl p {color: #fff;}  
.record .top-ttl h2:before {background-color: #fff;}
.record-contents {padding: 100px 200px; background-color: #fff; border-top: 3px solid #FF0000;
  -webkit-box-shadow: 3px 3px 12px rgb(0 0 0 / 10%), -3px -3px 12px rgb(0 0 0 / 10%);
   box-shadow: 0px 0px 15px rgb(0 0 0 / 10%), 0 0px 15px rgb(0 0 0 / 10%);
}

@media screen and (max-width: 1039px) {
  .record-contents {
    max-width: 720px;
    margin: 0 auto;
    padding: 40px;
  }
}

@media screen and (max-width: 767px) {
  .record-contents {
    padding: 60px 5%;
  }
}

.record-title {
  font-size: 2.7rem;
  padding-bottom: 10px;
  border-bottom: 1px solid #cccccc;
  margin-bottom: 40px;
  color: #666666;
}

@media screen and (max-width: 1039px) {
  .record-title {
    font-size: 2.1rem;
    margin-bottom: 20px;
  }
}

.record-text {
  overflow: hidden;
}

@media screen and (max-width: 767px) {
  .record-text {
    font-size: 1.4rem;
  }
}

.record-text h1,
.record-text h2,
.record-text h3,
.record-text h4 {
  border-bottom: 1px solid #FF0000;
    padding-bottom: 10px;
    padding-top: 10px;
    margin-bottom: 10px;

}

.record-text h1 {
  font-size: 3.6rem;
}

@media screen and (max-width: 767px) {
  .record-text h1 {
    font-size: 3.0rem;
  }
}

.record-text h2 {
  font-size: 3.0rem;
}

@media screen and (max-width: 767px) {
  .record-text h2 {
    font-size: 2.4rem;
  }
}

.record-text h3 {
  font-size: 2.4rem;
}

@media screen and (max-width: 767px) {
  .record-text h3 {
    font-size: 2.0rem;
  }
}

.record-text h4 {
  font-size: 1.8rem;
}

@media screen and (max-width: 767px) {
  .record-text h4 {
    font-size: 1.6rem;
  }
}

.record-text img {
  width: 49%;
  margin-bottom: 6px;
}

@media screen and (max-width: 767px) {
  .record-text img {
    width: 100%;
  }
}

.record-text p {
  margin-bottom: 1.6rem;
}

@media screen and (max-width: 424px) {
  .record-text p {
    margin-bottom: 1.4rem;
  }
}

/*==============================================================
# お問い合わせページ
==============================================================*/
.inquiry .container {
  max-width: 1020px;
}

.inquiry-contents {
  padding: 60px;
}

@media screen and (max-width: 767px) {
  .inquiry-contents {
    padding: 30px 10px;
  }
}

@media screen and (max-width: 767px) {
  .inquiry-contents p {
    font-size: 1.4rem;
  }
}

.inquiry-line {
  margin: 60px auto;
}

.inquiry-line-title,
.inquiry-mail-title {
  color: #666666;
  font-size: 2.7rem;
  border-bottom: 1px solid #cccccc;
  margin-bottom: 10px;
}

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

  .inquiry-line-title,
  .inquiry-mail-title {
    font-size: 2.1rem;
  }
}

.inquiry-btn {
  text-align: center;
  margin: 40px 0;
}

.inquiry-btn .btn {
  width: 240px;
  max-width: 100%;
}

.inquiry-form {
  max-width: 720px;
  margin: 0 auto;
}

input[type="text"],
input[type="email"],
input[type="tel"],
textarea {
  width: 100%;
  padding: .2rem .5rem;
  border: 1px solid #999999;
  font-size: 1.6rem;
}

input[type="text"]::-webkit-input-placeholder,
input[type="email"]::-webkit-input-placeholder,
input[type="tel"]::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: #999999;
}

input[type="text"]:-ms-input-placeholder,
input[type="email"]:-ms-input-placeholder,
input[type="tel"]:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: #999999;
}

input[type="text"]::-ms-input-placeholder,
input[type="email"]::-ms-input-placeholder,
input[type="tel"]::-ms-input-placeholder,
textarea::-ms-input-placeholder {
  color: #999999;
}

input[type="text"]::placeholder,
input[type="email"]::placeholder,
input[type="tel"]::placeholder,
textarea::placeholder {
  color: #999999;
}

input[type="text"],
input[type="email"],
input[type="tel"] {
  height: 45px;
}

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

  input[type="text"],
  input[type="email"],
  input[type="tel"] {
    height: 30px;
  }
}

textarea {
  min-height: 180px;
  resize: vertical;
  margin-bottom: 30px;
}

.form-items {
  margin-top: 40px;
}

.form-item+.form-item {
  margin-top: 30px;
}

.form-item span {
  color: #c63232;
}

.form-submit {
  margin-top: 60px;
  text-align: center;
}

.form-submit .btn {
  width: 240px;
  max-width: 100%;
}

.wpcf7 .ajax-loader {
  display: none !important;
}

.none-text {
  text-align: center;
  font-size: 2.1rem;
}

@media screen and (max-width: 767px) {
  .none-text {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 424px) {
  .none-text {
    letter-spacing: 0.01rem;
  }
}

.none-sp {
  display: none;
}

@media screen and (max-width: 430px) {
  .none-sp {
    display: block;
  }
}

.title-sp,
.contact-sp {
  display: none;
}

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

  .title-sp,
  .contact-sp {
    display: block;
  }
}

/*==============================================================
# エラーページ
==============================================================*/
.error {
  text-align: center;
  height: calc(100vh - 360px);
  margin-top: 60px;
}

.error-head {
  font-size: 4.8rem;
  font-weight: 600;
  color: #c63232;
}

@media screen and (max-width: 424px) {
  .error-head {
    font-size: 3.6rem;
  }
}

.error-text {
  font-size: 1.8rem;
}

@media screen and (max-width: 479px) {
  .error-text {
    font-size: 1.3rem;
  }
}

.error-btn {
  margin-top: 40px;
}

.error-btn .btn {
  width: 100%;
  max-width: 240px;
}


/*==============================================================
# 講師一覧ページ
==============================================================*/
#page_teacher .teacher {background: #F0F6F9;}
#page_teacher .teacher ol {display: flex; flex-wrap: wrap; justify-content: space-between;}
#page_teacher .teacher ol > li {flex-basis: 49%; background: #fff; margin: 20px 0; -webkit-box-shadow: 3px 3px 12px rgb(0 0 0 / 10%), -3px -3px 12px rgb(0 0 0 / 10%); box-shadow: 0px 0px 15px rgb(0 0 0 / 10%), 0 0px 15px rgb(0 0 0 / 10%);}
#page_teacher .teacher ul {display: flex; justify-content: space-between;}
#page_teacher .teacher .single-item {width: 65%; margin-left: 0; padding: 20px 30px 30px 30px; position: relative;}
#page_teacher .teacher ul > li.single-item-img {width: 35%;}
#page_teacher .teacher ul > li.single-item-img img {width: 100%; margin: 0 auto 15px;}
#page_teacher .teacher .single-item .btn-more-wrapper {position: absolute; right: 0; bottom: 5px;}
#page_teacher .teacher .btn-more-wrapper p {color: #FF0000; position: relative; text-align: right; padding-right: 50px; font-size: 1.2rem;}
#page_teacher .teacher .btn-more-wrapper p:after {content: ''; width: 30px; height: 1px; display: inline-block; background-color: #FF0000; position: absolute; top: 50%; right: 0; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%);}

/*------------------これまでの会------------------*/
#page_teacher .archive {background: #fff;}

@media screen and (max-width: 966px) {
	#page_teacher .teacher ol > li {flex-basis: 100%;}
	#page_teacher .archive .next-item-link {padding: 0;}
}
@media screen and (max-width: 766px) {
	#page_teacher .teacher ul {align-items: center; padding-left: 5%;}
	#page_teacher .teacher .single-item {padding: 20px 5% 5% 5%;}
}

@media screen and (max-width: 466px) {
	#page_teacher .teacher ul {flex-wrap: wrap; padding-left: 0;}
	#page_teacher .teacher ul > li.single-item-img {width: 100%; padding: 5%;}
	#page_teacher .teacher ul > li.single-item-img img {width: 50%;
    max-width: 175px;}
	#page_teacher .teacher .single-item {width: 100%; }
	.single-main-text {margin-top: 0;}
}


/*==============================================================
# 講師プロフィールページ
==============================================================*/
#page_teacher section.profile {background: #F0F6F9;}

@media screen and (max-width: 766px) {
	#page_teacher .single-item-img img {width: 170px; margin: 0 auto 30px;}
}

/*==============================================================
#
# TOPページ
#
==============================================================*/

/*==============================================================
# 共通
==============================================================*/
section .top-ttl { margin : 0 auto 60px; padding-left: 45px;}
section .top-ttl h2 {font-size:54px; font-weight: 400; line-height: 1.4; text-align: left; margin-bottom: 0px; position: relative}
section .top-ttl h2:before {content: ''; width: 35px; height: 1px; display: inline-block; background-color: #FF0000; position: absolute; top: 50%; left: -30px; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%);}
section .top-ttl p {font-size: 20px; letter-spacing: 2px; /* margin-top: 10px; */}
.pc {display: block;}
.tab {display: none;}
.sp {display: none;}

@media screen and (max-width: 966px) {
	.tab {display: block;}
}

@media screen and (max-width: 766px) {
	section .top-ttl h2 {font-size: 4rem;}
	section .top-ttl p {font-size: 1.6rem;}
	.pc {display: none;}
	.sp {display: block;}
}
/*==============================================================
# AT-1とは
==============================================================*/
.about .container {width: 100%; max-width: none;}
.about ul {display: flex; justify-content: space-between;}
.about ul li:first-child {flex-basis: 55%;}
.about ul li:last-child {flex-basis: 45%;}
.about ul li:last-child .txt-wrapper {max-width: 480px; width: 90%; margin-right: auto; margin-left: 0; padding-left: 45px;}

@media screen and (max-width: 966px) {
	.about ul {flex-wrap: wrap;}
	.about ul li:first-child {flex-basis: 90%; margin: 0 auto;}
	.about ul li:last-child {flex-basis: 90%; margin: 30px auto 0;}
	.about ul li:last-child .txt-wrapper {max-width: 100%; width: 100%; padding-left: 0;}
}


/*==============================================================
# これからのセミナー
==============================================================*/
#page_top .next.section {padding: 0 0 160px 0;}
#page_top .next {position: relative;}
.red_bg {height: 520px;}
.red_bg {
	background-image: url(../img/background_red.png);
	background-image: image-set(url(../img/background_red.png) 1x, url(../img/background_red@2x.png) 2x);
	background-image: -webkit-image-set(url(../img/background_red.png) 1x, url(../img/background_red@2x.png) 2x);
    background-size: 100%; background-repeat: no-repeat; background-position: 0 bottom;
}
#page_top .next .container {margin-top: -370px;}
#page_top .next .top-ttl h2 {color: #fff;}
#page_top .next .top-ttl h2:before {background-color: #fff;}
#page_top .next .top-ttl p {color: #fff;}
.next li.next-item {flex-basis: calc((100% - 40px)/ 3); margin: 10px 0; padding: 0 0 20px 0; background: #fff; -webkit-box-shadow: 3px 3px 12px rgb(0 0 0 / 10%), -3px -3px 12px rgb(0 0 0 / 10%); box-shadow: 0px 0px 15px rgb(0 0 0 / 10%), 0 0px 15px rgb(0 0 0 / 10%);}
.next li.next-item:nth-child(3n+2) {margin: 10px 20px;}
.next-item-img {width: 60%; margin: auto; padding-top: 30px; max-width: 170px;  margin-bottom: 30px;}
.next-item-excerpt {background: #F0F6F9; padding: 10px 30px;}
h3.next-item-title {padding: 20px 30px;}
.next .btn {margin: 0 auto;}
.next-list {display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap;}
.next .btn-wrapper {margin: 65px auto 0;}

@media screen and (max-width: 966px) {
	.red_bg {background-position: 50% 50%; background-size: cover;}
	#page_top .next .container {margin-top: -420px;}
	.next-list {justify-content: space-between;}
	.next li.next-item {flex-basis: 48%;}
	.next li.next-item:nth-child(3n+2) {margin: 10px 0;}
}

@media screen and (max-width: 766px) {
	.next li.next-item {flex-basis: 100%;}
	.next-item-link {display: flex; justify-content: space-between; padding: 5%;}
	.next-item-img {width: 30%; padding-top: 0; margin: 0;}
	.next-item-body {width: 65%;}
	.next-item-excerpt {padding: 5%;}
	.next-item-excerpt p {font-size: .8em; line-height: 1.7;}
	h3.next-item-title {padding: 5%; font-size: 1.4rem;}
}


/*--------------------------------------ページネーション------------------------------------------*/
.page-numbers {background: #fff; width: 50px; height: 50px; display: block; display: flex; align-items: center; justify-content: center; margin: 0 10px;}
.next-pagination {text-align: center; margin: 60px auto 0; text-align: center; display: flex; justify-content: center;} 
.next-pagination .prev {background: none !important; width: auto !important;}
.current {background: #FF0000 !important; color: #fff;}

@media screen and (max-width: 1039px) {
  .current {font-size: 2.1rem;}
}

/*--------------------------------------------------------------------------------
 * parallax
--------------------------------------------------------------------------------*/
.parallax {height: 100vh;}
.parallax:before {
	background-image: url(../img/parallax.jpg);
  background-image: image-set(url(../img/parallax.jpg) 1x, url(../img/parallax@2x.jpg) 2x);
  background-image: -webkit-image-set(url(../img/parallax.jpg) 1x, url(../img/parallax@2x.jpg) 2x);
 background-size: cover; content: ""; display: block; position: fixed; top: 0; left: 0; z-index: -2; width: 100%; height: 100%; background-position: 50% 50%;}

@media screen and (max-width:766px){
	.parallax {height: 50vh;}
}


/*----------------------------これまでの会----------------------------*/
ul.archive-list {display: flex; justify-content: space-between; }
ul.archive-list li {flex-basis: 15%; -webkit-box-shadow: 3px 3px 12px rgb(0 0 0 / 10%), -3px -3px 12px rgb(0 0 0 / 10%); box-shadow: 0px 0px 15px rgb(0 0 0 / 10%), 0 0px 15px rgb(0 0 0 / 10%);}
ul.archive-list li:not(:last-of-type) {margin-right: 2%;}
.archive .btn-wrapper {margin: 45px auto 0;}
.archive .btn {margin: 0 auto;}


@media screen and (max-width:766px){
	ul.archive-list {flex-wrap: wrap;}
	ul.archive-list li {flex-basis: 47%; margin: 3% 0;}
	ul.archive-list li.next-item a {display: flex;}
	ul.archive-list li.next-item-img {width: 30%; max-width: 30%;}
	ul.archive-list li.next-item .next-item-body {flex-basis: 70%;}
	#page_top .next-item-link {padding: 0;}
}



/*==============================================================
# 問い合わせ
==============================================================*/
.contact {
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0.5))), url(../img/contact.jpg) no-repeat center center/cover;
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url(../img/contact.jpg) no-repeat center center/cover;
  color: #fff;
  text-align: center;
  -webkit-box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1) inset, 0px -3px 6px rgba(0, 0, 0, 0.1) inset;
  box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1) inset, 0px -3px 6px rgba(0, 0, 0, 0.1) inset;
}

.contact .contents-title {
  margin-bottom: 90px;
}

.contact-body {
  margin-bottom: 0px;
}

.contact-body p {
  margin-bottom: 1em;
  font-size: 1.6rem;
}

@media screen and (max-width: 767px) {
  .contact-body p {
    font-size: 1.4rem;
  }
}

@media screen and (max-width: 424px) {
  .contact-body p {
    letter-spacing: 0.01rem;
  }
}

.contact-list {
  margin-top: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

@media screen and (max-width: 1039px) {
  .contact-list {
    display: block;
  }
}

.contact-btn+.contact-btn {
  margin-left: 40px;
}

@media screen and (max-width: 1039px) {
  .contact-btn+.contact-btn {
    margin-left: 0;
    margin-top: 40px;
  }
}

.contact-btn .btn {
  width: 380px;
  max-width: 100%;
}

@media screen and (max-width: 1039px) {
  .contact-btn .btn {
    width: 100%;
    max-width: 500px;
  }
}

@media screen and (max-width: 767px) {
  .contact-btn .btn {
    max-width: 400px;
  }
}

/* 2021-06-13 */
@media only screen and (max-width: 720px) {
  .hidden_sp {
    display: none !important;
  }

  .concept {
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(128, 128, 128, 0.5)), to(rgba(128, 128, 128, 0.5))), url(../img/concept_bg_sp.jpg) no-repeat top left/100% auto;
    background: linear-gradient(rgba(128, 128, 128, 0.5), rgba(128, 128, 128, 0.5)), url(../img/concept_bg_sp.jpg) no-repeat top left/100% auto;
    margin-top: 160px;
    -webkit-box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1) inset, 0px -3px 6px rgba(0, 0, 0, 0.1) inset;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1) inset, 0px -3px 6px rgba(0, 0, 0, 0.1) inset;
    background-color: #525a6a;
    /*background-attachment:fixed;*/
  }

  .header-top {
    overflow: hidden;
  }

  .header-top-bg {
    width: 200%;
  }

  .header-top-bg-s {
    left: -35%;
    -webkit-transition-duration: 20s;
    transition-duration: 20s;
    -webkit-transition-delay: 0.25s;
    transition-delay: 0.25s;
  }

  .header-top-bg-e {
    left: 0px;
  }

  .header-top-title-s {
    opacity: 0;
    top: 50%;
    -webkit-transition-duration: 1.5s;
    transition-duration: 1.5s;
    -webkit-transition-delay: 0.5s;
    transition-delay: 0.5s;
  }

  .header-top-title-e {
    top: 55%;
    opacity: 1;
  }
}

@media only screen and (min-width: 721px) {
  .hidden_pc {
    display: none !important;
  }

  .concept {
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(128, 128, 128, 0.5)), to(rgba(128, 128, 128, 0.5))), url(../img/concept_bg.jpg) no-repeat top center/cover;
    background: linear-gradient(rgba(128, 128, 128, 0.5), rgba(128, 128, 128, 0.5)), url(../img/concept_bg.jpg) no-repeat top center/cover;
    margin-top: 160px;
    -webkit-box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1) inset, 0px -3px 6px rgba(0, 0, 0, 0.1) inset;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1) inset, 0px -3px 6px rgba(0, 0, 0, 0.1) inset;
  }

  .header-top-title-s {
    opacity: 0;
    right: 15%;
    -webkit-transition-duration: 2.5s;
    transition-duration: 2.5s;
    -webkit-transition-delay: 0.5s;
    transition-delay: 0.5s;
  }

  .header-top-title-e {
    opacity: 1;
    right: 10%;
  }
}

/*2021-06-22*/
.concept-item-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: center;
  padding-top: 40px;
}

@media screen and (max-width: 1039px) {
  .concept-item-btn {
    display: block;
  }
}

.concept-item-btn .btn {
  width: 380px;
  max-width: 100%;
}

@media screen and (max-width: 1039px) {
  .concept-item-btn .btn {
    display: block;
    margin: 0 auto 40px;
    width: 100%;
    max-width: 500px;
  }
}

@media screen and (max-width: 767px) {
  .concept-item-btn .btn {
    max-width: 400px;
  }
}

/*==============================================================
# 210622_追加内容（佐藤）
==============================================================*/
.event-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-bottom: 60px;
}

@media screen and (max-width: 1039px) {
  .event-list {
    display: block;
    margin-bottom: 40px;
  }
}

.event-item {
  margin: 0 20px;
}

@media screen and (max-width: 1039px) {
  .event-item+.event-item {
    margin-top: 20px;
  }
}

@media screen and (max-width: 1039px) {
  .event-item {
    text-align: center;
  }
}

.event-item .btn {
  width: 380px;
  max-width: 100%;
}

@media screen and (max-width: 1039px) {
  .event-item .btn {
    width: 100%;
    max-width: 500px;
  }
}

@media screen and (max-width: 767px) {
  .event-item .btn {
    max-width: 400px;
  }
}

/*==============================================================
#
# 講師一覧
#
==============================================================*/

.teach {
  position: relative;
}

.teach .container {
  max-width: 1020px;
}

@media screen and (max-width: 1039px) {
  .teach .container {
    max-width: 500px;
  }
}

@media screen and (max-width: 767px) {
  .teach .container {
    max-width: 500px;
  }
}

@media screen and (max-width: 1039px) {
  .teach .next-btn {
    margin-top: 40px;
  }
}

.teach-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.teach-item a {
  display: inline-block;
}

.teach-item a:hover {
  opacity: 0.6;
}

@media screen and (min-width: 1040px) {
  .teach-item {
    width: calc(25% - 30px * 3 / 4);
  }

  .teach-item:not(:nth-child(4n+1)) {
    margin-left: 30px;
  }
}

@media screen and (max-width: 1039px) {
  .teach-item {
    width: calc(50% - 20px * 1 / 2);
    text-align: center;
  }

  .teach-item:not(:nth-child(2n+1)) {
    margin-left: 20px;
  }

  .teach-item:nth-child(n+3) {
    margin-top: 20px;
  }
}

@media screen and (max-width: 374px) {
  .teach-item {
    width: calc(50% - 10px * 1 / 2);
  }

  .teach-item:not(:nth-child(2n+1)) {
    margin-left: 10px;
  }

  .teach-item:nth-child(n+3) {
    margin-top: 20px;
  }
}

.teach-item-img {
  height: 400px;
  overflow: hidden;
}

.teach-item-img img {
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}

@media screen and (max-width: 1039px) {
  .teach-item-img {
    margin: 0 auto 10px;
  }
}

@media screen and (max-width: 767px) {
  .teach-item-img {
    height: initial;
  }
}

.teach-item-title,
.tutor-item-title {
  line-height: 1.5;
  font-weight: 600;
  min-height: 60px;
}

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

  .teach-item-title,
  .tutor-item-title {
    margin-bottom: 10px;
    font-size: 2.7rem;
    text-align: center;
    font-weight: 600;
  }
}

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

  .teach-item-title,
  .tutor-item-title {
    font-size: 1.8rem;
  }
}

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

  .teach-item-title,
  .tutor-item-title {
    font-size: 1.6rem;
  }
}

.teach-btn {
  margin-top: 20px;
  text-align: center;
}

.teach-btn .btn {
  width: 100%;
}

@media screen and (max-width: 1039px) {
  .teach-btn .btn {
    max-width: 500px;
  }
}

@media screen and (max-width: 767px) {
  .teach-btn .btn {
    max-width: 400px;
  }
}


/*==============================================================
# これまでの会
==============================================================*/

/* 2021-06-25 */
@media screen and (max-width: 767px) {
  .concept-body-text {
    font-size: 4.0vw;
    letter-spacing: 0.01rem;
    text-align: center;
  }

  .concept-head-title {
    font-size: 7vw;
    text-align: center;
  }

  .concept-head-title::before {
    content: "設立趣意書";
    position: absolute;
    top: -20px;
    left: 0;
    right: 0;
    font-size: 1.4rem;
    color: #e0ce96;
  }
}

@media only screen and (max-width:720px) {
  .hidden_sp {
    display: none !important;
  }
}

@media only screen and (min-width:721px) {
  .hidden_pc {
    display: none !important;
  }
}

@media screen and (min-width: 721px) {
  .inquiry-contents {
    padding: 60px;
    width: 720px;
    margin: auto;
  }
}

@media screen and (max-width: 767px) {
  .contents-title {
    font-size: 2.2rem;
    margin-bottom: 40px;
  }
}

.concept-body-host {
  text-align: right !important;
}


.top-concept-s {
  opacity: 0;
  -webkit-transition-duration: 1s;
  transition-duration: 1s;
  -webkit-transition-delay: 0.5s;
  transition-delay: 0.5s;
}

.top-concept-e {
  opacity: 1;
}

@media screen and (max-width: 767px) {
  .contact-body p {
    font-size: 4.5vw !important;
  }
}


/*==============================================================
# 210704_追加内容（佐藤）
==============================================================*/
/* 「イベント」ボタンクリックで指定位置に移動（調整用） */
#other-open {
  padding-top: 40px;
}

#camp-open {
  padding-top: 40px;
}

#golf-open {
  padding-top: 40px;
}

/* ハンバーガーメニュー：テキスト追加 */
.drawer-text {
  color: #fff;
  text-align: center;
  letter-spacing: .2rem;
  display: inline-block;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .drawer-text {
    font-size: 1.4rem;
    letter-spacing: .1rem;
  }
}

.transform-color {
  color: #3e3e3e !important;
}

.title-span {
  display: inline-block;
}

/*==============================================================
# 210716_修正内容（佐藤）

1806行目 .next-item-img CSSを変更
==============================================================*/

@media screen and (max-width: 767px) {
.concept-body-text　{
	font-size:4rem !important;
}
	.sp-bold {
	  font-size:120%;
	  font-weight:900 !important;
  }
}


.swiper-pagination , .swiper-button-prev , .swiper-button-next {
	z-index:1 !important;
}

/*==============================================================
# 230802_修正
==============================================================*/
.current a {
	background: #FF0000;
	color: #fff !important;
}