@charset "utf-8";

@media screen and (max-width: 740px) {

/*  =============================================================

　　共通モジュール設定

============================================================= */


/*  コンテンツ　設定
---------------------------------------------*/

#content {
}


/*  ボタン
-------------------------- */

/* -- 角丸ボタン -- */

.btnLink > * {
  border-radius: 8px;
}

/* 角丸ボタン・青色 */
.btnLink.btnBlue > * {
  background-image: url(/share/imgs/main-content-btn-bg-border-sp.png);
  background-size: 80px;
}

/* 角丸ボタン・戻るボタン */
.btnLink.btnBack {
  text-align: center;
}


/*  テーブル
-------------------------- */

.boxTable {
  margin-bottom: 20px;
}

.boxTable th,
.boxTable td {
  padding: 10px;
}

.boxTable td {
  padding-top: 14px;
  padding-bottom: 14px;
}


/*  アコーディオン・メニュー
-------------------------- */

.boxAcc .btnAcc {
  display: block;
  position: relative;
  overflow: hidden;
  height: 100%;
  padding-right: 45px;
  cursor: pointer;
}

.boxAcc .btnAcc::before {
  position: absolute;
  top: 50%;
  right: 11px;
  width: 21px;
  height: 21px;
  margin-top: -10px;
  background-repeat: no-repeat;
  background-position: 97% center;
  content: "";
}

/* 開くボタン */
.boxAcc .btnAcc::before {
  background-image: url(/share/imgs/main-content-bg-acc-black-open.png);
}

/* 閉じるボタン */
.boxAcc .btnAcc.active::before {
  background-image: url(/share/imgs/main-content-bg-acc-black-close.png);
}

.boxAcc .boxAccCont {
  display: none;
}

.boxAcc .btnAccWhite {
  margin: 0;
  padding: 10px;
  background: #2b5493;
  font-size: 1.1em;
  font-weight: bold;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #fff;
}

.boxAcc .btnAccWhite::before {
  margin-top: -11px;
  background-image: url(/share/imgs/main-content-bg-acc-white-open.png);
  background-size: 100%;
}

.boxAcc .btnAccWhite.active::before {
  background-image: url(/share/imgs/main-content-bg-acc-white-close.png);
}


/*  パンくず
-------------------------- */

.boxBreadcrumb {
  padding: 15px 10px;
} 

#contentBtm .boxBreadcrumb {
  padding-bottom: 0;
}

.boxBreadcrumb dt,
.boxBreadcrumb dd {
  display: inline;
}

.boxBreadcrumb dt {
  float: none;
  width: auto;
}

.boxBreadcrumb dd {
  padding-left: 0;
}

/* リンク */
.boxBreadcrumb a {
  display: inline;
}

/*  タイトル
-------------------------- */

/* カテゴリー・サブカテゴリータイトル */
.boxCategoryTitle,
.boxSubCategoryTitle {
  min-height: 0;
  margin-bottom: 10px;
}

/* カテゴリータイトル */
.boxCategoryTitle {
  padding: 10px 10px 5px;
  font-size: 1.55em;
}

#main .boxCategoryTitle {
  min-height: 0;
  padding: 0.8em 10px 0.35em;
  background-image: url(/share/imgs/main-content-bg-category-title-sp.png);
  background-size: 100% 100%;
  font-size: 1.7em;
  text-align: center;
}

/* サブカテゴリータイトル */
.boxSubCategoryTitle {
  border-top-width: 8px;
  padding: 10px;
  font-size: 1.55em;
  text-align: center;
}

/* セクションタイトル */
.ttlSection {
  border-right: none;
  border-left: none;
  text-align: center;
}


/*  新着情報
-------------------------- */

.boxInfoSection {
  padding: 0;
}

.boxInfoSection .boxSectionHead {
  margin-bottom: 5px;
  padding: 0;
  border: none;
}

.boxInfoSection .boxSectionHead h2,
.boxInfoSection .boxSectionHead p {
  float: none;
  width: 100%;
}

.boxInfoSection .boxSectionHead h2 {
  padding: 5px;
  border-top: 1px solid #4ba0c2;
  border-bottom: 1px solid #4ba0c2;
  font-size: 1.2em;
  font-weight: bold;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-align: center;
}

.boxInfoSection .boxSectionHead p {
  padding: 8px 10px 0;
}

/* ---- インフォ一覧 ---- */

.boxInfoList li,
.boxInfoTab .boxInfoList li {
  padding: 8px 0;
  line-height: 1.6em;
}

.boxInfoSection .boxInfoList li {
  border-bottom: 1px solid #a18f85;
}

.boxInfoList li .txtCont,
.boxInfoList li .txtDate,
.boxInfoTab .boxInfoList li .txtCont,
.boxInfoTab .boxInfoList li .txtDate {
  float: none;
  width: auto;
}

.boxInfoList li .txtDate,
.boxInfoTab .boxInfoList li .txtDate {
  font-size: 0.95em;
}

/* 矢印 */
.boxInfoList li a::before {
  top: 50%;
  margin-top: -6px;
}

.boxInfoTab .boxInfoList li a::before {
  top: 3px;
  margin-top: 0;
}

/*  下線付きリスト
-------------------------- */

.boxLineList > ul > li,
.boxLineList > ol > li {
  border-bottom-style: solid;
}

.boxLineList > ul > li > a,
.boxLineList > ol > li > a {
  padding: 10px 10px 10px 25px;
}


/*  ページ一覧
-------------------------- */

.boxPageListSection {
  margin-bottom: -2px;
  padding: 20px 0 0;
}

.boxPageList > ul {
  margin-left: 0;
}

.boxPageList > ul > li {
  display: block;
  width: auto;
  margin: 0;
  padding: 0;
}

/* -- ページ一覧タイトル -- */

.boxPageList.boxClrOrange .ttlMain {
  background: url(/share/imgs/main-content-bg-obi-blue-sp.png) no-repeat bottom #c5e8f0;
  background-size: 100%;
}

.boxPageList .ttlMain a {
  display: block;
  width: auto;
  height: auto;
}

/* -- ページ一覧タイトル（アコーディオン） -- */

.boxPageList .ttlMain.btnAcc {
  display: block;
  width: auto;
  margin: 0 0 2px;
  padding: 10px 60px 10px 10px;
}

.boxPageList .ttlMain.btnAcc a {
  display: inline;
  margin: 0;
  padding: 0;
  background: none;
  text-decoration: none;
}

.boxPageList .ttlMain.btnAcc a:hover {
  background: none;
  text-decoration: none;
}

.boxPageList .ttlMain.btnAcc span {
  display: inline;
  margin: 0;
  padding: 0;
}

.boxPageList .ttlMain.btnAcc span::before {
  display: none;
}

/* -- リストリンク -- */

.boxPageList .boxLineList > ul > li:nth-child(even),
.boxPageList.boxClrOrange .boxLineList > ul > li:nth-child(even) {
  background: none;
}

.boxPageList .boxLineList > ul > li > a::before {
  top: 16px;
}


/*  分類一覧
-------------------------- */

.boxCateListSection {
  padding: 15px 0;
}

.boxCateList > ul > li {
  border-bottom-style: dotted;
}

.boxCateList > ul > li > a::before {
  top: 15px;
}


/*  記事一覧
-------------------------- */

.boxArticleListSection {
  padding: 0 0 15px;
}

.boxArticleList > ul > li {
  padding: 10px;
  border-bottom-style: dotted;
}

.boxArticleList .txtTitle,
.boxArticleList .txtDate {
  float: none;
  width: auto;
}

.boxArticleList .txtTitle a {
  text-decoration: none;
}

.boxArticleList .txtTitle a::before {
  top: 50%;
  margin-top: -6px;
}

.boxArticleList .txtDate {
  padding-bottom: 5px;
}



/*  キーワード検索
-------------------------- */

.boxSearchSection {
  margin-bottom: 15px;
  padding: 0 10px;
}

.boxSearchSection .boxSearch {
  margin: 0 -10px;
  padding: 15px 10px;
  border-radius: 0;
  border-right: none;
  border-left: none;
}

/* -- 20160309 DEL
.boxSearchSection .boxSearch form {
  display: block;
  height: 45px;
}

.boxSearchSection .boxSearch form label {
  display: block;
  position: relative;
  padding-right: 60px;
}
*/

/* -- 20160309 ADD -- */
.boxSearchSection .boxSearch form {
  display: block;
  position: relative;
  height: 45px;
  padding-right: 60px;
}
/* -- 20160309 ADD-END -- */

/* -- 入力フォーム -- */
.boxSearchSection .boxSearch .txtSearch {
  width: 100%;
}

/* -- 検索ボタン -- */
.boxSearchSection .boxSearch .btnSearch {
  position: absolute;
  top: 0;
  right: 0;
  width: 60px;
}

/* ---- 説明 ---- */

.boxDescription {
  padding-top: 0;
}

.boxDescription.boxAcc {
  margin-bottom: -15px;
}

.boxDescription.boxAcc .btnAcc {
  margin: 0 -10px;
}

.boxDescription.boxAcc .boxAccCont {
}

.boxDescription.boxAcc .boxAccCont p:first-child {
  padding-top: 10px;
}

.boxDescription.boxAcc .boxAccCont p:last-child {
  padding-bottom: 15px;
}



/*  タブ切り替え
-------------------------- */

.boxTabChange {
}

/* ---- Tabボタン ---- */

.boxTabChange .boxBtnArea {
}

.boxTabChange .boxBtnArea ul {
  width: 100%;
}

.boxTabChange .boxBtnArea li {
  min-width: 0;
  padding: 5px;
  font-size: 0.95em;
}

/* ---- カテゴリータブ ---- */

.boxCateTab .boxBtnArea dt {
  margin: 0;
  padding: 10px;
  border-top: 3px solid #91d4e3;
  border-bottom: 3px solid #91d4e3;
}

/* ---- Tabボタン ---- */

.boxCateTab .boxBtnArea {
  margin: 0 0 15px; 
}

.boxCateTab .boxBtnArea ul {
  display: block;
  width: auto;
}

.boxCateTab .boxBtnArea li {
  display: block;
  vertical-align: top;
  width: auto;
  padding: 10px;
  border-radius: 0;
  border: none;
  border-bottom: 1px solid #a18f85;
  background: none;
  color: #2d4485;
  text-align: center;
  font-size: 1em;
  font-weight: normal;
  text-shadow: none;
}

.boxCateTab .boxBtnArea li.selected,
.boxCateTab .boxBtnArea li:hover {
  border-bottom: 1px solid #a18f85;
  background: #ededed;
  color: #2d4485;
}

/* ---- Tab Content Wrap ---- */

.boxCateTab .boxTabContentWrap {
  margin-top: 0;
  padding: 0;
  border: none;
}


/*  アコーディオンリスト
-------------------------- */

.boxAccList {
}

.boxAccList .a11yAccordionHideArea .boxLineList > ul > li > a::before {
  top: 15px;
}


/*  ページ詳細
-------------------------- */

.boxEntryBody {
  padding: 0 15px;
  font-size: 1em;
}

/* ---- H1タイトル ---- */

.boxEntryBody h1 {
  margin-right: -15px;
  margin-left: -15px;
  font-size: 1.4em;  
}

/* ---- H2タイトル ---- */

.boxEntryBody h2 {
  margin: 20px -15px 15px;
  font-size: 1.2em;
}

/* ---- H3タイトル ---- */

.boxEntryBody h3 {
  margin: 20px 0 15px;
  font-size: 1.15em;
}

/* ---- H4タイトル ---- */

.boxEntryBody h4 {
  margin: 20px 0 15px;
  padding-bottom: 2px;
  border-bottom-width: 4px;
  font-size: 1.12em;
}

/* ---- テキスト余白 ---- */

.boxEntryBody .boxEntryContent > p {
  margin-bottom: 15px;
}

/* ---- Entry Meta ---- */

.boxEntryMeta {
  margin-bottom: 15px;
  padding-top: 2px;
}

.boxEntryMeta .boxEntryMetaLeft {
  float: none;
  width: auto;
  text-align: right;
}

.boxEntryMeta .boxEntryMetaRight {
  float: none;
  width: auto;
  margin-left: -15px;
  padding-bottom: 5px;
  
}

.boxEntryMeta .boxEntryMetaRight p {
  display: inline;
  font-size: 0.7em;
}

/* -- 印刷するボタン -- */

.boxEntryMeta .boxEntryMetaRight .btnPrint {
  display: none;
}

/* -- SNS -- */

.boxEntryMeta .boxSNS {
  padding-top: 2px;
}

.boxEntryMeta .boxSNS li {
  margin-left: 2px;
  margin-right: 0; 
}

.boxEntryMeta .boxSNS li.btnShareTwitter {
  vertical-align: bottom;}

.boxEntryMeta .boxSNS li.btnShareFacebook {
  overflow: hidden;
  padding-bottom: 6px;
}


/* ---- リスト ---- */

/* -- 箇条書きリスト -- */

.boxDotList {
}

.boxDotList ul {
  padding-left: 5px;
}

.boxDotList li ul {
  padding-left: 20px;
}

/* -- 順序付きリスト -- */

.boxNumList {
}

.boxNumList ol {
  padding-left: 25px;
}

.boxNumList li ol {
  padding-left: 35px;
}

/* -- 矢印付きリスト -- */

.boxArwList {
}

.boxArwList ul {
  padding-left: 2px;
}

.boxArwList.icnArw a::before {
  top: 3px;
}

/* ---- テーブル ---- */
/*
.boxEntryBody table,
.boxEntryBody table caption,
.boxEntryBody table tbody,
.boxEntryBody table tr,
.boxEntryBody table th,
.boxEntryBody table td {
  display: block;
  width: auto;
}

.boxEntryBody table {
  margin-bottom: 20px;
  border-spacing: 0;
  background: none;
  font-size: 1em;
}

.boxEntryBody table tbody {
  border: 1px solid #a18f85;
  border-top: none;
}

.boxEntryBody table th {
  border-top-width: 6px;
  border-bottom-width: 6px;
}

.boxEntryBody table td {
  border-top: 1px solid #a18f85;
}
*/
.boxEntryBody table {
}

.boxEntryBody .boxEntryFreeform table {
  margin-bottom: 5px;
}

.scrollTable{
  overflow-x: auto;
}

/* スクロールバー表示*/

.scrollTable::-webkit-scrollbar {
  height: 5px;
}

.scrollTable::-webkit-scrollbar-track {
  border-radius: 5px;
  background: #eee;
}

.scrollTable::-webkit-scrollbar-thumb {
  border-radius: 5px;
  background: #666;
}


/* ---- 画像レイアウト ---- */

.imgLeft {
  margin: 0 15px 15px 0;
}

.imgRight {
  margin: 0 0 15px 15px;
}

.boxImgRow {
  margin-bottom: 5px;
}

.boxImgRow ul {
  text-align: center;
}

.boxImgRow li {
  float: none;
  display: inline-block;
  width: 45%;
  margin: 0 0 14px 10px;
}

/* ---- ファイルダウンロード ---- */

.boxFileDowmload {
}

.boxFileDowmload ul {
  padding-left: 0;
}

/* ---- マップ ---- */

.boxEntryBody .boxMap {
  margin-bottom: 15px;
}

.boxEntryBody .boxMap iframe {
  height: 180px;
}

/* ---- この記事についてのお問い合わせ ---- */

.boxEntryBody .boxContactArea {
  margin: 0 -15px 10px;
  padding: 8px;
  border-radius:0;
  border-top: 1px solid #a18f85;
  border-bottom: 1px solid #a18f85;
  border-right: none;
  border-left: none;
  background: #fffae8;
}

.boxEntryBody .boxContactArea ul li {
  display: block;
  float: none !important;
}

.boxEntryBody .boxContactArea .btnSubmit {
  right: -5px;
  font-size: 0.75em;
}

.boxEntryBody .boxContactArea .btnLink.btnSubmit > * {
  padding: 5px 12px !important;
}

/* ---- アンケートにご協力ください ---- */

.boxEntryBody .boxQuestionArea {
  width: 100%;
  margin: 0 -15px 0 -15px;
  border: none;
}

.boxEntryBody .boxQuestionArea h3 {
  margin: 0 0 1em 0;
  width: 120%;
  border-radius: 0;
}

.boxEntryBody .boxQuestionArea .boxQuestionForm .boxInput {
  float: none;
  width: 110%;
}


.boxEntryBody .boxQuestionArea .boxQuestionForm .btnSubmit {
  position: inherit;
  float: none;
  width: 250px;
  margin: 0 auto;
  padding: 10px 45px;
}

/* ---- インフォ詳細 ---- */

.boxInfoDetail .boxInfoLeft,
.boxInfoDetail .imgRight {
  float: none;
  width: auto;
}

.boxInfoDetail .imgRight {
  margin: 0 0 20px;
}



/*  サイド 設定
-----------------------------------*/

#side {
  padding: 0;
}

.boxSide {
  margin: 0 0 15px;
  padding: 0 15px; 
}

.boxSide a {
  font-size: 1em;
}

.boxSide li {
  margin-bottom: 10px;
}


/*  メニューパターン01
-------------------------- */

.boxSideMenuPtn01 {
  margin-bottom: 10px;
  padding-top: 15px;
  font-size: 1em;
}

.boxSideMenuPtn01 li {
  max-width: 370px;
  margin-left: auto;
  margin-right: auto;
}

.boxSideMenuPtn01 img {
  height: 50px;
}

.boxSideMenuPtn01 .txtLink {
  width: 150px;
}

.boxSideMenuPtn01 .btnIcnLink a {
  padding-top: 8px;
  padding-bottom: 8px;
}

.boxSideMenuPtn01 .btnIcnLink img {
  width: auto;
  height: 30px;
}


/*  メニューパターン02
-------------------------- */

.boxAccList.boxSideMenuPtn02 {
  margin: 0 0 15px;
  padding: 0;
}

/* ---- アコーディオン・ヘッダー ---- */

.boxAccList.boxSideMenuPtn02 .a11yAccordionItemHeader {
  background-image: url(/share/imgs/main-content-side-bg-ptn02-sp.png);
  background-size: 100%;
  padding: 12px 15px;
}

.boxAccList.boxSideMenuPtn02 .a11yAccordionItemHeaderLinkShowLabel,
.boxAccList.boxSideMenuPtn02 .a11yAccordionItemHeaderLinkHideLabel {
  background-position: 96% center;
}

/* ---- アコーディオン・内容（非表示箇所） ---- */

.boxAccList.boxSideMenuPtn02 .a11yAccordionHideArea {
  width: auto;
}

/* -- サブメニュー -- */

.boxAccList.boxSideMenuPtn02 .a11yAccordionHideArea ul {
  padding: 0;
}

.boxAccList.boxSideMenuPtn02 .a11yAccordionHideArea li {
  border-top: 1px solid #a18f85;
}

.boxAccList.boxSideMenuPtn02 .a11yAccordionHideArea li:first-child {
  border-top: none;
}

.boxAccList.boxSideMenuPtn02 .a11yAccordionHideArea a {
  display: block;
  padding: 8px 40px 8px 15px;
}

.boxAccList.boxSideMenuPtn02 .a11yAccordionHideArea a::before {
  display: none;
}

.boxAccList.boxSideMenuPtn02 .a11yAccordionHideArea a::after {
  right: 15px;
  font-size: 1.2em;
}


/*  メニューパターン03
-------------------------- */

.boxSideMenuPtn03 {
  margin-bottom: 15px;
}

.boxSideMenuPtn03 ul {
  width: 100%;
  margin-left: -5px;
  text-align: center;
}

.boxSideMenuPtn03 li {
  float: none;
  display: inline-block;
  max-width: 185px;
  margin-left: -4px;  
  margin-bottom: 0;
  padding-left: 5px;
}

.boxSideMenuPtn03 img {
  width: 40px;
}

.boxSideMenuPtn03 .btnLink .imgLink,
.boxSideMenuPtn03 .btnLink .txtLink {
  width: auto;
}


/*  広告欄
-------------------------- */

.boxSideBnrArea {
  border-right: none;
  border-left: none;
}

.boxSide.boxSideBnrArea {
  padding: 10px;
}

.boxSideBnrArea dt,
.boxSideBnrArea dd {
  display: inline-block;
  vertical-align: top;
}

.boxSideBnrArea dt {
  display: inline-block;
  float: left;
  width: 100px;
  font-size: 1em;
}

.boxSideBnrArea dt a {
  display: block;
  float: none;
}

.boxSideBnrArea dd {
  display: block;
  margin-left: 100px;
}

.boxSideBnrArea dd ul {
  display: inline-block;
}


/*  ボタンリンク
-------------------------- */

.boxSideBtnLink ul {
  width: 100%;
  text-align: center;
}

.boxSideBtnLink li {
  float: none;
  display: inline-block;
  width: 50%;
  max-width: 150px;
  margin-left: -4px;  
  margin-bottom: 0;
  padding-left: 5px;
  vertical-align: top;
  
}

.boxSideBtnLink .btnLink > * {
  display: table-cell;
  width: 150px;
  height: 50px;
  padding: 5px 10px 5px 15px;
  text-align: left;
  vertical-align: middle;
}


/*  リンクリスト
-------------------------- */

.boxSideLinkList {
  border: none;
  margin: 0 0 2px;
  padding: 0;
}

.boxSideLinkList dt {
  padding: 10px;
  border-top-color: #91d4e3;
  border-top-width: 6px;
  border-bottom-color: #91d4e3;
  border-bottom-width: 3px;
  font-size: 1.05em;
  font-weight: bold;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.boxSideLinkList dd {
  margin-bottom: 0;
}

.boxSideLinkList .boxLineList .txtNum {
  top: 10px;
}


/*  バナーリスト
-------------------------- */

.boxSideBnrList {
  padding-top: 15px;
}

.boxSideBnrList li {
  text-align: center;
}

.boxSideBnrList a {
  display: inline;
}

.boxSideBnrList img {
  max-width: 230px !important;
}

/* ---- 職員採用 ---- */
/* 20160516 採用ページメニュー追加 ADD-START */

.boxRecruitTitle h1 {
	display: block;
	text-aling: center;
	padding: 10px 10px 5px;
	border-bottom: 10px solid #91d4e3;
	background: #c5e8f0;
	font-size: 1.55em;
	min-height: 0px;
	margin-bottom: 10px
}
.boxRecruitTitle img { display: none; }
.boxRecruitTitle div { top: auto; }
.boxRecruitTitle ul { padding: 0; }
.boxRecruitTitle ul li {
	width: 50%;
	line-height: 40px;
	margin: 0;
	padding: 0px;
}
.boxRecruitTitle ul li a {
	display: block;
	border-bottom: 1px solid #ccc;
	background: url(/share/imgs/m-recruit-home-navi-background-sp.png) repeat-x 0px 0px;
}
.boxRecruitTitle ul li.left a { border-right: 1px solid #ccc; }
.boxRecruitTitle ul li a img { display: none; }
.boxRecruitTitle ul li span { display: inilne; }
.boxRecruitNews .boxSectionHead a { display: none; }

/* 20160516 採用ページメニュー追加 ADD-END */

/*2020-12-18UPD*/
li.btnSubmit.btnLink.btnLightBlue {
    position: relative;
    margin-top: 10px;
}
/*2020-12-18UPD-END*/


}