@charset "utf-8";

/*--------------------------------------------------------------------
	font
--------------------------------------------------------------------*/

.textVertical {
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -o-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
}

.textShadow01 {
  text-shadow: 0 0 10px #000;
}

.textShadow02 {
  text-shadow: 0 0 10px #FFF;
}

@media screen and (min-width: 1251px) {
  .textShadowVisual01 {
    color: #000;
    text-shadow: 0 0 10px #FFF, 0 0 10px #FFF, 0 0 10px #FFF, 0 0 10px #FFF, 0 0 10px #FFF;
  }
}

@media screen and (max-width: 1250px) {
  .textShadowVisual01 {
    color: #FFF;
    text-shadow: 0 0 10px #000, 0 0 10px #000, 0 0 10px #000, 0 0 10px #000, 0 0 10px #000;
  }
}


/*--------------------------------------------------------------------
	font color
--------------------------------------------------------------------*/

.fcWhite {
  color: #FFF !important;
}

.fcWhite a {
  text-decoration: none;
  color: #FFF;
}

.fcWhite a:link {
  text-decoration: none;
  color: #FFF;
}

.fcWhite a:visited {
  text-decoration: none;
  color: #FFF;
}

.fcWhite a:hover {
  text-decoration: underline;
  color: #FFF;
}

.fcWhite a:active {
  text-decoration: underline;
  color: #FFF;
}

.fcBlack {
  color: #333 !important;
}

.fcBlack a {
  text-decoration: none;
  color: #333;
}

.fcBlack a:link {
  text-decoration: none;
  color: #333;
}

.fcBlack a:visited {
  text-decoration: none;
  color: #333;
}

.fcBlack a:hover {
  text-decoration: underline;
  color: #333;
}

.fcBlack a:active {
  text-decoration: underline;
  color: #333;
}

.fcGray01 {
  color: #999 !important;
}

.fcGray01 a {
  text-decoration: none;
  color: #999;
}

.fcGray01 a:link {
  text-decoration: none;
  color: #999;
}

.fcGray01 a:visited {
  text-decoration: none;
  color: #999;
}

.fcGray01 a:hover {
  text-decoration: underline;
  color: #999;
}

.fcGray01 a:active {
  text-decoration: underline;
  color: #999;
}

.fcGray02 {
  color: #646464 !important;
}

.fcGray02 a {
  text-decoration: none;
  color: #646464;
}

.fcGray02 a:link {
  text-decoration: none;
  color: #646464;
}

.fcGray02 a:visited {
  text-decoration: none;
  color: #646464;
}

.fcGray02 a:hover {
  text-decoration: underline;
  color: #646464;
}

.fcGray02 a:active {
  text-decoration: underline;
  color: #646464;
}

.fcRed01 {
  color: #952336 !important;
}

.fcRed01 a {
  text-decoration: none;
  color: #952336;
}

.fcRed01 a:link {
  text-decoration: none;
  color: #952336;
}

.fcRed01 a:visited {
  text-decoration: none;
  color: #952336;
}

.fcRed01 a:hover {
  text-decoration: underline;
  color: #952336;
}

.fcRed01 a:active {
  text-decoration: underline;
  color: #952336;
}

.fcRed02 {
  color: #b34956 !important;
}

.fcRed02 a {
  text-decoration: none;
  color: #b34956;
}

.fcRed02 a:link {
  text-decoration: none;
  color: #b34956;
}

.fcRed02 a:visited {
  text-decoration: none;
  color: #b34956;
}

.fcRed02 a:hover {
  text-decoration: underline;
  color: #b34956;
}

.fcRed02 a:active {
  text-decoration: underline;
  color: #b34956;
}

.fcDarkRed01 {
  color: #ad7326 !important;
}

.fcDarkRed01 a {
  text-decoration: none;
  color: #ad7326;
}

.fcDarkRed01 a:link {
  text-decoration: none;
  color: #ad7326;
}

.fcDarkRed01 a:visited {
  text-decoration: none;
  color: #ad7326;
}

.fcDarkRed01 a:hover {
  text-decoration: underline;
  color: #ad7326;
}

.fcDarkRed01 a:active {
  text-decoration: underline;
  color: #ad7326;
}

.fcOrange01 {
  color: #e49412 !important;
}

.fcOrange01 a {
  text-decoration: none;
  color: #e49412;
}

.fcOrange01 a:link {
  text-decoration: none;
  color: #e49412;
}

.fcOrange01 a:visited {
  text-decoration: none;
  color: #e49412;
}

.fcOrange01 a:hover {
  text-decoration: underline;
  color: #e49412;
}

.fcOrange01 a:active {
  text-decoration: underline;
  color: #e49412;
}

.fcYellow01 {
  color: #6E520F !important;
}

.fcYellow01 a {
  text-decoration: none;
  color: #6E520F;
}

.fcYellow01 a:link {
  text-decoration: none;
  color: #6E520F;
}

.fcYellow01 a:visited {
  text-decoration: none;
  color: #6E520F;
}

.fcYellow01 a:hover {
  text-decoration: underline;
  color: #6E520F;
}

.fcYellow01 a:active {
  text-decoration: underline;
  color: #6E520F;
}

.fcBrown01 {
  color: #fff3c4 !important;
}

.fcBrown01 a {
  text-decoration: none;
  color: #fff3c4;
}

.fcBrown01 a:link {
  text-decoration: none;
  color: #fff3c4;
}

.fcBrown01 a:visited {
  text-decoration: none;
  color: #fff3c4;
}

.fcBrown01 a:hover {
  text-decoration: underline;
  color: #fff3c4;
}

.fcBrown01 a:active {
  text-decoration: underline;
  color: #fff3c4;
}

.fcBrown02 {
  color: #4a2512 !important;
}

.fcBrown02 a {
  text-decoration: none;
  color: #4a2512;
}

.fcBrown02 a:link {
  text-decoration: none;
  color: #4a2512;
}

.fcBrown02 a:visited {
  text-decoration: none;
  color: #4a2512;
}

.fcBrown02 a:hover {
  text-decoration: underline;
  color: #4a2512;
}

.fcBrown02 a:active {
  text-decoration: underline;
  color: #4a2512;
}

.fcGreen01 {
  color: #53AF80 !important;
}

.fcGreen01 a {
  text-decoration: none;
  color: #53AF80;
}

.fcGreen01 a:link {
  text-decoration: none;
  color: #53AF80;
}

.fcGreen01 a:visited {
  text-decoration: none;
  color: #53AF80;
}

.fcGreen01 a:hover {
  text-decoration: underline;
  color: #53AF80;
}

.fcGreen01 a:active {
  text-decoration: underline;
  color: #53AF80;
}

.fcGreen02 {
  color: #96CA8C !important;
}

.fcGreen02 a {
  text-decoration: none;
  color: #96CA8C;
}

.fcGreen02 a:link {
  text-decoration: none;
  color: #96CA8C;
}

.fcGreen02 a:visited {
  text-decoration: none;
  color: #96CA8C;
}

.fcGreen02 a:hover {
  text-decoration: underline;
  color: #96CA8C;
}

.fcGreen02 a:active {
  text-decoration: underline;
  color: #96CA8C;
}

.fcBlue01 {
  color: #6ec0e5 !important;
}

.fcBlue01 a {
  text-decoration: none;
  color: #6ec0e5;
}

.fcBlue01 a:link {
  text-decoration: none;
  color: #6ec0e5;
}

.fcBlue01 a:visited {
  text-decoration: none;
  color: #6ec0e5;
}

.fcBlue01 a:hover {
  text-decoration: underline;
  color: #6ec0e5;
}

.fcBlue01 a:active {
  text-decoration: underline;
  color: #6ec0e5;
}

.fcNavy01 {
  color: #33405a !important;
}

.fcNavy01 a {
  text-decoration: none;
  color: #33405a;
}

.fcNavy01 a:link {
  text-decoration: none;
  color: #33405a;
}

.fcNavy01 a:visited {
  text-decoration: none;
  color: #33405a;
}

.fcNavy01 a:hover {
  text-decoration: underline;
  color: #33405a;
}

.fcNavy01 a:active {
  text-decoration: underline;
  color: #33405a;
}


.gold-heading {
  display: inline-block;

  background: linear-gradient(
    175deg,
    #8C6A1C 0%,     /* やや深いブロンズ */
    #C49A3A 20%,    /* 黄味を抑えたゴールド */
    #E8D79A 38%,    /* 旧FFF4C1より少し濃い */
    #D4AF37 50%,    /* 中央ゴールド */
    #A67C2E 65%,    /* ブロンズ寄りシャドウ */
    #B88A2A 80%,    
    #6E520F 100%
  );

  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  text-shadow: 0 1px 1px rgba(0,0,0,0.15);
}

/*--------------------------------------------------------------------
	bg color
--------------------------------------------------------------------*/

.bgWhite {
  background-color: #FFF !important;
}

.bgGray01 {
  background-color: #F3F3F3 !important;
}

.bgGray02 {
  background-color: #F7F5F1 !important;
}

.bgGray03 {
  background-color: #292725 !important;
}

.bgGray04 {
  background-color: #6A6965 !important;
}

.bgBlue01 {
  background-color: #C7E4E2 !important;
}

.bgGreen01 {
  background-color: #53AF80 !important;
}

.bgGreen02 {
  background-color: #FFFCEB !important;
}

.bgRed01 {
  background-color: #BB3C2B !important;
}

.bgRed02 {
  background-color: #CC0000 !important;
}

.bgYellow01 {
  background-color: #F5F1E8 !important;
}

.bgNavy01 {
  background-color: #192F60 !important;
}

.bgBrown01 {
  background-color: #4a2512 !important;
}


/* .bgTexture01 {
  background: url('../../f-all/illust_a.png') no-repeat;
  background-position: calc(50% + -50px) calc(50% + -30px);
}

.bgTexture02 {
  background: url('../../f-all/illust_b.png') no-repeat;
  background-position: calc(50% + 500px) calc(50% + -170px);
} */



#charm #point01 {
  background: url('../../f-all/bg_image01.avif') left bottom no-repeat;
}

#charm #point02 {
  background: url('../../f-all/bg_image02.avif') right bottom no-repeat;
}

#charm #point03 {
  background: url('../../f-all/bg_image03.avif') left bottom no-repeat;
}




/* .bgCommon02 {
  background: url('../../f-all/bg_illust02.avif') left bottom no-repeat;
}

.bgCommon03 {
  background: url('../../f-all/bg_illust03.avif') right bottom no-repeat;
}

.bgOpacity01 {
  background-color: #4a251215;
} */

.bg-bottom-fade {
  background:
    linear-gradient(
      to bottom,
      #ffffff 0%,
      #ffffff 70%,
      rgba(255, 255, 255, 0) 100%
    ),
    url("bg01.avif");

  background-repeat: no-repeat, repeat-x;
  background-position: top left, bottom left;
  background-size: 100% 100%, auto;
}

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

#charm #point01,
#charm #point02,
#charm #point03 { 
  background-size: contain;
  background-position: center center;
 }

.bgCommon01,
.bgCommon02,
.bgCommon03 { background-size: contain; }

}

/*--------------------------------------------------------------------
	border
--------------------------------------------------------------------*/

.borderCommon01 {
  border: 1px solid #DDD;
}

.borderRed01 {
  border: 1px solid #b34956;
}

.borderWhite01 {
  border: 1px solid #FFF;
}

.borderBrown01 {
  border: 1px solid #4a2512;
}

.borderCommon03 {
  border: 1px solid #333;
}

.borderCommon04 {
  border: 5px solid #ffffff;
}

.borderGray01 {
  border-color: #DDD;
}

.borderDouble {
  border: 1px solid #534e49;
  outline: 1px solid #534e49;
  outline-offset: 3px;
}

.borderBottom {
  border-bottom: 1px solid #666666;
  margin-bottom: .2em;
  padding-bottom: .2em;
}

.borderBottom2 {
  border-bottom: 1px solid #cccccc;
  padding-bottom: 3em;
}

/*--------------------------------------------------------------------
	size
--------------------------------------------------------------------*/

@media screen and (min-width: 1251px) {
  [class*="sizeCommon"] {
    line-height: 1.8;
  }

  .sizeCommon01 {
    font-size: 1.6rem;
  }

  .sizeCommon02 {
    font-size: 1.0rem;
  }

  .sizeCommon03 {
    font-size: 1.2rem;
  }

  .sizeCommon04 {
    font-size: 2.2rem;
  }

  .sizeCommon05 {
    font-size: 4.0rem;
  }

  .sizeCommon06 {
    font-size: 0.9rem;
  }
}

@media screen and (max-width: 1250px) and (min-width: 768px) {
  [class*="sizeCommon"] {
    line-height: 1.6;
  }

  .sizeCommon01 {
    font-size: 1.5rem;
  }

  .sizeCommon02 {
    font-size: 1.0rem;
  }

  .sizeCommon03 {
    font-size: 1.2rem;
  }

  .sizeCommon04 {
    font-size: 1.8rem;
  }

  .sizeCommon05 {
    font-size: 3.0rem;
  }

  .sizeCommon06 {
    font-size: 0.85rem;
  }
}

@media screen and (max-width: 767px) {
  [class*="sizeCommon"] {
    line-height: 1.6;
  }

  .sizeCommon01 {
    font-size: 1rem;
  }

  .sizeCommon02 {
    font-size: 0.9rem;
  }

  .sizeCommon03 {
    font-size: 1.1rem;
  }

  .sizeCommon04 {
    font-size: 1.5rem;
  }

  .sizeCommon05 {
    font-size: 2.4rem;
  }

  .sizeCommon06 {
    font-size: 0.8rem;
  }
}


/*--------------------------------------------------------------------
	padding
--------------------------------------------------------------------*/

@media screen and (min-width: 1251px) {
  .paddingCommon30A {
    padding: 30px;
  }

  .paddingCommon20A {
    padding: 20px;
  }

  .paddingCommon20B {
    padding: 40px 20px;
  }

  .paddingCommon15A {
    padding: 15px;
  }

  .paddingCommon15B {
    padding: 10px 15px;
  }

  .paddingCommon10A {
    padding: 10px;
  }

  .paddingCommon05A {
    padding: 5px;
  }
}

@media screen and (max-width: 1250px) and (min-width: 768px) {
  .paddingCommon30A {
    padding: 25px;
  }

  .paddingCommon20A {
    padding: 15px;
  }

  .paddingCommon20B {
    padding: 30px 15px;
  }

  .paddingCommon15A {
    padding: 15px;
  }

  .paddingCommon15B {
    padding: 10px 15px;
  }

  .paddingCommon10A {
    padding: 10px;
  }

  .paddingCommon05A {
    padding: 5px;
  }
}

@media screen and (max-width: 767px) {
  .paddingCommon30A {
    padding: 15px;
  }

  .paddingCommon20A {
    padding: 10px;
  }

  .paddingCommon20B {
    padding: 20px 10px;
  }

  .paddingCommon15A {
    padding: 10px;
  }

  .paddingCommon15B {
    padding: 5px 10px;
  }

  .paddingCommon10A {
    padding: 10px;
  }

  .paddingCommon05A {
    padding: 5px;
  }
}


/*--------------------------------------------------------------------
	space
--------------------------------------------------------------------*/

@media screen and (min-width: 1251px) {
  .spaceCommonA80 {
    margin-bottom: 80px;
  }

  .spaceCommonA50 {
    margin-bottom: 50px;
  }

  .spaceCommonA40 {
    margin-bottom: 40px;
  }

  .spaceCommonA30 {
    margin-bottom: 30px;
  }

  .spaceCommonA20 {
    margin-bottom: 20px;
  }

  .spaceCommonA15 {
    margin-bottom: 15px;
  }

  .spaceCommonB50 {
    margin-bottom: 50px;
  }

  .spaceCommonB40 {
    margin-bottom: 40px;
  }

  .spaceCommonB30 {
    margin-bottom: 30px;
  }

  .spaceCommonB20 {
    margin-bottom: 20px;
  }

  .spaceCommonB15 {
    margin-bottom: 15px;
  }
}

@media screen and (max-width: 1250px) and (min-width: 768px) {
  .spaceCommonA80 {
    margin-bottom: 70px;
  }

  .spaceCommonA50 {
    margin-bottom: 40px;
  }

  .spaceCommonA40 {
    margin-bottom: 30px;
  }

  .spaceCommonA30 {
    margin-bottom: 20px;
  }

  .spaceCommonA20 {
    margin-bottom: 15px;
  }

  .spaceCommonA15 {
    margin-bottom: 10px;
  }

  .spaceCommonB50 {
    margin-bottom: 40px;
  }

  .spaceCommonB40 {
    margin-bottom: 30px;
  }

  .spaceCommonB30 {
    margin-bottom: 20px;
  }

  .spaceCommonB20 {
    margin-bottom: 15px;
  }

  .spaceCommonB15 {
    margin-bottom: 10px;
  }
}

@media screen and (max-width: 767px) {
  .spaceCommonA80 {
    margin-bottom: 50px;
  }

  .spaceCommonA50 {
    margin-bottom: 25px;
  }

  .spaceCommonA40 {
    margin-bottom: 20px;
  }

  .spaceCommonA30 {
    margin-bottom: 15px;
  }

  .spaceCommonA20 {
    margin-bottom: 10px;
  }

  .spaceCommonA15 {
    margin-bottom: 7px;
  }

  .spaceCommonB50 {
    margin-bottom: 0;
  }

  .spaceCommonB40 {
    margin-bottom: 0;
  }

  .spaceCommonB30 {
    margin-bottom: 0;
  }

  .spaceCommonB20 {
    margin-bottom: 0;
  }

  .spaceCommonB15 {
    margin-bottom: 0;
  }
}


/*--------------------------------------------------------------------
	structure
--------------------------------------------------------------------*/

.structureCommonA05>*:nth-child(n+2),
.structureCommonA05>li:nth-child(n+2) {
  margin-top: 5px;
}

.structureCommonA10>*:nth-child(n+2),
.structureCommonA10>li:nth-child(n+2) {
  margin-top: 10px;
}

.structureCommon01>*.noPadding,
.structureCommon01Box.noPadding,
.structureCommon01a>*.noPadding,
.structureCommon01aBox.noPadding {
  padding: 0;
}

.structureCommon01>*.noPaddingBottom,
.structureCommon01Box.noPaddingBottom,
.structureCommon01a>*.noPaddingBottom,
.structureCommon01aBox.noPaddingBottom {
  padding: 0;
}

.structureCommon01>*.miniPadding,
.structureCommon01Box.miniPadding,
.structureCommon01a>*.miniPadding,
.structureCommon01aBox.miniPadding {
  padding: 30px 0;
}

@media screen and (min-width: 1251px) {

  .structureCommon01>*,
  .structureCommon01Box,
  .structureCommon01a>*,
  .structureCommon01aBox {
    padding: 60px 0;
  }

  .structureCommon02>*,
  .structureCommon02Box {
    padding: 40px 0;
  }

  .structureCommon01>*.typeA:before,
  .structureCommon01>*.typeA:after {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    width: 565px;
    height: 416px;
    background-repeat: no-repeat;
    background-position: center center;
  }

  .structureCommon01>*.typeA:before {
    background-image: url('../../f-all/leaf01_left.png');
    left: calc(50% - 900px);
  }

  .structureCommon01>*.typeA:after {
    background-image: url('../../f-all/leaf01_right.png');
    right: calc(50% - 900px);
  }
}

@media screen and (max-width: 1250px) and (min-width: 768px) {

  .structureCommon01>*,
  .structureCommon01Box,
  .structureCommon01a>*,
  .structureCommon01aBox {
    padding: 50px 0;
  }

  .structureCommon02>*,
  .structureCommon02Box {
    padding: 30px 0;
  }
}

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

  .structureCommon01>*,
  .structureCommon01Box,
  .structureCommon01a>*,
  .structureCommon01aBox {
    padding: 50px 0;
  }

  .structureCommon02>*,
  .structureCommon02Box {
    padding: 20px 0;
  }
}

/*----------------
	marker
----------------*/

.marker01.typeYellow {
  background: linear-gradient(transparent 70%, #E8D79A 70%);
}

/*--------------------------------------------------------------------
	title
--------------------------------------------------------------------*/

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

.titleCommon01 {
  line-height: 1.4;
  padding: 0 10px;
}

.titleCommon01>*:nth-child(1) {
  padding-right: 15px;
  width: 52px;
}

h2 {
  letter-spacing: .15em;
}

h3 {
  font-weight: bold;
  text-align: left;
  border-bottom: 1px solid #333;
}

h3::after {
  content: url(../../f-all/icon02.png);
  vertical-align: middle;
  padding-left: 10px;
}


.titleCommon01>*:first-child {
  letter-spacing: 3px;
}

.titleCommon02>.text {
  border-bottom: 1px dotted #333;
  padding: 0 10px 10px;
  font-weight: bold;
}

@media screen and (min-width: 1251px) {

  h2 {
    font-size: 1.65em;
  }

  h3 {
    font-size: 1.45em;
  }

  .titleCommon01>*:nth-child(2) {
    font-size: 2.0rem;
  }

  .titleCommon02 {
    font-size: 1.2rem;
  }

  .titleCommon02>.icon {
    width: 76px;
  }
}

@media screen and (min-width: 768px) and (max-width: 1250px) {

  h2 {
    font-size: 1.15em;
  }

  h3 {
    font-size: 1.15em;
  }

  .titleCommon01>h2 {
    padding-bottom: 40px;
    background-size: 300px 24px;
  }

  .titleCommon01>*:nth-child(2) {
    font-size: 1.5rem;
  }

  .titleCommon02 {
    font-size: 1.3rem;
  }

  .titleCommon02>.icon {
    width: 50px;
  }
}

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

  h2 {
    font-size: 1em;
  }

  h3 {
    font-size: 1em;
  }

  .titleCommon01>h2 {
    padding-bottom: 30px;
    background-size: 250px 20px;
  }

  .titleCommon01>*:nth-child(2) {
    font-size: 1.3rem;
  }

  .titleCommon02 {
    font-size: 1.2rem;
  }

  .titleCommon02>.icon {
    width: 30px;
  }
}


/*--------------------------------------------------------------------
	flex img
--------------------------------------------------------------------*/

.flexImgCommon01 {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}

.flexImgCommon01.typeA {
  border-radius: 5px;
  overflow: hidden;
}

.imgCover {
  width: 100%;
  height: 100%;
  object-fit: cover;
}


/*--------------------------------------------------------------------
	radius
--------------------------------------------------------------------*/

.radius05 {
  border-radius: 5px;
  overflow: hidden;
}

.radius10 {
  border-radius: 10px;
  overflow: hidden;
}

.radius50p {
  border-radius: 50%;
  overflow: hidden;
}


/*--------------------------------------------------------------------
	icon
--------------------------------------------------------------------*/

.iconCommon01 {
  border-radius: 50%;
  text-align: center;
  z-index: 2;
}

.iconCommon01.typeA {
  width: 60px;
  height: 60px;
  font-size: 1.3rem;
  position: absolute;
}

.iconCommon01.colorA {
  background-color: #98621d;
  color: #FFF;
}

.iconNew01 {
  position: absolute;
  left: 5%;
  bottom: 7%;
  max-width: 30%;
}

@media screen and (min-width: 1251px) {
  .iconCommon01.typeA {
    top: -20px;
    left: -20px;
  }
}

@media screen and (min-width: 768px) and (max-width: 1250px) {
  .iconCommon01.typeA {
    top: -15px;
    left: -15px;
  }
}

@media screen and (max-width: 767px) {
  .iconCommon01.typeA {
    top: -15px;
    left: -15px;
  }
}


/*--------------------------------------------------------------------
	chapter
--------------------------------------------------------------------*/

.chapterCommon01>p:nth-child(2) {
  text-align: center;
  line-height: 1.4em;
}

@media screen and (min-width: 1251px) {
  .chapterCommon01 {
    font-size: 1.4rem;
  }
}

@media screen and (min-width: 768px) and (max-width: 1250px) {
  .chapterCommon01 {
    font-size: 1.3rem;
  }
}

@media screen and (max-width: 767px) {
  .chapterCommon01 {
    font-size: 1.2rem;
  }
}


/*--------------------------------------------------------------------
	hr
--------------------------------------------------------------------*/

.hrCommon01 {
  display: block;
  height: 1px;
  border: 0;
  margin: 0 auto;
  padding: 0;
}

.hrGray01 {
  border-top: 1px solid #999;
}

.hrNavy01 {
  border-top: 1px solid #DF5E00;
}


/*--------------------------------------------------------------------
	img
--------------------------------------------------------------------*/

.imgCommon01 {
  padding: 2px;
  background-color: #3b5700;
}


/*--------------------------------------------------------------------
	box
--------------------------------------------------------------------*/

.boxCommon01 {
  border-radius: 5px;
}

.boxShadow01 {
  box-shadow: 1px 1px 10px rgba(10, 0, 0, 0.2);
}

.boxTape01:before,
.boxTape01:after {
  content: "";
  position: absolute;
  top: -10px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 224px;
  height: 138px;
  z-index: 2;
}

.boxTape01:before {
  background-image: url('../../f-all/tape01_left.png');
  left: -10px;
}

.boxTape01:after {
  background-image: url('../../f-all/tape01_right.png');
  right: -10px;
}

@media screen and (min-width: 1251px) {
  .boxTape01 {
    padding: 50px 40px;
  }
}

@media screen and (min-width: 768px) and (max-width: 1250px) {
  .boxTape01 {
    padding: 40px 30px;
  }

  .boxTape01:before,
  .boxTape01:after {
    width: 150px;
    height: 92px;
  }
}

@media screen and (max-width: 767px) {
  .boxTape01 {
    padding: 40px 15px;
  }

  .boxTape01:before,
  .boxTape01:after {
    width: 80px;
    height: 49px;
  }
}


/*--------------------------------------------------------------------
	movie
--------------------------------------------------------------------*/

.movieCommon01 {
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}

.movieCommon01 iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  vertical-align: bottom;
}


/*--------------------------------------------------------------------
	table
--------------------------------------------------------------------*/

.tableCommon01 {
  border-collapse: collapse;
}

.tableCommon01 th,
.tableCommon01 td {
  padding: 10px;
  border: 1px solid #98621d;
  vertical-align: middle;
  font-weight: normal;
  text-align: left;
}

.tableCommon01 th {
  text-align: center;
  background-color: #FFFCEB;
}

.tableCommon01 td {
  background-color: #FFF;
}

.tableMenu01 {
  font-weight: normal;
  margin-left: auto;
  margin-right: auto;
}

.tableMenu01 th,
.tableMenu01 td {
  border-bottom: 1px solid #EEE;
  vertical-align: middle;
  font-weight: normal;
  text-align: left;
}

@media screen and (min-width: 768px) {
  .tableMenu01 {
    width: 100%;
  }

  .tableMenu01 th,
  .tableMenu01 td {
    padding: 10px 15px;
  }

  .tableMenu01 th {
    width: 100px;
  }
}

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

  .tableCommon01,
  .tableCommon01 thead,
  .tableCommon01 tbody,
  .tableCommon01 tfoot,
  .tableCommon01 tr,
  .tableCommon01 th,
  .tableCommon01 td {
    display: block;
  }

  .tableCommon01 {
    border-top: 1px solid #98621d;
  }

  .tableCommon01 th,
  .tableCommon01 td {
    border-top: none;
  }
}


/*--------------------------------------------------------------------
	scroll
--------------------------------------------------------------------*/

.scroll02Wrap01 {
  overflow: hidden;
}

.scroll02 img {
  border-right: 0px solid #FFF;
}

@media screen and (min-width: 1251px) {

  .scroll02Wrap01,
  .scroll02,
  .scroll02 img {
    height: 200px;
  }
}

@media screen and (min-width: 768px) and (max-width: 1250px) {

  .scroll02Wrap01,
  .scroll02,
  .scroll02 img {
    height: 150px;
  }
}

@media screen and (max-width: 767px) {
  .scroll01 {
    overflow-x: scroll;
    overflow-y: hidden;
    padding-bottom: 10px;
  }

  .scroll01::-webkit-scrollbar {
    height: 8px;
  }

  .scroll01::-webkit-scrollbar-track {
    border-radius: 4px;
    background: #EFEFEF;
  }

  .scroll01::-webkit-scrollbar-thumb {
    border-radius: 4px;
    background: #666;
  }

  .scroll01Obj {
    min-width: 768px;
  }

  .scroll02Wrap01,
  .scroll02,
  .scroll02 img {
    height: 100px;
  }
}


/*--------------------------------------------------------------------
	layout
--------------------------------------------------------------------*/

.textLayout01>*:nth-child(n+2) {
  margin-top: 0.15em;
}

.textLayout03>*:nth-child(n+2) {
  margin-top: 0.3em;
}

.textLayout05>*:nth-child(n+2) {
  margin-top: 0.6em;
}

.textLayout08>*:nth-child(n+2) {
  margin-top: 0.9em;
}

.textLayout10>*:nth-child(n+2) {
  margin-top: 1.2em;
}

.textLayout15>*:nth-child(n+2) {
  margin-top: 1.6em;
}

.textLayout25>*:nth-child(n+2) {
  margin-top: 2.6em;
}

.textLayout35>*:nth-child(n+2) {
  margin-top: 3.6em;
}

.textLayout50>*:nth-child(n+2) {
  margin-top: 4.6em;
}

.textLayout75>*:nth-child(n+2) {
  margin-top: 6.0em;
}

/*--------------------------------------------------------------------
	button
--------------------------------------------------------------------*/

.buttonCommon01 {
  padding: 0 15px;
  transition-property: all;
  transition: 0.1s linear;
  box-sizing: border-box;
  display: inline-block;
  vertical-align: bottom;
  text-align: center;
  text-decoration: none !important;
  cursor: pointer;
  border-radius: 5px;
  overflow: hidden;
}


.buttonCommon01.size30 {
  height: 30px;
  line-height: 30px;
  font-size: 0.8rem;
  padding: 0 5px;
}

.buttonCommon01.size35 {
  height: 35px;
  line-height: 35px;
  font-size: 0.9rem;
  padding: 0 10px;
}

.buttonCommon01.size50 {
  height: 50px;
  line-height: 50px;
  font-size: 1.0rem;
  padding: 0 10px;
}

.buttonCommon01.size55 {
  height: 55px;
  line-height: 52px;
  font-size: 1.0rem;
}

.buttonCommon01.size65 {
  height: 65px;
  line-height: 62px;
  font-size: 1.1rem;
}

.buttonCommon02,
.buttonCommon02 a {
  width: 140px;
  height: 140px;
}

.buttonCommon02 a {
  border-radius: 50%;
}

.buttonWhite01 {
  background-color: #FFF;
  color: #333 !important;
}

.buttonWhite02 {
  background-color: #FFF;
  color: #333 !important;
  border: 1px solid #333;
}

.buttonBlack01 {
  background-color: #000000;
  color: #FFF !important;
}

.buttonBlack02 {
  border: 1px solid #333;
  color: #333 !important;
}

.buttonGray01 {
  background-color: #534E49;
  color: #FFF !important;
}

.buttonYellow01 {
  background-color: #CB7B3A;
  color: #FFF !important;
}

.buttonYellow02 { 
  background-color: #e6d9bd; 
  color: #4f4f4f !important;
}

.buttonRed01 {
  background-color: #C13221;
  color: #FFF !important;
}

.buttonGreen01 {
  background-color: #98C451;
  color: #FFF !important;
}

.buttonBlue01 {
  background-color: #717d94;
  color: #FFF !important;
}

.buttonDarkRed01 {
  background-color: #391112;
  color: #FFF !important;
}

.buttonGold01 {
  background: linear-gradient(
    135deg,
    #8C6A1C 0%,
    #C49A3A 35%,
    #A67C2E 65%,
    #6E520F 100%
  );
  color: #FFF !important;
}

.buttonFont01 {
  font-size: 1.6rem;
}

.buttonCommon01.typeRound {
  border-radius: 100px;
}

@media screen and (min-width: 1251px) {

  .buttonCommon01:hover,
  .buttonCommon02:hover,
  a:hover .buttonCommon01 {
    opacity: 0.8;
  }

  .buttonCommon01.typeA {
    font-size: 0.86rem;
  }
}

@media screen and (min-width: 768px) {
  .buttonCommon01.typeMemo01 {
    padding-right: 110px;
  }

  .buttonCommon01.typeMemo01:before {
    content: "空室状況";
    font-size: 0.9rem;
    position: absolute;
    top: 12px;
    right: calc(50% - 80px);
    width: 90px;
    height: 30px;
    border: 1px solid #FFF;
    line-height: 30px;
    text-align: center;
  }
}


/*--------------------------------------------------------------------
	ul
--------------------------------------------------------------------*/

.ulCommon01 {
  list-style: disc outside;
  padding-left: 1.5em;
}

.ulCommon01 li:nth-child(n+2) {
  margin-top: 3px;
}

.ulCommon02>li {
  padding-left: 1.5em;
}

.ulCommon02>li:before {
  content: "◆";
  position: absolute;
  left: 0;
}

.ulCommon02>li:nth-child(n+2) {
  margin-top: 3px;
}

.ulCommon03>li {
  padding-left: 1.5em;
}

.ulCommon03>li:before {
  content: "★";
  position: absolute;
  left: 0;
}

.ulCommon03>li:nth-child(n+2) {
  margin-top: 3px;
}

.ulCommon04>li {
  padding-left: 1.5em;
}

.ulCommon04>li:before {
  content: "※";
  position: absolute;
  left: 0;
}

.ulCommon04>li:nth-child(n+2) {
  margin-top: 3px;
}

.olCommon01>li {
  margin-left: 2em;
  list-style: decimal-leading-zero outside;
}


/*--------------------------------------------------------------------
	mark
--------------------------------------------------------------------*/

.textMark01 {
  padding-left: 1.2em;
}

.textMark01:before {
  content: '※';
  position: absolute;
  left: 0;
}

.textMark02 {
  counter-reset: number;
  list-style: none;
}

.textMark02 li {
  padding-left: 1.8em;
  text-indent: -1.5em;
  position: relative;
}

.textMark02 li:nth-child(n+2) {
  margin-top: 3px;
}

.textMark02 li:before {
  display: inline;
  counter-increment: number;
  content: "※"counter(number)"";
}

p.indent-1 {
	padding-left:1em;
	text-indent:-1em;
}

.ffs { font-feature-settings: "palt"; }

/*--------------------------------------------------------------------
	toggle
--------------------------------------------------------------------*/

.toggleCommon01Contents {
  display: none;
}

.faqToggleWrap01 {
  border: 1px solid #c7b690;
  background-color: rgba(255, 255, 255, 0.9);
}

.faqToggleQ01 {
  cursor: pointer;
}

.faqToggleQ01:before {
  content: "Q.";
  position: absolute;
}

.faqToggleQ01:after {
  content: "\f107";
  font-family: FontAwesome;
  position: absolute;
  right: 13px;
  font-size: 1.4rem;
}

.faqToggleQ01.activeToggle:after {
  content: "\f106";
}

.faqToggleA01:before {
  content: "A.";
  position: absolute;
}

.faqToggleA01:after {
  content: "";
  width: calc(100% - 20px);
  height: 1px;
  position: absolute;
  left: 10px;
  top: 0;
  background-color: #8a846a;
}

@media screen and (min-width: 1251px) {

  .faqToggleQ01,
  .faqToggleA01 {
    padding: 15px 40px;
  }

  .faqToggleQ01:before,
  .faqToggleA01:before {
    left: 15px;
  }

}

@media screen and (min-width: 768px) and (max-width: 1250px) {

  .faqToggleQ01,
  .faqToggleA01 {
    padding: 10px 30px;
  }

  .faqToggleQ01:before,
  .faqToggleA01:before {
    left: 10px;
  }


}

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

  .faqToggleQ01,
  .faqToggleA01 {
    padding: 10px 30px;
  }

  .faqToggleQ01:before,
  .faqToggleA01:before {
    left: 10px;
  }

}


/*--------------------------------------------------------------------
	floatSlide
--------------------------------------------------------------------*/

.floatSlider {
  width: 100%;
  overflow: hidden;
}

.slideImg {
  float: left;
}

@media screen and (min-width: 1025px) {

  .floatSlider,
  .floatSlider img {
    height: 200px;
  }
}

@media screen and (min-width: 768px) and (max-width: 1024px) {

  .floatSlider,
  .floatSlider img {
    height: 130px;
  }
}

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

  .floatSlider,
  .floatSlider img {
    height: 80px;
  }
}


/*--------------------------------------------------------------------
	flex
--------------------------------------------------------------------*/

@media screen and (min-width: 1251px) {
  .flexCommonLayout01>*:first-child {
    width: 60%;
  }

  .flexCommonLayout01>*:last-child {
    width: calc(40% - 0.1px);
  }

  .flexCommonLayout01.typeA>*:first-child {
    width: calc(50% - 0.1px);
  }

  .flexCommonLayout01.typeA>*:last-child {
    width: 50%;
  }

  .flexCommon01.orderA>*:first-child,
  .flexCommon01.orderB>*:first-child {
    order: 2;
  }

  .flexCommon01.orderA>*:last-child,
  .flexCommon01.orderB>*:last-child  {
    order: 1;
  }
}

@media screen and (max-width: 1250px) and (min-width: 768px) {
  .flexCommonLayout01>*:first-child {
    width: 60%;
  }

  .flexCommonLayout01>*:last-child {
    width: calc(40% - 0.1px);
  }

  .flexCommonLayout01.typeA>*:first-child {
    width: calc(50% - 0.1px);
  }

  .flexCommonLayout01.typeA>*:last-child {
    width: 50%;
  }

  .flexCommon01.orderA>*:first-child {
    order: 2;
  }

  .flexCommon01.orderA>*:last-child {
    order: 1;
  }
}

@media screen and (max-width: 767px) {
  .flexCommonLayout01>*:first-child {
    width: 100%;
  }

  .flexCommonLayout01>*:last-child {
    width: 100%;
  }
}


/*--------------------------------------------------------------------
	flex
--------------------------------------------------------------------*/

.flexList01>*:not(:last-child) {
  margin-right: 1em;
  ;
}

.flex2ColumnD>* {
  width: calc((100% - 10.1px) / 2);
}

.flex2ColumnD>*:not(:nth-child(2n)) {
  margin-right: 10px;
}

.flex2ColumnD>*:nth-child(n+3) {
  margin-top: 10px;
}

.flex2ColumnD.typeA>*:first-child {
  display: none;
}

.flex2ColumnD.typeA>*:not(:nth-child(2n)) {
  margin-right: 0;
  margin-left: 10px;
}

.flex2ColumnD.typeA>*:nth-child(n+3) {
  margin-top: 0;
}

.flex2ColumnD.typeA>*:nth-child(n+4) {
  margin-top: 10px;
}

@media screen and (min-width: 1251px) {
  .flex2ColumnA>* {
    width: calc((100% - 40.1px) / 2);
  }

  .flex2ColumnA>*:nth-child(n+3) {
    margin-top: 40px;
  }

  .flex2ColumnB>* {
    width: calc((100% - 10.1px) / 2);
  }

  .flex2ColumnB>*:not(:nth-child(2n)) {
    margin-right: 10px;
  }

  .flex2ColumnB>*:nth-child(n+3) {
    margin-top: 10px;
  }

  .flex2ColumnC>* {
    width: calc((100% - 10.1px) / 2);
  }

  .flex2ColumnC>*:not(:nth-child(2n)) {
    margin-right: 10px;
  }

  .flex2ColumnC>*:nth-child(n+3) {
    margin-top: 10px;
  }

  .flex2ColumnF>* {
    width: calc((100% - 20.1px) / 2);
  }

  .flex2ColumnF>*:not(:nth-child(2n)) {
    margin-right: 20px;
    border-right: 1px dotted #7a7a7a;
    padding-right: 20px;
  }

  .flex2ColumnF>*:nth-child(n+3) {
    margin-top: 10px;
  }

  .flex3ColumnA>* {
    width: calc((100% - 60.1px) / 3);
  }

  .flex3ColumnA>*:not(:nth-child(3n)) {
    margin-right: 30px;
  }

  .flex3ColumnA>*:nth-child(n+4) {
    margin-top: 30px;
  }

  .flex3ColumnB>* {
    width: calc((100% - 40.1px) / 3);
  }

  .flex3ColumnB>*:not(:nth-child(3n)) {
    margin-right: 20px;
  }

  .flex3ColumnB>*:nth-child(n+4) {
    margin-top: 20px;
  }

  .flex4ColumnA>* {
    width: calc((100% - 60.1px) / 4);
  }

  .flex4ColumnA>*:not(:nth-child(4n)) {
    margin-right: 20px;
  }

  .flex4ColumnA>*:nth-child(n+5) {
    margin-top: 20px;
  }

  .flex4ColumnB>* {
    width: calc((100% - 60.1px) / 4);
  }

  .flex4ColumnB>*:not(:nth-child(4n)) {
    margin-right: 20px;
  }

  .flex4ColumnB>*:nth-child(n+5) {
    margin-top: 20px;
  }

  .flex5ColumnA>* {
    width: calc((100% - 40.1px) / 5);
  }

  .flex5ColumnA>*:not(:nth-child(5n)) {
    margin-right: 10px;
  }

  .flex5ColumnA>*:nth-child(n+6) {
    margin-top: 15px;
  }

  .flex6ColumnA>* {
    width: calc((100% - 50.1px) / 6);
  }

  .flex6ColumnA>*:not(:nth-child(6n)) {
    margin-right: 10px;
  }

  .flex6ColumnA>*:nth-child(n+7) {
    margin-top: 15px;
  }

  .flex6ColumnB>* {
    width: calc((100% - 100.1px) / 6);
  }

  .flex6ColumnB>*:not(:nth-child(6n)) {
    margin-right: 20px;
  }

  .flex6ColumnB>*:nth-child(n+7) {
    margin-top: 25px;
  }
}

@media screen and (max-width: 1250px) {
  .flex2ColumnB>* {
    width: 100%;
  }

  .flex2ColumnB>*:nth-child(n+2) {
    margin-top: 10px;
  }
}

@media screen and (max-width: 1250px) and (min-width: 768px) {
  .flex2ColumnA>* {
    width: calc((100% - 30.1px) / 2);
  }

  .flex2ColumnA>*:nth-child(n+3) {
    margin-top: 30px;
  }

  .flex2ColumnC>* {
    width: calc((100% - 10.1px) / 2);
  }

  .flex2ColumnC>*:not(:nth-child(2n)) {
    margin-right: 10px;
  }

  .flex2ColumnC>*:nth-child(n+3) {
    margin-top: 10px;
  }

  .flex2ColumnF>* {
    width: calc((100% - 30.1px) / 2);
  }

  .flex2ColumnF>*:not(:nth-child(2n)) {
    margin-right: 20px;
    border-right: 1px dotted #7a7a7a;
    padding-right: 20px;
  }

  .flex2ColumnF>*:nth-child(n+3) {
    margin-top: 30px;
  }

  .flex3ColumnA>* {
    width: calc((100% - 30.1px) / 3);
  }

  .flex3ColumnA>*:not(:nth-child(3n)) {
    margin-right: 15px;
  }

  .flex3ColumnA>*:nth-child(n+4) {
    margin-top: 15px;
  }

  .flex3ColumnB>* {
    width: calc((100% - 20.1px) / 3);
  }

  .flex3ColumnB>*:not(:nth-child(3n)) {
    margin-right: 10px;
  }

  .flex3ColumnB>*:nth-child(n+4) {
    margin-top: 20px;
  }

  .flex4ColumnA>* {
    width: calc((100% - 45.1px) / 4);
  }

  .flex4ColumnA>*:not(:nth-child(4n)) {
    margin-right: 15px;
  }

  .flex4ColumnA>*:nth-child(n+5) {
    margin-top: 15px;
  }

  .flex4ColumnB>* {
    width: calc((100% - 45.1px) / 4);
  }

  .flex4ColumnB>*:not(:nth-child(4n)) {
    margin-right: 15px;
  }

  .flex4ColumnB>*:nth-child(n+5) {
    margin-top: 15px;
  }

  .flex5ColumnA>* {
    width: calc((100% - 40.1px) / 5);
  }

  .flex5ColumnA>*:not(:nth-child(5n)) {
    margin-right: 10px;
  }

  .flex5ColumnA>*:nth-child(n+6) {
    margin-top: 10px;
  }

  .flex6ColumnA>* {
    width: calc((100% - 40.1px) / 5);
  }

  .flex6ColumnA>*:not(:nth-child(5n)) {
    margin-right: 10px;
  }

  .flex6ColumnA>*:nth-child(n+6) {
    margin-top: 10px;
  }

  .flex6ColumnB>* {
    width: calc((100% - 40.1px) / 3);
  }

  .flex6ColumnB>*:not(:nth-child(3n)) {
    margin-right: 20px;
  }

  .flex6ColumnB>*:nth-child(n+4) {
    margin-top: 30px;
  }
}

@media screen and (max-width: 1250px) {
  .flex2ColumnA.orderA>:nth-child(2) {
    order: 2;
  }

  .flex2ColumnA.orderA>*:nth-child(2) {
    order: 1;
  }
}

@media screen and (max-width: 767px) {
  .flex2ColumnA>* {
    width: 100%;
  }

  .flex2ColumnA>*:nth-child(n+2) {
    margin-top: 25px;
  }

  .flex2ColumnC>* {
    width: 100%;
  }

  .flex2ColumnC>*:nth-child(n+2) {
    margin-top: 10px;
  }

  .flex2ColumnF>* {
    width: 100%;
  }

  .flex2ColumnF>*:nth-child(n+2) {
    margin-top: 25px;
  }

  .flex3ColumnA>* {
    width: 100%;
  }

  .flex3ColumnA>*:nth-child(n+2) {
    margin-top: 25px;
  }

  .flex3ColumnB>* {
    width: calc((100% - 10.1px) / 2);
  }

  .flex3ColumnB>*:not(:nth-child(2n)) {
    margin-right: 10px;
  }

  .flex3ColumnB>*:nth-child(n+3) {
    margin-top: 10px;
  }

  .flex4ColumnA>* {
    width: 100%;
  }

  .flex4ColumnA>*:nth-child(n+2) {
    margin-top: 15px;
  }

  .flex4ColumnB>* {
    width: calc((100% - 10.1px) / 2);
  }

  .flex4ColumnB>*:not(:nth-child(2n)) {
    margin-right: 10px;
  }

  .flex4ColumnB>*:nth-child(n+3) {
    margin-top: 10px;
  }

  .flex5ColumnA>* {
    width: calc((100% - 10.1px) / 2);
  }

  .flex5ColumnA>*:not(:nth-child(2n)) {
    margin-right: 10px;
  }

  .flex5ColumnA>*:nth-child(n+3) {
    margin-top: 10px;
  }

  .flex6ColumnA>* {
    width: calc((100% - 10.1px) / 2);
  }

  .flex6ColumnA>*:not(:nth-child(2n)) {
    margin-right: 10px;
  }

  .flex6ColumnA>*:nth-child(n+3) {
    margin-top: 10px;
  }

  .flex6ColumnB>* {
    width: calc((100% - 20.1px) / 2);
  }

  .flex6ColumnB>*:not(:nth-child(2n)) {
    margin-right: 20px;
  }

  .flex6ColumnB>*:nth-child(n+3) {
    margin-top: 25px;
  }
}


/*--------------------------------------------------------------------
	loading
--------------------------------------------------------------------*/

.loading01All {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #ffffff;
    z-index: 1000;
    transition: opacity 0.3s;
    pointer-events: none;
}

.loader01 {
    position: fixed;
    z-index: 1001;
    transition: opacity 0.8s;
}

.loaderLogo {
    display: block;
}

.loader01.isDone {
    opacity: 0;
    pointer-events: none;
}

.loading01All.isDone {
    opacity: 0;
    pointer-events: none;
}





@media screen and (min-width: 1251px) {

.loader01 {
    top: 300px;
    left: 50%;
    transform: translate(-50%, 0%); 
}

.loaderLogo {
    width: 320px;
    height: auto;
}

}

@media screen and (min-width: 768px) and (max-width: 1250px) {

.loader01 {
    top: 250px;
    left: 50%;
    transform: translate(-50%, 0%); 
}

.loaderLogo {
    width: 200px;
    height: auto;
}

}

@media screen and (min-width: 768px) {

}

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

.loader01 {
    top: 120px;
    left: 50%;
    transform: translate(-50%, 0%); 
}

.loaderLogo {
    width: 150px;
    height: auto;
}

}

/*--------------------------------------------------------------------
	inview
--------------------------------------------------------------------*/

.effectCommon01 {
  opacity: 0;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.070, 0.910, 0.620, 0.940);
}

.loading01Out .effectCommon01.inviewOn {
  opacity: 1;
}

.effectCommon02 {
  opacity: 0;
  top: 20px;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.070, 0.910, 0.620, 0.940);
}

.loading01Out .effectCommon02.inviewOn {
  opacity: 1;
  top: 0;
}

.effectCommon03 {
  opacity: 0;
  left: 20px;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.070, 0.910, 0.620, 0.940);
}

.loading01Out .effectCommon03.inviewOn {
  opacity: 1;
  left: 0;
}

.effectCommon04 {
  opacity: 0;
  right: 20px;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.070, 0.910, 0.620, 0.940);
}

.loading01Out .effectCommon04.inviewOn {
  opacity: 1;
  right: 0;
}

.effectCommon05 {
  opacity: 0;
  bottom: 20px;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.070, 0.910, 0.620, 0.940);
}

.loading01Out .effectCommon05.inviewOn {
  opacity: 1;
  bottom: 0;
}

.tsSpeed01,
.psSpeed01:before,
.psSpeed01:after {
  transition-duration: .1s;
}

.tsSpeed02,
.psSpeed02:before,
.psSpeed02:after {
  transition-duration: .2s;
}

.tsSpeed03,
.psSpeed03:before,
.psSpeed03:after {
  transition-duration: .3s;
}

.tsSpeed04,
.psSpeed04:before,
.psSpeed04:after {
  transition-duration: .4s;
}

.tsSpeed05,
.psSpeed05:before,
.psSpeed05:after {
  transition-duration: .5s;
}

.tsSpeed06,
.psSpeed06:before,
.psSpeed06:after {
  transition-duration: .6s;
}

.tsSpeed07,
.psSpeed07:before,
.psSpeed07:after {
  transition-duration: .7s;
}

.tsSpeed08,
.psSpeed08:before,
.psSpeed08:after {
  transition-duration: .8s;
}

.tsSpeed09,
.psSpeed09:before,
.psSpeed09:after {
  transition-duration: .9s;
}

.tsSpeed10,
.psSpeed10:before,
.psSpeed10:after {
  transition-duration: 1.0s;
}

.tsSpeed11,
.psSpeed11:before,
.psSpeed11:after {
  transition-duration: 1.1s;
}

.tsSpeed12,
.psSpeed12:before,
.psSpeed12:after {
  transition-duration: 1.2s;
}

.tsSpeed13,
.psSpeed13:before,
.psSpeed13:after {
  transition-duration: 1.3s;
}

.tsSpeed14,
.psSpeed14:before,
.psSpeed14:after {
  transition-duration: 1.4s;
}

.tsSpeed15,
.psSpeed15:before,
.psSpeed15:after {
  transition-duration: 1.5s;
}

.tsSpeed16,
.psSpeed16:before,
.psSpeed16:after {
  transition-duration: 1.6s;
}

.tsSpeed17,
.psSpeed17:before,
.psSpeed17:after {
  transition-duration: 1.7s;
}

.tsSpeed18,
.psSpeed18:before,
.psSpeed18:after {
  transition-duration: 1.8s;
}

.tsSpeed19,
.psSpeed19:before,
.psSpeed19:after {
  transition-duration: 1.9s;
}

.tsSpeed20,
.psSpeed20:before,
.psSpeed20:after {
  transition-duration: 2.0s;
}

.tsSpeed20,
.psSpeed20:before,
.psSpeed20:after {
  transition-duration: 2.0s;
}

.tsSpeed21,
.psSpeed21:before,
.psSpeed21:after {
  transition-duration: 2.1s;
}

.tsSpeed22,
.psSpeed22:before,
.psSpeed22:after {
  transition-duration: 2.2s;
}

.tsSpeed23,
.psSpeed23:before,
.psSpeed23:after {
  transition-duration: 2.3s;
}

.tsSpeed24,
.psSpeed24:before,
.psSpeed24:after {
  transition-duration: 2.4s;
}

.tsSpeed25,
.psSpeed25:before,
.psSpeed25:after {
  transition-duration: 2.5s;
}

.tsSpeed26,
.psSpeed26:before,
.psSpeed26:after {
  transition-duration: 2.6s;
}

.tsSpeed27,
.psSpeed27:before,
.psSpeed27:after {
  transition-duration: 2.7s;
}

.tsSpeed28,
.psSpeed28:before,
.psSpeed28:after {
  transition-duration: 2.8s;
}

.tsSpeed29,
.psSpeed29:before,
.psSpeed29:after {
  transition-duration: 2.9s;
}

.tsSpeed30,
.psSpeed30:before,
.psSpeed30:after {
  transition-duration: 3.0s;
}

.tsDelay01,
.psDelay01:before,
.psDelay01:after {
  transition-delay: .1s;
}

.tsDelay011,
.psDelay011:before,
.psDelay011:after {
  transition-delay: .11s;
}

.tsDelay012,
.psDelay012:before,
.psDelay012:after {
  transition-delay: .12s;
}

.tsDelay013,
.psDelay013:before,
.psDelay013:after {
  transition-delay: .13s;
}

.tsDelay014,
.psDelay014:before,
.psDelay014:after {
  transition-delay: .14s;
}

.tsDelay015,
.psDelay015:before,
.psDelay015:after {
  transition-delay: .15s;
}

.tsDelay016,
.psDelay016:before,
.psDelay016:after {
  transition-delay: .16s;
}

.tsDelay017,
.psDelay017:before,
.psDelay017:after {
  transition-delay: .17s;
}

.tsDelay018,
.psDelay018:before,
.psDelay018:after {
  transition-delay: .18s;
}

.tsDelay019,
.psDelay019:before,
.psDelay019:after {
  transition-delay: .19s;
}

.tsDelay02,
.psDelay02:before,
.psDelay02:after {
  transition-delay: .2s;
}

.tsDelay021,
.psDelay021:before,
.psDelay021:after {
  transition-delay: .21s;
}

.tsDelay022,
.psDelay022:before,
.psDelay022:after {
  transition-delay: .22s;
}

.tsDelay023,
.psDelay023:before,
.psDelay023:after {
  transition-delay: .23s;
}

.tsDelay024,
.psDelay024:before,
.psDelay024:after {
  transition-delay: .24s;
}

.tsDelay025,
.psDelay025:before,
.psDelay025:after {
  transition-delay: .25s;
}

.tsDelay026,
.psDelay026:before,
.psDelay026:after {
  transition-delay: .26s;
}

.tsDelay027,
.psDelay027:before,
.psDelay027:after {
  transition-delay: .27s;

}

.tsDelay028,
.psDelay028:before,
.psDelay028:after {
  transition-delay: .28s;
}

.tsDelay029,
.psDelay029:before,
.psDelay029:after {
  transition-delay: .29s;
}

.tsDelay03,
.psDelay03:before,
.psDelay03:after {
  transition-delay: .3s;
}

.tsDelay031,
.psDelay031:before,
.psDelay031:after {
  transition-delay: .31s;
}

.tsDelay032,
.psDelay032:before,
.psDelay032:after {
  transition-delay: .32s;
}

.tsDelay033,
.psDelay033:before,
.psDelay033:after {
  transition-delay: .33s;
}

.tsDelay034,
.psDelay034:before,
.psDelay034:after {
  transition-delay: .34s;
}

.tsDelay035,
.psDelay035:before,
.psDelay035:after {
  transition-delay: .35s;
}

.tsDelay036,
.psDelay036:before,
.psDelay036:after {
  transition-delay: .36s;
}

.tsDelay037,
.psDelay037:before,
.psDelay037:after {
  transition-delay: .37s;
}

.tsDelay038,
.psDelay038:before,
.psDelay038:after {
  transition-delay: .38s;
}

.tsDelay039,
.psDelay039:before,
.psDelay039:after {
  transition-delay: .39s;
}

.tsDelay04,
.psDelay04:before,
.psDelay04:after {
  transition-delay: .4s;
}

.tsDelay05,
.psDelay05:before,
.psDelay05:after {
  transition-delay: .5s;
}

.tsDelay06,
.psDelay06:before,
.psDelay06:after {
  transition-delay: .6s;
}

.tsDelay07,
.psDelay07:before,
.psDelay07:after {
  transition-delay: .7s;
}

.tsDelay08,
.psDelay08:before,
.psDelay08:after {
  transition-delay: .8s;
}

.tsDelay09,
.psDelay09:before,
.psDelay09:after {
  transition-delay: .9s;
}

.tsDelay10,
.psDelay10:before,
.psDelay10:after {
  transition-delay: 1.0s;
}

.tsDelay11,
.psDelay11:before,
.psDelay11:after {
  transition-delay: 1.1s;
}

.tsDelay12,
.psDelay12:before,
.psDelay12:after {
  transition-delay: 1.2s;
}

.tsDelay13,
.psDelay13:before,
.psDelay13:after {
  transition-delay: 1.3s;
}

.tsDelay14,
.psDelay14:before,
.psDelay14:after {
  transition-delay: 1.4s;
}

.tsDelay15,
.psDelay15:before,
.psDelay15:after {
  transition-delay: 1.5s;
}

.tsDelay16,
.psDelay16:before,
.psDelay16:after {
  transition-delay: 1.6s;
}

.tsDelay17,
.psDelay17:before,
.psDelay17:after {
  transition-delay: 1.7s;
}

.tsDelay18,
.psDelay18:before,
.psDelay18:after {
  transition-delay: 1.8s;
}

.tsDelay19,
.psDelay19:before,
.psDelay19:after {
  transition-delay: 1.9s;
}

.tsDelay20,
.psDelay20:before,
.psDelay20:after {
  transition-delay: 2.0s;
}

@media screen and (min-width: 768px) {

  .tsDelay01po,
  .psDelay01po:before,
  .psDelay01po:after {
    transition-delay: .1s;
  }

  .tsDelay02po,
  .psDelay02po:before,
  .psDelay02po:after {
    transition-delay: .2s;
  }

  .tsDelay03po,
  .psDelay03po:before,
  .psDelay03po:after {
    transition-delay: .3s;
  }

  .tsDelay04po,
  .psDelay04po:before,
  .psDelay04po:after {
    transition-delay: .4s;
  }

  .tsDelay05po,
  .psDelay05po:before,
  .psDelay05po:after {
    transition-delay: .5s;
  }

  .tsDelay06po,
  .psDelay06po:before,
  .psDelay06po:after {
    transition-delay: .6s;
  }

  .tsDelay07po,
  .psDelay07po:before,
  .psDelay07po:after {
    transition-delay: .7s;
  }

  .tsDelay08po,
  .psDelay08po:before,
  .psDelay08po:after {
    transition-delay: .8s;
  }

  .tsDelay09po,
  .psDelay09po:before,
  .psDelay09po:after {
    transition-delay: .9s;
  }

  .tsDelay10po,
  .psDelay10po:before,
  .psDelay10po:after {
    transition-delay: 1.0s;
  }
}


/*--------------------------------------------------------------------
	inview
--------------------------------------------------------------------*/

.mastTitle01 span {
  opacity: 0;
}

.loading01Out .mastTitle01.inviewOn span {
  animation: letter-glow 1.6s 0s ease both;
}

.loading01Out .mastTitle01.typeA.inviewOn span {
  animation: letter-glow2 1.6s 0s ease both;
}

.loading01Out .mastTitle01.inviewOn span:nth-child(1) {
  animation-delay: 0.05s;
}

.loading01Out .mastTitle01.inviewOn span:nth-child(2) {
  animation-delay: 0.1s;
}

.loading01Out .mastTitle01.inviewOn span:nth-child(3) {
  animation-delay: 0.15s;
}

.loading01Out .mastTitle01.inviewOn span:nth-child(4) {
  animation-delay: 0.2s;
}

.loading01Out .mastTitle01.inviewOn span:nth-child(5) {
  animation-delay: 0.25s;
}

.loading01Out .mastTitle01.inviewOn span:nth-child(6) {
  animation-delay: 0.3s;
}

.loading01Out .mastTitle01.inviewOn span:nth-child(7) {
  animation-delay: 0.35s;
}

.loading01Out .mastTitle01.inviewOn span:nth-child(8) {
  animation-delay: 0.4s;
}

.loading01Out .mastTitle01.inviewOn span:nth-child(9) {
  animation-delay: 0.45s;
}

.loading01Out .mastTitle01.inviewOn span:nth-child(10) {
  animation-delay: 0.5s;
}

.loading01Out .mastTitle01.inviewOn span:nth-child(11) {
  animation-delay: 0.55s;
}

.loading01Out .mastTitle01.inviewOn span:nth-child(12) {
  animation-delay: 0.6s;
}

.loading01Out .mastTitle01.inviewOn span:nth-child(13) {
  animation-delay: 0.65s;
}

.loading01Out .mastTitle01.inviewOn span:nth-child(14) {
  animation-delay: 0.7s;
}

.loading01Out .mastTitle01.inviewOn span:nth-child(15) {
  animation-delay: 0.75s;
}

.loading01Out .mastTitle01.inviewOn span:nth-child(16) {
  animation-delay: 0.8s;
}

.loading01Out .mastTitle01.inviewOn span:nth-child(17) {
  animation-delay: 0.85s;
}

.loading01Out .mastTitle01.inviewOn span:nth-child(18) {
  animation-delay: 0.9s;
}

.loading01Out .mastTitle01.inviewOn span:nth-child(19) {
  animation-delay: 0.95s;
}

.loading01Out .mastTitle01.inviewOn span:nth-child(20) {
  animation-delay: 1s;
}

.loading01Out .mastTitle01.inviewOn span:nth-child(21) {
  animation-delay: 1.05s;
}

.loading01Out .mastTitle01.inviewOn span:nth-child(22) {
  animation-delay: 1.1s;
}

.loading01Out .mastTitle01.inviewOn span:nth-child(23) {
  animation-delay: 1.15s;
}

.loading01Out .mastTitle01.inviewOn span:nth-child(24) {
  animation-delay: 1.2s;
}

.loading01Out .mastTitle01.inviewOn span:nth-child(25) {
  animation-delay: 1.25s;
}

.effectTxt01 span {
  opacity: 0;
  display: inline-block;
}

.loading01Out .effectTxt01.inviewOn span {
  animation: letter-glow3 1.6s 0s ease both;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(1) {
  animation-delay: 0.05s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(2) {
  animation-delay: 0.1s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(3) {
  animation-delay: 0.15s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(4) {
  animation-delay: 0.2s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(5) {
  animation-delay: 0.25s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(6) {
  animation-delay: 0.3s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(7) {
  animation-delay: 0.35s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(8) {
  animation-delay: 0.4s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(9) {
  animation-delay: 0.45s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(10) {
  animation-delay: 0.5s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(11) {
  animation-delay: 0.55s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(12) {
  animation-delay: 0.6s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(13) {
  animation-delay: 0.65s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(14) {
  animation-delay: 0.7s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(15) {
  animation-delay: 0.75s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(16) {
  animation-delay: 0.8s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(17) {
  animation-delay: 0.85s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(18) {
  animation-delay: 0.9s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(19) {
  animation-delay: 0.95s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(20) {
  animation-delay: 1s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(21) {
  animation-delay: 1.05s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(22) {
  animation-delay: 1.1s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(23) {
  animation-delay: 1.15s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(24) {
  animation-delay: 1.2s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(25) {
  animation-delay: 1.25s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(26) {
  animation-delay: 1.3s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(27) {
  animation-delay: 1.35s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(28) {
  animation-delay: 1.4s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(29) {
  animation-delay: 1.45s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(30) {
  animation-delay: 1.5s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(31) {
  animation-delay: 1.55s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(32) {
  animation-delay: 1.6s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(33) {
  animation-delay: 1.65s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(34) {
  animation-delay: 1.7s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(35) {
  animation-delay: 1.75s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(36) {
  animation-delay: 1.8s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(37) {
  animation-delay: 1.85s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(38) {
  animation-delay: 1.9s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(39) {
  animation-delay: 1.95s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(40) {
  animation-delay: 2s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(41) {
  animation-delay: 2.05s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(42) {
  animation-delay: 2.1s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(43) {
  animation-delay: 2.15s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(44) {
  animation-delay: 2.2s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(45) {
  animation-delay: 2.25s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(46) {
  animation-delay: 2.3s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(47) {
  animation-delay: 2.35s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(48) {
  animation-delay: 2.4s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(49) {
  animation-delay: 2.45s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(50) {
  animation-delay: 2.5s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(51) {
  animation-delay: 2.55s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(52) {
  animation-delay: 2.6s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(53) {
  animation-delay: 2.65s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(54) {
  animation-delay: 2.7s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(55) {
  animation-delay: 2.75s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(56) {
  animation-delay: 2.8s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(57) {
  animation-delay: 2.85s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(58) {
  animation-delay: 2.9s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(59) {
  animation-delay: 2.95s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(60) {
  animation-delay: 3s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(61) {
  animation-delay: 3.05s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(62) {
  animation-delay: 3.1s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(63) {
  animation-delay: 3.15s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(64) {
  animation-delay: 3.2s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(65) {
  animation-delay: 3.25s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(66) {
  animation-delay: 3.3s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(67) {
  animation-delay: 3.35s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(68) {
  animation-delay: 3.4s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(69) {
  animation-delay: 3.45s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(70) {
  animation-delay: 3.5s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(71) {
  animation-delay: 3.55s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(72) {
  animation-delay: 3.6s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(73) {
  animation-delay: 3.65s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(74) {
  animation-delay: 3.7s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(75) {
  animation-delay: 3.75s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(76) {
  animation-delay: 3.8s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(77) {
  animation-delay: 3.85s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(78) {
  animation-delay: 3.9s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(79) {
  animation-delay: 3.95s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(80) {
  animation-delay: 4s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(81) {
  animation-delay: 4.05s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(82) {
  animation-delay: 4.1s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(83) {
  animation-delay: 4.15s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(84) {
  animation-delay: 4.2s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(85) {
  animation-delay: 4.25s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(86) {
  animation-delay: 4.3s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(87) {
  animation-delay: 4.35s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(88) {
  animation-delay: 4.4s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(89) {
  animation-delay: 4.45s;
}

.loading01Out .effectTxt01.inviewOn span:nth-child(90) {
  animation-delay: 4.5s;
}

@keyframes letter-glow {
  0% {
    opacity: 0;
    text-shadow: 0px 0px 1px rgba(255, 255, 255, 0.1);
  }

  66% {
    opacity: 0.9;
    text-shadow: 0px 0px 20px rgba(255, 255, 255, 0.9);
  }

  77% {
    opacity: 0.5;
  }

  100% {
    opacity: 1;
    text-shadow: 0px 0px 20px rgba(255, 255, 255, 0);
  }
}

@keyframes letter-glow2 {
  0% {
    opacity: 0;
    text-shadow: 0px 0px 1px rgba(255, 255, 255, 0.1);
  }

  66% {
    opacity: 0.9;
    text-shadow: 0px 0px 20px rgba(255, 255, 255, 0.9);
  }

  77% {
    opacity: 0.5;
  }

  85% {
    opacity: 1;
    text-shadow: 0px 0px 20px rgba(255, 255, 255, 0);
  }

  100% {
    opacity: 1;
    text-shadow: 0 0 10px #000, 0 0 10px #000, 0 0 10px #000;
  }
}

@keyframes letter-glow3 {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}


/*--------------------------------------------------------------------
	modal
--------------------------------------------------------------------*/

.modalBox01 {
  display: none;
  height: 100%;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 20001;
  overflow-y: scroll;
}

.modalBg01 {
  background-color: rgba(255, 255, 255, 0.7);
  height: 100%;
  width: 100%;
}

.modalInner01 {
  background-color: #FFF;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  box-shadow: 0 0 15px rgba(100, 100, 100, 0.1);
}

.modalClose01 {
  cursor: pointer;
  position: absolute;
  right: 0;
  top: -40px;
  font-size: 3rem;
  color: #666;
}

@media screen and (min-width: 768px) {
  .modalInner01 {
    font-size: 0.9rem;
    line-height: 1.6em;
  }

  .modalInner01Pack01 {
    width: 700px;
    padding: 20px;
  }
}

@media screen and (max-width: 767px) {
  .modalInner01 {
    font-size: 0.8rem;
    line-height: 1.4em;
    margin: 40px 0 20px;
  }

  .modalInner01Pack01 {
    width: 90vw;
    padding: 15px;
  }
}