@charset "UTF-8";
@import url('reset.css');

/*SNS Icons*/
@font-face {
  font-family: 'icomoon';
  src:  url('/fonts/icomoon.eot?vl56op');
  src:  url('/fonts/icomoon.eot?vl56op#iefix') format('embedded-opentype'),
    url('/fonts/icomoon.ttf?vl56op') format('truetype'),
    url('/fonts/icomoon.woff?vl56op') format('woff'),
    url('/fonts/icomoon.svg?vl56op#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-arrow_forward_ios:before {
  content: "\e900";
}
.icon-facebook:before {
  content: "\ea90";
}
.icon-facebook2:before {
  content: "\ea91";
}
.icon-instagram:before {
  content: "\ea92";
}
.icon-twitter:before {
    content: "";
    background: url(/img/sns_x_icon.svg);
    background-size: cover;
    width: 6.625vw;
    height: 6.625vw;
    display: block;
}


/*font-family: 'Montserrat', sans-serif;
font-family: Meiryo, Roboto,'Droid Sans', "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", YuGothic, "Yu Gothic", sans-serif;*/

html {
  font-family: 'Noto Serif JP', serif;
  font-weight: 700;
	overflow-y: scroll;
	overflow-x: hidden;
}
body {
	width: 100%;
	height: auto;
	overflow:hidden;
	color:#333;
	-webkit-font-smoothing: antialiased;
}

html,body {
  overflow: auto;
  height: 100%;
}

ul {
	list-style:none;
}

img {
	vertical-align: bottom;
	outline: none;
	width:100%;
	height: auto;
}


a {
	text-decoration: none;
	color:#333;
}
a:active {
	text-decoration: none;
	color:#333;
}
a img {
	border: 0;
}

section,
.cf:after {
	content: "";
	display: block;
	clear: both;
}
.section_inner {
	position: relative;
}


.sp {display: block;}
.pc {display: none;}


.text_indent{
 margin-left: 1em;
}



/*header
=============================*/
#header {
  background-color: #fff;
  width: 100%;
	height: 17.03125vw;
  box-sizing: border-box;
  padding: 3.125vw 3.125vw 0;
	position: fixed;
	left:0;
	top:0;
	z-index: 5;
}

#header .logo {
	width:77.5vw;
	position: absolute;
	right: 0;
	top:0.78vw;
}
#header .btn {
	width:10.9375vw;
	position: absolute;
	left: 0;
	top:0;
}



.menuToggle {
	width:10.9375vw;
}
.show-navi .menuToggle img {
  opacity: 0;
}
.show-navi .menuToggle {
  background-image: url("/img/btn_cl.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100% auto;
}

#menuBg {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(255,255,255,0.9);
	width: 100%;
	height: 99999px;
	margin: 0;
		z-index: 3;
}

#mainMenu {
	display: none;
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	margin: 0;
	z-index: 4;
	overflow-y: auto;
	box-sizing:border-box;
	padding: 25vw 3.125vw 6.5vw;
}

.global_nav{
	width: 100%;
  padding: 0 3.125vw;
}

.global_nav a{
	display: block;
	font-size: 5.625vw;
  font-weight: 700;
	padding-bottom: 0.5em;
}
#mainMenu .shop_nav {
  padding: 9.37vw 0 3.125vw;

}
#mainMenu .shop_nav dt {
  display: block;
	font-size: 5.625vw;
  font-weight: 700;
  padding: 0 3.125vw;
  border-bottom: 1px solid #000;
  margin-bottom: 6.25vw;
}
#mainMenu .shop_nav dd {
  background-color: #FFF;
  margin-bottom: 3.125vw;
  margin-left: auto;
  margin-right: auto;
  width:78.125vw;
}
#mainMenu .shop_nav a {
  display: flex;
  align-items: center;
  justify-content: center;
  width:78.125vw;
  height: 18.125vw;
  box-sizing: border-box;
  border: 1px solid #ccc; 
}
#mainMenu .shop_nav a img {
  width:39.6875vw;
}


.sns_list {
	display: flex;
  justify-content: center;
}
.sns_list li {
  margin: 0 4.6875vw;
}
.sns_list a {
	width:15.625vw;
  height: 15.625vw;
  color: #fff;
  font-size: 6.875vw;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 5px;
}
.insta_btn {
  display: inline-block;
  text-align: center;
  color: #2e6ca5;
  font-size: 6.875vw;
  text-decoration: none;
}

.insta_btn:hover {
  color:#668ad8;
  transition: .5s;
}

.insta_btn .insta{
  position: relative;
  display: inline-block;
  width: 15.625vw;
  height: 15.625vw;
  background: -webkit-linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
  background: linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
  overflow: hidden;
  border-radius: 5px;

}

.insta_btn .insta:before{
  content: '';
  position: absolute;
  top: 23px;
  left: -18px;
  width: 15.625vw;
  height: 15.625vw;
  background: -webkit-radial-gradient(#ffdb2c 10%, rgba(255, 105, 34, 0.65) 55%, rgba(255, 88, 96, 0) 70%);
  background: radial-gradient(#ffdb2c 10%, rgba(255, 105, 34, 0.65) 55%, rgba(255, 88, 96, 0) 70%);
}

.insta_btn .fa-instagram {
  color: #FFF;
  position: relative;
  z-index: 2;
  font-size: 6.875vw;
  line-height: 15.625vw;
}

.fa-instagram:before {
  content: "\ea92";
}
.sns_list .twitter a{background-color:#000;}
.sns_list .facebook a{background-color:#3b5998;}

.sns_list.pc {
  display: none;
}


/*fooetr
=============================*/
#footer {
}


/*footer_shop_nav*/
#footer .footer_subtitle {
  background-color: #000;
  text-align: center;
  color: #fff;
  font-size: 4.6875vw;
  padding: 3.75vw;
  position: relative;
}
#footer .footer_subtitle::after {
  content: "";
  background-image: url("/img/footer_shop_nav_bg.png");
  background-repeat: no-repeat;
  background-size: 100% auto;
  width:8.4375vw;
  height: 4.53125vw;
  position: absolute;
  bottom:-4.53125vw;
  left:50%;
  margin-left: -4.21875vw;
}
#footer .footer_shop_nav ul {
  display: block;
  width:64.21875vw;
  margin: 12.5vw auto;
}
#footer .footer_shop_nav li {
  margin-bottom: 4.68vw;
}
#footer .footer_shop_nav a {
  display: flex;
  align-items: center;
  justify-content: center;
  width:100%;
  height: 20.3125vw;
  box-sizing: border-box;
  border: 1px solid #ccc;
}
#footer .footer_shop_nav a img {
  width:39.6875vw;
}
/*pagetop*/
#pagetop {
	width:13.75vw;
	position: absolute;
	top:-8vw;
	right: 3.125vw;
	z-index: 2;
}

.footer_menu {
  position: relative;
	background-color: #f7f7f7;
	padding: 7.8125vw;
}
.footer_menu .menu {
	padding-bottom: 6.25vw;
}
.footer_menu .menu li {
	font-size: 3.75vw;
	white-space: nowrap;
	margin-bottom: 1em;
}

#copyright {
	background-color: #cccccc;
	padding: 3.125vw;
	text-align: center;
	font-size: 2.8125vw;
  font-family: Meiryo, Roboto,'Droid Sans', sans-serif;
  font-weight: 400;
}







/*==========================================================
	TOP PAGE
==========================================================*/
#contents .section {
  padding: 10vw 0;
}



/*main visual
=============================*/
#mv {
  background-image: url("/img/top/mv_bg.jpg");
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
}
.mv_inner {
  width:100%;
  height: 187.5vw;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
}
.mv_txt01 {
  margin-top: 3vh;
  width:26.5vh;
}
.mv_img {
  width:33vh;
}
.scroll_icon {
  width:5vh;
  padding-bottom: 4vh;
}

@media screen and (orientation: landscape) {
  #mv {
    background-position: center center;
    background-size: cover;
  }
  .mv_inner {
    width:100%;
    height: 200vw;
  }
  .mv_txt01 {
    width:52.5vw;
    margin-top: 12.5vw;
  }
  .mv_img {
    width:62.5vw;
  }
  .scroll_icon {
    width:20.9375vw;
    padding-bottom: 5vw;
  }
}

.mv_txt02 {
  padding: 7.5vw 3.125vw 10vw;
}
#next {
  position: absolute;
  bottom:17vw;
  left:0;
  width:1vw;
  height: 1vw;
}



/*section_title*/
.section_title {
  text-align: center;
  margin-bottom: 3.125vw;
}
.section_title .en {
  font-family: 'Montserrat', sans-serif;
  font-size: 8.4375vw;
}
.section_title .jp {
  font-size: 3.125vw;
  font-weight: bold;
}



/*top_news
=============================*/
#top_news{
  background-color: #fff;
}
#top_news .section_title {
  margin-bottom: 8.75vw;
}

.news_list {
  box-sizing: border-box;
  width:99vw;
  height: 65.625vw;
	overflow-y: auto;
	overflow-x: hidden;
  border: 1px solid #fff;
  background-color: #fff;
}

.news_list li {
  font-size: 3.5vw;
  padding: 1em 1em 0;
  line-height: 1.25;
}
.news_list .news_date {
  display: block;
}




/*top_concept
=============================*/
.section_txt {
  padding: 7.8125vw 3.125vw 9.375vw;
}
.section_subtitle {
  font-size: 5.025vw;
  font-weight: bold;
  line-height: 1.3;
}
.section_txt p {
  font-size: 3.75vw;
  line-height: 1.5;
  padding-bottom: 1em;
}
.section_subtitle + p {
  padding-top: 1em;
}
.section_txt .txt_note {
  text-align: right;
}
.section_txt .txt_note p {
  display: inline-block;
  padding-left: 1em;
  text-indent: -1em;
  text-align: left;
}
.section_txt .txt_attention {
  color: #c00000;
}
sup {
  font-size: 70%;
  vertical-align: super;
}
.bg01 {
  background-image: url("/img/top/bg01.jpg");
  background-repeat: no-repeat;
  background-position: right center;
  background-size: 150% auto;
}
.bg02 {
  background-image: url("/img/top/bg01.jpg");
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 150% auto;
}

#top_concept .img03 {
  padding: 10.9375vw 0 9vw;
}

.more_btn {
  width:93.75vw;
  height: 13.75vw;
  margin: 0 auto;
}
.more_btn a {
  display: flex;
  align-items: center;
  justify-content: center;
  width:93.75vw;
  height: 13.75vw;
  box-sizing: border-box;
  border: 4px solid #000;
  background-color: #fff;
  font-size: 3.75vw;
}
.more_btn a span {
  display: inline-block;
  position: relative;
}
.more_btn a span::before {
  content: "\e900";
  font-family: 'icomoon';
  position: absolute;
  left:-1.5em;
  top:50%;
  transform: translateY(-50%);
}



/*top_media
=============================*/
#top_media {
  background-color: #fafafa;
}
#top_media .img01 {
  padding: 0 3.125vw;
}

.section_inner.movie_outer {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.movie_outer .movie_wrap {
  width:93.75vw;
  margin: 3.125vw auto;
     position: relative;
     padding-bottom: 56.25%;
     height: 0;
     overflow: hidden;
}
 
.movie_outer .movie_wrap video {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}

.movie_outer .movie_wrap iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}


/*top_gallery
=============================*/
#contents .section#top_gallery {
  padding-bottom: 3vw!important;
}
.slick-prev, .slick-next {
	content:"";
	width:10vw;
	height: 10vw;
	z-index: 2;
}
.slick-prev,
.slick-prev:hover,
.slick-prev:focus {
	background-image: url("/img/arrow_l.png");
	left:0;
	background-repeat: no-repeat;
	background-size: 100% auto;
}
.slick-next,
.slick-next:hover,
.slick-next:focus {
	background-image: url("/img/arrow_r.png");
	right:0;
	background-repeat: no-repeat;
	background-size: 100% auto;
}
.slick-prev::before, .slick-next::before {
	content: "";
}



/*top_links
=============================*/
.top_links01 {
  padding: 15.625vw 0;
  background-image: url("/img/top/top_links_bg.jpg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  box-shadow: 0px 7px 20px rgba(153, 153, 153, 0.4);
}
.top_links01 .top_links_list {
  width:80.78125vw;
  margin: 0 auto;
}
.top_links01 .top_links_list li {
  margin-bottom: 12.5vw;
}
.top_links01 .more_btn a {
  border: none;
}

.top_links02 {
  padding: 10vw 0 0;
  position: relative;
}
.top_links02::before {
  content: "";
  width:47.96875vw;
  height: 173.125vw;
  background-color: #f2f2f2;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
.top_links02 .top_links_list {
  width:58.125vw;
  margin: 0 auto;
}
.top_links02 .top_links_list li:not(:last-child) {
  margin-bottom: 12.5vw;
}
.top_links02 .top_links_list li {
  box-shadow: 10px 7px 20px rgba(153, 153, 153, 0.4);
  text-align: center;
  background-color: #fff;
}

.top_links02 .top_links_list li .txt {
  display: block;
  padding: 2em 0;
  font-size: 3.75vw;
}
.top_links02 .top_links_list li .txt span {
  display: inline-block;
  position: relative;
}
.top_links02 .top_links_list li .txt span::before {
  content: "\e900";
  font-family: 'icomoon';
  font-size: 70%;
  position: absolute;
  left:-1em;
  top:50%;
  transform: translateY(-35%);
}



/*top_access
=============================*/
.top_access_txt {
  text-align: center;
  padding-bottom: 10.9375vw;
  font-family: Meiryo, Roboto,'Droid Sans', sans-serif;
  font-weight: 400;
}
#gmap {
  width:100%;
  height: 79.53125vw;
  overflow: hidden;
  font-weight: 400;
}







/*==========================================================
	Lower PAGE
==========================================================*/
/*ページタイトル
=============================*/
#page_title {
  width:100%;
  height: 42.65625vw;
  margin-bottom: 3.125vw;
  background-repeat: no-repeat;
  background-size: 100% auto;
}
#page_title .title_txt {
  color: #fff;
  width:100%;
  height: 32.96875vw;
  padding: 0 3.125vw;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  flex-direction: column;
}
#page_title .title_txt .page_title {
  font-size: 7.5vw;
}
#page_title .title_txt .page_sub {
  font-size: 3.75vw;
}



/*製品情報ページ用*/
#page_title.products_page {
  background-image: url("/img/products/page_title_bg_sp.jpg");
}
/*農園・工場紹介ページ用*/
#page_title.factory_page {
  background-image: url("/img/factory/page_title_bg_sp.jpg");
}
/*使用方法・よくある質問ページ用*/
#page_title.howtouse_page {
  background-image: url("/img/howtouse/page_title_bg_sp.jpg");
}
/*会社概要ページ用*/
#page_title.company_page {
  background-image: url("/img/company/page_title_bg_sp.jpg");
}
/*問い合わせページ用*/
#page_title.contact_page {
  background-image: url("/img/contact/page_title_bg_sp.jpg");
}
/*プライバシーポリシーページ用*/
#page_title.privacy_page {
  background-image: url("/img/privacy/page_title_bg_sp.jpg");
}
/*サイトマップページ用*/
#page_title.sitemap_page {
  background-image: url("/img/products/page_title_bg_sp.jpg");
}
/*取扱業者ページ用*/
#page_title.distributor_page {
  background-image: url("/img/distributor/page_title_bg_sp.jpg");
}

/*パンくずリンク
=============================*/
#topic_path {
  width:100%;
  padding: 0 3.125vw;
  margin-top: 12.5vw;
  box-sizing: border-box;
  position: relative;
}
#topic_path ul {
  display: flex;
}
#topic_path li {
  font-size: 3.75vw;
  font-weight: normal;
}
#topic_path li:not(:last-child) {
  position: relative;
  padding-right: 1.5em;
}
#topic_path li:not(:last-child)::after {
  content: ">";
  position: absolute;
  right:0.5em;
  top:50%;
  transform: translateY(-50%);
  display: inline-block;
}






/*製品情報ページ
=============================*/
#products {
  padding-bottom: 0vw !important;
}
#products .section_inner.products01 {
  margin-top: 10vw;
}

#products .section_inner.products02 {
  margin-top: 10vw;
}
.section_subtitle4 {
  font-size: 5.625vw;
  line-height: 1.6;
  color: #4e3614;
  text-align: center;
  margin-bottom: 10vw;
}


#products .products02 .feature {
  width: 53.59374vw;
  margin: 0 auto;
}
#products .products02 li {
  margin-bottom: 9.375vw;
}
#products .products02 li:nth-child(3) {
  width:56.71874vw;
}
#products .products02 li p {
  padding-top: 0.5em;
  font-size: 3.75vw;
}

#products .products03 {
  margin-top: 9.375vw;
}
#products .products03 h3 {
  width:93.75vw;
  margin: 0 auto 5.46875vw;
}

#products .products03 .osusume {
  position: relative;
  background-image: url("/img/products/product_bg02.png");
  border-radius: 4.0625vw;
  width:93.75vw;
  box-sizing: border-box;
  padding: 7.8125vw 17.5vw;
  margin-left: auto;
  margin-right: auto;
}
#products .products03 .osusume::before {
  content: "";
  background-image:url("../img/products/product_bg.png");
  background-repeat: no-repeat;
  background-size: 100% auto;
  width:10.3125vw;
  height: 5.46875vw;
  position: absolute;
  left:50%;
  top:0;
  transform: translateX(-50%);
}
#products .products03 li {
  width:56.25vw;
  font-size: 4.375vw;
  padding-left: 9.6875vw;
  background-image: url("/img/products/check_icon.png");
  background-repeat: no-repeat;
  background-position: left top;
  background-size: 6.71875vw auto;
  margin-bottom: 2vw;
  min-height: 7.5vw;
}


#features .bg03 {
  background-image: url("/img/products/product_bg03.png");
  background-size: contain;
  padding: 11vw 0;
  position: relative;
  margin-top: 8vw;
}
#features .bg03::before {
  content: "";
  background-image:url("../img/products/product_bg.png");
  background-repeat: no-repeat;
  background-size: 100% auto;
  width:13.90625vw;
  height: 7.8125vw;
  position: absolute;
  left:50%;
  top:0;
  transform: translateX(-50%);
  z-index: 2;
}


#features .section_inner .img01 {
  width: 93.75vw;
  margin: 0 auto 4.5vw;
}
#features .section_inner .section_txt {
  width:100%;
  display: flex;
  justify-content: space-between;
}
#features .section_inner .num {
  width:12.5vw;
  color: #4e2b09;
  font-size: 10.3125vw;
  font-weight: normal;
  text-align: center;
  margin-top: -2vw;
}
#features .section_inner .desc {
  width:80.46875vw;
  padding: 0 0 0 3.28125vw;
  color: #4e2b09;
  border-left: 1px solid #4e2b09;
  box-sizing: border-box;
}

.section_subtitle5 {
  font-size: 5.625vw;
  line-height: 1.6;
  margin-bottom: 2.5vw;
}
.section_subtitle6 {
  font-size: 4.0625vw;
  line-height: 1.5;
  margin-bottom: 2.5vw;
}

#features .section_inner .desc li {
  position: relative;
  padding-left: 1em;
  display: block;
  font-size: 3.4375vw;
}
#features .section_inner .desc li::before {
  content: "";
  width:10px;
  height: 10px;
  border-radius: 50%;
  background-color: #f09c51;
  position: absolute;
  left:0px;
  top: 10px;
}
#features .section_inner .desc strong {
  font-weight: bold;
}

#until {
  padding-top: 0vw !important;
}
#until .section_title {
  margin-bottom: 6vw;
}


#review {
  padding-top: 0vw !important;
}
#review .section_title {
  margin-bottom: 6vw;
}


.bg04 {
  background-color: #fbf8e9;
}
#review .review01 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width:100%;
  padding: 3.125vw;
  box-sizing: border-box;
  position: relative;
  padding-bottom: 20vw;
}
#review .review01 .img01 {
  width:25.46875vw;
}
#review .review01 .section_txt {
  width:65vw;
  color: #010101;
}
#review .review01 h3 {
  font-size: 4.6875vw;
}
#review .review01 h3 strong {
  font-size: 7.8125vw;
  display: block;
}
#review .review01 p {
  font-size: 5.625vw;
  text-align: center;
  position: absolute;
  left:0;
  bottom:0vw;
  width:100vw;
}

#review .section_inner.review02 {
  padding: 3.125vw;
}
#review .section_inner.review02 dl {
  display: flex;
  justify-content: space-between;
  margin-bottom: 4.6875vw;
  position: relative;
}
#review .section_inner.review02 dt {
  width:22vw;
  text-align: center;
}
#review .section_inner.review02 dt img {
  width:18.4375vw;
}
#review .section_inner.review02 dd {
  width:67vw;
  border-radius: 4.0625vw;
  padding: 4.0625vw;
  box-sizing: border-box;
  background-color: #fff;
  position: relative;
}
#review .section_inner.review02 dd::before {
  content: "";
  background-image:url("../img/products/talk_tail.png");
  background-repeat: no-repeat;
  background-size: 100% auto;
  width:4.6875vw;
  height: 6.40625vw;
  position: absolute;
  left:-4.6875vw;
  top:5.78125vw;
  z-index: 2;
}
#review .section_inner.review02 .star {
  width:40.9375vw;
  margin-bottom: 3.125vw;
}
#review .section_inner.review02 h4 {
  font-size: 4.6875vw;
  color: #c10100;
}
#review .section_inner.review02 p {
  font-size: 3.4375vw;
  line-height: 1.45;
  padding: 1em 0.5em;
  color: #333;
}

#summary {
  padding-top: 0vw !important;
}
#summary .section_title {
  margin-bottom: 6vw;
}
.table01 + .more_btn {
  margin-top: 5.78vw;
}




/*農園・工場紹介ページ
=============================*/
#plantation {
  padding-bottom: 0 !important;
}
#plantation .section_title {
  margin-bottom: 12vw !important;
}
.section_subtitle3 {
  font-size: 5.625vw;
  line-height: 1.33;
  color: #db0000;
  padding-bottom: 1em;
}

#ayurveda {
  padding-top: 0 !important;
}
#ayurveda .section_title {
  margin-bottom: 12vw !important;
}
#ayurveda .gallery {
  margin-top: 10vw;
}

#factory {
  padding-top: 0 !important;
}
#factory .section_title {
  margin-bottom: 12vw !important;
}

#factory .section_inner.logos {
  width: 76.5625vw;
  margin: 9.375vw auto 0;
}




/*使用方法・よくある質問ページ
=============================*/
#page_title.howtouse_page .page_title {
  letter-spacing: -0.13em;
  font-size: 7.2vw;
}

.howtouse01 {
  background-image: url("/img/howtouse/bg01_sp.png");
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: 100% auto;
  width:100%;
  min-height: 74.21875vw;
  margin-top: 6.25vw;
}
.howtouse01 .section_txt {
padding: 0 3.125vw;
}
.howtouse01 .section_txt p {
padding-bottom: 1em;
  line-height: 1.3;
}

.howtouse01 .section_subtitle {
  color: #993300;
  padding-bottom: 1.2em;
  text-align: center;
}

.howtouse02 {
  margin-top: 3.125vw;
}
.howtouse02 dl {
  width:93.75vw;
  margin: 0 auto 9.375vw;
}
.howtouse02 dt {
  text-align: center;
  margin-bottom: 5.15625vw;
}
.howtouse02 dt strong {
  font-size: 5.625vw;
  display: inline-block;
  background-image: url("/img/howtouse/line_bg.png");
  background-position: left bottom;
  background-repeat: repeat-x;
  padding-bottom: 0.1em;
}
.howtouse02 dd p {
  padding: 1em 0 0 0;
  font-size: 3.75vw;
  line-height: 1.5;
}



#faq {
  background-color: #f8f8f8;
}
#faq dl {
  width: 93.75vw;
  margin: 0 auto;
}
#faq dt {
  background-color: #353535;
  color: #fff;
  font-size: 4.6875vw;
  padding: 3.125vw 3.125vw 3.125vw 10.9375vw;
  box-sizing: border-box;
  background-image: url("/img/howtouse/faq_q.png");
  background-repeat: no-repeat;
  background-size: 5.9375vw auto;
  background-position: 3.125vw 3.125vw;
  position: relative;
  border-bottom: 1px solid #fff;
}
#faq dt::after {
  content: "";
  width:6.25vw;
  height: 6.25vw;
  background-image: url("/img/howtouse/faq_arrow.png");
  background-repeat: no-repeat;
  background-size: 100% auto;
  position: absolute;
  top:3.125vw;
  right:3.125vw;
}
#faq dt.active::after {
  transform: rotate3d(1,0,0,180deg);
}
#faq dd {
	display: none;
  background-color: #fff;
  font-size: 4.6875vw;
  padding: 1.5vw 3.125vw 3.125vw 10.9375vw;
  box-sizing: border-box;
  background-image: url("/img/howtouse/faq_a.png");
  background-repeat: no-repeat;
  background-size: 5.9375vw auto;
  background-position: 3.125vw 3.125vw;
}

#faq .more_btn {
  margin-top: 9.375vw;
}





/*会社概要ページ
=============================*/
#greeting .photo {
  width:62.96vw;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}
#greeting .photo img {
  position: relative;
  z-index: 3;
}
#greeting .photo p {
  position: relative;
  z-index: 2;
  font-size: 2.8125vw;
  line-height: 7.5vw;
}
#greeting .photo::before {
  content: "";
  width:62.96vw;
  height: 81.25vw;
  position: absolute;
  left:-7.8125vw;
  top:7.8125vw;
  background-color: #efefef;
}

#greeting .bg05 {
  width:100%;
  background-image: url("/img/company/company_bg01.png");
  background-size: contain;
  padding: 20vw 0 0;
  margin-top: -17.5vw;
}
#greeting .section_txt {
  position: relative;
}
#greeting .section_txt .section_subtitle  {
  font-weight: normal;
  letter-spacing: -0.03em;
}

.table01 {
  width:93.75vw;
  margin: 7.8125vw auto 0;
  border-top: 1px solid#cdcdcd;
  box-sizing: border-box;
}
.table01 th {
  display: block;
  box-sizing: border-box;
  padding: 3.125vw 4.375vw;
  border-left: 1px solid#cdcdcd;
  border-right: 1px solid#cdcdcd;
  border-bottom: 1px solid#cdcdcd;
  background-color: #f7f7f7;
  text-align: left;
  font-size: 3.75vw;
  line-height: 1.5;
}
.table01 th.product_table-title{
  background-color: #fbf8e9;
}
.table01 td {
  display: block;
  box-sizing: border-box;
  padding: 3.125vw 4.375vw;
  border-left: 1px solid#cdcdcd;
  border-right: 1px solid#cdcdcd;
  border-bottom: 1px solid#cdcdcd;
  font-size: 3.75vw;
  line-height: 1.5;
}
.table01 td a {
  color: #336699;
}


#access .access_txt {
  margin: 7.8125vw 0;
  text-align: center;
  font-weight: normal;
}


.lead_txt {
  width:93.75vw;
  margin: 7.8125vw auto 3.90625vw;
}
.table02 {
  width:93.75vw;
  margin: 0 auto 0;
  border-top: 1px solid#cdcdcd;
  box-sizing: border-box;
}
.table02 th {
  display: block;
  box-sizing: border-box;
  padding: 3.125vw 4.375vw;
  border-left: 1px solid#cdcdcd;
  border-right: 1px solid#cdcdcd;
  border-bottom: 1px solid#cdcdcd;
  background-color: #f7f7f7;
  text-align: left;
  font-size: 3.75vw;
  line-height: 1.5;
}
.table02 th.product_table-title{
  background-color: #fbf8e9;
}
.table02 td {
  display: block;
  box-sizing: border-box;
  padding: 3.125vw 4.375vw;
  border-left: 1px solid#cdcdcd;
  border-right: 1px solid#cdcdcd;
  border-bottom: 1px solid#cdcdcd;
  font-size: 3.75vw;
  line-height: 1.5;
}
.table02 td a {
  color: #336699;
}



/*プライバシーポリシーページ
=============================*/
#page_title.privacy_page .page_title {
  letter-spacing: -0.13em;
  font-size: 7.2vw;
  font-weight: normal;
}
#page_title.privacy_page .page_sub {
  font-weight: normal;
}

.section_subtitle2 {
  font-size: 5.625vw;
  padding-bottom: 1em;
}

.section_txt p + .section_subtitle2 {
  padding-top: 1em;
}

#privacy .section_txt ol {
  font-size: 3.75vw;
  line-height: 1.6;
  list-style: decimal;
  margin-left: 1.5em;
  letter-spacing: -0.02em;
}
#privacy .section_txt p + ol {
  margin-top: -1em;
}




/*問い合わせページ
=============================*/
















/* 202311追加コンテンツ分
=============================*/
.new-contents_01 {
  max-width: 1200px;
  margin: 7.8125vw 3.125vw 9.375vw;
  text-align:center;
}
.new-contents_01 .pc{display:none;}
.new-contents_01 .sp{display:block;}
.new-contents_01 .set01{margin-bottom:9.375vw;}
.new-contents_01 .set01 img{width:100%;max-width:984px;}
.new-contents_01 .set02{margin-bottom:9.375vw;}
.new-contents_01 .set02 img{width:100%;max-width:948px;}
.new-contents_01 .set03{margin-bottom:9.375vw;}
.new-contents_01 .set03 img{width:100%;max-width:624px;}
.new-contents_01 .set04{margin-bottom:9.375vw;}
.new-contents_01 .set04 img{width:100%;max-width:610px;}
.new-contents_01 .set05{margin-bottom:9.375vw;}
.new-contents_01 .set05 img{width:100%;max-width:508px;}

.new-contents_02 {
    max-width: 640px;
    min-height:102.49999999999999vw;
    margin-left: auto;
    margin-right: auto;
    background-image: url(/img/top/new-contents_img__006-sp.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    position: relative;
}
.new-contents_02 .flex-inner{
    width: calc(100% - 6.25vw);
    gap:3.125vw;
    max-width: 920px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    position: absolute;
    bottom: 7.6923076923076925vw;
    left: 50%;
    transform: translateX(-50%);
}
.new-contents_02-text{margin:0 3.125vw 9.375vw;text-align:right;font-size: 2.75vw;}
.new-contents_03 {
  max-width: 1200px;
  margin: 0 3.125vw 5.375vw;
  text-align:center;
}
.new-contents_03 .set01 img{width:100%;max-width:575px;}


/*　products用　*/
.flex{
  display:flex;
}
.flex_between{
  justify-content: space-between;
}
.flex_center{
  justify-content: center;
}
.ai-end{
  align-items:end;
}

.new-productscontents01{
    padding: 10vw 3.125vw 0;
    margin: 20vw 0;
    background: #F8F5F1;
}
#products .new-productscontents_inner{
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    flex-direction: column;
}
#products h3.section_subtitle4{
    margin: 0 auto 5vw;
}
.new-productscontents01 .flex_left{
  width:75%;
  max-width:402px;
  margin:0 auto 5vw;
}
.new-productscontents01 .flex_right{
  width:100%;
  max-width:660px;
}
.new-productscontents01 .flex_right:after{
    content: "";
    display: block;
    background: url(/img/products/new-productscontents_img__002.png) no-repeat;
    background-position: bottom right;
    background-size: contain;
    width: 80%;
    margin: 5vw auto 0;
    aspect-ratio: 408 / 199;
}
#products .new-productscontents_inner .flex_right p{
    margin: 0 0 5vw;
}




#Premium .new-productscontents_inner{
  width:100%;
  max-width: 1200px;
  margin:0 auto;
  padding: 10vw 3.125vw 15vw;
  flex-direction: column;
}
#Premium .flex_left{
  width:100%;
  max-width:462px;
  margin:0 auto 5vw;
}
#Premium .flex_right{
  width:100%;
  max-width:700px;
}
#Premium .flex_right h3.section_subtitle4{
  text-align:left;
  margin-bottom:5vw;
}
#Premium .flex_right h3.section_subtitle4 span{
  color:#CC3300;
  display:block;
}
#Premium .flex_right p.right{
  text-align:right;
  font-size:82.75%;
  margin:0;
}
#Premium .full_bg-A{
 background:#F8F5F1;
}
#Premium .full_bg-A .new-productscontents_inner{
  padding: 0;
}
#Premium .new-productscontents_inner .flex_right p{
    margin: 0 0 5vw;
}


#Price .new-productscontents_inner{
  width:100%;
  max-width: 1200px;
  margin:0 auto;
  padding: 5vw 3.125vw 0;
  justify-content: space-between;
}
#Price h3.section_subtitle4{
  margin-bottom:3vw;
  font-size:98.75%;
  min-height: 3rem;
}
#Price .flex_left{
  width:48%;
  max-width:400px;
}
#Price .flex_right{
  width:48%;
  max-width:400px;
}
#Price .flex_left img {
  width:75%;
  max-width:270px;
}
#Price .flex_right img {
  width:75%;
  max-width:270px;
}
#Price .flex_left .img,
#Price .flex_right .img{
  text-align:center;
  margin-bottom:3vw;
}
#Price .flex_right .img{
position: relative;
}
#Price .flex_right .img:after{
    position: absolute;
    top: -8.42vw;
    right: -1.58vw;
    content: "";
    display: block;
    background: url(/img/products/new-productscontents_img__006-medal.png);
    background-size: cover;
    width: 16.84vw;
    height: 16.84vw;
}
#Price .text{
  text-align:center;
  font-size:78.25%;
}

#Price .btn{
  width:100%;
  max-width:400px;
  background:#F0F0F0;
  font-size:130%;
  text-align:center;
  line-height:130%;
  margin-top:3vw;
  font-size:92.75%;
  padding:.5rem;
}

#Voice.full_bg-B{
  background: url(/img/products/new-productscontents_img__007.png) no-repeat;
  padding: 10vw 3.125vw;
  background-size: cover;
  margin:0 0 20vw;
}
#Voice .new-productscontents_inner{
  width:100%;
  max-width: 1200px;
  margin:0 auto;
  background: rgba(255,255,255,.9);
  padding: 10vw 3.125vw 2vw;
}
#Voice h3.section_subtitle4{
  margin-bottom:5vw;
}
#Voice .new-productscontents_inner .text{
  text-align:center;
  margin-bottom:5vw;
  font-size:92.75%;
}
#Voice ul li{
  display:flex;
  gap:30px;
  margin-bottom:8vw;
}
#Voice ul li:before{
    content: "";
    display: block;
    background: url(/img/products/new-productscontents_img__008.png) no-repeat;
    background-position: left;
    width: 100%;
    max-width: 100px;
    min-width: 100px;
    height: 25px;
}
#Voice ul li.red{
    color:#D00000;
    font-size:110%;
    font-weight:bold;
}


.language_switching-flex{
    width: 100%;
    padding: 0 3.125vw;
    display: flex;
    justify-content: space-between;
}
.language_switching-flex .language_switching-btn{
    width: 48%;
    margin: 10vw 0;
}
.language_switching-flex .language_switching-btn a{
    width: 100%;
    display: block;
    text-align: center;
    background: #000;
    color: #FFF;
    padding: 1rem 0;
}


/***************************************************************
サイトマップ
***************************************************************/

.sitemap ul li ul {
  margin-top: .5em;
  margin-bottom: .75em;
  margin-left: 48px;
}
 
.sitemap ul li ul li {
  margin-bottom: .25em;
  position: relative;
}
 
.sitemap ul li ul li::before {
  content: "";
  position: absolute;
  top: -0.5em;
  left: -16px;
  width: 10px;
  height: calc(100% + .75em);
  border-left: 1px solid #CCC;
}
 
.sitemap ul li ul li:last-child::before {
  height: calc(1em + .25em);
}
 
.sitemap ul li ul li::after {
  content: "";
  position: absolute;
  top: .75em;
  left: -16px;
  width: 10px;
  border-bottom: 1px solid #CCC;
}



/***************************************************************
言語切り替えボタン
***************************************************************/
.ls-button{
  margin-top: 17.03125vw;
}
.ls-button .language_switching-flex .language_switching-btn{
    margin: 2vw 0;
}
.ls-button .language_switching-flex .language_switching-btn a {
    padding: .5rem 0;
}