@charset "utf-8";

body {
   color: #ffffff;
   background: #151558;;
}

.navbar-brand, .nav-item {
   color: #ffffff !important;
   font-family: "Noto Sans JP", sans-serif !important;
   font-weight: 600 !important;
}

hr {
   width: 40% !important;
}

p {
   color: #ffffff;
   font-family: "Noto Sans JP", sans-serif !important;
   font-weight: 500 !important;
}

h1 {
   color: #ffffff;
   font-family: "Noto Sans JP", sans-serif !important;
   font-weight: 700 !important;
}

h2 {
   color: #ffffff;
   font-family: "Noto Sans JP", sans-serif !important;
   font-size: 2.7rem !important;
   font-weight: 700 !important;
   margin-top: 2.2em;
}

.modoru {
   position:absolute; z-index: 5; top:5em; right:0px;
}
.modorubtn {
   padding-left: 2.5em;
   padding-right: 2.5em;
}

.form-width {
  width:50%!important;
}

.break-word {
  word-break: break-all;
  overflow-wrap: break-word;
}

@media (max-width: 970px) { /* 575.98px Bootstrap基準でスマホ画面以下 */
.navbar {
   background-color:#f0dcff !important;
}
.navbar-brand {
   color: #333366 !important;
}
}

@media (max-width: 700px) { /* 575.98px Bootstrap基準でスマホ画面以下 */
  body {
    font-size: 0.875rem !important; /* Bootstrapの"small"相当。必要に応じて調整 */
  }
.btn {
   padding-left: 2.5em;
   padding-right: 2.5em;
}
.modoru {
   position:absolute; z-index: 5; top:-0.5em; right:1em;
}
.modorubtn {
   padding-left: 1.5em;
   padding-right: 1.5em;
}
.form-width {
  width:100%!important;
}
.fs-4 {
   font-size: 1rem !important;
}
.fs-5 {
   font-size: 0.85rem !important;
}
header.contents {
   padding-top: 6em;
   padding-bottom: 1em;
}
h2 {
   font-size: 1.6rem !important;
   margin-top: 0em;
}
}



/* 追加基本
----------------------------------------------- */
.clearfix::after {
    content: "";
    display: block;
    clear: both;
}

.red{ color:#f50500;}
.red2{ color:#f36b7f;}
.red3{ color:#d00716;}
.blue{ color:#06C;}
.orange{ color:#ff6600;}
.white{ color:#FFF;}
.gray{ color:#a9a9a9 !important;}
.gray2{ color:#666666 !important;}
.bggray{ background-color:#a9a9a9 !important;}
.brown{ color:#894d14;}
.green{ color:#5ad214;}
.pink{ color:#ebaad2;}
.purple{ color:#ca2e79;}
.purple2{ color:#7f054a;}
.yellow{ color:#ffff00;}
.yellow2{ color:#ffcc00;}
.mt0{ margin-top:0 !important;}
.mt5{ margin-top:0.5rem !important;}
.mt10{ margin-top:1.0rem !important;}
.mt15{ margin-top:1.5rem !important;}
.mt20{ margin-top:2.0rem !important;}
.mt25{ margin-top:2.5rem !important;}
.mt30{ margin-top:3.0rem !important;}
.mt40{ margin-top:4.0rem !important;}
.mt50{ margin-top:5.0rem !important;}
.mt60{ margin-top:6.0rem !important;}
.mt70{ margin-top:7.0rem !important;}
.mt80{ margin-top:8.0rem !important;}
.mt90{ margin-top:9.0rem !important;}
.mt100{ margin-top:10.0rem !important;}
.mb0{ margin-bottom:0 !important;}
.mb5{ margin-bottom:0.5rem !important;}
.mb10{ margin-bottom:1.0rem !important;}
.mb15{ margin-bottom:1.5rem !important;}
.mb20{ margin-bottom:2.0rem !important;}
.mb25{ margin-bottom:2.5rem !important;}
.mb30{ margin-bottom:3.0rem !important;}
.mb40{ margin-bottom:4.0rem !important;}
.mb50{ margin-bottom:5.0rem !important;}
.mb60{ margin-bottom:6.0rem !important;}
.mb70{ margin-bottom:7.0rem !important;}
.mb80{ margin-bottom:8.0rem !important;}
.mb90{ margin-bottom:9.0rem !important;}
.mb100{ margin-bottom:10.0rem !important;}
.ml0{ margin-left:0 !important;}
.ml5{ margin-left:0.5rem !important;}
.ml10{ margin-left:1.0rem !important;}
.ml15{ margin-left:1.5rem !important;}
.ml20{ margin-left:2.0rem !important;}
.ml25{ margin-left:2.5rem !important;}
.ml30{ margin-left:3.0rem !important;}
.ml40{ margin-left:4.0rem !important;}
.ml50{ margin-left:5.0rem !important;}
.ml60{ margin-left:6.0rem !important;}
.ml70{ margin-left:7.0rem !important;}
.ml80{ margin-left:8.0rem !important;}
.ml90{ margin-left:9.0rem !important;}
.ml100{ margin-left:10.0rem !important;}
.mr5em{ margin-right:0.5em !important; display:inline!important;}
.mr0{ margin-right:0 !important;}
.mr5{ margin-right:0.5rem !important;}
.mr10{ margin-right:1.0rem !important;}
.mr15{ margin-right:1.5rem !important;}
.mr20{ margin-right:2.0rem !important;}
.mr25{ margin-right:2.5rem !important;}
.mr30{ margin-right:3.0rem !important;}
.mr40{ margin-right:4.0rem !important;}
.mr50{ margin-right:5.0rem !important;}
.mr60{ margin-right:6.0rem !important;}
.mr70{ margin-right:7.0rem !important;}
.mr80{ margin-right:8.0rem !important;}
.mr90{ margin-right:9.0rem !important;}
.mr100{ margin-right:10.0rem !important;}

.pt0{ padding-top:0 !important;}
.pt5{ padding-top:0.5rem !important;}
.pt10{ padding-top:1.0rem !important;}
.pt15{ padding-top:1.5rem !important;}
.pt20{ padding-top:2.0rem !important;}
.pt25{ padding-top:2.5rem !important;}
.pt30{ padding-top:3.0rem !important;}
.pt40{ padding-top:4.0rem !important;}
.pt50{ padding-top:5.0rem !important;}
.pt60{ padding-top:6.0rem !important;}
.pt70{ padding-top:7.0rem !important;}
.pt80{ padding-top:8.0rem !important;}
.pt90{ padding-top:9.0rem !important;}
.pt100{ padding-top:10.0rem !important;}
.pb0{ padding-bottom:0 !important;}
.pb5{ padding-bottom:0.5rem !important;}
.pb10{ padding-bottom:1.0rem !important;}
.pb15{ padding-bottom:1.5rem !important;}
.pb20{ padding-bottom:2.0rem !important;}
.pb25{ padding-bottom:2.5rem !important;}
.pb30{ padding-bottom:3.0rem !important;}
.pb40{ padding-bottom:4.0rem !important;}
.pb50{ padding-bottom:5.0rem !important;}
.pb60{ padding-bottom:6.0rem !important;}
.pb70{ padding-bottom:7.0rem !important;}
.pb80{ padding-bottom:8.0rem !important;}
.pb90{ padding-bottom:9.0rem !important;}
.pb100{ padding-bottom:10.0rem !important;}
.pl0{ padding-left:0 !important;}
.pl5{ padding-left:0.5rem !important;}
.pl10{ padding-left:1.0rem !important;}
.pl15{ padding-left:1.5rem !important;}
.pl20{ padding-left:2.0rem !important;}
.pl25{ padding-left:2.5rem !important;}
.pl30{ padding-left:3.0rem !important;}
.pl40{ padding-left:4.0rem !important;}
.pl50{ padding-left:5.0rem !important;}
.pl60{ padding-left:6.0rem !important;}
.pl70{ padding-left:7.0rem !important;}
.pl80{ padding-left:8.0rem !important;}
.pl90{ padding-left:9.0rem !important;}
.pl100{ padding-left:10.0rem !important;}
.pr0{ padding-right:0 !important;}
.pr5{ padding-right:0.5rem !important;}
.pr10{ padding-right:1.0rem !important;}
.pr15{ padding-right:1.5rem !important;}
.pr20{ padding-right:2.0rem !important;}
.pr25{ padding-right:2.5rem !important;}
.pr30{ padding-right:3.0rem !important;}
.pr40{ padding-right:4.0rem !important;}
.pr50{ padding-right:5.0rem !important;}
.pr60{ padding-right:6.0rem !important;}
.pr70{ padding-right:7.0rem !important;}
.pr80{ padding-right:8.0rem !important;}
.pr90{ padding-right:9.0rem !important;}
.pr100{ padding-right:10.0rem !important;}
.w10{ width:10% !important;}
.w20{ width:20% !important;}
.w30{ width:30% !important;}
.w40{ width:40% !important;}
.w50{ width:50% !important;}
.w60{ width:60% !important;}
.w70{ width:70% !important;}
.w80{ width:80% !important;}
.w90{ width:90% !important;}
.w100{ width:100% !important;}

.flll{ font-size:1.4em; line-height:150%; }
.fll{ font-size:1.2em; line-height:150%; }
.fl{ font-size:1.1em; line-height:150%; }
.fs{ font-size:0.9em; line-height:150%; }
.fss{ font-size:0.8em; line-height:150%; }
.fsss{ font-size:0.7em; line-height:150%; }
.normal{ font-weight:normal;}
.bold{ font-weight:bold;}
.center{ text-align: center !important;}
.left{ text-align: left !important;}
.right{ text-align: right !important;}
.fl-left{ float: left !important;}
.fl-right{ float: right !important;}
.kage {text-shadow: 0px 0px 7px rgba(0, 0, 0, 0.7);}
.nbr{ white-space: nowrap !important;}
.kok{ word-break: break-all;}
.mauto{ margin:auto;}
.vat{ vertical-align: top !important;}
.vam{ vertical-align: middle !important;}
.vab{ vertical-align: bottom !important;}
.sen{ border: 1px solid #cccccc !important;}
hr.dotted{ border: none; border-top: 3px dotted #cccccc;}
hr.dashed{ border: none; border-top: 3px dashed #cccccc;}

.soro1{ text-indent:-1em; padding-left:1em;}
.soro1_1{ text-indent:-1.1em; padding-left:1.1em;}
.soro1_2{ text-indent:-1.2em; padding-left:1.2em;}
.soro1_3{ text-indent:-1.3em; padding-left:1.3em;}
.soro1_4{ text-indent:-1.4em; padding-left:1.4em;}
.soro1_5{ text-indent:-1.5em; padding-left:1.5em;}
.soro1_6{ text-indent:-1.6em; padding-left:1.6em;}
.soro1_7{ text-indent:-1.7em; padding-left:1.7em;}
.soro1_8{ text-indent:-1.8em; padding-left:1.8em;}
.soro1_9{ text-indent:-1.9em; padding-left:1.9em;}
.soro2{ text-indent:-2em; padding-left:2em;}
.soro2_1{ text-indent:-2.1em; padding-left:2.1em;}
.soro2_2{ text-indent:-2.2em; padding-left:2.2em;}
.soro2_3{ text-indent:-2.3em; padding-left:2.3em;}
.soro2_4{ text-indent:-2.4em; padding-left:2.4em;}
.soro2_5{ text-indent:-2.5em; padding-left:2.5em;}
.soro3{ text-indent:-3em; padding-left:3em;}
.soro3_5{ text-indent:-3.5em; padding-left:3.5em;}
.soro4{ text-indent:-4em; padding-left:4em;}
.soro4_5{ text-indent:-4.5em; padding-left:4.5em;}
.soro5{ text-indent:-5em; padding-left:5em;}
.soro6{ text-indent:-6em; padding-left:6em;}
.soro7{ text-indent:-7em; padding-left:7em;}
.soro8{ text-indent:-8em; padding-left:8em;}
.soro9{ text-indent:-9em; padding-left:9em;}
.soro10{ text-indent:-10em; padding-left:10em;}
.ml1em{ margin-left:1em !important;}
.ml2em{ margin-left:2em !important;}
.ml3em{ margin-left:3em !important;}
.ml4em{ margin-left:4em !important;}
.ml5em{ margin-left:5em !important;}
.ml_5em{ margin-left:0.5em !important;}
.mr_5em{ margin-right:0.5em !important;}

.waku { border: 2px solid #cccccc; padding: 1rem 2rem;}
.waku_red { border: 2px solid #f50500; padding: 1rem 2rem;}
.pcbr { display: block;}
.spbr { display: none;}

@media screen and (max-width: 600px) {
.waku { border: 2px solid #cccccc; padding: 0.8rem 1.4rem;}
.pcbr { display: none;}
.spbr { display: block;}
}

/* 名誉・特別会員
----------------------------------------------- */
.name {display:inline-block; width: 10em; white-space: nowrap; margin-bottom:0.7em;}

/* ステートメント・ガイドライン
----------------------------------------------- */
.date1 {color: #666666; font-size: 0.8em;}
.date2 {text-align: right; color: #666666; font-size: 0.8em; margin-top: -3.2rem; margin-bottom:3rem;}

/* ボタン
----------------------------------------------- */
.button1_blue {
color:#ffffff !important;
text-align: center;
font-weight: 400;
line-height:1.4;
background-color: #4179fd;
display: inline-block !important;
cursor: pointer !important;
padding: 0.6rem 1.8rem 0.8rem 1.8rem;
border-radius: 0.8rem;
-webkit-border-radius: 0.8rem;
-moz-border-radius: 0.8rem;
text-indent: 0;
}

.button2_blue {
color:#ffffff !important;
text-align: center;
font-size: 1.2em;
font-weight: 500;
line-height:1.4;
background-color: #4179fd;
display: inline-block !important;
cursor: pointer !important;
padding: 1rem 3.6rem 1.2rem 3.6rem;
border-radius: 0.8rem;
-webkit-border-radius: 0.8rem;
-moz-border-radius: 0.8rem;
text-indent: 0;
}

.button1_red {
color:#ffffff !important;
text-align: center;
font-weight: 400;
line-height:1.4;
background-color: #fe4267;
display: inline-block;
cursor: pointer !important;
padding: 0.6rem 1.8rem 0.8rem 1.8rem;
border-radius: 0.8rem;
-webkit-border-radius: 0.8rem;
-moz-border-radius: 0.8rem;
text-indent: 0;
}

.button2_red {
color:#ffffff !important;
text-align: center;
font-size: 1.2em;
font-weight: 500;
line-height:1.4;
background-color: #fe4267;
display: inline-block !important;
cursor: pointer !important;
padding: 1rem 3.6rem 1.2rem 3.6rem;
border-radius: 0.8rem;
-webkit-border-radius: 0.8rem;
-moz-border-radius: 0.8rem;
text-indent: 0;
}

.button1_purple {
color:#ffffff !important;
text-align: center;
font-weight: 400;
line-height:1.4;
background-color: #a742fe;
display: inline-block;
cursor: pointer !important;
padding: 0.6rem 1.8rem 0.8rem 1.8rem;
border-radius: 0.8rem;
-webkit-border-radius: 0.8rem;
-moz-border-radius: 0.8rem;
text-indent: 0;
}

.button2_purple {
color:#ffffff !important;
text-align: center;
font-size: 1.2em;
font-weight: 500;
line-height:1.4;
background-color: #a742fe;
display: inline-block !important;
cursor: pointer !important;
padding: 1rem 3.6rem 1.2rem 3.6rem;
border-radius: 0.8rem;
-webkit-border-radius: 0.8rem;
-moz-border-radius: 0.8rem;
text-indent: 0;
}

.button1_green {
color:#ffffff !important;
text-align: center;
font-weight: 400;
line-height:1.4;
background-color: #00a1a3;
display: inline-block !important;
cursor: pointer !important;
padding: 0.6rem 1.8rem 0.8rem 1.8rem;
border-radius: 0.8rem;
-webkit-border-radius: 0.8rem;
-moz-border-radius: 0.8rem;
text-indent: 0;
}

.button2_green {
color:#ffffff !important;
text-align: center;
font-size: 1.2em;
font-weight: 500;
line-height:1.4;
background-color: #00a1a3;
display: inline-block !important;
cursor: pointer !important;
padding: 1rem 3.6rem 1.2rem 3.6rem;
border-radius: 0.8rem;
-webkit-border-radius: 0.8rem;
-moz-border-radius: 0.8rem;
text-indent: 0;
}

.button1_orange {
color:#ffffff !important;
text-align: center;
font-weight: 400;
line-height:1.4;
background-color: #ff9342;
display: inline-block !important;
cursor: pointer !important;
padding: 0.6rem 1.8rem 0.8rem 1.8rem;
border-radius: 0.8rem;
-webkit-border-radius: 0.8rem;
-moz-border-radius: 0.8rem;
text-indent: 0;
}

.button2_orange {
color:#ffffff !important;
text-align: center;
font-size: 1.2em;
font-weight: 500;
line-height:1.4;
background-color: #ff9342;
display: inline-block !important;
cursor: pointer !important;
padding: 1rem 3.6rem 1.2rem 3.6rem;
border-radius: 0.8rem;
-webkit-border-radius: 0.8rem;
-moz-border-radius: 0.8rem;
text-indent: 0;
}

/* list_med_news */
dl.list_med_news {
	margin: 0 0 2rem;
	padding: 0 0 2.4rem;
	border-bottom: dashed 2px #cccccc;
}
dl.list_med_news:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: none;
}
dl.list_med_news dt {
	margin: 0 0 0.8rem;
	padding: 0;
	font-weight: 500;
}

dl.list_med_news dt .date {
	font-weight: normal;
	font-size: 0.9em;
	color: #b38415;
}
dl.list_med_news dd {
	margin: 0;
	padding: 0;
	font-size: 0.9em;
	word-wrap: break-word;
}

@media screen and (max-width: 600px) {
.w10{ width:30% !important;}
.w20{ width:40% !important;}
.w30{ width:60% !important;}
.w40{ width:80% !important;}
.w50{ width:90% !important;}
.w60{ width:100% !important;}
.w70{ width:100% !important;}
.w80{ width:100% !important;}
.w90{ width:100% !important;}
.button1_blue, .button1_red, .button1_purple, .button1_green, .button1_orange { padding: 0.4rem 1.2rem;}
.button2_blue, .button2_red, .button2_purple, .button2_green, .button2_orange { width:100%; padding: 0.8rem 1.8rem;}
.date2 { margin-top: -2rem; margin-bottom:2.4rem;}
}

.bggray{ background-color:#a9a9a9 !important;}

/* accordion
----------------------------------------------- */
.a_date {
  display: block;
   color: #b38415;
   font-size: 1.4rem;
   line-height: 140%;
}

.new-mark::after {
  content: "New";
  display: inline-block;
  background-color: #f50500;
  color: #fff;
  line-height: 1;
  margin-left: .9em;
  padding: .2em .7em .2em .7em;
  font-size: .8em;
  vertical-align: text-bottom;
  border-radius: 0.2rem;
}

/* 必須 */
.accordion-content1 {
  display: none;
}

.accordion-content2 {
  display: none;
}

/* 装飾用 */
.accordion-header1n {
  background-color: #fbf5e6;
  border-radius: 0.4rem 0.4rem 0.4rem 0.4rem;
  color: #003366;
  /* font-weight: 500; */
   font-size: 1.6rem;
   line-height: 1.7;
  padding: 10px 20px 6px 20px;
  margin: 20px 0 0;
  transition: background .3s ease;
  cursor: pointer;
  position: relative;
}

.accordion-header2n {
  background-color: #fbe6e6;
  border-radius: 0.4rem 0.4rem 0.4rem 0.4rem;
  color: #f50500;
  /* font-weight: 500; */
   font-size: 1.6rem;
   line-height: 1.7;
  padding: 10px 20px 6px 20px;
  margin: 20px 0 0;
  transition: background .3s ease;
  cursor: pointer;
  position: relative;
}

.accordion-header1 {
  background-color: #fbf5e6;
  border-radius: 0.4rem 0.4rem 0rem 0;
  color: #003366;
  /* font-weight: 500; */
   font-size: 1.6rem;
   line-height: 1.7;
  padding: 10px 45px 6px 20px;
  margin: 20px 0 0;
  transition: background .3s ease;
  cursor: pointer;
  position: relative;
}

.accordion-header2 {
  background-color: #fbe6e6;
  border-radius: 0.4rem 0.4rem 0rem 0;
  color: #f50500;
  /* font-weight: 500; */
   font-size: 1.6rem;
   line-height: 1.7;
  padding: 10px 45px 6px 20px;
  margin: 20px 0 0;
  transition: background .3s ease;
  cursor: pointer;
  position: relative;
}

.accordion-header1::before,
.accordion-header1::after{
  position:absolute;
  content:'';
  top:1px;
  right:20px;
  bottom:0;
  width:14px;
  height:2px;
  margin:auto;
  background:#003366;
}

.accordion-header2::before,
.accordion-header2::after{
  position:absolute;
  content:'';
  top:1px;
  right:20px;
  bottom:0;
  width:14px;
  height:2px;
  margin:auto;
  background:#f50500;
}

.accordion-header1::after, .accordion-header2::after{
  transform:rotate(-90deg);
  transition:transform 0.3s;
}
.accordion-header1.active::after, .accordion-header2.active::after{transform:rotate(0deg);}

.accordion-content1 {
  background-color: #fbf5e6;
  border-radius: 0 0 0.4rem 0.4rem;
  padding: 5px 20px 10px;
  color: #333;
 /* font-weight: 400; */
   font-size: 1.5rem;
   line-height: 1.7;
}

.accordion-content2 {
  background-color: #fbe6e6;
  border-radius: 0 0 0.4rem 0.4rem;
  padding: 5px 20px 10px;
  color: #333;
 /* font-weight: 400; */
   font-size: 1.5rem;
   line-height: 1.7;
}

.accordion-content1 a, .accordion-content2 a {
  display: inline;
  color: #0084b6;
}

.accordion-header1 span, .accordion-header2 span,
.accordion-content1 span, .accordion-content2 span{
  padding-left: 0px;
  position: relative;
}

/* hover */
.accordion-header1:hover, .accordion-header2:hover {
  filter: alpha(opacity=80); -moz-opacity: 0.8; opacity: 0.8;
}

@media (max-width: 700px) {
.accordion-header1, .accordion-header2 {
   font-size: 1.5rem;
   line-height: 1.6;
  padding: 8px 35px 7px 10px;
  margin: 10px 0 0;
}
.accordion-header1n, .accordion-header2n {
   font-size: 1.5rem;
   line-height: 1.6;
  padding: 8px 10px 7px 10px;
  margin: 10px 0 0;
}
.accordion-header1::before, .accordion-header2::before,
.accordion-header1::after, .accordion-header2::after{
  right:15px;
}
.accordion-content1, .accordion-content2 {
   font-size: 1.4rem;
   line-height: 1.5;
  padding: 6px 10px 10px;
}
}

@media print {

  body {
    margin: 0;
    padding: 0;
  }

  header, .l-header, .l-header__inner, .l-contents, main, .jaes_contents {
    margin: 0;
    padding: 0;
  }

  .p-mv {
    margin-top: 7rem;

  }

  header, .l-header, .l-header__inner, .p-contents, .l-contents, main, .jaes_contents {
    width: auto !important; /* 固定幅を解除 */
    max-width: 99% !important;
    /*margin: 0 !important;*/
    /*padding: 0 5mm !important;*/ /* 必要なら左右に少し余白を残す */
    box-sizing: border-box;
    overflow: hidden;
  }

  .p-topics__items, .p-news__items {
    display: block !important;
  }

  .p-topics__item, .p-news__item {
    page-break-inside: avoid;
    break-inside: avoid;
  }

  /* 不要な要素を非表示にしたい場合（ナビやフッターなど） */
  .swiper, .l-header__nav, .c-hamburger, .l-header__main-nav, .c-sp-nav, .l-side, .c-pagetop {
    display: none !important;
  }
}