@charset "UTF-8";
/*==================================================*/
/* 前提css */
/*==================================================*/
a, article, blockquote, body, caption, dd, div, dl, dt, footer, h1, h2, h3, h4, h5, h6, header, html, iframe, img, li, nav, ol, p, pre, section, small, span, strong, table, td, th, tr, ul, figure { background: 0; border: 0; font-size: 100%; line-height: 1; margin: 0; outline: 0; padding: 0; vertical-align: bottom; }

a, small, span, strong { vertical-align: baseline; }

article, footer, header, nav, section { display: block; }

li { list-style: none; }

table { border-collapse: collapse; border-spacing: 0; }

address, th { font-style: normal; }

:focus, a:focus { outline: 0; }

br { letter-spacing: normal; }

textarea { resize: none; }

a { text-decoration: none; }

main img { height: auto; width: 100%; }

/*==================================================*/
/* レスポンシブ用css */
/*==================================================*/
.pc { display: block; }
.pc.inline { display: inline; }
.pc.flex { display: flex; }

.sp { display: none; }
.sp.inline { display: none; }
.sp.flex { display: none; }

@media (max-width: 768px) { .pc { display: none; }
  .pc.inline { display: none; }
  .pc.flex { display: none; }
  .sp { display: block; }
  .sp.inline { display: inline; }
  .sp.flex { display: flex; } }
/*==================================================*/
/* アニメーション用css */
/*==================================================*/
/*==================================================*/
/*==============================================================*/
/* アニメーション */
/*==============================================================*/
@-webkit-keyframes bright { 0% { filter: brightness(0.2); }
  100% { filter: brightness(1); } }
@-moz-keyframes bright { 0% { filter: brightness(0.2); }
  100% { filter: brightness(1); } }
@keyframes bright { 0% { filter: brightness(0.2); }
  100% { filter: brightness(1); } }
@-webkit-keyframes scroll { 0% { transform: translateY(0%); }
  50% { transform: translateY(30%); }
  100% { transform: translateY(0%); } }
@-moz-keyframes scroll { 0% { transform: translateY(0%); }
  50% { transform: translateY(30%); }
  100% { transform: translateY(0%); } }
@keyframes scroll { 0% { transform: translateY(0%); }
  50% { transform: translateY(30%); }
  100% { transform: translateY(0%); } }
@-webkit-keyframes scroll_mozi { 0% { transform: translateY(0%) rotateZ(90deg) scaleX(0.8); }
  50% { transform: translateY(12%) rotateZ(90deg) scaleX(0.8); }
  100% { transform: translateY(0%) rotateZ(90deg) scaleX(0.8); } }
@-moz-keyframes scroll_mozi { 0% { transform: translateY(0%) rotateZ(90deg) scaleX(0.8); }
  50% { transform: translateY(12%) rotateZ(90deg) scaleX(0.8); }
  100% { transform: translateY(0%) rotateZ(90deg) scaleX(0.8); } }
@keyframes scroll_mozi { 0% { transform: translateY(0%) rotateZ(90deg) scaleX(0.8); }
  50% { transform: translateY(12%) rotateZ(90deg) scaleX(0.8); }
  100% { transform: translateY(0%) rotateZ(90deg) scaleX(0.8); } }
@-webkit-keyframes text_on { 0% { opacity: 0; }
  99% { opacity: 1; }
  100% { opacity: 1; } }
@-moz-keyframes text_on { 0% { opacity: 0; }
  99% { opacity: 1; }
  100% { opacity: 1; } }
@keyframes text_on { 0% { opacity: 0; }
  99% { opacity: 1; }
  100% { opacity: 1; } }
@-webkit-keyframes text-eff_on { 0% { left: -100%; }
  50% { left: 0%; }
  100% { left: 100%; } }
@-moz-keyframes text-eff_on { 0% { left: -100%; }
  50% { left: 0%; }
  100% { left: 100%; } }
@keyframes text-eff_on { 0% { left: -100%; }
  50% { left: 0%; }
  100% { left: 100%; } }
.bright { -webkit-animation: bright 1s ease; -moz-animation: bright 1s ease; animation: bright 1s ease; -webkit-animation-fill-mode: both; -moz-animation-fill-mode: both; animation-fill-mode: both; }

/*==================================================
 1. common 2. header 3. main 4. footer 5. other

==================================================*/
/*================================================== 1. common
==================================================*/
/* color */
/* font */
/* development */
img:not([alt]) { outline: 3px dashed pink; }

/* Common Parts */
body { color: #231815; overflow-x: hidden; }

.wrap_overflow { overflow: hidden; }

button { background-color: transparent; border: none; cursor: pointer; outline: none; padding: 0; appearance: none; position: relative; display: inline-block; }
button::after { position: absolute; bottom: 2px; left: 0; content: ''; width: 100%; height: 1px; background: #fff; opacity: 0; visibility: hidden; transition: .3s; }
button:hover::after { bottom: -2px; opacity: 1; visibility: visible; }

.pc { display: inherit; }
@media (max-width: 768px) { .pc { display: none; } }

.sp { display: none; }
@media (max-width: 768px) { .sp { display: inherit; } }

/* animation */
@keyframes animation { 0% { transform: translate(-50%, 0); opacity: 0; }
  40% { opacity: 1; }
  80% { transform: translate(-50%, 3.125vw); opacity: 0; }
  100% { opacity: 0; } }
/*@keyframes animation_ie { 0% { transform: translate(-50%, 0); opacity: 0; } 40% { opacity: 1; } 80% { transform: translate(-50%, vw(40)); opacity: 0; } 100% { opacity: 0; }
}*/
@keyframes animation_sp { 0% { transform: translate(-50%, 0); opacity: 0; }
  40% { opacity: 1; }
  80% { transform: translate(-50%, 13.0208333333vw); opacity: 0; }
  100% { opacity: 0; } }
.InVfadeInUp { opacity: 0; animation-duration: 4s; animation-delay: .5s; }

.animated { animation-duration: .75s; }

#loading { width: 100vw; height: 100vh; transition: all 1s; background-color: #032345; position: fixed; top: 0; left: 0; z-index: 9999; display: flex; justify-content: center; align-items: center; }
#loading img { width: 107px; height: 114px; }
#loading.loaded { opacity: 0; visibility: hidden; }

/*================================================== 2. header
==================================================*/
header { width: 100%; height: 56.25vw; background: url("../img/main_visual.jpg") no-repeat center/cover; color: #fff; text-align: center; }
header .header_item { padding: 4.0625vw 4.6875vw 0; display: flex; justify-content: space-between; align-items: flex-start; }
header .header_item h1 { display: block; width: 6.640625vw; height: auto; }
header .header_item a .header_button { color: #fff; position: relative; display: block; z-index: 2; font-family: "Lora", serif; font-size: 0.9375vw; overflow: visible; }
header .header_item a .header_button::before { content: ""; width: 2.96875vw; height: 2.96875vw; background: #ad9b7a; border-radius: 50%; display: block; position: absolute; top: 50%; left: -1.875vw; transform: translateY(-50%); z-index: -1; }
header .catch { margin-top: 11.71875vw; font-size: 1.875vw; font-family: "Noto Serif JP", serif; }
header .eng { margin-top: 20.625vw; font-size: 0.9375vw; font-family: "Lora", serif; }
header .circle_animation { height: 5.46875vw; width: 1px; background: #fff; margin: 0.9375vw auto 0; display: block; position: relative; }
header .circle_animation span { width: 0.625vw; height: 0.625vw; background: #fff; -webkit-border-radius: 50%; -moz-border-radius: 50%; border-radius: 50%; position: absolute; top: 0.78125vw; left: 50%; transform: translateX(-50%); animation: animation 2s infinite; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
@media screen and (min-width: 0\0 ) and (min-resolution: 72dpi) { header .circle_animation span { /* IE向けのCSS～START */ left: -0.234375vw; /* IE向けのCSS～END */ }
  header .circle_animation span .selector { property: value; } }
@media (max-width: 768px) { header { height: 164.9739583333vw; background: url("../img/main_visual_sp.jpg") no-repeat center/cover; color: #fff; text-align: center; }
  header .header_item { padding: 9.6354166667vw 0 73.4375vw; display: flex; justify-content: center; align-items: flex-start; }
  header .header_item h1 { display: block; width: 23.9583333333vw; height: auto; }
  header a .header_button { color: #fff; border: 1px solid #fff; background: transparent; font-size: 3.6458333333vw; font-family: "Lora", serif; letter-spacing: 2px; padding: 0.5em; transition: .3s ease; }
  header a .header_button::before { content: none; }
  header a .header_button:hover { color: #032345; background: #fff; }
  header .eng { margin-top: 10.9375vw; font-size: 2.6041666667vw; font-family: "Lora", serif; }
  header .circle_animation { height: 18.2291666667vw; margin: 4.5572916667vw auto 0; position: relative; }
  header .circle_animation span { width: 2.0833333333vw; height: 2.0833333333vw; top: 1.25vw; -webkit-animation: animation_sp 2s infinite; -moz-animation: animation_sp 2s infinite; -o-animation: animation_sp 2s infinite; animation: animation_sp 2s infinite; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } }
@media screen and (max-width: 768px) and (min-width: 0\0 ) and (min-resolution: 72dpi) { header .circle_animation span { /* IE向けのCSS～START */ left: -0.9114583333vw; animation: animation_sp 2s infinite; /* IE向けのCSS～END */ }
  header .circle_animation span .selector { property: value; } }

/*================================================== 3. main
==================================================*/
main h2 { display: table; margin: 0 auto 6.09375vw; text-align: center; color: #161332; font-size: 2.5vw; position: relative; font-family: "Lora", serif; }
main h2::before { content: ""; width: 1.5625vw; height: 1.5625vw; border-radius: 50%; background: #161332; position: absolute; top: -1.40625vw; left: -1.484375vw; }
main h2::after { color: #ad9b7a; font-size: 1.25vw; display: block; position: absolute; bottom: -2.1875vw; left: 50%; transform: translateX(-50%); width: 100vw; font-family: "Noto Serif JP", serif; letter-spacing: 2px; }
@media (max-width: 768px) { main h2 { margin: 0 auto 10.15625vw; font-size: 6.25vw; }
  main h2::before { width: 2.6041666667vw; height: 2.6041666667vw; top: -2.34375vw; left: -2.4739583333vw; }
  main h2::after { font-size: 3.6458333333vw !important; bottom: -5.7291666667vw; } }
main .text { font-size: 1.25vw; line-height: 2; font-family: "Noto Serif JP", serif; }
@media (max-width: 768px) { main .text { font-size: 4.1666666667vw; } }
@media (max-width: 768px) { main section { width: 95%; margin: 0 auto; } }
main #concept { margin-top: 20.9375vw; position: relative; }
main #concept h2 { text-align: left; margin: 0 auto 8.59375vw 0; }
main #concept h2::after { bottom: -5.78125vw; left: 0; font-size: 1.5625vw; transform: translateX(0); content: "私たちの思い"; letter-spacing: 0; }
main #concept .concept_img01 { width: 13.28125vw; height: auto; }
main #concept .concept_img02 { width: 18.90625vw; height: auto; }
main #concept .concept_img03 { width: 21.328125vw; height: auto; }
main #concept .concept_img01 { position: absolute; right: 26.5625vw; top: -4.21875vw; z-index: 2; }
main #concept .concept_img01::before { content: ""; width: 26.5625vw; height: 25.78125vw; background: url("../img/concept_fig01.svg") no-repeat center/contain; position: absolute; top: -14.453125vw; right: -16.796875vw; z-index: -1; }
main #concept .animation_inner { width: 32.5vw; margin: 0 auto; position: relative; }
main #concept .animation_inner .concept_img02 { position: absolute; left: -22.65625vw; bottom: 1.25vw; }
main #concept .animation_inner .concept_img02::before { content: ""; width: 39.0625vw; height: 44.375vw; background: url("../img/concept_fig02.svg") no-repeat center/contain; position: absolute; bottom: 14.84375vw; right: 0vw; z-index: -1; }
main #concept .concept_img03 { position: absolute; right: 20.15625vw; bottom: -7.5vw; }
main #concept .concept_img03::before { content: ""; width: 35.15625vw; height: 37.34375vw; background: url("../img/concept_fig03.svg") no-repeat center/contain; position: absolute; bottom: -5.859375vw; right: -24.296875vw; z-index: -1; }
@media (max-width: 768px) { main #concept { margin-top: 39.0625vw; }
  main #concept .circle01_sp { position: absolute; top: -30.2083333333vw; left: -13.0208333333vw; z-index: -1; width: 100%; height: auto; }
  main #concept h2 { text-align: center; margin: 0 auto 14.3229166667vw; }
  main #concept h2::after { bottom: -5.78125vw; left: 50%; transform: translateX(-50%); }
  main #concept .animation_inner { width: 90%; background: rgba(255, 255, 255, 0.9); }
  main #concept .concept_img_sp01 { margin-top: 5.2083333333vw; margin-bottom: 39.0625vw; display: flex; justify-content: space-between; align-items: center; position: relative; }
  main #concept .concept_img_sp01 img { width: 48%; height: auto; }
  main #concept .concept_img_sp01::after { content: ""; width: 91.1458333333vw; height: 88.4114583333vw; background: url("../img/concept_fig01.svg") no-repeat center/contain; position: absolute; bottom: -39.0625vw; left: 50%; transform: translateX(-50%); z-index: -1; }
  main #concept .concept_img_sp02 { padding-top: 39.0625vw; margin-bottom: 39.0625vw; display: flex; justify-content: center; align-items: center; position: relative; }
  main #concept .concept_img_sp02 img { width: 80%; height: auto; }
  main #concept .concept_img_sp02::after { content: ""; width: 91.1458333333vw; height: 96.7447916667vw; background: url("../img/concept_fig03.svg") no-repeat center/contain; position: absolute; top: 13.0208333333vw; left: 50%; transform: translateX(-50%); z-index: -1; } }
main #lineup { margin: 12.5vw auto 3.125vw; }
main #lineup h2::after { content: "あなたのニーズに合わせた4つのラインナップ。"; }
main #lineup .cards { display: flex; justify-content: space-between; align-items: center; width: 69.375vw; margin: 0 auto; position: relative; }
main #lineup .cards .card { width: 15.3125vw; background: #fff; position: relative; margin-left: -1.640625vw; height: 23.75vw; }
main #lineup .cards .card a { color: #231815; transition: .3s ease; }
main #lineup .cards .card a .card_pic { position: relative; }
main #lineup .cards .card a .card_pic .cover { opacity: 0; position: absolute; top: 0; left: 0; height: 100%; width: 100%; background: rgba(173, 155, 122, 0.6); display: flex; justify-content: center; align-items: center; transition: .3s ease; }
main #lineup .cards .card a .card_pic .cover img { width: auto !important; height: auto; }
main #lineup .cards .card a .texts { padding: 1.25vw 1.40625vw; text-align: right; }
main #lineup .cards .card a .texts .eng { font-size: 0.9375vw; text-align: left; font-family: "Lora", serif; }
main #lineup .cards .card a .texts .copy { font-size: 0.9375vw; text-align: left; margin-top: 0.625vw; font-family: "Noto Serif JP", serif; }
main #lineup .cards .card a .texts .lineup_btn { font-size: 0.78125vw; position: relative; margin-top: 1.40625vw; transition: .3s ease; overflow: visible; }
main #lineup .cards .card a .texts .lineup_btn::before { content: ""; width: 0.46875vw; height: 0.46875vw; border-radius: 50%; background: #231815; position: absolute; top: 50%; left: -0.625vw; transform: translateY(-50%); transition: .3s ease; }
main #lineup .cards .card a .texts .lineup_btn::after { position: absolute; bottom: 2px; left: 0; content: ''; width: 100%; height: 1px; background: #231815; opacity: 0; visibility: hidden; transition: .3s; }
main #lineup .cards .card a:hover .card_pic .cover { opacity: 1; }
main #lineup .cards .card a:hover .texts .lineup_btn::after { bottom: -2px; opacity: 1; visibility: visible; }
main #lineup .cards .card::after { content: ""; width: 0.703125vw; height: 4.375vw; position: absolute; right: -0.9375vw; top: 0; }
main #lineup .cards .card:nth-child(1)::after { background: url("../img/lineup_add01.png") no-repeat center/contain; }
main #lineup .cards .card:nth-child(2)::after { background: url("../img/lineup_add02.png") no-repeat center/contain; }
main #lineup .cards .card:nth-child(3)::after { background: url("../img/lineup_add03.png") no-repeat center/contain; }
main #lineup .cards .card:nth-child(4)::after { background: url("../img/lineup_add04.png") no-repeat center/contain; }
main #lineup .cards::after { content: ""; width: 100vw; height: 23.4375vw; background: #ad9b7a; margin-left: calc( 50% - 50vw ); position: absolute; left: 0; bottom: -4.296875vw; z-index: -5; }
@media (max-width: 768px) { main #lineup { margin: 20.8333333333vw auto 5.2083333333vw; }
  main #lineup .cards { flex-wrap: wrap; justify-content: space-around; width: 100%; }
  main #lineup .cards .card { width: 40%; margin-left: -2.734375vw; margin-top: 2.6041666667vw; height: 61.9791666667vw; }
  main #lineup .cards .card a .card_pic { position: relative; }
  main #lineup .cards .card a .texts { padding: 2.0833333333vw 2.34375vw; }
  main #lineup .cards .card a .texts .eng { font-size: 3.125vw; }
  main #lineup .cards .card a .texts .copy { font-size: 3.125vw; margin-top: 2.0833333333vw; }
  main #lineup .cards .card a .texts .lineup_btn { font-size: 2.6041666667vw; margin-top: 4.6875vw; }
  main #lineup .cards .card a .texts .lineup_btn::before { left: -1.0416666667vw; width: 0.78125vw; height: 0.78125vw; }
  main #lineup .cards .card::after { width: 2.34375vw; height: 14.5833333333vw; right: -2.6041666667vw; }
  main #lineup .cards::after { width: 100vw; height: 39.0625vw; bottom: -7.1614583333vw; } }
main #process { margin: 11.875vw auto 3.125vw; }
main #process h2 { margin-bottom: 4.53125vw; }
main #process h2::after { content: "環ダイヤモンドができるまでのプロセス"; }
main #process figure { display: block; margin: 0 auto; width: 70.3125vw; height: auto; }
@media (max-width: 768px) { main #process { margin: 19.7916666667vw auto 5.2083333333vw; }
  main #process h2 { margin-bottom: 15.1041666667vw; }
  main #process figure { width: 100%; } }
main #quality { margin: 10.546875vw auto 4.6875vw; }
main #quality h2 { margin-bottom: 4.53125vw; }
main #quality h2::after { content: "ダイヤモンドグレーティングレポート"; }
main #quality h2 + figure { display: block; margin: 0 auto; width: 70.3125vw; height: auto; }
main #quality .quality_inner { display: flex; justify-content: space-between; align-items: flex-end; margin: -2.5vw auto 0; width: 54.6875vw; }
main #quality .quality_inner .left_inner { width: 29.6875vw; display: flex; flex-direction: column; }
main #quality .quality_inner .left_inner p { margin-top: 2.5vw; }
main #quality .quality_inner .left_inner + figure { width: 18.59375vw; height: auto; }
@media (max-width: 768px) { main #quality { margin: 17.578125vw auto 7.8125vw; }
  main #quality h2 { margin-bottom: 7.5520833333vw; }
  main #quality h2 + figure { margin-left: calc( 50% - 50vw ); width: 100vw; height: auto; }
  main #quality .quality_inner { flex-direction: column; margin: 0 auto; width: 100%; }
  main #quality .quality_inner .left_inner { width: 100%; }
  main #quality .quality_inner .left_inner figure { margin-top: 4.1666666667vw; }
  main #quality .quality_inner .left_inner p { margin-top: 4.1666666667vw; }
  main #quality .quality_inner .left_inner + figure { margin-top: 4.1666666667vw; width: 100%; height: auto; } }
main #news { margin-top: 7.65625vw; }
main #news h2 { display: inherit; margin: 0; text-align: left; color: #fff; font-size: 1.40625vw; position: relative; margin-bottom: 1.5625vw; }
main #news h2::before { content: none; }
main #news h2::after { content: none; }
main #news .width_inner { width: 70.3125vw; margin: 0 auto; padding: 4.375vw 5.9375vw; background: #ad9b7a; }
main #news .width_inner .table { color: #fff; }
main #news .width_inner .table dl { border-bottom: 1px solid #fff; font-size: 1.09375vw; line-height: 1.6; padding: 1.09375vw 0; }
main #news .width_inner .table dl dt { font-size: 1.09375vw; line-height: 1.6; font-family: "Work Sans", sans-serif; font-weight: 500; }
main #news .width_inner .table dl dd { font-size: 1.09375vw; line-height: 1.6; font-family: "Noto Serif JP", serif; }
main #news .width_inner .news_btn { display: block; margin: 1.40625vw 0 0 auto; color: #fff; font-size: 0.9375vw; font-family: "Lora", serif; letter-spacing: 2px; overflow: visible; }
@media (max-width: 768px) { main #news { margin-top: 25.5208333333vw; }
  main #news h2 { font-size: 4.6875vw; margin-bottom: 5.2083333333vw; }
  main #news .width_inner { width: 100vw; box-sizing: border-box; margin-left: calc( 50% - 50vw ); padding: 7.2916666667vw 4.9479166667vw; }
  main #news .width_inner .table { width: 100%; }
  main #news .width_inner .table dl { font-size: 3.6458333333vw; padding: 3.6458333333vw 0; }
  main #news .width_inner .table dl dt { font-size: 3.6458333333vw; }
  main #news .width_inner .table dl dd { font-size: 3.6458333333vw; }
  main #news .width_inner .news_btn { margin: 4.6875vw 0 0 auto; font-size: 3.125vw; } }
main #contact { margin-top: 7.421875vw; text-align: center; }
main #contact a { display: inline-block; }
main #contact a h2::after { content: "お問い合わせはこちら。"; width: 18vw; }
main #contact a h2 span { display: block; position: relative; }
main #contact a h2 span::after { position: absolute; bottom: 2px; left: 0; content: ''; width: 100%; height: 1px; background: #161332; opacity: 0; visibility: hidden; transition: .3s; }
main #contact a:hover h2 span::after { bottom: -2px; opacity: 1; visibility: visible; }
@media (max-width: 768px) { main #contact { margin-top: 19.53125vw; }
  main #contact a { display: inline-block; }
  main #contact a h2::after { width: 60vw; }
  main #contact a:hover h2 span::after { bottom: -0.15625vw; opacity: 1; visibility: visible; } }

/*================================================== 4. footer
==================================================*/
footer { margin-top: 4.296875vw; border-top: 1px solid #ad9b7a; padding-top: 3.4375vw; }
footer .footer_content { width: 70.3125vw; margin: 0 auto; display: flex; justify-content: space-between; align-items: center; }
footer .footer_content .address figure { width: 6.640625vw; height: auto; }
footer .footer_content .address address { color: #161332; margin-top: 1.71875vw; line-height: 1.6; font-size: 1.09375vw; font-family: "Noto Serif JP", serif; }
footer .footer_content nav ul li { text-align: center; font-size: 1.25vw; }
footer .footer_content nav ul li + li { margin-top: 1em; }
footer .footer_content nav ul li a { display: block; color: #161332; transition: .3s ease; font-family: "Lora", serif; position: relative; }
footer .footer_content nav ul li a::after { position: absolute; bottom: 0; left: 0; content: ''; width: 100%; height: 1px; background: #161332; opacity: 0; visibility: hidden; -webkit-transition: .3s; -moz-transition: .3s; -o-transition: .3s; transition: .3s; }
footer .footer_content nav ul li a:hover::after { bottom: -4px; opacity: 1; visibility: visible; }
footer small { margin-top: 4.6875vw; display: block; width: 100%; height: auto; color: #fff; background: #161332; display: flex; justify-content: center; line-height: 3.125vw; font-size: 0.9375vw; font-family: "Work Sans", sans-serif; font-weight: 400; }
@media (max-width: 768px) { footer { margin-top: 14.3229166667vw; padding-top: 11.4583333333vw; }
  footer .footer_content { width: 100%; flex-direction: column-reverse; }
  footer .footer_content .address { display: flex; flex-direction: column; justify-content: center; align-items: center; }
  footer .footer_content .address figure { width: 22.1354166667vw; margin-top: 3em; }
  footer .footer_content .address address { margin-top: 5.7291666667vw; font-size: 3.6458333333vw; text-align: center; }
  footer .footer_content .address address a { color: #231815; }
  footer .footer_content nav ul li { font-size: 4.1666666667vw; }
  footer .footer_content nav ul li a:hover::after { bottom: -0.5208333333vw; }
  footer small { margin-top: 15.625vw; line-height: 10.4166666667vw; font-size: 3.125vw; } }

/*================================================== 5. other
==================================================*/
.gototop { position: fixed; bottom: 3.125vw; right: 0; width: 5vw; height: 5vw; background: #ad9b7a; }
.gototop a { display: block; width: 100%; height: 100%; display: flex; justify-content: center; align-items: center; }
.gototop a figure { width: 2.03125vw; height: 1.015625vw; display: flex; justify-content: center; align-items: center; }
@media (max-width: 768px) { .gototop { bottom: 10.4166666667vw; width: 8.3333333333vw; height: 8.3333333333vw; }
  .gototop a figure { width: 3.3854166667vw; height: 1.6927083333vw; } }

/*# sourceMappingURL=style.css.map */
