@charset "utf-8";
/* CSS Document */

body {
    font-size: 16px;
    line-height: 2.10;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
	height:100%;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 0;
	margin-left: auto;
}
img {
	border:none; vertical-align:middle;
}
img.top {
	vertical-align:top;
}
img.middle {
	vertical-align:middle;
}
em {
	font-style:normal;
}
a {
	color:#000;
	text-decoration: none;
}
a i {
	margin-left: 5px;
	margin-right: 5px;
}
a:hover,
input[type="submit"]:hover,
input[type="reset"]:hover{
	opacity:0.8;
	filter:alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
	transition: 0.2s;
}
ul {
	padding-left: 0;
}
li {
	list-style-type:none;
}
header, main, article, footer, section, aside, nav, cite, figure, figcaption {
	display: block; 
}
h1,h2,h3,h4,h5,h6,p {
	margin-top: 0;
	margin-bottom: 0;
}
/************************ float **********************************************/
.c-both {
	clear:both;
}
.clearfix:after {
	content: "";
	clear: both;
	display: block;
}
.left {
	float:left;
}
.right {
	float:right;
}
.center {
	display:block;
	margin-left:auto; margin-right:auto;
	text-align:center;
}
/******* end float **********/
/******* flex box ***********/
.flex{
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
	justify-content: space-between;
}
.flex-re {
	flex-flow: row-reverse;
}
.flex img {
    object-fit: cover;
    object-position: top;
}
.height {
	justify-content: space-between;
  	flex-wrap: wrap;
	align-items: stretch;
}
/****** end flex box ********/
.inner {
	width:96%; max-width:1700px;
	margin-left:auto; margin-right:auto;
}
.middle_inner {
	width: 96%; 
	max-width:1100px;
	margin-left:auto; margin-right:auto;
}
.lower_inner {
	width: 86%; max-width:600px;
	margin-left:auto; margin-right:auto;
}
.half {
	width:50%;
}
span.hissu {
	color:#F03;
	font-size:12px;
}
span.memo {	
	color: #666;
	font-size: 0.875rem;
	font-weight: 600;
	margin-top: 1.5em;
	display: block;
}
span.error {
	display:block;
	color:#F03;
	font-size:12px;
	text-align: left;
	margin-left: 1.5em;
}
.heading {
	width: 100%;
}
.sp {
	display:none;
}
.pc {
	display:block;
}
.pr {
	position: relative;
}
.pa {
	position: absolute;
}
/*************** end class ***************************************************************/
main {
	width:100%;
	overflow:hidden;
}
.ls02{letter-spacing: 0.025em}
.ls05{letter-spacing: 0.05em}
.ls07{letter-spacing: 0.075em}
.ls10{letter-spacing: 0.1em}
.ls15{letter-spacing: 0.15em}
.ls20{letter-spacing: 0.2em}
.ls25{letter-spacing: 0.25em}
/**********************************  color     *****************************************/
.fcw{color: #FFF;}
.fcb{color: #000;}
.fcbl1{color: #40C8D9;}
.fcbl2{color: #2688A5;}
.fcbl3{color: #2794Af;}
.for1{color: #FF6D00;}
.fcre{color: #FF0044;}
/**********************************  font     *****************************************/
.fw3{font-weight: 300;}
.fw4{font-weight: 400;}
.fw5{font-weight: 500;}
.fw6{font-weight: 600;}
.fw7{font-weight: 700;}
.fw8{font-weight: 800;}
.fw9{font-weight: 900;}

.fs12{font-size: 0.75rem;}
.fs13{font-size: 0.813rem;}
.fs14{font-size: 0.875rem;}
.fs15{font-size: 0.938rem;}
.fs16{font-size: 1rem;}
.fs17{font-size: 1.063rem;}
.fs18{font-size: 1.125rem;}
.fs19{font-size: 1.188rem;}
.fs20{font-size: 1.25rem;}
.fs21{font-size: 1.313rem;}
.fs22{font-size: 1.375rem;}
.fs23{font-size: 1.438rem;}
.fs24{font-size: 1.5rem;}
.fs25{font-size: 1.563rem;}
.fs26{font-size: 1.625rem;}
.fs27{font-size: 1.688rem;}
.fs28{font-size: 1.75rem;}
.fs29{font-size: 1.813rem;}
.fs30{font-size: 1.875rem;}
.fs31{font-size: 1.938rem;}
.fs32{font-size: 2rem;}
.fs33{font-size: 2.063rem;}
.fs34{font-size: 2.125rem;}
.fs35{font-size: 2.188rem;}
.fs36{font-size: 2.25rem;}
.fs37{font-size: 2.313rem;}
.fs38{font-size: 2.375rem;}

.noto{font-family: 'Noto Sans JP', sans-serif;}
.ros{font-family: 'Rock Salt', cursive;}
/**********************************  common *******************************************/
.more_btn {
	width: 19em;
	padding: 1em 0 1em 1.5em;
	margin: 2em auto;
}
.more_btn i {
	margin-top: 0.4em;
	margin-right: 1em;
}
/**********************************  header  *****************************************/
#spnav {
	display: none;
}
body#top #logo2,
body#about #logo,
body#staff #logo,
body#recruit #logo,
body#gallery #logo,
body#contact #logo,
body#mail_form #logo,
body#top div#c_bg {
	display: none;
}
body#top header#header {
    background: -webkit-linear-gradient(left, #2689A5, #4CD9E7 );
    background: -o-linear-gradient(left, #2689A5, #4CD9E7 );
    background: linear-gradient(to right, #2689A5, #4CD9E7 );
	padding: 1em 0 1.5em 0;
}
body#about header#header,
body#staff header#header,
body#recruit header#header,
body#gallery header#header,
body#mail_form header#header,
body#contact header#header {
    background:none;
	padding: 1.5em 0;
}
body#about div#c_bg,
body#staff div#c_bg,
body#recruit div#c_bg,
body#gallery div#c_bg,
body#mail_form div#c_bg,
body#contact div#c_bg {
    background: -webkit-linear-gradient(left, #2689A5, #4CD9E7 );
    background: -o-linear-gradient(left, #2689A5, #4CD9E7 );
    background: linear-gradient(to right, #2689A5, #4CD9E7 );
	height: 8px;
}
header#header h1 {
	width: 14%;
}
div#google_translate_element {
	right: 0;
	top:1em;
}
div#header_menu {
	width: 96%;
}
header#header ul {
	margin-right: 10em;
}
body#top header#header ul li {
	margin-left: 2.5em;
	text-shadow: 0px 0px 10px #21778F;
}
body#about header#header ul li,
body#staff header#header ul li,
body#recruit header#header ul li,
body#gallery header#header ul li,
body#mail_form header#header ul li,
body#contact header#header ul li {
	margin-left: 2.5em;
	text-shadow: none;
}
body#about header#header ul li a,
body#staff header#header ul li a,
body#recruit header#header ul li a,
body#gallery header#header ul li a,
body#mail_form header#header ul li a,
body#contact header#header ul li a {
	color: #2688A5;
	font-weight: 400;
}
/*********************************************footer******************************************************/
footer#footer ul {
	margin-bottom: 2em;
}
footer#footer ul li {
	margin-right: 3.4em;
}
footer#footer ul li:last-of-type {
	margin-right: 0;
}
footer#footer .footer_inner {
	width: 90%;
	max-width: 621px;
}
footer#footer img.f_logo {
	max-width: 250px;
	width: 41%;
}
p.copy {
	margin: 1em auto;
}
/*********************************************page_contact*************************************************/
section#page_contact {
	 background: -webkit-linear-gradient(top, #2689A5, #32B3C9 );
    background: -o-linear-gradient(top, #2689A5, #32B3C9 );
    background: linear-gradient(to bottom, #2689A5, #32B3C9 );
	padding: 4.5em 0 4em 0;
}
section#page_contact h2 {
	margin-bottom: 3em;
}
section#page_contact .p_c_line {
	max-width: 480px;
	margin-top: 1.5em;
}
.tel_img {
	max-width: 60px;
	margin-right: 0.5em;
}
.mail_img {
	max-width: 60px;
	margin-right: 0.5em;
}
/*********************************************top********************************************************/
div#slide {
	margin:0 auto 0 auto;
	height: auto;
	position: relative;
	z-index: -1000;
}
div#slide div.slide1 {
	background-image:url("../img/top/slide1.jpg");
	background-size: cover;
}
div#slide div.slide2 {
	background-image:url("../img/top/slide2.jpg");
	background-size: cover;
}
div#slide div.slide3 {
	background-image:url("../img/top/slide3.jpg");
	background-size: cover;
}
div#slide div.slide4 {
	background-image:url("../img/top/slide4.jpg");
	background-size: cover;
}
div#slide div.slide5 {
	background-image:url("../img/top/slide5.jpg");
	background-size: cover;
}
div#slide .swiper-slide {
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
	padding: 6.5em 0 24.5em 0;
}
.top_text01 {
	max-width: 698px;
	width: 40%;
}
.o_line {
	margin-top: 1em;
}
.l_img {
	margin: 4em 0;
}
section#top_about {
	padding: 5em 0 2em 0;
}
section#top_about .a_p1,
section#top_staff .s_p1,
section#top_gallery .flex {
	margin-bottom: 4em;
}
section#top_staff {
	padding-top: 1em;
}
section#top_staff h2 {
	margin-bottom: 1.5em;
}
section#top_recruit .flex {
	margin: 3em 0;
}
section#top_gallery {
	padding: 4em 0 6em;
}
section#top_gallery h2 {
	margin-bottom: 3em;
}
section#top_recruit,
section#about_courteous,
section#recruit_message,
section#staff_contents {
	padding-top: 5em;
}
section#top_access div.map {
	margin: 1em auto;
}
section#top_access {
	background-color: #FFF227;
	padding: 4em 0 3em 0;
}
section#top_access p {
	line-height: 1.7;
	margin-bottom: 2em;
}
section#contact_form h2,
section#top_access h2,
section#about_taikitown h2,
section#about_taikitown p.a_t01,
section#about_taikitown p.a_t03,
section#about_courteous p.a_c1 {
	margin-bottom: 2em;
}
#logo,
#logo2,
section#top_staff h2 img,
section#top_gallery h2 img,
section#top_access h2 img,
section#top_contact h2 img,
section#page_contact h2 img,
section#about_profile h2 img,
section#gallery_contents h2 img {
	max-width: 250px;
}
section#top_about h2 img,
section#about_courteous h2 img,
section#staff_contents h2 img{
	max-width:660px;
	margin-bottom: 2em;
	width: 35%;
}
section#top_recruit h2 {
	margin-bottom: 2.5em;
}
section#top_recruit h2 img {
	max-width:800px;
	margin-bottom: 0.2em;
	width: 43%;
}
section#top_recruit .r_p1 {
	margin-bottom: 6.5em;
}
section#top_recruit .flex .box {
	left: 3em;
	bottom: 2em;
}
.flex_img01 {
	max-width:491px;
	margin-bottom:-1em;
}
.flex_img03 {
	max-width:375px;
	margin-bottom:-1em;
}
.flex_img02 {
	max-width:167px;
}
.flex_img04 {
	max-width:257px;
}
.img_title {
	max-width: 70px;
	margin-top: 1em;
}
section#top_gallery .flex_item01,
section#top_gallery .flex_item02,
section#top_gallery .flex_item03 {
	width: calc(88% / 3);
}
section#top_gallery .flex_item01 img.heading,
section#top_gallery .flex_item02 img.heading,
section#top_gallery .flex_item03 img.heading {
	max-width: 320px;
}
section#top_gallery .flex_item01 img.img_title,
section#top_gallery .flex_item02 img.img_title,
section#top_gallery .flex_item03 img.img_title {
	max-width: 70px;
}
/**********************************************about****************************************************/
section#about_top .flex,
section#staff_top .flex,
section#recruit_top .flex,
section#gallery_top .flex,
section#contact_top .flex {
	padding: 2.5em 0 3.5em;
}
section#about_top .flex_item01 img {
	max-width: 280px;
	margin-left: 9em;
}
section#about_top .flex_item02 img {
	max-width: 663px;
	margin-right: 3em;
}
section#about_courteous p {
	width: 96%;
	margin-left: auto;
	margin-right: auto;
	max-width: 690px;
}
section#about_taikitown {
	padding-top: 3em;
}
section#about_taikitown .flex {
	margin-bottom: 6em;
}
section#about_taikitown .flex p {
	width: 94.6%;
}
section#about_taikitown .flex img {
	max-width: 470px;
}
section#about_taikitown h2 img {
	max-width: 328px;
}
section#about_profile {
	padding-top: 7em;
}
section#about_profile .middle_inner img.left,
section#about_profile .middle_inner img.right {
	max-width: 500px;
	margin: 3em 0 5em 0;
	width: 46%;
}
section#about_profile dl {
	width: 35%;
	margin: 0.5em auto;
}
section#about_profile dl dt {
	width: 6em;
	padding-right: 2em;
}
section#about_profile dl dt,
section#about_profile dl dd {
	display: table-cell
}
section#about_profile img.center.heading {
	margin-top: 4em;
}
/**********************************************recruit****************************************************/
section#recruit_top .flex_item01 img {
	margin-left: 9em;
	max-width: 344px;
}
section#recruit_top .flex_item02 img {
	margin-right: 4em;
	max-width: 732px;
}
section#recruit_message .flex {
	margin-bottom: 6em;
}
section#recruit_message .flex .flex_item01 img {
	max-width: 273px;
	margin-right: 3em;
}
section#recruit_message .flex .flex_item02 img {
	max-width: 520px;
	margin-top: 1em;
}
section#recruit_message .flex .flex_item01 p {
	width: 94%;
	margin-right: auto;
	margin-left: auto;
}
section#recruit_message .flex .flex_item01 p.r_m01,
section#recruit_message .flex .flex_item01 p.r_m02 {
	margin-bottom:2em;
}
section#recruit_message .flex .flex_item01 p.r_m03,
section#requirements .flex {
	margin-bottom: 3em;
}
section#recruit_message h2 {
	margin-bottom: 4em;
}
section#recruit_message h2 img {
	max-width: 800px;
	margin-bottom: 0.3em;
}
section#requirements {
	padding-top: 6em;
}
section#requirements div.bg {
	background-color: #FFF227;
	padding: 13em 0 3em 0;
}
section#requirements h2 img {
	max-width: 406px;
}
section#requirements img.arrow {
	max-width: 150px;
	margin-bottom: -8em;
	margin-top: 2em;
}
section#requirements .flex .flex_item01,
section#requirements .flex .flex_item02 {
	width:47%;
}
section#requirements .flex .flex_item03 img.comment {
	max-width:318px;
	margin-top:1em;
}
section#requirements .flex .flex_item03 img.image,
section#requirements .flex .flex_item04 img.image {
	max-width:520px;
	margin-top:1em;
}
section#requirements .flex .flex_item04 {
	margin-top: 3em;
}
section#requirements .flex .flex_item04 img.comment {
	max-width:318px;
	margin-top:1em;
}
section#requirements dl {
	border-bottom: 1px solid #000;
	padding: 0.2em 0 0.5em 0;
	margin-top: 0;
	margin-bottom: 0;
}
section#requirements dl dt {
	width: 5em;
	padding-right: 3em;
}
section#requirements dl dd {
	line-height: 1.4;
}
section#requirements dl dt,
section#requirements dl dd {
	display: table-cell;
	text-align: left;
}
/**********************************************staff**************************************************/
section#staff_contents div#staff01 {
    background-image: url("../img/staff/staff01_on.jpg");
    background-size: cover;
    background-position: top left;
    background-repeat: no-repeat;
}
section#staff_contents div#staff02 {
    background-image: url("../img/staff/staff02_on.jpg");
    background-size: cover;
    background-position: top left;
    background-repeat: no-repeat;
}
section#staff_contents div#staff03 {
    background-image: url("../img/staff/staff03_on.jpg");
    background-size: cover;
    background-position: top left;
    background-repeat: no-repeat;
}
section#staff_contents div#staff04 {
    background-image: url("../img/staff/staff04_on.jpg");
    background-size: cover;
    background-position: top left;
    background-repeat: no-repeat;
}
section#staff_contents div.staff_box img.heading:hover {
	opacity: 0;
	filter: alpha(opacity=0);
	-ms-filter: "alpha( opacity=0 )";
	transition-property: opacity;
	transition-duration:1s;
    transition-timing-function:ease-in-out;
	cursor:pointer;
}
section#staff_contents .staff_box img {
	max-width: 520px;
}
section#staff_contents .staff_box {
	width: 47.3%;
	max-width: 520px;
}
section#staff_top .flex_item01 img {
	max-width: 293px;
	margin-left: 9em;
}
section#staff_top .flex_item02 img {
    max-width: 594px;
    margin-right: 6em;
}
section#staff_contents p {
	max-width: 690px;
	width: 96%;
	margin: 0 auto 3em auto;
}
section#staff_contents .flex {
	margin-bottom: 4em;
	margin-top: 6em;
}
section#staff_contents .flex h3 {
	margin-top: 1.5em;
}
/**************************************gallery***********************************************************/
section#gallery_contents {
	padding: 6em 0 7em 0;
}
section#gallery_top .flex_item01 img {
    max-width: 341px;
    margin-left: 8em;
}
section#gallery_top .flex_item02 img {
    max-width: 604px;
    margin-right: 6em;
}
section#gallery_contents div.middle_inner {
	max-width: 940px;
}
section#gallery_contents a {
	width: 32%;
	margin-right: 2%;
	margin-bottom: 2%;
}
section#gallery_contents a:nth-of-type(3n) {
	margin-right: 0;
}
section#gallery_contents a img {
	max-width: 300px;
}
section#gallery_contents h2 {
	margin: 3em auto 1em auto;
}
/******************************************contact*******************************************************/
section#contact_form {
	padding: 7em 0 6em 0;
}
section#contact_top .flex_item01 img {
    max-width: 359px;
    margin-left: 9em;
}
section#contact_top .flex_item02 img {
    max-width: 721px;
    margin-right: 4em;
}
section#contact_form .contact_inner {
	width: 96%;
	max-width: 700px;
	margin-right: auto;
	margin-left: auto;
}
section#contact_form h2 img {
	max-width: 287px;
	margin-bottom: 0.2em;
}
section#contact_form p {
	width: 96%;
	max-width: 530px;
	text-align: left;
	margin-bottom: 3.5em;
}
section#contact_form table {
	width:100%;
	margin:0 auto 1em auto;
}
section#contact_form table th {
	width:35.4%; 
	background-color:#D5F2F7; 
	border-bottom:solid 3px #fff;
	padding:0px 2% 0px 2%;
	color: #000; 
	text-align:right;
	font-weight: 500;
	font-size: 0.875rem;
}
section#contact_form table td {
	padding:12px 2% 12px 2%;
	color: #000;
}
section#contact_form table td input {
	width:98%; padding:1%; font-size:0.875rem;
}
section#contact_form table td textarea {
	width:98%; padding:1%; height:80px; font-size:0.875rem;
}
section#contact_form input[type="submit"] {
    -webkit-appearance: none;
    width: 43%;
    height: 2.6em;
	font-size: 1.2rem;
    background-color: #EA4335;
	border: none;
    color: #FFF;   cursor: pointer;
	margin-top: 1.5em;
	letter-spacing: 0.04em;
	padding: 2px 0;
	margin-bottom: 1em;
}
form a.back {
	display:inline-block;
	text-align:center;
	text-decoration:none;
	line-height:41px;
	width:40%; margin-bottom:31px; height:41px; font-size:1.25em;
	background-color: #009CFF;
	border: #009CFF solid 1px;
	color: #fff; cursor:pointer;
}
form a.post {
	display:inline-block;
	text-align:center;
	text-decoration:none;
	line-height:41px;
	width:40%; margin-bottom:31px; height:41px; font-size:1.25em;
	background-color:#FF0097; 
	border:solid 1px #FF0097;
	color:#FFF; cursor:pointer;
	
}
span.h {
	background-color:#FF0097;
	color:#FFF; font-size:0.7em; font-weight:400;
	display:inline-block;
	padding:1px 8px 0px 8px;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	-o-border-radius: 3px;
	-ms-border-radius: 3px;
}
span.n {
    background-color: #009CFF;
    color: #FFF;
    font-size: 0.7em;
    font-weight: 400;
    display: inline-block;
    padding: 1px 8px 0px 8px;
    border-radius: 3px;
    -moz-border-radius: 3px;
    -webkit-border-radius: 3px;
    -o-border-radius: 3px;
    -ms-border-radius: 3px;
}
body#mail_form section#contact_form h2 {
	margin: 1em auto 0 auto;
}
body#mail_form section#contact_form h3 {
	margin: 1em auto 0 auto;
}
section#contact_form p.text_box {
	margin-top: 1em;
}
section#contact_form p.check {
	margin-top: 2em;
}
section#contact_form h3 {
	margin-bottom: 3em;
}
/*******************************************ipad********************************************************/
@media (min-width: 768px) and (max-width: 1023px) {
	.top_text01 {
    width: 35%;
}
	div#slide .swiper-slide {
    padding: 4.5em 0 12.5em 0;
}
	header#header h1 {
    width: 21%;
}
	header#header ul {
    margin-right: 8.5em;
	margin-top: 1.4em;
}
	body#top header#header ul li,
	body#about header#header ul li, 
	body#staff header#header ul li, 
	body#recruit header#header ul li, 
	body#gallery header#header ul li,
	body#mail_form header#header ul li,
	body#contact header#header ul li {
    margin-left: 1em;
    font-size: 0.75em;
}
	body#about header#header,
	body#staff header#header,
	body#recruit header#header,
	body#gallery header#header,
	body#mail_form header#header,
	body#contact header#header {
    padding: 1em 0 0.5em 0;
}
	section#top_about h2 img,
	section#about_courteous h2 img,
	section#staff_contents h2 img {
    width: 50%;
}
	section#top_about .a_p1, section#top_staff .s_p1 {
    margin-bottom: 3em;
    font-size: 0.9rem;
}
	.o_line {
    margin-top: 0.5em;
    width: 29%;
}
	section#top_staff h2 img,
	section#top_gallery h2 img,
	section#top_access h2 img,
	section#top_contact h2 img,
	section#page_contact h2 img,
	section#about_profile h2 img,
	section#gallery_contents h2 img {
    width: 28%;
}
	section#about_taikitown h2 img {
    width: 35%;
}
	section#top_staff h2,
	section#top_gallery h2,
	section#top_recruit h2,
	section#top_access h2,
	section#top_contact h2,
	section#page_contact h2,
	section#about_profile h2,
	section#about_taikitown h2,
	section#gallery_contents h2,
	section#recruit_message h2,
	section#requirements h2,
	section#contact_form h2 {
	font-size: 1.1rem;
}
	section#top_about {
    padding: 3em 0 1em 0;
}
	.l_img {
    margin: 2em 0;
}
	section#top_recruit {
    padding-top: 1em;
}
	section#top_recruit .r_p1 {
    margin-bottom: 3.5em;
    font-size: 0.9rem;
}
	section#top_recruit h2 {
    margin-bottom: 1.5em;
}
	section#top_gallery {
	padding: 1em 0 2em 0;
}
	section#top_recruit h2 {
    margin-bottom: 1.5em;
}
	section#top_gallery h2 {
    margin-bottom: 3em;
}
	section#top_access h2 {
    margin-bottom: 2em;
}
	section#page_contact h2 {
    margin-bottom: 3em;
}
	section#page_contact .p_c_line {
    margin-top: 1em;
    width: 80%;
}
	section#page_contact {
    padding: 3.5em 0 3em 0;
}
	section#about_top .flex_item01 img {
    margin-left: 2em;
    width: 44%;
}
	section#about_taikitown .flex img {
    width: 88%;
	margin-top: 3em;
}
	section#about_top .flex_item02 img {
    width: 80%;
	margin-right: 1em;
	margin-top: 0.5em;
}
	section#about_top .flex,
	section#staff_top .flex,
	section#recruit_top .flex,
	section#gallery_top .flex,
	section#contact_top .flex {
    padding: 0.5em 0 1.5em;
}
	section#about_taikitown .flex p {
    width: 100%;
    font-size: 0.875rem;
}
	section#about_taikitown p.a_t01, section#about_taikitown p.a_t03 {
    margin-bottom: 1em;
}
	section#about_profile dl {
    width: 65%;
}
	section#about_courteous {
    padding-top: 3em;
}
	section#about_taikitown {
    padding-top: 2em;
}
	section#about_taikitown .flex {
    margin-bottom: 3em;
}
	section#about_profile {
    padding-top: 4em;
}
	section#about_profile .middle_inner img.left, section#about_profile .middle_inner img.right {
    margin: 2em 0 3em 0;
}
	section#staff_contents {
    padding-top: 3em;
}
	section#staff_top .flex_item01 img {
    margin-left: 2em;
    width: 44%;
}
	section#staff_top .flex_item02 img {
    width: 77%;
	margin-right: 1em;
	margin-top: 0.5em;
}
	section#staff_contents .flex {
    margin-bottom: 3em;
    margin-top: 3em;
}
	section#gallery_top .flex_item01 img {
    margin-left: 5em;
}
	section#gallery_top .flex_item02 img {
    margin-right: 3em;
}
	section#gallery_top .flex_item01 img {
    margin-left: 2em;
    width: 51%;
}
	section#gallery_top .flex_item02 img {
    width: 89%;
    margin-right: 1em;
    margin-top: 0.5em;
}
	section#gallery_contents {
    padding: 1em 0 3em 0;
}
	section#recruit_top .flex .flex_item01 img {
    margin-left: 2em;
    width: 52%;
}
	section#recruit_top .flex .flex_item02 img {
    margin-right: 1em;
    margin-top: 0.5em;
    width: 85%;
}
	section#recruit_message h2 img {
    margin-bottom: 0.3em;
    width: 60%;
}
	section#recruit_message .flex .flex_item02 img {
    margin-top: 4em;
    width: 88%;
}
	section#recruit_message .flex .flex_item01 p {
    width: 100%;
    font-size: 0.875rem;
}
	section#requirements h2 img {
    width: 40%;
}
	section#requirements img.arrow {
    margin-bottom: -4em;
    margin-top: 0.5em;
    width: 10%;
}
	section#requirements div.bg {
    padding: 6em 0 1em 0;
}
	section#requirements dl dt {
    width: 5em;
    padding-right: 1em;
}
	section#requirements .flex .flex_item03 img.comment,
	section#requirements .flex .flex_item04 img.comment {
    width: 65%;
}
	section#requirements .flex .flex_item03 img.image,
	section#requirements .flex .flex_item04 img.image {
    width: 90%;
}
	section#requirements .flex {
    margin-bottom: 1em;
}
	section#recruit_message .flex {
    margin-bottom: 2em;
}
	section#requirements {
    padding-top: 4em;
}
	section#recruit_message {
    padding-top: 3em;
}
	section#recruit_message h2 {
    margin-bottom: 2em;
}
	section#contact_top .flex_item01 img {
    margin-left: 2em;
	width: 52%
}
	section#contact_top .flex_item02 img {
    width: 95%;
	margin-right: 1em;
	margin-top: 0.5em;
}
	section#contact_form h2 img {
    width: 36%;
}
	section#contact_form {
    padding: 3em 0 2em 0;
}
}
/*******************************************ipad pro****************************************************/
@media (min-width: 1024px) and (max-width: 1222px) {
	header#header h1 {
    width: 21%;
}
	body#top header#header ul li,
	body#about header#header ul li, 
	body#staff header#header ul li, 
	body#recruit header#header ul li, 
	body#gallery header#header ul li, 
	body#mail_form header#header ul li, 
	body#contact header#header ul li {
    margin-left: 1.5em;		
}
	.top_text01 {
    width: 32%;
}
	div#slide .swiper-slide {
    padding: 7em 0 15em 0;
}
	section#top_staff h2 img,
	section#top_gallery h2 img,
	section#top_access h2 img,
	section#top_contact h2 img,
	section#page_contact h2 img,
	section#about_profile h2 img,
	section#gallery_contents h2 img {
    width: 18%;
}
	section#about_taikitown h2 img {
    width: 24%;
}
	section#top_staff h2,
	section#top_gallery h2,
	section#top_recruit h2,
	section#top_access h2,
	section#top_contact h2,
	section#page_contact h2,
	section#about_profile h2,
	section#about_taikitown h2,
	section#gallery_contents h2,
	section#contact_form h2 {
	font-size: 1.2rem;
}
	section#page_contact .p_c_line {
    width: 66%;
}
	section#top_recruit .flex .box {
    left: 1em;
    bottom: 1em;
}
	.flex_img01,
	.flex_img03 {
    float: left;
    width: 65%;
    margin-left: 0.5em;
}
	section#top_gallery .flex_item01, 
	section#top_gallery .flex_item02, 
	section#top_gallery .flex_item03 {
    width: calc(90% / 3);
}
	section#about_top .flex,
	section#staff_top .flex,
	section#recruit_top .flex,
	section#gallery_top .flex,
	section#contact_top .flex {
    padding: 1em 0 2em;
}
	section#about_top .flex_item01 img {
    margin-left: 3em;
	width: 35%;
}
	section#about_top .flex_item02 img {
	margin-right: 2em;	
    width: 90%;
}
	section#about_taikitown .flex img {
    width: 88%;
}
	section#about_profile dl {
    width: 50%;
}
	section#staff_top .flex {
    padding: 1em 0 2em;
}
	section#staff_top .flex_item01 img {
    margin-left: 3em;
    width: 35%;
}
	section#staff_top .flex_item02 img {
    width: 84%;
	margin-right: 3em;
}	
	section#gallery_top .flex_item01 img {
    margin-left: 3em;
    width: 41%;
}
	section#gallery_top .flex_item02 img {
    width: 90%;
	margin-right: 2em;
}
	section#recruit_top .flex .flex_item01 img {
    margin-left: 3em;
    width: 41%;
}
	section#recruit_top .flex .flex_item02 img {
    margin-right: 3em;
    width: 92%;
}
	section#recruit_message h2 img {
    margin-bottom: 0.3em;
    width: 47%;
}
	section#recruit_message .flex .flex_item02 img {
    width: 87%;
	margin-left: 3%;
}
	section#requirements h2 img {
    width: 30%;
}
	section#requirements h2 {
    font-size: 1.2rem;
}
	section#requirements img.arrow {
    margin-bottom: -4em;
    margin-top: 1em;
    width: 9%;
}
	section#requirements div.bg {
    padding: 7em 0 1em 0;
}
	section#requirements .flex {
    margin-bottom: 2em;
}
	section#requirements .flex .flex_item03 {
    width: 48%;
}
	section#requirements .flex .flex_item04 {
    margin-top: 3em;
    width: 48%;
}
	section#requirements .flex .flex_item03 img.comment,
	section#requirements .flex .flex_item04 img.comment {
    width: 60%;
}
	section#recruit_message h2 {
    margin-bottom: 3em;
    font-size: 1.2rem;
}
	section#contact_top .flex_item01 img {
    margin-left: 3em;
		width: 40%
}
	section#contact_top .flex_item02 img {
    width: 95%;
	margin-right: 3em;
}
	section#contact_form h2 img {
    width: 33%;
}
}
/*******************************************pc**********************************************************/
@media (min-width: 1223px) and (max-width: 1480px) {
	.top_text01 {
    width: 35%;
}
	div#slide .swiper-slide {
    padding: 6.5em 0 18.5em 0;
}
	section#top_staff h2 img,
	section#top_gallery h2 img,
	section#top_access h2 img,
	section#top_contact h2 img,
	section#page_contact h2 img,
	section#about_profile h2 img,
	section#gallery_contents h2 img {
    width: 18%;
}
	section#top_staff h2,
	section#top_gallery h2,
	section#top_recruit h2,
	section#top_access h2,
	section#top_contact h2,
	section#page_contact h2,
	section#about_profile h2,
	section#about_taikitown h2,
	section#gallery_contents h2,
	section#recruit_message h2,
	section#requirements h2,
	section#contact_form h2 {
	font-size: 1.2rem;
}
	section#page_contact .p_c_line {
    width: 66%;
}
	section#top_recruit .flex .box {
    left: 1em;
    bottom: 1em;
}
	.flex_img01,
	.flex_img03 {
    float: left;
    width: 67%;
    margin-left: 0.5em;
}	
	section#about_top .flex, 
	section#staff_top .flex, 
	section#recruit_top .flex, 
	section#gallery_top .flex, 
	section#contact_top .flex {
    padding: 1.5em 0 2.5em;
}
	section#about_top .flex_item01 img {
    margin-left: 4em;
	width: 36%;
}
	section#about_top .flex_item02 img {
    width: 93%;
}
	section#about_taikitown h2 img {
    width: 24%;
}
	section#about_profile dl {
    width: 40%;
}
	section#staff_top .flex_item02 img {
    margin-right: 4em;
    width: 90%;
}
	section#staff_top .flex_item01 img {
    margin-left: 4em;
    width: 38%;
}
	section#staff_top .flex_item02 img {
    width: 87%;
}
	section#gallery_top .flex_item01 img {
	width: 44%;
    margin-left: 5em;
}
	section#gallery_top .flex_item02 img {
    margin-right: 3em;
    width: 93%;
}
	section#recruit_message h2 img {
    width: 45%;
}
	section#requirements h2 img {
    width: 27%;
}
	section#requirements img.arrow {
    margin-bottom: -6em;
    margin-top: 1.5em;
    width: 10%;
}
	section#requirements div.bg {
    padding: 8em 0 2em 0;
}
	section#recruit_top .flex .flex_item01 img {
    margin-left: 4em;
    width: 44%;
}
	section#recruit_top .flex .flex_item02 img {
    width: 92%;
}
	section#contact_top .flex_item01 img {
    margin-left: 4em;
		width: 46%
}
	section#contact_top .flex_item02 img {
    width: 100%;
}
}
/*******************************************pc**********************************************************/
@media (min-width: 1481px) and (max-width: 1780px) {
	div#slide .swiper-slide {
    padding: 5.5em 0 21.5em 0;
}
	.top_text01 {;
	width: 36%;
}
	section#page_contact .p_c_line {
    width: 75%;
}
	section#about_top .flex_item01 img,
	section#gallery_top .flex_item01 img {
    margin-left: 5em;
}
	section#staff_top .flex_item01 img,
	section#recruit_top .flex .flex_item01 img,
	section#contact_top .flex_item01 img {
    margin-left: 6em;
}
	section#staff_top .flex_item02 img {
    margin-right: 4em;
}
	section#gallery_top .flex_item02 img {
    margin-right: 3em;
}
}
