/*
Theme Name: fcvaize Theme
Theme URI:https://fc-vaize.com/
Author: Esolab
Author URI: https://esolab.co.jp/
Description: fcvaize Theme
Version: 1.0
License: Esolab
License URI:https://esolab.co.jp/
*/

/****************************************
① まず変数を読み込む
****************************************/

/****************************************
変数定義
****************************************/

/****************************************
② リセットを読み込む
****************************************/

/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public 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;
}

/* HTML5 display-role reset for older browsers */

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
main {
	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;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	margin-top: 0 !important;
	font-size: 62.5%;
}

body {
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	text-size-adjust: 100%;
	font-feature-settings: "palt";
	color: #000;
	font-weight: 500;
	font-family: "Noto Sans JP", sans-serif;
	letter-spacing: 0.05em;
}

img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
}

.jost {
	font-style: normal;
	font-weight: 500;
	font-family: "Jost", sans-serif;
	font-optical-sizing: auto;
}

/****************************************
③ 各メディアクエリなどを読み込む
****************************************/

/****************************************
① まず変数を読み込む
****************************************/

/* -----------------------------------
  basic
----------------------------------- */

body {
	margin: 0;
	margin-top: 0 !important;
	padding: 0;
	padding-top: 0 !important;
	background: #ffffff;
	font-size: 1.6rem;
}

body .l-container {
	max-width: 1700px;
	margin: 0 auto;
	padding: 0 4rem;
}

body .m-container {
	max-width: 1300px;
	margin: 0 auto;
	padding: 0 4rem;
}

body .sp {
	display: none;
}

body .pc {
	display: block;
}

.layer-mv {
	padding: 5em 0;
}

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

.layer-mv__inner .en {
	color: #026141;
	font-weight: 200;
}

.layer-mv__inner .ja {
	margin-top: 0.5em;
	color: #026141;
	font-weight: bold;
	font-size: 1.5em;
}

.layer-mv__inner .txt {
	margin-top: 2em;
	font-weight: 500;
	font-size: 0.9em;
}

.banner {
	margin: 5em 0;
}

.banner__inner a {
	display: flex;
	justify-content: center;
}

.banner__inner a img {
	width: 70%;
}

/* -----------------------------------
  header
----------------------------------- */

.header {
	padding-top: 3em;
	padding-bottom: 3em;
	background: #ffffff;
}

.header.scroll-nav {
	z-index: 9999;
	position: fixed;
	top: 0;
	width: 100%;
}

.header__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.header__inner__logo {
	transition: 0.2s;
}

.header__inner__logo:hover {
	opacity: 0.8;
}

.header__inner__menu {
	display: flex;
	align-items: center;
}

.header__inner__menu li {
	margin-left: 2em;
}

.header__inner__menu li a {
	color: #282929;
	text-decoration: none;
	transition: 0.2s;
}

.header__inner__menu li a:hover .en {
	color: #ffb700;
}

.header__inner__menu li a:hover .ja {
	color: #026141;
}

.header__inner__menu li a span {
	display: block;
	font-weight: bold;
	letter-spacing: 0.2em;
}

.header__inner__menu li a .en {
	margin-bottom: 0.2em;
	color: #026141;
	font-size: 0.8em;
}

.header__inner__menu li a .ja {
	font-size: 0.9em;
}

.header__inner__menu li.contact a {
	display: block;
	padding: 0.5em 2em;
	border: solid 1px #026141;
	border-radius: 2em;
	background: #026141;
	color: #ffffff;
	text-align: center;
}

.header__inner__menu li.contact a:hover {
	background: #ffffff;
	color: #026141;
}

.header__inner__menu li.contact a:hover .en {
	color: #026141;
}

.header__inner__menu li.contact a .en {
	color: #ffffff;
}

.header-sp {
	display: none;
}

/* -----------------------------------
  footer
----------------------------------- */

.footer {
	padding: 5em 0;
	background: #282929;
}

.footer__logo img {
	width: inherit;
	transition: 0.2s;
}

.footer__logo img:hover {
	opacity: 0.8;
}

.footer__menu {
	display: flex;
	margin: 5em auto 0 !important;
}

.footer__menu__left {
	display: flex;
	flex-wrap: wrap;
	width: 75%;
	line-height: 3em;
}

.footer__menu__left li {
	width: 33%;
}

.footer__menu__left li a {
	display: flex;
	align-items: center;
	color: #ffffff;
	text-decoration: none;
	transition: 0.2s;
}

.footer__menu__left li a:hover {
	color: #ffb700;
}

.footer__menu__left li a i {
	margin-right: 1em;
	color: #ffb700;
	font-size: 1.5em;
}

.footer__menu__right {
	width: 25%;
	transition: 0.2s;
}

.footer__menu__right:hover {
	opacity: 0.8;
}

.footer__btm {
	margin-top: 3em;
	border-top: solid 1px #929292;
}

.footer__btm__inner {
	display: flex;
	justify-content: space-between;
	padding: 3em 4rem 0 !important;
}

.footer__btm__inner a,
.footer__btm__inner span {
	color: #ffffff;
	font-size: 0.8em;
	letter-spacing: 0.2em;
	text-decoration: none;
}

.footer__btm__inner a {
	transition: 0.2s;
}

.footer__btm__inner a i {
	margin-right: 0.5em;
}

.footer__btm__inner a:hover {
	color: #ffb700;
}

/* -----------------------------------
  top
----------------------------------- */

.top-mv {
	height: 625px;
	background-image: url("images/top-mv.jpg");
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}

.top-mv__inner {
	display: flex;
	align-items: flex-end;
	height: 100%;
	color: #ffffff;
}

.top-mv__inner .catch {
	margin-bottom: 3em;
}

.top-mv__inner .catch .en {
	margin-bottom: 1em;
	font-size: 2.5em;
	letter-spacing: 0.1em;
}

.top-mv__inner .catch .en span {
	font-size: 0.8em;
}

.top-mv__inner .catch .ja {
	font-size: 1.8em;
	line-height: 1.6em;
	letter-spacing: 0.1em;
}

.top-news__inner .row {
	display: flex;
	align-items: center;
	margin: 2em 0;
}

.top-news__inner .row__cat {
	width: 7%;
	margin-right: 1em;
}

.top-news__inner .row__cat a {
	padding: 0.3em 1.5em;
	border: solid 1px #026141;
	border-radius: 0.5em;
	background: #026141;
	color: #ffffff;
	font-size: 0.7em;
	letter-spacing: 0.1em;
	text-align: center;
	text-decoration: none;
	transition: 0.2s;
}

.top-news__inner .row__cat a:hover {
	background: #ffffff;
	color: #026141;
}

.top-news__inner .row__date {
	width: 8%;
	margin-right: 2em;
	color: #282929;
	font-size: 0.9em;
	letter-spacing: 0.1em;
}

.top-news__inner .row__title {
	width: 60%;
}

.top-news__inner .row__title a {
	color: #282929;
	line-height: 1.4em;
	letter-spacing: 0.1em;
	text-decoration: none;
	transition: 0.2s;
}

.top-news__inner .row__title a:hover {
	color: #ffb700;
}

.top-news__inner .row__btn {
	margin-left: auto;
}

.top-news__inner .row__btn a {
	color: #282929;
	letter-spacing: 0.1em;
	text-decoration: none;
}

.top-news__inner .row__btn a i {
	margin-left: 0.5em;
}

.top-concept__inner {
	padding: 2em 4rem !important;
}

.top-concept__inner .title {
	text-align: center;
}

.top-concept__inner .title .en {
	font-weight: 600;
	font-size: 2em;
	letter-spacing: 0.2em;
}

.top-concept__inner .title .en::first-letter {
	color: #026141;
}

.top-concept__inner .title .ja {
	margin-top: 0.5em;
	font-weight: 600;
	letter-spacing: 0.2em;
}

.top-concept__inner .desc {
	margin-top: 3em;
	letter-spacing: 0.2em;
}

.top-concept__inner .desc__main {
	color: #ffb700;
	font-weight: bold;
	font-size: 1.2em;
	text-align: center;
}

.top-concept__inner .desc__sub {
	margin-top: 2em;
	line-height: 1.8em;
	text-align: center;
}

.top-concept__img {
	display: flex;
}

.top-policy {
	display: flex;
	justify-content: space-between;
	margin: 3em 0;
	margin-right: 10%;
}

.top-policy__left {
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 30%;
	padding: 0 2em;
	background: #026141;
	color: #ffffff;
}

.top-policy__left .en {
	font-weight: bold;
	font-size: 2em;
	letter-spacing: 0.2em;
}

.top-policy__left .ja {
	margin: 1em 0;
	font-size: 1.2em;
	letter-spacing: 0.2em;
}

.top-policy__left .desc {
	font-size: 0.8em;
	line-height: 1.6em;
	letter-spacing: 0.2em;
}

.top-policy__left .btn {
	margin-top: 2em;
	text-align: right;
}

.top-policy__left .btn a {
	display: inline-flex;
	align-items: center;
	padding: 0.6em 2em;
	border: solid 1px #ffffff;
	border-radius: 1.5em;
	background: #ffffff;
	color: #282929;
	font-size: 0.8em;
	letter-spacing: 0.1em;
	text-decoration: none;
	transition: 0.2s;
}

.top-policy__left .btn a:hover {
	background: #026141;
	color: #ffffff;
}

.top-policy__left .btn a:hover i {
	color: #ffffff;
}

.top-policy__left .btn a i {
	margin-right: 0.5em;
	color: #026141;
	font-size: 1.4em;
}

.top-policy__right {
	width: 65%;
}

.top-policy__right .row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 1em 0;
}

.top-policy__right .row__img {
	width: 35%;
}

.top-policy__right .row__txt {
	width: 60%;
	letter-spacing: 0.2em;
}

.top-policy__right .row__txt .num {
	font-size: 0.8em;
}

.top-policy__right .row__txt .num span {
	margin-left: 0.5em;
	color: #ffb700;
	font-size: 1.5em;
}

.top-policy__right .row__txt .title {
	margin: 1em 0;
	font-weight: bold;
	font-size: 1.2em;
}

.top-policy__right .row__txt .desc {
	font-size: 0.9em;
	line-height: 1.6em;
}

.top-class {
	margin-top: 5em;
}

.top-class__inner .title {
	text-align: center;
}

.top-class__inner .title .en {
	font-weight: 600;
	font-size: 2em;
	letter-spacing: 0.2em;
}

.top-class__inner .title .en::first-letter {
	color: #026141;
}

.top-class__inner .title .ja {
	margin-top: 0.5em;
	font-weight: 600;
	letter-spacing: 0.2em;
}

.top-class__inner .container {
	display: flex;
	justify-content: space-between;
	margin-top: 3em;
}

.top-class__inner .container__box {
	display: flex;
	width: 45%;
	background: #026141;
}

.top-class__inner .container__box .box-left {
	width: 50%;
}

.top-class__inner .container__box .box-right {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 50%;
	color: #ffffff;
	letter-spacing: 0.2em;
}

.top-class__inner .container__box .box-right .name {
	font-weight: bold;
	font-size: 1.2em;
	text-align: center;
}

.top-class__inner .container__box .box-right .place {
	margin: 1em 0;
	font-size: 0.9em;
}

.top-class__inner .container__box .box-right .btn {
	text-align: right;
}

.top-class__inner .container__box .box-right .btn a {
	display: inline-flex;
	align-items: center;
	padding: 0.6em 2em;
	border: solid 1px #ffffff;
	border-radius: 1.5em;
	background: #ffffff;
	color: #282929;
	font-size: 0.8em;
	letter-spacing: 0.1em;
	text-decoration: none;
	transition: 0.2s;
}

.top-class__inner .container__box .box-right .btn a:hover {
	background: #026141;
	color: #ffffff;
}

.top-class__inner .container__box .box-right .btn a:hover i {
	color: #ffffff;
}

.top-class__inner .container__box .box-right .btn a i {
	margin-right: 0.5em;
	color: #026141;
	font-size: 1.4em;
}

.top-blog {
	position: relative;
	margin-top: 5em;
}

.top-blog::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 0;
	border-top: 6em solid #ffb700;
	border-right: 6em solid transparent;
	content: "";
}

.top-blog::after {
	position: absolute;
	right: 0;
	bottom: 0;
	width: 0;
	height: 0;
	border-bottom: 6em solid #ffb700;
	border-left: 6em solid transparent;
	content: "";
}

.top-blog__inner {
	padding: 2em 4rem !important;
}

.top-blog__inner .title {
	text-align: center;
}

.top-blog__inner .title .en {
	font-weight: 600;
	font-size: 2em;
	letter-spacing: 0.2em;
}

.top-blog__inner .title .en::first-letter {
	color: #026141;
}

.top-blog__inner .title .ja {
	margin-top: 0.5em;
	font-weight: 600;
	letter-spacing: 0.2em;
}

.top-blog__inner .top {
	display: flex;
	align-items: center;
	justify-content: space-around;
	margin-top: 2em;
}

.top-blog__inner .top .left {
	width: 55%;
}

.top-blog__inner .top .left__top {
	display: flex;
	align-items: center;
}

.top-blog__inner .top .left__top__cat {
	margin-right: 1em;
}

.top-blog__inner .top .left__top__cat a {
	padding: 0.3em 1.5em;
	border: solid 1px #ffb700;
	border-radius: 0.5em;
	background: #ffb700;
	color: #ffffff;
	font-size: 0.7em;
	letter-spacing: 0.1em;
	text-align: center;
	text-decoration: none;
	transition: 0.2s;
}

.top-blog__inner .top .left__top__cat a:hover {
	background: #ffffff;
	color: #ffb700;
}

.top-blog__inner .top .left__top__date {
	margin-right: 2em;
	color: #282929;
	font-size: 0.9em;
	letter-spacing: 0.1em;
}

.top-blog__inner .top .left__title {
	margin: 1.5em 0;
}

.top-blog__inner .top .left__title a {
	color: #282929;
	font-weight: bold;
	font-size: 1.5em;
	line-height: 1.6em;
	letter-spacing: 0.1em;
	text-decoration: none;
	transition: 0.2s;
}

.top-blog__inner .top .left__title a:hover {
	color: #ffb700;
}

.top-blog__inner .top .left__btn {
	text-align: right;
}

.top-blog__inner .top .left__btn a {
	display: inline-flex;
	align-items: center;
	padding: 0.6em 1.5em;
	border: solid 1px #ffb700;
	border-radius: 1.5em;
	color: #282929;
	font-size: 0.8em;
	text-decoration: none;
	transition: 0.2s;
}

.top-blog__inner .top .left__btn a:hover {
	background: #ffb700;
	color: #ffffff;
}

.top-blog__inner .top .left__btn a:hover i {
	color: #ffffff;
}

.top-blog__inner .top .left__btn a i {
	margin-right: 0.5em;
	color: #ffb700;
	font-size: 1.4em;
}

.top-blog__inner .top .right {
	width: 40%;
	overflow: hidden;
}

.top-blog__inner .top .right img {
	transition: 0.2s;
}

.top-blog__inner .top .right img:hover {
	scale: 1.1;
}

.top-blog__inner .btm {
	display: flex;
	justify-content: space-between;
	margin-top: 2em;
}

.top-blog__inner .btm .box {
	width: 32%;
}

.top-blog__inner .btm .box__thumb {
	overflow: hidden;
}

.top-blog__inner .btm .box__thumb img {
	transition: 0.2s;
}

.top-blog__inner .btm .box__thumb img:hover {
	scale: 1.1;
}

.top-blog__inner .btm .box .date-cat {
	display: flex;
	align-items: center;
	margin: 1em 0;
}

.top-blog__inner .btm .box .date-cat__cat {
	margin-right: 1em;
}

.top-blog__inner .btm .box .date-cat__cat a {
	padding: 0.3em 1.5em;
	border: solid 1px #ffb700;
	border-radius: 0.5em;
	background: #ffb700;
	color: #ffffff;
	font-size: 0.7em;
	letter-spacing: 0.1em;
	text-align: center;
	text-decoration: none;
	transition: 0.2s;
}

.top-blog__inner .btm .box .date-cat__cat a:hover {
	background: #ffffff;
	color: #ffb700;
}

.top-blog__inner .btm .box .date-cat__date {
	margin-right: 2em;
	color: #282929;
	font-size: 0.9em;
	letter-spacing: 0.1em;
}

.top-blog__inner .btm .box .title {
	margin: 1.5em 0;
	text-align: left;
}

.top-blog__inner .btm .box .title a {
	color: #282929;
	font-weight: bold;
	font-size: 1.2em;
	line-height: 1.6em;
	letter-spacing: 0.1em;
	text-decoration: none;
	transition: 0.2s;
}

.top-blog__inner .btm .box .title a:hover {
	color: #ffb700;
}

/* -----------------------------------
  お知らせ
----------------------------------- */

.news-archive {
	margin-bottom: 5em;
}

.news-archive__inner .row {
	display: flex;
	align-items: center;
	margin: 2em 0;
}

.news-archive__inner .row__cat {
	width: 7%;
	margin-right: 1em;
}

.news-archive__inner .row__cat a {
	padding: 0.3em 1.5em;
	border: solid 1px #026141;
	border-radius: 0.5em;
	background: #026141;
	color: #ffffff;
	font-size: 0.7em;
	letter-spacing: 0.1em;
	text-align: center;
	text-decoration: none;
	transition: 0.2s;
}

.news-archive__inner .row__cat a:hover {
	background: #ffffff;
	color: #026141;
}

.news-archive__inner .row__date {
	width: 8%;
	margin-right: 2em;
	color: #282929;
	font-size: 0.9em;
	letter-spacing: 0.1em;
}

.news-archive__inner .row__title {
	width: 60%;
}

.news-archive__inner .row__title a {
	color: #282929;
	line-height: 1.4em;
	letter-spacing: 0.1em;
	text-decoration: none;
	transition: 0.2s;
}

.news-archive__inner .row__title a:hover {
	color: #ffb700;
}

.news-archive__inner .row__btn {
	margin-left: auto;
}

.news-archive__inner .row__btn a {
	color: #282929;
	letter-spacing: 0.1em;
	text-decoration: none;
}

.news-archive__inner .row__btn a i {
	margin-left: 0.5em;
}

.news-archive__inner .pagenavi {
	width: 100%;
	margin: 5em 0 0;
}

.news-archive__inner .pagenavi .wp-pagenavi {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
}

.news-archive__inner .pagenavi .wp-pagenavi a {
	color: #282929;
	text-decoration: none;
	transition: 0.3s;
}

.news-archive__inner .pagenavi .wp-pagenavi a:hover {
	color: #ffb700;
}

.news-archive__inner .pagenavi .wp-pagenavi .current {
	margin: 0 0.5em;
	border: none;
}

.news-archive__inner .pagenavi .wp-pagenavi .previouspostslink {
	margin-right: 1em;
	padding: 0.1em 0.5em;
	border: none;
	color: #ffb700;
	font-size: 1.5em;
	transition: 0.3s;
}

.news-archive__inner .pagenavi .wp-pagenavi .previouspostslink:hover {
	color: #ffb700;
}

.news-archive__inner .pagenavi .wp-pagenavi .nextpostslink {
	margin-left: 1em;
	padding: 0.1em 0.5em;
	border: none;
	color: #ffb700;
	font-size: 1.5em;
	transition: 0.3s;
}

.news-archive__inner .pagenavi .wp-pagenavi .nextpostslink:hover {
	color: #ffb700;
}

.news-archive__inner .pagenavi .wp-pagenavi .page {
	margin: 0 0.5em;
	border: none;
	font-weight: bold;
}

.news-single {
	margin-top: 3em;
	margin-bottom: 3em;
}

.news-single__inner__top {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin-top: 1em;
}

.news-single__inner__top .date {
	margin-right: 1em;
	color: #282929;
}

.news-single__inner__top .cat a {
	padding: 0.2em 1em;
	border-radius: 5px;
	background: #026141;
	color: #ffffff;
	font-size: 0.8em;
	text-decoration: none;
}

.news-single__inner__title {
	margin: 2em 0;
	font-size: 1.3em;
	line-height: 1.6em;
}

.news-single__inner .share {
	display: flex;
	justify-content: center;
	margin-top: 5em;
	margin-bottom: 2em;
}

.news-single__inner .share__icon {
	margin: 0 2em;
}

/* -----------------------------------
  ブログ
----------------------------------- */

.blog-archive {
	margin-bottom: 5em;
}

.blog-archive__inner {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 2em;
}

.blog-archive__inner .box {
	width: 31%;
}

.blog-archive__inner .box__thumb {
	overflow: hidden;
}

.blog-archive__inner .box__thumb img {
	transition: 0.2s;
}

.blog-archive__inner .box__thumb img:hover {
	scale: 1.1;
}

.blog-archive__inner .box .date-cat {
	display: flex;
	align-items: center;
	margin: 1em 0;
}

.blog-archive__inner .box .date-cat__cat {
	margin-right: 1em;
}

.blog-archive__inner .box .date-cat__cat a {
	padding: 0.3em 1.5em;
	border: solid 1px #ffb700;
	border-radius: 0.5em;
	background: #ffb700;
	color: #ffffff;
	font-size: 0.7em;
	letter-spacing: 0.1em;
	text-align: center;
	text-decoration: none;
	transition: 0.2s;
}

.blog-archive__inner .box .date-cat__cat a:hover {
	background: #ffffff;
	color: #ffb700;
}

.blog-archive__inner .box .date-cat__date {
	margin-right: 2em;
	color: #282929;
	font-size: 0.9em;
	letter-spacing: 0.1em;
}

.blog-archive__inner .box .title {
	margin: 1.5em 0;
	text-align: left;
}

.blog-archive__inner .box .title a {
	color: #282929;
	font-weight: bold;
	font-size: 1.2em;
	line-height: 1.6em;
	letter-spacing: 0.1em;
	text-decoration: none;
	transition: 0.2s;
}

.blog-archive__inner .box .title a:hover {
	color: #ffb700;
}

.blog-archive__inner .pagenavi {
	width: 100%;
	margin: 5em 0 0;
}

.blog-archive__inner .pagenavi .wp-pagenavi {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
}

.blog-archive__inner .pagenavi .wp-pagenavi a {
	color: #282929;
	text-decoration: none;
	transition: 0.3s;
}

.blog-archive__inner .pagenavi .wp-pagenavi a:hover {
	color: #ffb700;
}

.blog-archive__inner .pagenavi .wp-pagenavi .current {
	margin: 0 0.5em;
	border: none;
}

.blog-archive__inner .pagenavi .wp-pagenavi .previouspostslink {
	margin-right: 1em;
	padding: 0.1em 0.5em;
	border: none;
	color: #ffb700;
	font-size: 1.5em;
	transition: 0.3s;
}

.blog-archive__inner .pagenavi .wp-pagenavi .previouspostslink:hover {
	color: #ffb700;
}

.blog-archive__inner .pagenavi .wp-pagenavi .nextpostslink {
	margin-left: 1em;
	padding: 0.1em 0.5em;
	border: none;
	color: #ffb700;
	font-size: 1.5em;
	transition: 0.3s;
}

.blog-archive__inner .pagenavi .wp-pagenavi .nextpostslink:hover {
	color: #ffb700;
}

.blog-archive__inner .pagenavi .wp-pagenavi .page {
	margin: 0 0.5em;
	border: none;
	font-weight: bold;
}

.blog-single {
	margin-top: 3em;
	margin-bottom: 3em;
}

.blog-single__inner__top {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.blog-single__inner__top .thumb {
	width: 35%;
}

.blog-single__inner__top .right {
	width: 60%;
}

.blog-single__inner__top .right__date {
	margin-bottom: 1em;
	color: #282929;
}

.blog-single__inner__top .right__cat a {
	padding: 0.2em 1em;
	border-radius: 5px;
	background: #026141;
	color: #ffffff;
	font-size: 0.8em;
	text-decoration: none;
}

.blog-single__inner__top .right__title {
	margin: 2em 0;
	font-size: 1.3em;
	line-height: 1.6em;
}

.blog-single__inner .share {
	display: flex;
	justify-content: center;
	margin-top: 5em;
	margin-bottom: 2em;
}

.blog-single__inner .share__icon {
	margin: 0 2em;
}

/* -----------------------------------
  FC VAIZEとは
----------------------------------- */

.about-concept__inner .main-catch {
	margin-bottom: 2em;
	font-weight: bold;
	font-size: 2.5em;
	line-height: 1.6em;
	letter-spacing: 0.2em;
	text-align: center;
}

.about-concept__inner .world-img {
	text-align: center;
}

.about-concept__inner .world-img img {
	width: 50%;
}

.about-concept__inner .desc {
	margin: 1em 0;
	letter-spacing: 0.2em;
}

.about-concept__inner .desc__main {
	color: #ffb700;
	font-weight: bold;
	font-size: 1.2em;
	text-align: center;
}

.about-concept__inner .desc__sub {
	margin-top: 2em;
	line-height: 1.8em;
	text-align: center;
}

.about-concept__inner .concept-img {
	display: flex;
}

.about-class {
	margin: 6em 0 6em;
}

.about-class__inner .title {
	text-align: center;
}

.about-class__inner .title .en {
	font-weight: 600;
	font-size: 2em;
	letter-spacing: 0.2em;
}

.about-class__inner .title .en::first-letter {
	color: #026141;
}

.about-class__inner .title .ja {
	margin-top: 0.5em;
	font-weight: 600;
	letter-spacing: 0.2em;
}

.about-class__inner .title .desc {
	margin: 2em 0 1em;
	font-weight: bold;
	line-height: 2.5em;
}

.about-policy {
	margin: 3em 0;
}

.about-policy__inner .title {
	text-align: center;
}

.about-policy__inner .title .en {
	font-weight: 600;
	font-size: 2em;
	letter-spacing: 0.2em;
}

.about-policy__inner .title .en::first-letter {
	color: #026141;
}

.about-policy__inner .title .ja {
	margin-top: 0.5em;
	font-weight: 600;
	letter-spacing: 0.2em;
}

.about-policy__inner .title .desc {
	margin: 2em 0 1em;
	font-weight: bold;
	line-height: 1.6em;
}

.about-policy__inner .container {
	display: flex;
	justify-content: space-between;
}

.about-policy__inner .container .row {
	width: 30%;
}

.about-policy__inner .container .row__txt {
	margin-top: 1em;
	letter-spacing: 0.2em;
}

.about-policy__inner .container .row__txt .num {
	font-size: 1em;
}

.about-policy__inner .container .row__txt .num span {
	margin-left: 0.5em;
	color: #ffb700;
	font-size: 1.5em;
}

.about-policy__inner .container .row__txt .title {
	margin: 1em 0;
	font-weight: bold;
	font-size: 1.2em;
}

.about-policy__inner .container .row__txt .desc {
	font-size: 0.9em;
	line-height: 1.6em;
}

.about-intro {
	margin-top: 8em;
}

.about-intro__inner .title {
	text-align: center;
}

.about-intro__inner .title .en {
	font-weight: 600;
	font-size: 2em;
	letter-spacing: 0.2em;
}

.about-intro__inner .title .en::first-letter {
	color: #026141;
}

.about-intro__inner .title .ja {
	margin-top: 0.5em;
	font-weight: 600;
	letter-spacing: 0.2em;
}

.about-intro__inner .container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 2em;
}

.about-intro__inner .container__left {
	width: 30%;
}

.about-intro__inner .container__right {
	width: 65%;
}

.about-intro__inner .container__right .txt {
	margin-bottom: 3em;
}

.about-intro__inner .container__right .txt:last-child {
	margin-bottom: 0;
}

.about-intro__inner .container__right .txt .name-en {
	margin-bottom: 0.5em;
	color: #026141;
	font-size: 0.8em;
}

.about-intro__inner .container__right .txt .name-ja {
	margin-bottom: 1.5em;
	font-weight: bold;
	font-size: 1.3em;
	letter-spacing: 0.2em;
}

.about-intro__inner .container__right .txt .title-en {
	font-size: 0.8em;
	letter-spacing: 0.1em;
}

.about-intro__inner .container__right .txt .title-ja {
	margin-top: 0.3em;
	color: #026141;
	font-weight: bold;
	font-size: 1.2em;
	letter-spacing: 0.2em;
}

.about-intro__inner .container__right .txt .sub {
	margin-top: 1em;
	line-height: 1.6em;
}

.about-intro__inner .container__right .txt ul {
	margin-top: 1em;
	line-height: 1.6em;
	list-style: inside;
}

.about-intro__inner .container__right .txt .year {
	margin-top: 1em;
	color: #ffb700;
	font-weight: bold;
	line-height: 1.6em;
}

.about-intro__inner .container__right .txt .teach {
	line-height: 1.6em;
}

.about-school {
	margin-top: 8em;
	margin-bottom: 5em;
}

.about-school__inner .title {
	text-align: center;
}

.about-school__inner .title .en {
	font-weight: 600;
	font-size: 2em;
	letter-spacing: 0.2em;
}

.about-school__inner .title .en::first-letter {
	color: #026141;
}

.about-school__inner .title .ja {
	margin-top: 0.5em;
	font-weight: 600;
	letter-spacing: 0.2em;
}

.about-school__inner .container {
	margin-top: 3em;
}

.about-school__inner .container__tab {
	display: flex;
	justify-content: space-between;
}

.about-school__inner .container__tab .row {
	display: flex;
	width: 45%;
	background: #026141;
	cursor: pointer;
}

.about-school__inner .container__tab .row__left {
	width: 50%;
}

.about-school__inner .container__tab .row__right {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 50%;
	color: #ffffff;
	letter-spacing: 0.2em;
}

.about-school__inner .container__tab .row__right .name {
	font-weight: bold;
	font-size: 1.2em;
	text-align: center;
}

.about-school__inner .container__tab .row__right .place {
	margin: 1em 0;
	font-size: 0.9em;
}

.about-school__inner .container__tab .row__right .btn {
	margin-top: 1em;
}

.about-school__inner .container__tab .row__right .btn p {
	display: inline-flex;
	align-items: center;
	padding: 0.6em 2em;
	border: solid 1px #ffffff;
	border-radius: 1.5em;
	background: #ffffff;
	color: #282929;
	font-size: 0.8em;
	letter-spacing: 0.1em;
	transition: 0.2s;
}

.about-school__inner .container__tab .row__right .btn p:hover {
	background: #026141;
	color: #ffffff;
}

.about-school__inner .container__tab .row__right .btn p:hover i {
	color: #ffffff;
}

.about-school__inner .container__tab .row__right .btn p i {
	margin-right: 0.5em;
	color: #026141;
	font-size: 1.4em;
}

.about-school__inner .container__inner {
	margin-top: 2em;
}

.about-school__inner .container__inner .tab {
	display: none;
}

.about-school__inner .container__inner .tab.active {
	display: block;
}

.about-school__inner .container__inner .tab__top {
	display: flex;
	justify-content: space-between;
}

.about-school__inner .container__inner .tab__top__thumb {
	width: 50%;
}

.about-school__inner .container__inner .tab__top__thumb .sub {
	display: flex;
	margin-top: 1em;
}

.about-school__inner .container__inner .tab__top__thumb .sub__img {
	margin: 0.3em;
}

.about-school__inner .container__inner .tab__top__txt {
	width: 45%;
	margin: 2em 0;
}

.about-school__inner .container__inner .tab__top__txt .cat {
	display: flex;
}

.about-school__inner .container__inner .tab__top__txt .cat li {
	margin-right: 0.5em;
	padding: 0.5em;
	border-radius: 0.3em;
	background: #026141;
	color: #ffffff;
	font-size: 0.8em;
}

.about-school__inner .container__inner .tab__top__txt .name {
	margin-top: 1em;
	padding-bottom: 0.5em;
	padding-left: 1em;
	border-bottom: solid 5px #026141;
	font-size: 1.2em;
	letter-spacing: 0.2em;
}

.about-school__inner .container__inner .tab__top__txt .place,
.about-school__inner .container__inner .tab__top__txt .week {
	margin-top: 0.5em;
}

.about-school__inner .container__inner .tab__top__txt .table {
	margin-top: 1.5em;
	background: #eee;
}

.about-school__inner .container__inner .tab__top__txt .table__row {
	display: flex;
	padding: 1em;
	border-bottom: solid 1px #212836;
}

.about-school__inner .container__inner .tab__top__txt .table__row__left {
	width: 40%;
	font-weight: bold;
}

.about-school__inner .container__inner .tab__top__txt .table__row__right {
	width: 60%;
}

.about-school__inner .container__inner .tab__top__txt .table__row:last-child,
.about-school__inner .container__inner .tab__top__txt .table__row.border {
	border-bottom: none;
}

.about-school__inner .container__inner .tab__top__txt .table__row.title {
	justify-content: center;
	padding: 0.5em 0;
	border-bottom: none;
	background: #ffb700;
	color: #ffffff;
	font-weight: bold;
}

.about-school__inner .container__inner .tab__btm {
	margin-top: 3em;
}

.about-school__inner .container__inner .tab__btm .row {
	display: flex;
	align-items: center;
	padding: 1em;
	border-bottom: solid 1px #eee;
}

.about-school__inner .container__inner .tab__btm .row__left {
	width: 40%;
	font-weight: bold;
}

.about-school__inner .container__inner .tab__btm .row__right {
	width: 60%;
	line-height: 1.6em;
}

.about-school__inner .container__inner .tab__btm .row__right span {
	margin-left: 0.5em;
	font-size: 0.7em;
}

.about-school__inner .container__inner .tab__btm .map {
	position: relative;
	height: 0;
	padding-bottom: 56.25%;
	overflow: hidden;
}

.about-school__inner .container__inner .tab__btm .map iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* -----------------------------------
  お問い合わせ
----------------------------------- */

.contact__inner__desc {
	font-weight: bold;
	font-size: 1.1em;
	line-height: 1.6em;
	text-align: center;
}

.contact__inner__content {
	margin: 5em 0 5em;
}

.contact__inner__content .contact-form {
	margin-top: 5em;
}

.contact__inner__content .contact-form__row {
	padding: 1.5em 2em;
	border-bottom: solid 1px #eee;
}

.contact__inner__content .contact-form__row .title {
	margin-bottom: 1em;
	color: #282929;
	font-weight: bold;
	font-size: 1.2em;
}

.contact__inner__content .contact-form__row .input .wpcf7-radio,
.contact__inner__content .contact-form__row .input .wpcf7-checkbox {
	display: flex;
	flex-direction: column;
}

.contact__inner__content .contact-form__row .input .wpcf7-radio .wpcf7-list-item,
.contact__inner__content .contact-form__row .input .wpcf7-checkbox .wpcf7-list-item {
	margin-left: 0;
	line-height: 2em;
}

.contact__inner__content .contact-form__row .input .wpcf7-radio .wpcf7-list-item label span,
.contact__inner__content .contact-form__row .input .wpcf7-checkbox .wpcf7-list-item label span {
	color: #282929;
	font-size: 1.2em;
}

.contact__inner__content .contact-form__row .input .wpcf7-select {
	box-sizing: border-box;
	display: block;
	width: 50%;
	height: 3em;
	padding: 0 1em;
	border: 0 solid transparent;
	outline: none;
	background-color: #edf2f4;
	font-weight: 500;
	font-size: 1.1em;
}

.contact__inner__content .contact-form__row .input .wpcf7-text,
.contact__inner__content .contact-form__row .input .wpcf7-textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	box-sizing: border-box;
	display: block;
	appearance: none;
	width: 100%;
	height: 3em;
	padding: 0 1em;
	border: 0 solid transparent;
	outline: none;
	background-color: #edf2f4;
	font-weight: 500;
	font-size: 1.3em;
}

.contact__inner__content .contact-form__row .input .wpcf7-text:focus-visible,
.contact__inner__content .contact-form__row .input .wpcf7-textarea:focus-visible {
	outline: 2px solid #212836;
	outline-offset: 4px;
	transition: 0s;
}

.contact__inner__content .contact-form__row .input .wpcf7-text.wpcf7-textarea,
.contact__inner__content .contact-form__row .input .wpcf7-textarea.wpcf7-textarea {
	height: 10em;
	padding: 1em;
}

.contact__inner__content .contact-form__row .input .wpcf7-not-valid-tip {
	margin-top: 0.3em;
	padding: 0.5em;
	background: #212836;
	color: #ffffff;
	font-weight: bold;
}

.contact__inner__content .contact-form__privacy {
	margin-top: 6em;
}

.contact__inner__content .contact-form__privacy p {
	display: flex;
	align-items: center;
	justify-content: center;
}

.contact__inner__content .contact-form__privacy p .wpcf7-acceptance .wpcf7-list-item {
	margin-left: 0;
}

.contact__inner__content .contact-form__privacy p .wpcf7-acceptance .wpcf7-list-item input {
	width: 25px;
	height: 25px;
}

.contact__inner__content .contact-form__privacy p a {
	margin-left: 0.5em;
	padding-bottom: 0.2em;
	border-bottom: solid 1px #282929;
	color: #282929;
	text-decoration: none;
	transition: 0.3s;
}

.contact__inner__content .contact-form__privacy p a:hover {
	color: #ffb700;
}

.contact__inner__content .contact-form__privacy p a input {
	width: 2em;
	height: 2em;
	margin: 0 1em 0 0;
}

.contact__inner__content .contact-form__privacy p span {
	padding-bottom: 0.2em;
}

.contact__inner__content .contact-form__btn {
	margin-top: 3em;
	text-align: center;
}

.contact__inner__content .contact-form__btn [type=submit],
.contact__inner__content .contact-form__btn [type=button] {
	box-sizing: inherit;
	display: inline-block;
	padding: 1em 5em;
	border: solid 1px #282929;
	border-radius: 1em;
	background: inherit;
	color: #282929;
	font-size: 1em;
	letter-spacing: 0.2em;
	transition: 0.2s;
}

.contact__inner__content .contact-form__btn [type=submit]:hover,
.contact__inner__content .contact-form__btn [type=button]:hover {
	background: #282929;
	color: #ffffff !important;
}

.contact__inner__content .contact-form__btn .wpcf7-spinner {
	display: none;
}

.contact__inner__content .wpcf7-response-output {
	padding: 1em 0 !important;
	border: none !important;
	background: #212836;
	color: #ffffff;
	font-weight: bold;
	text-align: center;
}

/* -----------------------------------
  プライバシーポリシー
----------------------------------- */

.privacy {
	margin-bottom: 5em;
}

.privacy__inner {
	font-size: 0.9em;
	line-height: 1.6em;
	letter-spacing: 0.1em;
}

.privacy__inner h2 {
	margin-top: 2em;
	padding: 0.5em;
	border-left: 6px solid #026141;
}

.privacy__inner p {
	margin-top: 1em;
}

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

.privacy__inner ol {
	margin: 10px 0 0 25px;
	list-style-type: decimal;
}

/* -----------------------------------
  Error
----------------------------------- */

.error {
	margin-bottom: 5em;
}

.error__inner .main-title {
	font-weight: bold;
	font-size: 1.2em;
	line-height: 1.6em;
}

.error__inner .main-desc {
	line-height: 3em;
}

.error__inner .btn {
	margin-top: 5em;
	text-align: center;
}

.error__inner .btn a {
	display: inline-flex;
	align-items: center;
	padding: 0.6em 2em;
	border: solid 1px #026141;
	border-radius: 1.5em;
	background: #026141;
	color: #ffffff;
	font-size: 0.8em;
	letter-spacing: 0.1em;
	text-decoration: none;
	transition: 0.2s;
}

.error__inner .btn a:hover {
	background: #ffffff;
	color: #026141;
}

.error__inner .btn a:hover i {
	color: #026141;
}

.error__inner .btn a i {
	margin-right: 0.5em;
	color: #ffffff;
	font-size: 1.4em;
}

/****************************************
① まず変数を読み込む
****************************************/

/****************************************
① まず変数を読み込む
****************************************/

/****************************************
① まず変数を読み込む
****************************************/

/****************************************
④ 投稿ページ用などがあれば最後に読み込む
****************************************/

/****************************************
① まず変数を読み込む
****************************************/

#post-style p {
	padding: 1em 0;
	line-height: 2em;
}

#post-style p.center {
	text-align: center;
}

#post-style p.right {
	text-align: right;
}

#post-style a {
	color: #026141;
	text-decoration: none;
	transition: 0.3s;
}

#post-style a:hover {
	color: #ffb700;
}

#post-style .img {
	margin: 3em 0;
	text-align: center;
}

#post-style .img.flex {
	display: flex;
}

#post-style .img.flex img {
	width: 50%;
}

#post-style .img img {
	width: 60%;
	border-radius: 30px;
}

#post-style h2 {
	position: relative;
	margin: 1em 0;
	padding: 1rem 2rem 1rem 4em;
	border-radius: 10px;
	background: #ffb700;
	color: #ffffff;
	font-size: 1.5em;
	line-height: 1.4em;
	letter-spacing: 2px;
}

#post-style h2 span {
	display: inline-block;
	position: absolute;
	top: -10px;
	left: 20px;
	width: 48px;
	height: 33px;
	background: #026141;
	text-align: center;
}

#post-style h2 span:before,
#post-style h2 span:after {
	position: absolute;
	content: "";
}

#post-style h2 span:before {
	right: -10px;
	width: 0;
	height: 0;
	border-right: 10px solid transparent;
	border-bottom: 10px solid #aa080d;
}

#post-style h2 span:after {
	display: block;
	top: 50%;
	left: 0;
	height: 50%;
	border: 1em solid #026141;
	border-bottom-width: 15px;
	border-bottom-color: transparent;
}

#post-style h3 {
	display: inline-block;
	position: relative;
	top: 0;
	margin: 1em 0;
	padding: 0.25em 1em;
	font-size: 1.5em;
	line-height: 1.4;
	line-height: 1.4em;
	letter-spacing: 2px;
}

#post-style h3:before,
#post-style h3:after {
	display: inline-block;
	position: absolute;
	top: 0;
	width: 8px;
	height: 100%;
	content: "";
}

#post-style h3:before {
	left: 0;
	border-top: solid 2px #026141;
	border-bottom: solid 2px #026141;
	border-left: solid 2px #026141;
}

#post-style h3:after {
	right: 0;
	border-top: solid 2px #026141;
	border-right: solid 2px #026141;
	border-bottom: solid 2px #026141;
	content: "";
}

#post-style h4 {
	margin: 1em 0;
	padding-bottom: 0.3em;
	border-bottom: 4px solid #ffb700;
	color: #ffb700;
	font-weight: 800;
	font-size: 1.4em;
	line-height: 1.4em;
	letter-spacing: 3px;
}

#post-style h4:first-letter {
	font-size: 1.5em;
}

#post-style ul {
	padding: 1em;
}

#post-style ul li {
	padding: 0.5em 0;
	line-height: 1.4em;
}

#post-style ul li i {
	margin-right: 0.5em;
	color: #026141;
}

#post-style ol {
	padding: 1em 1em 1em 2.5em;
	color: #026141;
	list-style: auto;
}

#post-style ol span {
	color: #282929;
}

#post-style ol li {
	padding: 0.5em 0;
	line-height: 1.4em;
}

#post-style .marker-orange {
	margin: 0 0.1em;
	padding: 0 0.1em;
	background: linear-gradient(transparent 65%, #ffb700 65%);
	font-size: 1.2em;
}

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

/* -----------------------------------
    basic
  ----------------------------------- */

body .l-container {
	padding: 0 3rem;
}

body .m-container {
	padding: 0 3rem;
}

/* -----------------------------------
    header
  ----------------------------------- */

.header {
	padding-top: 2em;
	padding-bottom: 2em;
}

.header__inner__logo {
	width: 15%;
}

.header__inner__menu li {
	margin-left: 1em;
}

.header__inner__menu li a .en {
	font-size: 0.6em;
}

.header__inner__menu li a .ja {
	font-size: 0.7em;
}

.header__inner__menu li.contact a {
	padding: 0.5em 1em;
}

/* -----------------------------------
    footer
  ----------------------------------- */

/* -----------------------------------
    top
  ----------------------------------- */

.top-news__inner .row__cat {
	width: 15%;
}

.top-news__inner .row__date {
	width: 15%;
}

.top-news__inner .row__title {
	width: 50%;
}

.top-policy {
	flex-direction: column;
	margin-right: 0;
}

.top-policy__left {
	width: 100%;
	padding: 2em;
}

.top-policy__right {
	width: 100%;
}

.top-class__inner .container__box {
	width: 49%;
}

.top-blog__inner .btm .box .date-cat__cat {
	margin-right: 0;
}

.top-blog__inner .btm .box .date-cat__date {
	margin-right: 1em;
}

/* -----------------------------------
    お知らせ
  ----------------------------------- */

.news-archive__inner .row__cat {
	width: 15%;
}

.news-archive__inner .row__date {
	width: 15%;
}

.news-archive__inner .row__title {
	width: 50%;
}

/* -----------------------------------
    ブログ
  ----------------------------------- */

.blog-archive__inner .box .date-cat__cat {
	margin-right: 0;
}

.blog-archive__inner .box .date-cat__date {
	margin-right: 0.5em;
}

/* -----------------------------------
    FC VAIZEとは
  ----------------------------------- */

.about-school__inner .container__tab .row {
	width: 49%;
}

.about-school__inner .container__inner .tab__top__txt .cat {
	flex-wrap: wrap;
}

.about-school__inner .container__inner .tab__top__txt .cat li {
	margin-top: 0.5em;
}

/* -----------------------------------
    お問い合わせ
  ----------------------------------- */

/* -----------------------------------
    プライバシーポリシー
  ----------------------------------- */

/* -----------------------------------
    Error
  ----------------------------------- */

}

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

/* -----------------------------------
    basic
  ----------------------------------- */

body {
	font-size: 1.5rem;
}

body .l-container {
	padding: 0 2rem;
}

body .m-container {
	padding: 0 2rem;
}

body .sp {
	display: block;
}

body .pc {
	display: none;
}

.layer-mv {
	padding: 7em 0 3em;
}

.banner {
	margin: 5em 0;
}

.banner__inner a {
	display: flex;
	justify-content: center;
}

.banner__inner a img {
	width: 100%;
}

/* -----------------------------------
    header
  ----------------------------------- */

.header {
	display: none;
}

.header-sp {
	display: flex;
	z-index: 9999;
	position: fixed;
	flex-direction: column;
	justify-content: space-between;
	width: 100%;
	background: #ffffff;
}

.header-sp__btm {
	display: flex;
	z-index: 9999;
	align-items: center;
	justify-content: space-between;
	background-color: #ffffff;
}

.header-sp__btm__logo {
	width: 100px;
	margin: 1em;
}

.header-sp__btm__hamb {
	display: flex;
	z-index: 9999;
	align-items: center;
	padding: 1em 1em;
	border-radius: 5px;
	background: rgba(255, 255, 255, 0);
	cursor: pointer;
}

.header-sp__btm__hamb__inner__span {
	position: relative;
	width: 100%;
	height: 20px;
	margin: 0 auto 0.2em;
}

.header-sp__btm__hamb.active .header-sp__btm__hamb__inner__span {
	top: 0;
}

.header-sp__btm__hamb.active .header-sp__btm__hamb__inner__span span:nth-child(1) {
	top: 0;
	transform: translateY(4px) rotate(-45deg);
}

.header-sp__btm__hamb.active .header-sp__btm__hamb__inner__span span:nth-child(2) {
	top: 50%;
	margin-top: -1px;
	opacity: 0;
}

.header-sp__btm__hamb.active .header-sp__btm__hamb__inner__span span:nth-child(3) {
	bottom: 0;
	transform: translateY(-14px) rotate(45deg);
}

.header-sp__btm__hamb__inner__span .header-sp__btm__hamb__inner__span span:nth-of-type(1):hover {
	width: 70%;
}

.header-sp__btm__hamb__inner__span .header-sp__btm__hamb.active:hover span:nth-of-type(3) {
	width: 35%;
}

.header-sp__btm__hamb__inner__span span {
	display: inline-block;
	position: absolute;
	right: 0;
	width: 100%;
	height: 1px;
	border-radius: 10px;
	background: #282929;
	transition: 0.4s;
}

.header-sp__btm__hamb__inner__span span:nth-child(1) {
	top: 0;
}

.header-sp__btm__hamb__inner__span span:nth-child(2) {
	top: 50%;
	margin-top: -1px;
}

.header-sp__btm__hamb__inner__span span:nth-child(3) {
	bottom: 0;
}

.header-sp__btm__hamb__inner__txt {
	margin-top: 0.8em;
	color: #282929;
	font-weight: bold;
	font-size: 0.6em;
}

.header-sp__nav {
	display: none;
	z-index: 9998;
}

.header-sp__nav.active {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: 100vw;
	height: 100vh;
	padding-top: 100px;
	overflow: auto;
	background: #ffffff;
}

.header-sp__nav__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 0 2em 3em;
}

.header-sp__nav__list li {
	width: 100%;
	padding: 0.5em 0;
	font-size: 1.2em;
}

.header-sp__nav__list li a {
	display: block;
	width: 100%;
	color: #282929;
	text-decoration: none;
	transition: 0.3s;
}

.header-sp__nav__list li a:hover {
	opacity: 0.7;
}

.header-sp__nav__list li a span {
	margin: 0 1em;
	margin-bottom: 0.3em;
	color: #ffb700;
	font-size: 0.8em;
}

.header-sp__nav__list .main a {
	padding: 1em 0;
}

.header-sp__nav__list .box {
	width: 100%;
	padding: 0 2em;
}

.header-sp__nav__list .box .shift {
	width: 100%;
	border-bottom: 1px solid #ffffff;
	font-size: 1em;
}

.header-sp__nav__list .box .shift a {
	padding: 1em 0;
	color: #ffffff;
}

.header-sp__nav__list .box .shift i {
	margin-right: 1em;
	color: #ffffff;
}

.header-sp__nav__list .box .shift:last-child {
	border: 0;
}

.header-sp__nav__list .blue {
	background: #026141;
}

.header-sp__nav .sns {
	display: flex;
	justify-content: center;
	margin: 1em 0 2em;
}

.header-sp__nav .sns p {
	margin-right: 1em;
	font-weight: 300;
}

.header-sp__nav .sns a {
	color: #026141;
	transition: 0.3s;
}

.header-sp__nav .sns a:hover {
	color: #ffb700;
}

.header-sp__nav .sns a i {
	margin: 0 1em;
	font-size: 2em;
}

.header-sp__nav__logo {
	padding-bottom: 2em;
	text-align: center;
}

.header-sp__nav__logo a img {
	width: 160px;
}

/* -----------------------------------
    footer
  ----------------------------------- */

.footer__logo {
	text-align: center;
}

.footer__logo img {
	width: 50%;
}

.footer__menu {
	flex-direction: column;
}

.footer__menu__left {
	width: 100%;
}

.footer__menu__left li {
	width: 48%;
	margin-bottom: 1em;
}

.footer__menu__right {
	width: 100%;
	margin-top: 2em;
	text-align: center;
}

.footer__menu__right img {
	width: 80%;
}

.footer__btm__inner {
	flex-direction: column;
}

.footer__btm__inner li {
	margin-top: 1em;
}

/* -----------------------------------
    top
  ----------------------------------- */

.top-mv__inner .catch .en {
	font-size: 2.2em;
	line-height: 1.4em;
}

.top-news__inner .row {
	flex-wrap: wrap;
}

.top-news__inner .row__cat {
	width: inherit;
}

.top-news__inner .row__date {
	width: inherit;
}

.top-news__inner .row__title {
	width: 100%;
	margin: 1em 0;
}

.top-concept__img {
	flex-direction: column;
}

.top-policy__right .row {
	flex-direction: column;
}

.top-policy__right .row__img {
	width: 100%;
}

.top-policy__right .row__txt {
	width: 100%;
	margin-right: 1em;
	padding: 1em;
}

.top-class__inner .container {
	flex-direction: column;
}

.top-class__inner .container__box {
	width: 100%;
	margin-bottom: 1em;
}

.top-blog__inner {
	padding: 2em 2rem !important;
}

.top-blog__inner .btm {
	flex-wrap: wrap;
}

.top-blog__inner .btm .box {
	width: 48%;
}

/* -----------------------------------
    お知らせ
  ----------------------------------- */

.news-archive__inner .row {
	flex-wrap: wrap;
}

.news-archive__inner .row__cat {
	width: inherit;
}

.news-archive__inner .row__date {
	width: inherit;
}

.news-archive__inner .row__title {
	width: 100%;
	margin: 1em 0;
}

/* -----------------------------------
    ブログ
  ----------------------------------- */

.blog-archive__inner .box {
	width: 100%;
}

.blog-single__inner__top {
	flex-direction: column-reverse;
}

.blog-single__inner__top .thumb {
	width: 100%;
}

.blog-single__inner__top .right {
	width: 100%;
}

/* -----------------------------------
    FC VAIZEとは
  ----------------------------------- */

.about-concept__inner .world-img img {
	width: 80%;
}

.about-concept__inner .concept-img {
	flex-direction: column;
}

.about-policy__inner .title .desc {
	text-align: left;
}

.about-policy__inner .container {
	flex-direction: column;
}

.about-policy__inner .container .row {
	width: 100%;
	margin-bottom: 1.5em;
}

.about-intro__inner .container {
	flex-direction: column;
}

.about-intro__inner .container__left {
	width: 100%;
	text-align: center;
}

.about-intro__inner .container__left img {
	width: 70%;
}

.about-intro__inner .container__right {
	width: 100%;
	margin-top: 2em;
}

.about-intro__inner .container__right .txt .title-en {
	font-size: 1em;
}

.about-intro__inner .container__right .txt .title-ja {
	font-size: 1.2em;
}

.about-school__inner .container__tab {
	flex-direction: column;
}

.about-school__inner .container__tab .row {
	width: 100%;
	margin-bottom: 1em;
}

.about-school__inner .container__inner .tab__top {
	flex-direction: column;
}

.about-school__inner .container__inner .tab__top__thumb {
	width: 100%;
}

.about-school__inner .container__inner .tab__top__txt {
	width: 100%;
}

.about-school__inner .container__inner .tab__btm .row__right span {
	display: block;
}

/* -----------------------------------
    お問い合わせ
  ----------------------------------- */

.contact__inner__desc {
	text-align: left;
}

.contact__inner__content .contact-form__row {
	padding: 1.5em 1em;
}

.contact__inner__content .contact-form__row .input .wpcf7-select {
	width: 100%;
}

/* -----------------------------------
    プライバシーポリシー
  ----------------------------------- */

/* -----------------------------------
    Error
  ----------------------------------- */

#post-style h2 {
	padding: 1rem 2rem 1rem 3.5em;
}

#post-style h2 span {
	display: inline-block;
	position: absolute;
	top: -10px;
	left: 20px;
	width: 40px;
	height: 33px;
	background: #026141;
	text-align: center;
}

#post-style h2 span:before,
#post-style h2 span:after {
	position: absolute;
	content: "";
}

#post-style h2 span:before {
	right: -10px;
	width: 0;
	height: 0;
	border-right: 10px solid transparent;
	border-bottom: 10px solid #aa080d;
}

#post-style h2 span:after {
	display: block;
	top: 50%;
	left: 0;
	height: 50%;
	border: 0.9em solid #026141;
	border-bottom-width: 15px;
	border-bottom-color: transparent;
}

#post-style .img {
	margin: 2em 0;
}

#post-style .img.flex {
	flex-direction: column;
}

#post-style .img img {
	width: 90%;
}

}

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

/* -----------------------------------
    basic
  ----------------------------------- */

body .l-container {
	padding: 0 1rem;
}

body .m-container {
	padding: 0 1rem;
}

/* -----------------------------------
    header
  ----------------------------------- */

/* -----------------------------------
    footer
  ----------------------------------- */

.footer__menu__right img {
	width: 60%;
}

/* -----------------------------------
    top
  ----------------------------------- */

.top-blog__inner .top .left__top {
	flex-direction: column;
	align-items: flex-start;
}

.top-blog__inner .top .left__top__cat {
	margin-right: 0em;
}

.top-blog__inner .top .left__top__date {
	margin-top: 1em;
	margin-right: 0;
}

.top-blog__inner .top .left__title a {
	font-size: 1.2em;
}

.top-blog__inner .btm .box .date-cat {
	flex-direction: column;
	align-items: flex-start;
}

.top-blog__inner .btm .box .date-cat__cat {
	margin-top: 1em;
}

.top-blog__inner .btm .box .title a {
	font-size: 1em;
}

/* -----------------------------------
    Error
  ----------------------------------- */

#post-style .img {
	margin: 0;
}

#post-style .img.flex {
	flex-direction: column;
}

#post-style .img img {
	width: 100%;
}

}

