@charset "UTF-8";
/*==================================================================*/
/*　　utilaa　　　　　　　　　　　　　　　　　　　　　　　　　　　　　*/
/*==================================================================*/
/*==================================================================*/
/*　　base　　　　　　　　　　　　　　　　　　　　　　　　　　　　　*/
/*==================================================================*/
/*------------------------------------------------------------------*/
/*　　ノーマライズ　　　　　　　　　　　　　　　　　　　　　　　　　*/
/*------------------------------------------------------------------*/
@import url("./ico/style.css");
audio, canvas, img, video { vertical-align: middle; }

fieldset { border: 0; margin: 0; padding: 0; }

textarea { resize: vertical; }

body, p, h1, h2, h3, h4, h5, form, img, ul, li, dl, dt, dd, div, form, a, table, tr, td, object, embed { padding: 0px; margin: 0px; border: none; /*word-wrap:break-word;*/ }

table { border-collapse: collapse; /*border-spacing:0px;*/ }

li { list-style-type: none; }

.u-cl:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }

.u-cl { display: inline-table; }

/* Hides from IE-mac \*/
* html .u-cl { height: 1%; }

.u-cl { display: block; }

/* End hide from IE-mac */
body { letter-spacing: -0.001em; -webkit-text-size-adjust: 100%; word-break: break-all; }

img { max-width: 100%; height: auto; }

a:hover img , a.is-current img { -moz-opacity: 0.9; opacity: 0.9; filter: alpha(opacity=90); }

a:hover { -moz-opacity: 0.5; opacity: 0.5; filter: alpha(opacity=50); }

a, a:focus { outline: none; text-decoration: none; }

address { font-style: normal; }

hr { border: none; height: 0px; border-top: 1px solid #eee; }

/*------------------------------------------------------------------*/
/*　　フレームワーク　　　　　　　　　　　　　　　　　　　　　　　　*/
/*------------------------------------------------------------------*/
/*tinyMCE管理：画像選択画面 */
.id-tinymce { margin: 10px; color: #666; }

/*フロントのbody部分*/
.js-tinymce_imgs .u-btn_area { position: fixed; display: block; top: 0; right: 0; width: 100px; height: 100px; }

.js-tinymce_imgs .c-oafile_ul { white-space: nowrap; margin-right: 100px; }

.js-tinymce_imgs .c-oafile_li { float: left; margin: 10px 0px 0 10px; padding: 0; width: 160px; height: 230px; background: #666; border: none; }

.js-tinymce_imgs .c-oafile_li-new { background: #999; }

.js-tinymce_imgs .c-oafile_li-new .js-oafile_img:before { content: "新規ファイル"; display: block; text-align: center; font-size: 8px; }

.js-tinymce_imgs .js-oafile_img { position: absolute; top: 51px; left: 5px; display: table; width: 150px; height: 150px; }

.js-tinymce_imgs .c-oafileimage { display: table-cell; text-align: center; vertical-align: middle; width: 100%; height: 100%; }

.js-tinymce_imgs .c-oafileimage img { max-height: 150px; max-width: 150px; }

.js-tinymce_imgs .c-oafile_filename { word-wrap: break-word; overflow-wrap: break-word; word-break: break-all; white-space: normal; text-align: left; position: absolute; top: 5px; left: 5px; display: block; width: 150px; line-height: 1.2em; font-size: 7px; color: #fff; }

.js-tinymce_imgs .c-oafile_file { position: absolute; top: 5px; left: 5px; display: block; width: 150px; height: 20px; line-height: 20px; text-align: center; font-size: 6px; border: 1px solid #999; background-color: #eee; }

.js-tinymce_imgs .c-oafile_file:before { content: "ファイルアップロード"; }

.js-tinymce_imgs .c-oafile_file input { opacity: 0; filter: progid:DXImageTransform.Microsoft.Alpha(opacity=0); position: absolute; right: 0; top: 0; margin: 0; font-size: 100px; cursor: pointer; width: 100%; ovarflow: hidden; }

.js-tinymce_imgs .js-oafile_btn_sort { position: absolute; top: 25px; left: 2px; display: block; }

.js-tinymce_imgs .js-oafile_btn_del { position: absolute; top: 25px; right: 3px; display: block; }

.js-tinymce_imgs .i_90 { -o-transform: rotate(-90deg); -ms-transform: rotate(-90deg); -webkit-transform: rotate(-90deg); -moz-transform: rotate(-90deg); transform: rotate(-90deg); }

.js-tinymce_imgs .i_270 { -o-transform: rotate(-90deg); -ms-transform: rotate(-90deg); -webkit-transform: rotate(-90deg); -moz-transform: rotate(-90deg); transform: rotate(-90deg); }

.js-oafile_btn_select, .js-oafile_btn_select_a { position: absolute; top: 200px; left: 7px; display: block; }

.js-oafile_btn_select_a { left: 10px; }

.js-tinymce_imgs .c-oafile_li-new .js-oafile_btn_select, .js-tinymce_imgs .c-oafile_li-new .js-oafile_btn_select_a { display: none; }

.mce-statusbar .mce-path-item, .mce-statusbar .mce-divider { float: left; }

.mce-statusbar .mce-path { padding: 3px; }

body#tinymce { padding: 10px; }

/*管理画面の編集のbodywidth:92%;*/
.body_tinymce { line-height: 2.3em; }

/*フロント側のtinymceを表示するdivに設定　主に標準のフォントサイズなどをして*/
/* レスポンシブ:画像読み込み中 */
.jsrp-img { background: url(/img/oa/loading.gif) center center no-repeat; }

/* レスポンシブ:スマホでPC切り替えボタン */
.u-footer_mode { padding: 20px; text-align: center; }

/* 画像トリミング */
.cimg-container { padding: 15px 0; text-align: center; }

.jcrop-holder { margin: 0 auto; }

/* デバッグ */
.c-oaprofiler_btn { position: fixed; bottom: 90px; right: 0px; -moz-opacity: 1; opacity: 1; filter: alpha(opacity=100); font-size: 11px; display: inline-block; padding: 5px; text-align: center; background: #121E45; color: #fff; }

.c-oaprofiler { position: fixed; text: 0; bottom: 0; right: 180px; left: 0; top: 0; font-size: 11px; display: none; word-break: break-all; background: #F2EEEC; padding: 20px 20px 100px 20px; margin-bottom: 10px; max-height: 97%; overflow: scroll; }

/*　画像回転　*/
.c-oafileimage { position: relative; display: block; }

.c-oafileimage_rotate90 { position: absolute; display: block; width: 15px; height: 15px; top: 0; left: 0; background-size: cover; background-image: url(/img/oa/rotate90.png); }

.c-oafileimage_rotate-90 { position: absolute; display: block; width: 15px; height: 15px; top: 0; left: 15px; background-size: cover; background-image: url(/img/oa/rotate-90.png); }

.c-oafileimage_trim { position: absolute; display: block; width: 15px; height: 15px; top: 0; left: 30px; background-size: cover; background-image: url(/img/oa/trim.png); }

.c-oafileimage_resize { position: absolute; display: block; width: 15px; height: 15px; top: 0; left: 45px; background-size: cover; background-image: url(/img/oa/resize.png); }

/*　ファイルのフォーム用　*/
.f-oafile_cap { width: 400px; }

.f-oafile_note { width: 400px; }

.c-oafile_li { border-bottom: 1px solid #E6E6E6; padding: 8px 0; margin: 0 0 5px 0; }

.c-oafile_li:last-child { border-bottom: none; }

.c-oafile_span { font-size: 10px; line-height: 1.2; }

.c-oafile_li { position: relative; }

.js-oafile_filedroparea { position: absolute; top: 0; left: 0; display: none; width: 100%; height: 100%; -moz-opacity: 0.9; opacity: 0.9; filter: alpha(opacity=90); background: #fff; border: 2px solid #76C7E9; color: #76C7E9; font-size: 10px; text-align: center; }

/*　ajax crudpart用　*/
#js-crudpart_li { border: 2px solid #666; }

#js-crudpart_row { border: 2px solid #333; }

/*　fullscreen　*/
.u-fullscreen, .u-fullscreen_a, .u-fullscreen_a:before { display: block; height: 40px; width: 40px; line-height: 40px; font-size: 20px; text-align: center; color: #fff; }

.u-fullscreen_a { -moz-opacity: 0.4; opacity: 0.4; filter: alpha(opacity=40); background: #000; }

.u-fullscreen_a:hover { -moz-opacity: 1; opacity: 1; filter: alpha(opacity=100); }

.u-fullscreen { position: fixed; bottom: 10px; right: 52px; }

/*　pagetop　*/
.u-pagetop, .u-pagetop_a, .u-pagetop_a:before { display: block; height: 40px; width: 40px; line-height: 40px; font-size: 20px; text-align: center; color: #fff; }

.u-pagetop_a { -moz-opacity: 0.4; opacity: 0.4; filter: alpha(opacity=40); background: #000; }

.u-pagetop_a:hover { -moz-opacity: 1; opacity: 1; filter: alpha(opacity=100); }

.u-pagetop { position: fixed; bottom: 10px; right: 10px; display: none; }

/*　ページャ　*/
.u-pager { clear: both; margin: 5px 0px; font-size: 9px; line-height: 23px; text-align: right; }

.u-pager select, .u-pager > span { height: 25px; }

.u-pager select, .u-pager a, .u-pager > span, .u-pager span span { display: inline-block; margin: 0px; padding: 0; }

.u-pager select, .u-pager a { padding: 0 7px; -o-border-radius: 3px; -ms-border-radius: 3px; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; }

.u-pager select, .u-pager > span { margin-left: 5px; }

.u-pager a:hover, .u-pager .is-current { color: #ffffff; background-color: #2e6ab1; border: 1px solid #2e6ab1; }

.u-pager a { color: #105cb6; background-color: #ffffff; border: 1px solid #9aafe5; text-decoration: none; }

@media only screen and (max-width: 767px) { .u-pager { margin-bottom: 10px; line-height: 40px; text-align: center; }
  .u-pager select, .u-pager a, .u-pager > span, .u-pager span span { margin-right: 3px; margin-bottom: 5px; padding-left: 10px; padding-right: 10px; } }
/*よくある質問/検索などのアコーディオン　u-q-tiny・・tinyバージョンはパディングが狭い */
.js-q { cursor: pointer; }

.js-a { display: none; }

.u-qa { border-bottom: 1px solid #ccc; }

.u-q-tiny, .u-a-tiny { padding: .5em .5em .5em .5em; }

.u-a-tiny { padding-left: 2.5em; }

.u-q, .u-a { padding: 1em 0 1em 4em; }

.u-q-tiny, .u-q { position: relative; border-top: 1px solid #ccc; }

.u-q:before { padding-top: .3em; position: absolute; left: .5em; top: 0; bottom: 0; display: block; font-size: 3rem; }

/* ページローディング*/
.c-loader { position: fixed; top: 50%; left: 50%; width: 15px; height: 15px; z-index: 100000; }

.c-loader_main, .c-loader_main::before, .c-loader_main::after { position: absolute; top: 50%; left: 50%; border: 1px solid #1c6ead; border-left-color: #0f85a3; -o-border-radius: 974px; -ms-border-radius: 974px; -webkit-border-radius: 974px; -moz-border-radius: 974px; border-radius: 974px; }

.c-loader_main { margin: -24px 0 0 -24px; height: 49px; width: 49px; -o-animation: cssload-rotate 700ms linear infinite; -ms-animation: cssload-rotate 700ms linear infinite; -webkit-animation: cssload-rotate 700ms linear infinite; -moz-animation: cssload-rotate 700ms linear infinite; animation: cssload-rotate 700ms linear infinite; }

.c-loader_main::before { content: ""; margin: -22px 0 0 -22px; height: 43px; width: 43px; -o-animation: cssload-rotate 700ms linear infinite; -ms-animation: cssload-rotate 700ms linear infinite; -webkit-animation: cssload-rotate 700ms linear infinite; -moz-animation: cssload-rotate 700ms linear infinite; animation: cssload-rotate 700ms linear infinite; }

.c-loader_main::after { content: ""; margin: -28px 0 0 -28px; height: 55px; width: 55px; -o-animation: cssload-rotate 1400ms linear infinite; -ms-animation: cssload-rotate 1400ms linear infinite; -webkit-animation: cssload-rotate 1400ms linear infinite; -moz-animation: cssload-rotate 1400ms linear infinite; animation: cssload-rotate 1400ms linear infinite; }

@keyframes cssload-rotate { 100% { transform: rotate(360deg); } }
@-o-keyframes cssload-rotate { 100% { -o-transform: rotate(360deg); } }
@-webkit-keyframes cssload-rotate { 100% { -webkit-transform: rotate(360deg); } }
@-moz-keyframes cssload-rotate { 100% { -moz-transform: rotate(360deg); } }
/*　パンくず　*/
.u-pan { line-height: 1.2em; }

.u-pan_li, .u-pan_a, .u-pan_h1 { display: inline; font-size: 11px; color: #666; text-decoration: none; font-weight: normal; }

.u-pan_li:first-child:before { content: ''; }

/*　スクロールで固定メニュー　*/
.is-fixed { position: fixed; top: 0px; z-index: 9999; }

/*------------------------------------------------------------------*/
/*　　テーマ：上書き要素　　　　　　　　　　　　　　　　　　　　　　*/
/*------------------------------------------------------------------*/
/*通常色*/
/*赤色*/
/*薄い色*/
/*濃い色*/
/*本文中リンクテキスト色*/
/*ページのタイトル※特にスマホ。PCはフルカスタマイズ*/
.u-required { margin-left: 5px; color: #fff; background: #DC487B; padding: 0 3px; font-size: .7em; height: 20px; line-height: 20px; -o-border-radius: 3px; -ms-border-radius: 3px; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; }

/*------------------------------------------------------------------*/
/*　　ユーティリティ：PC/スマホ完全共通　　　　　　　　　　　　　　*/
/*------------------------------------------------------------------*/
/*　文字　*/
body, body .u-color { color: #333; }

/*通常色*/
body .u-red { color: #F03; }

/*赤色*/
body .u-light { color: #727272; }

/*薄い色*/
body .u-dark { color: #151515; }

/*濃い色*/
body .u-atxt { color: #1580BC; text-decoration: underline; }

body .u-atxt:hover { text-decoration: none; font-weight: bold; -moz-opacity: 1; opacity: 1; filter: alpha(opacity=100); }

/*本文中リンクテキスト色*/
body .u-hideTxt { display: block; text-indent: 100%; white-space: nowrap; overflow: hidden; }

body .u-b { font-weight: bold; }

body .u-i { font-style: oblique; }

body .u-u { text-decoration: underline; }

body .u-through { text-decoration: line-through; }

body .u-note { display: block; }

body .u-lh1 { line-height: 1.1em; }

/*タイトルなど行間大きすぎるときに調整できる*/
/*枠用padding*/
body .u-p01em { padding: 0.1em; box-sizing: border-box; }

body .u-p02em { padding: 0.2em; box-sizing: border-box; }

body .u-p03em { padding: 0.3em; box-sizing: border-box; }

body .u-p04em { padding: 0.4em; box-sizing: border-box; }

body .u-p05em { padding: 0.5em; box-sizing: border-box; }

body .u-p06em { padding: 0.6em; box-sizing: border-box; }

body .u-p07em { padding: 0.7em; box-sizing: border-box; }

body .u-p08em { padding: 0.8em; box-sizing: border-box; }

body .u-p09em { padding: 0.9em; box-sizing: border-box; }

body .u-p1em { padding: 1em; box-sizing: border-box; }

body .u-p2em { padding: 2em; box-sizing: border-box; }

body .u-p3em { padding: 3em; box-sizing: border-box; }

body .u-p4em { padding: 4em; box-sizing: border-box; }

body .u-p5em { padding: 5em; box-sizing: border-box; }

body .u-p6em { padding: 6em; box-sizing: border-box; }

body .u-p7em { padding: 7em; box-sizing: border-box; }

body .u-p8em { padding: 8em; box-sizing: border-box; }

body .u-p9em { padding: 9em; box-sizing: border-box; }

body .u-p10em { padding: 10em; box-sizing: border-box; }

body .u-p11em { padding: 11em; box-sizing: border-box; }

body .u-p12em { padding: 12em; box-sizing: border-box; }

body .u-p13em { padding: 13em; box-sizing: border-box; }

/*　マーカー　*/
.u-marker_b { background: linear-gradient(transparent 0%, #ffff66 0%); }

.u-marker { background: linear-gradient(transparent 60%, #ffff66 60%); }

.u-marker-pink_b { background: linear-gradient(transparent 0%, #ff66ff 0%); }

.u-marker-pink { background: linear-gradient(transparent 60%, #ff66ff 60%); }

/*　文字　*/
@font-face { font-family: 'r'; src: url("fonts/r.eot"); src: url("fonts/r.eot?#iefix") format("embedded-opentype"), url("fonts/r.woff") format("woff"), url("fonts/r.ttf") format("truetype"); font-weight: normal; font-style: normal; }
body .u-ffr { font-family: 'r',"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; font-weight: normal; }

[class^="i_"], [class*=" i_"], body .u-ff, body { font-family: "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important; line-height: initial; }

/*icoフォントを使用するとき上書*/
[class^="i_"]:before, [class*=" i_"]:before { font-family: 'i' !important; }

.i_45:before { display: inline-block; -o-transform: rotate(45deg); -ms-transform: rotate(45deg); -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); transform: rotate(45deg); }

.i_90:before { display: inline-block; -o-transform: rotate(90deg); -ms-transform: rotate(90deg); -webkit-transform: rotate(90deg); -moz-transform: rotate(90deg); transform: rotate(90deg); }

.i_180:before { display: inline-block; -o-transform: rotate(180deg); -ms-transform: rotate(180deg); -webkit-transform: rotate(180deg); -moz-transform: rotate(180deg); transform: rotate(180deg); }

.i_270:before { display: inline-block; -o-transform: rotate(270deg); -ms-transform: rotate(270deg); -webkit-transform: rotate(270deg); -moz-transform: rotate(270deg); transform: rotate(270deg); }

/*　透明度　*/
.u-op90 { -moz-opacity: 0.9; opacity: 0.9; filter: alpha(opacity=90); }

/*　2行目以降字下げ　*/
.u-immunity li, body .u-indent1 { padding-left: 1em; text-indent: -1em; }

body .u-indent2 { padding-left: 2em; text-indent: -2em; }

body .u-indent3 { padding-left: 3em; text-indent: -3em; }

body .u-indent4 { padding-left: 4em; text-indent: -4em; }

body .u-indent5 { padding-left: 5em; text-indent: -5em; }

/*　リセット系　*/
body .u-nohover:hover { -moz-opacity: 1; opacity: 1; filter: alpha(opacity=100); }

/*画像をホバー時に透明にしない*/
/*　①や■１系　*/
.u-kaku, .u-kaku-l { white-space: nowrap; display: inline-block; background-color: #6fba2c; line-height: 1.4em; height: 1.3em; width: 1.3em; color: #fff; text-align: center; margin-right: 5px; text-shadow: none; }

.u-kaku-l { border: 1px solid #060; color: #060; background: none; }

.u-maru, .u-maru-l { white-space: nowrap; display: inline-block; background-color: #6fba2c; line-height: 1.4em; height: 1.3em; width: 1.3em; color: #fff; text-align: center; -o-border-radius: 50%; -ms-border-radius: 50%; -webkit-border-radius: 50%; -moz-border-radius: 50%; border-radius: 50%; margin-right: 5px; text-shadow: none; }

.u-maru-l { border: 1px solid #060; color: #060; background: none; }

/*　行頭に○を表示する　*/
.u-wa { position: relative; display: inline-block; padding-left: 25px; }

.u-wa:before { content: ""; position: absolute; width: 16px; height: 16px; top: 0px; left: 0px; border: 1px solid #666; -o-border-radius: 10px; -ms-border-radius: 10px; -webkit-border-radius: 10px; -moz-border-radius: 10px; border-radius: 10px; }

.u-wa.is-current:after, .u-wa-double:after { content: ""; position: absolute; width: 10px; height: 10px; top: 4px; left: 4px; background-color: #666; display: block; -o-border-radius: 10px; -ms-border-radius: 10px; -webkit-border-radius: 10px; -moz-border-radius: 10px; border-radius: 10px; }

/*画像装飾系*/
body .u-shadow { -o-box-shadow: 7px 10px 6px -6px #C9C9C9; -ms-box-shadow: 7px 10px 6px -6px #C9C9C9; -webkit-box-shadow: 7px 10px 6px -6px #C9C9C9; -moz-box-shadow: 7px 10px 6px -6px #C9C9C9; box-shadow: 7px 10px 6px -6px #C9C9C9; }

body .u-shadow-bottom { -o-box-shadow: 0 10px 6px -6px #C9C9C9; -ms-box-shadow: 0 10px 6px -6px #C9C9C9; -webkit-box-shadow: 0 10px 6px -6px #C9C9C9; -moz-box-shadow: 0 10px 6px -6px #C9C9C9; box-shadow: 0 10px 6px -6px #C9C9C9; }

body .u-shadow-all { -o-box-shadow: 0 0 6px #C9C9C9; -ms-box-shadow: 0 0 6px #C9C9C9; -webkit-box-shadow: 0 0 6px #C9C9C9; -moz-box-shadow: 0 0 6px #C9C9C9; box-shadow: 0 0 6px #C9C9C9; }

body .u-shadow-ribon { position: relative; display: inline-block; }

body .u-shadow-ribon:before, .u-shadow-ribon:after { left: 10px; -o-transform: rotate(-3deg); -ms-transform: rotate(-3deg); -webkit-transform: rotate(-3deg); -moz-transform: rotate(-3deg); transform: rotate(-3deg); max-width: 300px; position: absolute; top: 80%; background: none repeat scroll 0 0 #777777; bottom: 18px; -o-box-shadow: 0 15px 20px #777; -ms-box-shadow: 0 15px 20px #777; -webkit-box-shadow: 0 15px 20px #777; -moz-box-shadow: 0 15px 20px #777; box-shadow: 0 15px 20px #777; content: ""; width: 50%; z-index: -1; }

body .u-shadow-ribon:after { left: auto; right: 10px; -o-transform: rotate(3deg); -ms-transform: rotate(3deg); -webkit-transform: rotate(3deg); -moz-transform: rotate(3deg); transform: rotate(3deg); }

body .u-photo { -o-box-shadow: 2px 2px 8px #C9C9C9; -ms-box-shadow: 2px 2px 8px #C9C9C9; -webkit-box-shadow: 2px 2px 8px #C9C9C9; -moz-box-shadow: 2px 2px 8px #C9C9C9; box-shadow: 2px 2px 8px #C9C9C9; border: 7px solid #fff; }

.u-shadow-deep { display: inline-block; position: relative; }

.u-shadow-deep img { -o-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2), 0 0 20px rgba(0, 0, 0, 0.1) inset; -ms-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2), 0 0 20px rgba(0, 0, 0, 0.1) inset; -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2), 0 0 20px rgba(0, 0, 0, 0.1) inset; -moz-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2), 0 0 20px rgba(0, 0, 0, 0.1) inset; box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2), 0 0 20px rgba(0, 0, 0, 0.1) inset; }

.u-shadow-deep:before, .u-shadow-deep:after { -o-border-radius: 100px 100px 100px 100px/10px 10px 10px 10px; -ms-border-radius: 100px 100px 100px 100px/10px 10px 10px 10px; -webkit-border-radius: 100px 100px 100px 100px/10px 10px 10px 10px; -moz-border-radius: 100px 100px 100px 100px/10px 10px 10px 10px; border-radius: 100px 100px 100px 100px/10px 10px 10px 10px; bottom: 0; -o-box-shadow: 0 0 20px rgba(0, 0, 0, 0.3); -ms-box-shadow: 0 0 20px rgba(0, 0, 0, 0.3); -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.3); -moz-box-shadow: 0 0 20px rgba(0, 0, 0, 0.3); box-shadow: 0 0 20px rgba(0, 0, 0, 0.3); content: ""; left: 10px; position: absolute; right: 10px; top: 0; z-index: -1; }

.u-shadow-deep:after { left: auto; right: 10px; -o-transform: skew(8deg) rotate(3deg); -ms-transform: skew(8deg) rotate(3deg); -webkit-transform: skew(8deg) rotate(3deg); -moz-transform: skew(8deg) rotate(3deg); transform: skew(8deg) rotate(3deg); }

body .u-rmaru { -o-border-radius: 50%; -ms-border-radius: 50%; -webkit-border-radius: 50%; -moz-border-radius: 50%; border-radius: 50%; }

body .u-r10 { -o-border-radius: 10px; -ms-border-radius: 10px; -webkit-border-radius: 10px; -moz-border-radius: 10px; border-radius: 10px; }

body .u-r5 { -o-border-radius: 5px; -ms-border-radius: 5px; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; }

body .u-r4 { -o-border-radius: 4px; -ms-border-radius: 4px; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; }

body .u-r3 { -o-border-radius: 3px; -ms-border-radius: 3px; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; }

body .u-r2 { -o-border-radius: 2px; -ms-border-radius: 2px; -webkit-border-radius: 2px; -moz-border-radius: 2px; border-radius: 2px; }

body .u-bg { background: #F5F5F5; }

body .u-bb { border-bottom: 1px solid #CCC; }

/*------------------------------------------------------------------*/
/*　　ボタン系　　　　　　　　　　　　　　　　　　　　　　　　　　　*/
/*------------------------------------------------------------------*/
/*　ボタン　*/
.u-btn { padding: .5em 1em; margin: 0 0 2px 0; box-sizing: border-box; line-height: 1.2em; }

/*各々フォントサイズ、heightはレスポンシブ*/
body .u-btn_small { padding: .3em 0.5em; }

body .u-btn_large { padding: 1em 3em; }

.u-btn-icontext, .u-btn { display: inline-block; text-decoration: none; outline: none; position: relative; overflow: visible; white-space: nowrap; cursor: pointer; -webkit-background-clip: padding; -moz-background-clip: padding; -o-background-clip: padding-box; -o-border-radius: 0.2em; -ms-border-radius: 0.2em; -webkit-border-radius: 0.2em; -moz-border-radius: 0.2em; border-radius: 0.2em; zoom: 1; border: 1px solid #d4d4d4; color: #333; text-shadow: 1px 1px 0 #fff; background-color: #ececec; background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f4f4f4), to(#ececec)); background-image: -moz-linear-gradient(#f4f4f4, #ececec); background-image: -o-linear-gradient(#f4f4f4, #ececec); background-image: linear-gradient(#f4f4f4, #ececec); }

.u-btn-icontext:hover, .u-btn:hover { color: #fff; text-shadow: 1px 1px 0 #333; border: 1px solid #a0a0a0; background-color: #bababa; background-image: -webkit-gradient(linear, left top, left bottom, from(#bababa), to(#575757)); background-image: -webkit-linear-gradient(top, #bababa, #575757); background-image: -moz-linear-gradient(top, #bababa, #575757); background-image: -ms-linear-gradient(top, #bababa, #575757); background-image: -o-linear-gradient(top, #bababa, #575757); background-image: linear-gradient(to bottom, #bababa, #575757); filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr=#bababa, endColorstr=#575757); }

.u-btn::-moz-focus-inner { padding: 0; border: 0; }

/*.u-btn:before,.u-btn:after				{position:absolute;z-index:-1;display:block;content:'';}*/
/*ボタンエリア*/
div .u-btn_area { text-align: center; margin-top: 20px; margin-bottom: 20px; }

div .u-btn_area .u-btn { margin-right: 20px; }

/*　目立たせるボタン　btn_d:default目立たせるボタン（※class='u-btn u-btn_d'として使用する）*/
.u-btn_d { text-shadow: -1px -1px 0 rgba(0, 0, 0, 0.3); border: 1px solid #15aeec; color: #FFFFFF; background-color: #49c0f0; background-image: -webkit-gradient(linear, left top, left bottom, from(#49c0f0), to(#2CAFE3)); background-image: -webkit-linear-gradient(top, #49c0f0, #2CAFE3); background-image: -moz-linear-gradient(top, #49c0f0, #2CAFE3); background-image: -ms-linear-gradient(top, #49c0f0, #2CAFE3); background-image: -o-linear-gradient(top, #49c0f0, #2CAFE3); background-image: linear-gradient(to bottom, #49c0f0, #2CAFE3); filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr=#49c0f0, endColorstr=#2CAFE3); }

.u-btn_d:hover { text-decoration: none; text-shadow: -1px -1px 0 rgba(0, 0, 0, 0.3); border-color: #039ACD; border-bottom-color: #2a65a0; color: #fff; background-color: #3C8DDE; background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#41CAF8), to(#039ACD)); background-image: -moz-linear-gradient(#41CAF8, #039ACD); background-image: -o-linear-gradient(#41CAF8, #039ACD); background-image: linear-gradient(#41CAF8, #039ACD); }

body .u-btn-multi { display: table-cell; text-align: center; vertical-align: middle; line-height: 1.2em; }

/*　リンク　*/
.u-link { background: #e4e4e4; background-image: -moz-linear-gradient(top, #f8f8f8, #e4e4e4); /* FF3.6 */ background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #f8f8f8), color-stop(1, #e4e4e4)); /* Safari 4+, Chrome 2+ */ background-image: -webkit-linear-gradient(top, #f8f8f8, #e4e4e4); /* Safari 5.1+, Chrome 10+ */ background-image: -o-linear-gradient(top, #f8f8f8, #e4e4e4); /* Opera 11.1+ */ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f8f8f8', endColorstr='#e4e4e4'); /* IE6,IE7 */ -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#f8f8f8', endColorstr='#e4e4e4')"; /* IE8+ */ background-image: linear-gradient(to bottom, #f8f8f8, #e4e4e4); text-decoration: none; color: #555; -o-border-radius: 5px; -ms-border-radius: 5px; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; border-bottom: 3px solid #aaaaaa; display: inline-block; text-align: center; line-height: 1.2em; padding: 0.8em 3em; }

.u-link:hover { background: #f2f2f2; background-image: -moz-linear-gradient(top, #fcfcfc, #f2f2f2); background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #fcfcfc), color-stop(1, #f2f2f2)); /* Safari 4+, Chrome 2+ */ background-image: -webkit-linear-gradient(top, #fcfcfc, #f2f2f2); /* Safari 5.1+, Chrome 10+ */ background-image: -o-linear-gradient(top, #fcfcfc, #f2f2f2); /* Opera 11.1+ */ -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#fcfcfc', endColorstr='#f2f2f2')"; /* IE8+ */ background-image: linear-gradient(to bottom, #fcfcfc, #f2f2f2); }

/*------------------------------------------------------------------*/
/*　　ユーティリティ　　　　　　　　　　　　　　　　　　　　　　　　*/
/*------------------------------------------------------------------*/
/*アイコン付きテキスト*/
.u-btn-icontext, .u-li-icontext, .u-icontext { display: table; }

.u-btn-icontext_in, .u-li-icontext_in, .u-icontext_in { display: table-cell; padding: 1em 2em 1em 0.5em; position: relative; vertical-align: middle; }

.u-btn-icontext_in:before, .u-li-icontext_in:before, .u-icontext_in:before { position: absolute; top: 50%; right: 0.5em; margin-top: -0.5em; line-height: 1em; }

.is-icontextleft { padding: 1em 0.5em 1em 2em; }

.is-icontextleft:before { left: 0.5em; right: auto; }

.u-li-icontext.is-current { background: #FFF0CC; }

.u-li-icontext-ttl { background: #DFDFDF; padding: 0 5px; -moz-box-sizing: border-box; box-sizing: border-box; }

/*アイコン付きメニュー*/
.u-li-icontext { width: 100%; margin-bottom: -1px; border-top: 1px solid #ccc; border-bottom: 1px solid #ccc; }

.u-li-icontext_in { text-decoration: none; }

/*アイコン*/
.u-icon { display: inline-block; position: relative; color: #fff; background: #999; padding: 0 3px; font-size: .7em; height: 20px; line-height: 20px; -o-border-radius: 3px; -ms-border-radius: 3px; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; text-decoration: none; }

/*アイコンのモディファイやー吹き出しアイコン*/
.u-icon-l:before, .u-icon-r:before, .u-icon-t:before, .u-icon-b:before { content: ''; position: absolute; }

.u-icon-b:before { border-top: 5px solid #999; border-right: 5px solid transparent; border-left: 5px solid transparent; bottom: -5px; left: 10px; }

.u-icon-t:before { border-bottom: 5px solid #999; border-right: 5px solid transparent; border-left: 5px solid transparent; top: -5px; left: 10px; }

.u-icon-l:before { border-right: 5px solid #999; border-top: 5px solid transparent; border-bottom: 5px solid transparent; left: -5px; top: 5px; }

.u-icon-r:before { border-left: 5px solid #999; border-top: 5px solid transparent; border-bottom: 5px solid transparent; right: -5px; top: 5px; }

/*SNS*/
.u-sns li { float: left; padding-right: 5px; }

.u-sns .fb_iframe_widget > span { vertical-align: baseline !important; }

/*------------------------------------------------------------------*/
/*　　フォーム系　　　　　　　　　　　　　　　　　　　　　　　　　　*/
/*------------------------------------------------------------------*/
/*フォーム*/
select.u-fr { display: inline; }

textarea.u-fr, select.u-fr, input[type="password"].u-fr, input[type="text"].u-fr { padding: 4px 4px; vertical-align: middle; -o-border-radius: 2px; -ms-border-radius: 2px; -webkit-border-radius: 2px; -moz-border-radius: 2px; border-radius: 2px; border: 1px solid #999; box-sizing: border-box; }

select.u-fr, input[type="password"].u-fr, input[type="text"].u-fr { height: 30px; }

/*　エラー　*/
.u-error { color: #F00; }

.f-error input[type="password"].u-fr, .f-error input[type="text"].u-fr, .f-error textarea.u-fr, .f-error select.u-fr { border: 2px solid #F00; }

input[type="text"].u-fr.f-page { width: 33px; text-align: center; border: none; }

.f-100 { width: 100%; }

.f-90 { width: 90%; }

.f-80 { width: 80%; }

.f-70 { width: 70%; }

.f-60 { width: 60%; }

.f-ord { width: 50px; }

.f-id { width: 190px; }

.f-name { width: 300px; }

.f-full { width: 400px; }

.f-mail { width: 350px; }

.f-half { width: 150px; }

.f-date { width: 100px; }

.f-datetime { width: 150px; }

.f-biko { width: 350px; height: 100px; }

.f-bikol { width: 350px; height: 85px; }

.f-bikoll { width: 400px; height: 100px; }

.f-login { width: 200px; }

.f-address { width: 400px; }

.f-y, .f-m, .f-d { width: 40px; }

.f-count { width: 100px; text-align: right; }

/*------------------------------------------------------------------*/
/*　　定番　　　　　　　　　　　　　　　　　　　　　　　　　　　　　*/
/*------------------------------------------------------------------*/
/*タイトル回り*/
.u-h1 { margin-bottom: 30px; font-weight: bold; background: #f3f3f3; padding: 10px 20px; line-height: 1.1em; -o-border-radius: 4px; -ms-border-radius: 4px; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; }

.u-h2 { margin-bottom: 30px; border-top: 2px dotted #CCC; border-bottom: 2px dotted #CCC; padding: 10px 20px; line-height: 1.1em; font-weight: bold; }

.u-h3 { margin-bottom: 30px; border-left: 10px solid #CCC; padding: 0px 20px; line-height: 1.1em; font-weight: bold; }

.u-h1--nomb, .u-h2--nomb, .u-h3--nomb { margin-bottom: 0; }

/*　3本線がバツになるスマホ用メニュ　*/
.u-spmenubtn { display: block; position: relative; width: 40px; height: 40px; }

.u-spmenubtn_line:before, .u-spmenubtn_line:after, .u-spmenubtn_line { background: #2196F3; transition: .3s; height: 2px; width: 14px; display: block; top: 50%; position: absolute; }

.u-spmenubtn_line { left: 50%; margin: -1px 0 0 -7px; }

.u-spmenubtn_line:before, .u-spmenubtn_line:after { content: ""; left: 0; }

.u-spmenubtn_line:before { margin-top: -6px; }

.u-spmenubtn_line:after { margin-top: 4px; }

.u-spmenubtn_line.is-open { background: transparent; }

.u-spmenubtn_line.is-open:before, .u-spmenubtn_line.is-open:after { margin-top: 0; }

.u-spmenubtn_line.is-open:before { -o-transform: rotate(-45deg); -ms-transform: rotate(-45deg); -webkit-transform: rotate(-45deg); -moz-transform: rotate(-45deg); transform: rotate(-45deg); }

.u-spmenubtn_line.is-open:after { -o-transform: rotate(-135deg); -ms-transform: rotate(-135deg); -webkit-transform: rotate(-135deg); -moz-transform: rotate(-135deg); transform: rotate(-135deg); }

/*　下部固定メニュー　*/
.u-fixmenu, .u-fixmenu_li, .u-fixmenu_p, .u-fixmenu_a { height: 60px; }

.u-fixmenu { display: table; position: fixed; bottom: 0; left: 0; width: 100%; overflow: hidden; background-color: #fff; background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f4f4f4), to(#ececec)); background-image: -moz-linear-gradient(#f4f4f4, #ececec); background-image: -o-linear-gradient(#f4f4f4, #ececec); background-image: linear-gradient(#f4f4f4, #ececec); }

.u-fixmenu_li { display: table-cell; }

.u-fixmenu_p { display: table; width: 100%; border: 1px solid #d4d4d4; border-left: none; }

.u-fixmenu_li:last-child .u-fixmenu_p { border-right: none; }

.u-fixmenu_p:after { content: ''; }

.u-fixmenu_a:before { font-size: 1.8rem; }

.u-fixmenu_a { font-size: .7rem; display: table-cell; text-decoration: none; text-align: center; vertical-align: middle; outline: none; color: #333; text-shadow: 1px 1px 1px white; }

/*　ページの最下部のナビ　*/
.u-pagefootnav { clear: both; margin-top: 50px; margin-bottom: 50px; padding: 15px 30px; -o-border-radius: 4px; -ms-border-radius: 4px; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; }

/*↓ 色など上書 */
.u-pagefootnav { background: #F7F5F0; font-size: 1.3rem; }

@media only screen and (max-width: 767px) { .u-pagefootnav { font-size: 0.9rem; padding: 30px 5px; } }
/*  ブログの次へ前へリンク  */
.u-nextprev { line-height: 1em; }

.u-nextprev_l { float: left; margin-bottom: 15px; }

.u-nextprev_r { float: right; text-align: right; }

.u-nextprev_a { color: #666666; }

/*------------------------------------------------------------------*/
/*　　枠系　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　*/
/*------------------------------------------------------------------*/
/*　流れ　*/
.u-flow { display: block; position: relative; -o-border-radius: 3px; -ms-border-radius: 3px; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; }

.u-flow:before { bottom: -30px; right: 50%; content: ''; position: absolute; border-top: 20px solid #fff; border-right: 20px solid transparent; border-left: 20px solid transparent; }

/*　　　　　　　↓色など上書*/
.u-flow { border: 3px solid #CDD8ED; padding: 20px 30px; }

.u-flow:before { border-top-color: #CDD8ED; }

.u-flow { margin-bottom: 50px; }

.u-flow.is-last:before { display: none; }

/*　流れ　*/
.u-flowi { display: block; position: relative; margin-bottom: 50px; -o-border-radius: 3px; -ms-border-radius: 3px; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; }

.u-flowi:before { display: block; position: absolute; text-align: center; height: 50px; right: 0; left: 0; bottom: -50px; font-size: 40px; line-height: 1em; -o-transform: rotate(90deg); -ms-transform: rotate(90deg); -webkit-transform: rotate(90deg); -moz-transform: rotate(90deg); transform: rotate(90deg); }

/*　　　　　　　↓色など上書*/
.u-flowi { border: 3px solid #CDD8ED; padding: 20px 30px; }

.u-flowi:before { color: #CDD8ED; }

/*流れ（矢印のみu-liqと一緒に使うと良い）*/
.u-arrow { position: relative; display: inline-block; width: 50px; height: 55px; }

.u-arrow_in, .u-arrow:before, .u-arrow:after { position: absolute; top: 0; bottom: 0; left: 0; margin: 0; padding: 0; content: ""; vertical-align: middle; color: #fff; }

.u-arrow:before { width: 50px; height: 30px; background: #7a0; -o-border-radius: 4px 4px 0 0; -ms-border-radius: 4px 4px 0 0; -webkit-border-radius: 4px 4px 0 0; -moz-border-radius: 4px 4px 0 0; border-radius: 4px 4px 0 0; }

.u-arrow:after { left: 0px; top: 30px; box-sizing: border-box; width: 25px; height: 25px; border: 1px solid transparent; border-top: solid; border-top-color: #7a0; border-width: 25px; }

.u-arrow_in { display: block; text-align: center; width: 50px; top: 5px; font-size: 18px; line-height: 1.2em; }

.u-arrow-100 { height: 100px; }

.u-arrow-100:before { height: 75px; }

.u-arrow-100:after { top: 75px; }

.u-arrow-100 .u-arrow_in { top: 10px; }

/*オーバーライド高さ100px*/
.u-arrow-200 { height: 200px; }

.u-arrow-200:before { height: 175px; }

.u-arrow-200:after { top: 175px; }

.u-arrow-200 .u-arrow_in { top: 10px; }

/*オーバーライド高さ200px*/
.u-arrow-red:before { background: #AC1010; }

.u-arrow-red:after { border-top-color: #AC1010; }

/*オーバーライド:赤*/
.u-arrow-blue:before { background: #2353A7; }

.u-arrow-blue:after { border-top-color: #2353A7; }

/*オーバーライド:青*/
/*枠（線）*/
.u-waku { border: 1px solid #e1e1e1; }

.u-waku-shadow { border: 1px solid #e1e1e1; -o-box-shadow: 0 3px 0 rgba(8, 1, 2, 0.03); -ms-box-shadow: 0 3px 0 rgba(8, 1, 2, 0.03); -webkit-box-shadow: 0 3px 0 rgba(8, 1, 2, 0.03); -moz-box-shadow: 0 3px 0 rgba(8, 1, 2, 0.03); box-shadow: 0 3px 0 rgba(8, 1, 2, 0.03); }

.u-waku-maru { border: 3px solid #e1e1e1; -o-border-radius: 5px; -ms-border-radius: 5px; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; }

.u-waku_title { border-bottom: 1px dotted #CDD8ED; font-weight: bold; }

/*枠（背景色）*/
.u-wakubg , .u-wakubg-maru { background: #F9F9F9; -o-box-shadow: 0 3px 0 rgba(8, 1, 2, 0.03); -ms-box-shadow: 0 3px 0 rgba(8, 1, 2, 0.03); -webkit-box-shadow: 0 3px 0 rgba(8, 1, 2, 0.03); -moz-box-shadow: 0 3px 0 rgba(8, 1, 2, 0.03); box-shadow: 0 3px 0 rgba(8, 1, 2, 0.03); }

.u-wakubg-dark , .u-wakubg-darkmaru { background: #5f646c; -o-box-shadow: 0 3px 0 rgba(8, 1, 2, 0.03); -ms-box-shadow: 0 3px 0 rgba(8, 1, 2, 0.03); -webkit-box-shadow: 0 3px 0 rgba(8, 1, 2, 0.03); -moz-box-shadow: 0 3px 0 rgba(8, 1, 2, 0.03); box-shadow: 0 3px 0 rgba(8, 1, 2, 0.03); color: #fff; }

.u-wakubg-maru , .u-wakubg-darkmaru { -o-border-radius: 5px; -ms-border-radius: 5px; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; }

/*免責事項immunity*/
/*dl*/
.u-dl { margin-top: 13px; border: 1px solid #e1e1e1; -o-box-shadow: 0 3px 0 rgba(8, 1, 2, 0.03); -ms-box-shadow: 0 3px 0 rgba(8, 1, 2, 0.03); -webkit-box-shadow: 0 3px 0 rgba(8, 1, 2, 0.03); -moz-box-shadow: 0 3px 0 rgba(8, 1, 2, 0.03); box-shadow: 0 3px 0 rgba(8, 1, 2, 0.03); }

.u-dl { padding: 26px 20px 1px; padding-bottom: 0; }

.u-dt { display: inline-block; *display: inline; *zoom: 1; background: #fff; padding: 0 10px; font-weight: bold; position: relative; top: -40px; }

.u-dt { margin-bottom: 0; }

.u-dd { position: relative; top: -25px; padding-left: 10px; margin-bottom: 25px; margin: -26px -20px -20px -20px; }

.u-dd:last-of-type { margin-bottom: 0; }

.u-dd p:last-of-type { margin-bottom: 0; }

/*　テーブル：シンプルu-table_simple　プレーン(全く線無し)：u-table_pl系 u-table-yoko系　u-table-simple系　*/
.u-table { width: 100%; table-layout: fixed; word-wrap: break-word; }

.u-table th , .u-table td { text-align: left; font-weight: normal; box-sizing: border-box; vertical-align: top; }

.u-table-simple_th , .u-table-simple_td { border: 1px solid #CCC; padding: 0.2em 0.6em; }

.u-table-simple_th { background: #f0f0f0; }

.u-table-pl_th, .u-table-pl_td { padding: 0 1em 0 0; }

.u-table-yoko_td { padding-left: 1em; }

.u-table-yoko_th , .u-table-yoko_td { padding-top: 0.4em; padding-bottom: 0.4em; border-top: 1px solid #ccc; border-bottom: 1px solid #ccc; }

/*テーブルを使わずに：行頭をそろえる　<span class="u-tidy8">月〜金 </span>11:00〜16:00（ラストオーダー15:00<br><span>土・日・祝 </span>1*/
body .u-w1fx { display: inline-block; width: 1em; }

body .u-w2fx { display: inline-block; width: 2em; }

body .u-w3fx { display: inline-block; width: 3em; }

body .u-w4fx { display: inline-block; width: 4em; }

body .u-w5fx { display: inline-block; width: 5em; }

body .u-w6fx { display: inline-block; width: 6em; }

body .u-w7fx { display: inline-block; width: 7em; }

body .u-w8fx { display: inline-block; width: 8em; }

body .u-w9fx { display: inline-block; width: 9em; }

body .u-w10fx { display: inline-block; width: 10em; }

body .u-w11fx { display: inline-block; width: 11em; }

/*u-li*/
.u-li { position: relative; padding-left: 1em; }

.u-li:after { display: block; content: ''; position: absolute; top: .7em; left: .3em; width: .3em; height: .3em; background-color: #666; -o-border-radius: 100%; -ms-border-radius: 100%; -webkit-border-radius: 100%; -moz-border-radius: 100%; border-radius: 100%; }

/*------------------------------------------------------------------*/
/*　　位置/サイズ　　　　　　　　　　　　　　　　　　　　　　　　　*/
/*------------------------------------------------------------------*/
body .u-none { display: none; }

body .u-bk { display: block; }

body .u-inbk { display: inline-block; }

body .u-inline { display: inline; }

body .u-cb, body div .u-cb { clear: both; }

body .u-l, body div .u-l { float: left; }

body .u-c, body div .u-c { margin-left: auto; margin-right: auto; }

body .u-r, body div .u-r { float: right; }

body .u-alnl, body div .u-alnl { text-align: left; }

body .u-alnc, body div .u-alnc { text-align: center; }

body .u-alnr, body div .u-alnr { text-align: right; }

body .u-alnm, body div .u-alnm { display: table-cell; vertical-align: middle; }

body .u-nowrap, body div .u-nowrap { white-space: nowrap; }

body .u-w100, body .u-img100 { width: 100%; }

body .u-img100 { max-width: 100%; height: auto; }

body .u-w90, body .u-img90 { width: 90%; }

body .u-img90 { max-width: 100%; height: auto; }

body .u-w80, body .u-img80 { width: 80%; }

body .u-img80 { max-width: 100%; height: auto; }

body .u-w70, body .u-img70 { width: 70%; }

body .u-img70 { max-width: 100%; height: auto; }

body .u-w60, body .u-img60 { width: 60%; }

body .u-img60 { max-width: 100%; height: auto; }

body .u-w50, body .u-img50 { width: 50%; }

body .u-img50 { max-width: 100%; height: auto; }

body .u-w40, body .u-img40 { width: 40%; }

body .u-img40 { max-width: 100%; height: auto; }

body .u-w30, body .u-img30 { width: 30%; }

body .u-img30 { max-width: 100%; height: auto; }

body .u-w20, body .u-img20 { width: 20%; }

body .u-img20 { max-width: 100%; height: auto; }

body .u-w10, body .u-img10 { width: 10%; }

body .u-img10 { max-width: 100%; height: auto; }

body .u-m0 { margin: 0px; }

body .u-mb0 { margin-bottom: 0px; }

body .u-mt0 { margin-top: 0px; }

body .u-ml0 { margin-left: 0px; }

body .u-mr0 { margin-right: 0px; }

body .u-p0 { padding: 0px; }

body .u-pb0 { padding-bottom: 0px; }

body .u-pt0 { padding-top: 0px; }

body .u-pl0 { padding-left: 0px; }

body .u-pr0 { padding-right: 0px; }

body .u-m5 { margin: 5px; }

body .u-mb5 { margin-bottom: 5px; }

body .u-mt5 { margin-top: 5px; }

body .u-ml5 { margin-left: 5px; }

body .u-mr5 { margin-right: 5px; }

body .u-p5 { padding: 5px; }

body .u-pb5 { padding-bottom: 5px; }

body .u-pt5 { padding-top: 5px; }

body .u-pl5 { padding-left: 5px; }

body .u-pr5 { padding-right: 5px; }

body .u-m10 { margin: 10px; }

body .u-mb10 { margin-bottom: 10px; }

body .u-mt10 { margin-top: 10px; }

body .u-ml10 { margin-left: 10px; }

body .u-mr10 { margin-right: 10px; }

body .u-p10 { padding: 10px; }

body .u-pb10 { padding-bottom: 10px; }

body .u-pt10 { padding-top: 10px; }

body .u-pl10 { padding-left: 10px; }

body .u-pr10 { padding-right: 10px; }

/*テーブル用横幅*/
body .u-w1em { width: 1em; box-sizing: border-box; }

body .u-w2em { width: 2em; box-sizing: border-box; }

body .u-w3em { width: 3em; box-sizing: border-box; }

body .u-w4em { width: 4em; box-sizing: border-box; }

body .u-w5em { width: 5em; box-sizing: border-box; }

body .u-w6em { width: 6em; box-sizing: border-box; }

body .u-w7em { width: 7em; box-sizing: border-box; }

body .u-w8em { width: 8em; box-sizing: border-box; }

body .u-w9em { width: 9em; box-sizing: border-box; }

body .u-w10em { width: 10em; box-sizing: border-box; }

body .u-w11em { width: 11em; box-sizing: border-box; }

body .u-w12em { width: 12em; box-sizing: border-box; }

body .u-w13em { width: 13em; box-sizing: border-box; }

body .u-w14em { width: 14em; box-sizing: border-box; }

body .u-w15em { width: 15em; box-sizing: border-box; }

body .u-w16em { width: 16em; box-sizing: border-box; }

/*　 リキッドレイアウト用　左固定<div class="u-liq"><div class="u-liq_in"></div></div><div class="u-liq_aside"></div>　※数値はオーバーライドすること数値の差はガター　*/
.u-liq { margin-left: -275px; float: right; width: 100%; }

.u-liq_in { margin-left: 275px; }

.u-liq_aside { width: 225px; float: left; }

.u-liqr { margin-right: -275px; float: left; width: 100%; }

/*ここから右固定用*/
.u-liqr_in { margin-right: 275px; }

.u-liqr_aside { width: 225px; float: right; }

.u-liq-flow { margin-left: -75px; }

.u-liq-flow > .u-liq_in { margin-left: 75px; }

.u-liq-flow > .u-liq_aside { width: 50px; }

/*u-arrowのときのモディファイア*/
/*　 改行を挿入する　*/
.u-br:before { content: '\A'; white-space: pre; }

.u-br_after:after { content: '\A'; white-space: pre; }

/*　その他　*/
body .u-imgr { float: right; margin-left: 20px; margin-bottom: 20px; }

body .u-imgl { float: left; margin-right: 20px; margin-bottom: 20px; }

html { font-size: 62.5%; line-height: 1.8; }

/*------------------------------------------------------------------*/
/*　　PC　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　*/
/*------------------------------------------------------------------*/
@media only screen and (min-width: 768px) { /*  共通マージン*/
  .u-mb, .upc-mb { margin-bottom: 20px; }
  .u-pagetitle, .u-mb-title, .upc-mb-title { margin-bottom: 30px; }
  /*pageのフッターナビも共通*/
  .u-mt-title, .upc-mt-title { margin-top: 80px; }
  .u-p , .u-flow , .u-flowi , .u-dd , .u-waku , .u-wakubg , .u-wakubg-maru , .u-wakubg-darkmaru , .u-wakubg-dark , .u-waku-maru , .u-waku-shadow { padding: 1.5em 2em; }
  /*共通の枠内のパディング*/
  /*　文字サイズ　 1rem=10px */
  body, body.u-tx_m, body .u-tx_m, .u-btn { font-size: 1.8rem; }
  body.u-tx_xl, body .u-tx_xl { font-size: 3.5rem; }
  .u-pagetitle, body.u-tx_l, body .u-tx_l, body .u-btn_large, .u-h1, .u-h2, .u-h3 { font-size: 2.2rem; }
  .u-immunity, body .u-note, body.u-tx_s, body .u-tx_s, body .u-btn_small { font-size: 1.4rem; }
  body.u-tx_xs, body .u-tx_xs { font-size: 1rem; }
  .u-immunity, body .u-note, body .u-tx_xl, body.u-tx_xl, body .u-tx_l, body.u-tx_l, body .u-tx_s, body.u-tx_s, body .u-tx_xs, body.u-tx_xs { line-height: 1.2; }
  /*　PCの時のみ適用される */
  body .upc-none { display: none; }
  body .upc-bk { display: block; }
  body .upc-inbk { display: inline-block; }
  body .upc-inline { display: inline; }
  body .upc-cb, body div .upc-cb { clear: both; }
  body .upc-l, body div .upc-l { float: left; }
  body .upc-c, body div .upc-c { margin-left: auto; margin-right: auto; }
  body .upc-r, body div .upc-r { float: right; }
  body .upc-alnl, body div .upc-alnl { text-align: left; }
  body .upc-alnc, body div .upc-alnc { text-align: center; }
  body .upc-alnr, body div .upc-alnr { text-align: right; }
  body .upc-alnm, body div .upc-alnm { display: table-cell; vertical-align: middle; }
  body .upc-nowrap, body div .upc-nowrap { white-space: nowrap; }
  body .upc-w100, body .upc-img100 { width: 100%; }
  body .upc-img100 { max-width: 100%; height: auto; }
  body .upc-w90, body .upc-img90 { width: 90%; }
  body .upc-img90 { max-width: 100%; height: auto; }
  body .upc-w80, body .upc-img80 { width: 80%; }
  body .upc-img80 { max-width: 100%; height: auto; }
  body .upc-w70, body .upc-img70 { width: 70%; }
  body .upc-img70 { max-width: 100%; height: auto; }
  body .upc-w60, body .upc-img60 { width: 60%; }
  body .upc-img60 { max-width: 100%; height: auto; }
  body .upc-w50, body .upc-img50 { width: 50%; }
  body .upc-img50 { max-width: 100%; height: auto; }
  body .upc-w40, body .upc-img40 { width: 40%; }
  body .upc-img40 { max-width: 100%; height: auto; }
  body .upc-w30, body .upc-img30 { width: 30%; }
  body .upc-img30 { max-width: 100%; height: auto; }
  body .upc-w20, body .upc-img20 { width: 20%; }
  body .upc-img20 { max-width: 100%; height: auto; }
  body .upc-w10, body .upc-img10 { width: 10%; }
  body .upc-img10 { max-width: 100%; height: auto; }
  body .upc-m0 { margin: 0px; }
  body .upc-mb0 { margin-bottom: 0px; }
  body .upc-mt0 { margin-top: 0px; }
  body .upc-ml0 { margin-left: 0px; }
  body .upc-mr0 { margin-right: 0px; }
  body .upc-p0 { padding: 0px; }
  body .upc-pb0 { padding-bottom: 0px; }
  body .upc-pt0 { padding-top: 0px; }
  body .upc-pl0 { padding-left: 0px; }
  body .upc-pr0 { padding-right: 0px; }
  body .upc-m5 { margin: 5px; }
  body .upc-mb5 { margin-bottom: 5px; }
  body .upc-mt5 { margin-top: 5px; }
  body .upc-ml5 { margin-left: 5px; }
  body .upc-mr5 { margin-right: 5px; }
  body .upc-p5 { padding: 5px; }
  body .upc-pb5 { padding-bottom: 5px; }
  body .upc-pt5 { padding-top: 5px; }
  body .upc-pl5 { padding-left: 5px; }
  body .upc-pr5 { padding-right: 5px; }
  body .upc-m10 { margin: 10px; }
  body .upc-mb10 { margin-bottom: 10px; }
  body .upc-mt10 { margin-top: 10px; }
  body .upc-ml10 { margin-left: 10px; }
  body .upc-mr10 { margin-right: 10px; }
  body .upc-p10 { padding: 10px; }
  body .upc-pb10 { padding-bottom: 10px; }
  body .upc-pt10 { padding-top: 10px; }
  body .upc-pl10 { padding-left: 10px; }
  body .upc-pr10 { padding-right: 10px; }
  /*テーブル用横幅*/
  body .upc-w1em { width: 1em; box-sizing: border-box; }
  body .upc-w2em { width: 2em; box-sizing: border-box; }
  body .upc-w3em { width: 3em; box-sizing: border-box; }
  body .upc-w4em { width: 4em; box-sizing: border-box; }
  body .upc-w5em { width: 5em; box-sizing: border-box; }
  body .upc-w6em { width: 6em; box-sizing: border-box; }
  body .upc-w7em { width: 7em; box-sizing: border-box; }
  body .upc-w8em { width: 8em; box-sizing: border-box; }
  body .upc-w9em { width: 9em; box-sizing: border-box; }
  body .upc-w10em { width: 10em; box-sizing: border-box; }
  body .upc-w11em { width: 11em; box-sizing: border-box; }
  body .upc-w12em { width: 12em; box-sizing: border-box; }
  body .upc-w13em { width: 13em; box-sizing: border-box; }
  body .upc-w14em { width: 14em; box-sizing: border-box; }
  body .upc-w15em { width: 15em; box-sizing: border-box; }
  body .upc-w16em { width: 16em; box-sizing: border-box; }
  /*　 リキッドレイアウト用　*/
  .upc-liq { margin-left: -275px; float: right; width: 100%; }
  .upc-liq_in { margin-left: 275px; }
  .upc-liq_aside { width: 225px; float: left; }
  .upc-liqr { margin-right: -275px; float: left; width: 100%; }
  /*ここから右固定用*/
  .upc-liqr_in { margin-right: 275px; }
  .upc-liqr_aside { width: 225px; float: right; }
  /*　 改行を挿入する　*/
  .upc-br:before { content: '\A'; white-space: pre; }
  .upc-br_after:after { content: '\A'; white-space: pre; }
  /*table:入力*/
  .c-form_div { width: 100%; }
  .c-form_div { display: table; width: 100%; }
  .c-form_dl { display: table-row; margin: 0; width: 100%; border: 1px solid #060; }
  .c-form_dt, .c-form_dd { display: table-cell; padding: 5px 10px; border-top: 2px solid #fff; vertical-align: top; }
  .c-form_dt { width: 30%; background: #F0F3F4; text-align: right; white-space: nowrap; font-weight: normal; }
  .c-form_dd { width: 70%; }
  .c-form_ttl, .c-form_caption { text-align: left; padding: 5px 10px; }
  .c-form_ttl { background: #F0F3F4; } }
/*------------------------------------------------------------------*/
/*　　SP　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　*/
/*------------------------------------------------------------------*/
@media only screen and (max-width: 767px) { /*共通マージン*/
  .u-mb, .usp-mb { margin-bottom: 10px; }
  .u-pagetitle, .u-mb-title, .usp-mb-title { margin-bottom: 20px; }
  /*pageのフッターナビも共通*/
  .u-mt-title, .usp-mt-title { margin-top: 40px; }
  .c-main, .usp-in { margin-left: 10px; margin-right: 10px; }
  /*スマホ用の横マージン*/
  .u-pagetitle, .usp-in-n { margin-left: -10px; margin-right: -10px; }
  /*上記のネガティブマージン*/
  .u-p , .u-flow , .u-flowi , .u-dd , .u-waku , .u-wakubg , .u-wakubg-maru , .u-wakubg-darkmaru , .u-wakubg-dark , .u-waku-maru , .u-waku-shadow { padding: 0.7em 1em; }
  /*共通の枠内のパディング*/
  /*　文字サイズ　 */
  body, body.u-tx_m, body .u-tx_m { font-size: 1.6rem; }
  body.u-tx_xl, body .u-tx_xl, .u-q:before { font-size: 2.56rem; }
  .u-pagetitle, body.u-tx_l, body .u-tx_l, body .u-btn_large, .u-btn, .u-h1, .u-h2, .u-h3 { font-size: 2.08rem; }
  .u-immunity, body .u-note, body.u-tx_s, body .u-tx_s, body .u-btn_small { font-size: 1.28rem; }
  body.u-tx_xs, body .u-tx_xs { font-size: 0.96rem; }
  .u-immunity, body .u-note, body .u-tx_xl, body.u-tx_xl, body .u-tx_l, body.u-tx_l, body .u-tx_s, body.u-tx_s, body .u-tx_xs, body.u-tx_xs { line-height: 1.2; }
  /*　スマホの時のみ適用される */
  body .usp-none { display: none; }
  body .usp-bk { display: block; }
  body .usp-inbk { display: inline-block; }
  body .usp-inline { display: inline; }
  body .usp-cb, body div .usp-cb { clear: both; }
  body .usp-l, body div .usp-l { float: left; }
  body .usp-c, body div .usp-c { margin-left: auto; margin-right: auto; }
  body .usp-r, body div .usp-r { float: right; }
  body .usp-alnl, body div .usp-alnl { text-align: left; }
  body .usp-alnc, body div .usp-alnc { text-align: center; }
  body .usp-alnr, body div .usp-alnr { text-align: right; }
  body .usp-alnm, body div .usp-alnm { display: table-cell; vertical-align: middle; }
  body .usp-nowrap, body div .usp-nowrap { white-space: nowrap; }
  body .usp-w100, body .usp-img100 { width: 100%; }
  body .usp-img100 { max-width: 100%; height: auto; }
  body .usp-w90, body .usp-img90 { width: 90%; }
  body .usp-img90 { max-width: 100%; height: auto; }
  body .usp-w80, body .usp-img80 { width: 80%; }
  body .usp-img80 { max-width: 100%; height: auto; }
  body .usp-w70, body .usp-img70 { width: 70%; }
  body .usp-img70 { max-width: 100%; height: auto; }
  body .usp-w60, body .usp-img60 { width: 60%; }
  body .usp-img60 { max-width: 100%; height: auto; }
  body .usp-w50, body .usp-img50 { width: 50%; }
  body .usp-img50 { max-width: 100%; height: auto; }
  body .usp-w40, body .usp-img40 { width: 40%; }
  body .usp-img40 { max-width: 100%; height: auto; }
  body .usp-w30, body .usp-img30 { width: 30%; }
  body .usp-img30 { max-width: 100%; height: auto; }
  body .usp-w20, body .usp-img20 { width: 20%; }
  body .usp-img20 { max-width: 100%; height: auto; }
  body .usp-w10, body .usp-img10 { width: 10%; }
  body .usp-img10 { max-width: 100%; height: auto; }
  body .usp-m0 { margin: 0px; }
  body .usp-mb0 { margin-bottom: 0px; }
  body .usp-mt0 { margin-top: 0px; }
  body .usp-ml0 { margin-left: 0px; }
  body .usp-mr0 { margin-right: 0px; }
  body .usp-p0 { padding: 0px; }
  body .usp-pb0 { padding-bottom: 0px; }
  body .usp-pt0 { padding-top: 0px; }
  body .usp-pl0 { padding-left: 0px; }
  body .usp-pr0 { padding-right: 0px; }
  body .usp-m5 { margin: 5px; }
  body .usp-mb5 { margin-bottom: 5px; }
  body .usp-mt5 { margin-top: 5px; }
  body .usp-ml5 { margin-left: 5px; }
  body .usp-mr5 { margin-right: 5px; }
  body .usp-p5 { padding: 5px; }
  body .usp-pb5 { padding-bottom: 5px; }
  body .usp-pt5 { padding-top: 5px; }
  body .usp-pl5 { padding-left: 5px; }
  body .usp-pr5 { padding-right: 5px; }
  body .usp-m10 { margin: 10px; }
  body .usp-mb10 { margin-bottom: 10px; }
  body .usp-mt10 { margin-top: 10px; }
  body .usp-ml10 { margin-left: 10px; }
  body .usp-mr10 { margin-right: 10px; }
  body .usp-p10 { padding: 10px; }
  body .usp-pb10 { padding-bottom: 10px; }
  body .usp-pt10 { padding-top: 10px; }
  body .usp-pl10 { padding-left: 10px; }
  body .usp-pr10 { padding-right: 10px; }
  /*テーブル用横幅*/
  body .usp-w1em { width: 1em; box-sizing: border-box; }
  body .usp-w2em { width: 2em; box-sizing: border-box; }
  body .usp-w3em { width: 3em; box-sizing: border-box; }
  body .usp-w4em { width: 4em; box-sizing: border-box; }
  body .usp-w5em { width: 5em; box-sizing: border-box; }
  body .usp-w6em { width: 6em; box-sizing: border-box; }
  body .usp-w7em { width: 7em; box-sizing: border-box; }
  body .usp-w8em { width: 8em; box-sizing: border-box; }
  body .usp-w9em { width: 9em; box-sizing: border-box; }
  body .usp-w10em { width: 10em; box-sizing: border-box; }
  body .usp-w11em { width: 11em; box-sizing: border-box; }
  body .usp-w12em { width: 12em; box-sizing: border-box; }
  body .usp-w13em { width: 13em; box-sizing: border-box; }
  body .usp-w14em { width: 14em; box-sizing: border-box; }
  body .usp-w15em { width: 15em; box-sizing: border-box; }
  body .usp-w16em { width: 16em; box-sizing: border-box; }
  /*　 リキッドレイアウト用　*/
  .usp-liq { margin-left: -275px; float: right; width: 100%; }
  .usp-liq_in { margin-left: 275px; }
  .usp-liq_aside { width: 225px; float: left; }
  .usp-liqr { margin-right: -275px; float: left; width: 100%; }
  /*ここから右固定用*/
  .usp-liqr_in { margin-right: 275px; }
  .usp-liqr_aside { width: 225px; float: right; }
  /*　 改行を挿入する　*/
  .usp-br:before { content: '\A'; white-space: pre; }
  .usp-br_after:after { content: '\A'; white-space: pre; }
  /*table:入力*/
  .c-form_ttl, .c-form_dt, .c-form dl dt { background: #F0F3F4; font-weight: bold; }
  .c-form_dt, .c-form_dd, .c-form dl dt, .c-form dl dd { padding: 5px; }
  .c-form_ttl { display: inline-block; padding: 5px; width: 100%; box-sizing: border-box; }
  /*テーブル:データ.table_data_row_v		{display:block;text-align:left;} .table_data_sp ul		{border-top:5px solid #CCC;padding-top:5px;margin-top:5px;} .table_data_sp ul li{text-align:left;margin-bottom:3px;padding-left:3px;padding-right:3px;vertical-align:top;clear:both;} .table_data_row_k		{float:left;font-weight:bold;background:#eee;padding-left:5px;padding-right:5px;margin-right:10px;} .table_data_sp ul li.table_data_td_btn	{display:inline-block;margin-right:10px;}*/
  /*f系*/
  input[type="text"].f-mail, input[type="text"].f-full, input[type="text"].f-half, textarea.f-html, textarea.f-bikou, input[type="text"].f-address { width: 95%; }
  textarea.f-html, textarea.f-bikou { margin: 0; padding-left: 0; padding-right: 0; box-sizing: border-box; }
  textarea.u-fr, select.u-fr, input[type="password"].u-fr, input[type="text"].u-fr { padding: 8px; }
  /*タップしやすいように*/
  select.u-fr, input[type="password"].u-fr, input[type="text"].u-fr { height: 38px; }
  /*ページタイトル*/
  .u-pagetitle { padding: 5px 10px; background: #C8C8C8; font-weight: bold; }
  /*------------------------------------------------------------------*/
  /*　　SPのみ　　　　　　　　　　　　　　　　　　　　　　　　　　　　*/
  /*------------------------------------------------------------------*/
  /*menu*/
  .usp-menu { padding: 20px 10px; top: 0; left: 0; width: 100%; position: absolute; box-sizing: border-box; z-index: 9000; }
  body .usp-menuclose { float: right; width: 60px; height: 60px; line-height: 60px; text-align: center; background: #ECECEC; }
  .usp-menu_ul { border-bottom: 1px solid #BBBBBB; width: 100%; clear: both; }
  .usp-menu_li { border: 1px solid #BBBBBB; border-bottom: none; background: #005778; clear: both; position: static; }
  .usp-menu_a , .usp-menu_i { color: #fff; padding: 15px 10px; box-sizing: border-box; display: block; z-index: 1; position: relative; }
  .usp-menu_i { border-left: 1px solid #BBBBBB; float: right; width: 55px; text-align: right; z-index: 1000; }
  .usp-menu_li-3 { background: #FFFFFF; }
  /*                    オーバーライド:テーマ*/
  .usp-menuclose , .usp-menu_li-2 , .usp-menu_li-2 a , .usp-menu_li-3 , .usp-menu_li-3 a , .sp-h1 { color: #005778; }
  .usp-menu { background: #457C95; }
  .usp-menu_li-2 { background: #D5DFE8; }
  .usp-menu_is-current , .usp-menu_li.is-current , .usp-menu_li-2.is-current , .usp-menu_li-3.is-current { -o-box-shadow: 0px 0px 2px 2px #DE507B inset; -ms-box-shadow: 0px 0px 2px 2px #DE507B inset; -webkit-box-shadow: 0px 0px 2px 2px #DE507B inset; -moz-box-shadow: 0px 0px 2px 2px #DE507B inset; box-shadow: 0px 0px 2px 2px #DE507B inset; box-sizing: border-box; } }
/*==================================================================*/
/*　　grid　　　　　　　　　　　　　　　　　　　　　　　　　　　　　*/
/*==================================================================*/
.g { display: block; margin-left: 0; margin-right: 0; }

.g > [class*='g-c'] { float: left; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }

/*ガター*/
.g-g { margin-left: -10px; }

.g-g > [class*='g-c'] { padding-left: 10px; }

/*共通*/
.g-g20 { margin-left: -20px; }

.g-g20 > [class*='g-c'] { padding-left: 20px; }

/*ガター25px*/
.g-g30 { margin-left: -30px; }

.g-g30 > [class*='g-c'] { padding-left: 30px; }

/*ガター25px*/
.g-g40 { margin-left: -40px; }

.g-g40 > [class*='g-c'] { padding-left: 40px; }

/*ガター25px*/
.g-g50 { margin-left: -50px; }

.g-g50 > [class*='g-c'] { padding-left: 50px; }

/*ガター25px*/
.g-c1_24 { width: 4.1667%; *width: 4.1357%; }

.g-c1_12, .g-c2_24 { width: 8.3333%; *width: 8.3023%; }

.g-c1_8, .g-c3_24 { width: 12.5%; *width: 12.469%; }

.g-c1_6, .g-c4_24 { width: 16.6667%; *width: 16.6357%; }

.g-c1_5 { width: 20%; *width: 19.969%; }

.g-c5_24 { width: 20.8333%; *width: 20.8023%; }

.g-c1_4, .g-c6_24 { width: 25%; *width: 24.969%; }

.g-c7_24 { width: 29.1667%; *width: 29.1357%; }

.g-c1_3, .g-c8_24 { width: 33.3333%; *width: 33.3023%; }

.g-c3_8, .g-c9_24 { width: 37.5%; *width: 37.469%; }

.g-c2_5 { width: 40%; *width: 39.969%; }

.g-c5_12, .g-c10_24 { width: 41.6667%; *width: 41.6357%; }

.g-c11_24 { width: 45.8333%; *width: 45.8023%; }

.g-c1_2, .g-c12_24 { width: 50%; *width: 49.969%; }

.g-c13_24 { width: 54.1667%; *width: 54.1357%; }

.g-c7_12, .g-c14_24 { width: 58.3333%; *width: 58.3023%; }

.g-c3_5 { width: 60%; *width: 59.969%; }

.g-c5_8, .g-c15_24 { width: 62.5%; *width: 62.469%; }

.g-c2_3, .g-c16_24 { width: 66.6667%; *width: 66.6357%; }

.g-c17_24 { width: 70.8333%; *width: 70.8023%; }

.g-c3_4, .g-c18_24 { width: 75%; *width: 74.969%; }

.g-c19_24 { width: 79.1667%; *width: 79.1357%; }

.g-c4_5 { width: 80%; *width: 79.969%; }

.g-c5_6, .g-c20_24 { width: 83.3333%; *width: 83.3023%; }

.g-c7_8, .g-c21_24 { width: 87.5%; *width: 87.469%; }

.g-c11_12, .g-c22_24 { width: 91.6667%; *width: 91.6357%; }

.g-c23_24 { width: 95.8333%; *width: 95.8023%; }

.g-c1, .g-c1_1, .g-c5_5, .g-c24_24 { width: 100%; }

/*行ごとにdivでくくらないとき必須*/
.g-1n > [class*='g-c'], .g-2n > [class*='g-c']:nth-child(2n+1), .g-3n > [class*='g-c']:nth-child(3n+1), .g-4n > [class*='g-c']:nth-child(4n+1), .g-5n > [class*='g-c']:nth-child(5n+1), .g-6n > [class*='g-c']:nth-child(6n+1), .g-7n > [class*='g-c']:nth-child(7n+1), .g-8n > [class*='g-c']:nth-child(8n+1), .g-9n > [class*='g-c']:nth-child(9n+1), .g-10n > [class*='g-c']:nth-child(10n+1), .g-11n > [class*='g-c']:nth-child(11n+1), .g-12n > [class*='g-c']:nth-child(12n+1), .g-13n > [class*='g-c']:nth-child(13n+1), .g-14n > [class*='g-c']:nth-child(14n+1), .g-15n > [class*='g-c']:nth-child(15n+1), .g-16n > [class*='g-c']:nth-child(16n+1), .g-17n > [class*='g-c']:nth-child(17n+1), .g-18n > [class*='g-c']:nth-child(18n+1), .g-19n > [class*='g-c']:nth-child(19n+1), .g-20n > [class*='g-c']:nth-child(20n+1), .g-21n > [class*='g-c']:nth-child(21n+1), .g-22n > [class*='g-c']:nth-child(22n+1), .g-23n > [class*='g-c']:nth-child(23n+1), .g-24n > [class*='g-c']:nth-child(24n+1) { clear: both; }

/*・・3列に並び替えるとき*/
@media only screen and (min-width: 768px) { /*ガター*/
  .gpc-g { margin-left: -10px; }
  .gpc-g > [class*='g-c'] { padding-left: 10px; }
  /*行ごとにdivでくくらないとき必須*/
  .gpc-1n > [class*='g-c'], .gpc-2n > [class*='g-c']:nth-child(2n+1), .gpc-3n > [class*='g-c']:nth-child(3n+1), .gpc-4n > [class*='g-c']:nth-child(4n+1), .gpc-5n > [class*='g-c']:nth-child(5n+1), .gpc-6n > [class*='g-c']:nth-child(6n+1), .gpc-7n > [class*='g-c']:nth-child(7n+1), .gpc-8n > [class*='g-c']:nth-child(8n+1), .gpc-9n > [class*='g-c']:nth-child(9n+1), .gpc-10n > [class*='g-c']:nth-child(10n+1), .gpc-11n > [class*='g-c']:nth-child(11n+1), .gpc-12n > [class*='g-c']:nth-child(12n+1), .gpc-13n > [class*='g-c']:nth-child(13n+1), .gpc-14n > [class*='g-c']:nth-child(14n+1), .gpc-15n > [class*='g-c']:nth-child(15n+1), .gpc-16n > [class*='g-c']:nth-child(16n+1), .gpc-17n > [class*='g-c']:nth-child(17n+1), .gpc-18n > [class*='g-c']:nth-child(18n+1), .gpc-19n > [class*='g-c']:nth-child(19n+1), .gpc-20n > [class*='g-c']:nth-child(20n+1), .gpc-21n > [class*='g-c']:nth-child(21n+1), .gpc-22n > [class*='g-c']:nth-child(22n+1), .gpc-23n > [class*='g-c']:nth-child(23n+1), .gpc-24n > [class*='g-c']:nth-child(24n+1) { clear: both; }
  /*・・3列に並び替えるとき*/ }
@media only screen and (max-width: 767px) { /*ガター*/
  .gsp-g { margin-left: -10px; }
  .gsp-g > [class*='g-c'] { padding-left: 10px; }
  .gsp-g20 { margin-left: -20px; }
  .gsp-g20 > [class*='g-c'] { padding-left: 20px; }
  /*ガター25px*/
  .gsp-g30 { margin-left: -30px; }
  .gsp-g30 > [class*='g-c'] { padding-left: 30px; }
  /*ガター25px*/
  .gsp-g40 { margin-left: -40px; }
  .gsp-g40 > [class*='g-c'] { padding-left: 40px; }
  /*ガター25px*/
  .gsp-g50 { margin-left: -50px; }
  .gsp-g50 > [class*='g-c'] { padding-left: 50px; }
  /*ガター25px*/
  /*行ごとにdivでくくらないとき必須*/
  .gsp-1n > [class*='g-c'], .gsp-2n > [class*='g-c']:nth-child(2n+1), .gsp-3n > [class*='g-c']:nth-child(3n+1), .gsp-4n > [class*='g-c']:nth-child(4n+1), .gsp-5n > [class*='g-c']:nth-child(5n+1), .gsp-6n > [class*='g-c']:nth-child(6n+1), .gsp-7n > [class*='g-c']:nth-child(7n+1), .gsp-8n > [class*='g-c']:nth-child(8n+1), .gsp-9n > [class*='g-c']:nth-child(9n+1), .gsp-10n > [class*='g-c']:nth-child(10n+1), .gsp-11n > [class*='g-c']:nth-child(11n+1), .gsp-12n > [class*='g-c']:nth-child(12n+1), .gsp-13n > [class*='g-c']:nth-child(13n+1), .gsp-14n > [class*='g-c']:nth-child(14n+1), .gsp-15n > [class*='g-c']:nth-child(15n+1), .gsp-16n > [class*='g-c']:nth-child(16n+1), .gsp-17n > [class*='g-c']:nth-child(17n+1), .gsp-18n > [class*='g-c']:nth-child(18n+1), .gsp-19n > [class*='g-c']:nth-child(19n+1), .gsp-20n > [class*='g-c']:nth-child(20n+1), .gsp-21n > [class*='g-c']:nth-child(21n+1), .gsp-22n > [class*='g-c']:nth-child(22n+1), .gsp-23n > [class*='g-c']:nth-child(23n+1), .gsp-24n > [class*='g-c']:nth-child(24n+1) { clear: both; }
  /*・・3列に並び替えるとき*/
  /*スマホにしたら1列にするときはgと同階層にis-breakをつける*/
  .is-break.g { margin-left: 0; }
  .is-break.g > [class*='g-c'] { width: 100%; clear: left; padding-left: 0; }
  .is-break.g > [class*='g-c']:last-child { margin-bottom: 0; }
  /*pcで3段でspで2段にするとき　または　spでのみ適用したいとき*/
  .gsp-c1_24 { width: 4.1667%; *width: 4.1357%; }
  .gsp-c1_12, .gsp-c2_24 { width: 8.3333%; *width: 8.3023%; }
  .gsp-c1_8, .gsp-c3_24 { width: 12.5%; *width: 12.469%; }
  .gsp-c1_6, .gsp-c4_24 { width: 16.6667%; *width: 16.6357%; }
  .gsp-c1_5 { width: 20%; *width: 19.969%; }
  .gsp-c5_24 { width: 20.8333%; *width: 20.8023%; }
  .gsp-c1_4, .gsp-c6_24 { width: 25%; *width: 24.969%; }
  .gsp-c7_24 { width: 29.1667%; *width: 29.1357%; }
  .gsp-c1_3, .gsp-c8_24 { width: 33.3333%; *width: 33.3023%; }
  .gsp-c3_8, .gsp-c9_24 { width: 37.5%; *width: 37.469%; }
  .gsp-c2_5 { width: 40%; *width: 39.969%; }
  .gsp-c5_12, .gsp-c10_24 { width: 41.6667%; *width: 41.6357%; }
  .gsp-c11_24 { width: 45.8333%; *width: 45.8023%; }
  .gsp-c1_2, .gsp-c12_24 { width: 50%; *width: 49.969%; }
  .gsp-c13_24 { width: 54.1667%; *width: 54.1357%; }
  .gsp-c7_12, .gsp-c14_24 { width: 58.3333%; *width: 58.3023%; }
  .gsp-c3_5 { width: 60%; *width: 59.969%; }
  .gsp-c5_8, .gsp-c15_24 { width: 62.5%; *width: 62.469%; }
  .gsp-c2_3, .gsp-c16_24 { width: 66.6667%; *width: 66.6357%; }
  .gsp-c17_24 { width: 70.8333%; *width: 70.8023%; }
  .gsp-c3_4, .gsp-c18_24 { width: 75%; *width: 74.969%; }
  .gsp-c19_24 { width: 79.1667%; *width: 79.1357%; }
  .gsp-c4_5 { width: 80%; *width: 79.969%; }
  .gsp-c5_6, .gsp-c20_24 { width: 83.3333%; *width: 83.3023%; }
  .gsp-c7_8, .gsp-c21_24 { width: 87.5%; *width: 87.469%; }
  .gsp-c11_12, .gsp-c22_24 { width: 91.6667%; *width: 91.6357%; }
  .gsp-c23_24 { width: 95.8333%; *width: 95.8023%; }
  .gsp-c1, .gsp-c1_1, .gsp-c5_5, .gsp-c24_24 { width: 100%; } }
/*==================================================================*/
/*　　tinymce_codesample_prism　　　　　　　　　　　　　　　　　　　*/
/*==================================================================*/
/* http://prismjs.com/download.html?themes=prism&languages=markup+css+clike+javascript */
/** prism.js default theme for JavaScript, CSS and HTML Based on dabblet (http://dabblet.com) @author Lea Verou */
code[class*="language-"], pre[class*="language-"] { color: black; text-shadow: 0 1px white; font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace; direction: ltr; text-align: left; white-space: pre; word-spacing: normal; word-break: normal; word-wrap: normal; line-height: 1.5; -moz-tab-size: 4; -o-tab-size: 4; tab-size: 4; -webkit-hyphens: none; -moz-hyphens: none; -ms-hyphens: none; hyphens: none; }

pre[class*="language-"]::-moz-selection, pre[class*="language-"] ::-moz-selection, code[class*="language-"]::-moz-selection, code[class*="language-"] ::-moz-selection { text-shadow: none; background: #b3d4fc; }

pre[class*="language-"]::selection, pre[class*="language-"] ::selection, code[class*="language-"]::selection, code[class*="language-"] ::selection { text-shadow: none; background: #b3d4fc; }

@media print { code[class*="language-"], pre[class*="language-"] { text-shadow: none; } }
/* Code blocks */
pre[class*="language-"] { padding: 1em; margin: .5em 0; overflow: auto; }

:not(pre) > code[class*="language-"], pre[class*="language-"] { background: #f5f2f0; }

/* Inline code */
:not(pre) > code[class*="language-"] { padding: .1em; border-radius: .3em; }

.token.comment, .token.prolog, .token.doctype, .token.cdata { color: slategray; }

.token.punctuation { color: #999; }

.namespace { opacity: .7; }

.token.property, .token.tag, .token.boolean, .token.number, .token.constant, .token.symbol, .token.deleted { color: #905; }

.token.selector, .token.attr-name, .token.string, .token.char, .token.builtin, .token.inserted { color: #690; }

.token.operator, .token.entity, .token.url, .language-css .token.string, .style .token.string { color: #a67f59; background: rgba(255, 255, 255, 0.5); }

.token.atrule, .token.attr-value, .token.keyword { color: #07a; }

.token.function { color: #DD4A68; }

.token.regex, .token.important, .token.variable { color: #e90; }

.token.important, .token.bold { font-weight: bold; }

.token.italic { font-style: italic; }

.token.entity { cursor: help; }

/*==================================================================*/
/*　　main　　　　　　　　　　　　　　　　　　　　　　　　　　　　　*/
/*==================================================================*/
/*------------------------------------------------------------------*/
/*　　テーマ：上書き要素　　　　　　　　　　　　　　　　　　　　　　*/
/*------------------------------------------------------------------*/
body { background: #f4f3f1; line-height: 1.8em; }

/*通常色*/
body .u-theme { color: #0080C8; }

/*テーマ色*/
/*赤色*/
/*薄い色*/
/*濃い色*/
/*本文中リンクテキスト色*/
a { color: #3B4C72; }

.u-mb { margin-bottom: 30px; }

/*ボタン*/
.u-btn_reason, .u-btn_d { text-shadow: -1px -1px 0 rgba(0, 0, 0, 0.3); border: 1px solid #eeb44f; color: #FFFFFF; background: -moz-linear-gradient(center top, #ffc477 5%, #fb9e25 100%); background: -ms-linear-gradient(top, #ffc477 5%, #fb9e25 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffc477', endColorstr='#fb9e25'); background: -webkit-gradient(linear, left top, left bottom, color-stop(5%, #ffc477), color-stop(100%, #fb9e25)); background-color: #ffc477; }

.u-btn_d:hover { text-decoration: none; text-shadow: -1px -1px 0 rgba(0, 0, 0, 0.3); border-color: #eeb44f; color: #fff; background: -moz-linear-gradient(center top, #fb9e25 5%, #ffc477 100%); background: -ms-linear-gradient(top, #fb9e25 5%, #ffc477 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fb9e25', endColorstr='#ffc477'); background: -webkit-gradient(linear, left top, left bottom, color-stop(5%, #fb9e25), color-stop(100%, #ffc477)); background-color: #fb9e25; }

.u-btn_d .i_ya_sikaku_r:before { color: #333; }

/*------------------------------------------------------------------*/
/*　　共通素材					　　　　　　　　　　　　　　　　　　　　　　*/
/*------------------------------------------------------------------*/
/*.u-btn--page	{width:300px;text-align:center;display:block;margin:0 auto;}リンクボタンサイズ*/
/*------------------------------------------------------------------*/
/*　　骨格共通					　　　　　　　　　　　　　　　　　　　　　　*/
/*------------------------------------------------------------------*/
address { padding: 10px 0; font-size: 0.8rem; }

/*------------------------------------------------------------------*/
/*　　各ページ　　　　　　　　　　　　　　　　　　　　　　          */
/*------------------------------------------------------------------*/
/*news*/
.c-news_table { width: 100%; }

.c-news_ttl, .c-news_date { padding: 24px 0px; box-sizing: border-box; border-bottom: 1px solid #ccc; vertical-align: top; }

.c-news_table tr:last-child .c-news_date, .c-news_table tr:last-child .c-news_ttl { border-bottom: none; }

.c-news_ttl { cursor: pointer; }

.c-news_date { text-align: right; color: #848484; }

.c-news_body { background: #fff; padding: 40px; margin-top: 30px; }

/*service*/
.c-service_li { text-align: center; cursor: pointer; }

.c-service_li_in { padding: 15px; }

.c-service_li_ttl { padding: 20px 0; }

.c-service_li_txt { padding: 20px 0; text-align: left; line-height: 1.2em; }

li:hover .c-service_li_in, .is-current .c-service_li_in { background: #fff; -o-box-shadow: 0 0 6px #C9C9C9; -ms-box-shadow: 0 0 6px #C9C9C9; -webkit-box-shadow: 0 0 6px #C9C9C9; -moz-box-shadow: 0 0 6px #C9C9C9; box-shadow: 0 0 6px #C9C9C9; }

.c-servicebody { background: #444444; padding: 66px 55px; color: #fff; }

/*consultant*/
.c-consultant_waku { padding: 50px 60px; border: 2px solid #fff; background: #ece8e2; }

/*inquiry*/
.c-inquiry { margin: 100px 0; padding: 90px 120px; background: #e3237e; color: #fff; }

.c-inquiry_telbox { margin: 30px 140px 70px 140px; text-align: center; padding: 30px 0; border: 1px solid #fff; }

.c-inquiry_telbox_company { margin: 0px 20px 30px 20px; padding: 5px 20px; background: #ea589d; }

/*company*/
.c-company_table { width: 100%; }

.c-company_table_td { padding: 24px 0px; box-sizing: border-box; border-bottom: 1px solid #ccc; vertical-align: top; font-weight: normal; text-align: left; }

.c-company_table tr:last-child .c-company_table_td { border-bottom: none; }

/*toinquiry*/
.c-toinquiry { position: fixed; bottom: 6px; right: 52px; width: 112px; height: 112px; }

/*privacy*/
.u-table .u-table-simple_td { background: #fff; }

/*------------------------------------------------------------------*/
/*　　PC　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　*/
/*------------------------------------------------------------------*/
/*共通横マージン*/
.c-main { margin: 0 auto; width: 1100px; }

/*共通色：ヘッダーリンク*/
.c-un_a , .c-footer a { color: #666666; }

.c-header { display: block; width: 100%; box-sizing: border-box; padding: 0 20px; background: #fff; }

.c-logo { float: left; width: 709px; padding: 16px 0 0 0; }

.is-fixed .c-logo { width: 500px; padding: 10px 0 0 0; }

.is-fixed .c-gn_a { padding: 0 5px; line-height: 50px; height: 50px; }

.c-gn { float: right; }

.c-gn_li { float: left; }

.c-gn_a { display: block; padding: 0 10px; line-height: 74px; height: 74px; box-sizing: border-box; }

.c-gn_a:hover, .c-gn_a.is-current { -moz-opacity: 1; opacity: 1; filter: alpha(opacity=100); border-bottom: 3px solid #757575; }

.u-pan { padding: 10px 0 70px 0; }

.c-mv { background: url(../img/mv_winery_bg.gif) center top repeat-y; }

.c-mv_in { background: url(../img/mv_winery.png) center top no-repeat; width: 1346px; height: 523px; margin: 0 auto; }

.c-mv_ttl { padding-top: 170px; text-align: center; }

.c-ttl { margin: 100px auto; background: url(../img/ttl_bg.png) center top no-repeat; }

.c-ttl_en { display: block; text-align: center; font-size: 30px; line-height: 30px; height: 30px; }

.c-ttl_ja { display: block; text-align: center; font-size: 10px; line-height: 10px; height: 10px; font-weight: bold; }

.c-footer { margin-top: 80px; }
