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

body {
	font-size:12px;
}
.sp {
	display: block;
}
.sp_h {
	display: block;
	width: 100%;
}
.pc {
	display: none;
}
.left {
	float: none;
}
.right {
	float: none;
}
.flex {
	display: block;
}
.pr,
.pa {
	position: static;
}
.half {
	width: 100%;
}
/********************************************common*******************************************/

/********** header *******************/
body#top header#header {
    padding-bottom: 3.5em;
}
header#header {
	position: relative;
    padding-top: 0.5em;
    padding-bottom: 4em;
}
header#header #spnav {
    display: block;
    font-size: 3em;
    position: absolute;
    top: 0.9em;
    right: 15px;
}
header#header #spnav a i {
	color:#fff;
}
header#header #spnav a span {
	font-size: 11px;
	display: block;
	margin-left: 1px;
	color:#fff;
	line-height: 0em;
	margin-top: -12px;
}
body#about header#header #spnav a span,
body#staff header#header #spnav a span,
body#recruit header#header #spnav a span,
body#contact header#header #spnav a span,
body#mail_form header#header #spnav a span,
body#gallery header#header #spnav a span {
	color: #2688A5;
}
body#about header#header #spnav a i,
body#staff header#header #spnav a i,
body#recruit header#header #spnav a i,
body#contact header#header #spnav a i,
body#mail_form header#header #spnav a i,
body#gallery header#header #spnav a i {
	color: #2688A5;
}
header#header nav ul#nav {
	z-index:100;
	width:100%;
	margin:0 0 1px 0; padding:0;
	display:none;
	padding-bottom: 0;
	padding-top: 2em;
	margin-top: 0em;
}
header#header nav ul#nav li {
	display:block;
	margin:1em auto;
	padding-left:0;
	font-size:1.2em;
	border:none;
	text-align:left;
	width: 87%;
	padding-right: 0;
}
header#header nav ul#nav li a {
	text-align: left;
}
header#header ul li img {
    margin-bottom: 1em;
    display: inline-block;
    margin-right: 1em;
}
div#google_translate_element {
    margin-top: 0;
    margin-right: 0;
    position: absolute;
    top: 1em;
    right: 10px;
}
header#header h1 {
    line-height: 0.9em;
    margin-left: 0.5em;
    width: 46%;
	margin-top: 0.5em;
}
header#header h1 a {
	font-size: 0.7rem;
}
nav#nav {
	background-image: url("../img/top/top_bg02.jpg");
	background-size: auto;
	background-repeat: repeat;
	background-position: left top;		
}
.top_text01 {
    width: 80%;
}
section#top_about h2 img,
section#about_courteous h2 img,
section#staff_contents h2 img {
    width: 70%;
}
section#top_staff h2 img,
section#top_gallery h2 img,
section#top_access h2 img,
section#top_contact h2 img,
section#gallery_contents h2 img,
section#page_contact h2 img,
section#about_profile h2 img {
    width: 50%;
}
section#top_recruit h2 img {
    margin-bottom: 0.2em;
    width: 70%;
}
.l_img {
    margin: 2em 0;
}
section#top_about .a_p1, section#top_staff .s_p1 {
    margin-bottom: 2em;
}
section#top_staff h2 {
    margin-bottom: 1.5em;
    font-size: 1.2rem;
}
section#top_recruit {
    padding-top: 2em;
}
section#top_recruit h2 {
    margin-bottom: 1.5em;
    font-size: 1.2rem;
}
section#top_recruit .r_p1 {
    margin-bottom: 2.5em;
}
section#top_recruit .flex_item01,
section#top_recruit .flex_item02 {
	position: relative;
	margin-bottom: 2em;
}
section#top_recruit .flex .box {
    left: 0em;
	right: 0em;
    bottom: 0.5em;
    position: absolute;
}
section#top_gallery .flex_item01, 
section#top_gallery .flex_item02, 
section#top_gallery .flex_item03 {
    width: 80%;
    margin:0 auto 3em auto;
}
.flex_img01 {
    width: 55%;
	margin-bottom: -0.5em;
}
.flex_img02 {
    width: 32%;
}
.flex_img03 {
	width: 41%;
    margin-bottom: -0.2em;    
}
.flex_img04 {
    width: 46%;
}
.o_line {
    margin-top: 0;
    width: 46%;
}
section#top_gallery {
    padding-top: 2em;
    padding-bottom: 5em;
}
section#top_gallery h2 {
    margin-bottom: 2em;
    font-size: 1.2rem;
}
section#top_access h2 {
    margin-bottom: 1em;
    font-size: 1.2rem;
}
section#top_access iframe {
	height: 300px;
}
section#page_contact h2 {
    margin-bottom: 1em;
    font-size: 1.2rem;
}
section#page_contact .p_c_line {
    margin-top: 1em;
    width: 79%;
}
section#page_contact .flex .flex_item01{
	margin-bottom: 3em;
}
.mail_img,
.tel_img {
    margin-right: 0.5em;
    width: 9%;
}
footer#footer ul li {
    margin-right: 0;
}
div#slide div.slide_sp1 {
	background-image:url("../img/top/slide1_sp.jpg");
	background-size: cover;
}
div#slide div.slide_sp2 {
	background-image:url("../img/top/slide2_sp.jpg");
	background-size: cover;
}
div#slide div.slide_sp3 {
	background-image:url("../img/top/slide3_sp.jpg");
	background-size: cover;
}
div#slide div.slide_sp4 {
	background-image:url("../img/top/slide4_sp.jpg");
	background-size: cover;
}
div#slide div.slide_sp5 {
	background-image:url("../img/top/slide5_sp.jpg");
	background-size: cover;
}
div#slide .swiper-slide {
    padding: 16em 0;
}

/******************************************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 2.5em;
}
section#about_top .flex_item01 img,
section#staff_top .flex_item01 img,
section#recruit_top .flex_item01 img,
section#contact_top .flex_item01 img {
    width: 55%;
	margin: 0 auto 3em auto;
	display: block;
}
section#about_top .flex_item02 img {
    width: 70%;
	margin: 0 auto;
}
section#about_profile {
    padding-top: 4em;
    padding-bottom: 3em;
}
section#about_profile dl {
    width: 96%;
    margin: 0.5em auto;
}
section#about_profile dl dt {
    padding-right: 1em;
}
section#about_taikitown .flex img {
    width: 80%;
    margin: 3em auto 0 auto;
}
section#about_taikitown h2 img {
    width: 59%;
}
section#about_taikitown h2 {
    margin-bottom: 2em;
    font-size: 1.2rem;
}
section#about_profile h2 {
	font-size: 1.2rem;
}
section#about_profile .middle_inner img.left, 
section#about_profile .middle_inner img.right {
    margin: 1em auto 1em auto;
    width: 96%;
	display: block;
}
section#about_taikitown .flex p {
    width: 96%;
    margin-left: auto;
    margin-right: auto;
}
/****************************staff*****************************************/
section#staff_contents .staff_box {
    width: 96%;
    margin: 1em auto 3em auto;
}
section#staff_top .flex_item02 img {
    width: 70%;
    margin: 0 auto;
	display: block;
}
/***********************recruit***********************************************/
section#recruit_top .flex_item02 img {
    margin-right: auto;
    margin-left: auto;
    width: 91%;
}
section#recruit_message h2 img {
    width: 86%;
}
section#recruit_message h2 {
    margin-bottom: 2em;
    font-size: 1.2rem;
}
section#recruit_message .flex .flex_item01 p {
    width: 96%;
}
section#recruit_message .flex .flex_item01 p.r_m01,
section#recruit_message .flex .flex_item01 p.r_m02 {
    margin-bottom: 1em;
}
section#recruit_message .flex .flex_item01 img {
    display: block;
	margin: 0 auto 4em auto;
}
section#recruit_message .flex {
    margin-bottom: 4em;
}
section#requirements h2 img {
    width: 67%;
}
section#requirements h2 {
    font-size: 1.2rem;
}
section#requirements img.arrow {
    margin-bottom: -3em;
    margin-top: 0.5em;
    width: 13%;
}
section#requirements .flex .flex_item01,
section#requirements .flex .flex_item02 {
    width: 100%;
}
section#requirements div.bg {
    padding: 5em 0 1em 0;
}
section#requirements dl dt {
    padding-right: 1em;
    padding-left: 0.3em;
}
section#requirements dl {
    padding-top: 0.5em;
}
section#requirements .flex .flex_item03 img.comment,
section#requirements .flex .flex_item04 img.comment {
    width: 60%;
}
/****************************gallery******************************************/
section#gallery_top .flex_item02 img {
    margin-right: auto;
    margin-left: auto;
    width: 89%;
    display: block;
}
section#gallery_top .flex_item01 img {
    width: 61%;
	margin: 0 auto 3em auto;
	display: block;
}
section#gallery_contents a {
    width: 49%;
    margin-right: 2%;
    margin-bottom: 2%;
	float: left;
}
section#gallery_contents a:nth-of-type(3n) {
    margin-right: 2%;
}
section#gallery_contents a:nth-of-type(2n) {
    margin-right: 0;
}
section#gallery_contents h2 {
	font-size: 1.2rem;
	margin-top: 2em;
}
section#gallery_contents {
    padding: 2em 0 4em 0;
}
/**********************contact********************************************/
section#contact_top .flex_item02 img {
	margin: 0 auto;
    width: 89%;
    display: block;
}
section#contact_top .flex_item01 img {
    width: 70%;
}
section#contact_form h2 img {
    width: 61%;
}
section#contact_form h2 {
	font-size: 1.5rem
}
section#contact_form p {
	text-align: left;
}
section#contact_form {
    padding: 4em 0 2em 0;
}
section#contact_form h3 {
    margin-bottom: 2em;
	margin-top: 0.5em;
    text-align: center;
    width: 96%;
	font-weight: 400;
}
section#contact_form .lower_inner {
	width: 96%;
}
section#contact_form input[type="submit"] {
    width: 61%;
}
/*************************************************************************/
@media (min-width: 376px) and (max-width: 499px) {
	div#slide .swiper-slide {
    padding: 17em 0;
}
}
/*************************************************************************/
@media (min-width: 500px) and (max-width: 650px) {
	div#slide .swiper-slide {
    padding: 18em 0;
}
}
/*************************************************************************/
@media (min-width: 651px) and (max-width: 767px) {
	div#slide .swiper-slide {
    padding: 22em 0;
}
}
/*********************************IE*************************************/
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {}














