@charset "utf-8";

/*  +++++++++++++++++++++++++ common +++++++++++++++++++++++++ */

.pc {
display: none;
}
.sp {
display: block;
}
.pctL,
.pctR {
float: none;
margin-left: 0 !important;
margin-right: 0 !important;
text-align: center;
}
.wide {
height: auto;
width: 100% !important;
}
.scroll {
overflow: auto;
padding: 0 0 10px;
white-space: nowrap;
}
.scroll::-webkit-scrollbar {
height: 5px;
}
.scroll::-webkit-scrollbar-track {
background: #cccccc;
}
.scroll::-webkit-scrollbar-thumb {
background: #000000;
}
#btnTop {
bottom: 10px;
right: 10px;
}
.movieBox {
margin: 0 0 20px;
padding-top: 56.25%;
width: 100%;
}
.movieBox iframe {
height: 100% !important;
margin: 0;
padding: 0;
position: absolute;
right: 0;
top: 0;
width: 100% !important;
}



/*  +++++++++++++++++++++++++ btnBox +++++++++++++++++++++++++ */

ul.btnBox {
margin: 0 20px;
}
ul.btnBox li {
display: block !important;
font-size: 1.0rem !important;
margin: 0 0 10px !important;
}
ul.btnBox li:last-child {
margin-bottom: 0 !important;
}
ul.btnBox li a {
padding: 15px 0;
}




/*  +++++++++++++++++++++++++ btnTxtBox +++++++++++++++++++++++++ */

ul.btnTxtBox {
margin: 0;
}
ul.btnTxtBox li {
display: block;
font-size: .91rem;
margin: 0 0 15px;
}
ul.btnTxtBox li:last-child {
margin-bottom: 0;
}
ul.btnTxtBox li a span:after {
height: 16px;
width: 16px;
}




/*  +++++++++++++++++++++++++ header +++++++++++++++++++++++++ */

#header:before {
height: 10px;
}
#header > .inner {
display: block;
margin: 0 15px;
padding: 15px 0;
width: auto;
}
#header p.logo {
padding-right: 60px;
width: auto;
}
#header #headerContents {
display: none;
}



/*  +++++++++++++++++++++++++ spMenu +++++++++++++++++++++++++ */

#spMenu {
display: block;
position: fixed;
right: 20px;
top: 30px;
transition-duration: .3s;
z-index: 5100;
}
#spMenu a#menuTrigger,
#spMenu a#menuTrigger span.line {
box-sizing: border-box;
display: block;
transition: all .4s;
}
#spMenu a#menuTrigger {
display: block;
height: 16px;
position: relative;
width: 30px;
}
#spMenu a#menuTrigger span.line {
background-color: #235167;
height: 2px;
left: 0;
margin: auto;
position: absolute;
right: 0;
width: 100%;
}
#spMenu a#menuTrigger span.line:nth-of-type(1) {
top: 0;
}
#spMenu a#menuTrigger span.line:nth-of-type(2) {
top: 50%;
transform: translateY(-50%);
}
#spMenu a#menuTrigger span.line:nth-of-type(3) {
bottom: 0;
}
#spMenu a#menuTrigger.active span.line {
background-color: #ffffff;
}
#spMenu a#menuTrigger.active span.line:nth-of-type(1) {
top: 5px;
-webkit-transform: translateY(5px) rotate(-45deg);
transform: translateY(5px) rotate(-45deg);
}
#spMenu a#menuTrigger.active span.line:nth-of-type(2) {
opacity: 0;
}
#spMenu a#menuTrigger.active span.line:nth-of-type(3) {
bottom: auto;
top: 15px;
-webkit-transform: translateY(-5px) rotate(45deg);
transform: translateY(-5px) rotate(45deg);
}



/*  +++++++++++++++++++++++++ navi +++++++++++++++++++++++++ */

#navi {
background: #235167;
display: none;
height: 100%;
left: 0;
margin: 0;
overflow: auto;
padding: 0;
position: fixed;
top: 0;
width: 100%;
z-index: 5000;
}
#navi p.logo {
margin: 0;
padding: 30px 0;
text-align: center;
}
#navi p.logo img {
height: auto;
width: 160px;
}
#navi ul.menu {
display: block;
margin: 0;
width: 100%;
}
#navi ul.menu li {
border-top: solid 1px #2e637d;
font-size: .91rem;
text-align: left;
width: 100%;
}
#navi ul.menu:before,
#navi ul.menu li:before {
content: none;
}
#navi ul.menu li a {
color: #ffffff;
padding: 12px 20px;
}
#navi ul.menu >li >ul.sub-menu >li >ul.sub-menu {
  display: none !important;
}
.toggle-btn {
  cursor: pointer;
  display: inline-block;
  width: 20px;
  text-align: center;
}
#navi ul.menu li ul.sub-menu {
bottom: auto;
display: block !important;
left: auto;
position: relative;
transform: none;
}
#navi ul.menu li ul.sub-menu li {
background: #2e637d;
border-top: solid 1px #1f4d64;
font-size: .85rem;
white-space: normal;
}
#navi ul.menu li ul.sub-menu li ul.sub-menu {
  left: 0;
  transform: translateY(-1px);
  top: unset;
  bottom: auto;
}
#navi ul.menu li ul.sub-menu li ul.sub-menu li {
  background: #008bd0;
  border-top: solid 1px #235167;
}
#navi ul.menu li ul.sub-menu li a {
color: #b0d5e6;
padding: 10px 20px;
}
#navi ul.menu li ul.sub-menu li a:has(.toggle-btn) {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
#navi ul.langBox {
border: solid 1px #d1d1d1;
border-radius: 5px;
box-sizing: border-box;
display: flex;
margin: 0 auto 20px;
padding: 0;
width: 80%;
}
#navi ul.langBox li {
background: #ffffff;
box-sizing: border-box;
font-size: .85rem;
line-height: 1.0;
margin: 0;
padding: 0;
text-align: center;
width: 50%;
}
#navi ul.langBox li:nth-of-type(1) {
border-radius: 5px 0 0 5px;
border-right: solid 1px #d1d1d1;
}
#navi ul.langBox li:nth-of-type(2) {
border-radius: 0 5px 5px 0;
}
#navi ul.langBox li a {
color: #4a4a4a;
display: block;
margin: 0;
padding: 10px 0;
text-decoration: none;
}
#navi ul.langBox li.current {
background: #f0f0f0;
}
#navi ul.langBox li.current a {
color: #9d9d9d;
}

/*  +++++++++++++++++++++++++ searchBox +++++++++++++++++++++++++ */

#searchWrap {
margin: 0 auto 30px;
width: 80%;
}
#searchWrap .ico {
display: none;
}
#searchWrap #searchBox {
margin: 0;
padding: 0;
position: relative;
top: auto;
left: auto;
right: auto;
width: auto;
box-shadow: none;
display: block !important;
}
#searchWrap #searchBox > .inner {
padding: 10px;
}


/*  +++++++++++++++++++++++++ main +++++++++++++++++++++++++ */

#mainSP {
margin: 0;
padding: 0;
display: block;
position: relative;
z-index: 4000 !important;
}




/*  +++++++++++++++++++++++++ mainCommon +++++++++++++++++++++++++ */

#mainCommon > .inner {
padding: 40px 20px;
}
#mainCommon h1 {
font-size: 1.125rem;
}





/*  +++++++++++++++++++++++++ newsBox +++++++++++++++++++++++++ */

#newsBox h2 {
font-size: 1.4rem;
margin: 0 0 20px;
}
#newsBox > .inner {
margin: 0 20px;
padding: 40px 0;
width: auto;
}
#newsList {
margin: 0 0 30px;
padding: 10px 20px;
}
#newsList .entry a {
display: block;
}
#newsList .entry p.title {
font-size: .85rem;
margin-top: 6px;
padding: 0;
}
#newsList .entry p.date {
font-size: .81rem;
}
#newsList .entry p.date .category {
margin: 0 0 0 10px;
}

.page #newsBox > .inner {
margin: 0 ;
padding: 0;
width: auto;
}

.page #newsList .entry a {
padding: 15px 0;
}

.page #newsList .entry p.title {
font-size: 1.0rem;
}





/*  +++++++++++++++++++++++++ aboutBox +++++++++++++++++++++++++ */

#aboutBox h2 {
font-size: 1.4rem;
margin: 0 0 20px;
}
#aboutBox > .inner {
margin: 0 20px;
padding: 40px 0;
width: auto;
}
#aboutBox > .inner > .index_about_con {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  gap: 20px;
  width: 100%;
  margin-bottom: 1em;
}
#aboutBox > .inner > .index_about_con > p {
  width: 100%;
  margin-bottom: 0;
}
#aboutBox > .inner > .index_about_con > img {
  position: unset;
  transform: none;
  margin: auto;
  width: 80%;
  max-width: 420px;
}
#aboutBox h2 {
font-size: 1.4rem;
margin: 0 0 20px;
}
#aboutBox p {
font-size: 1rem;
line-height: 1.8;
margin: 0 0 20px;
width: auto;
}
#aboutBox p.logo {
margin: 30px auto;
position: relative;
right: autp;
top: auto;
transform: none;
width: 70%;
}




/*  +++++++++++++++++++++++++ guideBox +++++++++++++++++++++++++ */

#guideBox h2 {
font-size: 1.4rem;
margin: 0 0 20px;
}
#guideBox > .inner {
margin: 0 20px;
padding: 40px 0;
width: auto;
}
#guideBox #guideList {
display: block;
margin: 0 0 25px;
}
#guideBox #guideList .box {
margin: 0 0 10px !important;
width: 100% !important;
}
#guideBox #guideList .box:last-child {
margin-bottom: 0 !important;
}
#guideBox #guideList .box a {
padding: 15px 20px !important;
}
#guideBox #guideList .box .txtBox h3 {
font-size: 1.125rem;
}
#guideBox #guideList .box .txtBox h3.ss {
font-size: 1.125rem;
}
#guideBox #guideList .box .txtBox h3 .ss {
font-size: .61em;
}
#guideBox #guideList .box .txtBox p {
font-size: .85rem;
}
#guideBox #guideList_03 {
display: block;
margin: 0 0 25px;
}
#guideBox #guideList_03 .box {
margin: 0 0 10px !important;
width: 100% !important;
}
#guideBox #guideList_03 .box:last-child {
margin-bottom: 0 !important;
}
#guideBox #guideList_03 .box a {
padding: 15px 20px !important;
}
#guideBox #guideList_03 .box .txtBox h3 {
font-size: 1.125rem;
}
#guideBox #guideList_03 .box .txtBox h3.ss {
font-size: 1.125rem;
}
#guideBox #guideList_03 .box .txtBox h3 .ss {
font-size: .61em;
}
#guideBox #guideList_03 .box .txtBox p {
font-size: .85rem;
}
#guideBox ul.bnrTxt li {
font-size: 1.0rem;
}
#guideBox ul.bnrTxt li a {
padding: 12px 20px;
}




/*  +++++++++++++++++++++++++ introductionBox +++++++++++++++++++++++++ */

#introductionBox h2 {
font-size: 1.4rem;
margin: 0 0 20px;
}
#introductionBox h3 {
  font-size: 1.2rem;
  margin: 0 0 10px;
}
#introductionBox > .inner {
margin: 0 20px;
padding: 40px 0;
width: auto;
}
#introductionBox ul#introductionList {
display: block;
}
#introductionBox ul#introductionList li {
font-size: 1.0rem;
margin: 0 0 10px !important;
width: 100%;
}
#introductionBox ul#introductionList li:last-child {
margin-bottom: 0 !important;
}
#introductionBox ul#introductionList li a {
padding: 10px;
}



/*  +++++++++++++++++++++++++ footerBnrBox +++++++++++++++++++++++++ */

#footerBnrBox > .inner {
  margin: 0 10px 20px 10px;
  padding: 20px 0;
  width: auto;
}
#footerBnrBox ul {
  justify-content: space-between;
}

#footerBnrBox ul li {
  margin: 0 0 2% 0 !important;
  width: 49%;
}

#footerBnrBox ul li a img {
  width: 100%;
}
/*
#footerBnrBox > .inner {
margin: 0 20px;
padding: 20px 0;
width: auto;
}
#footerBnrBox ul li {
margin: 0 2% 0 0 !important;
width: 49%;
}
#footerBnrBox ul li:nth-child(2n) {
margin-right: 0 !important;
}
#footerBnrBox ul li:nth-child(n+3) {
margin-top: 2% !important;
}
*/


/*  +++++++++++++++++++++++++ footer +++++++++++++++++++++++++ */

#footer > .inner {
margin: 0 20px;
padding: 30px 0;
width: auto;
}
#footer p {
font-size: .91rem;
line-height: 1.8;
margin: 0 0 15px;
}
#footer ul.cvBtnBox {
margin: 0;
width: 100%;
}





/*  +++++++++++++++++++++++++ co +++++++++++++++++++++++++ */

#co > .inner {
margin: 0 20px;
padding: 20px 0 40px;
width: auto;
}




/*  +++++++++++++++++++++++++ page +++++++++++++++++++++++++ */

.page p {
font-size: .91rem;
line-height: 1.8;
margin: 0 0 20px;
}
.page h2 {
font-size: 1.4rem;
}
.page h3 {
font-size: 1.2rem;
margin: 0 0 20px;
padding: 10px 20px;
}
.page h4 {
font-size: 1.125rem;
margin: 0 0 15px;
}
.page h5 {
font-size: 1.0rem;
}
.page * + h2 {
margin-top: 60px;
}
.page #pan + h2 {
margin-top: 0;
}
.page * + h3,
.page * + h4,
.page * + h5,
.page * + h6 {
margin-top: 30px;
}
.page h2 + h3,
.page h3 + h4,
.page h4 + h5,
.page h5 + h6 {
margin-top: 0;
}
.page ul li,
#detailPage #CoL ul li {
font-size: .91rem;
}
.page #secondBox {
display: block;
}
.page #secondBox .box {
margin: 0 0 20px !important;
width: 100%;
}
.page #secondBox .box:last-child {
margin-bottom: 0 !important;
}
.page #secondBox h2 {
font-size: 1.125rem;
}
.page #secondBox p {
font-size: .75rem;
}
.page #secondBox a {
padding: 20px;
}
.page #secondBox a > *:last-child {
margin-bottom: 0;
}
.page #secondBox p.photo {
float: none;
margin: 0 0 15px;
width: auto;
}
.page #staffBox .box + .box {
margin-top: 30px;
padding-top: 30px;
}
.page #staffBox .box .photo {
width: 80px;
}
.page #staffBox .box .txtBox {
width: calc(100% - 100px);
}
.page #staffBox .box .txtBox * + h5 {
margin-top: 20px;
}

.page .youtubeBox {
padding: 20px;
width: 100%;
}

.page .youtubeBox iframe {
height: 100%;
width: 100%;
}

.page .history_container {
  display: flex;
  gap: 20px;
  width: 100%;
  flex-direction: column;
  align-items: center;
  padding: 20px 0;
  background-color: #cccccc;
}
.page .history_container img {
  width: 90%;
  border: 1px solid;
  background: #fff;
}
.page .arrow_container .pc_only{
  display: none;
}

.page .member_table {
  text-align: center;
}
.page .member_table tbody tr {
  display: flex;
  align-items: center;
}
.page .member_table tbody tr th {
  width: 25%;
  line-height: 1.2;
  padding-top: 20px;
  padding-bottom: 20px;
}
.page .member_table tbody tr td {
  width: 25%;
  line-height: 1.2;
  padding-top: 20px;
  padding-bottom: 20px;
}
.page .member_table tbody tr td span {
  font-size: 0.7em;
}

.page .tbl th,
.page .tbl td,
.page table th,
.page table td,
#detailPage table th,
#detailPage table td {
padding: 1em 0;
display: block;
width: 100%;
}

.page table th,
#detailPage table th {
padding-top: 0;
}
.page table td,
#detailPage table td {
padding-top: 0;
}

.page table.tblNormal th,
.page table.tblNormal td {
  width: 100%;
}

.page table.tblNormal th.ico {
  width: 100%;
}

.page table.tblNormal td.second {
  width: 100%;
}

.page .photoBox {
display: block;
}

.page .photoBox.clearfix .photo {
width: 100%;
}

.page .photoBox .photoBoxInner:first-child,
.page .photoBox.reverse .photoBoxInner:first-child {
width: 100%;
}

.page .photoBox .photoBoxInner:last-child,
.page .photoBox.reverse .photoBoxInner:last-child {
width: 100%;
}

.page .secondMenu li {
width: 100% !important;
font-size: 1.0rem;
min-height: 0 !important;
}
.page .secondMenu li+li {
margin-top: 2%;
}
.page .secondMenu li a {
padding: 15px !important;
}
.page .pagination{
margin:20px 0 40px;
}
.page .pagination .page-numbers{
padding:3px 6px;
font-size: 0.85rem;
}


/*  +++++++++++++++++++++++++ guidepage +++++++++++++++++++++++++ */

.page #secondBox.guide {
margin-bottom: 30px;
}

.page #secondBox.guide .txtBox {
width: calc(100% - 70px);
}

.page .contactBoxArea .contactBoxAreaInner {
padding: 0 20px 20px 20px;
}
.page #secondBox.guide p.photo {
width: 60px;
}


/*  +++++++++++++++++++++++++ newspage +++++++++++++++++++++++++ */
.page #CoAll {
display: block;
justify-content: space-between;
}

.page #CoAll #CoL {
margin-bottom: 30px;
width: 100%;
}

.page #CoAll #CoR {
width: 100%;
}
