@charset "UTF-8";
/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

/* =============================================================

_setting.scss

============================================================= */
/*--------------------------------------------------------------
sp-size
--------------------------------------------------------------*/
/*--------------------------------------------------------------
Media Queries
--------------------------------------------------------------*/
/*$mq_xl: 1920px;*/
/*--------------------------------------------------------------
col-width
--------------------------------------------------------------*/
/*--------------------------------------------------------------
max-width
--------------------------------------------------------------*/
/*--------------------------------------------------------------
fontsize
--------------------------------------------------------------*/
/*--------------------------------------------------------------
z-index
--------------------------------------------------------------*/
.bold {
  font-weight: bold;
}

/*--------------------------------------------------------------
html,body
--------------------------------------------------------------*/
* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

html, body {
  height: 100%;
  margin: 0;
  padding: 0;
}

/*body{
  padding-top: $sp-xl;
}*/
/*--------------------------------------------------------------
float
--------------------------------------------------------------*/
@media screen and (min-width: 768px) {
  .float-right {
    float: right;
  }
}

@media screen and (min-width: 768px) {
  .float-left {
    float: left;
  }
}

/*--------------------------------------------------------------
flex-wrapper 
--------------------------------------------------------------*/
@media screen and (min-width: 768px) {
  .flex-wrapper.mq-md {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

@media screen and (min-width: 980px) {
  .flex-wrapper.mq-lg {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.flex-1 {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.justify-content-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

/*--------------------------------------------------------------
clf
--------------------------------------------------------------*/
.clf:after {
  content: "";
  clear: both;
  display: block;
}

/*--------------------------------------------------------------
margin, padding
--------------------------------------------------------------*/
.margin--xs {
  margin: 5px;
}

.margin-t-xs {
  margin-top: 5px;
}

.margin-r-xs {
  margin-right: 5px;
}

.margin-b-xs {
  margin-bottom: 5px;
}

.margin-l-xs {
  margin-left: 5px;
}

.margin--s {
  margin: 10px;
}

.margin-t-s {
  margin-top: 10px;
}

.margin-r-s {
  margin-right: 10px;
}

.margin-b-s {
  margin-bottom: 10px;
}

.margin-l-s {
  margin-left: 10px;
}

.margin--m {
  margin: 20px;
}

.margin-t-m {
  margin-top: 20px;
}

.margin-r-m {
  margin-right: 20px;
}

.margin-b-m {
  margin-bottom: 20px;
}

.margin-l-m {
  margin-left: 20px;
}

.margin--l {
  margin: 40px;
}

.margin-t-l {
  margin-top: 40px;
}

.margin-r-l {
  margin-right: 40px;
}

.margin-b-l {
  margin-bottom: 40px;
}

.margin-l-l {
  margin-left: 40px;
}

.margin--xl {
  margin: 80px;
}

.margin-t-xl {
  margin-top: 80px;
}

.margin-r-xl {
  margin-right: 80px;
}

.margin-b-xl {
  margin-bottom: 80px;
}

.margin-l-xl {
  margin-left: 80px;
}

.padding--xs {
  padding: 5px;
}

.padding-t-xs {
  padding-top: 5px;
}

.padding-r-xs {
  padding-right: 5px;
}

.padding-b-xs {
  padding-bottom: 5px;
}

.padding-l-xs {
  padding-left: 5px;
}

.padding--s {
  padding: 10px;
}

.padding-t-s {
  padding-top: 10px;
}

.padding-r-s {
  padding-right: 10px;
}

.padding-b-s {
  padding-bottom: 10px;
}

.padding-l-s {
  padding-left: 10px;
}

.padding--m {
  padding: 20px;
}

.padding-t-m {
  padding-top: 20px;
}

.padding-r-m {
  padding-right: 20px;
}

.padding-b-m {
  padding-bottom: 20px;
}

.padding-l-m {
  padding-left: 20px;
}

.padding--l {
  padding: 40px;
}

.padding-t-l {
  padding-top: 40px;
}

.padding-r-l {
  padding-right: 40px;
}

.padding-b-l {
  padding-bottom: 40px;
}

.padding-l-l {
  padding-left: 40px;
}

.padding--xl {
  padding: 80px;
}

.padding-t-xl {
  padding-top: 80px;
}

.padding-r-xl {
  padding-right: 80px;
}

.padding-b-xl {
  padding-bottom: 80px;
}

.padding-l-xl {
  padding-left: 80px;
}

/*--------------------------------------------------------------
img
--------------------------------------------------------------*/
img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
  -webkit-backface-visibility: hidden;
  image-rendering: -webkit-optimize-contrast;
}

.img-wrap {
  position: relative;
}

.img-wrap::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(/common/images/spacer.gif);
  background-position: top left;
  background-size: 100% 100%;
}

.img-wrap img {
  display: block;
}

/*--------------------------------------------------------------
ul, ol
--------------------------------------------------------------*/
ul, ol {
  list-style: none;
  margin: 0;
  padding: 0;
}

/*--------------------------------------------------------------
dl
--------------------------------------------------------------*/
dl {
  font-size: 1.125rem;
}

/*--------------------------------------------------------------
material-icons
--------------------------------------------------------------*/
.material-icons {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  /* 推奨サイズ */
  display: inline-block;
  width: 1em;
  height: 1em;
  line-height: 1;
  text-transform: none;
  vertical-align: middle;
  /* WebKitブラウザサポート */
  -webkit-font-smoothing: antialiased;
  /* Chrome、Safariサポート */
  text-rendering: optimizeLegibility;
  /* Firefoxサポート */
  -moz-osx-font-smoothing: grayscale;
  /* IEサポート */
  -webkit-font-feature-settings: 'liga';
          font-feature-settings: 'liga';
}

/* アイコンサイズ */
.material-icons.fs-sm {
  font-size: 1.125rem;
}

.material-icons.fs-md {
  font-size: 1.5rem;
  line-height: 1.4;
}

@media screen and (min-width: 768px) {
  .material-icons.fs-md {
    font-size: 1.8rem;
  }
}

.material-icons.fs-lg {
  font-size: 2rem;
}

@media screen and (min-width: 768px) {
  .material-icons.fs-lg {
    font-size: 2.4rem;
  }
}

.material-icons.fs-xl {
  font-size: 3rem;
}

/*--------------------------------------------------------------
class
--------------------------------------------------------------*/
.text-align-center {
  text-align: center;
}

.align-items-center {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.justify-content-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.no-text-decoration {
  text-decoration: none;
}

img {
  user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -webkit-user-drag: none;
  -khtml-user-drag: none;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

p, ul, ol {
  font-size: 1.125rem;
}

/*--------------------------------------------------------------
.pc
--------------------------------------------------------------*/
.pc {
  display: none;
}

@media screen and (min-width: 768px) {
  .pc {
    display: block;
  }
}

/*--------------------------------------------------------------
.sp
--------------------------------------------------------------*/
.sp {
  display: block;
}

@media screen and (min-width: 768px) {
  .sp {
    display: none;
  }
}

/* =============================================================

_animate_move_min.scss

============================================================= */
@-webkit-keyframes fadeInDownSmall {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -10%, 0);
    transform: translate3d(0, -10%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

@keyframes fadeInDownSmall {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -10%, 0);
    transform: translate3d(0, -10%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

.animate__fadeInDownSmall {
  -webkit-animation-name: fadeInDownSmall;
  animation-name: fadeInDownSmall;
}

@-webkit-keyframes fadeInLeftSmall {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-10%, 0, 0);
    transform: translate3d(-10%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

@keyframes fadeInLeftSmall {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-10%, 0, 0);
    transform: translate3d(-10%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

.animate__fadeInLeftSmall {
  -webkit-animation-name: fadeInLeftSmall;
  animation-name: fadeInLeftSmall;
}

@-webkit-keyframes fadeInRightSmall {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(10%, 0, 0);
    transform: translate3d(10%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

@keyframes fadeInRightSmall {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(10%, 0, 0);
    transform: translate3d(10%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

.animate__fadeInRightSmall {
  -webkit-animation-name: fadeInRightSmall;
  animation-name: fadeInRightSmall;
}

@-webkit-keyframes fadeInUpSmall {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 10%, 0);
    transform: translate3d(0, 10%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

@keyframes fadeInUpSmall {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 10%, 0);
    transform: translate3d(0, 10%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
  }
}

.animate__fadeInUpSmall {
  -webkit-animation-name: fadeInUpSmall;
  animation-name: fadeInUpSmall;
}

@-webkit-keyframes fadeOutDownSmall {
  0% {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 10%, 0);
    transform: translate3d(0, 10%, 0);
  }
}

@keyframes fadeOutDownSmall {
  0% {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 10%, 0);
    transform: translate3d(0, 10%, 0);
  }
}

.animate__fadeOutDownSmall {
  -webkit-animation-name: fadeOutDownSmall;
  animation-name: fadeOutDownSmall;
}

@-webkit-keyframes fadeOutLeftSmall {
  0% {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-10%, 0, 0);
    transform: translate3d(-10%, 0, 0);
  }
}

@keyframes fadeOutLeftSmall {
  0% {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-10%, 0, 0);
    transform: translate3d(-10%, 0, 0);
  }
}

.animate__fadeOutLeftSmall {
  -webkit-animation-name: fadeOutLeftSmall;
  animation-name: fadeOutLeftSmall;
}

@-webkit-keyframes fadeOutRightSmall {
  0% {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(10%, 0, 0);
    transform: translate3d(10%, 0, 0);
  }
}

@keyframes fadeOutRightSmall {
  0% {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(10%, 0, 0);
    transform: translate3d(10%, 0, 0);
  }
}

.animate__fadeOutRightSmall {
  -webkit-animation-name: fadeOutRightSmall;
  animation-name: fadeOutRightSmall;
}

@-webkit-keyframes fadeOutUpSmall {
  0% {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -10%, 0);
    transform: translate3d(0, -10%, 0);
  }
}

@keyframes fadeOutUpSmall {
  0% {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -10%, 0);
    transform: translate3d(0, -10%, 0);
  }
}

.animate__fadeOutUpSmall {
  -webkit-animation-name: fadeOutUpSmall;
  animation-name: fadeOutUpSmall;
}

.animate__animated.animate__delay-0_2s {
  -webkit-animation-delay: 0.2s;
  animation-delay: 0.2s;
  -webkit-animation-delay: calc(var(--animate-delay)*0.2);
  animation-delay: calc(var(--animate-delay)*0.2);
}

.animate__animated.animate__delay-0_4s {
  -webkit-animation-delay: 0.4s;
  animation-delay: 0.4s;
  -webkit-animation-delay: calc(var(--animate-delay)*0.4);
  animation-delay: calc(var(--animate-delay)*0.4);
}

.animate__animated.animate__delay-0_6s {
  -webkit-animation-delay: 0.6s;
  animation-delay: 0.6s;
  -webkit-animation-delay: calc(var(--animate-delay)*0.6);
  animation-delay: calc(var(--animate-delay)*0.6);
}

.animate__animated.animate__delay-0_8s {
  -webkit-animation-delay: 0.8s;
  animation-delay: 0.8s;
  -webkit-animation-delay: calc(var(--animate-delay)*0.8);
  animation-delay: calc(var(--animate-delay)*0.8);
}

/*--------------------------------------------------------------
colors
--------------------------------------------------------------*/
/*Grey colors*/
.cl-key {
  color: #1675a2;
}

/*--------------------------------------------------------------
text colors
--------------------------------------------------------------*/
a,
a:hover {
  color: #1675a2;
  cursor: pointer;
}

/*--------------------------------------------------------------
font
--------------------------------------------------------------*/
.en, #wprmenu_menu_ul {
  font-family: "Poppins", sans-serif;
}

body {
  font-family: "游ゴシック md", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif;
  line-height: 1.8;
  position: relative;
}

/*--------------------------------------------------------------
.content-inner
--------------------------------------------------------------*/
.content-inner {
  padding: 80px 20px;
  margin: 0 auto;
  max-width: 980px;
}

/*--------------------------------------------------------------
.drawer
--------------------------------------------------------------*/
header .drawer-hamburger {
  right: 0;
}

@media screen and (min-width: 980px) {
  header .drawer-hamburger {
    display: none !important;
  }
}

.menu_title, .wpr_search {
  display: none;
}

.drawer header {
  position: relative;
}

@media screen and (min-width: 980px) {
  .drawer header {
    position: fixed;
    margin-bottom: 0;
  }
}

.drawer header .drawer-hamburger.cl-w .drawer-hamburger-icon,
.drawer header .drawer-hamburger.cl-w .drawer-hamburger-icon:after,
.drawer header .drawer-hamburger.cl-w .drawer-hamburger-icon:before {
  background-color: #fff;
}

.drawer.drawer-open .drawer-hamburger-icon {
  background-color: transparent !important;
}

.drawer.drawer-open nav {
  color: #000;
  background-color: #e6e6e6;
}

.drawer.drawer-open nav ul li {
  font-size: 1rem;
  font-weight: bold;
  font-size: 1.5rem;
  line-height: 1.4;
}

@media screen and (min-width: 768px) {
  .drawer.drawer-open nav ul li {
    font-size: 1.8rem;
  }
}

.drawer.drawer-open nav ul li a {
  color: #000;
  padding: 10px 20px;
}

.drawer.drawer-open nav ul li a.no-link {
  pointer-events: none;
  opacity: 0.5;
}

.drawer.drawer-open nav ul li a .en {
  font-size: 0.75rem;
  color: #1675a2;
  font-weight: bold;
  margin-right: 5px;
  display: block;
}

.drawer.drawer-open nav ul:first-child {
  padding-top: 20px;
}

.drawer.drawer-open nav ul:last-child li {
  margin: 0;
}

/*--------------------------------------------------------------
.sp-hamburger-menu
--------------------------------------------------------------*/

#mg-wprm-wrap.cbp-spmenu-right, #mg-wprm-wrap.cbp-spmenu-left, #mg-wprm-wrap.cbp-spmenu-right.custom, #mg-wprm-wrap.cbp-spmenu-left.custom, .cbp-spmenu-vertical{
  max-width: 100%;
}

.wprm-wrapper li.menu-item.menu-item-type-custom.menu-item-object-custom.menu-item-2876,
.wprm-wrapper li.menu-item.menu-item-type-custom.menu-item-object-custom.menu-item-47,
.wprm-wrapper li.menu-item.menu-item-type-custom.menu-item-object-custom.menu-item-49,
.wprm-wrapper li.menu-item.menu-item-type-custom.menu-item-object-custom.menu-item-359,
.wprm-wrapper li.profile.menu-item.menu-item-type-post_type.menu-item-object-page.menu-item-46,
.wprm-wrapper li.menu-item.menu-item-type-custom.menu-item-object-custom.menu-item-69,
.wprm-wrapper li.menu-item.menu-item-type-post_type.menu-item-object-page.menu-item-419
{
  border-bottom: 1px solid #ddd;
}

li.wprm_after_menu_content{
  margin: 0 14px;
}

.sns-area,.sub-contents-area{
	margin: 20px 0;
}

.sub-contents-area{
  padding-bottom: 20px;
}

.sns-area a,.sub-contents-area a{
  padding: 0;
}

.sns-icon{
  display: flex;
  gap: 20px;
  margin-top: 20px;
  padding: 0 14px;
}

.sub-content{
  margin-top: 20px;
  padding: 0 14px;
}

.sub-content p{
  margin: 20px 0;
}

.sub-content p a{
  color: #000000;
  font-size: 0.85rem;
  font-weight: bold;
  position: relative;
}

.sub-content p:hover a {
  color: #1675a2;
}

.sub-content p ::after {
  position: absolute;
  content: '\f08e';
  font-family: 'Font Awesome 6 Free';
  font-weight: 900;
  right: 0;
}


#wprmenu_menu_ul {
  padding: 20px;
}

#wprmenu_menu_ul i.fa-brands.fa-x-twitter,#wprmenu_menu_ul i.fa-brands.fa-youtube{
  color: #000;
  padding: 10px;
}

#wprmenu_menu_ul i.fa-brands.fa-x-twitter:hover,#wprmenu_menu_ul i.fa-brands.fa-youtube:hover{
  color: #1675a2;
  padding: 10px;
}

@media screen and (max-width: 979px) {
  
  li.menu-item.menu-item-type-custom.menu-item-object-custom.menu-item-470{
    display: none;
  }

  li.menu-item.menu-item-type-custom.menu-item-object-custom.menu-item-468{
    display: none;
  }
}


#wprmenu_menu_ul i.fa-brands.fa-x-twitter,#wprmenu_menu_ul i.fa-brands.fa-youtube{
  background-color: #ededed;
  border-radius: 50px;
  color: #000;
  padding: 10px;
  font-size: 1.3em;
}

#wprmenu_menu_ul i.fa-brands.fa-x-twitter:hover,#wprmenu_menu_ul i.fa-brands.fa-youtube:hover{
  color: #1675a2;
  background-color: #ffffff;
  padding: 10px;
}

@media screen and (min-width: 768px) {
  
  .sub-content p ::after {
    position: static;
    content: '\f08e';
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    margin-left: 5px;
  }
}


/*--------------------------------------------------------------
.modal
--------------------------------------------------------------*/
.featherlight {
  padding: 20px;
}

.featherlight .featherlight-content {
  padding: 40px;
  color: #000;
  max-width: 750px;
}

.modal-wrapper {
  display: none;
}

.modal-wrapper h4 {
  font-size: 1.5rem;
  line-height: 1.4;
  margin-bottom: 20px;
}

@media screen and (min-width: 768px) {
  .modal-wrapper h4 {
    font-size: 1.8rem;
  }
}

#menu-item-470 {
  margin-right: 20px;
}

/*--------------------------------------------------------------
.animate__animated
--------------------------------------------------------------*/
/*.animate__animated {
	opacity: 0;
}*/
/*--------------------------------------------------------------
#pageUp
--------------------------------------------------------------*/
#pageUp {
  font-size: 1.5rem;
  line-height: 1.4;
  display: inline-block;
  position: fixed;
  background-color: #1675a2;
  padding: 10px 20px;
  color: #fff;
}

@media screen and (min-width: 768px) {
  #pageUp {
    font-size: 1.8rem;
  }
}

@media screen and (min-width: 768px) {
  #pageUp {
    right: 20px;
    bottom: 20px;
  }
}

#pageUp:hover {
  cursor: pointer;
  background-color: #fff;
}

/*--------------------------------------------------------------
.btn
--------------------------------------------------------------*/
.btn {
  text-decoration: none;
  border-radius: 40px;
  background: #1675a2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
  color: #fff;
  padding: 10px 20px;
  margin-right: auto;
  margin-left: auto;
  max-width: 12em;
}

.btn a {
  text-decoration: none;
  width: 100%;
  height: 100%;
  display: block;
  color: #fff;
}

.btn p {
  margin: auto;
  font-size: 1.125rem;
  font-weight: bold;
  line-height: 1;
}

.btn p .material-icons {
  margin-right: 10px;
  margin-left: 0;
  -webkit-transition: margin 0.1s ease-in;
  transition: margin 0.1s ease-in;
}

.btn:hover {
  background-color: #1675a2;
  text-decoration: none;
}

.btn:hover p .material-icons {
  margin-right: 0;
  margin-left: 10px;
  -webkit-transition: margin 0.1s ease-out;
  transition: margin 0.1s ease-out;
}

.text-align-center.mq-md {
  text-align: left;
}

@media screen and (min-width: 768px) {
  .text-align-center.mq-md {
    text-align: center;
  }
}

/*--------------------------------------------------------------
header
--------------------------------------------------------------*/
header {
  width: 100%;
  padding: 0 20px;
  z-index: 1030;
  top: 0;
}

@media screen and (min-width: 768px) {
  header {
    padding: 10px 20px;
  }
}

header .flex-wrapper {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

header h1 {
  text-align: center;
  margin: 0 auto;
  padding: 10px 0;
  width: 70%;
}

@media screen and (min-width: 980px) {
  header h1 {
    width: auto;
    margin: 0 auto 0 0;
    margin-bottom: 40px;
  }
}

header h1 a {
  display: block;
}

header h1 .header_logo {
  height: 50px;
  width: auto;
  fill: #000;
}

@media screen and (min-width: 980px) {
  header h1 .header_logo {
    width: 240px;
  }
}

header h1 a:hover .header_logo {
  fill: #1675a2;
}

header h1 img {
  -webkit-backface-visibility: hidden;
}

header nav {
  display: none;
}

@media screen and (min-width: 980px) {
  header nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

@media screen and (min-width: 980px) {
  header nav ul:first-child {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

@media screen and (min-width: 980px) {
  header nav ul:first-child li {
    position: relative;
    margin-right: calc(20px + 10px);
    text-align: center;
    font-weight: bold;
    font-size: 1.125rem;
  }
}

header nav ul:first-child li:last-child {
  margin-right: 0;
}

header nav ul:first-child li a {
  color: #1675a2;
}

header nav ul:first-child li a.no-link {
  pointer-events: none;
  opacity: 0.5;
}

header nav ul:first-child li:not(.current) a {
  display: block;
  text-decoration: none !important;
  color: #000;
}

header nav ul:first-child li:not(.current) a:hover {
  color: #1675a2 !important;
}

header nav ul:first-child li.current a {
  display: block;
  text-decoration: none !important;
}

@media screen and (min-width: 980px) {
  header nav ul:first-child li.current a {
    color: #1675a2;
  }
}

header nav ul:first-child li.no-link {
  opacity: 0.5;
}

@media screen and (min-width: 768px) {
  header nav ul:first-child li:after {
    display: block;
    content: "";
    width: 0px;
    height: 3px;
    background-color: #1675a2;
    margin: 5px auto 0 auto;
    transition: 0.25s ease-out;
    -webkit-transition: 0.25s ease-out;
    -moz-transition: 0.25s ease-out;
    -o-transition: 0.25s ease-out;
    -ms-transition: 0.25s ease-out;
  }
}

header nav ul:first-child li:hover:after {
  width: 100%;
}

header nav ul:first-child li.current::after {
  width: 100%;
}

header nav ul:first-child li .en {
  margin-bottom: 0;
}

@media screen and (min-width: 768px) {
  header nav ul:first-child li .en {
    font-size: 1rem;
  }
}

@media screen and (min-width: 980px) {
  header nav ul:first-child li .en {
    font-size: 1rem;
    display: block;
    margin-bottom: 10px;
  }
}

header nav ul:last-child {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (min-width: 980px) {
  header nav ul:last-child {
    margin-left: 40px;
  }
}

header nav ul:last-child li:first-child {
  margin-right: 20px;
}

header nav ul:last-child a {
  color: #000;
}

header nav ul:last-child a:hover {
  color: #1675a2;
}

.ttl-en-ja {
  text-align: center;
  margin-bottom: 40px;
  font-weight: 500;
}

.ttl-en-ja .en {
  font-size: 2rem;
  display: block;
  line-height: 1em;
  color: #1675a2;
  margin-bottom: 10px;
}

@media screen and (min-width: 768px) {
  .ttl-en-ja .en {
    font-size: 3rem;
  }
}

.ttl-en-ja .ja {
  font-size: 1.125rem;
}

/*--------------------------------------------------------------
loading
--------------------------------------------------------------*/
#loading {
  background-color: #1675a2;
  color: #000;
  width: 100%;
  height: 100%;
  position: fixed;
  z-index: 1040;
  text-align: center;
  display: table;
  top: 0;
}

#loading img {
  margin-bottom: 20px;
}

#loading #loadIn {
  display: table-cell;
  text-align: center;
  vertical-align: middle;
}

.spinner {
  margin: 0 auto;
  width: 70px;
  text-align: center;
}

.spinner > div {
  width: 18px;
  height: 18px;
  background-color: #fff;
  border-radius: 100%;
  display: inline-block;
  -webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
  animation: sk-bouncedelay 1.4s infinite ease-in-out both;
}

.spinner .bounce1 {
  -webkit-animation-delay: -0.32s;
  animation-delay: -0.32s;
}

.spinner .bounce2 {
  -webkit-animation-delay: -0.16s;
  animation-delay: -0.16s;
}

@-webkit-keyframes sk-bouncedelay {
  0%,
  80%,
  100% {
    -webkit-transform: scale(0);
  }
  40% {
    -webkit-transform: scale(1);
  }
}

@keyframes sk-bouncedelay {
  0%,
  80%,
  100% {
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  40% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

/*--------------------------------------------------------------
共通
--------------------------------------------------------------*/
.article .date {
  margin-bottom: 10px;
  font-weight: bold;
}

.article h3 {
  font-size: 1.5rem;
  line-height: 1.4;
  margin-bottom: 20px;
}

@media screen and (min-width: 768px) {
  .article h3 {
    font-size: 1.8rem;
  }
}

.article img {
  height: auto !important;
  margin-bottom: 20px;
}

.article p {
  margin-bottom: 20px;
}

.article .btn {
  margin-top: 40px;
}

.list-mark {
  list-style: disc;
  margin-left: 1em;
}

/*--------------------------------------------------------------
top
--------------------------------------------------------------*/
@media screen and (min-width: 768px) {
  #top h1 img {
    width: 500px;
  }
}

#top #bnr-area {
  padding: 80px 20px;
  width: 100%;
  text-align: center;
}

#top #bnr-area .flex-wrapper {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media screen and (min-width: 768px) {
  #top #bnr-area .flex-wrapper > div:first-child {
    margin-right: 40px;
  }
}

#top #bnr-area #bnr-list > div {
  margin-bottom: 10px;
}

#top #bnr-area #bnr-list > div p {
  margin-top: 5px;
  font-size: 0.8em;
}

/*--------------------------------------------------------------
mainvisual
--------------------------------------------------------------*/
#mainvisual {
  position: relative;
  text-align: center;
  margin-top: 40px;
}

@media screen and (min-width: 768px) {
  #mainvisual {
    margin-top: 0;
  }
}

/*--------------------------------------------------------------
topNews
--------------------------------------------------------------*/
#topNews #nav-category {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 20px;
  font-weight: bold;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

#topNews #nav-category > li {
  margin-right: 20px;
}

@media screen and (min-width: 768px) {
  #topNews #nav-category > li:after {
    display: block;
    content: "";
    width: 0px;
    height: 3px;
    background-color: #1675a2;
    margin: 5px auto 0 auto;
    transition: 0.25s ease-out;
    -webkit-transition: 0.25s ease-out;
    -moz-transition: 0.25s ease-out;
    -o-transition: 0.25s ease-out;
    -ms-transition: 0.25s ease-out;
  }
}

#topNews #nav-category > li:hover {
  color: #1675a2;
  cursor: pointer;
}

#topNews #nav-category > li:hover:after {
  width: 100%;
}

#topNews #nav-category > li.active {
  color: #1675a2;
}

#topNews #nav-category > li.active::after {
  width: 100%;
}

#topNews #news-tab {
  border-bottom: solid 1px #ddd;
}

#topNews #news-tab div article {
  border: solid 1px #ddd;
  border-bottom: none;
  padding: 10px;
}

#topNews #news-tab div article a {
  display: block;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-decoration: none;
  color: #3d3d3d;
}

@media screen and (min-width: 768px) {
  #topNews #news-tab div article a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

#topNews #news-tab div article a:hover {
  color: #1675a2;
}

#topNews #news-tab div article .date {
  color: #999999;
  font-size: 0.9em;
  width: 5.5em;
  border-bottom: none;
}

#topNews #news-tab div article .category {
  margin: 0 10px 10px 0;
  border-bottom: none;
}

@media screen and (min-width: 768px) {
  #topNews #news-tab div article .category {
    margin: 0 10px;
  }
}

#topNews #news-tab div article .category span {
  background-color: #1675a2;
  color: #fff;
  font-size: 0.9em;
  padding: 0 10px;
  border-radius: 3px;
  width: 8em;
  display: inline-block;
  text-align: center;
}

/*--------------------------------------------------------------
news
--------------------------------------------------------------*/
#news-list .flex-wrapper {
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
}

#news-list > .flex-wrapper {
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media screen and (min-width: 768px) {
  #news-list > .flex-wrapper > div:first-child {
    width: 70%;
  }
}

@media screen and (min-width: 768px) {
  #news-list > .flex-wrapper > div:last-child {
    width: 25%;
  }
}

#news-list .list li {
  border-bottom: solid 1px #cccccc;
  padding-bottom: 20px;
  margin-bottom: 20px;
}

#news-list .list li a {
  text-decoration: none;
  color: #000;
}

#news-list .list li .date {
  width: 5.5em;
}

#news-list .list li .category {
  margin: 0 10px 10px 0;
}

@media screen and (min-width: 768px) {
  #news-list .list li .category {
    margin: 0 10px;
  }
}

#news-list .list li .category span {
  background-color: #1675a2;
  color: #fff;
  font-size: 0.8em;
  padding: 0 10px;
  border-radius: 3px;
  width: 8em;
  display: inline-block;
  text-align: center;
}

#news-list .list li h3 {
  font-weight: normal;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

#news-list #nav-category {
  border: solid 1px #cccccc;
  padding: 10px;
}

#news-list #nav-category .en {
  text-align: center;
  margin-bottom: 10px;
}

#news-list #nav-category li {
  padding: 10px;
  white-space: nowrap;
}

#news-list #nav-category li:not(:last-child) {
  border-bottom: solid 1px #cccccc;
}

/*--------------------------------------------------------------
live
--------------------------------------------------------------*/
#live-list li {
  border: solid 1px #cccccc;
  padding: 20px;
  margin-bottom: 20px;
  position: relative;
}

@media screen and (min-width: 768px) {
  #live-list li {
    padding: 40px;
  }
}

#live-list li a {
  text-decoration: none;
  color: #000;
}

#live-list li a h3 {
  font-size: 1.5rem;
  line-height: 1.4;
}

@media screen and (min-width: 768px) {
  #live-list li a h3 {
    font-size: 1.8rem;
  }
}

#live-list li a .icon-end {
  font-size: 90%;
}

#live-list li a .icon-end::before {
  content: "";
  top: 0;
  right: 0;
  border-bottom: 4em solid transparent;
  border-right: 4em solid #b7b7b7;
  position: absolute;
  z-index: 100;
}

@media screen and (min-width: 768px) {
  #live-list li a .icon-end::before {
    border-bottom-width: 6em;
    border-right-width: 6em;
  }
}

#live-list li a .icon-end::after {
  content: "終了";
  display: block;
  top: 8px;
  right: 3px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  color: #fff;
  position: absolute;
  z-index: 101;
}

@media screen and (min-width: 768px) {
  #live-list li a .icon-end::after {
    top: 15px;
    right: 12px;
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
}

/*--------------------------------------------------------------
discography
--------------------------------------------------------------*/
.col-md-4 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-right: -20px;
}

.col-md-4 .mq-md {
  width: 50%;
  padding-right: 20px;
  padding-bottom: 20px;
}

@media screen and (min-width: 768px) {
  .col-md-4 .mq-md {
    width: 25%;
  }
}

#discography .article figure {
  margin-bottom: 20px;
}

@media screen and (min-width: 768px) {
  #discography .article figure {
    margin: 0;
    margin-right: 40px;
  }
}

#discography .article figure figcaption {
  margin-top: 10px;
}

#discography .article figure figcaption p {
  font-size: 80%;
  margin: 0;
}

/*--------------------------------------------------------------
profile
--------------------------------------------------------------*/
#profile .content-inner h1 {
  font-size: 2rem;
}

@media screen and (min-width: 768px) {
  #profile .content-inner h1 {
    font-size: 2.4rem;
  }
}

#profile .content-inner p {
  margin-bottom: 20px;
}

#profile .content-inner h2 {
  margin-bottom: 0;
}

#profile .content-inner .mg40 {
  margin-bottom: 40px;
}

/*--------------------------------------------------------------
contact
--------------------------------------------------------------*/
#contact .content-inner, #questionnaire .content-inner {
  max-width: 700px;
}

#contact .content-inner h2, #questionnaire .content-inner h2 {
  margin-bottom: 0;
}

#contact .content-inner #faq, #questionnaire .content-inner #faq {
  margin-top: 40px;
}

#contact #faq, #questionnaire #faq {
  margin-bottom: 80px;
}

#contact #faq dl dt,
#contact #faq dl dd > div, #questionnaire #faq dl dt,
#questionnaire #faq dl dd > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

#contact #faq dl dt > div:last-child,
#contact #faq dl dd > div > div:last-child, #questionnaire #faq dl dt > div:last-child,
#questionnaire #faq dl dd > div > div:last-child {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin-left: 10px;
}

#contact #faq dl dt, #questionnaire #faq dl dt {
  font-weight: bold;
}

#contact #faq dl dt:not(:first-child), #questionnaire #faq dl dt:not(:first-child) {
  border-top: solid 1px #e6e6e6;
  padding-top: 20px;
  margin-top: 20px;
}

#contact #faq dl dt:hover, #questionnaire #faq dl dt:hover {
  cursor: pointer;
}

#contact #faq dl dt > div:first-child, #questionnaire #faq dl dt > div:first-child {
  color: #1675a2;
}

#contact #faq dl dd, #questionnaire #faq dl dd {
  display: none;
}

#contact #faq dl dd > div > div:first-child, #questionnaire #faq dl dd > div > div:first-child {
  color: #1c95cf;
}

#contact #faq .box, #questionnaire #faq .box {
  padding: 20px;
  border: solid 1px #e6e6e6;
  margin: 20px 0;
}

#contact #headerSubNav, #questionnaire #headerSubNav {
  display: none;
}

#contact .form-group, #questionnaire .form-group {
  margin-bottom: 1rem;
}

#contact .form-control, #questionnaire .form-control {
  display: block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 10px 20px;
  color: #495057;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #e6e6e6;
  -webkit-transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
  transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 1rem;
}

#contact .btn-block, #questionnaire .btn-block {
  text-align: center;
  margin-top: 20px;
}

#contact button:hover, #questionnaire button:hover {
  cursor: pointer;
}

#contact .form-btn,
#contact .btn-submit, #questionnaire .form-btn,
#questionnaire .btn-submit {
  font-size: 1.125rem;
  padding: 20px 80px;
  background: #1675a2;
  color: #fff;
  border: 1px solid #1675a2;
  font-weight: bold;
  margin: 0 auto 20px;
  display: inline-block;
  -webkit-transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
  transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;
}

#contact .form-btn:disabled,
#contact .btn-submit:disabled, #questionnaire .form-btn:disabled,
#questionnaire .btn-submit:disabled {
  background: white;
  color: #999999;
  border: 1px solid #999999;
}

#contact #check-btn, #questionnaire #check-btn {
  background: #2a7cb8;
  border-color: #20699f;
}

#contact #edit-btn, #questionnaire #edit-btn {
  background: #2a7cb8;
  border-color: #20699f;
}

#contact textarea, #questionnaire textarea {
  min-height: 300px;
}

#contact #posts_form, #questionnaire #posts_form {
  margin: 0 auto;
}

#contact table, #questionnaire table {
  width: 100%;
  margin-top: 40px;
  margin-bottom: 20px;
}

#contact table th,
#contact table td, #questionnaire table th,
#questionnaire table td {
  display: block;
  vertical-align: baseline;
}

@media screen and (min-width: 980px) {
  #contact table th,
  #contact table td, #questionnaire table th,
  #questionnaire table td {
    padding: 20px;
    display: table-cell;
  }
}

#contact table th, #questionnaire table th {
  vertical-align: top;
  font-size: 1.125rem;
  border-bottom: none;
  padding: 20px 0 0;
}

#form_entry .error{
  padding-top: 5px;
}

@media screen and (min-width: 980px) {
  #contact table th, #questionnaire table th {
    width: 32%;
    padding: 20px;
    border-bottom: 1px solid #e6e6e6;
    border-right: 1px dashed #e6e6e6;
  }
}

#contact table td, #questionnaire table td {
  padding: 20px 0;
  border-bottom: 1px dashed #e6e6e6;
}

@media screen and (min-width: 980px) {
  #contact table td, #questionnaire table td {
    padding: 20px;
    border-bottom: 1px solid #e6e6e6;
  }
}

#contact table tr:first-child th, #questionnaire table tr:first-child th {
  border-top: 1px solid #e6e6e6;
}

@media screen and (min-width: 980px) {
  #contact table tr:first-child th, #questionnaire table tr:first-child th {
    border-top: 1px solid #e6e6e6;
  }
}

@media screen and (min-width: 980px) {
  #contact table tr:first-child td, #questionnaire table tr:first-child td {
    border-top: 1px solid #e6e6e6;
  }
}

#contact table tr:last-child td, #questionnaire table tr:last-child td {
  border-bottom: none;
}

@media screen and (min-width: 980px) {
  #contact table tr:last-child td, #questionnaire table tr:last-child td {
    border-bottom: 1px solid #e6e6e6;
  }
}

#contact table tr:nth-child(2) td, #questionnaire table tr:nth-child(2) td {
  text-align: left;
}

#contact input[type="checkbox"],
#contact input[type="radio"], #questionnaire input[type="checkbox"],
#questionnaire input[type="radio"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0;
  margin: 0 3px 0 5px;
}

#contact .form-check-input, #questionnaire .form-check-input {
  position: absolute;
  margin-top: 0.3rem;
  margin-left: -1.25rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 1.125rem;
}

#contact .form-check-label, #questionnaire .form-check-label {
  margin-bottom: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

#contact label, #questionnaire label {
  display: inline-block;
  margin-bottom: 0.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/* #contact #form_entry, #questionnaire #form_entry {
  text-align: center;
} */

#contact #form_entry .content-inner, #questionnaire #form_entry .content-inner {
  padding-top: 0;
}

#contact #form_entry .content-inner h2, #questionnaire #form_entry .content-inner h2 {
  font-size: 1.5rem;
  line-height: 1.4;
  margin-bottom: 20px;
}

@media screen and (min-width: 768px) {
  #contact #form_entry .content-inner h2, #questionnaire #form_entry .content-inner h2 {
    font-size: 1.8rem;
  }
}

#contact #form_entry .content-inner p, #questionnaire #form_entry .content-inner p {
  margin-bottom: 20px;
}

#contact #form_entry .content-inner p.no-btn-link, #questionnaire #form_entry .content-inner p.no-btn-link {
  margin-bottom: 40px;
}

#contact .text-block, #questionnaire .text-block {
  text-align: left;
}

#contact select, #questionnaire select {
  background-image: none !important;
}

#contact #edit-btn,
#contact #submit-btn {
  display: none;
}

#contact #edit-btn,
#contact #submit-btn,
#contact #check-btn {
  cursor: pointer;
}

#contact #submit-btn:disabled {
  cursor: not-allowed;
}

#contact .form-safe #edit-btn,
#contact .form-safe #submit-btn {
  display: inline-block;
}

#contact .form-safe #check-btn {
  display: none;
}

#contact .form-safe .gender_selected {
  display: none;
}

#contact .form-safe #category,
#contact .form-safe .form-control {
  display: none;
}

#contact .form-control.is-invalid ~ .invalid-feedback,
#contact .was-validated .form-control:invalid ~ .invalid-feedback {
  display: block;
}

.invalid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 80%;
  color: #dc3545;
}

#contact .form-control.is-invalid,
#contact .was-validated .form-control:invalid {
  border-color: #dc3545;
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23dc3545' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23dc3545' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E");
  background-repeat: no-repeat;
  background-position: center right calc(0.375em + 0.1875rem);
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

#contact #edit-btn,
#contact #submit-btn {
  display: none;
}

#contact #edit-btn,
#contact #submit-btn,
#contact #check-btn {
  cursor: pointer;
}

#contact #submit-btn:disabled {
  cursor: not-allowed;
}

#contact .form-safe #edit-btn,
#contact .form-safe #submit-btn {
  display: inline-block;
}

#contact .form-safe #check-btn {
  display: none;
}

#contact .form-safe .gender_selected {
  display: none;
}

#contact .form-safe #category,
#contact .form-safe .form-control {
  display: none;
}

#contact .form-control.is-invalid ~ .invalid-feedback,
#contact .was-validated .form-control:invalid ~ .invalid-feedback {
  display: block;
}

.invalid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 80%;
  color: #dc3545;
}

#contact .form-control.is-invalid,
#contact .was-validated .form-control:invalid {
  border-color: #dc3545;
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23dc3545' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23dc3545' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E");
  background-repeat: no-repeat;
  background-position: center right calc(0.375em + 0.1875rem);
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

/*--------------------------------------------------------------
footer
--------------------------------------------------------------*/
footer {
  padding: 40px;
  background-color: #000;
  color: #fff;
  text-align: center;
}

/*--------------------------------------------------------------
pageUp
--------------------------------------------------------------*/
#pageUp:hover {
  color: #1675a2;
}
/*# sourceMappingURL=style.css.map */