@charset "utf-8";

@media screen and (max-width: 740px) {

/*  =============================================================

　　スマホ画面 共通モジュール設定

============================================================= */


/*  全体・コンテナー 設定
---------------------------------------------*/


/*  テキスト 設定
-------------------------- */

/* 明朝体 */
.txtMincho {
  font-size: 1.9em;
}


/*  コンテンツ　設定
---------------------------------------------*/

/*  セクション
-------------------------- */

.boxSection {
  padding-top: 40px;
  padding-bottom: 40px;
}

.boxSection:first-child,
.boxBreadcrumb + .boxSection {
  padding-top: 30px;
}

/*  セクション・記事詳細ページ
-------------------------- */

#content.detail .boxSection {
  padding-bottom: 0;
}

/* -------- セクション上部 -------- */

/* ---- セクションナビ ---- */
.boxSectionNav {
  overflow: hidden;
  text-align: center;
}

.boxSectionNav ul {
  width: 100%;
  border-top: 1px solid #ccc;
}

.boxSectionNav li {
  width: 100%;
  height: auto;
  margin: 0;
}

.boxSectionNav li a {
  position: relative;
  padding: 8px 4px;
  border: 1px solid #ccc;
  border-top: none;
  background: #fff;
}

.boxSectionNav li a:after {
  position: absolute;
  top: 50%;
  right: 14px;
  width: 10px;
  height: 19px;
  margin-top: -9px;
  content: " ";
  background: url(/common/img/img-link-arrow.png) no-repeat;
  background-size: 10px 19px;
}

.boxSectionNav li.active {
  padding: 8px 4px;
  background: #fff;
  border-bottom: 1px solid #ccc;
  color: #650b14;
  font-weight: bold;
}

.boxSectionNav li.active a:after {
  border: none;
}

.boxSectionNav li a:hover {
  opacity: 1;
} 

/* -- 日付 -- */

#content.detail .boxSectionHead .txtDate {
  margin-top: -20px;
  margin-bottom: 25px; 
  font-size: .95em; 
}

/* -------- セクション内部 -------- */

#content .boxSectionContent h3.title {
  margin-top: 40px;
}

#content .boxSectionContent h3.title img {
  height: 4.5vw;
  max-height: 20px;
}

#content .boxSectionContent h4.caption {
}

#content .boxSectionContent h4.caption img {
  max-height: 15vw;
}

#content.detail .boxSectionContent {
  width: auto;
  font-size: 1.1em;
}

#content.detail .boxSectionContent p {
  margin-bottom: 20px;
}

#content.detail .boxSectionContent img {
	display: block;
	max-width: 100%;
	height: auto;
}

#contentMain .boxSectionContent .boxIntro.indexIntro {
  margin: 0 -10px 30px;
}


/* ---- 画像設定 ---- */

/* -- 画像・左寄せ＆右寄せ -- */

.boxSectionContent .imgLeft,
.boxSectionContent .imgRight {
  max-width: 45%;
  height: auto;
  margin-bottom: 15px;
  padding: 0;
  text-align: center;
}


/*  ボタン
-------------------------- */

/* -- 汎用ボタン -- */

.btnLink {
}

.btnLink a {
  width: 100%;
  min-width: 0;
  padding: 18px;
  font-size: 1.1em;
}

/* -- 大ボタン -- */

.btnLinkLarge {
}

.btnLinkLarge a {
  width: 100%;
  min-width: 0;
  max-width: 300px;
  padding-right: 20px;
  padding-left: 20px;
}

/* 矢印付きボタン */
.btnLinkLarge.icnArw a {
  padding-right: 20px;
  padding-left: 20px;
}


/*  アイコン
-------------------------- */

/* -- 矢印アイコン -- */

.icnArw.icnMaru a:before {
  background-image: url(/common/img/content/icn-arw-maru-sp.png);
  background-size: 16px 16px;
}


/*  パンくず
-------------------------- */

.boxBreadcrumb {
  display: none;
}


/*  カテゴリータイトル
-------------------------- */

.boxCategoryTitle {
  min-width: 0;
  background-size: auto;
  background-position: center center;
  background-size: 150px;
}

.boxCategoryTitle .boxInner {
  padding: 40px 0;
}

.boxCategoryTitle h1 {
}


/*  タイトル
-------------------------- */

/* -- メインタイトル -- */

.ttlMain {
  margin-top: 0;
  margin-bottom: 25px;
  padding-bottom: 5px;
  font-size: 2.3em;
  line-height: 1.45em;
}

.ttlMain span {
  padding: 16px 0 0;
  border-top-width: 1px;
}

.ttlMain span:before {
  width: 160px;
}

.ttlMain img {
  height: 22px;
}

/* キャプション */
.ttlMain + .txtCap {
  margin-bottom: 25px;
  margin-top: -20px;
  font-size: .95em;
  line-height: 1.6em;
}


/*  汎用テーブル
-------------------------- */

.boxTable {
  line-height: 1.8em;
}

.boxTable,
.boxTable tbody,
.boxTable tr,
.boxTable th,
.boxTable td {
  display: block;
}

.boxTable th,
.boxTable td {
  padding-right: 12px;
  padding-left: 12px;
}

.boxTable th {
  width: auto;
  padding-top: 8px;
  padding-bottom: 8px;
}

.boxTable td {
  padding-top: 12px;
  padding-bottom: 12px;
}

.boxTable input[type="text"],
.boxTable input[type="email"],
.boxTable input[type="tel"],
.boxTable input[type="url"],
.boxTable input[type="password"] {
  width: 100%;
}

.boxTable .txtRequired {
  padding: 0 8px;
  line-height: 1.9em;
}

.boxTable > ul > li {
  padding: 14px 10px;
}

.boxTable > ul > li > dl > dt {
  width: 6em;
}

.boxTable > ul > li > dl > dd {
  margin-left: 6em;
}

.ttlTable {
  margin: 10px 0;
  font-size: 1.1em;
}


/*  テーブルリスト
-------------------------- */

.boxTableList {
  font-size: 1.1em;
}

.boxTableList .ttlTable {
  margin-bottom: 20px;
  font-size: 1.7em;
}

.boxTableList li {
  margin: 0;
  padding: 10px 0 !important;
  border-bottom: 1px dotted #ccc;
}

.boxTableList li:first-child {
  padding-top: 0 !important;
}

.boxTableList dt {
  float: none !important;
  margin-bottom: 2px;
  width: auto !important;
  font-weight: bold;
}

.boxTableList dd {
  padding-left: 0 !important;
}


/*  ページャー
-------------------------- */
      
.boxPager {
  padding-top: 40px;
  font-size: 1em;
}

.boxPager a,
.boxPager span {
  width: 36px;
  margin-left: 3px;
  margin-bottom: 3px;
  padding: 6px;
}


/*  ページナビ
-------------------------- */

.boxPageNav {
  margin: 0;
  padding-top: 20px;
  border-top: none;
  letter-spacing: -.40em;
}

.boxPageNav p {
}

.boxPageNav a {
  display: inline-block;
  *display: inline; /* IE7用 */
  *zoom: 1; /* IE7用 */
  transition: all .4s ease-in-out;
  border: 1px solid #000;
  margin-bottom: 12px;
  padding: 13px;
  text-align: center;
  text-decoration: none;
  letter-spacing: normal;
}

.boxPageNav a:hover {
  background-color: #000;
  color: #fff;
}

.boxPageNav .btnPrev,
.boxPageNav .btnNext {
  width: 48%\9; /* IE8用 */
  width: -webkit-calc(50% - 5px);
  width: calc(50% - 5px);
}

.boxPageNav .btnTop {
  width: 100%;
}


/*  カラムリスト
-------------------------- */

/* ---- 共通設定 ---- */

.boxColumnList {
}

.boxColumnList > ul {
  letter-spacing: -.40em;
}

.boxColumnList > ul > li {
  display: inline-block;
  *display: inline; /* IE7用 */
  *zoom: 1; /* IE7用 */
  letter-spacing: normal;
  vertical-align: top;
}

/* -- 画像 -- */

.boxColumnList .imgItem {
}

/* -- タイトル -- */

.boxColumnList .ttlItem {
  padding-top: 22px;
  text-align: center;
  line-height: 1.65em;
}

/* -- 内容 -- */

.boxColumnList .txtCont {
  padding-top: 15px;
}

/* ---- 2カラム設定 ---- */

.boxColumnList.columnTwo > ul {
  margin-top: -40px;
  margin-left: 0;
}

.boxColumnList.columnTwo > ul > li {
  width: 100%;
  padding: 40px 0 0;
}

.boxColumnList.columnTwo .txtCont {
  line-height: 2em;
}

/* ---- 3カラム設定 ---- */

.boxColumnList.columnThree > ul {
  margin-top: -25px;
  margin-left: 0;
}

.boxColumnList.columnThree > ul > li {
  width: 100%;
  padding: 25px 0 0;
}

.boxColumnList.columnThree .txtCont {
  line-height: 2em;
}

/* ---- 4カラム設定 ---- */

.boxColumnList.columnFour > ul {
  margin-top: -12px;
  margin-left: -12px;
}

.boxColumnList.columnFour > ul > li {
  width: 50%;
  padding: 12px 0 0 12px;
}

/* ---- 5カラム設定 ---- */

.boxColumnList.columnFive > ul {
  margin-top: -12px;
  margin-left: -12px;
}

.boxColumnList.columnFive > ul > li {
  width: 50%;
  padding: 12px 0 0 12px;
}

/* ---- 6カラム設定 ---- */

.boxColumnList.columnSix > ul {
  margin-top: -12px;
  margin-left: -12px;
}

.boxColumnList.columnSix > ul > li {
  width: 33.333%;
  padding: 12px 0 0 12px;
}


/*  メインビジュアル
-------------------------- */

.boxImgSlider {
  overflow: hidden;
}

.boxImgSlider .slider-pro {
  min-width: 0;
  min-height: 0;
}

/* ---- JSカスタム・SliderPro ---- */

/* -- スライダー矢印 -- */

.boxImgSlider .sp-arrows {
  display: none;
}

/* -- スライダーボタン -- */

.boxImgSlider .sp-buttons {
  padding-bottom: 4px;
}

.boxImgSlider .sp-button {
  width: 10px;
  height: 10px;
  margin: 3px;
  border-width: 2px;
}


/*  ニュース一覧
-------------------------- */

.boxSection .boxNewsList {
  margin-bottom: 0;
  line-height: 1.7em;
}

/* -- 画像 -- */

.boxSection .boxNewsList .imgItem {
}

.boxSection .boxNewsList .imgItem img {
  width: 100%;
  height: auto;
}

/* -- 日付 -- */

.boxSection .boxNewsList .txtDate {
  font-size: .95em;
}

/* -- ニュースタイトル -- */

.boxSection .boxNewsList .ttlItem {
  margin-bottom: 3px;
  font-size: 1.25em;
  text-align: left;
}

/* -- 内容 -- */

.boxSection .boxNewsList .txtCont {
  font-size: 1.1em;
  line-height: 1.8em;
}

/* ---- 一覧リンクボタン ---- */

.btnListLink {
  padding-top: 30px;
}

/* -- リンク -- */

.btnListLink a {
  display: block;
  min-width: 0;
  padding-top: 16px;
  padding-bottom: 16px;
  font-size: 1.1em;
}

/* -- ページャーがある場合 -- */

.boxPager + .btnListLink {
  padding-top: 40px;
}


/*  お問い合わせバナー
-------------------------- */

.boxContactBnr {
  display: block;
  margin-bottom: 50px;
  background: none;
}

.boxContactBnr p {
  display: block;
}

.boxContactBnr .txtBnr {
  width: auto;
  margin-bottom: 25px;
  padding: 0;
  font-size: 1.5em;
  line-height: 1.65em;
  letter-spacing: -.05em;
  text-align: center;
}

.boxContactBnr .txtBnr strong {
  font-size: 1.1em;
}

.boxContactBnr .imgBnr img {
  width: 100%;
}

.boxContactBnr .boxLinkBtn {
  display: block;
  margin-left: -10px;
  padding-top: 13px;
  padding-left: 0;
}

.boxContactBnr .boxLinkBtn li {
  width: 50%;
  padding-left: 10px;
}

.boxContactBnr .boxLinkBtn li img {
  width: 100%;
}


/*  フローリスト
-------------------------- */
      
.boxFlowList {
}

.boxFlowList > ul {
  margin: 0 !important;
}

.boxFlowList > ul > li {
  display: block;
  width: auto !important;
  padding: 20px 15px 20px 90px !important;
  border: none;
  border-bottom: 1px solid #ccc;
}

.boxFlowList > ul > li:first-child {
  border-top: 1px solid #ccc;
  border-left: none;
}

.boxFlowList > ul > li:before {
  top: -20px;
  left: 50%;
  width: 28px;
  margin-top: 0;
  margin-left: -14px;
  -webkit-transform: rotate(90deg);  
  -moz-transform: rotate(90deg);
  transform: rotate(90deg);
  background-size: 28px;
}

/* -- 画像 -- */

.boxFlowList .imgItem {
  position: absolute;
  top: 24px;
  left: 5px;
  width: 70px;
}

/* -- タイトル -- */

.boxFlowList .ttlItem {
  padding-top: 0;
  font-size: 1.5em;
  text-align: left;
}

/* -- 内容 -- */

.boxFlowList .txtCont {
  padding-top: 5px;
  font-size: 1.1em;
}


/*  アクセスマップ
-------------------------- */

.boxAccessMap {
}

.boxAccessMap .boxAccess,
.boxAccessMap .boxMap {
  float: none;
  width: auto;
  padding: 0;
}

.boxAccessMap .boxAccess {
  font-size: 1.1em;
  line-height: 1.8em;
}

.boxAccessMap .boxMap + .boxAccess {
  padding-top: 35px;
}

.boxAccessMap .boxMap iframe {
  height: 320px;
}

/*  ドット付きリスト
-------------------------- */

.boxDotList {
  margin-bottom: 30px;
  padding-top: 2px;
  font-size: 1.1em;
}

/*  モーダル
-------------------------- */


.mfp-container {
  padding: 0;
}

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
  max-width: 100%;
  padding: 55px 15px 20px;
}

.boxModal {
  max-width: 100%;
}

.boxModal .boxModalInner {
  padding: 35px 15px;
  font-size: .9em;
}

.boxModal .title {
  margin-bottom: 5px;
}

.boxModal .title img {
  height: 16px;
}

.boxModal .title + h4 {
  padding-top: 10px;
}

.boxModal h4 {
  margin-top: 30px;
  padding-top: 30px;
  font-size: 1.08em;
}

/* -- 閉じるボタン -- */

.mfp-close-btn-in .mfp-close {
  position: absolute;
  top: -40px;
  right: 0;
  width: 30px;
  height: 30px;
  background-size: 30px;
}


/*  アコーディオン・メニュー
-------------------------- */

.boxAcc {
}

/* -- アコーディオンボタン -- */

.boxAcc .boxAccHead {
  padding: 10px 40px 10px 55px;
}

/* ボタン */
.boxAcc .boxAccHead:before,
.boxAcc .boxAccHead:after {
  right: 10px;
  margin-top: -4px;
  border-top-width: 10px;
  border-right-width: 10px;
  border-bottom-width: 10px;
  border-left-width: 10px;
  content: "";
}

.boxAcc .boxAccHead:after {
  margin-top: -5px;
  border-top-color: #fff;
}

/* 閉じるボタン */
.boxAcc .boxAccHead.active:before {
  margin-top: -15px;
}

.boxAcc .boxAccHead.active:after {
  margin-top: -14px;
}

/*  WordPress設定
-------------------------- */

img.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1em;
}

img.alignright {
	display: block;
	float: none;
	margin: 0 0 1em 0;}

img.alignleft {
	display: block;
	float: none;
	margin: 0 0 1em 0;}

.alignright {float: none;}
.alignleft {float: none;}


/*  画像リスト
-------------------------- */

.boxThumbList {
  margin-bottom: -30px;
}

.boxThumbList li {
  padding-top: 10px;
  padding-bottom: 10px;
}

.boxThumbList li dt,
.boxThumbList li dd {
  display: block;
}

.boxThumbList li dt {
  float: left;
  clear: both;
  width: 20vw;
  margin-bottom: 2vw;
  padding-right: 3vw;
}

.boxThumbList li dt img {
}

.boxThumbList li dd {
  display: inline;
  width: auto !important;
  padding: 0 !important;
}

.boxThumbList li dd h3,
.boxThumbList li dd .txtCaption {
  padding-left: 20vw;
}

.boxThumbList li dd h3 {
  margin-bottom: 4vw;
  line-height: 0;
}

.boxThumbList li dd h3 img {
  height: 5.5vw;
  max-height: 29px;
}

#content .boxThumbList li dd .txtCaption img {
  max-height: 10vw;
  vertical-align: middle;
}

.boxThumbList li dd .txtCont {
  clear: both;
  overflow: hidden;
  margin-bottom: 5vw !important;
  font-size: 0.9em;
}

.boxThumbList li dd .imgCont {
  padding: 0 !important;
  text-align: center;
}

.boxThumbList li dd p.fltR {
  width: auto;
  margin-bottom: 0 !important;
  padding-left: 4vw;
  padding-bottom: 4vw;
}

#content .boxThumbList li dd p.fltR img {
  width: 18vw;
  min-width: 70px;
  max-width: 100px;
}

.boxThumbList li dd .fltR + .txtCont.mb00 {
  margin-bottom: 0 !important;
}

.boxThumbList li dd p.fltR + div.fltL {
  float: none !important;
  display: inline;
  width: auto;
}

.boxThumbList li dd p.fltR + div.fltL .txtCont,
.boxThumbList li dd .fltR + .txtCont {
  clear: left;
  overflow: visible;
}

.boxThumbList li dd .btn {
  margin-bottom: 0 !important;
  text-align: center;
}

.boxThumbList li dd .btn img {
  width: 50vw;
  max-width: 270px !important;
}

/* ---- ライン付き画像リスト ---- */

.boxThumbList.line li {
  padding-top: 20px;
  padding-bottom: 20px;
}

.boxThumbList.line li:first-child {
  padding-top: 0;
}

/* ---- 画像大ver ---- */

.boxThumbList.thumbLarge dt {
  width: 30vw;
}

.boxThumbList.thumbLarge dt span {
  display: table-cell;
  height: 25vw;
  vertical-align: middle;
  text-align: center;
}

.boxThumbList.thumbLarge dt span img {
 vertical-align: middle;
}

.boxThumbList.thumbLarge li dd h3,
.boxThumbList.thumbLarge li dd .txtCaption {
  padding-left: 30vw;
}

#content .boxThumbList.thumbLarge li dd .txtCaption img {
  max-height: 12vw;
}

#content .boxThumbList.thumbLarge li dd .txtCaption.capOne {
  margin-bottom: 8vw;
  padding-top: 5.2vw;
}

#content .boxThumbList.thumbLarge li dd .txtCaption.capOne img {
  max-height: 4.8vw;
}



}