@charset "UTF-8";
/*----------------------------------------------------------------------------------------------------
 *
 * Theme Name: Dream_Music_Adult_ver1.3
 * Theme URI: 
 * Author: 
 * Author URI: 
 * Description: Dream_Music_Adult_ver1.3
 * Version: 1.0
 * License: GNU General Public License v2 or later
 * License URI: http://www.gnu.org/licenses/gpl-2.0.html
 * Text Domain: 
 *
 *--------------------------------------------------------------------------------------------------*/

/*--------------------------------------------------------------------------------
 *
 *
 * リセット
 *
 *
--------------------------------------------------------------------------------*/
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:inherit; font-size:100%; vertical-align:baseline; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display:block; }
html, body { width:100%; height:100%; 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; }
* { -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; }

/*--------------------------------------------------

   Clearfix

--------------------------------------------------*/
.cf { zoom:1; } .cf:before,.cf:after { content:""; display:table; } .cf:after { clear:both; }

/*--------------------------------------------------------------------------------
 *
 *
 *
 *
 * 基本設定
 *
 *
 *
 *
--------------------------------------------------------------------------------*/
html { overflow:auto; }
@media screen and (max-width:1000px){ body { width:1000px; } }
@media screen and (max-width:768px){ body { width:100%; background:none; } }
body { font-family:'Noto Sans Japanese',"メイリオ" , Meiryo , "ヒラギノ角ゴPro W3" , "Hiragino Kaku Gothic Pro" , "ＭＳ Ｐゴシック" , sans-serif; font-size:100%; line-height:1.75; font-weight:normal; position:relative; }
a:link,
a:visited { color:#000; text-decoration:none; transition:.3s ease; }
a:hover,
a:active { color:#333; text-decoration:none; transition:.3s ease; }
img { max-width:100%; height:auto; vertical-align:top; backface-visibility:hidden; }
a:link img,
a:visited img {opacity:1.0; transition:.3s ease; }
a:hover img,
a:active img {opacity: 0.6; transition: .3s ease; }
video::-webkit-media-controls-enclosure { overflow:hidden; }
video::-webkit-media-controls-panel { width: calc(100% + 30px); }

/* ------------------------------小見出し属性------------------------------　*/
h1 , h2 ,h3 ,h4 ,h5 { margin:0; padding:0; line-height:1.4; }
h1 { font-size:30px; }
h2 { font-size:26px; }
h3 { font-size:20px; }
h4 { font-size:18px; }
h5 { font-size:16px; }

@media screen and (max-width:768px){
	h1 { font-size:20px; }
	h2 { font-size:19px; }
	h3 { font-size:18px; }
	h4 { font-size:18px; }
	h5 { font-size:16px; }
}
p { font-size:16px; margin-top:20px; padding:0; line-height:2; display:block; }
p:first-child { margin:0; }
ul { margin:0; padding:0; }
li { margin:0; padding:0; font-size:14px; }
img { max-width:100%; height:auto; display:block; }
small { font-size:10px; }
@media screen and (max-width:768px){
	p { font-size:12px; }
	li { font-size:12px; }
}
hr { border-top:1px solid #dbdbd9; border-bottom:1px solid #ffffff; border-right:none; border-left:none; margin:30px 0 40px 0; }
img.center,.aligncenter { margin:0 auto; display:block; }
img.left { float:left; margin:0 30px 30px 0; }
img.right { float:right; margin:0 0 30px 30px; }
img.photo { background:#ffffff; padding:5px; box-shadow:0px 0px 5px 5px rgba(0,0,0,0.05); }
img.photo_left { transform:rotate(-4deg); -moz-transform:rotate(-4deg); -webkit-transform:rotate(-4deg); background:#ffffff; padding:5px; box-shadow:0px 0px 5px 5px rgba(0,0,0,0.05); }
img.photo_right { transform:rotate(4deg); -moz-transform:rotate(4deg); -webkit-transform:rotate(4deg); background:#ffffff; padding:5px; box-shadow:0px 0px 5px 5px rgba(0,0,0,0.05); }
.bold { font-weight:bold; }
.underline { text-decoration:underline; }
.red { color:#d61618; font-weight:bold; }
.blue { color:#00acf6; font-weight:bold; }
.yellow { background:linear-gradient(transparent 60%, #f7e43d 60%); }
.white { background:linear-gradient(transparent 60%, #fff 60%); }
.center { text-align:center; }
.sp00 { margin-top:0 !important; }
.sp10 { margin-top:10px !important; }
.sp20 { margin-top:20px !important; }
.sp30 { margin-top:30px !important; }
.sp40 { margin-top:40px !important; }
.sp50 { margin-top:50px !important; }
.sp60 { margin-top:60px !important; }
.sp70 { margin-top:70px !important; }
.sp100 { margin-top:100px !important; }
.align_left { text-align:left; }
.align_right { text-align:right; }
.align_center { text-align:center; }
.ffffff { background:#ffffff!important; }
.f7f7f7 { background:#f7f7f7!important; }
.small { font-size:12px; }

@media screen and (max-width:768px){
	img.left , img.right  { float:none; margin:0 auto 20px auto; display:block; }
	.big { font-size:16px; }
}
.pc { display:block!important; }
.sp { display:none!important; }
@media screen and (max-width:768px){
	.pc { display:none!important; }
	.sp { display:block!important; }
}

/*--------------------------------------------------------------------------------
 *
 *
 *
 *
 * ヘッダー
 *
 *
 *
 *
--------------------------------------------------------------------------------*/
header#header { width:100%; height:auto; background:rgba(255,255,255,0); box-shadow:0 0 10px rgba(0,0,0,0); padding:0; position:fixed; z-index:999; }
header#header ul.two_row { height:70px; 
display:-webkit-box; display:-ms-flexbox; display:flex;
-webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between;/*左右に配置*/
-webkit-box-align:center;-ms-flex-align:center; align-items:center; /*上下中央*/
-ms-flex-wrap:wrap; flex-wrap:wrap; /*折り返す*/ }
header#header ul.two_row li:nth-child(1) {  }
header#header ul.two_row li:nth-child(2) {  }
@media screen and (max-width:1000px){
	header#header ul.two_row { width:1000px; }
}
@media screen and (max-width:768px){
	header#header ul.two_row { width:100%; height:50px; }
}

img.logo { width:220px; margin-left:10px; }
p#discription { position:absolute; font-size:10px; top:27px; left:340px; color:#999999; margin:0; padding:0; line-height:1.6; display:none; }
@media screen and (max-width:768px){
	img.logo { width:130px; margin-left:5px; }
	p#discription { top:10px; left:100px; display:none; }
}

header.page_bg { background:rgba(255,255,255,1)!important; box-shadow:0 0 10px rgba(0,0,0,.1)!important;}
header.page_bg li:after { color:#000!important; }
header.page_bg a {  color:#000!important; }

.scrolled { background:rgba(255,255,255,1)!important; box-shadow:0 0 10px rgba(0,0,0,0.1)!important;
  -webkit-transition:all .4s ease 0s,background .6s ease .2s;
  transition:all .4s ease 0s,background .6s ease .2s;
  -webkit-overflow-scrolling:touch;
  overflow-scrolling:touch; }
.scrolled li:after { color:#000!important; }
.scrolled a { color:#000!important; }
img.logo { display:block; }

.scrolled #nav-open { background:#000; }
.scrolled #nav-open span { background-color:#fff; }

p#free_button { display:none; opacity:0; }
p#call_button { display:none; opacity:0; }
@media screen and (max-width:768px){
	.scrolled p#free_button { display:block; opacity:1; position:absolute; top:0; right:100px; margin:0; line-height:1.4; text-align:center; }
	.scrolled p#free_button a { display:block; width:80px; height:50px; background:#00d984; padding-top:9px; color:#fff!important; }
	.scrolled p#call_button { display:block; opacity:1; position:absolute; top:0; right:50px; margin:0; line-height:1.4; text-align:center; }
	.scrolled p#call_button a { display:block; width:50px; height:50px; background:#f7f7f7; padding-top:8px; }
	.scrolled p#call_button i { font-size:20px; }
}





/*--------------------------------------------------------------------------------
 *
 *
 *
 *
 * グローバルナビゲーション
 *
 *
 *
 *
--------------------------------------------------------------------------------*/

/* ------------------------------グローバルナビゲーション（PC）------------------------------　*/
nav#header-nav { clear:both; width:100%; height:auto; margin:0; padding:0; z-index:998; }
nav#header-nav ul { margin:0; }
nav#header-nav ul li { padding:0 0 0 20px; text-align:center; }
nav#header-nav ul li:after { content:"|"; transform:rotate(45deg); -moz-transform:rotate(45deg); -webkit-transform:rotate(45deg); display:inline-block; color:#000; margin-left:20px; }
nav#header-nav ul li:last-child:after { content:""; }
nav#header-nav ul li a { font-size:12px; color:#000; padding:0; font-weight:normal; }
nav#header-nav ul li a:before { padding-right:5px }
nav#header-nav ul li a:hover{ text-decoration:none; color:#ccc; }
nav#header-nav ul li:last-child a { background:#57F7B8; padding:15px 40px; border-radius:100px; border:2px solid #000; font-weight:bold; }
nav#header-nav ul li:last-child a:hover { color:#333; }
nav#header-nav ul.flex { display:-webkit-inline-box; display:-ms-inline-flexbox; display:inline-flex;/*インライン要素*/
-webkit-box-align:center;-ms-flex-align:center; align-items:center; /*上下中央*/
-webkit-box-pack:end; -ms-flex-pack:end; justify-content:flex-end; /*右側に配置*/ }

/* ------------------------------グローバルナビゲーション（モバイル）------------------------------　*/
@media screen and (max-width:768px){
nav#header-nav { width:100%; margin:0; padding:0; border:none; }
nav#header-nav ul { width:100%; margin:0; padding:50px 0 0 0; }
nav#header-nav ul li { width:100%; text-align:left; padding:15px 30px; }
nav#header-nav ul li:after { display:none }
nav#header-nav ul li a { display:block; width:100%; font-size:16px; font-weight:bold; color:#fff!important; text-align:center; }
nav#header-nav ul li:last-child a { display:none; }
nav#header-nav ul.flex { display:block; }

/*ヘッダーまわりはご自由に*/
#sp_menu {padding:0px; background:none; position:fixed; top:0; z-index:998;/*最前面に*/ }
#nav-drawer {position:relative; }
/*チェックボックス等は非表示に*/
.nav-unshown {display:none; }
/*アイコンのスペース*/
#nav-open { display:inline-block; z-index:999;/*最前面に*/ position:absolute; top:0; right:0; width:50px; height:50px; vertical-align:middle; float:right; background:transparent; }
/*ハンバーガーアイコンOpen前*/
#nav-open,
#nav-open span {display:inline-block; transition:all .4s; box-sizing:border-box; }
#nav-open span {position:absolute; left:30%; width:40%; height:2px; background-color:#000; border-radius:4px; }
#nav-open span:nth-of-type(1) { top:16px; }
#nav-open span:nth-of-type(2) { top:24px; }
#nav-open span:nth-of-type(3) { bottom:16px; }
/*ハンバーガーアイコンOpen後*/
#nav-open.active { background-color:#000; }
#nav-open.active span { background-color:#fff; }
#nav-open.active span:nth-of-type(1) {-webkit-transform: translateY(8px) rotate(-315deg); transform: translateY(8px) rotate(-315deg); }
#nav-open.active span:nth-of-type(2) {opacity: 0; }
#nav-open.active span:nth-of-type(3) {-webkit-transform: translateY(-8px) rotate(315deg); transform: translateY(-8px) rotate(315deg); }
/*閉じる用の薄黒カバー*/
#nav-close {display: none;/*はじめは隠しておく*/ position: fixed; z-index:998; top: 0;/*全体に広がるように*/ right: 0; width: 100%; height: 100%; background: black; opacity: 0; transition: .3s ease-in-out; }
/*中身*/
#nav-content {
overflow: auto; position: fixed; top: 0; right: 0; z-index:998;/*最前面に*/ width: 90%;/*右側に隙間を作る*/ max-width: 330px;/*最大幅*/ height: 100%; background:#000;/*背景色*/ transition: .3s ease-in-out;/*滑らかに表示*/ -webkit-transform: translateX(105%); transform: translateX(105%);/*左に隠しておく*/ }
/*チェックが入ったらもろもろ表示*/
#nav-input:checked ~ #nav-close { display: block;/*カバーを表示*/ opacity: .5; }
#nav-input:checked ~ #nav-content {z-index:998; -webkit-transform: translateX(0%); transform: translateX(0%);/*中身を表示*/ box-shadow: 6px 0 25px rgba(0,0,0,.15); }
}

/*--------------------------------------------------------------------------------
 *
 *
 *
 *
 * パンくずリスト
 *
 *
 *
 *
--------------------------------------------------------------------------------*/

nav#pan { text-align:left; margin:0; padding:0 0 2px 0; }
nav#pan ol { max-width:1000px; margin:0 auto; padding:0; text-align:center;  }
nav#pan ol li { display:inline; list-style-type:none; font-size:10px; color:#a3a3a3; }
nav#pan ol li a { color:#a3a3a3; }
nav#pan ol li:before { content: " > "; }
nav#pan ol li:first-child:before { content:""; }
@media screen and (max-width:768px){
nav#pan { padding:0 0px 2px 0px; }
nav#pan ol { width:100%; }
}

/*--------------------------------------------------------------------------------
 *
 *
 *
 *
 * FV
 *
 *
 *
 *
--------------------------------------------------------------------------------*/

header#fv { width:100%; height:auto; padding-top:0; background:url(img/index/fv.png) no-repeat 50% 100% scroll,url(img/index/fv_bg.png) no-repeat 50% 50% fixed; background-size:1400px 650px, 2000px 1000px; }
header#fv #inner { width:100%; height:650px; margin:0 auto; padding:0; position:relative;
display:-webkit-box; display:-ms-flexbox; display:flex;
-webkit-box-align:center;-ms-flex-align:center; align-items:center; /*上下中央*/
-webkit-box-pack:center; -ms-flex-pack:center; justify-content:center;/*中央に配置*/
-ms-flex-wrap:wrap; flex-wrap:wrap; /*折り返す*/ }
header#fv #h1 { margin:0; padding:0; }
header#fv svg { display:block; margin:0 auto; }
header#fv h2 { text-align:center; color:#fff; font-size:38px; margin-top:20px; line-height:1.6; }
header#fv p { margin:0; padding:0; }
header#fv {  }
@media screen and (max-width:768px){
	header#fv { width:100%; height:auto; background:none; }
	header#fv #inner { width:100%; height:auto; }
	header#fv svg { width:90%; }
	header#fv h2 { font-size:20px; margin-top:20px; line-height:1.6; }
}

header#mv { width:100%; height:auto; padding-top:0; background:url(img/index/fv_bg.png) no-repeat 50% 50% fixed; background-size:2000px 1000px; }
header#mv #inner { width:1000px; height:auto; margin:0 auto; padding:70px 0 0 0; position:relative;
display:-webkit-box; display:-ms-flexbox; display:flex;
-webkit-box-align:center;-ms-flex-align:center; align-items:center; /*上下中央*/
-ms-flex-wrap:wrap; flex-wrap:wrap; /*折り返す*/  }
header#mv h1 { margin:0; padding:0; color:#fff; }
@media screen and (max-width:768px){
	header#mv { width:100%; height:auto; padding-top:50px; width:100%; height:auto; background:url(img/index/fv_sp_bg.png) no-repeat 50% 50%; background-size:cover; }
	header#mv #inner { width:100%; height:auto;}
	header#mv h1 { margin:0; padding:0; }
}

/*--------------------------------------------------------------------------------
 *
 *
 *
 *
 * コンテンツ
 *
 *
 *
 *
--------------------------------------------------------------------------------*/

/* ------------------------------共通------------------------------　*/
article {  }
section { width:100%; }

@media screen and (max-width:768px) {
	section .inner { width:90%; padding:30px 0; }
}
.video{ position:relative; width:100%; height:0; margin:0 auto; padding-top:55%; }
.video iframe{ position:absolute; top:0; left:0; width:100%; height:100%; }
.video img{ position:absolute; top:0; left:0; width:100%; height:100%; }
.frame { width:650px; height:390px; background:url(img/waku.png) no-repeat 50% 0; background-size:contain; padding:22px 20px 0 20px; margin:0 auto; }

@media screen and (max-width:768px) {
	.frame { width:100%; height:auto; background-size:contain; padding: 3.5% 4% 5% 4%; }
}

a.button { border:2px solid #000; font-weight:bold; padding:20px; text-align:center; }
a.button:hover { background:#000; color:#fff; }
@media screen and (max-width:768px) {
}

@font-face { font-family: 'TsukushiA_Gothic'; src: url("font/TsukushiA_Gothic.woff") format('woff');  }
@font-face { font-family: 'TsukushiA'; src: url("font/TsukushiA.woff") format('woff');  }


/*--------------------------------------------------------------------------------
 *
 * front-page.php
 *
--------------------------------------------------------------------------------*/
#top article {  }
#top section { padding:60px 0; }
#top .inner { width:1000px; margin:0 auto; padding:0; }
#top h2 { text-align:center; font-size:40px; font-weight:bold; font-family:'TsukushiA_Gothic'; }
#top h2,
#top h3,
#top h2 + p {  }
#top p { font-size:14px; }
@media screen and (max-width:768px) {
	#top section { padding:50px 0; }
	#top .inner { width:90%; }
	#top h2 { font-size:28px; margin-bottom:10px; }
	#top p { font-size:12px; }
}

.h2_top { text-align:center; font-size:20px!important; font-weight:bold; font-family:'TsukushiA_Gothic'; }
.h2_top:before { content:url(img/index/h2_top01.svg); margin-right:10px; position:relative; top:6px; display:inline-block; width:20px; height:30px; }
.h2_top:after { content:url(img/index/h2_top02.svg); margin-left:10px; position:relative; top:6px; display:inline-block; width:20px; height:30px; }
h2.kirakira { position:relative; }
h2.kirakira:before { content:url(img/index/kirakira_left.svg); margin-right:10px; position:relative; top:-10px; display:inline-block; width:20px; height:30px; }
h2.kirakira:after { content:url(img/index/kirakira_right.svg); margin-left:10px; position:relative; top:-10px; display:inline-block; width:20px; height:30px; }

@media screen and (max-width:768px) {
	.h2_top { font-size:18px!important; }
	.h2_top:before { top:2px; width:10px; height:20px; }
	.h2_top:after { top:2px; width:10px; height:20px; }
}
@media screen and (max-width:320px) {
	h2.kirakira:before { content:""; margin-right:0; width:0; height:0; }
	h2.kirakira:after { content:""; margin-left:0; width:0; height:0; }
}

a.read_more { display:block; width:300px; margin:40px auto 0 auto; border:2px solid #000; padding:20px; font-size:14px; text-align:center; color:#000; position:relative; border-radius:100px; font-weight:bold; }
a.read_more:hover { background:#000; color:#fff; }
a.read_more:before { position:absolute; content:""; width:100px; height:2px; background:#000; top:0; bottom:0; right:-50px; margin:auto; transition: all 300ms 0s ease;}
a.read_more:after { position:absolute; content:""; border-width:5px 0 0 9px; border-style: solid; border-color:transparent transparent transparent #000; top:-4px; bottom:0; right:-54px; width:0; height:0; margin:auto; transition: all 300ms 0s ease;}
a.read_more:hover:before { right:-100px!important; transition: all 300ms 0s ease; opacity:0 }
a.read_more:hover:after { right:-102px!important; transition: all 300ms 0s ease; opacity:0 }
@media screen and (max-width:768px) {
	a.read_more { width:230px; padding:15px; font-size:12px; }
	a.read_more:before { width:30px; right:-15px; }
	a.read_more:after { right:-17px; }
	a.read_more:hover:before { right:-20px!important; }
	a.read_more:hover:after { right:-22px!important; }
}

#info {  }

#reason_why h2 {  }
#reason_why ul {display:-webkit-box; display:-ms-flexbox; display:flex;
-webkit-box-pack:center; -ms-flex-pack:center; justify-content:center;/*中央に配置*/
/*-webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between;左右に配置*/
/*-webkit-box-orient:horizontal; -webkit-box-direction:reverse; -ms-flex-direction:row-reverse; flex-direction:row-reverse;右から配置*/
/*-webkit-box-align:center;-ms-flex-align:center; align-items:center; 上下中央*/
-ms-flex-wrap:wrap; flex-wrap:wrap; /*折り返す*/ }
#reason_why ul li:nth-child(odd) { width:45%; }
#reason_why ul li:nth-child(even) { width:55%; padding-left:50px }
@media screen and (max-width:768px) {
	#reason_why ul li:nth-child(odd) { width:100%; }
	#reason_why ul li:nth-child(even) { width:100%; padding-left:0; padding-top:15px; }
	#reason_why ul li:nth-child(even) p { text-align:center; }
	#reason_why ul li:nth-child(even) .small { font-size:10px }
}

#kikaku { background:#57F7B8 url(img/page/kikaku_bg.png) no-repeat 50% 50% !important; width:100%!important }
#kikaku .h2_top {  }
#kikaku h2 {   }
#kikaku ul {display:-webkit-box; display:-ms-flexbox; display:flex;
-webkit-box-pack:center; -ms-flex-pack:center; justify-content:center;/*中央に配置*/
/*-webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between;左右に配置*/
-webkit-box-orient:horizontal; -webkit-box-direction:reverse; -ms-flex-direction:row-reverse; flex-direction:row-reverse;/*右から配置*/
/*-webkit-box-align:center;-ms-flex-align:center; align-items:center; 上下中央*/
-ms-flex-wrap:wrap; flex-wrap:wrap; /*折り返す*/ }
#kikaku ul li:nth-child(odd) { width:45%; }
#kikaku ul li:nth-child(even) { width:55%; padding-right:50px }
@media screen and (max-width:768px) {
	#kikaku ul li:nth-child(odd) { width:100%; }
	#kikaku ul li:nth-child(even) { width:100%; padding-right:0; padding-top:15px; }
	#kikaku ul li:nth-child(even) p { text-align:center; }
	#kikaku ul li:nth-child(even) .small { font-size:10px }
}

#concept { background-color:#faf6e8; }
#concept .inner { position:relative; }
#concept .inner:before { position:absolute; content:"ENJOY MUSIC"; font-family:'TsukushiA_Gothic'; color:#f5edd3; font-size:120px; z-index:99; text-align:center; width:100%; line-height:1.2; top:0; }
#concept p.h2_top,
#concept h2,
#concept ul { position:relative; z-index:100 }
#concept h3 { font-size:20px!important; }
#concept ul { width:1000px; margin:0 auto;
display:-webkit-box; display:-ms-flexbox; display:flex;
-webkit-box-pack:center; -ms-flex-pack:center; justify-content:center; /*中央に配置*/
/*-webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between;左右に配置*/
/*-webkit-box-orient:horizontal; -webkit-box-direction:reverse; -ms-flex-direction:row-reverse; flex-direction:row-reverse;右から配置*/
/*-webkit-box-align:center;-ms-flex-align:center; align-items:center; 上下中央*/
-ms-flex-wrap:wrap; flex-wrap:wrap; /*折り返す*/ }
#concept ul li { width:30%; margin:30px 1.666% 0 1.666%; position:relative; border:2px solid #000; border-radius:10px; background:#fff; box-shadow:3px 3px 0 rgba(0,0,0,1); }
#concept ul li img.img { border-radius:8px 8px 0 0 }
#concept ul li img.number { text-align:center; margin:0; position:absolute; width:88px; height:88px; top:-50px; left:50%; transform:translateX(-50%); -webkit-transform:translateX(-50%); -ms-transform:translateX(-50%); }
#concept ul li h3 { text-align:center; font-size:20px; font-weight:bold; line-height:1.5; font-family:'TsukushiA_Gothic'; margin:10px 0; }
#concept ul li p { margin:10px 0 0 0; padding:0 20px 15px 20px; }
@media screen and (max-width:768px){
	#concept .inner:before { font-size:40px; top:-20px; }
	#top #concept ul { width:100%; }
	#concept ul { width:90%; }
	#concept ul li { width:100%; margin:30px auto 0 auto!important; position:relative; }
	#concept ul li:first-child { margin:10px auto 0 auto!important; }
	#concept ul li img.number { width:60px; height:60px; top:-30px; }
	#concept ul li img.img { width:100%; }
	#concept ul li h3 { font-size:20px; }
	#concept ul li p { margin:0; }
}

#course { background:url(img/index/bg.png) repeat 50% 50%; }
#course ul { margin-top:30px;
display:-webkit-box; display:-ms-flexbox; display:flex;
/*-webkit-box-pack:center; -ms-flex-pack:center; justify-content:center;中央に配置*/
/*-webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between;左右に配置*/
/*-webkit-box-orient:horizontal; -webkit-box-direction:reverse; -ms-flex-direction:row-reverse; flex-direction:row-reverse;右から配置*/
/*-webkit-box-align:center;-ms-flex-align:center; align-items:center; 上下中央*/
-ms-flex-wrap:wrap; flex-wrap:wrap; /*折り返す*/ }
#course ul li { width:22%; margin:30px 1.5% 0 1.5%; position:relative; }
#course ul li:nth-child(1),
#course ul li:nth-child(2),
#course ul li:nth-child(3),
#course ul li:nth-child(4) { margin-top:0; }
#course ul li p { position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); -webkit-transform:translate(-50%, -50%); -ms-transform:translate(-50%, -50%); color:#fff; text-align:center; margin:0; font-size:24px; width:100%; font-family:'TsukushiA_Gothic'; line-height:1.5; }
@media screen and (max-width:768px){
	#course ul { margin-top:20px; }
	#course ul li { width:48%; margin:4% 0 0 0!important; }
	#course ul li:nth-child(even) { margin-left:4%!important; }
	#course ul li p { font-size:14px; }
}

/*オンマウスで画像が拡大するアニメーション*/
a.img_zoom { overflow:hidden; width:220px; height:220px; border-radius:110px; display:block; }
a.img_zoom img { width:220px; transition:0.5s;}
a.img_zoom:hover img {transform:scale(1.1, 1.1); }
@media screen and (max-width:768px){
	a.img_zoom { width:100%; max-width:360px; height:auto; margin:0 auto; }
	a.img_zoom img { width:100%; max-width:100%; }
	a.img_zoom p { font-size:16px!important; }
}

#access { background:#faf6e8 }
#access .inner { position:relative; }
#access p.h2_top,
#access h2,
#access ul { position:relative; z-index:100; }
#access .inner:before { position:absolute; content:"ACCESS"; font-family:'TsukushiA_Gothic'; color:#f5edd3; font-size:120px; z-index:99; text-align:center; width:100%; line-height:1.2; top:0; }
#access ul { margin-top:30px;
display:-webkit-box; display:-ms-flexbox; display:flex;
/*-webkit-box-pack:center; -ms-flex-pack:center; justify-content:center;中央に配置*/
/*-webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between;左右に配置*/
/*-webkit-box-orient:horizontal; -webkit-box-direction:reverse; -ms-flex-direction:row-reverse; flex-direction:row-reverse;右から配置*/
/*-webkit-box-align:center;-ms-flex-align:center; align-items:center; 上下中央*/
-ms-flex-wrap:wrap; flex-wrap:wrap; /*折り返す*/ }
#access ul li { width:22%; margin:30px 1.5% 0 1.5%; background:#fff; position:relative; border:2px solid #000; position:relative; border-radius:10px; box-shadow:3px 3px 0 rgba(0,0,0,1); }
#access ul li:nth-child(1),
#access ul li:nth-child(2),
#access ul li:nth-child(3),
#access ul li:nth-child(4) { margin-top:0; }
#access ul li .number { position:absolute; width:80px; height:80px; border-radius:40px; background:#000; color:#fff; top:-50px; left:-20px; display:table; }
#access ul li .number p { margin-top:23px; line-height:1.4; }
#access ul li h3 { text-align:center; margin:0; font-size:16px; font-family:'TsukushiA_Gothic'; }
#access ul li p { text-align:center; margin:10px 0 0 0; font-size:12px; }
#access ul li .li_inner { padding:20px 15px 30px 15px; }

#access iframe { width:100%; height:200px; border-radius:10px 10px 0 0 }
@media screen and (max-width:768px) {
	#access ul li { width:100%; margin:20px 0 0 0!important; }
	#access .inner:before { font-size:30px; }
	#access iframe { height:160px }
}

#cta { background:url(img/index/cta_bg.png) no-repeat 50% 100% scroll,url(img/index/bg.png) repeat 50% 50% fixed; padding:60px 0; }
#cta .inner { width:1000px; margin:0 auto; position:relative; }
#cta h2 { text-align:center; font-size:40px; font-weight:bold; font-family:'TsukushiA_Gothic'; }
#cta p { font-size:16px; text-align:center; font-weight:bold }
#cta p.icon { background:#EB2929; color:#fff; position:absolute; width:80px; height:80px; border-radius:40px; top:-20px; left:-30px; line-height:1.4; padding-top:20px; font-size:14px }
#cta a.cta_button { width:360px; height:auto; line-height:80px; text-align:center; border:2px solid #000; border-radius:50px; font-size:30px; font-family:'TsukushiA_Gothic'; margin:20px auto 0 auto; padding:0; display:block; background:#57F7B8; color:#000; box-shadow:3px 5px 0 rgba(0,0,0,1); position:relative; letter-spacing:0; }
#cta a.tel { margin-top:30px; display:block; font-size:32px; color:#000; line-height:1; font-family:'TsukushiA_Gothic'; text-align:center; }
#cta a.tel i { margin-right:5px }
#cta a.tel small { font-size:16px; }
@media screen and (max-width:768px) {
	#cta { background:url(img/index/bg.png) repeat 50% 50%; padding:30px 0 30px 0; }
	#cta .inner { width:90%; }
	#cta h2 { font-size:28px; }
	#cta p { font-size:14px; margin-top:15px; }
	#cta p.icon { width:60px; height:60px; border-radius:30px; top:-10px; left:-10px; padding-top:15px; font-size:10px; }
	#cta .inner { margin:0 auto; padding:0; }
	#cta a.cta_button { width:90%; line-height:70px; font-size:20px; margin-top:20px; }
	#cta a.tel { width:90%; margin:20px auto 0 auto; background:#000; font-size:20px; color:#fff; padding:20px 0; border-radius:100px; }
	#cta a.tel small { font-size:10px; }


}

/* ------------------------------アコーディオン------------------------------　*/
dl.accordion , .accordion dt, .accordion dd { margin:0; padding:0; }
dl.accordion { margin:0; padding-bottom:0; }
.accordion dt { display:block; width:50%; margin:30px auto 0 auto; border:2px solid #000; padding:15px; font-size:14px; text-align:center; color:#000; position:relative; border-radius:60px; font-weight:bold; }
.accordion dt:hover { background:#000; color:#fff; }
.accordion dt:before { position:absolute; content:""; width:2px; height:30px; background:#000; top:0; bottom:-70px; right:0; left:0; margin:auto; transition: all 300ms 0s ease;}
.accordion dt:after { position:absolute; content:""; border-width:0 5px 9px; border-style: solid; border-color:transparent transparent transparent #000; top:0; bottom:-95px; right:-9px; left:0; width:0; height:0; margin:auto; transition: all 300ms 0s ease;}
.accordion dt:hover:before { bottom:-120px!important; transition: all 300ms 0s ease; opacity:0 }
.accordion dt:hover:after { bottom:-145px!important; transition: all 300ms 0s ease; opacity:0 }
.accordion dd { width:100%; height:auto; display:none; margin:0; padding:30px 0 0 0; }
.accordion dd p { width:100%; color:#000000; }
.accordion dd img { border-radius:20px; }
.accordion br { display:inline; }
.accordion dt,
.accordion dd { font-size:14px; }
@media screen and (max-width:768px){
	dl.accordion { font-size:14px; }
	.accordion dt { width:100%; padding:15px; font-size:12px; margin-top:15px; }
	.accordion dt:before { width:2px; height:15px; bottom:-50px; }
	.accordion dt:after { bottom:-70px; right:-7px }
	.accordion dd p { font-size:14px; }
	.accordion dd { padding:20px 00px 10px 0px; }
}

/*--------------------------------------------------------------------------------
 *
 * original_page
 *
--------------------------------------------------------------------------------*/

header#mv .text { background:url(img/page/h1_bg.svg) no-repeat 50% 60%; background-size:450px auto; padding:100px 0!important; }
header#mv .text p { text-align:center; width:100%; font-size:80px; line-height:1.5;
font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; font-style:italic; font-weight:bold; letter-spacing:5px;  }
header#mv .text h1 { width:100%; color:#000; text-align:center; 
font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; font-weight:bold; }
@media screen and (max-width:768px){
	header#mv { width:100%; height:auto; padding-top:0; }
	header#mv #inner { width:100%; height:auto; padding-top:0;}
	header#mv .text p { font-size:50px; }
	header#mv img { padding-top:50px; }
}

#page.original_page { background:#faf6e8; margin:0; padding:0; }
#page.original_page article { width:100%; padding:0; box-sizing:none; }
#page.original_page section:nth-of-type(1) {  }
#page.original_page section { width:1000px; margin:0 auto; padding:60px 0; box-shadow:none; background:url(img/page/h2_bg.png) no-repeat 50% 40px; }
#page.original_page section:nth-of-type(even) { width:100%; background:#F5EDD3; padding:60px 0; }
#page.original_page .inner { width:1000px; margin:0 auto; padding:50px 100px; box-shadow:0 0 30px rgba(0,0,0,0.1); background:#fff; }
#page.original_page h2 + .inner { margin-top:30px; }
#page.original_page .inner + .inner { margin-top:30px; }
#page.original_page h2 { font-family:'TsukushiA_Gothic'; text-align:center; font-size:40px; }
#page.original_page h2 + p { text-align:center; }
#page.original_page img + h2 { margin-top:60px; }
#page.original_page h3 { text-align:center; font-weight:bold; font-size:26px; font-family:'TsukushiA_Gothic'; }
#page.original_page h3 + .video { margin-top:30px }

@media screen and (max-width:768px) {
	#page.original_page {  }
	#page.original_page section { width:100%; padding:30px 0; }
	#page.original_page section:nth-of-type(even) { width:100%; padding:30px 0; }
	#page.original_page section:nth-of-type(even) .inner { width:90%; padding:20px; }
	#page.original_page .inner { width:90%; padding:20px; }
	#page.original_page h2 { font-size:32px; }
	#page.original_page h2 + .inner { margin-top:20px; }
	#page.original_page h3 { font-size:20px; }
	#page.original_page h3 + .video { margin-top:15px }
}

#page.original_page .online_lesson {  }
#page.original_page .online_lesson ul { margin-top:20px;
display:-webkit-box; display:-ms-flexbox; display:flex;
/*-webkit-box-pack:center; -ms-flex-pack:center; justify-content:center;中央に配置*/
/*-webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between;左右に配置*/
/*-webkit-box-orient:horizontal; -webkit-box-direction:reverse; -ms-flex-direction:row-reverse; flex-direction:row-reverse;右から配置*/
/*-webkit-box-align:center;-ms-flex-align:center; align-items:center; 上下中央*/
-ms-flex-wrap:wrap; flex-wrap:wrap; /*折り返す*/}
#page.original_page .online_lesson li { width:32%; margin-right:2%; text-align:center; background:#F7E53D;  padding:20px 10px; border:2px solid #000; font-weight:bold; border-radius:50px; } 
#page.original_page .online_lesson li:last-child { margin-right:0 } 
#page.original_page .online_lesson li i { margin-right:6px } 
@media screen and (max-width:768px) {
	#page.original_page .online_lesson ul { margin-top:10px } 
	#page.original_page .online_lesson li { width:100%; margin-right:0; margin-top:10px; padding:10px; } 
	#page.original_page .online_lesson a.read_more { margin-top:20px; } 
}

ul.mokuji { width:1000px; margin:30px auto 0 auto; }
ul.mokuji li:nth-child(3n+1) { margin-left:0; }
ul.mokuji li:nth-child(3n+3) { margin-right:0; }
ul.mokuji li:last-child { margin-right:0; }
ul.mokuji100 li { float:none!important; width:100%!important; height:auto!important; margin-bottom:3%!important; margin-left:0!important; }
ul.mokuji100 li a { text-align:left!important; }
ul.mokuji li { display:table; position:relative; float:left; width:31.5%; height:66px; margin-bottom:2%; margin-left:2%; line-height:1.4; }
ul.mokuji li a { display:table-cell; padding:12px 5px 15px; border:2px solid #000; font-weight:600; font-size:16px; color:#000; text-align:center; vertical-align:middle; transition: 0.1s ease-in-out; }
ul.mokuji li a:hover { background:#000; color:#fff; }
ul.mokuji li a:before { position:absolute; content:""; width:2px; height:15px; background:#000; top:0; bottom:-50px; right:0; left:0; margin:auto; transition: all 300ms 0s ease;}
ul.mokuji li a:after { position:absolute; content:""; border-width:0 5px 9px; border-style: solid; border-color:transparent transparent transparent #000; top:0; bottom:-75px; right:-8px; left:0; width:0; height:0; margin:auto; transition: all 300ms 0s ease;}
ul.mokuji li a:hover:before { bottom:-120px!important; transition: all 300ms 0s ease; opacity:0 }
ul.mokuji li a:hover:after { bottom:-135px!important; transition: all 300ms 0s ease; opacity:0 }

@media screen and (max-width:768px){
	ul.mokuji { width:90%; margin:30px auto 0 auto; }
	ul.mokuji li { float:none; width:100%; height:50px; margin-left:0; margin-bottom:10px; }
	ul.mokuji li a { font-size:12px; }
}

ul.list {  }
ul.list li { padding:20px 0; font-size:20px; border-bottom:1px solid #e5e5e5; }
ul.list li:before {  }
ul.list li i { margin-right:8px; }
@media screen and (max-width:768px){
	ul.list li { padding:15px 0; font-size:14px; }
}

/*--------------------------------------------------------------------------------
 *
 * original_page page_〇〇
 *
--------------------------------------------------------------------------------*/

ul.reason_mokuji { margin-top:30px; }
ul.reason_list { width:1000px; margin:50px auto 0 auto; 
display:-webkit-box; display:-ms-flexbox; display:flex;
/*-webkit-box-pack:center; -ms-flex-pack:center; justify-content:center;中央に配置*/
/*-webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between;左右に配置*/
/*-webkit-box-align:center;-ms-flex-align:center; align-items:center;上下中央*/
-ms-flex-wrap:wrap; flex-wrap:wrap; /*折り返す*/ }
ul.reason_list li { width:47%; background:#fff; box-shadow:0 0 30px rgba(0,0,0,0.1); margin-bottom:6%; }
ul.reason_list li:nth-child(4n+1) {  }
ul.reason_list li:nth-child(even) { margin-left:6%; }
ul.reason_list li .padding { padding:30px; }
ul.reason_list li h3 { font-size:20px!important; text-align:left!important; line-height:1.7!important }
@media screen and (max-width:768px){
	ul.reason_list { width:90%; margin:30px auto 0 auto; }
	ul.reason_list li { width:100%; }
	ul.reason_list li:nth-child(even) { margin-left:0%; }
}

@media screen and (max-width:768px){
	.reason section:nth-of-type(1) { width:90%!important; }
	.charge section:nth-of-type(1) { width:90%!important; }
}


ul.voice_header { background:#fff; border-bottom:solid #000 1px;
padding:0 100px 30px 100px; position:relative;
display:-webkit-box; display:-ms-flexbox; display:flex;
-webkit-box-pack:center; -ms-flex-pack:center; justify-content:center;/*中央に配置*/
/*-webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between;左右に配置*/
/*-webkit-box-orient:horizontal; -webkit-box-direction:reverse; -ms-flex-direction:row-reverse; flex-direction:row-reverse;右から配置*/
-webkit-box-align:center;-ms-flex-align:center; align-items:center; /*上下中央*/
-ms-flex-wrap:wrap; flex-wrap:wrap; /*折り返す*/ }
ul.voice_header li:nth-child(odd) { width:30%; }
ul.voice_header li:nth-child(even) { width:70%; padding-left:30px; }
ul.voice_header li img { border-radius:500px; }
ul.voice_header li h3,
ul.voice_header li p { text-align:center; }
ul.voice_header + p { margin-top:30px; }
@media screen and (max-width:768px) {
	ul.voice_header { padding:0 15px 15px 15px; border:none; }
	ul.voice_header li:nth-child(odd) { width:100%; }
	ul.voice_header li:nth-child(even) { width:100%; padding:20px 0; }
	ul.voice_header li img { width:160px; height:160px; padding:0; margin:0 auto; }
	ul.voice_header + p { margin-top:0px; }
}

ul.hiyo { width:700px; margin:30px auto 0 auto; position:relative;
display:-webkit-box; display:-ms-flexbox; display:flex;
/*-webkit-box-pack:center; -ms-flex-pack:center; justify-content:center;中央に配置*/
/*-webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between;左右に配置*/
/*-webkit-box-align:center;-ms-flex-align:center; align-items:center;上下中央*/
-ms-flex-wrap:wrap; flex-wrap:wrap; /*折り返す*/ }
ul.hiyo li { width:200px; height:200px; border:2px solid #000; border-radius:100px; margin-right:50px; overflow:hidden; }
ul.hiyo li:last-child { margin-right:0px; }
ul.hiyo i { font-size:30px; margin:0; padding:0; }
ul.hiyo h3 { height:98px; text-align:center; background:#57F7B8; font-weight:bold; padding-top:20px; }
ul.hiyo p { height:98px; text-align:center; background:#fff; margin:0; font-weight:bold; padding-top:20px; line-height:1.2; }
ul.hiyo li:nth-child(3n+1) img.plus { position:absolute; top:88px; left:215px; }
ul.hiyo li:nth-child(3n+2) img.plus { position:absolute; top:88px; left:465px; }
@media screen and (max-width:768px){
	ul.hiyo { width:100% }
	ul.hiyo li { width:100%; height:auto; margin:0 auto 30px auto; }
	ul.hiyo li:last-child { margin-bottom:0px; }
	ul.hiyo i { font-size:20px; margin-right:5px }
	ul.hiyo h3 { height:auto; padding:10px 0; }
	ul.hiyo h3 br { display:none }
	ul.hiyo p { height:auto; padding:10px 0; }
	ul.hiyo p br { display:none }
	ul.hiyo li:nth-child(3n+1) img.plus { top:88px; left:50%; transform:translateX(-50%); -webkit-transform:translateX(-50%); -ms-transform:translateX(-50%); }
	ul.hiyo li:nth-child(3n+2) img.plus { top:200px; left:50%; transform:translateX(-50%); -webkit-transform:translateX(-50%); -ms-transform:translateX(-50%); }
}

ul.hiyo_tokuten { width:700px; margin:30px auto 0 auto;
display:-webkit-box; display:-ms-flexbox; display:flex;
-webkit-box-pack:center; -ms-flex-pack:center; justify-content:center;/*中央に配置*/
/*-webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between;左右に配置*/
/*-webkit-box-align:center;-ms-flex-align:center; align-items:center;上下中央*/
-ms-flex-wrap:wrap; flex-wrap:wrap; /*折り返す*/ }
ul.hiyo_tokuten li { width:220px; background:#000; color:#fff; margin-right:20px; padding:20px; text-align:center; border-radius:100px }
ul.hiyo_tokuten li p { font-weight:bold }
ul.hiyo_tokuten li i { margin-right:5px; }
ul.hiyo_tokuten li:last-child { margin-right:0px; }
@media screen and (max-width:768px){
	ul.hiyo_tokuten { width:100%; margin:30px auto 0 auto; }
	ul.hiyo_tokuten li { width:100%; margin:0 0 10px 0; }
	ul.hiyo_tokuten li:last-child { margin-bottom:0px; }
}

table { width:100%; font-size:14px; margin-top:30px; border:2px solid #000; }
table tr { border-bottom:1px solid #e5e5e5; }
table th,
table td { padding:20px 0; font-size:16px; text-align:center;  }
table th {font-weight:bold; color:#000; background:#57F7B8; }
table th { border-right:1px solid #fff; }
table td { border-right:1px solid #e5e5e5; vertical-align:middle;}
@media screen and (max-width:768px) {
	table { font-size:12px;  }
	table th { padding:15px 0; }
	table td { padding:15px 0 15px 15px; }
	table th,
	table td { padding:15px 0; font-size:12px; text-align:center;  }
}

/* ------------------------------ースタッフ紹介------------------------------　*/
#page.original_page #teacher_list ul { margin-top:30px;
display:-webkit-box; display:-ms-flexbox; display:flex;
/*-webkit-box-pack:center; -ms-flex-pack:center; justify-content:center;中央に配置*/
/*-webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between;左右に配置*/
/*-webkit-box-align:center;-ms-flex-align:center; align-items:center;上下中央*/
-ms-flex-wrap:wrap; flex-wrap:wrap; /*折り返す*/ }
#page.original_page #teacher_list ul li { width:16.66%; padding:20px; position:relative; }
#page.original_page #teacher_list ul li:hover { opacity:0.6; }
#page.original_page #teacher_list ul li img { width:120px; height:120px; object-fit:cover; border-radius:100px; margin:0 auto 10px auto; }
#page.original_page #teacher_list ul li h3 { text-align:center; font-size:16px; }
#page.original_page #teacher_list ul li p { text-align:center; font-size:12px; margin-top:0 }
#page.original_page #teacher_list ul li a { position:absolute; width:100%; height:100%; top:0; left:0; }

@media screen and (max-width:768px){
	#page.original_page #teacher_list ul li { width:33.33%; }
}
@media screen and (max-width:460px){
	#page.original_page #teacher_list ul li { width:50%; padding:10px; }
}

#page.original_page .teacher_profile ul {
display:-webkit-box; display:-ms-flexbox; display:flex; -webkit-box-orient:horizontal; -webkit-box-direction:reverse; -ms-flex-direction:row-reverse; flex-direction:row-reverse;
/*-webkit-box-pack:center; -ms-flex-pack:center; justify-content:center;中央に配置*/
-webkit-box-pack:justify; -ms-flex-pack:justify; justify-content:space-between;/*左右に配置*/
/*-webkit-box-align:center;-ms-flex-align:center; align-items:center;上下中央*/
-ms-flex-wrap:wrap; flex-wrap:wrap; /*折り返す*/  }
#page.original_page .teacher_profile ul li:nth-child(1) { width:40%; }
#page.original_page .teacher_profile ul li:nth-child(2) { width:60%; padding-right:30px; }
#page.original_page .teacher_profile ul h2 { background:none; margin-top:0; padding:0; border-left:none; line-height:1; position:relative; z-index:1; text-align:left; font-size:32px; }
#page.original_page .teacher_profile ul h2 + p { margin-top:10px; color:#c1b1b1; font-weight:bold; letter-spacing:5px }
#page.original_page .teacher_profile ul p { font-size:14px; text-align:left; }
#page.original_page .teacher_profile ul img { margin:0 auto; position:relative; z-index:1;}

@media screen and (max-width:768px){
	#page.original_page .teacher_profile section .inner  { padding:10px 20px 30px 20px; }
	#page.original_page .teacher_profile ul li:nth-child(1) { width:100%; }
	#page.original_page .teacher_profile ul li:nth-child(2) { width:100%; margin-top:20px; padding-right:0; }
	#page.original_page .teacher_profile ul li:nth-child(1) img { max-width:500px; width:100%; height:300px; margin:0 auto; object-fit:cover; object-position:50% 10%; font-family: 'object-fit:cover; object-position:50% 0;';/*ie対応*/ }
	#page.original_page .teacher_profile ul p { font-size:12px; }
}

/*--------------------------------------------------------------------------------
 *
 *
 *
 *
 * 問い合わせフォーム
 *
 *
 *
 *
--------------------------------------------------------------------------------*/
dl.form{ width:100%; margin:30px 0 0 0; }
dl.form dt,dl.form dd { padding:30px 0; }
dl.form dt { clear:left; float:left; width:33%; font-size:14px; border-top:1px solid #ccc; }
dl.form dt:first-child { border-top:0; }
dl.form dd { margin-left:33%; border-top:1px solid #ccc; }
dl.form dt:first-child,
dl.form dt:first-child + dd { border-top:0; }

@media screen and (max-width:768px){
	dl.form dt,dl.form dd { padding:0; }
	dl.form dt { clear:both; float:none; width:100%; font-size:12px; border-top:1px solid #ccc; padding:20px 0 10px 0; }
	dl.form dd { margin-left:0%; border-top:none; padding-bottom:20px; }
}

/* ------------------------------プレースホルダーの色・サイズ指定------------------------------　*/
input::-webkit-input-placeholder { color:#999999; font-size:14px; }
input:-moz-placeholder { color:#999999; font-size:14px; }
textarea::-webkit-input-placeholder { color:#999999; font-size:14px; }
textarea:-moz-placeholder { color:#999999; font-size:14px; }

/* ------------------------------コンタクトフォーム７------------------------------　*/
div.wpcf7 { display:block; width:100%; margin:0 auto!important; box-shadow:none; background:transparent; }
div.wpcf7 p { padding:0; margin:0; line-height:2; }
div.wpcf7 input, .wpcf7 textarea , .wpcf7 select { width:100%; border:1px solid #dce5eb; padding:25px; font-size:16px; border-radius:2px; background:#f1f5f7; }
div.wpcf7 textarea { height:215px; }
div.wpcf7 select { height:60px; padding:15px; }
.wpcf7 input:focus, .wpcf7 textarea:focus { border:1px solid #009de1; }
.wpcf7-captchac { border:1px solid #ccc; }
span.wpcf7-list-item { margin:0!important; }

@media screen and (max-width:768px){
	div.wpcf7 { width:100%; }
	div.wpcf7 p { margin:0; }
	div.wpcf7 input, .wpcf7 textarea , .wpcf7 select { padding:15px; }

}

/* ------------------------------エラー個所をわかりやすく表示------------------------------　*/
.wpcf7 .wpcf7-not-valid { background:#ffb6c1; }
.wpcf7 span.wpcf7-not-valid-tip { font-size:80%; }
.wpcf7 .wpcf7-response-output {margin:10px 0 0; padding:8px 35px 8px 14px; text-shadow:0 1px 0 rgba(255, 255, 255, 0.5);
    -webkit-border-radius: 4px; -moz-border-radius:4px; border-radius:4px; }
.wpcf7 .wpcf7-validation-errors { color:#B94A48; background-color:#F2DEDE; border:1px solid #EED3D7;}
.wpcf7 .wpcf7-mail-sent-ok { color:#3A87AD; background-color:#D9EDF7; border:1px solid #BCE8F1;}
/* 必須赤色表示 */
.wpcf7 .required { color: #000000;}
/* 任意緑色表示 */
.wpcf7 .any{ color: #080;}
select { background:#ffffff; border:1px solid #cccccc; border-radius:3px; color:#0C2245; font-size:14px; height:40px; line-height:30px; text-align:left; text-indent:5px; vertical-align:middle; width:100%; }
.hissu{ background:#cd4a38; color:#ffffff; margin:0 0 0 5px; padding:3px 7px; font-weight:bold; border-radius:3px; font-size:10px; }
.nini{ background:#777777; color:#ffffff; margin:0 0 0 5px; padding:3px 7px; font-weight:bold; border-radius:3px; font-size:10px; }

/* ------------------------------送信ボタン------------------------------　*/
div.wpcf7 input[type="submit"] {  }
div.wpcf7 input.wpcf7-submit { -webkit-appearance:none; margin:0 auto; background:none; display:block; font-size:16px; width:100%; height:100px; margin:0 auto; border:2px solid #fff!important; border-radius:5px; color:#fff; background:linear-gradient(-135deg , #d61618, #d61618); }
div.wpcf7 input.wpcf7-submit:hover { border:2px solid #fff; background:linear-gradient(135deg , #d61618, #d61618); color:#fff; transition:.3s ease; }

/* ------------------------------チェックボックスのデザイン------------------------------　*/
input[type=checkbox] { display:none; }
.wpcf7-list-item  { padding:10px 0; }
.wpcf7-list-item-label { position:relative; padding:0 10px 0 50px; top:0px; }
.wpcf7-list-item-label:hover:after { border-color:#dce5eb; }
.wpcf7-list-item-label:after,  .wpcf7-list-item-label:before { position:absolute; content:""; display:block; top:50%; }
.wpcf7-list-item-label:after { left:0px; margin-top:-20px; width:36px; height:36px; border:1px solid #dce5eb; border-radius:3px; background:#f1f5f7; z-index:997; }
.wpcf7-list-item-label:before { left:15px; margin-top:-9px; width:5px; height:9px; border-right:3px solid #c1272d; border-bottom:3px solid #c1272d; transform:rotate(45deg); opacity:0; z-index:998; }
input[type=checkbox]:checked + .wpcf7-list-item-label:before { opacity:1; }

input[type=radio] { display:none; }
input[type=radio] + .wpcf7-list-item-label:after { border-radius:100%!important }
input[type=radio] + .wpcf7-list-item-label:before { border:none; width:10px; height:10px; border-radius:5px; background:#102942; left:14px; margin-top:-6px; }
input[type=radio]:checked + .wpcf7-list-item-label:before { opacity:1; }

@media screen and (max-width:768px){
	.wpcf7-list-item  { padding:10px 0; }
}

/*--------------------------------------------------------------------------------
 *
 *
 *
 *
 * フッター
 *
 *
 *
 *
--------------------------------------------------------------------------------*/
footer { position:relative; width:100%; margin:0; padding:30px 0; background:#000; z-index:999; }
#footer { max-width:1000px; margin:0 auto; }
footer p { font-size:10px; color:#fff; text-align:center; }
footer p a { color:#fff!important; }
footer img.footer_logo { margin:20px auto; }
footer ul { display:table; width:100%; }
footer ul li { display:table-cell; width:50%; float:left; }
footer li a { font-size:10px; color:#fff!important; }
address { font-size:10px; text-align:center; padding:0; background:#000; color:#fff; }

@media screen and (max-width:768px){
	footer { padding:30px 0; }
	#footer { max-width:320px; margin:0 auto; }
	footer img { margin:0 auto; }
	footer p { font-size:10px; text-align:center; margin:0; }
	footer img.footer_logo { width:100px; margin:20px auto; }
	address { font-size:10px; text-align:center; }
	footer ul { margin:0 auto; }
	footer ul li { text-align:left; }
	footer li a { font-size:10px; }
	address { font-size:10px; }
}

footer table { color:#734719; margin-bottom:10px; }
footer table tr { border-bottom:1px solid #734719; }
footer table th { width:20%; }
footer table td { width:11.4285%; text-align:center }
footer table th,
footer table td { padding:10px 0; }



/*--------------------------------------------------------------------------------
 *
 *
 *
 *
 *  固定ページ・記事ページ
 *
 *
 *
 *
--------------------------------------------------------------------------------*/

/* ------------------------------新着情報------------------------------　*/
ul.post { display:-webkit-box; display:-ms-flexbox; display:flex;
-ms-flex-wrap:wrap; flex-wrap:wrap; /*折り返す*/ }
ul.post li { width:31%; margin-top:4%; padding:0 0 20px 0; background:#fff; box-shadow:0 1px 2px rgba(0,0,0,0.3); }
ul.post li:nth-child(1) { margin-top:0%; }
ul.post li:nth-child(2) { margin-top:0%!important; }
ul.post li:nth-child(3) { margin-top:0%; }
ul.post li:nth-child(3n+2) { margin:4% 3.5% 0 3.5%; }
ul.post li p { font-size:12px; margin:0; padding:0 20px; color:#7b7b7b; }
ul.post img { width:100%; height:200px; object-fit:cover; margin:0 auto 15px auto; padding:0;
font-family: 'object-fit:cover; object-position:50% 0;';/*ie対応*/  }
ul.post li .post_title { font-size:16px; font-weight:bold; padding:10px 20px; margin:0; line-height:1.7; }
ul.post li .post_title a { color:#7b7b7b; }

@media screen and (max-width:768px){
	ul.post li { width:100%; margin:10px auto; padding:0 0 20px 0; }
	ul.post li:nth-child(1) { margin-top:0; }
	ul.post li:nth-child(2) { margin-top:10px!important; }
	ul.post li:nth-child(3) { margin-top:10px; }
	ul.post li:nth-child(3n+2) { margin:10px auto 10px auto; }
}

/*---ガテゴリーを画像の上に---*/
.relative { position:relative; }
.relative ul.post-categories { margin:0; padding:0; list-style:none; position:absolute; bottom:10px; left:20px;}
.relative ul.post-categories li { position:relative; display:inline-block; width:auto; height:30px; line-height:30px; margin:0; padding:0 1em; background-color:#333; border-radius:30px; color:#fff; text-decoration:none; -webkit-transition:.2s; transition:.2s; list-style:none; box-shadow:0 1px 2px rgba(0,0,0,0.3); }
.relative ul.post-categories li a { display:block; max-width:300px; white-space:nowrap; text-overflow:ellipsis; overflow:hidden; font-size:10px; color:#fff; }

/* ------------------------------ページャー------------------------------　*/
#pagenation{text-align:center; margin-top:30px;}
#pagenation #pagenation-list{display:inline-block;}#pagenation:after{content:".";display:block;clear:both;height:0;visibility:hidden;}#pagenation #pagenation-list li{float:left;background:none;list-style:none;padding:0;margin:0 5px 5px 0;}#pagenation #pagenation-list li:last-child{margin-left:0;}#pagenation #pagenation-list a,#pagenation #pagenation-list span{background:none;display:block;margin:0;padding:4px 9px;font-size:12px;line-height:1.5;text-align:center;}#pagenation #pagenation-list .current{background:#DEDEDE;color:#696969;border:1px solid #E3E3E3;}#pagenation #pagenation-list .omit{padding:4px 2px;color:#777777;}#pagenation #pagenation-list li a{color:#333333;border:1px solid #6B6B6B;text-decoration:none;}#pagenation #pagenation-list a:hover{background:#F0F0F0;color:#000000;border:1px solid #121212;text-decoration:none;}

/*--------------------------------------------------------------------------------
 *
 * 固定ページ・記事ページ
 *
--------------------------------------------------------------------------------*/

/* ------------------------------ベース------------------------------　*/
#header + #page { padding-top:70px; }
#page { width:100%; background:#f7f7f7; }
#page article { width:1000px; margin:0 auto; padding:60px 0; }
#page section { width:100%; background:#fff; padding:60px 100px; box-shadow:0 1px 2px rgba(0,0,0,0.3); }
@media screen and (max-width:768px){
	#page {  }
	#page article { width:90%; padding:30px 0; }
	#page section { width:100%; float:none; padding:40px 20px; }
}

/* ------------------------------投稿・固定ページ------------------------------　*/
.template_page h1 { font-size:26px; font-weight:bold; padding:10px 0; margin:0; color:#7b7b7b; text-align:center; }
.template_page h2 { font-size:24px; background:#f7f7f7; margin-top:40px; padding:20px; color: #333;border-left:9px solid #333; line-height: 40px; }
.template_page h3 { font-size:20px; letter-spacing:1.6px; margin-top:40px; padding: 0px 15px 0px;border-left: 6px solid #333;}
.template_page h4 { font-size:16px; letter-spacing:1.6px; margin-top:40px; }
.template_page p.ymd { font-size:12px; color:#7b7b7b; text-align:center; margin:0; }
.template_page p.ymd a { color:#4773BA; }
.template_page img.attachment-thumb1200 { width:100%; margin:40px auto; }
.template_page img.attachment-thumb768 { width:100%; margin:40px auto; }
@media screen and (max-width:768px){
	.template_page h1 { font-size:18px; }
	.template_page h2 { font-size:18px; padding:20px 20px; }
	.template_page h3 { font-size:18px; }
}

/* ------------------------------関連記事一覧------------------------------　*/
p.kanren { font-size:14px; margin:40px 0 0 0; padding:0; font-weight:bold; }
ul.related { margin:0; }
ul.related li { border-bottom:1px dotted #cccccc; padding:20px 0; }
ul.related img { display:block; width:100px; height:100px; float:left; margin:0 20px 0 0; padding:0; }
ul.related a { font-size:10px; font-weight:normal; }
ul.related p { margin:0; padding:0; font-size:10px; }
ul.related p.title a { font-size:14px; }


/*--------------------------------------------------------------------------------
 *
 *
 *
 *
 * その他（jQuery、文字装飾なと）
 *
 *
 *
 *
--------------------------------------------------------------------------------*/

/* ------------------------------ページトップへ戻る------------------------------　*/
#pageTop { position:fixed; bottom:20px; right:20px;}
#pageTop a { display:block; z-index:999; margin:0; padding:0; width:60px; height:60px; background:url(img/top.png) no-repeat 0 0; }
#pageTop a:hover { text-decoration:none; opacity:0.7; }
@media screen and (max-width:768px){
	#pageTop , #pageTop a { display:none; }
}

/* ------------------------------グローバルナビ上部固定------------------------------　*/
.fixed { position:fixed; top:0; width:100%; z-index:10000; }
@media screen and (max-width:768px){
.fixed { position:static; }
}

/* ------------------------------ページ下部固定CTA------------------------------　*/
#bana_sp,
#bana_sp li { display:none }
@media screen and (max-width:768px){
	#bana_sp,
	#bana_sp li { display:block; }
	#bana_sp { position:fixed; bottom:0; width:100%; height:auto; z-index:1000; }
	#bana_sp li a { background:#EA2929; width:90%; margin:0 auto; border:2px solid #000; border-bottom:none; border-radius:5px 5px 0 0;  color:#fff; padding:5px 10px; display:block; text-align:center; font-size:16px;font-family:'TsukushiA_Gothic'; }
	#bana_sp li i { margin-right:5px; }
	#bana_sp li .close_button { top:-10px; left:5px; }
	#bana_sp li small { margin-left:10px; }
}

/* ------------------------------ページ下部固定CTA_PC------------------------------　*/
#bana_pc { position:fixed; width:140px; height:auto; top:120px; right:20px; z-index:1000; }
#bana_pc li { margin-top:30px; display:table; position:relative; }
#bana_pc li a:hover img { opacity:1; }
#bana_pc li a { display:block; width:140px; height:140px; text-align:center; font-size:12px; 
display:table-cell; vertical-align:middle; border-radius:70px; color:#fff; line-height:1.5; font-weight:bold; font-family:'TsukushiA_Gothic'; }
#bana_pc li i { font-size:24px; }
#bana_pc li span.click { display:block; background:#000; color:#fff; padding:5px 0px; margin-top:5px; border-radius:100px; font-size:10px; }
#bana_pc li#campaign_info a img {animation:10s linear infinite rotation; }
#bana_pc li#campaign_info a span.text { position:absolute; width:100%; top:50%; left:50%; -ms-transform:translate(-50%,-50%); -webkit-transform:translate(-50%,-50%); transform:translate(-50%,-50%); margin:0; padding:0; }
#bana_pc li#online_info a { background:#57F6B7; color:#000; border:2px solid #000; }

@media screen and (max-width:768px){
	#bana_pc { display:none!important; }
}
@keyframes rotation{
  0%{ transform:rotate(0);}
  100%{ transform:rotate(360deg); }
}
.close_button {position:absolute; top:0; left:0; display:block; cursor:pointer; width:30px; height:30px; line-height:27px; text-align:center; border:2px solid #000; border-radius:100px; font-size:14px!important; background:#fff; z-index:1001; }

/* ------------------------------フェードインアニメーション------------------------------　*/
.sa {opacity: 0; transition: all .5s ease; } /* ノーマル */
.sa.show {opacity: 1; transform: none; } /* ノーマル */
.sa-lr {transform: translate(-100px, 0); } /* 右から */
.sa-rl {transform: translate(100px, 0); } /* 左から */
.sa-up {transform: translate(0, 100px); } /* 下から */
.sa-down {transform: translate(0, -100px); } /* 上から */
.sa-scaleUp {transform: scale(.5); } /* 縮小→拡大 */
.sa-scaleDown {transform: scale(1.5); } /* 拡大→縮小 */
.sa-rotateL {transform: rotate(180deg); } /* 左回転 */
.sa-rotateR {transform: rotate(-180deg); } /* 右回転 */

/* ------------------------------ふわふわ------------------------------　*/
@keyframes horizontal {
    0% { transform:translateX( -5px); }
  100% { transform:translateX(  0px); }
}
@keyframes vertical {
    0% { transform:translateY(-5px); }
  100% { transform:translateY(  0px); }
}
img.huwahuwa { animation: horizontal 2s ease-in-out infinite alternate; }
img.huwahuwa { animation: vertical 2s ease-in-out infinite alternate; }
img.huwa01 { animation-duration: 1.1s}
img.huwa02 { animation-duration: 1.3s}
img.huwa03 { animation-duration: 1.5s}

/* ------------------------------吹き出しを作る------------------------------　*/
.line { width:700px; margin:0 auto; }
@media screen and (max-width:768px){
	.line { width:100%; margin:30px auto 0 auto; }
}

.balloon { margin:2em 0 0 0; position:relative; }
.balloon:before,.balloon:after { clear:both; content: ""; display: block; }
.balloon figure { width:60px; height:60px; margin:0; padding:0; }
.balloon-image-left {float:left; margin-right:20px; margin-left:0; }
.balloon-image-right {float:right; margin-left:20px; }
.balloon figure img { width:100%; height:100%; border-radius:50%; border:2px solid #000; }
.balloon-image-description { padding:5px 0 0; font-size:10px; text-align:center; }

.balloon-text-right,
.balloon-text-left { position:relative; padding:15px 20px; border-radius:10px; max-width:-webkit-calc(100% - 90px); max-width:calc(100% - 90px); display:inline-block; background:#ffffff; border:2px solid #000; }
.balloon-text-right { float:left; margin-left:10px; }
.balloon-text-left { float:right; margin-right:10px; background:#fff; }
.balloon-text-left p { color:#333; }

.balloon p { margin:0!important; padding:0; font-size:14px; color:#000!important; font-weight:normal!important; }
.balloon p:last-child { margin-bottom:0; }
/* 三角部分 */
.balloon-text-right:before {position:absolute; content: ''; border:10px solid transparent; border-right:10px solid #000; top:15px; left:-20px; }
.balloon-text-right:after {position:absolute; content: ''; border:10px solid transparent; border-right:10px solid #fff; top: 15px; left:-17px; }
.balloon-text-left:before {position:absolute; content: ''; border:10px solid transparent; border-left:10px solid #000; top: 15px; right:-20px; }
.balloon-text-left:after {position:absolute; content: ''; border:10px solid transparent; border-left:10px solid #fff; top:15px; right:-17px; }
.balloon i { font-size:50px; text-align:center; padding:0; }


@media screen and (max-width:768px){
	.balloon figure {width:60px; height:60px; }
	.balloon figure img { border:1px solid #f5f5f5; }
	.balloon-text-right,.balloon-text-left { max-width: -webkit-calc(100% - 70px); max-width: calc(100% - 70px); }
	.balloon p { font-size:12px; }
}

/* ------------------------------内心------------------------------　*/
.mind {position:relative; width:90%; margin:2em 0 2em 40px; padding:20px; border-radius:30px; background:#c6ffab; }
.mind:before {position:absolute; bottom:0; left:-40px; color:#c6ffab; font-size:15px; content:"●"; }
.mind:after {position:absolute; bottom:0; left:-23px; color:#c6ffab; content:"●"; font-size:23px; }

/* ------------------------------SNS------------------------------　*/
.a2a_svg { background-color:#333!important; }

/* ------------------------------ボックス------------------------------　*/
.box { position:relative; margin:2em 0; padding:30px 20px; border:solid 3px #000; border-radius:5px; }
.box p:first-child { margin:0; }

/* ------------------------------ポイントボックス------------------------------　*/
.box_point { position:relative; margin:2em 0; padding:30px 20px; border:solid 3px #000; border-radius:8px; }
.box_point .box_title { position:absolute; display:inline-block; top:-9px; left:10px; padding:0 9px; line-height:1; font-size:16px; background:#ffffff; font-weight:bold; }
.box_point p { font-size:14px }
.box_point .box_title + p { margin:0; }

/* ------------------------------ボックス（黒）------------------------------　*/
.box_black_title {display:inline-block; background-color:#000; color:#fff; border-radius:5px 5px 0 0; padding:3px 15px; max-width:88%; line-height:1.4; padding:5px 10px; }
.box_black_body { background:#fff; border:solid 3px #000; border-radius:0 5px 5px 5px; padding:10px 20px 10px 20px; }

/* ------------------------------ボックス（赤）------------------------------　*/
.box_red_title {display:inline-block; background-color:#d70c19; color:#fff; border-radius:5px 5px 0 0; padding:3px 15px; max-width:88%; line-height:1.4; padding:5px 10px; }
.box_red_body { background:#fff7fa; border:solid 3px #d70c19; border-radius:0 5px 5px 5px; padding:10px 20px 10px 20px; }

/* ------------------------------ボックス（青）------------------------------　*/
.box_blue_title {display:inline-block; background-color:#0c56d7; color:#fff; border-radius:5px 5px 0 0; padding:3px 15px; max-width:88%; line-height:1.4; padding:5px 10px; }
.box_blue_body { background:#f7fcff; border:solid 3px #0c56d7; border-radius:0 5px 5px 5px; padding:10px 20px 10px 20px; }

/* ------------------------------バナーエリア------------------------------　*/
#bana { background-color:#faf6e8; padding:40px 0 0 0!important; }
#bana ul { display:flex; justify-content:center; flex-wrap:wrap; /*折り返す*/}
#bana ul li { max-width:330px; margin:0 10px; }
#bana ul li img { border-radius:10px; border:2px solid #000; box-shadow:3px 3px 0 rgba(0,0,0,1); }
@media screen and (max-width:768px){
	#bana { padding:20px 0 0 0!important; }
	#bana ul li { margin:10px 0 ; }
}