/**
 * pc-layout.css
 */

/* //////////////////////////////////////////// */
/* ///// CONTAINER //////////////////////////// */
/* //////////////////////////////////////////// */
.ContentArea.CA_ { box-sizing: border-box; margin-bottom: 0px; }
.CT_ { box-sizing: border-box; margin-bottom: 15px; }

.ContentArea.CT_ { margin-bottom: 0px; }

/* //////////////////////////////////////////// */
/* ///// BLOCK LAYOUT////////////////////////// */
/* //////////////////////////////////////////// */

/* PAGE-BLOCK
--------------------------- */
.PB_ {
  position: relative;
  box-sizing: border-box;
  margin-bottom: 15px;
}
.PB_:after {
  clear: both;
  display: block;
  content: "";
}

/* CONTENT-BLOCK
--------------------------- */
.CB_ {
  box-sizing: border-box;
  overflow: hidden;
}

/* --- CB_の横幅を定義 --- */
.Col2_ .CB_.Mgn0_ { float: left; margin: 0; width: 50%; }
.Col3_ .CB_.Mgn0_ { float: left; margin: 0; width: 33.3333%; }
.Col4_ .CB_.Mgn0_ { float: left; margin: 0; width: 25%; }
.Col5_ .CB_.Mgn0_ { float: left; margin: 0; width: 20%; }

.Col2_ .CB_ { float: left; margin: 0 0 0 4%; width: 48%; }
.Col3_ .CB_ { float: left; margin: 0 0 0 2%; width: 32%; }
.Col4_ .CB_ { float: left; margin: 0 0 0 2%; width: 23.5%; }
.Col5_ .CB_ { float: left; margin: 0 0 0 2%; width: 18.4%; }

/* --- 開始CB_リセット --- */
.Col2_ .CB_:first-child,
.Col3_ .CB_:first-child,
.Col4_ .CB_:first-child,
.Col5_ .CB_:first-child {
  margin-left: 0;
}
.Col2_ .CB_:nth-child(2n+1),
.Col3_ .CB_:nth-child(3n+1),
.Col4_ .CB_:nth-child(4n+1),
.Col5_ .CB_:nth-child(5n+1) {
  margin-left: 0;
}
.Col2_ .CB_:nth-child(n+3),
.Col3_ .CB_:nth-child(n+4),
.Col4_ .CB_:nth-child(n+5),
.Col5_ .CB_:nth-child(n+6) {
  margin-top: 15px;
}

/* //////////////////////////////////////////// */
/* ///// BOX LAYOUT /////////////////////////// */
/* //////////////////////////////////////////// */

/* 見出しBOX
--------------------------- */
.SetBox_ .HeadingBox_ { margin-bottom: 10px; }
.HeadingBox_ { margin-bottom: 15px; box-sizing: border-box; }
.HeadingBox_ h1,.HeadingBox_ h2,.HeadingBox_ h3,
.HeadingBox_ h4,.HeadingBox_ h5,.HeadingBox_ h6 {
  margin: 0px; padding: 0px;
}

/* テキストBOX
--------------------------- */
.SetBox_ .TextBox_ { margin-bottom: 7px; }
.TextBox_ { margin-bottom: 15px; }

.TextBox_ p,
.TextBox_ ul,
.TextBox_ ol {
  margin: 0;
}

.TextBox_ p + p,
.TextBox_ p + ul,
.TextBox_ p + ol,
.TextBox_ ul + p,
.TextBox_ ul + ul,
.TextBox_ ul + ol,
.TextBox_ ol + p,
.TextBox_ ol + ul ,
.TextBox_ ol + ol {
  margin-top: 15px;
}

/* 画像テキスト回り込み */
img.fLeft_ { margin-right: 15px; margin-bottom: 5px; }
img.fRight_ { margin-left: 15px; margin-bottom: 5px; }

/* テキストの回り込み禁止 */
.NoFloat_,.NoFloatPc_ { overflow: hidden; }

/* 画像BOX
--------------------------- */
.SetBox_ .ImageBox_ { margin-bottom: 7px; }
.ImageBox_ { margin-bottom: 15px; line-height: 0; text-align: center; }

.ImageBox_ img { max-width: 100%; vertical-align: bottom; }

/* ボタンBOX
.ButtonBox_ { margin-bottom: 15px; padding-top: 1px;}
--------------------------- */
.SetBox_ .ButtonBox_ { margin-bottom: 7px; }
.ButtonBox_ { box-sizing: border-box; margin-bottom: 15px; }

/* CSSボタン */
.ButtonBox_ a {
  display: table;
  box-sizing: border-box;
  margin: 0 auto;
  padding: 10px 30px;
  width: 280px;
  max-width: 280px;
  text-align: center;
  text-decoration:none;
}
.Col3_ .ButtonBox_ a { width: 90%; }
.Col4_ .ButtonBox_ a { width: 100%; }
.Col5_ .ButtonBox_ a { width: 100%; }

/* 画像ボタン */
.ButtonBox_ a.ImgBtnY_,
.ButtonBox_ a.ImgBtnX_ {
  display: block;
  margin: 0 auto;
  padding: 0;
  background-position: top left;
  background-repeat: no-repeat;
  text-indent: -9999px
}
.ButtonBox_ a.ImgBtnY_:hover { background-position: bottom left; }
.ButtonBox_ a.ImgBtnX_:hover { background-position: top right; }

/* テーブルBOX
--------------------------- */
.TableBox_ { margin-bottom: 15px; }

.TableBox_ table { width: 100%; }
.TableBox_ th { padding: 10px; }
.TableBox_ td { padding: 10px; }

/* GoogleMap BOX
--------------------------- */
.GMapBox_ {
  position: relative;
  margin-bottom: 15px;
  padding-bottom: 500px;
  height: 0;
  overflow: hidden;
}

.GMapBox_ iframe,.GMapBox_ object,.GMapBox_ embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* VIDEO BOX
--------------------------- */
.VideoBox_ {
  position: relative;
  margin-bottom: 15px;
  padding-top: 30px;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}
.VideoBox_ iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* Source BOX
--------------------------- */
.SourceBox_ { margin-bottom: 15px; }

/* SET BOX
--------------------------- */
.SetBox_ {
  position: relative;
  box-sizing: border-box;
  margin-bottom: 15px;
  padding: 10px;
}
.SetBox_ > :last-child { margin-bottom: 0; }

/* ///// CONTAINER //////////////////////////// */
.CA_ > :last-child { margin-bottom: 0; }
.CT_ > :last-child { margin-bottom: 0; }
.ContentBody > :last-child { margin-bottom: 0; }

/* //////////////////////////////////////////// */
/* ///// BLOCK PROPERTY /////////////////////// */
/* //////////////////////////////////////////// */

/* ///// BORDER STYLE ///// */
.Bdr_,.BdrT_,.BdrB_,.BdrTB_,.BdrL_,.BdrR_,.BdrLR_ { border: 1px solid; }

/* 線の種類 */
.Dotted_ { border-style: dotted; }
.Dashed_ { border-style: dashed; }

/* 線の配置 */
.BdrT_  { border-left: none; border-right: none; border-bottom: none;  }
.BdrB_  { border-left: none; border-right: none; border-top: none; }
.BdrTB_ { border-left: none; border-right: none; }
.BdrL_  { border-top: none; border-bottom: none; border-right: none; }
.BdrR_  { border-top: none; border-bottom: none; border-left: none; }
.BdrLR_ { border-top: none; border-bottom: none; }

/* 線の太さ */
.BdrW2_  { border-width:  2px; }
.BdrW3_  { border-width:  3px; }
.BdrW4_  { border-width:  4px; }
.BdrW5_  { border-width:  5px; }
.BdrW10_ { border-width: 10px; }

/*
 MEMO:
 色はbox-style.cssで定義する
 -----------------------------
 .Bdr_,.BdrT_,.BdrB_,.BdrTB_,.BdrL_,.BdrR_,.BdrLR_ { border: 1px #ccc solid; }
 .Dotted_ { border-color: gray; border-style: dotted; }
 .Dashed_ { border-color: gray; border-style: dashed; }
*/

/* Margin Bottom */
.MgnB0_   { margin-bottom:   0px !important; }
.MgnB5_   { margin-bottom:   5px !important; }
.MgnB10_  { margin-bottom:  10px !important; }
.MgnB15_  { margin-bottom:  15px !important; }
.MgnB20_  { margin-bottom:  20px !important; }
.MgnB30_  { margin-bottom:  30px !important; }
.MgnB40_  { margin-bottom:  40px !important; }
.MgnB50_  { margin-bottom:  50px !important; }
.MgnB70_  { margin-bottom:  70px !important; }
.MgnB100_ { margin-bottom: 100px !important; }
.MgnB200_ { margin-bottom: 200px !important; }

/* Margin Side */
.MgnLR10_  { margin-left:  10px !important; margin-right:  10px !important;}
.MgnLR20_  { margin-left:  20px !important; margin-right:  20px !important;}
.MgnLR30_  { margin-left:  30px !important; margin-right:  30px !important;}
.MgnLR40_  { margin-left:  40px !important; margin-right:  40px !important;}
.MgnLR50_  { margin-left:  50px !important; margin-right:  50px !important;}

/* Padding Top */
.PdgT0_  { padding-top:  0px !important; }
.PdgT5_  { padding-top:  5px !important; }
.PdgT10_ { padding-top: 10px !important; }
.PdgT15_ { padding-top: 15px !important; }
.PdgT20_ { padding-top: 20px !important; }
.PdgT30_ { padding-top: 30px !important; }

/* Padding */
.Pdg0_  { padding:  0px !important; }
.Pdg10_ { padding: 10px !important; }
.Pdg15_ { padding: 15px !important; }
.Pdg20_ { padding: 20px !important; }
.Pdg30_ { padding: 30px !important; }
.Pdg50_ { padding: 50px !important; }
.Pdg15_20_ { padding: 15px 20px !important; }
.Pdg20_30_ { padding: 20px 30px !important; }
.Pdg30_40_ { padding: 30px 40px !important; }

/* 背景角丸 */
.Rdu_   { border-radius:10px; }
.Rdu10_ { border-radius:10px; }
.Rdu15_ { border-radius:15px; }

/* //////////////////////////////////////////// */
/* ///// BOX PROPERTY ///////////////////////// */
/* //////////////////////////////////////////// */
.aLeft_   { text-align: left !important; }
.aCenter_ { text-align: center !important; }
.aRight_  { text-align: right !important; }

.fLeft_   { float: left; }
.fRight_  { float: right; }

/* Font Size */
.FS8_  { font-size:  8px !important; }
.FS9_  { font-size:  9px !important; }
.FS10_ { font-size: 10px !important; }
.FS11_ { font-size: 11px !important; }
.FS12_ { font-size: 12px !important; }
.FS14_ { font-size: 14px !important; }
.FS16_ { font-size: 16px !important; }
.FS18_ { font-size: 18px !important; }
.FS20_ { font-size: 20px !important; }
.FS22_ { font-size: 22px !important; }
.FS24_ { font-size: 24px !important; }
.FS26_ { font-size: 26px !important; }
.FS28_ { font-size: 28px !important; }
.FS36_ { font-size: 36px !important; }
.FS48_ { font-size: 48px !important; }
.FS72_ { font-size: 72px !important; }

/* フォントスタイル */
.Bold_   { font-weight:  bold !important; }
.Italic_ { font-style: italic !important; }

/* Width */
.W100P_ { max-width: 100%; }

