@charset "UTF-8";
/* CSS Document */
@media screen and (max-width: 1260px){

}
@media screen and (max-width: 1200px){

}
/*スマホ用スタイル*/
@media screen and (max-width: 900px){
.only_sp{
	display:block;
}
.only_pc,
.sidebar{
	display:none;
}
	
	/* iOSでのデフォルトスタイルをリセット */
	/*input[type="submit"],
	input[type="button"] {
	  border-radius: 0;
	  -webkit-box-sizing: content-box;
	  -webkit-appearance: button;
	  appearance: button;
	  border: none;
	  box-sizing: border-box;
	  cursor: pointer;
	}
	input[type="submit"]::-webkit-search-decoration,
	input[type="button"]::-webkit-search-decoration {
	  display: none;
	}
	input[type="submit"]::focus,
	input[type="button"]::focus {
	  outline-offset: -2px;
	}*/
	
	/*nav*/
	#humberger {
  position: relative;
  height: 20px;
  width: 28px;
  display: inline-block;
  box-sizing: border-box;
}
#humberger div {
  position: absolute;
  left: 0;
  height: 2px;
  width: 28px;
  background-color: #fff;
  border-radius: 2px;
  display: inline-block;
  box-sizing: border-box;
}
#humberger div:nth-of-type(1) {
  bottom: 20px;
}
#humberger div:nth-of-type(2) {
  bottom: 10px;
}
#humberger div:nth-of-type(3) {
  bottom: 0;
}
	
	.spnav_icn{
		text-align:right;
		padding:0.5em;
	}
	.dli-close {
  display: inline-block;
  vertical-align: middle;
  color: #fff;
  line-height: 1;
  width: 2em;
  height: 0.2em;
  background: currentColor;
  border-radius: 0.1em;
  position: relative;
  transform: rotate(45deg);
}

.dli-close::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: inherit;
  border-radius: inherit;
  transform: rotate(90deg);
}
	
	
	.spnav_head{
		align-items:center;
		padding:10px 20px;
	}
	.spnav_head_ttl,
	.spnav_list .en{
		font-size:1.4em;
		font-weight:600;
	}
	.spnav_list .en{
		display:inline-block;
		margin-right:0.5em;
	}
	.spnav_list a:active{
		/*background:#FFE200;
		color:#000;*/
	}
	.spblognav_list a{
		padding-left:5em;
	}
	.spblognav_list{
		display:none;
	}
	/*.spnav_lists>span{
		position:relative;
	}
	.spnav_lists>span:after{
		content: "\f078";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    display: block;
    font-size: 0.8em;
    position: absolute;
		color:#00a0e0;
    top: 50%;
    right: 2em;
    transform: translateY(-50%);
	}
	.spnav_lists>span.on:after{
		content: "\f077";
	}*/
	a.gnav_contact{
		display:block;
		width:100%;
		padding: 0.6em 2em;
	}
	.spnav_list{
		margin:0 0 2em;
	}
	

	/*common*/
	.pageHeader{
		padding:0;
		position:fixed;
		height:60px;
		top:0;
		left:0;
		width:100%;
		z-index:100;
		
	}
	.spnav{
		position:fixed;
		top:60px;
		left:0;
		width:100%;
		background:#fff;
		padding:2em 0;
		height:100vh;
		z-index:100;
	}
	.container{
		margin-top:91px;
	}
	
	h1.logo, .logo{
		width:50%;
	}
	.snav {
        background: url(img/common/menu.svg) no-repeat center center;
        background-size: contain;
        height: 22px;
        width: 22px;
        position: absolute;
        top: 50%;
        right: 4%;
		transform: translateY(-20%);
    }
	.snav.on {
        background: url(img/common/close.svg) no-repeat center center;
        background-size: contain;
    }
	.head_inner{
		padding:0;
	}
	.ssearch{
		width:48%;
	}
	.sp_unav{
		width:24%;
		margin: 1em 0 0;
	}
	.spnav_listss{
		display:none;
	}
	.spnav_lists a,
	.spnav_lists>span span{
		display:block;
		color:#071C32;
		font-weight:bold;
		padding:1em 2em;
		position:relative;
	}
	.spnav_lists a:after{
		content:"";
	display:inline-block;
	width:16px;
	height:16px;
	background:url(img/common/snav_arrow.svg) no-repeat center center;
	background-size:contain;
	transform: translateY(-50%);
	position:absolute;
	top:50%;
	right:2em;
	}
	.spnav_lists>span span:after{
		content:"";
	display:inline-block;
	width:16px;
	height:16px;
	background:url(img/common/snav_plus.svg) no-repeat center center;
	background-size:contain;
	transform: translateY(-50%);
	position:absolute;
	top:50%;
	right:2em;
	}
	.spnav_listss a{
		background:#FAFAFA;
		border-bottom:1px solid #707070;
	}
	.spnav_foot{
		margin:0 auto 1em;
		width:92%;
	}
	.spnav_foot a{
		width:32%;
		color:#071C32;
		font-size:0.7em;
		padding:0.4em 1em;
		border:1px solid #071C32;
		border-radius:2em;
		text-align:center;
	}
	.spnav_close{
		text-align:center;
	}
	.pageFooter{
		background:#fff;
		padding: 0 0 2em;
	}
	.foot_inner{
		width:100%;
	}
	.fnav01{
		display:block;
		width:100%;
		padding:0;
		border-bottom:none;
		margin:0 0 2em;
	}
	.fnav01 a{
		display:block;
		font-size:1.2em;
		padding:1em;
		background:#F3F3F3;
		border-bottom:1px solid #071C32;
		position:relative;
		margin:0;
		width:100%;
		text-align:left;
	}
	.fnav01 a:after{
		content:"";
	display:inline-block;
	width:8px;
	height:15px;
	background:url(img/common/spfoot_arrow.svg) no-repeat center center;
	background-size:contain;
	transform: translateY(-50%);
	position:absolute;
	top:50%;
	right:2em;
	}
	.fnav03{
		margin:0 auto 2em;
		width:92%;
	}
	.fnav03 a{
		width:32%;
		color:#071C32;
		font-size:0.8em;
		padding:0.4em 1em;
		border:1px solid #071C32;
		border-radius:2em;
		text-align:center;
	}
	.fnav04{
		width:94%;
		text-align:left;
		margin:0 auto 2em;
	}
	.fnav04 a{
		display:block;
		font-size:0.8em;
		color:#071C32;
	}
	
	
	/*page common*/
	.foot_contact_inner{
		padding:2em;
		width: 80%;
	}
	.foot_contact_txt{
		width:100%;
		margin:0 0 0.4em;
		text-align:center;
		font-size:0.9em;
		font-weight:normal;
	}
	.foot_contact_link{
		width:100%;
	}
	.foot_contact_link a:after{
		display:none;
	}
	.foot_contact{
		padding:2em 0;
		background: url(img/common/contactbgsp.jpg) no-repeat center center;
    background-size: cover;
	}
	.recruit_sns_ttl{
		font-size:1.3em;
		line-height:1.4;
	}
	.recruit_sns_txt{
		width:100%;
		text-align:center;
		margin:0 0 1em;
	}
	.recruit_sns_icn{
		width:100%;
		text-align:center;
	}
	.recruit_brand_inner div{
		display:block;
		width:46%;
		margin:0 27%;
	}
	.recruit_brand_ttlja{
		font-size:1.2em;
	}
	.recruit_brand_ttlen{
		font-size:1em;
	}
	h1.comhead01_ttl{
		font-size:1.1em;
		width:100%;
	}
	h1.comhead01_ttl span:after{
		margin:0 0 ;
		width: 35px;
	}
	.comhead01_img{
		display:none;
	}
	h1.comttl01, .comttl01{
		font-size:1.1em;
		border:none;
		margin:0 0 1em;
	}
	h1.comttl01:after, .comttl01:after{
		position: static;
	background-color: #EBC843;
    content: "";
    display: block;
    height: 2px;
		margin:0 0 ;
		width: 35px;
	}
	.breadcrumb{
		display:none;
	}
	

	
	/*top*/
	.top_main{
		color:#071C32;
		margin:0 0 2em;
	}
	.top_main_inner{
		position:static;
		transform: translateX(0%);
		margin:0 auto;
		text-align:left;
	}
	.top_main_txt{
		margin-top:0;
		display:block;
		text-align:left;
	}
	.top_main_ttl{
		font-size:2em;
	}
	.top_main_txt01{
		margin:0 0 1em;
	}
	.top_main_btn{
		text-align:right;
	}
	.top_main_btn a.combtn01{
		text-align:right;
		border:none;
		display:inline-block;
		width:auto;
		font-size:1em;
	}
	.top_catch01{
		width:92%;
		margin:0 auto 2em;
		border:1px solid #707070;
		padding:1em;
		font-size:1em;
	}
	.top_catch01 span{
		font-size:0.9em;
	}
	.top_aboutus{
		background:none;
		padding:0;
		margin:0;
	}
	.top_aboutus_inner{
		background:none;
		padding:0;
	}
	.top_aboutus_txt{
		margin:0 0 1em;
	}
	.top_aboutus_txt a:after{
		display:none;
	}
	.top_aboutusbtn a{
		width:90%;
		margin:0 auto 1.5em;
	}
	.top_sus{
		padding: 3em 0 2em;
		margin: 0 0 2em;
	}
	.top_news_unit01_ttl{
		display:none;
	}
	.top_news_unit01_ttl.active{
		display:block;
	}
	.top_newssp{
		background: #071C32;
    padding: 1.5em;
		color:#fff;
		margin:0 auto 3em;
	}
	.top_news_unit02{
		color: #071C32;
	}
	.top_news_inner>div{
		width:100%;
	}
	.top_news_unit01_nav{
		width:100%;
	}
	.top_news_unit01_nav div{
		writing-mode: horizontal-tb;
		width:32%;
		text-align:center;
		background:#d7dcde;
		color: #071C32;
		border:1px solid #d7dcde;
		padding: 0.5em 0.4em;
	}
	.top_news_unit01_nav div:last-of-type{
		border-bottom:1px solid #d7dcde;
	}
	.tinfo_unit01{
		width:32%;
		text-align:left;
	}
	.tinfo_ttl{
		width:62%;
		text-align:left;
		padding-right: 0;
	}
	.tinfo_ttl:after{
		display:none;
	}
	a.tinfo_unit{
		align-items:center;
	}
	
	/*aboutus*/
	a.aboutus_list01_unit01{
		width:80%;
		margin:0 auto 1.5em;
	}
	.aboutus_comnav{
		display:none;
	}
	.aboutus_commain{
		width:100%;
	}
	.message_namem{
		font-size:1.2em;
	}
	.message_catch01{
		display:none;
	}
	
	/*rinen*/
	.rinen_inner{
		padding:2em;
	}
	.rinen_ttl02{
		font-size:1.1em;
	}
	.rinen_unit_ttl{
		font-size:1.1em;
		font-weight:bold;
		margin:0 0 1em;
	}
	.rinen_unit_ttl span{
		font-size:0.8em;
	}
	
	/*.business*/
	.business_head{
		background: rgba(243, 243, 243, 0.76);
		padding:2em 1em;
	}
	.business_head_img{
		width:100%;
		margin:0 auto 1em;
	}
	.business_head_txt{
		position:static;
		    transform: translateY(0);
		top:0;
		background:none;
		padding:0;
		width:100%;
	}
	.business_unit_ttl01 div:nth-of-type(3){
		display:none;
	}
	.business_unit_ttl01{
		position:static;
		width:100%;
		margin:-3em 0 1em;
		
	}
	.business_unit_ttl_img{
		width:100%;
		margin:0 auto 1em;
	}
	.business_unit:nth-of-type(odd) .business_unit_ttl_img{
		margin-left:0;
	}
	.business_unit:nth-of-type(even) .business_unit_ttl01{
		text-align:left;
	}
	.business_unit_ttl01 div{
		display:inline-block;
	}
	.business_unit_ttl01 div:nth-of-type(2){
		margin-left:0.5em;
		font-size:1.1em;
	}
	
	/*important*/
	a.important_list01_unit{
		width:90%;
		background:#fff;
		padding:1em;
		box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.3);
		margin:0 auto 1em;
	}
	.important_list01_ttlen{
		margin:1em 0;
	}
	.important_ttl01{
		text-align:left;
	}
	.important_ttl01_ja:after{
		margin: 0;
    width:30px;
	}
	
	/*companyinfo*/
	.companyinfo_tb01 td{
		font-weight:normal;
	}
	
	/*history*/
	.history_tb th{
		width:100%;
		display:block;
		border-bottom:none;
		padding-bottom:0;
		text-align:left;
		position:relative;
	}
	.history_tb td{
		width:100%;
		display:block;
		padding-top:0;
	}
	.history_tb td:before,
	.history_tb th:before{
    content: "";
    display: block;
    width: 1px;
    height: 100%;
    border-right: 3px solid #f7efcb;
    /* background: #f7efcb; */
    position: absolute;
    top: 0;
    left: 2%;
	}
	.history_tb td dl:before{
		left:-4%;
	}
	.history_tb tr:first-of-type th:before{
		display:none;
	}
	.history_tb td dl dt{
		width:10%;
	}
	.history_tb td dl dd {
    width: 88%;
	}
	
	/*.travel*/
	.travel_head{
		background: rgba(243, 243, 243, 0.76);
		padding:2em 1em;
	}
	.travel_head_img{
		width:100%;
		margin:0 auto 1em;
	}
	.travel_head_txt{
		position:static;
		    transform: translateY(0);
		top:0;
		background:none;
		padding:0;
		width:100%;
	}
	.travel_head .comttl02{
		text-align:left;
	}
	.travel_unit{
		box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.3);
	}
	.travel_unit_ttl_img{
		width:100%;
		margin:0 auto 1em;
	}
	.travel_unit:nth-of-type(even) .travel_unit_ttl_img{
		margin-left:0;
	}
	.travel_unit_ttl01 div:nth-of-type(3){
		display:none;
	}
	.travel_unit_ttl01{
		position:static;
		margin:-3em auto 1em;
		width:100%;
	}
	.travel_unit_ttl01 div:nth-of-type(2){
		font-size:1.2em;
	}
	.travel_unit_txt01_ttl{
		font-size:1.1em;
	}
	
	/*catering*/
	.catering_head{
		background:url(img/catering/headbg_sp.jpg) no-repeat center center;
		background-size:cover;
		padding:5em 4% 1em;
	}
	.catering_ttl{
		position:static;
	}
	h1.catering_ttlen{
		font-size:2.2em;
	}
	.catering_ttl_txt{
		font-size:0.9em;
		line-height:1.4;
	}
	.catering_catch{
		font-size:1em;
	}
	.catering_catch span{
		font-size:0.8em;
	}
	.catering_point02{
		margin-top:0;
	}
	.catering_point02_txt{
		width:100%;
	}
	.catering_point02_ttl{
		font-size:1.2em;
	}
	.catering_list_unit{
		width:100%;
		margin:0 0 3em;
		box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.3);
	}
	.catering_list_ttls{
		font-weight:bold;
	}
	
	/*sustainability*/
	.sustainability_head {
    background: url(img/sustainability/head_sp.jpg) no-repeat center center;
    background-size: cover;
    padding: 3em 0;
	}
	.sustainability_ttls{
		font-size:0.8em;
	}
	h1.sustainability_ttlm{
		font-size:1em;
	}
	.sustainability_nav a{
		display:block;
		border-left:0;
		text-align:left;
	}
	.sustainability_nav a:before{
		content:"⚫︎";
		display:inline-block;
		color:#EBC843;
		font-size:0.8em;
		margin-right:0.5em;
	}
	.sustainability_inner0101_head_txt{
		position:static;
		transform: translateY(0);
		text-align:center;
		font-size:1.1em;
		margin:0 0 1em;
	}
	.sustainability_inner0101_head_img{
		width:100%;
		margin-left:0;
	}
	.sustainability_inner0102_img{
		padding:1em;
	}
	.sustainability_inner0103_unit01{
		flex-direction:column-reverse
	}
	.sustainability_inner0103_unit01_txt{
		width:100%;
	}
	.sustainability_inner0103_unit01_img{
		width:100%;
		margin:0 0 1em;
	}
	.sustainability_inner0104_unit{
		width:80%;
		margin:0 auto 1em;
	}
	
	/*recruit*/
	.recruit_ttl{
		bottom: 0;
    left: 4%;
	}
	h1.recruit_ttlen{
		font-size:2.2em;
	}
	.recruit_ttl_txt{
		font-size:0.9em;
	}
	.recruit_catch{
		font-size:1em;
	}
	.recruit_catch span{
		font-size:0.8em;
	}
	.recruit01_img, .recruit02_img{
		width:100%;
	}
	.recruit01_txt, .recruit02_txt{
		width:100%;
		position:static;
		transform: translateY(0);
		padding:1em;
	}
	.recruit02_img{
		margin-left:0;
	}
	.recruit01_ttl, .recruit02_ttl{
		font-size:1.4em;
	}
	.recruit02_txt a.combtn01{
		width:64%;
	}
	.recruit02_txt01 p{
		margin:0 0 4em;
	}
	.recruit02_txt{
		background: url(img/recruit/illust01.png) no-repeat bottom left / 50px auto, url(img/recruit/illust02.png) no-repeat bottom right / 50px auto rgba(243, 243, 243, 0.76);
	}
	
	/*.newgrads*/
	.newgrads_head{
		background: url(img/newgrads/head_sp.jpg) no-repeat center center;
    background-size: cover;
		padding: 4em 0 3em;
	}
	h1.newgrads_head_ttl01{
		font-size:1.2em;
	}
	.newgrads_head_ttl02{
		font-size:1.2em;
	}
	.newgrads_requirements_tb th{
		white-space: nowrap;
		text-align:center;
	}
	.newgrads_faq_unit{
		padding:1em;
	}
	.newgrads_faq_unit_q{
		padding-right:2em;
	}
	.newgrads_faq_unit_q:after,
	.newgrads_faq_unit_q.active:after{
		right:0;
	}
	.newgrads_barimg{
		width:80%;
		margin:0 auto 3em;
	}
	.newgrads_barimg div{
		width:100%;
		margin:0 auto 1em;
	}
	
	/*part*/
	.part_head {
    background: url(img/part/head_sp.png) no-repeat center center;
    background-size: cover;
		height: 10em;
		    margin-top:0;
	}
	.part_ttl{
		font-size:1em;
	}
	.part_ttl span{
		padding:0 1em;
	}
	.part_ttl span:before{
		left: -6em;
	}
	.part_ttl span:after{
		right: -6em;
	}
	.part_unit{
		border:none;
		box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.3);
	}
	.part_unit_img{
		width:60%;
		margin:0 auto 1em;
	}
	.part_unit_txt{
		width:100%;
		margin:0 auto 1em;
	}
	.part_unit_link{
		width:100%;
	}
	
	/*parts*/
	.parts_head {
    background: url(img/parts/head_sp.jpg) no-repeat center center;
    background-size: cover;
		height: 10em;
		    margin-top:0;
	}
	.parts_head2 {
    background: url(img/parts/head_sp2.jpg) no-repeat center center;
    background-size: cover;
		height: 10em;
		    margin-top:0;
	}
	.parts_head3 {
    background: url(img/parts/head_sp3.jpg) no-repeat center center;
    background-size: cover;
		height: 10em;
		    margin-top:0;
	}
	.parts_tb01 th,
	.parts_tb01 td{
		display:block;
		width:100%;
	}
	.parts_tb01 td{
		
	}
	.parts_contact01 a.parts_contact_tel{
		margin:0 auto;
		display:block;
	}
	.parts_contact_btn{
		margin:0 auto 1em;
	}
	.parts_contact01,
	.parts_contact02{
		flex-direction:column-reverse;
	}
	.parts_img01 div{
		width:70%;
		margin:0 auto 1em;
	}
	.parts_inner01>div{
		width:100%;
		margin:0 auto 1em;
	}
	.parts_tb02 th,
	.parts_tb02 td{
		display:block;
		width:100%;
		border-bottom:none;
		padding:0.4em 1em;
	}
	.parts_inner02 .parts_tb02 th{
		text-align:left;
	}
	.parts_contact02 .parts_contact_btn{
		margin:0 auto 1em;
	}
	
	/*onlineshop*/
	.onlineshop_imgsp{
		margin:0 0 2em;
	}
	.onlineshop_unit{
		padding:0 0 2em;
	}
	.onlineshop_unit_img{
		width:100%;
		margin-left:0;
		margin-bottom:3em;
	}
	.onlineshop_unit_logo{
		top:22%;
		transform: translateY(0%); 
	}
	.onlineshop_unit_txt{
		width:80%;
		margin:0 auto;
	}
	.onlineshop_unit_txt p:last-of-type{
		margin-bottom:2em;
	}
	
	/*brand*/
	.brand_imgsp{
		margin:0 0 2em;
	}
	.brand .comhead01_ttl{
		text-align:right;
	}
	.brand .comhead01_ttl span{
		text-align:left;
		margin:0 0 1em;
		width:100%;
		max-width:100%;
		display:block;
		text-align:left;
	}
	.brand_unit{
		align-items:center;
	}
	.brand_unit_img{
		width:48%;
	}
	.brand_unit_ttl{
		width:50%;
		text-align:center;
	}
	.brand_unit_ttl span{
		display:block;
		font-weight:normal;
	}
	.brand_unit_txt{
		width:100%;
		margin:1em 0;
	}
	.brand_unit_link a{
		width:80%;
		margin:0 auto 1em;
	}
	.brand_units_img{
		width:30%;
	}
	.brand_units_txt{
		width:66%;
	}
	.brand_units_txts{
		width:100%;
		text-align:center;
	}
	.brand_units_link{
		width:100%;
		text-align:center;
	}
	.brand_units_ttl{
		font-size:1em;
	}
	.brand_units_address{
		font-size:0.8em;
		margin:0 0 1em;
	}
	
	/*archive*/
	.news_imgsp{
		margin:0 0 2em;
	}
	.comhead01news .comhead01_ttl{
		width:100%;
	}
	.info_shopname{
		display:inline-block;
		margin:0 1em 0 0;
	}
	.info_catesp{
		display:inline-block;
		width:auto;
	}
	a.info_unit{
		padding:3em 1em 1em;
	}
	.info_date{
		width:100%;
	}
	.info_ttl{
		width:88%;
	}
	
	/*single*/
	.single_side{
		display:none;
	}
	.single_main{
		width:100%;
	}
	.single_main_head{
		display:none;
	}
	.single_main_headsp{
		 display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
-webkit-flex-wrap: wrap;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
		margin:0 0 1em;
	}
	.single_shopname{
		margin-right:1em;
	}
	
	/*law*/
	.law_tb01 th{
		width:30%;
	}
	
	/*contact*/
	.contact_imgsp{
		margin:0 0 2em;
	}
	.form th{
		display:block;
		width:100%;
		padding-bottom:0;
		background:none;
		color: #071C32;
		border-bottom:0;
	}
	.form td{
		display:block;
		width:100%;
		padding-top:0;
		border-bottom:0;
	}
	.form{
		border-top:0;
	}
	.contact_inner{
		padding:1em;
		background:#edeff0;
	}
	.hissu{
	display:inline-block;
	margin-left:1em;
	background:#0d1c30;
	color:#fff;
	position:static;
	}
	
	.tinfo_shopname{
	text-align:center;
	background:#fff;
	width:100%;
	padding:0.2em;
	color:#071C32;
	font-size:0.8em;
}

	/* 入力欄やセレクトをスマホで横幅100%に */
input[type="text"],
input[type="email"],
textarea,
select {
  width: 100% !important;
  max-width: 100%;
  box-sizing: border-box;
}

/* .form_td01や.form_tdbox01も全幅対応 */
.form_td01,
.form_tdbox01 {
  width: 100%;
  display: block;
  box-sizing: border-box;
}
	
}