/*
font-family: ryo-gothic-plusn,sans-serif;
font-weight: 200;
font-weight: 300;
font-weight: 400;
font-weight: 500;
font-weight: 700;
font-weight: 800;
font-weight: 600;
font-style: normal;
*/

a {
  color: rgba(166, 39, 58, 1.00);
  text-decoration: none;
}
a:hover {
  color: rgba(104, 0, 14, 1.00)
}
a:not([href]):not([class]), a:not([href]):not([class]):hover {
  color: inherit;
  text-decoration: none;
}

html {
	
}
.container-fulid {
  max-width: 1500px;
  margin-left: auto;
  margin-right: auto
}
main {
  background-color: rgba(255, 255, 255, 1.00);
  padding-top: 1em;
  padding-bottom: 2em
}
#front {
  background-color: rgba(255, 255, 255, 1.00);
	
}
/*
#front table{
	font-size: 0.9rem;
}
#front table th,
#front table td{
padding-top: 0px;
padding-bottom: 0px
}
*/
h1, h2, h3, h4, h5, h6 {
  font-family: a-otf-ud-shin-maru-go-pr6n, sans-serif;
  font-weight: 300;
  font-style: normal;
}
h2 {
  color: rgba(255, 255, 255, 1.00);
  background-color: #A22041;
  -webkit-box-shadow: 0px 5px 10px #D9D9D9;
  box-shadow: 0px 5px 10px #D9D9D9;
  margin-bottom: 1em;
  padding: 0.4rem;
  background-image: -webkit-linear-gradient(270deg, rgba(90, 17, 36, 1.00) 0%, rgba(42, 7, 16, 1.00) 100%);
  background-image: -moz-linear-gradient(270deg, rgba(90, 17, 36, 1.00) 0%, rgba(42, 7, 16, 1.00) 100%);
  background-image: -o-linear-gradient(270deg, rgba(90, 17, 36, 1.00) 0%, rgba(42, 7, 16, 1.00) 100%);
  background-image: linear-gradient(180deg, rgba(90, 17, 36, 1.00) 0%, rgba(42, 7, 16, 1.00) 100%);
  border-radius: 4px
}
h2::before {
  display: block;
  float: left;
  margin-right: 0.5em;
  content: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjEuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9ImgyVGl0bGUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAzMiAzMiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMzIgMzI7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5zdDB7b3BhY2l0eTowLjg1O2ZpbGw6I0ZGRkZGRjt9Cgkuc3Qxe29wYWNpdHk6MC42O2ZpbGw6I0ZGRkZGRjt9Cgkuc3Qye29wYWNpdHk6MC43O2ZpbGw6I0ZGRkZGRjt9Cgkuc3Qze29wYWNpdHk6MC4zNTtmaWxsOiNGRkZGRkY7fQo8L3N0eWxlPgo8cmVjdCB4PSIwIiB5PSIwIiBjbGFzcz0ic3QwIiB3aWR0aD0iMTQuOTMiIGhlaWdodD0iMTQuOTMiLz4KPHJlY3QgeD0iMCIgeT0iMTcuMDciIGNsYXNzPSJzdDEiIHdpZHRoPSIxNC45MyIgaGVpZ2h0PSIxNC45MyIvPgo8cmVjdCB4PSIxNy4wNyIgeT0iMCIgY2xhc3M9InN0MiIgd2lkdGg9IjE0LjkzIiBoZWlnaHQ9IjE0LjkzIi8+CjxyZWN0IHg9IjE3LjA3IiB5PSIxNy4wNyIgY2xhc3M9InN0MyIgd2lkdGg9IjE0LjkzIiBoZWlnaHQ9IjE0LjkzIi8+Cjwvc3ZnPg==');
  width: 24px;
  height: 24px;
}
h3::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\f0a9";
  margin-right: 0.4em;
  opacity: 0.5
}
h4::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\f0a9";
  margin-right: 0.4em;
  opacity: 0.5
}

#sns-facebook,
#sns-instagram,
#sns-x{
	font-size: 2.2rem
}

#sns-facebook a{
	color: rgba(60,90,153,1.00)
}
#sns-instagram a
{
  background: linear-gradient(135deg, #4C64D3 0%, #CF2E92 33%, #F26939 60%, #FFDD83 100%);
  background: -webkit-linear-gradient(-45deg, #4C64D3 0%, #CF2E92 33%, #F26939 60%, #FFDD83 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
#sns-x a{
	color: rgba(10,10,10,1.00)
}
.ind1 p {
  text-indent: 1em
}

#jsepCarousel {}
.carousel-indicators [data-bs-target] {
  width: 12px; /* 丸のサイズ */
  height: 12px;
  border-radius: 50%; /* 丸形に */
  background-color: #FFFFFF; /* 色の設定（自由に変更可） */
}
.carousel-indicators .active {
  background-color: rgba(255, 139, 49, 1.00)
}
.carousel-caption {
  position: absolute;
  top: 50%; /* 上部中央に配置 */
  left: 50%;
  transform: translate(-50%, -50%);
  width: 75%;
}
.carousel-caption h3 {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 1.7em;
  border-radius: 6px;
  padding-left: 0.5em;
  padding-right: 0.5em;
  padding-top: 0.5em;
  padding-bottom: 0.5em
}
.carousel-caption h3::before {
  content: none
}
.carousel-caption p {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 1.3em;
}
.carousel-light h3 {
  color: rgba(255, 255, 255, 1.00);
  text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.9);
  background-color: rgba(90, 85, 70, 0.60);
}
.carousel-light p {
  color: rgba(21, 71, 96, 1.00);
  text-shadow: 0px 1px 2px rgba(255, 255, 255, 1.00);
}
.carousel-dark h3 {
  color: rgba(255, 255, 255, 1.00);
  text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.9);
  background-color: rgba(0, 20, 20, 0.60);
}
.carousel-dark p {
  color: rgba(230, 220, 130, 1.00);
  text-shadow: 0px 1px 2px rgba(0, 0, 0, 1.00);
}
.carousel-control-prev, .carousel-control-next {
  font-size: 1.8em;
  opacity: 0.4
}
#jsepCarousel .carousel-img {
  height: 300px; /* 必要に応じて高さを調整 */
  object-fit: cover;
}
#sns-carousel {
  position: absolute;
  top: 20px;
  right: 20px;
  z-index: 99;
  gap: 10px;
  width: 50px;
  height: 50px;
  background-color: rgba(0, 0, 0, 0.90);
  border-radius: 6px;
}
#sns-carousel .fa-x-twitter, #sns-carousel .fa-square-x-twitter {
  font-size: 36px;
  padding-left: 8px;
  padding-top: 8px;
  color: #FFFFFF;
  transition: opacity 0.3s ease;
  opacity: 1.0; /* 透明度を少しつける */
}
#sns-carousel .fa-x-twitter:hover, #sns-carousel .fa-square-x-twitter:hover {
  color: #1F90E6;
  transition: opacity 0.3s ease;
}
#sns-footer {
  width: 60px;
  height: 60px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1.5em;
  background-color: rgba(0, 0, 0, 0.90);
  border-radius: 30px;
}
#sns-footer .fa-x-twitter, #sns-footer .fa-square-x-twitter {
  font-size: 40px;
  padding-left: 10px;
  padding-top: 10px;
  color: #FFFFFF;
  transition: opacity 0.3s ease;
  opacity: 1.0; /* 透明度を少しつける */
}
@media (max-width: 768px) {
  .carousel-caption {
    font-size: 70%; /* 文字サイズを小さくする */
    bottom: 10px; /* 下寄せに変更 */
  }
  .carousel-control-prev, .carousel-control-next {
    font-size: 1.3em;
    opacity: 0.4
  }
  #sns-carousel {
    width: 36px;
    height: 36px;
  }
  #sns-carousel .fa-x-twitter, #sns-carousel .fa-square-x-twitter {
    font-size: 24px;
    padding-left: 6px;
    padding-top: 6px;
  }
}
/*
#sns-carousel .fa-square-facebook:hover,
#sns-carousel .fa-square-facebook:hover{
	color: #135FFF;
}
#sns-carousel .fa-instagram:hover,
#sns-carousel .fa-instagram:hover {
  background: linear-gradient(135deg, #4C64D3 0%, #CF2E92 33%, #F26939 60%, #FFDD83 100%);
  background: -webkit-linear-gradient(-45deg, #4C64D3 0%, #CF2E92 33%, #F26939 60%, #FFDD83 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
#sns-carousel .fa-linkedin:hover,
#sns-carousel .fa-linkedin:hover{
	color: #0A66C2;
}
#sns-carousel .fa-youtube:hover,
#sns-carousel .fa-youtube:hover{
	color: #CA1616;
}
*/

.jumbotron{
	min-height: 280px
}
#front .jumbotron {
  background-image: url("../images/home/keyVisual.jpg");
  background-size: cover;
  background-position: center 40%;
}
#page .jumbotron {
  background-image: url("../images/home/keyVisual.jpg");
  background-size: cover;
  background-position: center 40%;
}
.jumbotron h1 {
  color: rgba(255, 255, 255, 1.00);
  line-height: 1.5em;
  text-shadow: 2px 2px 2px #000000;
}
.jumbotron h1::before {
  content: none
}
.nav-pills .nav-link.active, .nav-pills .show > .nav-link {
  color: #fff;
}
.dropdown:hover .dropdown-menu {
  display: block;
  background-color: rgba(249, 240, 238, 1.00)
}
.dropdown-item {
  text-align: left;
  color: rgba(41, 33, 33, 1.00);
  background-color: rgba(249, 240, 238, 1.00)
}
.dropdown-item:hover, .dropdown-item:focus {
  color: rgba(130, 8, 0, 1.00);
  background: rgba(236, 197, 189, 1.00)
}
.dropdown-item.active, .dropdown-item:active {
  color: rgba(159, 51, 51, 1.00);
  background: rgba(245, 229, 229, 1.00)
}
.navbar {
  position: relative;
  z-index: 1000;
}
.modal-dialog {
  position: relative;
  z-index: 2000;
}
.hierarchy_2nd {
  position: absolute;
  width: auto;
  min-width: 272px;
  margin-left: auto;
  top: 35px;
  visibility: hidden;
}
.hierarchy:hover .hierarchy_2nd {
  visibility: visible;
}
@media (max-width: 767px) {
  .hierarchy_3rd_sub {
    position: relative;
    top: 0px;
    left: 0px;
    color: rgba(41, 33, 33, 1.00);
    background-color: rgba(255, 243, 243, 1.00);
    visibility: hidden;
    width: auto;
  }
}
@media (min-width: 768px) {
  .hierarchy_3rd_sub {
    position: absolute;
    top: -6px;
    left: 272px;
    color: rgba(41, 33, 33, 1.00);
    background-color: rgba(255, 243, 243, 1.00);
    width: auto;
    min-width: 200px;
  }
}
.hierarchy_3rd::after {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\f0da";
  position: absolute;
  top: 4px;
  right: 5px;
}
.hierarchy_3rd {
  position: relative;
}
.hierarchy_3rd:hover, .hierarchy_3rd_sub {
  visibility: visible;
}
/* ------▼ トップバック */
#topBack {
  position: fixed;
  bottom: 50px;
  right: 50px;
  z-index: 1000;
}
#topBack i, #topBack i:hover {
  font-size: 50px;
  opacity: 1;
  color: rgba(255, 196, 211, 1.00);
}
#topBack a {
  background-color: #FF83A1;
  text-decoration: none;
  color: #FFFFFF;
  width: 54px;
  height: 54px;
  padding: 2px;
  text-align: center;
  display: block;
  border-radius: 27px;
  font-size: 24px;
}
#topBack a:hover {
  background-color: #8A0627;
}
/* フロントページ */
#news1 dl, #news2 dl {
  max-height: 300px;
  overflow-y: auto;
}
#news1 dt, #news2 dt, #newsModal1 dt, #newsModal2 dt {
  color: #6E2F2F
}
#news1 dd, #news2 dd, #newsModal1 dd, #newsModal2 dd {
  color: #474B25;
  border-bottom: dashed rgba(203, 203, 203, 1.00) 1px;
}
.date {
  color: #8A3C3C;
  font-family: Arial, Helvetica, "sans-serif";
  min-width: 5.5em;
  float: left;
  font-weight: bold
}
#secritariat dt.badge {
  font-size: 0.9em
}
#footerNavi h5::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\f152";
  margin-right: 0.4em;
  opacity: 0.5
}
#footerNavi a {
  color: rgba(171, 0, 6, 1.00);
  text-decoration: none
}
#footerNavi a:hover {
  color: rgba(81, 12, 15, 1.00);
  text-decoration: none
}
#footerNavi ul {
  margin-left: 0em
}
#footerNavi li {
  white-space: nowrap;
  margin-right: 1.5em
}
#footerNavi li ::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\f138";
  margin-right: 0.4em;
}
/*・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 会　則 ・・・・・*/
.teikan .sec_name {
  width: 6em;
  width: 100%;
  color: #C36264;
  margin-left: -1em;
  margin-top: 1em;
}
.teikan dt {
  font-weight: bold;
}
.teikan dd {
  display: block;
  margin-left: 5em;
  margin-top: -1.3em;
  margin-bottom: 0.5em;
  margin-right: 0px;
}
.teikan table {
  width: 95%;
  margin-left: 4em;
}
.teikan th {
  color: #E97072;
  vertical-align: top;
  margin-top: 0px;
  margin-right: 0px;
  margin-bottom: 0px;
  margin-left: 0px;
  padding-right: 5px;
  padding-bottom: 5px;
  padding-left: 0px;
  padding-top: 5px;
  text-align: left;
  width: 5em;
  font-weight: normal;
}
.teikan td {
  vertical-align: top;
  margin-top: 0px;
  margin-right: 0px;
  margin-left: 0px;
  margin-bottom: 0px;
  line-height: 140%;
  padding-top: 5px;
  padding-bottom: 5px;
  padding-right: 0.5em;
}
.teikan ol, ul {
  margin-top: 0.5em;
  margin-right: 0em;
  margin-bottom: 0.5em;
  margin-left: 0em;
  padding-left: 0px;
  padding-top: 0px;
  padding-right: 0px;
  padding-bottom: 0px;
  font-size: 100%;
  width: 97%;
}
.teikan ul {
  list-style: none;
}
.teikan ol {
  margin-left: 2em
}
.teikan .li_non {
  list-style: none;
}
.teikan li {
  margin-top: 0.5em;
  margin-right: 0px;
  margin-bottom: 0.5em;
  margin-left: 0px;
}
.teikan .rev {
  float: right;
  list-style: none;
}
.teikan .rev li {
  font-size: 80%;
  list-style: none;
}
/**/
#harassment .sec_name {
  color: #C36264;
  margin-top: 1em;
	font-size: 1.1em;
}
#harassment dd{
	padding-left: 2em
}
/* SIメンバー／休会規約 */
.siKiyaku dt, .kyukaiKiyaku dt{
  font-weight: bold;
}
.siKiyaku dd, .kyukaiKiyaku dd {
  display: block;
  margin-left: 4em;
  margin-top: -1.3em;
  margin-bottom: 0.5em;
  margin-right: 0px;
  line-height: 140%;
}
.siKiyaku dd ol, .siKiyaku dd ul, .kyukaiKiyaku dd ol, .kyukaiKiyaku dd ul {
  margin: 0.5em 0px;
  padding-left: 0px;
  padding-top: 0px;
  padding-right: 0px;
  padding-bottom: 0px;
  font-size: 100%;
  width: 100%;
}
.siKiyaku ul, .siKiyaku ul ul, .kyukaiKiyaku ul, .kyukaiKiyaku ul ul {
  list-style: none;
  width: auto;
}
.siKiyaku ol, .kyukaiKiyaku ol {
  margin-left: 2em
}
.siKiyaku ul, .kyukaiKiyaku ul {
  list-style: none;
}
.siKiyaku li, .kyukaiKiyaku li {
  margin-top: 0.5em;
  margin-right: 0px;
  margin-bottom: 0.5em;
  margin-left: 0px;
  line-height: 180%
}
.siKiyaku .rev, .kyukaiKiyaku .rev {
  float: right;
  list-style: none;
}
.siKiyaku .rev li, .kyukaiKiyaku .rev li {
  font-size: 80%;
  list-style: none;
}
.siKiyaku ol .alfa, .siKiyaku ul ol .alfa, .kyukaiKiyaku ol .alfa, .kyukaiKiyaku ul ol .alfa {
  list-style: lower-alpha;
  width: 92%
}
/*  */
#link a::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\f35d";
  margin-right: 0.4em;
  opacity: 0.5
}
#link tbody th::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\f111";
  margin-right: 0.4em;
  opacity: 0.5;
  color: rgba(163, 41, 43, 1.00)
}
/* MEMBERS */
#seminar_report .carousel-caption dl {
  text-shadow: 2px 2px 3px rgba(0, 0, 0, 1.00);
  background-color: rgba(0, 0, 0, 0.60);
  padding-top: 8px;
  padding-right: 8px;
  padding-bottom: 8px;
  padding-left: 8px;
}
#seminar_report .carousel-caption dt {
  font-size: 1.1em;
  font-weight: 300;
}
#seminar_report .carousel-caption dd {
  font-weight: 300;
}
/* */
.numKako {
  margin-left: 1.5em;
}
span.numKako {
  margin-left: -1.5em
}
.numkataKako {
  margin-left: 1.5em
}
span.numkataKako {
  margin-left: -1.5em;
}
/**/
#greeting {
  letter-spacing: 0.06em;
  line-height: 150%
}
@keyframes border {
  0% {
    border: medium solid #D76198;
  }
  100% {
    border: medium solid #E7D9D9;
  }
}
.blinking.border-only {
  animation: border 0.5s ease infinite alternate;
}

.customUL {
  list-style-type: none;
  margin-left: 3em;
  padding-left: 0;
}
	
.customUL > li {
	position: relative;
}

.customLI {
	left: -3.0em;
	position: absolute;
	text-align: center;
	width: 3.2em;
	line-height: inherit;
}

.customUL2 {
  list-style-type: none;
  margin-left: 1.8em;
  padding-left: 0;
}
	
.customUL2 > li {
	position: relative;
}

.customLI2 {
	left: -2.5em;
	position: absolute;
		text-align: right;
	width: 2.5em;
	line-height: inherit;
}