@charset "UTF-8";



/**
 * --------------------------------------------------
 * 初期化
 * --------------------------------------------------
 */
/* ----------------------------------------
 * デフォルト
 * ---------------------------------------- */

/* 根本となる要素 -------------------- */
html { overflow-y:scroll; height:100%; }


/* セクション -------------------- */
body {
  height:100%; background:#fff; color:#000000; font-family:"M+ 2p Medium", "ヒラギノ角ゴ Pro W3", "Lucida Grande", "Hiragino Kaku Gothic Pro", "メイリオ", Verdana, "ＭＳ Ｐゴシック", sans-serif; font-size:14px; line-height:1.5;

  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

@media (max-width:767px) {
  body { word-wrap:break-word; }
}

h1 { margin:30px 0 15px; font-size:28px; line-height:1.28571; }
h2 { margin:30px 0 15px; font-size:24px; line-height:1.33333; }
h3 { margin:30px 0 15px; font-size:20px; line-height:1.35; }
h4 { margin:30px 0 15px; font-size:18px; line-height:1.38889; }
h5 { margin:30px 0 15px; font-size:16px; line-height:1.4375; }
h6 { margin:30px 0 15px; font-size:14px; line-height:1.5; }


/* コンテンツの分類 -------------------- */
p { margin:15px 0; }

hr { margin:15px 0; border-width:1px 0 0; border-style:solid; border-color:#d7d7d7; }

pre { margin:15px 0; font-family:"ヒラギノ角ゴ Pro W3", "Lucida Grande", "Hiragino Kaku Gothic Pro", "メイリオ", Verdana, "ＭＳ Ｐゴシック", sans-serif; }

blockquote { margin:15px 32px; }

ol { margin:15px 0; padding-left:32px; }

ul { margin:15px 0; padding-left:18px; }

dl { margin:15px 0; }

dd { margin-left:32px; }

figure { margin:0; }


/* テキストの意味 -------------------- */
a {
  color:#000000; text-decoration:underline; -webkit-tap-highlight-color:rgba(0, 75, 127, 0.25);

  -webkit-transition:background-color 150ms linear 0ms, color 150ms linear 0ms;
  -moz-transition:background-color 150ms linear 0ms, color 150ms linear 0ms;
  -ms-transition:background-color 150ms linear 0ms, color 150ms linear 0ms;
}

@media (min-width:768px) {
  a:hover,
  a:focus,
  a:active { color:#000000; }
}

em { font-style:normal; font-weight:bold; }

q:before { content:"「"; }
q:after { content:"」"; }

code,
samp,
kbd { font-family:"Source Code Pro", Menlo, monospace; }


/* コンテンツの埋め込み -------------------- */
img { max-width:100%; height:auto; vertical-align:bottom; }

@media (min-width:768px) {
  img { image-rendering:optimizeQuality; }
}

iframe { border:0; }

object { outline:none; }


/* テーブル -------------------- */
th,
td { border:1px solid #d7d7d7; }

tbody th { text-align:left; }


/* フォーム -------------------- */
fieldset { margin:0; border-color:#d7d7d7; }



/* ----------------------------------------
 * リセット
 * ---------------------------------------- */

/* セクション -------------------- */
.reset h1,
.reset h2,
.reset h3,
.reset h4,
.reset h5,
.reset h6 { margin:0; font-size:100%; line-height:inherit; }

.reset address { font-style:normal; }


/* コンテンツの分類 -------------------- */
.reset p,
.reset pre,
.reset blockquote { margin:0; }

.reset ol,
.reset ul { margin:0; padding:0; list-style:none; }

.reset dl,
.reset dd { margin:0; }


/* テキストの意味 -------------------- */
.reset cite { font-style:normal; }

.reset q:before,
.reset q:after { content:normal; }

.reset dfn,
.reset var { font-style:normal; }


/* フォーム -------------------- */
.reset fieldset { border:0; padding:0; }



/**
 * --------------------------------------------------
 * 基本
 * --------------------------------------------------
 */
*,
*:before,
*:after {
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  box-sizing:border-box;
}

@media (min-width:768px) {
  .container { position:relative; margin:0 auto; width:1000px; }
  .container:after { content:" "; display:table; clear:both; }

  .container .container { position:static; margin-left:0; margin-right:0; width:auto; }
  .container .container:after { content:normal; display:inline; clear:none; }
}



/**
 * --------------------------------------------------
 * グリッド
 * --------------------------------------------------
 */
.row {}
.row:after { content:" "; display:table; clear:both; }
.row > .col { float:left; }
.row > .col:first-child { margin-left:0; }

.col-6 { margin-left:20px; width:470px; }
.col-4 { margin-left:21px; width:306px; }
.col-3 { margin-left:20px; width:225px; }
.col-2 { margin-left:18px; width:145px; }
.col-1 { margin-left:24px; width:58px; }



/**
 * --------------------------------------------------
 * タイポグラフィー
 * --------------------------------------------------
 */
/* ----------------------------------------
 * 文字サイズ / 行送り（見本）
 * ---------------------------------------- */
/**
 * 8px / 15px => { font-size:8px; line-height:1.875; }
 * 9px / 16px => { font-size:9px; line-height:1.77778; }
 * 10px / 17px => { font-size:10px; line-height:1.7; }
 * 11px / 18px => { font-size:11px; line-height:1.63636; }
 * 12px / 19px => { font-size:12px; line-height:1.58333; }
 * 13px / 20px => { font-size:13px; line-height:1.53846; }
 * 14px / 21px => { font-size:14px; line-height:1.5; }
 * 15px / 22px => { font-size:15px; line-height:1.46667; }
 * 16px / 23px => { font-size:16px; line-height:1.4375; }
 * 18px / 25px => { font-size:18px; line-height:1.38889; }
 * 20px / 27px => { font-size:20px; line-height:1.35; }
 * 22px / 30px => { font-size:22px; line-height:1.36364; }
 * 24px / 32px => { font-size:24px; line-height:1.33333; }
 * 26px / 34px => { font-size:26px; line-height:1.30769; }
 * 28px / 36px => { font-size:28px; line-height:1.28571; }
 * 32px / 40px => { font-size:32px; line-height:1.25; }
 */



/* ----------------------------------------
 * 見出し
 * ---------------------------------------- */

.h-xxl { margin:75px 0 15px; font-size:28px; line-height:1.28571; }
.h-xl { margin:60px 0 15px; border-left:5px solid #a7a7a7; padding:5px 10px; background:#efefef; font-size:24px; line-height:1.33333; }
.h-lg { margin:60px 0 15px; border-bottom:1px solid #d7d7d7; padding:3px 10px; background:#efefef; font-size:20px; line-height:1.35; }
.h-md { margin:45px 0 15px; border-bottom:1px solid #d7d7d7; padding-bottom:3px; font-size:18px; line-height:1.38889; }
.h-sm { margin:30px 0 15px; border-left:5px solid #a7a7a7; padding-left:10px; font-size:16px; line-height:1.4375; }
.h-xs { margin:30px 0 15px; font-size:16px; line-height:1.4375; }

.h-xxl small { font-size:24px; }
.h-xl small { font-size:20px; }
.h-lg small { font-size:16px; }
.h-md small { font-size:14px; }
.h-sm small { font-size:12px; }
.h-xs small { font-size:12px; }

.h-xl + .h-lg,
.h-xl + .h-md,
.h-xl + .h-sm,
.h-xl + .h-xs,
.h-lg + .h-md,
.h-lg + .h-sm,
.h-lg + .h-xs,
.h-md + .h-sm,
.h-md + .h-xs,
.h-sm + .h-xs,
.h-adjacent { margin-top:20px; }

.h-first { margin-top:0; }



/* ----------------------------------------
 * 本文
 * ---------------------------------------- */

.text-xl { font-size:18px; line-height:1.38889; }
.text-lg { font-size:16px; line-height:1.4375; }
.text-md { font-size:14px; line-height:1.5; }
.text-sm { font-size:12px; line-height:1.58333; }
.text-xs { font-size:10px; line-height:1.7; }

.text-left { text-align:left; }
.text-center { text-align:center; }
.text-right { text-align:right; }
.text-justify { text-align:justify; }



/* ----------------------------------------
 * 注釈
 * ---------------------------------------- */

.notes {}
.notes-block {}



/* ----------------------------------------
 * リスト
 * ---------------------------------------- */

/* マーカー -------------------- */
/* ol */
ol.list-marker,
ol.list-marker ol { padding-left:28px; list-style:decimal; }

ol.list-marker-decimal,
ol.list-marker-decimal ol,
ol.list-marker ol.list-marker-decimal { list-style:decimal; }

ol.list-marker-lower-alpha,
ol.list-marker-lower-alpha ol,
ol.list-marker ol.list-marker-lower-alpha { list-style:lower-alpha; }

ol.list-marker-upper-alpha,
ol.list-marker-upper-alpha ol,
ol.list-marker ol.list-marker-upper-alpha { list-style:upper-alpha; }

ol.list-marker ol.list-marker-none,
ol.list-marker ol.list-marker-none ol { padding-left:0; list-style:none; }

/* ul */
ul.list-marker,
ul.list-marker ul { padding-left:12px; list-style:disc; }

ul.list-marker-disc,
ul.list-marker-disc ul,
ul.list-marker ul.list-marker-disc { list-style:disc; }

ul.list-marker-circle,
ul.list-marker-circle ul,
ul.list-marker ul.list-marker-circle { list-style:circle; }

ul.list-marker ul.list-marker-none,
ul.list-marker ul.list-marker-none ul { padding-left:0; list-style:none; }



/* ----------------------------------------
 * 改行
 * ---------------------------------------- */

@media (min-width:768px) {
  br.mobile { display:none; }
}
@media (max-width:767px) {
  br.desktop { display:none; }
}



/* ----------------------------------------
 * 擬似要素
 * ---------------------------------------- */

/*::-moz-selection {}*/
/*::selection {}*/



/**
 * --------------------------------------------------
 * テーブル
 * --------------------------------------------------
 */
.table { width:100%; }
.table > thead > tr > th,
.table > tbody > tr > th,
.table > tbody > tr > td { border-width:1px 0; border-style:solid; border-color:#d7d7d7; padding:10px 15px; }



/**
 * --------------------------------------------------
 * フォーム
 * --------------------------------------------------
 */
input,
button,
select,
textarea { color:#111; font-family:"ヒラギノ角ゴ Pro W3", "Lucida Grande", "Hiragino Kaku Gothic Pro", "メイリオ", Verdana, "ＭＳ Ｐゴシック", sans-serif; font-size:12px; line-height:19px; -webkit-tap-highlight-color:rgba(0, 75, 127, 0.25); }

input[type="text"],
input[type="search"],
input[type="tel"],
input[type="url"],
input[type="email"],
input[type="password"],
input[type="datetime"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime-local"],
input[type="number"],
input[type="color"],
input[type="submit"],
input[type="reset"],
input[type="button"],
button,
select,
textarea { -webkit-appearance:none; }

input[type="search"] {
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  box-sizing:border-box;
}

input[type="text"],
input[type="search"],
input[type="tel"],
input[type="url"],
input[type="email"],
input[type="password"],
input[type="datetime"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime-local"],
input[type="number"],
input[type="color"],
textarea {
  -webkit-box-shadow:0 0 3px 0 rgba(0, 0, 0, 0.05) inset;
  box-shadow:0 0 3px 0 rgba(0, 0, 0, 0.05) inset;
}
input[type="file"]::-ms-value { box-shadow:0 0 3px 0 rgba(0, 0, 0, 0.05) inset; }

input[type="text"],
input[type="search"],
input[type="tel"],
input[type="url"],
input[type="email"],
input[type="password"],
input[type="datetime"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime-local"],
input[type="number"],
input[type="color"],
select,
textarea,
.lt-ie9 input[type="file"] { border:1px solid #b7b7b7; }
input[type="file"]::-ms-value,
input[type="file"]::-ms-browse { border:1px solid #b7b7b7; }
input[type="submit"],
input[type="reset"],
input[type="button"],
button { border:0; }

input[type="text"],
input[type="search"],
input[type="tel"],
input[type="url"],
input[type="email"],
input[type="password"],
input[type="datetime"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime-local"],
input[type="number"],
input[type="color"],
input[type="submit"],
input[type="reset"],
input[type="button"],
button,
select,
textarea { border-radius:3px; }
input[type="file"]::-ms-value,
input[type="file"]::-ms-browse { border-radius:3px; }

input[type="text"],
input[type="search"],
input[type="tel"],
input[type="url"],
input[type="email"],
input[type="password"],
input[type="datetime"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime-local"],
input[type="number"],
textarea { padding:5px 8px; }
input[type="color"] { padding:4px; }
@media (-webkit-min-device-pixel-ratio:0) {
  input[type="color"] { padding:0 2px; }
}
input[type="file"]::-ms-value,
input[type="file"]::-ms-browse { padding:5px 8px; }
input[type="submit"],
input[type="reset"],
input[type="button"],
button { padding:5px 12px; }
.gte-ie10 input[type="range"] { padding:10px 0; }

input[type="text"],
input[type="search"],
input[type="tel"],
input[type="url"],
input[type="email"],
input[type="password"],
input[type="datetime"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime-local"],
input[type="number"],
input[type="color"] { height:31px; }
input[type="file"]::-ms-value,
input[type="file"]::-ms-browse { height:31px; }
input[type="submit"],
input[type="reset"],
input[type="button"],
button,
.lt-ie10 input[type="file"] { height:31px; }

input[type="text"],
input[type="search"],
input[type="tel"],
input[type="url"],
input[type="email"],
input[type="password"],
input[type="datetime"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime-local"],
input[type="number"],
input[type="color"],
select,
textarea { background:#fff; }
input[type="submit"],
input[type="reset"],
input[type="button"],
button { background:#e7e7e7; }
.gte-ie10 input[type="file"] { background:transparent; }
input[type="file"]::-ms-value,
input[type="file"]::-ms-browse { background:#f7f7f7; }

.lt-ie9 input[type="file"] { line-height:29px; }

input[type="range"],
input[type="color"],
input[type="image"],
.lt-ie9 select { vertical-align:middle; }
textarea { vertical-align:bottom; }
::-webkit-file-upload-button { vertical-align:bottom; }

input[type="submit"],
input[type="reset"],
input[type="button"],
button { cursor:default; }

select { padding:3px 8px; height:31px; word-wrap:normal; }
@media (-webkit-min-device-pixel-ratio:0) {
  select { padding-right:24px; background:#fff url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAOCAQAAADk1dY5AAAAcUlEQVR4AZXRsQ2AIBRF0WvCBLoElXOwjBRuwjIMYsEUTKAk2hoBfZ5f%2F9dciJwvF%2Flk2bvvBxZB6A4EJCO5%2BZ6ZEC3NAY%2FMkKr3hAGdqwYcP0Uhn5BTyKfkDFTEnEI%2BIacH3fDIuQEzBZnhrrACBR0XPfRxrq4qlmgAAAAASUVORK5CYII%3D) no-repeat right center; background-size:16px 7px; }
}

input[type="text"],
input[type="search"],
input[type="tel"],
input[type="url"],
input[type="email"],
input[type="password"],
input[type="datetime"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime-local"],
input[type="number"],
input[type="color"],
select,
textarea {
  -webkit-transition:border-color 150ms linear 0ms, -webkit-box-shadow 150ms linear 0ms, box-shadow 150ms linear 0ms;
  -moz-transition:border-color 150ms linear 0ms, box-shadow 150ms linear 0ms;
  -ms-transition:border-color 150ms linear 0ms, box-shadow 150ms linear 0ms;
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder { color:#a7a7a7; }
input::-moz-placeholder,
textarea::-moz-placeholder { opacity:1; color:#999; }
input:-ms-input-placeholder,
textarea:-ms-input-placeholder { color:#a7a7a7; }

input[type="text"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
input[type="datetime"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime-local"]:focus,
input[type="number"]:focus,
input[type="color"]:focus,
textarea:focus {
  outline:none; border-color:#77afdf;

  -webkit-box-shadow:0 0 5px 0 rgba(119, 175, 223, 0.25), 0 0 3px 0 rgba(0, 0, 0, 0.05) inset;
  box-shadow:0 0 5px 0 rgba(119, 175, 223, 0.25), 0 0 3px 0 rgba(0, 0, 0, 0.05) inset;
}
select:focus {
  outline:none; border-color:#77afdf;

  -webkit-box-shadow:0 0 5px 0 rgba(119, 175, 223, 0.25);
  box-shadow:0 0 5px 0 rgba(119, 175, 223, 0.25);
}

input[type="file"]:focus::-ms-value { background:#fff; }

.form-xxl { width:680px; }
.form-xl { width:500px; }
.form-lg { width:320px; }
.form-md { width:225px; }
.form-sm { width:165px; }
.form-xs { width:95px; }
.form-xxs { width:65px; }



/**
 * --------------------------------------------------
 * ボタン
 * --------------------------------------------------
 */
.btn {}

.btn-default {}
@media (min-width:768px) {
  .btn-default:hover,
  .btn-default:focus,
  .btn-default:active {}
}
.btn-default.active {}
.btn-default[disabled],
.btn-default.disabled,
.btn-default[disabled]:hover,
.btn-default.disabled:hover,
.btn-default[disabled]:focus,
.btn-default.disabled:focus,
.btn-default[disabled]:active,
.btn-default.disabled:active,
.btn-default[disabled].active,
.btn-default.disabled.active {}

.btn-primary {}
@media (min-width:768px) {
  .btn-primary:hover,
  .btn-primary:focus,
  .btn-primary:active {}
}
.btn-primary.active {}
.btn-primary[disabled],
.btn-primary.disabled,
.btn-primary[disabled]:hover,
.btn-primary.disabled:hover,
.btn-primary[disabled]:focus,
.btn-primary.disabled:focus,
.btn-primary[disabled]:active,
.btn-primary.disabled:active,
.btn-primary[disabled].active,
.btn-primary.disabled.active {}

.btn-success {}
@media (min-width:768px) {
  .btn-success:hover,
  .btn-success:focus,
  .btn-success:active {}
}
.btn-success.active {}
.btn-success[disabled],
.btn-success.disabled,
.btn-success[disabled]:hover,
.btn-success.disabled:hover,
.btn-success[disabled]:focus,
.btn-success.disabled:focus,
.btn-success[disabled]:active,
.btn-success.disabled:active,
.btn-success[disabled].active,
.btn-success.disabled.active {}

.btn-info {}
@media (min-width:768px) {
  .btn-info:hover,
  .btn-info:focus,
  .btn-info:active {}
}
.btn-info.active {}
.btn-info[disabled],
.btn-info.disabled,
.btn-info[disabled]:hover,
.btn-info.disabled:hover,
.btn-info[disabled]:focus,
.btn-info.disabled:focus,
.btn-info[disabled]:active,
.btn-info.disabled:active,
.btn-info[disabled].active,
.btn-info.disabled.active {}

.btn-warning {}
@media (min-width:768px) {
  .btn-warning:hover,
  .btn-warning:focus,
  .btn-warning:active {}
}
.btn-warning.active {}
.btn-warning[disabled],
.btn-warning.disabled,
.btn-warning[disabled]:hover,
.btn-warning.disabled:hover,
.btn-warning[disabled]:focus,
.btn-warning.disabled:focus,
.btn-warning[disabled]:active,
.btn-warning.disabled:active,
.btn-warning[disabled].active,
.btn-warning.disabled.active {}

.btn-danger {}
@media (min-width:768px) {
  .btn-danger:hover,
  .btn-danger:focus,
  .btn-danger:active {}
}
.btn-danger.active {}
.btn-danger[disabled],
.btn-danger.disabled,
.btn-danger[disabled]:hover,
.btn-danger.disabled:hover,
.btn-danger[disabled]:focus,
.btn-danger.disabled:focus,
.btn-danger[disabled]:active,
.btn-danger.disabled:active,
.btn-danger[disabled].active,
.btn-danger.disabled.active {}

.btn-inverse {}
@media (min-width:768px) {
  .btn-inverse:hover,
  .btn-inverse:focus,
  .btn-inverse:active {}
}
.btn-inverse.active {}
.btn-inverse[disabled],
.btn-inverse.disabled,
.btn-inverse[disabled]:hover,
.btn-inverse.disabled:hover,
.btn-inverse[disabled]:focus,
.btn-inverse.disabled:focus,
.btn-inverse[disabled]:active,
.btn-inverse.disabled:active,
.btn-inverse[disabled].active,
.btn-inverse.disabled.active {}

.btn-lg {}
.btn-sm {}

.btn-block {}
.btn-block-lg {}
.btn-block-md {}
.btn-block-sm {}



/**
 * --------------------------------------------------
 * ヘルパー
 * --------------------------------------------------
 */
.text-muted {}
.text-primary {}
.text-success {}
.text-info {}
.text-warning {}
.text-danger {}
.text-inverse {}

.bg-primary {}
.bg-success {}
.bg-info {}
.bg-warning {}
.bg-danger {}
.bg-inverse {}

.float-left { float:left; }
.float-right { float:right; }
.float-clear { clear:both; }
.clearfix:after { content:" "; display:table; clear:both; }

.align-top { vertical-align:top; }
.align-middle { vertical-align:middle; }
.align-bottom { vertical-align:bottom; }



















