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

body {
    font-size: 16px;
    font-family: 'Montserrat', "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", '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_s {
	justify-content: flex-start;
}
.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:1640px;
	margin-left:auto; margin-right:auto;
}

.sub_inner {
	width: 96%; 
	max-width:1400px;
	margin-left:auto; margin-right:auto;
}
.middle_inner {
	width: 96%; 
	max-width:1180px;
	margin-left:auto; margin-right:auto;
}
.lower_inner {
	width: 86%; max-width:575px;
	margin-left:auto; margin-right:auto;
}
.half {
	width:50%;
}
span.hissu {
	color:#F03;
	font-size:12px;
}
span.memo {
    color: #666;
    font-size: 0.9rem;
    font-weight: 600;
    margin-top: 2em;
	margin-bottom: 0.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     *****************************************/
.wh_bg {background-color: #FFF;}
.na1_bg {background-color: #394064;}
.na2_bg {background-color: #282E48;}
.eb_bg {background-color: #EAE8E1;}
.cr_bg {background-color: #EDEBCE;}
.bl_bg {background-color: #ADDFE0;}
.gr_bg {background-color: #F4F4F4;}
.gr2_bg {background-color: #EBECEF;}
.fcw {color: #fff;}
.fcge {color: #106533;}
.fcor {color: #FF6B32;}

/**********************************  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;}

.fs10{font-size: 0.638rem;}
.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;}
.fs40{font-size: 2.5rem;}
.fs41{font-size: 2.563rem;}
.fs42{font-size: 2.625rem;}
.fs44{font-size: 2.75rem;}
.fs46{font-size: 2.875rem;}
.fs48{font-size: 3rem;}
.fs60{font-size: 3.75rem;}
.fs64{font-size: 4rem;}
.fs76{font-size: 4.75rem;}

.ygt{font-family: "游ゴシック", "Yu Gothic", sans-serif;}
.ymc{font-family: "游明朝",'Yu Mincho',serif;}
.msr{font-family: 'Montserrat', sans-serif;}
.osw{font-family: 'Oswald', sans-serif;}
.lato{font-family: 'lato', sans-serif;}
.frd{font-family: 'Fredericka the Great', cursive;}
.noto{font-family: 'Noto Sans JP', sans-serif;}
.jos{font-family: 'Josefin Sans', sans-serif;}
.tnr{font-family: 'Times New Roman', sans-serif;}
.amt{font-family: 'Amatic SC', cursive;}
.pts{font-family: 'PT Sans', sans-serif;}
.won{font-family: 'Wendy One', sans-serif;}
.swg{font-family: 'Sawarabi Gothic', sans-serif;}
.ros{font-family: 'Rock Salt', cursive;}
/**********************************  common *******************************************/
#logo {
	max-width:px;
}
h3.msr.fs40 {
	margin-bottom: 0.7em;
}
h4.fs30 {
	margin:3.5em 0 1em 0 ;text-align: left;
}
/**********************************  header  *****************************************/
header#header {
	position: fixed;right: 0;width: 15%;z-index: 1000;height: 6.25em;
}
header#header ul li:first-of-type {
	margin-bottom: 1.5em;
}
header#header ul li a i {
	margin-right: 0.2em;vertical-align: sub;
}
header#header ul li a span.ygt {
	display: block;font-style: normal;padding-left: 2.7em;line-height: 2.5em;
}
div#google_translate_element {
	margin-top: 2.25em;margin-left: 2em;
}
/*******************************footer**************************************************************/
#footer div.middle_inner {
	border-bottom: 1px solid #fff;margin-bottom: 1.5em;
}
footer#footer {
	padding: 0.5em 0 1em 0;
}
footer#footer ul {
	margin-top: 0;
}
/*********************************************page_contact*************************************************/
section#page_contact {
	padding: 3em 0 5em 0;
}
section#page_contact .flex .flex_item01 {
	width: 32%;
}
section#page_contact .flex .flex_item01 img {
	max-width: 90px;
}
section#page_contact .flex .flex_item01 .flex .contact_logo {
	margin-right: 1em;
}
section#page_contact .flex .flex_item01 .flex .contact_address h4 {
	margin-top: 1em;margin-bottom: 1em;
}
section#page_contact .flex .flex_item02 {
	width: 54%;
}
section#page_contact .flex .flex_item02 h3 {
	margin-bottom: 0.5em;
}
section#page_contact .flex .flex_item02 .flex a {
	width: 48%;border: 1px solid;text-align: center;padding: 0.7em 0;
}
section#page_contact .flex .flex_item02 .flex a i {
	margin-right: 0.5em
}
/*********************************************top********************************************************/
#logo_box {
	top: 6em;padding: 2.2em 2.7em 3.4em 1.8em;width: 8.4%;
}
#logo_box p {
	margin-top: 1.7em;
}
#logo_box h1 img {
	max-width: 160px;
}
div#slide {
	margin:0 auto 0 auto;height: auto;position: relative;top: 0;z-index: -1;
}
div#slide div.slide1 {
	background-image:url("../img/top/slide01.jpg");background-size: cover;
}
div#slide div.slide2 {
	background-image:url("../img/top/slide05.jpg");background-size: cover;
}
div#slide div.slide3 {
	background-image:url("../img/top/slide03.jpg");background-size: cover;
}
div#slide div.slide4 {
	background-image:url("../img/top/slide04.jpg");background-size: cover;
}
div#slide .swiper-slide {
	background-position:center;background-repeat:no-repeat;background-size:cover;padding: 31em 0 31em 0;
}
div#slide div.wh_bg.pa {
	top: 16em;right: 0em;z-index: 1000;width: 16%;max-width: 180px;max-height: 544px;height: 34em;
}
div.wh_bg.pa h2.ymc {
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    line-height: 1.7em;
    letter-spacing: 0.35em;
    -webkit-text-orientation: upright;
    text-orientation: upright;
    margin-top: 3em;
    margin-left: 2em;
}
body#staff div.wh_bg.pa h2.ymc {
	margin-left: 4em;
}
.mail_fixed {
	background-color: #F1C907;border-radius: 50%;position: fixed;z-index: 1001;bottom: 6.5em;right: 1.5em;padding: 1.3em 1em;
}
img.cow_icon {
	max-width: 49px;margin-right: 0.2em;
}
section#top_about {
	padding: 4em 0 3em 0;
}
section#top_about .flex .img_box {
	width: 68%; max-width: 1100px;
}
section#top_about .flex .img_box img {
	max-width: 1100px;
}
section#top_about .flex .text_box {
	width: 27.5%;
}
section#top_about .flex .text_box p,
section#top_staff .flex .text_box p,
section#top_recruit .flex .text_box p {
	margin-bottom: 4.5em;line-height: 1.6em;
}
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 {
	border-bottom: 4px solid #202020;width: 12.2em;display: block;padding-bottom: 0.5em;
}
section#top_about .flex .text_box a.sp {
	display: none;
}
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 {
	margin-top: 3px;font-size: 1.2em;
}
section#top_about .flex {
	margin-bottom: 3em;
}
section#top_about img.heading {
	max-width: 1100px;
}
section#top_staff .eb_bg,
section#top_recruit .cr_bg {
	padding: 2em 0;margin-bottom: 4em;
}
section#top_staff .text_box {
	width: 40%;
}
section#top_recruit .text_box {
	width: 31%;padding-left: 4em;
}
section#top_staff .img_box,
section#top_recruit .img_box {
	max-width: 770px; width: 55%;
}
section#top_staff .flex_item img {
	max-width: 770px;
}
section#top_gallery p.fs120 {
	font-size: 7.5rem;
}
section#top_gallery {
	padding-bottom: 8em;
}
section#top_gallery div.bl_bg {
	height: 34em;width: 68%;max-height: 540px;max-width: 1100px;margin-bottom: -34em;
}
section#top_gallery .text_box {
	margin: 0.5em 0 -6em 1.5em;
}
section#top_gallery .text_box p.fs28.msr span {
	border-bottom: 4px solid #333;margin-left: 0.5em;
}
section#top_gallery .img_box02 .png_box img {
	max-width: 597px;margin-top: 2.5em;
}
section#top_gallery .img_box02 .img_box img {
	max-width:264px;
}
section#top_gallery img.view_img {
	max-width:770px;
}
section#top_gallery a {
	margin: 2em auto 2em 9em;
}
section#top_gallery .img_box01 {
	max-width: 770px;width: 48%;
}
section#top_gallery .img_box02 {
	width: 36.5%;
}

/*********************************about*************************************************************/
.top_h {
	margin: 1em auto 0.8em auto;
}
#about_bg {
	background-image: url("../img/about/about_top.jpg");	
}
#staff_bg {
	background-image: url("../img/staff/staff_top.jpg");	
}
#recruit_bg {
	background-image: url("../img/recruit/recruit_top.jpg");	
}
#gallery_bg {
	background-image: url("../img/gallery/gallery_top.jpg");	
}
#contact_bg {
	background-image: url("../img/contact/contact_top.jpg");	
}
.top_img_bg {
	background-size: cover;background-position: center top;background-repeat: no-repeat;padding: 29em 0;
	margin-bottom: 6.5em;
}
div#contents_main_visual .wh_bg {
    right: 0;top: 11em;width: 16%;max-width: 180px;max-height: 544px;height: 34em;
}
section#about_top {
	margin-bottom: 6em;
}
section#about_top .flex {
	margin-bottom: 3em;
}
section#about_top .flex:first-of-type {
	margin-bottom: 6em;
}
section#about_top .flex .text_box {
    width: 27.5%;
}
section#about_top .flex .text_box p {
	margin-bottom: 2em;
}
section#about_top .flex .text_box p.mt_p {
	margin-top: 7em;
}
section#about_top .flex .img_box {
    width: 68%;max-width: 1100px;
}
section#about_top .flex .img_box img {
    max-width: 1100px;
}
section#about_company .flex .flex_item01 h4,
section#about_company .flex .flex_item01 dl {
	margin-left: 15%;
}
section#about_company .flex .flex_item02 h4 {
	margin-top: 5.3em;
}
section#about_company .flex .flex_item02 h4,
section#about_company .flex .flex_item02 dl {
	margin-left: 11%;
}
section#about_company .flex {
	margin-top: -6em;
}
section#about_company .flex dl dt {
	width: 6em;padding-right: 1.5em;
}
section#about_company .flex dl dt,
section#about_company .flex dl dd {
	display: table-cell;text-align: left;padding-left: 0;
}
section#about_company .flex .flex_item01 {
	width: 57.5%;padding-bottom: 6em;padding-top: 1em;
}
section#about_company .flex .flex_item02 {
	width: 42.5%
}
section#about_company h4.fs30 {
	margin-top: 1.5em;
}
div#facility {
	margin: 3.5em auto 4em auto;
}
div#facility .gr2_bg {
	height: 28.15em;
}
div#facility .flex {
	width: 95%;margin-bottom: -21.5em;
}
div#facility .flex .flex_item {
	width: 30.6%;max-width: 476px;
}
div#facility .flex img {
	max-width: 476px;
}
div#facility .flex .wh_bg {
	width: 90%;max-width: 424px;padding: 2.41em 0;margin-top: -3em;
}
section#about_map {
	margin-bottom: 6em;
}
section#hamanaka_town {
	padding: 2.5em 0 3em 0;
}
/*****section#hamanaka_town .link_flex {
	width: 96%;max-width:940px;margin-left:auto; margin-right:auto;
}
section#hamanaka_town .flex_item {
	width: 49%;
}*********/
section#hamanaka_town a {
	padding: 0.5em 0 1.2em 0;
	width: 50%;
	max-width: 460px;
}
section#hamanaka_town h3 {
	border-bottom: 1px solid #E4E4E4;width: 86%;padding-bottom: 0.1em;
}
section#hamanaka_town p {
	margin: 1em auto 0 auto;
}
/*************************************staff***********************************************/
div#staff01 {
    background-image: url("../img/staff/staff01_on.jpg");
    background-size: cover;
    background-position: top left;
    background-repeat: no-repeat;
}
div#staff02 {
    background-image: url("../img/staff/staff02_on.jpg");
    background-size: cover;
    background-position: top left;
    background-repeat: no-repeat;
}
div#staff03 {
    background-image: url("../img/staff/staff03_on.jpg");
    background-size: cover;
    background-position: top left;
    background-repeat: no-repeat;
}
div#staff04 {
    background-image: url("../img/staff/staff04_on.jpg");
    background-size: cover;
    background-position: top left;
    background-repeat: no-repeat;
}
div#staff05 {
    background-image: url("../img/staff/staff05_on.jpg");
    background-size: cover;
    background-position: top left;
    background-repeat: no-repeat;
}
div#staff06 {
    background-image: url("../img/staff/staff06_on.jpg");
    background-size: cover;
    background-position: top left;
    background-repeat: no-repeat;
}
div#staff07 {
    background-image: url("../img/staff/cat_02.jpg");
    background-size: cover;
    background-position: top left;
    background-repeat: no-repeat;
}
div#staff08 {
    background-image: url("../img/staff/staff07_on.jpg");
    background-size: cover;
    background-position: top left;
    background-repeat: no-repeat;
}
div#staff_container03 .flex {justify-content: space-around;}

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;
}
div.staff_box img {
	max-width: 476px;
}
div#staff_container01 .flex_item,
div#staff_container02 .flex_item,
div#staff_container03 .flex_item {
    width: 30.6%;max-width: 476px;
}
div#staff_container01 .flex .wh_bg,
div#staff_container02 .flex .wh_bg,
div#staff_container03 .flex .wh_bg {
    width: 90%;max-width: 424px;padding: 1.25em 0 1.5em 0;margin-top: -3em;
}
div#staff_container01 .flex .wh_bg h3 span,
div#staff_container02 .flex .wh_bg h3 span,
div#staff_container03 .flex .wh_bg h3 span {
	margin-bottom: 0.6em;
}
div#staff_container01 .flex,
div#staff_container02 .flex,
div#staff_container03 .flex {
    width: 95%;
}
div#staff_container01 .flex,
div#staff_container02 .flex {
	margin-bottom: 3em;
}
section#staff_contents {
    background: linear-gradient(to top, #EBECEF 90%, transparent 10%);padding-bottom: 3em;margin-bottom: 4em;
}
dl.sns_btn{
	background-color: #fff;
    padding: 1em;
    inline-size: 40%;
	display: table;
} 
dl.sns_btn dt{
	inline-size: 22%;
	display: table-cell;
    align-items: center;
}
dl.sns_btn dd{
	display: table-cell;
    align-items: center;
}
dl.sns_btn a{
	display: flex;
    align-items: center;
    justify-content: space-between;
}

/***********************************************gallery***************************************************/
section#photo_gallry {
	width: 92%;max-width:1140px;margin-left:auto; margin-right:auto;padding-bottom: 6em;
}
body#gallery div.wh_bg.pa h2.ymc {
	margin-left: 4em;
}
section#photo_gallry img.gallery {
	max-width: 264px;
}
section#photo_gallry a {
	max-width: 264px;width: 23.16%;margin-right: calc(7.36% / 3);margin-bottom: 2.5%;
}
section#photo_gallry a:nth-of-type(4n) {
	margin-right: 0;
}
section#movie_gallry {
	width: 92%;max-width:1140px;margin-left:auto; margin-right:auto;;
}
section#movie_gallry ul{
	justify-content: space-between;
    flex-wrap: wrap;
    gap: calc(8.125% / 2);
}
section#movie_gallry ul li{
	inline-size: min(350px, 30.625%);
    margin-block-end: 2.55em;	
}

/****************************************recruit*************************************************************/
section#recruit_top .flex {
	margin-bottom: 3em;
}
section#recruit_top .flex:first-of-type {
	margin-bottom: 6em;
}
section#recruit_top .flex .text_box {
    width: 27.5%;
}
section#recruit_top .flex .text_box p {
	margin-bottom: 2em;
}
section#recruit_top .flex .text_box p.mt_p {
	margin-top: 7em;
}
section#recruit_top .flex .img_box {
    width: 68%;max-width: 1100px;
}
section#recruit_top .flex .img_box img {
    max-width: 1100px;
}
section#requirements {
	background: linear-gradient(to top, #EDEBCE 80%, transparent 20%);padding-bottom: 3em;
}
section#requirements h3 {
	margin-bottom: 0.5em;
}
section#requirements .img_flex {}
section#requirements .img_flex .flex_item {
	width: 25%;max-width:410px;
}
section#requirements .img_flex .flex_item img {
	max-width:410px;
}
section#requirements .wh_bg {
	width: 94%;max-width: 1560px;margin:-2.5em auto 0 auto;position: relative;padding: 2.5em 0;
}
section#requirements .wh_bg .flex {
	width: 96%;max-width: 1000px;margin-left: auto;margin-right: auto;
}
section#requirements .wh_bg .flex .flex_item01,
section#requirements .wh_bg .flex .flex_item02 {
	width: 48%;
}
section#requirements .wh_bg dl {
	border-bottom: 1px solid #ddd;margin: 0.4em 0 0.7em 0;
}
section#requirements .wh_bg dl dt {
	width: 5em;padding-right: 2em;padding-left: 1.5em;
}
section#requirements .wh_bg dl dt,
section#requirements .wh_bg dl dd {
	display: table-cell;line-height: 1.5em;padding-bottom: 0.7em;
}
section#requirements .wh_bg dl dd {
	line-height: 1.75em;
}
#r_title {
	margin: 1em auto;
}
body#recruit div.wh_bg.pa h2.ymc {
    margin-left: 3.5em;
}
/*****************************************contact********************************************************/
body#contact div.wh_bg.pa h2.ymc,
body#mail_form div.wh_bg.pa h2.ymc {
    margin-top: 3.5em;
    margin-left: 3.5em;
}
section#contact_form .inner.gr_bg {
    padding: 3em 0 3em 0;
    margin-bottom: 5em;
}
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: 850px;
	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: 542px;
	text-align: left;
	margin-bottom: 2em;
	margin-top: 2em;
	line-height: 1.75em;
}
section#contact_form table {
	width:100%;
	margin:0 auto 1em auto;
}
section#contact_form table th {
	width:35.4%; 
	padding:0px 2% 0px 2%;
	color: #000; 
	text-align:right;
	font-size: 0.875rem;
}
section#contact_form table tr {
	height: 5em;
}
section#contact_form table tr.mail_tr {
	height: 10em;
}
section#contact_form table td {
	padding:12px 2% 12px 2%;
	color: #000;
}
section#contact_form table td input {
	width:90%; padding:1%; font-size:0.875rem;
}
section#contact_form table td textarea {
	width:90%; padding:1%; height:80px; font-size:0.875rem;
}
section#contact_form input[type="submit"] {
    -webkit-appearance: none;
    width: 56%;
    height: 3.2em;
    font-size: 1.2rem;
    background-color: #F1C907;
    border: none;
    cursor: pointer;
    margin-top: 2em;
    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:5em; height:41px; font-size:1.25em;
	background-color: #76B6B7;
	border: solid 1px #76B6B7;
	color: #fff; cursor:pointer;
}
form a.post {
	display:inline-block;
	text-align:center;
	text-decoration:none;
	line-height:41px;
	width:40%; margin-bottom:5em; height:41px; font-size:1.25em;
	background-color:#394064; 
	border:solid 1px #394064;
	color:#FFF; cursor:pointer;
	
}
span.h {
	background-color:#EC73C8;
	color:#FFF; font-size:0.7em; font-weight:600;
	display:inline-block;
	padding:4px 8px 4px 8px;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	-o-border-radius: 3px;
	-ms-border-radius: 3px;
}
span.n {
    background-color: #394064;
    color: #FFF;
    font-size: 0.7em;
    font-weight: 600;
    display: inline-block;
    padding: 4px 8px 4px 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;
}
section#contact_form h4.fs30 {
    text-align: center;
}
/*******************************************ipad********************************************************/
@media (min-width: 768px) and (max-width: 1023px) {
	header#header {width: 27%;height: 5.25em;}
	div#google_translate_element {margin-top: 1.25em;margin-left: 1em;}
	#logo_box {top: 2em;padding: 1em 1em 2em 1em;width: 14%;}
	div#slide .swiper-slide {padding: 14em 0 14em 0;}
	div#slide div.wh_bg.pa {top: 6.5em;right: 0em;height: 20em;width: 15%;}
	div.wh_bg.pa h2.ymc {margin-top: 1em;margin-left: 1em;}
	section#top_about .flex .text_box,
	section#about_top .flex .text_box,
	section#recruit_top .flex .text_box {width: 37.5%;}
	section#top_about .flex .img_box,
	section#about_top .flex .img_box,
	section#recruit_top .flex .img_box {width: 61%;}
	section#top_gallery .img_box02 {width: 48.5%;}
	section#top_gallery .img_box02 .img_box img {width: 80%;}
	section#top_gallery a {margin: 1em auto 2em 1em;}
	h4.fs30 {margin: 0em 0 1em 0;font-size: 1.2rem;}
	h3.msr.fs40 {font-size: 2.1rem;}
	img.cow_icon {margin-right: 0.4em;vertical-align: text-top;}
	section#about_top .flex .text_box p.mt_p {margin-top: 0.5em;}
	section#page_contact .flex .flex_item01 {width: 45%;}
	section#page_contact .flex .flex_item01 .flex .contact_logo {width: 22%;}
	section#page_contact .flex .flex_item01 .flex .contact_address {width: 75%;}
	.zdo_drawer_menu .zdo_drawer_button {width: 37px;top: 1em;right: 6%;}
	section#top_about .flex .text_box p, 
	section#top_staff .flex .text_box p, 
	section#top_recruit .flex .text_box p {margin-bottom: 2.5em;line-height: 1.6em;font-size: 0.8rem;}
	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: 9.2em;padding-bottom: 0.2em;font-size: 1.2rem;}
	section#top_recruit .text_box {width: 39%;padding-left: 1em;}
	section#top_gallery .text_box p.fs120.msr {font-size: 5.6rem;line-height: 0.8em;}
	section#top_gallery .text_box p.fs28.msr span {font-size: 1.3rem;}
	section#top_gallery .text_box {margin: 0.5em 0 -4em 0.5em;}
	section#top_gallery .img_box02 .img_box img.top_gallery_img01 {margin-top: 4.5em;margin-left: 2em;}
	section#top_gallery div.bl_bg {height: 19em;}
	section#top_gallery .img_box02 .img_box img.top_gallery_img03 {margin-top: 2em;}
	section#page_contact .flex .flex_item01 .flex .contact_address h4 {font-size: 1rem;}
	section#page_contact .flex .flex_item01 .flex .contact_address p {
    font-size: 0.75rem;
}
	section#page_contact .flex .flex_item02 .flex a {
    font-size: 0.8rem;
}
	section#page_contact .flex .flex_item02 .flex a i {
    margin-right: 0.5em;
    font-size: 1.2rem;
    vertical-align: middle;
}
	section#page_contact .flex .flex_item02 h3 {
    font-size: 1.8rem;
}
	section#page_contact {
    padding: 2em 0 3.5em 0;
}
	.mail_fixed {
    padding: 0.8em 0.5em;
	bottom: 6.3em;
}
	section#top_gallery {
    padding-bottom: 4em;
}
	.top_img_bg {
    padding: 16em 0;
}
	div#contents_main_visual .wh_bg {
    top: 9em;
	height: 18em;
	width: 14%;
}
	section#about_company .flex .flex_item01 {
    padding-bottom: 2em;
}
	div#facility .flex .wh_bg {
    padding: 1em 0;
    margin-top: -1.5em;
}
	div#facility .flex .wh_bg p {
		font-size: 0.95rem;
}
	div#facility .flex {
    margin-bottom: -13em;
}
	div#facility .gr2_bg {
    height: 17em;
}
	div.wh_bg.pa h2.ymc {
		font-size: 1.125rem;
	}
	section#about_top .flex .text_box p {
    margin-bottom: 1em;
	font-size: 0.875rem;
}
	section#about_company .flex .flex_item02 h4,
	section#about_company .flex .flex_item01 h4 {
	 margin-left: 5%;
	} 
	section#about_company .flex .flex_item02 dl,
	section#about_company .flex .flex_item01 dl {
    margin: 2% 0 2% 5%;
}
	section#about_company .flex .flex_item02 h4 {
    margin-top: 4em;
}
	section#about_top .flex:first-of-type {
    margin-bottom: 2em;
}
	section#about_company h4.fs30 {
    margin-top: 1em;
}
	section#about_company .flex {
    margin-top: -3em;
}
	section#hamanaka_town h3,
	section#hamanaka_town h3 {
    font-size: 1.8rem;
}
	body#staff div.wh_bg.pa h2.ymc {
    margin-left: 2em;
	margin-top: 2em;
}
	body#staff div#contents_main_visual .wh_bg {
    width: 12%;
}
	div#staff_container01 .flex_item h3, 
	div#staff_container02 .flex_item h3,
	div#staff_container03 .flex_item h3 {
	font-size: 1rem
}	
	div#staff_container01 .flex_item h3 span, 
	div#staff_container02 .flex_item h3 span,
	div#staff_container03 .flex_item h3 span {
	font-size: 0.85rem
}
	div#staff_container01 .flex .wh_bg,
	div#staff_container02 .flex .wh_bg,
	div#staff_container03 .flex .wh_bg {
    padding: 0.95em 0 1em 0;
    margin-top: -2em;
}
	body#gallery div.wh_bg.pa h2.ymc {
    margin-left: 2em;
		margin-top: 2em;
}
	body#recruit h4.fs30 {
	margin: 0 0 0.5em 0;
}
	section#recruit_top .flex .text_box p.fs23 {
	font-size: 0.9rem;
	margin-bottom: 1em;
}
	section#recruit_top .flex .text_box p {
	font-size: 0.8rem;
	margin-bottom: 1em;
}
	body#recruit div.wh_bg.pa h2.ymc {
    margin-top: 2em;
    margin-left: 2em;
}
	section#requirements .wh_bg dl dt, section#requirements .wh_bg dl dd {
    display: table-cell;
    line-height: 1.5em;
    padding-bottom: 0.5em;
}
	section#requirements .wh_bg dl dt {
    width: 5em;
    padding-right: 1em;
    padding-left: 0.5em;
}
	section#requirements .wh_bg {
	margin: -0.5em auto 0 auto;
}
	section#recruit_top .flex:first-of-type {
    margin-bottom: 2em;
}
	section#recruit_top .flex {
    margin-bottom: 2em;
}
	section#requirements {
	background: linear-gradient(to top, #EDEBCE 85%, transparent 15%);
}
	body#contact div.wh_bg.pa h2.ymc, body#mail_form div.wh_bg.pa h2.ymc {
    margin-left: 2em;
}
}
/*******************************************ipad pro****************************************************/
@media (min-width: 1024px) and (max-width: 1222px) {
	header#header {
		width: 24%;
}
	#logo_box {
    top: 3em;
    padding: 2.2em 1.7em 3.4em 1.8em;
    width: 10.4%;
}
	div#slide .swiper-slide {
    	padding: 19em 0 19em 0;
}
	div#slide div.wh_bg.pa {
		top: 9em;
		right: 0em;
		height: 26em;
		width: 16%;
}
	div#slide div.wh_bg.pa h2.ymc {
    	letter-spacing: 0.25em;
		font-size: 1.278rem;
}
	section#top_about .flex .text_box,
	section#about_top .flex .text_box,
	section#recruit_top .flex .text_box {
    	width: 37.5%;
}
	section#top_about .flex .img_box,
	section#about_top .flex .img_box,
	section#recruit_top .flex .img_box {
    	width: 61%;
}
	section#top_gallery .img_box02 {
    	width: 48.5%;
}
	section#top_gallery .img_box02 .img_box img {
    	width: 88%;
}
	section#top_gallery a {
    	margin: 2em auto 2em 1em;
}
	h4.fs30 {
    margin: 0.5em 0 0.5em 0;
    font-size: 1.5rem;
}
	h3.msr.fs40 {
    font-size: 2.3rem;
}
	img.cow_icon {
    margin-right: 0.4em;
    vertical-align: text-top;
}
	section#about_top .flex .text_box p.mt_p {
    margin-top: 1.5em;
}
	section#page_contact .flex .flex_item01 {
    width: 45%;
}
	section#page_contact .flex .flex_item01 .flex .contact_logo {
    width: 22%;
}
	section#page_contact .flex .flex_item01 .flex .contact_address {
    width: 75%;
}
	section#top_gallery .text_box p.fs120.msr {
    line-height: 0.9em;
    font-size: 7rem;
}
	section#top_gallery div.bl_bg {
    height: 28em;
	width: 63%;
}
	section#top_gallery .img_box02 .img_box img.top_gallery_img01 {
    margin-top: 6.5em;
    margin-left: 2em;
}
	.top_img_bg {
    padding: 18em 0;
}
	div#contents_main_visual .wh_bg {
    top: 5.5em;
	height: 27em;
}
	section#hamanaka_town h3,
	section#hamanaka_town h3 {
    font-size: 2rem;
}
	body#staff div.wh_bg.pa h2.ymc {
    margin-left: 3em;
}
	div#staff_container01 .flex_item h3, 
	div#staff_container02 .flex_item h3,
	div#staff_container03 .flex_item h3 {
	font-size: 1.1rem
}	
	div#staff_container01 .flex_item h3 span, 
	div#staff_container02 .flex_item h3 span,
	div#staff_container03 .flex_item h3 span {
	font-size: 0.9rem
}
	body#gallery div.wh_bg.pa h2.ymc {
    margin-left: 3em;
}
	body#recruit h4.fs30 {
	margin: 0 0 0.5em 0;
}
	section#recruit_top .flex .text_box p.fs23 {
	font-size: 1.2rem;
	margin-bottom: 1em;
}
	body#recruit div.wh_bg.pa h2.ymc {
    margin-left: 3em;
}
	body#contact div.wh_bg.pa h2.ymc, body#mail_form div.wh_bg.pa h2.ymc {
    margin-left: 2.5em;
}
}
/*******************************************pc**********************************************************/
@media (min-width: 1223px) and (max-width: 1480px) {
	header#header {
		width: 21%;
}
	div#slide .swiper-slide {
    padding: 22em 0 22em 0;
}
	div#slide div.wh_bg.pa {
    top: 16em;
    right: 0em;
    height: 21em;
    padding: 3.8em 0 1em 0.8em;
    width: 13%;
}
	div#slide div.wh_bg.pa h2.ymc {
    letter-spacing: 0.25em;
	font-size: 1.313rem;
}
	section#top_about .flex .text_box,
	section#about_top .flex .text_box,
	section#recruit_top .flex .text_box{
    width: 35.5%;
}
	section#top_about .flex .img_box,
	section#about_top .flex .img_box,
	section#recruit_top .flex .img_box{
    width: 62%;
}
	section#top_gallery .img_box02 {
    width: 42.5%;
}
	section#top_gallery .img_box02 .img_box img {
    width: 88%;
}
	section#top_gallery a {
    margin: 2em auto 2em 2em;
}
	h4.fs30 {
    margin: 1.5em 0 1em 0;
}
	section#about_top .flex .text_box p.mt_p {
    margin-top: 1.5em;
}
	.top_img_bg {
    padding: 21em 0;
}
	div#contents_main_visual .wh_bg {
    top: 8em;
	height: 29em;
}
	body#staff div.wh_bg.pa h2.ymc {
    margin-left: 3.5em;
}
	section#recruit_top .flex .text_box p.fs23 {
	font-size: 1.3rem;
}
	body#recruit h4.fs30 {
    margin: 0em 0 1em 0;
}
	body#recruit div.wh_bg.pa h2.ymc {
    margin-left: 3em;
}
}
/*******************************************pc**********************************************************/
@media (min-width: 1481px) and (max-width: 1780px) {
	div#google_translate_element {
    margin-left: 1em;
}
	div#slide div.wh_bg.pa {
    top: 13em;
    right: -1px;
    height: 26em;
    width: 14%;
}
	section#top_about .flex .text_box {
    width: 29.5%;
}
	section#top_gallery .img_box02 {
    width: 42.5%;
}
	.top_img_bg {
    padding: 23em 0;
}
	div#contents_main_visual .wh_bg {
    top: 9em;
}
}

/*******************************************IE**********************************************************/
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
	span.iert {
	-webkit-text-combine: horizontal; /* 英数字の向きを縦にする */
    -ms-text-combine-horizontal: all; /* 英数字の向きを縦にする */
    text-combine-upright: all; /* 英数字の向きを縦にする */
}
	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-left: 3em;
	margin-top: 4em;
}
}
/*****************************************Edge**********************************************************/
@supports (-ms-ime-align:auto){
	span.iert {
	-webkit-text-combine: horizontal; /* 英数字の向きを縦にする */
    -ms-text-combine-horizontal: all; /* 英数字の向きを縦にする */
    text-combine-upright: all; /* 英数字の向きを縦にする */
}
}