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

body {
	font-size:12px;
}
.sp {
	display: block;
}
.pc {
	display: none;
}
.left {
	float: none;
}
.right {
	float: none;
}
.flex {
	display: block;
}
.pr,
.pa {
	position: static;
}
.half {
	width: 100%;
}
/********************************************common*******************************************/
/********************************slide**********************************/
div#slide {
	margin:6em auto 0 auto;height: auto;position: relative;z-index: -1000;
}
div#slide div.slide1 {
	background-image:url("../img/top/slide01_sp.jpg");background-size: cover;
}
div#slide div.slide2 {
	background-image:url("../img/top/slide05_sp.jpg");background-size: cover;
}
div#slide div.slide3 {
	background-image:url("../img/top/slide03_sp.jpg");background-size: cover;
}
div#slide div.slide4 {
	background-image:url("../img/top/slide04_sp.jpg");background-size: cover;
}
div#slide .swiper-slide {
	background-position:center;background-repeat:no-repeat;background-size:cover;padding: 20.5em 0 20.5em 0;
}
#logo_box_sp {
	top: 0;padding: 0.5em 1em;width: 40%;position: absolute;
}
#logo_box_sp h1 {
	float: left;
}
#logo_box_sp h1 img {
    width: 28%;float: left;max-height: 60px;
}
#logo_box_sp p {
    margin-top: 1em;font-size: 0.8rem;float: left;width: 64%;text-align: left;margin-left: 8%;
}
div#main_visual {
	position: relative;
}
div#google_translate_element {
    position: absolute;top: -1.25em;right: 15%;
}
div#contents_main_visual .wh_bg.pa,
div#slide div.wh_bg.pa {
    top: auto;bottom: 3em;right: 0em;z-index: 1000;height: auto;width: 80%;position: absolute;max-width: 350px;
}
div#contents_main_visual .wh_bg.pa {
	width: 70%;
}
div#contents_main_visual .wh_bg.pa h2.ymc,
div.wh_bg.pa h2.ymc {
	-webkit-writing-mode: horizontal-tb;
	-ms-writing-mode: lr-tb;
	writing-mode: horizontal-tb;
	line-height: 1.5em;
	letter-spacing: 0.35em;
	font-size: 0.938rem;
	margin-top: 0.5em;
	margin-left: 1em;
	margin-bottom: 0.5em;	
}
.zdo_drawer_menu .zdo_drawer_button {
    width: 32px;top: 4px;right: 4%;
}
.zdo_drawer_menu .zdo_drawer_bar {
    height: 1px;
}
.zdo_drawer_menu .zdo_drawer_button.active .zdo_drawer_bar {
    width: 32px;
}
.zdo_drawer_menu .zdo_drawer_button.active .zdo_drawer_bar1 {
    transform: rotate(45deg);
}
.zdo_drawer_menu .zdo_drawer_button.active .zdo_drawer_bar3 {
    transform: rotate(-45deg);
}
.zdo_drawer_menu .zdo_drawer_button.active .zdo_drawer_close {
    margin-left: -1em;position: relative;z-index: 1000;
}
/********** header *******************/
header#header {
    position: fixed;right: 0;width: 100%;height: 6em;z-index: 1001;
}
/************************************footer****************************/
footer#footer ul li {
	margin-top: 0.5em;
}
footer#footer ul li a {
	font-size: 0.938rem;
}
/****************************top**********************************/
section#top_about .flex .text_box,
section#top_about .flex .img_box,
section#top_staff .text_box,
section#top_staff .img_box, 
section#top_recruit .img_box,
section#top_gallery .img_box01,
section#top_gallery .img_box02,
section#about_top .flex .text_box,
section#about_top .flex .img_box,
section#about_company .flex .flex_item01,
section#about_company .flex .flex_item02,
div#facility .flex .flex_item,
section#hamanaka_town .flex_item,
section#recruit_top .flex .text_box,
section#recruit_top .flex .img_box,
section#requirements .wh_bg .flex .flex_item01, 
section#requirements .wh_bg .flex .flex_item02 {
    width: 100%;
}
#contents_main_visual {
	margin-top: 7em;
}
section#top_recruit .text_box {
    width: 100%;
    padding-left: 0;
}
section#top_gallery .text_box {
    margin: 0.5em 0 -6em 0.5em;position: relative;
}
section#top_gallery .in_flex {
	display: flex;background-color: #ADDFE0;width: 90%;padding: 5% 5%;
}
section#top_gallery .img_box02 .img_box {
	width: 47%;
}
section#top_gallery .img_box02 .img_box img.top_gallery_img02,
section#top_gallery .img_box02 .img_box img.top_gallery_img04 {
    margin-top: 12%;
}
section#top_gallery .img_box02 .img_box img.top_gallery_img01,
section#top_gallery .img_box02 .img_box img.top_gallery_img03 {
    margin-top: 0;
    margin-left: auto;
}
section#top_gallery .img_box02 .img_box img.top_gallery_img04 {
    margin-right: auto;
}
section#top_about .flex .text_box a,
section#top_staff .flex .text_box a,
section#top_recruit .flex .text_box a,
section#top_gallery .flex a {
    width: 8em;
    text-align: center;
    margin: 0.5em auto 2em auto;
}
section#top_about .flex .text_box a i,
section#top_staff .flex .text_box a i,
section#top_recruit .flex .text_box a i,
section#top_gallery .flex a i {
    float: right;
	margin-top: 4px;
}
h3.msr.fs40 {
    margin-bottom: 0.5em;
    font-size: 2rem;
}
h4.fs30 {
    margin: 1em 0 1em 0;
    text-align: center;
    font-size: 1.4rem;
}
section#top_about .flex .text_box p, 
section#top_staff .flex .text_box p, 
section#top_recruit .flex .text_box p {
    margin-bottom: 1.5em;
}
section#top_gallery .text_box p.fs120.msr {
    line-height: 0.8em;
    font-size: 5rem;
    margin-left: 2%;
}
section#top_gallery .text_box p.fs28.msr span {
    border-bottom: 4px solid 
    #333;
    margin-left: 3%;
    font-size: 1.3rem;
}
section#top_gallery img.view_img {
    margin-bottom: 2em;
}
section#page_contact .flex .flex_item01 {
    width: 100%;
}
section#page_contact .flex .flex_item01 .flex {
    display: flex;
}
section#page_contact .flex .flex_item01 .flex .contact_logo {
    margin-right: 3%;
    margin-left: 3%;
    width: 20%;
}
section#page_contact .flex .flex_item01 .flex .contact_address {
    width: 74%;
}
section#page_contact .flex .flex_item01 .flex .contact_address p {
    font-size: 0.8rem;
}
section#page_contact .flex .flex_item02 {
    width: 100%;
}
section#page_contact .flex .flex_item02 .flex {}
section#page_contact .flex .flex_item02 .flex a {
    width: 100%;
    display: block;
    margin: 1em auto;
    max-width: 350px;
}
section#page_contact .flex .flex_item02 h3 {
    margin-top: 1em;
}
img.cow_icon {
    margin-right: 0.4em;
    vertical-align: baseline;
    width: 10%;
}
.mail_fixed {
    bottom: 1em;
}
section#top_about .flex .text_box a.pc {
	display: none;
}
section#top_about .flex .text_box a.sp {
	display: block;
}
/****************************about*****************************************/
#about_bg {
	background-image: url("../img/about/about_top_sp.jpg");
}
#staff_bg {
	background-image: url("../img/staff/staff_top_sp.jpg");
}
#recruit_bg {
	background-image: url("../img/recruit/recruit_top_sp.jpg");
}
#gallery_bg {
	background-image: url("../img/gallery/gallery_top_sp.jpg");
}
#contact_bg {
	background-image: url("../img/contact/contact_top_sp.jpg");
}
.top_img_bg {
	position: relative;
    padding: 16em 0;
}
section#about_company .flex {
    margin-top: 0;
}
section#about_company .flex .flex_item01 h4,
section#about_company .flex .flex_item01 dl,
section#about_company .flex .flex_item02 h4, 
section#about_company .flex .flex_item02 dl {
    margin-left: 2%;
}
div#facility {
    background-color: #EBECEF;
	padding: 3em 0 1em 0;
}
div#facility .flex {
    margin-bottom: 0;
}
div#facility .flex img {
    max-width: 767px;
}
div#facility .flex .flex_item {
	margin: 0 auto 2em auto;
}
div#facility .gr2_bg {
	display: none;
}
div#facility .flex .wh_bg {
    position: relative;
	width: 90%;
	padding: 1.5em 0;
	margin: -2em auto 0 auto;
}
div#facility .flex .wh_bg p{
	font-size:0.975rem; 
}
section#about_top .flex .text_box p.mt_p {
    margin-top: 2em;
}
section#about_company {
    margin-top: 5em;
}
section#about_company h4.fs30 {
    margin-top: 3.5em;
	width: 96%;
}
section#about_company .flex .flex_item01 {
    padding-bottom: 2em;
    padding-top: 1em;
	margin-top: -5em;
}
section#about_company h4.fs30 {
    margin-top: 3.5em;
}
section#about_company .flex .flex_item02 h4 {
    margin-top: 1.5em;
	width: 96%;
}
section#hamanaka_town a {
    margin-bottom: 2em;
	width: 96%;
}
section#hamanaka_town h3 {
	font-size: 1.8rem;
	padding-bottom: 0;
}
section#hamanaka_town p {
    margin: 0.5em auto 0 auto;
}
/*********************staff***************************************************/
div#staff_container01 .flex_item, 
div#staff_container02 .flex_item,
div#staff_container03 .flex_item {
    width: 100%;
	margin: 0 auto;
}
div#staff_container02 .flex .flex_item {
    margin-right: auto;
}
div#staff_container01 .flex .wh_bg,
div#staff_container02 .flex .wh_bg,
div#staff_container03 .flex .wh_bg {
    padding: 1.25em 0 1.5em 0;
    margin-top: -3em;
    position: relative;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 3em;
}
div#staff_container02 .staff_box,div#staff_container03 .staff_box {
    margin-bottom: 3em;
}
section#photo_gallry {
	padding-bottom: 2em;
}
section#photo_gallry a {
    max-width: 264px;
    width: 48%;
    margin-right: 4%;
    margin-bottom: 4%;
    display: block;
    float: left;
}
section#photo_gallry a:nth-of-type(2n) {
	margin-right: 0;
}
body#about .top_img_bg,
section#about_top .flex:first-of-type,

body#gallery .top_img_bg,
body#recruit .top_img_bg, 
section#recruit_top .flex:first-of-type {
	margin-bottom: 3em;
}
body#staff .top_img_bg {
	margin-bottom: 4em;
}
section#recruit_top .flex .text_box p.fs23 {font-size: 1.2rem;}
section#requirements .img_flex .flex_item {
    width: 50%;
    max-width: 410px;
    float: left;
}
section#requirements {
    background: linear-gradient(to top, #EDEBCE 92%, transparent 20%);
}
section#requirements .wh_bg dl dt {
    padding-right: 1em;
    padding-left: 0.5em;
}
#r_title {
	font-size: 1.5rem;
}
section#recruit_top .flex .text_box p {
    margin-bottom: 1em;
}
section#recruit_top .flex .img_box {
    margin-top: 2em;
}
section#requirements h3 {
    font-size: 1.5rem;
}
section#staff_contents {
	padding-bottom: 1em;
}
body#contact div.wh_bg.pa h2.ymc,
body#mail_form div.wh_bg.pa h2.ymc {
    margin-top: 0.5em;
    margin-left: 1.5em;
}
section#movie_gallry ul li {
    inline-size: 100%;
}
dl.sns_btn {
    margin: 0 auto 1em auto;
    inline-size: 55%;
}

/*************************************************************************/
@media (min-width: 376px) and (max-width: 499px) {
	div#slide .swiper-slide {
    padding: 21.5em 0;
}
	div#slide div.wh_bg.pa {
    width: 69%;
}	
	.top_img_bg {
    padding: 17em 0;
}
}
/*************************************************************************/
@media (min-width: 500px) and (max-width: 650px) {
	div#slide .swiper-slide {
    padding: 28.5em 0;
}
	.top_img_bg {
    padding: 23em 0;
}
}
/*************************************************************************/
@media (min-width: 651px) and (max-width: 767px) {
	div#slide .swiper-slide {
    padding: 35.5em 0;
}
	.top_img_bg {
    padding: 29em 0;
}
}
/*********************************IE*************************************/
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
	body#staff div.wh_bg.pa h2.ymc,
	body#recruit div.wh_bg.pa h2.ymc,
	body#gallery div.wh_bg.pa h2.ymc,
	body#contact div.wh_bg.pa h2.ymc,
	body#mail_form div.wh_bg.pa h2.ymc {
	margin-top: 1em;
}
}














