@charset "utf-8";
/*
Theme Name: JMAドローンスクール2026
Version: 20260903
*/
/*---------------------------------------------------------
reset
---------------------------------------------------------*/

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;
vertical-align: baseline;
font-family: 'M PLUS 1', sans-serif;
font-feature-settings: "palt";
}

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

body {
	line-height: 1;
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}
img{
	max-width:100%;
	vertical-align: bottom;
	image-rendering: -webkit-optimize-contrast;

}
_:lang(x)::-internal-media-controls-overlay-cast-button, img {
	image-rendering: -webkit-optimize-contrast;
}
a:hover img {
	opacity: 0.8;
	filter: alpha(opacity=80);
	-moz-opacity: 0.8;
}

a.anchor {
	position: relative;
	top: -80px;
	display: block;
}

body {
	background-color: #fff;
	-webkit-text-size-adjust: none;
	font-size: 16px;
	font-weight:300;
	color: #000;
	line-height: 1.8;
}
a {
	color: #000;
	outline: none;
	text-decoration:none;
}
.sp {
	display: none;
}
.container{
	max-width:1280px;
	width:92%;
	margin:auto;
	position:relative;
	z-index:3;
}
p{
	font-size: 1.125rem;
	font-weight: 400;
}
/*---------------------------------------------------------
header
---------------------------------------------------------*/
/* ==========================================
   共通・ヘッダー基本スタイル
   ========================================== */
header {
  width: 100%;
  position: sticky;
  top: 0;
  left: 0;
  z-index: 9999;
  background-color: #ffffff;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
}

.header-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 1200px;
  margin: 0 auto;
  padding: 15px 20px;
}

header h1 {
  margin: 0;
  line-height: 1;
}

header h1 img {
  height: 80px; /* ロゴの高さ調整 */
  width: auto;
  display: block;
}

/* ==========================================
   PC表示スタイル（960px以上）
   ========================================== */
@media screen and (min-width: 960px) {
  /* ハンバーガーボタンを非表示 */
  #toggle {
    display: none;
  }

  /* メニューを横並びに */
  #nav-content nav .menu ul {
    display: flex;
    align-items: center;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: 24px; /* メニュー間の余白 */
  }

  #nav-content nav .menu ul li a {
    text-decoration: none;
    color: #333333;
    font-weight: 700;
    font-size: 15px;
    transition: color 0.3s ease;
  }

  #nav-content nav .menu ul li a:hover {
    color: #00a29a; /* ホバー時の強調色 */
  }

  /* 右端のCTAボタン（お問い合わせ）を目立たせる */
  #nav-content nav .menu ul li.btn-cta a {
    background-color: #00a29a;
    color: #ffffff;
    padding: 10px 20px;
    border-radius: 50px;
    transition: background-color 0.3s ease, transform 0.2s ease;
  }

  #nav-content nav .menu ul li.btn-cta a:hover {
    background-color: #004c99;
    transform: translateY(-2px);
  }
}

/* ==========================================
   スマホ表示スタイル（959px以下）
   ========================================== */
@media screen and (max-width: 959px) {
  /* ハンバーガーボタンを表示 */
  #toggle {
    display: block;
    cursor: pointer;
    /* 既存の #toggle のスタイルやJS開閉処理をそのまま適用 */
  }

  /* スマホ用メニュー（デフォルトは非表示、JSのクラス等で開閉） */
  #nav-content {
    display: none; /* JSで開いた時に display: block や class付与で表示 */
    position: fixed;
    top: 70px; /* ヘッダーの高さに合わせて調整 */
    left: 0;
    width: 100%;
    height: calc(100vh - 70px);
    background-color: #ffffff;
    overflow-y: auto;
  }

  /* JS等で「#nav-content.open」になったら表示させる場合 */
  #nav-content.open {
    display: block;
  }

  #nav-content nav .menu ul {
    list-style: none;
    padding: 20px;
    margin: 0;
  }

  #nav-content nav .menu ul li {
    border-bottom: 1px solid #eee;
  }

  #nav-content nav .menu ul li a {
    display: block;
    padding: 15px 0;
    text-decoration: none;
    color: #333;
    font-weight: bold;
  }

  #nav-content nav .menu ul li.btn-cta a {
    background-color: #00a29a;
    color: #fff;
    text-align: center;
    border-radius: 6px;
    margin-top: 15px;
  }
}
/* ==========================================
   ハンバーガーボタン用CSS
   ========================================== */

/* PC表示ではボタンを隠す */
@media screen and (min-width: 960px) {
  #toggle {
    display: none !important;
  }
}

/* スマホ表示時のボタンデザイン */
@media screen and (max-width: 959px) {
  #toggle {
    display: block;
    width: 44px;
    height: 44px;
    position: relative;
    cursor: pointer;
    z-index: 10000; /* メニューより前面に表示 */
  }

  #toggle-box {
    width: 100%;
    height: 100%;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }

  /* 3本線の基本スタイル */
  #toggle-box span {
    display: block;
    width: 26px;
    height: 2px;
    background-color: #333333; /* 線の色（ロゴやデザインに合わせて調整） */
    border-radius: 2px;
    position: absolute;
    transition: transform 0.3s ease, opacity 0.3s ease, top 0.3s ease;
  }

  /* 3本線の初期配置（上・中・下） */
  #toggle-box span:nth-child(1) {
    top: 13px;
  }
  #toggle-box span:nth-child(2) {
    top: 21px;
  }
  #toggle-box span:nth-child(3) {
    top: 29px;
  }

  /* ==========================================
     開いた時の変形アニメーション（.active クラス付与時）
     ========================================== */

  /* 上の線：45度回転 */
  #toggle.active #toggle-box span:nth-child(1) {
    top: 21px;
    transform: rotate(45deg);
  }

  /* 中央の線：消える */
  #toggle.active #toggle-box span:nth-child(2) {
    opacity: 0;
  }

  /* 下の線：-45度回転して「×」を作る */
  #toggle.active #toggle-box span:nth-child(3) {
    top: 21px;
    transform: rotate(-45deg);
  }
}
/*---------------------------------------------------------
fv
---------------------------------------------------------*/
#fv{
	background:url("img/fv.jpg") no-repeat center right / cover;
	color: #ffffff;
	text-shadow: 0 2px 10px rgba(0, 0, 0, 0.7);
	padding:100px 0;
	position:relative;
}
#fv::after{
	content:"";
	width:100%;
	height:100%;
	position:absolute;
	left:0;
	top:0;
	background:rgba(0,0,0,0.2);
}
#fv .container{
	text-align:center;
}
#fv h1{
	filter: drop-shadow(4px 4px 8px rgba(0, 0, 0, 0.3));
}
#fv h2{
	font-size:4rem;
	font-weight:900;
	line-height: 1.3;
	margin-bottom:.5em;
}
#fv h2 small{
	font-size:0.5em;
	font-weight:600;
}
#fv h3{
	font-size:1.5rem;
	font-weight:900;
}
#fv span.i1{
	display:table;
	background:url("img/license.svg") no-repeat left center / 24px;
	padding-left:32px;
	margin:auto;
}
#fv span.i2{
	display:table;
	background:url("img/japan.svg") no-repeat left center / 24px;
	padding-left:32px;
	margin:auto;
}
#fv span.i3{
	display:table;
	background:url("img/pc.svg") no-repeat left center / 24px;
	padding-left:32px;
	margin:auto;
}



.cta-banner-section {
  background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%); /* ダークネイビーグラデーション */
  padding: 60px 20px;
  text-align: center;
  color: #ffffff;
  border-radius: 16px;
  max-width: 1000px;
  margin: 40px auto;
  box-shadow: 0 10px 30px rgba(0,0,0,0.15);
}

.cta-subtitle {
  font-size: 14px;
  color: #94a3b8;
  letter-spacing: 0.05em;
  margin-bottom: 8px;
}

.cta-title {
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 24px;
}

.cta-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(90deg, #84cc16 0%, #22c55e 100%); /* 鮮やかなグリーン */
  color: #ffffff;
  font-weight: bold;
  font-size: 18px;
  padding: 16px 40px;
  border-radius: 50px;
  text-decoration: none;
  box-shadow: 0 4px 15px rgba(34, 197, 94, 0.4);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.cta-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(34, 197, 94, 0.6);
}
/*---------------------------------------------------------
price
---------------------------------------------------------*/
#price{
	text-align: center;
	padding:150px 0 20px;
}
#price h2 {
	line-height: 1.1;
	font-weight: 600;
	text-transform: uppercase;
	text-align: center;
	font-size: min(6vw, 48px);
	color: #00a29a;
	margin-bottom:100px;
}
#price h3,
.page h2 {
    margin-bottom: 50px;
    font-size: 2rem;
    font-weight: 600;
    text-align: center;
}
}
#price p{
	display:table;
	font-weight:600;
	margin:auto;
}
#price p span{
	color:red;
	font-size: 2rem;
    font-weight: 800;
    letter-spacing: -0.05em;
}
tr.junle th{
	background:#00a29a;
	color: #fff;
	font-weight: bold;
	text-align:center;
}
tr.junle th span{
	color:#ff0;
	font-size:1.15rem;
}
#price td{
	font-weight:700;
}
#price td:nth-child(2){
	font-size: 1.4rem;
    font-weight: 900;
}
#price hr {
    border: 0;
    content: "";
    margin: 0;
    display: block;
    width: 100%;
    height: 10px;
    border-radius: 8px;
    background: linear-gradient(135deg, #0FF0B3 0%, #036ED9 100%);
}
img.jmaclub{
	width:55%;
}
:root {
    --color-step1: #6882a0;
    --color-step2: #1e9d9b;
    --color-step3: #2c4a5e;
    --color-step4: #6882a0;
    --color-final: #d80041;
    --bg-light: #ffffff;
    --border-color: #d1d5db;
  }


.flow-container {
    width: 100%;
    max-width: 600px;
    display: flex;
    flex-direction: column;
    align-items: center;
	margin:60px auto;
  }

  /* セクション共通 */
  .step-section {
    width: 100%;
    background-color: #fff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    margin-bottom: 8px;
  }

  .step-header {
    color: #fff;
    padding: 12px 16px;
    font-weight: bold;
    font-size: 1.1rem;
    letter-spacing: 0.05em;
  }

  .step-body {
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    border: 2px solid;
    border-top: none;
    border-radius: 0 0 8px 8px;
  }

  /* 子ステップ (枠線付きの項目) */
  .sub-item {
    background-color: #fff;
    border: 2px solid #a3b8cc;
    border-radius: 20px;
    padding: 10px 16px;
    font-size: 0.95rem;
    color: #333;
    font-weight: bold;
  }

  /* カラー定義 */
  .step-1 .step-header { background-color: var(--color-step1); }
  .step-1 .step-body { border-color: var(--color-step1); }
  .step-1 .sub-item { border-color: var(--color-step1); }

  .step-2 .step-header { background-color: var(--color-step2); }
  .step-2 .step-body { border-color: var(--color-step2); }
  .step-2 .sub-item { border-color: var(--color-step2); }

  .step-3 .step-header { background-color: var(--color-step3); }
  .step-3 .step-body { border-color: var(--color-step3); }
  .step-3 .sub-item { border-color: var(--color-step3); }

  .step-4 .step-header { background-color: var(--color-step4); }
  .step-4 .step-body { border-color: var(--color-step4); }
  .step-4 .sub-item { border-color: var(--color-step4); }

  /* 矢印区切り */
  .arrow {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 6px 0;
    color: #4b5563;
  }

  .arrow::after {
    content: "▼";
    font-size: 18px;
  }

  /* 最終ゴール */
  .final-step {
    width: 100%;
    background-color: var(--color-final);
    color: #fff;
    text-align: center;
    padding: 16px;
    font-size: 1.2rem;
    font-weight: bold;
    border-radius: 8px;
    letter-spacing: 0.05em;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
  }

.goal_title {
	display:table;
	color: #333333;
	font-size: 1.5em;
	font-weight: 600;
	background: linear-gradient(transparent 60%, rgba(24, 220, 255,1.0) 60%);
	padding:0 1em;
	margin: 0 auto 1em;
}
.detail a{
	display:table;
    width: 50%;
	max-width:600px;
    background-color: var(--color-final);
    color: #fff;
    text-align: center;
    padding: 16px;
    font-size: 1.2rem;
    font-weight: bold;
    border-radius: 8px;
    letter-spacing: 0.05em;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
	margin:0 auto 100px;
}
.detail a:hover{
	opacity:0.8;
}







#about h4 {
	color:#E50012;
	display:table;
	position: relative;
	text-align: center;
	font-weight: 900;
	line-height: 1.3;
	font-size: 3rem;
	background:none;
}

#about h4:before,
#about h4:after {
	position: absolute;
	display: inline-block;
	content: "";
	background: #E50012;
	width: 6px;
	height: 3.5em;
	vertical-align: middle;
}

#about h4:before {
	transform: rotate(-25deg);
	left:0;
	bottom:0;
}

#about h4:after {
	transform: rotate(25deg);
	right:0;
	bottom:0;
}
#about h4.jmaclub{
	margin:2em auto 1em;
}
#about h4.jmaclub small{
	display:block;
	font-size: 1.5rem;
	color: #000;
}
.btns.mg0{
	border-bottom: 0;
	margin: 0;
	padding-bottom: 0;
}
#about strong{
	color:#E50012;
	font-weight:700;
}
#about li{
	position:relative;
	margin-bottom:100px;
}
#about li:first-child{
	padding-bottom:100px;
}
#about li:first-child::after{
	border: 0;
	content: "";
	display: block;
	width: 100%;
	height: 10px;
	border-radius: 8px;
	background: #000;
	position: absolute;
	bottom:0;
}
#about li p{
	font-size: 1.125rem;
	font-weight: 400;
	margin-bottom:40px;
}
#about figure{
	display:flex;
	justify-content:space-between;
}
#about figure img{
	width:48%;
}
#about ul.price{
	display:flex;
	justify-content: space-between;
	flex-wrap:wrap;
}
#about ul.price li:first-child{
	padding-bottom:0;
}
#about ul.price li:first-child::after{
	display:none;
}
#about ul.price li{
	width:48%;
	margin-bottom:30px;
}
#about p a{
	color:#ff7f50;
	font-weight:500;
	text-decoration:underline;
	transition:0.3s all;
}
#about p a:hover{
	color:#ff4757;
}
#about table.price{
	background:#fff;
	border-collapse: collapse;
	max-width: 100%;
	min-width: 600px;
}
#about table.price th{
	background:#2ed573;
	color: #fff;
	font-weight: bold;
}
#about table.price td:nth-child(5),
#about table.price td:nth-child(6){
	color:#f00;
	font-weight:bold;
}
#about h2{
	font-size: 2em;
	font-weight: bold;
}
/*---------------------------------------------------------
school
---------------------------------------------------------*/
#school{
	background:url("img/mono.png"),linear-gradient(0deg, rgba(253, 219, 146, 1), rgba(209, 253, 254, 1));
	padding:60px 0;
}

h3.effect {
	display:table;
	font-weight: 900;
	text-transform: uppercase;
	text-align: center;
	font-size: min(2vw, 36px);
	position: relative;
	padding: 0.5rem 2rem calc(0.5rem + 10px);
	background: #fff100;
	margin-bottom:80px;
}

h3.effect:before {
	position: absolute;
	top: -8px;
	left: -8px;
	width: 98%;
	height: 96%;
	content: '';
	border: 4px solid #000;
}
h4 {
	display:table;
	font-size:1.5rem;
	font-weight:700;
	text-align:center;
	background:linear-gradient(transparent 60%, #ff6 60%);
	padding:0 1em;
	margin:auto;
}
table{
	border-collapse: collapse;
	max-width:700px;
	width:100%;
	margin:2em auto;
}
.law table{
	margin-bottom:30vh;
}
th,td {
	border:#999 solid 1px;
	text-align:center;
	padding: 0.2em 0.5em;
	box-sizing:border-box;
	vertical-align:middle;
}
.law th, .law td{
	text-align:left;
}
th{
	background:#f2f2f2;
}
table.jma th:first-child{
	width:20%;
}
table.jma th:not(:first-child){
	width:40%;
}
td .red{
	display:block;
	color:#f00;
	font-size:1.5rem;
	font-weight:600;
}
p.notice{
	display:table;
	font-size:0.8em;
	color:#f00;
	margin:auto;
}
td .price{
	font-size:1.5em;
	font-weight:900;
	background: linear-gradient(transparent 60%, rgba(255,200,255,0.6) 60%);
	padding:0 0.5em;
}
.page table{
	max-width:1200px;
}

/*---------------------------------------------------------
course
---------------------------------------------------------*/
#course{
	padding:60px 0;
}
#course figure{
	max-width:80%;
	margin:40px auto 80px;
}
.btns{
	border-bottom:dashed 1px #999;
	display:flex;
	justify-content:center;
	max-width:800px;
	padding-bottom:60px;
	margin:60px auto 100px;
}
.btns a {
	font-size: 1.2rem;
	font-weight: 700;
	line-height: 1.5;
	position: relative;
	display: inline-block;
	padding: 1rem 4rem;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	letter-spacing: 0.1em;
	color: #212529;
	border-radius: 0.5rem;
	margin:0 1em;
}
a.btn--yellow {
	color: #000;
	background-color: #fff100;
}

a.btn--yellow:hover {
	color: #000;
	background: #fff20a;
}
a.btn--green {
	color: #fff;
	background-color: #094;
}
a.btn--green:hover {
	color: #fff;
	background: #00a349;
}
a.btn--red {
	color: #fff;
	background-color: #ff3838;
}
a.btn--red:hover {
	color: #fff;
	background: #ff3838;
}

a.btn--orange {
	color: #fff;
	background-color: #e67e22;
}
a.btn--orange:hover {
	color: #fff;
	background: #f39c12;
}
a.btn--yellow.btn--cubic {
	border-bottom: 5px solid #ccc100;
}

a.btn--yellow.btn--cubic:hover {
	margin-top: 3px;
	border-bottom: 2px solid #ccc100;
}
a.btn--green.btn--cubic {
	border-bottom: 5px solid #00662d;
}

a.btn--green.btn--cubic:hover {
	margin-top: 3px;
	border-bottom: 2px solid #00662d;
}
a.btn--red.btn--cubic {
	border-bottom: 5px solid #b33939;
}

a.btn--red.btn--cubic:hover {
	margin-top: 3px;
	border-bottom: 2px solid #b33939;
}
a.btn--orange.btn--cubic {
	border-bottom: 5px solid #d35400;
}

a.btn--orange.btn--cubic:hover {
	margin-top: 3px;
	border-bottom: 2px solid #d35400;
}
a.btn-c {
	font-size: 1.5vw;
	position: relative;
	padding: 1rem 0 1rem 0;
	width: 35%;
	border-radius: 100vh;
}
@media screen and (min-width: 1280px) {
	a.btn-c{
		font-size:1.2rem;
	}
}
a.btn-c i.fa {
	margin-right: 1rem;
}

a.btn-c:before {
	font-family: 'Font Awesome 5 Free';
	font-size: 1.3vw;
	line-height: 1;
	position: absolute;
	top: calc(50% - 0.5vw);
	right: 1rem;
	margin: 0;
	padding: 0;
	content: '\f054';
}
#course strong{
	display: table;
	font-size: 1.5rem;
	font-weight: 900;
	text-align: center;
	padding: 0 1em;
	margin: 2em auto;
}
.schools{
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
	max-width:1200px;
	margin:60px auto 100px;
}
.schools li{
	background: #fff;
	width: 33%;
	max-width: 240px;
	border:2px solid #000;
	text-align: center;
	padding: 20px 10px;
	box-sizing: border-box;
	margin:0 10px 20px;
	border-radius: 4px;
	transition: all .3s ease;
}
.schools li:hover{
	background:#00a29a;
	color:#fff;
}
#course .schools li strong{
	font-size: 1.125rem;
	line-height: 1.4;
	margin: 1em auto;
}
.schools li a{
	display: block;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	margin: auto;
	padding: 0.4em 0;
	font-size:0.8em;
	font-weight: 300;
	background:#000;
	border-radius: 100vh;
	color: #fff;

}
.schools li svg{
	max-height:42px;
}
.schools li:hover svg{
	fill:#fff;
}
.schools li:hover a{
	background:#fff;
	color:#00a29a;
	font-weight:500;
}
/*---------------------------------------------------------
news
---------------------------------------------------------*/
#news{
	padding:100px 0;
}
#posts {
	display:flex;
	flex-wrap:wrap;
	width:80%;
	margin:0 auto 60px;
}
#posts .post{
	width:30%;
	box-shadow: rgba(0, 0, 0, 0.05) 0px 6px 24px 0px, rgba(0, 0, 0, 0.08) 0px 0px 0px 1px;
	margin-bottom:20px;
}
#posts .post:nth-child(3n-1){
	margin:0 5% 20px;
}
#posts .post figure{
	display:flex;
	justify-content:center;
	align-items:center;
	background:#f2f2f2;
	min-height:288px;
}
#posts .post h3{
	font-weight:600;
	margin:15px;
}
#posts .post p{
	font-size:0.8em;
	margin:0 15px 15px;
}
/*---------------------------------------------------------
school LIST
---------------------------------------------------------*/
#school-list{
	margin-top:60px;
}
/*---------------------------------------------------------
schedule
---------------------------------------------------------*/
#schedule{
	background:url("img/subtle-prism.svg") no-repeat left top / cover;
	padding:60px 0 100px;
	text-align:center;
}
#schedule iframe{
	width:100%;
	padding: 20px;
	box-sizing: border-box;
	background: #fff;
	border-radius: 10px;
	box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.35);
}
#schedule h4{
	font-size:2rem;
	font-weight:900;
}
/*---------------------------------------------------------
Pages
---------------------------------------------------------*/
.prefname span{
	display: table;
	font-weight: 900;
	text-transform: uppercase;
	text-align: center;
	font-size: min(1.5vw, 24px);
	position: relative;
	padding: 0.5rem 3rem calc(0.5rem + 10px);
	background: #fff100;
	margin: 80px 0;
	background-repeat: no-repeat;
	background-position: left 10px top 42%;
	background-size: 30px;
}
	
.prefname span:before {
	position: absolute;
	top: -8px;
	left: -8px;
	width: 98%;
	height: 96%;
	content: '';
	border: 4px solid #000;
}
#school-list h1{
	font-weight: 900;
	text-transform: uppercase;
	text-align: center;
	font-size: min(4vw, 48px);
	color: transparent;
	background-color: #FF3CAC;
	background-image: linear-gradient(225deg,#2B86C5  0%, #784BA0 50%, #FF3CAC 100%);
	-webkit-background-clip: text;
	background-clip: text;
	filter: drop-shadow(0px 0px #eee) drop-shadow(1px 1px #eee) drop-shadow(1px 1px #eee) ;
}
#school-list h1.jma{
	background-color: #FFE53B;
	background-image: linear-gradient(25deg, #08AEEA 0%, #2AF598 100%);
	background-image:linear-gradient(135deg, #036ED9 0%,#000a29aB3 100%);
}
#school-list hr{
	border: 0;
	content: "";
	margin: 0px auto 60px;
	display: block;
	width: 100%;
	height: 10px;
	border-radius: 8px;
	background: linear-gradient(225deg,#FF3CAC  0%, #784BA0 50%, #2B86C5 100%);
}
#school-list hr.jma{
	background:linear-gradient(135deg, #000a29aB3 0%,#036ED9 100%);
}
#school-list h2 {
	font-size:2.5rem;
	font-weight:700;
	margin:0.5em auto;
}
ul.school,ul.station{
	border:1px solid #ccc;
	border-radius:10px;
	text-align:center;
	padding:3%;
	margin-bottom:150px;
}
ul.school figure{
	width:50%;
	margin:0 auto 40px;
}
ul.school .detail,
ul.station .detail{
	font-size: 1.25rem;
	margin-top:30px;
}
ul.school .add,
ul.school .tel,
ul.school .web,
ul.school .comment,
ul.station .add,
ul.station .tel,
ul.station .comment,
ul.station .web{
	margin-top:20px;
}
.web a{
	color:#ff7f50;
	font-weight:500;
	text-decoration:underline;
	transition:0.3s all;
}
.web a:hover{
	color:#ff4757;
}
ul.school .add a{
	margin-left:1em;
}
ul.school .add img{
	vertical-align: text-bottom;
}
ul.school .btns,
ul.station .btns{
	border-bottom: 0;
	display: flex;
	justify-content: center;
	padding-bottom: 0;
	margin: 60px auto 30px;
}
ul.station figure {
	width: 30%;
	margin:auto;
}
ul.station li:not(:last-child),
ul.school li:not(:last-child){
	padding-bottom: 60px;
	margin-bottom: 60px;
	border-bottom: 1px solid #999;
}
ul.available{
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
	margin:10px 0;
}
ul.available li{
	display:table;
	border-radius:24px;
	color:#fff;
	font-size:1em;
	padding:0 3rem;
	margin:0 5px;
}
ul.available li:not(:last-child) {
	padding-bottom: 0;
	margin-bottom: 10px;
	border-bottom: 0;
}
ul.available li:last-child{
	margin-bottom:10px;
}
li.ittou{
	background:#3c40c6;
}
li.nitou{
	background:#0fbcf9;
}
li.hiru,
li.mokushi,
li.kg{
	background:#273c75;
}
li.pilot{
	background:#0fbcf9;
}
li.ict{
	background:#b71540;
}
li.agr{
	background:#009432;
}
.to_school a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 250px;
	margin: 0 auto;
	padding: .9em 2em;
	border: none;
	border-radius: 5px;
	background-image: linear-gradient(144deg, #af40ff, #5b42f2 50%, #00ddeb);
	color: #fff;
	font-weight: 600;
	font-size: 1.25em;
	padding: 0.5em 1em ;
	margin: 30px auto;
	box-shadow: 0 7px 10px rgb(0 0 0 / 10%);
	transition: transform .3s, box-shadow .3s;
}

.to_school a:hover {
	box-shadow: 0 7px 10px rgb(0 0 0 / 15%);
}
#single_school{
	margin-top:100px;
	text-align:center;
}
#single_school figure{
	margin-bottom:50px;
}
fieldset{
	border: 1px solid #000;
	border-radius:4px;
	padding:10px;
	margin-bottom: 60px;
}
fieldset legend{
	font-size:1.25rem;
	font-weight:700;
	padding:0 1em;
}
.add iframe{
	display:block;
	width:100%;
	height:450px;
	margin-bottom:2rem;
}
ul.school .add a, ul.station .add a {
	display: block;
	margin: 0.5em auto;
}
/*---------------------------------------------------------
contact 
---------------------------------------------------------*/
ul.contact{
	background: #fafafa;
	border: 1px solid #666;
	border-radius:10px;
	color:#666;
	font-size:1.25rem;
	font-weight:300;
	max-width:800px;
	margin:0 auto 100px;
	padding:30px;
}
ul.contact li{
	margin-bottom:20px;
}
ul.contact li.confirm{
	display:flex;
	justify-content:center;
}
ul.contact li.confirm .button{
	width:48%;
	margin: 0 1%;
}
ul.contact select,
ul.contact input,
ul.contact email,
ul.contact textarea{
	font-size:1.125rem;
	border-radius:4px;
	border:1px solid #ccc;
	font-weight:300;
	padding:8px 10px;
	box-sizing:border-box;
	max-width:80%;
}
ul.contact textarea{
	width:77%;
}
::placeholder {
	font-size:1em;
	font-weight:200;
}
::-webkit-input-placeholder { /* WebKit, Blink, Edge */
	font-size:1em;
	font-weight:200;
}
:-ms-input-placeholder { /* Internet Explorer 10-11 */
	font-size:1em;
	font-weight:200;
}
::placeholder{ /* Others */
	font-size:1em;
	font-weight:200;
}
ul.contact .button{
	background-color: rgba(200, 200, 200, 0.8);
	color: #666;
	font-size: 20px;
	font-weight:bold;
	text-transform: uppercase;
	text-align: center;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	border-radius: 2px;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
	padding: 0 60px;
	height: 60px;
	border: none;
	width: 100%;
	cursor:pointer;
}
ul.contact .button:hover{
	background:#fff100;
	border:2px solid #999;
}
.mw_wp_form .error {
	font-size: 93%;
	font-weight: 900;
	color: #fff;
	display: block;
}
.mw_wp_form mw_wp_form_complete p{
	margin-bottom:200px;
}
/*---------------------------------------------------------
single
---------------------------------------------------------*/
#single,
#archive{
	margin-top:60px;
	padding-bottom:120px;
}
#single .container{
	max-width:1000px;
}
#single .ttl{
	width:80%;
	margin:auto;
}
#breadcrumbs{
	border-bottom: 1px solid #eee;
	font-size: 12px;
	width: 80%;
	margin: 60px auto;
	padding-bottom: 5px;
}
.ttl h1{
	font-size:3rem;
	font-weight:900;
	line-height: 1.4;
	text-align: center;
	margin-bottom: 2em;
}
#single .image figure{
	display: table;
	border: 1px solid #eee;
	width: auto;
	margin: 0 auto 30px;
}
#single .txt p{
	font-size:1.25em;
	line-height:2;
	margin-bottom:2em;
}
#single .pagenate{
	display:flex;
	justify-content:space-between;
	margin-top:120px;
}
#single .pagenate li{
	width:50%;
}
#single .pagenate li div{
	background:#fff;
	border:1px solid #eee;
	max-width:300px;
	height:100%;
	margin-top:10px;
}
#single .pagenate li.next div{
	margin-left:auto;
}
#single .pagenate li.next img.next{
	display: block;
	margin-left: auto;
}
#single .pagenate li img.prev{
	display: block;
}
#single .pagenate li figure{
	border-bottom:1px solid #eee;
	max-height:160px;
	overflow:hidden;
}
#single .pagenate li h3{
	padding:20px 10px;
	font-weight:600;
	text-align:center;
}
#single .content a{
	color:#3742fa;
	text-decoration:underline;
}
#single .content a:hover{
	color:#1e90ff;
	text-decoration:none;
}
#single .txt strong{
	font-weight:600;
}
#single .txt ul{
	margin-left:2em;
}
#single .txt ul p{
	margin-bottom:0;
}
#single .txt ul li ul{
	list-style:circle;
	
}
/*---------------------------------------------------------
Other Pages
---------------------------------------------------------*/
body.jma-drone-school,
body.drone-station{
	background-color: rgba(255,239,0,0.1);
	background-image: repeating-linear-gradient(-45deg, #fff, #fff 3px, transparent 0, transparent 6px);
}
h1#jma-school_lists{
	display:table;
	text-align: center;
	font-size: min(6vw, 70px);
	font-weight:900;
	line-height: 1.2;
	position:relative;
	margin:auto;
}
h1#drone-station{
	display:table;
	text-align: center;
	font-size: min(6vw, 70px);
	font-weight:900;
	line-height: 1.2;
	position:relative;
	margin:auto;
	color: transparent;
	background-color: #FF3CAC;
	background-image: linear-gradient(135deg, #036ED9 0%, #000a29aB3 100%);
	-webkit-background-clip: text;
	background-clip: text;
	filter: drop-shadow(0px 0px #eee) drop-shadow(1px 1px #eee) drop-shadow(1px 1px #eee);
}
h1#jma-school_lists img{
	width: 600px;
}
h1#jma-school_lists::after {
	border: 0;
	content: "";
	margin: 0;
	display: block;
	width: 100%;
	height: 10px;
	border-radius: 8px;
	background: linear-gradient(225deg,#FF3CAC 0%, #784BA0 50%, #2B86C5 100%);
	position: absolute;
	bottom: -20px;
}
h1#drone-station img{
	width: 600px;
}
h1#drone-station::after {
	border: 0;
	content: "";
	margin: 0;
	display: block;
	width: 100%;
	height: 10px;
	border-radius: 8px;
	background: linear-gradient(135deg, #000a29aB3 0%,#036ED9 100%);
	position: absolute;
	bottom: -20px;
}
body.drone-station section{
	margin:60px auto;
}
body.drone-station section ul{
	display:flex;
	flex-wrap:wrap;
}
body.drone-station section ul li{
	width:30%;
	margin-right:5%;
	margin-bottom:20px;
}
body.drone-station section ul li:nth-child(3n){
	margin-right:0;
}
body.drone-station section ul li a{
	display:block;
	background: linear-gradient(135deg,#036ED9 0%, #000a29aB3 100%);
	border-radius:4px;
	color:#fff;
	font-weight:700;
	padding:10px ;
	position:relative;
	transition:0.2s;
}
body.drone-station section ul li a:after{
	content: '';
	width: 6px;
	height: 6px;
	border: 0;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	position: absolute;
	top: 50%;
	right: 10px;
	margin-top: -4px;
	transform: rotate(45deg);
	transition:0.3s;
}
body.drone-station section ul li a:hover{
	opacity:0.75;
}
body.drone-station section ul li a:hover:after{
	right: 20px;
}
.page strong{
	font-weight:700;
}
/*---------------------------------------------------------
footer
---------------------------------------------------------*/
footer {
	width: 100%;
	background: #00a29a;
	font-size: 15px;
	font-weight: 300;
	padding:55px 100px 220px;
	text-align:center;
	box-sizing:border-box;
}
footer figure{
	max-width:240px;
	margin: auto;
}
footer figure img{
	margin-bottom:20px;
}
footer .sign{
	font-size:12px;
	text-align:center;
}
footer .sign small{
	margin-right:4em;
}
#page_top{
	width: 38px;
	height: 38px;
	position: fixed;
	right: 36px;
	bottom: -100px;
	z-index:9999;
}
#sch{
	position: fixed;
	top: 20%;
	right: 0;
	writing-mode: vertical-rl;
	background: #44bd32;
	border-radius: 8px 0 0 8px;
	border: 3px solid #fff;
	border-right: 0;
	box-shadow: 0px 1px 4px 2px rgba(100, 100, 100, 0.45);
	padding: 10px 5px;
	z-index: 999;
}
#sch a{
	color:#fff;
}
#place {
	display:none;
}
.ft_btn{
	position: fixed;
	bottom: 0;
	width: 100%;
	text-align: center;
	z-index:100;
}


.ft_btn .btn-wrap {
	margin: 30px 0;
}

.ft_btn a.btn-c {
	display: inline-block;
	font-size: 1.5rem;
	position: relative;
	padding: 0.25rem 2rem 1.5rem 3.5rem;
	color: #fff;
	background: #e94919;
	-webkit-box-shadow: 0 5px 0 #d44114;
	box-shadow: 0 5px 0 #d44114;
	font-weight: 700;
	line-height: 1.5;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	letter-spacing: 0.1em;
	border-radius: 0.5rem;
	box-shadow: 6px 6px 10px 0px rgba(0, 0, 0, 0.4);
}

.ft_btn a.btn-c span {
	font-size: 1.2rem;
	position: absolute;
	top: -1.25rem;
	left: calc(20%);
	display: block;
	width: 60%;
	padding: 0.2rem 0;
	color: #d44114;
	border: 2px solid #d44114;
	border-radius: 100vh;
	background: #fff;
	-webkit-box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
}

.ft_btn a.btn-c span:before,
a.btn-c span:after {
	position: absolute;
	left: calc(50% - 10px);
	
	content: "";
}

.ft_btn a.btn-c span:before {
	bottom: -10px;
	
	border-width: 10px 10px 0 10px;
	border-style: solid;
	border-color: #d44114 transparent transparent transparent;
}

.ft_btn a.btn-c span:after {
	bottom: -7px;
	
	border-width: 10px 10px 0 10px;
	border-style: solid;
	border-color: #fff transparent transparent transparent;
}

.ft_btn a.btn-c i {
	margin-right: 1rem;
}

.ft_btn a.btn-c:hover {
	-webkit-transform: translate(0, 3px);
	transform: translate(0, 3px);
	
	color: #fff;
	background: #eb5b30;
	-webkit-box-shadow: 0 2px 0 #d44114;
	box-shadow: 0 2px 0 #d44114;
}
#archive .container{
	max-width:1000px;
}
.region-block{
	margin-bottom:60px;
}
.region-block h2{
	display:table;
	font-size:2rem;
	font-weight:700;
	padding: 0 10px;
	margin-bottom:1em;
	position:relative;
}
.region-block h2::after{
	content:"";
	position:absolute;
	left:0;
	bottom:0;
	background:#00a29a;
	width:100%;
	height:5px;
	border-radius:50px;
}
.school-list a{
	display:block;
	color:#808080;
	font-size:0.9rem;
	font-weight:700;
	border-bottom:1px solid #eee;
	padding:30px 0;
	position:relative;
}
.school-list a:hover{
	background:#00a29a;
	color:#fff;
}
.school-list a::after{
	content: "";
	position: absolute;
	right: 40px;
	top: 50%;
	margin-top: -9px;
	width: 9px;
	height: 18px;
	background: url(img/arrow-right.svg) center center no-repeat;
	background-size: 9px auto;
}
.school-list a:hover::after{
	content: "";
	position: absolute;
	right: 40px;
	top: 50%;
	margin-top: -9px;
	width: 9px;
	height: 18px;
	background: url(img/arrow-right-w.svg) center center no-repeat;
	background-size: 9px auto;
}
.school-list h3{
	color:#666;
	font-size:1.5rem;
	font-weight:900;
}
.school-list a:hover h3{
	color:#fff;
}
ul.taiou{
	display:flex;
	flex-wrap: wrap;
}
ul.taiou li{
	position:relative;
}
ul.taiou li:not(:first-child)::after{
	content:"　";
}
.school-list strong{
	font-weight:700;
}
.school-list p{
	font-size:0.9rem;
	font-weight:700;
}
/*---------------------------------------------------------
Mobile
---------------------------------------------------------*/


/*Media Queries*/

@media screen and (max-width: 767px) {
	html:before,html:after,body:before,body:after{
		display:none;
	}
	body, html {
		min-width: 100%;
	}
	body {
		font-size: 15px;
		padding-top:80px;
	}
	img {
		max-width: 100%;
	}
	img.sp {
		width: 100%;
	}
	.pc {
		display: none;
	}
	.sp {
		display: block;
	}
	header {
		background:#fff;
		display:block;
		width: 100%;
		height:80px;
		padding:10px 15px;
		box-sizing:border-box;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 999;
		text-align:center;
	}
	header h1{
		width: 120px;
		margin: auto;
	}
	#toggle{
		width: 30px;
		height: 24px;
		margin-top: unset;
		position: absolute;
		right: 15px;
		top: 30%;
	}
	#toggle-box {
		width: 30px;
		height: 20px;
	}
	header nav ul {
		margin: 30vh 0 0 0;
	}
	header.fixed {
		display: flex;
		background: rgba(255,255,255,1);
		height: 60px;
		padding-bottom: 10px;
		box-shadow: 0px -3px 8px 5px rgba(100,100,100,0.2);
	}
	header.fixed h1 {
		width: 75%;
	}
	#fv{
		height: calc( 100vh - 80px );
		box-sizing: border-box;
		padding: 10vh 0;
	}
	#fv h1 {
		width: 100%;
	}
	#fv h2 {
		width: 95%;
	}
	#fv h3 {
		width: 85%;
	}
	#fv .japan{
		width:30%;
	}
	#fv .drone {
		width: 25%;
	}
	.anime-fuwafuwa {
		animation: 4s fuwafuwa infinite;
	}
	#about{
		padding:30px 0;
	}
	#about h2.effect{
		margin-bottom:60px;
	}
	#about h3 {
		margin: 0 auto 50px;
	}
	#about h4 {
		font-size:1.5rem;
	}
	#about h4:before, #about h4:after{
		width:3px;
	}
	#about li p {
		font-size: 1rem;
	}
	#about figure {
		flex-wrap:wrap;
	}
	#about figure img {
		width: 100%;
	}
	#about figure img:first-child {
		margin-bottom:20px;
	}
	#about li:last-child{
		margin-bottom:0;
	}
	#course {
		padding: 30px 0;
	}
	h2.effect{
		font-weight: 900;
		text-transform: uppercase;
		text-align: center;
		font-size: 6vw;
		color: transparent;
		background: #00a29a;
		-webkit-background-clip: text;
		background-clip: text;
		filter: drop-shadow(0px 0px #000) drop-shadow(1px 1px #000) drop-shadow(1px 1px #000) drop-shadow(1px 1px #000);
		margin-bottom: 40px;
	}
	#about h2.effect{
		color:#000;
		background:none;
		filter:none;
	}
	h2.no_effect {
		font-weight: 900;
		font-size: 6vw;
	}
	h3.effect {
		display: table;
		font-weight: 900;
		text-transform: uppercase;
		text-align: center;
		font-size: 5vw;
		position: relative;
		padding: 0.1rem 1rem 0.8rem;
		background: #fff100;
		margin-bottom: 40px;
	}
	h3.effect:before {
		content: '';
		position: absolute;
		top: -6px;
		left: -6px;
		width: 98%;
		height: 92%;
		border: 3px solid #000;
	}
	h4 {
		display: table;
		font-size: 1.25rem;
		font-weight: 700;
		line-height: 1.3;
		text-align: center;
		background: linear-gradient(transparent 70%, #ff6 90%);
		padding: 0;
		margin: auto;
	}
	#course figure {
		max-width: 100%;
		margin: 40px auto;
	}
	.timeline-001 {
		width: 100%;
		margin: 0 auto 60px;
		text-align: center;
	}
	.timeline-001__section {
		position: relative;
		padding: 0 1em 1em 2em;
	}
	.timeline-001__label {
		margin-bottom: 1.5em;
		font-size: 1.125em;
		line-height: 1;
		text-transform: uppercase;
		text-align: left;
		font-weight: 900;
		text-transform: uppercase;
		color: transparent;
		background: #00a29a;
		-webkit-background-clip: text;
		background-clip: text;
		filter: drop-shadow(0px 0px #000) drop-shadow(1px 0px #000) drop-shadow(1px 1px #000) drop-shadow(0px 1px #000) drop-shadow(1px 1px #000);
	}
	.timeline-001__section:not(:last-child)::before{
		width: 2px;
	}
	.timeline-001__section::after {
		top: 0;
		left: 3px;
		width: 12px;
		height: 12px;
		border: 2px solid #000;
		border-radius: 50%;
		background-color: #00a29a;
	}
	.timeline-001__title {
		display: table;
		color: #333333;
		font-size: 1.3em;
		line-height: 1.3;
		background: linear-gradient(transparent 80%, rgba(24, 220, 255,1.0) 80%);
		padding: 0;
		margin: 0 auto 1em;
	}
	.timeline-001__content p{
		font-size: 0.9rem;
		text-align: left;
	}
	.timeline-001 ul li {
		width: calc( 96% / 3 );
		border: 1px solid #999;
		box-sizing: border-box;
		margin: 0 0.66% 10px;
	}
	.timeline-001 dd {
		font-size: 0.8em;
	}
	.btns{
		flex-wrap:wrap;
	}
	.btns a:not(:last-child){
		margin-bottom:30px;
	}
	a.btn-c {
		font-size: 4vw;
		position: relative;
		padding: 1rem 0 1rem 0;
		width: 80%;
		border-radius: 100vh;
	}
	.schools {
		flex-wrap:wrap;
		margin: 40px 0 100px;
	}
	.schools li {
		width: 43%;
	}
	.schools li:not(:last-child){
		margin-bottom:20px;
	}
	table{
		font-size: 0.8em;
	}
	#school{
		background-size:contain;
	}
	div.area div.disable{
		display:none!important;
	}
	#news {
		padding: 60px 0;
	}
	#posts {
		width: 100%;
	}
	#posts .post {
		width: 100%;
	}
	#posts .post:not(:last-child){
		margin-bottom:30px;
	}
	#posts .post:nth-child(3n-1) {
		margin: 0 0 30px;
	}
	.prefname span{
		text-align: left;
		font-size: 1.25em;
		line-height: 1.3;
		margin: 30px 0;
	}
	#school-list{
		margin-top:0;
	}
	#school-list h1{
		font-size: 6vw;
		line-height: 1.5;
		padding-bottom: 10px;
	}
	#school-list hr {
		margin: 0px auto 40px;
	}
	ul.school, ul.station {
		border-radius: 10px;
		padding: 20px 15px;
		margin-bottom: 100px;
	}
	ul.school figure,
	ul.station figure	{
		width: 100%;
		margin: 0 auto 30px;
	}
	ul.available li:last-child {
		margin-bottom: 0;
	}
	ul.available li {
		display: block;
		border-radius: 24px;
		color: #fff;
		font-size: 0.9em;
		width: 100%;
		padding: 0 ;
		margin: 0;
	}
	ul.school .detail, ul.station .detail {
		font-size: 1rem;
	}
	ul.school .add,
	ul.station .add{
		font-size:0.8em;
	}
	ul.school .add a,
	ul.station .add a	{
		display: block;
		margin: 1em;
	}
	fieldset {
		padding: 0 15px 15px;
		margin-bottom: 40px;
	}
	.add iframe{
		height:300px;
	}
	#single_school {
		margin-top: 40px;
	}
	#single_school figure {
		margin-bottom: 40px;
	}
	#single {
		margin-top: 0;
	}
	#single .ttl {
		width: 92%;
	}
	#breadcrumbs{
		font-size: 10px;
		width: 92%;
		margin: 30px auto 20px;
		padding-bottom: 5px;
	}
	#single .ttl h1 {
		font-size: 1.8rem;
	}
	single .pagenate {
		margin-top: 60px;
	}
	#single .pagenate li {
		width: 45%;
	}
	#single .pagenate li figure {
		max-height: 90px;
	}
	footer{
		width: 100%;
		background: #00a29a;
		font-size: 12px;
		font-weight: 300;
		padding: 20px 0 150px;
	}
	footer .sign {
		font-size: 10px;
		text-align: center;
		margin-top: 30px;
	}
	#page_top {
		width: 32px;
		height: 32px;
		right: 15px;
	}
	ul.contact{
		font-size: 1rem;
		padding:30px 15px;
	}
ul.contact select, ul.contact input, ul.contact email,ul.contact textarea{
		max-width:100%;
	}
	td .red {
		display: block;
		color: #f00;
		font-size: 1.25rem;
	}
	#place {
		display:block;
		font-size: 12px;
		font-weight:700;
		position: fixed;
		top: 20%;
		right: 0;
		writing-mode: vertical-rl;
		background: #00a8ff;
		border-radius: 8px 0 0 8px;
		border: 2px solid #fff;
		border-right: 0;
		box-shadow: 0px 1px 4px 2px rgba(100, 100, 100, 0.45);
		color:#fff;
		padding: 7px 4px;
		z-index: 999;
	}
	#place a{
		color:#fff;
	}
	#sch{
		top: 35%;
		font-size: 12px;
		font-weight:700;
		border-width: 2px;
		padding: 7px 4px;
	}
	h1#jma-school_lists{
		margin:60px auto 0;
	}
	h1#drone-station{
		margin:60px auto;
	}
	h1#jma-school_lists img {
		width: 96%;
	}
	h1#drone-station img {
		width: 96%;
	}
	body.drone-station #school-list h2{
		font-size:1.5rem;
	}
	body.drone-station section ul li {
		width: 45%;
	}
	body.drone-station section ul li:nth-child(3n){
		margin-right:5%;
	}
	body.drone-station section {
		margin: 30px auto;
	}
	body.drone-station section ul li a{
		line-height: 1.3;
		padding: 10px 20px 10px 10px;
	}
	#info{
		display: none;
	}
	.modaal-content-container a.menkyo{
		display: block;
		background: linear-gradient(225deg,#FF3CAC 0%, #784BA0 50%, #2B86C5 100%);
		border-radius: 32px;
		color: #fff;
		font-weight: 700;
		padding: 10px;
		position: relative;
		text-align:center;
		margin-bottom:30px;
	}
	.modaal-content-container a.jma{
		display: block;
		background: linear-gradient(135deg,#036ED9 0%, #000a29aB3 100%);
		border-radius: 32px;
		color: #fff;
		font-weight: 700;
		padding: 10px;
		text-align:center;
		position: relative;
	}
	#about h4.jmaclub small {
    font-size: 1rem;
	}
	a.btn-c:before {
    font-size: 4vw;;
    top: calc(50% - 2vw);
	}
	.ft_btn a.btn-c {
		font-size:20px;
		line-height: 1;
		padding: 0 0 20px;
	}
	.ft_btn a.btn-c span {
		font-size:14px;
		position: absolute;
		top: -1rem;
		left: 0;
		right: 0;
		width: 80%;
		margin: auto;
	}
	#about ul.price li{
		width:100%;
	}
}
a.search_cal {
  display: block;
  color: #fff;
  font-size: 24px;
  padding: 1.5rem .5rem;
  background-color: #e22939;
  text-align: center;
  text-decoration: none;
  transition-duration: 0.3s;
  max-width:480px;
  margin:0 auto 30px;
}
a.search_cal:hover {
  background: #000000;
}
a.search_cal span {
  position: relative;
  padding-left: 36px;
}
a.search_cal span:before {
  content: '';
  width: 26px;
  height: 26px;
  background: #ffffff;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -13px;
}
a.search_cal span:after {
  content: '';
  width: 6px;
  height: 6px;
  border: 0;
  border-top: 3px solid #e22939;
  border-right: 3px solid #e22939;
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  left: 7px;
  margin-top: -5px;
}
a.search_cal:hover span:after {
  border-top: 3px solid #000000;
  border-right: 3px solid #000000;
}
@media screen and (max-width: 767px) {
	a.search_cal{
		font-size:18px;
	}
}