@charset "UTF-8";
body { font-family: dnp-shuei-gothic-gin-std, sans-serif; font-weight: 400; font-style: normal; color: #4d4d4d; font-size: 14px; line-height: 1.5; }
body.loading { overflow: hidden; }

a { color: #4d4d4d; text-decoration: none; outline: none; }
a:hover { text-decoration: none; }

p { font-size: 18px; line-height: 1.8em; margin: 0px; text-align: justify; text-justify: inter-ideograph; margin-bottom: 10px; }
.sfs p { font-size: 12px; }
.sfl p { font-size: 16px; }
@media screen and (max-width: 584px) { p { font-size: 12px; }
  .sfs p { font-size: 10px; }
  .sfl p { font-size: 14px; } }

.mainimgv00 { width: 100%; height: 100vh; position: fixed; overflow: hidden; left: 0; top: 0; z-index: 2910; }
.mainimgv00 .cov1 { position: absolute; width: 0%; height: 50%; left: 0; top: 50%; z-index: 9920; background-size: cover; background-position: center center; background-image: url("../images/main_02.png"); mix-blend-mode: multiply; background-blend-mode: multiply; }
.mainimgv00 .cov2 { position: absolute; width: 100%; height: 50%; left: 100%; top: 0%; z-index: 9920; background-size: cover; background-position: center center; background-image: url("../images/main_02.png"); mix-blend-mode: multiply; background-blend-mode: multiply; }

.mainimgv0 { position: absolute; width: 100%; height: 100%; left: 0; top: 0; z-index: 9200; }

.mainimgv0 .mainimgv { width: 100%; height: 100%; position: relative; }

.mainimgv0 .mainimgv img { position: absolute; width: 100%; height: auto; left: 0; top: 0; }

.mainimgv00 .bg2 { display: block; vertical-align: bottom; width: 100%; opacity: 0; }

.mainimgv0 p.note { position: absolute; right: 5px; bottom: 5px; z-index: 117; color: #fff; }

.mainimgv00 #aimg2 { position: absolute; width: 100%; height: 100%; left: 0; top: 0; z-index: 5; }

.mainimgv00 #aimg2 canvas { position: absolute; width: 1600px; height: 897px; left: 50%; top: 50%; -webkit-transform: translateX(-50%) translateY(-50%); -moz-transform: translateX(-50%) translateY(-50%); -ms-transform: translateX(-50%) translateY(-50%); transform: translateX(-50%) translateY(-50%); }

h2, h3, h4 { font-feature-settings: "palt"; letter-spacing: 2px; margin-top: 0; font-weight: 600; }

h2 { font-size: 40px; font-family: "Noto Serif JP", "Marcellus", "Roboto Slab", Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif; text-align: center; font-weight: 400; margin-bottom: 40px; line-height: 2em; }
@media screen and (max-width: 584px) { h2 { font-size: 5.6vw; margin-bottom: 20px; } }

h4 { line-height: 1.7em; font-size: 20px; font-weight: normal; margin-bottom: 20px; }
@media screen and (max-width: 584px) { h4 { font-size: 14px; } }

h3 { font-size: 30px; font-family: "Noto Serif JP", "Marcellus", "Roboto Slab", Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif; text-align: center; font-weight: 400; margin-bottom: 20px; position: relative; line-height: 1.7em; }
h3.sty2 { text-align: left; }
h3 img { height: 28px; display: block; width: auto; margin-left: auto; margin-right: auto; margin-bottom: 30px; }
h3.sty3 { text-align: left; padding-top: 40px; }
h3.sty3 span { color: #aec6d7; position: absolute; right: 0; top: 20px; font-size: 24px; letter-spacing: 5px; }
h3.sty3 img { height: 28px; margin-left: 0; }
h3.sty3::after { width: 100px; height: 4px; content: ""; background-color: #22286f; position: absolute; left: 0; top: 0px; }
@media screen and (max-width: 584px) { h3.sty3 { padding-top: 20px; }
  h3.sty3::after { width: 60px; } }
@media screen and (max-width: 584px) { h3 { font-size: 4.5vw; margin-bottom: 20px; margin-top: 20px; } }

#w0 { -webkit-transition: 2s; -moz-transition: 2s; -o-transition: 2s; transition: 2s; opacity: 0; }
.pc #w0 { min-width: 1100px; }
.mobile #w0 { min-width: 100%; }
.show1 #w0 { opacity: 1 !important; }
@media screen and (max-width: 584px) { #w0 { padding-bottom: 0px; } }

.load { width: 100%; height: 50px; position: absolute; left: 0%; top: 35%; z-index: 1000; }
.s1_0 .load { display: none; }

.loader { margin: 60px auto; font-size: 10px; position: relative; text-indent: -9999em; border-top: 5px solid rgba(149, 122, 57, 0.2); border-right: 5px solid rgba(149, 122, 57, 0.2); border-bottom: 5px solid rgba(149, 122, 57, 0.2); border-left: 5px solid #333; -webkit-transform: translateZ(0); -ms-transform: translateZ(0); transform: translateZ(0); -webkit-animation: load8 1.1s infinite linear; animation: load8 1.1s infinite linear; border-radius: 50%; width: 50px; height: 50px; }
.loader::after { border-radius: 50%; width: 50px; height: 50px; }

@-webkit-keyframes load8 { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } }
@keyframes load8 { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } }
header { height: 90px; position: relative; width: 100%; position: fixed; left: 0; top: 0; width: 100%; z-index: 4577; -webkit-transition: 0.3s; -moz-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s; background-color: #fff; -webkit-backdrop-filter: blur(5px); backdrop-filter: blur(5px); }
header .header { max-width: 1200px; margin-left: auto; margin-right: auto; position: relative; width: 100%; height: 100%; }
header .header h1 { position: absolute; left: 10px; margin: 0; width: 80%; top: 15px; max-width: 140px; -webkit-transition: 0.3s; -moz-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s; }
header .header h1 img { display: block; vertical-align: bottom; width: 100%; }
header .hmenu { position: absolute; right: 0; top: 0; height: 46px; width: 50%; max-width: 400px; -webkit-transition: 0.3s; -moz-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s; }
header .hmenu li { height: 100%; width: calc(25% - 1px); float: right; background-color: #ccc; -webkit-transition: 0.3s; -moz-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s; margin-left: 1px; -webkit-transition: 0.3s; -moz-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s; }
header .hmenu li a { display: block; width: 100%; height: 100%; position: relative; }
header .hmenu li a p { position: absolute; left: 0; text-align: center; top: 50%; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); width: 100%; color: #4d4d4d; }
header .hmenu li.req { width: calc(50% - 1px); background-color: #333333; background-color: #958567; background-image: linear-gradient(140deg, #958567 0%, #958567 49%, #958567 50%, #aaa081 78%, #9a9072 100%); border: 1px solid #958567; box-sizing: border-box; }
header .hmenu li.req a p { -webkit-transition: 0.3s; -moz-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s; color: #fff; }
header .hmenu li:hover { opacity: 0.7; }
header .hmenu li:hover.req { opacity: 1; background-color: #333; }
header .hmenu li:hover.req a p { color: #fff; }
@media screen and (max-width: 584px) { header .hmenu { display: none; } }
header nav { position: absolute; width: 100%; bottom: 0; left: 0; padding-left: 200px; box-sizing: border-box; }
header nav .gmenu { width: 100%; max-width: 1100px; margin-left: auto; margin-right: auto; font-size: 0; }
header nav .gmenu li { display: inline-block; height: 40px; position: relative; width: 12.5%; }
header nav .gmenu li a { display: block; width: 100%; height: 100%; position: relative; }
header nav .gmenu li p { text-align: center; position: relative; line-height: 2em; font-size: 14px; color: #4d4d4d; }
header nav .gmenu li::after { width: 0; height: 4px; content: ""; background-color: #333333; position: absolute; left: 50%; bottom: 0; -webkit-transform: translateX(-50%); -moz-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); -webkit-transition: 0.3s; -moz-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s; }
header nav .gmenu li.act::after, header nav .gmenu li:hover::after { width: 80%; }
header nav .gmenu li.dis { opacity: 0.3; pointer-events: none; }
@media screen and (max-width: 584px) { header nav { display: none; } }
.posfix header { height: 80px; }
@media screen and (max-width: 584px) { .posfix header { -webkit-backdrop-filter: blur(5px); backdrop-filter: blur(5px); background: rgba(255, 255, 255, 0.1); -webkit-transition: 0s; -moz-transition: 0s; -o-transition: 0s; transition: 0s; height: 76px; } }
.posfix header .header h1 { top: 15px; }
.posfix header .hmenu { height: 36px; }
@media screen and (max-width: 584px) { header { height: 76px; box-shadow: none; -webkit-box-shadow: none; -moz-box-shadow: none; background-image: none; }
  header .header h1 { width: 50%; max-width: 140px; top: 15px; } }
.loading header { top: -80px; }

.posfix header { box-shadow: 0px 4px 3px 0px rgba(0, 0, 0, 0.2); -webkit-box-shadow: 0px 4px 3px 0px rgba(0, 0, 0, 0.2); -moz-box-shadow: 0px 4px 3px 0px rgba(0, 0, 0, 0.2); background: rgba(255, 255, 255, 0.5); }

.posfix header .header h1 { top: 10px; }

section .secin { position: relative; padding-top: 60px; padding-bottom: 60px; max-width: 1200px; box-sizing: border-box; padding-left: 20px; padding-right: 20px; margin-left: auto; margin-right: auto; }
@media screen and (max-width: 584px) { section .secin { padding-top: 30px; padding-bottom: 30px; padding-left: 20px; padding-right: 20px; } }

@media print { #w0 { padding: 0; margin: 0; }
  section .secin { padding-top: 0px; padding-bottom: 0px; }
  .rbtn1, .rbtn2, .rbtnset, .hhemu0, .reqbtn2, .reqbtn, #wrpG, footer, nav, header, .tlink, .flogo, .hlogo, .stab2, .hmenu4, .spmenubtn, .hmenu2, .hmenu { display: none; } }
.thimi, .thimi2, .thimi4, .thimi3 { opacity: 0; transform: scale(1.1) translate(0, 100px) skew(0deg, -5deg); }

.thimi.ani1 { opacity: 1; -webkit-transition: 1s 0.25s; -moz-transition: 1s 0.25s; -o-transition: 1s 0.25s; transition: 1s 0.25s; transform: scale(1) translate(0, 0) skew(0deg, 0deg); }

.thimi2.ani1 { opacity: 1; -webkit-transition: all 1s 0.3s cubic-bezier(0.22, 0.61, 0.36, 1); transition: all 0.8s 0.3s cubic-bezier(0.22, 0.61, 0.36, 1); transform: scale(1) translate(0, 0) skew(0deg, 0deg); }

.thimi3.ani1 { opacity: 1; -webkit-transition: all 0.8s 0.35s cubic-bezier(0.22, 0.61, 0.36, 1); transition: all 0.8s 0.35s cubic-bezier(0.22, 0.61, 0.36, 1); transform: scale(1) translate(0, 0) skew(0deg, 0deg); }

.thimi4.ani1 { opacity: 1; -webkit-transition: all 0.8s 0.4s cubic-bezier(0.22, 0.61, 0.36, 1); transition: all 0.8s 0.4s cubic-bezier(0.22, 0.61, 0.36, 1); transform: scale(1) translate(0, 0) skew(0deg, 0deg); }

.thim.ani1.ani1fin, .thim2.ani1.ani1fin, .thim4.ani1.ani1fin, .thim3.ani1.ani1fin { opacity: 1; -webkit-transition: all 0s 0s cubic-bezier(0.22, 0.61, 0.36, 1); transition: all 0s 0s cubic-bezier(0.22, 0.61, 0.36, 1); }

.thiml2, .thiml { opacity: 0; -webkit-transform: translateX(10%); -moz-transform: translateX(10%); -ms-transform: translateX(10%); transform: translateX(10%); -webkit-transition: 0.3s; -moz-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s; }
.thiml2.sty2, .thiml.sty2 { -webkit-transform: translateX(3%); -moz-transform: translateX(3%); -ms-transform: translateX(3%); transform: translateX(3%); }

.thimr2, .thimr { opacity: 0; -webkit-transform: translateX(-10%); -moz-transform: translateX(-10%); -ms-transform: translateX(-10%); transform: translateX(-10%); -webkit-transition: 0.3s; -moz-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s; }

.thiml.ani1, .thimr.ani1 { opacity: 1; -webkit-transition: all 2s 0.25s cubic-bezier(0.22, 0.61, 0.36, 1); transition: all 2s 0.25s cubic-bezier(0.22, 0.61, 0.36, 1); -webkit-transform: translateX(0%); -moz-transform: translateX(0%); -ms-transform: translateX(0%); transform: translateX(0%); }

.thiml2.ani1, .thimr2.ani1 { opacity: 1; -webkit-transition: all 2s 0.4s cubic-bezier(0.22, 0.61, 0.36, 1); transition: all 2s 0.4s cubic-bezier(0.22, 0.61, 0.36, 1); -webkit-transform: translateX(0%); -moz-transform: translateX(0%); -ms-transform: translateX(0%); transform: translateX(0%); }

.thim, .thim2, .thim4, .thim3 { opacity: 0; -webkit-transform: translateY(5%); -moz-transform: translateY(5%); -ms-transform: translateY(5%); transform: translateY(5%); -webkit-transition: 0.3s; -moz-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s; }

.thim.thimu, .thim2.thimu, .thim4.thimu, .thim3.thimu { opacity: 0; -webkit-transform: translateY(-5%); -moz-transform: translateY(-5%); -ms-transform: translateY(-5%); transform: translateY(-5%); -webkit-transition: 0.3s; -moz-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s; }

.thim.ani1 { opacity: 1; -webkit-transition: 2s 0.25s; -moz-transition: 2s 0.25s; -o-transition: 2s 0.25s; transition: 2s 0.25s; -webkit-transform: translateY(0%); -moz-transform: translateY(0%); -ms-transform: translateY(0%); transform: translateY(0%); }

.thim2.ani1 { opacity: 1; -webkit-transition: 2s 0.3s; -moz-transition: 2s 0.3s; -o-transition: 2s 0.3s; transition: 2s 0.3s; -webkit-transform: translateY(0%); -moz-transform: translateY(0%); -ms-transform: translateY(0%); transform: translateY(0%); }

.thim3.ani1 { opacity: 1; -webkit-transition: 2s 0.35s; -moz-transition: 2s 0.35s; -o-transition: 2s 0.35s; transition: 2s 0.35s; -webkit-transform: translateY(0%); -moz-transform: translateY(0%); -ms-transform: translateY(0%); transform: translateY(0%); }

.thim4.ani1 { opacity: 1; -webkit-transition: 2s 0.4s; -moz-transition: 2s 0.7s; -o-transition: 2s 0.4s; transition: 2s 0.7s; -webkit-transform: translateX(0%); -moz-transform: translateX(0%); -ms-transform: translateX(0%); transform: translateX(0%); }

.thim.ani1.ani1fin, .thim2.ani1.ani1fin, .thim4.ani1.ani1fin, .thim3.ani1.ani1fin, .thiml.ani1.ani1fin, .thimr.ani1.ani1fin, .thiml2.ani1.ani1fin, .thimr2.ani1.ani1fin { opacity: 1; -webkit-transition: all 0s 0s cubic-bezier(0.22, 0.61, 0.36, 1); transition: all 0s 0s cubic-bezier(0.22, 0.61, 0.36, 1); }

@media screen and (max-width: 584px) { #w0 { padding-bottom: 80px; } }

footernav { position: fixed; left: 0; bottom: 0; z-index: 1000; width: 100%; height: 76px; background-color: #fff; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-transition: 1s; -moz-transition: 1s; -o-transition: 1s; transition: 1s; }
@media screen and (max-width: 330px) { footernav { height: 56px; }
  footernav .paradeiser_icon_canvas img { margin-bottom: 0px !important; } }
footernav a { position: relative; z-index: 5; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; margin: 0; padding-top: 10px; padding-bottom: 10px; color: #1A2A5E; text-align: center; text-decoration: none; font-weight: 400; font-size: 10px; cursor: pointer; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; -webkit-box-flex: 5; -webkit-flex-grow: 5; -ms-flex-positive: 5; flex-grow: 5; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; width: 33.333%; background: #AAB3BA; border-right: 1px solid #FFFFFF; }
footernav a:last-child { border-right: none; }
footernav a.outline { background: #1A2A5E; color: #fff; }
footernav .paradeiser_icon_canvas { display: block; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; margin: 0 auto; width: 100%; height: 24px; color: #1A2A5E; text-align: center; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; }
footernav .paradeiser_icon_canvas img { display: block; margin: 0; max-width: 24px; margin-bottom: 10px; width: 100%; height: auto; }
footernav span { margin-top: 5px; font-size: 12px; min-width: 5em; text-align: center; white-space: nowrap; }
footernav span.st1 { line-height: 1em; transform: scale(0.96); -moz-transform: scale(0.96); -webkit-transform: scale(0.96); -o-transform: scale(0.96); -ms-transform: scale(0.96); }
@media screen and (max-width: 330px) { footernav span { transform: scale(0.8, 0.8); -moz-transform: scale(0.8, 0.8); -webkit-transform: scale(0.8, 0.8); -o-transform: scale(0.8, 0.8); -ms-transform: scale(0.8, 0.8); } }
.loading footernav { bottom: -80px; }

.menubtn { width: 76px; height: 76px; position: fixed; right: -80px; top: 0px; z-index: 4677; cursor: pointer; -webkit-transition: 0.3s; -moz-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s; }
.menubtn a { position: absolute; width: 100%; height: 100%; left: 0; top: 0; z-index: 5; display: none; }
.menubtn div { width: 40px; height: 36px; margin-bottom: 0px; margin-top: 8px; margin-left: auto; margin-right: auto; position: relative; }
.menubtn div span { display: block; background: #4d4d4d; width: 100%; height: 3px; position: absolute; left: 0; transition: all 0.4s; -webkit-transition: all 0.4s; -moz-transition: all 0.4s; }
.menubtn div span:first-child { top: 9px; }
.menubtn div span:nth-child(2) { margin-top: -1px; top: 50%; }
.menubtn div span:last-child { bottom: 9px; }
.menubtn p { color: #4d4d4d; width: 100%; position: relative; font-size: 11px; line-height: 1em; text-align: center; z-index: -1; }
.menubtn p img { display: block; vertical-align: bottom; width: auto; height: 14px; margin-left: auto; margin-right: auto; }
.menubtn p.cls { display: none; }
.menubtn p.back { display: none; }
.menuop2 .menubtn span:first-child { width: 50%; -webkit-transform: translateY(10px) rotate(45deg); -moz-transform: translateY(10px) rotate(45deg); -ms-transform: translateY(10px) rotate(45deg); transform: translateY(10px) rotate(45deg); top: 18px; left: -3px; }
.menuop2 .menubtn span:last-child { bottom: 18px; left: -3px; width: 50%; -webkit-transform: translateY(-11px) rotate(-45deg); -moz-transform: translateY(-11px) rotate(-45deg); -ms-transform: translateY(-11px) rotate(-45deg); transform: translateY(-11px) rotate(-45deg); }
.menuop2 .menubtn p.open { display: none; }
.menuop2 .menubtn p.cls { display: none; }
.menuop2 .menubtn p.back { display: block; }
.menuop2 .menubtn a { display: block; }
.menuop .menubtn p.open { display: none; }
.menuop .menubtn p.cls { display: block; }
.menuop .menubtn div span:first-child { -webkit-transform: translateY(10px) rotate(45deg); -moz-transform: translateY(10px) rotate(45deg); -ms-transform: translateY(10px) rotate(45deg); transform: translateY(10px) rotate(45deg); }
.menuop .menubtn div span:nth-child(2) { opacity: 0; }
.menuop .menubtn div span:last-child { -webkit-transform: translateY(-5px) rotate(-45deg); -moz-transform: translateY(-5px) rotate(-45deg); -ms-transform: translateY(-5px) rotate(-45deg); transform: translateY(-5px) rotate(-45deg); }
.mobile .menubtn { right: 0px; }
.loading.mobile .menubtn { right: -80px; }

#wrpG { width: 100%; max-width: 500px; height: 100vh; position: relative; padding-top: 76px; /*	padding-bottom: 10vh;*/ padding-bottom: 76px; position: fixed; top: 0px; left: 101%; z-index: 600; overflow: auto; box-sizing: border-box; -webkit-transition: 0.3s; -moz-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s; }
#wrpG::after { position: absolute; width: 100%; height: 100%; left: 0; top: 0; z-index: 601; content: ""; -webkit-backdrop-filter: blur(5px); backdrop-filter: blur(5px); background: rgba(255, 255, 255, 0.1); }
#wrpG .cnavi { width: 100%; height: 100%; box-sizing: border-box; position: relative; z-index: 607; }
#wrpG .cnavi li { width: 100%; height: 60px; position: relative; float: left; background-color: #E7E7E7; border-bottom: 1px solid #1A2A5E; }
#wrpG .cnavi li.dis { opacity: 0.7; pointer-events: none; }
#wrpG .cnavi li .ctit { width: 100%; position: relative; z-index: 5; box-sizing: border-box; -webkit-transition: 0.3s; -moz-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s; color: #ffffff; text-decoration: underline; }
#wrpG .cnavi li a { position: absolute; width: 100%; height: 100%; left: 0; top: 0; z-index: 6; }
#wrpG .cnavi li a p { position: absolute; left: 50%; top: 50%; -webkit-transform: translateX(-50%) translateY(-50%); -moz-transform: translateX(-50%) translateY(-50%); -ms-transform: translateX(-50%) translateY(-50%); transform: translateX(-50%) translateY(-50%); font-size: 14px; position: relative; display: inline-block; color: #1A2A5E; }

.menuop { overflow: hidden; }
.menuop #wrpG { left: 0; }

.secnote { position: relative; font-size: 12px; line-height: 1.5em; }
.secnote .secin { padding-top: 20px; padding-bottom: 30px; border-top: 1px solid #DFE7EE; }
@media screen and (max-width: 584px) { .secnote { font-size: 10px; line-height: 1.4em; text-align: left; text-align: justify; text-justify: inter-ideograph; } }

.ftlink { background-color: #fff; position: relative; border-top: 1px solid #ccc; padding-top: 15px; }
.ftlink ul { position: relative; text-align: center; }
.ftlink ul li { display: inline-block; position: relative; padding-left: 10px; padding-right: 10px; }
.ftlink ul li a { display: block; width: 100%; height: 100%; position: relative; }
.ftlink ul li::after { width: 1px; height: 60%; content: ""; background-color: #cccccc; position: absolute; right: 0; top: 35%; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }
.ftlink ul li:before { width: 0; height: 2px; content: ""; background-color: #252776; position: absolute; left: 50%; bottom: 4px; -webkit-transform: translateX(-50%); -moz-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); -webkit-transition: 0.3s; -moz-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s; }
.ftlink ul li:last-child::after { display: none; }
.ftlink ul li.act:before, .ftlink ul li:hover:before { width: 60%; }

.btnset { height: 50px; width: 90%; margin-top: 20px; max-width: 400px; margin-left: auto; margin-right: auto; background-color: #DFE7EE; -webkit-transition: 0.3s; -moz-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s; }
.btnset a { display: block; width: 100%; height: 100%; position: relative; }
.btnset a p { position: absolute; width: 100%; left: 0; top: 50%; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); z-index: 3; color: #252776; text-align: center; }
.btnset:hover { opacity: 0.7; }

.ftreq { position: relative; background-color: #DFE7EE; padding-bottom: 40px; }
.ftreq h4 { font-weight: normal; background-color: #333333; text-align: center; color: #fff; margin: 0; padding-top: 20px; padding-bottom: 20px; font-size: 22px; }
.ftreq .freqbtn { height: 50px; width: 90%; margin-top: 20px; max-width: 400px; margin-left: auto; margin-right: auto; background-color: #252776; -webkit-transition: 0.3s; -moz-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s; }
.ftreq .freqbtn a { display: block; width: 100%; height: 100%; position: relative; }
.ftreq .freqbtn a p { position: absolute; width: 100%; left: 0; top: 50%; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); z-index: 3; color: #fff; text-align: center; }
.ftreq .freqbtn:hover { opacity: 0.7; }
.ftreq .ftelp { font-size: 14px; line-height: 1.4em; text-align: center; }
@media screen and (max-width: 584px) { .ftreq .ftelp { font-size: 12px; font-feature-settings: "pwid"; letter-spacing: 0px; } }
.ftreq h5 { font-size: 16px; font-weight: normal; text-align: center; }
.ftreq .ftel { margin-left: auto; margin-right: auto; display: block; box-sizing: border-box; position: relative; font-size: 40px; line-height: 1em; margin-bottom: 20px; text-align: center; }
.ftreq .ftel::before { content: ''; position: relative; display: inline-block; margin-left: 10px; vertical-align: middle; width: 60px; height: 40px; background: url("../images/common/ftel.png") no-repeat; background-size: 100% auto; }

.mainimgc p.note { position: absolute; right: 5px; bottom: 5px; z-index: 2; line-height: 1em; color: #fff; text-shadow: 1px 1px 3px #4d4d4d; margin: 0; font-feature-settings: "pwid"; letter-spacing: 0px; }

.hmenu4 { text-align: center; height: 50px; width: 50px; cursor: pointer; position: fixed; right: -200px; bottom: 80px; background: #D9B8B8; /*background: -webkit-gradient(linear, top ,bottom , rgba(23,96,127,1), rgba(153,180,195,1));
background: -webkit-linear-gradient(30deg, rgba(23,96,127,1) 0%, rgba(153,180,195,1) 100%);
background: -moz-linear-gradient(30deg, rgba(23,96,127,1) 0%, rgba(153,180,195,1) 100%);
background: linear-gradient(30deg, rgba(23,96,127,1) 0%, rgba(153,180,195,1) 100%);
*/ z-index: 3500; border-radius: 50%; -moz-border-radius: 50%; -webkit-border-radius: 50%; -o-border-radius: 50%; -ms-border-radius: 50%; -webkit-transition: 0.5s; -moz-transition: 0.5s; -o-transition: 0.5s; transition: 0.5s; text-shadow: 0 1px 1px rgba(0, 0, 0, 0.3); /*display: none;*/ }
@media screen and (max-width: 584px) { .hmenu4 { bottom: 10px; } }

.hmenu4 a { display: block; width: 100%; height: 100%; color: #D9B8B8; }

.hmenu4::after { pointer-events: none; content: ""; position: absolute; left: 0; right: 0; top: 22px; z-index: 1; width: 12px; height: 12px; margin: auto; border-left: #fff solid 1px; border-top: #fff solid 1px; -webkit-transform: rotate(45deg); transform: rotate(45deg); }

.posfix .hmenu4 { right: 20px; }
@media screen and (max-width: 584px) { .posfix .hmenu4 { right: 10px; } }

.st0 { fill: none; stroke: #FFFFFF; stroke-width: 286.3333; stroke-linecap: round; stroke-linejoin: round; stroke-miterlimit: 10; }

.mainfc3 { position: fixed; left: 50%; bottom: 100px; z-index: 9978; max-width: 300px; width: 100%; -webkit-transform: translateX(-50%); -moz-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); }
.mainfc3 img { opacity: 0; display: block; vertical-align: bottom; width: 100%; }

.scbar { position: absolute; z-index: 7000; width: 1px; left: 50%; bottom: 0; overflow: hidden; height: 40px; }
.scbar::after { position: absolute; left: 0; top: 0; height: 50%; content: ""; display: block; width: 1px; background-color: #fff; animation: scroll 2s ease 0s infinite normal; }

@keyframes scroll { 0% { top: -50%; }
  100% { top: 150%; } }
.mainfc2 { position: fixed; left: 50%; top: 50%; z-index: 9978; max-width: 300px; width: 100%; -webkit-transform: translateX(-50%) translateY(-50%); -moz-transform: translateX(-50%) translateY(-50%); -ms-transform: translateX(-50%) translateY(-50%); transform: translateX(-50%) translateY(-50%); }
.mainfc2 img { opacity: 0; display: block; vertical-align: bottom; width: 100%; transform-origin: 50% 50%; -moz-transform-origin: 50% 50%; -webkit-transform-origin: 50% 50%; transform: scale(0.8, 0.8); -moz-transform: scale(0.8, 0.8); -webkit-transform: scale(0.8, 0.8); -o-transform: scale(0.8, 0.8); -ms-transform: scale(0.8, 0.8); }
.mainfc2 img.s2 { position: absolute; width: 100%; height: 100%; left: 0; top: 0; }

.mainfc { width: 100%; position: fixed; left: 50%; top: 50%; width: 1000px; z-index: 9978; -webkit-transform: translateX(-50%) translateY(-50%); -moz-transform: translateX(-50%) translateY(-50%); -ms-transform: translateX(-50%) translateY(-50%); transform: translateX(-50%) translateY(-50%); }
.mainfc svg { width: 100%; position: relative; }

.svg0 { width: 318px; height: 70px; position: absolute; left: 150px; top: 50%; z-index: 2227; transform-origin: 0% 0%; -moz-transform-origin: 0% 0%; -webkit-transform-origin: 0% 0%; }

.cls-1 { width: 318px; height: 70px; fill: none; stroke: #FFFFFF; stroke-width: 402; stroke-linecap: round; stroke-linejoin: round; stroke-miterlimit: 10; stroke-dasharray: 1500; stroke-dashoffset: 1500; }

#svg-animation, #svg-animation2 { max-width: 100%; height: auto; }

.ani1 .mainimg .mainc .svg0 { -webkit-transition: 4s; -moz-transition: 4s; -o-transition: 4s; transition: 4s; opacity: 1; left: 50px; /*transform: scale(1.1, 1.1);*/ /*-moz-transform: scale(1.1, 1.1);*/ /*-webkit-transform: scale(1.1, 1.1);*/ /*-o-transform: scale(1.1, 1.1);*/ /*-ms-transform: scale(1.1, 1.1);*/ /*transform: scale(1.3);*/ /*-moz-transform: scale(1.3);*/ /*-webkit-transform: scale(1.3);*/ /*-o-transform: scale(1.3);*/ /*-ms-transform: scale(1.3);*/ }
.ani1 .mainc4 { opacity: 1; bottom: 0px; -webkit-transition: 3s 1s; -moz-transition: 3s 1s; -o-transition: 3s 1s; transition: 3s 1s; }

.ani1fin .mainimg .mainc .svg0 { -webkit-transition: 0s; -moz-transition: 0s; -o-transition: 0s; transition: 0s; }
