@charset "UTF-8";
/*# sourceMappingURL=test.css.map */
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP&display=swap");
@font-face { font-family: 'Noto Serif JP'; font-style: normal; font-weight: 400; src: url("./font/NotoSerifCJKjp-Regular.woff2") format("woff2"), url("./font/NotoSerifCJKjp-Regular.woff") format("woff"); font-display: swap; }

/*Font Awesome5---------------------------------------------*/
@media screen and (min-width: 981px) { /*PC*/ }

@media screen and (max-width: 560px) { /*SP*/ }

@media screen and (max-width: 980px) and (min-width: 561px) { /*TB*/ }

@media screen and (max-width: 560px) { /*SP*/
  body { -webkit-text-size-adjust: 100%; font-size: 75%; } }

@-webkit-keyframes buruburu { 0% { -webkit-transform: translate(0, 0); }
  50% { -webkit-transform: translate(0, -5px); }
  100% { -webkit-transform: translate(0, 0); } }

@-moz-keyframes buruburu { 0% { -webkit-transform: translate(0, 0); }
  50% { -webkit-transform: translate(0, -5px); }
  100% { -webkit-transform: translate(0, 0); } }

@keyframes buruburu { 0% { -webkit-transform: translate(0, 0); }
  50% { -webkit-transform: translate(0, -5px); }
  100% { -webkit-transform: translate(0, 0); } }

@-webkit-keyframes buruburu2 { 0% { -webkit-transform: translate(0, 0); }
  50% { -webkit-transform: translate(0, -20px); }
  100% { -webkit-transform: translate(0, 0); } }

@-moz-keyframes buruburu2 { 0% { -webkit-transform: translate(0, 0); }
  50% { -webkit-transform: translate(0, -20px); }
  100% { -webkit-transform: translate(0, 0); } }

@keyframes buruburu2 { 0% { -webkit-transform: translate(0, 0); }
  50% { -webkit-transform: translate(0, -20px); }
  100% { -webkit-transform: translate(0, 0); } }

@-webkit-keyframes fadein { 0% { opacity: 0; }
  30% { opacity: 70%; }
  70% { opacity: 50%; }
  100% { opacity: 100%; } }

@-moz-keyframes fadein { 0% { opacity: 0; }
  30% { opacity: 70%; }
  70% { opacity: 50%; }
  100% { opacity: 100%; } }

@keyframes fadein { 0% { opacity: 0; }
  30% { opacity: 70%; }
  70% { opacity: 50%; }
  100% { opacity: 100%; } }

@-webkit-keyframes gradAnimeTime { 0% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; } }

@-moz-keyframes gradAnimeTime { 0% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; } }

@keyframes gradAnimeTime { 0% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; } }

.fade { opacity: 0; -webkit-transform: scale(0.9); -moz-transform: scale(0.9); -o-transform: scale(0.9); -ms-transform: scale(0.9); transform: scale(0.9); -webkit-transition: all 0.7s; -moz-transition: all 0.7s; -o-transition: all 0.7s; -ms-transition: all 0.7s; transition: all 0.7s; }

.fade.effect { opacity: 1; -webkit-transform: scale(1); -moz-transform: scale(1); -o-transform: scale(1); -ms-transform: scale(1); transform: scale(1); }

.slidein { opacity: 0; -webkit-transform: translateX(-300px); -ms-transform: translateX(-300px); transform: translateX(-300px); -webkit-transition: all 0.7s; -moz-transition: all 0.7s; -o-transition: all 0.7s; -ms-transition: all 0.7s; transition: all 0.7s; }

.slidein.effect { opacity: 1; -webkit-transform: translateX(0); -ms-transform: translateX(0); transform: translateX(0); }

.slideright { opacity: 0; -webkit-transform: translateX(300px); -ms-transform: translateX(300px); transform: translateX(300px); -webkit-transition: all 0.7s; -moz-transition: all 0.7s; -o-transition: all 0.7s; -ms-transition: all 0.7s; transition: all 0.7s; }

.slideright.effect { opacity: 1; -webkit-transform: translateX(0); -ms-transform: translateX(0); transform: translateX(0); }

@-webkit-keyframes fadeUp { 0% { opacity: 0;
    -webkit-transform: translateY(20px);
    transform: translateY(20px); }
  100% { opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0); } }

@-moz-keyframes fadeUp { 0% { opacity: 0;
    transform: translateY(20px); }
  100% { opacity: 1;
    transform: translateY(0); } }

@keyframes fadeUp { 0% { opacity: 0;
    -webkit-transform: translateY(20px);
    transform: translateY(20px); }
  100% { opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0); } }

.fade-list > * { -webkit-transition: all 0.7s; -moz-transition: all 0.7s; -o-transition: all 0.7s; -ms-transition: all 0.7s; transition: all 0.7s; opacity: 0; -webkit-transform: translateY(20px); -ms-transform: translateY(20px); transform: translateY(20px); position: relative; }

.fade-list.effect > *:nth-child(1) { -webkit-animation: fadeUp 0.5s 0.3s 1 ease normal forwards; animation: fadeUp 0.5s 0.3s 1 ease normal forwards; -webkit-animation-play-state: running; animation-play-state: running; }

.fade-list.effect > *:nth-child(2) { -webkit-animation: fadeUp 0.5s 0.6s 1 ease normal forwards; animation: fadeUp 0.5s 0.6s 1 ease normal forwards; -webkit-animation-play-state: running; animation-play-state: running; }

.fade-list.effect > *:nth-child(3) { -webkit-animation: fadeUp 0.5s 0.9s 1 ease normal forwards; animation: fadeUp 0.5s 0.9s 1 ease normal forwards; -webkit-animation-play-state: running; animation-play-state: running; }

.fade-list.effect > *:nth-child(4) { -webkit-animation: fadeUp 0.5s 1.2s 1 ease normal forwards; animation: fadeUp 0.5s 1.2s 1 ease normal forwards; -webkit-animation-play-state: running; animation-play-state: running; }

.fade-list.effect > *:nth-child(5) { -webkit-animation: fadeUp 0.5s 1.5s 1 ease normal forwards; animation: fadeUp 0.5s 1.5s 1 ease normal forwards; -webkit-animation-play-state: running; animation-play-state: running; }

.fade-list.effect > *:nth-child(6) { -webkit-animation: fadeUp 0.5s 1.8s 1 ease normal forwards; animation: fadeUp 0.5s 1.8s 1 ease normal forwards; -webkit-animation-play-state: running; animation-play-state: running; }

.fade-list.effect > *:nth-child(7) { -webkit-animation: fadeUp 0.5s 2.1s 1 ease normal forwards; animation: fadeUp 0.5s 2.1s 1 ease normal forwards; -webkit-animation-play-state: running; animation-play-state: running; }

.fade-list.effect > *:nth-child(8) { -webkit-animation: fadeUp 0.5s 2.4s 1 ease normal forwards; animation: fadeUp 0.5s 2.4s 1 ease normal forwards; -webkit-animation-play-state: running; animation-play-state: running; }

.fade-list.effect > *:nth-child(9) { -webkit-animation: fadeUp 0.5s 2.7s 1 ease normal forwards; animation: fadeUp 0.5s 2.7s 1 ease normal forwards; -webkit-animation-play-state: running; animation-play-state: running; }

.fade-list.effect > *:nth-child(10) { -webkit-animation: fadeUp 0.5s 3s 1 ease normal forwards; animation: fadeUp 0.5s 3s 1 ease normal forwards; -webkit-animation-play-state: running; animation-play-state: running; }

.fade-list.effect > *:nth-child(11) { -webkit-animation: fadeUp 0.5s 3.3s 1 ease normal forwards; animation: fadeUp 0.5s 3.3s 1 ease normal forwards; -webkit-animation-play-state: running; animation-play-state: running; }

.fade-list.effect > *:nth-child(12) { -webkit-animation: fadeUp 0.5s 3.6s 1 ease normal forwards; animation: fadeUp 0.5s 3.6s 1 ease normal forwards; -webkit-animation-play-state: running; animation-play-state: running; }

.move-img { position: relative; overflow: hidden; z-index: 1; }

.move-img:before { display: block; content: ""; position: absolute; top: 0; left: 0; width: 0%; height: 100%; background: #fff; z-index: 1; -webkit-transform-origin: right center; -ms-transform-origin: right center; transform-origin: right center; -webkit-transform: scaleX(1); -ms-transform: scaleX(1); transform: scaleX(1); -webkit-transition: width 0.3s cubic-bezier(0.19, 1, 0.22, 1) 0s, -webkit-transform 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0.4s; transition: width 0.3s cubic-bezier(0.19, 1, 0.22, 1) 0s, -webkit-transform 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0.4s; -o-transition: width 0.3s cubic-bezier(0.19, 1, 0.22, 1) 0s, transform 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0.4s; transition: width 0.3s cubic-bezier(0.19, 1, 0.22, 1) 0s, transform 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0.4s; transition: width 0.3s cubic-bezier(0.19, 1, 0.22, 1) 0s, transform 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0.4s, -webkit-transform 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0.4s; }

.move-img img { position: relative; width: 100%; height: auto; opacity: 0; left: -100%; -webkit-transition: all 0.7s; -moz-transition: all 0.7s; -o-transition: all 0.7s; -ms-transition: all 0.7s; transition: all 0.7s; }

.move-img.effect img { opacity: 1; left: 0; }

.move-img.effect:before { -webkit-transform: scaleX(0); -ms-transform: scaleX(0); transform: scaleX(0); width: 100%; }

.blur { -ms-filter: blur(6px); -webkit-filter: blur(6px); filter: blur(6px); -webkit-transition: all 0.5s; -moz-transition: all 0.5s; -o-transition: all 0.5s; -ms-transition: all 0.5s; transition: all 0.5s; -webkit-transform: scale(0.95); -moz-transform: scale(0.95); -o-transform: scale(0.95); -ms-transform: scale(0.95); transform: scale(0.95); }

.blur.effect { -webkit-transform: scale(1); -moz-transform: scale(1); -o-transform: scale(1); -ms-transform: scale(1); transform: scale(1); -ms-filter: blur(0); -webkit-filter: blur(0); filter: blur(0); }

/*# sourceMappingURL=test.css.map */
* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }

/*フォントサイズ*/
body { font-family: 'Noto Sans JP',Verdana, Roboto, "Droid Sans", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif; font-weight: 500; font-size: 100%; /*14px*/ letter-spacing: 0; -webkit-font-smoothing: antialiased; -webkit-text-size-adjust: 100%; }

#wrap { font-size: 100%; color: #2E302E; }

table { font-size: inherit; }

/*フォントサイズ*/
.clearfix:after { content: " "; display: block; height: 0.1px; font-size: 0.1em; clear: both; visibility: hidden; }

* + html .clearfix { height: 1%; }

* html .clearfix { height: 1%; }

/*------------------------------------------------------------*/
/*------------------------------------------------------------*/
/*共通*/
/*------------------------------------------------------------*/
/*------------------------------------------------------------*/
a { text-decoration: none; color: inherit; }

a, a * { -webkit-transition: all 0.5s; -moz-transition: all 0.5s; -o-transition: all 0.5s; -ms-transition: all 0.5s; transition: all 0.5s; }

a:hover { text-decoration: underline; }

a:hover img { opacity: 0.8; filter: alpha(opacity=80); }

.clear { clear: both; }

.pd10 { padding: 10px; }

.wd100 { width: 100% !important; }

.fl_r { float: right; }

.fl_l { float: left; }

.tx_ac { text-align: center; }

.tx_ar { text-align: right; }

.tx_al { text-align: left; }

ul.img2 > li, ul.img3 > li, ul.img4 > li { float: left; margin: auto; background: none !important; padding: 5px !important; text-align: center; overflow: hidden; _zoom: 1; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }

@media screen and (max-width: 560px) { ul.img2 > li, ul.img3 > li, ul.img4 > li { /*SP*/ width: 100% !important; } }

ul.img2 > li { width: 50%; }

ul.img3 > li { width: 33.3%; }

ul.img4 > li { width: 25%; }

.free > dt { float: left; margin-right: 15px; }

.free2 > dt { float: right; margin-left: 15px; }

.free > dd, .free2 > dd { overflow: hidden; _zoom: 1; }

@media screen and (max-width: 980px) and (min-width: 561px), screen and (max-width: 560px) { .free, .free2 { /*SP*/ }
  .free > dt, .free2 > dt { float: none; margin-right: 0; margin-left: 0; margin-bottom: 2em; text-align: center; } }

.panel_box { display: -ms-flexbox; display: -webkit-flex; display: -webkit-box; display: flex; -webkit-align-items: stretch; -ms-flex-align: stretch; -webkit-box-align: stretch; align-items: stretch; -webkit-justify-content: flex-start; -ms-flex-pack: start; -webkit-box-pack: start; justify-content: flex-start; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-flex-direction: row; -ms-flex-direction: row; -webkit-box-orient: horizontal; -webkit-box-direction: normal; flex-direction: row; }

.panel_box > div > * { width: 100%; }

.panel_box.box2 > div { width: 50%; }

.panel_box.box3 > div { width: 33.3%; }

.panel_box.box4 > div { width: 25%; }

@media screen and (max-width: 560px) { .panel_box { /*SP*/ }
  .panel_box.box2 div, .panel_box.box3 div, .panel_box.box4 div { width: 100%; } }

.notice { color: red; }

.pd_box { padding: 1em; }

.point { font-size: 115%; font-weight: bold; padding: 0.3em 1em; border-bottom: 1px dotted #C1A580; margin-bottom: 1em; }

.more a { display: block; padding: 0 2em; }

.more a:after { padding-left: 10px; color: #9f1f1f; font-family: "Font Awesome 5 Free"; font-weight: 600; content: "\f105"; }

.more a:hover { text-decoration: none; letter-spacing: 3px; }

/*リンクアイコン----------------------*/
.pdf:after, .word:after, .jtd:after, .excel:after, .zip:after, .outerlink:after, .file:after { margin: 0 5px; }

/*外部リンク*/
a.outerlink:after { font-family: "Font Awesome 5 Free"; font-weight: 600; content: "\f105"; content: "\f35d"; font-weight: 600; color: #9c9c9c; }

/*pdf*/
a.pdf:after { font-family: "Font Awesome 5 Free"; font-weight: 600; content: "\f105"; content: "\f1c1"; color: #ff0000; }

/*word*/
a.word:after { font-family: "Font Awesome 5 Free"; font-weight: 600; content: "\f105"; content: "\f1c2"; color: #007eff; }

/*excel*/
a.excel:after { font-family: "Font Awesome 5 Free"; font-weight: 600; content: "\f105"; content: "\f1c3"; color: #55ad00; }

/*zip*/
a.zip:after { font-family: "Font Awesome 5 Free"; font-weight: 600; content: "\f105"; content: "\f1c6"; color: #9c9c9c; }

/*その他のファイル形式：jtd,xdw*/
a.file:after { font-family: "Font Awesome 5 Free"; font-weight: 600; content: "\f105"; content: "\f016"; color: #9c9c9c; }

/*------------------------------------------------------------*/
/*------------------------------------------------------------*/
/*フッター固定用css*/
/*------------------------------------------------------------*/
/*------------------------------------------------------------*/
html, body { height: 100%; margin: 0; padding: 0; /*　検証　一時コメントアウト overflow: auto; */ }

#wrap { position: relative; width: 100%; height: 100%; min-height: 100%; overflow: hidden; }

body > #wrap { height: auto; }

div#content { margin: 0 auto; line-height: 1.5; }

/*--------------------------------------*/
/* WPビジュアルエディター用--------------------- */
/*--------------------------------------*/
img.size-auto, img.size-full, img.size-large, img.size-medium, .attachment img, .widget-container img { max-width: 100%; height: auto; }

.alignleft, img.alignleft { display: inline; float: left; margin-right: 24px; margin-top: 4px; }

.alignright, img.alignright { display: inline; float: right; margin-left: 24px; margin-top: 4px; }

.aligncenter, img.aligncenter { clear: both; display: block; margin-left: auto; margin-right: auto; }

img.alignleft, img.alignright, img.aligncenter { margin-bottom: 12px; }

.wp-caption { background: #f1f1f1; line-height: 18px; margin-bottom: 20px; max-width: 632px !important; padding: 4px; text-align: center; }

.wp-caption img { margin: 5px 5px 0; max-width: 622px; /* caption width - 10px */ }

.wp-caption p.wp-caption-text { color: #777; font-size: 12px; margin: 5px; }

.wp-smiley { margin: 0; }

.gallery { margin: 0 auto 18px; }

.gallery .gallery-item { float: left; margin-top: 0; text-align: center; width: 33%; }

.gallery-columns-2 .gallery-item { width: 50%; }

.gallery-columns-4 .gallery-item { width: 25%; }

.gallery img { border: 2px solid #cfcfcf; }

.gallery-columns-2 .attachment-medium { max-width: 92%; height: auto; }

.gallery-columns-4 .attachment-thumbnail { max-width: 84%; height: auto; }

.gallery .gallery-caption { color: #777; font-size: 12px; margin: 0 0 12px; }

.gallery dl { margin: 0; }

.gallery img { border: 10px solid #f1f1f1; }

.gallery br + br { display: none; }

#content .attachment img { /* single attachment images should be centered */ display: block; margin: 0 auto; }

/*-----------------------------------------------------------*/
/*ヘッダー*/
/*-----------------------------------------------------------*/
#top_hed { position: fixed; top: 0; left: 0; width: 100%; display: -ms-flexbox; display: -webkit-flex; display: -webkit-box; display: flex; -webkit-align-items: stretch; -ms-flex-align: stretch; -webkit-box-align: stretch; align-items: stretch; -webkit-justify-content: space-between; -ms-flex-pack: justify; -webkit-box-pack: justify; justify-content: space-between; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-flex-direction: row; -ms-flex-direction: row; -webkit-box-orient: horizontal; -webkit-box-direction: normal; flex-direction: row; padding: 0 2%; z-index: 1000; background: rgba(255, 255, 255, 0); -webkit-transition: all 0.7s; -moz-transition: all 0.7s; -o-transition: all 0.7s; -ms-transition: all 0.7s; transition: all 0.7s; }

#top_hed h1, #top_hed #top-contact { padding-top: 1em; }

#top_hed:hover, #top_hed.scroll { background: rgba(255, 255, 255, 0.8); -webkit-backdrop-filter: blur(5px); backdrop-filter: blur(5px); }

#top_hed h1 { width: 33.3%; }

@media screen and (max-width: 560px) { #top_hed h1 { width: 70%; } }

#menu_open { display: inline-block; padding: 2em 1.5em 1em; background: #d90000; text-align: center; cursor: pointer; margin-bottom: 0; -webkit-transition: all 0.7s; -moz-transition: all 0.7s; -o-transition: all 0.7s; -ms-transition: all 0.7s; transition: all 0.7s; }

#menu_open i { font-size: 200%; color: #fff; display: block; }

#menu_open span { display: block; }

#top_hed.scroll #menu_open { font-size: 80%; padding: 1em 1.5em 0.5em; }

#top-contact { width: 33.3%; text-align: right; }

#top-contact ul li { display: inline-block; font-weight: bold; font-size: 20px; font-size: clamp(10px, 1vw + 0.5vw, 30px); }

#top-contact ul li:not(:first-child) { padding-left: 1em; }

#top-contact ul li:not(:first-child):before { content: "/"; margin-right: 1em; }

@media screen and (max-width: 980px) and (min-width: 561px), screen and (max-width: 560px) { #top-contact { display: none; } }

@-webkit-keyframes openMenu { 0% { opacity: 0; }
  50% { opacity: 1; }
  100% { opacity: 1; } }

@-moz-keyframes openMenu { 0% { opacity: 0; }
  50% { opacity: 1; }
  100% { opacity: 1; } }

@keyframes openMenu { 0% { opacity: 0; }
  50% { opacity: 1; }
  100% { opacity: 1; } }

#g_nav { display: none; width: 100%; height: 100vh; position: fixed; top: 0; left: 0; z-index: 10000; padding-right: 70%; -webkit-backdrop-filter: blur(5px); backdrop-filter: blur(5px); }

@media screen and (max-width: 980px) and (min-width: 561px) { #g_nav { padding-right: 50%; } }

@media screen and (max-width: 560px) { #g_nav { padding-right: 15%; } }

#g_nav #site_menu { background: #fff; width: 100%; height: 100vh; padding: 5em 3% 3em; }

#g_nav #site_menu li { font-size: 110%; border-bottom: 1px solid #dedede; }

#g_nav #site_menu li a { display: block; padding: 1em; position: relative; }

#g_nav #site_menu li dl dt { font-size: 90%; font-weight: bold; padding: 10px; position: relative; }

#g_nav #site_menu li dl dt:before { display: inline-block; font-family: "Font Awesome 5 Free"; font-weight: 600; content: "\f107"; color: #900000; margin-right: 10px; }

#g_nav #site_menu li dl dd a { padding: 0.8em 1em; }

#g_nav #site_menu li dl dd a:before { display: inline-block; content: "-"; margin-right: 10px; }

#g_nav.active { display: block; background: rgba(0, 0, 0, 0.2); -webkit-animation: openMenu 0.75s ease 0s 1 normal forwards; animation: openMenu 0.75s ease 0s 1 normal forwards; -webkit-animation-play-state: running; animation-play-state: running; }

#menu_close { display: -ms-flexbox; display: -webkit-flex; display: -webkit-box; display: flex; -webkit-align-items: center; -ms-flex-align: center; -webkit-box-align: center; align-items: center; -webkit-justify-content: flex-start; -ms-flex-pack: start; -webkit-box-pack: start; justify-content: flex-start; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-flex-direction: row; -ms-flex-direction: row; -webkit-box-orient: horizontal; -webkit-box-direction: normal; flex-direction: row; color: #900000; position: absolute; top: 1rem; left: 1rem; z-index: 100; cursor: pointer; }

#menu_close i { font-size: 200%; }

#menu_close span { display: inline-block; opacity: 0; -webkit-transition: all 0.7s; -moz-transition: all 0.7s; -o-transition: all 0.7s; -ms-transition: all 0.7s; transition: all 0.7s; }

#menu_close:hover span { opacity: 1; padding-left: 10px; }

/*-----------------------------------------------------------*/
/*メインコンテンツ*/
/*-----------------------------------------------------------*/
.cont { width: 100%; max-width: 1280px; margin: 0 auto; }

.cont img { max-width: 100%; height: auto; }

/*-----------------------------------------------------------*/
/*フッター*/
/*-----------------------------------------------------------*/
footer { padding: 3em 3%; color: #fff; background: #116c2d; position: relative; }

#f_logo { text-align: center; padding: 0 35%; margin-bottom: 3em; }

#f_menu { position: absolute; top: 1em; right: 1em; }

@media screen and (max-width: 560px) { #f_menu { display: none; } }

#f_menu li { display: inline-block; margin-right: 1em; padding-right: 1em; border-right: 1px solid #fff; }

#copy { text-align: center; font-size: 90%; line-height: 2; }

#copy span { display: block; }

/*# sourceMappingURL=style.css.map */
