@charset "UTF-8";
/*foundation base*/
/*
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%;
  background: transparent;
}

body {
  line-height: 1.5;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, main {
  display: block;
}

ul, li {
  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;
}

/**
 * initiallize
 * タグ自体のstyleを記述
 */
 html {
	font-family: 'Noto Sans JP', sans-serif;
  color: #222;
  word-wrap: break-word;
  font-size: 13px;
}

body {
  position: relative;
  width: 100%;
  min-width: 1000px;
  height: 100%;
  -webkit-text-size-adjust: 100%;
}
@media print, screen and (max-width: 750px) {
  body {
    min-width: 0;
  }
}

a {
  text-decoration: none;
  color: inherit;
  -webkit-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s;
}
a:hover {
  text-decoration: none;
  opacity: 0.8;
}

img {
  vertical-align: bottom;
  max-width: 100%;
}

strong {
  font-weight: bold;
}

input {
  padding: 0;
  border: none;
  background: none;
}

* {
  box-sizing: border-box;
}

input[type=text],
input[type=tel],
input[type=password],
input[type=email],
input[type=search],
input[type=url],
input[type=datetime],
input[type=date],
input[type=month],
input[type=week],
input[type=time],
input[type=datetime-local],
input[type=number],
select,
textarea {
  padding: 6px;
  font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ヒラギノ丸ゴ ProN W4", "Hiragino Maru Gothic ProN", "ヒラギノ丸ゴ Pro W4", "Hiragino Maru Gothic Pro", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
  background-color: #fff;
  border: solid 1px #c9c9c9;
  vertical-align: bottom;
}
input[type=text]::-webkit-input-placeholder,
input[type=tel]::-webkit-input-placeholder,
input[type=password]::-webkit-input-placeholder,
input[type=email]::-webkit-input-placeholder,
input[type=search]::-webkit-input-placeholder,
input[type=url]::-webkit-input-placeholder,
input[type=datetime]::-webkit-input-placeholder,
input[type=date]::-webkit-input-placeholder,
input[type=month]::-webkit-input-placeholder,
input[type=week]::-webkit-input-placeholder,
input[type=time]::-webkit-input-placeholder,
input[type=datetime-local]::-webkit-input-placeholder,
input[type=number]::-webkit-input-placeholder,
select::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: #e2e2e2;
}
input[type=text]:-ms-input-placeholder,
input[type=tel]:-ms-input-placeholder,
input[type=password]:-ms-input-placeholder,
input[type=email]:-ms-input-placeholder,
input[type=search]:-ms-input-placeholder,
input[type=url]:-ms-input-placeholder,
input[type=datetime]:-ms-input-placeholder,
input[type=date]:-ms-input-placeholder,
input[type=month]:-ms-input-placeholder,
input[type=week]:-ms-input-placeholder,
input[type=time]:-ms-input-placeholder,
input[type=datetime-local]:-ms-input-placeholder,
input[type=number]:-ms-input-placeholder,
select:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: #e2e2e2;
}
input[type=text]::-moz-placeholder,
input[type=tel]::-moz-placeholder,
input[type=password]::-moz-placeholder,
input[type=email]::-moz-placeholder,
input[type=search]::-moz-placeholder,
input[type=url]::-moz-placeholder,
input[type=datetime]::-moz-placeholder,
input[type=date]::-moz-placeholder,
input[type=month]::-moz-placeholder,
input[type=week]::-moz-placeholder,
input[type=time]::-moz-placeholder,
input[type=datetime-local]::-moz-placeholder,
input[type=number]::-moz-placeholder,
select::-moz-placeholder,
textarea::-moz-placeholder {
  color: #e2e2e2;
}
input[type=text]:focus,
input[type=tel]:focus,
input[type=password]:focus,
input[type=email]:focus,
input[type=search]:focus,
input[type=url]:focus,
input[type=datetime]:focus,
input[type=date]:focus,
input[type=month]:focus,
input[type=week]:focus,
input[type=time]:focus,
input[type=datetime-local]:focus,
input[type=number]:focus,
select:focus,
textarea:focus {
  background-color: #eef4fb;
}

input[type=radio],
input[type=checkbox] {
  margin: 0;
  vertical-align: -1px;
}

button {
  font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ヒラギノ丸ゴ ProN W4", "Hiragino Maru Gothic ProN", "ヒラギノ丸ゴ Pro W4", "Hiragino Maru Gothic Pro", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
}

input[type="button"],
input[type="submit"] {
  -webkit-appearance: none;
  cursor: pointer;
  font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ヒラギノ丸ゴ ProN W4", "Hiragino Maru Gothic ProN", "ヒラギノ丸ゴ Pro W4", "Hiragino Maru Gothic Pro", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
  vertical-align: bottom;
}

textarea {
  resize: vertical;
  vertical-align: bottom;
}

em {
  font-style: italic;
}

sup {
  vertical-align: super;
}

sub {
  vertical-align: sub;
}

blockquote {
  background-color: #EEEFFF;
  padding: 1em 1em 1em 3em;
  position: relative;
  border-left: 3px solid #666;
}

blockquote:before {
  content: "“";
  font-size: 600%;
  line-height: 1em;
  color: #999;
  position: absolute;
  left: 0;
  top: 0;
}

::-moz-selection {
  background: #d4dcd6; /* Safari */
}

::selection {
  background: #d4dcd6; /* Safari */
}

::-moz-selection {
  background: #d4dcd6; /* Firefox */
}

.pci {
  display: inline;
}
@media print, screen and (max-width: 750px) {
  .pci {
    display: none !important;
  }
}

.spi {
  display: inline;
}
@media screen and (min-width: 751px) {
  .spi {
    display: none !important;
  }
}

.pc {
  display: block;
}
@media print, screen and (max-width: 750px) {
  .pc {
    display: none !important;
  }
}

.sp {
  display: block;
}
@media screen and (min-width: 751px) {
  .sp {
    display: none !important;
  }
}

/* ページフレーム
======================================= */

.f_header {
  position: relative;
  background-color: #fff;
  border-bottom: 1px solid #c9c9c9;
  padding: 12px 20px 0;
  height: 61px;
  z-index: 1000;
}
.f_header.s_login {
  padding-top: 26px;
  height: 90px;
}
.f_header .p_menuBtn {
  position: absolute;
  top: 0;
  right: 0;
  width: 60px;
  height: 60px;
  transition: opacity 0.3s;
  cursor: pointer;
}
.f_header .p_menuBtn:hover {
  opacity: 0.8;
}
.f_header.s_login .p_menuBtn {
  top: 15px;
}
.f_header .p_menuBtn::before {
  content: '';
  position: absolute;
  top: 20px;
  left: 14px;
  width: 30px;
  height: 3px;
  background-color: #0053a1;
  box-shadow: 0 8px #0053a1;
}
.f_header .p_menuBtn::after {
  content: '';
  position: absolute;
  top: 36px;
  left: 14px;
  width: 23px;
  height: 3px;
  background-color: #0053a1;
}
.f_header .p_menuBtn.s_close::before {
  top: 28px;
  transform: rotate(45deg);
  box-shadow: none;
}
.f_header .p_menuBtn.s_close::after {
  top: 28px;
  width: 30px;
  transform: rotate(-45deg);
}
.f_header .p_shopBtn {
  position: absolute;
  top: 10px;
  right: 63px;
  background: url(../img/cmn/hd_icon_store.png) no-repeat 22px 50% #e60012;
  background-size: 18px 16px;
  border-radius: 40px;
  padding: 10px 0 11px 26px;
  width: 120px;
  box-shadow: 0 4px #d9d9d9;
  text-align: center;
  color: #fff;
  font-size: 13px;
  transition: opacity 0.3s;
  cursor: pointer;
}
.f_header .p_shopBtn:hover {
  opacity: 0.8;
}
.f_header.s_login .p_shopBtn {
  top: 38px;
}
.f_header .p_mailaddress {
  position: absolute;
  top: 6px;
  right: 80px;
  max-width: calc(100vw - 650px);
}
.f_header .p_mailaddress > span {
  display: inline-block;
  background: url(../img/cmn/hd_icon_mail.svg) no-repeat 0 0;
  padding: 0 0 2px 40px;
  color: #00a1e9;
  font-size: 13px;
  max-width: 100%;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.f_header .p_mailaddress span span {
  font-size: 14px;
}
.f_header .p_btnSet {
  position: absolute;
  top: 10px;
  right: 192px;
  display: flex;
}
.f_header.s_login .p_btnSet {
  top: 38px;
}
.f_header .p_btnSet a {
  display: block;
  margin-left: 9px;
  border-radius: 40px;
  width: 120px;
  box-shadow: 0 4px #d9d9d9;
  text-align: center;
  color: #222;
  font-size: 13px;
  transition: opacity 0.3s;
  cursor: pointer;
}
.f_header .p_btnSet a span {
  position: relative;
  display: inline-block;
  padding: 8px 15px 9px 5px;
}
.f_header .p_btnSet a span::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 0;
  width: 5px;
  height: 5px;
  transform-origin: right top;
  transform: rotate(45deg);
}
.f_header .p_btnSet a.s_login {
  width: 180px;
  border: 2px solid #0053a1;
  color: #0053a1;
  font-weight: bold;
  line-height: 1.4;
}
.f_header .p_btnSet a.s_login span {
  padding: 2px 20px 2px 10px;
}
.f_header .p_btnSet a.s_login span::after {
  border-top: 2px solid #7fa9d0;
  border-right: 2px solid #7fa9d0;
}
.f_header .p_btnSet a.s_regist {
  width: 200px;
  border: 2px solid #e60012;
  color: #e60012;
  font-weight: bold;
  line-height: 1.4;
}
.f_header .p_btnSet a.s_regist span {
  padding: 2px 20px 2px 10px;
}
.f_header .p_btnSet a.s_regist span::after {
  border-top: 2px solid #f27f88;
  border-right: 2px solid #f27f88;
}
.f_header .p_btnSet a.s_regist2 {
  width: 200px;
  border: 2px solid #e60012;
  color: #e60012;
  font-size: 15px;
  font-weight: bold;
  line-height: 1.4;
}
.f_header .p_btnSet a.s_regist2 span {
  padding: 7px 20px 9px 10px;
}
.f_header .p_btnSet a.s_regist2 span::after {
  border-top: 2px solid #f27f88;
  border-right: 2px solid #f27f88;
}
.f_header .p_btnSet a.s_serial {
  background: url(../img/cmn/hd_icon_serial_history.png) no-repeat 5px 50% #00318e;
  text-align: center;
  color: #fff;
  line-height: 1.1;
}
.f_header .p_btnSet a.s_serial span {
  padding: 6px 0 6px 30px;
}
.f_header .p_btnSet a.s_mil {
  background: url(../img/cmn/hd_icon_mil_history.png) no-repeat 5px 50% #00318e;
  text-align: center;
  color: #fff;
}
.f_header .p_btnSet a.s_mil span {
  padding: 10px 0 11px 30px;
}
.f_header .p_btnSet a small {
  display: block;
  font-size: 11px;
}
.f_header .p_point2 {
  border-radius: 40px;
  border: 2px solid #e60012;
  background-color: #fff;
  padding: 5px 18px 4px;
  text-align: center;
  color: #e60012;
  font-size: 13px;
}
.f_header .p_point2 span {
  margin: 0 2px;
  font-size: 18px;
  font-weight: bold;
  vertical-align: -1px;
}
.f_header .p_point {
  position: absolute;
  top: 10px;
  right: 192px;
  border-radius: 40px;
  background-color: #e5e5e5;
  padding: 7px 20px 6px;
  font-size: 13px;
}
.f_header .p_point span {
  margin: 0 2px;
  font-size: 18px;
  font-weight: bold;
  vertical-align: -1px;
}
.f_header .p_menu {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  background-color: #0053a1;
  padding: 20px 0;
  display: none;
}
.f_header .p_menu ul {
  display: flex;
  justify-content: center;
  max-width: 1200px;
  margin: 0 auto;
}
.f_header .p_menu li {
  margin: 0 25px;
}
.f_header .p_menu a {
  color: #fff;
  font-size: 16px;
}
.f_header .p_subMenu {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  background-color: #0053a1;
  padding: 20px 0;
  display: none;
}
.f_header .p_closeMenu {
  position: absolute;
  top: 0;
  right: 0;
  width: 60px;
  height: 64px;
  cursor: pointer;
}
.f_header .p_closeMenu::after {
  content: '';
  position: absolute;
  top: 24px;
  left: 50%;
  width: 16px;
  height: 16px;
  border-top: 2px solid #fff;
  border-left: 2px solid #fff;
  transform-origin: left top;
  transform: rotate(45deg);
}
@media print, screen and (max-width: 1200px) and (min-width: 751px) {
  .f_header .p_logo {
    display: inline-flex;
    width: calc(100% - 645px);
    height: 30px;
    align-items: center;
  }
}
@media print, screen and (max-width: 1200px) {
  .f_header .p_menu li {
    margin: 0 15px;
  }
  .f_header .p_menu a {
    font-size: 14px;
  }
  .f_header .p_mailaddress {
    max-width: 540px;
  }
}
@media print, screen and (max-width: 750px) {
  .f_header {
    padding: 8px 10px 0;
    height: 81px;
    position: sticky;
    top: 0;
  }
  .f_header.s_login {
    padding-top: 8px;
    height: 96px;
  }
  body.s_app .f_header.s_login {
    height: 64px;
  }
  .f_header.s_simple {
    height: 44px;
  }
  .f_header .p_logo img {
    width: 175px;
  }
  .f_header .p_menuBtn {
    width: 42px;
    height: 42px;
  }
  .f_header.s_login .p_menuBtn {
    top: 0;
  }
  .f_header .p_menuBtn::before {
    top: 12px;
    left: 9px;
    width: 24px;
  }
  .f_header .p_menuBtn::after {
    top: 28px;
    left: 9px;
    width: 20px;
  }
  .f_header .p_menuBtn.s_close::before {
    top: 20px;
  }
  .f_header .p_menuBtn.s_close::after {
    top: 20px;
    width: 24px;
  }
  .f_header .p_shopBtn {
    top: 6px !important;
    right: 44px;
    background-position: 10px 50%;
    background-size: 16px auto;
    padding: 8px 0 7px 22px;
    width: 80px;
    box-shadow: 0 2px #d9d9d9;
    font-size: 10px;
  }
  .f_header .p_mailaddress {
    top: 42px;
    left: 10px;
    right: 10px;
    max-width: none;
    text-align: center;
  }
  body.s_app .f_header .p_mailaddress {
    top: 8px;
  }
  .f_header .p_mailaddress > span {
    background-size: 21px auto;
    padding-left: 25px;
    font-size: 12px;
  }
  .f_header .p_mailaddress span span {
    font-size: 12px;
  }
  .f_header .p_btnSet {
    top: auto !important;
    left: 0;
    right: 0;
    bottom: 0;
    border-top: 1px solid #e5e5e5;
    border-bottom: 1px solid #e5e5e5;
  }
  .f_header .p_btnSet li {
    width: 50%;
  }
  .f_header .p_btnSet.s_login li,
  .f_header.s_login .p_btnSet li {
    width: 25%;
  }
  .f_header .p_btnSet.s_login li:first-child,
  .f_header.s_login .p_btnSet li:first-child {
    width: 50%;
  }
  .f_header .p_btnSet li + li {
    border-left: 1px solid #e5e5e5;
  }
  .f_header .p_btnSet a {
    margin-left: 0;
    width: auto;
    border-radius: 0;
    box-shadow: none;
    font-size: 12px;
  }
  .f_header .p_btnSet a span {
    padding: 5px 15px 4px 5px;
  }
  .f_header .p_btnSet a.s_login {
    width: auto;
    border: none;
    font-weight: normal;
  }
  .f_header .p_btnSet a.s_login span {
    padding: 2px 15px 2px 5px;
  }
  .f_header .p_btnSet a.s_login span::after {
    border-color: #0053a1;
  }
  .f_header .p_btnSet a.s_regist {
    width: auto;
    border: none;
    font-weight: normal;
  }
  .f_header .p_btnSet a.s_regist span {
    padding: 2px 15px 2px 5px;
  }
  .f_header .p_btnSet a.s_regist span::after {
    border-color: #e60012;
  }
  .f_header .p_btnSet a.s_regist2 {
    width: auto;
    border: none;
    font-size: 14px;
    font-weight: normal;
  }
  .f_header .p_btnSet a.s_regist2 span {
    padding: 8px 15px 7px 5px;
  }
  .f_header .p_btnSet a.s_regist2 span::after {
    border-color: #e60012;
  }
  .f_header .p_btnSet a.s_serial {
    background-size: auto 23px;
    font-size: 10px;
  }
  .f_header .p_btnSet a.s_serial span {
    padding: 2px 0 3px 27px;
  }
  .f_header .p_btnSet a.s_mil {
    background-size: auto 23px;
    font-size: 10px;
  }
  .f_header .p_btnSet a.s_mil span {
    padding: 6px 0 6px 27px;
  }
  .f_header .p_btnSet a small {
    font-size: 10px;
  }
  .f_header .p_point2 {
    border-radius: 0;
    border-width: 1px;
    padding: 2px 0 1px;
    font-size: 12px;
  }
  .f_header .p_point2 span {
    font-size: 15px;
  }
  .f_header .p_point {
    top: auto;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 0;
    padding: 3px 20px;
    text-align: center;
    font-size: 11px;
  }
  .f_header .p_point span {
    font-size: 16px;
  }
  .f_header .p_menu {
    padding: 0;
    max-height: calc(100vh - 72px);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
  .f_header .p_menu ul {
    display: block;
  }
  .f_header .p_menu li {
    margin: 0;
    border-top: 1px solid #003783;
  }
  .f_header .p_menu a {
    position: relative;
    display: block;
    padding: 10px 15px;
    font-size: 12px;
  }
  .f_header .p_menu a::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 10px;
    width: 5px;
    height: 5px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform-origin: right top;
    transform: rotate(45deg);
  }
  .f_header .p_menu a.s_hasSubMenu::after {
    top: 58%;
    right: 14px;
    transform: rotate(135deg);
  }
  .f_header .p_menu a.s_hasSubMenu.s_close::after {
    top: 43%;
    transform: rotate(-45deg);
  }
  .f_header .p_subMenu {
    position: static;
    padding: 0;
  }
  .f_header .p_subMenu a {
    padding-left: 30px;
  }
  .f_header .p_closeMenu {
    display: none;
  }
}

.f_navi {
  position: fixed;
  top: 50%;
  right: 10px;
  z-index: 1000;
  transform: translateY(-50%);
  border-radius: 6px;
  overflow: hidden;
  box-shadow: 0 2px rgba(0,0,0,0.15);
}
body.s_app .f_navi {
  display: none;
}
.f_navi a {
  display: block;
  width: 80px;
  height: 70px;
  padding: 34px 0 0;
  text-align: center;
  color: #fff;
  font-size: 10px;
  font-weight: bold;
  line-height: 1.3;
}
.f_navi a:hover {
  opacity: 1;
}
.f_navi a span {
  display: block;
  font-size: 15px;
}
.f_navi a.s_top {
  position: relative;
  background-color: #e5e5e5;
  color: #0053a1;
  font-size: 18px;
}
.f_navi a.s_top:hover {
  background-color: #f0f0f0;
}
.f_navi a.s_top::after {
  content: '';
  position: absolute;
  top: 15px;
  left: 50%;
  width: 8px;
  height: 8px;
  border-top: 3px solid #fff;
  border-left: 3px solid #fff;
  transform-origin: left top;
  transform: rotate(45deg);
}
.f_navi a.s_point {
  background: url(../img/cmn/nav_icon_point.png) no-repeat 50% 8px #e60012;
  background-size: 21px 21px;
}
.f_navi a.s_point:hover {
  background-color: #eb3341;
}
.f_navi a.s_campaign {
  background: url(../img/cmn/nav_icon_campaign.png) no-repeat 50% 8px #0053a1;
  background-size: 21px 21px;
}
.f_navi a.s_campaign:hover {
  background-color: #3375b4;
}
@media print, screen and (max-width: 750px) {
  .f_navi {
    top: auto;
    left: 0;
    right: 0;
    bottom: -5px;
    background-color: #fff;
    padding-bottom: 5px;
    transform: translateY(0);
    border-radius: 0;
    box-shadow: none;
    display: flex;
  }
  .f_navi li {
    width: 40%;
  }
  .f_navi li:first-child {
    width: 20%;
  }
  .f_navi a {
    width: auto;
    height: 60px;
    padding: 16px 0 0 20px;
  }
  .f_navi a.s_top {
    padding: 30px 0 0;
  }
  .f_navi a.s_point {
    background-position: 12% 50%;
  }
  .f_navi a.s_campaign {
    background-position: 10% 50%;
  }
}

.f_snsArea {
	background-color: #f7f7f7;
	padding: 22px 0;
}
.f_snsArea .p_inner {
	max-width: 920px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.f_snsArea h2 {
	margin-right: 30px;
	color: #0053a1;
	text-align: center;
	font-size: 16px;
	font-weight: bold;
}
.f_snsArea ul {
	display: flex;
	flex-grow: 1;
	justify-content: space-between;
}
.f_snsArea li {
	width: 78px;
}
.f_snsArea li a {
	display: block;
	text-align: center;
}
.f_snsArea li .p_title {
	display: inline-block;
	margin-top: 5px;
	background-repeat: no-repeat;
	background-position: 0 2px;
	background-size: 20px 20px;
	padding-left: 24px;
	text-align: left;
	font-size: 10px;
	line-height: 1.1;
}
.f_snsArea li .p_title.s_line {
	background-image: url(../img/top/sns_icon_line.png);
}
.f_snsArea li .p_title.s_twitter {
	background-image: url(../img/top/sns_icon_twitter.png);
}
.f_snsArea li .p_title.s_x {
	background-image: url(../img/top/sns_icon_x.png);
}
.f_snsArea li .p_title.s_youtube {
	background-image: url(../img/top/sns_icon_youtube.png);
}
@media print, screen and (max-width: 750px) {
	.f_snsArea .p_inner {
		display: block;
	}
	.f_snsArea h2 {
		margin-right: 0;
	}
	.f_snsArea ul {
    padding: 0 15px;
  }
	.f_snsArea li {
		margin-top: 15px;
  }
	.f_snsArea li .p_title {
    display: block;
		background-position: 50% 0;
		padding: 22px 0 0;
		text-align: center;
	}
	.f_snsArea li .p_title br {
		display: none;
	}
}
@media print, screen and (max-width: 550px) {
	.f_snsArea ul {
		flex-wrap: wrap;
		justify-content: center;
	}
	.f_snsArea li {
		width: 33%;
	}
}

.f_brandArea {
	max-width: 868px;
	margin: 0 auto;
	overflow: hidden;
	display: flex;
	justify-content: space-between;
	padding: 70px 0;
}
.f_brandArea h2 {
	margin-top: 22px;
}
.f_brandArea li + li {
	margin-top: 22px;
}
.f_brandArea a {
	position: relative;
	display: inline-block;
	padding-left: 16px;
	font-size: 14px;
	font-weight: bold;
}
.f_brandArea a::before {
	content: '';
	position: absolute;
	top: 7px;
	left: 2px;
	width: 4px;
	height: 4px;
	border-top: 2px solid #0053a1;
	border-right: 2px solid #0053a1;
	transform: rotate(45deg);
}
.f_brandArea .p_text {
	margin-top: 3px;
	padding-left: 15px;
	color: #e60012;
	font-size: 12px;
}
@media print, screen and (max-width: 750px) {
	.f_brandArea {
		display: block;
		max-width: 300px;
		padding: 20px 0 0;
	}
	.f_brandArea h2 {
		margin: 0 0 20px;
		text-align: center;
	}
	.f_brandArea li {
		margin-top: 15px;
	}
	.f_brandArea li + li {
		margin-top: 15px;
	}
}

.f_bgContent {
  background:url(../img/cmn/contents_bg2.jpg) no-repeat 50% 0;
  background-attachment: fixed;
  padding: 0 0 50px;
}
.f_bgContent > .p_content {
  margin: 0 auto;
  max-width: 950px;
  min-height: 500px;
  border-radius: 0 0 10px 10px;
  background: #fff;
  padding: 60px 30px;
  box-shadow: 0 0 6px #999;
  font-size: 108%;
}
.f_bgContent > .p_content.s_narrow {
  padding: 60px 155px;
}
.f_bgContent > .p_content > .p_title {
  margin-bottom: 30px;
  background: #00a1e9;
  padding: 6px 10px;
  text-align: center;
  font-size: 20px;
  color: #fff;
}
.f_bgContent > .p_content > .p_simpleTitle {
  margin-bottom: 25px;
  text-align: center;
  color: #0053a1;
  font-size: 20px;
  font-weight: bold;
}
@media print, screen and (max-width: 750px) {
  .f_bgContent {
    background: none;
    padding: 0;
  }
  .f_bgContent > .p_content,
  .f_bgContent > .p_content.s_narrow {
    max-width: 640px;
    min-height: 300px;
    border-radius: 0;
    padding: 30px 10px;
    box-shadow: none;
  }
  .f_bgContent > .p_content > .p_title {
    padding: 5px 10px;
    font-size: 17px;
  }
}

.f_footer .p_linkArea {
  background-color: #0053a1;
  padding: 35px 20px;
}
.f_footer .p_linkArea ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.f_footer .p_linkArea li + li {
  position: relative;
  margin-left: 20px;
}
.f_footer .p_linkArea li + li::before {
  content: '/';
  position: absolute;
  top: 0;
  left: -12px;
  color: #fff;
}
.f_footer .p_linkArea a {
  color: #fff;
}
.f_footer .p_logo {
  padding: 35px 0 15px;
  text-align: center;
}
.f_footer .p_copyright {
  padding: 17px 0;
  text-align: center;
  color: #959595;
  font-size: 10px;
}
@media print, screen and (max-width: 750px) {
  .f_footer {
    margin-top: 40px;
    padding-bottom: 60px;
  }
  .f_footer .p_linkArea {
    padding: 0;
  }
  .f_footer .p_linkArea ul {
    justify-content: flex-start;
  }
  .f_footer .p_linkArea li {
    width: 50%;
  }
  .f_footer .p_linkArea li + li {
    margin-left: 0;
  }
  .f_footer .p_linkArea li + li::before {
    display: none;
  }
  .f_footer .p_linkArea a {
    display: block;
    border-bottom: 1px solid #003783;
    border-right: 1px solid #003783;
    padding: 14px 0;
    text-align: center;
  }
  .f_footer .p_logo {
    padding: 20px 0 10px;
  }
  .f_footer .p_logo img {
    width: 144px;
  }
  .f_footer .p_copyright {
    padding: 10px 0;
  }
}
@media print, screen and (max-width: 360px) {
  .f_footer .p_linkArea {
    font-size: 3.5vw;
  }
}

/* モジュール
======================================= */

.m_titleL {
  position: relative;
  margin: 40px 0 15px;
  border-bottom: 2px solid #00a1e9;
  padding: 0 0 5px 11px;
  color: #00a1e9;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.3;
}
.m_titleL::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  bottom: 3px;
  width: 5px;
  background-color: #00a1e9;
}

.m_titleM {
  margin: 30px 0 16px;
  border-left: 5px solid #00a2ea;
  padding: 0 0 0 8px;
  font-size: 16px;
}

.m_link {
  text-decoration: underline;
}
.m_link:hover {
  text-decoration: none;
}
.m_link.s_color {
  color: #00a1e9;
}
.m_link.s_marker {
  position: relative;
  display: inline-block;
  padding-left: 1em;
}
.m_link.s_marker::before {
  content: '';
  position: absolute;
  top: 0.6em;
  left: 0;
  width: 0.4em;
  height: 0.4em;
  border-top: 2px solid #0053a1;
  border-right: 2px solid #0053a1;
  transform: rotate(45deg);
}

.m_orderList {
  padding-left: 1.5em;
}
.m_orderList > li {
  list-style-type: decimal;
}

.m_dotList > li {
  position: relative;
  padding-left: 1em;
}
.m_dotList > li::before {
  content: '・';
  position: absolute;
  top: 0;
  left: 0;
}

.m_circleList > li {
  position: relative;
  padding-left: 24px;
  font-size: 14px;
}
.m_circleList > li::before {
  content: '';
  position: absolute;
  top: 6px;
  left: 0;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #eee;
}
.m_circleList > li + li {
  margin-top: 18px;
}
@media print, screen and (max-width: 750px) {
  .m_circleList > li {
    padding-left: 18px;
    font-size: 13px;
    line-height: 1.2;
  }
  .m_circleList > li::before {
    top: 3px;
    width: 9px;
    height: 9px;
  }
}

.m_noteList {
  margin: 20px 0;
}
.m_noteList > li {
  position: relative;
  padding-left: 1em;
}
.m_noteList > li::before {
  content: '※';
  position: absolute;
  top: 0;
  left: 0;
}

.m_inputList {
  margin: 40px 0 80px;
}
.m_inputList li + li {
  margin-top: 30px;
}
.m_inputList .p_label {
  margin-bottom: 10px;
  color: #14569c;
  font-size: 16px;
  font-weight: bold;
}
.m_inputList input {
  width: 100%;
  background-color: #e8f0fe;
  font-size: 16px;
}
@media print, screen and (max-width: 750px) {
  .m_inputList {
    margin: 30px 0 40px;
  }
}

.m_btnArea {
  margin: 40px 0 0;
  text-align: center;
}
.m_btnArea .p_text {
  margin-bottom: 10px;
  color: #00a0e8;
}

.m_btnList {
  margin: 30px 0;
  text-align: center;
}
.m_btnList li + li {
  margin-top: 20px;
}

.m_btn {
  position: relative;
  display: inline-block;
  width: 100%;
  max-width: 336px;
  border: none;
  border: 2px solid #00a1e9;
  border-radius: 5px;
  background-color: #00a1e9;
  padding: 11px 15px 11px 0;
  text-align: center;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  cursor: pointer;
  transition: opacity 0.2s;
}
.m_btn:hover {
  opacity: 0.7;
}
.m_btn::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 20px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform-origin: top right;
  transform: rotate(45deg);
}
.m_btn.s_fontS {
  font-size: 15px;
}
.m_btn.s_strong {
  border-color: #f28209;
  background-color: #f28209;
}
.m_btn.s_back {
  background-color: #fff;
  color: #00a1e9;
}
.m_btn.s_back::after {
  right: auto;
  left: 20px;
  border-color: #00a1e9;
  transform: rotate(-135deg);
}
.m_btn.s_regist {
  background-color: #fff;
  padding: 6px 25px 6px 0;
  color: #00a1e9;
  font-size: 24px;
}
.m_btn.s_regist::after {
  border-color: #00a1e9;
}
.m_btn.s_close::after {
  content: '×';
  top: 9px;
  left: 10px;
  right: auto;
  width: auto;
  height: auto;
  border: none;
  transform: rotate(0);
  font-size: 20px;
  font-weight: normal;
}
@media print, screen and (max-width: 750px) {
  .m_btn {
    padding: 11px 25px 11px 10px;
  }
  .m_btn::after {
    right: 10px;
  }
  .m_btn.s_back::after {
    left: 0;
  }
}
@media print, screen and (max-width: 350px) {
  .m_btn.s_regist img {
    width: 130px;
    vertical-align: -4px;
  }
}

.m_box {
  margin: 10px 0;
  border: 1px solid #aaa;
  padding: 10px;
  line-height: 1.5;
}

.m_simpleBox {
  border: 1px solid #00a1ee;
  background-color: #fff;
  padding: 10px 15px;
  line-height: 1.6;
}
.m_simpleBox .p_title {
  color: #00a1ee;
  font-weight: bold;
}

.m_bgBox {
  margin: 50px auto 0;
  max-width: 800px;
  background: #e6f8ff;
  border-radius: 10px;
  padding: 20px;
  text-align: center;
}
.m_bgBox p {
  margin-bottom: 15px;
  font-size: 17px;
  font-weight: bold;
}

.m_infoBox {
  margin: 40px 0;
  border: 1px solid #00a1e9;
  padding: 20px 15px;
}
.m_infoBox .p_title {
  margin-bottom: 15px;
  border-left: 5px solid #00a1e9;
  padding-left: 8px;
  color: #00a1e9;
  font-size: 18px;
  font-weight: bold;
}
.m_infoBox .p_list {
  margin-left: 15px;
}
.m_infoBox .p_list li {
  margin-top: 12px;
}

.m_modal {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0,0,0,0.6);
  z-index: 3000;
  display: none;
}
.m_modal .p_window {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  background-color: #fff;
  padding: 20px;
  width: 90%;
  max-width: 870px;
  margin: 0 auto;
  transform: translateY(-50%);
}
.m_modal .p_window.s_w400 {
  max-width: 400px;
}
.m_modal .p_window.s_w500 {
  max-width: 500px;
}
.m_modal .p_window.s_w600 {
  max-width: 600px;
}
.m_modal .p_window.s_w700 {
  max-width: 700px;
}
.m_modal .p_window.s_earnedPoint02 {
  padding: 0;
  max-width: 1030px;
}
@media print, screen and (max-height: 780px) {
  .m_modal .p_window.s_earnedPoint02 {
    max-width: calc(100vh * 1.3);
  }
}
.m_modal .p_closeBtn {
  position: absolute;
  top: -18px;
  right: -18px;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background-color: #08a8f4;
  cursor: pointer;
}
.m_modal .p_closeBtn:hover {
  opacity: 0.8;
}
.m_modal .p_closeBtn::before,
.m_modal .p_closeBtn::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 24px;
  height: 3px;
  border-radius: 2px;
  margin: auto;
  background-color: #fff;
  transform: rotate(45deg);
}
.m_modal .p_closeBtn::after {
  transform: rotate(-45deg);
}
.m_modal .p_errorBox {
  margin: 40px 20px;
  border: 2px solid #e60000;
  padding: 10px;
  text-align: center;
  font-size: 18px;
  font-weight: bold;
}
.m_modal .p_errorBox p {
  margin: 20px 0;
}
.m_modal .p_errorText {
  padding: 20px 0;
  text-align: center;
  color: #e60000;
  font-size: 16px;
}
.m_modal .p_errorText p + p {
  margin-top: 5%;
}
@media print, screen and (max-width: 750px) {
  .m_modal .p_window {
    padding: 20px 0 0;
  }
  .m_modal .p_errorBox {
    margin: 20px 20px 40px;
    font-size: 16px;
  }
  .m_modal .p_errorText {
    padding: 5% 0 10%;
  }
}
@media print, screen and (max-width: 500px) {
  .m_modal .p_errorText {
    font-size: 4vw;
  }
}

.m_registModal {
  padding: 30px 0;
  text-align: center;
  font-size: 20px;
}
.m_registModal h2 {
  margin-bottom: 20px;
  color: #00a1e9;
  font-size: 24px;
}
.m_registModal .p_btn {
  margin: 20px 0;
}
.m_registModal .p_btn a {
	position: relative;
  display: inline-block;
  width: 350px;
  max-width: 100%;
  border: 2px solid #e60012;
  padding: 15px 20px 15px 10px;
  box-shadow: 0 4px #d9d9d9;
  text-align: center;
  color: #e60012;
  font-size: 24px;
  font-weight: bold;
  transition: opacity 0.3s;
  cursor: pointer;
}
.m_registModal .p_btn a::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 8px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #f27f88;
  border-right: 2px solid #f27f88;
  transform-origin: right top;
  transform: rotate(45deg);
}
.m_registModal .p_note {
  margin-bottom: 15px;
  font-size: 16px;
}
@media print, screen and (max-width: 750px) {
  .m_registModal {
    padding: 10px 15px 30px;
    font-size: 16px;
  }
  .m_registModal h2 {
    margin-bottom: 15px;
    font-size: 20px;
  }
  .m_registModal .p_btn a {
    padding: 12px 20px 12px 10px;
    font-size: 20px;
  }
  .m_registModal .p_note {
    font-size: 14px;
  }
}

.m_earnedPoint {
  padding: 50px 40px 40px;
  text-align: center;
}
.m_earnedPoint .p_point {
  margin-bottom: 40px;
  background: url(../img/cmn/earnedpoint_bg.png) no-repeat 50% 50% #e60012;
  padding: 15px;
  color: #fff;
  font-size: 30px;
  font-weight: bold;
  line-height: 1.2;
}
.m_earnedPoint .p_text {
  font-size: 20px;
}
@media print, screen and (max-width: 750px) {
  .m_earnedPoint {
    padding: 10px 15px 20px;
    max-width: 400px;
    margin: 0 auto;
  }
  .m_earnedPoint .p_point {
    margin-bottom: 15px;
    background-size: 95% auto;
    padding: 10px;
    font-size: 18px;
  }
  .m_earnedPoint .p_text {
    font-size: 12px;
  }
}

.m_earnedPoint02 .p_point {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  text-align: center;
  color: #f00;
  font-size: 60px;
  font-weight: bold;
  text-shadow:
    0 3px 0 #fff,
    -2px 3px 0 #fff,
    2px 3px 0 #fff;
}
.m_earnedPoint02 .p_point small {
  font-size: 80%;
}
@media print, screen and (max-height: 780px) {
  .m_earnedPoint02 .p_point {
    font-size: 7.5vh;
  }
}
@media print, screen and (max-width: 750px) {
  .m_earnedPoint02 .p_point {
    top: 52%;
    font-size: 7vw;
  }
}

.m_finishText {
  margin: 50px 0;
  text-align: center;
  color: #e50112;
  font-size: 28px;
  font-weight: bold;
}
.m_finishText:first-child {
  margin-top: 0;
}
@media print, screen and (max-width: 750px) {
  .m_finishText {
    margin: 30px 0;
    font-size: 5vw;
  }
}

.m_ocrSelect {
  padding: 10px 0 20px;
}
.m_ocrSelect p {
  margin-bottom: 5%;
  text-align: center;
  font-size: 18px;
}
.m_ocrSelect ul {
  display: flex;
  justify-content: space-between;
  max-width: 400px;
  margin: 0 auto;
}
.m_ocrSelect li {
  width: 49%;
}
.m_ocrSelect button {
  border: none;
  padding: 0;
  background-color: #fff;
}
.m_ocrSelect .p_fileSelect {
  position: relative;
}
.m_ocrSelect .p_fileSelect input[type="file"] {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0.01;
}
@media print, screen and (max-width: 750px) {
  .m_ocrSelect {
    padding: 0 5% 5%;
  }
  .m_ocrSelect p {
    font-size: 4vw;
  }
}

.m_ocrRead {
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  height: 100%;
  background-color: #7f7f7f;
  padding: 10% 0 4%;
}
.m_ocrRead .p_textBox {
  width: 84%;
  max-width: 400px;
  margin: 0 auto;
  background-color: #fff;
  padding: 10px;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
}
.m_ocrRead .p_camera {
  position: relative;
  width: 70%;
  max-width: 320px;
  margin: 20px auto;
  background-color: #000;
}
.m_ocrRead .p_camera .p_inner {
  padding-top: 62.5%;
}
.m_ocrRead .p_camera::before,
.m_ocrRead .p_camera::after,
.m_ocrRead .p_camera .p_inner::before,
.m_ocrRead .p_camera .p_inner::after {
  content: '';
  position: absolute;
  z-index: 10;
  width: 6%;
  height: 9%;
}
.m_ocrRead .p_camera::before {
  top: 26%;
  left: 32%;
  border-top: 3px solid #f00;
  border-left: 3px solid #f00;
}
.m_ocrRead .p_camera::after {
  top: 26%;
  right: 32%;
  border-top: 3px solid #f00;
  border-right: 3px solid #f00;
}
.m_ocrRead .p_camera .p_inner::before {
  left: 32%;
  bottom: 26%;
  border-left: 3px solid #f00;
  border-bottom: 3px solid #f00;
}
.m_ocrRead .p_camera .p_inner::after {
  right: 32%;
  bottom: 26%;
  border-right: 3px solid #f00;
  border-bottom: 3px solid #f00;
}
.m_ocrRead .p_camera canvas {
  display: none;
}
.m_ocrRead .p_camera video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.m_ocrRead .p_attention {
  width: 84%;
  max-width: 400px;
  margin: 0 auto;
  background-color: #fff;
  font-size: 15px;
}
.m_ocrRead .p_attention h2 {
  background: url(../img/serial/icon_attention2.png) no-repeat 5px 50% #333;
  background-size: 22px auto;
  padding: 5px 5px 5px 32px;
  color: #fff;
  font-weight: bold;
}
.m_ocrRead .p_attention ul {
  padding: 10px 10px 15px;
}
.m_ocrRead .p_cameraBtn {
  margin: 20px auto;
  width: 274px;
  background: url(../img/serial/icon_camera.png) no-repeat 15% 50% #00a0ea;
  background-size: 38px 29px;
  padding: 12px 0 12px 30px;
  border-radius: 5px;
  text-align: center;
  color: #fff;
  font-size: 18px;
}
.m_ocrRead .p_errorBox {
  position: absolute;
  top: 39%;
  left: 0;
  right: 0;
  z-index: 10;
  width: 84%;
  max-width: 400px;
  margin: 0 auto;
  transform: translateY(-50%);
  border-radius: 10px;
  background-color: #ffffe4;
  padding: 50px 10px;
  color: #cc0000;
  text-align: center;
  font-size: 16px;
  box-shadow: 8px 8px 10px rgba(0,0,0,0.2);
  display: none;
}
.m_ocrRead.s_error .p_errorBox {
  display: block;
}
.m_ocrRead .p_errorBox .p_closeBtn {
  position: absolute;
  top: -18px;
  right: -18px;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background-color: #08a8f4;
  cursor: pointer;
}
.m_ocrRead .p_errorBox .p_closeBtn::before,
.m_ocrRead .p_errorBox .p_closeBtn::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 24px;
  height: 3px;
  border-radius: 2px;
  margin: auto;
  background-color: #fff;
  transform: rotate(45deg);
}
.m_ocrRead .p_errorBox .p_closeBtn::after {
  transform: rotate(-45deg);
}
.m_ocrRead .p_errorBox p + p {
  margin-top: 5%;
}
@media (orientation: landscape) {
  .m_ocrRead {
    min-height: 620px;
  }
}
@media print, screen and (max-width: 400px) {
  .m_ocrRead .p_errorBox {
    padding: 15% 0;
    font-size: 4.2vw;
  }
}

.m_loading {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 5000;
	background-color: rgba(0,0,0,0.1);
  display: none;
}
.m_loading .p_icon {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 40px;
	height: 40px;
	margin: auto;
	border: 3px solid #fff;
	border-bottom-color: transparent;
	border-radius: 20px;
	animation: loading 1s linear infinite;
}
@keyframes loading {
	0% { transform: rotate(0); }
	100% { transform: rotate(360deg); }
}

.m_helpList {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.m_helpList li {
  position: relative;
  margin-bottom: 40px;
  width: 48.6%;
  padding-bottom: 37%;
}
.m_helpList h3 {
  position: relative;
  margin-bottom: 10px;
  padding: 0 0 0 27px;
  color: #00a1e9;
  font-size: 16px;
}
.m_helpList h3 .p_num {
  position: absolute;
  top: 1px;
  left: 0;
  display: block;
  width: 23px;
  border-radius: 50%;
  background-color: #00a1e9;
  text-align: center;
  color: #fff;
  font-weight: normal;
  line-height: 23px;
}
.m_helpList p {
  margin-bottom: 10px;
  font-size: 13px;
}
.m_helpList strong {
  color: #e50112;
}
.m_helpList img {
  position: absolute;
  left: 0;
  bottom: 0;
}
@media print, screen and (max-width: 750px) {
  .m_helpList li {
    padding-bottom: 48.6%;
  }
}
@media print, screen and (max-width: 500px) {
  .m_helpList {
    display: block;
    max-width: 400px;
    margin: 0 auto;
  }
  .m_helpList li {
    margin-bottom: 30px;
    width: auto;
    padding-bottom: 0;
  }
  .m_helpList img {
    position: static;
  }
}

.m_footerNote {
	padding: 12px;
	text-align: center;
}
@media print, screen and (max-width: 750px) {
  .m_footerNote {
    margin-bottom: -20px;
    padding: 12px 10px 0 24px;
    text-align: left;
    text-indent: -1em;
  }
}

/*object*/
.c-btnWrap {
  width: 486px;
  margin: 0 auto 0;
  padding-top: 60px;
}
@media print, screen and (max-width: 750px) {
  .c-btnWrap {
    width: 66.66667%;
    padding-top: 8.69565%;
  }
}
.c-btnWrap--S {
  width: 460px;
}
.c-btnWrap--XS {
  width: 336px;
}
@media print, screen and (max-width: 750px) {
  .c-btnWrap--XS {
    width: 87.30159%;
  }
}
.c-btnWrap > img {
  width: 100%;
}
.c-btnWrap input {
  width: 100%;
}
.c-btnWrap input[type="submit"],
.c-btnWrap input[type="button"] {
  min-height: 60px;
}
@media print, screen and (max-width: 750px) {
  .c-btnWrap input[type="submit"],
  .c-btnWrap input[type="button"] {
    min-height: 45px;
  }
}
.c-btnWrap--L {
  width: 600px;
}
@media print, screen and (max-width: 750px) {
  .c-btnWrap--L {
    width: 100%;
    padding-top: 8.69565%;
  }
}
.c-btnWrap--print {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: auto;
  width: 90%;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding-top: 0;
  margin-top: 1em;
}
@media print, screen and (max-width: 750px) {
  .c-btnWrap--print {
    width: 81.15942%;
    display: block;
  }
}
.c-btnWrap--print .c-btn {
  max-width: 486px;
  margin: 1em 0;
}

div.c-btn {
  padding: 0;
}
div.c-btn input[type=button] {
  padding: 1.5em;
  text-align: center;
  display: block;
  width: 100%;
}

.c-btn {
  display: block;
  width: 100%;
  position: relative;
  padding: 14px 10px;
  text-decoration: none;
  text-align: center;
  background: #fff;
  border: 1px solid #00A2EA;
  cursor: pointer;
  color: #00A2EA;
  font-size: 16px;
  font-size: 1.23077rem;
  text-decoration: none !important;
}
@media print, screen and (max-width: 750px) {
  .c-btn {
    font-size: 13px;
    font-size: 3.46667vw;
  }
}
.c-btn.is-disabled,
.c-btn:disabled,
.c-btn:disabled:hover {
  cursor: default;
  background: #ccc;
  border: 1px solid #999;
  border: 1px solid #fff;
  color: #fff;
  opacity: 1;
}
.c-btn.is-disabled input,
.c-btn.is-disabled span,
.c-btn:disabled input,
.c-btn:disabled span,
.c-btn:disabled:hover input,
.c-btn:disabled:hover span {
  color: #fff;
  cursor: default;
  opacity: 1;
}
.c-btn.is-disabled::before,
.c-btn:disabled::before,
.c-btn:disabled:hover::before {
  border-color: #999;
  display: none;
}
.c-btn--img {
  border: none;
}
.c-btn input,
.c-btn span {
  font-size: 16px;
  font-size: 1.23077rem;
  line-height: 1;
  color: #00A2EA;
}
.c-btn span {
  line-height: 1.3;
}
@media print, screen and (max-width: 750px) {
  .c-btn input,
  .c-btn span {
    font-size: 13px;
    font-size: 3.46667vw;
  }
}
.c-btn input.c-btn__fsL,
.c-btn span.c-btn__fsL {
  font-size: 24px;
  font-size: 1.84615rem;
}
@media print, screen and (max-width: 750px) {
  .c-btn input.c-btn__fsL,
  .c-btn span.c-btn__fsL {
    font-size: 16px;
    font-size: 4.26667vw;
  }
}
.c-btn--next {
  padding-right: 20px;
}
.c-btn--next::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 15px;
  width: 10px;
  height: 10px;
  border-top: 2px solid #00A2EA;
  border-right: 2px solid #00A2EA;
  transform: translate(0, -50%) rotate(45deg);
}
.c-btn--anchor {
  padding-right: 20px;
}
.c-btn--anchor::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 15px;
  width: 10px;
  height: 10px;
  border-right: 2px solid #00A2EA;
  border-bottom: 2px solid #00A2EA;
  transform: translate(0, -75%) rotate(45deg);
}
.c-btn--anchorUp::before {
  transform: translate(0, -35%) rotate(-135deg);
}
.c-btn:not(.is-disabled):not(:disabled):hover {
  background: #00A2EA;
  color: #fff;
}
.c-btn:not(.is-disabled):not(:disabled):hover::before {
  border-color: #fff;
}
.c-btn:not(.is-disabled):not(:disabled):hover input,
.c-btn:not(.is-disabled):not(:disabled):hover span {
  color: #fff;
}
.c-btn--blue {
  border: 1px solid #fff;
  background: #00A2EA;
  color: #fff;
}
.c-btn--blue::before {
  border-color: #fff;
}
.c-btn--blue input,
.c-btn--blue span {
  color: #fff;
}
.c-btn--blue:not(.is-disabled):not(:disabled):hover {
  background: #00A2EA;
}
.c-btn--blue2 {
  background: linear-gradient(to bottom, #0375ed 0%, #02039b 100%);
  color: #fff;
  box-shadow: 0 5px #226ea9;
}
.c-btn--blue2::before {
  border-color: #fff;
}
.c-btn--blue2 input,
.c-btn--blue2 span {
  color: #fff;
}
.c-btn--blue2:not(.is-disabled):not(:disabled):hover {
  background: linear-gradient(to bottom, #0375ed 0%, #02039b 100%);
}
.c-btn--red {
  border: 1px solid #fff;
  background: #E50112;
  color: #fff;
}
.c-btn--red::before {
  border-color: #fff;
}
.c-btn--red input,
.c-btn--red span {
  color: #fff;
}
.c-btn--red:not(.is-disabled):not(:disabled):hover {
  background: #E50112;
}
.c-btn--orange {
  border: 1px solid #fff;
  background: #fb9606;
  color: #fff;
}
.c-btn--orange::before {
  border-color: #fff;
}
.c-btn--orange input,
.c-btn--orange span {
  color: #fff;
}
.c-btn--orange:not(.is-disabled):not(:disabled):hover {
  background: #fb9606;
}
.c-btn--black {
  border: 1px solid #fff;
  background: #3E3E3E;
  color: #fff;
}
.c-btn--black::before {
  border-color: #fff;
}
.c-btn--black input,
.c-btn--black span {
  color: #fff;
}
.c-btn--black:not(.is-disabled):not(:disabled):hover {
  background: #3E3E3E;
}
.c-btn--glay {
  border: 1px solid #3E3E3E;
  background: #fff;
  color: #3E3E3E;
}
.c-btn--glay::before {
  border-color: #3E3E3E;
}
.c-btn--glay input,
.c-btn--glay span {
  color: #3E3E3E;
}
.c-btn--glay:not(.is-disabled):not(:disabled):hover {
  border: 1px solid #3E3E3E;
  background: #fff;
  color: #3E3E3E;
}
.c-btn--glay:not(.is-disabled):not(:disabled):hover::before {
  border-color: #3E3E3E;
}
.c-btn--glay:not(.is-disabled):not(:disabled):hover input,
.c-btn--glay:not(.is-disabled):not(:disabled):hover span {
  color: #3E3E3E;
}
.c-btn--try {
  border: 1px solid #00459D;
  color: #00459D;
}
.c-btn--try::before {
  border-color: #00459D;
}
.c-btn--try:not(.is-disabled):not(:disabled):hover {
  background: #ffffff;
  color: #00459D;
}
.c-btn--linecp {
  border: 1px solid #fff;
  background: #00b900;
  text-decoration: none !important;
  border-radius: 8px;
  padding: 1.2em 1.6em;
}
.c-btn--linecp span {
  color: #fff;
  font-size: 16px;
  font-size: 1.23077rem;
  line-height: 1.4;
}
@media print, screen and (max-width: 750px) {
  .c-btn--linecp span {
    font-size: 14px;
    font-size: 3.73333vw;
  }
}
.c-btn--linecp:not(.is-disabled):not(:disabled):hover {
  background: #00b900;
}

input[type='image'].c-btn {
  padding: 0;
}

.c-linkBtn {
  position: relative;
  width: 336px;
  margin: 30px auto 0;
  border: 1px solid #00a2ea;
  border-radius: 5px;
  text-align: center;
}
.c-linkBtn::before {
  content: "";
  width: .5em;
  height: .5em;
  border-top: 1px solid #00a2ea;
  border-right: 1px solid #00a2ea;
  position: absolute;
  top: 50%;
  right: 0;
  margin-right: 1em;
  transform: translate(0, -50%) rotate(45deg);
}
.c-linkBtn a,
.c-linkBtn input {
  display: block;
  width: 100%;
  padding: 18px 0 16px;
  color: #00a2ea;
  font-size: 16px;
  letter-spacing: 0.05em;
  text-decoration: none;
  position: relative;
}
.c-linkBtn input:disabled {
  opacity: 0.5;
  background-color: #f5f5f5;
  cursor: default;
}
@media screen and (min-width: 751px) {
  .c-linkBtn a:hover,
  .c-linkBtn input:not(:disabled):hover {
    transition: .2s;
    background: #00a2ea;
    color: #fff;
  }
}
@media print, screen and (max-width: 750px) {
  .c-linkBtn {
    width: 87.30159%;
    margin: 7.93651% auto 0;
  }
  .c-linkBtn a {
    padding: 7.63636% 0 6.36364%;
    font-size: 13.5px;
    font-size: 3.6vw;
  }
}

.c-common__toTop {
  z-index: 3;
  position: absolute;
  right: 30px;
  bottom: 55px;
  width: 40px;
  cursor: pointer;
}
@media print, screen and (max-width: 750px) {
  .c-common__toTop {
    width: 9.33333%;
    right: 14px;
    bottom: 53px;
  }
}
@media screen and (min-width: 751px) {
  .c-common__toTop:hover {
    opacity: 0.7;
  }
}
.c-common__toTop img {
  width: 100%;
}
@media print, screen and (max-width: 750px) {
  .c-common__toTop.is-scrAdjust {
    bottom: 124px;
  }
  .l-footer--simple .c-common__toTop.is-scrAdjust {
    bottom: 53px;
  }
}

@media screen and (min-width: 751px) {
  .c-common__functions {
    z-index: 10;
    position: fixed;
    top: 130px;
    right: 0;
  }
}

@media print, screen and (max-width: 750px) {
  .c-common__functions {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
}

.c-common__mainContents {
  width: 990px;
  margin: 0 auto;
  padding: 30px 0 60px;
  max-width: 100%;
}
.c-common__mainContents--wide {
  width: 1050px;
}
@media print, screen and (max-width: 750px) {
  .c-common__mainContents,
  .c-common__mainContents--wide {
    width: 100%;
    padding: 0 0 6.66667%;
  }
}

@media print, screen and (max-width: 750px) {
  .c-common__inner {
    width: 92%;
    margin: 0 auto;
  }
}

.onlineStoreModal {
  text-align: center;
  padding: 2em;
}
.onlineStoreModal__txt01 {
  font-size: 22px;
  font-size: 1.69231rem;
  line-height: 1.4;
}
@media print, screen and (max-width: 750px) {
  .onlineStoreModal__txt01 {
    font-size: 12.5px;
    font-size: 4.5vw;
  }
}
.onlineStoreModal__txt02 {
  padding: 1em 3em 0.3em;
  color: #00A2EA;
  font-size: 19px;
  font-size: 1.46154rem;
  line-height: 1.4;
  border-bottom: 1px solid #00A2EA;
  display: inline-block;
}
@media print, screen and (max-width: 750px) {
  .onlineStoreModal__txt02 {
    padding: 1em 0 0.3em;
    font-size: 11.5px;
    font-size: 4vw;
    border-bottom: none;
  }
}
.onlineStoreModal__btn {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 20px;
}
.onlineStoreModal__btn li {
  margin: 0 20px;
}
@media print, screen and (max-width: 750px) {
  .onlineStoreModal__btn {
    display: block;
  justify-content: center;
  align-items: center;
  margin-top: 20px;
  }
  .onlineStoreModal__btn li {
    margin: 15px 0 0;
    text-align: center;
  }
}

@media print, screen and (max-width: 750px) {
  .functions {
    z-index: 4;
    bottom: 0;
    width: 100%;
    margin-top: 0;
  }
}
@media print, screen and (max-width: 500px) {
  .functions {
    position: fixed;
  }
}

.functions__funcWrap {
  position: relative;
}
@media print, screen and (max-width: 750px) {
  .functions__funcWrap {
    width: 35.2%;
    height: auto;
  }
  .functions__funcWrap a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    cursor: pointer;
    border: none;
    background: transparent;
    padding: 0;
    margin: 0;
  }
}

.functions__default {
  display: inline-block;
}
.is-current .functions__default {
  display: none;
}

.functions__current {
  display: none;
}
.is-current .functions__current {
  display: inline-block;
}

.functions__home {
  position: relative;
  width: 70px;
  height: 70px;
  background: #fff;
  border: 1px solid #00a2ea;
  border-right: none;
  cursor: pointer;
  -webkit-transition: all 200ms 0s ease;
  -o-transition: all 200ms 0s ease;
  transition: all 200ms 0s ease;
}
@media screen and (min-width: 751px) {
  .functions__funcWrap:hover .functions__home {
    background: #95dbfc;
    -webkit-transition: all 200ms 0s ease;
    -o-transition: all 200ms 0s ease;
    transition: all 200ms 0s ease;
  }
  .functions__funcWrap:hover .functions__home .functions__default {
    display: none;
  }
  .functions__funcWrap:hover .functions__home .functions__current {
    opacity: 1;
    display: inline-block;
  }
}
.functions__home.is-current {
  background: #00a2ea;
}
@media print, screen and (max-width: 750px) {
  .functions__home {
    width: 100%;
    height: 19.2vw;
    border: none;
    border: 1px solid #00a2ea;
  }
}
.functions__home img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 31px;
  height: 29px;
}
@media print, screen and (max-width: 750px) {
  .functions__home img {
    height: auto;
    width: 71.31148%;
  }
}

.functions__point {
  position: relative;
  width: 70px;
  height: 70px;
  cursor: pointer;
  border: 1px solid #00a2ea;
  border-right: none;
  border-top: none;
  background: #fff;
  -webkit-transition: all 200ms 0s ease;
  -o-transition: all 200ms 0s ease;
  transition: all 200ms 0s ease;
}
@media screen and (min-width: 751px) {
  .functions__funcWrap:hover .functions__point {
    background: #95dbfc;
    -webkit-transition: all 200ms 0s ease;
    -o-transition: all 200ms 0s ease;
    transition: all 200ms 0s ease;
  }
  .functions__funcWrap:hover .functions__point .functions__default {
    display: none;
  }
  .functions__funcWrap:hover .functions__point .functions__current {
    opacity: 1;
    display: inline-block;
  }
}
.functions__point.is-current {
  background: #e70012;
}
@media print, screen and (max-width: 750px) {
  .functions__point {
    width: 100%;
    height: 19.2vw;
    border: 1px solid #00a2ea;
    border-left: none;
  }
}
.functions__point img {
  width: 36px;
  height: 31px;
  position: absolute;
  top: 50%;
  left: 57%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
@media print, screen and (max-width: 750px) {
  .functions__point img {
    height: auto;
    left: 50%;
    width: 71.31148%;
  }
}

.functions__gift {
  position: relative;
  width: 70px;
  height: 70px;
  border: 1px solid #00a2ea;
  border-top: none;
  border-right: none;
  background: #fff;
  -webkit-transition: all 200ms 0s ease;
  -o-transition: all 200ms 0s ease;
  transition: all 200ms 0s ease;
  cursor: pointer;
}
@media screen and (min-width: 751px) {
  .functions__funcWrap:hover .functions__gift {
    background: #95dbfc;
    -webkit-transition: all 200ms 0s ease;
    -o-transition: all 200ms 0s ease;
    transition: all 200ms 0s ease;
  }
  .functions__funcWrap:hover .functions__gift .functions__default {
    display: none;
  }
  .functions__funcWrap:hover .functions__gift .functions__current {
    opacity: 1;
    display: inline-block;
  }
}
.functions__gift.is-current {
  background: #00a2ea;
}
@media print, screen and (max-width: 750px) {
  .functions__gift {
    width: 100%;
    height: 19.2vw;
    border: 1px solid #00a2ea;
    border-left: none;
  }
}
.functions__gift img {
  position: absolute;
  top: 50%;
  left: 53%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 36px;
  height: 31px;
}
@media print, screen and (max-width: 750px) {
  .functions__gift img {
    height: auto;
    left: 50%;
    width: 71.31148%;
  }
}

.functions__cart {
  position: relative;
  width: 70px;
  height: 70px;
  background: #00a2ea;
  cursor: pointer;
}
@media print, screen and (max-width: 750px) {
  .functions__cart {
    width: 100%;
    height: 19.2vw;
  }
}
.functions__cart img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 36px;
  height: 31px;
}
@media print, screen and (max-width: 750px) {
  .functions__cart img {
    height: auto;
    width: 71.31148%;
  }
}

.functions__hover {
  z-index: 3;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
}
.functions__hover > a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: transparent;
  padding: 0;
  margin: 0;
}

.functions__balloon {
  display: none;
  z-index: 2;
  position: absolute;
  top: -21px;
  left: -76px;
  width: 136px;
  height: 42px;
  font-size: 12px;
  font-weight: bold;
  color: #797979;
  letter-spacing: 0.05em;
  text-align: center;
  background: url(../img/cmn/icon_charge.png) top left no-repeat;
  background-size: contain;
  padding: 9px 0 0;
  line-height: 1;
}
@media print, screen and (max-width: 750px) {
  .functions__balloon {
    display: none;
  }
}
@media screen and (min-width: 751px) {
  .functions__balloon img {
    width: 136px;
  }
}

.c-link {
  text-decoration: underline;
  color: #00A2EA;
}
.c-link--color-unset {
  color: unset;
}

.c-formWrap {
  padding-top: 40px;
}

.c-formBox {
  padding-top: .5em;
}
.c-formBox input::-webkit-input-placeholder {
  color: #000;
}
.c-formBox input:-ms-input-placeholder {
  color: #000;
}
.c-formBox input::-ms-input-placeholder {
  color: #000;
}
.c-formBox input::placeholder {
  color: #000;
}
.c-formBox__caption {
  display: block;
}
.c-formBox__captionWrap {
  position: relative;
}
.c-formBox__captionWrap--tel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 1.6em 0 0 0;
  height: 100%;
}
.c-formBox__captionWrap--tel > .c-formBox__caption {
  position: absolute;
  top: 0;
  width: 5em;
}
.c-formBox__captionWrap--name {
  width: calc(50% - .5em);
}
@media print, screen and (max-width: 750px) {
  .c-formBox__captionWrap--name {
    width: 100%;
  }
}
@media print, screen and (max-width: 750px) {
  .c-formBox__captionWrap--name + .c-formBox__captionWrap--name {
    margin-top: 0.5em;
  }
}
.c-formBox--tel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
@media print, screen and (max-width: 750px) {
  .c-formBox--tel {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
}
.c-formBox--name {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media print, screen and (max-width: 750px) {
  .c-formBox--name {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}
.c-formBox--zip {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
@media print, screen and (max-width: 750px) {
  .c-formBox--zip {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
}

.c-formTitle2 {
  width: 100%;
  padding-top: 1em;
  font-size: 16px;
  font-size: 1.23077rem;
}
@media print, screen and (max-width: 750px) {
  .c-formTitle2 {
    font-size: 14px;
    font-size: 3.73333vw;
  }
}

.c-formTitle {
  vertical-align: middle;
  line-height: 1.4;
  padding-top: .5em;
  font-weight: bold;
  font-size: 19px;
  font-size: 1.46154rem;
}
@media print, screen and (max-width: 750px) {
  .c-formTitle {
    font-size: 15px;
    font-size: 4vw;
  }
}

.c-formTelText {
  padding: 0 .5em;
}

.c-formZipText {
  padding: 0 .5em;
}

.c-formZipBtn {
  display: inline-block;
  position: relative;
  padding: .8em 1.6em;
  line-height: 0;
  text-decoration: none;
  text-align: center;
  cursor: pointer;
  border: 1px solid #fff;
  background: #3E3E3E;
  margin-left: 2em;
}
.c-formZipBtn:hover {
  background: #3E3E3E;
}
.c-formZipBtn span {
  font-size: 14px;
  font-size: 1.07692rem;
  line-height: 1;
  color: #fff;
}
@media print, screen and (max-width: 750px) {
  .c-formZipBtn {
    width: 100%;
  }
}

input.c-formZipBtn {
  font-size: 14px;
  font-size: 1.07692rem;
  line-height: 1;
  color: #fff;
}

.c-formItem {
  width: 100%;
}
.c-formItem--birth {
  width: 8em;
}
.c-formItem--address {
  margin-bottom: 1em;
  width: 80%;
}
.c-formItem--mail {
  margin-bottom: 1em;
  width: 80%;
}
@media print, screen and (max-width: 750px) {
  .c-formItem--address {
    width: 100%;
  }
  .c-formItem--mail {
    width: 100%;
  }
}
.c-formItem--tel {
  width: 6em;
}
.c-formItem--tel2 {
  width: 12em;
}
@media print, screen and (max-width: 750px) {
  .c-formItem--tel {
    width: calc(33.3% - .5em);
  }
}
.c-formItem--zip1 {
  width: 6em;
}
@media print, screen and (max-width: 750px) {
  .c-formItem--zip1 {
    width: 100%;
  }
}
.c-formItem--zip2 {
  width: 10em;
}
@media print, screen and (max-width: 750px) {
  .c-formItem--zip2 {
    width: 100%;
  }
}
.c-formItem--name {
  width: calc(50% - .5em);
}
@media print, screen and (max-width: 750px) {
  .c-formItem--name {
    width: 100%;
  }
}
@media print, screen and (max-width: 750px) {
  .c-formItem--name + .c-formItem--name {
    margin-top: 0.5em;
  }
}

.c-formAdd {
  font-size: 20px;
  font-size: 1.53846rem;
  vertical-align: baseline;
  display: inline-block;
  width: 50%;
}
@media print, screen and (max-width: 750px) {
  .c-formAdd {
    font-size: 15px;
    font-size: 4vw;
    width: 100%;
  }
}

.c-formAddText {
  display: inline-block;
  vertical-align: middle;
  font-size: 12px;
  font-size: 0.92308rem;
  padding: 1px;
  margin: 0 .5em;
  width: 100%;
}
@media print, screen and (max-width: 750px) {
  .c-formAddText {
    font-size: 16px;
    font-size: 4.26667vw;
  }
}

.c-formErr {
  color: #E50112;
  font-size: 14px;
  font-size: 1.07692rem;
  padding-top: .5em;
  font-weight: bold;
}

.c-formTag {
  display: inline-block;
  background: #E50112;
  color: #fff;
  vertical-align: 3px;
  padding: 4px 2px 3px;
  line-height: 1;
  font-weight: normal;
  font-size: 12px;
  font-size: 0.92308rem;
}
@media print, screen and (max-width: 750px) {
  .c-formTag {
    font-size: 11px;
    font-size: 2.93333vw;
  }
}

.c-radio {
  position: relative;
  display: inline-block;
  margin-right: 20px;
  cursor: pointer;
  vertical-align: middle;
}
.c-radio__text {
  display: inline-block;
  padding: 10px 10px 10px 30px;
  line-height: 1.2;
  font-size: 18px;
  font-size: 1.38462rem;
}
@media print, screen and (max-width: 750px) {
  .c-radio__text {
    padding-top: 12px;
    font-size: 14px;
    font-size: 3.73333vw;
  }
}
.c-radio input[type="radio"] {
  display: none;
}
input[type="radio"] + .c-radio__text::before {
  content: "";
  display: block;
  position: absolute;
  top: 9px;
  left: 0;
  width: 22px;
  height: 22px;
  border: 1px solid #999;
  border-radius: 50%;
  background: #fff;
}
input[type="radio"]:checked + .c-radio__text::before {
  background: #fff;
}
input[type="radio"]:checked + .c-radio__text::after {
  content: "";
  display: block;
  position: absolute;
  top: 14px;
  bottom: 0;
  left: 5px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #3C3C3C;
}

.c-checkbox {
  position: relative;
  display: inline-block;
  margin-right: 20px;
  cursor: pointer;
  vertical-align: middle;
}
.c-checkbox__text {
  display: inline-block;
  padding: 10px 10px 10px 30px;
  line-height: 1.2;
  font-size: 18px;
  font-size: 1.38462rem;
}
@media print, screen and (max-width: 750px) {
  .c-checkbox__text {
    padding-top: 11px;
    font-size: 14px;
    font-size: 3.73333vw;
  }
}
.c-checkbox input[type="checkbox"] {
  display: none;
}
input[type="checkbox"] + .c-checkbox__text::before {
  content: "";
  display: block;
  position: absolute;
  top: 9px;
  left: 0;
  width: 22px;
  height: 22px;
  border: 1px solid #999;
  background: #fff;
}
input[type="checkbox"]:checked + .c-checkbox__text::before {
  background: #fff;
}
input[type="checkbox"]:checked + .c-checkbox__text::after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 10px;
  bottom: 0;
  left: 7px;
  width: 7px;
  height: 12px;
  border-right: 3px solid #3C3C3C;
  border-bottom: 3px solid #3C3C3C;
}

.c-select {
  vertical-align: middle;
  font-size: 18px;
  font-size: 1.38462rem;
  line-height: 1.2;
  white-space: nowrap;
}
@media print, screen and (max-width: 750px) {
  .c-select {
    font-size: 15px;
    font-size: 4vw;
    width: 100%;
  }
}

.c-hr {
  display: block;
  height: 1px;
  margin: 1em auto 1em;
  border-top: 1px solid #3E3E3E;
}
.c-hr--dash {
  border-top: 1px dashed #3E3E3E;
}

/*layout*/
.l-header {
  z-index: 5;
  position: relative;
  padding: 12px 0 13px;
  border-bottom: 1px solid #ccc;
  height: 60px;
}
@media print, screen and (max-width: 750px) {
  .l-header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 3.2% 0 11%;
    height: auto;
  }
  .l-header.is-simple {
    padding: 3.2% 0;
  }
}
@media print, screen and (max-width: 500px) {
  .l-header {
    padding: 3.2% 0 18.66667%;
  }
}
@media print, screen and (max-width: 500px) {
  .l-header.is-fixed {
    position: fixed;
    top: 0;
    width: 100%;
    background: #fff;
    padding: 3.2% 0 10.66667%;
  }
  .l-header.is-fixed.is-simple {
    padding: 3.2% 0;
  }
}
@media print, screen and (max-width: 750px) {
  .l-header--simple {
    padding: 3.2% 0 3.06667%;
  }
}
@media print, screen and (max-width: 750px) {
  .l-header--simple.is-fixed {
    padding: 3.2% 0 3.06667%;
  }
}

.l-header .block01 {
  width: 100%;
  max-width: 990px;
  margin: 0 auto;
}
@media print, screen and (max-width: 750px) {
  .l-header .block01 {
    width: 92%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
  }
}
.l-header .block01 a {
  border: none;
  background: transparent;
  cursor: pointer;
  padding: 0;
  margin: 0 0 0 10px;
  display: block;
  max-width: 377px;
  width: calc(100% - 630px);
}
@media print, screen and (max-width: 750px) {
  .l-header .block01 a {
    margin: 0;
    width: auto;
  }
}
@media screen and (min-width: 751px) {
  .l-header .block01 a:hover {
    opacity: 0.7;
  }
}
.l-header .block01 a img {
  width: 100%;
}
@media print, screen and (max-width: 750px) {
  .l-header .block01 a img {
    width: 100%;
  }
}
@media print, screen and (max-width: 750px) {
  .l-header .block01__elm01 {
    width: 69.85507%;
    margin-right: 0;
    display: inline-block;
  }
}
@media print, screen and (max-width: 750px) {
  .l-header .block01__elm01.is-default {
    width: 69.85507%;
    margin-right: 0;
    display: inline-block;
  }
}
.l-header .block01__elm02 {
  display: none;
}
@media print, screen and (max-width: 750px) {
  .l-header .block01__elm02 {
    display: block;
    font-size: 14.5px;
    font-size: 3.86667vw;
    font-weight: bold;
    color: #797979;
    letter-spacing: 0.05em;
    margin-right: 4.34783%;
  }
}
.l-header .block01__elm02.is-none {
  display: none;
}
.l-header .block01__elm03 {
  display: none;
}
@media print, screen and (max-width: 750px) {
  .l-header .block01__elm03 {
    display: block;
  }
}
@media print, screen and (max-width: 750px) {
  .l-header .block01__elm03 a {
    display: block;
    font-size: 14.5px;
    font-size: 3.86667vw;
    font-weight: bold;
    color: #00a2ea;
    letter-spacing: 0.05em;
  }
}
.l-header .block01__elm03.is-none {
  display: none;
}
@media print, screen and (max-width: 750px) {
  .l-header .block01.is-default {
    display: inline-block;
    text-align: left;
  }
}

.l-header .block02 {
  z-index: 2;
  position: absolute;
  top: 0;
  right: 0;
  width: 64px;
  height: 60px;
  cursor: pointer;
}
@media print, screen and (max-width: 750px) {
  .l-header .block02 {
    width: 12.8%;
    height: 12vw;
  }
}
@media screen and (min-width: 751px) {
  .l-header .block02:hover {
    opacity: 0.7;
  }
}
.l-header .block02 img {
  width: 100%;
}

.l-header .block03 {
  z-index: 2;
  position: absolute;
  right: 64px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 60px;
}
@media screen and (min-width: 751px) {
  .l-header .block03 {
    top: 0;
  }
}
@media print, screen and (max-width: 750px) {
  .l-header .block03 {
    background: #00a2ea;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
    height: 8vw;
    border-top: 1px solid #ccc;
    bottom: 0;
    right: 0;
    left: 0;
  }
}
@media print, screen and (max-width: 500px) {
  .l-header .block03.is-flex {
    height: 16vw;
  }
}
.l-header .block03__store {
  position: relative;
  width: 230px;
  border-left: 1px solid #ccc;
  cursor: pointer;
  background: url(../img/cmn/icon_store.png) 26px center no-repeat;
  background-size: 25px;
}
@media screen and (min-width: 751px) {
  .l-header .block03__store:hover {
    opacity: 0.7;
  }
}
@media print, screen and (max-width: 750px) {
  .l-header .block03__store {
    display: none;
  }
}
.l-header .block03__store span {
  position: absolute;
  top: 50%;
  left: 56%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  color: #797979;
  font-size: 16px;
  letter-spacing: 0.05em;
  width: 60%;
}
@media print, screen and (max-width: 750px) {
  .l-header .block03__store span {
    display: none;
  }
}
.l-header .block03__store--store {
  width: 180px;
  background: none;
  cursor: default;
}
@media print, screen and (max-width: 750px) {
  .l-header .block03__store--store {
    display: none;
  }
}
@media screen and (min-width: 751px) {
  .l-header .block03__store--store:hover {
    opacity: 1;
  }
}
.l-header .block03__store--store span {
  width: 100%;
  left: 0;
  right: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  text-align: center;
}
@media print, screen and (max-width: 750px) {
  .l-header .block03__store--store span {
    display: none;
  }
}
.l-header .block03__login {
  position: relative;
  width: 160px;
  border-left: 1px solid #ccc;
  cursor: pointer;
  background: url(../img/cmn/icon_login.png) 26px center no-repeat;
  background-size: 21px;
}
@media screen and (min-width: 751px) {
  .l-header .block03__login:hover {
    opacity: 0.7;
  }
}
@media print, screen and (max-width: 750px) {
  .l-header .block03__login {
    width: 50%;
    background: #fff;
  }
}
.l-header .block03__login a {
  display: block;
  width: 100%;
  height: 100%;
  border: none;
  background: transparent;
  cursor: pointer;
  padding: 0;
  margin: 0;
}
.l-header .block03__login span {
  position: absolute;
  top: 50%;
  left: 56%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  color: #797979;
  font-size: 16px;
  letter-spacing: 0.05em;
}
@media print, screen and (max-width: 750px) {
  .l-header .block03__login span {
    font-size: 17px;
    font-size: 4.53333vw;
    left: 50%;
    color: #797979;
  }
}
.l-header .block03__login--login {
  width: 180px;
  background: none;
  cursor: default;
}
@media print, screen and (max-width: 750px) {
  .l-header .block03__login--login {
    width: 50%;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    padding: 2% 0 1%;
  }
}
@media screen and (min-width: 751px) {
  .l-header .block03__login--login:hover {
    opacity: 1;
  }
}
.l-header .block03__login--login button {
  width: 100%;
  height: 100%;
  border: none;
  background: transparent;
  cursor: pointer;
  padding: 0;
  margin: 0;
}
.l-header .block03__login--login span {
  width: 100%;
  left: 0;
  right: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  text-align: center;
  padding: 10px;
  line-height: 1;
}
@media print, screen and (max-width: 750px) {
  .l-header .block03__login--login span {
    text-align: left;
    padding-left: 4%;
    color: #fff;
    width: 100%;
    font-size: 13px;
    font-size: 3.46667vw;
  }
}
.l-header .block03__regist {
  position: relative;
  width: 160px;
  cursor: pointer;
  background: #00a2ea;
  background-image: url(../img/cmn/icon_reg.png);
  background-size: 18px;
  background-position: 30px center;
  background-repeat: no-repeat;
}
@media screen and (min-width: 751px) {
  .l-header .block03__regist:hover {
    background-color: #95dbfc;
  }
}
@media screen and (min-width: 751px) {
  .l-header .block03__regist--login:hover {
    background: #00a2ea;
  }
}
@media print, screen and (max-width: 750px) {
  .l-header .block03__regist {
    width: 50%;
    background: #00a2ea;
  }
}
.l-header .block03__regist a {
  display: block;
  width: 100%;
  height: 100%;
  border: none;
  background: transparent;
  cursor: pointer;
  padding: 0;
  margin: 0;
}
.l-header .block03__regist span {
  position: absolute;
  top: 50%;
  left: 56%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  color: #fff;
  font-size: 16px;
  letter-spacing: 0.05em;
}
@media print, screen and (max-width: 750px) {
  .l-header .block03__regist span {
    font-size: 16px;
    font-size: 4.26667vw;
    left: 50%;
  }
}
.l-header .block03__regist--login {
  width: 218px;
  background-image: none;
  cursor: default;
}
@media print, screen and (max-width: 750px) {
  .l-header .block03__regist--login {
    width: 100%;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    padding: 2% 0 1%;
    width: 50%;
  }
}
@media screen and (min-width: 751px) {
  .l-header .block03__regist--login a:hover {
    opacity: 1;
  }
}
.l-header .block03__regist--login div {
  position: absolute;
  width: 100%;
  top: 50%;
  left: 0;
  right: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  text-align: center;
  color: #fff;
  font-size: 14px;
  line-height: 1;
}
@media print, screen and (max-width: 750px) {
  .l-header .block03__regist--login div {
    text-align: right;
    padding-left: 4%;
    padding-right: 4%;
    font-size: 13px;
    font-size: 3.46667vw;
  }
}
.l-header .block03__regist--login button {
  width: 100%;
  height: 100%;
  border: none;
  background: transparent;
  cursor: pointer;
  padding: 0;
  margin: 0;
}
.l-header .block03__regist--login span {
  padding-left: 5px;
  position: relative;
  top: 0;
  left: 0;
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0);
  font-size: 22px;
  vertical-align: baseline;
}
@media print, screen and (max-width: 750px) {
  .l-header .block03__regist--login span {
    font-size: 13px;
    font-size: 3.46667vw;
    font-weight: bold;
  }
}
@media print, screen and (max-width: 500px) {
  .l-header .block03.is-flex .block03__login {
    background: url(../img/cmn/icon_login.png) 20% center no-repeat #fff;
    background-size: 13.6%;
  }
  .l-header .block03.is-flex .block03__login span {
    left: 56%;
  }
  .l-header .block03.is-flex .block03__login--login {
    width: 100%;
    background: #F0F0F0;
    text-align: left;
    border-bottom: 2px solid #ccc;
  }
  .l-header .block03.is-flex .block03__login--login span {
    left: auto;
    color: #797979;
    width: 100%;
    font-size: 16px;
    font-size: 4.26667vw;
  }
}
@media print, screen and (max-width: 500px) {
  .l-header .block03.is-flex .block03__regist {
    background: #00a2ea;
    background-image: url(../img/cmn/icon_reg.png);
    background-repeat: no-repeat;
    background-size: 12.8%;
    background-position: 20% center;
  }
  .l-header .block03.is-flex .block03__regist span {
    left: 56%;
  }
  .l-header .block03.is-flex .block03__regist--login {
    width: 100%;
    background: #00a2ea;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    margin-left: 0;
  }
  .l-header .block03.is-flex .block03__regist--login div {
    font-size: 16px;
    font-size: 4.26667vw;
    text-align: left;
  }
  .l-header .block03.is-flex .block03__regist--login span {
    left: 5%;
    font-size: 19px;
    font-size: 5.06667vw;
  }
}

.l-header .block04 {
  z-index: 2;
  position: absolute;
  top: 0;
  right: 0;
  width: 64px;
  height: 60px;
  cursor: pointer;
}
@media screen and (min-width: 751px) {
  .l-header .block04 {
    display: none;
  }
}
@media print, screen and (max-width: 750px) {
  .l-header .block04 {
    width: 12.8%;
    height: 12vw;
    margin-right: 12.8%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}
@media screen and (min-width: 751px) {
  .l-header .block04:hover {
    opacity: 0.7;
  }
}
.l-header .block04 img {
  width: 50%;
}

.l-header .menuArea {
  z-index: 99;
  display: none;
  background: #f0f0f0;
  padding: 31px 0 23px;
  position: absolute;
  right: 0;
  left: 0;
  top: 60px;
}
@media print, screen and (max-width: 750px) {
  .l-header .menuArea {
    padding: 0 0 16%;
    top: 101%;
  }
  .l-header .menuArea.is-scrAdjust {
    top: 101%;
  }
}
@media print, screen and (max-width: 500px) {
  .l-header .menuArea {
    top: 41%;
  }
}
.l-header .menuArea__menuList {
  width: 1000px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media print, screen and (max-width: 750px) {
  .l-header .menuArea__menuList {
    width: 86.66667%;
    display: block;
  }
}
.l-header .menuArea__menuItem a {
  display: block;
  color: #3c3c3c;
  font-size: 14px;
  font-size: 1.07692rem;
  text-decoration: none;
}
@media screen and (min-width: 751px) {
  .l-header .menuArea__menuItem a.arrow-adjust {
    position: relative;
    padding-right: 1em;
  }
  .l-header .menuArea__menuItem a.arrow-adjust::before {
    position: absolute;
    top: 50%;
    right: -8px;
    -webkit-transform: translate(-50%, -50%) rotate(90deg);
    -ms-transform: translate(-50%, -50%) rotate(90deg);
    transform: translate(-50%, -50%) rotate(90deg);
    content: "";
    width: 14px;
    height: 14px;
    background: url(../img/cmn/icon_arrow02.png) center no-repeat;
    background-size: contain;
  }
}
@media print, screen and (max-width: 750px) {
  .l-header .menuArea__menuItem a {
    padding: 6.66667% 2.4% 5.86667%;
    font-size: 13px;
    font-size: 3.46667vw;
    border-top: 1px solid #ccc;
    position: relative;
  }
  .l-header .menuArea__menuItem a::before {
    position: absolute;
    top: 50%;
    right: 0%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    content: "";
    width: 1.6%;
    height: 3.2vw;
    background: url(../img/cmn/icon_arrow02.png) center no-repeat;
    background-size: contain;
  }
  .l-header .menuArea__menuItem a.bdrClr {
    border-top: none;
  }
  .l-header .menuArea__menuItem a.arrow-adjust::before {
    -webkit-transform: translate(-50%, -50%) rotate(90deg);
    -ms-transform: translate(-50%, -50%) rotate(90deg);
    transform: translate(-50%, -50%) rotate(90deg);
  }
  .l-header .menuArea__menuItem a.arrow-adjust02::before {
    -webkit-transform: translate(-50%, -50%) rotate(270deg);
    -ms-transform: translate(-50%, -50%) rotate(270deg);
    transform: translate(-50%, -50%) rotate(270deg);
  }
}
.l-header .menuArea__menuItem button {
  cursor: pointer;
  display: block;
  color: #3c3c3c;
  font-size: 16px;
  letter-spacing: 0.05em;
  border: none;
  background: transparent;
  padding: 0;
  margin: 0;
  text-decoration: none;
}
.l-header .menuArea__menuItem button:hover {
  opacity: .7;
}
@media print, screen and (max-width: 750px) {
  .l-header .menuArea__menuItem button {
    padding: 6.66667% 2.4% 5.86667%;
    font-size: 13px;
    font-size: 3.46667vw;
    border-top: 1px solid #ccc;
    position: relative;
    width: 100%;
    text-align: left;
  }
  .l-header .menuArea__menuItem button::before {
    position: absolute;
    top: 50%;
    right: 0%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    content: "";
    width: 1.6%;
    height: 3.2vw;
    background: url(../img/cmn/icon_arrow02.png) center no-repeat;
    background-size: contain;
  }
  .l-header .menuArea__menuItem button.bdrClr {
    border-top: none;
  }
  .l-header .menuArea__menuItem button.arrow-adjust::before {
    -webkit-transform: translate(-50%, -50%) rotate(90deg);
    -ms-transform: translate(-50%, -50%) rotate(90deg);
    transform: translate(-50%, -50%) rotate(90deg);
  }
  .l-header .menuArea__menuItem button.arrow-adjust02::before {
    -webkit-transform: translate(-50%, -50%) rotate(270deg);
    -ms-transform: translate(-50%, -50%) rotate(270deg);
    transform: translate(-50%, -50%) rotate(270deg);
  }
}
@media screen and (min-width: 751px) {
  .l-header .menuArea__menuList02Wrap {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 70px;
    background: #f0f0f0;
  }
}
.l-header .menuArea__menuList02 {
  display: none;
}
@media screen and (min-width: 751px) {
  .l-header .menuArea__menuList02 {
    position: absolute;
    width: 1000px;
    margin: 0 auto;
    top: 0px;
    left: 0;
    right: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    background: #f0f0f0;
    padding: 31px 0 23px;
  }
}
@media print, screen and (max-width: 750px) {
  .l-header .menuArea__menuItem02 {
    padding-left: 1em;
  }
}
@media screen and (min-width: 751px) {
  .l-header .menuArea__menuList02Close {
    display: none;
    position: absolute;
    top: 0px;
    right: 0;
    width: 70px;
    height: 70px;
    cursor: pointer;
  }
  .l-header .menuArea__menuList02Close img {
    width: 100%;
  }
}

.l-footer .block01 {
  background: #f0f0f0;
}
@media screen and (min-width: 751px) {
  .l-footer .block01__linkList {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin: 0 auto;
    justify-content: center;
  }
}
.l-footer .block01__link a {
  display: block;
  padding: 24px 16px 22px;
  width: 100%;
  height: 100%;
  color: #3c3c3c;
  font-size: 14px;
  letter-spacing: 0.05em;
  text-decoration: none;
  white-space: nowrap;
}
@media print, screen and (max-width: 750px) {
  .l-footer .block01__link a {
    padding: 5.2% 4%;
    font-size: 13px;
    font-size: 3.46667vw;
    border-top: 1px solid #ccc;
    position: relative;
    text-align: center;
  }
  .l-footer .block01__link a::before {
    position: absolute;
    top: 50%;
    right: 3%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    content: "";
    width: 1.6%;
    height: 3.2vw;
    background: url(../img/cmn/icon_arrow02.png) center no-repeat;
    background-size: contain;
  }
}
@media screen and (min-width: 751px) {
  .l-footer .block01__link a:hover {
    background: #f7f7f7;
  }
}
.l-footer .block01__link button {
  display: block;
  padding: 24px 16px 22px;
  width: 100%;
  height: 100%;
  color: #3c3c3c;
  font-size: 14px;
  letter-spacing: 0.05em;
  cursor: pointer;
  border: none;
  background: transparent;
}
@media print, screen and (max-width: 750px) {
  .l-footer .block01__link button {
    padding: 5.2% 4%;
    font-size: 13px;
    font-size: 3.46667vw;
    border-top: 1px solid #ccc;
    position: relative;
    text-align: center;
  }
  .l-footer .block01__link button::before {
    position: absolute;
    top: 50%;
    right: 3%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    content: "";
    width: 1.6%;
    height: 3.2vw;
    background: url(../img/cmn/icon_arrow02.png) center no-repeat;
    background-size: contain;
  }
}
@media screen and (min-width: 751px) {
  .l-footer .block01__link button:hover {
    background: #f7f7f7;
  }
}

.l-footer .block02 {
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  padding: 64px 0 29px;
}
@media print, screen and (max-width: 750px) {
  .l-footer .block02 {
    padding: 12.66667% 0 4.66667%;
  }
}
.l-footer .block02__corpLogo {
  width: 200px;
  margin: 0 auto;
}
@media print, screen and (max-width: 750px) {
  .l-footer .block02__corpLogo {
    width: 40%;
  }
}
.l-footer .block02__corpLogo a {
  display: block;
}
.l-footer .block02__corpLogo a img {
  width: 100%;
}

.l-footer .block03 {
  text-align: center;
  padding: 14px 0 11px;
  color: #3c3c3c;
  font-size: 10px;
  letter-spacing: 0.05em;
}
@media print, screen and (max-width: 750px) {
  .l-footer .block03 {
    padding: 4% 0;
  }
}
@media print, screen and (max-width: 750px) {
  .l-footer .block03.is-scrAdjust {
    padding: 4% 0 23%;
  }
}

@media print, screen and (max-width: 750px) {
  .l-footer--simple .block03.is-scrAdjust {
    padding: 4% 0;
  }
}

/*pages*/

.p-top .blockTitle {
  background: #f0f0f0;
  color: #3c3c3c;
  font-size: 18px;
  letter-spacing: 0.05em;
  width: 100%;
  padding: 10px 0 6px 11px;
  border-bottom: 2px solid #00a2ea;
  margin-bottom: 16px;
}
@media print, screen and (max-width: 750px) {
  .p-top .blockTitle {
    background: #fff;
    font-size: 17px;
    font-size: 4.53333vw;
    text-align: center;
    border-bottom: none;
    padding: 6.66667% 0 4%;
    margin-bottom: 0;
  }
}

.p-top .subTitle {
  margin-bottom: 16px;
  border-left: 5px solid #00a2ea;
  padding: 0 0 0 8px;
  font-size: 16px;
}

.p-top .infoArea {
  margin-left: 13px;
}
.p-top .infoArea h4 {
  margin: 20px 0 0;
  font-size: 14px;
  font-weight: normal;
}
.p-top .infoArea h4::before {
  content: '■';
  margin: 0 2px;
  color: #00a2ea;
}
.p-top .infoArea p {
  font-size: 14px;
}
.p-top .infoArea strong {
  color: #00a2ea;
  font-weight: normal;
  font-size: inherit;
}
.p-top .infoArea .note {
  margin-top: 20px;
}
.p-top .infoArea .note li {
  padding-left: 1.3em;
  text-indent: -1.3em;
  font-size: 12px;
}

.p-kiyaku__mainContents {
  width: 990px;
  margin: 0 auto;
  padding: 30px 0 70px;
}
@media print, screen and (max-width: 750px) {
  .p-kiyaku__mainContents {
    width: 100%;
    background: #fff;
    padding: 0 0 12%;
  }
}

.p-kiyaku .block01__title {
  background: #fff;
  text-align: center;
  color: #3c3c3c;
  font-size: 22px;
  font-weight: bold;
  padding: 28px 0 20px;
}
@media print, screen and (max-width: 750px) {
  .p-kiyaku .block01__title {
    font-size: 18px;
    font-size: 4.8vw;
    padding: 5.33333% 0 3.73333%;
    line-height: 1.3;
  }
}

@media print, screen and (max-width: 750px) {
  .p-kiyaku .block02 {
    background: #fff;
    width: 100%;
    margin-bottom: 2.93333%;
    padding: 4% 0 0;
  }
}

.p-kiyaku .block02__list {
  width: 100%;
  margin: 0 auto;
}
@media print, screen and (max-width: 750px) {
  .p-kiyaku .block02__list {
    display: block;
    width: 92%;
  }
}

.p-kiyaku .block02__item {
  margin-bottom: 60px;
}
@media print, screen and (max-width: 750px) {
  .p-kiyaku .block02__item {
    position: relative;
    margin-bottom: 4.34783%;
  }
}
.p-kiyaku .block02__item--mbClr {
  margin-bottom: 0;
}

@media print, screen and (max-width: 750px) {
  .p-kiyaku .block02__item2 {
    position: relative;
  }
}

.p-kiyaku .block02__item2--mbClr {
  margin-bottom: 0;
}

.p-kiyaku .block02__itemBox2 {
  padding: 1em 4em 3em 1.5em;
}
@media print, screen and (max-width: 750px) {
  .p-kiyaku .block02__itemBox2 {
    padding: 0 1em 3em 1em;
  }
}

.p-kiyaku .block02__itemTtl {
  color: #3c3c3c;
  font-size: 20px;
  letter-spacing: 0.05em;
  margin-bottom: 10px;
}
@media print, screen and (max-width: 750px) {
  .p-kiyaku .block02__itemTtl {
    font-size: 14px;
    font-size: 3.73333vw;
    margin-bottom: 4.92754%;
  }
}

.p-kiyaku .block02__itemTxt {
  color: #3c3c3c;
  font-size: 18px;
  letter-spacing: 0.05em;
  line-height: 1.5;
  font-size: 14px;
  font-size: 1.07692rem;
}
@media print, screen and (max-width: 750px) {
  .p-kiyaku .block02__itemTxt {
    display: none;
    font-size: 12px;
    font-size: 3.2vw;
    line-height: 1.8;
  }
}
.p-kiyaku .block02__itemTxt--ex {
  margin-bottom: 20px;
}
@media print, screen and (max-width: 750px) {
  .p-kiyaku .block02__itemTxt--ex {
    margin-bottom: 3.47826%;
  }
}
.p-kiyaku .block02__itemTxt + .block02__itemTxt {
  margin-top: 1em;
}

.p-kiyaku .block02__itemTxt2 {
  color: #3c3c3c;
  font-size: 18px;
  letter-spacing: 0.05em;
  line-height: 1.5;
  font-size: 14px;
  font-size: 1.07692rem;
}
@media print, screen and (max-width: 750px) {
  .p-kiyaku .block02__itemTxt2 {
    font-size: 12px;
    font-size: 3.2vw;
    line-height: 1.8;
  }
}
.p-kiyaku .block02__itemTxt2--ex {
  margin-bottom: 20px;
}
@media print, screen and (max-width: 750px) {
  .p-kiyaku .block02__itemTxt2--ex {
    margin-bottom: 3.47826%;
  }
}
.p-kiyaku .block02__itemTxt2 + .block02__itemTxt2 {
  margin-top: 1em;
}

.p-kiyaku .block02__itemList {
  margin: .5em 0 1em;
}
.p-kiyaku .block02__itemList > li {
  overflow: hidden;
  margin-top: .3em;
}
.p-kiyaku .block02__itemList > li > span {
  float: left;
  padding-right: .5em;
}
.p-kiyaku .block02__itemList > li > p {
  overflow: hidden;
}

.p-kiyaku .block02__txtRed {
  color: #ff0000;
}

.p-kiyaku .block02__btn {
  position: absolute;
  top: -3px;
  right: 0;
  width: 6.08696%;
  cursor: pointer;
}
.p-kiyaku .block02__btn img {
  width: 100%;
}

.p-kiyaku .block02__toTop {
  text-align: right;
}

.p-contact__mainContents {
  width: 990px;
  margin: 0 auto;
  padding: 30px 0 60px;
}
@media print, screen and (max-width: 750px) {
  .p-contact__mainContents {
    width: 100%;
    background: #fff;
    padding: 0 0 6.66667%;
  }
}

.p-contact .block01__title {
  width: 486px;
  margin: 0 auto;
  background: #fff;
  text-align: center;
  color: #3c3c3c;
  font-size: 22px;
  font-weight: bold;
  padding: 28px 0 20px;
}
@media print, screen and (max-width: 750px) {
  .p-contact .block01__title {
    width: 100%;
    font-size: 18px;
    font-size: 4.8vw;
    padding: 5.33333% 0 3.73333%;
    line-height: 1.3;
  }
}

@media print, screen and (max-width: 750px) {
  .p-contact .block02 {
    background: #fff;
    width: 100%;
    margin-bottom: 2.93333%;
    padding: 0;
  }
}

.p-contact .block02__list {
  width: 486px;
  margin: 0 auto;
}
@media print, screen and (max-width: 750px) {
  .p-contact .block02__list {
    display: block;
    width: 92%;
  }
}

.p-contact .block02__item {
  margin-bottom: 30px;
}
@media print, screen and (max-width: 750px) {
  .p-contact .block02__item {
    position: relative;
    margin-bottom: 8.11594%;
  }
}
.p-contact .block02__item--mbClr {
  margin-bottom: 0;
}

.p-contact .block02__itemTtl {
  padding: 8px 0 5px;
  text-align: center;
  background-color: #00a2ea;
  color: #fff;
  font-size: 18px;
  letter-spacing: 0.05em;
  margin-bottom: 22px;
}
@media print, screen and (max-width: 750px) {
  .p-contact .block02__itemTtl {
    padding: 2.02899% 0 1.73913%;
    font-size: 15px;
    font-size: 4vw;
    margin-bottom: 3.76812%;
  }
}

.p-contact .block02__itemTxt01 {
  text-align: center;
  color: #e70012;
  font-size: 38px;
  font-weight: bold;
  letter-spacing: 0.05em;
}
.p-contact .block02__itemTxt01 a {
  color: inherit;
}
@media print, screen and (max-width: 750px) {
  .p-contact .block02__itemTxt01 {
    font-size: 30px;
    font-size: 8vw;
    line-height: 1.4;
  }
}

.p-contact .block02__itemTxt02 {
  text-align: center;
  color: #3c3c3c;
  font-size: 30px;
  font-weight: bold;
  letter-spacing: 0.05em;
  margin-bottom: 14px;
}
@media print, screen and (max-width: 750px) {
  .p-contact .block02__itemTxt02 {
    font-size: 25px;
    font-size: 6.66667vw;
    line-height: 1.4;
    margin-bottom: 0;
  }
}

.p-contact .block02__itemTxt03 {
  text-align: center;
  color: #3c3c3c;
  font-size: 13px;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.5;
}
@media print, screen and (max-width: 750px) {
  .p-contact .block02__itemTxt03 {
    font-size: 16px;
    font-size: 4.26667vw;
    line-height: 1.8;
  }
}

.p-contact .block02__itemTxt04 {
  margin-top: 5px;
  text-align: center;
  color: #3c3c3c;
  font-size: 13px;
  letter-spacing: 0.05em;
  line-height: 1.5;
}
@media print, screen and (max-width: 750px) {
  .p-contact .block02__itemTxt04 {
    margin-top: 0.57971%;
    font-size: 12px;
    font-size: 3.2vw;
    line-height: 1.8;
  }
}

.p-faq__mainContents {
  width: 990px;
  margin: 0 auto;
  padding: 10px 0 60px;
}
@media print, screen and (max-width: 750px) {
  .p-faq__mainContents {
    width: 100%;
    background: #fff;
    padding: 0 0 6.66667%;
  }
}

.p-faq .block01__title {
  width: 486px;
  margin: 0 auto;
  background: #fff;
  text-align: center;
  color: #3c3c3c;
  font-size: 22px;
  font-weight: bold;
  padding: 28px 0 20px;
}
@media print, screen and (max-width: 750px) {
  .p-faq .block01__title {
    width: 100%;
    font-size: 18px;
    font-size: 4.8vw;
    padding: 5.33333% 0 3.73333%;
    line-height: 1.3;
  }
}

.p-faq .block02 {
  width: 100%;
}
@media print, screen and (max-width: 750px) {
  .p-faq .block02 {
    display: block;
    background: #fff;
    width: 100%;
    margin-bottom: 2.93333%;
    padding: 0;
  }
}
@media print, screen and (max-width: 750px) {
  .p-faq .block02__list {
    display: block;
    width: 86.66667%;
    padding-top: 34%;
    margin: -34% auto 8%;
    z-index: 1;
    position: relative;
  }
}
@media print, screen and (max-width: 750px) {
  .p-faq .block02__list--mbClr {
    margin-bottom: 0;
    z-index: 0;
  }
}
.p-faq .block02__mainTtl {
  padding: 2px 0 7px;
  width: 100%;
  font-size: 19px;
  font-weight: bold;
  color: #3c3c3c;
  line-height: 1.5;
  letter-spacing: 0.05em;
  border-bottom: 1px solid #3f3f3f;
}
@media print, screen and (max-width: 750px) {
  .p-faq .block02__mainTtl {
    font-size: 14px;
    font-size: 3.73333vw;
    padding: 3% 0 1%;
  }
}
.p-faq .block02__item {
  border-bottom: 1px solid #707070;
  padding-top: 25px;
  width: 100%;
}
@media print, screen and (max-width: 750px) {
  .p-faq .block02__item {
    padding-top: 7.69231%;
  }
}
.p-faq .block02__item--mbClr {
  margin-bottom: 0;
}
.p-faq .block02__itemTtl {
  margin-bottom: 25px;
  display: flex;
  cursor: pointer;
}
@media screen and (min-width: 751px) {
  .p-faq .block02__itemTtl:hover {
    transition: 0.2s;
    opacity: 0.7;
  }
}
@media print, screen and (max-width: 750px) {
  .p-faq .block02__itemTtl {
    margin-bottom: 6%;
  }
}
.p-faq .block02__itemTtlInnerElm01 {
  display: flex;
  align-items: flex-start;
  width: 60px;
}
@media print, screen and (max-width: 750px) {
  .p-faq .block02__itemTtlInnerElm01 {
    width: 12.30769%;
  }
}
.p-faq .block02__itemTtlInnerElm01 img {
  width: 30px;
}
@media print, screen and (max-width: 750px) {
  .p-faq .block02__itemTtlInnerElm01 img {
    width: 50%;
  }
}
.p-faq .block02__itemTtlInnerElm01Num {
  width: 30px;
  border-left: none;
  display: inline-block;
  vertical-align: top;
  text-align: center;
  color: #00a2ea;
  border: 1px solid #00a2ea;
  padding-top: 28px;
  height: 0;
  position: relative;
}
@media print, screen and (max-width: 750px) {
  .p-faq .block02__itemTtlInnerElm01Num {
    width: 50%;
    padding-top: 47%;
  }
}
.p-faq .block02__itemTtlInnerElm01Num > span {
  position: absolute;
  font-size: 22px;
  font-size: 1.69231rem;
  line-height: 28px;
  display: inline-block;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media print, screen and (max-width: 750px) {
  .p-faq .block02__itemTtlInnerElm01Num > span {
    font-size: 11px;
    font-size: 2.93333vw;
    line-height: 4vw;
  }
}
.p-faq .block02__itemTtlInnerElm02 {
  display: table-cell;
  vertical-align: bottom;
  font-size: 17px;
  line-height: 1.5;
  color: #3c3c3c;
  padding: 0 0 0 15px;
}
@media print, screen and (max-width: 750px) {
  .p-faq .block02__itemTtlInnerElm02 {
    width: 93.84615%;
    vertical-align: top;
    font-size: 12px;
    font-size: 3.2vw;
    line-height: 1.8;
    padding: 0 0 0 3.07692%;
  }
}
.p-faq .block02__itemTxt {
  display: none;
  width: 100%;
  padding-bottom: 22px;
}
@media print, screen and (max-width: 750px) {
  .p-faq .block02__itemTxt {
    padding-bottom: 6%;
  }
}
.p-faq .block02__itemTxtInner {
  width: 100%;
  display: table;
  table-layout: fixed;
}
.p-faq .block02__itemTxtInnerElm01 {
  width: 60px;
  display: table-cell;
  vertical-align: top;
}
@media print, screen and (max-width: 750px) {
  .p-faq .block02__itemTxtInnerElm01 {
    width: 12.30769%;
  }
}
.p-faq .block02__itemTxtInnerElm01 img {
  width: 30px;
}
@media print, screen and (max-width: 750px) {
  .p-faq .block02__itemTxtInnerElm01 img {
    width: 50%;
  }
}
.p-faq .block02__itemTxtInnerElm02 {
  display: table-cell;
  vertical-align: top;
  font-size: 16px;
  line-height: 1.5;
  color: #3c3c3c;
  padding: 0 0 0 15px;
  font-size: 14px;
  font-size: 1.07692rem;
}
@media print, screen and (max-width: 750px) {
  .p-faq .block02__itemTxtInnerElm02 {
    width: 87.69231%;
    font-size: 11.5px;
    font-size: 3.06667vw;
    line-height: 1.8;
    padding: 0 0 0 3.07692%;
  }
}
.p-faq .block02__itemTxtInnerList {
  padding-left: 1em;
  padding-bottom: 1em;
}
.p-faq .block02__itemTxtInnerList > li {
  text-indent: -1em;
}
@media print, screen and (max-width: 750px) {
  .p-faq .block02__toTop {
    margin-top: 4.61538%;
    text-align: right;
    font-size: 11px;
    font-size: 2.93333vw;
    position: relative;
  }
}

.p-serial__mainContents {
  width: 990px;
  margin: 0 auto 60px;
}
@media print, screen and (max-width: 750px) {
  .p-serial__mainContents {
    width: 100%;
    background: #fff;
    padding: 0 0 6.66667%;
  }
}

.p-serial .block01__wrap {
  width: 882px;
  margin: auto;
}
@media print, screen and (max-width: 750px) {
  .p-serial .block01__wrap {
    width: 100%;
  }
}
.p-serial .block01__point2 {
  color: #3c3c3c;
  font-size: 20px;
  font-size: 1.53846rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-align: center;
  padding: 0.3em 0;
}
.p-serial .block01__point2 span {
  font-size: 30px;
  font-size: 2.30769rem;
  font-weight: bold;
  line-height: 1;
}
@media print, screen and (max-width: 750px) {
  .p-serial .block01__point2 span {
    font-size: 22.5px;
    font-size: 6vw;
  }
}
@media print, screen and (max-width: 750px) {
  .p-serial .block01__point2 {
    padding: 4% 0 0;
    font-size: 17.5px;
    font-size: 4.66667vw;
  }
}

.p-serial .block01__title {
  width: 486px;
  margin: 0 auto;
  background: #fff;
  text-align: center;
  color: #3c3c3c;
  font-size: 22px;
  font-weight: bold;
  padding: 28px 0 20px;
}
.p-serial .block01__title span {
  font-weight: bold;
}
@media print, screen and (max-width: 750px) {
  .p-serial .block01__title {
    width: 100%;
    font-size: 18px;
    font-size: 4.8vw;
    padding: 5.33333% 0 3.73333%;
    line-height: 1.3;
  }
  .p-serial.s_ocr .block01__title--icon > span {
    display: inline-block;
    padding: 3% 0 3% 21%;
    background: url(../img/serial/title_icon.png) no-repeat 0 50%;
    background-size: 22% auto;
    color: #0053a1;
    font-weight: bold;
  }
}

.p-serial .block01__box {
  background: #F0F0F0;
  padding: 50px 80px;
  margin-top: 2em;
}
@media print, screen and (max-width: 750px) {
  .p-serial .block01__box {
    padding: 24px 15px;
  }
}

.p-serial .block01__boxTitle {
  background: #E60012;
  color: #fff;
  text-align: center;
  font-size: 24px;
  font-size: 1.84615rem;
  font-weight: bold;
  line-height: 1;
  padding: 0.3em;
}
@media print, screen and (max-width: 750px) {
  .p-serial .block01__boxTitle {
    font-size: 20px;
    font-size: 5.33333vw;
  }
}

.p-serial .block01__imgBox {
  padding-top: 3em;
}
@media print, screen and (max-width: 750px) {
  .p-serial .block01__imgBox {
    padding: 30px 5% 10px;
  }
}

.p-serial .ocrText {
  display: none;
}
.p-serial.s_ocr .ocrText {
  display: block;
  margin: 20px 20px 30px;
  text-align: center;
  font-size: 18px;
}
.p-serial.s_ocr .ocrText p + p {
  margin-top: 15px;
}
.p-serial.s_ocr .ocrText a {
  color: #00a0ea;
  text-decoration: underline;
}
@media print, screen and (max-width: 750px) {
  .p-serial.s_ocr .ocrText {
    font-size: 4vw;
  }
  .p-serial.s_ocr .ocrText p + p {
    margin-top: 5%;
  }
}

@media print, screen and (max-width: 750px) {
  .p-serial .block02 {
    background: #fff;
    width: 100%;
    margin-bottom: 2.93333%;
    padding: 0;
  }
}

.p-serial .block02__mypagePointArea {
  width: 654px;
  margin: 40px auto 0;
}
.p-serial .block02__mypagePointArea:first-child {
  margin-top: 0;
}
@media print, screen and (max-width: 750px) {
  .p-serial .block02__mypagePointArea {
    width: 84%;
  }
}

.p-serial .block02__sec01 {
  width: 100%;
  margin-bottom: 30px;
}
@media print, screen and (max-width: 750px) {
  .p-serial .block02__sec01 {
    margin-bottom: 7.93651%;
  }
}

.p-serial .block02__inputSerialArea1 {
  width: 100%;
}

.p-serial .block02__inputSerialBox {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.p-serial .block02__inputSerialBoxWrap .block02__inputSerialBox:not(:first-child) {
  margin-top: 50px;
}
.p-serial .block02__inputSerialBox p {
  width: 318px;
}
.p-serial .block02__inputSerialBox p input {
  display: block;
  width: 100%;
  font-size: 18px;
  border: 1px solid #000;
}
.p-serial .block02__inputSerialBox p input::-webkit-input-placeholder {
  color: #000;
}
.p-serial .block02__inputSerialBox p input:-ms-input-placeholder {
  color: #000;
}
.p-serial .block02__inputSerialBox p input::-ms-input-placeholder {
  color: #000;
}
.p-serial .block02__inputSerialBox p input::placeholder {
  color: #000;
}
.p-serial .block02__inputSerialBox .camera_btn {
  display: none;
}
.p-serial .block02__inputSerialBox .folder_btn {
  display: none;
}
@media print, screen and (max-width: 750px) {
  .p-serial .block02__inputSerialBox {
    display: block;
  }
  .p-serial .block02__inputSerialBox p {
    width: 100%;
    margin-bottom: 4vw;
  }
  .p-serial .block02__inputSerialBox--ex {
    margin-top: 20px;
    border-top: 1px dashed #707070;
    padding-top: 20px;
  }
  .p-serial .block02__inputSerialBoxWrap .block02__inputSerialBox:not(:first-child) {
    margin-top: 20px;
  }
}
.p-serial.s_ocr .block02__inputSerialBox p {
  width: 288px;
}
.p-serial.s_ocr .block02__inputSerialBox--camera {
  position: relative;
  padding-right: 65px;
}
.p-serial.s_ocr2 .block02__inputSerialBox--camera {
  padding-bottom: 40px;
}
.p-serial.s_ocr .block02__inputSerialBoxWrap .block02__inputSerialBox--camera:not(:first-child) {
  margin-top: 35px;
}
.p-serial.s_ocr .block02__inputSerialBox p input {
  font-size: 15px;
  border: 1px solid #c9c9c9;
  background-color: #e8f0fe;
}
.p-serial.s_ocr .block02__inputSerialBox .camera_btn {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  border: none;
  padding: 0;
  background-color: #fff;
}
.p-serial.s_ocr2 .block02__inputSerialBox .camera_btn {
  bottom: 40px;
}
.p-serial.s_ocr .block02__inputSerialBox .camera_btn img {
  border-radius: 6px;
  box-shadow: 0 3px 3px rgba(0,0,0,0.25);
}
.p-serial.s_ocr .block02__inputSerialBox .folder_btn {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  display: block;
  width: 190px;
  margin: 0 auto;
  text-align: center;
  color: #00a0ea;
  font-size: 14px;
  text-decoration: underline;
}
.p-serial.s_ocr .block02__inputSerialBox .folder_btn::before {
  content: '';
  display: inline-block;
  vertical-align: -6px;
  margin-right: 5px;
  width: 30px;
  height: 24px;
  background: url(../img/serial/icon_folder.png) no-repeat 0 0;
  background-size: contain;
}
@media print, screen and (max-width: 750px) {
  .p-serial.s_ocr .block02__inputSerialBox p {
    width: 100%;
  }
  .p-serial.s_ocr .block02__inputSerialBox--camera {
    padding-right: 24vw;
  }
  .p-serial.s_ocr2 .block02__inputSerialBox--camera {
    padding-bottom: 7vw;
  }
  .p-serial.s_ocr .block02__inputSerialBoxWrap .block02__inputSerialBox--camera:not(:first-child) {
    margin-top: 12%;
  }
  .p-serial.s_ocr .block02__inputSerialBox p input {
    font-size: 4vw;
  }
  .p-serial.s_ocr .block02__inputSerialBox .camera_btn {
    width: 20vw;
  }
  .p-serial.s_ocr2 .block02__inputSerialBox .camera_btn {
    bottom: 11vw;
  }
  .p-serial.s_ocr .block02__inputSerialBox .camera_btn img {
    border-radius: 2.5vw;
  }
  .p-serial.s_ocr .block02__inputSerialBox .folder_btn {
    width: 55vw;
    font-size: 4vw;
  }
  .p-serial.s_ocr .block02__inputSerialBox .folder_btn::before {
    margin-right: 1.2vw;
    width: 8vw;
    height: 6.4vw;
  }
}

.p-serial .block02__btn_serial_regist {
  width: 336px;
  margin: 30px auto 60px;
  background-color: #3c3c3c;
  border-radius: 5px;
  text-align: center;
}
@media print, screen and (max-width: 750px) {
  .p-serial .block02__btn_serial_regist {
    width: 87.30159%;
    margin: 10.79365% auto 0;
  }
}
.p-serial .block02__btn_serial_regist input {
  display: block;
  width: 100%;
  padding: 14px 0 12px;
  color: #fff;
  font-size: 16px;
  letter-spacing: 0.05em;
}
@media print, screen and (max-width: 750px) {
  .p-serial .block02__btn_serial_regist input {
    padding: 6.54545% 0 5.09091%;
    font-size: 13.5px;
    font-size: 3.6vw;
  }
}

.p-serial .ocrNote {
  display: none;
}
.p-serial.s_ocr .ocrNote {
  display: block;
  margin: 40px 0 0;
}
.p-serial .ocrNote_marginText {
  margin-top: 15px;
}
.p-serial .ocrNote__btn {
  margin: 30px auto 20px;
  border: 1px solid #00a0ea;
  border-radius: 5px;
  width: 360px;
  text-align: center;
  padding: 18px 0 16px;
  color: #00a0ea;
  font-size: 16px;
  letter-spacing: 0.05em;
  cursor: pointer;
  position: relative;
}
.p-serial .ocrNote__btn::before,
.p-serial .ocrNote__btn::after {
  content: "▼";
  display: inline-block;
  vertical-align: 2px;
  font-size: 12px;
}
.p-serial .ocrNote__btn::before {
  margin-right: 2em;
}
.p-serial .ocrNote__btn::after {
  margin-left: 2em;
}
.p-serial .ocrNote__btn.open::before,
.p-serial .ocrNote__btn.open::after {
  content: "▲";
}
.p-serial .ocrNote .ac_contBox {
  font-size: 16px;
}
.p-serial .ocrNote .ac_contBox p {
  margin: 10px 0;
}
.p-serial .ocrNote_title {
  margin: 0 0 15px;
  color: #00a0ea;
  font-size: 18px;
}
.p-serial .ocrNote_step {
  font-weight: bold;
}
.p-serial .ocrNote_cameraBtn {
  display: block;
  width: 50px;
  margin: 15px auto;
  border-radius: 6px;
  box-shadow: 0 3px 3px rgba(0,0,0,0.25);
}
.p-serial .ocrNote_note {
  margin: 10px 0 20px;
  padding-left: 1em;
  text-indent: -1em;
  font-size: 15px;
}
.p-serial .ocrNote_note span {
  margin: 0 0.2em;
  border: 1px solid #00a0ea;
  border-radius: 4px;
  color: #00a0ea;
}
.p-serial .ocrNote_note .folderSelect {
  border: none;
  text-decoration: underline;
}
.p-serial .ocrNote_note .folderSelect::before {
  content: '';
  display: inline-block;
  vertical-align: -4px;
  margin-right: 2px;
  width: 20px;
  height: 17px;
  background: url(../img/serial/icon_folder.png) no-repeat 0 0;
  background-size: contain;
}
.p-serial .ocrNote_modalBtn {
  display: flex;
  justify-content: space-between;
  max-width: 400px;
  margin: 0 auto 20px;
}
.p-serial .ocrNote_modalBtn li {
  width: 49%;
}
.p-serial .ocrNote_img {
  max-width: 500px;
  margin: 5% auto 8%;
}
.p-serial .ocrNote_img.s_marginS {
  margin: 20px auto 0;
}
.p-serial .ocrNote_titleS {
  display: inline-block;
  border: 1px solid #333;
  padding: 0 0.3em;
}
.p-serial .ocrNote_attention {
  margin: 15px 0 30px;
  border: 1px solid #cc0000;
  padding: 15px;
}
.p-serial .ocrNote_attention h3 {
  margin-bottom: 15px;
  background: url(../img/serial/icon_attention.png) no-repeat 0 60%;
  background-size: 22px auto;
  padding-left: 28px;
  color: #cc0000;
  font-size: 18px;
  font-weight: bold;
}
.p-serial .ocrNote_attention p {
  margin: 2% 0 0 !important;
  color: #cc0000;
}
@media print, screen and (max-width: 750px) {
  .p-serial .ocrNote__btn {
    width: auto;
    padding: 5% 0;
    font-size: 3.6vw;
  }
  .p-serial .ocrNote__btn::before,
  .p-serial .ocrNote__btn::after {
    font-size: 2.6vw;
  }
  .p-serial .ocrNote .ac_contBox {
    font-size: 3.7vw;
  }
  .p-serial .ocrNote .ac_contBox p {
    margin: 1% 0;
  }
  .p-serial .ocrNote_title {
    margin: 0 0 2%;
    font-size: 4.3vw;
  }
  .p-serial .ocrNote_cameraBtn {
    width: 24%;
    margin: 4% auto 6%;
    border-radius: 2.5vw;
  }
  .p-serial .ocrNote_note {
    margin: 2% 0 4%;
    font-size: 3.2vw;
  }
  .p-serial .ocrNote_note span {
    border-radius: 1vw;
  }
  .p-serial .ocrNote_modalBtn {
    margin-bottom: 6%;
  }
  .p-serial .ocrNote_img {
    margin: 5% auto 8%;
  }
  .p-serial .ocrNote_img.s_marginS {
    margin: 10px auto 0;
  }
  .p-serial .ocrNote_attention {
    margin: 6% 0 10%;
    padding: 2% 3%;
  }
  .p-serial .ocrNote_attention h3 {
    margin-bottom: 2%;
    background-size: 7% auto;
    padding-left: 9%;
    font-size: 4.3vw;
  }
}

.p-serial .block02__btn_mypage {
  width: 336px;
  margin: 68px auto 0;
  background-color: #3c3c3c;
  border-radius: 5px;
  text-align: center;
}
@media print, screen and (max-width: 750px) {
  .p-serial .block02__btn_mypage {
    width: 87.30159%;
    margin: 10.79365% auto 0;
  }
}
.p-serial .block02__btn_mypage input {
  display: block;
  width: 100%;
  padding: 14px 0 12px;
  color: #fff;
  font-size: 16px;
  letter-spacing: 0.05em;
}
@media print, screen and (max-width: 750px) {
  .p-serial .block02__btn_mypage input {
    padding: 6.54545% 0 5.09091%;
    font-size: 13.5px;
    font-size: 3.6vw;
  }
}

.p-serial .block02__btn_cpLink {
  width: 336px;
  margin: 30px auto 0;
  border: 1px solid #00a2ea;
  border-radius: 5px;
  text-align: center;
}
@media print, screen and (max-width: 750px) {
  .p-serial .block02__btn_cpLink {
    width: 87.30159%;
    margin: 7.93651% auto 0;
  }
}
.p-serial .block02__btn_cpLink a {
  display: block;
  width: 100%;
  padding: 18px 0 16px;
  color: #00a2ea;
  font-size: 16px;
  letter-spacing: 0.05em;
  text-decoration: none;
  position: relative;
}
.p-serial .block02__btn_cpLink a::before {
  content: "";
  display: inline-block;
  width: .5em;
  height: .5em;
  border-top: 1px solid #00a2ea;
  border-right: 1px solid #00a2ea;
  position: absolute;
  top: 50%;
  right: 0;
  margin-right: 1em;
  -webkit-transform: translate(0, -50%) rotate(45deg);
  -ms-transform: translate(0, -50%) rotate(45deg);
  transform: translate(0, -50%) rotate(45deg);
}
@media print, screen and (max-width: 750px) {
  .p-serial .block02__btn_cpLink a {
    padding: 5.5% 0;
    font-size: 13.5px;
    font-size: 3.6vw;
  }
}
@media screen and (min-width: 751px) {
  .p-serial .block02__btn_cpLink a:hover {
    -webkit-transition: .2s;
    -o-transition: .2s;
    transition: .2s;
    background: #00a2ea;
    color: #fff;
  }
}
.p-serial .block02__btn_cpLink.is-disabled {
  border: none;
}
.p-serial .block02__btn_cpLink.is-disabled a {
  background: #ccc;
  color: #999;
  cursor: default;
  border-radius: 5px;
}
.p-serial .block02__btn_cpLink.is-disabled a::before {
  border-top: 1px solid #999;
  border-right: 1px solid #999;
}
@media screen and (min-width: 751px) {
  .p-serial .block02__btn_cpLink.is-disabled a:hover {
    background: #ccc;
    color: #999;
  }
}
.p-serial .block02__btn_cpLink.is-disabled button {
  cursor: default;
  background: #ccc;
  color: #999;
  border-radius: 5px;
}
.p-serial .block02__btn_cpLink.is-disabled button::before {
  border-top: 1px solid #999;
  border-right: 1px solid #999;
}
.p-serial .block02__btn_cpLink.is-disabled button:hover::before {
  border-color: #999;
}
@media screen and (min-width: 751px) {
  .p-serial .block02__btn_cpLink.is-disabled button:hover {
    background: #ccc;
    color: #999;
  }
}

.p-serial .block02__accordion {
  width: 336px;
  margin: 30px auto 0;
  border: 1px solid #00a2ea;
  border-radius: 5px;
  text-align: center;
  padding: 18px 0 16px;
  color: #00a2ea;
  font-size: 16px;
  letter-spacing: 0.05em;
  cursor: pointer;
  position: relative;
}
.p-serial .block02__accordion::before,
.p-serial .block02__accordion::after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-top: 8px solid #00a2ea;
  border-right: 5px solid transparent;
  border-left: 5px solid transparent;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
}
.p-serial .block02__accordion::before {
  left: 0;
  margin-left: 1.5em;
}
.p-serial .block02__accordion::after {
  right: 0;
  margin-right: 1.5em;
}
.p-serial .block02__accordion.open::before,
.p-serial .block02__accordion.open::after {
  border-top: none;
  border-right: 5px solid transparent;
  border-left: 5px solid transparent;
  border-bottom: 8px solid #00a2ea;
}
@media print, screen and (max-width: 750px) {
  .p-serial .block02__accordion {
    width: 100%;
    padding: 5% 0;
    font-size: 13.5px;
    font-size: 3.6vw;
  }
}
@media screen and (min-width: 751px) {
  .p-serial .block02__accordion:hover {
    -webkit-transition: .2s;
    -o-transition: .2s;
    transition: .2s;
    background: #00a2ea;
    color: #fff;
  }
  .p-serial .block02__accordion:hover::before,
  .p-serial .block02__accordion:hover::after {
    border-top: 8px solid #fff;
  }
  .p-serial .block02__accordion.open:hover::before,
  .p-serial .block02__accordion.open:hover::after {
    border-top: none;
    border-bottom: 8px solid #fff;
  }
}
.p-serial .block02__inputSerialBoxWrap {
  margin-top: 30px;
  display: none;
}
@media print, screen and (max-width: 750px) {
  .p-serial .block02__inputSerialBoxWrap {
    margin-top: 11.11111%;
  }
}

.p-serial .block02__attention {
  text-align: center;
  margin-top: 50px;
}
.p-serial .block02__attention-title {
  border: 1px solid #000;
  width: 300px;
  margin: auto;
  padding: .5em;
  line-height: 1;
  font-size: 15px;
  font-size: 1.15385rem;
}
.p-serial .block02__attention-text {
  padding-top: 1em;
  font-size: 15px;
  font-size: 1.15385rem;
}
@media print, screen and (max-width: 750px) {
  .p-serial .block02__attention-title {
    width: auto;
    border: 2px solid #0053a1;
    border-left: none;
    border-right: none;
    background-color: #d7f2fe;
    color: #0053a1;
    font-size: 4vw;
  }
  .p-serial .block02__attention-text {
    text-align: left;
    font-size: 3.5vw;
  }
}

.p-serial .lineCp {
  background: #e0e0e0;
  text-align: center;
  padding: 40px 10px 40px;
}
@media print, screen and (max-width: 750px) {
  .p-serial .lineCp {
    padding: 5.33333vw 1.33333vw 5.33333vw;
  }
}
.p-serial .lineCp__ttl {
  background: #e70012;
  color: #fff;
  text-align: center;
  font-size: 24px;
  font-size: 1.84615rem;
  font-weight: bold;
  line-height: 1;
  padding: 0.3em;
  max-width: 990px;
  width: 95%;
  margin: auto;
}
@media print, screen and (max-width: 750px) {
  .p-serial .lineCp__ttl {
    font-size: 17.5px;
    font-size: 4.66667vw;
  }
}
.p-serial .lineCp__txt {
  font-size: 24px;
  font-size: 1.84615rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-align: center;
  padding-top: 1em;
  color: #e70012;
}
@media print, screen and (max-width: 750px) {
  .p-serial .lineCp__txt {
    font-size: 17.5px;
    font-size: 4.66667vw;
    padding-top: 1em;
  }
}
.p-serial .lineCp__img {
  width: 438px;
  max-width: 100%;
  display: inline-block;
  padding: 20px 0;
}
.p-serial .lineCp__img img {
  width: 100%;
  display: block;
}
@media print, screen and (max-width: 750px) {
  .p-serial .lineCp__img {
    width: 66.66667vw;
    margin: auto;
  }
}

/* キャンペーン共通 */
.p-cpPage {
  background: #F0F0F0;
}
.p-cpPage--noBg {
  background: #fff;
}
@media print, screen and (max-width: 750px) {
  .p-cpPage {
    font-size: 15px;
    font-size: 4vw;
  }
}
.p-cpPage__kv {
  text-align: center;
}
.p-cpPage__textWhite {
  color: #ffffff;
  padding-top: 1em;
  text-align: center;
  font-size: 16px;
  font-size: 1.23077rem;
}
@media print, screen and (max-width: 750px) {
  .p-cpPage__textWhite {
    font-size: 14px;
    font-size: 3.73333vw;
  }
}
.p-cpPage__textBig {
  color: #fff;
  font-weight: bold;
  text-align: center;
  font-size: 40px;
  font-size: 3.07692rem;
  padding-top: 1em;
  line-height: 1.2;
}
@media print, screen and (max-width: 750px) {
  .p-cpPage__textBig {
    font-size: 27.5px;
    font-size: 7.33333vw;
  }
}
.p-cpPage__textBig2 {
  margin: 60px 0 50px;
  font-weight: bold;
  text-align: center;
  color: #e60012;
  font-size: 40px;
  line-height: 1.2;
}
@media print, screen and (max-width: 750px) {
  .p-cpPage__textBig2 {
    margin: 20px 0 30px;
    font-size: 27.5px;
  }
}
.p-cpPage__sendingText {
  margin-bottom: 40px;
  text-align: center;
  color: #333;
  font-size: 24px;
}
.p-cpPage__sendingText strong {
  display: inline-block;
  position: relative;
  font-size: 24px;
}
.p-cpPage__sendingText strong::before {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: -3px;
  border-bottom: 8px solid #ff0;
}
@media print, screen and (max-width: 750px) {
  .p-cpPage__sendingText {
    margin-bottom: 0;
    font-size: 18px;
  }
  .p-cpPage__sendingText strong {
    font-size: 18px;
  }
  .p-cpPage__sendingText strong::before {
    border-bottom: 6px solid #ff0;
  }
}

.p-cpPage__navWrap {
  background: #066cdc;
}
.p-cpKeyvisual + .p-cpPage__navWrap {
  margin-top: 1em;
}
.p-cpPage__nav {
  width: 100%;
  max-width: 990px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: auto;
}
@media print, screen and (max-width: 750px) {
  .p-cpPage__nav {
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
  }
}
.p-cpPage__navItem {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -ms-flex-negative: 1;
  flex-shrink: 1;
  text-align: center;
  border-right: 1px solid #fff;
}
@media print, screen and (max-width: 750px) {
  .p-cpPage__navItem {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
  }
}
.p-cpPage__navItem:first-child {
  border-left: 1px solid #fff;
}
@media print, screen and (max-width: 750px) {
  .p-cpPage__navItem:first-child {
    border-left: none;
    width: 30%;
  }
}
@media print, screen and (max-width: 750px) {
  .p-cpPage__navItem:last-child {
    border-right: none;
  }
}
.p-cpPage__navItem a {
  color: #ffffff;
  padding: 1em;
  display: block;
  position: relative;
  font-size: 13px;
}
@media print, screen and (max-width: 750px) {
  .p-cpPage__navItem a {
    font-size: 12px;
    font-size: 3.2vw;
    height: 100%;
    padding: 0.6em 0 1.4em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}
.p-cpPage__navItem a::after {
  content: "";
  display: inline-block;
  width: .6em;
  height: .6em;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  position: absolute;
  top: 50%;
  right: 0;
  margin-right: 4em;
  -webkit-transform: translate(0, -75%) rotate(45deg);
  -ms-transform: translate(0, -75%) rotate(45deg);
  transform: translate(0, -75%) rotate(45deg);
}
@media print, screen and (max-width: 750px) {
  .p-cpPage__navItem a::after {
    margin-right: 0;
    bottom: 0;
    top: auto;
    left: 0;
    margin: auto;
  }
}
.p-cpPage__titleWrap {
  padding-top: 60px;
}
@media print, screen and (max-width: 750px) {
  .p-cpPage__titleWrap {
    padding-top: 7.24638%;
  }
}
.p-cpPage__title {
  background: #025AA5;
  color: #fff;
  text-align: center;
  padding: 16px;
  font-weight: bold;
  font-size: 30px;
  font-size: 2.30769rem;
  line-height: 1.2;
}
.p-cpPage__title--box {
  color: #004098;
  background: #fff;
}
.p-cpPage__title--try {
  margin-top: 50px;
  background: #fff;
  color: #004098;
}
@media print, screen and (max-width: 750px) {
  .p-cpPage__title {
    font-size: 18px;
    font-size: 4.8vw;
    padding: .6em;
  }
}
.p-cpPage__titleB {
  text-align: left;
  border-bottom: 1px solid #3E3E3E;
  font-size: 20px;
  font-size: 1.53846rem;
  padding-top: 25px;
  padding-bottom: 16px;
  line-height: 1;
  font-weight: normal;
}
@media print, screen and (max-width: 750px) {
  .p-cpPage__titleB {
    font-size: 16px;
    font-size: 4.26667vw;
    line-height: 1.4;
  }
}
.p-cpPage__titleC {
  text-align: center;
  border-bottom: 1px solid #3E3E3E;
  font-size: 20px;
  font-size: 1.53846rem;
  padding-top: 25px;
  padding-bottom: 20px;
  line-height: 1;
  font-weight: normal;
}
@media print, screen and (max-width: 750px) {
  .p-cpPage__titleC {
    line-height: 1.4;
    padding-top: 2em;
    padding-bottom: .5em;
    font-size: 16px;
    font-size: 4.26667vw;
  }
}
.p-cpPage__titleD {
  font-size: 18px;
  font-size: 1.38462rem;
  padding-top: 25px;
  font-weight: normal;
}
@media print, screen and (max-width: 750px) {
  .p-cpPage__titleD {
    font-size: 16px;
    font-size: 4.26667vw;
  }
}
.p-cpPage__textBlock {
  padding-left: 1.4em;
}
.p-cpPage__box {
  background: #fff;
  padding: 50px;
  margin-top: 40px;
}
@media print, screen and (max-width: 750px) {
  .p-cpPage__box {
    padding: 7.24638% 4.34783%;
    margin-top: 4.34783%;
  }
}
.p-cpPage__box--info {
  padding: 36px 50px;
}
.p-cpPage__btnWrap {
  width: 460px;
  margin: 60px auto 0;
}
@media print, screen and (max-width: 750px) {
  .p-cpPage__btnWrap {
    width: 65.7971%;
  }
}
.p-cpPage__toggleBtn {
  cursor: pointer;
  position: relative;
}
.p-cpPage__toggleBtn::before, .p-cpPage__toggleBtn::after {
  content: "";
  display: inline-block;
  width: 1em;
  height: 2px;
  background: #fff;
  position: absolute;
  top: 50%;
  right: 0;
  margin-right: 1em;
  -webkit-transition: all 300ms 0s ease;
  -o-transition: all 300ms 0s ease;
  transition: all 300ms 0s ease;
}
.p-cpPage__toggleBtn::before {
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
}
.js-toggleWrap.is-open .p-cpPage__toggleBtn::before {
  -webkit-transform: translate(0, -50%) rotate(180deg);
  -ms-transform: translate(0, -50%) rotate(180deg);
  transform: translate(0, -50%) rotate(180deg);
}
.p-cpPage__toggleBtn::after {
  -webkit-transform: translate(0, -50%) rotate(-90deg);
  -ms-transform: translate(0, -50%) rotate(-90deg);
  transform: translate(0, -50%) rotate(-90deg);
}
.js-toggleWrap.is-open .p-cpPage__toggleBtn::after {
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
}
.p-cpPage__toggleBox {
  background: #fff;
  display: none;
  padding: 35px 40px 60px;
  border-radius: 0 0 1em 1em;
}
@media print, screen and (max-width: 750px) {
  .p-cpPage__toggleBox {
    padding: 25px 4.34783% 60px;
  }
}
.p-cpPage__toggleBtnB {
  cursor: pointer;
  position: relative;
}
.p-cpPage__toggleBtnB::before {
  content: "";
  display: inline-block;
  width: .7em;
  height: .7em;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  position: absolute;
  top: 50%;
  right: 0;
  margin-right: 1em;
  -webkit-transform: translate(0, -75%) rotate(45deg);
  -ms-transform: translate(0, -75%) rotate(45deg);
  transform: translate(0, -75%) rotate(45deg);
  -webkit-transition: all 300ms 0s ease;
  -o-transition: all 300ms 0s ease;
  transition: all 300ms 0s ease;
}
.js-toggleWrap.is-open > .p-cpPage__toggleBtnB::before {
  -webkit-transform: translate(0, -25%) rotate(-135deg);
  -ms-transform: translate(0, -25%) rotate(-135deg);
  transform: translate(0, -25%) rotate(-135deg);
}
.p-cpPage__toggleBoxB {
  background: #fff;
  display: none;
}
.p-cpPage__toggleBtnC {
  cursor: pointer;
  position: relative;
}
.p-cpPage__toggleBtnC::before, .p-cpPage__toggleBtnC::after {
  content: "";
  display: inline-block;
  width: 1em;
  height: 2px;
  background: #000;
  position: absolute;
  top: 50%;
  right: 0;
  margin-right: 1em;
  -webkit-transition: all 300ms 0s ease;
  -o-transition: all 300ms 0s ease;
  transition: all 300ms 0s ease;
}
.p-cpPage__toggleBtnC::before {
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
}
.js-toggleWrap.is-open .p-cpPage__toggleBtnC::before {
  -webkit-transform: translate(0, -50%) rotate(180deg);
  -ms-transform: translate(0, -50%) rotate(180deg);
  transform: translate(0, -50%) rotate(180deg);
}
.p-cpPage__toggleBtnC::after {
  -webkit-transform: translate(0, -50%) rotate(-90deg);
  -ms-transform: translate(0, -50%) rotate(-90deg);
  transform: translate(0, -50%) rotate(-90deg);
}
.js-toggleWrap.is-open .p-cpPage__toggleBtnC::after {
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
}
.p-cpPage__toggleBoxC {
  background: #fff;
  display: none;
}
.p-cpPage__list {
  padding-left: 1em;
  padding-top: 10px;
}
.p-cpPage__list-item {
  text-indent: -1em;
  padding-top: .1em;
  font-size: 18px;
  font-size: 1.38462rem;
}
@media print, screen and (max-width: 750px) {
  .p-cpPage__list-item {
    font-size: 15px;
    font-size: 4vw;
  }
}
.p-cpPage__listA {
  border-bottom: 1px solid #3E3E3E;
}
.p-cpPage__listA-item {
  border-top: 1px solid #3E3E3E;
}
.p-cpPage__hr {
  border-top: 1px solid #3E3E3E;
  margin: 40px 0;
}
.p-cpPage__hr--dash {
  border-top: 1px dashed #3E3E3E;
}
.p-cpPage__addressForm {
  margin-top: 1em;
  border-top: 1px solid #000;
}
.p-cpPage__kakuninList {
  display: flex;
  flex-wrap: wrap;
  padding: 2em 2em 0;
}
@media print, screen and (max-width: 750px) {
  .p-cpPage__kakuninList {
    margin-top: 20px;
    flex-direction: column;
    padding: 0;
  }
}
.p-cpPage__kakuninList dt {
  width: 35%;
  padding: 1em 0;
  font-size: 20px;
  font-size: 1.53846rem;
}
@media print, screen and (max-width: 750px) {
  .p-cpPage__kakuninList dt {
    width: 100%;
    font-size: 15px;
    font-size: 4vw;
    padding: 1em 0 .5em;
  }
}
.p-cpPage__kakuninList dd {
  width: calc(65% - 1em);
  padding: 1em 0;
  font-size: 20px;
  font-size: 1.53846rem;
}
@media print, screen and (max-width: 750px) {
  .p-cpPage__kakuninList dd {
    width: 100%;
    padding-top: 0;
    font-size: 17px;
    font-size: 4.53333vw;
    padding: 0 0 .5em;
  }
}
.p-cpPage__kakuninBox1 {
  background: #F4E2E3;
  padding: 1em;
  text-align: center;
  color: #E60012;
  font-weight: bold;
  font-size: 18px;
  font-size: 1.38462rem;
  margin: 1em 0 2em;
}
@media print, screen and (max-width: 750px) {
  .p-cpPage__kakuninBox1 {
    font-size: 12px;
    font-size: 3.2vw;
  }
}

.p-cpPage__course {
  margin-top: 40px;
  background-color: #eee;
  padding: 20px;
}
.p-cpPage__courseTitle {
  font-size: 20px;
  font-weight: bold;
}
.p-cpPage__course p {
  font-size: 18px;
}
@media print, screen and (max-width: 750px) {
  .p-cpPage__course {
    padding: 15px;
  }
  .p-cpPage__courseTitle {
    font-size: 16px;
  }
  .p-cpPage__course p {
    font-size: 15px;
  }
}

.p-cpPageFaq {
  margin-top: 20px 0;
}
.p-cpPageFaq__item {
  border-bottom: 1px solid #000;
}
.js-toggleBlockBtn {
  cursor: pointer;
}
.p-cpPageFaq__Q {
  padding: 20px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.p-cpPageFaq__Q-num {
  width: 2.8em;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  font-size: 18px;
  font-size: 1.38462rem;
  -ms-flex-item-align: center;
  -ms-grid-row-align: center;
  align-self: center;
  text-align: right;
  padding: 0 10px 0 0;
}
@media print, screen and (max-width: 750px) {
  .p-cpPageFaq__Q-num {
    font-size: 14px;
    font-size: 3.73333vw;
  }
}
.p-cpPageFaq__Q-text {
  padding: 0 20px 0 10px;
  font-size: 18px;
  font-size: 1.38462rem;
  border-left: 1px solid #000;
}
@media print, screen and (max-width: 750px) {
  .p-cpPageFaq__Q-text {
    padding: 0 40px 0 10px;
    font-size: 14px;
    font-size: 3.73333vw;
  }
}
.p-cpPageFaq__A {
  padding: 0 20px 20px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.p-cpPageFaq__A-num {
  width: 2.8em;
  text-align: right;
  padding: 0 10px 0 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  color: #00459D;
  font-size: 18px;
  font-size: 1.38462rem;
}
@media print, screen and (max-width: 750px) {
  .p-cpPageFaq__A-num {
    font-size: 14px;
    font-size: 3.73333vw;
  }
}
.p-cpPageFaq__A-text {
  padding: 0 20px 0 10px;
  font-size: 18px;
  font-size: 1.38462rem;
}
@media print, screen and (max-width: 750px) {
  .p-cpPageFaq__A-text {
    font-size: 14px;
    font-size: 3.73333vw;
    padding: 0 0 0 10px;
  }
}
.p-cpPageFaq__listA {
  padding-left: 3em;
}
@media print, screen and (max-width: 750px) {
  .p-cpPageFaq__listA {
    padding-left: 2em;
  }
}
.p-cpPageFaq__listA > li {
  font-size: 18px;
  font-size: 1.38462rem;
  text-indent: -2em;
  padding-top: .1em;
  padding-bottom: .2em;
}
@media print, screen and (max-width: 750px) {
  .p-cpPageFaq__listA > li {
    font-size: 14px;
    font-size: 3.73333vw;
  }
}
.p-cpPageFaq__listB {
  padding-left: 2em;
}
@media print, screen and (max-width: 750px) {
  .p-cpPageFaq__listB {
    padding-left: 0;
  }
}
.p-cpPageFaq__listB > li {
  font-size: 18px;
  font-size: 1.38462rem;
  text-indent: -1em;
  padding-top: .2em;
  padding-bottom: .2em;
}
@media print, screen and (max-width: 750px) {
  .p-cpPageFaq__listB > li {
    font-size: 14px;
    font-size: 3.73333vw;
    padding-top: .4em;
    padding-bottom: .6em;
  }
}

.p-cpPageStep {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 1em;
}
.p-cpPageStep > dt {
  font-size: 16px;
  font-size: 1.23077rem;
  width: 4.5em;
  padding-top: 0.4em;
  line-height: 1.4;
}
@media print, screen and (max-width: 750px) {
  .p-cpPageStep > dt {
    font-size: 14px;
    font-size: 3.73333vw;
  }
}
.p-cpPageStep > dd {
  font-size: 16px;
  font-size: 1.23077rem;
  width: calc(100% - 4.5em);
  padding-top: 0.4em;
  line-height: 1.4;
}
@media print, screen and (max-width: 750px) {
  .p-cpPageStep > dd {
    font-size: 14px;
    font-size: 3.73333vw;
  }
}

.p-cpPageInfo__block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media print, screen and (max-width: 750px) {
  .p-cpPageInfo__block {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

.p-cpPageInfo__box {
  width: calc(50% - 10px);
}
.p-cpPageInfo__box--full {
  width: 100%;
}
@media print, screen and (max-width: 750px) {
  .p-cpPageInfo__box {
    width: 100%;
  }
}
@media print, screen and (max-width: 750px) {
  .p-cpPageInfo__box + .p-cpPageInfo__box {
    padding-top: 20px;
  }
}

.p-cpPageInfo__title {
  text-align: center;
  background: #0040b7;
  color: #fff;
  padding: .5em;
  font-size: 18px;
  font-size: 1.38462rem;
  line-height: 1;
}
@media print, screen and (max-width: 750px) {
  .p-cpPageInfo__title {
    font-size: 12.5px;
    font-size: 3.33333vw;
  }
}

.p-cpPageInfo__tel {
  font-size: 36px;
  font-size: 2.76923rem;
  font-weight: bold;
  text-align: center;
  padding-top: 17px;
  line-height: 1.2;
  color: #e50112;
}

.p-cpPageInfo a {
  color: #e50112;
}
.p-cpPageInfo a:hover {
  opacity: 1;
}

.p-cpPageInfo__time {
  font-size: 36px;
  font-size: 2.76923rem;
  font-weight: bold;
  padding-top: 17px;
  color: #3C3C3C;
  line-height: 1.2;
  text-align: center;
}
.p-cpPageInfo__time span {
  display: block;
  text-align: center;
  font-size: 14px;
  font-size: 1.07692rem;
}

.p-cpPageInfo__text {
  padding-top: 17px;
  text-align: center;
  font-size: 14px;
  font-size: 1.07692rem;
}
@media print, screen and (max-width: 750px) {
  .p-cpPageInfo__text {
    font-size: 12px;
    font-size: 3.2vw;
  }
}

.p-cpPageInfo__text2 {
  padding-top: 1em;
  text-align: center;
  font-size: 14px;
  font-size: 1.07692rem;
}
@media print, screen and (max-width: 750px) {
  .p-cpPageInfo__text2 {
    font-size: 12px;
    font-size: 3.2vw;
  }
}

.p-cpPageInfo__textBox {
  text-align: center;
  padding-top: 2em;
}

.p-cpPageInfo__textBox-inner {
  display: inline-block;
  text-align: left;
}
@media screen and (min-width: 751px) {
  .p-cpPageInfo__textBox-inner p {
    font-size: 16px;
    font-size: 1.23077rem;
    text-align: center;
  }
}
@media print, screen and (max-width: 750px) {
  .p-cpPageInfo__textBox-inner p {
    font-weight: bold;
    font-size: 11px;
    font-size: 2.93333vw;
  }
}

.p-cpPageEnq {
  position: relative;
}
.p-cpPageEnq__box {
  padding: 20px 0;
}
.p-cpPageEnq__box + .p-cpPageEnq__box {
  border-top: 1px dashed #000;
  padding: 20px 0;
}
.p-cpPageEnq__box:last-child {
  padding: 20px 0 0;
}
.p-cpPageEnq--ans2 .p-cpPageEnq__box + .p-cpPageEnq__box {
  border-top: none;
  padding: 10px 0;
}
.p-cpPageEnq__innerBox {
  background: #F7F7F7;
  padding: 1em;
  margin-top: 1em;
}
.p-cpPageEnq__item {
  position: absolute;
  display: block;
  right: 0;
  top: 0;
  margin-top: -50px;
  margin-right: 20px;
}
@media print, screen and (max-width: 750px) {
  .p-cpPageEnq__item {
    display: none;
  }
}
.p-cpPageEnq__Q {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 18px;
  font-size: 1.38462rem;
}
.p-cpPageEnq__Q-num {
  width: 3em;
  -webkit-box-flex: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  font-weight: bold;
  font-size: 18px;
  font-size: 1.38462rem;
}
@media print, screen and (max-width: 750px) {
  .p-cpPageEnq__Q-num {
    min-width: 2.7em;
    font-size: 14px;
    font-size: 3.73333vw;
  }
}
.p-cpPageEnq__Q-icon {
  width: 1.5em;
  -webkit-box-flex: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  font-weight: bold;
  font-size: 18px;
  font-size: 1.38462rem;
}
@media print, screen and (max-width: 750px) {
  .p-cpPageEnq__Q-icon {
    min-width: 1.5em;
    font-size: 14px;
    font-size: 3.73333vw;
  }
}
.p-cpPageEnq__Q-text {
  font-weight: bold;
  font-size: 18px;
  font-size: 1.38462rem;
}
@media print, screen and (max-width: 750px) {
  .p-cpPageEnq__Q-text {
    font-size: 14px;
    font-size: 3.73333vw;
  }
}
.p-cpPageEnq__A {
  padding: 1em;
}
.p-cpPageEnq__A-item {
  padding-top: .3em;
  font-size: 18px;
  font-size: 1.38462rem;
}
@media print, screen and (max-width: 750px) {
  .p-cpPageEnq__A-item {
    font-size: 16px;
    font-size: 4.26667vw;
  }
}
.p-cpPageEnq__A--inline .p-cpPageEnq__A-item {
  display: inline-block;
}
.p-cpPageEnq__A-item--ans {
  padding-left: 2.7em;
}
@media print, screen and (max-width: 750px) {
  .p-cpPageEnq__A-item--ans {
    padding-left: 2em;
  }
}
.p-cpPageEnq__A-item--ans2 {
  padding-left: .8em;
}
@media print, screen and (max-width: 750px) {
  .p-cpPageEnq__A-item--ans2 {
    padding-left: .7em;
  }
}

.cpPageGuide-img {
  padding-top: 20px;
}
.cpPageGuide-img img {
  max-width: 100%;
}

.cpPageGuide-listA {
  padding-left: 1em;
  margin-top: 1em;
}
@media print, screen and (max-width: 750px) {
  .cpPageGuide-listA {
    padding-left: 1em;
  }
}
.cpPageGuide-listA a {
  text-decoration: underline;
  vertical-align: bottom;
  font-weight: bold;
}
.cpPageGuide-listA > li {
  font-size: 16px;
  font-size: 1.23077rem;
  text-indent: -1em;
  padding-top: .1em;
  padding-bottom: .2em;
}
@media print, screen and (max-width: 750px) {
  .cpPageGuide-listA > li {
    font-size: 12px;
    font-size: 3.2vw;
  }
}

.cpPageGuide-listB {
  padding-left: 1em;
}
.cpPageGuide-listB a {
  text-decoration: underline;
  vertical-align: bottom;
  font-weight: bold;
}
@media print, screen and (max-width: 750px) {
  .cpPageGuide-listB {
    padding-left: 1em;
  }
}
.cpPageGuide-listB > li {
  font-size: 16px;
  font-size: 1.23077rem;
  text-indent: -1em;
  padding-top: 1em;
  padding-bottom: .2em;
  line-height: 2;
}
@media print, screen and (max-width: 750px) {
  .cpPageGuide-listB > li {
    font-size: 12px;
    font-size: 3.2vw;
  }
}

.cpPageGuide-titleA {
  font-size: 18px;
  font-size: 1.38462rem;
  font-weight: normal;
}
@media print, screen and (max-width: 750px) {
  .cpPageGuide-titleA {
    font-size: 16px;
    font-size: 4.26667vw;
  }
}

.cpPageGuide-titleB {
  font-size: 18px;
  font-size: 1.38462rem;
  padding-top: 25px;
  font-weight: normal;
}
@media print, screen and (max-width: 750px) {
  .cpPageGuide-titleB {
    font-size: 16px;
    font-size: 4.26667vw;
  }
}

.cpPageGuide-titleC {
  font-size: 26px;
  font-size: 2rem;
  margin-top: 25px;
  padding: .2em;
  font-weight: bold;
  text-align: center;
  background: #00A2EA;
  color: #fff;
}
@media print, screen and (max-width: 750px) {
  .cpPageGuide-titleC {
    font-size: 14px;
    font-size: 3.73333vw;
    padding: .4em;
  }
}

.cpPageGuide-titleD {
  font-size: 24px;
  font-size: 1.84615rem;
  margin-top: 45px;
  padding: .2em;
  font-weight: bold;
  text-align: center;
  border: 1px solid #00A2EA;
  color: #00A2EA;
}
@media print, screen and (max-width: 750px) {
  .cpPageGuide-titleD {
    padding: .4em;
    font-size: 14px;
    font-size: 3.73333vw;
  }
}

.cpPageGuide-titleE {
  background: #AAAAAA;
  color: #fff;
  text-align: center;
  padding: .2em 10px;
  font-weight: normal;
  font-size: 26px;
  font-size: 2rem;
  margin-top: 46px;
}
@media print, screen and (max-width: 750px) {
  .cpPageGuide-titleE {
    font-size: 14px;
    font-size: 3.73333vw;
    padding: .4em;
  }
}

.cpPageGuide-titleF {
  color: #00459D;
  text-align: center;
  padding: .2em 10px;
  font-weight: bold;
  font-size: 26px;
  font-size: 2rem;
  margin: 2em 1em 1em;
  border-bottom: 1px solid #00459D;
}
@media print, screen and (max-width: 750px) {
  .cpPageGuide-titleF {
    font-size: 14px;
    font-size: 3.73333vw;
    padding: .4em;
  }
}

.cpPageGuide-textBlock {
  padding-left: 1.4em;
}
@media print, screen and (max-width: 750px) {
  .cpPageGuide-textBlock {
    padding-left: 0;
  }
}

.cpPageGuide-text {
  padding-top: 1em;
  line-height: 1.8;
  font-size: 16px;
  font-size: 1.23077rem;
}
@media print, screen and (max-width: 750px) {
  .cpPageGuide-text {
    font-size: 14px;
    font-size: 3.73333vw;
  }
}
.cpPageGuide-text a {
  text-decoration: underline;
  vertical-align: bottom;
  font-weight: bold;
}

.cpPageGuide-textRed {
  color: #E50112;
  padding-top: .5em;
  font-size: 14px;
  font-size: 1.07692rem;
}
@media print, screen and (max-width: 750px) {
  .cpPageGuide-textRed {
    font-size: 13px;
    font-size: 3.46667vw;
  }
}

.cpPageGuide-textBlue {
  color: #00A2EA;
  padding-top: 1.5em;
  font-size: 18px;
  font-size: 1.38462rem;
}

.cpPageGuide-textSmall {
  padding-top: 1em;
  font-size: 14px;
  font-size: 1.07692rem;
}
@media print, screen and (max-width: 750px) {
  .cpPageGuide-textSmall {
    font-size: 13px;
    font-size: 3.46667vw;
  }
}

.cpPageGuide-textBig {
  color: #E50112;
  padding-top: .2em;
  font-size: 34px;
  font-size: 2.61538rem;
  font-weight: bold;
}
@media print, screen and (max-width: 750px) {
  .cpPageGuide-textBig {
    font-size: 20px;
    font-size: 5.33333vw;
  }
}

.cpPageGuide-textBig2 {
  color: #00A2EA;
  padding-top: 1.2em;
  font-size: 22px;
  font-size: 1.69231rem;
  font-weight: bold;
}
@media print, screen and (max-width: 750px) {
  .cpPageGuide-textBig2 {
    font-size: 20px;
    font-size: 5.33333vw;
  }
}

.cpPageGuide-uLine {
  text-decoration: underline;
  font-size: inherit;
}

.cpPageGuide-innerBox {
  background: #F7F7F7;
  padding: 1em 2em 2em;
  margin: 2em 0;
}
@media print, screen and (max-width: 750px) {
  .cpPageGuide-innerBox {
    padding: 0.5em 1em 1em;
  }
}

.cpPageGuide-imgBox1 {
  text-align: center;
  padding-top: 1em;
}
.cpPageGuide-imgBox1 img {
  max-width: 100%;
}
@media print, screen and (max-width: 750px) {
  .cpPageGuide-imgBox1 {
    width: 66.66667%;
    margin: auto;
  }
}

.cpPageGuide-imgBox2 {
  text-align: center;
  padding-top: 1em;
}
.cpPageGuide-imgBox2 img {
  max-width: 100%;
}

/* キャンペーン共通 */

.p-cpKeyvisual {
  max-width: 1400px;
  margin: 0 auto;
}
.p-cpKeyvisual img {
  max-width: 100%;
}

.p-cpPrize__header {
  text-align: center;
  margin: 3em 1em;
  background: #fff;
}
@media print, screen and (max-width: 750px) {
  .p-cpPrize__header {
    margin: 1em 1em;
  }
}

.p-cpPrize__header-title {
  padding: 20px 0;
  font-weight: bold;
  text-align: center;
  font-size: 50px;
  font-size: 3.84615rem;
}
@media print, screen and (max-width: 750px) {
  .p-cpPrize__header-title {
    font-size: 25px;
    font-size: 6.66667vw;
    padding: 20px 0 0;
  }
}

.p-cpPrize__header-text {
  text-align: center;
  font-size: 18px;
  font-size: 1.38462rem;
  margin-top: 1em;
}
.p-cpPrize__header-text p {
  margin-bottom: 1em;
  font-size: inherit;
}
@media print, screen and (max-width: 750px) {
  .p-cpPrize__header-text {
    font-size: 12px;
    font-size: 3.2vw;
  }
}

.p-cpPrize__agree {
  text-align: center;
  padding: 40px 0 50px;
}
.p-cpPrize__agree p {
  margin-bottom: 25px;
  font-size: 22px;
  font-weight: bold;
}
.p-cpPrize__agree .c-checkbox__text {
  padding: 6px 10px 6px 35px;
  font-size: 22px;
}
@media print, screen and (max-width: 750px) {
  .p-cpPrize__agree {
    padding: 20px 10px;
  }
  .p-cpPrize__agree p {
    margin-bottom: 20px;
    font-size: 3.4vw;
  }
  .p-cpPrize__agree .c-checkbox__text {
    padding: 9px 10px 9px 35px;
    font-size: 18px;
  }
}
.p-cpPrize__check {
  position: relative;
  display: inline-block;
  cursor: pointer;
}
.p-cpPrize__check input {
  display: none;
}
.p-cpPrize__check input:checked + span::after {
  content: '';
  position: absolute;
  top: 28px;
  left: 108px;
  width: 12px;
  height: 20px;
  border-right: 6px solid #3C3C3C;
  border-bottom: 6px solid #3C3C3C;
  transform: rotate(45deg);
}
@media print, screen and (max-width: 750px) {
  .p-cpPrize__check {
    width: 70%;
  }
  .p-cpPrize__check input:checked + span::after {
    top: 30%;
    left: 19%;
    width: 2%;
    height: 20%;
    border-width: 0.8vw;
  }
}

.p-cpPrize__btnWrap {
  padding: 1em 0 1em;
  width: 100%;
}
@media print, screen and (max-width: 750px) {
  .p-cpPrize__btnWrap {
    width: 60.53333vw;
    margin: auto;
  }
}

.p-cpPrize__btnWrap2 {
  max-width: 800px;
  margin: 40px auto 0;
}
@media print, screen and (max-width: 750px) {
  .p-cpPrize__btnWrap2 {
    max-width: 90%;
    margin: 20px auto 0;
  }
}

.p-campaignBg {
  background: linear-gradient(to bottom, rgba(0,95,200,0.6) 0%,rgba(0,95,200,0) 30%,rgba(0,95,200,0) 70%,rgba(0,95,200,0.6) 100%), url(/assets/img/campaign/202007/bg.png);
  padding-top: 1px;
}
.p-campaignBg.s_20201201 {
  background: linear-gradient(to bottom, rgba(4,55,115,0.6) 0%,rgba(4,55,115,0) 30%,rgba(4,55,115,0) 70%,rgba(4,55,115,0.6) 100%), url(/assets/img/campaign/20201201/bg.png);
}
@media print, screen and (max-width: 750px) {
  .p-campaignBg {
    padding-top: 1em;
  }
}

@media screen and (min-width: 751px) {
  .p-cpPrize__selectBlock {
    width: 100%;
    max-width: 400px;
    margin: 15px auto 0;
  }
}

.m_cpExplain {
  margin: 90px auto 70px;
  max-width: 1050px;
  background-color: #fff;
  padding: 30px 30px 45px;
}
.m_cpExplain h2 {
  margin-bottom: 50px;
}
.m_cpExplain .p_inner {
  padding: 0 36px;
}
.m_cpExplain .p_img {
  margin-bottom: 35px;
}
.m_cpExplain .p_boxText {
  position: relative;
  display: block;
  background-color: #5395ec;
  padding: 15px;
  text-align: center;
  color: #fff;
  font-size: 28px;
  font-weight: bold;
}
.m_cpExplain .p_boxText::after {
  content: '';
  position: absolute;
  top: -1px;
  right: -1px;
  border-top: 23px solid #fff;
  border-left: 20px solid transparent;
}
.m_cpExplain .p_lead {
  margin: 35px 0;
  text-align: center;
}
.m_cpExplain .p_lead > span {
  position: relative;
  display: inline-block;
  padding-right: 30px;
  color: #231815;
  font-size: 28px;
  font-weight: bold;
}
.m_cpExplain .p_lead > span::after {
  content: '';
  position: absolute;
  top: 12px;
  right: 0;
  border-top: 18px solid #231815;
  border-left: 14px solid transparent;
  border-right: 14px solid transparent;
}
.m_cpExplain .p_anchor {
  display: flex;
  justify-content: space-between;
}
.m_cpExplain .p_anchor li {
  width: 47%;
}
.m_cpExplain .p_anchor .p_boxText {
  background-color: #066cdc;
}
@media print, screen and (max-width: 750px) {
  .m_cpExplain {
    margin: 14px 12px 30px;
    padding: 8px 8px 20px;
  }
  .m_cpExplain h2 {
    margin-bottom: 15px;
  }
  .m_cpExplain .p_inner {
    padding: 0 8px;
  }
  .m_cpExplain .p_img {
    margin-bottom: 20px;
  }
  .m_cpExplain .p_boxText {
    padding: 10px 5px;
    font-size: 13px;
  }
  .m_cpExplain .p_boxText::after {
    border-top-width: 12px;
    border-left-width: 10px;
  }
  .m_cpExplain .p_lead {
    margin: 12px 0;
  }
  .m_cpExplain .p_lead > span {
    padding-right: 15px;
    font-size: 14px;
  }
  .m_cpExplain .p_lead > span::after {
    top: 6px;
    border-top-width: 9px;
    border-left-width: 7px;
    border-right-width: 7px;
  }
}

.m_cpMiddleTitle {
  margin: 0 0 70px;
  background-color: #fff;
  padding: 55px 0;
  text-align: center;
  font-size: 50px;
  font-weight: bold;
}
@media print, screen and (max-width: 750px) {
  .m_cpMiddleTitle {
    margin: 0 0 35px;
    padding: 25px 0;
    font-size: 23px;
  }
}

.p-cpPrizeBox {
  width: 100%;
  margin: auto;
  display: block;
  background-color: #fff;
  padding: 10px;
  margin: 10px auto 20px;
  position: relative;
  z-index: 0;
}
@media print, screen and (max-width: 750px) {
  .p-cpPrizeBox {
    margin: 10px auto 20px;
    padding: 5px;
  }
}
.p-cpPrizeBox--60 {
  margin-top: 10px;
}
.p-cpPrizeBox--40 {
  margin-top: 60px;
}
.p-cpPrizeBox--20 {
  margin-top: 60px;
}
.p-cpPrizeBox__title {
  display: block;
  margin: 0 0 0;
  text-align: center;
  padding: 10px;
}
.p-cpPrizeBox__title--60 {
  background: #009800;
}
.p-cpPrizeBox__title--40 {
  background: #ff6400;
}
.p-cpPrizeBox__title--20 {
  background: #0040b7;
}
.p-cpPrizeBox__title img {
  margin: auto;
}
@media print, screen and (max-width: 750px) {
  .p-cpPrizeBox__title img {
    width: 36vw;
    display: block;
  }
}
.p-cpPrizeBox__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 0 10px;
}
.p-cpPrizeBox__body--wide {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
@media print, screen and (max-width: 750px) {
  .p-cpPrizeBox__body {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
.p-cpPrizeBox__box {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding: 30px 0 50px;
}
@media print, screen and (max-width: 750px) {
  .p-cpPrizeBox__box {
    padding: 30px 0 40px;
    width: 100%;
  }
}
@media screen and (min-width: 751px) {
  .p-cpPrizeBox__box + .p-cpPrizeBox__box {
    border-top: 1px dashed #001976;
  }
}
@media print, screen and (max-width: 750px) {
  .p-cpPrizeBox__box + .p-cpPrizeBox__box {
    border-top: 1px dashed #001976;
    padding-top: 30px;
  }
}
.p-cpPrizeBox__item {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  overflow: hidden;
  text-align: center;
}
@media print, screen and (max-width: 750px) {
  .p-cpPrizeBox__item {
    padding: 0;
  }
}
.p-cpPrizeBox__item img {
  max-width: 100%;
  margin: auto;
}
@media print, screen and (max-width: 750px) {
  .p-cpPrizeBox__item img {
    width: 100%;
  }
}
.p-cpPrizeBox__caption {
  margin-top: 5px;
  text-align: right;
  color: #fff;
}
@media print, screen and (max-width: 750px) {
  .p-cpPrizeBox__caption {
    text-align: left;
    font-size: 10px;
  }
}

.p-cpPrizeBoxBnr {
  width: 100%;
  display: block;
  padding: 0 0;
  margin: 40px auto 0;
  position: relative;
  z-index: 0;
  text-align: center;
}
.p-cpPrizeBoxBnr.s_20201201 {
  margin: 0;
  text-align: left;
}

.p-cpPrizeBox2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-bottom: 2em;
}
.p-cpPrizeBox2__item {
  width: 49%;
  width: calc( 50% - 15px);
}
.p-cpPrizeBox2__item img {
  max-width: 100%;
}
.p-cpPrizeBox2__course {
  padding: 3px;
  text-align: center;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
}
.p-cpPrizeBox2__course--60 {
  background: #009800;
}
.p-cpPrizeBox2__course--40 {
  background: #ff6400;
}
.p-cpPrizeBox2__course--20 {
  background: #0040b7;
}
.p-cpPrizeBox2__course strong {
  margin-right: 3px;
  font-size: 30px;
  vertical-align: -1px;
}
@media print, screen and (max-width: 750px) {
  .p-cpPrizeBox2__course {
    font-size: 14px;
  }
  .p-cpPrizeBox2__course strong {
    font-size: 20px;
  }
}
.p-cpPrizeBox2__maker {
  padding-top: 1.5em;
  font-size: 16px;
  font-size: 1.23077rem;
}
@media print, screen and (max-width: 750px) {
  .p-cpPrizeBox2__maker {
    font-size: 12px;
    font-size: 3.2vw;
  }
}
.p-cpPrizeBox2__name {
  font-size: 20px;
  font-size: 1.53846rem;
  font-weight: bold;
}
@media print, screen and (max-width: 750px) {
  .p-cpPrizeBox2__name {
    font-size: 14px;
    font-size: 3.73333vw;
  }
}
.p-cpPrizeBox2__model {
  font-size: 16px;
  font-size: 1.23077rem;
}
@media print, screen and (max-width: 750px) {
  .p-cpPrizeBox2__model {
    font-size: 12px;
    font-size: 3.2vw;
  }
}

.p-cpPrizeBox3 {
  background-color: #fff;
}
.p-cpPrizeBox3 + .p-cpPrizeBox3 {
  margin-top: 60px;
}
.p-cpPrizeBox3__btn {
  margin: 0 auto;
  max-width: 800px;
  padding: 20px 0 40px;
  text-align: center;
}
.p-cpPrizeBox3__btn .disabled {
  display: block;
  background-color: #333;
  border-radius: 80px;
  opacity: 1;
  cursor: default;
}
.p-cpPrizeBox3__btn .disabled img {
  opacity: 0.5;
}
.p-cpPrizeBox3__btn .nopoint {
  position: relative;
  margin-bottom: 28px;
}
.p-cpPrizeBox3__btn .nopoint::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 455px;
  height: 148px;
  background: url(../img/campaign/btn_nopoint.png) no-repeat 50% 50%;
  background-size: contain;
}
@media print, screen and (max-width: 750px) {
  .p-cpPrizeBox3 + .p-cpPrizeBox3 {
    margin-top: 40px;
  }
  .p-cpPrizeBox3__btn {
    padding: 10px 0 20px;
    max-width: 82%;
  }
  .p-cpPrizeBox3__btn .nopoint {
    margin-bottom: 0;
  }
  .p-cpPrizeBox3__btn .nopoint::after {
    top: 5%;
    width: 86%;
    height: 98%;
  }
}

.p-courseTitle {
  margin-bottom: 20px;
  border-bottom: 10px solid;
  text-align: center;
  font-size: 33px;
  font-weight: bold;
  line-height: 1.4;
  text-shadow:
    3px  3px 3px #fff,
   -3px  3px 3px #fff,
    3px -3px 3px #fff,
   -3px -3px 3px #fff,
    3px  0px 3px #fff,
    0px  3px 3px #fff,
   -3px  0px 3px #fff,
    0px -3px 3px #fff; 
}
.p-courseTitle strong {
  font-size: 44px;
}
.p-courseTitle--60 {
  background-color: #d3ac41;
  border-bottom-color: #40210f;
  color: #40210f;
}
.p-courseTitle--40 {
  background-color: #057e41;
  border-bottom-color: #00320c;
  color: #00320c;
}
.p-courseTitle--20 {
  background-color: #0049a5;
  border-bottom-color: #00255a;
  color: #00255a;
}
@media print, screen and (max-width: 750px) {
  .p-courseTitle {
    margin-bottom: 10px;
    border-bottom-width: 6px;
    font-size: 24px;
    line-height: 1.3;
    padding-bottom: 3px;
    text-shadow:
      2px  2px 2px #fff,
     -2px  2px 2px #fff,
      2px -2px 2px #fff,
     -2px -2px 2px #fff,
      2px  0px 2px #fff,
      0px  2px 2px #fff,
     -2px  0px 2px #fff,
      0px -2px 2px #fff; 
  }
  .p-courseTitle strong {
    font-size: 32px;
  }
}

.p-cpToggleBox {
  width: 100%;
  max-width: 1050px;
  margin: auto;
  background: #fff;
  padding: 0;
  margin-top: 60px;
}
.p-cpToggleBox__toggleTitleWrap {
  padding: 0;
}
.p-cpToggleBox__toggleBtn {
  color: #fff;
  text-align: center;
  padding: 16px;
  color: #00459D;
  font-weight: bold;
  font-size: 30px;
  font-size: 2.30769rem;
  line-height: 1.2;
  cursor: pointer;
  position: relative;
}
.p-cpToggleBox__toggleBtn::before,
.p-cpToggleBox__toggleBtn::after {
  content: "";
  display: inline-block;
  width: 1em;
  height: 2px;
  background-color: #004098;
  position: absolute;
  top: 50%;
  right: 0;
  margin-right: 1em;
  transition: all 300ms 0s ease;
}
.p-cpToggleBox__toggleBtn::before {
  transform: translate(0, -50%);
}
.js-toggleWrap.is-open .p-cpToggleBox__toggleBtn::before {
  transform: translate(0, -50%) rotate(180deg);
}
.p-cpToggleBox__toggleBtn::after {
  transform: translate(0, -50%) rotate(-90deg);
}
.js-toggleWrap.is-open .p-cpToggleBox__toggleBtn::after {
  transform: translate(0, -50%);
}
.p-cpToggleBox__toggleBox {
  display: none;
  padding: 35px 40px 60px;
  border-top: 1px solid #004098;
  border-radius: 0;
}
@media print, screen and (max-width: 750px) {
  .p-cpToggleBox {
    padding: 0;
    margin-top: 5.33333vw;
  }
  .p-cpToggleBox__toggleBtn {
    font-size: 18px;
    font-size: 4.8vw;
    padding: .6em;
  }
  .p-cpToggleBox__toggleBox {
    padding: 25px 4.34783% 60px;
    margin: auto;
  }
}

.p-reportTitle {
  margin: 60px 0;
  text-align: center;
}
.p-reportTitle h1 {
  margin-bottom: 20px;
}
@media print, screen and (max-width: 750px) {
  .p-reportTitle {
    margin: 20px 0 25px;
  }
  .p-reportTitle h1 {
    margin-bottom: 10px;
  }
  .p-reportTitle h1 img {
    width: 250px;
  }
}

.p-reportBox {
  background-color: #fff;
  padding: 40px 55px 90px;
}
.p-reportBox .colArea {
  display: flex;
  justify-content: space-between;
  margin-bottom: 30px;
}
.p-reportBox .column {
  width: 32.2%;
}
.p-reportBox .column p {
  margin-top: 10px;
  font-size: 14px;
}
.p-reportBox .note {
  margin-top: 30px;
  text-align: center;
  font-size: 14px;
}
.p-reportBox .closeBtn {
  position: relative;
  display: block;
  max-width: 500px;
  margin: 50px auto 0;
  background-color: #3e3e3e;
  padding: 14px;
  text-align: center;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
}
.p-reportBox .closeBtn::before,
.p-reportBox .closeBtn::after {
  content: '';
  position: absolute;
  top: 16px;
  right: 25px;
  height: 20px;
  width: 1px;
  background-color: #fff;
  transform: rotate(45deg);
}
.p-reportBox .closeBtn::after {
  transform: rotate(-45deg);
}
@media print, screen and (max-width: 750px) {
  .p-reportBox {
    max-width: 600px;
    margin: 0 auto;
    padding: 25px 25px 30px;
  }
  .p-reportBox .colArea {
    display: block;
    margin-bottom: 0;
  }
  .p-reportBox .column {
    width: auto;
    margin-bottom: 20px;
  }
  .p-reportBox .column p {
    font-size: 12px;
  }
  .p-reportBox .note {
    margin-top: 20px;
    text-align: left;
    font-size: 10px;
  }
  .p-reportBox .closeBtn {
    max-width: 200px;
    margin: 30px auto 0;
  }
}

.p-cpBox {
  margin: 60px 10px 0;
  background: #fff;
  padding: 0;
}
.p-cpBox__title {
  color: #fff;
  text-align: center;
  padding: 16px;
  background-color: #066cdc;
  color: #fff;
  font-weight: bold;
  font-size: 30px;
  font-size: 2.30769rem;
  line-height: 1.2;
  position: relative;
}
.p-cpBox__title.s_toggle {
  cursor: pointer;
}
.p-cpBox__title.s_toggle::before,
.p-cpBox__title.s_toggle::after {
  content: "";
  display: inline-block;
  width: 1em;
  height: 2px;
  background-color: #fff;
  position: absolute;
  top: 50%;
  right: 0;
  margin-right: 1em;
  transition: all 300ms 0s ease;
}
.p-cpBox__title.s_toggle::before {
  transform: translate(0, -50%);
}
.js-toggleWrap.is-open .p-cpBox__title.s_toggle::before {
  transform: translate(0, -50%) rotate(180deg);
}
.p-cpBox__title.s_toggle::after {
  transform: translate(0, -50%) rotate(-90deg);
}
.js-toggleWrap.is-open .p-cpBox__title.s_toggle::after {
  transform: translate(0, -50%);
}
.p-cpBox__content {
  padding: 35px 40px 60px;
  border: 1px solid #066cdc;
  border-top: none;
  border-radius: 0;
}
.p-cpBox__content.has_margin {
  margin-top: 40px;
  border-top: 1px solid #066cdc;
}
.p-cpBox__content.noline {
  border: none;
}
.p-cpBox__title.s_toggle + .p-cpBox__content {
  display: none;
}
.p-cpBox__img {
  margin-top: 40px;
}
.p-cpBox__step {
  position: relative;
  display: flex;
  justify-content: space-around;
}
.p-cpBox__step::after {
  content: '';
  position: absolute;
  top: 0;
  left: 6px;
  right: 0;
  bottom: 0;
  width: 0;
  height: 0;
  margin: auto;
  border-left: 29px solid #025aa5;
  border-top: 22px solid transparent;
  border-bottom: 22px solid transparent;
}
.p-cpBox__step li {
  position: relative;
}
.p-cpBox__step .link01 {
  position: absolute;
  top: 65%;
  left: 8%;
  width: 40%;
  height: 19%;
}
.p-cpBox__step .link02 {
  position: absolute;
  top: 65%;
  left: 52%;
  width: 40%;
  height: 19%;
}
.p-cpBox__step .link03 {
  position: absolute;
  top: 65%;
  left: 13%;
  width: 75%;
  height: 19%;
}
.p-cpBox__note {
  margin-top: 90px;
  border: 2px solid #066cdc;
  padding: 15px;
  text-align: center;
}
.p-cpBox__note p {
  font-size: 18px;
  font-weight: bold;
}
.p-cpBox__note a {
  color: #066cdc;
  text-decoration: underline;
}
.p-cpBox__note a:hover {
  text-decoration: none;
}
@media print, screen and (max-width: 750px) {
  .p-cpBox {
    padding: 0;
    margin: 5.33333vw 0 0;
  }
  .p-cpBox__title {
    font-size: 18px;
    font-size: 4.8vw;
    padding: .6em;
  }
  .p-cpBox__content {
    padding: 25px 15px 30px;
    margin: auto;
  }
  .p-cpBox__img {
    margin-top: 30px;
  }
  .p-cpBox__step {
    display: block;
    text-align: center;
  }
  .p-cpBox__step::after {
    top: 6px;
    left: 0;
    border-top: 25px solid #025aa5;
    border-left: 18px solid transparent;
    border-right: 18px solid transparent;
    border-bottom: none;
  }
  .p-cpBox__step li + li {
    margin-top: 50px;
  }
  .p-cpBox__note {
    margin-top: 40px;
    padding: 10px;
    text-align: left;
  }
  .p-cpBox__note p {
    font-size: 3.3vw;
  }
}

.p-table {
  width: 100%;
  margin: 10px 0;
  border-right: 1px solid #999;
  border-bottom: 1px solid #999;
}
.p-table th,
.p-table td {
  border-top: 1px solid #999;
  border-left: 1px solid #999;
  padding: 10px;
  vertical-align: middle;
  text-align: left;
  color: #000;
  font-weight: normal;
}

.p-movieArea {
  max-width: 800px;
  margin: 60px auto 50px;
}
.p-movieArea__inner {
  position: relative;
  padding-top: 56.25%;
}
.p-movieArea__inner iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
}
@media print, screen and (max-width: 750px) {
  .p-movieArea {
    margin: 40px auto 30px;
  }
}

/*個別キャンペーン*/
.p-cpAlcoveilKv {
  text-align: center;
}
.p-cpAlcoveilKv__top {
  position: relative;
  padding-top: 13px;
  padding-bottom: 13px;
}
@media print, screen and (max-width: 750px) {
  .p-cpAlcoveilKv__top {
    padding-bottom: 0;
  }
}
.p-cpAlcoveilKv__top img {
  position: relative;
  z-index: 1;
}
.p-cpAlcoveilKv__top::before {
  content: "";
  display: inline-block;
  width: 100%;
  height: 165px;
  background: #007D41;
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  z-index: 0;
}
@media print, screen and (max-width: 750px) {
  .p-cpAlcoveilKv__top::before {
    display: none;
  }
}
.p-cpAlcoveilKv__btm {
  background: #fff;
  padding: 13px;
}
@media print, screen and (max-width: 750px) {
  .p-cpAlcoveilKv__btm {
    display: none;
  }
}

/* 新キャンペーン */

.p-iw {
  background-color: #24a3e7;
  padding: 75px 20px 80px;
  color: #fff;
  font-weight: bold;
}
.p-iw .p-cpPage__box {
  color: #000;
}
.p-iw__inner {
  max-width: 1000px;
  margin: 0 auto;
}
@media print, screen and (max-width: 750px) {
  .p-iw {
    padding: 50px 20px;
  }
}

.p-iw__link {
  margin-top: 20px;
  display: inline-block;
  border-bottom: 2px solid #fff;
  padding-bottom: 2px;
  color: #fff;
  font-size: 18px;
}
.p-iw__link:hover {
  border-bottom-color: transparent;
}

.p-iw__anchor {
  margin: 75px 0;
  display: flex;
  justify-content: space-between;
}
.p-iw__anchor li {
  width: 32%;
}
.p-iw__anchor a {
  position: relative;
  display: block;
  border-top: 2px solid #fff;
  border-bottom: 2px solid #fff;
  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.15) 25%, rgba(255,255,255,0.15) 75%, rgba(255,255,255,0) 100%);
  padding: 10px;
  text-align: center;
  color: #fff;
  font-size: 18px;
  letter-spacing: 0.1em;
}
.p-iw__anchor a::after {
  content: '';
  position: absolute;
  top: 13px;
  right: 22px;
  width: 6px;
  height: 6px;
  border-top: 3px solid transparent;
  border-left: 3px solid transparent;
  border-right: 3px solid #e21c22;
  border-bottom: 3px solid #e21c22;
  transform: rotate(45deg);
}
@media print, screen and (max-width: 750px) {
  .p-iw__anchor {
    margin: 35px 0 40px;
    display: block;
  }
  .p-iw__anchor li {
    margin-bottom: 20px;
    width: auto;
  }
  .p-iw__anchor a {
    padding: 12px;
    font-size: 14px;
  }
}

.p-iw__title {
  margin: 75px 0 20px;
  text-align: center;
  font-size: 60px;
  font-family: "M PLUS 1p";
}
@media print, screen and (max-width: 750px) {
  .p-iw__title {
    margin: 50px 0 10px;
    font-size: 30px;
  }
}

.p-iw__box {
  position: relative;
  margin: 20px 0;
  background-color: #fff;
  border-radius: 10px;
  padding: 40px;
  overflow: hidden;
  text-align: center;
  color: #0077b7;
}
.p-iw__box:first-child {
  margin-top: 0;
}
.p-iw__box:last-child {
  margin-bottom: 0;
}
.p-iw__box.disabled::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0,0,0,0.3);
}
.p-iw__box h3 {
  margin-bottom: 35px;
  text-align: center;
}
.p-iw__box p {
  font-size: 18px;
}
.p-iw__box p + p {
  margin-top: 30px;
}
.p-iw__box p.normal {
  color: #000;
  font-size: 16px;
  font-weight: normal;
}
.p-iw__box .note {
  max-width: 700px;
  margin: 20px auto;
  color: #000;
  text-align: left;
  font-size: 14px;
  font-weight: normal;
}
.p-iw__box .note li {
  padding-left: 1em;
  text-indent: -1em;
}
.p-iw__box .logo {
  width: 360px;
  margin: 0 15px 10px;
  vertical-align: -18px;
}
.p-iw__box .link {
  color: inherit;
  text-decoration: underline;
}
.p-iw__box .btnList {
  margin-top: 30px;
}
.p-iw__box .btnList li {
  display: inline-block;
  margin: 0 8px;
}
.p-iw__box .btn {
  margin: 60px 0 30px;
}
@media print, screen and (max-width: 750px) {
  .p-iw__box {
    border-radius: 5px;
    padding: 35px 10px;
  }
  .p-iw__box h3 {
    margin-bottom: 20px;
  }
  .p-iw__box h3 img {
    width: 82px;
  }
  .p-iw__box p {
    font-size: 13px;
  }
  .p-iw__box p + p {
    margin-top: 25px;
  }
  .p-iw__box .logo {
    width: 58vw;
    margin: 0 5px 5px;
    vertical-align: -10px;
  }
  .p-iw__box .btnList {
    max-width: 250px;
    margin: 25px auto 0;
  }
  .p-iw__box .btnList li {
    display: block;
    margin: 10px 0 0;
  }
  .p-iw__box .btn {
    margin: 40px 0 0;
  }
}

.p-iw__item {
  margin-bottom: 50px;
}
.p-iw__itemBtn {
  margin-top: 30px;
  text-align: center;
}

.p-iw__errorText {
  margin: 10px 0;
  font-size: 18px;
  color: #e60012;
}

.p-iw__toggleArea {
  position: relative;
  margin-top: 80px;
  border-top: 2px solid #fff;
  border-bottom: 2px solid #fff;
  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.15) 25%, rgba(255,255,255,0.15) 75%, rgba(255,255,255,0) 100%);
  color: #fff;
}
.p-iw__toggleArea + .p-iw__toggleArea {
  margin-top: 20px;
}
.p-iw__toggleArea h2 {
  padding: 40px 0;
  text-align: center;
  font-family: "M PLUS 1p";
  font-size: 40px;
  letter-spacing: 0.1em;
}
.p-iw__toggleArea h2::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 20px;
  width: 6px;
  height: 6px;
  margin: 0 auto;
  border-top: 3px solid transparent;
  border-left: 3px solid transparent;
  border-right: 3px solid #e21c22;
  border-bottom: 3px solid #e21c22;
  transform: rotate(45deg);
}
.p-iw__toggleArea.is-open h2::after {
  z-index: 10;
  transform: rotate(0);
  width: 60px;
  height: 60px;
  opacity: 0;
}
.p-iw__toggleContent {
  position: relative;
  max-width: 800px;
  margin: 0 auto;
}
.p-iw__toggleContent h3 {
  margin: 50px 0 25px;
  font-size: 24px;
  font-family: "M PLUS 1p";
}
.p-iw__toggleContent h3:first-child {
  margin-top: 0;
}
.p-iw__toggleContent h4 {
  margin: 40px 0 15px;
  font-size: 20px;
}
.p-iw__toggleContent h5 {
  margin: 20px 0 10px;
  font-size: 16px;
}
.p-iw__toggleContent p {
  font-size: 18px;
}
.p-iw__toggleContent ol li {
  margin-bottom: 5px;
}
.p-iw__toggleContent ol .label {
  float: left;
  width: 4.5em;
  font-size: 16px;
}
.p-iw__toggleContent ol .text {
  overflow: hidden;
  font-size: 16px;
}
.p-iw__toggleContent .note {
  text-align: left;
}
.p-iw__toggleContent .note li {
  position: relative;
  margin-bottom: 3px;
  padding-left: 1.2em;
  font-size: 16px;
}
.p-iw__toggleContent .note li::before {
  content: '・';
  position: absolute;
  top: 0;
  left: 0;
}
.p-iw__toggleContent .note.circle li::before {
  content: '●';
}
.p-iw__toggleContent dl {
  margin-top: 50px;
}
.p-iw__toggleContent dl + dl {
  margin-top: 0;
}
.p-iw__toggleContent dt,
.p-iw__toggleContent dd {
  font-size: 18px;
  display: inline-block;
}
.p-iw__tel {
  margin-bottom: 40px;
}
.p-iw__tel strong {
  font-size: 30px;
  font-family: "M PLUS 1p";
}
.p-iw__tel a {
  color: #fff;
}
.p-iw__toggleClose {
  position: relative;
  padding: 60px 0 35px;
  text-align: center;
  font-size: 18px;
  font-family: "M PLUS 1p";
}
.p-iw__toggleClose::before {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 65px;
  width: 6px;
  height: 6px;
  margin: 0 auto;
  border-top: 3px solid #e21c22;
  border-left: 3px solid #e21c22;
  border-right: 3px solid transparent;
  border-bottom: 3px solid transparent;
  transform: rotate(45deg);
}
@media print, screen and (max-width: 750px) {
  .p-iw__toggleArea {
    margin-top: 40px;
  }
  .p-iw__toggleArea h2 {
    padding: 20px 0;
    font-size: 20px;
  }
  .p-iw__toggleArea h2::after {
    bottom: 10px;
    width: 5px;
    height: 5px;
    border-width: 2px;
  }
  .p-iw__toggleArea.is-open h2::after {
    bottom: 0;
  }
  .p-iw__toggleContent {
    padding: 0 10px;
  }
  .p-iw__toggleContent h3 {
    margin: 30px 0 15px;
    font-size: 15px;
  }
  .p-iw__toggleContent p {
    font-size: 14px;
  }
  .p-iw__toggleContent dl {
    width: 240px;
    margin: 30px auto 0;
  }
  .p-iw__toggleContent dt,
  .p-iw__toggleContent dd {
    display: block;
    font-size: 14px;
  }
  .p-iw__toggleContent dt {
    float: left;
    text-align: left;
  }
  .p-iw__toggleContent dd {
    overflow: hidden;
    text-align: left;
  }
  .p-iw__tel {
    margin-bottom: 20px;
  }
  .p-iw__tel strong {
    font-size: 20px;
  }
  .p-iw__toggleClose {
    padding: 35px 0 15px;
    font-size: 14px;
  }
  .p-iw__toggleClose::before {
    bottom: 35px;
    width: 5px;
    height: 5px;
    border-width: 2px;
  }
}

.p-iw__faq {
  border-top: 2px solid #fff;
}
.p-iw__faq > li {
  border-bottom: 2px solid #fff;
}
.p-iw__question {
  position: relative;
  padding: 25px 80px 25px 100px;
  font-family: "M PLUS 1p";
  cursor: pointer;
}
.p-iw__question::after {
  content: '';
  position: absolute;
  top: 32px;
  right: 32px;
  width: 6px;
  height: 6px;
  border-top: 3px solid transparent;
  border-left: 3px solid transparent;
  border-right: 3px solid #e21c22;
  border-bottom: 3px solid #e21c22;
  transform: rotate(45deg);
}
.p-iw__faq > li.is-open .p-iw__question::after {
  top: 36px;
  transform: rotate(225deg);
}
.p-iw__question > span {
  position: absolute;
  top: 25px;
  left: 35px;
  color: #e21c22;
  font-size: 24px;
}
.p-iw__question > div {
  font-size: 24px;
}
.p-iw__answer {
  position: relative;
  padding: 0 80px 25px 100px;
  font-size: 18px;
}
.p-iw__answer::before {
  content: 'A';
  position: absolute;
  top: -5px;
  left: 45px;
  color: #e21c22;
  font-size: 24px;
}
@media print, screen and (max-width: 750px) {
  .p-iw__question {
    padding: 12px 30px 12px 45px;
  }
  .p-iw__question::after {
    top: 16px;
    right: 12px;
    width: 5px;
    height: 5px;
    border-width: 2px;
  }
  .p-iw__faq > li.is-open .p-iw__question::after {
    top: 18px;
  }
  .p-iw__question > span {
    top: 9px;
    left: 10px;
    font-size: 17px;
  }
  .p-iw__question > div {
    font-size: 15px;
  }
  .p-iw__answer {
    padding: 0 30px 12px 45px;
    font-size: 14px;
  }
  .p-iw__answer::before {
    top: -3px;
    left: 17px;
    font-size: 17px;
  }
}

.p-iw__footerBtn {
  margin-top: 120px;
}
@media print, screen and (max-width: 750px) {
  .p-iw__footerBtn {
    margin-top: 60px;
  }
}

.p-iw__finish {
  position: relative;
  background-color: #24a3e7;
}
.p-iw__finishBox {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  width: 90%;
  max-width: 1000px;
  margin: 0 auto;
  transform: translateY(-50%);
  background-color: #fff;
  border-radius: 10px;
  padding: 90px 20px;
  text-align: center;
  color: #24a3e7;
  font-weight: bold;
}
.p-iw__finishBox p {
  font-size: 18px;
}
.p-iw__finishBox .p-iw__finishTitle {
  margin-bottom: 30px;
  font-family: "M PLUS 1p";
  font-size: 40px;
}
@media print, screen and (max-width: 750px) {
  .p-iw__finishBox {
    border-radius: 5px;
    padding: 45px 10px;
  }
  .p-iw__finishBox p {
    font-size: 13px;
  }
  .p-iw__finishBox .p-iw__finishTitle {
    margin-bottom: 15px;
    font-size: 20px;
  }
}

.p-iw__disabled {
  opacity: 0.3;
}

@media print, screen and (max-width: 750px) {
  .p-historyWrap {
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
  }
  .p-historyWrap .p-historyList {
    min-width: 650px;
  }
}

.p-historyList {
  width: 100%;
  max-width: 700px;
  margin: 20px auto 15px;
  border-right: 1px solid #999;
  border-bottom: 1px solid #999;
}
.p-historyList th,
.p-historyList td {
  border-top: 1px solid #999;
  border-left: 1px solid #999;
  padding: 10px;
  text-align: center;
  vertical-align: middle;
  color: #000;
  font-weight: normal;
}
.p-historyList th {
  background-color: #eee;
  font-weight: bold;
  white-space: nowrap;
}
.p-historyList p {
  font-size: 100%;
}
.p-historyList p + p {
  margin-top: 0;
}

.p-pager {
  max-width: 700px;
  margin: 15px auto 0;
  text-align: right;
}
.p-pager a {
  margin: 0 10px;
}
.p-pager span {
  margin: 0 10px;
  color: #909090;
}

.p-simple__main {
  width: 92%;
  max-width: 990px;
  margin: 0 auto;
  padding: 60px 0 120px;
}
@media print, screen and (max-width: 750px) {
  .p-simple__main {
    padding: 30px 0 60px;
  }
}
@media print, screen and (max-width: 750px) {
  .p-kiyaku__mainContents {
    width: 100%;
    background: #fff;
    padding: 0 0 12%;
  }
}
.p-simple__title {
  margin-bottom: 50px;
  border-top: 2px solid #e60012;
  border-bottom: 2px solid #e60012;
  background-color: #fff4f5;
  padding: 4px 0;
  text-align: center;
  color: #e60012;
  font-size: 22px;
}
@media print, screen and (max-width: 750px) {
  .p-simple__title {
    margin-bottom: 30px;
    font-size: 18px;
  }
}
.p-simple__lead {
  margin-bottom: 40px;
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.8;
}
.p-simple__textL {
  font-size: 20px;
}
.p-simple__textM {
  font-size: 16px;
}
@media print, screen and (max-width: 750px) {
  .p-simple__lead {
    margin-bottom: 30px;
    font-size: 18px;
  }
  .p-simple__textL {
    font-size: 16px;
  }
  .p-simple__textM {
    font-size: 14px;
  }
}
input.p-simple__input {
  margin: 30px 0 15px;
  width: 100%;
  max-width: 400px;
  border: 1px solid #999;
  padding: 8px;
  box-shadow: 2px 2px 3px rgba(0,0,0,0.1) inset;
  text-align: center;
  font-size: 18px;
}
.p-simple__btnArea {
  margin: 60px auto 0;
  max-width: 400px;
}

.p-fileSelectBox {
  max-width: 583px;
  margin: 0 auto;
  border: 1px solid #999;
  padding: 20px;
  text-align: center;
  font-size: 16px;
  font-weight: normal;
}

.p-fileSelect {
  max-width: 583px;
  margin: 30px auto 0;
  display: flex;
  align-items: center;
}
.p-fileSelect__select {
  position: relative;
}
.p-fileSelect__select:hover {
  opacity: 0.8;
}
.p-fileSelect__select input {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
  opacity: 0;
}
.p-fileSelect__name {
  margin-left: 15px;
  font-weight: normal;
  font-size: 15px;
  word-break: break-all;
}
@media print, screen and (max-width: 750px) {
  .p-fileSelect__select {
    width: 45%;
    flex-shrink: 0;
  }
  .p-fileSelect__name {
    margin-left: 10px;
    font-size: 12px;
  }
}

.p-noteList > li {
  position: relative;
  margin-bottom: 3px;
  padding-left: 1.2em;
  font-weight: normal;
  font-size: 15px;
}
.p-noteList > li::before {
  content: "●";
  position: absolute;
  top: 0;
  left: 0;
}
@media print, screen and (max-width: 750px) {
  .p-noteList > li {
    font-size: 14px;
  }
}

/*oldPageFixed*/
.guide_block p {
  line-height: 1.4;
}

.guide_block dl.step dt {
  line-height: 1.4;
  width: 64px;
}

.guide_block dl.step dd {
  line-height: 1.4;
}

.guide_block ul.textlist li {
  line-height: 1.4;
}

.txt_err {
  color: #ff2626;
}
.txt_err,
.txt_blue {
  padding-top: 5px;
}
.txt_err:empty {
  padding-top: 0;
}

@media print, screen and (max-width: 750px) {
  .faqBlock #faq01,
  .faqBlock #faq02,
  .faqBlock #faq03,
  .faqBlock #faq04,
  .faqBlock #faq05,
  .faqBlock #faq06,
  .faqBlock #faq07,
  .faqBlock #faq08,
  .faqBlock #faq09 {
    margin-top: -21.33333%;
    padding-top: 21.33333%;
  }
}

.back_faqPage {
  z-index: 1;
  position: relative;
}

.link_btn button {
  display: inline-block;
  cursor: pointer;
  border: none;
  background: transparent;
  padding: 0;
  margin: 0;
}

.link_btn.is-disabled {
  opacity: .7;
  position: relative;
}
.link_btn.is-disabled::after {
  content: " ";
  display: inline-block;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: .4;
  position: absolute;
  top: 0;
  left: 0;
}

/*utility*/

.u-hide {
  display: none !important;
}
.u-iBlock {
  display: inline-block !important;
}
.u-w100p {
  width: 100%;
}

.u-pci {
  display: inline-block;
}
@media print, screen and (max-width: 750px) {
  .u-pci {
    display: none;
  }
}

.u-spi {
  display: none;
}
@media print, screen and (max-width: 750px) {
  .u-spi {
    display: inline-block;
  }
}

.u-pc {
  display: block;
}
@media print, screen and (max-width: 750px) {
  .u-pc {
    display: none;
  }
}

.u-sp {
  display: none;
}
@media print, screen and (max-width: 750px) {
  .u-sp {
    display: block;
  }
}

body:not(.s_app) .u-app {
  display: none;
}

.u-mt00 {
  margin-top: 0 !important;
}

.u-mt0 {
  margin-top: 0 !important;
}

.u-mt10 {
  margin-top: 10px !important;
}

.u-mt20 {
  margin-top: 20px !important;
}

.u-mt30 {
  margin-top: 30px !important;
}

.u-mt40 {
  margin-top: 40px !important;
}

.u-pt00 {
  padding-top: 0 !important;
}

.u-pt0 {
  padding-top: 0 !important;
}

.u-pt10 {
  padding-top: 10px !important;
}

.u-pt20 {
  padding-top: 20px !important;
}

.u-pt30 {
  padding-top: 30px !important;
}

.u-pt40 {
  padding-top: 40px !important;
}

.u-color-red {
  color: #E50112;
}

.u-textL {
  text-align: left;
}

.u-textC {
  text-align: center;
}

.u-textR {
  text-align: right;
}

@media screen and (min-width: 751px) {
  .u-textL-pc {
    text-align: left;
  }
  .u-textC-pc {
    text-align: center;
  }
  .u-textR-pc {
    text-align: right;
  }
}

@media print, screen and (max-width: 750px) {
  .u-textL-sp {
    text-align: left;
  }
  .u-textC-sp {
    text-align: center;
  }
  .u-textR-sp {
    text-align: right;
  }
}

.u-fsize-S {
  font-size: .9rem;
}
.u-fsize-M {
  font-size: 1rem;
}
.u-fsize-L {
  font-size: 1.2rem;
}
.u-fsize-XL {
  font-size: 1.5rem;
}

.u-bold {
  font-weight: bold;
}

.u-clearfix::after {
	content: "";
	display: block;
	clear: both;
	height: 0.01px;
}

@media print {
  body {
    max-width: 750px;
  }
  .u-noPrint {
    display: none !important;
  }
}

/**************************************************
new_additinal_class_20190729
***************************************************/
@media print, screen and (max-width: 750px) {
  .s-center {
    text-align: center;
  }
}
