/**
 * smp-layout.css
 */

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

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

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

/* CONTENT-BLOCK
--------------------------- */
.CB_ {
  position: relative;
  box-sizing: border-box;
  margin-bottom: 15px;
  width: 100%;
  overflow: hidden;
}

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

/* 見出しBOX
--------------------------- */
.SetBox_ .HeadingBox_ { margin-bottom: 5px; }
.HeadingBox_ { margin-bottom: 7px; }
.HeadingBox_ h1,.HeadingBox_ h2,.HeadingBox_ h3,
.HeadingBox_ h4,.HeadingBox_ h5,.HeadingBox_ h6 {
  margin: 0px; padding: 0px;
}

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

.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: 13px;
}

.TextBox_ img {
  margin: 5px;
  max-width: 40%;
  height: auto;
}

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

/* 画像サイズ */
.ImageBox_ img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

img.W50Smp_ { max-width: 50% !important; }
img.W25Smp_ { max-width: 25% !important; }

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

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

/* ボタンBOX
--------------------------- */
.SetBox_ .ButtonBox_ { margin-bottom: 5px; }
.ButtonBox_ { margin-bottom: 10px; }

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

/* 画像ボタン */
.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: 10px; }

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

.TableBox_ table.TblStyleSmp th,
.TableBox_ table.TblStyleSmp td {
  display: block;
  box-sizing: border-box;
  width: 100% !important;
}
.TableBox_ td.DispNoSmp,
.TableBox_ th.DispNoSmp {
  display: none !important;
}

/* GoogleMap BOX
--------------------------- */
.GMapBox_ {
  position: relative;
  margin-bottom: 15px;
  padding-bottom: 300px;
  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%;
}

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

/* ///// CONTAINER ///// */
.CT_ > :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; }
.BdrW5_  { border-width:  5px; }
.BdrW10_ { border-width: 10px; }

/* 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:  50px !important; }
.MgnB100_ { margin-bottom:  50px !important; }
.MgnB200_ { margin-bottom: 100px !important; }

/* Margin Side */
.MgnLR10_  { margin-left:  10px !important; margin-right:  10px !important;}
.MgnLR20_  { margin-left:  10px !important; margin-right:  10px !important;}
.MgnLR30_  { margin-left:  15px !important; margin-right:  15px !important;}
.MgnLR40_  { margin-left:  20px !important; margin-right:  20px !important;}
.MgnLR50_  { margin-left:  20px !important; margin-right:  20px !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: 10px !important; }
.Pdg20_ { padding: 10px !important; }
.Pdg30_ { padding: 15px !important; }
.Pdg50_ { padding: 20px !important; }
.Pdg15_20_ { padding: 10px !important; }
.Pdg20_30_ { padding: 15px !important; }
.Pdg30_40_ { padding: 20px !important; }

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

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

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

.fLeft_.SmpCenter_,
.fRight_.SmpCenter_ {
  float: none;
  display: block;
  margin: 0 auto 7px;
  max-width: 100% !important;
}

/* 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: 36px !important; }
.FS72_ { font-size: 36px !important; }

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

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

