/*
Theme Name:SmartPhone-theme
Author:SmartPack
Description:スマートフォン用テーマ
Version: 1.0.1
*/


/* Copyright (c) 2009, Yahoo! Inc. All rights reserved. 
Code licensed under the BSD License: http://developer.yahoo.net/yui/license.txt 
version: 3.0.0 build: 1549 */

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
code,
form,
fieldset,
legend,
input,
textarea,
p,
blockquote,
th,
td {
	margin: 0;
	padding: 0;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

fieldset,
img {
	border: 0;
	vertical-align: bottom
}

address,
caption,
cite,
code,
dfn,
th,
var {
	font-style: normal;
	font-weight: normal;
}

td,
th {
	font-size: 100%;
	vertical-align: top;
}

li {
	list-style: none;
}

caption,
th {
	text-align: left;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: 100%;
	font-weight: normal;
}

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

abbr,
acronym {
	border: 0;
	font-variant: normal;
}

sup {
	vertical-align: text-top;
}

sub {
	vertical-align: text-bottom;
}

input,
textarea,
select {
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
}

input,
textarea,
select {
	*font-size: 100%;
}

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

audio[controls],
canvas,
video {
	display: inline-block;
	*display: inline;
	zoom: 1;
}

a {}

body {
	/* font-size: 14px;
	line-height: 1.5em; */
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

#container {
	padding: 0 3%;
	width: 94%;
}

#main-image {
	margin-bottom: 10px;
}

#main p {
	margin-bottom: 10px;
}

#main {
	margin-bottom: 50px;
}

#main h2 {
	margin-bottom: 20px;
}

/* タイトルパターン */
#main h2 {
	background-color: #3E3A39;
	padding: 10px;
	border-bottom: 3px solid #3c8fff;
	color: #fff;
	-webkit-border-radius: 7px 7px 0 0 / 7px 7px 0 0;
	-moz-border-radius: 7px 7px 0 0 / 7px 7px 0 0;
	border-radius: 7px 7px 0 0 / 7px 7px 0 0;
}

#main h3 {
	border-bottom: 3px solid #999;
	margin-bottom: 10px;
	padding-bottom: 7px;
	font-weight: bold;
}


/* -------------------------------------------
	CLEAR-FIX
---------------------------------------------- */
.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

.clearfix {
	display: inline-block;
}

/* Hides from IE-mac \*/
* html.clearfix {
	height: 1%;
}

.clearfix {
	display: block;
}

/* -------------------------------------------
	Utility
---------------------------------------------- */

/* Margin
-------------*/
#wrapper .m0 {
	margin: 0
}

#wrapper .m10 {
	margin: 10px
}

#wrapper .m15 {
	margin: 15px;
}

#wrapper .m20 {
	margin: 20px;
}

#wrapper .mg5 {
	margin: 5px;
}

#wrapper .mg10 {
	margin: 10px;
}

#wrapper .mg15 {
	margin: 15px;
}

#wrapper .mg20 {
	margin: 20px;
}

#wrapper .mt5 {
	margin-top: 5px;
}

#wrapper .mt10 {
	margin-top: 10px;
}

#wrapper .mt15 {
	margin-top: 15px;
}

#wrapper .mt20 {
	margin-top: 20px;
}

#wrapper .mt30 {
	margin-top: 30px;
}

#wrapper .mt50 {
	margin-top: 50px;
}

#wrapper .mt100 {
	margin-top: 100px;
}

#wrapper .ml5 {
	margin-left: 5px;
}

#wrapper .ml8 {
	margin-left: 8px;
}

#wrapper .ml10 {
	margin-left: 10px;
}

#wrapper .ml15 {
	margin-left: 15px;
}

#wrapper .ml20 {
	margin-left: 20px;
}

#wrapper .ml30 {
	margin-left: 30px;
}

#wrapper .ml40 {
	margin-left: 40px;
}

#wrapper .ml50 {
	margin-left: 50px;
}

#wrapper .mr5 {
	margin-right: 5px;
}

#wrapper .mr10 {
	margin-right: 10px;
}

#wrapper .mr15 {
	margin-right: 15px;
}

#wrapper .mr20 {
	margin-right: 20px;
}

#wrapper .mb5 {
	margin-bottom: 5px;
}

#wrapper .mb10 {
	margin-bottom: 10px;
}

#wrapper .mb15 {
	margin-bottom: 15px;
}

#wrapper .mb20 {
	margin-bottom: 20px;
}

#wrapper .mb40 {
	margin-bottom: 40px;
}

#wrapper .mb50 {
	margin-bottom: 50px;
}

#wrapper .mb100 {
	margin-bottom: 100px;
}

/* padding 
---------------------*/
#wrapper .p5 {
	padding: 5px;
}

#wrapper .p10 {
	padding: 10px;
}

#wrapper .pt10 {
	padding-top: 10px;
}

#wrapper .pt20 {
	padding-top: 20px;
}

#wrapper .pb20 {
	padding-bottom: 20px;
}

/* Float
---------------------*/
.fl {
	float: left
}

.fr {
	float: right;
}

.cl {
	clear: both;
}

/* cursor
-------------------*/
.cp {
	cursor: pointer;
}

.fcr {
	color: #fff;
}

.attention {
	color: #f00;
	font-weight: bold;
}

.link-arrow {
	padding-left: 20px;
	background: url(images/common/bg_side-list.png) left center no-repeat;
}

/* width
--------------------*/
.w50 {
	width: 50px;
}

.w100 {
	width: 100px;
}

.w130 {
	width: 130px;
}

.w200 {
	width: 200px;
}

.w220 {
	width: 220px;
}

.w245 {
	width: 245px;
}

.w270 {
	width: 270px;
}

.w300 {
	width: 300px;
}

.w90 input,
.w90 textarea {
	width: 90%;
}

/* align
------------------- */
.tac {
	text-align: center
}

.tal {
	text-align: left
}

.tar {
	text-align: right
}


/* -------------------------------------------
	WordPress Editor
---------------------------------------------- */

img.size-auto,
img.size-large,
img.size-full,
img.size-medium {
	max-width: 100%;
	height: auto;
}

.alignleft,
img.alignleft {
	display: inline;
	float: left;
	margin-right: 15px;
	margin-top: 4px;
}

.alignright,
img.alignright {
	display: inline;
	float: right;
	margin-left: 15px;
	margin-top: 4px;
}

.aligncenter,
img.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}

img.alignleft,
img.alignright,
img.aligncenter {
	margin-bottom: 12px;
}

.wp-caption {
	border: none;
	-khtml-border-radius: 0;
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
	border-radius: 0;
	font-size: 12px;
	line-height: 18px;
	margin-bottom: 20px;
	padding: 4px;
	text-align: center;
}

.wp-caption img {
	margin: 5px;
}

.wp-caption p.wp-caption-text {
	margin: 0 0 4px;
}

.wp-smiley {
	margin: 0;
}

#main .post-content h1 {
	font-size: 48px;
	font-weight: bold
}

#main .post-content h2 {
	font-size: 36px;
	font-weight: bold
}

#main .post-content h3 {
	font-size: 24px;
	font-weight: bold
}

#main .post-content h4 {
	font-size: 18px;
	font-weight: bold
}

#main .post-content h5 {
	font-size: 14px;
	font-weight: bold
}

#main .post-content h6 {
	font-size: 12px;
	font-weight: bold
}

#main .post-content h7 {
	font-size: 10px;
	font-weight: bold
}

#main .post-content ul,
#main .post-content ol {
	padding: 10px 0 10px 20px;
}

#main .post-content ul li {
	list-style: disc;
}

#main .post-content ol li {
	list-style: decimal;
}

#main .post-content blockquote {
	margin: 10px 20px;
	font-style: italic;
}

#wrapper img {
	max-width: 100%;
	height: auto;
}

#wrapper #galleria img {
	max-width: none;
}

.pr-content {
	margin-bottom: 30px;
}

.m-ctr {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 15px;
	text-align: center;
}

#breadcrumb {
	margin: 0 3% 10px;
	width: 94%;
	font-size: 0.8em;
}

#wrapper {
	background: url(images/common/sp_bg.jpg) no-repeat;
	-webkit-background-size: 100%;
	background-size: 100%;
}

#container {
	background-color: rgba(255, 255, 255, 0.8);
	padding-top: 20px;
}

#top #container {
	background-color: transparent;
	width: 100%;
	padding: 20px 0 0 0;
}

#top h2 {
	background: none;
	border-bottom: none;
	margin-bottom: 30px;
	width: calc(100% - 20px);
	text-align: center;
}

#top h2 img {
	width: 70%;
}

#header {
	padding-bottom: 10px;
}

#header #logo {
	width: 30%;
	float: left;
}

#openmenu {
	width: 40px;
	float: right;
}

#header .inner {
	width: 94%;
	padding: 18px 3% 0;
}

#header .inner ul {
	float: right;
	width: 45%;
}

#header .inner ul li {
	width: 18.0%;
	float: left;
	margin-right: 2%;
}

#header .inner ul li:first-child {
	width: 18.0%;
	margin-right: 2%
}

#header .inner ul li:last-child {
	width: 18.0%;
	margin-right: 2%;
}

.fixed {
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 1000;
	background-image: -moz-linear-gradient(top, #b2cced, #c3ddfe);
	background-image: -webkit-linear-gradient(top, #b2cced, #c3ddfe);
	background-image: linear-gradient(top, #b2cced, #c3ddfe);
	padding: 0 0 10px 0;
}

#header nav {
	display: none;
}

#globalnavi li {
	width: 50%;
	float: left;
}

#globalnavi li:nth-child(2n-1) {
	border-right: 1px solid #cdcdcd;
	width: calc(50% - 1px);
}

/** ↓この値はメニュー数に応じて消すかどうか決めてください **/
#globalnavi li:last-child {
	width: 100%;
	border-bottom: 1px solid #ababab;
	border-right: none;
}

#globalnavi li a {
	background: #FFF;
	text-decoration: none;
	color: #666;
	display: block;
	padding: 15px 10px;
}

#globalnavi li:nth-child(4n) a,
#globalnavi li:nth-child(4n-1) a {
	background: #C9E2FF;
}

#header #header_menu {
	clear: both;
	margin-top: 10px;
	position: absolute;
	z-index: 1000;
	width: 100%;
}

#header .sns {
	position: fixed;
	right: 0;
	bottom: 70px;
	width: 10%;
	display: block;
}

#header .sns li {
	width: 100%;
	margin-bottom: 3%;
}

#header .sns li a img {
	width: 100%;
}


/* Footer 
----------------------------------- */

#footer {
	padding-bottom: 50px;
}

#footer li a {
	display: block;
	padding: 15px 10px;
	text-decoration: none;
	background: url(images/common/footer_listmark.png) no-repeat 97% center;
}


/* Footer ページメニュー */
#footer .menu {
	margin: 0;
	padding: 0;
}

#footer .menu li:first-child {
	border-top: 1px solid #ccc;
}

#footer .menu li {
	margin: 0;
	padding: 0;
	list-style: none;
	background: #C9E2FF;
}

#footer .menu li:nth-child(2n) {
	background: #FFF;
}

#footer .menu li a {
	padding: 15px 0 15px 10px;
	display: block;
	color: #000;
	width: calc(100% - 10px);
}

#footer .pagenavi-title {
	margin: 0;
	padding: 10px;
	background-color: #036EB8;
	color: #fff;
	text-align: center;
}

body .pc-switcher {
	margin-bottom: 100px;
}

#footer-bottom {
	background: url(images/common/footer-bottom_listmark.png) no-repeat 93% center #2a6a35;
	z-index: 100;
}

#footer-bottom a {
	color: #fff;
	font-size: 114%;
	font-weight: bold;
}

#footer-bottom {
	width: 100%;
	padding: 5px;
	position: fixed;
	bottom: 0;
	text-align: center;
}

#footer-bottom a {
	margin: 0 5px;
	display: inline-block;
	padding: 10px;
	border-radius: 5px;
	text-decoration: none;
	text-align: center;
}

#footer nav {
	margin-bottom: 50px;
}

#footer .groupttl {
	background: #009944;
	color: #FFF;
	margin-bottom: 20px;
	text-align: center;
	font-weight: bold;
	font-size: 114%;
	padding: 7px 0;
}

#footer .group {
	padding: 0 3% 30%;
	background: url(images/common/footer_img.png) no-repeat right bottom;
	-webkit-background-size: 60%;
	background-size: 60%;
	width: 94%;
	margin-bottom: 20px;
}

#footer .totop {
	border-top: 1px dotted #bdbdbd;
	border-bottom: 3px solid #acacac;
	padding-top: 40px;
}

#copy {
	margin: 50px 0;
	text-align: center;
	font-size: 0.8em;
}


/* ------------------------------------------
	スマホ用の下層ページスタイル記述
--------------------------------------------- */

/* INDEX
------------------------------------ */


#mainarea .rslides_nav {
	margin-top: 5px;
	color: #008CFF;
	text-decoration: none;
	display: block;
}

#mainarea .prev {
	margin-left: 2%;
	float: left;
	padding: 2px 6px;
	border-radius: 50%;
	background-color: #FFF;
}

#mainarea .next {
	margin-right: 2%;
	float: right;
	padding: 2px 6px;
	border-radius: 50%;
	background-color: #FFF;
}

.rslides_tabs {
	text-align: center;
}

.rslides_tabs li {
	display: inline;
}


#top #container .feature {
	width: 94%;
	padding: 0 3%;
	margin-bottom: 15px;
}

#top #container .feature .imgarea {
	width: 100%;
}

#top #container .feature .imgarea img {
	width: 100%;
}

#top #container .feature h3 {
	border: none;
	text-align: center;
}

#top #container .feature h3 img {
	width: 80%;
}

#top #container .feature>p {
	padding: 15px 5%;
	color: #717171;
	width: 90%;
}

#top #container .feature2 .imgarea {
	float: right;
}

#top #container .banner {
	margin-bottom: 40px;
}

#top #container .tour_cat {
	width: 100%;
	margin-bottom: 30px;
}

#top #container .tour_cat h3 {
	border-bottom: none;
	padding: 7px 0;
	text-align: center;
	font-size: 129%;
	color: #FFF;
}

#top #container .tour_overseas {
	margin-bottom: 40px;
}

#top #container .tour_cat>div {
	width: 94%;
	margin: 0 auto 20px;
}

#top #container .tour_cat>div .imgarea {
	width: 29.6%;
	float: left;
	text-align: center;
}

#top #container .tour_cat>div .imgarea img {
	max-width: 100%;
	max-height: 100%;
}

#top #container .tour_cat>div .txt {
	float: right;
	width: 66%;
}

#top #container .tour_cat>div .tx dt {
	margin-bottom: 20px;
}

.tourBtn {
	padding: 3px 5px;
	border-radius: 5px;
	background-color: #ccc;
	width: 60%;
	margin: 0 auto;
}

.tourBtn a {
	color: #333;
	text-decoration: none;
}

.green {
	background-color: #66a300;
}

.brown {
	background-color: #AA9D80;
}

.pink {
	background-color: #FF7CA6;
}

.yellow {
	background-color: #FAED00;
}

.blue {
	background-color: #2a37b8;
}

.bluegreen {
	background-color: #007688;
}

#top #container .eventlist {
	width: 94%;
	margin: 0 auto 30px;
}

#top #container .eventlist h3 {
	border-bottom: none;
	margin-bottom: 30px;
}

#top #container .eventlist table {
	background: url(images/page/top/event_bg.png) no-repeat center bottom;
	-webkit-background-size: 100%;
	background-size: 100%;
}

#top #container .eventlist table tr {
	border-bottom: 1px solid #C9CACA;
}

#top #container .eventlist table tr th,
#top #container .eventlist table tr td {
	border-right: 1px solid #C9CACA;
	text-align: center;
	padding: 5px;
}

#top #container .eventlist table tr th:last-child,
#top #container .eventlist table tr td:last-child {
	border-right: none;
}

#top #container .eventlist table tr th:first-child,
#top #container .eventlist table tr td:first-child {
	width: 15%;
}

#top #container .eventlist table tr th {
	border-bottom: 2px solid #898989;
	background: #EFEFEF;
}

#top #container .newsarea {
	width: 94%;
	margin: 0 auto 30px;
}

#top #container .newsarea ul li {
	border-bottom: 1px dashed #999;
	margin-bottom: 10px;
}

#top #container .newsarea ul li a {
	display: block;
	width: 98%;
	padding: 0 0 7px 2%;
	text-decoration: none;
	color: #222;
}

#top #container .newsarea ul li a span {
	font-size: 87%;
}

/* 店舗・会社案内
----------------------------- */
#table_information {
	margin: 10px 0;
	width: 100%;
}

#table_information th,
#table_information td {
	padding: 5px;
}

#table_information th {
	width: 30%;
}

#table_information th,
#table_information td {
	border-bottom: 1px dotted #ccc;
}



/* ブログ
----------------------------- */
.article {
	padding: 10px;
	margin-bottom: 50px;
	border-radius: 5px;
	border: 1px solid #ccc;
	background-color: #fff;
	box-shadow: 0 0 3px #ccc;
}

.article .post-meta {
	/* 記事メタ情報 */
	text-align: left;
	font-size: 0.8em;
}

.wp-pagenavi {
	/* ページ送り */
	margin: 50px 0 20px;
	text-align: center;
	font-size: 0.8em;
}

#single-paging {
	/* 詳細ページ送り */
}

#signature-block {
	/* ブログ署名欄 */
	clear: both;
	padding: 50px 0 0;
	word-wrap: break-word;
}

/* 問い合わせ
----------------------------- */
.form_box .mailform-tbl {
	clear: both;
	margin-bottom: 20px;
	width: 100%;
}

.form_box .mailform-tbl th,
.form_box .mailform-tbl td {
	padding: 10px;
	display: block;
	border: 1px solid #ccc;
}

.form_box .mailform-tbl th {
	background-color: #f0f0f0;
}

.form_box .mailform-tbl td {}

.form_box .mailform-tbl td label {
	margin: 0 3px 3px 0;
	display: inline-block;
}

.form_box .mailform-tbl td input,
.form_box .mailform-tbl td textarea {}

#submit-button {
	text-align: center;
}

#submit-button input {
	padding: 5px;
	cursor: pointer;
}

/****************************************/
/*************** contents ***************/
/****************************************/

/** about **/
#about h3 {
	border-bottom: none;
}

#about .box {
	margin-bottom: 40px;
}

#about .box .imgarea {
	width: 100%;
	text-align: center;
}

#about .box .imgarea img {
	width: 75%;
}

/** tour **/
.overseas {
	background-color: #2C8CFD;
}

.original {
	background-color: #FF7CA6;
}

.years {
	background-color: #87D700;
}

#tour #tour_main {
	clear: both;
}

#tour .ai1ec-pull-left {
	margin-bottom: 20px;
}

#tour .tour_inner h2 {
	background: #33A142;
	color: #fff;
	font-weight: bold;
	text-align: center;
	border-radius: 10px;
	letter-spacing: 0.1em;
	margin-bottom: 20px;
	border-bottom: none;
}

#tour h3 {
	border-bottom: none;
}

#tour .tour_bt {
	margin-bottom: 30px;
}

#tour .tour_bt li {
	margin: 0 auto 20px;
	width: 75%;
}

#tour .tour_bt li:last-child {
	margin: 0 auto;
}

#tour .tour_box .tour_category {
	float: right;
	width: 50%;
}

#tour .tour_box .tour_category dt,
#tour .tour_box .tour_category dd {
	margin-bottom: 10%;
	text-align: center;
}

#tour .tour_box .tour_img_left {
	float: left;
	width: 49%;
}

#tour .tour_box .tour {
	clear: both;
	margin-bottom: 20px;
	border-bottom: 1px solid #ababab;
}

#tour .tour_box .tour .tour_info_right {
	width: 100%;
}

#tour .tour_box .tour .tour_info_right dl dd {
	margin-bottom: 10px;
	border-bottom: 1px dashed #bcbcbc;
	padding-bottom: 5px;
}

#tour .tour_box .tour ul li {
	text-align: center;
	margin-bottom: 15px;
}

#request_link {
	background: none !important;
	border-bottom: none !important;
	padding: 0 !important;
}

#menu .sub_menu dt {
	text-align: center;
	background-image: -moz-linear-gradient(top, #ffffff, #f2f2f2);
	background-image: -ms-linear-gradient(top, #ffffff, #f2f2f2);
	background-image: -webkit-linear-gradient(top, #ffffff, #f2f2f2);
	background-image: linear-gradient(top, #ffffff, #f2f2f2);
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px;
	padding: 7px 0;
	border: 1px solid #cdcdcd;
	margin-bottom: 15px;
}

#menu .sub_menu dd .left_img {
	text-align: center;
}

#menu .sub_menu dd {
	margin-bottom: 25px;
	display: none;
}

#menu .sub_menu dd .left_img img {
	width: 80%;
}

.side_navi h2#sidebar_ttl {
	background: none;
	border-bottom: none;
	margin-bottom: 20px;
	margin-top: 40px;
	text-align: center;
}

.side_navi ul {
	margin-bottom: 30px;
	padding-bottom: 20px;
	border-bottom: 1px dotted #bcbcbc;
}

.side_navi ul li {
	display: inline-block;
	margin-right: 15px;
	margin-bottom: 10px;
	padding: 6px 8px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}

.side_navi ul li a {
	color: #FFF;
	text-decoration: none;
}

.tour_kind li {
	background: #33A442;
}

.place_kind li {
	background: #A50D23;
}

.level_kind li {
	background: #0147C1;
}

.tour_area ul.tour_category {
	overflow: hidden;
	margin-bottom: 20px;
}

.tour_area ul.tour_category li {
	display: inline-block;
	padding: 8px 15px;
	margin-right: 10px;
	text-align: center;
	margin: 0 10px;
	margin-bottom: 10px;
}

.tour_area dl.tour_category2 {
	overflow: hidden;
	clear: both;
	margin-bottom: 30px;
}

.tour_area dl.tour_category2 dt {
	font-size: 141%;
	float: left;
	line-height: 45px;
}

.tour_area dl.tour_category2 dd {
	float: left;
	margin-left: 20px;
}

.tour_area p.tour_txt_area {
	padding: 20px;
	font-size: 18px;
	background: #D8DF99;
	line-height: 1.8em;
	margin-bottom: 40px;
}

.tour_area div.tour_img {
	width: 90%;
	margin: 20px auto;
}

.tour_area .tour_guide {
	width: 100%;
	margin-bottom: 50px;
}

.tour_area .tour_guide dl {
	border-bottom: 1px dashed #000;
	padding-bottom: 5px;
	margin-bottom: 10px;
}

.tour_area .tour_guide dl dd {
	font-size: 16px;
}

.tour_area p.tour_day {
	font-size: 20px;
	margin-bottom: 20px;
}

.tour_area p.tour_txt_area2 {
	font-size: 13px;
	margin-bottom: 35px;
}

.tour_area p.tour_img2 {
	width: 310px;
	height: 235px;
	background-color: #f4f4f4;
	float: left;
	margin-bottom: 40px;
}

.tour_area p.tour_txt_area3 {
	float: left;
	margin-left: 20px;
}

.tour_area .title_area {
	border-bottom: 1px solid #cecece;
	padding-bottom: 5px;
	margin-bottom: 10px;
}

.tour_area .content_area {
	margin-bottom: 30px;
}


#detail-contact .telbtn,
#school_contact .telbtn,
#form_contact .telbtn,
#contact_area .telbtn {
	text-align: center;
	background-image: -moz-linear-gradient(top, #ffffff, #f2f2f2);
	background-image: -ms-linear-gradient(top, #ffffff, #f2f2f2);
	background-image: -webkit-linear-gradient(top, #ffffff, #f2f2f2);
	background-image: linear-gradient(top, #ffffff, #f2f2f2);
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px;
	padding: 7px 0;
	border: 1px solid #cdcdcd;
	margin-bottom: 15px;
}

#detail-contact .telbtn a,
#school_contact .telbtn a,
#form_contact .telbtn a,
#contact_area .telbtn a {
	text-decoration: none;
	color: #1f1f1f;
	font-weight: bold;
}

#detail-contact h3 {
	margin-bottom: 0;
}

#detail-contact #form,
#school_contact #form,
#form_contact #form,
#contact_area #form {
	width: 100%;
}

#detail-contact #form th,
#school_contact #form th,
#form_contact #form th,
#contact_area #form th {
	width: calc(100% - 10px);
	display: block;
	background: #1f1f1f;
	color: #FFF;
	padding: 3px 5px;
}

#detail-contact #form th>p,
#school_contact #form th>p,
#form_contact #form th>p,
#contact_area #form th>p {
	background: #F00;
	display: inline-block;
	padding: 0 3px;
}

#detail-contact #form th>span,
#school_contact #form th>span,
#form_contact #form th>span,
#contact_area #form th>span {
	background: #F00;
	display: inline-block;
	padding: 0 3px;

	margin: 0 0 0 10px;
}

#detail-contact #form td,
#school_contact #form td,
#form_contact #form td,
#contact_area #form td {
	display: block;
	width: calc(100% - 10px);
	padding: 3px 5px;
	line-height: 30px;
}

#detail-contact #form td.body_feature input[name="height"],
#detail-contact #form td.body_feature input[name="weight"],
#school_contact #form td.body_feature input[name="height"],
#school_contact #form td.body_feature input[name="weight"] {
	width: 18%;
}

#detail-contact #form td.body_feature input[name="foot01"],
#school_contact #form td.body_feature input[name="foot01"] {
	width: 16%;
}

#detail-contact #form td.body_feature input[name="foot02"],
#school_contact #form td.body_feature input[name="foot02"] {
	width: 10%;
}

#detail-contact #form td input,
#detail-contact #form td textarea,
#school_contact #form td input,
#school_contact #form td textarea,
#form_contact #form td input,
#form_contact #form td textarea,
#contact_area #form td input,
#contact_area #form td textarea {
	width: 80%;
}

#contact_area #form td input#zip1,
#contact_area #form td input#zip2 {
	width: 15%;
}

#detail-contact #form td input[type="radio"],
#detail-contact #form td input[type="checkbox"],
#school_contact #form td input[type="radio"],
#school_contact #form td input[type="checkbox"],
#form_contact #form td input[type="radio"],
#form_contact #form td input[type="checkbox"],
#contact_area #form td input[type="radio"],
#contact_area #form td input[type="checkbox"] {
	width: auto;
}

#form td#Calc_item>span {
	display: block;
	margin: 0 0 10px 0;
}

#submit {
	text-align: center;
	margin-bottom: 20px;
}

#submit input {
	padding: 10px 25px;
}

.contact_info .pr_info {
	height: 200px;
	overflow-y: scroll;
	padding: 10px 3%;
	width: calc(88% - 2px);
	border: 1px solid #cdcdcd;
	margin: 0 auto 20px;
}


#campaign_area .campaign_main {
	width: calc(100% - 6px);
	border: 3px solid #2C8BC5;
	margin-bottom: 40px;
}

#campaign_area .campaign_main h3.c_main_title {
	font-size: 26px;
	text-align: center;
	padding-top: 40px;
	margin-bottom: 20px;
	line-height: 30px;
}

#campaign_area .campaign_main .c_price {
	width: 100%;
	text-align: center;
	margin: 20px auto 30px;
}

#campaign_area .campaign_main .c_price p {
	margin-bottom: 10px;
	font-size: 18px;
}

#campaign_area h3.campaign_title {
	width: calc(100% - 60px);
	background: url(images/page/campaign/campaign_title.png) no-repeat left bottom;
	font-weight: bold;
	line-height: 27px;
	font-size: 24px;
	padding: 20px 0 20px 60px;
	margin-bottom: 30px;
	border-bottom: none;
}

#campaign_area p.c_txt_area {
	width: 985px;
	height: auto;
	margin-left: auto;
	margin-right: auto;
	font-size: 16px;
	line-height: 1.8em;
	margin-bottom: 40px;
}

#campaign_area p.c_img {
	margin-bottom: 40px;
}

#campaign_area p.c_img img {
	width: auto;
	height: 270px;
}

#school_area {
	width: 100%;
	overflow: hidden;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 50px;
}

#school_area h2.school_top {
	text-align: center;
	margin-bottom: 30px;
}

#school_area .school_txt {
	width: 100%;
	background: url(../images/page/school/school_img02.png) no-repeat center top;
	margin-bottom: 20px;
}

#school_area .school_txt p {
	font-size: 16px;
	line-height: 1.6em;
}

#school_area ul.s_course li {
	margin-bottom: 10px;
	text-align: center;
}

/*-----スクール更新-----*/
#school_main {
	clear: both;
	overflow: hidden;
	margin-bottom: 50px;
}

#school_main .side_navi {
	width: 100%;
}

#school_main .side_navi h2 {
	text-align: center;
	margin-bottom: 20px;
	background: none;
	border-bottom: none;
}

#school_main .side_navi h3 {
	text-align: center;
	margin-bottom: 20px;
}

#school_main .side_navi p {
	width: 70%;
	text-align: center;
	line-height: 42px;
	background-color: #33A442;
	color: #fff;
	font-size: 16px;
	letter-spacing: 0.2em;
	margin: 0 auto 5px;
}

#school_main .side_navi p.all {
	background: none;
	margin-bottom: 20px;
}

#school_main .side_navi ul {
	width: 100%;
	border-bottom: 1px solid #DADADA;
	margin-bottom: 10px;
	text-align: center;
}

#school_main .side_navi ul li {
	font-size: 14px;
	width: calc(70% - 2px);
	margin-right: 0;
}

#school_main .side_navi ul li a {
	padding: 10px 0;
	display: block;
	border-top: 1px solid #DADADA;
	border-left: 1px solid #DADADA;
	border-right: 1px solid #DADADA;
	color: #000;
	text-decoration: none;
}

#school_main .side_navi ul li a:last-child {
	border-bottom: 1px solid #DADADA;
}

#school_main .side_navi ul li a:hover {
	background: #E6ECF8;
}

.school_inner {
	width: 100%;
}

.school_inner h2 {
	background: #50A9ED;
	background-image: -moz-linear-gradient(top, #50a9ed, #05b6ff);
	background-image: -ms-linear-gradient(top, #50a9ed, #05b6ff);
	background-image: -webkit-linear-gradient(top, #50a9ed, #05b6ff);
	background-image: linear-gradient(top, #50a9ed, #05b6ff);
	color: #FFF;
	margin-bottom: 20px;
	line-height: 50px;
	font-size: 18px;
	padding: 0 10px;
	font-weight: bold;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}

.school_inner h2 a {
	color: #FFF;
	text-decoration: none;
}

.school_inner h2 a:hover {
	text-decoration: underline;
}

.school_inner .school_box {
	width: calc(92% - 2px);
	border: 1px solid #BEBFBF;
	padding: 15px 4%;
	margin-bottom: 40px;
}

.school_inner .school_box .s_img {
	width: 100%;
	margin: 0px auto 30px;
}

.school_inner .school_box .s_img .s_img_left {
	width: 100%;
	text-align: center;
}

.school_inner .school_box .s_img .s_img_left img {
	width: 100%;
}

.school_inner .school_box .s_img .s_img_left p.s_photo img {
	width: auto;
	max-height: 215px;
	text-align: center;
}

.school_inner .school_box .s_img .s_img_right {
	width: 80%;
	text-align: center;
	margin: 0 auto 15px;
}

.school_inner .school_box .s_img .s_img_right dl {
	margin-bottom: 5px;
}

.school_inner .school_box .s_img .s_img_right dl dt img {
	width: auto;
	height: 124px;
	text-align: center;
}

.school_inner .school_box .s_img .s_img_right dl dd {
	font-size: 19px;
	line-height: 24px;
}

.school_inner .school_box .s_img .s_img_right p.card_price {
	clear: both;
	text-align: center;
	font-size: 26px;
}

.school_inner .school_box div.s_content {
	border-bottom: 1px dashed #adadad;
	margin-bottom: 15px;
	padding-bottom: 5px;
}

.school_inner .school_box p.s_txt_area {
	font-size: 16px;
	padding-top: 20px;
	margin-bottom: 50px;
}

.school_inner .school_box ul.s_bt {
	width: 100%;
	margin: 0 auto 20px;
}

.school_inner .school_box ul.s_bt li {
	width: 100%;
	text-align: center;
	margin-bottom: 20px;
}

/*詳細*/
#school_area_info .s_img_right {
	text-align: center;
	margin-bottom: 20px;
}

#school_area_info .s_img_right .s_card dt {
	text-align: center;
}

#school_area_info .s_img_right .s_card dt img {
	max-width: 70%;
}

#school_area_info .s_img_right .s_card dd {
	text-align: center;
	margin-bottom: 20px;
}

#school_area_info .s_img_right .card_price {
	font-weight: bold;
	font-size: 129%;
}

#school_area_info .s_content {
	border-bottom: 1px dashed #acacac;
	margin-bottom: 10px;
}

#school_area_info .s_txt_area {
	margin: 20px 0;
}

#school_area_info .contact_bt {
	margin-bottom: 30px;
	text-align: center;
}

#school_area_info .contact_bt img {
	width: 80%;
}

#school_area_info .curriculum_box {
	margin-bottom: 30px;
}

#school_area_info .s_cost {
	margin-bottom: 30px;
}

#school_area_info .s_cost dl {
	border-bottom: 1px solid #bcbcbc;
	padding-bottom: 10px;
	margin-bottom: 10px;
}

#school_area_info .s_cost dl dt {
	float: left;
	clear: both;
	width: 70%;
}

#school_area_info .s_cost dl dd {
	width: 25%;
	text-align: right;
	margin-left: 70%;
}

#school_area_info .s_area_course .s_course li {
	margin-bottom: 10px;
	text-align: center;
}

/**** ショップ ****/

.shop_area {
	clear: both;
	overflow: hidden;
	margin-bottom: 50px;
}

.shop_area h2.shop_top {
	text-align: center;
	margin-bottom: 50px;
}

.shop_area ul.shop_item_bt {
	margin-bottom: 20px;
}

.shop_area ul.shop_item_bt li {
	margin: 0 10px 10px 0;
	display: inline-block;
}

.shop_area ul.shop_item_bt li a {
	display: block;
	background: #7CC933;
	padding: 10px 20px;
	color: #FFF;
	font-weight: bold;
	text-decoration: none;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}

.shop_area ul.shop_item_bt li a:hover {
	background: #ACCF00;
}

.shop_area h3.item_category {
	width: 100%;
	padding-bottom: 5px;
	font-size: 129%;
	font-weight: bold;
	color: #171C61;
	text-align: center;
}

/**/
.shop_area .shop_item {
	margin-bottom: 50px;
}

.shop_area h2.item_name {
	font-size: 149%;
	letter-spacing: 0.2em;
	margin-bottom: 30px;
}

.shop_area .shop_item .item_area {
	border: 1px solid #ccc;
	padding: 20px 2%;
	width: calc(96% - 2px);
	background: url(../images/page/shop/shop_bg.png) no-repeat bottom right;
}

.shop_area .shop_item .item_area .item_img {
	width: 100%;
}

.shop_area .shop_item .item_area .item_img .item_photo {
	margin-bottom: 20px;
}

.shop_area .shop_item .item_area .item_img .item_cat {
	font-size: 114%;
}

.shop_area dl.item_info2 {
	clear: both;
	border-bottom: 1px dotted #999;
	padding-bottom: 5px;
	margin-bottom: 10px;
	width: 100%;
}

.shop_area dl.item_info3 {
	border-bottom: 1px solid #999;
}

.shop_area dl.item_info2 dt {
	float: left;
	clear: both;
	font-size: 20px;
}

.shop_area dl.item_info2 dd {
	font-size: 20px;
}

.shop_area p.item_r {
	clear: both;
	font-size: 20px;
	color: #C73828;
}

.shop_area .shop_item .item_info {
	width: 100%;
}

.shop_area .shop_item .item_info p {
	font-size: 16px;
	border-bottom: 1px dashed #000;
	padding-bottom: 5px;
	margin-bottom: 5px;
	text-indent: 10px;
}

.shop_area .shop_item .item_info ul.feature_list {
	margin-bottom: 20px;
}

.shop_area .shop_item .item_info ul.feature_list li {
	display: block;
	font-size: 17px;
	float: none;
	border-bottom: 1px dashed #aeaeae;
	margin-bottom: 10px;
}

.shop_area .shop_item .item_info ul.navs {
	opacity: 0.9;
}

.shop_area .shop_item .item_info ul.navs li {
	margin-bottom: 30px;
	text-align: center;
}

.shop_area .shop_item .item_info ul.navs li:last-child {
	margin-bottom: 0;
}

.shop_area .maker li {
	width: 40%;
	text-align: left;
	float: left;
	padding-left: 10%;
	margin-bottom: 15px;
}

/*ショップ詳細*/

.shop_area .item_img_main {
	width: calc(100% - 2px);
	border: 1px solid #ccc;
	margin: 0 auto 20px;
	text-align: center;
}

.shop_area .item_img_main img {
	max-width: 100%;
	max-height: 300px;
}

.shop_area ul.item_list {
	width: 100%;
	margin-bottom: 30px;
}

.shop_area ul.item_list li {
	float: left;
	text-align: center;
}

.shop_area ul.thumb2 li,
.shop_area ul.thumb4 li {
	width: 48%;
	margin-right: 4%;
	margin-bottom: 10px;
}

.shop_area ul.thumb3 li {
	width: 32%;
	margin-right: 2%;
}

.shop_area ul.item_list li:last-child {
	margin-right: 0;
}

.shop_area ul.thumb4 li:nth-child(2n) {
	margin-right: 0;
}

.shop_area ul.item_list li img {
	width: 136px;
	height: 100px;
	border: 1px solid #ccc;
}

.shop_area p.item_comment {
	margin: 30px 0;
	font-size: 16px;
	height: 100px;
	overflow: auto;
}

.shop_area .shop_area2 ul li {
	font-size: 16px;
	margin-bottom: 8px;
}

.title_area {
	padding: 5px 0;
	border-top: 1px solid #000;
	border-bottom: 1px solid #000;
	margin-bottom: 30px;
	clear: both;
}

.title_area h4 {
	padding: 10px 0;
	color: #171C61;
	text-indent: 20px;
	background: #BCD9FA;
}

.content_area {
	margin-bottom: 40px;
}

.content_area a img {
	vertical-align: middle;
}

.content_area p {
	margin-bottom: 20px;
}

.shop_area .item_info2 p {
	font-size: 16px;
	padding-bottom: 5px;
	margin-bottom: 5px;
	text-indent: 10px;
}

.shop_area p.back_bt {
	text-align: center;
	margin: 30px 0;
}

.shop_area p.back_bt img {
	width: 70%;
}

/***** スタッフ *****/
#staff_area .staff_bt {
	margin-bottom: 15px;
}

#staff_area .staff_bt li {
	float: left;
	width: 32%;
	margin-right: 2%;
}

#staff_area .staff_bt li a {
	width: 100%;
	display: block;
	color: #FFF;
	background: #18389F;
	text-align: center;
	text-decoration: none;
	font-size: 91%;
}

#staff_area .staff_bt li:last-child {
	margin-right: 0;
}

#staff_area .facility_area .facility_box {
	width: 100%;
	margin-bottom: 15px;
}

#staff_area .facility_area .facility_box h4 {
	background: #A3C21F;
	text-align: center;
	color: #FFF;
	padding: 5px 0;
	font-size: 117%;
}

#staff_area .facility_area .facility_box .facility_img {
	text-align: center;
}

#staff_area .staff_area {
	width: 100%;
}

#staff_area .staff_area .staff_box {
	clear: both;
	margin-bottom: 40px;
}

#staff_area .staff_area p.staff_img {
	width: 100%;
	text-align: center;
	margin-bottom: 10px;
}

#staff_area .staff_area p.staff_img img {
	width: 70%;
}

#staff_area .staff_area .staff_info {
	width: 100%;
}

#staff_area .staff_area .staff_info h4 {
	background-color: #EBCB00;
	padding: 5px 0;
	border-radius: 10px;
	font-size: 125%;
	margin-bottom: 10px;
	text-align: center;
}

#staff_area .staff_area .staff_info dl {
	clear: both;
	padding-bottom: 5px;
	margin-bottom: 5px;
}

#staff_area .staff_area .staff_info dl dt {
	width: 100%;
	background: #FFD6A1;
}

#staff_area .staff_area .staff_info dl dd {
	width: 100%;
	border-bottom: 1px dashed #ccc;
}

#staff_area .staff_area .staff_txt {
	width: 270px;
	height: 220px;
	padding: 40px 25px 20px;
	margin: 0 auto;
	background: url(./images/page/staff/staff_bg.jpg) no-repeat center center;
}

#staff_area .staff_area .staff_txt h4 {
	font-size: 14px;
	color: #0D8A67;
	background: #fff;
	width: 205px;
	text-align: center;
	border-radius: 10px;
	margin: 20px auto 10px;
}

#staff_area .staff_area p.staff_txt1 {
	width: 205px;
	color: #fff;
	font-size: 12px;
	line-height: 1.8em;
	margin-left: auto;
	margin-right: auto;
}

#staff_area .access_area {
	clear: both;
}

#staff_area .access_area h3 {
	margin-bottom: 30px;
}

#staff_area .access_area .access_area_left {
	width: 100%;
}

#staff_area .access_area .access_area_left dl {
	padding-bottom: 8px;
	margin-bottom: 9px;
}

#staff_area .access_area .access_area_left dl dt {
	width: 100%;
	text-align: center;
	color: #fff;
	background-color: #036E95;
	font-size: 129%;
	margin-bottom: 10px;
}

#staff_area .access_area .access_area_left dl dd {
	width: 100%;
	font-size: 129%;
}

#staff_area .access_area .access_area_left dl dd span {
	float: right;
}


#staff_area .access_area .access_area_right {
	width: 100%;
	margin-bottom: 20px;
	text-align: center;
}

#staff_area .access_area .access_area_right img {
	width: 80%;
}

#staff_area .access_area2 {
	margin-bottom: 30px;
}

#staff_area .access_area2 .access_box {
	width: 100%;
	margin-bottom: 20px;
}

#staff_area .access_area2 .access_box h4 {
	margin-bottom: 20px;
}

#staff_area .access_area2 p.map_area {
	width: 100%;
	margin-bottom: 10px;
	text-align: center;
}

#staff_area .access_area2 p.map_bt {
	text-align: right;
}

div#gm_insideView {
	text-align: center;
}

/*staffnews 20200928*/
#bgimage.box1bg.image-base {
	width: 94%;
	margin: 0 auto 30px;
}

.newscontent {
	margin-top: 20px;
}

.newscontent .box1 {
	max-width: 960px;
	display: block;
	margin: 0 auto;
	width: 100%;
}

#main .newscontent h2.toph2 {
	text-align: center;
	color: #0A73C9;
	text-shadow: 1px 1px 9px #0A73C9;
	font-weight: bold;
	margin-bottom: 10px !important;
	border-bottom: 2px solid #0A73C9;
}

.newscontent .ticker {
	margin: 0 auto;
	padding: 10px;
	text-align: left;
	border: #ccc 1px solid;
	position: relative;
	overflow: hidden;
	background-color: #fff;
	border-radius: 5px;
	overflow: visible;
	height: 80px !important;
}

.newscontent .ticker ul {
	width: 100%;
	position: relative;
}

.newscontent .ticker ul li {
	width: 85%;
	list-style-type: none;
}

.newscontent .newsmore {
	text-align: center;
	text-decoration: none;
	color: #fff;
	z-index: 98;
	border-radius: 50px;
	background-color: #0A73C9;
	top: 20px;
	padding: 5px;
	width: 120px;
	margin: 0 auto;
	display: block;
	position: relative;
}

.top-blog {
	padding: 10px;
}

.top-blog ul {
	width: 100%;
	display: flex;
	justify-content: space-between;
	margin: 20px auto;
	flex-wrap: wrap;
}

.top-blog li {
	width: 48%;
	aspect-ratio: 1;
	margin-bottom: 10px;
}

.top-blog li img {
	width: 100%;
	height: 100% !important;
	object-fit: cover;
}

.top-blog li a {
	position: relative;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
}

.top-blog li span {
	position: absolute;
	left: 10px;
	right: 10px;
	margin: auto;
	text-align: center;
	color: #fff;
	filter: drop-shadow(2px 4px 2px black);
}

/*new top*/

.new_header {
	position: fixed;
	top: 0;
	all: unset;
	margin: 0 auto;
	overflow: hidden;
}

.n_header_flex {
	width: 95%;
	margin: 20px auto;
	display: flex;
	justify-content: space-between;
}

.n_header_flex_1 {
	width: 60%;
	margin: auto 0;
}

.n_header_flex_1 img {
	width: 80%;
}

.n_header_flex_2 {
	width: 40%;
	margin: auto 0 auto auto;
	display: flex;
	justify-content: flex-end;
	gap: 20px;
}

.n_header_tel {
	text-align: center;
	font-family: ヒラギノ角ゴシック;
	font-size: 20px;
	font-weight: 600;
	background-color: #1374C3;
	color: #fff !important;
	padding: 10px 20px;
	border-radius: 13px;
	text-decoration: none;
}

.n_header_tel i {
	margin: 0 10px 0 0;
}

.n_header_tel:hover {
	opacity: 0.8;
	text-decoration: none;
}

.n_header_ic {
	display: flex;
	align-items: center;
	vertical-align: middle;
	margin: auto 0;
	text-decoration: none;
}

.n_header_ic:hover {
	text-decoration: none;
	opacity: 0.8;
}

.n_header_ic i {
	text-decoration: none;
	margin: auto 0;
	font-size: 45px;
	color: #2A6A35;
}

.n_header_btns {
	border-top: solid 3px #F4F4F7;
	padding: 20px 0 0;
	width: 95%;
	display: flex;
	justify-content: space-between;
	margin: 5px auto 15px;
}

.n_header_btn_a {
	font-family: ヒラギノ角ゴシック;
	font-size: 18px !important;
	font-weight: 600;
	color: #000 !important;
	width: calc(100% / 5);
	display: flex;
	gap: 15px 0;
	flex-direction: column;
	text-decoration: none;
}

.n_header_btn_a:hover {
	text-decoration: none;
	opacity: 0.6;
}

.n_header_btn_a i {
	margin: 0 auto;
	font-size: 30px;
}

.n_header_btn_a span {
	text-align: center;
	display: block;
}

.n_container {
	width: 100%;
	margin: 0 auto;
}

.n1_bg {
	width: 100%;
}

.n1_img {
	width: 100%;
}

.n1_img img {
	width: 100%;
	pointer-events: none;
}

.n2_bg {
	padding: 50px 0;
}

.n2_box {
	width: 85%;
	margin: 0 auto;
	border: solid 3px #1374C3;
	border-radius: 28px;
	padding: 35px 35px;
	box-shadow: 15px 15px 0 0 #89B9E1;
}

.n2_top {
	display: flex;
	gap: 15px;
	justify-content: center;
}

.n2_b1 {
	margin: auto 0;
	pointer-events: none;
}

.n2_b1 img {
	pointer-events: none;
	width: 30px;
}

.n2_b2 {
	font-family: ヒラギノ角ゴシック;
	font-size: 35px !important;
	font-weight: 600;
	color: #1374C3;
	margin: auto 0;
}

.n2_flex {
	counter-reset: number 0;
	margin: 60px auto 20px;
	display: flex;
	gap: 57px 37px;
	flex-wrap: wrap;
	justify-content: center;
}

/* .n2_flex_1:nth-child(1),
.n2_flex_1:nth-child(2) {
	margin: 0;
	width: calc((100% - 72px) / 1);
} */

.n2_flex_1 {
	width: calc((100% - 74px) / 1);
	margin: 0 auto;
	position: relative;
	counter-increment: number 1;
}

.n2_flex_1 img {
	border-radius: 25px;
	width: 100%;
	position: relative;
	pointer-events: none;
}

.n2_flex_1::before {
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: -15px;
	left: -15px;
	width: 50px;
	height: 50px;
	margin: auto;
	color: #fff;
	font-family: ヒラギノ角ゴシック;
	background: #1374C3;
	border-radius: 50%;
	font-size: 35px !important;
	content: counter(number);
	z-index: 999;
}

.n2_flex_1::after {
	content: "";
	display: block;
	position: absolute;
	height: 20px;
	top: 37%;
	right: -25px;
	width: 13px;
	background: url(images/new/arrow.png) no-repeat center center / 100%;
	z-index: 9999;
}

.n2_flex_1:last-child::after {
	display: none;
}

.n2_flex_1 p {
	text-align: justify;
	font-size: 18px !important;
}

.n2_txt {
	position: relative;
	text-align: center;
	font-family: ヒラギノ角ゴシック;
	color: #1374C3;
	font-size: 30px !important;
	font-weight: 600;
	margin: 15px auto 10px;
}

.n3_bg {
	margin: 30px auto;
	width: 100%;
}

.n3_flex {
	width: 85%;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	gap: 55px;
}

.n3_flex:nth-child(2) {
	flex-direction: row-reverse;
}

.n3_flex:not(:last-child) {
	margin: 0 auto 60px;
}

.n3_flex1 {
	width: 100%;
	margin: 0 auto;
}

.n3_flex1 img {
	width: 100%;
	box-shadow: 15px 15px 0 0 #89B9E1;
	border-radius: 18px;
}

.n3_flex2 {
	width: 100%;
	margin: 0 auto;
}

.n3_t1 {
	font-family: ヒラギノ角ゴシック;
	font-size: 24px !important;
	font-weight: 600;
	color: #1374C3;
}

@media screen and (max-width:767px) {
	.n3_t2 {
		margin: 25px auto 0;
		font-family: ヒラギノ角ゴシック;
		font-size: 15px !important;
		font-weight: 400;
		line-height: 2.5em;
		box-sizing: border-box;
	}
}

.n3_t2 {
	margin: 25px auto 0;
	font-family: ヒラギノ角ゴシック;
	font-size: 15px !important;
	font-weight: 400;
	line-height: 2.5em;
	box-sizing: border-box;
}

.n4_box {
	width: 85%;
	margin: 0 auto;
	border: solid 3px #2A6A35;
	border-radius: 28px;
	padding: 35px 35px;
	box-shadow: 15px 15px 0 0 #94B49A;
}

.n4_b2 {
	font-family: ヒラギノ角ゴシック;
	font-size: 35px !important;
	font-weight: 600;
	color: #2A6A35;
	margin: auto 0;
}

.n4_flex {
	margin: 60px auto 60px;
	display: flex;
	flex-wrap: wrap;
	gap: 55px;
}

.n4_flex_b1 {
	width: 100%;
	margin: 0 auto;
}

.n4_flex_b1 img {
	width: 100%;
	box-shadow: 15px 15px 0 0 #94B49A;
	border-radius: 18px;
}

.n4_sp_img {
	margin: 60px auto 55px;
	text-align: center;
}

.n4_sp_img img {
	width: 70%;
	box-shadow: 15px 15px 0 0 #94B49A;
	border-radius: 18px;
	display: inline-block;
}

.n4_sp_t {
	margin: 0 auto 40px;
}

.n4_flex_b2 {
	width: 100%;
	margin: 0;
}

.n5_bg {
	background-color: #1374C3;
	padding: 60px;
}

.n5_bg2 {
	background-color: #fff;
	border-radius: 25px;
	padding: 30px 45px 60px;
}

.n5_img {
	margin: 40px auto 0;
}

.n5_img img {
	width: 100%;
	box-shadow: 15px 15px 0 0 #89B9E1;
	border-radius: 18px;
}

.n5_txt {
	margin: 50px auto 20px;
	font-family: ヒラギノ角ゴシック;
	font-weight: 400;
	line-height: 2.5em;
	font-size: 15px !important;
}

.n6_bg {
	background-color: #2A6A35;
	padding: 60px;
}

.n6_cal {
	margin: 60px auto;
}

.n6_cal .ai1ec-calendar-toolbar {
	border: none;
}

.n_footer {
	all: unset;
}

.n_footer_box {
	width: 85%;
	margin: 50px auto;
	background-color: #F4F4F7;
	padding: 60px;
	border-radius: 25px;
}

.n_footer_flex {
	display: flex;

}

.n_footer_b1 {
	width: 90%;
	margin: 0;
}

.n_footer_t1 {
	margin: 50px auto;
	font-family: ヒラギノ角ゴシック;
	font-weight: 400;
	line-height: 2em;
	font-size: 14px;
}

.n_footer_t2 {
	color: #818181;
	margin: 50px auto 0;
	font-family: ヒラギノ角ゴシック;
	font-weight: 400;
	line-height: 2em;
	font-size: 14px;
}

.n_footer_b2 {
	width: 10%;
	margin: auto 0 0;
}

.n_footer_ic i {
	font-size: 55px;
	color: #2A6A35;
}

.n_footer_ic {
	display: flex;
	gap: 20px;
}

.n_footer_ic a {
	display: block;
}

.n_footer_ic:hover {
	text-decoration: none;
	opacity: 0.8;
}

.bn_flex {
	width: 85%;
	margin: 50px auto 0;
	display: flex;
	gap: 30px;
	justify-content: center;
}

.bn_img {
	text-align: center;
	display: block;
	width: calc(100% / 3);
}

.bn_img img {
	box-shadow: 5px 5px 0 0 #C9C9C9;
	border-radius: 18px;
}