@charset "utf-8";


/*=============================
セクション
=============================*/
.sectionBox {
 margin-top: 50px;
 margin-bottom: 50px
}
.sectionBox:before, .sectionBox:after {
 content: "";
 display: block
}
.sectionBox:after {
 clear: both
}
.sectionBox > h2:first-child, .sectionBox > h3:first-child, .sectionBox > h4:first-child, .sectionBox > h5:first-child {
 margin-top: 0 !important
}
.sectionBox > *:last-child {
 margin-bottom: 0 !important
}
/*=============================
frameBox
=============================*/
.frameBox{

  margin-top: 30px;
 margin-bottom: 30px;
 border: 1px solid gray;
 padding: 20px;
}
.frameBox:before, .frameBox:after {
 content: "";
 display: block
}
.frameBox:after {
 clear: both
}
.frameBox > h2:first-child, .frameBox > h3:first-child, .frameBox > h4:first-child, .frameBox > h5:first-child {
 margin-top: 0 !important
}
.frameBox > *:last-child {
 margin-bottom: 0 !important
}
/*=============================
パンくず
=============================*/

.breadcrumb {
margin-bottom: 20px;
 position: relative;
 padding-top: 10px;
 padding-bottom: 10px;
 z-index: 1;
 font-size: 1.2rem;
 line-height: 1.2;
 overflow: auto
}
@media screen and (max-width: 480px) {
 .breadcrumb {
  font-size: 1rem
 }
}
.breadcrumb:before, .breadcrumb:after {
 content: "";
 display: block
}
.breadcrumb:after {
 clear: both
}
.breadcrumb ul {
 display: -webkit-flex;
 display: flex;
 -webkit-flex-direction: row;
 flex-direction: row;
 -webkit-flex-wrap: nowrap;
 flex-wrap: nowrap;
 -webkit-align-items: stretch;
 align-items: stretch;
 -webkit-justify-content: flex-start;
 justify-content: flex-start
}
.breadcrumb ul li {
 white-space: nowrap;
 color: #333;
 position: relative;
 padding-right: .2em;
 line-height: 1.2
}
.breadcrumb ul li + li {
 padding-left: 1.2em
}
.breadcrumb ul li + li::before {
 display: block;
 position: absolute;
 top: 50%;
 margin-top: -0.6em;
 width: 1.2em;
 color: inherit;
 line-height: 1.2;
 text-align: center;
 left: 0;
 font-family: "Font Awesome 5 Free";
 font-weight: 900;
 content: "\f105";
 -webkit-font-smoothing: antialiased;
 -moz-osx-font-smoothing: grayscale
}
.breadcrumb a {
 color: #666;
 text-decoration: none
}
.breadcrumb a:hover {
 color: #333;
 text-decoration: none
}
/*=============================
.一覧のリンク用
=============================*/
.flexLink {
 display: -webkit-flex;
 display: flex;
 -webkit-flex-direction: row;
 flex-direction: row;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-align-items: stretch;
 align-items: stretch;
 -webkit-justify-content: flex-start;
 justify-content: flex-start;
 margin-left: -5px !important;
 margin-right: -5px !important
}
.flexLink li {
 margin: 0 0 10px !important;
 padding: 0 5px !important;
 list-style: none;
 width: 33.333%;
 max-width: 100%
}
@media screen and (max-width: 768px) {
 .flexLink li {
  width: 50%
 }
}
@media screen and (max-width: 480px) {
 .flexLink li {
  width: 100%
 }
}
.flexLink-2col li {
 width: 50%
}
.flexLink-3col li {
 width: 33.333%
}
.flexLink-4col li {
 width: 25%
}
.flexLink-5col li {
 width: 20%
}
.flexLink-auto li {
 width: auto
}
.flexLink li:after, .flexLink li:before {
 display: none
}
.flexLink a {

 line-height: 1.2;
 position: relative;
 padding: 1em 1.8em 1em 1.1em;
 background-color: #fff;
 border: 2px solid gray;
 min-width: 8em;
 color: gray !important;
 font-weight: bold;
 text-decoration: none !important;
 transition: all .3s;
 border-radius: 5px;
 cursor: pointer;
 display: -webkit-flex;
 display: flex;
 -webkit-align-items: center;
 align-items: center
}
.flexLink a:hover {
 background-color: gray;
 color: #fff !important
}
.flexLink a::after {
 position: absolute;
 right: .6em;
 font-weight: 900;
 display: inline-block;
 font-family: "Font Awesome 5 Free";
 content: "\f0da";
 text-rendering: auto;
 -webkit-font-smoothing: antialiased;
 -moz-osx-font-smoothing: grayscale;
 color: gray !important;
 top: calc(50% - 0.5em);
 line-height: 1;
 transition: all .3s
}
.flexLink a[href^="#"]::after {
 -moz-transform: rotate(90deg);
 -ms-transform: rotate(90deg);
 -webkit-transform: rotate(90deg);
 transform: rotate(90deg)
}
.flexLink a:hover::after {
 color: #fff !important
}

/*=============================
memberページ専用
=============================*/
.member-name{
 font-size:2.4rem;
 line-height: 1.4;
 font-weight:bold;
}
@media screen and (max-width: 768px) {
.member-name{
  font-size:2rem;
 }
 }
/*=============================
.editorというクラスの中だけで走るcss
=============================*/


.editor > *:first-child {
 margin-top: 0 !important
}
.editor .row {
 margin-bottom: 10px
}
.editor .row div[class^="col-"] {
 margin-bottom: 20px
}
.editor .readMidashi {
 font-feature-settings: "palt";
 font-size: 2.6rem;
 line-height: 1.4;
 margin-bottom: 1em
}
@media screen and (max-width: 768px) {
 .editor .readMidashi {
  font-size: 1.8rem
 }
}
.editor .readMidashi span {
 display: inline-block
}


.editor h1:not(.noteditor) {
 padding: 0.5em 1em 0.5em;
 position: relative;
 font-size: 2.4rem;
 font-weight: 700;
 line-height: 1.4;
 font-display: swap;
 background: #fff;
 font-feature-settings: "palt";
 color: #333;
 margin: 2em 0 0.7em
}
@media screen and (max-width: 768px) {
 .editor h1:not(.noteditor) {
  font-size: 2rem
 }
}
.editor h1:not(.noteditor)::before {
 position: absolute;
 background-repeat: no-repeat;
 background-position: center;
 background-size: cover;
 content: "";
 display: block;
 vertical-align: middle;
 background-color: #063C86;
 left: 0;
 top: 0;
 height: 100%;
 width: 6px
}


.editor h2:not(.noteditor) {
 padding: 0.5em 1em 0.5em;
 position: relative;
 font-size: 2rem;
 font-weight: 700;
 line-height: 1.4;
 font-display: swap;
background: rgba(0,0,0,0.04);
 font-feature-settings: "palt";
 color: #333;
 margin: 2em 0 0.7em
}
@media screen and (max-width: 768px) {
 .editor h2:not(.noteditor) {
  font-size: 1.8rem
 }
}
.editor h2:not(.noteditor)::before {
 position: absolute;
 background-repeat: no-repeat;
 background-position: center;
 background-size: cover;
 content: "";
 display: block;
 vertical-align: middle;
 background-color: #063C86;
 left: 0;
 top: 0;
 height: 100%;
 width: 6px
}
.editor h3:not(.noteditor) {
 padding: 0.2em 0.5em;
 position: relative;
 font-size: 1.8rem;
 font-weight: bold;
 font-feature-settings: "palt";
 line-height: 1.4;
 margin: 1.5em 0 0.6em;
 background-color: #063C86;
 color: #fff
}
.editor h3:not(.noteditor) a {
 color: yellow;
 text-decoration: underline
}
.editor h4:not(.noteditor) {
 position: relative;
 margin: 1.2em 0 0.6em;
 font-size: 1.6rem;
 line-height: 1.4;
 padding: 0.3em 0em 0.3em;
 font-feature-settings: "palt";
 color: #063C86;
 font-weight: 700;
 border-bottom: 2px solid gray
}
.editor h4.noborder {
 position: relative;
 margin: 1.2em 0 0.5em;
 font-size: 1.6rem;
 line-height: 1.4;
 padding: 0.3em 0em 0.3em;
 font-feature-settings: "palt";
 color: #063C86;
 font-weight: 700
}
.editor h5:not(.noteditor) {
 padding-left: 1.2em;
 color: #333;
 position: relative;
 font-size: 1.6rem;
 font-weight: bold;
 margin: 1.1em 0 0.3em;
 line-height: 1.4
}
.editor h5:not(.noteditor)::after {
 position: absolute;
 height: 1em;
 width: 1em;
 content: "";
 display: block;
 top: 0.2em;
 left: 0;
 background-image: linear-gradient(135deg, #063c86 0%, #063c86 100%)
}

.editor h1 + h2, h1 + h3, h1 + h4, h1 + h5 {margin-top: 0;}
.editor h2 + h2, h2 + h3, h2 + h4, h2 + h5 {margin-top: 0;}
.editor h3 + h2, h3 + h3, h3 + h4, h3 + h5 {margin-top: 0;}
.editor h4 + h2, h4 + h3, h4 + h4, h4 + h5 {margin-top: 0;}
.editor h5 + h2, h5 + h3, h5 + h4, h5 + h5 {margin-top: 0;}

.editor p {
 margin-bottom: 10px;
 line-height: 1.8
}
.editor p a, .editor li a, .editor td a {
 text-decoration: underline
}
.editor strong, .editor b {
 font-weight: bold
}
.editor i:not([class]) {
 font-style: italic
}
.editor a > img:hover {
 opacity: 0.7
}
.editor img {
 height: auto
}
.editor .img-max {
max-width: inherit;
 width: 100%;
}

.editor img:not([class]) {
 max-width: 100%
}
.editor .img-scroll {
 display: block;
 width: 100%;
 min-height: 0%;
 overflow-x: auto
}
.editor .img-scroll img {
 max-width: inherit
}
.editor .word-break-break-all {
 word-break: break-all
}
.editor .word-break-keep-all {
 word-break: keep-all
}
.editor .word-break-nomal {
 word-break: normal
}
.editor table {
 margin: 15px 0 20px;
 border-collapse: collapse;
 border-spacing: 0;
 line-height: 1.4
}
.editor table caption {
 line-height: 1.4;
 font-weight: bold;
 padding-bottom: 0.2em
}
.editor table caption + tbody tr:first-child {
 border-top: none
}
.editor table {
 width: 100%;
 max-width: 100%
}
.editor .nowrap {
 white-space: nowrap
}
.editor .nowrap-th tr > th {
 white-space: nowrap
}
.editor .nowrap-cell-1 tbody tr > *:nth-child(1), .editor .nowrap-cell-2 tbody tr > *:nth-child(2), .editor .nowrap-cell-3 tbody tr > *:nth-child(3), .editor .nowrap-cell-4 tbody tr > *:nth-child(4), .editor .nowrap-cell-5 tbody tr > *:nth-child(5), .editor .nowrap-cell-6 tbody tr > *:nth-child(6), .editor .nowrap-cell-7 tbody tr > *:nth-child(7), .editor .nowrap-cell-8 tbody tr > *:nth-child(8), .editor .nowrap-cell-9 tbody tr > *:nth-child(9), .editor .nowrap-cell-10 tbody tr > *:nth-child(10), .editor .nowrap-cell-last tbody tr > *:last-child, .editor .nowrap-cell-first tbody tr > *:first-child {
 white-space: nowrap
}
.editor .tac-th tr > th, .editor .tac-th tbody tr > th {
 text-align: center
}
.editor .tac-td tr > td, .editor .tac-td tbody tr > td {
 text-align: center
}
.editor .tac-cell-1 tbody tr > *:nth-child(1), .editor .tac-cell-2 tbody tr > *:nth-child(2), .editor .tac-cell-3 tbody tr > *:nth-child(3), .editor .tac-cell-4 tbody tr > *:nth-child(4), .editor .tac-cell-5 tbody tr > *:nth-child(5), .editor .tac-cell-6 tbody tr > *:nth-child(6), .editor .tac-cell-7 tbody tr > *:nth-child(7), .editor .tac-cell-8 tbody tr > *:nth-child(8), .editor .tac-cell-9 tbody tr > *:nth-child(9), .editor .tac-cell-10 tbody tr > *:nth-child(10), .editor .tac-cell-last tbody tr > *:last-child, .editor .tac-cell-first tbody tr > *:first-child {
 text-align: center
}
.editor .tar-th tr > th, .editor .tar-th tbody tr > th {
 text-align: right
}
.editor .tar-td tr > td, .editor .tar-td tbody tr > td {
 text-align: right
}
.editor .tar-cell-1 tbody tr > *:nth-child(1), .editor .tar-cell-2 tbody tr > *:nth-child(2), .editor .tar-cell-3 tbody tr > *:nth-child(3), .editor .tar-cell-4 tbody tr > *:nth-child(4), .editor .tar-cell-5 tbody tr > *:nth-child(5), .editor .tar-cell-6 tbody tr > *:nth-child(6), .editor .tar-cell-7 tbody tr > *:nth-child(7), .editor .tar-cell-8 tbody tr > *:nth-child(8), .editor .tar-cell-9 tbody tr > *:nth-child(9), .editor .tar-cell-10 tbody tr > *:nth-child(10), .editor .tar-cell-last tbody tr > *:last-child, .editor .tar-cell-first tbody tr > *:first-child {
 text-align: right
}
.editor table th {
 background-color: #F1F1F1;
 font-weight: bold
}
.editor table td {
 background-color: #fff;
 vertical-align: top
}
.editor table img {
 vertical-align: top
}
.editor table th, .editor table td {
 padding: 1rem 1em
}
@media screen and (max-width: 480px) {
 .editor table th, .editor table td {
  padding: 0.6rem 0.6rem;
  font-size: 1.2rem
 }
}
.editor table tbody th, .editor table tbody td {
 border: 1px solid #9e9fa0
}
.editor table thead th, .editor table thead td {
 border: 1px solid #9e9fa0;
 vertical-align: middle;
 background-color: #C9D0E0
}
.editor table tfoot th, .editor table tfoot td {
 border: 1px solid #9e9fa0
}
.editor table tbody th {
 text-align: left
}
.editor table tbody + tbody {
 border-top: 1px solid #9e9fa0
}
.editor table tfoot td, .editor table .kyocho td {
 font-weight: 700;
 background-color: #F7F7D0
}
.editor .table-responsive {
 display: block;
 width: 100%;
 min-height: 0%;
 overflow-x: auto;
 margin: 15px 0 20px;
 -webkit-overflow-scrolling: touch;
 -ms-overflow-style: -ms-autohiding-scrollbar
}
.editor .table-responsive > table, .editor .table-responsive-sm > table, .editor .table-responsive-md > table, .editor .table-responsive-lg > table, .editor .table-responsive-xl > table {
 margin: 0;
 min-width: 480px
}
.editor .table-responsive-sm {
 margin: 15px 0 20px;
 display: block;
 width: 100%
}
@media screen and (max-width: 480px) {
 .editor .table-responsive-sm {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar
 }
}
.editor .table-responsive-md {
 margin: 15px 0 20px;
 display: block;
 width: 100%
}
@media screen and (max-width: 768px) {
 .editor .table-responsive-md {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar
 }
}
.editor .table-responsive-lg {
 margin: 15px 0 20px;
 display: block;
 width: 100%
}
@media screen and (max-width: 896px) {
 .editor .table-responsive-lg {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar
 }
}
.editor .table-responsive-xl {
 margin: 15px 0 20px;
 display: block;
 width: 100%
}
@media screen and (max-width: 896px) {
 .editor .table-responsive-xl {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar
 }
}
@media screen and (max-width: 768px) {
 .editor .table-scroll table th, .editor .table-scroll table td {
  min-width: 10em
 }
}
.editor ul:not(.newsList):not(.noteditor), .editor ol {
 margin: 10px 0 15px
}
.editor ul:not(.newsList):not(.noteditor) ul, .editor ol ol {
 margin: 5px 0 10px
}
.editor ul:not(.newsList):not(.noteditor) > li, .editor ol > li {
 margin-bottom: 0.6em;
 line-height: 1.6
}
.editor ul:not(.newsList):not(.noteditor) > li > ul > li, .editor ol > li > ol > li {
 margin-bottom: 0.25em
}
.editor ul:not(.newsList):not(.noteditor) > li {
 position: relative;
 padding-left: 1.1em
}
.editor ul:not(.newsList):not(.noteditor) > li:before {
 position: absolute;
 left: 0;
 content: "●";
 color: #063C86;
 display: inline-block;
 margin-right: 5px
}
.editor ul:not(.newsList):not(.noteditor) > li > ul > li:before {
 content: "●"
}
.editor ol {
 padding-left: 2em
}
.editor ol > li {
 list-style-type: decimal
}
.editor ul.flexlist {
 display: -webkit-flex;
 display: flex;
 -webkit-flex-direction: row;
 flex-direction: row;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-align-items: stretch;
 align-items: stretch;
 -webkit-justify-content: space-between;
 justify-content: space-between;
 margin: 0 !important
}
.editor ul.flexlist > li {
 padding-right: 1em;
 width: 33.333%
}
@media screen and (max-width: 768px) {
 .editor ul.flexlist > li {
  width: 50%
 }
}
@media screen and (max-width: 480px) {
 .editor ul.flexlist > li {
  width: 100%
 }
}
.editor ul li > p, .editor ol li > p{
 margin-bottom: 0;
 line-height: 1.4;
}


blockquote {
 background-color: #f4f1ed;
 padding: 1em 1em 1em 3em;
 position: relative;
 margin: 15px 0 15px
}
blockquote > :last-child {
 margin-bottom: 0
}
blockquote:before {
 content: "“";
 font-size: 600%;
 line-height: 1em;
 font-family: "ＭＳ Ｐゴシック", sans-serif;
 color: #999;
 position: absolute;
 left: 0;
 top: 0
}
.color-main {
 color: #0d2538 !important
}
.color-green {
 color: #089b8c !important
}
.color-blue {
 color: #008cff !important
}
.color-red {
 color: red !important
}
.color-white {
 color: #fff !important
}
.color-orange {
 color: orange !important
}
.color-yellow {
 color: #ff0 !important
}
.color-black {
 color: #000 !important
}
.color-gray {
 color: #888 !important
}
.color-lightgray {
 color: #f2f2f2 !important
}
.text-small {
 font-size: 90% !important;
 line-height: 1.2em
}
.text-smaller {
 font-size: 80% !important;
 line-height: 1.2em
}
.text-smallest {
 font-size: 60% !important;
 line-height: 1.2em
}
.text-big {
 font-size: 114.3% !important;
 line-height: 1.6em
}
.text-bigger {
 font-size: 142.9% !important;
 line-height: 1.6em
}
.text-biggest {
 font-size: 171.4% !important;
 line-height: 1.6em
}
.text-bold {
 font-weight: bold
}
.text-nomal {
 font-weight: 400
}
.caption {
 font-size: 90% !important;
 line-height: 1.4em;
 font-weight: 400;
 display: block;
 text-align: center;
 margin-top: 5px
}
.text-mincho {
 font-family: 'Gelasio', "Times New Roman", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif
}
.marker {
 background: linear-gradient(rgba(0, 0, 0, 0) 60%, #ffff66 60%)
}
.iconuse .btn::after, .iconuse *[class^="btn-"]:after {
 color: inherit !important
}
.btn, *[class^="btn-"] {
 display: inline-flex;
 -webkit-align-items: center;
 align-items: center;
 text-decoration: none !important;
 border-radius: 0;
 color: #fff;
 text-align: left;
 padding: 0.8em 2em 0.8em 1em;
 min-width: 200px;
 font-weight: bold;
 letter-spacing: 1px;
 position: relative;
 cursor: pointer;
 background-color: transparent;
 -moz-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1);
 -o-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1);
 -webkit-transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1);
 transition: all .4s cubic-bezier(0.165, 0.84, 0.44, 1);
 -moz-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
 -o-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
 -webkit-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
 transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
 background: gray;
 line-height: 1.2;
 border-width: 2px;
 border-style: solid;
 border-color: gray
}
.btn:before, *[class^="btn-"]:before {
 content: "\f054";
 font-family: "Font Awesome 5 Free";
 color: inherit;
 font-weight: 900 !important;
 -webkit-font-smoothing: antialiased;
 -moz-osx-font-smoothing: grayscale;
 text-decoration: none !important;
 position: absolute;
 margin-top: -0.5em;
 top: 50%;
 display: block;
 line-height: 1;
 right: 0.8em;
 -webkit-transition: transform 0.3s;
 transition: transform 0.3s
}
.btn:hover, *[class^="btn-"]:hover {
 background-color: #9a9a9a;
 border-color: #9a9a9a;
 color: #fff
}
.btn:hover:before, *[class^="btn-"]:hover:before {
 color: #fff;
 -webkit-transform: translateX(5px);
 transform: translateX(5px)
}
