@charset "utf-8";

/*==========================================
 font
===========================================*/
@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);

body {
  font-family: 'Noto Sans Japanese', sans-serif;
  font-size: 15px;
  color: #333;
}
#mainContents h1 {
  width: 100%;
  height: 41px;
  margin: 0 0 30px;
  padding: 19px 0 0;
  background-color: #73A620;
  font-size: 22px;
  font-weight: 400;
  color: #fff;
  text-align: center;
}
#mainContents h1.mb_0 {
  margin: 0;
}
#mainContents h2.ty01 {
  font-size: 22px;
  font-weight: 500;
  line-height: 1.6;
  text-align: center;
}
#mainContents h2.ty01.pb_30 {
  padding: 0 0 30px;
}
#mainContents h2.ty02 {
  position: relative;
  margin: 35px 0 0;
  font-size: 22px;
  font-weight: 500;
  line-height: 1.6;
  text-align: center;
}
#mainContents h2.ty02.mb_30 {
  margin: 35px 0 30px;
}
#mainContents h2.ty02::before {
  position: absolute;
  left: 50%;
  bottom: -7px;
  width: 94px;
  height: 4px;
  margin: 0 0 0 -47px;
  background-color: #73A620;
  content: "";
}
#mainContents h2.ty03 {
  margin: 0 0 20px;
  font-size: 22px;
  font-weight: 500;
  color: #73A620;
}
p {
  font-weight:300;
  font-size: 14px;
  line-height: 1.8;
}
p.ty01 {
  padding: 30px 0 0;
  font-weight:300;
  font-size: 15px;
  line-height: 1.8;
  text-align: center;
}
p.text_R {
  color: #E95514;
}
p.ty02 {
  display: block;
  width: 590px;
  margin: 0 auto;
  padding: 30px 0 0;
  font-weight:300;
  font-size: 15px;
  line-height: 1.8;
  text-align: left;
}
/* スマホ用 */
@media only screen and (max-width: 767px) {
  #mainContents h1 {
    height: 45px;
    margin: 0 0 15px;
    padding: 15px 0 0;
    box-sizing: border-box;
    font-size: 15px;
  }
  #mainContents h2.ty01 {
    font-size: 15px;
  }
  #mainContents h2.ty01.pb_30 {
    padding: 0 0 20px;
  }
  #mainContents h2.ty02 {
    margin: 35px 0 0;
    font-size: 14px;
  }
  #mainContents h2.ty02::before {
    bottom: -7px;
    width: 70px;
    height: 2px;
    margin: 0 0 0 -35px;
  }
  #mainContents h2.ty03 {
    margin: 0 0 10px;
    font-size: 14px;
  }
  p {
    font-size: 12px;
  }
  p.ty01 {
    font-size: 12px;
  }
  p.ty02 {
    width: 100%;
    font-size: 12px;
  }
}

/*==========================================
 link
===========================================*/

a:hover img {
  opacity: 0.8;
  filter: alpha(opacity=80);
}
a { outline: none; text-decoration: none; }
a:link    { color: #333; text-decoration: none; }
a:visited { color: #333; text-decoration: underline; }
a:hover   { color: #333; text-decoration: underline; }
a:active  { color: #333; text-decoration: underline; }

.linkTy01 {
  width: 100%;
  height: 60px;
  margin: 35px auto;
}
.linkTy01 a {
  position: relative;
  display: block;
  width: 345px;
  height: 60px;
  box-sizing: border-box;
  margin: 0 auto;
  padding: 18px 0 0;
  font-size: 18px;
  color: #73A620;
  text-align: center;
  border: 2px solid #73A620;
  border-radius: 6px;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
}
.linkTy01 a::after {
  position: absolute;
  right: 15px;
  top: 50%;
  margin: -12px 0 0;
  width: 24px;
  height: 24px;
  content: url("../img/link_icon01.svg");
}
.linkTy01.noIcon a::after {
  display: none;
}
.linkTy01 a:hover {
  text-decoration: none;
  opacity: 0.7;
}
.linkList_ty01 {
  width: 702px;
  margin: 45px auto 0;
}
.linkList_ty01 ul {
  list-style-type: none;
}
.linkList_ty01 li:nth-child(odd) {
  float: left;
  width: 345px;
  height: 60px;
  margin: 0 0 15px;
}
.linkList_ty01 li:nth-child(even) {
  float: right;
  width: 345px;
  height: 60px;
  margin: 0 0 15px;
}
.linkList_ty01 li a {
  position: relative;
  display: block;
  width: 345px;
  height: 60px;
  box-sizing: border-box;
  margin: 0 auto;
  padding: 18px 0 0;
  font-size: 18px;
  color: #73A620;
  text-align: center;
  border: 2px solid #73A620;
  border-radius: 6px;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
}
.linkList_ty01 li a::after {
  position: absolute;
  right: 15px;
  top: 50%;
  margin: -12px 0 0;
  width: 24px;
  height: 24px;
  content: url("../img/link_icon01.svg");
}
.linkList_ty01 li a:hover {
  text-decoration: none;
  opacity: 0.7;
}
/* スマホ用 */
@media only screen and (max-width: 767px) {
  .linkTy01 {
    width: 100%;
    height: 45px;
    margin: 20px auto;
  }
  .linkTy01 a {
    width: 250px;
    height: 45px;
    padding: 13px 0 0;
    font-size: 14px;
  }
  .linkTy01 a::after {
    right: 10px;
    margin: -8px 0 0;
    width: 16px;
    height: 16px;
  }

  .linkList_ty01 {
    width: 250px;
    margin: 30px auto 0;
  }
  .linkList_ty01 li:nth-child(odd) {
    float: none;
    width: 250px;
    height: 45px;
    margin: 0 0 10px;
  }
  .linkList_ty01 li:nth-child(even) {
    float: none;
    width: 250px;
    height: 45px;
    margin: 0 0 10px;
  }
  .linkList_ty01 li a {
    width: 250px;
    height: 45px;
    padding: 13px 0 0;
    font-size: 14px;
  }
  .linkList_ty01 li a::after {
    right: 10px;
    margin: -8px 0 0;
    width: 16px;
    height: 16px;
  }
}


/*==========================================
 body
===========================================*/

html {
  background: #fff;
}
body {
  -webkit-text-size-adjust: 100%;
}

/*==========================================
 clearfix
===========================================*/
.clearfix {
	zoom: 1;
}
.clearfix:before, .clearfix:after {
	content: "";
	display: table;
}
.clearfix:after {
	clear: both;
}


/*==========================================
 ヘッダーのスタイル
===========================================*/
header {
  z-index: 10000;
  position: relative;
  width: 100%;
  height: 120px;
  border-bottom: 1px solid #F5F4F2;
  background-color: #fff;
}
body#top header {
  border-bottom: none;
}
header #header {
  position: relative;
  width: 1024px;
  height: 120px;
  margin: 0 auto;
}
header #header h1 {
  position: absolute;
  left: 0;
  top: 0;
  width: 164px;
  height: 120px;
}
header #header h1 img {
  width: 164px;
  height: 120px;
}
header #header h2 {
  position: absolute;
  left: 180px;
  top: 25px;
  font-size: 12px;
  color: #979797;
}
body#en header #header h2 {
  position: absolute;
  left: 190px;
  top: 75px;
  font-size: 22px;
  color: #000;
}

header #headerShopLink {
  position: absolute;
  left: 550px;
  top: 13px;
}
header #headerShopLink a {
  position: relative;
  display: block;
  width: 130px;
  height: 34px;
  padding: 9px 0 0 35px;
  border: 1px solid #73A620;
  border-radius: 4px;
  box-sizing: border-box;
  font-size: 14px;
  color: #73A620;
}
header #headerShopLink a:hover {
  text-decoration: none;
  opacity: 0.7;
}
header #headerShopLink a::before {
  position: absolute;
  left: 13px;
  top: 7px;
  width: 17px;
  height: 17px;
  background-image: url("../img/header_shop_icon.svg");
  background-repeat: no-repeat;
  background-size: 17px 17px;
  content: "";
}

header #headerSearch {
  position: absolute;
  left: 730px;
  top: 13px;
}
header #headerSearch input#search {
  width: 200px;
  height: 34px;
  padding: 0 20px 0 40px;
  background-color: #E6E6E6;
  -webkit-border-radius: 17px;
  -moz-border-radius: 17px;
  border: none;
  font-size: 14px;
}

header #headerSearch {
  left: 700px;
}
header #headerSearch input#search {
  width: 140px;
}


header #headerSearch input#search:focus {
  outline: 0;
  background-color: #FCFAE8;
}
header #headerSearch::before {
  position: absolute;
  left: 15px;
  top: 8px;
  width: 19px;
  height: 19px;
  content: url("../img/header_search_icon.svg");
}
header #headerSns {
  position: absolute;
  right: 0;
  top: 20px;
}
header #headerSns {
  position: absolute;
  right: 90px;
  top: 20px;
}
header #headerSns ul {
  list-style-type: none;
}
header #headerSns ul li {
  float: left;
  margin: 0 0 0 15px;
}
header #headerSns ul li:nth-child(1) {
  padding: 2px 0 0;
  width: 17px;
  height: 14px;
}
header #headerSns ul li:nth-child(2) {
  width: 8px;
  height: 16px;
}
header #headerSns ul li:nth-child(3) {
  width: 17px;
  height: 17px;
}

header #headerLang {
  position: absolute;
  right: 0;
  top: 20px;
}
header #headerLang a {
  position: relative;
  font-size: 12px;
  color: #979797;
}
header #headerLang a::before {
  position: absolute;
  left: -20px;
  top: 1px;
  width: 17px;
  height: 17px;
  background-image: url("../img/header_lang_icon.svg");
  background-size: 17px 17px;
  content: "";
}
header #header_SpIcon .menu-trigge {
  display: none;
}
/* スマホ用 */
@media only screen and (max-width: 767px) {
  header {
    height: 45px;
  }
  header #header {
    width: 100%;
    height: 45px;
  }
  header #header h1 {
    width: 61px;
    height: 45px;
  }
  header #header h1 img {
    width: 61px;
    height: 45px;
  }
  header #header h2 {
    position: absolute;
    left: 70px;
    top: 19px;
    font-size: 9px;
  }
  header #header h2 span {
    display: none;
  }
  body#en header #header h2 {
    left: 70px;
    top: 15px;
    font-size: 16px;
  }

  header #headerShopLink {
    left: auto;
    right: 125px;
    top: 10px;
  }
  header #headerShopLink a {
    width: 90px;
    height: 24px;
    padding: 6px 0 0 20px;
    font-size: 10px;
  }
  header #headerShopLink a::before {
    left: 5px;
    top: 4px;
    width: 13px;
    height: 13px;
    background-size: 13px 13px;
  }

  header #headerSearch {
    display: none;
    z-index: 600;
    position: absolute;
    left: 0;
    top: 330px;
    width: 94%;
    margin: 0 3%;
  }
  header #headerSearch input#search {
    width: 100%;
  }
  header #headerSns {
    display: none;
    z-index: 700;
    position: absolute;
    left: 50%;
    top: 380px;
    margin: 0 0 0 -45px;
  }

  header #headerLang {
    right: 45px;
    top: 13px;
  }
  body#en header #headerLang {
    right: 3%;
    top: 15px;
  }

  header #header_SpIcon {
    position: absolute;
    right: 3%;
    top: 12px;
  }
  header #header_SpIcon .menu-trigger,
  header #header_SpIcon .menu-trigger span {
    display: inline-block;
    transition: all .4s;
    box-sizing: border-box;
  }
  header #header_SpIcon .menu-trigger {
    position: relative;
    width: 26px;
    height: 20px;
  }
  header #header_SpIcon .menu-trigger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #73A620;
  }
  header #header_SpIcon .menu-trigger span:nth-of-type(1) {
    top: 0;
  }
  header #header_SpIcon .menu-trigger span:nth-of-type(2) {
    top: 9px;
  }
  header #header_SpIcon .menu-trigger span:nth-of-type(3) {
    bottom: 0;
  }

  header #header_SpIcon .menu-trigger.Active span:nth-of-type(1) {
  -webkit-transform: translateY(10px) rotate(-45deg);
  transform: translateY(10px) rotate(-45deg);
  }
  header #header_SpIcon .menu-trigger.Active span:nth-of-type(2) {
    opacity: 0;
  }
  header #header_SpIcon .menu-trigger.Active span:nth-of-type(3) {
    -webkit-transform: translateY(-8px) rotate(45deg);
    transform: translateY(-8px) rotate(45deg);
  }
}


/*グローバルナビゲーション ////////////////////////////////// */
header #headerGlobalArea {
  position: absolute;
  left: 164px;
  bottom: 0;
}
header #headerGlobalArea ul {
  display: table;
  table-layout:fixed;
  /*width: 718px;*/
  width: 860px;
}
/* header #headerGlobalArea ul li:nth-child(1) {
  display: none;
} */
header #headerGlobalArea ul li {
  display: table-cell;
  padding: 3px;
  height: 59px;
  text-align: center;
  border-right: 1px solid #F5F4F2;
}
header #headerGlobalArea ul li a {
  display: inline-block;
  width: 100%;
  height: 37px;
  padding: 22px 0 0;
  font-size: 14px;
  font-weight: 600;
}
header #headerGlobalArea ul li a:hover,
header #headerGlobalArea ul li.Active a,
body#product header #headerGlobalArea ul li:nth-child(1) a,
body#topics header #headerGlobalArea ul li:nth-child(2) a,
body#business header #headerGlobalArea ul li:nth-child(3) a,
body#company header #headerGlobalArea ul li:nth-child(4) a,
body#contact header #headerGlobalArea ul li:nth-child(6) a {
  text-decoration: none;
  color: #73A620;
  background-image: url("../img/header_navi_bk01.png");
  background-position: left top;
  background-repeat: repeat-x;
}
header #headerGlobalSubArea {
  display: none;
  position: absolute;
  left: 0;
  top: 120px;
  width: 100%;
  height: 70px;
  background: #fff;
  opacity: 0.9;
  background-image: url("../img/header_bk.png");
  background-repeat: repeat-x;
  background-position: left top;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
header #headerGlobalSubArea #headerSub {
  width: 1024px;
  height: 70px;
  margin: 0 auto;
}
header #headerGlobalSubArea .headerSub01,
header #headerGlobalSubArea .headerSub03,
header #headerGlobalSubArea .headerSub04,
header #headerGlobalSubArea .headerSub06 {
  display: none;
}
header #headerGlobalSubArea #headerSub ul li {
  float: left;
  margin: 26px 0 0;
}
header #headerGlobalSubArea #headerSub ul li a {
  position: relative;
  margin: 0 20px 0 10px;
  padding: 0 0 0 30px;
  font-size: 14px;
  font-weight: 500;
}
header #headerGlobalSubArea #headerSub ul li a::before {
  position: absolute;
  left: 0;
  top: -2px;
  width: 24px;
  height: 24px;
  content: url("../img/link_icon01.svg");
}
header #headerGlobalSubArea #headerSub ul li a:hover {
  text-decoration: none;
  color: #73A620;
}
/* スマホ用 */
@media only screen and (max-width: 767px) {
  header #headerGlobalArea {
    display: none;
    z-index: 500;
    left: 0;
    top: 45px;
    width: 100%;
    height: 380px;
    background-color: #fff;
    border-top: 1px solid #F5F4F2;
    border-bottom: 1px solid #F5F4F2;
  }
  header #headerGlobalArea ul {
    display: block;
    width: 100%;
    background-color: #fff;
  }
  header #headerGlobalArea ul li {
    display: block;
    padding: 0;
    height: 44px;
    text-align: center;
    border-bottom: 1px solid #F5F4F2;
  }
  header #headerGlobalArea ul li a {
    position: relative;
    display: block;
    width: 100%;
    height: 29px;
    padding: 15px 0 0;
    font-size: 14px;
  }
  header #headerGlobalArea ul li a::after {
    position: absolute;
    top: 17px;
    right: 20px;
    width: 10px;
    height: 10px;
    display: block;
    content: '';
    border: 2px solid #73A620;
    border-left-width: 0;
    border-top-width: 0;
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
  }
  header #headerGlobalSubArea {
    display: none;
  }
}

/*==========================================
 フッターのスタイル
===========================================*/
footer {
  width: 100%;
  padding: 30px 0 0;
}
footer #footerPageup {
  width: 100%;
  height: 60px;
  padding: 10px 0 0;
  background-color: #EEEEEE;
  text-align: center;
}
footer #footerPageup:hover {
  opacity: 0.7;
}
footer #footerPageup img {
  width: 50px;
  height: 50px;
}
footer #footerSitemap {
  width: 100%;
  margin: 3px 0 0;
  background-color: #EEEEEE;
}
footer #footerSitemap #f_SitemapArea {
  width: 980px;
  margin: 0 auto;
  padding: 25px 0 15px;
}
footer #footerSitemap #f_SitemapArea .f_SitemapBox {
  float: left;
  margin: 0 89px 0 0;
}
footer #footerSitemap #f_SitemapArea .f_SitemapBox ul {
  list-style-type: none;
}
footer #footerSitemap #f_SitemapArea .f_SitemapBox ul li {
  margin: 0 0 15px;
}
footer #footerSitemap #f_SitemapArea .f_SitemapBox ul li a {
  font-size: 12px;
  color: #666666;
}
footer #footerSitemap #f_SitemapArea .f_SitemapBox ul li.ty02 {
  margin: 0 0 20px;
}
footer #footerSitemap #f_SitemapArea .f_SitemapBox ul li.ty02 a {
  font-size: 15px;
  font-weight: 600;
}
footer #footerSitemap #f_SitemapArea .f_SitemapBox ul li a:hover {
  text-decoration: none;
  color: #73A620;
}
footer #footerLink {
  width: 100%;
  padding: 15px 0;
  text-align: center;
}
footer #footerLink a {
  padding: 0 15px;
  font-size: 12px;
  color: #666;
}
footer #footerLink a:nth-child(1) {
  border-right: 1px solid #666;
}
footer #footerAddress {
  width: 100%;
  padding: 15px 0 30px;
  border-top: 1px solid #EEEEEE;
  text-align: center;
}
footer #footerAddress small {
  font-size: 12px;
  color: #666;
}
/* スマホ用 */
@media only screen and (max-width: 767px) {
  footer {
    width: 100%;
  }
  footer #footerPageup {
    width: 100%;
    height: 40px;
  }
  footer #footerPageup img {
    width: 30px;
    height: 30px;
  }
  footer #footerSitemap {
    width: 100%;
  }
  footer #footerSitemap #f_SitemapArea {
    width: 94%;
    margin: 0 auto;
    padding: 20px 0 10px;
  }
  footer #footerSitemap #f_SitemapArea .f_SitemapBox {
    width: 50%;
    margin: 0 0 20px 0;
  }
  footer #footerSitemap #f_SitemapArea .f_SitemapBox ul li {
    margin: 0 0 15px;
  }
  footer #footerSitemap #f_SitemapArea .f_SitemapBox ul li.ty02 {
    margin: 0 0 15px;
  }
  footer #footerSitemap #f_SitemapArea .f_SitemapBox ul li.ty02 a {
    font-size: 13px;
  }
  footer #footerLink a {
    font-size: 11px;
  }
  footer #footerAddress small {
    font-size: 10px;
  }
}



/*==========================================
 コンテンツのスタイル 共通
===========================================*/
#mainContents {
  width: 100%;
  /*min-height: 800px;*/
}

#mainContents section.layout_w780 {
  width: 780px;
  margin: 0 auto;
}

#mainContents section.layout_w980 {
  width: 980px;
  margin: 0 auto;
}
#mainContents section.layout_w980.mt60 {
  margin: 60px auto 0;
}

#mainContents section.layout_full_Y {
  width: 100%;
  padding: 25px 0;
  background-color: #FCFAE8;
}

#mainContents section.layout_full_Y.mb40 {
  margin: 0 auto 40px;
}

#mainContents section.layout_full_product_navi01 {
  width: 100%;
  padding: 25px 0 5px;
}
#mainContents section.layout_full_product_navi01.cat01 {
  background-color: #FCFAE8;
}
#mainContents section.layout_full_product_navi01.cat02 {
  background-color: #E9F7FC;
}
#mainContents section.layout_full_product_navi01.cat03 {
  background-color: #E4E5F3;
}
#mainContents section.layout_full_product_navi01.cat04 {
  background-color: #FDEEF6;
}
/* スマホ用 */
@media only screen and (max-width: 767px) {
  #mainContents {
    width: 100%;
    min-height: 500px;
    margin: 0 auto;
  }

  #mainContents section.layout_w780 {
    width: 94%;
    margin: 0 3%;
  }

  #mainContents section.layout_w980 {
    width: 94%;
    margin: 0 3%;
  }
  #mainContents section.layout_full_Y {
    width: 100%;
    padding: 15px 0 0;
    background-color: #FCFAE8;
  }
  #mainContents section.layout_w980.mt60 {
    margin: 30px auto 0;
  }
}

/*パンくず*/
#pankuzu {
  width: 1024px;
  height: 50px;
  margin: 0 auto;
  box-sizing: border-box;
}
#pankuzu #panHome {
  float: left;
  width: 20px;
  padding: 15px 10px;
}
#pankuzu #panHome a img {
  width: 20px;
  height: 20px;
}
#pankuzu #panLink {
  float: left;
  padding: 18px 0 0;
}
#pankuzu #panLink a {
  position: relative;
  padding: 0 0 0 15px;
  font-size: 12px;
}
#pankuzu #panLink a::before {
  position: absolute;
  left: 0;
  top: 50%;
  width: 7px;
  height: 7px;
  margin: -3px 0 0;
  display: block;
  content: '';
  border: 1px solid #666;
  border-left-width: 0;
  border-top-width: 0;
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
}
/* スマホ用 */
@media only screen and (max-width: 767px) {
  #pankuzu {
    width: 94%;
    height: 28px;
    margin: 0 3%;
    overflow: scroll;
  }
  #pankuzu #pankuzu_scroll {
    width: 500px;
  }
  #pankuzu #panHome {
    width: 2%;
    padding: 5px 0 0;
  }
  #pankuzu #panHome a img {
    width: 10px;
    height: 10px;
  }
  #pankuzu #panLink {
    width: 98%;
    padding: 4px 0 0;
  }
  #pankuzu #panLink a {
    padding: 0 0 0 15px;
    font-size: 8px;
  }
  #pankuzu #panLink a::before {
    left: 5px;
    width: 4px;
    height: 4px;
    margin: -2px 0 0;
  }
}

/*==========================================
 タイトル 共通
===========================================*/
#mainImgArea {
  width: 100%;
  height: 260px;
  background-position: center 0;
  background-repeat: no-repeat;
  background-color: #FCFAE8;
}
/*商品ラインナップ*/
body.category #mainImgArea {
  background-image: url("../../product/img/product_title.jpg");
}

/*事業紹介*/
body.business #mainImgArea {
  background-image: url("../../business/img/business_title.jpg");
}
body.picnic #mainImgArea {
  background-image: url("../../business/img/picnic_title.jpg");
}
body.home #mainImgArea {
  background-image: url("../../business/img/home_title.jpg");
}
body.oem #mainImgArea {
  background-image: url("../../business/img/oem_title.jpg");
}
body.factory #mainImgArea {
  background-image: url("../../business/img/factory_title.jpg");
}
body.corp #mainImgArea {
  background-image: url("../../business/img/corp_title.jpg");
}
body#company #mainImgArea {
  background-image: url("../../company/img/company_title.jpg");
}
body#contact #mainImgArea {
  background-image: url("../../contact/img/contact_title.jpg");
}
body#en #mainImgArea {
  background-image: url("../../en/img/en_title.jpg");
}

/*サブタイトル*/
.titleTy01 {
  width: 980px;
  height: 260px;
  margin: 80px auto 0;
  background-color: #FCFAE8;
}
.titleTy01 img {
  float: left;
  width: 500px;
  height: 260px;
}
.titleTy01 .title_R {
  float: left;
  width: 480px;
  height: 260px;
  text-align: center;
}
.titleTy01 .title_R h3 {
  padding: 85px 0 20px;
  font-size: 24px;
  color: #73A620;
}
.titleTy01 .title_R h3 span {
  display: block;
  padding: 8px 0 0;
  font-size: 18px;
}
/* スマホ用 */
@media only screen and (max-width: 767px) {
  #mainImgArea {
    width: 100%;
    height: 110px;
    background-position: center 0;
    background-repeat: no-repeat;
    background-color: #FCFAE8;
    background-size: auto 110px;
  }
  /*サブタイトル*/
  .titleTy01 {
    position: relative;
    width: 100%;
    height: auto;
    margin: 40px auto 60px;
  }
  .titleTy01 img {
    width: 50%;
    height: auto;
  }
  .titleTy01 .title_R {
    width: 50%;
    height: auto;
  }
  .titleTy01 .title_R h3 {
    padding: 40px 0 0;
    font-size: 15px;
  }
  .titleTy01 .title_R h3.ty02 {
    padding: 30px 0 0;
  }
  .titleTy01 .title_R h3 span {
    padding: 3px 0 0;
    font-size: 11px;
  }
  .titleTy01 .title_R p {
    position: absolute;
    left: 0;
    bottom: -35px;
    font-size: 12px;
    text-align: left;
    line-height: 1.4;
  }
  .titleTy01 .title_R p.ty02 {
    bottom: -20px;
  }

}

/*==========================================
 ページ内リンク 共通
===========================================*/
.pageNaviIndex_3 {
  width: 675px;
  margin: 60px auto 0;
}
.pageNaviIndex_3 ul {
  display: table;
  table-layout: fixed;
  width: 675px;
  list-style-type: none;
}
.pageNaviIndex_3 ul li {
  display: table-cell;
  height: 68px;
  box-sizing: border-box;
  text-align: center;
}
.pageNaviIndex_3 ul li:nth-child(2) {
  border-left: 1px solid #F0F0F0;
  border-right: 1px solid #F0F0F0;
}
.pageNaviIndex_3 ul li:nth-child(1) {
  border-left: 1px solid #F0F0F0;
}
.pageNaviIndex_3 ul li:nth-child(3) {
  border-right: 1px solid #F0F0F0;
}
.pageNaviIndex_3 ul li a {
  position: relative;
  display: block;
  width: 100%;
  height: 68px;
  padding: 15px 0 0;
  box-sizing: border-box;
}
.pageNaviIndex_3 ul li a:hover {
  text-decoration: none;
  color: #73A620;
  background-image: url("../img/pageNavi_bk.jpg");
  background-position: left top;
  background-repeat: repeat-x;
}
.pageNaviIndex_3 ul li a::before {
  position: absolute;
  left: 50%;
  top: 35px;
  margin: 0 0 0 -12px;
  width: 24px;
  height: 24px;
  content: url("../img/link_icon01.svg");
  transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
}

.pageNaviIndex_4 {
  width: 900px;
  margin: 60px auto 0;
}
.pageNaviIndex_4 ul {
  display: table;
  table-layout: fixed;
  width: 900px;
  list-style-type: none;
}
.pageNaviIndex_4 ul li {
  display: table-cell;
  height: 68px;
  box-sizing: border-box;
  text-align: center;
}
.pageNaviIndex_4 ul li:nth-child(2) {
  border-left: 1px solid #F0F0F0;
  border-right: 1px solid #F0F0F0;
}
.pageNaviIndex_4 ul li:nth-child(1) {
  border-left: 1px solid #F0F0F0;
}
.pageNaviIndex_4 ul li:nth-child(3) {
  border-right: 1px solid #F0F0F0;
}
.pageNaviIndex_4 ul li a {
  position: relative;
  display: block;
  width: 100%;
  height: 68px;
  padding: 15px 0 0;
  box-sizing: border-box;
}
.pageNaviIndex_4 ul li a:hover,
.pageNaviIndex_4 ul li.Active a {
  text-decoration: none;
  color: #73A620;
  background-image: url("../img/pageNavi_bk.jpg");
  background-position: left top;
  background-repeat: repeat-x;
}
.pageNaviIndex_4 ul li a::before {
  position: absolute;
  left: 50%;
  top: 35px;
  margin: 0 0 0 -12px;
  width: 24px;
  height: 24px;
  content: url("../img/link_icon01.svg");
  transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
}

/* スマホ用 */
@media only screen and (max-width: 767px) {
  .pageNaviIndex_3,
  .pageNaviIndex_4 {
    width: 100%;
    margin: 30px auto 0;
  }
  .pageNaviIndex_3 ul,
  .pageNaviIndex_4 ul {
    width: 100%;
  }
  .pageNaviIndex_3 ul li,
  .pageNaviIndex_4 ul li {
    height: 35px;
    table-layout: fixed;
  }
  .pageNaviIndex_3 ul li a,
  .pageNaviIndex_4 ul li a {
    height: 35px;
    padding: 3px 0 0;
    font-size: 13px;
  }
  .pageNaviIndex_3 ul li a::before,
  .pageNaviIndex_4 ul li a::before {
    top: 20px;
    margin: 0 0 0 -6px;
    width: 12px;
    height: 12px;
  }
  .pageNaviIndex_4 ul li a span {
    display: none;
  }
}

/*==========================================
 左右レイアウト 共通
===========================================*/
.columnTy01 {
  width: 940px;
  margin: 35px auto 0;
}
.columnTy01 .column_L {
  float: left;
  width: 470px;
  box-sizing: border-box;
  border-right: 1px solid #73A620;
}
.columnTy01 .column_R {
  float: right;
  width: 470px;
  padding: 0 0 5px 35px;
  box-sizing: border-box;
}
.columnTy01 h3 {
  padding: 0 0 25px;
  font-size: 20px;
  color: #73A620;
}
.columnTy01 p {
  font-size: 15px;
  line-height: 1.8;
}
.columnTy01 ul {
  list-style-type: none;
}
.columnTy01 ul li {
  padding: 15px 0 0;
}
/* スマホ用 */
@media only screen and (max-width: 767px) {
  .columnTy01 {
    width: 100%;
    margin: 25px auto 0;
  }
  .columnTy01 .column_L {
    float: none;
    width: 100%;
    border-right: none;
  }
  .columnTy01 .column_R {
    float: none;
    width: 100%;
    padding: 35px 0 5px 0;
    border-left: none;
  }
  .columnTy01 h3 {
    padding: 0 0 12px;
    font-size: 14px;
  }
  .columnTy01 p {
    font-size: 13px;
  }
  .columnTy01 ul li:nth-child(odd) {
    float: left;
    width: 49%;
    padding: 10px 0 0;
  }
  .columnTy01 ul li:nth-child(even) {
    float: right;
    width: 49%;
    padding: 10px 0 0;
  }
  .columnTy01 ul li img {
    width: 100%;
  }
}

.columnTy02 {
  width: 980px;
  margin: 35px auto 0;
}
.columnTy02 h3 {
  padding: 0 0 25px;
  font-size: 20px;
  color: #73A620;
}
.columnTy02 .column_L {
  float: left;
  width: 490px;
  box-sizing: border-box;
  border-right: 1px solid #73A620;
}
.columnTy02 .column_L .column_L_con {
  float: left;
  width: 220px;
  padding: 0 20px 0 0;
}
.columnTy02 .column_L .column_L_con.w490 {
  width: 490px;
  padding: 40px 20px 0 0;
}
.columnTy02 .column_L .column_L_con p {
  padding: 10px 0 0;
  line-height: 1.6;
}
.columnTy02 .column_R {
  float: right;
  width: 490px;
  padding: 0 0 5px 35px;
  box-sizing: border-box;
}
.columnTy02 .column_R .column_R_con {
  width: 100%;
  margin: 0 0 20px;
}
.columnTy02 .column_R .column_R_con img {
  float: left;
  padding: 0 10px 0 0;
}
.columnTy02 .column_R .column_R_con h4 {
  font-size: 18px;
  color: #73A620;
}
/* スマホ用 */
@media only screen and (max-width: 767px) {
  .columnTy02 {
    width: 100%;
    margin: 20px auto 0;
  }
  .columnTy02 h3 {
    padding: 0 0 15px;
    font-size: 14px;
  }
  .columnTy02 .column_L {
    float: none;
    width: 100%;
    border-right: none;
  }
  .columnTy02 .column_L .column_L_con:nth-child(even) {
    float: left;
    width: 49%;
    padding: 0;
  }
  .columnTy02 .column_L .column_L_con:nth-child(odd) {
    float: right;
    width: 49%;
    padding: 0;
  }
  .columnTy02 .column_L .column_L_con.w490 {
    width: 100%;
    padding: 40px 0 0 0;
  }
  .columnTy02 .column_L .column_L_con img {
    width: 100%;
  }
  .columnTy02 .column_L .column_L_con p {
    padding: 0;
  }
  .columnTy02 .column_R {
    float: none;
    width: 100%;
    padding: 30px 0 5px 0;
  }
  .columnTy02 .column_R .column_R_con {
    width: 100%;
    margin: 0 0 20px;
  }
  .columnTy02 .column_R .column_R_con img {
    width: 50%;
    padding: 0 10px 0 0;
  }
  .columnTy02 .column_R .column_R_con h4 {
    font-size: 13px;
  }
}


.columnTy03 {
  width: 980px;
  margin: 35px auto;
  padding: 0 0 30px;
}
.columnTy03 .column_L {
  float: left;
  width: 326px;
  padding: 0 24px;
  box-sizing: border-box;
}
.columnTy03 .column_L:nth-child(2) {
  border-left: 1px solid #73A620;
  border-right: 1px solid #73A620;
}
.columnTy03 .column_L h3 {
  padding: 10px 0 20px;
  font-size: 18px;
  color: #73A620;
  line-height: 1.4;
}
.columnTy03 .column_L p {
  line-height: 1.6;
}
/* スマホ用 */
@media only screen and (max-width: 767px) {
  .columnTy03 {
    width: 100%;
    margin: 20px auto;
    padding: 0 0 30px;
  }
  .columnTy03 .column_L:nth-child(odd) {
    float: left;
    width: 48.5%;
    padding: 0;
  }
  .columnTy03 .column_L:nth-child(even) {
    float: right;
    width: 48.5%;
    padding: 0;
  }
  .columnTy03 .column_L:nth-child(2) {
    border: none;
  }
  .columnTy03 .column_L img {
    width: 100%;
  }
  .columnTy03 .column_L h3 {
    padding: 5px 0 10px;
    font-size: 13px;
  }
  .columnTy03 .column_L p {
    line-height: 1.6;
  }
}

.columnTy04 {
  width: 980px;
  margin: 45px auto 0;
  padding: 0;
}
.columnTy04 .column:nth-child(odd) {
  float: left;
  width: 49%;
  padding: 0 0 20px;
}
.columnTy04 .column:nth-child(even) {
  float: right;
  width: 49%;
  padding: 0 0 20px;
}
.columnTy04 .column img {
  float: left;
  padding: 0 15px 0 0;
}
.columnTy04 .column h3 {
  padding: 0 0 10px;
  font-size: 18px;
  color: #73A620;
}
/* スマホ用 */
@media only screen and (max-width: 767px) {
  .columnTy04 {
    width: 100%;
    margin: 30px auto 0;
  }
  .columnTy04 .column:nth-child(odd),
  .columnTy04 .column:nth-child(even) {
    float: none;
    width: 100%;
    padding: 0 0 20px;
  }
  .columnTy04 .column img {
    width: 50%;
    padding: 0 10px 0 0;
  }
  .columnTy04 .column h3 {
    padding: 0 0 5px;
    font-size: 13px;
  }
  .columnTy04 .column p {
    line-height: 1.4;
  }
}

.columnTy05 {
  width: 980px;
  margin: 35px auto;
  padding: 0 0 30px;
}
.columnTy05 .column_L {
  float: left;
  width: 326px;
  padding: 0 13px;
  box-sizing: border-box;
}
.columnTy05 .column_L:nth-child(2) {
  border-left: 1px solid #73A620;
  border-right: 1px solid #73A620;
}
.columnTy05 .column_L h3 {
  padding: 10px 0 20px;
  font-size: 18px;
  color: #73A620;
  line-height: 1.4;
}
.columnTy05 .column_L p {
  line-height: 1.6;
}
/* スマホ用 */
@media only screen and (max-width: 767px) {
  .columnTy05 {
    width: 100%;
    margin: 20px auto;
    padding: 0;
  }
  .columnTy05 .column_L:nth-child(odd) {
    float: left;
    width: 48.5%;
    padding: 0;
    margin: 0 0 20px;
  }
  .columnTy05 .column_L:nth-child(even) {
    float: right;
    width: 48.5%;
    padding: 0;
    margin: 0 0 20px;
  }
  .columnTy05 .column_L:nth-child(2) {
    border: none;
  }
  .columnTy05 .column_L img {
    width: 100%;
  }
  .columnTy05 .column_L h3 {
    padding: 5px 0;
    font-size: 13px;
  }
  .columnTy05 .column_L p {
    line-height: 1.6;
  }
}


.columnTy06 {
  width: 780px;
  margin: 40px auto 0;
  padding: 0 0 20px;
}
.columnTy06 .column_L {
  float: left;
  width: 300px;
}
.columnTy06 .column_R {
  float: left;
  width: 445px;
  padding: 0 0 0 35px;
}
.columnTy06 .column_R h3 {
  padding: 0 0 10px;
  font-size: 18px;
  color: #73A620;
  line-height: 1.2;
}
.columnTy06 .column_R ul {
  width: 468px;
  margin: 20px 0 0 -23px;
  list-style-type: none;
}
.columnTy06 .column_R ul li {
  float: left;
  width: 211px;
  height: 46px;
  margin: 0 0 8px 23px;
  text-align: center;
}
.columnTy06 .column_R ul li a {
  display: block;
  width: 211px;
  height: 46px;
  padding: 13px 0 0;
  box-sizing: border-box;
  font-size: 16px;
  color: #73A620;
  background-color: #EEEEEE;
  border-radius: 23px;
  -webkit-border-radius: 23px;
  -moz-border-radius: 23px;
}
.columnTy06 .column_R ul li a:hover {
  text-decoration: none;
  color: #fff;
  background-color: #73A620;
}
.columnTy06 .column_R p {
  margin: 0 0 15px;
}
.columnTy06 .column_R img {
  margin: 0 0 15px;
}
.columnTy06 .column_R a.ty01 {
  position: relative;
  display: block;
  width: 345px;
  height: 60px;
  box-sizing: border-box;
  margin: 0 0 15px;
  padding: 18px 18px 0;
  font-size: 18px;
  color: #73A620;
  border: 2px solid #73A620;
  border-radius: 6px;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
}
.columnTy06 .column_R a.ty01::after {
  position: absolute;
  right: 15px;
  top: 50%;
  margin: -12px 0 0;
  width: 24px;
  height: 24px;
  content: url("../img/link_icon01.svg");
}
.columnTy06 .column_R a.ty02 {
  position: relative;
  display: block;
  width: 345px;
  height: 60px;
  box-sizing: border-box;
  margin: 0 0 15px;
  padding: 18px 18px 0;
  font-size: 18px;
  color: #73A620;
  border: 2px solid #73A620;
  border-radius: 6px;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
}
.columnTy06 .column_R a.ty02::after {
  position: absolute;
  right: 15px;
  top: 50%;
  margin: -10px 0 0;
  width: 11px;
  height: 10px;
  content: url("../img/link_icon02.svg");
}
.columnTy06 .column_R a:hover {
  text-decoration: none;
  opacity: 0.7;
}
/* スマホ用 */
@media only screen and (max-width: 767px) {
  .columnTy06 {
    width: 100%;
    margin: 20px auto 0;
    padding: 0 0 10px;
  }
  .columnTy06 .column_L {
    float: none;
    width: 100%;
  }
  .columnTy06 .column_L img {
    width: 100%;
  }
  .columnTy06 .column_R {
    float: none;
    width: 100%;
    padding: 0;
  }
  .columnTy06 .column_R h3 {
    padding: 5px 0 5px;
    font-size: 13px;
  }
  .columnTy06 .column_R ul {
    width: 100%;
    margin: 20px 0 0 0;
  }
  .columnTy06 .column_R ul li:nth-child(odd) {
    float: left;
    width: 48.5%;
    height: 33px;
    margin: 0 0 8px 0;
  }
  .columnTy06 .column_R ul li:nth-child(even) {
    float: right;
    width: 48.5%;
    height: 33px;
    margin: 0 0 8px 0;
  }
  .columnTy06 .column_R ul li a {
    width: 100%;
    height: 33px;
    padding: 10px 0 0;
    font-size: 12px;
  }
  .columnTy06 .column_R p {
    margin: 0 0 10px;
  }
  .columnTy06 .column_R img {
    width: 100%;
    margin: 0 0 10px;
  }
  .columnTy06 .column_R a.ty01 {
    width: 250px;
    height: 45px;
    padding: 13px 0 0;
    margin: 0 auto 10px;
    text-align: center;
    font-size: 14px;
  }
  .columnTy06 .column_R a.ty01::after {
    right: 10px;
    margin: -8px 0 0;
    width: 16px;
    height: 16px;
  }
  .columnTy06 .column_R a.ty02 {
    width: 250px;
    height: 45px;
    padding: 13px 0 0;
    margin: 0 auto 10px;
    text-align: center;
    font-size: 14px;
  }
  .columnTy06 .column_R a.ty02::after {
    right: 7px;
    margin: -8px 0 0;
  }
}

.columnTy07 {
  width: 1026px;
  margin: 40px 0 0 -46px;
  padding: 0 0 20px;
}
.columnTy07 .column {
  float: left;
  width: 210px;
  margin: 0 0 0 46px;
}
.columnTy07 .column h3 {
  padding: 10px 0;
  font-size: 18px;
  color: #73A620;
}
.columnTy07 .column a {
  position: relative;
  display: inline-block;
  margin: 10px 0 0;
  padding: 0 0 0 30px;
  font-size: 16px;
  color: #73A620;
}
.columnTy07 .column a::before {
  position: absolute;
  left: 0;
  top: 50%;
  margin: -12px 0 0;
  width: 24px;
  height: 24px;
  content: url("../img/link_icon01.svg");
}
/* スマホ用 */
@media only screen and (max-width: 767px) {
  .columnTy07 {
    width: 100%;
    margin: 20px 0 0 0;
    padding: 0 0 20px;
  }
  .columnTy07 .column:nth-child(odd) {
    float: left;
    width: 48.5%;
    margin: 0 0 20px;
  }
  .columnTy07 .column:nth-child(even) {
    float: right;
    width: 48.5%;
    margin: 0 0 20px;
  }
  .columnTy07 .column img {
    width: 100%;
  }
  .columnTy07 .column h3 {
    padding: 5px 0;
    font-size: 13px;
  }
  .columnTy07 .column a {
    margin: 5px 0 0;
    padding: 0 0 0 15px;
    font-size: 12px;
  }
  .columnTy07 .column a::before {
    top: 50%;
    margin: -5px 0 0;
    width: 12px;
    height: 12px;
  }
}

/*==========================================
 バナー表示
===========================================*/
#linkArea {
  width: 980px;
  margin: 0 auto;
}
#linkArea ul {
  margin: 0 0 0 -23px;
  list-style-type: none;
}
#linkArea ul li {
  float: left;
  width: 311px;
  margin: 0 0 0 23px;
}
#linkArea ul li span {
  font-size: 14px;
  line-height: 1.8;
}

#linkArea4 {
  width: 980px;
  margin: 0 auto;
}
#linkArea4 ul {
  margin: 0 0 0 -18px;
  list-style-type: none;
}
#linkArea4 ul li {
  float: left;
  width: 231px;
  margin: 0 0 0 18px;
}
#linkArea4 ul li span {
  font-size: 14px;
  line-height: 1.8;
}
/* スマホ用 */
@media only screen and (max-width: 767px) {
  #linkArea {
    width: 94%;
    margin: 0 3%;
  }
  #linkArea ul {
    margin: 0;
  }
  #linkArea ul li:nth-child(odd) {
    float: left;
    width: 49%;
    margin: 0 0 15px;
  }
  #linkArea ul li:nth-child(even) {
    float: right;
    width: 49%;
    margin: 0 0 15px;
  }
  #linkArea ul li img {
    width: 100%;
  }
  #linkArea ul li span {
    padding: 3px 0 0;
    font-size: 12px;
    line-height: 1;
  }

  #linkArea4 {
    width: 94%;
    margin: 0 3%;
  }
  #linkArea4 ul {
    margin: 0;
  }
  #linkArea4 ul li:nth-child(odd) {
    float: left;
    width: 49%;
    margin: 0 0 15px;
  }
  #linkArea4 ul li:nth-child(even) {
    float: right;
    width: 49%;
    margin: 0 0 15px;
  }
  #linkArea4 ul li img {
    width: 100%;
  }
  #linkArea4 ul li span {
    padding: 3px 0 0;
    font-size: 12px;
    line-height: 1;
  }
}

/*==========================================
 事業紹介 流れ
===========================================*/
#businessStepArea {
  width: 780px;
  margin: 40px auto 120px;
}
#businessStepArea .businessStepBox {
  position: relative;
  width: 780px;
  height: 100px;
  margin: 0 0 30px;
  box-sizing: border-box;
  border: 3px solid #A0D8EF;
  border-radius: 6px;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
}
#businessStepArea .businessStepBox::before {
  position: absolute;
  left: 50%;
  bottom: -25px;
  width: 0;
  height: 0;
  margin: 0 0 0 -14px;
  border-style: solid;
  border-width: 14px 14px 0 14px;
  border-color: #6dbde0 transparent transparent transparent;
  content: "";
}
#businessStepArea .businessStepBox .column_L {
  float: left;
  width: 208px;
  height: 94px;
  padding: 25px 0 0;
  box-sizing: border-box;
  text-align: center;
  background-color: #6DBDE0;
}
#businessStepArea .businessStepBox .column_L span {
  display: block;
  padding: 0 0 7px;
  font-size: 18px;
  color: #fff;
}
#businessStepArea .businessStepBox .column_L h3 {
  display: block;
  font-size: 18px;
  color: #fff;
}
#businessStepArea .businessStepBox .column_R {
  float: left;
  width: 520px;
  padding: 22px;
}
#businessStepArea .businessStepBox.ty02 {
  height: 60px;
  padding: 17px 0 0;
  text-align: center;
  background-color: #ECF7FC;
}
#businessStepArea .businessStepBox.ty02::before {
  display: none;
}
#businessStepArea .businessStepBox.ty02 h3 {
  font-size: 18px;
  color: #6DBDE0;
}
/* スマホ用 */
@media only screen and (max-width: 767px) {
  #businessStepArea {
    width: 100%;
    margin: 20px auto 60px;
  }
  #businessStepArea .businessStepBox {
    width: 100%;
    margin: 0 0 30px;
  }
  #businessStepArea .businessStepBox .column_L {
    width: 30%;
  }
  #businessStepArea .businessStepBox .column_L span {
    font-size: 13px;
  }
  #businessStepArea .businessStepBox .column_L h3 {
    font-size: 13px;
  }
  #businessStepArea .businessStepBox .column_R {
    width: 64%;
    padding: 10px 3%;
  }
  #businessStepArea .businessStepBox.ty02 {
    height: 50px;
    padding: 15px 0 0;
  }
  #businessStepArea .businessStepBox.ty02 h3 {
    font-size: 13px;
  }
}


/*==========================================
 企業情報
===========================================*/
.movieTy01 {
  width: 980px;
  margin: 50px auto;
}
.movieTy01 iframe {
  width: 980px;
  height: 551px;
  margin: 50px auto;
}
.companyContents {
  width: 780px;
  margin: 50px auto;
}
.companyContents img {
  width: 100%;
  height: auto;
}
.companyContents h3 {
  margin: 30px 0 10px;
  font-size: 22px;
  color: #73A620;
}
.companyContents table {
  width: 100%;
  margin: 0 0 50px;
  border-top: 1px solid #E1E1E1;
}
.companyContents table tr {
  border-bottom: 1px solid #E1E1E1;
}
.companyContents table tr th {
  padding: 20px 15px;
  font-size: 15px;
  color: #73A620;
  text-align: left;
}
.companyContents table tr td {
  padding: 20px 15px;
  font-size: 15px;
  text-align: left;
  line-height: 1.6;
}
.companyContents .map {
  width: 100%;
  height: 352px;
  margin: 50px 0 0;
}
.companyContents .map .mapPc {
  display: block;
}
.companyContents .map .mapSp {
  display: none;
}
/* スマホ用 */
@media only screen and (max-width: 767px) {
  .movieTy01 {
    width: 300px;
    margin: 25px auto;
  }
  .movieTy01 iframe {
    width: 300px;
    height: 168px;
  }
  .companyContents {
    width: 100%;
    margin: 25px auto;
  }
  #mainContents section.layout_full_Y .companyContents {
    width: 94%;
    margin: 25px 3%;
    padding: 0 0 20px;
  }
  .companyContents img {
    width: 100%;
    height: auto;
  }
  .companyContents h3 {
    margin: 20px 0 10px;
    font-size: 14px;
  }
  .companyContents table {
    margin: 0 0 30px;
  }
  .companyContents table tr th {
    width: 28%;
    padding: 10px 5px;
    font-size: 11px;
  }
  .companyContents table tr td {
    padding: 10px 5px;
    font-size: 11px;
  }
  .companyContents .map {
    height: auto;
    margin: 30px 0 0;
  }
  .companyContents .map .mapPc {
    display: none;
  }
  .companyContents .map .mapSp {
    display: block;
  }
}



/*==========================================
 お問い合せ
===========================================*/
.contactArea {
  width: 750px;
  margin: 50px auto;
}
.contactArea .contactBox {
  width: 100%;
  margin: 30px 0 0;
  padding: 20px;
  border: 1px solid #73A620;
  box-sizing: border-box;
  border-radius: 6px;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
}
.contactArea .contactBox h3 {
  font-size: 20px;
  font-weight: 600;
  color: #73A620;
}
.contactArea .contactBox a.ty01 {
  position: relative;
  display: block;
  float: left;
  width: 345px;
  height: 60px;
  box-sizing: border-box;
  margin: 15px 0 0;
  padding: 18px 0 0;
  font-size: 18px;
  color: #73A620;
  text-align: center;
  border: 2px solid #73A620;
  border-radius: 6px;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
}
.contactArea .contactBox a.ty01:nth-child(3) {
  margin: 15px 0 0 18px;
}
.contactArea .contactBox a.ty01::after {
  position: absolute;
  right: 15px;
  top: 50%;
  margin: -12px 0 0;
  width: 24px;
  height: 24px;
  content: url("../img/link_icon01.svg");
}
.contactArea .contactBox a:hover {
  text-decoration: none;
  opacity: 0.7;
}
.contactArea .contactBox p {
  padding: 15px 0 0;
}
.contactArea .contactBox p span {
  display: block;
  font-size: 18px;
  font-weight: 600;
  color: #73A620;
}
/* スマホ用 */
@media only screen and (max-width: 767px) {
  .contactArea {
    width: 100%;
    margin: 30px auto;
  }
  .contactArea .contactBox {
    margin: 15px 0 0;
    padding: 10px;
  }
  .contactArea .contactBox h3 {
    font-size: 14px;
  }
  .contactArea .contactBox a.ty01 {
    float: none;
    width: 250px;
    height: 45px;
    padding: 13px 0 0;
    margin: 15px auto 10px;
    font-size: 14px;
  }
  .contactArea .contactBox a.ty01::after {
    right: 10px;
    margin: -8px 0 0;
    width: 16px;
    height: 16px;
  }
  .contactArea .contactBox a.ty01:nth-child(3) {
    margin: 0 auto;
  }
  .contactArea .contactBox p {
    padding: 10px 0 0;
  }
  .contactArea .contactBox p span {
    font-size: 14px;
  }
  .contactArea .contactBox p span a {
    color: #73A620;
  }
}

.contactFormArea {
  width: 780px;
  margin: 50px auto 0;
}
.contactFormArea .contactCaution {
  width: 780px;
  margin: 30px auto 0;
  padding: 20px;
  box-sizing: border-box;
  border: 1px solid #73A620;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
}
.contactFormArea .contactCaution h2 {
  font-size: 20px;
  font-weight: 600;
  color: #73A620;
}
.contactFormArea .contactCaution ul {
  margin: 15px 0 0;
  list-style-type: none;
}
.contactFormArea .contactCaution ul li {
  position: relative;
  padding: 0 0 10px 20px;
  font-size: 14px;
  line-height: 1.6;
}
.contactFormArea .contactCaution ul li:last-child {
  padding: 0 0 0 20px;
}
.contactFormArea .contactCaution ul li::before {
  position: absolute;
  left: 0;
  top: 0;
  content: "●";
  color: #73A620;
}
.contactFormArea .contactCaution ul li a {
  text-decoration: underline;
}
.contactFormArea .contactCaution ul li a:hover {
  text-decoration: none;
}
.contactFormArea .contactFormBox {
  width: 100%;
  padding: 30px 0 0;
}
.contactFormArea .contactFormBox .contactForm {
  width: 700px;
  margin: 50px auto 0;
}
.contactFormArea #contact_check .contactFormBox .contactForm {
  margin: 0 auto;
}
.contactForm dl {
  width: 100%;
}
.contactForm dl dt {
  float: left;
  width: 140px;
  height: 27px;
  padding: 25px 0 13px;
  font-size: 14px;
  font-weight: 600;
}
#contact_check .contactForm dl dt {
  padding: 13px 0 13px;
}
.contactForm dl dt span {
  padding: 0 0 0 5px;
  color: #E95514;
}
.contactForm dl dt.ty02 {
  height: 27px;
  padding: 100px 0 13px;
}
.contactForm dl dt.ty03 {
  height: 27px;
  padding: 100px 0 13px;
}
.contactForm dl dt.ty04 {
  height: 50px;
}
.contactForm dl dd {
  position: relative;
  float: right;
  width: 556px;
  padding: 13px 0;
}
#contact_check .contactForm dl dd {
  height: 27px;
}
#contact_check .contactForm dl dd.ty02 {
  height: auto;
  line-height: 1.6;
}
.contactForm dl dd span.red {
  position: absolute;
  left: 0;
  top: 0;
  padding: 2px 6px 3px;
  background-color: #E95514;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  color: #fff;
  font-size: 12px;
}
.contactForm dl dd span.red.ty02 {
  top: 10px;
}
.contactForm dl dd span.red.ty03 {
  top: -20px;
}
.contactForm dl dd span.red::before {
  position: absolute;
  left: 10px;
  bottom: -10px;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 5px 0 5px;
  border-color: #e95414 transparent transparent transparent;
}
.contactForm dl dd.ty02 {
  float: left;
  width: 100%;
  height: auto;
  padding: 0;
}
.contactForm dl dd.ty03 {
  float: right;
  width: 556px;
  height: 39px;
  padding: 48px 0 30px;
}
.contactForm dl dd input[type=text] {
  width: 556px;
  height: 39px;
  padding: 0 15px;
  box-sizing: border-box;
  font-size: 14px;
  background-color: #EFEFEF;
  border: none;
  border-radius: 6px;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
}
.contactForm dl dd input.errorCk {
  background: #F9E5E9;
}
.contactForm dl dd input[type=text].mt_10 {
  margin: 10px 0 0;
}
.contactForm dl dd input[type=text].mb_10 {
  margin: 0 0 10px;
}
.contactForm dl dd input[type=text].w_100 {
  width: 100px;
  margin: 0 5px;
}
.contactForm dl dd input[type=text]:focus {
  outline: 0;
  background-color: #FCFAE8;
}
.contactForm dl dd select {
  width: 556px;
  height: 39px;
  padding: 0 15px;
  box-sizing: border-box;
  font-size: 14px;
  background-color: #EFEFEF;
  border: none;
  border-radius: 6px;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
}
.contactForm dl dd select:focus {
  outline: 0;
  background-color: #FCFAE8;
}
.contactForm dl dd textarea {
  width: 100%;
  height: 247px;
  padding: 15px;
  box-sizing: border-box;
  font-size: 14px;
  line-height: 1.4;
  background-color: #EFEFEF;
  border: none;
  border-radius: 6px;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
}
.contactForm dl dd textarea.errorCk {
  background: #F9E5E9;
}
.contactForm dl dd textarea:focus {
  outline: 0;
  background-color: #FCFAE8;
}
.contactForm .contactFormBot {
  width: 400px;
  margin: 50px auto 80px;
}
.contactForm .contactFormBot input#submit_button {
  width: 400px;
  height: 60px;
  background-color: #73A620;
  border: none;
  border-radius: 30px;
  -webkit-border-radius: 30px;
  -moz-border-radius: 30px;
  font-size: 16px;
  color: #fff;
  font-weight: 600;
}
.contactForm .contactFormBot input#submit_button_no {
  width: 400px;
  height: 60px;
  background-color: #CCC;
  border: none;
  border-radius: 30px;
  -webkit-border-radius: 30px;
  -moz-border-radius: 30px;
  font-size: 16px;
  color: #fff;
  font-weight: 600;
}
.contactForm .contactFormBot a#bot-btn-Return {
  display: block;
  width: 400px;
  height: 60px;
  margin: 0 0 15px;
  padding: 19px 0 0;
  box-sizing: border-box;
  background-color: #CCC;
  border: none;
  border-radius: 30px;
  -webkit-border-radius: 30px;
  -moz-border-radius: 30px;
  font-size: 16px;
  color: #fff;
  font-weight: 600;
  text-align: center;
}
.contactForm .contactFormBot a#bot-btn-Return:hover {
  text-decoration: none;
  opacity: 0.7;
}
.contactForm .contactFormBot input#submit_button:hover {
  opacity: 0.7;
}
.contactForm .contactFormBot input#submit_button:focus {
  outline: 0;
}
.contactForm .radio_input {
  display: none;
}
.contactForm .radio_text {
  position:relative;
	margin: 0 20px 0 0;
	padding: 0 0 0 25px;
}
.contactForm .radio_text::before {
  display: block;
  position: absolute;
	left: 0;
  top: 2px;
  width: 19px;
  height: 19px;
	content: "";
  background-color: #EFEFEF;
  border-radius: 50%;
}
.contactForm .radio_input:checked + .radio_text {
  color: #73A620;
}
.contactForm .radio_input:checked + .radio_text::after {
  content: "";
  display: block;
  position: absolute;
  top: 6px;
  left: 4px;
  width: 11px;
  height: 11px;
  background: #73A620;
  border-radius: 50%;
}
/* スマホ用 */
@media only screen and (max-width: 767px) {
  .contactFormArea {
    width: 100%;
    margin: 20px auto 0;
  }
  .contactFormArea .contactCaution {
    width: 100%;
    margin: 15px auto 0;
    padding: 10px;
  }
  .contactFormArea .contactCaution h2 {
    font-size: 14px;
  }
  .contactFormArea .contactCaution ul {
    margin: 10px 0 0;
  }
  .contactFormArea .contactCaution ul li {
    padding: 0 0 10px 15px;
    font-size: 12px;
    line-height: 1.4;
  }
  .contactFormArea .contactCaution ul li:last-child {
    padding: 0 0 0 15px;
  }
  .contactFormArea .contactFormBox {
    padding: 15px 0 0;
  }
  .contactFormArea .contactFormBox .contactForm {
    width: 100%;
    margin: 15px auto 0;
  }
  .contactForm dl {
    width: 100%;
  }
  .contactForm dl dt {
    float: none;
    width: 100%;
    height: auto;
    padding: 10px 0 0;
    font-size: 13px;
  }
  .contactForm dl dd span.red {
    top: 50px;
    font-size: 11px;
  }
  .contactForm dl dd span.red.ty02 {
    top: 73px;
  }
  .contactForm dl dd span.red.ty03 {
    top: 253px;
  }
  .contactForm dl dd span.red::before {
    position: absolute;
    left: 10px;
    bottom: 16px;
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 3px 6px 3px;
    border-color: transparent transparent #e95414 transparent;
  }
  .contactForm dl dt.ty02 {
    height: auto;
    padding: 30px 0 10px;
  }
  .contactForm dl dt.ty03 {
    height: auto;
    padding: 30px 0 10px;
  }
  .contactForm dl dt.textNo {
    display: none;
  }
  .contactForm dl dd {
    float: none;
    width: 100%;
    height: auto;
    padding: 10px 0;
    font-size: 13px;
  }
  .contactForm dl dd.ty02 {
    float: none;
    width: 100%;
    height: auto;
    padding: 10px 0;
  }
  .contactForm dl dd.ty03 {
    float: none;
    width: 100%;
    height: auto;
    padding: 10px 0;
  }
  .contactForm dl dd input[type=text] {
    width: 100%;
    height: 44px;
    padding: 0 5px;
    box-sizing: border-box;
    font-size: 13px;
  }
  .contactForm dl dd input[type=text]:focus {
    outline: 0;
    background-color: #FCFAE8;
  }
  .contactForm dl dd textarea {
    padding: 5px;
    font-size: 13px;
  }
  .contactForm dl dd textarea:focus {
    outline: 0;
    background-color: #FCFAE8;
  }
  .contactForm dl dd select {
    -webkit-appearance: none;
    width: 100%;
    height: 44px;
    padding: 0 5px;
    box-sizing: border-box;
    font-size: 13px;
  }
  .contactForm .contactFormBot {
    width: 250px;
    margin: 30px auto 50px;
  }
  .contactForm .contactFormBot input#submit_button {
    -webkit-appearance: none;
    width: 250px;
    height: 44px;
    font-size: 14px;
  }
  .contactForm .contactFormBot input#submit_button_no {
    -webkit-appearance: none;
    width: 250px;
    height: 44px;
    font-size: 14px;
  }
  .contactForm .radio_text {
    display: block;
  	margin: 0 0 20px 0;
  }
  .contactForm .radio_text::before {
    top: -2px;
  }
  .contactForm .radio_input:checked + .radio_text::after {
    top: 2px;
  }
}

/*==========================================
 TOPICS
===========================================*/

#topicsArea {
  margin: 0 0 0 -46px;
}
#topicsArea.mt_60 {
  margin: 60px 0 0 -46px;
}
body#top #topicsArea a:nth-child(5),
body#top #topicsArea a:nth-child(6),
body#top #topicsArea a:nth-child(7),
body#top #topicsArea a:nth-child(8) {
  display: none;
}
#topicsArea .topicsBox {
  float: left;
  width: 210px;
  margin: 0 0 0 46px;
}
#topicsArea .topicsBox.mb_45 {
  margin: 0 0 45px 46px;
}
#topicsArea .topicsBox p {
  position: relative;
  display: block;
  width: 210px;
  margin: 5px 0 10px;
  font-size: 12px;
  font-weight: 600;
  color: #73A620;
}
#topicsArea .topicsBox p::after {
  position: absolute;
  right: 0;
  top: 0;
  width: 90px;
  height: 24px;
  color: #fff;
  font-size: 12px;
  text-align: center;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
}
#topicsArea .topicsBox p.icon01::after {
  background-color: #E95514;
  content: "重要";
}
#topicsArea .topicsBox p.icon02::after {
  background-color: #F6921E;
  content: "商品情報";
}
#topicsArea .topicsBox p.icon03::after {
  background-color: #A8C001;
  content: "お知らせ";
}
#topicsArea .topicsBox h2 {
  font-size: 14px;
  font-weight: 300;
  line-height: 1.4;
}
#topicsArea .topicsBox h2:hover {
  text-decoration: underline;
}

/* スマホ用 */
@media only screen and (max-width: 767px) {
  #topicsArea {
    margin: 0;
  }
  #topicsArea.mt_60 {
    margin: 30px 0 0 0;
  }
  #topicsArea a:nth-child(odd) .topicsBox {
    float: left;
    width: 48%;
    margin: 0;
  }
  #topicsArea a:nth-child(even) .topicsBox {
    float: right;
    width: 48%;
    margin: 0;
  }
  #topicsArea a:nth-child(odd) .topicsBox.mb_45,
  #topicsArea a:nth-child(even) .topicsBox.mb_45 {
    margin: 0 0 20px 0;
  }
  body#top #topicsArea a:nth-child(3),
  body#top #topicsArea a:nth-child(4),
  body#top #topicsArea a:nth-child(5),
  body#top #topicsArea a:nth-child(6),
  body#top #topicsArea a:nth-child(7),
  body#top #topicsArea a:nth-child(8) {
    display: none;
  }
  #topicsArea .topicsBox img {
    width: 100%;
    height: auto;
  }
  #topicsArea .topicsBox p {
    width: 100%;
    margin: 5px 0;
    font-size: 9px;
  }
  #topicsArea .topicsBox p::after {
    width: 54px;
    height: 20px;
    font-size: 9px;
  }
  #topicsArea .topicsBox h2 {
    font-size: 12px;
  }
}

#topicsEntry {
  width: 780px;
  margin: 20px auto;
}
#topicsEntry #topicsEntryHeader {
  width: 100%;
  border-bottom: 1px solid #73A620;
}
#topicsEntry #topicsEntryHeader h2 {
  font-size: 22px;
  line-height: 1.4;
  padding: 0 0 20px;
}
#topicsEntry p.date {
  padding: 10px 0;
  font-size: 12px;
  font-weight: 600;
  color: #73A620;
  text-align: right;
}
#topicsEntry #topicsEntryContents {
  width: 100%;
  padding: 30px 0;
}
#topicsEntry #topicsEntryContents img {
  display: block;
  width: 500px;
  height: auto;
  margin: 0 auto;
}
#topicsEntry #topicsEntryContents p {
  margin: 30px 0;
}
#topicsEntry #topicsEntryContents a.ty01,
#topicsEntry #topicsEntryContents a.ty02 {
  position: relative;
  display: block;
  margin: 10px 0 20px;
  padding: 0 0 0 30px;
  font-size: 16px;
}
#topicsEntry #topicsEntryContents a.ty01:hover,
#topicsEntry #topicsEntryContents a.ty02:hover {
  color: #73A620;
  text-decoration: none;
}
#topicsEntry #topicsEntryContents a.ty01::before {
  position: absolute;
  left: 5px;
  top: 50%;
  margin: -8px 0 0;
  width: 11px;
  height: 10px;
  content: url("../img/link_icon02.svg");
}
#topicsEntry #topicsEntryContents a.ty02::before {
  position: absolute;
  left: 0;
  top: 50%;
  margin: -12px 0 0;
  width: 24px;
  height: 24px;
  content: url("../img/link_icon01.svg");
}

#topicsEntry #topicsEntryContents p a.ty03 {
  position: relative;
  margin: 0 ;
  padding: 0 0 0 30px;
  font-size: 16px;
}
#topicsEntry #topicsEntryContents p a.ty03:hover {
  color: #73A620;
  text-decoration: none;
}
#topicsEntry #topicsEntryContents p a.ty03::before {
  position: absolute;
  left: 10px;
  top: 50%;
  margin: -14px 0 0;
  width: 11px;
  height: 10px;
  content: url(../img/link_icon02.svg);
}

#topicsEntry #topicsEntryContents .topicsEntryInfo {
  width: 100%;
  margin: 60px 0 0;
  padding: 20px;
  border: 1px solid #73A620;
  box-sizing: border-box;
  border-radius: 6px;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
}
#topicsEntry #topicsEntryContents .topicsEntryInfo h3 {
  font-size: 20px;
  font-weight: 600;
  color: #73A620;
}
#topicsEntry #topicsEntryContents .topicsEntryInfo p {
  margin: 0;
  padding: 15px 0 0;
}
#topicsEntry #topicsEntryContents .topicsEntryInfo p span {
  display: block;
  font-size: 18px;
  font-weight: 600;
  color: #73A620;
}
#topicsSns {
  width: 171px;
  height: 30px;
  margin: 30px auto 0;
}
#topicsSns a:nth-child(1) {
  margin: 0 7px 0 0;
}
#topicsSns a img {
  width: 80px;
  height: 30px;
}
#paginationEntry {
  width: 560px;
  height: 68px;
  margin: 50px auto;
}
#paginationEntry ul {
  display: table;
  table-layout: fixed;
  width: 560px;
  height: 68px;
}
#paginationEntry ul li {
  display: table-cell;
  height: 68px;
  text-align: center;
  vertical-align: middle;
}
#paginationEntry ul li:nth-child(2) {
  border-left: 1px solid #E6E6E6;
  border-right: 1px solid #E6E6E6;
}
#paginationEntry ul li a {
  position: relative;
  font-size: 18px;
}
#paginationEntry ul li a:hover {
  color: #73A620;
  text-decoration: none;
}
#paginationEntry ul li.prev a:before {
  position: absolute;
  left: -30px;
  top: 2px;
  margin: 0 0 0 -12px;
  width: 24px;
  height: 24px;
  content: url("../img/link_icon01.svg");
  transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
}
#paginationEntry ul li.next a:before {
  position: absolute;
  right: -40px;
  top: 2px;
  margin: 0 0 0 -12px;
  width: 24px;
  height: 24px;
  content: url("../img/link_icon01.svg");
}

/* スマホ用 */
@media only screen and (max-width: 767px) {
  #topicsEntry {
    width: 100%;
    margin: 10px auto;
  }
  #topicsEntry #topicsEntryHeader h2 {
    font-size: 14px;
    padding: 0 0 10px;
  }
  #topicsEntry p.date {
    padding: 5px 0;
    font-size: 11px;
  }
  #topicsEntry #topicsEntryContents {
    width: 100%;
    padding: 10px 0;
  }
  #topicsEntry #topicsEntryContents img {
    width: 250px;
  }
  #topicsEntry #topicsEntryContents p {
    margin: 15px 0 30px;
  }
  #topicsEntry #topicsEntryContents a.ty01,
  #topicsEntry #topicsEntryContents a.ty02 {
    margin: 10px 0 20px;
    padding: 0 0 0 20px;
    font-size: 12px;
  }
  #topicsEntry #topicsEntryContents a.ty01::before {
    margin: -7px 0 0;
    width: 6px;
    height: 5px;
  }
  #topicsEntry #topicsEntryContents a.ty02::before {
    margin: -12px 0 0;
    width: 6px;
    height: 5px;
  }
  #topicsEntry #topicsEntryContents p a.ty03 {
    display: inline-block;
    margin: 0;
    padding: 0 0 0 20px;
    font-size: 12px;
  }
  #topicsEntry #topicsEntryContents p a.ty03::before {
    top: -1px;
    margin: 0;
    width: 6px;
    height: 5px;
  }
  #topicsEntry #topicsEntryContents .topicsEntryInfo {
    width: 100%;
    margin: 30px 0 0;
    padding: 15px;
  }
  #topicsEntry #topicsEntryContents .topicsEntryInfo h3 {
    font-size: 14px;
  }
  #topicsEntry #topicsEntryContents .topicsEntryInfo p {
    margin: 0;
    padding: 15px 0 0;
  }
  #topicsEntry #topicsEntryContents .topicsEntryInfo p span {
    font-size: 12px;
  }
  #topicsEntry #topicsEntryContents .topicsEntryInfo p span a {
    color: #73A620;
  }
  #topicsSns {
    width: 113px;
    height: 20px;
    margin: 20px auto 0;
  }
  #topicsSns a:nth-child(1) {
    margin: 0 3px 0 0;
  }
  #topicsSns a img {
    width: 53px;
    height: 20px;
  }
  #paginationEntry {
    width: 100%;
    height: 34px;
    margin: 25px auto 10px;
  }
  #paginationEntry ul {
    width: 100%;
    height: 34px;
  }
  #paginationEntry ul li {
    height: 34px;
  }
  #paginationEntry ul li a {
    font-size: 12px;
  }
  #paginationEntry ul li.prev a:before {
    position: absolute;
    left: -20px;
    top: 4px;
    margin: 0;
    width: 12px;
    height: 12px;
  }
  #paginationEntry ul li.next a:before {
    right: -20px;
    top: 4px;
    margin: 0;
    width: 12px;
    height: 12px;
  }
}

/*==========================================
 ユーティリティ
===========================================*/
#utilityArea {
  width: 780px;
  margin: 40px auto 120px;
}
/* スマホ用 */
@media only screen and (max-width: 767px) {
  #utilityArea {
    width: 100%;
    margin: 20px auto 40px;
  }
}

/*==========================================
 ページネーションのスタイル
===========================================*/
nav#pagination {
  padding: 50px 0;
}
nav#pagination ul {
  text-align: center;
}
nav#pagination ul li {
  width: 24px;
  height: 24px;
  margin: 0 5px;
  display: inline-block;
}
nav#pagination ul li a {
  position: relative;
  width: 24px;
  height: 24px;
  padding: 3px 0 0;
  box-sizing: border-box;
  font-size: 18px;
  text-align: center;
  display: block;
  text-decoration: none;
}
nav#pagination ul li a:hover,
nav#pagination ul li.Active a {
  color: #73A620;
}
nav#pagination ul li.prev a:before {
  position: absolute;
  left: 5px;
  top: 5px;
  margin: 0 0 0 -12px;
  width: 24px;
  height: 24px;
  content: url("../img/link_icon01.svg");
  transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
}
nav#pagination ul li.next a:after {
  position: absolute;
  left: 15px;
  top: 5px;
  margin: 0 0 0 -12px;
  width: 24px;
  height: 24px;
  content: url("../img/link_icon01.svg");
}
nav#pagination ul li.prev a:hover,
nav#pagination ul li.next a:hover {
  opacity: 0.7;
}
/* スマホ用 */
@media only screen and (max-width: 767px) {
  nav#pagination {
    padding: 20px 0;
  }
  nav#pagination ul li {
    width: 12px;
    height: 12px;
    margin: 0 5px;
    display: inline-block;
  }
  nav#pagination ul li a {
    position: relative;
    width: 12px;
    height: 12px;
    padding: 3px 0 0;
    box-sizing: border-box;
    font-size: 12px;
    text-align: center;
    display: block;
    text-decoration: none;
  }
  nav#pagination ul li.prev a:before {
    position: absolute;
    left: 5px;
    top: 2px;
    margin: 0 0 0 -6px;
    width: 12px;
    height: 12px;
    content: url("../img/link_icon01.svg");
    transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
  }
  nav#pagination ul li.next a:after {
    position: absolute;
    left: 10px;
    top: 2px;
    margin: 0 0 0 -6px;
    width: 12px;
    height: 12px;
    content: url("../img/link_icon01.svg");
  }
}


/*==========================================
 商品ラインナップ
===========================================*/
.productTopArea {
  width: 100%;
  padding: 0 0 30px;
}
.productTopArea:nth-child(1) {
  margin: 0 0 30px;
  border-bottom: 1px solid #73A620;
}
.productTopArea .productTopArea_L {
  float: left;
  width: 460px;
  height: 411px;
  padding: 0 29px 0 0;
  border-right: 1px solid #73A620;
}
.productTopArea .productTopArea_R {
  float: right;
  width: 460px;
}
.productTopArea h2 {
  position: relative;
  margin: 20px 0 0;
  color: #73A620;
  text-align: center;
  font-size: 24px;
}
.productTopArea h2::before {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 24px;
  height: 24px;
  content: url("../img/link_icon01.svg");
}
.productTopArea h2.ls01::before {
  margin: -11px 0 0 -130px;
}
.productTopArea h2.ls02::before {
  margin: -11px 0 0 -105px;
}
.productTopArea h2.ls03::before {
  margin: -11px 0 0 -115px;
}
.productTopArea h2.ls04::before {
  margin: -11px 0 0 -150px;
}
.productTopArea p {
  margin: 15px 0 0;
  color: #73A620;
  text-align: center;
  font-size: 16px;
  font-weight: 500;
}
/* スマホ用 */
@media only screen and (max-width: 767px) {
  .productTopArea {
    width: 100%;
    padding: 0;
  }
  .productTopArea:nth-child(1) {
    border-bottom: none;
  }
  .productTopArea .productTopArea_L {
    float: none;
    width: 100%;
    height: auto;
    padding: 0 0 30px;
    border-right: none;
  }
  .productTopArea .productTopArea_R {
    float: none;
    width: 100%;
  }
  .productTopArea .productTopArea_L img,
  .productTopArea .productTopArea_R img {
    width: 100%;
    height: auto;
  }
  .productTopArea h2 {
    margin: 10px 0 0;
    font-size: 15px;
  }
  .productTopArea h2::before {
    left: 50%;
    width: 17px;
    height: 17px;
  }
  .productTopArea h2.ls01::before {
    margin: -8px 0 0 -83px;
  }
  .productTopArea h2.ls02::before {
    margin: -8px 0 0 -70px;
  }
  .productTopArea h2.ls03::before {
    margin: -8px 0 0 -75px;
  }
  .productTopArea h2.ls04::before {
    margin: -8px 0 0 -97px;
  }
  .productTopArea p {
    margin: 5px 0 0;
    font-size: 12px;
  }
}

/* 一覧 */
#product_itemArea {
  margin: 50px 0 0 -46px;
}
#product_itemArea .product_itemBox {
  position: relative;
  float: left;
  width: 210px;
  margin: 0 0 0 46px;
}
#product_itemArea .product_itemBox.mb_45 {
  margin: 0 0 45px 46px;
}
#product_itemArea .product_itemBox.new::before {
  position: absolute;
  left: 10px;
  top: 10px;
  width: 50px;
  height: 50px;
  content: url("../img/product_item_new.svg");
}
#product_itemArea .product_itemBox img {
  width: 210px;
  height: 210px;
  border: 1px solid #E6E6E6;
  box-sizing: border-box;
}
#product_itemArea .product_itemBox p {
  font-size: 14px;
  line-height: 1.4;
}
#product_itemArea .product_itemBox p.price {
  padding: 5px 0 0;
  font-size: 12px;
}

#product_itemCat {
  margin: 20px 0 50px -60px;
  width: 1040px;
}
#product_itemCat .product_itemCatBox {
  float: left;
  width: 460px;
  margin: 0 0 30px 60px;
}
#product_itemCat .product_itemCatBox img {
  width: 100%;
}
/* スマホ用 */
@media only screen and (max-width: 767px) {
  #product_itemArea {
    margin: 40px 0 0;
  }
  #product_itemArea.mt_60 {
    margin: 30px 0 0 0;
  }
  #product_itemArea a:nth-child(odd) .product_itemBox {
    float: left;
    width: 48%;
    margin: 0;
  }
  #product_itemArea a:nth-child(even) .product_itemBox {
    float: right;
    width: 48%;
    margin: 0;
  }
  #product_itemArea a:nth-child(odd) .product_itemBox.mb_45,
  #product_itemArea a:nth-child(even) .product_itemBox.mb_45 {
    margin: 0 0 20px 0;
  }
  #product_itemArea .product_itemBox.new::before {
    left: 5px;
    top: 5px;
    width: 40px;
    height: 40px;
  }
  #product_itemArea .product_itemBox img {
    width: 100%;
    height: auto;
  }
  #product_itemArea .product_itemBox p {
    font-size: 12px;
  }
  #product_itemArea .product_itemBox p.price {
    font-size: 9px;
  }

  #product_itemCat {
    margin: 0 0 50px 0;
    width: 100%;
  }
  #product_itemCat .product_itemCatBox {
    float: none;
    width: 100%;
    margin: 0 0 20px 0;
  }
  #product_itemCat .product_itemCatBox img {
    width: 100%;
  }
}

/* 大カテゴリー */
#product_navi {
  width: 980px;
  margin: 0 auto;
}
#product_navi ul {
  display: table;
  table-layout: fixed;
  width: 980px;
  padding: 30px 0;
  list-style-type: none;
  box-sizing: border-box;
}
#product_navi ul li {
  display: table-cell;
  text-align: center;
  position: relative;
  height: 50px;
  border-left: 1px solid #F0F0F0;
}
#product_navi ul li:last-child {
  border-right: 1px solid #F0F0F0;
}
#product_navi ul li.active::before {
  position: absolute;
  content: "";
  left: 50%;
  bottom: 0;
  width: 100%;
  height: 3px;
  margin: 0 0 0 -50%;
}
#product_navi ul li:hover::before {
  position: absolute;
  content: "";
  left: 50%;
  bottom: 0;
  width: 100%;
  height: 3px;
  margin: 0 0 0 -50%;
}
#product_navi ul li:nth-child(1):hover::before,
#product_navi ul li:nth-child(1).active::before {
  background-color: #73A620;
}
#product_navi ul li:nth-child(2):hover::before,
#product_navi ul li:nth-child(2).active::before {
  background-color: #FAAF3B;
}
#product_navi ul li:nth-child(3):hover::before,
#product_navi ul li:nth-child(3).active::before {
  background-color: #6DC7EA;
}
#product_navi ul li:nth-child(4):hover::before,
#product_navi ul li:nth-child(4).active::before {
  background-color: #8388C9;
}
#product_navi ul li:nth-child(5):hover::before,
#product_navi ul li:nth-child(5).active::before {
  background-color: #F497C2;
}
#product_navi ul li a {
  display: block;
  width: 100%;
  height: 50px;
  padding: 17px 0 0;
  font-size: 16px;
  box-sizing: border-box;
}
#product_navi ul li a:hover {
  font-weight: 600;
  text-decoration: none;
}
#product_navi ul li.active a {
  font-weight: 600;
}
#product_navi ul li:nth-child(1) a:hover,
#product_navi ul li:nth-child(1).active a  {
  color: #73A620;
}
#product_navi ul li:nth-child(2) a:hover,
#product_navi ul li:nth-child(2).active a {
  color: #FAAF3B;
}
#product_navi ul li:nth-child(3) a:hover,
#product_navi ul li:nth-child(3).active a {
  color: #6DC7EA;
}
#product_navi ul li:nth-child(4) a:hover,
#product_navi ul li:nth-child(4).active a {
  color: #8388C9;
}
#product_navi ul li:nth-child(5) a:hover,
#product_navi ul li:nth-child(5).active a {
  color: #F497C2;
}

/* スマホ用 */
@media only screen and (max-width: 767px) {
  #product_navi_Box {
    width: 100%;
    overflow: scroll;
  }
  #product_navi {
    width: 700px;
    margin: 0 auto;
  }
  #product_navi ul {
    width: 700px;
    padding: 10px 0 15px;
  }
  #product_navi ul li {
    height: 35px;
  }
  #product_navi ul li.active::before {
    height: 2px;
  }
  #product_navi ul li:hover::before {
    display: none;
  }
  #product_navi ul li a {
    height: 35px;
    padding: 12px 0 0;
    font-size: 12px;
  }
  #product_navi ul li a:hover {
    font-weight: 300;
  }
  #product_navi ul li:nth-child(1) a:hover,
  #product_navi ul li:nth-child(2) a:hover,
  #product_navi ul li:nth-child(3) a:hover,
  #product_navi ul li:nth-child(4) a:hover,
  #product_navi ul li:nth-child(5) a:hover {
    color: #333;
  }
}

/* 小カテゴリー */
#product_cate_navi {
  width: 980px;
  margin: 0 auto;
}
#product_cate_navi ul {
  list-style-type: none;
}
#product_cate_navi ul li {
  float: left;
  margin: 0 0 20px 35px;
}
#product_cate_navi ul li a {
  position: relative;
  font-size: 14px;
}
#product_cate_navi ul li a:hover {
  text-decoration: none;
  font-weight: 600;
}
#product_cate_navi ul li a:hover::before {
  position: absolute;
  content: "";
  left: 50%;
  bottom: -5px;
  width: 100%;
  height: 3px;
  margin: 0 0 0 -50%;
}
#product_cate_navi ul li.active a {
  font-weight: 600;
}
#product_cate_navi ul li.active a::before {
  position: absolute;
  content: "";
  left: 50%;
  bottom: -5px;
  width: 100%;
  height: 3px;
  margin: 0 0 0 -50%;
}

#product_cate_navi ul#cat01 li a:hover,
#product_cate_navi ul#cat01 li.active a {
  color: #FAAF3B;
}
#product_cate_navi ul#cat01 li a:hover::before,
#product_cate_navi ul#cat01 li.active a::before {
  background-color: #FAAF3B;
}

#product_cate_navi ul#cat02 li a:hover,
#product_cate_navi ul#cat02 li.active a {
  color: #6DC7EA;
}
#product_cate_navi ul#cat02 li a:hover::before,
#product_cate_navi ul#cat02 li.active a::before {
  background-color: #6DC7EA;
}

#product_cate_navi ul#cat03 li a:hover,
#product_cate_navi ul#cat03 li.active a {
  color: #8388C9;
}
#product_cate_navi ul#cat03 li a:hover::before,
#product_cate_navi ul#cat03 li.active a::before {
  background-color: #8388C9;
}

#product_cate_navi ul#cat04 li a:hover,
#product_cate_navi ul#cat04 li.active a {
  color: #F497C2;
}
#product_cate_navi ul#cat04 li a:hover::before,
#product_cate_navi ul#cat04 li.active a::before {
  background-color: #F497C2;
}
/* スマホ用 */
@media only screen and (max-width: 767px) {
  #product_cate_navi {
    width: 94%;
    margin: 0 3%;
  }
  #product_cate_navi ul li {
    float: left;
    margin: 0 10px 25px;
  }
  #product_cate_navi ul li a {
    position: relative;
    padding: 5px 10px;
    font-size: 12px;
    border-radius: 17px;
    -webkit-border-radius: 17px;
    -moz-border-radius: 17px;
  }
  #product_cate_navi ul li a:hover::before {
    display: none;
  }
  #product_cate_navi ul li.active a {
    font-weight: 600;
  }
  #product_cate_navi ul li.active a::before {
    display: none;
  }
  #product_cate_navi ul#cat01 li a {
    border: 1px solid #FAAF3B;
  }
  #product_cate_navi ul#cat01 li a:hover,
  #product_cate_navi ul#cat01 li.active a {
    color: #fff;
    background-color: #FAAF3B;
  }

  #product_cate_navi ul#cat02 li a {
    border: 1px solid #6DC7EA;
  }
  #product_cate_navi ul#cat02 li a:hover,
  #product_cate_navi ul#cat02 li.active a {
    color: #fff;
    background-color: #6DC7EA;
  }

  #product_cate_navi ul#cat03 li a {
    border: 1px solid #8388C9;
  }
  #product_cate_navi ul#cat03 li a:hover,
  #product_cate_navi ul#cat03 li.active a {
    color: #fff;
    background-color: #8388C9;
  }

  #product_cate_navi ul#cat04 li a {
    border: 1px solid #F497C2;
  }
  #product_cate_navi ul#cat04 li a:hover,
  #product_cate_navi ul#cat04 li.active a {
    color: #fff;
    background-color: #F497C2;
  }
}

/* 下部ボタン */
.product_back {
  margin: 0 0 50px;
}
.product_back a {
  position: relative;
  display: block;
  width: 345px;
  height: 60px;
  box-sizing: border-box;
  margin: 0 auto;
  padding: 18px 0 0;
  font-size: 18px;
  color: #73A620;
  text-align: center;
  border: 2px solid #73A620;
  border-radius: 6px;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
}
.product_back a::before {
  position: absolute;
  left: 15px;
  top: 50%;
  margin: -12px 0 0;
  width: 24px;
  height: 24px;
  content: url("../img/link_icon01.svg");
  transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
}
.product_back a:hover {
  text-decoration: none;
  opacity: 0.7;
}
/* スマホ用 */
@media only screen and (max-width: 767px) {
  .product_back {
    width: 250px;
    margin: 10px auto 0;
  }
  .product_back a {
    width: 250px;
    height: 45px;
    padding: 13px 0 0;
    font-size: 14px;
  }
  .product_back a::after {
    right: 10px;
    margin: -8px 0 0;
    width: 16px;
    height: 16px;
  }
}


/* 詳細 */
#product_itemDetail {
  width: 100%;
  margin: 50px 0;
}
#product_itemDetail #product_itemDetail_L {
  float: left;
  width: 335px;
}
#product_itemDetail #product_itemDetail_L #product_item_mainimg {
  position: relative;
}
#product_itemDetail #product_itemDetail_L #product_item_mainimg img {
  width: 100%;
  border: 1px solid #E6E6E6;
  box-sizing: border-box;
}
#product_itemDetail #product_itemDetail_L #product_item_mainimg.new::before {
  position: absolute;
  left: 10px;
  top: 10px;
  width: 50px;
  height: 50px;
  content: url("../img/product_item_new.svg");
}
#product_itemDetail #product_itemDetail_L #product_item_thumbnail {
  width: 100%;
  margin: 20px 0 0;
}
#product_itemDetail #product_itemDetail_L #product_item_thumbnail ul {
  margin: 0 0 0 -10px;
  list-style-type: none;
}
#product_itemDetail #product_itemDetail_L #product_item_thumbnail ul li {
  float: left;
  position: relative;
  width: 76px;
  height: 76px;
  margin: 0 0 10px 10px;
}
#product_itemDetail #product_itemDetail_L #product_item_thumbnail ul li.active::before {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: #000;
  opacity: 0.2;
  content: "";
}
#product_itemDetail #product_itemDetail_L #product_item_thumbnail ul li:hover {
  opacity: 0.7;
}
#product_itemDetail #product_itemDetail_L #product_item_thumbnail ul li img {
  width: 100%;
  border: 1px solid #E6E6E6;
  box-sizing: border-box;
  cursor: pointer;
}
/* スマホ用 */
@media only screen and (max-width: 767px) {
  #product_itemDetail {
    margin: 20px 0;
  }
  #product_itemDetail #product_itemDetail_L {
    float: none;
    width: 100%;
  }
  #product_itemDetail #product_itemDetail_L #product_item_thumbnail ul {
    margin: 0 0 0 -3%;
  }
  #product_itemDetail #product_itemDetail_L #product_item_thumbnail ul li {
    width: 22%;
    height: 22%;
    margin: 0 0 10px 3%;
  }
  #product_itemDetail #product_itemDetail_L #product_item_thumbnail ul li.active::before {
    width: 100%;
    height: 98.45%;
  }
}


#product_itemDetail #product_itemDetail_R {
  float: right;
  width: 400px;
  margin: -5px 0 0;
}
#product_itemDetail #product_itemDetail_R h2 {
  padding: 5px 0 15px;
  font-size: 22px;
  font-weight: 600;
  line-height: 1.6;
}
#product_itemDetail #product_itemDetail_R p.itemTxt01 {
  font-size: 12px;
  line-height: 1.6;
}
#product_itemDetail #product_itemDetail_R p.itemTxt02 {
  padding: 0 0 20px;
  font-size: 14px;
}

#product_itemDetail #product_itemDetail_R h3 {
  margin: 30px 0 15px;
  padding: 0 0 10px;
  font-size: 14px;
  border-bottom: 1px solid #E6E6E6;
}

#product_itemDetail #product_itemDetail_R a.itemSiteLink {
  position: relative;
  display: block;
  width: 100%;
  height: 60px;
  box-sizing: border-box;
  margin: 0 0 15px;
  padding: 18px 18px 0;
  font-size: 16px;
  color: #333;
  border: 1px solid #E6E6E6;
  border-radius: 6px;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
}
#product_itemDetail #product_itemDetail_R a.itemSiteLink::after {
  position: absolute;
  right: 15px;
  top: 50%;
  margin: -10px 0 0;
  width: 11px;
  height: 10px;
  content: url("../img/link_icon02.svg");
}
#product_itemDetail #product_itemDetail_R a.itemSiteLink:hover {
  text-decoration: none;
  opacity: 0.7;
}
/* スマホ用 */
@media only screen and (max-width: 767px) {
  #product_itemDetail #product_itemDetail_R {
    float: none;
    width: 100%;
    margin: 0;
  }
  #product_itemDetail #product_itemDetail_R h2 {
    font-size: 14px;
  }
  #product_itemDetail #product_itemDetail_R p.itemTxt02 {
    font-size: 13px;
  }

  #product_itemDetail #product_itemDetail_R h3 {
    font-size: 12px;
  }

  #product_itemDetail #product_itemDetail_R a.itemSiteLink {
    height: 45px;
    padding: 15px 18px 0;
    font-size: 14px;
  }
  #product_itemDetail #product_itemDetail_R a.itemSiteLink::after {
    right: 10px;
    margin: -8px 0 0;
  }
}



#product_itemSpec {
  margin: 35px 0 100px;
}
#product_itemSpec table {
  width: 100%;
  border-top: 1px solid #BCBCBC;
  border-left: 1px solid #BCBCBC;
}
#product_itemSpec table tr {
  border-bottom: 1px solid #BCBCBC;
}
#product_itemSpec table th {
  padding: 10px;
  font-size: 14px;
  line-height: 1.4;
  text-align: left;
  background-color: #EEEEEE;
  border-right: 1px solid #BCBCBC;
}
#product_itemSpec table td {
  padding: 10px;
  font-size: 14px;
  line-height: 1.4;
  border-right: 1px solid #BCBCBC;
}
/* スマホ用 */
@media only screen and (max-width: 767px) {
  #product_itemSpec {
    margin: 20px 0 50px;
  }
  #product_itemSpec table th {
    width: 70px;
    padding: 5px;
    font-size: 12px;
  }
  #product_itemSpec table td {
    padding: 5px;
    font-size: 12px;
  }
}


/*==========================================
 検索
===========================================*/
#searchArea {
  width: 640px;
  margin: 50px auto;
}
#searchArea input[type="search"] {
  float: left;
  width: 500px;
  height: 60px;
  padding: 0 15px;
  box-sizing: border-box;
  background-color: #F0F0F0;
  border: none;
  font-size: 19px;
}
#searchArea input[type="search"]:focus {
  outline: 0;
  background-color: #FCFAE8;
}
#searchArea a {
  float: right;
  display: block;
  width: 140px;
  height: 60px;
  padding: 21px 0 0;
  box-sizing: border-box;
  background-color: #73A620;
  font-size: 18px;
  text-align: center;
  color: #fff;
  font-weight: 600;
}
#searchArea a:hover {
  text-decoration: none;
  opacity: 0.7;
}

#searchTitle {
  margin: 0;
  padding: 0 0 5px;
  border-bottom: 1px solid #F0F0F0;
  text-align: right;
}

/* スマホ用 */
@media only screen and (max-width: 767px) {
  #searchArea {
    width: 100%;
    margin: 30px auto;
  }
  #searchArea input[type="search"] {
    width: 70%;
    height: 44px;
    font-size: 12px;
    -webkit-appearance: none;
    border-radius: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
  }

  #searchArea a {
    width: 30%;
    height: 44px;
    padding: 16px 0 0;
    font-size: 12px;
  }
}


/*==========================================
 検索
===========================================*/
#catalogArea {
  width: 600px;
  margin: 50px auto;
  display: flex;
  justify-content: space-between;
}
#catalogArea .column {
  width: 240px;
  height: auto;
  text-align: center;
}
#catalogArea .column img {
  width: 100%;
  height: auto;
}
#catalogArea .column .link a {
  position: relative;
  display: inline-block;
  margin: 10px 0 0;
  padding: 0 0 0 30px;
  font-size: 16px;
  color: #73A620;
}
#catalogArea .column .link a::before {
  position: absolute;
  left: 0;
  top: 50%;
  margin: -12px 0 0;
  width: 24px;
  height: 24px;
  content: url("../img/link_icon01.svg");
}
@media only screen and (max-width: 767px) {
  #catalogArea {
    width: 240px;
    margin: 30px auto;
    flex-wrap: wrap;
  }
  #catalogArea .column {
    padding: 0 0 40px;
  }
}
