@charset "utf-8";
/* common.css
++++++++++++++++++++++++++++++++++++++++
* NOTE
++++++++++++++++++++++++++++++++++++++++
- Charset: utf-8
- Return code: LF
++++++++++++++++++++++++++++++++++++++++
* INDEX
++++++++++++++++++++++++++++++++++++++++
- base
- utility
- side
- security keyboard
- module
++++++++++++++++++++++++++++++++++++++++
* PREFIX
++++++++++++++++++++++++++++++++++++++++
.u-: utility
.side-: side contents
.sk-: security keyboard
.m-: module
++++++++++++++++++++++++++++++++++++++++ */
/* base
++++++++++++++++++++++++++++++++++++++++ */
/* reset ++++++++++++++++
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}
body {
  line-height: 1;
}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section { 
  display: block;
}
nav ul {
  list-style: none;
}
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}
a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}
del {
  text-decoration: line-through;
}
abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}
input, select {
  vertical-align: middle;
}

/* initialize ++++++++++++++++ */
*,
*::before,
*::after {
  box-sizing: inherit;
}
html {
  font-size: 62.5%;
  box-sizing: border-box;
}

body {
  font-family: 'Roboto', 'YakuHanJP', 'Subset-NotoSansJP', Meiryo, sans-serif;
  font-size: 1.4rem;
  font-style: normal;
  line-height: 1.7;
  word-wrap: break-word;
  color: #313942;
  overflow-wrap: break-word;
  -webkit-text-size-adjust: 100%;
}
@media screen and (-webkit-min-device-pixel-ratio: 0) and (min-resolution: .001dpcm) { /* hack for Chrome Noto Sansブラウザ毎のレンダリング違い補正 */
  body:not(*:root),
  body > *:not(header):not(footer) {
    -webkit-text-stroke: 0.1px;
  }
}

a {
  text-decoration: underline;
  color: inherit;
  transition: color 0.2s ease-in-out,
              background 0.2s ease-in-out,
              opacity 0.2s ease-in-out;
}
a:hover {
  text-decoration: none;
  color: #2599e3;
}

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

ul, ol, li {
  list-style: none;
}

sub,
sup {
  position: relative;
  font-size: 86%;
  line-height: 0;
}
sub {
  bottom: -0.14em;
}
sup {
  top: -0.14em;
}

b {
  font-weight: bold;
}

/* form */
button, input, optgroup, select, textarea {
  color: inherit;
  font: inherit;
  vertical-align: middle;
  margin: 0;
}
button, input {
  overflow: visible;
}
button, select {
  text-transform: none;
}
select {
  cursor: pointer;
}
textarea {
  overflow: auto;
  padding-right: 10px;
  padding-left: 10px;
}
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
}
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  padding: 0;
  cursor: pointer;
}
input[type='text'],
input[type='search'],
input[type='password'] {
  padding-right: 10px;
  padding-left: 10px;
  line-height: 1.65;
}
input::placeholder {
  color: inherit;
  font-family: inherit;
  opacity: 0.5;
}
input::-webkit-input-placeholder {
  color: inherit;
  font-family: inherit;
  opacity: 0.5;
}
input:-ms-input-placeholder {
  color: rgba(33,46,70,0.6);
  font-family: inherit;
}
label {
  cursor: pointer;
}


/* layout
++++++++++++++++++++++++++++++++++++++++ 
/* base layout +++++++++++++++++++ */
.l-html {
  min-width: 1080px;
  min-height: 100vh;
  /* IE bugfix (flexbox sticky footer) */
  display: flex;
  flex-direction: column;
  height: 100vh;
}

.l-body {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}

.l-body > * {
  flex-shrink: 0;
}

.l-header,
.l-footer {
  flex: 0 0 auto;
}

.l-container {
  position: relative;
  overflow: hidden;
  flex: 1 0 auto;
  width: 100%;
}

.l-content {
  position: relative;
  display: flex;
  width: 1080px;
  margin: 16px auto 0;
  justify-content: space-between;
}

.l-main {
  flex: 1 0 0%;
}

.l-side {
  position: relative;
  flex-shrink: 0;
  width: 236px;
  margin-left: 36px;
}

/* flexbox grid system +++++++++++++++++++ */
/* container */
.l-flex {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  align-items: stretch;
}
.l-flex.rows { flex-direction: column;}
.l-flex:not(.rows).top { align-content: flex-start; align-items: flex-start;}
.l-flex:not(.rows).middle { align-content: center; align-items: center;}
.l-flex:not(.rows).bottom { align-content: flex-end;  align-items: flex-end;}
.l-flex:not(.rows).end { justify-content: flex-end;}
.l-flex:not(.rows).center { justify-content: center;}
.l-flex.between { justify-content: space-between;}
.l-flex.rows.middle { justify-content: center;}
.l-flex.rows.bottom { justify-content: flex-end;}
/* items */
.l-flex.fit > .row,
.l-flex.fit > .col,
.l-flex.fit > .col2,
.l-flex.fit > .col3,
.l-flex.fit > .col4,
.l-flex.fit > .col5,
.l-flex.fit > .col6,
.l-flex.fit > .col7,
.l-flex.fit > .col8 { flex-grow: 1;}
.l-flex > .top { align-self: flex-start;}
.l-flex > .bottom { align-self: flex-end;}
.l-flex > .center { align-self: center;}
.l-flex > .baseline { align-self: baseline;}
.l-flex > .grow { flex-grow: 1;}
.l-flex > .fit { display: flex; align-items: stretch;}
.l-flex > .fit > .l-flex { flex-grow: 1;}
.l-flex > .order0 { order: 0;}
.l-flex > .order1 { order: 1;}
.l-flex > .order2 { order: 2;}
.l-flex > .order3 { order: 3;}
.l-flex > .order4 { order: 4;}
.l-flex > .order5 { order: 5;}
.l-flex > .order6 { order: 6;}
.l-flex > .order7 { order: 7;}
.l-flex > .order8 { order: 8;}
/* gap */
.l-flex.gap4 { margin-top: -4px; margin-left: -4px;}
.l-flex.gap8 { margin-top: -8px; margin-left: -8px;}
.l-flex.gap16 { margin-top: -16px; margin-left: -16px;}
.l-flex.gap24 { margin-top: -24px; margin-left: -24px;}
.l-flex.gap32 { margin-top: -32px; margin-left: -32px;}
.l-flex.gapy0 { margin-top: 0px;}
.l-flex.gapy4 { margin-top: -4px;}
.l-flex.gapy8 { margin-top: -8px;}
.l-flex.gapy16 { margin-top: -16px;}
.l-flex.gapy24 { margin-top: -24px;}
.l-flex.gapy32 { margin-top: -32px;}
.l-flex.gap4 > .row,
.l-flex.gap4 > .col,
.l-flex.gap4 > .col2,
.l-flex.gap4 > .col3,
.l-flex.gap4 > .col4,
.l-flex.gap4 > .col5,
.l-flex.gap4 > .col6,
.l-flex.gap4 > .col7,
.l-flex.gap4 > .col8 { margin-top: 4px; margin-left: 4px;}
.l-flex.gap8 > .row,
.l-flex.gap8 > .col,
.l-flex.gap8 > .col2,
.l-flex.gap8 > .col3,
.l-flex.gap8 > .col4,
.l-flex.gap8 > .col5,
.l-flex.gap8 > .col6,
.l-flex.gap8 > .col7,
.l-flex.gap8 > .col8 { margin-top: 8px; margin-left: 8px;}
.l-flex.gap16 > .row,
.l-flex.gap16 > .col,
.l-flex.gap16 > .col2,
.l-flex.gap16 > .col3,
.l-flex.gap16 > .col4,
.l-flex.gap16 > .col5,
.l-flex.gap16 > .col6,
.l-flex.gap16 > .col7,
.l-flex.gap16 > .col8 { margin-top: 16px; margin-left: 16px;}
.l-flex.gap24 > .row,
.l-flex.gap24 > .col,
.l-flex.gap24 > .col2,
.l-flex.gap24 > .col3,
.l-flex.gap24 > .col4,
.l-flex.gap24 > .col5,
.l-flex.gap24 > .col6,
.l-flex.gap24 > .col7,
.l-flex.gap24 > .col8 { margin-top: 24px; margin-left: 24px;}
.l-flex.gap32 > .row,
.l-flex.gap32 > .col,
.l-flex.gap32 > .col2,
.l-flex.gap32 > .col3,
.l-flex.gap32 > .col4,
.l-flex.gap32 > .col5,
.l-flex.gap32 > .col6,
.l-flex.gap32 > .col7,
.l-flex.gap32 > .col8 { margin-top: 32px; margin-left: 32px;}
.l-flex.gapy0 > .row,
.l-flex.gapy0 > .col,
.l-flex.gapy0 > .col2,
.l-flex.gapy0 > .col3,
.l-flex.gapy0 > .col4,
.l-flex.gapy0 > .col5,
.l-flex.gapy0 > .col6,
.l-flex.gapy0 > .col7,
.l-flex.gapy0 > .col8 { margin-top: 0px;}
.l-flex.gapy4 > .row,
.l-flex.gapy4 > .col,
.l-flex.gapy4 > .col2,
.l-flex.gapy4 > .col3,
.l-flex.gapy4 > .col4,
.l-flex.gapy4 > .col5,
.l-flex.gapy4 > .col6,
.l-flex.gapy4 > .col7,
.l-flex.gapy4 > .col8 { margin-top: 4px;}
.l-flex.gapy8 > .row,
.l-flex.gapy8 > .col,
.l-flex.gapy8 > .col2,
.l-flex.gapy8 > .col3,
.l-flex.gapy8 > .col4,
.l-flex.gapy8 > .col5,
.l-flex.gapy8 > .col6,
.l-flex.gapy8 > .col7,
.l-flex.gapy8 > .col8 { margin-top: 8px;}
.l-flex.gapy16 > .row,
.l-flex.gapy16 > .col,
.l-flex.gapy16 > .col2,
.l-flex.gapy16 > .col3,
.l-flex.gapy16 > .col4,
.l-flex.gapy16 > .col5,
.l-flex.gapy16 > .col6,
.l-flex.gapy16 > .col7,
.l-flex.gapy16 > .col8 { margin-top: 16px;}
.l-flex.gapy24 > .row,
.l-flex.gapy24 > .col,
.l-flex.gapy24 > .col2,
.l-flex.gapy24 > .col3,
.l-flex.gapy24 > .col4,
.l-flex.gapy24 > .col5,
.l-flex.gapy24 > .col6,
.l-flex.gapy24 > .col7,
.l-flex.gapy24 > .col8 { margin-top: 24px;}
.l-flex.gapy32 > .row,
.l-flex.gapy32 > .col,
.l-flex.gapy32 > .col2,
.l-flex.gapy32 > .col3,
.l-flex.gapy32 > .col4,
.l-flex.gapy32 > .col5,
.l-flex.gapy32 > .col6,
.l-flex.gapy32 > .col7,
.l-flex.gapy32 > .col8 { margin-top: 32px;}
/* width */
.l-flex > .row,
.l-flex.cols2 > .col2,
.l-flex.cols3 > .col3,
.l-flex.cols4 > .col4,
.l-flex.cols5 > .col5,
.l-flex.cols6 > .col6,
.l-flex.cols7 > .col7,
.l-flex.cols8 > .col8 { width: 100%;}
.l-flex.cols8 > .col7 { width: 87.5%;}
.l-flex.cols7 > .col6 { width: 85.71%;}
.l-flex.cols6 > .col5 { width: 83.33%;}
.l-flex.cols5 > .col4 { width: 80%;}
.l-flex.cols4 > .col3,
.l-flex.cols8 > .col6 { width: 75%;}
.l-flex.cols7 > .col5 { width: 71.42%;}
.l-flex.cols3 > .col2,
.l-flex.cols6 > .col4 { width: 66.66%;}
.l-flex.cols8 > .col5 { width: 62.5%;}
.l-flex.cols5 > .col3 { width: 60%;}
.l-flex.cols7 > .col4 { width: 57.14%;}
.l-flex.cols2 > .col,
.l-flex.cols4 > .col2,
.l-flex.cols6 > .col3,
.l-flex.cols8 > .col4 { width: 50%;}
.l-flex.cols7 > .col3 { width: 42.85%;}
.l-flex.cols5 > .col2 { width: 40%;}
.l-flex.cols8 > .col3 { width: 37.5%;}
.l-flex.cols3 > .col,
.l-flex.cols6 > .col2 { width: 33.33%;}
.l-flex.cols7 > .col2 { width: 28.57%;}
.l-flex.cols4 > .col,
.l-flex.cols8 > .col2 { width: 25%;}
.l-flex.cols5 > .col { width: 20%;}
.l-flex.cols6 > .col { width: 16.66%;}
.l-flex.cols7 > .col { width: 14.28%;}
.l-flex.cols8 > .col { width: 12.5%;}
.l-flex.gap4 > .row,
.l-flex.gap4.cols2 > .col2,
.l-flex.gap4.cols3 > .col3,
.l-flex.gap4.cols4 > .col4,
.l-flex.gap4.cols5 > .col5,
.l-flex.gap4.cols6 > .col6,
.l-flex.gap4.cols7 > .col7,
.l-flex.gap4.cols8 > .col8 { width: calc(100% - 4px);}
.l-flex.gap4.cols8 > .col7 { width: calc(87.5% - 4px);}
.l-flex.gap4.cols7 > .col6 { width: calc(85.71% - 4px);}
.l-flex.gap4.cols6 > .col5 { width: calc(83.33% - 4px);}
.l-flex.gap4.cols5 > .col4 { width: calc(80% - 4px);}
.l-flex.gap4.cols4 > .col3,
.l-flex.gap4.cols8 > .col6 { width: calc(75% - 4px);}
.l-flex.gap4.cols7 > .col5 { width: calc(71.42% - 4px);}
.l-flex.gap4.cols3 > .col2,
.l-flex.gap4.cols6 > .col4 { width: calc(66.66% - 4px);}
.l-flex.gap4.cols8 > .col5 { width: calc(62.5% - 4px);}
.l-flex.gap4.cols5 > .col3 { width: calc(60% - 4px);}
.l-flex.gap4.cols7 > .col4 { width: calc(57.14% - 4px);}
.l-flex.gap4.cols2 > .col,
.l-flex.gap4.cols4 > .col2,
.l-flex.gap4.cols6 > .col3,
.l-flex.gap4.cols8 > .col4 { width: calc(50% - 4px);}
.l-flex.gap4.cols7 > .col3 { width: calc(42.85% - 4px);}
.l-flex.gap4.cols5 > .col2 { width: calc(40% - 4px);}
.l-flex.gap4.cols8 > .col3 { width: calc(37.5% - 4px);}
.l-flex.gap4.cols3 > .col,
.l-flex.gap4.cols6 > .col2 { width: calc(33.33% - 4px);}
.l-flex.gap4.cols7 > .col2 { width: calc(28.57% - 4px);}
.l-flex.gap4.cols4 > .col,
.l-flex.gap4.cols8 > .col2 { width: calc(25% - 4px);}
.l-flex.gap4.cols5 > .col { width: calc(20% - 4px);}
.l-flex.gap4.cols6 > .col { width: calc(16.66% - 4px);}
.l-flex.gap4.cols7 > .col { width: calc(14.28% - 4px);}
.l-flex.gap4.cols8 > .col { width: calc(12.5% - 4px);}
.l-flex.gap8 > .row,
.l-flex.gap8.cols2 > .col2,
.l-flex.gap8.cols3 > .col3,
.l-flex.gap8.cols4 > .col4,
.l-flex.gap8.cols5 > .col5,
.l-flex.gap8.cols6 > .col6,
.l-flex.gap8.cols7 > .col7,
.l-flex.gap8.cols8 > .col8 { width: calc(100% - 8px);}
.l-flex.gap8.cols8 > .col7 { width: calc(87.5% - 8px);}
.l-flex.gap8.cols7 > .col6 { width: calc(85.71% - 8px);}
.l-flex.gap8.cols6 > .col5 { width: calc(83.33% - 8px);}
.l-flex.gap8.cols5 > .col4 { width: calc(80% - 8px);}
.l-flex.gap8.cols4 > .col3,
.l-flex.gap8.cols8 > .col6 { width: calc(75% - 8px);}
.l-flex.gap8.cols7 > .col5 { width: calc(71.42% - 8px);}
.l-flex.gap8.cols3 > .col2,
.l-flex.gap8.cols6 > .col4 { width: calc(66.66% - 8px);}
.l-flex.gap8.cols8 > .col5 { width: calc(62.5% - 8px);}
.l-flex.gap8.cols5 > .col3 { width: calc(60% - 8px);}
.l-flex.gap8.cols7 > .col4 { width: calc(57.14% - 8px);}
.l-flex.gap8.cols2 > .col,
.l-flex.gap8.cols4 > .col2,
.l-flex.gap8.cols6 > .col3,
.l-flex.gap8.cols8 > .col4 { width: calc(50% - 8px);}
.l-flex.gap8.cols7 > .col3 { width: calc(42.85% - 8px);}
.l-flex.gap8.cols5 > .col2 { width: calc(40% - 8px);}
.l-flex.gap8.cols8 > .col3 { width: calc(37.5% - 8px);}
.l-flex.gap8.cols3 > .col,
.l-flex.gap8.cols6 > .col2 { width: calc(33.33% - 8px);}
.l-flex.gap8.cols7 > .col2 { width: calc(28.57% - 8px);}
.l-flex.gap8.cols4 > .col,
.l-flex.gap8.cols8 > .col2 { width: calc(25% - 8px);}
.l-flex.gap8.cols5 > .col { width: calc(20% - 8px);}
.l-flex.gap8.cols6 > .col { width: calc(16.66% - 8px);}
.l-flex.gap8.cols7 > .col { width: calc(14.28% - 8px);}
.l-flex.gap8.cols8 > .col { width: calc(12.5% - 8px);}
.l-flex.gap16 > .row,
.l-flex.gap16.cols2 > .col2,
.l-flex.gap16.cols3 > .col3,
.l-flex.gap16.cols4 > .col4,
.l-flex.gap16.cols5 > .col5,
.l-flex.gap16.cols6 > .col6,
.l-flex.gap16.cols7 > .col7,
.l-flex.gap16.cols8 > .col8 { width: calc(100% - 16px);}
.l-flex.gap16.cols8 > .col7 { width: calc(87.5% - 16px);}
.l-flex.gap16.cols7 > .col6 { width: calc(85.71% - 16px);}
.l-flex.gap16.cols6 > .col5 { width: calc(83.33% - 16px);}
.l-flex.gap16.cols5 > .col4 { width: calc(80% - 16px);}
.l-flex.gap16.cols4 > .col3,
.l-flex.gap16.cols8 > .col6 { width: calc(75% - 16px);}
.l-flex.gap16.cols7 > .col5 { width: calc(71.42% - 16px);}
.l-flex.gap16.cols3 > .col2,
.l-flex.gap16.cols6 > .col4 { width: calc(66.66% - 16px);}
.l-flex.gap16.cols8 > .col5 { width: calc(62.5% - 16px);}
.l-flex.gap16.cols5 > .col3 { width: calc(60% - 16px);}
.l-flex.gap16.cols7 > .col4 { width: calc(57.14% - 16px);}
.l-flex.gap16.cols2 > .col,
.l-flex.gap16.cols4 > .col2,
.l-flex.gap16.cols6 > .col3,
.l-flex.gap16.cols8 > .col4 { width: calc(50% - 16px);}
.l-flex.gap16.cols7 > .col3 { width: calc(42.85% - 16px);}
.l-flex.gap16.cols5 > .col2 { width: calc(40% - 16px);}
.l-flex.gap16.cols8 > .col3 { width: calc(37.5% - 16px);}
.l-flex.gap16.cols3 > .col,
.l-flex.gap16.cols6 > .col2 { width: calc(33.33% - 16px);}
.l-flex.gap16.cols7 > .col2 { width: calc(28.57% - 16px);}
.l-flex.gap16.cols4 > .col,
.l-flex.gap16.cols8 > .col2 { width: calc(25% - 16px);}
.l-flex.gap16.cols5 > .col { width: calc(20% - 16px);}
.l-flex.gap16.cols6 > .col { width: calc(16.66% - 16px);}
.l-flex.gap16.cols7 > .col { width: calc(14.28% - 16px);}
.l-flex.gap16.cols8 > .col { width: calc(12.5% - 16px);}
.l-flex.gap24 > .row,
.l-flex.gap24.cols2 > .col2,
.l-flex.gap24.cols3 > .col3,
.l-flex.gap24.cols4 > .col4,
.l-flex.gap24.cols5 > .col5,
.l-flex.gap24.cols6 > .col6,
.l-flex.gap24.cols7 > .col7,
.l-flex.gap24.cols8 > .col8 { width: calc(100% - 24px);}
.l-flex.gap24.cols8 > .col7 { width: calc(87.5% - 24px);}
.l-flex.gap24.cols7 > .col6 { width: calc(85.71% - 24px);}
.l-flex.gap24.cols6 > .col5 { width: calc(83.33% - 24px);}
.l-flex.gap24.cols5 > .col4 { width: calc(80% - 24px);}
.l-flex.gap24.cols4 > .col3,
.l-flex.gap24.cols8 > .col6 { width: calc(75% - 24px);}
.l-flex.gap24.cols7 > .col5 { width: calc(71.42% - 24px);}
.l-flex.gap24.cols3 > .col2,
.l-flex.gap24.cols6 > .col4 { width: calc(66.66% - 24px);}
.l-flex.gap24.cols8 > .col5 { width: calc(62.5% - 24px);}
.l-flex.gap24.cols5 > .col3 { width: calc(60% - 24px);}
.l-flex.gap24.cols7 > .col4 { width: calc(57.14% - 24px);}
.l-flex.gap24.cols2 > .col,
.l-flex.gap24.cols4 > .col2,
.l-flex.gap24.cols6 > .col3,
.l-flex.gap24.cols8 > .col4 { width: calc(50% - 24px);}
.l-flex.gap24.cols7 > .col3 { width: calc(42.85% - 24px);}
.l-flex.gap24.cols5 > .col2 { width: calc(40% - 24px);}
.l-flex.gap24.cols8 > .col3 { width: calc(37.5% - 24px);}
.l-flex.gap24.cols3 > .col,
.l-flex.gap24.cols6 > .col2 { width: calc(33.33% - 24px);}
.l-flex.gap24.cols7 > .col2 { width: calc(28.57% - 24px);}
.l-flex.gap24.cols4 > .col,
.l-flex.gap24.cols8 > .col2 { width: calc(25% - 24px);}
.l-flex.gap24.cols5 > .col { width: calc(20% - 24px);}
.l-flex.gap24.cols6 > .col { width: calc(16.66% - 24px);}
.l-flex.gap24.cols7 > .col { width: calc(14.28% - 24px);}
.l-flex.gap24.cols8 > .col { width: calc(12.5% - 24px);}
.l-flex.gap32 > .row,
.l-flex.gap32.cols2 > .col2,
.l-flex.gap32.cols3 > .col3,
.l-flex.gap32.cols4 > .col4,
.l-flex.gap32.cols5 > .col5,
.l-flex.gap32.cols6 > .col6,
.l-flex.gap32.cols7 > .col7,
.l-flex.gap32.cols8 > .col8 { width: calc(100% - 32px);}
.l-flex.gap32.cols8 > .col7 { width: calc(87.5% - 32px);}
.l-flex.gap32.cols7 > .col6 { width: calc(85.71% - 32px);}
.l-flex.gap32.cols6 > .col5 { width: calc(83.33% - 32px);}
.l-flex.gap32.cols5 > .col4 { width: calc(80% - 32px);}
.l-flex.gap32.cols4 > .col3,
.l-flex.gap32.cols8 > .col6 { width: calc(75% - 32px);}
.l-flex.gap32.cols7 > .col5 { width: calc(71.42% - 32px);}
.l-flex.gap32.cols3 > .col2,
.l-flex.gap32.cols6 > .col4 { width: calc(66.66% - 32px);}
.l-flex.gap32.cols8 > .col5 { width: calc(62.5% - 32px);}
.l-flex.gap32.cols5 > .col3 { width: calc(60% - 32px);}
.l-flex.gap32.cols7 > .col4 { width: calc(57.14% - 32px);}
.l-flex.gap32.cols2 > .col,
.l-flex.gap32.cols4 > .col2,
.l-flex.gap32.cols6 > .col3,
.l-flex.gap32.cols8 > .col4 { width: calc(50% - 32px);}
.l-flex.gap32.cols7 > .col3 { width: calc(42.85% - 32px);}
.l-flex.gap32.cols5 > .col2 { width: calc(40% - 32px);}
.l-flex.gap32.cols8 > .col3 { width: calc(37.5% - 32px);}
.l-flex.gap32.cols3 > .col,
.l-flex.gap32.cols6 > .col2 { width: calc(33.33% - 32px);}
.l-flex.gap32.cols7 > .col2 { width: calc(28.57% - 32px);}
.l-flex.gap32.cols4 > .col,
.l-flex.gap32.cols8 > .col2 { width: calc(25% - 32px);}
.l-flex.gap32.cols5 > .col { width: calc(20% - 32px);}
.l-flex.gap32.cols6 > .col { width: calc(16.66% - 32px);}
.l-flex.gap32.cols7 > .col { width: calc(14.28% - 32px);}
.l-flex.gap32.cols8 > .col { width: calc(12.5% - 32px);}

/*  utility
++++++++++++++++++++++++++++++++++++++++ */
/* margin +++++++++++++++++++ */
.u-mg-auto { margin: auto !important;}
.u-mg0 { margin: 0 !important;}
.u-mg4 { margin: 4px !important;}
.u-mg8 { margin: 8px !important;}
.u-mg16 { margin: 16px !important;}
.u-mg24 { margin: 24px !important;}
.u-mg32 { margin: 32px !important;}
.u-mg40 { margin: 40px !important;}
.u-mg48 { margin: 48px !important;}
.u-mg56 { margin: 56px !important;}
.u-mg64 { margin: 64px !important;}
.u-mg72 { margin: 72px !important;}
.u-mg80 { margin: 80px !important;}
/* top */
.u-mgt-auto { margin-top: auto !important;}
.u-mgt0 { margin-top: 0 !important;}
.u-mgt4 { margin-top: 4px !important;}
.u-mgt8 { margin-top: 8px !important;}
.u-mgt16 { margin-top: 16px !important;}
.u-mgt24 { margin-top: 24px !important;}
.u-mgt32 { margin-top: 32px !important;}
.u-mgt40 { margin-top: 40px !important;}
.u-mgt48 { margin-top: 48px !important;}
.u-mgt56 { margin-top: 56px !important;}
.u-mgt64 { margin-top: 64px !important;}
.u-mgt72 { margin-top: 72px !important;}
.u-mgt80 { margin-top: 80px !important;}
/* right */
.u-mgr-auto { margin-right: auto !important;}
.u-mgr0 { margin-right: 0 !important;}
.u-mgr4 { margin-right: 4px !important;}
.u-mgr8 { margin-right: 8px !important;}
.u-mgr16 { margin-right: 16px !important;}
.u-mgr24 { margin-right: 24px !important;}
.u-mgr32 { margin-right: 32px !important;}
.u-mgr40 { margin-right: 40px !important;}
.u-mgr48 { margin-right: 48px !important;}
.u-mgr56 { margin-right: 56px !important;}
.u-mgr64 { margin-right: 64px !important;}
.u-mgr72 { margin-right: 72px !important;}
.u-mgr80 { margin-right: 80px !important;}
/* bottom */
.u-mgb-auto { margin-bottom: auto !important;}
.u-mgb0 { margin-bottom: 0 !important;}
.u-mgb4 { margin-bottom: 4px !important;}
.u-mgb8 { margin-bottom: 8px !important;}
.u-mgb16 { margin-bottom: 16px !important;}
.u-mgb24 { margin-bottom: 24px !important;}
.u-mgb32 { margin-bottom: 32px !important;}
.u-mgb40 { margin-bottom: 40px !important;}
.u-mgb48 { margin-bottom: 48px !important;}
.u-mgb56 { margin-bottom: 56px !important;}
.u-mgb64 { margin-bottom: 64px !important;}
.u-mgb72 { margin-bottom: 72px !important;}
.u-mgb80 { margin-bottom: 80px !important;}
/* left */
.u-mgl-auto { margin-left: auto !important;}
.u-mgl0 { margin-left: 0 !important;}
.u-mgl4 { margin-left: 4px !important;}
.u-mgl8 { margin-left: 8px !important;}
.u-mgl16 { margin-left: 16px !important;}
.u-mgl24 { margin-left: 24px !important;}
.u-mgl32 { margin-left: 32px !important;}
.u-mgl40 { margin-left: 40px !important;}
.u-mgl48 { margin-left: 48px !important;}
.u-mgl56 { margin-left: 56px !important;}
.u-mgl64 { margin-left: 64px !important;}
.u-mgl72 { margin-left: 72px !important;}
.u-mgl80 { margin-left: 80px !important;}
/* X axis */
.u-mgx-auto { margin-right: auto !important; margin-left: auto !important;}
.u-mgx0 { margin-right: 0 !important; margin-left: 0 !important;}
.u-mgx4 { margin-right: 4px !important; margin-left: 4px !important;}
.u-mgx8 { margin-right: 8px !important; margin-left: 8px !important;}
.u-mgx16 { margin-right: 16px !important; margin-left: 16px !important;}
.u-mgx24 { margin-right: 24px !important; margin-left: 24px !important;}
.u-mgx32 { margin-right: 32px !important; margin-left: 32px !important;}
.u-mgx40 { margin-right: 40px !important; margin-left: 40px !important;}
.u-mgx48 { margin-right: 48px !important; margin-left: 48px !important;}
.u-mgx56 { margin-right: 56px !important; margin-left: 56px !important;}
.u-mgx64 { margin-right: 64px !important; margin-left: 64px !important;}
.u-mgx72 { margin-right: 72px !important; margin-left: 72px !important;}
.u-mgx80 { margin-right: 80px !important; margin-left: 80px !important;}
/* Y axis */
.u-mgy-auto { margin-top: auto !important; margin-bottom: auto !important;}
.u-mgy0 { margin-top: 0 !important; margin-bottom: 0 !important;}
.u-mgy4 { margin-top: 4px !important; margin-bottom: 4px !important;}
.u-mgy8 { margin-top: 8px !important; margin-bottom: 8px !important;}
.u-mgy16 { margin-top: 16px !important; margin-bottom: 16px !important;}
.u-mgy24 { margin-top: 24px !important; margin-bottom: 24px !important;}
.u-mgy32 { margin-top: 32px !important; margin-bottom: 32px !important;}
.u-mgy40 { margin-top: 40px !important; margin-bottom: 40px !important;}
.u-mgy48 { margin-top: 48px !important; margin-bottom: 48px !important;}
.u-mgy56 { margin-top: 56px !important; margin-bottom: 56px !important;}
.u-mgy64 { margin-top: 64px !important; margin-bottom: 64px !important;}
.u-mgy72 { margin-top: 72px !important; margin-bottom: 72px !important;}
.u-mgy80 { margin-top: 80px !important; margin-bottom: 80px !important;}
/* padding +++++++++++++++++++ */
.u-pd-auto { padding: auto !important;}
.u-pd0 { padding: 0 !important;}
.u-pd4 { padding: 4px !important;}
.u-pd8 { padding: 8px !important;}
.u-pd16 { padding: 16px !important;}
.u-pd24 { padding: 24px !important;}
.u-pd32 { padding: 32px !important;}
.u-pd40 { padding: 40px !important;}
.u-pd48 { padding: 48px !important;}
.u-pd56 { padding: 56px !important;}
.u-pd64 { padding: 64px !important;}
.u-pd72 { padding: 72px !important;}
.u-pd80 { padding: 80px !important;}
/* top */
.u-pdt-auto { padding-top: auto !important;}
.u-pdt0 { padding-top: 0 !important;}
.u-pdt4 { padding-top: 4px !important;}
.u-pdt8 { padding-top: 8px !important;}
.u-pdt16 { padding-top: 16px !important;}
.u-pdt24 { padding-top: 24px !important;}
.u-pdt32 { padding-top: 32px !important;}
.u-pdt40 { padding-top: 40px !important;}
.u-pdt48 { padding-top: 48px !important;}
.u-pdt56 { padding-top: 56px !important;}
.u-pdt64 { padding-top: 64px !important;}
.u-pdt72 { padding-top: 72px !important;}
.u-pdt80 { padding-top: 80px !important;}
/* right */
.u-pdr-auto { padding-right: auto !important;}
.u-pdr0 { padding-right: 0 !important;}
.u-pdr4 { padding-right: 4px !important;}
.u-pdr8 { padding-right: 8px !important;}
.u-pdr16 { padding-right: 16px !important;}
.u-pdr24 { padding-right: 24px !important;}
.u-pdr32 { padding-right: 32px !important;}
.u-pdr40 { padding-right: 40px !important;}
.u-pdr48 { padding-right: 48px !important;}
.u-pdr56 { padding-right: 56px !important;}
.u-pdr64 { padding-right: 64px !important;}
.u-pdr72 { padding-right: 72px !important;}
.u-pdr80 { padding-right: 80px !important;}
/* bottom */
.u-pdb-auto { padding-bottom: auto !important;}
.u-pdb0 { padding-bottom: 0 !important;}
.u-pdb4 { padding-bottom: 4px !important;}
.u-pdb8 { padding-bottom: 8px !important;}
.u-pdb16 { padding-bottom: 16px !important;}
.u-pdb24 { padding-bottom: 24px !important;}
.u-pdb32 { padding-bottom: 32px !important;}
.u-pdb40 { padding-bottom: 40px !important;}
.u-pdb48 { padding-bottom: 48px !important;}
.u-pdb56 { padding-bottom: 56px !important;}
.u-pdb64 { padding-bottom: 64px !important;}
.u-pdb72 { padding-bottom: 72px !important;}
.u-pdb80 { padding-bottom: 80px !important;}
/* left */
.u-pdl-auto { padding-left: auto !important;}
.u-pdl0 { padding-left: 0 !important;}
.u-pdl4 { padding-left: 4px !important;}
.u-pdl8 { padding-left: 8px !important;}
.u-pdl16 { padding-left: 16px !important;}
.u-pdl24 { padding-left: 24px !important;}
.u-pdl32 { padding-left: 32px !important;}
.u-pdl40 { padding-left: 40px !important;}
.u-pdl48 { padding-left: 48px !important;}
.u-pdl56 { padding-left: 56px !important;}
.u-pdl64 { padding-left: 64px !important;}
.u-pdl72 { padding-left: 72px !important;}
.u-pdl80 { padding-left: 80px !important;}
/* X axis */
.u-pdx-auto { padding-right: auto !important; padding-left: auto !important;}
.u-pdx0 { padding-right: 0 !important; padding-left: 0 !important;}
.u-pdx4 { padding-right: 4px !important; padding-left: 4px !important;}
.u-pdx8 { padding-right: 8px !important; padding-left: 8px !important;}
.u-pdx16 { padding-right: 16px !important; padding-left: 16px !important;}
.u-pdx24 { padding-right: 24px !important; padding-left: 24px !important;}
.u-pdx32 { padding-right: 32px !important; padding-left: 32px !important;}
.u-pdx40 { padding-right: 40px !important; padding-left: 40px !important;}
.u-pdx48 { padding-right: 48px !important; padding-left: 48px !important;}
.u-pdx56 { padding-right: 56px !important; padding-left: 56px !important;}
.u-pdx64 { padding-right: 64px !important; padding-left: 64px !important;}
.u-pdx72 { padding-right: 72px !important; padding-left: 72px !important;}
.u-pdx80 { padding-right: 80px !important; padding-left: 80px !important;}
/* Y axis */
.u-pdy-auto { padding-top: auto !important; padding-bottom: auto !important;}
.u-pdy0 { padding-top: 0 !important; padding-bottom: 0 !important;}
.u-pdy4 { padding-top: 4px !important; padding-bottom: 4px !important;}
.u-pdy8 { padding-top: 8px !important; padding-bottom: 8px !important;}
.u-pdy16 { padding-top: 16px !important; padding-bottom: 16px !important;}
.u-pdy24 { padding-top: 24px !important; padding-bottom: 24px !important;}
.u-pdy32 { padding-top: 32px !important; padding-bottom: 32px !important;}
.u-pdy40 { padding-top: 40px !important; padding-bottom: 40px !important;}
.u-pdy48 { padding-top: 48px !important; padding-bottom: 48px !important;}
.u-pdy56 { padding-top: 56px !important; padding-bottom: 56px !important;}
.u-pdy64 { padding-top: 64px !important; padding-bottom: 64px !important;}
.u-pdy72 { padding-top: 72px !important; padding-bottom: 72px !important;}
.u-pdy80 { padding-top: 80px !important; padding-bottom: 80px !important;}

/* width +++++++++++++++++++ */
/* pixel */
.u-w808 { width: 808px !important;}
/* percent */
.u-w5p { width: 5% !important;}
.u-w10p { width: 10% !important;}
.u-w15p { width: 15% !important;}
.u-w20p { width: 20% !important;}
.u-w25p { width: 25% !important;}
.u-w30p { width: 30% !important;}
.u-w35p { width: 35% !important;}
.u-w40p { width: 40% !important;}
.u-w45p { width: 45% !important;}
.u-w50p { width: 50% !important;}
.u-w55p { width: 55% !important;}
.u-w60p { width: 60% !important;}
.u-w65p { width: 65% !important;}
.u-w70p { width: 70% !important;}
.u-w75p { width: 75% !important;}
.u-w80p { width: 80% !important;}
.u-w85p { width: 85% !important;}
.u-w90p { width: 90% !important;}
.u-w95p { width: 95% !important;}
.u-w100p { width: 100% !important;}

/* text +++++++++++++++++++ */
/* font size */
.u-txt-xs { font-size: 1.2rem !important;}
.u-txt-sm { font-size: 1.3rem !important;}
.u-txt-md { font-size: 1.4rem !important;}
.u-txt-lg { font-size: 1.6rem !important;}
.u-txt-xl { font-size: 1.8rem !important;}
.u-txt-xxl { font-size: 2rem !important;}
.u-txt-3xl { font-size: 2.2rem !important;}
.u-txt-4xl { font-size: 2.4rem !important;}
/* weight */
.u-txt-normal { font-weight: normal !important;}
.u-txt-bold { font-weight: bold !important;}
/* text align */
.u-txt-left { text-align: left !important;}
.u-txt-center { text-align: center !important;}
.u-txt-right { text-align: right !important;}
/* text align */
.u-valign-top { vertical-align: top !important;}
.u-valign-middle { vertical-align: middle !important;}
.u-valign-bottom { vertical-align: bottom !important;}
.u-valign-baseline { vertical-align: baseline !important;}
/* various */
.u-txt-narrow {
  display: inline-block;
  font-size: 0.9285em;
  transform: scale(1, 1.0769);
}
.u-txt-spacing2 { letter-spacing: 2px;}
.u-txt-spacing1 { letter-spacing: 1px;}
.u-txt-spacing0 { letter-spacing: normal;}
.u-txt-spacing1n { letter-spacing: -1px;}
.u-txt-spacing2n { letter-spacing: -2px;}
.u-txt-nowrap { white-space: nowrap;}
.u-txt-ellipsis {
  overflow: hidden;
  width: 100%;
  max-width: 100%;
  white-space: nowrap;
  text-overflow: ellipsis;
}

/*color-------------*/
/* color */
.u-color-default { color: #313942 !important;}
.u-color-primary { color: #005bac !important;}
.u-color-gray { color: #666 !important;}
.u-color-lookme { color: #ff3300 !important;}
.u-color-inherit { color: inherit !important;}

.u-col-red {
  color: #f6717b;
}
.u-col-blue {
  color: #005bac;
}
.u-color-blue-light {
  color: #10a6d1;;
}
.u-col-black {
  color: #333;
}
.u-col-dark-blue {
  color: #2c3248;
}


/* display +++++++++++++++++++ */
.u-display-b { display: block !important;}
.u-display-i { display: inline !important;}
.u-display-ib { display: inline-block !important;}



/* flex ---------- */
.u-flex {
  display: flex;
}
.u-between {
  justify-content: space-between;
}
.u-self-center {
  align-self: center;
}



/* float +++++++++++++++++++ */
.u-float-l { float: left;}
.u-float-r { float: right;}
.u-clear { clear: both;}
.u-clear-l { clear: left;}
.u-clear-r { clear: right;}
.u-clearfix::after {
  display: block;
  clear: both;
  content: "";
}

/* overflow +++++++++++++++++++ */
.u-overflow-hidden { overflow: hidden;}


/* box +++++++++++++++++++ */
.u-boxshadow {
  box-shadow: 0 0 6px 3px rgba(0, 0, 0, 0.1);
}

.u-bgc-glay {
  background-color: #f1f4f7;
}
.u-bgc-blue {
  background-color: #e7f1f6;
}
.u-bgc-red {
  background-color: #f9e6e9;
}

/* border +++++++++++++++++++ */
.u-border-top2-gray {
  border-top: 2px solid #ccc;
}
.u-border-bottom1-gray {
  border-bottom: 1px solid #ccc;
}


/* offset anchor point (for fixed header) +++++++++++++++++++ */
.u-scrolloffset::before {
  display: block;
  visibility: hidden;
  margin-top: -48px;
  padding-top: 48px;
  content: '';
}


/* side
++++++++++++++++++++++++++++++++++++++++ */
/* login ++++++++++++++++++++ */
.side-login {
  position: relative;
  overflow: hidden;
  border-radius: 4px;
  background: #fff;
  box-shadow: 0 0 6px 3px rgba(0, 0, 0, 0.1);
}
.side-login:not(:first-child) {
  margin-top: 20px;
}
/* open account */
.side-login > .entrance {
  padding: 28px 28px 20px;
  border-top: 2px solid #1a3553;
  border-left: 2px solid #1a3553;
  background-color: #032142;
  background: linear-gradient(to bottom, #032142 0%, #083f7b 60%, #083f7b 60%);
}
.side-login > .entrance > li:not(:first-child) {
  margin-top: 2px;
}
.side-login > .entrance .btn-entry {
  display: block;
  overflow: hidden;
  height: 44px;
  margin-bottom: 12px;
  border-radius: 50px;
  border: 0;
  border-bottom: 2px solid #690804;
  background: linear-gradient(#c31208 0%, #af0e06 100%);
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  line-height: 44px;
  text-align: center;
  text-decoration: none;

  cursor: pointer;
  -ms-touch-action: manipulation;
      touch-action: manipulation;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.side-login > .entrance .btn-entry:hover {
  color: #fff;
  background: linear-gradient(#ff1600 0%, #ac0100 100%);
}
.side-login > .entrance a:not(.btn-entry) {
  display: block;
  margin: 0 7px;
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  text-decoration: none;
}
.side-login > .entrance a:not(.btn-entry):hover {
  text-decoration: underline;
}
.side-login > .entrance a:not(.btn-entry)::before {
  box-sizing: border-box;
  display: inline-block;
  width: 8px;
  height: 8px;
  margin-top: -3px;
  margin-right: 8px;
  content: '';
  transform: rotate(45deg);
  vertical-align: middle;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}
/* login form */
.side-login .field {
  padding: 24px 20px 28px;
}
.side-login .field > .ttl {
  margin-bottom: 10px;
  font-size: 16px;
  font-weight: bold;
}
.side-login .field > dd {
  margin-top: 8px;
  text-align: center;
}
.side-login .field input[type="text"],
.side-login .field input[type="password"] {
  display: block;
  width: 100%;
  height: 34px;
  padding-top: 2px;
  border: 2px solid #e9ecf2;
  border-radius: 4px;
  font-size: 14px;
  line-height: 1;
  text-align: left;
}
.side-login .field input[type="password"] {
  font-family: verdana;
}
.side-login .field input.is-focus {
  border-color: #32aed7;
}
.side-login .field input::placeholder {
  color: inherit;
  font-family: 'Roboto', 'YakuHanJP', 'Subset-NotoSansJP', Meiryo, sans-serif;
  opacity: 0.5;
}
.side-login .field input::-webkit-input-placeholder {
  color: inherit;
  font-family: 'Roboto', 'YakuHanJP', 'Subset-NotoSansJP', Meiryo, sans-serif;
  opacity: 0.5;
}
.side-login .field input:-ms-input-placeholder {
  color: rgba(33,46,70,0.6);
  font-family: 'Roboto', 'YakuHanJP', 'Subset-NotoSansJP', Meiryo, sans-serif;
}
.side-login .field a:not([class*=btn-]):not([class*=link-]) {
  font-size: 12px;
  text-decoration: none;
}
.side-login .field a:not([class*=btn-]):not([class*=link-]):hover {
  text-decoration: underline;
}
.side-login .field a:not([class*=btn-]):not([class*=link-])::before {
  box-sizing: border-box;
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-top: -3px;
  margin-right: 8px;
  content: '';
  transform: rotate(45deg);
  vertical-align: middle;
  border-top: 1px solid #313942;
  border-right: 1px solid #313942;
  transition: border-color 0.2s ease-in-out;
}
.side-login .field a:hover::before {
  border-color: #2599e3;
}
.side-login .field .btn-login,
.side-login .field .btn-logout {
  position:relative;
  display: block;
  overflow: hidden;
  width: calc(100% - 24px);
  height: 36px;
  margin: 24px auto 0;
  border: 0;
  border-radius: 50px;
  border-bottom: 2px solid #002f60;
  background: linear-gradient(#0069b8 0%, #004fa1 100%);
  color: #fff;
  font-size: 15px;
  font-weight: bold;
  line-height: 36px;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
}
.side-login .field .btn-login:hover,
.side-login .field .btn-logout:hover {
  color: #fff;
  background: linear-gradient(#009be4 0%, #0053a5 100%);
}
.side-login .field .btn-logout {
  position: relative;
  margin-top: 0;
  padding-left: 22px;
}
.side-login .field .btn-logout::before {
  position: absolute;
  top: 50%;
  left: 38px;
  display: block;
  width: 14px;
  height: 16px;
  margin-top: -6px;
  content: '';
  background: url(/assets/images/icon-logout.png) no-repeat 0 0;
  background-size: 100%;
}
.side-login .field .txt-alert,
.side-login .field .link-alert {
  display: block;
  padding: 8px 24px;
  background-color: #ffeec5;
  color: inherit;
  font-size: 13px;
  line-height: 1.4;
  text-align: left;
  text-decoration: none;
}
.side-login .field .link-alert {
  text-decoration: underline;
}
.side-login .field .link-alert:hover {
  color: #2599e3;
  text-decoration: underline;
}

/* rate ++++++++++++++++++++ */
.side-rate {
  overflow: hidden;
  border-radius: 4px;
  background: #f9f9f9;
  border: 1px solid #fff;
  box-shadow: 0 0 6px 3px rgba(0, 0, 0, 0.1);
}
.side-rate:not(:first-child) {
  margin-top: 20px;
}
.side-rate table {
  width: 100%;
}
.side-rate tr {
  border-bottom: 1px solid #e5e5e6;
}
.side-rate th,
.side-rate td {
  padding: 12px 4px;
  font-size: 14px;
  font-weight: normal;
  font-size: 12px;
  text-align: center;
}
.side-rate thead th {
  padding-top: 16px;
  padding-bottom: 8px;
}
.side-rate tbody th:first-child {
  padding-left: 11px;
  text-align: left;
}
.side-rate td {
  font-size: 13px;
}
.side-rate td:last-child {
  padding-right: 11px;
}
.side-rate thead th:not(:first-child):not(:last-child) {
  width: auto;
}
.side-rate thead th:first-child {
  width: 76px;
}
.side-rate thead th:last-child {
  width: 44px;
}
.side-rate table p {
  margin: 0;
  padding: 0;
}
.side-rate .btn-more {
  display: block;
  overflow: hidden;
  width: 148px;
  height: 26px;
  margin: 12px auto 19px;
  padding: 0 12px;
  border: 0;
  border-radius: 50px;
  border-bottom: 2px solid #005da1;
  background-color: #0074c9;
  color: #fff;
  font-size: 12px;
  font-weight: bold;
  line-height: 26px;
  text-align: center;
  text-decoration: none;
  vertical-align: baseline;
}
.side-rate .btn-more:hover {
  background: #04a0e1;
}

/* bank ++++++++++++++++++++ */
.side-bank {
  overflow: hidden;
  padding: 16px;
  border-radius: 4px;
  background: #fff;
  box-shadow: 0 0 6px 3px rgba(0, 0, 0, 0.1);
}
.side-bank:not(:first-child) {
  margin-top: 20px;
}
.side-bank > .ttl {
  font-weight: bold;
}
.side-bank > .note {
  font-size: 1.2rem;
}
.side-bank .sub {
  margin-top: 16px;
  margin-bottom: 4px;
  font-size: 1.2rem;
  font-weight: bold;
  letter-spacing: -0.4px;
}
/* button */
.side-bank .btn-entry {
  display: block;
  width: 100%;
  min-height: 34px;
  padding: 0 8px;
  border-radius: 4px;
  border: 0;
  border-bottom: 2px solid transparent;
  background: transparent;
  color: #fff;
  font-size: 1.2rem;
  line-height: 34px;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  -ms-touch-action: manipulation;
      touch-action: manipulation;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.side-bank .btn-entry.bank {
  border-bottom-color: #690804;
  background: linear-gradient(#c31208 0%, #af0e06 100%);
}
.side-bank .btn-entry.bank:hover {
  background: linear-gradient(#ff1600 0%, #ac0100 100%);
}
.side-bank .btn-entry.cooperation {
  border-bottom-color: #002f60;
  background: linear-gradient(#0069b8 0%, #004fa1 100%);
}
.side-bank .btn-entry.cooperation:hover {
  background: linear-gradient(#009be4 0%, #0053a5 100%);
}

/* nav ++++++++++++++++++++ */
.side-nav {
  overflow: hidden;
  padding: 0;
  border-radius: 4px;
  background: #fff;
  box-shadow: 0 0 6px 3px rgba(0, 0, 0, 0.1);
}
.side-nav:not(:first-child) {
  margin-top: 20px;
}

.side-nav > li {
  padding: 4px 20px;
}
.side-nav > li:first-child {
  margin-top: 12px;
}
.side-nav > li:last-child {
  margin-bottom: 12px;
}

.side-nav > li > a {
  display: block;
  text-decoration: none;
}
.side-nav > li > a:hover {
  text-decoration: underline;
}
.side-nav > li > a:before {
  box-sizing: border-box;
  display: inline-block;
  width: 8px;
  height: 8px;
  margin-top: -3px;
  margin-right: 8px;
  content: '';
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: middle;
  border-top: 2px solid #0088de;
  border-right: 2px solid #0088de;
}

.side-nav > dt {
  padding: 20px;
  font-size: 16px;
  font-weight: bold;
}
.side-nav > .ttl {
  padding: 0;
}
.side-nav > .ttl > span,
.side-nav > .ttl > a {
  display: block;
  padding: 20px;
  text-decoration: none;
}
.side-nav > .ttl > a:hover {
  opacity: 0.85;
}
.side-nav > .invert {
  background-color: #09488d;
  color: #fff;
}
.side-nav > .ttl.invert > a {
  color: inherit;
}
.side-nav > dd {
  border-top: 1px solid #e5e5e5;
}
.side-nav > dd > a {
  display: block;
  padding: 12px 16px;
  text-decoration: none;
}
.side-nav > dd > a:hover {
  text-decoration: none;
  background: #edf2f2;
}
.side-nav > dd > a:before {
  box-sizing: border-box;
  display: inline-block;
  width: 8px;
  height: 8px;
  margin-top: -3px;
  margin-right: 8px;
  content: '';
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: middle;
  border-top: 2px solid #0088de;
  border-right: 2px solid #0088de;
}

/* banner ++++++++++++++++++++ */
.side-bnr:not(:first-child) {
  margin-top: 20px;
}
.side-bnr.sns {
  margin-top: 32px;
  margin-bottom: 34px;
}
.side-bnr > li {
  list-style: none;
  background-color: #fff;
}
.side-bnr > li:not(:first-child) {
  margin-top: 16px;
}
.side-bnr > li > a:hover {
  opacity: 0.8;
}
.side-bnr img {
  width: 100%;
  height: auto;
  vertical-align: top;
}

/* caution ++++++++++++++++++++ */
.side-caution:not(:first-child) {
  margin-top: 20px;
}
.side-caution > li:not(:first-child) {
  margin-top: 16px;
}
.side-caution > li > a {
  position: relative;
  display: block;
  width: 100%;
  padding: 16px 16px 16px 32px;
  border: 3px solid #d6d7d9;
  background: #fff;
  text-decoration: none;
}
.side-caution > li > a:hover {
  text-decoration: underline;
}
.side-caution > li > a::before {
  box-sizing: border-box;
  position: absolute;
  top: 50%;
  left: 16px;
  transform: rotate(45deg);
  display: block;
  width: 6px;
  height: 6px;
  margin-top: -2px;
  margin-right: 8px;
  border-top: 2px solid #0088de;
  border-right: 2px solid #0088de;
  vertical-align: middle;
  content: "";
}

/* links ++++++++++++++++++++ */
.side-links {
  line-height: 1.3;
}
.side-links:not(:first-child) {
  margin-top: 20px;
}
.side-links > li {
  margin-top: 12px;
}

/* side menu (legacy design) ++++++++++++++++++++ */
.side-menu {
  background-color: #f3f3f4;
  padding: 4px;
}

/* koza */
.side-menu > .btn-koza {
  background: linear-gradient(#fff 0%, #e9eff6 100%);
  border: 1px solid #c6cdd7;
  height: 80px;
}
.side-menu > .btn-koza > a {
  display: block;
  overflow: hidden;
  width: 196px;
  height: 52px;
  margin: 16px auto;
  background:url(/common/images/btn_koza_off.png?ver=20180623) no-repeat;
  text-indent: 101%;
  white-space: nowrap;
}
.side-menu > .btn-koza > a:hover {
  opacity: 0.85;
}

/* category ttl */
.side-menu > .ttl {
  height: 40px;
  border-radius: 4px 4px 0 0;
  background-color: #1e335c;
  color: #fff;
  font-size: 15px;
  font-weight: bold;
}
.side-menu > .ttl:not(:first-child) {
  margin-top: 8px;
}
.side-menu > .ttl a {
  display: block;
  padding: 12px;
  color: #fff;
  text-decoration: none;
  line-height: 16px;
}
.side-menu > .ttl a:hover {
  opacity: 0.85;
}

/* nav */
.side-menu > .nav {
  padding: 0;
  border: 1px solid #c7ccd6;
  background-color: #fff;
  font-size: 14px;
}
.side-menu > .nav li {
  list-style: none;
}
.side-menu > .nav > li:not(:first-child) {
  border-top: 1px dotted #8E99AD;
}
.side-menu > .nav a {
  position: relative;
  display: block;
  padding: 10px 2px 10px 25px;
  color: #0F3D99;
  text-decoration: none;
}
.side-menu > .nav a:hover {
  text-decoration: underline;
}
.side-menu > .nav a::before {
  position: absolute;
  top: 20px;
  left: 14px;
  display: block;
  border: 3px solid transparent;
  border-left: 5px solid #1e335c;
  content: "";
}
.side-menu > .nav a.on {
  background-color: #DDE9F6;
  font-weight: bold;
}
.side-menu > .nav > li > a.on {
  box-shadow: 0 0 0 4px #fff inset;
}
.side-menu > .nav ul {
  padding: 4px 0;
}
.side-menu > .nav > li li a {
  padding: 4px 2px 4px 32px;
}
.side-menu > .nav > li li a::before {
  top: 14px;
  left: 22px;
}

/* side sys status */
.side-sys {
  background-color: #f3f3f4;
  padding: 4px;
}
.side-sys:not(:first-child) {
  margin-top: 20px;
}
.side-sys > .sys_status {
  position:relative;
  padding: 2px;
  border: 1px solid #cfcfcf;
  line-height: 1.5;
}
.side-sys > .sys_status > .inner {
  height:78px;
  padding: 1px;
  background: #f5f5f5;
}
.side-sys > .sys_status .hoverlink a {
  position:absolute;
  left:0;
  top:0;
  z-index: 2;
  overflow: hidden;
  display: block;
  width: 100%;
  height: 100%;
  text-indent: -9999px;
}
.side-sys > .sys_status .hoverlink:hover a {
  background-color: #09f;
  opacity:0.1;
}
.side-sys > .sys_status dt {
  height: 32px;
  background: url(/common/images/ttl_sys_status.png) 8px 10px no-repeat;
  text-indent: -9999px!important;
}
.side-sys > .sys_status .normal {
  padding: 8px 0 6px;
  border: 1px solid #00b300;
  background: #DCFBDC;
  color:#00b300;
  font-weight:bold;
  text-align: center;
}
.side-sys > .sys_status .normal span {
  font-size: 14px;
  vertical-align: baseline;
}
.side-sys > .sys_status .failure {
  min-height: 18px;
  padding: 8px 0 6px;
  border: 1px solid #ff0000;
  background: url(/common/images/icon_failure.png) 27% 8px #fde3e3 no-repeat;
  color: #ff0000;
  font-weight: bold;
  text-align: center;
}
.side-sys > .sys_status .failure span {
  padding-left: 22px;
  font-size: 14px;
  vertical-align: baseline;
}
.side-sys > .sys_status .verify {
  padding: 8px 0 6px;
  border: 1px solid #cc9900;
  background: #faf0dc;
  color: #cc9900;
  font-weight: bold;
  text-align: center;
}
.side-sys > .sys_status .verify span {
  font-size: 14px;
  vertical-align: baseline;
}
.side-sys > .sys_status .list {
  margin: 4px 8px 8px 8px;
  padding-left: 12px;
  background: url(/common/images/arrow_image.png) -12px -9px no-repeat;
  color: #1f51b3;
}


/* security keyboard
++++++++++++++++++++++++++++++++++++++++ */
.sk-clearfix:after {
  content: "";
  display: block;
  clear: both;
}
.sk-bg-overlay {
  background: rgba(33, 46, 70, 0.4);
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  display: none;
}
.security-keybord * {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
}
.security-keybord {
  display: none;
  z-index: 110;
  position: absolute;
  left: -520px;
  top: 156px;
  user-select: none;
  -moz-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none; /* IE10 later */
  box-shadow: 0 4px 8px 0 rgba(0, 0, 2, 0.4);
  border-radius: 8px;
  background: rgba(238, 238, 240, 1);
  font-size: 18px;
}
.sk-header {
  position: relative;
  padding: 0 16px;
  height: 32px;
  line-height: 32px;
  background-color: rgba(230, 230, 234, 1);
  border-radius: 8px 8px 0 0;
  font-size: 14px;
}
.sk-header-close {
  position: absolute;
  display: block;
  top: 6px;
  right: 16px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: url(/assets/images/sk-close.svg) no-repeat;
  cursor: pointer;
}
.sk-header-title {
  font-size: 13px;
  color: rgba(0, 0, 60, 0.3)
}
.sk-header-close:hover {
}
.sk-body {
  float: left;
  padding: 16px 8px 16px 16px;
}
.sk-body div span:first-child {
  margin-left: 0;
}
.sk-body div span {
  display: block;
  float: left;
  width: 32px;
  height: 32px;
  margin: 0;
  background: rgba(50, 174, 215, 1);
  color: rgba(255,255,255,0.88);
  text-align: center;
  display: table-cell;
  vertical-align: middle;
  line-height: 32px;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  border-right: 1px solid rgba(0, 0, 10, 0.1);
  border-bottom: 1px solid rgba(0, 0, 10, 0.1);
  border-left: 1px solid rgba(255, 255, 255, 0.2);
}
.sk-body div span:hover {
  background: rgba(255, 255, 255, 1);
  color: rgba(50, 174, 215, 1);
  cursor: pointer;
}
.sk-body div span:active {
  background: rgba(35, 124, 153, 1);
  color: rgba(255, 255, 255, 1);
}
.sk-extra {
  float: left;
  padding: 16px 16px 16px 0;
  max-width: 120px;
  text-align: center;
  font-size: 14px;
}
.sk-extra span {
  display: block;
  padding: 0 8px;
  height: 32px;
  line-height: 32px;
  color: #fff;  
  border: 1px solid rgba(50, 174, 215, 0.4);
  cursor: pointer;
  border-radius: 2px;
}
.sk-extra span:nth-child(1) {
  border-bottom: 0;
  border-radius: 2px 2px 0 0;
}
.sk-extra span:nth-child(2) {
  border-radius: 0 0 2px 2px;
}
.sk-extra span:nth-child(1),
.sk-extra span:nth-child(2) {
  background: rgba(255, 255, 255, 0.6);
  color: rgba(50, 174, 215, 1);
}
.sk-extra span:nth-child(1):hover,
.sk-extra span:nth-child(2):hover,
.sk-footer span:hover {
  background: rgba(50, 174, 215, 0.1);
}
.sk-extra span:nth-child(1):active,
.sk-extra span:nth-child(2):active,
.sk-footer span:active {
  background: rgba(35, 124, 153, 1);
  color: rgba(255, 255, 255, 1);
}
.sk-extra span:nth-child(3) {
  margin-top: 32px;
  background: rgba(50, 174, 215, 1);
}
.sk-extra span:nth-child(3):hover {
  background: rgba(255, 255, 255, 1);
  color: rgb(50, 174, 215);
  cursor: pointer;
}
.sk-extra span:nth-child(3):active {
  background: rgba(35, 124, 153, 1);
  color: rgba(255, 255, 255, 1);
}
.sk-footer {
  clear: both;
  padding: 0 16px 16px 16px;
  overflow: auto;
  font-size: 14px;
  color: rgb(50, 174, 215);
}
.sk-footer span {
  display: table-cell;
  padding: 2px 0;
  width: 320px;
  background: #fff;
  text-align: center;
  border-radius: 2px;
  border: 1px solid rgba(50, 174, 215, 0.4);
  letter-spacing: 1px;
}
.sk-footer span:hover {
  cursor: pointer;
}
.sk-footer span:active {
  /*color: rgba(35, 124, 153, 1);*/
}




/* parts
==============================================================*/
/* module
++++++++++++++++++++++++++++++++++++++++ */
/* pagatop ++++++++++++++++++++ */
.m-pagatop {
  position: fixed;
  z-index: 10;
  bottom: 20px;
  left: 50%;
  width: 68px;
  margin-left: 472px;
}
.m-pagatop a {
  display: block;
  width: 68px;
  height: 68px;
  text-indent: -9999px;
  background: url(/assets/images/icon-pagetop.png) no-repeat 0 0;
  -webkit-background-size: 100%;
  background-size: 100%;
}
.m-pagatop a:hover {
  opacity: 0.8;
}

/*  ++++++++++++++++++++ */

/* m-btn */
.m-btn-basic {
  display: inline-block;
  overflow: hidden;
  min-width: 240px;
  padding: 12px;
  border: 0;
  border-radius: 4px;
  background: #0074c9;
  box-shadow:0px -2px 0px 0px #005da1 inset;
  color: #fff;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.333;
  text-align: center;
  text-decoration: none;
}

.m-btn-basic:hover {
  color: #fff;
  background: #04a0e1;
}

.m-btn-entry {
  display: block;
  overflow: hidden;
  height: 48px;
  border: 0;
  border-bottom: 2px solid #690804;
  border-radius: 4px;
  background: linear-gradient(#c31208 0%, #af0e06 100%);
  color: #fff;
  font-weight: bold;
  line-height: 48px;
  text-align: center;
  text-decoration: none;
}

.m-btn-entry:hover {
  color: #fff;
  background: linear-gradient(#ff1600 0%, #ac0100 100%);
}

.m-btn-login {
  display: block;
  overflow: hidden;
  width: 100%;
  height: 36px;
  border: 0;
  border-bottom: 2px solid #002f60;
  border-radius: 50px;
  background: linear-gradient(#0069b8 0%, #004fa1 100%);
  color: #fff;
  font-size: 15px;
  font-weight: bold;
  line-height: 36px;
  text-align: center;
  text-decoration: none;
}

.m-btn-login:hover {
  color: #fff;
  background: linear-gradient(#009be4 0%, #0053a5 100%);
}


/* title */
.m-ttl-main {
  font-size: 36px;
  font-weight: normal;
  line-height: 1.2;
  margin-bottom: 16px;
  color: #005bac;
}

.m-ttl-page {
  font-size: 40px;
  font-weight: normal;
  line-height: 1.2;
  margin-bottom: 16px;
  color: #005bac;
}

.m-ttl-guide {
  font-size: 28px;
  font-weight: normal;
  line-height: 1.2;
  color: #005bac;
}

.m-ttl-guide strong {
  font-size: 40px;
}

.m-ttl-section {
  font-size: 32px;
  font-weight: normal;
  line-height: 1.2;
  margin-bottom: 16px;
}

.m-ttl-section span {
  font-size: 20px;
}

.m-ttl-second {
  font-size: 22px;
  font-weight: bold;
  margin-bottom: 16px;
  color: #2c3248;
}

.m-ttl-second a {
  text-decoration: none;
  color: #2c3248;
}

.m-ttl-second a:hover {
  text-decoration: underline;
}

.m-ttl-second a:after {
  box-sizing: border-box;
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-top: -4px;
  margin-left: 4px;
  content: '';
  transform: rotate(45deg);
  vertical-align: middle;
  border-top: 2px solid #2499e3;
  border-right: 2px solid #2499e3;
}

.m-type-tag {
  letter-spacing: -0.4em;
}

.m-type-tag li {
  display: inline-block;
  min-width: 64px;
  margin-left: 8px;
  padding: 0 10px;
  text-align: center;
  vertical-align: middle;
  letter-spacing: normal;
  color: #fff;
  background: #2c3248;
}

.m-ttl-section {
  font-size: 24px;
  margin-bottom: 16px;
  padding-bottom: 12px;
  color: #005bac;
  border-bottom: 1px solid #ccc;
}

.m-ttl-section a {
  text-decoration: none;
  color: #005bac;
}

.m-ttl-section a:hover {
  text-decoration: underline;
}

.m-ttl-section .icon {
  transform: translateY(-3px);
  display: inline-block;
  margin-right: 8px;
  line-height: 0;
  vertical-align: middle;
}

.m-ttl-section a:after {
  box-sizing: border-box;
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-top: -4px;
  margin-left: 4px;
  content: '';
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: middle;
  border-top: 2px solid #2499e3;
  border-right: 2px solid #2499e3;
}

.m-ttl-section-wrap {
  position: relative;
  display: table;
  width: 100%;
  margin-bottom: 16px;
  padding-bottom: 12px;
  border-bottom: 1px solid #ccc;
}

.m-ttl-section-wrap>* {
  display: table-cell;
  vertical-align: middle;
}

.m-ttl-section-wrap .m-ttl-section {
  width: 75%;
  margin: 0;
  padding: 0;
  border-bottom: none;
}

.m-ttl-section-wrap .m-type-tag {
  width: 20%;
  text-align: right;
}

.m-ttl-sub {
  font-size: 20px;
  font-weight: normal;
  margin-bottom: 16px;
  color: #333;
}

.m-ttl-notice {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 16px;
  padding: 4px 20px;
  color: #977a59;
  border-bottom: 1px solid #e0d7c4;
  background: #f8f6e8;
}

.m-txt-description .note {
  color: #f6717b;
}

/* link */
.m-icon-arrow,
.m-icon-arrow-s {
  position: relative;
  display: inline-block;
  padding-left: 16px;
  text-decoration: none;
}
.m-icon-arrow:hover,
.m-icon-arrow-s:hover {
  text-decoration: underline;
}
.m-icon-arrow::before,
.m-icon-arrow-s::before {
  box-sizing: border-box;
  display: inline-block;
  width: 8px;
  height: 8px;
  margin-right: 8px;
  margin-left: -16px;
  vertical-align: middle;
  transform: translateY(-1px) rotate(45deg);
  border-top: 2px solid #0088de;
  border-right: 2px solid #0088de;
  content: "";
}
.m-icon-arrow-s::before {
  width: 4px;
  height: 4px;
  margin-right: 12px;
  border-top: 1px solid #313942;
  border-right: 1px solid #313942;
}

.m-icon-blank,
.m-icon-pdf {
  position: relative;
  display: inline-block;
  padding-left: 20px;
  text-decoration: none;
}

.m-icon-blank:hover,
.m-icon-pdf:hover {
  text-decoration: underline;
}

.m-icon-blank:after {
  position: absolute;
  top: 5px;
  left: 0;
  display: block;
  width: 14px;
  height: 11px;
  content: '';
  background: url(/assets/images/icon-blank.png) no-repeat 0 0;
}

.m-icon-pdf:after {
  position: absolute;
  top: 4px;
  left: 0;
  display: block;
  width: 13px;
  height: 13px;
  content: '';
  background: url(/assets/images/icon-pdf.png) no-repeat 0 0;
}

/* list */
.m-list-default,
.m-list-number {
  margin-top: 24px;
  margin-left: 1em;
}

li .m-list-default,
li .m-list-number,
li .m-list-number-br {
  margin-top: 0;
}
.m-list-default > dt {
  margin-left: -1em;
  font-weight: bold;
}
.m-list-default>li,
.m-list-default>dd {
  display: list-item;
  list-style: disc;
  text-indent: 0;
}

.m-list-default li+li,
.m-list-default dd+dd {
  margin-top: 4px;
}

.m-list-default li .m-list-default li {
  list-style: circle;
}

.m-list-number {
  margin-left: 1.7em;
}

.m-list-number>li {
  list-style: decimal;
  text-indent: 0;
}

.m-list-number-br {
  margin-top: 24px;
  counter-reset: cnt;
}

.m-list-number-br>li {
  position: relative;
  padding-left: 30px;
  list-style: none;
  text-indent: 0;
}

.m-list-number-br>li:before {
  position: absolute;
  top: 0;
  left: 0;
  content: '(' counter(cnt) ') ';
  counter-increment: cnt;
}

.m-list-note {
  margin-left: 1em;
  font-size: 1.2rem;
}

.m-list-note>li {
  line-height: 1.6;
  position: relative;
  list-style: none;
  text-align: left;
  text-indent: -1em;
}

.m-list-note>li:before {
  content: '※';
}

.m-list-note li+li {
  margin-top: 2px;
}

.m-list-note>li a {
  text-indent: 0;
}

.m-list-note.number {
  margin-left: 0;
  counter-reset: cnt;
}

.m-list-note.number>li {
  position: relative;
  padding-left: 28px;
  list-style: none;
  text-indent: 0;
}

.m-list-note.number>li:before {
  position: absolute;
  top: 0;
  left: 2px;
}

.m-list-note.number>li:after {
  position: absolute;
  top: 0;
  left: 16px;
  content: '' counter(cnt) '.';
  counter-increment: cnt;
}


.m-list-link {
  margin-top: 24px;
  letter-spacing: -0.4em;
  border-bottom: 1px solid #e5e5e5;
}

.m-list-link li {
  display: inline-block;
  width: 33.3%;
  padding: 8px 16px 8px 0;
  vertical-align: top;
  letter-spacing: normal;
  border-top: 1px solid #e5e5e5;
}

.m-list-link li:nth-child(-n+3) {
  border-top: none;
}

.m-list-link li ul li {
  display: block;
  width: 100%;
  padding: 0;
  border: none;
}

.m-list-link li dl {
  display: table;
  width: 100%;
}

.m-list-description {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  margin-top: 24px;
  border-bottom: 1px solid #e5e5e5;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}

.m-list-description dt,
.m-list-description dd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  padding: 8px 0;
  border-top: 1px solid #e5e5e5;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
}

.m-list-description dt {
  width: 20%;
}

.m-list-description dd {
  width: 80%;
  padding-left: 16px;
}

.m-list-link-box {
  margin-top: 24px;
  padding-bottom: 20px;
  letter-spacing: -0.4em;
  border-bottom: 1px solid #e5e5e5;
}

.m-list-link-box ul {
  display: inline-block;
  width: 33.3%;
  vertical-align: top;
  letter-spacing: normal;
}

.m-list-link-box>ul>li {
  padding-right: 32px;
}

.m-list-link-box li+li {
  margin-top: 8px;
}

.m-list-link-box li ul {
  display: block;
  width: 100%;
  margin-top: 4px;
  padding-left: 1em;
}

.m-list-link-box li ul li {
  margin-top: 0;
}

/* m-keyvisual */
.m-keyvisual {
  border-bottom: 4px solid #dde0e5;
}

.m-keyvisual img {
  max-width: 100%;
}

.m-keyvisual .list-img {
  overflow: hidden;
  opacity: 0;
  transition: opacity .3s linear;
}

.m-keyvisual .list-img.slick-initialized {
  opacity: 1;
}

.m-keyvisual .list-img li {
  font-size: 0;
  line-height: 0;
  position: relative;
  overflow: hidden;
}

.m-keyvisual .nav-wrap {
  width: 1080px;
  margin: 0 auto;
}

.m-keyvisual .nav {
  display: table;
  width: 808px;
}

.m-keyvisual .nav li {
  font-weight: bold;
  position: relative;
  display: table-cell;
  width: 204px;
  padding: 20px 0 12px;
  cursor: pointer;
  text-align: center;
  vertical-align: middle;
}

.m-keyvisual .nav li p {
  border-left: 1px solid #e5e5e5;
}

.m-keyvisual .nav li:first-child p {
  border-left: none;
}

.m-keyvisual .nav li.is-active {
  color: #005bac;
}

.m-keyvisual .nav li.is-active:before,
.m-keyvisual .nav li.is-active:after {
  position: absolute;
  display: block;
  content: '';
}

.m-keyvisual .nav li.is-active:before {
  top: 0;
  left: 0;
  width: 100%;
  height: 4px;
  border-radius: 0 0 4px 4px;
  background: #005bac;
}

.m-keyvisual .nav li.is-active:after {
  top: 2px;
  left: 50%;
  width: 0;
  height: 0;
  margin-left: -7px;
  border-width: 7px 7px 0 7px;
  border-style: solid;
  border-color: #005bac transparent transparent transparent;
}

/* l-section */
.l-section {
  position: relative;
  margin-top: 40px;
}

.l-section+.l-section {
  margin-top: 80px;
}

/* m-breadcrumb */
.m-breadcrumb {
  margin-bottom: 8px;
}

.m-breadcrumb ul {
  margin-left: -12px;
  letter-spacing: -0.4em;
}

.m-breadcrumb li {
  display: inline-block;
  margin-left: 12px;
  vertical-align: middle;
  letter-spacing: normal;
}

.m-breadcrumb li a {
  text-decoration: none;
}

.m-breadcrumb li a:hover {
  text-decoration: underline;
}

.m-breadcrumb li a:after {
  box-sizing: border-box;
  display: inline-block;
  width: 8px;
  height: 8px;
  margin-left: 8px;
  content: '';
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: middle;
  border-top: 2px solid #ccc;
  border-right: 2px solid #ccc;
}

/* m-page-link-wrap */
.m-page-link-wrap {
  margin-top: 24px;
  padding: 8px 28px 16px;
  letter-spacing: -0.4em;
  border-radius: 4px;
  background: #f0f4f7;
}

.m-page-link-wrap li {
  display: inline-block;
  margin-top: 8px;
  margin-left: 40px;
  vertical-align: middle;
  letter-spacing: normal;
}

.m-page-link-wrap li a {
  font-weight: bold;
  position: relative;
  display: inline-block;
  padding-left: 18px;
  text-decoration: none;
}

.m-page-link-wrap li a:after {
  box-sizing: border-box;
  position: absolute;
  top: 4px;
  left: 0;
  display: block;
  width: 10px;
  height: 10px;
  content: '';
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: middle;
  border-right: 2px solid #0088de;
  border-bottom: 2px solid #0088de;
}

.m-page-link-wrap li a:hover {
  text-decoration: none;
  color: #2599e3;
}

.m-page-link-wrap.column01 .m-list-page-link {
  margin-left: -40px;
}

.m-page-link-wrap.column03 .m-list-page-link {
  display: inline-block;
  width: 33.3%;
  padding: 10px 8px 10px 2em;
  vertical-align: top;
}

.m-page-link-wrap.column03 .m-list-page-link li {
  display: block;
  width: 100%;
  margin-left: 0;
  text-align: left;
  text-indent: -1.5em;
}

.m-page-link-wrap .m-list-page-link li+li {
  margin-top: 8px;
}

.m-page-link-wrap.column03 .m-list-page-link li a {
  padding-left: 24px;
}

.m-page-link-wrap.column03 .m-list-page-link li a:after {
  left: -12px;
  width: 8px;
  height: 8px;
}

/* m-caution-box */
.m-caution-box {
  margin-top: 24px;
  padding: 28px 30px;
  border: 3px solid #f3bec2;
  box-shadow: 0 0 6px 3px rgba(0, 0, 0, 0.01);
}

.m-caution-box ul, .m-caution-box ol {
  margin-top: 0;
}

/* m-notice-box */
.m-notice-box {
  margin-top: 24px;
  padding: 28px 30px;
  border: 3px solid #a0a0a0;
  background: #fcfcfc;
}

.m-notice-box dd+dt,
.m-info-box dd+dt {
  margin-top: 12px;
}

.m-info-box {
  margin-top: 24px;
  padding: 28px 30px;
  background: #f6f6f6;
}

.m-info-box ul,
.m-info-box ol {
  margin-top: 0;
}

.m-definition-box .ttl {
  font-weight: bold;
}

.m-definition-box .txt {
  color: #666;
}

/* m-table */
.m-table-basic {
  width: 100%;
  margin-top: 24px;
  border-spacing: 0;
  border-collapse: separate;
  border-radius: 4px;
  box-shadow: 0 0 6px 3px rgba(0, 0, 0, 0.1);
}

.m-table-basic th,
.m-table-basic td {
  line-height: 1.4;
  text-align: left;
  vertical-align: middle;
}

.m-table-basic tr:first-child>* {
  border-top: none;
}

.m-table-basic .ttl-primary {
  text-align: left;
  border-top: 1px solid #c2c7ca;
  border-right: 1px solid #c2c7ca;
  background: #e0e6e9;
}

.m-table-basic .ttl-primary:last-child {
  border-right: none;
}

.m-table-basic .ttl-secondary {
  text-align: left;
  border-top: 1px solid #ddd;
  border-right: 1px solid #ddd;
  background: #f2f3f5;
}

.m-table-basic .ttl-tertiary {
  font-weight: normal;
  text-align: left;
  border-top: 1px solid #ddd;
  border-right: 1px solid #c2c7ca;
  background: #f6f3e2;
}

.m-table-basic .txt-emphasis {
  font-weight: bold;
  color: #10a6d1;
}

.m-table-basic table {
  width: 100%;
}

.m-table-basic th .txt-sub {
  font-weight: normal;
}

.m-table-basic th .txt-small {
  font-size: 12px;
}

.m-table-basic td {
  color: #666;
  border-top: 1px solid #ddd;
  border-right: 1px solid #ddd;
}

.m-table-basic td th {
  font-weight: normal;
}

.m-table-basic td td {
  border-right: none;
}

.m-table-basic td ul,
.m-table-basic td ol {
  margin-top: 0;
}

.m-table-basic .bg-b {
  background: #f8f8f8;
}

.m-table-basic .bd-bold {
  border-top: 1px solid #c2c7ca;
}

/* m-type-detail-link */
.m-type-detail-link {
  margin-top: 36px;
}

.m-type-detail-link dt a .m-ttl-second {
  font-weight: bold;
  display: inline-block;
  vertical-align: middle;
}

.m-type-detail-link dt a:hover .m-ttl-second {
  text-decoration: underline;
}

.m-type-detail-link dd {
  margin-top: 4px;
}

/* m-topics-box */
.m-topics-box {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  margin-top: 24px;
  padding: 16px 0;
  border: 3px solid #d6d7d9;
  background: #fff;
  box-shadow: 0 6px 32px 0 rgba(0, 0, 0, 0.05);
  -ms-align-items: center;
  -webkit-align-items: center;
  align-items: center;
}

.m-topics-box dt {
  font-size: 16px;
  font-weight: bold;
  width: 164px;
  text-align: center;
  color: #234872;
}

.m-topics-box dd {
  width: 632px;
  padding: 16px 0;
  border-left: 1px solid #eaebec;
}

.m-topics-box dd ul {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  margin-top: -12px;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}

.m-topics-box dd li {
  width: 50%;
  margin-top: 12px;
  padding-left: 20px;
}

.m-topics-box dd li a {
  line-height: 1.45;
  position: relative;
  display: inline-block;
  padding-left: 16px;
  text-decoration: none;
}

.m-topics-box dd li a:hover {
  text-decoration: underline;
}

.m-topics-box dd li a:before {
  box-sizing: border-box;
  position: absolute;
  top: 6px;
  left: 0;
  display: block;
  width: 8px;
  height: 8px;
  content: '';
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  border-top: 2px solid #0088de;
  border-right: 2px solid #0088de;
}

/* m-account-open-box
.m-account-open-box {
  margin-top: 24px;
  padding: 8px;
  background: #ecedee;
}

.m-account-open-box li {
  padding: 20px 24px;
  border: 1px solid #fff;
  background: #f5f5f5;
  background: -moz-linear-gradient(top, #f5f5f5 0%, #fff 100%);
  background: -webkit-linear-gradient(top, #f5f5f5 0%, #fff 100%);
  background: linear-gradient(to bottom, #f5f5f5 0%, #fff 100%);
  box-shadow: 0 0 3px 1px rgba(0, 0, 0, 0.1);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f5f5f5', endColorstr='#ffffff', GradientType=0);
}

.m-account-open-box li p {
  font-size: 16px;
  font-weight: bold;
  color: #2c3248;
}

.m-account-open-box li .main {
  font-size: 28px;
  font-weight: bold;
  line-height: 1;
  color: #005bac;
}

.m-account-open-box li .sub {
  font-weight: normal;
}

.m-account-open-box li a {
  font-size: 16px;
  line-height: 48px;
  height: 48px;
  border-radius: 4px;
}

.m-account-open-box li .m-btn-box a {
  width: 100%;
  min-width: 100%;
}

.m-account-open-box.column01 li {
  display: table;
  width: 100%;
}

.m-account-open-box.column01 li>* {
  display: table-cell;
  vertical-align: middle;
}

.m-account-open-box li .txt-box {
  width: 544px;
  padding-right: 40px;
}

.m-account-open-box.column01 li .m-btn-box {
  width: 220px;
}

.m-account-open-box li.open-main .m-btn-box a {
  font-size: 22px;
  line-height: 64px;
  height: 64px;
}

.m-account-open-box.column02 {
  position: relative;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-justify-content: space-between;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}

.m-account-open-box.column02 li {
  width: 392px;
}

.m-account-open-box.column02 li .m-btn-box {
  width: 240px;
  margin: 8px auto 0;
}*/

/* m-tab */
.m-tab-primary {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  margin-bottom: 20px;
  border-bottom: 1px solid #c6c6c6;
}

.m-tab-primary li {
  min-width: 156px;
  margin-left: 4px;
  text-align: center;
  border: 1px solid #c6c6c6;
  border-bottom: none;
}

.m-tab-primary li:first-child {
  margin-left: 0;
}

.m-tab-primary li.is-active {
  margin-bottom: -1px;
  border-top: 4px solid #005bac;
  background: #f3f4f5;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.1) inset;
}

.m-tab-primary li.is-active a {
  padding: 7px 8px 9px;
}

.m-tab-primary li a {
  font-weight: bold;
  display: block;
  padding: 8px;
  text-decoration: none;
}

.m-tab-primary li a:hover {
  text-decoration: none;
  color: #42a7e7;
}

.m-tab-box {
  position: relative;
  margin-top: 24px;
}

.m-tab-box .m-link-txt {
  position: absolute;
  right: 0;
  bottom: 10px;
}

.m-tab-secondary {
  margin-left: -8px;
  letter-spacing: -0.4em;
}

.m-tab-secondary li {
  display: inline-block;
  margin-top: 4px;
  margin-left: 4px;
  text-align: center;
  vertical-align: middle;
  letter-spacing: normal;
  border: 1px solid #c6c6c6;
  border-radius: 4px;
}

.m-tab-secondary li a {
  font-weight: bold;
  line-height: 1;
  display: block;
  padding: 8px 20px;
  text-decoration: none;
}

.m-tab-secondary li a:hover {
  text-decoration: none;
  color: #42a7e7;
}

.m-tab-secondary li.is-active {
  background: #f3f4f5;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.1) inset;
}

.m-tab-secondary li.is-active a {
  color: #005bac;
}

.m-tab-s li {
  min-width: 0;
}

.m-tab-s li a {
  padding: 8px 4px;
}

.m-tab-s li.is-active a {
  padding: 7px 4px 9px;
}

.m-tab-ttl li {
  width: 50%;
}

/* m-paging */
.m-paging {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  margin-top: 24px;
  padding: 8px 20px;
  background: #f3f6f9;
  -ms-justify-content: space-between;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -ms-align-items: center;
  -webkit-align-items: center;
  align-items: center;
}

.m-paging li {
  width: 50%;
}

.m-paging li a {
  font-weight: bold;
  position: relative;
  display: inline-block;
  text-decoration: none;
}

.m-paging li a:hover {
  text-decoration: underline;
}

.m-paging li a:before {
  box-sizing: border-box;
  position: absolute;
  top: 50%;
  display: block;
  width: 8px;
  height: 8px;
  margin-top: -5px;
  content: '';
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.m-paging li.prev a {
  padding-left: 12px;
}

.m-paging li.prev a:before {
  left: 0;
  border-bottom: 2px solid #0088de;
  border-left: 2px solid #0088de;
}

.m-paging li.next {
  text-align: right;
}

.m-paging li.next a {
  padding-right: 12px;
  text-align: left;
}

.m-paging li.next a:before {
  right: 0;
  border-top: 2px solid #0088de;
  border-right: 2px solid #0088de;
}

/* m-panel-wrap */
.m-panel-wrap {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-justify-content: space-between;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}

.m-panel-wrap>li {
  margin-top: 20px;
  border: 8px solid #ecedee;
  background: #f5f5f5;
  background: -moz-linear-gradient(top, #f5f5f5 0%, #fff 100%);
  background: -webkit-linear-gradient(top, #f5f5f5 0%, #fff 100%);
  background: linear-gradient(to bottom, #f5f5f5 0%, #fff 100%);
  box-shadow: 0 0 3px 1px rgba(0, 0, 0, 0.1);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f5f5f5', endColorstr='#ffffff', GradientType=0);
}

.m-panel-wrap .m-panel-detail {
  border: 1px solid #fff;
}

.m-panel-wrap .ttl {
  font-size: 18px;
  font-weight: bold;
  position: relative;
  padding: 16px;
  border-bottom: 1px solid #ccc;
}

.m-panel-wrap .ttl a {
  font-size: 18px;
  position: relative;
  display: inline-block;
  padding-right: 20px;
  text-decoration: none;
}

.m-panel-wrap .ttl a:hover {
  text-decoration: underline;
}

.m-panel-wrap .ttl a:after {
  box-sizing: border-box;
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  width: 14px;
  height: 14px;
  margin-top: -9px;
  content: '';
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: middle;
  border-top: 2px solid #0088de;
  border-right: 2px solid #0088de;
}

.m-panel-wrap .tag-ttl {
  overflow: hidden;
  width: 100%;
}

.m-panel-wrap .tag-ttl .link {
  display: inline-block;
  margin-top: 4px;
}

.m-panel-wrap .tag-ttl .m-type-tag {
  float: right;
  /*width: 45%;*/
  margin-top: 2px;
  text-align: right;
}

.m-panel-wrap .txt-box {
  padding: 16px;
}

.m-panel-wrap .txt-box .img {
  text-align: center;
}

.m-panel-wrap .txt-box *+.img,
.m-panel-wrap .txt-box *+p {
  margin-top: 20px;
}

.m-panel-wrap .txt-box .img img {
  max-width: 100%;
  height: auto;
}

.m-panel-wrap .txt-box .img.full {
  margin: -16px -16px 0;
}

.m-panel-wrap .txt-box .img.full img {
  width: 100%;
}

.m-panel-wrap .txt-box .m-panel-detail {
  border: none;
}

.m-panel-wrap .txt-box .ttl {
  padding: 0;
  border: none;
}

.m-panel-wrap.column01>li {
  width: 100%;
}

.m-panel-wrap.column02>li {
  width: 396px;
}

.m-panel-wrap.column03 {
  margin-left: -20px;
  -ms-justify-content: flex-start;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
}

.m-panel-wrap.column03>li {
  width: 256px;
  margin-left: 20px;
}

.m-panel-wrap.column03 .ttl {
  font-size: 14px;
}

.m-panel-wrap.column03 .ttl a {
  font-size: 14px;
  display: block;
  width: 100%;
  padding-right: 30px;
}

/*.m-panel-wrap.column03 .ttl a:after {
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  width: 12px;
  height: 12px;
  margin-top: -6px;
  content: '';
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: middle;
  border-top: 2px solid #0088de;
  border-right: 2px solid #0088de;
}*/

.m-panel-wrap li .u-panel-link-wrap {
  position: relative;
  display: block;
  height: 100%;
  padding: 32px 32px 32px 12px;
  text-align: center;
  text-decoration: none;
}

.m-panel-wrap li .u-panel-link-wrap:after {
  box-sizing: border-box;
  position: absolute;
  top: 50%;
  right: 12px;
  display: block;
  width: 14px;
  height: 14px;
  margin-top: -6px;
  content: '';
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: middle;
  border-top: 2px solid #0088de;
  border-right: 2px solid #0088de;
}

.m-panel-wrap li .u-panel-link-wrap:hover {
  text-decoration: none;
  color: #313942;
  background: #edf2f2;
}

.m-panel-wrap .keyword {
  font-size: 20px;
  font-weight: bold;
  color: #005bac;
}

/* m-faq-list */
.m-faq-list>* {
  position: relative;
  margin-top: 24px;
  padding-left: 28px;
}

.m-faq-list .icon {
  line-height: 20px;
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  text-align: center;
  color: #fff;
  border-radius: 4px;
}

.m-faq-list .icon-q {
  background: #005bac;
}

.m-faq-list .icon-a {
  background: #23a7e9;
}

.m-faq-list dd {
  margin-top: 12px;
}

.m-faq-list dd+dt {
  margin-top: 32px;
}

.m-faq-list dd ul,
.m-faq-list dd ol {
  margin-top: 0;
}

.m-faq-list dd li {
  color: #666;
}


/* m-about-box 
.m-about-box {
  padding: 60px 0;
}

.m-about-box.study {
  padding: 40px;
  background: url(/corp/guide/fxneo/images/bg-study.jpg) no-repeat 64% bottom #f7f7f8;
  -webkit-background-size: cover;
  background-size: cover;
}

.m-about-box.study:after {
  position: absolute;
  top: -28px;
  right: 40px;
  display: block;
  width: 102px;
  height: 128px;
  content: '';
  background: url(/corp/guide/fxneo/assets-fxneo/images/icon-beginner.png) no-repeat 0 0;
  -webkit-background-size: 100%;
  background-size: 100%;
}

.m-about-box.demo:after {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 50%;
  display: block;
  width: 300%;
  height: 100%;
  margin-left: -150%;
  content: '';
  background: #f7f7f8;
}

.m-about-box.demo:before {
  position: absolute;
  top: 50px;
  right: -48px;
  display: block;
  width: 320px;
  height: 188px;
  content: '';
  background: url(/corp/guide/fxneo/assets-fxneo/images/img-pc.png) no-repeat 0 0;
  -webkit-background-size: 100%;
  background-size: 100%;
}

.m-about-box .ttl {
  font-size: 32px;
  font-weight: normal;
  line-height: 1.2;
  margin-bottom: 16px;
  color: #005bac;
}

.m-about-box .txt {
  font-size: 16px;
  font-weight: bold;
  margin-top: 8px;
}

.m-about-box .m-btn-basic {
  margin-top: 20px;
}*/

/* m-charm-box */
.m-charm-box {
  text-align: center;
}

/* 未使用
.m-charm-box .m-reason-list {
  margin-top: 32px;
}

.m-charm-box .m-reason-list li {
  width: 162px;
  height: 162px;
}

.m-charm-box .m-reason-list li p {
  font-size: 18px;
  color: #fff;
}

.m-charm-box .m-reason-list li:before {
  top: -10px;
  left: -10px;
  width: 180px;
  height: 180px;
  background: rgba(255, 238, 201, 1);
}

.m-charm-box .m-reason-list li:after {
  width: 160px;
  height: 160px;
  background: #f5b11e;
}*/

.m-charm-box .detail {
  position: relative;
  margin-top: 60px;
  padding: 60px 12px;
  background: #f7f7f8;
  background: -webkit-linear-gradient(#f7f7f8 50%, #fff 80%);
  background: -o-linear-gradient(#f7f7f8 50%, #fff 80%);
  background: linear-gradient(#f7f7f8 50%, #fff 80%);
}

.m-charm-box .detail .icon-number {
  font-size: 48px;
  line-height: 60px;
  position: absolute;
  top: -30px;
  left: 50%;
  width: 60px;
  height: 60px;
  margin-left: -30px;
  text-align: center;
  color: #fff;
}

.m-charm-box .detail .icon-number span {
  position: relative;
  z-index: 1;
}

.m-charm-box .detail .icon-number:after {
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 60px;
  height: 60px;
  content: '';
  -webkit-transform: rotate(-135deg);
  -moz-transform: rotate(-135deg);
  -ms-transform: rotate(-135deg);
  -o-transform: rotate(-135deg);
  transform: rotate(-135deg);
}

.m-charm-box .detail .ttl {
  font-size: 32px;
  font-weight: normal;
  margin-bottom: 16px;
  padding-bottom: 12px;
  color: #2c3248;
}

.m-charm-box .m-txt-description {
  font-size: 16px;
  font-weight: bold;
}

.m-charm-box .m-btn-basic {
  margin-top: 24px;
}

.m-list-spread {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  margin-top: 20px;
  -ms-justify-content: center;
  -webkit-justify-content: center;
  justify-content: center;
}

.m-list-spread li {
  font-weight: bold;
  width: 272px;
  border-left: 1px solid #e5e5e5;
}

.m-list-spread li:first-child {
  border-left: none;
}

.m-list-spread li p {
  line-height: 1;
}

.m-list-spread li .country {
  font-size: 18px;
  width: 160px;
  margin: 0 auto;
  padding: 4px 0;
  color: #fff;
  background: #2c3248;
}

.m-list-spread.swap li .country {
  font-size: 16px;
  width: 220px;
}

.m-list-spread li .sen,
.m-list-spread li .yen {
  margin-top: 12px;
  letter-spacing: -4px;
  color: #e6a82e;
}

.m-list-spread li .sen span,
.m-list-spread li .yen span {
  letter-spacing: normal;
}

.m-list-spread li .sen {
  font-size: 128px;
}

.m-list-spread li .sen span {
  font-size: 36px;
}

.m-list-spread li .yen {
  font-size: 110px;
}

.m-list-spread li .yen span {
  font-size: 32px;
}

.m-charm-box .m-list-note {
  margin-top: 20px;
}

.m-list-tool {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  margin-top: 36px;
  -ms-justify-content: center;
  -webkit-justify-content: center;
  justify-content: center;
  -ms-align-items: flex-end;
  -webkit-align-items: flex-end;
  align-items: flex-end;
}

.m-list-tool li {
  width: 33.3%;
  margin-left: 40px;
}

.m-list-tool li:first-child {
  margin-left: 0;
}

.m-list-tool li .tag {
  font-weight: bold;
  width: 144px;
  margin: 0 auto;
  color: #fff;
  background: #2c3248;
}

.m-list-tool li .logo {
  margin-top: 16px;
}

/* layout
==============================================================*/
/* l-main *
.l-main {
  width: 808px;
  margin: 0 0 48px;
}

/* l-side *
.l-side {
  position: relative;
  z-index: 100;
  width: 236px;
  margin: 0 0 48px;
}

.m-side-box {
  overflow: hidden;
  border-radius: 4px;
  background: #fff;
  box-shadow: 0 0 6px 3px rgba(0, 0, 0, 0.1);
}

.m-bnr-item, .m-list-bnr li {
  font-size: 0;
  line-height: 0;
  display: block;
  margin-top: 16px;
  background: #fff;
}

.m-bnr-item:hover,
.m-list-bnr li a:hover {
  opacity: 0.8;
}

.m-bnr-item img,
.m-list-bnr li a img {
  width: 100%;
  height: auto;
}

.l-side>*+* {
  margin-top: 20px;
}

.side-login-box .open-account {
  padding: 28px 28px 20px;
  border-top: 2px solid #1a3553;
  border-left: 2px solid #1a3553;
  background: #032142;
  background: -moz-linear-gradient(top, #032142 0%, #083f7b 60%, #083f7b 60%);
  background: -webkit-linear-gradient(top, #032142 0%, #083f7b 60%, #083f7b 60%);
  background: linear-gradient(to bottom, #032142 0%, #083f7b 60%, #083f7b 60%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#032142', endColorstr='#083f7b', GradientType=0);
}

.side-login-box .open-account .m-btn-entry {
  font-size: 18px;
  font-weight: bold;
  line-height: 44px;
  height: 44px;
  border-radius: 50px;
}

.side-login-box .open-account ul {
  padding: 12px 0 0 24px;
}

.side-login-box .open-account li+li {
  margin-top: 2px;
}

.side-login-box .open-account li a {
  font-size: 14px;
  font-weight: bold;
  text-decoration: none;
  color: #fff;
}

.side-login-box .open-account li a:hover {
  text-decoration: underline;
}

.side-login-box .open-account li a:before {
  display: inline-block;
  width: 6px;
  height: 6px;
  margin-top: -3px;
  margin-right: 8px;
  content: '';
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: middle;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}

.side-login-box .account-login {
  padding: 24px 20px 28px;
}

.side-login-box .account-login dt {
  font-size: 16px;
  font-weight: bold;
}

.side-login-box .account-login dd {
  margin-top: 10px;
}

.side-login-box .account-login.maintenance dd {
  font-size: 13px;
  line-height: 1.4;
  padding: 8px 24px;
  background: #ffeec5;
}

.side-login-box .account-login.logout dd .u-login-btn-area {
  position: relative;
  margin-top: 0;
}

.side-login-box .account-login.logout dd .m-btn-login {
  padding-left: 30px;
}

.side-login-box .account-login.logout dd .u-login-btn-area:before {
  position: absolute;
  top: 50%;
  left: 50px;
  display: block;
  width: 14px;
  height: 16px;
  margin-top: -8px;
  content: '';
  background: url(/assets/images/icon-logout.png) no-repeat 0 0;
  -webkit-background-size: 100%;
  background-size: 100%;
}

.side-login-box .account-login li+li {
  margin-top: 8px;
}

.side-login-box .account-login li input {
  font-size: 14px;
  line-height: 34px;
  display: block;
  width: 100%;
  height: 34px;
  border: 2px solid #e9ecf2;
  border-radius: 4px;
}

.side-login-box .account-login .u-login-btn-area {
  margin: 24px 0 0;
  padding: 0 12px;
}

.side-login-box .account-login .login-sub-link {
  margin-top: 8px;
  text-align: center;
}

.side-login-box .account-login .login-sub-link a {
  font-size: 12px;
  text-decoration: none;
}

.side-login-box .account-login .login-sub-link a:hover {
  text-decoration: underline;
}

.side-login-box .account-login .login-sub-link a:before {
  display: inline-block;
  width: 6px;
  height: 6px;
  margin-top: -3px;
  margin-right: 8px;
  content: '';
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: middle;
  border-top: 1px solid #313942;
  border-right: 1px solid #313942;
}

.side-count-box {
  border: 1px solid #fff;
  background: #f9f9f9;
}

.side-count-box>* {
  margin: 0 -1px;
}
*/

/*
.side-count-box .m-count-box+.m-count-box {
  margin-top: 6px;
}

.side-custom-support dt {
  font-size: 16px;
  font-weight: bold;
  padding: 20px;
}

.side-custom-support ul {
  padding: 12px 0;
}

.side-custom-support li {
  padding: 4px 20px;
}

.side-custom-support li a {
  text-decoration: none;
}

.side-custom-support li a:hover {
  text-decoration: underline;
}

.side-custom-support dd ul {
  padding: 0;
}

.side-custom-support dd li {
  padding: 0;
  border-top: 1px solid #e5e5e5;
}

.side-custom-support dd li a {
  display: block;
  padding: 12px 16px;
  text-decoration: none;
}

.side-custom-support dd li a:hover {
  text-decoration: none;
  background: #edf2f2;
}

.side-custom-support li a:before {
  display: inline-block;
  width: 6px;
  height: 6px;
  margin-top: -3px;
  margin-right: 8px;
  content: '';
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: middle;
  border-top: 2px solid #0088de;
  border-right: 2px solid #0088de;
}

.side-sns-list {
  margin-top: 32px;
}

.side-sns-list li {
  font-size: 0;
  line-height: 0;
}

.side-sns-list li+li {
  margin-top: 16px;
}

.side-sns-list li img {
  width: 100%;
  height: auto;
}

.side-sns-list li a:hover {
  opacity: 0.8;
}

.side-sns-list+* {
  margin-top: 34px;
}
*/
/*.m-caution-list li+li {
  margin-top: 16px;
}

.m-caution-list li a {
  position: relative;
  display: block;
  width: 100%;
  padding: 16px 16px 16px 32px;
  text-decoration: none;
  border: 3px solid #d6d7d9;
  background: #fff;
}

.m-caution-list li a:hover {
  text-decoration: underline;
}

.m-caution-list li a:before {
  position: absolute;
  top: 50%;
  left: 16px;
  display: inline-block;
  width: 4px;
  height: 4px;
  margin-top: -2px;
  margin-right: 8px;
  content: '';
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: middle;
  border-top: 2px solid #0088de;
  border-right: 2px solid #0088de;
}*/

.m-ttl-section-small {
  font-size: 14px;
  padding-left: 1em;
}
/*
.u-border-top-none {
  border-top: none !important;
}
*/
.m-ttl-page-small {
  font-size: 24px;
  margin-left: 4px;
  padding-left: 0.5em;
  vertical-align: middle;
  border-left: 1px solid #005bac;
}
/*
.m-word-break {
  line-height: 1.4;
  display: inline-block;
  letter-spacing: 0.07em;
}
*/
.m-plan-note {
  font-size: 12px;
  white-space: nowrap;
  letter-spacing: -0.03em;
  color: #528eca;
}

.m-plan-txt {
  font-size: 24px;
  white-space: nowrap;
  text-indent: 8px;
  color: #528eca;
}

.m-plan-en {
  font-size: 33px;
  font-weight: bold;
  white-space: nowrap;
  letter-spacing: -0.03em;
  color: #528eca;
}

.m-plan-en.middle {
  font-size: 28px;
}

.m-plan-en.large {
  font-size: 38px;
}
/*
.m-txt-read {
  font-size: 16px;
}
*/

/* 20180623追加
++++++++++++++++++++++++++++++++++++++++ */





/* additional ------------------------------------------------------------------------------------------------------- */
/*  base
++++++++++++++++++++++++++++++++++++++++ */





/* additional module
++++++++++++++++++++++++++++++++++++++++ */
/* m-ttl-guide */
.m-ttl-guide .txt-kerning-n1 {
  letter-spacing: -1px;
}
.m-ttl-guide .txt-kerning-n2 {
  letter-spacing: -2px;
}
.m-ttl-guide .txt-narrow {
  display: inline-block;
  font-size: 26px;
  transform-origin: top left;
  transform: scale(1, 1.0769);
}

/* m-list-description */
.m-list-description > dt:first-child,
.m-list-description > dt:first-child + dd {
  border-top: 0;
}

/* m-type-tag */
.m-type-tag.small > li {
  min-width: 40px;
  font-size: 12px;
}

/* line */
.m-line-gray1 {
  border: 0;
  border-top: 1px solid #ccc;
}




/* btn +++++++++++++++++++ */
/* danger */
.m-btn-danger {
  display: block;
  padding: 8px 12px;
  border-radius: 4px;
  border-bottom: 2px solid #690804;
  background: #af0e06;
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  line-height: 1.2857;
}
.m-btn-danger:hover {
  color: #fff;
  background: #c31208;
}

/* table +++++++++++++++++++ */
.m-table-01 {
  width: 100%;
  margin-top: 24px;
  border-spacing: 0;
  border-collapse: separate;
  border-radius: 4px;
  background-color: #fff;
  box-shadow: 0 0 6px 3px rgba(0, 0, 0, 0.1);
  text-align: left;
}
.m-table-01.fixed {
  table-layout: fixed;
}
.m-table-01 .border0 {
  border: 0;
}
.m-table-01 > caption {
  text-align: inherit;
}
.m-table-01 th,
.m-table-01 td {
  padding: 8px 16px;
  border: 1px solid #ddd;
  border-width: 1px 0 0 1px;
  line-height: 1.428;
  text-align: inherit;
  vertical-align: middle;
}
.m-table-01 td {
  color: #666;
}
.m-table-01 th:first-child,
.m-table-01 td:first-child {
  border-left-width: 0;
}
.m-table-01:not(.plain) th {
  border-color: #c2c7ca;
  background-color: #e0e6e9;
}
.m-table-01.zebra tr:nth-child(even),
.m-table-01 .zebra tr:nth-child(even) {
  background-color: #f2f3f5;
}
.m-table-01 tr:first-child th,
.m-table-01 tr:first-child td {
  border-top-width: 0;
}
.m-table-01 > thead + tbody tr:first-child th,
.m-table-01 > thead + tbody tr:first-child td {
  border-top-width: 1px;
}

/* tabs primary +++++++++++++++++++ */
.m-tabs-primary {
  display: flex;
  flex-wrap: nowrap;
  margin-bottom: 20px;
  padding: 0;
  border-bottom: 1px solid #c6c6c6;
  font-size: 14px;
  line-height: 1.2857;
  list-style: none;
}
/* tab */
.m-tabs-primary > li {
  display: flex;
  margin-bottom: -1px;
  text-align: center;
}
.m-tabs-primary > li + li {
  margin-left: 4px;
}
.m-tabs-primary > li > a {
  display: flex;
  flex-grow: 1;
  align-items: center;
  justify-content: center;
  padding: 12px;
  border: 1px solid #c6c6c6;
  border-bottom-color: transparent;
  font-weight: bold;
  text-decoration: none;
  cursor: pointer;
  -ms-touch-action: manipulation;
      touch-action: manipulation;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.m-tabs-primary > li > a:hover,
.m-tabs-primary > li > a:focus {}
.m-tabs-primary > li.is-active {}
.m-tabs-primary > li.is-active > a {
  padding-top: 9px;
  border-top: 4px solid #005bac;
  background-color: #f3f4f5;
}
.m-tabs-primary > li.is-disabled > a {
  opacity: 0.4;
  cursor: not-allowed;
  pointer-events: none;
}
/* modifier ++++ */
/* extra */
.m-tabs-primary > .extra {
  display: flex;
  align-items: center;
}
.m-tabs-primary > .extra:first-child {
  justify-content: flex-start;
  margin-right: auto;
  padding-right: 4px;
}
.m-tabs-primary > .extra:last-child {
  justify-content: flex-end;
  margin-left: auto;
  padding-left: 4px;
}
/* fit tab */
.m-tabs-primary.fit > li {
  flex-grow: 1;
}
.m-tabs-primary.fit > li > a {
  padding-right: 8px;
  padding-left: 8px;
}
/* shrink */
.m-tabs-primary.shrink > li > a {
  padding-right: 3px;
  padding-left: 3px;
}
/* cols */
.m-tabs-primary.cols2 > li {
  width: calc((100% + 4px) /2 - 4px);
}
.m-tabs-primary.cols3 > li {
  width: calc((100% + 4px) /3 - 4px);
}
.m-tabs-primary.cols4 > li {
  width: calc((100% + 4px)/4 - 4px);
}
.m-tabs-primary.cols5 > li {
  width: calc((100% + 4px)/5 - 4px);
}
.m-tabs-primary.cols6 > li {
  width: calc((100% + 4px)/6 - 4px);
}
.m-tabs-primary.cols7 > li {
  width: calc((100% + 4px)/7 - 4px);
}
/* grow */
.m-tabs-primary > li.grow {
  flex-grow: 1;
}
/* adjust legacy style */
.m-tabs-primary.adjust-legacy > li:first-child {
  margin-left: 0;
}
.m-tabs-primary.adjust-legacy > li > a,
.m-tabs-primary.adjust-legacy > .extra a {
  transition: color 0.2s ease-in-out,
              background 0.2s ease-in-out,
              opacity 0.2s ease-in-out;
}
.m-tabs-primary.adjust-legacy > li > a:not(:hover),
.m-tabs-primary.adjust-legacy > .extra a:not(:hover) {
  color: #313942;
}

/* call to action panel ++++++++++++++++++++ */
.m-cta-panels {
  display: flex;
  flex-wrap: wrap;
  margin-top: 24px;
  padding: 0 8px 8px 0;
  background-color: #ecedee;
}
.m-cta-panels > .panel {
  margin: 8px 0 0 8px;
  padding: 20px 24px;
  border: 1px solid #fff;
  background-color: #f5f5f5;
  background: linear-gradient(to bottom, #f5f5f5 0%, #fff 100%);
  box-shadow: 0 0 3px 1px rgba(0, 0, 0, 0.1);
  color: #2c3248;
  font-size: 16px;
}
/* row panel */
.m-cta-panels > .panel.row {
  display: table;
  width: calc(100% - 8px);
}
.m-cta-panels > .panel.row + .row {
  margin-top: 0;
}
.m-cta-panels > .panel.row > dt {
  display: table-cell;
  vertical-align: middle;
}
.m-cta-panels > .panel.row > dd {
  display: table-cell;
  width: 26.95%;
  vertical-align: middle;
}
/* col panel */
.m-cta-panels > .panel.col,
.m-cta-panels > .panel.col2 {
  flex-grow: 1;
  margin-left: 8px;
  text-align: center;
}
.m-cta-panels > .panel.col [class^=btn-],
.m-cta-panels > .panel.col2 [class^=btn-] {
  width: 70.17%;
  margin: 8px auto 0;
}
.m-cta-panels > .panel.col {
  width: calc(50% - 8px);
}
.m-cta-panels.cols3 > .panel.col {
  width: calc((100% / 3) - 8px);
}
.m-cta-panels.cols3 > .panel.col2 {
  width: calc((100% * (2 / 3)) - 8px);
}
/* texts */
.m-cta-panels .ttl {
  color: #005bac;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.2;
}
.m-cta-panels .ttl.large {
  font-size: 28px;
}
.m-cta-panels .lead {
  font-size: 16px;
  font-weight: bold;
  line-height: 1.5;
}
.m-cta-panels .sub {
  font-size: 16px;
}
/* button */
.m-cta-panels [class^=btn-] {
  display: block;
  min-width: 220px;
  height: 48px;
  padding: 0 12px;
  border-radius: 4px;
  border: 0;
  border-bottom: 2px solid transparent;
  background: transparent;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  line-height: 48px;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  -ms-touch-action: manipulation;
      touch-action: manipulation;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.m-cta-panels [class^=btn-].large {
  font-size: 22px;
  line-height: 64px;
  height: 64px;
}
.m-cta-panels .btn-entry {
  border-bottom-color: #690804;
  background: linear-gradient(#c31208 0%, #af0e06 100%);
}
.m-cta-panels .btn-entry:hover {
  background: linear-gradient(#ff1600 0%, #ac0100 100%);
}
.m-cta-panels .btn-basic {
  border-bottom-color: #005da1;
  background-color: #0074c9;
}
.m-cta-panels .btn-basic:hover {
  color: #fff;
  background: #04a0e1;
}
.m-cta-panels .btn-login {
  border-bottom-color: #002f60;
  background: linear-gradient(#0069b8 0%, #004fa1 100%);
}
.m-cta-panels .btn-login:hover {
  background: linear-gradient(#009be4 0%, #0053a5 100%);
}
.m-cta-panels .btn-extra {
  border-bottom-color: #785100;
  background: linear-gradient(#d49200 0%, #be8100 100%);
}
.m-cta-panels .btn-extra:hover {
  background: linear-gradient(#ffb906 0%, #b67500 100%);
}
/* cta nisa +++++ */
.m-cta-nisa {
  margin-top: 24px;
  padding: 8px;
  background-color: #ecedee;
}
.m-cta-nisa > .box {
  width: 100%;
  padding: 20px 24px;
  border: 1px solid #fff;
  background-color: #f5f5f5;
  background: linear-gradient(to bottom, #f5f5f5 0%, #fff 100%);
  box-shadow: 0 0 3px 1px rgba(0, 0, 0, 0.1);
  color: #2c3248;
  font-size: 16px;
  text-align: center;
}
.m-cta-nisa .lead {
  margin-bottom: 12px;
  font-size: 2rem;
  font-weight: bold;
  line-height: 3.4rem;
}
.m-cta-nisa .lead span {
  background: linear-gradient(transparent 60%, #fff00d 60%);
}
.m-cta-nisa .flow {
  padding: 8px 60px 20px;
  background-color: #eaf0f3;
}
.m-cta-nisa dt {
  color: #313942;
  font-size: 2.4rem;
  font-weight: bold;
}
.m-cta-nisa dt + dd {
  position: relative;
  padding-bottom: 64px;
}
.m-cta-nisa dt + dd::after {
  position: absolute;
  left: 50%;
  bottom: -14px;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border: solid transparent;
  border-width: 30px 40px;
  border-top-color: #666;
  content: "";
  pointer-events: none;
}
.m-cta-nisa .btn-entry,
.m-cta-nisa .btn-login {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 70px;
  padding: 0;
  font-size: 1.8rem;
  line-height: 1.4;
  font-weight: normal;
}
.m-cta-nisa .btn-entry span,
.m-cta-nisa .btn-login span {
  width: 100%;
}
.m-cta-nisa .btn-login span span {
  font-size: 1.6rem;
}

/* sp mode nav ++++++++++++++++++++ */
.m-spnav {
  width: 100%;
  min-width: 1080px;
}
.m-spnav a {
  position: relative;
  display: block;
  width: 81.25vw;
  max-width: 76.47%;
  margin: 20px auto 0;
  padding: 0.34em 0.5em 0.3em;
  border-radius: 0.5em;
  background-color: #005bac;
  background: linear-gradient(rgba(50,123,188,1) 0%, rgba(50,123,188,1) 40%, rgba(0,91,172,1) 60%);
  box-shadow:0 0 0 0.08em #005bac inset,0 0 0 0.16em #fff inset;
  color: #fff;
  font-size: 4.78vw; /* 15.294*100/320 */
  text-align: center;
  text-decoration: none;
  line-height: 1.6;
  cursor: pointer;
  -ms-touch-action: manipulation;
      touch-action: manipulation;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
@media screen and (min-width: 1120px) {
  .m-spnav a {
    font-size: 70px;/* max size */
  }
}
.m-spnav a::before,
.m-spnav a::after {
  box-sizing: border-box;
  content: "";
}
.m-spnav a::before {
  position: relative;
  top: -2px;
  display: inline-block;
  width: 1.6em;
  height: 1.6em;
  background-image: url(/assets/images/icon-sp-white.svg);
  background-size: 100%;
  vertical-align: middle;
}


