@charset "UTF-8";
/* ============================
 *
 *     Reset Defaults
 *
 * ============================ */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none;
}

a img {
  border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}

/* ============================
 *
 *     Whole Contents
 *
 * ============================ */
body {
  width: 100%;
  font-size: 100%;
  line-height: 140%;
  color: #333;
  background: #FFF;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "meiryo", sans-serif;
  -webkit-text-size-adjust: 100%;
}

img {
  vertical-align: bottom;
}

strong {
  font-weight: bold;
}

/* For modern browsers */
.cf:before, .cf:after {
  content: "";
  display: block;
  overflow: hidden;
}

.cf:after {
  clear: both;
}

/* For IE 6/7 (trigger hasLayout) */
.cf {
  zoom: 1;
}

.wbr {
  display: inline-block;
}

/* ===== loading ===== */
.loading-cover {
  display: none;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 1000;
  width: 100%;
  height: 100%;
  background: #FFF url(../img/loading.gif) no-repeat 50% 50%;
  background: rgba(255, 255, 255, 0.8) url(../img/loading.gif) no-repeat 50% 50%;
}

.loading-cover-on body {
  overflow: hidden;
  height: 100%;
}
.loading-cover-on .loading-cover {
  display: block;
}

.smil .loading-cover {
  background: rgba(255, 255, 255, 0.8) url(../img/loading.svg) no-repeat 50% 50%;
}

/* ===== Altered font size (for html element) ===== */
.alt-font-size-s {
  font-size: 72.5%;
}

.alt-font-size-l {
  font-size: 125%;
}

/* ===== form parts styles ===== */
input[type=text],
input[type=password],
input[type=email],
input[type=number],
input[type=tel],
textarea {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  font-size: 100%;
  padding: 5px 5px;
  border: 1px solid #CCC;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  border-radius: 6px;
}
input[type=text]::-webkit-input-placeholder,
input[type=password]::-webkit-input-placeholder,
input[type=email]::-webkit-input-placeholder,
input[type=number]::-webkit-input-placeholder,
input[type=tel]::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: #CCC;
}
input[type=text]:-moz-placeholder,
input[type=password]:-moz-placeholder,
input[type=email]:-moz-placeholder,
input[type=number]:-moz-placeholder,
input[type=tel]:-moz-placeholder,
textarea:-moz-placeholder {
  color: #CCC;
}
input[type=text]:-ms-input-placeholder,
input[type=password]:-ms-input-placeholder,
input[type=email]:-ms-input-placeholder,
input[type=number]:-ms-input-placeholder,
input[type=tel]:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: #999;
}

input[type=submit] {
  font-family: sans-serif;
}

input.short {
  width: 20%;
}

input.half {
  width: 45%;
}

input.long {
  width: 75%;
}

input.full, textarea.full {
  width: 95%;
}

label + label {
  margin-left: 0.5em;
}

label > input, label > select {
  margin: 0 0.25em;
}

select {
  font-size: 100%;
}

.input-joint {
  margin: 0 0.5em;
}

.mobile-breaker {
  display: inline;
}

select, option {
  font-size: 1em;
  font-size: 1rem;
  line-height: 140%;
}

select.limit-select-width {
  width: 90%;
  white-space: break-word;
}

/* select tag skin */
select.adjust-skin {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 1px solid #CCC;
  border-radius: 6px;
  background: #FFF url(../img/select_arrow.png) no-repeat 100% 50%;
  padding: 0.25em 0.5em;
  padding-right: 1.5em;
  font-size: 0.875em;
  font-size: 0.875rem;
  line-height: 140%;
}
select.adjust-skin::-ms-expand {
  display: none;
}

/* UI down arrow cant hide (lte IE9) */
.no-csstransitions select.adjust-skin {
  background: #FFF;
  padding: 0.25em 0.5em;
}

legend {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
  position: relative;
  width: 100%;
}

/* ===== fake radio system ===== */
.fake-radio-system .real-radio {
  display: none;
}
.fake-radio-system .real-radio:checked + label {
  background: #FF8000;
  color: #FFF;
  transition: background-color 0.25s ease-out;
}
.fake-radio-system .real-radio:checked + label + section {
  background: #FF8000;
  color: #FFF;
  transition: background-color 0.25s ease-out;
}

.no-backgroundsize .fake-radio-system .real-radio {
  display: block;
  filter: alpha(opacity=0);
  margin: -0.6em 0;
}
.no-backgroundsize .fake-radio-system .fake-radio-checked + label {
  background: #FF8000;
  color: #FFF;
  transition: background-color 0.25s ease-out;
}
.no-backgroundsize .fake-radio-system .fake-radio-checked + label:hover {
  background: #FF8000;
}
.no-backgroundsize .fake-radio-system .fake-radio-checked + label + section {
  background: #FF8000;
  color: #FFF;
  transition: background-color 0.25s ease-out;
}

/* ===== arrow sprites ===== */
.sprite-arrows {
  display: inline-block;
  width: 24px;
  height: 24px;
  background: url(../img/sprite_arrows.png) no-repeat 0 0;
  background-size: 96px auto;
  vertical-align: middle;
}

.no-backgroundsize .sprite-arrows {
  background: url(../img/sprite_arrows_low.png) no-repeat 0 0;
}

.spr-arr-b-r {
  background-position: 0px 0px;
}

.no-backgroundsize .spr-arr-b-r {
  background-position: 0px 0px;
}

.spr-arr-b-l {
  background-position: -24px 0px;
}

.no-backgroundsize .spr-arr-b-l {
  background-position: -24px 0px;
}

.spr-arr-b-u {
  background-position: -48px 0px;
}

.no-backgroundsize .spr-arr-b-u {
  background-position: -48px 0px;
}

.spr-arr-b-d {
  background-position: -72px 0px;
}

.no-backgroundsize .spr-arr-b-d {
  background-position: -72px 0px;
}

.spr-arr-w-r {
  background-position: 0px -24px;
}

.no-backgroundsize .spr-arr-w-r {
  background-position: 0px -24px;
}

.spr-arr-w-l {
  background-position: -24px -24px;
}

.no-backgroundsize .spr-arr-w-l {
  background-position: -24px -24px;
}

.spr-arr-w-u {
  background-position: -48px -24px;
}

.no-backgroundsize .spr-arr-w-u {
  background-position: -48px -24px;
}

.spr-arr-w-d {
  background-position: -72px -24px;
}

.no-backgroundsize .spr-arr-w-d {
  background-position: -72px -24px;
}

.spr-arr-g-r {
  background-position: 0px -48px;
}

.no-backgroundsize .spr-arr-g-r {
  background-position: 0px -48px;
}

.spr-arr-g-l {
  background-position: -24px -48px;
}

.no-backgroundsize .spr-arr-g-l {
  background-position: -24px -48px;
}

.spr-arr-g-u {
  background-position: -48px -48px;
}

.no-backgroundsize .spr-arr-g-u {
  background-position: -48px -48px;
}

.spr-arr-g-d {
  background-position: -72px -48px;
}

.no-backgroundsize .spr-arr-g-d {
  background-position: -72px -48px;
}

.sprite-triangles {
  display: inline-block;
  width: 10px;
  height: 10px;
  background: url(../img/sprite_arrows.png) no-repeat 0 0;
  background-size: 144px auto;
  vertical-align: middle;
}

.spr-tri-b-r {
  background-position: 0px -220px;
}

.spr-tri-b-l {
  background-position: -10px -220px;
}

.spr-tri-b-u {
  background-position: -20px -220px;
}

.spr-tri-b-d {
  background-position: -30px -220px;
}

.spr-tri-w-r {
  background-position: 0px -230px;
}

.spr-tri-w-l {
  background-position: -10px -230px;
}

.spr-tri-w-u {
  background-position: -20px -230px;
}

.spr-tri-w-d {
  background-position: -30px -230px;
}

.spr-tri-g-r {
  background-position: 0px -240px;
}

.spr-tri-g-l {
  background-position: -10px -240px;
}

.spr-tri-g-u {
  background-position: -20px -240px;
}

.spr-tri-g-d {
  background-position: -30px -240px;
}

.spr-tri-r-r {
  background-position: 0px -250px;
}

.spr-tri-r-l {
  background-position: -10px -250px;
}

.spr-tri-r-u {
  background-position: -20px -250px;
}

.spr-tri-r-d {
  background-position: -30px -250px;
}

.sprite-step-arrows {
  display: inline-block;
  width: 12px;
  height: 12px;
  background: url(../img/sprite_arrows.png) no-repeat 0 0;
  background-size: 48px auto;
  vertical-align: middle;
}

.spr-stp-arr-b-r {
  background-position: 0px 0px;
}

.spr-stp-arr-b-l {
  background-position: -12px 0px;
}

.spr-stp-arr-b-u {
  background-position: -24px 0px;
}

.spr-stp-arr-b-d {
  background-position: -36px 0px;
}

.spr-stp-arr-w-r {
  background-position: 0px -12px;
}

.spr-stp-arr-w-l {
  background-position: -12px -12px;
}

.spr-stp-arr-w-u {
  background-position: -24px -12px;
}

.spr-stp-arr-w-d {
  background-position: -36px -12px;
}

.spr-stp-arr-g-r {
  background-position: 0px -24px;
}

.spr-stp-arr-g-l {
  background-position: -12px -24px;
}

.spr-stp-arr-g-u {
  background-position: -24px -24px;
}

.spr-stp-arr-g-d {
  background-position: -36px -24px;
}

/* ===== icon sprites ===== */
.sprite-icons {
  display: inline-block;
  width: 15px;
  height: 15px;
  background: url(../img/sprite_icons.png) no-repeat 0 0;
  background-size: 45px auto;
  vertical-align: middle;
}

.no-backgroundsize .sprite-icons {
  background: url(../img/sprite_icons_low.png) no-repeat 0 0;
}

.spr-ico-check-o {
  background-position: 0px 0;
}

.no-backgroundsize .spr-ico-check-o {
  background-position: 0px 0;
}

.spr-ico-check-g {
  background-position: -15px 0;
}

.no-backgroundsize .spr-ico-check-g {
  background-position: -15px 0;
}

.spr-ico-check-l {
  background-position: -30px 0;
}

.no-backgroundsize .spr-ico-check-l {
  background-position: -30px 0;
}

.spr-ico-close-b {
  background-position: 0px -15px;
}

.no-backgroundsize .spr-ico-close-b {
  background-position: 0px -15px;
}

.spr-ico-close-w {
  background-position: -15px -15px;
}

.no-backgroundsize .spr-ico-close-w {
  background-position: -15px -15px;
}

.spr-ico-close-g {
  background-position: -30px -15px;
}

.no-backgroundsize .spr-ico-close-g {
  background-position: -30px -15px;
}

.spr-ico-plus-b {
  width: 12px;
  height: 12px;
  background-position: 0px -30px;
}

.no-backgroundsize .spr-ico-plus-b {
  background-position: 0px -30px;
}

.spr-ico-plus-w {
  width: 12px;
  height: 12px;
  background-position: -12px -30px;
}

.no-backgroundsize .spr-ico-plus-w {
  background-position: -12px -30px;
}

.spr-ico-plus-g {
  width: 12px;
  height: 12px;
  background-position: -24px -30px;
}

.no-backgroundsize .spr-ico-plus-g {
  background-position: -24px -30px;
}

/* pseudo checkbox */
.sprite-ps-checkbox {
  display: inline-block;
  width: 34px;
  height: 30px;
  background: url(../img/sprite_ps_checkbox.png) no-repeat 0 0;
  background-size: 70px auto;
  vertical-align: middle;
}

.spr-ps-cb {
  background-position: 0 0;
}

.spr-ps-cb-checked {
  background-position: -40px 0;
}

.no-backgroundsize .sprite-ps-checkbox {
  background: url(../img/sprite_ps_checkbox_low.png) no-repeat 0 0;
}
.no-backgroundsize .spr-ps-cb {
  background-position: 0 0;
}
.no-backgroundsize .spr-ps-cb-checked {
  background-position: -40px 0;
}

/* ===== icons ===== */
.require {
  display: inline-block;
  padding: 0.25em 0.5em;
  background: #F00;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  border-radius: 3px;
  color: #FFF;
  font-size: 0.75rem;
  line-height: 120%;
  vertical-align: top;
}

.order-icon {
  display: inline-block;
  max-width: 2.1em;
  padding: 0.5em 0.75em;
  background: #FF8000;
  border-radius: 4px;
  color: #FFF;
  font-size: 0.8125em;
  font-size: 0.8125rem;
  line-height: 110%;
  vertical-align: middle;
}

/* ===== button styles ===== */
/* reset default button tag */
button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: auto;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 1em;
  font-size: 1rem;
  line-height: 140%;
}

button::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/* initialize button base */
.com-btn {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  overflow: hidden;
  position: relative;
  display: inline-block;
  margin: 0;
  padding: 0.25em 0.75em;
  background: #999;
  border-radius: 3px;
  text-decoration: none;
  color: #FFF;
  font-size: 0.875em;
  font-size: 0.875rem;
  line-height: 140%;
  vertical-align: middle;
  text-align: center;
  cursor: pointer;
}
.com-btn .arrow {
  position: absolute;
  top: 50%;
  margin-top: -5px;
}
.com-btn .icon {
  position: absolute;
  top: 50%;
  margin-top: -7px;
}

/* button with highlighted line */
.hilited-btn {
  padding: 1px;
  background: #CBCBCB;
  background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2NiY2JjYiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2E3YTdhNyIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');
  background-size: 100%;
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #cbcbcb), color-stop(100%, #a7a7a7));
  background-image: -moz-linear-gradient(#cbcbcb, #a7a7a7);
  background-image: -webkit-linear-gradient(#cbcbcb, #a7a7a7);
  background-image: linear-gradient(#cbcbcb, #a7a7a7);
}
.hilited-btn:hover {
  background: #A7A7A7;
}
.hilited-btn:hover b {
  border-color: transparent;
}
.hilited-btn b {
  display: block;
  padding: 0.4em;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  border-right: 1px solid transparent;
  border-bottom: 1px solid transparent;
  border-left: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 2px;
}

/* button with backward triangle icon */
.back-btn b {
  padding-left: 1.5em;
}
.back-btn .arrow {
  left: 0.5em;
}

/* button with forward triangle icon, color and large padding */
.proceed-btn {
  background: #29A4EA;
  background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzI5YTRlYSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzAwN2VkNiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');
  background-size: 100%;
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #29a4ea), color-stop(100%, #007ed6));
  background-image: -moz-linear-gradient(#29a4ea, #007ed6);
  background-image: -webkit-linear-gradient(#29a4ea, #007ed6);
  background-image: linear-gradient(#29a4ea, #007ed6);
}
.proceed-btn:hover {
  background: #007ED6;
}
.proceed-btn b {
  padding: 0.6em 1em 0.6em 1em;
}
.proceed-btn .arrow {
  right: 0.5em;
}

.left-icon-btn b {
  padding-left: 1.5em;
}

.right-icon-btn b {
  padding-right: 1.5em;
}

/* button with plus sign */
.plus-btn b {
  padding-left: 2em;
}
.plus-btn .icon {
  left: 0.5em;
}

/* 1px bordered simple button */
.bordered-btn {
  padding: 0.7em 1em;
  background: #FFF;
  border: 1px solid #007DD9;
  color: #007DD9;
  letter-spacing: 0;
}
.bordered-btn:hover {
  background: #e5f2fb;
}

/* selected states button */
.bordered-btn-selected {
  background: #FF8000;
  border: 1px solid #FF8000;
  color: #FFF;
}
.bordered-btn-selected:hover {
  background: #FF8000;
}

/* delete button */
.delete-btn {
  padding: 0.8em;
  padding-left: 2em;
  background: #F00;
  border: 1px solid #F00;
  color: #FFF;
  font-size: 0.8125em;
  font-size: 0.8125rem;
  line-height: 140%;
  letter-spacing: 0;
}
.delete-btn:hover {
  background: #ff4c4c;
  border: 1px solid #ff4c4c;
}
.delete-btn .icon {
  left: 0.5em;
}

/* size valiation */
.btn-size-100 {
  width: 90px;
}

.btn-size-150 {
  width: 130px;
}

.btn-size-200 {
  width: 190px;
}

.btn-size-300 {
  width: 290px;
}

/* disabled style */
.com-btn-disabled {
  background: #EEE;
  color: #CCC;
  border-color: #DDD;
  cursor: default;
}
.com-btn-disabled b {
  border-color: transparent;
}
.com-btn-disabled:hover {
  background: #EEE;
  border-color: #DDD;
}

/* ===== title styles ===== */
.left-bordered-rect-title {
  margin-bottom: 1em;
  padding: 0.5em 0.75em;
  background: #333;
  border-radius: 3px;
  color: #FFF;
  font-size: 1.25em;
  line-height: 140%;
}
.left-bordered-rect-title b {
  border-left: 5px solid #FFF;
  padding-left: 0.5em;
}

.left-bordered-title {
  margin-bottom: 0.5em;
  padding-bottom: 0.25em;
  border-bottom: 1px solid #CCC;
  font-size: 1.125em;
  line-height: 140%;
}
.left-bordered-title b {
  border-left: 5px solid #000;
  padding-left: 0.5em;
}
.left-bordered-title .notes {
  font-size: 0.875em;
  line-height: 140%;
  margin-left: 1em;
  color: #F00;
}

.welled-title {
  padding: 0.5em 0.75em;
  background: #DDD;
  font-weight: bold;
}

/* ===== list style ===== */
.bordered-list > li {
  border: 2px solid #CCC;
  margin: 15px 0;
}
.bordered-list > li > a, .bordered-list > li > b, .bordered-list > li > label {
  display: block;
  padding: 1em;
  text-decoration: none;
  font-size: 0.875em;
  font-size: 0.875rem;
  line-height: 140%;
  color: #000;
}
.bordered-list > li > a, .bordered-list > li > label {
  cursor: pointer;
}

/* glid layout */
.grid-column {
  margin: -0.25em;
}
.grid-column li {
  display: inline-block;
  width: 19%;
  margin: 0.25em 0;
  vertical-align: top;
}

.burret-list > li {
  padding-left: 1.1em;
  list-style: inside disc;
  text-indent: -0.85em;
}

/* ===== section styles ===== */
/* common section */
.com-section {
  margin: 20px 0;
}

/* limit width for pc layout */
.width-limiter {
  position: relative;
  width: 1000px;
  margin: 0 auto;
  word-wrap: break-word;
}

/* set padding for mobile layout */
.global-pad {
  width: 100%;
}

/* common create margin styles */
.pc-fit-m-garter {
  width: 100%;
}

.pc-garter-m-fit {
  margin: 20px;
}

.pc-garter-m-garter {
  margin: 20px;
}

.reguler-phrases p {
  margin: 1em 0;
}
.reguler-phrases p:first-child {
  margin-top: 0;
}
.reguler-phrases p:last-child {
  margin-bottom: 0;
}

/* well */
.well {
  margin: 1em;
  padding: 1.5em;
  border: 1px solid #CCC;
  border-radius: 4px;
}

.filled-well {
  border: 0;
  background: #EEE;
}

/* section with title */
.box-with-title {
  margin: 20px 0;
  border: 2px solid #CCC;
}
.box-with-title .box-title {
  position: relative;
  display: block;
  background: #EEE;
  padding: 0.75em;
  font-size: 1em;
  font-size: 1rem;
  line-height: 140%;
}
.box-with-title .box-title .notes {
  margin-left: 1em;
  color: #F00;
  font-size: 0.8125em;
  font-size: 0.8125rem;
  line-height: 140%;
}
.box-with-title .box-container {
  padding: 1.5em;
  border-top: 1px solid #CCC;
  font-size: 0.875em;
  font-size: 0.875rem;
  line-height: 140%;
}
.box-with-title .box-container-flat {
  padding: 1.5em;
}

/* bordered section */
.bordered-box {
  margin: 20px 0;
  border: 2px solid #CCC;
  padding: 1.5em;
}

/* bordered rounded colored section */
.round-color-box {
  border: 1px solid #666;
  border-radius: 4px;
  font-size: 0.875rem;
}
.round-color-box .box-title {
  padding: 0.5em;
  background: #666;
  color: #FFF;
  text-align: center;
}
.round-color-box .box-container {
  border: 0;
  padding: 1.25em;
}

/* attention */
.attention strong {
  color: #F00;
  font-weight: normal;
}

/* warnings (another version) */
.weak-warnings {
  text-align: center;
}
.weak-warnings strong {
  color: #F00;
  font-size: 1.25em;
  font-size: 1.25rem;
  line-height: 120%;
  font-weight: normal;
}
.weak-warnings .notes {
  font-size: 0.8125em;
}

.warnings {
  padding: 1em;
  border: 2px solid #F00;
  text-align: center;
}
.warnings strong {
  color: #F00;
  font-size: 1.25em;
  font-size: 1.25rem;
  line-height: 120%;
  font-weight: normal;
}
.warnings .notes {
  font-size: 0.8125em;
}

/* warnings */
.warnings-section strong {
  color: #F00;
  font-weight: normal;
}

.warnings-box {
  text-align: center;
}
.warnings-box strong {
  color: #F00;
  font-size: 1em;
  font-size: 1rem;
  line-height: 120%;
  font-weight: normal;
}
.warnings-box strong.pressing {
  font-size: 1.25em;
  font-size: 1.25rem;
  line-height: 120%;
}
.warnings-box em {
  text-decoration: underline;
}
.warnings-box .notes {
  font-size: 0.8125em;
  line-height: 120%;
}

.bordered-warnings-box {
  padding: 1em;
  border: 2px solid #F00;
}

/* ### OVERRIDE .warnings-box .bordered-warnings-box ### */
.system-maintenance-box {
  border: 2px solid #F00;
  background: #FFE6E6;
}

/* ### OVERRIDE .warnings-box .bordered-warnings-box ### */
.system-normal-box {
  border: 2px solid #66C;
  background: #FFF;
}
.system-normal-box strong {
  color: #66C;
}

/* college specific notes */
.college-notes-box {
  padding: 1.5em;
  background: #E2E4C2;
}

/* errors */
.errors {
  padding: 1em;
  border: 2px solid #F00;
}
.errors li {
  padding-left: 1em;
  color: #F00;
  font-size: 1.25em;
  font-size: 1.25rem;
  line-height: 120%;
  font-weight: normal;
  text-indent: -1em;
}
.errors li:before {
  content: "・";
  margin-right: 0;
}

/* raise actions */
.raise-actions {
  margin: 20px;
  text-align: center;
}
.raise-actions a, .raise-actions button {
  margin: 0 0.5em;
}

.raise-actions-vertical li {
  margin: 1em 0;
  text-align: center;
}

/* ===== table styles ===== */
.com-table {
  width: 100%;
  margin: -1em 0;
}
.com-table th, .com-table td {
  padding: 1em 0;
  background: url(../img/dottedline_666.png) repeat-x 0 100%;
  font-size: 0.875em;
  font-size: 0.875rem;
  line-height: 140%;
  word-break: break-all;
}
.com-table tr:last-child th, .com-table tr:last-child td {
  background: none;
}
.com-table th {
  padding-right: 1em;
}
.com-table th .notes {
  display: inline-block;
  color: #F00;
  font-size: 0.75em;
  font-size: 0.75rem;
  line-height: 140%;
}
.com-table th label {
  margin-right: 1em;
}
.com-table th[scope=row] {
  width: 22%;
}
.com-table th .icon-origin {
  position: relative;
  padding-right: 3.5em;
}
.com-table th .icon-origin .require {
  position: absolute;
  right: 5px;
  top: 50%;
  margin-top: -0.8em;
}
.com-table td .notes {
  font-size: 0.75em;
  font-size: 0.75rem;
  line-height: 140%;
}
.com-table td p {
  margin: 0.5em 0;
}
.com-table input + .notes, .com-table label + .notes {
  margin: 0 0.5em;
}
.com-table select + .com-btn {
  margin-left: 0.5em;
}
.com-table .error th, .com-table .error td, .com-table .error:last-child th, .com-table .error:last-child td {
  background-color: #FFEAE7;
}
.com-table .disable th, .com-table .disable td, .com-table .disable:last-child th, .com-table .disable:last-child td {
  background-color: #EEE;
  color: #999;
}
.com-table .error-msg {
  display: none;
  color: #F00;
}
.com-table .error .error-msg {
  display: block;
}

/* bordered table */
.bordered-table {
  width: 100%;
  border: 2px solid #CCC;
}
.bordered-table th, .bordered-table td {
  padding: 1em;
  border: 1px solid #CCC;
  font-size: 0.875em;
  font-size: 0.875rem;
  line-height: 140%;
}
.bordered-table th {
  background: #EEE;
}
.bordered-table th[scope=row] {
  width: 22%;
}

/* color bordered table */
.bordered-table-blue th {
  background: #DBF0F8;
}

/* special table */
.special-table {
  width: 100%;
}
.special-table th, .special-table td {
  padding: 1em;
  border: 2px solid #F00;
  font-size: 0.875em;
  line-height: 140%;
  text-align: center;
}
.special-table th {
  background: #F00;
  color: #FFF;
}
.special-table th[scope=row] {
  width: 22%;
}

/* code display */
.code-table {
  width: 100%;
}
.code-table th, .code-table td {
  padding: 1em;
  border: 2px solid #F80;
  font-size: 0.875em;
  line-height: 140%;
  text-align: center;
}
.code-table th {
  background: #FFDFBF;
}
.code-table th[scope=row] {
  width: 22%;
}
.code-table .code {
  font-size: 1.5rem;
  line-height: 120%;
  font-size: Arial, sans-serif;
}

/* ============================
 *
 *     Header - #masthead
 *
 * ============================ */
#masthead {
  position: relative;
  z-index: 999;
  width: 100%;
  background: #333;
  border-bottom: 5px solid #666;
  color: #FFF;
  font-size: 16px;
}

.header-moblie-only {
  display: none;
}

.header-name {
  float: left;
  width: 54%;
  padding: 20px 0;
  font-size: 24px;
  line-height: 140%;
  letter-spacing: 140%;
}

.header-name-two-lines {
  padding: 10px 0;
  line-height: 120%;
}

.mypage-header-name {
  width: 33%;
}

.header-tagline {
  float: right;
  padding: 20px 0;
  font-size: 16px;
  line-height: 180%;
}

.header-login-btn {
  float: right;
  padding: 10px 0;
}
.header-login-btn a {
  font-size: 14px;
  line-height: 140%;
}
.header-login-btn b {
  padding: 1.1em 1em;
}

.header-float-menu {
  display: block;
}

.header-user-name {
  float: right;
  margin-right: 10px;
  padding: 10px;
  font-size: 12px;
  line-height: 140%;
}
.header-user-name p {
  display: table-cell;
  height: 50px;
  vertical-align: middle;
}

.alt-user-name {
  display: none;
}

.alt-menu {
  float: right;
  margin-right: 10px;
  padding: 6px 0;
  letter-spacing: -5px;
  font-size: 14px;
  line-height: 140%;
}
.alt-menu * {
  letter-spacing: 0;
}
.alt-menu p {
  line-height: 20px;
  font-size: 12px;
}
.alt-menu ul {
  display: inline-block;
  margin: 0 10px 0 10px;
  padding: 3px 0 0;
  letter-spacing: 0;
}
.alt-menu ul:first-child {
  padding: 0;
}
.alt-menu li {
  display: inline-block;
  margin: 0 1px;
  letter-spacing: 0;
}
.alt-menu nav > p {
  display: inline-block;
  width: 6em;
  padding: 0 0 5px;
}

.alt-menu-btn {
  font-size: 14px;
  line-height: 140%;
}
.alt-menu-btn b {
  width: 2.2em;
  padding: 0 7px;
}

.alt-menu-btn-current {
  background: #29A4EA;
  background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzI5YTRlYSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzAwN2VkNiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');
  background-size: 100%;
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #29a4ea), color-stop(100%, #007ed6));
  background-image: -moz-linear-gradient(#29a4ea, #007ed6);
  background-image: -webkit-linear-gradient(#29a4ea, #007ed6);
  background-image: linear-gradient(#29a4ea, #007ed6);
}
.alt-menu-btn-current:hover {
  background: #007ED6;
}

/* ============================
 *
 *     Contents
 *
 * ============================ */
#main {
  position: relative;
  padding: 0 0 40px;
}

/* ===== topic-path ===== */
.topic-path {
  overflow: hidden;
  width: 100%;
  margin: 10px 0;
}
.topic-path li {
  float: left;
  margin-right: 0.5em;
  font-size: 0.75em;
  line-height: 140%;
  color: #666;
}
.topic-path li:after {
  content: "＞";
  margin-left: 0.25em;
}
.topic-path li:last-child:after {
  content: "";
}
.topic-path a {
  color: #666;
}
.topic-path a:hover {
  color: #999;
}

/* ===== step ===== */
.steps {
  margin: 0;
  text-align: center;
  letter-spacing: -5px;
  font-size: 16px;
  line-height: 140%;
}
.steps li {
  display: inline-block;
  margin-right: 8px;
  vertical-align: top;
  font-size: 0.75em;
  line-height: 140%;
  text-align: center;
  letter-spacing: 0;
}
.steps .pc-skin {
  display: block;
  background: url(../img/step-arrow.png) no-repeat 100% 50%;
}
.steps .frame {
  display: table-cell;
  border: 2px solid #CCC;
  text-align: center;
  vertical-align: middle;
}
.steps .nested-step {
  font-size: 11px;
  line-height: 140%;
}
.steps .nested-step .frame {
  display: block;
  width: 100%;
  height: auto;
}
.steps .nested-step .pc-skin {
  margin-top: 4px;
}
.steps .nested-step .pc-skin:first-child {
  margin: 0;
}
.steps .nested-step-2 .pc-skin {
  line-height: 39px;
}
.steps .nested-step-3 .pc-skin {
  line-height: 23px;
}
.steps .payment-step {
  width: 200px;
}
.steps .payment-step .frame {
  width: 176px;
}
.steps .complete-step {
  margin-right: 0;
}
.steps .complete-step .pc-skin {
  background: none;
}
.steps .current .frame {
  background: #666;
  color: #FFF;
}
/* KOJI ADD STEP6 no select payment */
.steps .current .frame.no-select-payment {
  background: #FFF;
  color: #000;
}

.steps-8 li {
  width: 108px;
}
.steps-8 .frame {
  width: 86px;
  height: 86px;
}
.steps-8 .complete-step {
  width: 90px;
}

.steps-10 li {
  margin-right: 6px;
  width: 84px;
}
.steps-10 .frame {
  width: 66px;
  height: 86px;
}
.steps-10 .payment-step {
  width: 196px;
}
.steps-10 .payment-step .frame {
  width: 176px;
}
.steps-10 .complete-step {
  width: 70px;
}

.confirm-label {
  color: #00F;
}

/* ============================
 *
 *     Footer - #colophon
 *
 * ============================ */
#colophon {
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
  font-size: 16px;
  line-height: 140%;
}

.footer-message-header {
  height: 30px;
  background: #333;
  color: #FFF;
}
.footer-message-header a {
  color: #FFF;
  text-decoration: none;
}
.footer-message-header a:visited {
  color: #FFF;
}
.footer-message-header a:focus {
  color: #FFF;
}
.footer-message-header a:hover {
  color: #FFF;
}
.footer-message-header a:active {
  color: #FFF;
}

.footer-message-toggle {
  position: absolute;
  left: 0;
  top: -20px;
  display: inline-block;
  width: 170px;
  height: 50px;
  background: #333;
  border-radius: 3px;
  cursor: pointer;
}
.footer-message-toggle:active {
  -moz-box-shadow: #0080ff 0 0 6px;
  -webkit-box-shadow: #0080ff 0 0 6px;
  box-shadow: #0080ff 0 0 6px;
}

.footer-message-trigger {
  display: block;
  padding: 13px 15px;
}
.footer-message-trigger .display-state {
  display: inline-block;
  margin-left: 0.5em;
  font-size: 13px;
  line-height: 140%;
}
.footer-message-trigger .display-state .arrow {
  margin-right: 0.25em;
}
.footer-message-trigger .display-state-open {
  display: none;
}
.footer-message-trigger .display-state-close {
  display: inline-block;
}

.footer-message-trigger-close .display-state-open {
  display: inline-block;
}
.footer-message-trigger-close .display-state-close {
  display: none;
}

.footer-message {
  overflow: hidden;
  -moz-box-shadow: rgba(0, 0, 0, 0.2) 2px 2px 2px 0 inset;
  -webkit-box-shadow: rgba(0, 0, 0, 0.2) 2px 2px 2px 0 inset;
  box-shadow: rgba(0, 0, 0, 0.2) 2px 2px 2px 0 inset;
  background: #EEE;
  /*height: 58px;*/
  font-size: 14px;
  line-height: 140%;
}
.footer-message .footer-message-wrapper {
  margin-top: 0;
  -webkit-transition: margin-top 0.2s cubic-bezier(1, 0, 0, 1);
  transition: margin-top 0.2s cubic-bezier(1, 0, 0, 1);
}
.footer-message .message-inner {
  overflow: auto;
  max-height: 13.5em;
  padding: 10px 0;
  -webkit-overflow-scrolling: touch;
}

.footer-message-close .footer-message-wrapper {
  margin-top: -100%;
}

.footer-status {
  padding: 10px;
  min-height: 30px;
  background: #777;
}
.footer-status dl {
  float: left;
  display: block;
  margin: 0 10px 0 0;
  background: #FFF;
  border: 1px solid #FFF;
}
.footer-status dt {
  display: table-cell;
  height: 24px;
  padding: 0.25em 0.5em;
  background: #F00;
  color: #FFF;
  vertical-align: middle;
  text-align: center;
}
.footer-status dd {
  display: table-cell;
  height: 24px;
  padding: 0.25em 0.5em;
  vertical-align: middle;
  text-align: center;
}
.footer-status .total-amount {
  width: 348px;
}
.footer-status .total-amount dd {
  width: 180px;
}
.footer-status .amount {
  height: 24px;
  padding: 0 0.5em;
  color: #F00;
  font-size: 24px;
  line-height: 24px;
}
.footer-status .exam-type {
  width: 628px;
  margin-right: 0;
}
.footer-status .exam-type dd {
  width: 520px;
}

.check-balloon {
  position: absolute;
  right: 15px;
  top: -20px;
  text-align: center;
}
.check-balloon b {
  display: none;
  position: relative;
  display: inline-block;
  z-index: 999;
  padding: 0.5em 0.75em;
  color: #000;
  font-size: 14px;
  font-family: "HelveticaNeue", Arial, sans-serif;
  line-height: 120%;
  background: #FFC926;
  border: 1px solid #FFF;
  -moz-box-shadow: rgba(0, 0, 0, 0.2) 1px 1px 2px 0;
  -webkit-box-shadow: rgba(0, 0, 0, 0.2) 1px 1px 2px 0;
  box-shadow: rgba(0, 0, 0, 0.2) 1px 1px 2px 0;
}
.check-balloon b:before {
  content: " ";
  position: absolute;
  left: 50%;
  bottom: -13px;
  z-index: 997;
  width: 0;
  height: 0;
  margin-left: -8px;
  border-top: 7px solid #FFF;
  border-right: 6px solid transparent;
  border-bottom: 6px solid transparent;
  border-left: 6px solid #FFF;
  font-size: 0;
  -webkit-transform: skewX(-25deg);
  transform: skewX(-25deg);
}
.check-balloon b:after {
  content: " ";
  position: absolute;
  left: 50%;
  bottom: -11px;
  z-index: 998;
  width: 0;
  height: 0;
  margin-left: -6px;
  border-top: 6px solid #FFC926;
  border-right: 5px solid transparent;
  border-bottom: 6px solid transparent;
  border-left: 5px solid #FFC926;
  font-size: 0;
  -webkit-transform: skewX(-25deg);
  transform: skewX(-25deg);
}

/* ============================
 *
 *     Tablet Layout
 *
 * ============================ */
@media screen and (max-width: 1023px) {
  /* limit width for pc layout */
  .width-limiter {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    padding: 0;
  }

  /* liquid table width for mobile layout */
  .global-pad {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    padding: 0 15px;
  }

  /* ===== title styles ===== */
  .left-bordered-rect-title {
    border-radius: 0;
  }

  /* ===== list style ===== */
  .bordered-list {
    border-top: 1px solid #CCC;
  }
  .bordered-list li {
    border: 0;
    border-bottom: 1px solid #CCC;
    margin: 0;
  }
  .bordered-list li > a, .bordered-list li > b, .bordered-list li > label {
    padding: 1em;
  }

  /* glid layout */
  .grid-column li {
    width: 32%;
  }

  /* ===== section styles ===== */
  /* com section */
  .com-section {
    margin: 20px 0;
  }

  /* common create margin styles */
  .pc-fit-m-garter {
    width: auto;
    margin: 15px;
  }

  .pc-garter-m-fit {
    width: 100%;
    margin: 0;
  }

  .pc-garter-m-garter {
    margin: 15px;
  }

  /* well */
  .well {
    margin: 1em;
    padding: 0.75em;
  }

  /* section with title */
  .box-with-title {
    border: 0;
  }
  .box-with-title .box-title {
    border: 0;
  }
  .box-with-title .box-container {
    padding: 15px;
  }
  .box-with-title .box-container-flat {
    padding: 0;
  }

  /* bordered section */
  .bordered-box {
    margin: 15px;
    padding: 15px;
  }

  /* ===== table styles ===== */
  .com-table {
    margin: 0;
  }
  .com-table th {
    padding: 0.5em;
  }

  /* ===== step ===== */
  .steps {
    text-align: center;
  }
  .steps li {
    width: auto;
    margin: 0;
    counter-increment: count;
  }
  .steps li:last-child {
    width: auto;
  }
  .steps li:before {
    content: "STEP" counter(count) "";
    font-size: 7px;
    line-height: 140%;
    color: #17154C;
  }
  .steps li:after {
    content: " ";
    display: block;
    width: 9px;
    height: 9px;
    margin: 0 auto;
    border: 3px solid #BBB;
    background: #BBB;
    border-radius: 50%;
  }
  .steps .pc-skin {
    display: none;
  }
  .steps .nested-step {
    font-size: 12px;
    line-height: 140%;
  }
  .steps .payment-step {
    width: auto;
  }
  .steps .current:after {
    background: #000;
  }

  .steps-8 li, .steps-8 .payment-step {
    width: 2.5em;
  }
  .steps-8 li:last-child, .steps-8 .payment-step:last-child {
    width: 2.5em;
  }

  .steps-10 li, .steps-10 .payment-step {
    width: 2em;
  }
  .steps-10 li:last-child, .steps-10 .payment-step:last-child {
    width: 2em;
  }

  /* ===== topicpath ===== */
  .topicpath {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0;
    padding: 10px;
  }

  /* ===== header ===== */
  #masthead {
    position: fixed;
    left: 0;
    top: 0;
  }

  .header-moblie-only {
    display: block;
  }

  .header-name {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 15px;
  }

  .header-name-two-lines {
    width: 80%;
    padding: 10px;
    font-size: 18px;
    line-height: 120%;
  }

  .mypage-header-name {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 54%;
  }

  .header-tagline {
    display: none;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 45%;
    padding: 15px;
    text-align: right;
  }

  .header-login-btn {
    display: none;
  }

  .header-menu-btn {
    display: block;
    position: absolute;
    right: 0;
    top: 0;
    padding: 15px;
    background: #FFF;
    font-size: 24px;
    line-height: 140%;
  }

  .header-float-menu {
    overflow: hidden;
    position: absolute;
    left: 0;
    top: 63px;
    width: 100%;
    height: auto;
    background: #333;
  }

  .header-float-menu-trans {
    margin-bottom: -160%;
    -webkit-transition: margin-bottom 0.5s cubic-bezier(1, 0, 0, 1);
    transition: margin-bottom 0.5s cubic-bezier(1, 0, 0, 1);
  }

  .jq-mobile-menu-open .header-float-menu-trans {
    margin-bottom: 0;
  }

  .header-user-name {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 36%;
    padding: 5px;
    margin-right: 60px;
    direction: rtl;
  }

  .alt-menu {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    float: none;
    margin: 0;
    padding: 3px 0 0;
    border: 1px solid #FFF;
  }

  .alt-menu-btn {
    font-size: 12px;
    line-height: 140%;
  }

  .alt-user-name {
    display: block;
    width: auto;
    margin: 0 0.75em 0.25em;
    padding: 0.4em 0.5em;
    border-bottom: 1px solid #FFF;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  }

  .alt-font-size {
    margin: 0 0.75em 0;
  }

  .alt-site-color {
    margin: 0 0.75em 0;
  }

  .alt-login-btn {
    margin: 0.25em 0.75em 0;
    padding-top: 0.5em;
    border-top: 1px solid #FFF;
    border-top: 1px solid rgba(255, 255, 255, 0.2);
  }
  .alt-login-btn .login-btn {
    width: 100%;
  }
  .alt-login-btn a {
    font-size: 14px;
    line-height: 140%;
  }

  .alt-mypage-menu-title {
    padding: 0.66em 0.75em;
    font-size: 12px;
    line-height: 140%;
    border-bottom: 1px solid #FFF;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  }

  .alt-mypage-menu ul {
    display: block;
    margin: 0;
    padding: 0;
  }
  .alt-mypage-menu li {
    display: block;
    margin: 0;
    padding: 0;
    font-size: 12px;
    line-height: 140%;
  }
  .alt-mypage-menu a {
    display: block;
    padding: 0.66em;
    color: #FFF;
    text-decoration: none;
    border-bottom: 1px solid #FFF;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    background: #333;
  }
  .alt-mypage-menu a:visited {
    color: #FFF;
  }
  .alt-mypage-menu a:focus {
    color: #FFF;
  }
  .alt-mypage-menu a:hover {
    color: #FFF;
  }
  .alt-mypage-menu a:active {
    color: #FFF;
  }
  .alt-mypage-menu a:hover {
    background: #666;
  }
  .alt-mypage-menu a .arrow {
    margin-right: 0.5em;
  }
  .alt-mypage-menu .alt-mypage-menu-2nd a {
    padding-left: 1.5em;
  }

  .alt-mypage-menu-half {
    width: 100%;
    letter-spacing: -0.5em !important;
  }
  .alt-mypage-menu-half li {
    display: inline-block;
    width: 50%;
    letter-spacing: 0;
  }
  .alt-mypage-menu-half li:nth-child(2n+1) a {
    border-right: 1px solid #FFF;
    border-right: 1px solid rgba(255, 255, 255, 0.2);
  }

  /* ===== main ===== */
  #main {
    padding-top: 65px;
  }

  /* ===== footer ===== */
  .footer-message-toggle {
    left: 15px;
  }

  .footer-message {
    font-size: 0.875rem;
    line-height: 120%;
  }
  .footer-message .message-inner {
    padding: 5px;
  }

  .footer-status dt {
    font-size: 0.625rem;
    line-height: 140%;
  }
  .footer-status dd {
    font-size: 0.625rem;
    line-height: 140%;
  }
  .footer-status .total-amount {
    width: 260px;
  }
  .footer-status .total-amount dt {
    width: 12em;
  }
  .footer-status .amount {
    font-size: 1.125rem;
    line-height: 24px;
  }
  .footer-status .exam-type {
    width: 470px;
  }
  .footer-status .exam-type dt {
    width: 6em;
  }
  .footer-status .exam-type dd {
    font-size: 0.625rem;
    line-height: 140%;
  }
}
/* ============================
 *
 *     Small Screen Layout
 *
 * ============================ */
@media screen and (max-width: 767px) {
  body {
    font-size: 82.75%;
    line-height: 140%;
  }

  /* ===== form parts styles ===== */
  input.short,
  input.half,
  input.long,
  input.full {
    width: auto;
  }

  label + label {
    margin-left: 0.25em;
  }

  .input-joint {
    margin: 0 0.25em;
  }

  .mobile-breaker {
    display: block;
    margin: 0.25em 0;
  }

  select, option {
    font-size: 0.75rem;
    line-height: 140%;
  }

  /* select tag skin */
  select.adjust-skin {
    padding: 0.45em 1.75em 0.75em 0.45em;
    font-size: 0.75em;
    font-size: 0.75rem;
    line-height: 130%;
    vertical-align: middle;
  }

  /* com section */
  .com-section {
    margin: 15px 0;
  }

  /* limit width for pc layout */
  .width-limiter {
    width: 100%;
    margin: 0;
  }

  /* liquid table width for mobile layout */
  .global-pad {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    padding: 0 15px;
  }

  /* ===== arrow sprites ===== */
  .sprite-arrows {
    width: 18px;
    height: 18px;
    background-size: 72px auto;
  }

  .spr-arr-b-r {
    background-position: 0px 0px;
  }

  .spr-arr-b-l {
    background-position: -18px 0px;
  }

  .spr-arr-b-u {
    background-position: -36px 0px;
  }

  .spr-arr-b-d {
    background-position: -54px 0px;
  }

  .spr-arr-w-r {
    background-position: 0px -18px;
  }

  .spr-arr-w-l {
    background-position: -18px -18px;
  }

  .spr-arr-w-u {
    background-position: -36px -18px;
  }

  .spr-arr-w-d {
    background-position: -54px -18px;
  }

  .spr-arr-g-r {
    background-position: 0px -36px;
  }

  .spr-arr-g-l {
    background-position: -18px -36px;
  }

  .spr-arr-g-u {
    background-position: -36px -36px;
  }

  .spr-arr-g-d {
    background-position: -54px -36px;
  }

  .sprite-triangles {
    width: 12px;
    height: 12px;
    background-size: 72px auto;
  }

  .spr-tri-b-r {
    background-position: 0px -60px;
  }

  .spr-tri-b-l {
    background-position: -12px -60px;
  }

  .spr-tri-b-u {
    background-position: -24px -60px;
  }

  .spr-tri-b-d {
    background-position: -36px -60px;
  }

  .spr-tri-w-r {
    background-position: 0px -72px;
  }

  .spr-tri-w-l {
    background-position: -12px -72px;
  }

  .spr-tri-w-u {
    background-position: -24px -72px;
  }

  .spr-tri-w-d {
    background-position: -36px -72px;
  }

  .spr-tri-g-r {
    background-position: 0px -84px;
  }

  .spr-tri-g-l {
    background-position: -12px -84px;
  }

  .spr-tri-g-u {
    background-position: -24px -84px;
  }

  .spr-tri-g-d {
    background-position: -36px -84px;
  }

  .spr-tri-r-r {
    background-position: 0px -96px;
  }

  .spr-tri-r-l {
    background-position: -12px -96px;
  }

  .spr-tri-r-u {
    background-position: -24px -96px;
  }

  .spr-tri-r-d {
    background-position: -36px -96px;
  }

  /* ===== button styles ===== */
  /* initialize button base */
  .com-btn {
    font-size: 0.75rem;
    line-height: 140%;
  }

  /* ===== title styles ===== */
  .left-bordered-rect-title {
    font-size: 1rem;
    line-height: 140%;
  }

  .left-bordered-title {
    font-size: 1rem;
    line-height: 140%;
  }
  .left-bordered-title b {
    display: block;
  }
  .left-bordered-title .notes {
    display: block;
    font-size: 0.75rem;
    line-height: 140%;
    margin-left: 0;
  }

  /* ===== section styles ===== */
  /* com section */
  .com-section {
    margin: 15px 0;
  }

  /* well */
  .well {
    margin: 1em 0;
    border-left: 0;
    border-right: 0;
    border-radius: 0;
  }

  /* section with title */
  .box-with-title {
    margin: 0;
  }
  .box-with-title .box-title {
    border: 0;
  }
  .box-with-title .box-title .notes {
    display: inline-block;
    margin: 0;
    white-space: normal;
  }
  .box-with-title .box-container {
    padding: 15px;
  }
  .box-with-title .box-container-flat {
    padding: 0;
  }

  /* ===== list style ===== */
  .bordered-list > li > a, .bordered-list > li > b, .bordered-list > li > label {
    font-size: 0.75em;
    font-size: 0.75rem;
    line-height: 140%;
  }

  /* glid layout */
  .grid-column li {
    display: block;
    width: auto;
  }

  /* ===== section styles ===== */
  /* bordered section */
  .bordered-section {
    margin: 15px;
    padding: 15px;
  }

  .weak-warnings {
    text-align: center;
  }
  .weak-warnings strong {
    color: #F00;
    font-size: 0.8125em;
    font-size: 0.8125rem;
    line-height: 120%;
  }

  .warnings {
    padding: 0.5em;
    text-align: left;
  }
  .warnings strong {
    font-size: 0.8125rem;
    line-height: 120%;
  }
  .warnings .notes {
    font-size: 0.625rem;
    line-height: 120%;
  }

  /* college specific notes */
  .college-notes-box {
    padding: 0.5em;
  }

  /* raise actions */
  .raise-actions {
    margin: 15px 0;
    text-align: center;
  }
  .raise-actions a, .raise-actions button {
    margin: 0 0.5em;
  }

  .raise-actions-single a, .raise-actions-single button {
    margin: 0;
  }

  /* errors */
  .errors {
    padding: 0.5em;
  }
  .errors li {
    font-size: 0.8125rem;
    line-height: 120%;
    font-weight: normal;
  }

  /* ===== table styles ===== */
  .com-table {
    margin: 0;
  }
  .com-table th, .com-table td {
    font-size: 0.75em;
    font-size: 0.75rem;
    line-height: 140%;
  }
  .com-table tr:last-child th, .com-table tr:last-child td {
    border: 0;
  }
  .com-table th {
    padding: 0.5em;
    border-bottom: 1px solid #CCC;
    background: none;
  }
  .com-table th label {
    display: block;
    margin-right: 0;
  }
  .com-table th[scope=row] {
    width: 28%;
  }
  .com-table th .notes {
    display: block;
    font-size: 0.625rem;
    line-height: 120%;
  }
  .com-table th .require {
    margin: 0.25em 0;
  }
  .com-table th .icon-origin {
    position: relative;
    padding: 0;
  }
  .com-table th .icon-origin .require {
    position: relative;
    right: auto;
    top: auto;
    margin-top: 0;
  }
  .com-table td {
    padding: 1em;
    border-bottom: 1px solid #CCC;
    background: none;
  }
  .com-table .notes {
    display: block;
  }
  .com-table input + .notes, .com-table label + .notes {
    margin: 0.25em 0;
  }
  .com-table select + .com-btn {
    margin-left: 0;
  }

  /* bordered table */
  .bordered-table th, .bordered-table td {
    font-size: 0.75em;
    font-size: 0.75rem;
    line-height: 140%;
  }
  .bordered-table th[scope=row] {
    width: 34%;
  }

  /* special table */
  .special-table th, .special-table td {
    font-size: 0.75em;
    font-size: 0.75rem;
    line-height: 140%;
  }
  .special-table th[scope=row] {
    width: 34%;
  }

  /* ===== topicpath ===== */
  .topicpath li {
    margin-right: 0.25em;
    font-size: 0.625rem;
    line-height: 140%;
  }

  /* ===== header ===== */
  .header-name {
    font-size: 16px;
    letter-spacing: 140%;
  }

  .header-name-two-lines {
    padding: 5px;
  }

  .mypage-header-name {
    float: none;
    display: block;
    width: 100%;
    padding: 15px 50px 5px 15px;
  }

  .header-tagline {
    font-size: 12px;
    letter-spacing: 140%;
  }

  .header-menu-btn {
    padding: 11px 9px;
    font-size: 16px;
    letter-spacing: 140%;
  }

  .header-float-menu {
    overflow: hidden;
    position: absolute;
    left: 0;
    top: 52px;
  }

  .header-user-name {
    float: none;
    display: block;
    width: 100%;
    margin: 0;
    padding: 3px 10px 5px 15px;
    direction: inherit;
  }
  .header-user-name p {
    height: auto;
    font-size: 10px;
    line-height: 120%;
  }

  .alt-menu-btn {
    font-size: 12px;
    line-height: 140%;
  }

  /* ===== main ===== */
  #main {
    padding-top: 58px;
  }

  /* ===== footer ===== */
  .footer-message-header {
    height: 20px;
  }

  .footer-message-toggle {
    left: 10px;
    top: -15px;
    width: 130px;
    height: 30px;
    font-size: 12px;
    line-height: 140%;
  }

  .footer-message-trigger {
    display: block;
    padding: 8px 9px;
  }
  .footer-message-trigger .display-state {
    font-size: 10px;
    line-height: 120%;
  }

  .footer-message {
    /*height: 53px;*/
    font-size: 9px;
    line-height: 120%;
  }
  .footer-message .message-inner {
    max-height: 10.5em;
    padding: 5px;
  }

  .footer-status {
    padding: 5px;
    min-height: 55px;
  }
  .footer-status dl {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    float: none;
    display: table;
    width: 100%;
    margin: 0 0 5px;
  }
  .footer-status dt {
    width: 28%;
    height: 24px;
    padding: 0;
    font-size: 0.625rem;
    line-height: 140%;
  }
  .footer-status dd {
    width: 71%;
    height: 24px;
    padding: 0;
    font-size: 0.625rem;
    line-height: 140%;
  }
  .footer-status .total-amount {
    width: 100%;
  }
  .footer-status .total-amount dd {
    width: 71%;
  }
  .footer-status .amount {
    height: 24px;
    padding: 0 0.5em;
    color: #F00;
    font-size: 18px;
    line-height: 24px;
  }
  .footer-status .exam-type {
    width: 100%;
    margin-bottom: 0;
  }
  .footer-status .exam-type dd {
    width: 71%;
    font-size: 9px;
    line-height: 140%;
  }

  .check-balloon b {
    font-size: 10px;
    line-height: 120%;
  }
}
