@charset "utf-8";
/*------------------------------------------------------------
	デフォルトスタイル
------------------------------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	outline: 0;

	font-size: 1em;
}

html{
	font-size: 62.5%;
}

body {
	font-size: 62.5%;
	position: static;
}

/*
body,
table,
input, textarea, select, option {
	font-family: 'Noto Serif JP', serif;
  font-style: normal;
  font-weight: normal;
}
*/

article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary {
	display: block;
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

:focus {
	outline: 0;
}

ins {
	text-decoration: none;
}

del {
	text-decoration: line-through;
}

img {
	vertical-align: top;
}

svg {
    opacity: 1;
    transition: opacity .5s ease,fill .5s ease,stroke .5s ease;
}

a .basePic {
  opacity: 1;
  transition: opacity .5s ease;
}

a:hover .basePic {
  opacity: .7;
}

a {
    text-decoration: none;
    color: #333;
    transition: color .5s ease,opacity .5s ease;
}

a:hover {
	color: #999;
}

a:hover svg {
    opacity: .7;
}

/*------------------------------------------------------------
	レイアウト
------------------------------------------------------------*/
body {
	/*min-width: 1099px;*/
/*
	color: #333;
	font-size: 13px;
	line-height: 1.5;
	text-size-adjust: none;
	-webkit-text-size-adjust: none;
	background-color: #FFF;
	font-family: 'Noto Serif JP', serif;
	font-style: normal;
	font-weight: normal;
	overflow: auto;
*/
}

#container {
	text-align: left;
	overflow: hidden;
	position: relative;
}

#main {

}

a[href^="tel:"] {
	cursor: default;
	pointer-events: none;
}

.sp {
	display: none !important;
}

/*
@font-face {
  font-family:"Perpetua Regular";
  src:url("./../fonts/perpetuaRegular.eot?#iefix");
  src:url("./../fonts/perpetuaRegular.eot?#iefix") format("eot"),url("./../fonts/perpetuaRegular.woff2") format("woff2"),url("./../fonts/perpetuaRegular.woff") format("woff"),url("./../fonts/perpetuaRegular.ttf") format("truetype");
  font-display: swap;
}

@font-face {
  font-family:"Perpetua Bold";
  src:url("./../fonts/perpetuaBold.eot?#iefix");
  src:url("./../fonts/perpetuaBold.eot?#iefix") format("eot"),url("./../fonts/perpetuaBold.woff2") format("woff2"),url("./../fonts/perpetuaBold.woff") format("woff"),url("./../fonts/perpetuaBold.ttf") format("truetype");
  font-display: swap;
}

@font-face {
  font-family:"Perpetua Light";
  src:url("./../fonts/perpetuaLight.eot?#iefix");
  src:url("./../fonts/perpetuaLight.eot?#iefix") format("eot"),url("./../fonts/perpetuaLight.woff2") format("woff2"),url("./../fonts/perpetuaLight.woff") format("woff"),url("./../fonts/perpetuaLight.ttf") format("truetype");
  font-display: swap;
}

@font-face {
  font-family: "SnellRoundhand";
  src: url("./../fonts/SnellRoundhand.woff") format('woff');
}

@font-face {
  font-family: "SnellRoundhand_bold";
  src: url("./../fonts/SnellRoundhand_bold.woff") format('woff');
}

.-snellRo {
  font-family: "SnellRoundhand";
  font-style: normal;
  font-weight: normal;
}

.-snellRoBold {
  font-family: "SnellRoundhand_bold";
  font-style: normal;
  font-weight: normal;
}

.-times {
  font-family: "Times New Roman";
  font-style: normal;
  font-weight: normal;
}

.-timesBold {
  font-family: "Times New Roman_bold";
  font-style: normal;
  font-weight: normal;
}

.-notoSerif {
  font-family: 'Noto Serif JP', serif;
  font-style: normal;
  font-weight: normal;
}

.-notoSans {
  font-family: 'Noto Sans JP', sans-serif;
  font-style: normal;
  font-weight: normal;
}

.-roboto {
  font-family: 'Roboto Condensed', sans-serif;
  font-style: normal;
  font-weight: normal;
}

.-perpetuaRe {
  font-family: 'Times New Roman';
  font-style: normal;
  font-weight: normal;
}

.-perpetuaBo {
  font-family: 'Perpetua Bold';
  font-style: normal;
  font-weight: normal;
}

.-perpetuaLi {
  font-family: 'Perpetua Light';
  font-style: normal;
  font-weight: normal;
}

.-arnoProDisplay {
  font-family: 'Perpetua Regular';
  font-style: normal;
  font-weight: normal;
}
*/

h1,h2,h3,h4,h5,h6
{
	color: inherit;
}

.isIp5 {
  display: none;
}

.whiteBg {
  position: relative;
  background-color: #ffffff;
}

.loadingLogo {
	position: absolute;
	left: 50%;
	top: 50%;
}

.privacyItem .splink {
  word-break: break-all;
}

@media (min-width:1281px) {
  .splink {
    padding-left:20px;
  }
  .jplink {
    padding-left:35px;
  }
}

@media all and (min-width: 0) and (max-width: 767px) {
	body {
		min-width: inherit;
	}

  a:hover {
    color: inherit;
  }

	a:hover .basePic {
		opacity: 1;
	}

  a:hover svg {
      opacity: 1;
  }

	.sp {
		display: block !important;
	}

	.pc {
		display: none !important;
	}

	a[href^="tel:"] {
		cursor: pointer;
		pointer-events: auto;
	}
	
	.loadingLogo {
    left: 47%;
  }

  .splink {
    padding-left:35px;
  }

  .splink a.link01 {
    width: 299px;
    word-wrap: break-word;
  }

  .jplink {
    padding-left:35px;
  }
}

@media all and (min-width: 0) and (max-width: 320px) {
  .isIp5 {
    display: block;
  }
}

/*------------------------------------------------------------
	ヘッダー
------------------------------------------------------------*/
#gHeader {
  position: absolute;
  width: 100%;
  left: 0;
  top: 0;
  z-index: 11;
}

#gHeader *
{
	box-sizing: content-box;
}

#gHeader::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  opacity: 0;
  visibility: hidden;
  transition: opacity .5s ease,visibility .5s ease,background .5s ease;
}

#gHeader h1 {
    width: 120px;
    height: 36px;
    padding-top: 30px;
    padding-bottom: 30px;
    margin: 0 auto;
    position: relative;
    transition: opacity .5s ease,visibility .5s ease;
}

#gHeader h1 a {
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.topLogo {
    display: block;
    width: 100%;
    height: 100%;
    fill: #B89152;
}

.menuBtn {
    position: absolute;
    right: 36px;
    top: 27px;
    width: 30px;
    height: 30px;
}

.menuBtn span {
    position: absolute;
    width: 30px;
    height: 1px;
    background: #B89152;
    right: 0;
    transform-origin: center;
    transition: background .5s ease,transform .5s ease;
}

.menuBtn span:nth-child(1) {
    top: 8px;
}

.menuBtn span:nth-child(2) {
    top: 14px;
}

.menuBtn span:nth-child(3) {
    top: 20px;
}

.headColle {
    position: absolute;
    right: 85px;
    top: 34px;
    overflow: hidden;
    width: 16px;
    height: 14px;
    opacity: 1;
    transition: opacity .5s ease,visibility .5s ease;
}

.headColle svg {
    display: block;
    width: 100%;
    height: 100%;
    fill: transparent;
    stroke: #9F0A0A;
    opacity: .5;
}

.headColle:hover svg {
  opacity: .5;
}

.headColle:hover {
  opacity: .7;
}

.headColle.onFave  svg {
    fill: #9F0A0A;
    stroke: #9F0A0A;
}

.closeBtn {
    position: fixed;
    z-index: 101;
    opacity: 0;
    visibility: hidden;
    transition: opacity .5s ease, visibility .5s ease;
}

.closeBtn span:nth-child(1) {
    top: 14px;
    transform: rotate(45deg);
}

.closeBtn span:nth-child(2) {
    width: 30px;
    top: 14px;
    transform: rotate(-45deg);
}

.openMenu .closeBtn {
    opacity: 1;
    visibility: visible;
}

.headerW .topLogo {
  fill: #fff;
}

/*.headerW .headColle svg {
  stroke: #fff;
}

.headerW .headColle.onFave  svg {
    fill: #fff;
}*/

.headerW .menuBtn span {
  background: #fff;
}

.scrollHeader .headerW .topLogo {
  fill: #B89152;
}

.scrollHeader .headColle svg {
  stroke: #9F0A0A;
}

.scrollHeader .headerW .menuBtn span {
  background: #B89152;
}

.scrollHeader #gHeader {
  position: fixed;
  top: 0;
}

.scrollHeader #gHeader::before {
  background: rgba(255,255,255,.9);
  opacity: 1;
  visibility: visible;
}

.scrollHeader #gHeader h1 {
  padding-top: 16px;
  padding-bottom: 20px;
}

.scrollHeader .headColle {
  top: 28px;
}

.scrollHeader .menuBtn {
  top: 20px;
}

@media all and (min-width: 0) and (max-width: 767px) {
	#gHeader {

	}

  #gHeader h1 {
    width: 92px;
    height: 26px;
    padding-top: 22px;
    padding-bottom: 22px;
  }

  .headColle {
    right: 64px;
    top: 28px;
    width: 16px;
    height: 14px;
  }

  .menuBtn {
    right: 21px;
    top: 21px;
  }

  .closeBtn {
    right: 25px;
  }

  .closeBtn span:nth-child(1) {
    width: 26px;
    top: 12px;
    transform: rotate(45deg);
  }

  .closeBtn span:nth-child(2) {
    width: 26px;
    top: 12px;
    transform: rotate(-45deg);
  }

  .scrollHeader #gHeader h1 {
    padding-top: 15px;
    padding-bottom: 14px;
  }

  .scrollHeader .headColle {
    top: 21px;
  }

  .scrollHeader .menuBtn {
    top: 13px;
  }

}

/*------------------------------------------------------------
	gNavi
------------------------------------------------------------*/
#gNavi {
    width: 540px;
    height: 100vh;
    position: fixed;
    top: 0;
    right: 0;
    transform: translateX(100%);
    background: rgba(246,245,241,.95);
    transition: transform .8s ease;
    z-index: 100;
}

.openMenu #gNavi {
    transform: translateX(0);
}

.navMask {
  position: fixed;
  z-index: 11;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  visibility: hidden;
  opacity: 0;
  transition: visibility .8s ease, opacity .8s ease;
}

.openMenu .navMask {
    visibility: visible;
    opacity: 1;
}

.gNaviIne {
    padding: 0 80px 0 98px;
    position: relative;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

.menuList {
    margin-bottom: 40px;
}

.menuList li {
    float: left;
    width: 45%;
    margin-bottom: 17px;
}

.menuList li:nth-child(2n) {
    float: right;
}

.menuList li a {
    font-size: 26px;
    letter-spacing: 1px;
    white-space: nowrap;
    color: #988666;
    transition: opacity .5s ease;
}

.menuList li a:hover {
  opacity: .7;
}

.navLinkWrap {
  margin-bottom: 38px;
}

.navLink {
  float: left;
  width: 50.5%;
}

.gNaviIne .navLink li {
  margin-bottom: 8px;
}

.gNaviIne .navLink li a {
    font-size: 16px;
    letter-spacing: .8px;
}

.gNaviIne .navLink li.navLinkJp a {
    font-size: 12px;
    letter-spacing: .5px;
}

.iconTarget {
  display: inline-block;
  width: 8px;
  height: 8px;
  fill: #000;
  margin-left: 2px;
  vertical-align: 2px;
}

.navLink02 {
  position: static;
  transform: translateX(0);
  width: 45.5%;
  background: transparent;
  opacity: 1;
  visibility: visible;
  float: right;
  padding: 0;
}

.navLink02 li {
  margin-bottom: 4px;
}

.navLink02 li a {
  display: block;
  font-size: 15px;
  letter-spacing: .5px;
}

.navLink02 .navLinImg {
  margin-bottom: 14px;
}

.navLink02 .navLinImg a {
  width: 148px;
  display: block;
}

.navLink02 .navLinImg img {
  width: 100%;
  display: block;
}
.navLink02 .navLinImg.aandscomp_svg img {
  width: 100%;
  display: block;
}
.navLink02 li a > img.ilumine {
  height: 15px;
}

.share {
  padding-top: 10px;
  float: none;
  clear: both;
}

.share li {
  display: inline-block;
  margin-right: 14px;
}

.share li:last-child {
  margin-right: 0;
}

.share li a {
  overflow: hidden;
}

.share svg {
  height: 22px;
  display: block;
  fill: #666;
}

.iconFb svg {
  width: 18px;
}

.iconTw svg {
  width: 18px;
}

.iconIns svg {
  width: 19px;
}

.iconLink svg {
  width: 22px;
}

.crownBtn {
  width: 95%;
  text-align: center;
}

.crownBtn a {
  width: 100%;
  display: block;
  position: relative;
  border: 1px solid #DBC8A8;
  background: #fff;
  min-height: 60px;
  box-sizing: border-box;
  padding: 12px 23px 14px 5px;
  font-size: 20px;
  color: #988666;
  transition: color .5s ease,border-color .5s ease,background .5s ease;
}

.crownBtn a:hover {
    color: #FFFFFF;
    border-color: #988666;
    background: #988666;
	opacity: 1;
}

.crownBtn a::after {
  position: absolute;
  content: '';
  left: 5px;
  top: 5px;
  right: 5px;
  bottom: 5px;
  border: 1px solid rgba(219,200,168,.5);
  display: block;
}

.crownBtn a span {
  display: inline-block;
  width: 31px;
  height: 16px;
  vertical-align: middle;
  margin-right: 10px;
  position: relative;
  top: -2px;
}

.crownBtn a span img {
  width: 100%;
}

@media all and (min-width: 0) and (max-width: 767px) {
  #gNavi {
    width: 100%;
    height: 100%;
  }

  .gNaviIne {
    padding: 0 40px 0 45px;
    left: 50%;
    transform: translate(-50%,-50%);
  }

  .menuList {
    margin-bottom: 15px;
  }

  .menuList li {
    width: 50%;
    margin-bottom: 9px;
  }

  .menuList li a {
    font-size: 20px;
    letter-spacing: 1.4px;
  }
  
  .menuList li a:hover {
    opacity: 1;
  }

  .navLinkWrap {
    margin-bottom: 3px;
  }

  .gNaviIne .navLink li {
    margin-bottom: 10px;
  }

  .gNaviIne .navLink li a {
    font-size: 15px;
  }

  .gNaviIne .navLink li.navLinkJp a {
    font-size: 11px;
  }
  
  .navLink {
	  width: 50%;
  }
  
  .navLink02 {
    width: 50%;
  }

  .navLink02 li {
    margin-bottom: 10px;
  }

  .navLink02 .navLinImg {
    margin-bottom: 15px;
  }

  .navLink02 .navLinImg a {
    width: 100%;
  }

  .navLink02 li a {
    font-size: 13px;
  }
  .navLink02 li a > img.ilumine {
    height: 13px;
  }

  .share {
    padding-top: 5px;
    margin-right: -10px;
  }

  .crownBtn {
    width: 96%;
    margin-bottom: 30px;
  }

  .crownBtn a:hover {
    color: #988666;
    border-color: #DBC8A8;
    background: #fff;
  }

}

@media all and (min-width: 0) and (max-width: 320px) {
  .gNaviIne {
    /* padding: 0; */
  }
}

/*------------------------------------------------------------
	パンクズリスト
------------------------------------------------------------*/
#pagePath {

}

#pagePath li {
	display: inline;
	color: #000;
	font-size: 1.2em;
}

#pagePath li a {
}

@media all and (min-width: 0) and (max-width: 767px) {
}

/*------------------------------------------------------------
	conts
------------------------------------------------------------*/
#conts {

}

@media all and (min-width: 0) and (max-width: 767px) {
}

/*------------------------------------------------------------
	sideBar
------------------------------------------------------------*/
#sideBar {

}

@media all and (min-width: 0) and (max-width: 767px) {
}

/*------------------------------------------------------------
	フッター
------------------------------------------------------------*/
#gFooter {
  overflow: hidden;
  background: #fff;
  position: relative;
}

#gFooter *
{
	box-sizing: content-box;
}

.teturnTop {
  text-align: center;
  padding-bottom: 40px;
}

.teturnTop a {
  display: inline-block;
  overflow: hidden;
}

.teturnTop svg {
  display: inline-block;
  width: 28px;
  height: 14px;
  fill: #DBC8A8;
}

.footer {
  /*padding: 53px 0;
  background: #93794F;*/
}

.logoLink {
  text-align: center;
  margin-bottom: 10px;
}

.logoLink li {
  display: inline-block;
  margin-right: 35px;
}

.logoLink li:last-child {
  margin-right: 0;
}

.logoLink li svg {
  height: 40px;
  display: inline-block;
  fill: #fff;
}

.logoLink .logoAs {
  margin-right: 80px;
}

.logoLink .logoAg {
  vertical-align: -9px;
}

.logoLink .logoBell {
  vertical-align: -4px;
}

.logoLink .logoAs svg {
  width: 90px;
}

.logoLink .logoAg svg {
  width: 72px;
}

.logoLink .logoNoje svg {
  width: 82px;
}

.logoLink .logoBell svg {
  width: 101px;
}

.logoLink .logoEva svg {
  width: 57px;
}

.logoLink .logoAsl svg {
  width: 64px;
}

.linkBox {
  text-align: center;
  margin-bottom: 22px;
}

.linkBox .navLink {
  margin-right: 45px;
  float: none;
  width: auto;
  display: inline-block;
  vertical-align: middle;
  white-space: nowrap;
}

.linkBox .navLink li {
  margin-right: 36px;
}

.linkBox .navLink li:last-child {
  margin-right: 0;
}

.linkBox .navLink li.navLinkJp a {
  font-weight: 500;
}

.linkBox li {
  display: inline-block;
  margin-bottom: 0;
}

.linkBox .iconTarget {
  fill: #fff;
  margin-left: 4px;
  vertical-align: 0px;
}

.linkBox li a {
  color: #fff;
  font-size: 15px;
  letter-spacing: .8px;
}

.linkBox .navLink li.navLinkJp a {
  font-weight: 500;
  font-size: 11px;
  letter-spacing: .4px;
}

.linkBox li a:hover {
  opacity: .7;
}

.linkBox .share {
  padding-top: 0;
  display: inline-block;
  vertical-align: -11px;
  white-space: nowrap;
  width: 100%;
  margin-top: 20px;
}

.linkBox .share li {
  margin-right: 14px;
}

.linkBox .share li.iconTw {
  margin-right: 12px;
}

.linkBox .share li:last-child {
  margin-right: 0;
}

.linkBox .share svg {
  fill: #fff;
}

.copy {
  font-size: 12px;
  text-align: center;
  color: #fff;
  letter-spacing: .5px;
}

@media all and (min-width: 0) and (max-width: 767px) {
  .footer {
    /*padding: 58px 0 62px;*/
  }

  .teturnTop {
    padding-bottom: 40px;
  }

  .logoLink {
    width: 310px;
    margin: 0 auto 27px;
  }

  .logoLink li {
    position: relative;
    margin-right: 30px;
    margin-bottom: 7px;
  }

  .logoLink li svg {
    height: 30px;
  }

  .logoLink .logoAs {
    width: 100%;
    margin-bottom: 16px;
  }

  .logoLink li:nth-child(2n+1) {
    margin-right: 0;
  }

  .logoLink .logoAg {
    left: 5px;
  }

  .logoLink .logoNoje {
    left: 7px;
  }

  .logoLink .logoBell {
    left: -4px;
    vertical-align: -4px;
    margin-right: 24px;
    margin-bottom: 12px;
  }

  .logoLink .logoAsl {
    margin-bottom: 16px;
    left: -5px;
  }

  .logoLink .logoEva svg {
    width: 55px;
    height: 40px;
  }

  .logoLink .logoEva {
    width: 100%;
    padding-top: 4px;
  }

  .linkBox .navLink {
    width: 300px;
    display: block;
    margin: 0 auto;
    white-space: inherit;
  }

  .linkBox .navLink li {
    margin: 0 3px 10px;
  }
  .linkBox .navLink li:nth-child(3) {
    width: 43%;
    text-align: right;
    margin: 0 9px 10px;
  }

  .linkBox .navLink li:nth-child(4) {
    width: 43%;
    text-align: left;
    margin: 0 9px 10px;
  }
  .linkBox .navLink li:nth-child(5) {
  	padding-right: 15px;
    margin-right: 0;
  }
  .linkBox .navLink li:nth-child(6) {
  	margin-left: 0;
  }

  .linkBox .iconTarget {
    vertical-align: -1px;
  }

  .linkBox {
    text-align: center;
    margin-bottom: 36px;
  }

  .linkBox .share {
    white-space: inherit;
  padding-top:12px;
  margin-right: 0;
  margin-top: 0;
  }

  .linkBox .share li.iconTw {
    margin-right: 13px;
  }

}

/*------------------------------------------------------------
    Slick-Slider
------------------------------------------------------------*/
.slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list {
    position: relative;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0;
}

.slick-list:focus {
    outline: none;
}

.slick-list.dragging {
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

.slick-track {
    position: relative;
    top: 0;
    left: 0;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.slick-track:before,
.slick-track:after {
    display: table;
    content: '';
}

.slick-track:after {
    clear: both;
}

.slick-loading .slick-track {
    visibility: hidden;
}

.slick-slide {
    display: none;
    float: left;
    height: 100%;
    min-height: 1px;
}

[dir='rtl'] .slick-slide {
    float: right;
}

.slick-slide.slick-loading img {
    display: none;
}

.slick-slide.dragging img {
    pointer-events: none;
}

.slick-initialized .slick-slide {
    display: block;
}

.slick-loading .slick-slide {
    visibility: hidden;
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
    display: none;
}

/*------------------------------------------------------------
    Page Fade
------------------------------------------------------------*/
#cover {
    position: fixed;
    z-index: 10;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: #fff;
    transition: opacity .8s ease,visibility .8s ease;
}

.hideCover #cover {
    opacity: 0;
    visibility: hidden;
}

/*------------------------------------------------------------
    FadeInAnim
------------------------------------------------------------*/
.fadeInAnim {
    opacity: 0;
    -webkit-transform: translateY(50px);
    transform: translateY(50px);
    -webkit-transition: opacity .8s ease-out, transform .6s ease-out;
    transition: opacity .8s ease-out, transform .6s ease-out;
}

.fadeInAnim.visible {
    opacity: 1;
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
}

/*------------------------------------------------------------
    書式設定
------------------------------------------------------------*/
/* テキストの位置 */
.taLeft { text-align: left !important; }
.taCenter { text-align: center !important; }
.taRight { text-align: right !important; }

/* フォントの大きさ（プラス） */
.fsP1 { font-size: 1.08em !important; }
.fsP2 { font-size: 1.16em !important; }
.fsP3 { font-size: 1.24em !important; }
.fsP4 { font-size: 1.32em !important; }
.fsP5 { font-size: 1.4em !important; }

/* フォントの大きさ（マイナス） */
.fsM1 { font-size: 0.92em !important; }
.fsM2 { font-size: 0.84em !important; }
.fsM3 { font-size: 0.76em !important; }
.fsM4 { font-size: 0.68em !important; }
.fsM5 { font-size: 0.6em !important; }

/* フォントの太さ */
.fwNormal { font-weight: normal !important; }
.fwBold { font-weight: bold !important; }

/*------------------------------------------------------------
    微調整用クラス（※多用しないこと）
------------------------------------------------------------*/
.mt0 { margin-top: 0 !important; }
.mb0 { margin-bottom: 0 !important; }

/*------------------------------------------------------------
    汎用スタイル
------------------------------------------------------------*/
* html .clearfix {
    zoom: 1;
}

*+html .clearfix {
    zoom: 1;
}

.clearfix:after {
    height: 0;
    visibility: hidden;
    content: ".";
    display: block;
    clear: both;
}

.lazy,
.sliderLazy {
  opacity: 0;
  transition: opacity 1s;
}

.lazy.fadeIn,
.sliderLazy.fadeIn {
  opacity: 1;
}

/*------------------------------------------------------------
    common
------------------------------------------------------------*/
/* quality start*/

.baseTitleWrap3 .baseTitle {
    margin-bottom: 8px;
    font-size: 32px;
    letter-spacing: 1px;
}

.aboutTitleWrap .baseTitle {
    font-size: 32px;
    margin-bottom: 34px;
}

.privacyWrap .baseTitleWrap3 .baseprivacyTitle {
    font-size: 32px;
    margin-bottom: 0;
}

.aboutTitleWrap .basesubTitle {
  font-size: 16px;
/*   font-family: "Noto Serif JP"; */
  text-align: center;
  letter-spacing: 1px;
  margin-bottom: 44px;
}

.loaded .fviInner {
  opacity: 1;
}

.fviInner .fadeInAnim {
  -webkit-transform: translateY(0px);
  transform: translateY(0px);
}

.guideWrap {
    padding-top: 150px;
    margin-bottom: 110px;
}

.aboutTitleWrap {
    margin-bottom: 102px;
}

.aboutTitleWrap .baseTitlejp {
    font-size: 36px;
    margin-bottom: 34px;
    font-weight: normal;
    color: #988666;
}

.websiteList li {
    margin-bottom: 66px;
}

.websiteList .priTitle {
    margin-bottom: 23px;
}

.priTitle {
    font-size: 14px;
    font-weight: 500;
    letter-spacing: .5px;
    padding-bottom: 16px;
    border-bottom: 1px solid #000;
}

.websiteList {
    margin: 0 auto;
    max-width: 700px;
}

.prisubTitle {
    font-size: 14px;
    font-weight: 500;
    letter-spacing: .5px;
    padding-bottom: 16px;
}

.guideWrap .clearfix .safe {
    float: right;
    width: 17%;
    padding-top: 10px;
}

.guideWrap .clearfix .priWord {
    float: left;
    width: 80%;
}

.priWord, .privacyItem ul li p {
    font-size: 14px;
    font-weight: 300;
    letter-spacing: .4px;
    line-height: 1.7;
}

/* privacy_policy */

.privacyWrap {
    padding-top: 150px;
    margin-bottom: 110px;
}

.privacyWrap .aboutTitleWrap {
    margin-bottom: 108px;
}

.aboutTitleWrap p {
    font-size: 15px;
    font-weight: 400;
    line-height: 2;
    letter-spacing: .4px;
}

.privacyList {
    max-width: 700px;
    margin: 0 auto 92px;
}

.privacyItem {
    margin-bottom: 72px;
}

.privacyItem ul {
    padding-top: 24px;
}

.privacyItem ul li {
    display: flex;
    margin-bottom: 8px;
    flex-wrap: wrap;
}

.priNum {
    font-size: 14px;
    flex: 0 0 26px;
    line-height: 1.7;
}

.priListNum {
  padding-left: 30px;
}

.priListNumText {
  padding-left: 60px;
}

.priWord a {
  text-decoration: underline;
}

.priWordList {
  padding-left: 26px;
}

.privacyItem .priWord {
    flex: 1;
}

.priWord, .privacyItem ul li p {
    font-size: 14px;
    font-weight: 300;
    letter-spacing: .4px;
    line-height: 1.7;
}

.privacyDate {
    max-width: 700px;
    margin: 0 auto;
    text-align: right;
    font-size: 14px;
    font-weight: 300;
    letter-spacing: .7px;
}
/* website_policy */
.aboutUs, .privacy, .website, .accessory_guide {
    background: #fff;
}

.link02 {
    display: block;
}

.link02 a {
    display: inline-block;
    font-size: 11px;
    color: #666;
    line-height: 1.6;
    letter-spacing: .5px;
    padding-left: 1em;
    text-indent: -1em;
    text-decoration: underline;
    transition: color .5s ease;
}

.guideWrap .clearfix .safe img {
    width: 86px;
}

.baseTitle, .baseTitlejp {
    margin-bottom: 52px;
    font-size: 43px;
    text-align: center;
    letter-spacing: .2px;
}

/* collection */

.baseSelect {
    width: 100px;
    position: relative;
    cursor: pointer;
    overflow: hidden;
}
.baseSelect select {
    -webkit-appearance: menulist-button;
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
    cursor: pointer;
}

.baseSelect p {
    position: relative;
    padding: 4px 0;
    font-size: 17px;
    border-bottom: 1px solid rgba(0,0,0,.5);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: opacity .5s ease;
}

.baseSelect:hover p {
  opacity: .7;
}

.baseSelectEn p {
    padding: 1px 0;
    font-size: 21px;
    letter-spacing: 1px;
}

.baseSelect option {
    font-size: 13px;
}

.colleMenu {
    max-width: 995px;
    margin: 0 auto;
}

.colleMenuLe {
    margin-left: 0;
    width: 261px;
    float: left;
}

.colleMenuTitle {
    font-size: 35px;
    letter-spacing: 1.6px;
    margin-bottom: 16px;
}

.colleMenuList li {
    width: 50%;
    margin-bottom: 19px;
    float: left;
    padding-right: 5px;
    box-sizing: border-box;
}

.colleMenuList li a {
    font-size: 18px;
    letter-spacing: 0.2px;
    white-space: nowrap;
}

.cmSearch {
    position: relative;
	margin-top: 20px;
    margin-bottom: 72px;
}

.iconSearch {
    width: 14px;
    height: 14px;
    display: block;
    fill: #000;
    position: absolute;
    left: 4px;
    top: 6px;
}

.cmSearch input {
    width: 100%;
    font-size: 13px;
    border: none;
    border-bottom: 1px solid #DBC8A8;
    padding: 2px 0 10px 5px;
    text-indent: 25px;
    background: transparent;
}

.colleMenuRi {
    float: right;
    width: 650px;
    padding-top: 2px;
    margin-right: 4px;
}

.cmTitle {
    font-size: 24px;
    letter-spacing: 1px;
    margin-bottom: 31px;
    padding-left: 45px;
}

.cmSliderList {
    position: relative;
}

.cmSliderPic {
    text-align: center;
    margin: 0 28px 18px;
}

/* shop */
.firstView {
    position: relative;
    margin-bottom: 103px;
}

.fviInner {
    width: 100%;
    position: absolute;
    left: 0;
    top: 47.7%;
    transform: translateY(-50%);
    opacity: 0;
    transition: opacity .8s ease-out .4s;
}

.fviInner h2 {
  font-size: 36px;
  color: #ffffff;
  text-align: center;
  letter-spacing: 1px;
}

.fviInner p {
  font-size: 15px;
  color: #988666;
  text-align: center;
  margin-top: -4px;
  letter-spacing: 1px;
}

.fviPic img {
  width: 100%;
}

.cmSliderPic .basePic {
    margin-bottom: 20px;
}

.cmSliderPic .cmSliderTitle {
    font-size: 20px;
    letter-spacing: 0;
}

.cmSliderPic .basePic img {
    width: 100%;
    display: block;
}

.cmPrev {
    position: absolute;
    left: -4px;
    top: 165px;
    transform: rotate(-180deg);
    overflow: hidden;
}

.cmNext {
    position: absolute;
    right: -4px;
    top: 165px;
    overflow: hidden;
}

.cmSliderList .goodsArrow {
    width: 22px;
    height: 24px;
    display: block;
    /* fill: #2a1b14; */
}
.baseSelect p::after {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 5px 0 4px;
    border-color: rgba(0,0,0,.2) transparent transparent transparent;
    position: absolute;
    right: -1px;
    top: 50%;
    content: '';
    transform: translateY(-50%);
}

@media all and (min-width: 0) and (max-width: 767px) {
  .baseTitleWrap {
    margin-bottom: 38px;
  }

  .fviInner h2 {
    font-size: 23px;
  }

  .fviInner p {
    font-size: 13px;
    letter-spacing: .2px;
  }
  
  .baseSelect {
      width: 45%;
      float: left;
  }

  .baseSelect:hover p {
    opacity: 1;
  }

  .baseSelect:nth-child(even) {
      float: right;
  }

  .baseTitleWrap p {
    font-size: 11px;
    letter-spacing: .3px;
  }

  .baseTitle {
    font-size: 50px;
  }

  .linkTo a {
    width: 54px;
    height: 54px;
    font-size: 14px;
    letter-spacing: 0.8px;
  }

  .linkTo a:hover {
    color: #9F0A0A;
  }

  .linkTo a:hover::before {
    background: transparent;
    opacity: .4;
  }

  .linkTo2 a {
    letter-spacing: 1.4px;
  }

  .linkTo2 a:hover {
    color: #999;
  }
  /* website_policy */
  
  .baseTitleWrap3 .baseTitle {
    margin-bottom: 4px;
    font-size: 23px;
    letter-spacing: 1px;
  }
  
  .aboutTitleWrap p {
      font-size: 14px;
      line-height: 1.8;
      letter-spacing: .6px;
      margin: 0 31px;
      text-align: left;
  }
  
  .aboutTitleWrap .baseTitle {
      font-size: 23px;
      margin-bottom: 25px;
  }
  
  .websiteWrap {
      padding-top: 85px;
      margin-bottom: 95px;
  }
  
  .aboutTitleWrap {
      margin-bottom: 64px;
  }

  .guideWrap .aboutTitleWrap {
      margin-bottom: 40px;
  }
  
  .websiteWrap .aboutTitleWrap {
      margin-bottom: 71px;
  }
  
  .websiteList {
      margin: 0 25px;
  }
  
  .websiteList li {
      margin-bottom: 55px;
  }
  
  .priTitle {
      font-size: 13px;
  }
  
  .websiteList .priTitle {
      margin-bottom: 20px;
  }
  
  .priWord, .privacyItem ul li p {
      font-size: 13px;
      letter-spacing: .5px;
      line-height: 1.6;
  }
  
  .link02 {
      padding-top: 5px;
  }
  
  .link02 a {
      line-height: 1.5;
  }
  
  /* privacy_policy */
  .privacyWrap {
      padding-top: 86px;
      margin: 0 auto 96px;
  }
  
  .privacyWrap .aboutTitleWrap {
      margin-bottom: 72px;
  }
  
  .baseTitleWrap3 p {
      font-size: 14px;
      font-weight: 500;
  }
  
  .aboutTitleWrap p {
      font-size: 14px;
      line-height: 1.8;
      letter-spacing: .6px;
      margin: 0 20px;
      text-align: left;
  }
  
  .privacyList {
      margin: 0 20px;
  }
  
  .privacyItem {
      margin-bottom: 54px;
  }
  
  .priTitle {
      font-size: 13px;
  }
  
  .privacyItem ul {
      padding-top: 20px;
  }
  
  .privacyItem ul li {
      margin-bottom: 11px;
  }
  
  .priWord, .privacyItem ul li p {
      font-size: 13px;
      letter-spacing: .5px;
      line-height: 1.6;
  }
  
  .privacyDate {
      font-size: 13px;
      letter-spacing: .6px;
      margin: 40px 23px 0 25px;
  }
  
  /* quality */
  
  .guideWrap {
      padding-top: 85px;
      margin-bottom: 95px;
  }
  
  .aboutTitleWrap .baseTitlejp {
      font-size: 27px;
  }
  
  .prisubTitle {
      font-size: 13px;
  }
  
  .guideWrap .clearfix .safe {
      float: none;
      width: 100%;
      text-align: center;
      margin-bottom: 20px;
      padding-top: 0;
  }
  
  .guideWrap .clearfix .priWord {
      float: none;
      width: 100%;
  }
  
  .priWord, .privacyItem ul li p {
      font-size: 13px;
      letter-spacing: .5px;
      line-height: 1.6;
  }

}

/*------------------------------------------------------------
    newCommon
------------------------------------------------------------*/
.baseTitWrap {
  text-align: center;
  margin-bottom: 52px;
}

.baseTit {
  font-size: 28px;
  color: #988666;
  margin-bottom: -5px;
}

.baseTitWrap p {
  color: #9F0A0A;
  font-size: 12px;
  letter-spacing: .4px;
}

.linkMore {
  display: flex;
  justify-content: center;
}

.linkMore .linkMoreCon {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 66px;
  height: 66px;
  font-size: 16px;
  font-style: italic;
  color: #9F0A0A;
  position: relative;
  transition: color .5s ease;
  letter-spacing: 1.8px;
}

.linkMore .linkMoreCon span {
  position: relative;
}

.linkMore .linkMoreCon:hover {
  color: #fff;
  opacity: 1;
}

.linkMore .linkMoreCon:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  opacity: .4;
  box-sizing: border-box;
  overflow: hidden;
  border: 1px solid #9F0A0A;
  border-radius: 50%;
  background: transparent;
  transition: opacity.5s ease,background .5s ease,color .5s ease;
}

.linkMore .linkMoreCon:hover:before {
  background: #9F0A0A;
  opacity: 1;
}

.linkMore2 a {
  font-size: 15px;
  font-style: italic;
  color: #988666;
  position: relative;
  transition: opacity .5s ease;
  letter-spacing: 1.8px;
}

.linkMore2 a:hover {
  opacity: .7;
}

.basePrev,
.baseNext {
  width: 16px;
  height: 31px;
  display: block;
  overflow: hidden;
}

.basePrev svg,
.baseNext svg {
  width: 100%;
  height: 100%;
  display: block;
  fill: #988666;
}

.basePrev {
  transform: rotate(-180deg);
}

@media all and (min-width: 0) and (max-width: 767px) {
  .baseTitWrap {
    margin-bottom: 38px;
  }

  .baseTitWrap p {
    font-size: 11px;
    letter-spacing: .3px;
  }

  .baseTit {
    font-size: 23px;
  }

  .linkMore .linkMoreCon {
    width: 54px;
    height: 54px;
    font-size: 14px;
    letter-spacing: 0.8px;
  }

  .linkMore .linkMoreCon:hover {
    color: #9F0A0A;
  }

  .linkMore .linkMoreCon:hover::before {
    background: transparent;
    opacity: .4;
  }

  .linkMore2 a {
    letter-spacing: 1.4px;
  }

  .linkMore2 a:hover {
    opacity: 1;
  }

}

/*Instagram Section*/
.coordList .baseTit {
  letter-spacing: 1.2px;
  transition: color .5s ease,opacity.5s ease;
}

.coordList {
  margin: 0 auto 132px;
  max-width: 1270px;
  position: relative;
  overflow: hidden;
}

.coordList > span {
  display: block;
  width: 100%;
}

.coordList img {
  width: 100%;
  display: block;
  transition: opacity 1s ease;
}

.coordList img:hover {
  opacity: .7;
}

.coordList ul {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

.coordList li {
  width: 16.8%;
  position: absolute;
  padding: 0 10px 10px 0;
  box-sizing: border-box;
}

.coordList li:nth-child(1) {
  width: 33.6%;
  left: 0;
  top: 0;
}

.coordList li:nth-child(2) {
  left: 33.6%;;
  top: 0;
}

.coordList li:nth-child(3) {
  left: 50.4%;
  top: 0;
}

.coordList li:nth-child(4) {
  left: 67.1%;
  top: 0;
}

.coordList li:nth-child(5) {
  left: 83.9%;
  top: 0;
}

.coordList li:nth-child(6) {
  left: 33.6%;
  top: 33.9%;
}

.coordList li:nth-child(7) {
  left: 0;
  top: 67.6%;
}

.coordList li:nth-child(8) {
  left: 16.8%;
  top: 67.6%;
}

.coordList li:nth-child(9) {
  left: 33.6%;
  top: 67.6%;
}

.coordList li:nth-child(10) {
  width: 33.5%;
  left: 50.4%;
  top: 33.9%;
}

.coordList li:nth-child(11) {
  left: 83.9%;
  top: 33.9%;
}

.coordImgLink {
  position: absolute;
  left: 83.9%;
  width: calc(16.8% - 10px);
  top: 67.6%;
}

.coordImgText {
  position: absolute;
  left: 33.6%;
  top: 0;
}

.coordTextBox {
  position: absolute;
  left: 33.6%;
  top: 0;
  width: 33.6%;
}

.coordTextBox > span {
  display: block;
  width: 100%;
}

.coordImgText {
  position: absolute;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
  padding-right: 10px;
}

.coordImgText a {
  display: block;
  text-align: center;
  margin-top: -28px;
  margin-left: -14px;
}

.coordImgText a div {
  padding-top: 4px;
}

.coordImgText div span {
  display: inline-block;
  font-size: 12px;
  color: #9F0A0A;
  margin: 0 8px;
  opacity: 1;
  letter-spacing: .3px;
  transition: color .5s ease,opacity .5s ease;
}

.coordLink {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #9F0A0A;
  color: #DBBA6F;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 500;
}

.coordLink .coordIns {
  width: 26px;
  height: 27px;
  fill: #DBBA6F;
  margin: 0 auto;
  display: block;
}

.coordLink > span {
  margin-top: -9px;
}

.coordLink span span {
  display: block;
  text-align: center;
  margin-top: 10px;
  letter-spacing: .6px;
  color: #DBBA6F;
  font-size: 12px;
  font-weight: 500;
  transition: opacity .5s ease;
}

.coordLink:hover span span {
  color: #DBBA6F;
  opacity: .7;
}

.coordImgText a:hover .baseTit,
.coordImgText a:hover div span {
  opacity: .7;
}

.priTextWord {
  padding-left: 60px;
}

@media all and (min-width: 0) and (max-width: 767px) {
  .coordList {
    margin: 0 25px 94px;
    display: block;
  }

  .coordList .baseTit {
    margin-bottom: -5px;
  }
  
  .coordList img:hover {
    opacity: 1;
  }

  .coordImgText a div {
    padding-top: 0;
  }

  .coordLink > span {
    margin-top: 6px;
  }

  .coordLink span span {
    margin-top: 11px;
  }

  .coordLink:hover span span {
    opacity: 1;
  }

  .coordList li {
    width: calc(50% - 5px);
    padding-right: 0;
  }

  .coordList li:nth-child(5),
  .coordList li:nth-child(6),
  .coordList li:nth-child(7),
  .coordList li:nth-child(8),
  .coordList li:nth-child(9) {
    display: none;
  }

  .coordList li:nth-child(1) {
    width: 100%;
    padding: 0;
    top: 15%;
  }

  .coordList li:nth-child(2) {
    left: 0;
    top: 59%;
  }

  .coordList li:nth-child(3) {
    left: auto;
    right: 0;
    top: 59%;
  }

  .coordList li:nth-child(4) {
    left: 0;
    top: 80.2%;
  }

  .coordTextBox {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
  }

  .coordImgText {
    padding-right: 0;
  }

  .coordImgText a {
    margin: -10px 0 0;
  }

  .coordImgLink {
    left: auto;
    width: calc(50% - 5px);
    top: 80.2%;
    right: 0;
  }

  .coordImgText a:hover .baseTit {
    color: #988666;
    opacity: 1;
  }

  .coordImgText a:hover div span {
    color: #9F0A0A;
    opacity: 1;
  }

  .coordLink:hover {
    color: #DBBA6F;
    opacity: 1;
  }

  .priTextWord {
    padding-left: 0px;
  }

}

.agnote {
    display: block;
    font-size: 11px;
    color: #666;
    line-height: 1.6;
    letter-spacing: .5px;
    padding-left: 1em;
    text-indent: -1em;
}
.cookieBtn a{
	display: inline-block;
    width: 40%;
    padding: 17px 20px;
    min-width: 200px;
    background: #fff;
    font-size: 15px;
    line-height: 1.2;
    transition: all .5s ease;
    text-align: center;
    color: #333333;
    border: 1px solid #000;
}


@media screen and (max-width:767px) {
  #gFooter .logo-link-wrap .logoLink {
    margin: 0 30px;
    width: 100%;
    max-width: 310px;
  }
  #gFooter .logo-link-wrap .logoLink .logoAg {
    left: auto;
    margin-right: 30px;
  }
}


/*------------------------------------------------------------
    braze
------------------------------------------------------------*/

.ab-feed.ab-effect-slide.ab-show {
	background: rgba(238,238,238,.95);
}
.ab-feed .ab-feed-buttons-wrapper {
  background-color: #9d844b !important;
}
@media only screen and (max-width: 600px){
	body>.ab-feed {
		width: 80% !important;
	}
}

#braze_show {
  position: fixed;
  bottom: 20px;
  right: 20px;
  background: none;
  z-index: 999;
}

body.modal--show #braze_show,
.sp-menu--show #braze_show 
{
  z-index: 99;
}

/*
@media all and (min-width: 0) and (max-width: 767px) {
  #braze_show {
    bottom: 60px;
  }
}
*/

#braze_show.is-active {
  animation: braze_animation 3.5s infinite;
  animation-iteration-count: 3;
  animation-delay: 30s;
}
#braze_show div {
  position: relative;
  border: solid 1px white;
  background: #988666;
  background-image: url("../img/icon/ico-mail.png");
  background-repeat: no-repeat;
  background-size: 28px;
  background-position: center center;
  border-radius: 100%;
  width: 60px;
  height: 60px;
}
#braze_show div span.parent {
  position: absolute;
  width: 25px;
  height: 25px;
  background: #ffffff;
  border: 1px solid #988666;
  border-radius: 50%;
  top: -7px;
  right: -9px;
  display: none;
}
#braze_show div.is-active span.parent{
  display: block;
}
#braze_show div span.number {
  position: relative;
  width: 100%;
  height: 100%;
  display: inline-block;
}
#braze_show div span.number span{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  color: #988666;
  font-size: 10px;
  font-weight: bold;
}
@keyframes braze_animation {
  0% {  transform: translate(0, 0);}
  5% {  transform: translate(-5px, -0);}
  7% { transform: translate(5px, 0);}
  9% { transform: translate(-5px, -0);}
  11% { transform: translate(5px, 0);}
  13% { transform: translate(-5px, -0);}
  15% { transform: translate(0, 0);}
  100% {  transform: translate(0, 0);}
}
@media (max-width: 767px) {
  #braze_show {
  position: fixed !important;
  right: 16px !important;
  bottom: 60px !important;
  z-index: 10002 !important;
  }
}