
/*--------------------------------------------------------------
mainVisual
--------------------------------------------------------------*/

.hero-home {
    position: relative;
    min-height: 250px;
}
.hero-home__mask {
    position: absolute;
    z-index: 20;
    width: 100%;
    height: 110%;
    background: #fff;
}
.hero-home__bg {
    position: relative;
    min-height: 200px;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: 145% auto;
}
.hero-home__bg img {
    width: 100%;
    height: auto;
}
.hero-home__bg:after {
    content: '';
    display: block;
    position: absolute;
    z-index: 1;
    right: 20px;
    bottom: -4px;
    width: 110px;
    height: 4px;
    background: url(../img/common/line_01_sp.svg) no-repeat 50% 50%;
    background-size: contain;
    opacity: 0;
    transition: all 0.2s ease;
}
.hero-home__heading {
    position: absolute;
    z-index: 3;
    bottom: 9px;
    left: 40px;
}
.hero-home__heading-pc {
    position: relative;
    padding: 1px 0 0;
}
.hero-home__heading-pc:before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: -178px;
    width: 8px;
    height: 100%;
}
.hero-home__heading-pc:before {
    background: #034170;
}

.hero-home__heading-pc img {
    display: block;
    position: relative;
    height: auto;
}
.hero-home__heading-sp img {
    display: block;
    height: auto;
}
.hero-home__heading-pc img.hero-home__heading-pc-ja {
    top: 10px;
    margin: 45px 0 0;
    transition: all 0.5s ease;
}
.hero-home__heading-pc img.hero-home__heading-pc-en {
    top: -80px;
    margin: 0 0 0 4px;
    transition: all 0.5s ease;
}
.hero-home__heading-sp img.hero-home__heading-sp-en {
    position: relative;
    top: 10px;
    opacity: 0;
    transition: all 0.5s ease;
}

.hero-home__heading-sp img.hero-home__heading-sp-ja {
    position: relative;
    top: 10px;
    margin: 21px 0 0 -2px;
    opacity: 0;
    transition: all 0.5s ease;
}
.hero-home__heading-sp img.hero-home__heading-sp-en.js-hero--active {
    top: 0;
    opacity: 1;
}
.hero-home__heading {
    position: absolute;
    z-index: 3;
    bottom: 20px;
    left: 40px;
}
.section--mission {
    position: relative;
    padding: 0 20px 26px;
    color: #fff;
	  background: #f7fbfe;
}
.page-home .heading1 {
    color: #034170;
}
.section--mission .heading1 {
    position: relative;
    z-index: 2;
    margin-bottom: 21px;
	  color: #034170;
		text-align: center;
}
.heading1 strong {
    display: block;
    font-size: 100%;
    font-weight: 500;
    padding-top: 1rem;
    letter-spacing: 0.15em;
}
.heading1 span {
		position: relative;
		display: inline-block;
 		padding-bottom: 15px;
    font-size: 16px;
    font-weight: 100;
		text-align: center;
}
 .heading1 span::before {
		 content: "";
		 position: absolute;
		 left: 0;
		 right: 0;
		 bottom: 0;
		 border-bottom: 1px solid #003f7e;
		 width : 100% ;
		 margin: 0 auto;
 }
.section--mission__text {
    position: relative;
    z-index: 1;
    padding: 47px 41px 50px;
    background: #034170;
    text-align: center;
}
.section--mission__inner1 .section--mission__text {
}
.section--mission__inner1 .section--mission__text.is-inview {
}
.section--mission .heading4 {
    margin: 0 -20px 16px;
    font-weight: 500;
    line-height: 1.5;
}
.button--contact {
    display: block;
    width: 285px;
    margin: 0 auto;
    font-size: 1.5rem;
    font-weight: 500;
	  cursor: pointer;
    display: inline-block;
    position: relative;
    margin-bottom: 0;
    padding: 1em;
    border: 2px solid #fff;
    border-radius: 4em;
    background-image: none;
    color: #fff;
    font-size: 14px;
    font-weight: normal;
    line-height: 1.1;
    text-align: center;
    vertical-align: middle;
    white-space: nowrap;
    text-decoration: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    touch-action: manipulation;
}
.section--mission__inner .button {
    margin: 24px auto 0;
    padding: 1.3em;
    font-size: 13px;
	text-decoration: none;
}
.section--mission__inner1 .button {
    width: 184px;
}
.hidden-sp {
    display: block;
}
.section--mission__inner1 .section--mission__bg {
}
.section--mission__inner1 .section--mission__bg.is-inview {
}
.section--mission .section__inner5 {
    position: relative;
    z-index: 2;
	    padding-bottom: 5rem;
}
.section--mission2 .section__inner6 {
	max-width: 1200px;
 	margin: 5rem auto;
}


.cp {
	margin:0;
	vertical-align: top;
	display: inline-block !important;
    width: 32.95%;
}
.cp2 {
    margin: 4px auto;
    vertical-align: top;
    display: inline-block !important;
    width: 49.64%;
}
.cp:first-child {
	margin:0;
}
.cp2:first-child {
	margin:0;
}
a.thumnail {
}
 
.cp img {
    height: auto;
    -webkit-transition:all 0.25s ease-in-out;
    transition:all 0.25s ease-in-out;
    width: 100%;
    vertical-align: bottom;
}
.cp2 img {
    height: auto;
    -webkit-transition:all 0.25s ease-in-out;
    transition:all 0.25s ease-in-out;
    width: 100%;
    vertical-align: bottom;
}
 
figure {
    margin: 0;
    overflow: hidden;
    position: relative;
    text-align: center;
		position:relative;
		z-index:1;
}
.cp img:hover {
} 
figcaption {
    background-color: rgba(0,0,0,0.5);
    color: #FFF;
    font-size: 16px;
    font-size: 1.6rem;
    position: absolute;
    text-align: center;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    padding-top: 25%;
  -webkit-transition: all 1s ease;
     -moz-transition: all 1s ease;
       -o-transition: all 1s ease;
      -ms-transition: all 1s ease;
          transition: all 1s ease;
}
.cp2 figcaption {
    padding-top: 20%;
}
figcaption::before {
		content: "";
    position: absolute;
    border: 3px solid #fff;
    margin: 20px;
    left: 0;
    top: 0;
    width: 90%;
    height: 90%;
}
.cp2 figcaption::before {
		content: "";
    position: absolute;
    border: 3px solid #fff;
    margin: 15px;
    left: 0;
    top: 0;
    width: 95%;
    height: 90%;
}

.cp a:hover>figure img {
	-webkit-filter: blur(5px);
}
.cp2 a:hover>figure img {
	-webkit-filter: blur(5px);
}
 
.cp a:hover>figure figcaption {
	background-color: rgba(3,65,112,0.7);
    opacity: 1;
}
.cp2 a:hover>figure figcaption {
	background-color: rgba(3,65,112,0.7);
    opacity: 1;
}
.cp h3 {
		font-size:18px;
		line-height: 4;
    position: relative;
    z-index: 2;
    color: #fff;
    text-align: center;
	  letter-spacing: 0.15em;
}
.cp2 h3 {
		font-size:18px;
		line-height: 4;
    position: relative;
    z-index: 2;
    color: #fff;
    text-align: center;
	  letter-spacing: 0.15em;
}
.cp h3::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    border-bottom: 1px solid #fff;
    width: 70%;
    margin: 0 auto;
}
.cp2 h3::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    border-bottom: 1px solid #fff;
    width: 70%;
    margin: 0 auto;
}

.cp p.En {
    font-size: 16px;
    font-family: 'Tw Cen MT';
    color: #fff;
}
.cp2 p.En {
    font-size: 16px;
    font-family: 'Tw Cen MT';
    color: #fff;
}
.cp p.En {
    position: relative;
    display: inline-block;
    padding-bottom: 15px;
    font-weight: 100;
    text-align: center;
}
.cp2 p.En {
    position: relative;
    display: inline-block;
    padding-bottom: 15px;
    font-weight: 100;
    text-align: center;
}
.cp p.thumb {
	color: #2a4b00;
  font-size: 15px;
  padding: 1rem 0;
  line-height: 1.8;
}
.cp2 p.thumb {
	color: #2a4b00;
  font-size: 15px;
  padding: 1rem 0;
  line-height: 1.8;
}

/*BLUR*/
	.section--mission__inner a.button:hover {
		background:#fff;
		color:#034170;
	}



@media only screen and (min-width: 768px) {
	.hero-home {
			min-height: 495px;
			padding-left: 300px;
	}
	.hero-home__bg {
			height: auto;
			min-height: 495px;
			background-size: cover;
	}
	.hero-home__bg img {
			min-width: 830px;
			min-height: 495px;
			max-height: 590px;
	}
	.hero-home__bg:after {
    right: 128px;
    bottom: -8px;
    width: 400px;
    height: 8px;
    background-image: url(../img/common/line_02_pc.svg);
	}
	.hero-home__heading-sp {
    display: none;
	}
	.hero-home__heading-pc {
		font-size: 140%;
		color:#034170;
		letter-spacing: 5px;
    line-height: 1.3;
    font-family: Avenir;
	}
	.hero-home__heading {
    bottom: 40px;
    left: 178px;
	}
	.section--mission {
   	padding: 5rem 20px 0;
	}

	.section--mission .heading1 {
    margin-bottom: 81px;
	}	

	.heading1 strong {
    font-size: 35px;
		font-weight: 700;
		line-height: 0.8;
	}

	.heading1 span {
    font-size: 16px;
		font-family: 'Tw Cen MT';
		color:#858585;
	}
	.section__inner5 {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
	}
	.section--mission .section__inner5 {
    display: flex;
    flex-direction: row-reverse;
    align-items: stretch;
	}
	.section--mission__inner1 .section--mission__text {
    width: 50%;
    padding: 80px 55px 55px;
	}
	.section--mission .heading4 {
    margin: 0 -10px 22px;
    font-size: 20px;
    letter-spacing: 0.03em;
	}
	.button--contact {
    width: 406px;
    height: 103px;
    padding: 0;
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 99px;
    letter-spacing: 0.14em;
    transition: all 1s cubic-bezier(0.165, 0.84, 0.44, 1);
	}
	.section--mission__inner .button {
    height: auto;
    margin: 32px auto 0;
    font-size: 15px;
		font-family: 'Tw Cen MT';
    line-height: 1.1;
		text-decoration: none;
	}
	
	.section--mission__inner1 .button {
    width: 224px;
	}
	.section--mission__inner1 .section--mission__bg {
    width: 50%;
	}

}


/*--------------------------------------------------------------
商品一覧
--------------------------------------------------------------*/

.contents_main_title.leaf {
		padding: 0 0 5px 0;
    color: #72604e;
    background: left bottom repeat-x;
    position: relative;
    font-family: YuMincho, /* Macç”¨ */ 'Yu Mincho', /* Windowsç”¨ */ serif;
    font-size: 18px;
    color: #413121;
	  margin-bottom: 10px;
    background-image: url(../../images/index/line_black.png);
    width: 870px;
}
.contents_main_title i {
    display: inline-block;
    position: relative;
    top: 8px;
}
.contents_main_title.leaf i {
    margin: 0 10px 5px 0;
    width: 36px;
    height: 22px;
    background: url(../../images/guide/icon-title-h2.png) 0 0 no-repeat;
}


.contents_sub_title {
    width: 870px;
    height: 48px;
    margin: 30px 0 20px;
    background: url(../../images/guide/h3-title-bg.gif) repeat-x;
    font-size: 17px;
    line-height: 47px;
    padding-left: 10px;
}
.contents_sub_title i {
    padding: 4px 0 7px 20px;
    background: url(../../images/index/common_icons.png) 0 0px no-repeat;
    position: relative;
    top: 2px;
    left: 0;
    font-size: 12px;
    line-height: 20px;
    /* width: 68px; */
}
.section {
	overflow: hidden;
  clear: both;
}
.section .common-txt {
	padding: 0 25px;
}
.section p, .section ul li, .thumb-detail {
    font-size: 13px;
    font-weight: 100;
    color: #fff;
    margin: 10px 0;
}
.section a {
	text-decoration:underline;
}
.section a:hover {
	text-decoration:none;
}
.section .common-txt h3 {
	font-size:15px;
	color:#413121;
}
.product-list ul li {
	display:inline-block;
	width: 258px;
  margin: 10px 4px 4px 20px;
}
.product-list li a img {
	width:258px;
}
.common-left-Box {
	float:left;
	width:20%;
}
.common-left-Box .thumb {
	  display: table;
    height: 211px;
}
.common-right-Box {
	float: left;
  width: 79%;
  padding: 0 20px 5px;
}
.common-right-Box dl dt.detailTtl {
	font-size:16px;
	color:#5a5a5a;
  padding: 5px 0;
}
.common-right-Box dl dt.detailTtl span.position {
	font-size:12px;
	color:#919191;
	font-weight: 100;
	padding-left: 10px;
}
.common-right-Box dl dd.caps {
  color: #5a5a5a;
  font-size: 14px;
  font-weight: 100;
  margin: 0;
  border-bottom: 1px dotted #979797;
  padding: 0 0 10px;
}
.cart-btn {
	float:right;
} 
.cart-btn a {
    background: #64674c;
    width: 180px;
		height:40px;
    display: block;
    font-size: 15px;
    color: #fff;
    position: relative;
	  margin: 0 0 20px 0;
	  padding: 7px 0 0 50px;
    text-decoration: none;
}
.cart-btn a:before {
    content: '.';
    display: block;
    background-repeat: no-repeat;
    text-indent: 120%;
    white-space: nowrap;
    overflow: hidden;
    vertical-align: middle;
    position: absolute;
    background-image: url(../../images/products/products-cart-arrow-ico.png);
    position: absolute;
    top: 15px;
    left: 20px;
    z-index: 10;
    width: 8px;
    height: 8px;
    background-size: contain;
}
.common-left-Box--top {
    width: 65%;
		float:left;
}
.common-left-Box--top h4 {
		padding:0 25px;
		color:#413121;
		font-size:15px;
}
.common-right-Box--top {
    width: 35%;
		float:right;
}

	.SPblock {
		display: none !important;
	}	
	#map1{
			 width: 100%;
			 height:397px;
	}


@media only screen and (max-width: 768px) {
	.SPblock {
		display: block !important;
	}	
	.SPnone {
		display: none !important;
	}
	
	.section--mission2 {
		position: relative;
    padding: 0 20px 26px;
    color: #fff;
	}
.section--mission2 .section__inner6 {
    max-width: 100%;
    margin: 0 auto;
}
	.cp:first-child {
    margin: 1rem auto;
}
	.cp {
    margin: 0;
    vertical-align: middle;
    display: block;
    width: 85%;
    margin: 1rem auto;
}
	#map1{
			 width: 100%;
			 height:200px;
	}
.section--mission .section__inner5 {
    position: relative;
    z-index: 2;
    padding-bottom: 0;
}	
	.section--mission2 {
    position: relative;
    padding: 0 20px 26px;
    color: #fff;
	}
	.section--mission__inner2 {
		
	}
	
	
	.nav_wrapper {
    margin: 0 auto;
	}
	.nav_wrapper .guide_nav {
    margin: 0 auto;
    overflow: hidden;
	}
	.nav_wrapper .guide_nav li {
		float: left;
    width: 30%;
    margin: 0 5px 0;
    min-height: 49px;
    list-style: none;
	}
	.nav_wrapper .guide_nav li:nth-child(odd) {
    padding-right: 1%;
	}
	.nav_wrapper .guide_nav li.nav_01 a {
    padding: 15px 5px 15px 5px;
	}
	.nav_wrapper .guide_nav li a {
    font-size: 12px;
    width: 100%;
		height: 70px;
    display: inline-block;
    border: #779e4e solid 1px;
    padding: 5%;
    text-align: center;
    color: #779e4e;
    -webkit-border-radius: 0 8px 0 8px;
    border-radius: 0 8px 0 8px;
    text-align: center;
    -webkit-transition: background 0.08s;
    transition: background 0.08s;
		padding: 15px 5px 10px 5px;
	}
	.nav_wrapper .guide_nav li.current {
		background-color: #acbe9a;
    font-weight: 600;
    color: #fff;
	}
		.nav_wrapper .guide_nav li.nav_03 a {
    padding: 25px 5px 15px 5px;
	}

	.contents_small_title {
		margin: 0 0 10px
	}
	.common-left-Box--top {
    float: none;
    width: 100%;
	}
	.common-left-Box--top h4 {
		padding:0;
	}
	.common-txt p {
		margin:0;
	}
	.common-right-Box--top {
    float: none;
    width: 100%;
    text-align: center;
	}
	.common-left-Box .thumb {
		display: block;
		height:auto;
	}
	.common-left-Box {
    float: none;
    width: 100%;
    text-align: center;
		clear: both;
	}
	.common-right-Box {
		clear: both;
    float: none;
    width: 100%;
    padding: 0;
	}
	.cart-btn {
    float: right;
    width: 50%;
		margin: 0 auto;
	}
	.hero-home__heading-sp {
    font-size: 100%;
    color: #034170;
    letter-spacing: 1px;
    font-family: Avenir;
}
}


@media screen and (min-width:641px) {
  .fb-page {
    width:312px !important;
  }
}
 
@media screen and (max-width:640px) {
  .fb-page {
    width:100% !important;
  }
}

@media screen and (device-width: 320px) and (device-height: 568px) and (-webkit-device-pixel-ratio: 2){
	.nav_wrapper .guide_nav li a {
		padding: 9px 5px 10px 5px;
	}
	.cart-btn a {
		padding: 7px 0 0 35px;
	}
	dl {
    margin-bottom: 0;
	}
}

@media screen and (device-width: 375px) and (device-height: 667px) and (-webkit-device-pixel-ratio: 2){
	.slider .slick-slide h2 {
    position: absolute;
    bottom: 15px;
    left: 15.2%;
    color: #fff;
    font-size: 25px;
    text-shadow: -2px -1px 2px rgba(0, 0, 0, 0.4), 1px 1px 1px rgba(255, 255, 255, 0.5);
    font-family: "TsukuGoPro-M";
    font-weight: 500;
}}