@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, img, ins, kbd, q, s, samp,
small, strike, strong, sup, tt, var,
b, u, i, center, hr,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
    scroll-behavior: smooth;
}

a,
a img {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
}
a:hover,
a img:hover {
    opacity: 0.7;
    filter: alpha( opacity=70 );
    -webkit-transition: all .3s ease .1s;
    transition: all .3s ease .1s;
}

.body {
  font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  color: #333333;
}
img {
width: 100%;
max-width: 750px;
margin: auto;
text-align: center;
vertical-align: bottom;
margin: 0 auto;
}

/* 文中注釈 */
sub {
  vertical-align: top;
  font-size: smaller;
  line-height: initial;
}

/* 注釈テキスト */
.sub_text {
  font-size: 10px;
  line-height: 160%;
  display: block;
  text-align: justify;
  margin-top: 5px;
}

/* テキスト太字 */
.fontWeightBold {
  font-weight: bold;
}

/* テキスト色指定 */
.color__gold {
  color: #d3a46e;
}


/* 大きさ全体設定 */

.body__fixed {
  background-color: #ffffff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  max-width: 450px;
  margin: 0 auto;
  box-shadow: 0 0 12px 1px rgba(0, 0, 0, 0.1);
}

/* アンカーリンクズレる場合 */
.anchor {
  padding-top: 50px;
  margin-top: -50px;
}


/* PC・SP表示非表示 */
.sp,
.ipse {
    display: none;
}
@media screen and (max-width: 767px) {
    .sp {
        display: block;
    }
    .pc {
        display: none;
    }
    a:hover,
    a img:hover {
        opacity: unset;
        filter: unset;
        -ms-filter: unset;
    }
}
@media screen and (max-width: 320px) {
    .ipse {
        display: block;
    }
}


/* アニメーション：始まり */
.animated {
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}

.fadeInRight {
    -webkit-animation-name: fadeInRight;
    animation-name: fadeInRight;
}

@keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(50px, 0, 0);
    transform: translate3d(50px, 0, 0);
  }

  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.fadeInbottom {
    -webkit-animation-name: fadeInbottom;
    animation-name: fadeInbottom;
}
@keyframes fadeInbottom {
  0% {
    opacity: 0;
    transform: translateY(64px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

/*スクロールした時にフェードイン*/
.is-fadeup  {
	opacity: 0;
	transform: translate(0,20px);
	-webkit-transform: translate(0,20px);
}
.is-show{
	opacity: 1.0;
	transform: translate(0,0);
	-webkit-transform: translate(0,0);
	transition: 1.5s;
}
/* アニメーション：終わり */



/* --------------------------------
  CSS追加
--------------------------------
*/

/* FV */
.fv__pc {
  margin-top: 160px;
}

.fv__sp {
  margin-top: 45px;
}

/* menu */
.menu {
  margin-top: 0px;
}

/* point */
.point {
  margin-top: 60px;
}
.point__text {
  margin: 10px 0 0;
  padding: 0 30px;
}
.point__text--underline {
  text-decoration:underline;
}

/* offer */
.offer {
  margin: 40px 0 0;
}
.offer__item {
  padding: 0 30px;
}
.offer__item--list {
  margin-top: 30px;
  margin-bottom: 20px;
}

.bunner {
  margin: 60px 0 0;
  padding: 0 30px 100px;
}
