@charset "UTF-8";

/*
	HTML5 Reset :: style.css
	----------------------------------------------------------
	We have learned much from/been inspired by/taken code where offered from:

	Eric Meyer					:: http://meyerweb.com
	HTML5 Doctor				:: http://html5doctor.com
	and the HTML5 Boilerplate	:: http://html5boilerplate.com

-------------------------------------------------------------------------------*/
/* Let's default this puppy out
-------------------------------------------------------------------------------*/
html,
body,
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,
figure,
footer,
header,
menu,
nav,
section,
time,
mark,
audio,
video,
details,
summary {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-weight: normal;
  vertical-align: baseline;
  background: transparent
}

article,
aside,
figure,
footer,
header,
nav,
section,
details,
summary {
  display: block
}

/* Handle box-sizing while better addressing child elements:
   http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

*,
*:before,
*:after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit
}

/* consider resetting the default cursor: https://gist.github.com/murtaugh/5247154 */
/* Responsive images and other embedded objects */
/* if you don't have full control over `img` tags (if you have to overcome attributes), consider adding height: auto */
img,
object,
embed {
  max-width: 100%
}

/*
   Note: keeping IMG here will cause problems if you're using foreground images as sprites.
	In fact, it *will* cause problems with Google Maps' controls at small size.
	If this is the case for you, try uncommenting the following:

#map img {
		max-width: none;
}
*/
/* force a vertical scrollbar to prevent a jumpy page */
html {
  overflow-y: scroll
}

/* we use a lot of ULs that aren't bulleted.
	you'll have to restore the bullets within content,
	which is fine because they're probably customized anyway */
ul {
  list-style: none
}

blockquote,
q {
  quotes: none
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent
}

del {
  text-decoration: line-through
}

abbr[title],
dfn[title] {
  border-bottom: 1px dotted #000;
  cursor: help
}

/* tables still need cellspacing="0" in the markup */
table {
  border-collapse: collapse;
  border-spacing: 0
}

th {
  font-weight: bold;
  vertical-align: bottom
}

td {
  font-weight: normal;
  vertical-align: top
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0
}

input,
select {
  vertical-align: middle
}

pre {
  white-space: pre;
  /* CSS2 */
  white-space: pre-wrap;
  /* CSS 2.1 */
  white-space: pre-line;
  /* CSS 3 (and 2.1 as well, actually) */
  word-wrap: break-word
    /* IE */
}

input[type="radio"] {
  vertical-align: text-bottom
}

.ie7 input[type="checkbox"] {
  vertical-align: baseline
}

.ie6 input {
  vertical-align: text-bottom
}

select,
input,
textarea {
  font: 99% sans-serif
}

table {
  font-size: inherit;
  font: 100%
}

small {
  font-size: 85%
}

strong {
  font-weight: bold
}

td,
td img {
  vertical-align: top
}

/* Make sure sup and sub don't mess with your line-heights http://gist.github.com/413930 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative
}

sup {
  top: -0.5em
}

sub {
  bottom: -0.25em
}

/* standardize any monospaced elements */
pre,
code,
kbd,
samp {
  font-family: monospace, sans-serif
}

/* hand cursor on clickable elements */
.clickable,
label,
input[type=button],
input[type=submit],
input[type=file],
button {
  cursor: pointer
}

/* Webkit browsers add a 2px margin outside the chrome of form elements */
button,
input,
select,
textarea {
  margin: 0
}

/* make buttons play nice in IE */
button,
input[type=button] {
  width: auto;
  overflow: visible
}

/* scale images in IE7 more attractively */
.ie7 img {
  -ms-interpolation-mode: bicubic
}

/* prevent BG image flicker upon hover
   (commented out as usage is rare, and the filter syntax messes with some pre-processors)
.ie6 html {filter: expression(document.execCommand("BackgroundImageCache", false, true));}
*/
/* let's clear some floats */
.clearfix:before,
.clearfix:after {
  content: "\0020";
  display: block;
  height: 0;
  overflow: hidden
}

.clearfix:after {
  clear: both
}

.clearfix {
  zoom: 1
}

html,
body {
  -webkit-text-size-adjust: 100%
}

html {
  font-size: 62.5%
}

body {
  font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", Osaka, "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.8;
  word-wrap: break-word;
  color: #333;
  background-color: #fff;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-font-smoothing: antialiased
}

a {
  text-decoration: none;
  color: #d8d8d8;
  outline: none
}

@media screen and (min-width: 750px) {
  a:hover {
    -webkit-transition: all .3s;
    transition: all .3s
  }
}

a.btn__orage {
  position: relative;
  display: block;
  font-size: 25px;
  font-size: 2.5rem;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  color: #fff;
  border: 3px solid #fd9828;
  border-radius: 50px;
  background-image: -webkit-gradient(linear, left bottom, left top, from(#fd9828), to(#ff8600));
  background-image: linear-gradient(to top, #fd9828, #ff8600);
  -webkit-box-shadow: 0px 5px 0 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0px 5px 0 0 rgba(0, 0, 0, 0.1)
}

@media (max-width: 750px) {
  a.btn__orage {
    font-size: 16px;
    font-size: 1.6rem
  }
}

@media screen and (min-width: 750px) {
  a.btn__orage:hover {
    -webkit-transform: translateY(3px);
    transform: translateY(3px);
    color: #fd9828;
    background-image: -webkit-gradient(linear, left bottom, left top, from(#fff), to(#fff));
    background-image: linear-gradient(to top, #fff, #fff);
    -webkit-box-shadow: none;
    box-shadow: none
  }

  a.btn__orage:hover:after {
    background: url("../images/download-icon_on.png") no-repeat top left/100%
  }
}

a.btn__orage:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 5px;
  display: inline-block;
  width: 35px;
  height: 35px;
  -webkit-transform: translateY(-50%) translateX(-50%);
  transform: translateY(-50%) translateX(-50%);
  background: url("../images/download-icon.png") no-repeat top left/100%
}

@media (max-width: 750px) {
  a.btn__orage:after {
    width: 25px;
    height: 25px
  }
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom
}

.is-pc {
  display: block
}

@media (max-width: 750px) {
  .is-pc {
    display: none
  }
}

.is-sp {
  display: none
}

@media (max-width: 750px) {
  .is-sp {
    display: block
  }
}

.clearfix:after {
  content: '';
  display: block;
  clear: both
}

.inner {
  max-width: 1210px;
  margin-right: auto;
  margin-left: auto;
  padding: 0 15px
}

.header {
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between
}

.header__logo {
  padding: 25px;
  background-color: #ffffff;
  width: 220px;
}

.ITreview {
  display: flex;
  margin-top: 2rem;
  padding: 5px;
  align-items: center;
  background-color: #00c7ce9c;
  color: #fff;
  border: 3px solid #00c7ce;
  box-sizing: border-box;
}

img.ITreview_badge {
  max-width: 100px;
}

.ITreview p {
  margin-left: 10px;
  line-height: 1.5;
  font-weight: bold;
  font-size: 13px;
}

@media (min-width: 48.0625em) {
  .header {
    padding-top: 27.5px;
    padding-right: 42.5px;
    padding-left: 40px
  }
}

@media (max-width: 1100px) {
  .header {
    padding-right: 0
  }
}

@media (max-width: 750px) {
  .header {
    padding: 10px 0;
    padding: 1rem 0;
    background-color: rgba(255, 255, 255, 0.8);
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    align-items: center;
    position: fixed;
    z-index: 10;
  }
}

@media (max-width: 750px) {
  .header__logo {
    width: 36.66667%;
    margin-left: 10px;
    margin-left: 1rem;
    padding: 10px;
  }

  .ITreview p {
    font-size: 10px;
  }
}

.header__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}

@media (max-width: 750px) {
  .header__btn {
    width: 58.66667%
  }
}

@media (max-width: 320px) {
  .header__btn {
    width: 60%
  }
}

.header__btn a {
  width: 240px;
  margin: 10px 10px;
  padding: 15px 0;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: bold;
  text-align: center;
  color: #fff;
  border-radius: 50px;
  -webkit-box-shadow: 0px 4px 0 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0px 4px 0 0 rgba(0, 0, 0, 0.1)
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
}

@media (max-width: 750px) {
  .header__btn a {
    margin-right: 5px;
    margin-left: 2.5px;
    padding: 12.5px 0;
    font-size: 11px;
    font-size: 1.1rem;
    -webkit-box-shadow: 0px 2px 0 0 rgba(0, 0, 0, 0.1);
    box-shadow: 0px 2px 0 0 rgba(0, 0, 0, 0.1)
  }
}

@media (max-width: 320px) {
  .header__btn a {
    font-size: 10px;
    font-size: 1rem
  }
}

.header__btn a:hover {
  -webkit-transform: translateY(3px);
  transform: translateY(3px);
  -webkit-box-shadow: none;
  box-shadow: none
}

.header__btn--form {
  background-color: #00c7ce
}

@media (max-width: 750px) {
  .header__btn--form {
    width: 45.36585%
  }
}

.header__btn--docdownload {
  background-color: #fd9828
}

@media (max-width: 750px) {
  .header__btn--docdownload {
    width: 52.68293%
  }
}

.kv {
  height: 830px;
  line-height: 1;
  background: url("../images/kv-bg.png") no-repeat top left/cover
}

@media (max-width: 750px) {
  .kv {
    height: auto;
    background-position: 50% 50%
  }
}

.kv.aozora {
  height: auto;
  padding-bottom: 20px;
}

@media (max-width: 750px) {
  .kv.aozora {
    padding-bottom: 0;
  }
}

.kv--inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-top: 140px;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media (max-width: 750px) {
  .kv--inner {
    display: block;
    padding-top: 95px
  }
}

.kv--alert {
  width: 100%;
  background: #ffffff;
  font-size: 26px;
  font-size: 2.6rem;
  font-weight: normal;
  text-align: center;
  padding: 15px 0;
  margin-bottom: 40px;
  font-weight: bold;
  line-height: 1;
}

@media (max-width: 750px) {
  .kv--alert {
    font-size: 18px;
    font-size: 1.8rem;
    padding: 10px 0;
    margin-bottom: 20px;
  }
}

.kv--alert img {
  width: 340px;
  vertical-align: middle;
  position: relative;
  top: -2px;
  margin-right: 20px;
}

@media (max-width: 750px) {
  .kv--alert img {
    display: block;
    width: 75%;
    max-width: 300px;
    margin: 0 auto 10px;
  }
}

.kv--contents {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1
}

.kv--contents .kv--sub {
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 2px;
  color: #323232
}

@media (max-width: 750px) {
  .kv--contents .kv--sub {
    font-size: 18px;
    font-size: 1.8rem;
    text-align: center
  }
}

@media (max-width: 320px) {
  .kv--contents .kv--sub {
    font-size: 15px;
    font-size: 1.5rem
  }
}

.kv--contents .kv--title {
  margin: 20px 0 20px;
  margin: 2rem 0 2rem;
  font-size: 55px;
  font-size: 4rem;
  line-height: 1.1;
  color: #fff;
  text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3)
}

@media (max-width: 1100px) {
  .kv--contents .kv--title {
    font-size: 45px;
    font-size: 4.5rem
  }
}

@media (max-width: 750px) {
  .kv--contents .kv--title {
    font-size: 40px;
    font-size: 2.2rem;
    line-height: 1.2;
    text-align: center
  }
}

@media (max-width: 320px) {
  .kv--contents .kv--title {
    font-size: 35px;
    font-size: 3.5rem
  }
}

.kv--contents .kv--title span {
  font-size: 65px;
  font-size: 6.5rem;
  font-weight: bold;
  text-shadow: 0px 3px 13px rgba(0, 0, 0, 0.5)
}

@media (max-width: 1100px) {
  .kv--contents .kv--title span {
    font-size: 55px;
    font-size: 5.5rem
  }
}

@media (max-width: 750px) {
  .kv--contents .kv--title span {
    font-size: 45px;
    font-size: 4.5rem
  }
}

.kv--contents .kv--title small {
  font-size: 50px;
  font-size: 5rem
}

@media (max-width: 750px) {
  .kv--contents .kv--title small {
    font-size: 40px;
    font-size: 4rem
  }
}

.kv--contents .kv--text {
  margin-bottom: 20px;
  margin-bottom: 2rem;
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.5;
  color: #fff;
  text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3)
}

@media (max-width: 1100px) {
  .kv--contents .kv--text {
    font-size: 17px;
    font-size: 1.7rem
  }
}

@media (max-width: 750px) {
  .kv--contents .kv--text {
    margin-bottom: 32.5px;
    margin-bottom: 3.25rem;
    font-size: 13px;
    font-size: 1.3rem;
    text-align: center
  }
}

@media (max-width: 320px) {
  .kv--contents .kv--text {
    font-size: 11px;
    font-size: 1.1rem
  }
}

.kv--contents .kv--img {
  max-width: 84.02778%
}

@media (max-width: 750px) {
  .kv--contents .kv--img {
    max-width: 100%;
    padding-bottom: 45px;
    padding-bottom: 4.5rem
  }
}

.kv--contents .kv--img__text {
  margin-top: 10px;
  margin-top: 1rem;
  font-size: 12px;
  font-size: 1.2rem
}

.kv--contents .kv--img__text:first-of-type {
  margin-bottom: 1rem;
}

@media (max-width: 750px) {
  .kv--contents .kv--img__text {
    font-size: 11px;
    font-size: 1.1rem
  }
}

@media (max-width: 320px) {
  .kv--contents .kv--img__text {
    font-size: 10px;
    font-size: 1rem;
    letter-spacing: -0.5px
  }
}

.kv--contents .kv--img__text span {
  display: block;
  margin-bottom: 7.5px;
  font-weight: bold
}

.kv--contents .kv--img__text span:last-of-type {
  margin-bottom: 0;
  text-align: right;
}

.kv--contents .kv--download {
  margin-bottom: 30px;
  margin-bottom: 3rem
}

.kv--contents .kv--download a {
  position: relative;
  display: block;
  padding: 15px 0;
  padding: 1.5rem 0;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.5;
  text-align: center;
  border-radius: 50px;
  background-image: -webkit-gradient(linear, left bottom, left top, from(#fd9828), to(#ff8600));
  background-image: linear-gradient(to top, #fd9828, #ff8600);
  -webkit-box-shadow: 0px 5px 0 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0px 5px 0 0 rgba(0, 0, 0, 0.1)
}

.kv--contents .kv--download a span {
  font-weight: bold;
  color: #fff
}

.kv--contents .kv--download a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  display: inline-block;
  width: 25px;
  height: 25px;
  -webkit-transform: translateY(-50%) translateX(-50%);
  transform: translateY(-50%) translateX(-50%);
  background: url("../images/download-icon.png") no-repeat top left/100%
}

.kv--form {
  position: relative;
  width: 45.16102%;
  margin-top: 95px;
  margin-top: 9.5rem
}

.kv--form__title {
  width: auto;
  margin-top: -120px;
  margin-top: -12rem;
  margin-left: -45px
}

.kv--form__block {
  margin-top: -20px;
  margin-top: -2rem;
  padding: 37.5px 30px 35px;
  padding: 3.75rem 3rem 3.5rem;
  background-color: rgba(255, 255, 255, 0.5)
}

@media (max-width: 1100px) {
  .kv--form__block {
    padding: 37.5px 20px 35px;
    padding: 3.75rem 2rem 3.5rem
  }
}

.kv--form__field {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 10px;
  margin-bottom: 1rem
}

.kv--form__field:last-of-type {
  margin-bottom: 0
}

.kv--form__field--input {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1
}

.kv--form__field--input input[type="text"],
.kv--form__field--input input[type="email"],
.kv--form__field--input input[type="tel"],
.kv--form__field--input textarea[type="text"] {
  width: 100%;
  padding: 13px 15px;
  padding: 1rem 1.5rem;
  letter-spacing: 1.25px;
  color: #898989;
  border: none;
  background-color: rgba(255, 255, 255, 0.6)
}

.kv--form__field--input input[type="text"]:focus,
.kv--form__field--input input[type="email"]:focus,
.kv--form__field--input input[type="tel"]:focus {
  background-color: #fff
}

.kv--form__field--input input[type="text"]:not(*):placeholder-shown,
.kv--form__field--input input[type="email"]:not(*):placeholder-shown,
.kv--form__field--input input[type="tel"]:not(*):placeholder-shown {
  background-color: #fff
}

.kv--form__person_name {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between
}

.kv--form__person_name input[type="text"] {
  width: 48%
}

.kv--form__label {
  width: 29.54545%;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: bold;
  letter-spacing: 0.5px
}

@media (max-width: 1100px) {
  .kv--form__label {
    font-size: 13px;
    font-size: 1.3rem
  }
}

.kv--form__submit {
  margin-top: 30px;
  margin-top: 3rem
}

.kv--form__submit input[type="submit"] {
  width: 100%;
  padding: 15px 0;
  padding: 1.5rem 0;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: bold;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  color: #fff;
  border: none;
  background-color: #004aab;
  -webkit-box-shadow: 0px 4px 0 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0px 4px 0 0 rgba(0, 0, 0, 0.1)
}

.kv--form__submit input[type="submit"]:hover {
  -webkit-transform: translateY(4px);
  transform: translateY(4px);
  -webkit-box-shadow: none;
  box-shadow: none
}

.kv--form__submit input[type="submit"]:focus {
  outline: 0
}

.kv--form__notice {
  margin-top: 10px;
  margin-top: 1rem;
  font-size: 12.4px;
  font-size: 1.24rem;
  line-height: 1.2;
  text-align: center;
  letter-spacing: 0.95px
}

.kv--form__notice--ind {
  margin-top: 20px;
  margin-top: 2rem;
  font-size: 12.4px;
  font-size: 1.24rem;
  line-height: 1.2;
  text-align: center;
  letter-spacing: -0.2px;
}

@media (max-width: 1100px) {
  .kv--form__notice {
    font-size: 10px;
    font-size: 1rem
  }
}

.kv--form__notice a {
  position: relative;
  display: inline-block;
  color: #303030
}

.kv--form__notice a:after {
  content: "";
  position: absolute;
  bottom: -3px;
  left: 0;
  display: inline-block;
  width: 100%;
  height: 1px;
  background-color: #303030
}

.sec {
  padding-top: 85px;
  padding-top: 8.5rem;
  padding-bottom: 95px;
  padding-bottom: 9.5rem
}

@media (max-width: 750px) {
  .sec {
    padding-top: 55px;
    padding-top: 5.5rem;
    padding-bottom: 50px;
    padding-bottom: 5rem
  }
}

.sec.bg-lightblue {
  background-color: #e7f2f2
}

.sec--inner {
  margin: 0 90px;
  margin: 0 9rem
}

@media (max-width: 1100px) {
  .sec--inner {
    margin: 0 45px;
    margin: 0 4.5rem
  }
}

@media (max-width: 750px) {
  .sec--inner {
    margin: 0 auto
  }
}

.sec--title {
  margin-bottom: 75px;
  margin-bottom: 7.5rem;
  font-size: 35px;
  font-size: 3.5rem;
  font-weight: bold;
  line-height: 1.5;
  text-align: center;
  color: #2e2e2e;
  position: relative;
}

@media (max-width: 1100px) {
  .sec--title {
    font-size: 30px;
    font-size: 3rem
  }
}

@media (max-width: 750px) {
  .sec--title {
    margin-bottom: 40px;
    margin-bottom: 4rem;
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.5
  }
}

.sec--title span {
  font-weight: bold
}

@media (max-width: 750px) {
  .sec--title span {
    font-size: 15px;
    font-size: 1.5rem
  }
}

@media (max-width: 320px) {
  .sec--title span {
    font-size: 12px;
    font-size: 1.2rem
  }
}

.sec--title .sec--title__caption {
  letter-spacing: 0.1em;
  border: 2px solid #f55044;
  background: #ffffff;
  padding: 25px 0;
  font-size: 22px;
  position: relative;
  width: 600px;
  display: block;
  height: auto;
  top: 0;
  right: 0;
  line-height: 2;
  margin: 0 auto 30px;
  text-align: center;
  z-index: 1;
  border-radius: 20px;
}

@media (max-width: 1100px) {
  .sec--title .sec--title__caption {
    font-size: 18px;
    width: 440px;
  }
}

@media (max-width: 750px) {
  .sec--title .sec--title__caption {
    width: auto;
    font-size: 16px;
    letter-spacing: normal;
    padding: 15px 0;
  }
}

.sec--title .sec--title__caption:before {
  width: 0;
  height: 0;
  position: absolute;
  top: 100%;
  left: 320px;
  margin: 0 0 0 -50px;
  border: 20px solid transparent;
  border-top-color: #f55044;
  content: '';
}

@media (max-width: 1100px) {
  .sec--title .sec--title__caption:before {
    left: calc(20px + 50%);
  }
}

.sec--title .sec--title__caption .big {
  font-size: 140%;
}

@media (max-width: 1100px) {
  .sec--title .sec--title__caption .big {
    font-size: 120%;
  }
}

.sec--title .sec--title__caption .marker {
  position: relative;
  padding: 0 5px;
  font-size: 110%;
  margin: 0 5px;
  color: #f55044;
  line-height: 0;
}

.sec--title .sec--title__caption .marker::after {
  content: "";
  display: block;
  width: 100%;
  height: 70%;
  position: absolute;
  left: 0px;
  bottom: -5%;
  background-color: #fff4b0;
  z-index: -1;
}

.sec--title .sec--title__caption .break {
  display: block;
}

@media (max-width: 750px) {
  .sec--title .sec--title__caption .break {
    font-size: 16px;
  }
}

.sec .sec01--table {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 30px
}

.sec .sec01--table .img {
  width: 27.5%;
  margin-left: -20px;
  margin-left: -2rem
}

@media (max-width: 750px) {
  .sec .sec01--table .img {
    width: 40%;
    margin-left: -10px;
    margin-left: -1rem
  }
}

.sec .sec01--table .table {
  width: 67.5%
}

@media (max-width: 750px) {
  .sec .sec01--table .table {
    width: 73.33333%
  }
}

.sec .sec01--description {
  margin-bottom: 100px;
  margin-bottom: 10rem
}

@media (max-width: 750px) {
  .sec .sec01--description {
    margin-bottom: 40px;
    margin-bottom: 4rem
  }
}

.sec .sec01--description__field {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 20px;
  margin-bottom: 2rem
}

@media (max-width: 750px) {
  .sec .sec01--description__field {
    margin-bottom: 15px;
    margin-bottom: 1.5rem
  }
}

.sec .sec01--description__field:last-of-type {
  margin-bottom: 0
}

.sec .sec01--description__field dt,
.sec .sec01--description__field dd {
  background-color: #fff
}

.sec .sec01--description__field dt {
  position: relative;
  width: 24%;
  margin-right: 15px;
  margin-right: 1.5rem;
  padding: 30px 0;
  padding: 3rem 0;
  text-align: center
}

@media (max-width: 750px) {
  .sec .sec01--description__field dt {
    width: 30.66667%;
    margin-right: 5px;
    margin-right: 0.5rem
  }
}

.sec .sec01--description__field dt p {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  font-weight: bold;
  -webkit-transform: translateY(-50%) translateX(-50%);
  transform: translateY(-50%) translateX(-50%)
}

.sec .sec01--description__field dt p span {
  font-size: 25px;
  font-size: 2.5rem;
  font-weight: bold;
  color: #00c7ce
}

@media (max-width: 1100px) {
  .sec .sec01--description__field dt p span {
    font-size: 18px;
    font-size: 1.8rem
  }
}

@media (max-width: 750px) {
  .sec .sec01--description__field dt p span {
    font-size: 16px;
    font-size: 1.6rem
  }
}

.sec .sec01--description__field dt p small {
  display: block;
  line-height: 1.2
}

@media (max-width: 750px) {
  .sec .sec01--description__field dt p small {
    font-size: 10px;
    font-size: 1rem
  }
}

.sec .sec01--description__field dd {
  padding: 30px 40px;
  padding: 3rem 4rem;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: normal;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1
}

@media (max-width: 750px) {
  .sec .sec01--description__field dd {
    padding: 17.5px 20px;
    padding: 1.75rem 2rem;
    font-size: 13px;
    font-size: 1.3rem
  }
}

.sec .sec01--download__message {
  margin-bottom: 20px;
  margin-bottom: 2rem;
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  text-align: center
}

@media (max-width: 750px) {
  .sec .sec01--download__message {
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: -0.5px
  }
}

@media (max-width: 750px) {
  .sec .sec01--download__message {
    font-size: 12px;
    font-size: 1.2rem
  }
}

.sec .sec01--download__btn {
  width: 50%;
  margin: 0 auto;
  padding: 30px 0;
  padding: 3rem 0
}

@media (max-width: 1100px) {
  .sec .sec01--download__btn {
    width: 65%
  }
}

@media (max-width: 750px) {
  .sec .sec01--download__btn {
    width: 100%;
    padding: 17.5px 0;
    padding: 1.75rem 0
  }
}

.sec .sec02--aboutmeo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}

@media (max-width: 750px) {
  .sec .sec02--aboutmeo {
    display: block
  }
}

.sec .sec02--aboutmeo .img {
  width: 48.72881%;
  margin-right: 50px;
  margin-right: 5rem
}

@media (max-width: 750px) {
  .sec .sec02--aboutmeo .img {
    width: 100%
  }
}

.sec .sec02--aboutmeo .text {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  margin-top: 55px;
  margin-top: 5.5rem
}

@media (max-width: 1100px) {
  .sec .sec02--aboutmeo .text {
    margin-top: 35px;
    margin-top: 3.5rem
  }
}

@media (max-width: 750px) {
  .sec .sec02--aboutmeo .text {
    margin-top: 10px;
    margin-top: 1rem
  }
}

.sec .sec02--aboutmeo .text p {
  margin-bottom: 50px;
  margin-bottom: 5rem
}

@media (max-width: 750px) {
  .sec .sec02--aboutmeo .text p {
    margin-bottom: 30px;
    margin-bottom: 3rem
  }
}

.sec .sec02--aboutmeo .text p:last-of-type {
  margin-bottom: 0
}

.sec.sec03--reason {
  position: relative;
  background-color: #e5f9fa
}

.sec.sec03--reason:after {
  content: "";
  position: absolute;
  z-index: 1;
  right: 0;
  bottom: 0;
  left: 0;
  display: inline-block;
  width: 0;
  height: 0;
  margin: auto;
  margin-bottom: -32px;
  border-width: 32px 70px 0 70px;
  border-style: solid;
  border-color: #e5f9fa transparent transparent transparent
}

@media (max-width: 750px) {
  .sec.sec03--reason:after {
    margin-bottom: -23px;
    border-width: 23px 50px 0 50px
  }
}

.sec.sec03--reason .reason__btn {
  width: 44.91525%
}

@media (max-width: 1100px) {
  .sec.sec03--reason .reason__btn {
    width: 67.79661%
  }
}

@media (max-width: 750px) {
  .sec.sec03--reason .reason__btn {
    width: 100%
  }
}

.sec.sec03--reason.second {
  padding-top: 125px;
  padding-top: 12.5rem
}

@media (max-width: 750px) {
  .sec.sec03--reason.second {
    padding-top: 50px;
    padding-top: 5rem
  }
}

.sec.sec03--reason.second:after {
  border-color: #fff transparent transparent transparent
}

.sec.sec03--reason.third {
  padding-top: 125px;
  padding-top: 12.5rem
}

@media (max-width: 750px) {
  .sec.sec03--reason.third {
    padding-top: 50px;
    padding-top: 5rem
  }
}

.sec.sec03--reason.third .col2 {
  margin-bottom: 100px;
  margin-bottom: 10rem
}

@media (max-width: 750px) {
  .sec.sec03--reason.third .col2 {
    margin-bottom: 37.5px;
    margin-bottom: 3.75rem
  }
}

.sec.sec03--reason.third:after {
  display: none
}

.sec.sec03--reason.bg-white {
  background-color: #fff
}

.sec.sec03--reason .col2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between
}

@media (max-width: 750px) {
  .sec.sec03--reason .col2 {
    display: block
  }
}

.sec.sec03--reason .col2.row-reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse
}

.sec.sec03--reason .col2.row-reverse .explain {
  margin-right: 0;
  margin-left: 35px
}

@media (max-width: 750px) {
  .sec.sec03--reason .col2.row-reverse .explain {
    margin-left: 0
  }
}

.sec.sec03--reason .col2 .explain {
  width: 67.79661%;
  margin-right: 35px
}

@media (max-width: 1100px) {
  .sec.sec03--reason .col2 .explain {
    width: 83.05085%
  }
}

@media (max-width: 750px) {
  .sec.sec03--reason .col2 .explain {
    width: 100%;
    margin-right: 0;
    margin-bottom: 30px;
    margin-bottom: 3rem
  }
}

.sec.sec03--reason .col2 .explain.third {
  margin-right: 110px;
  margin-right: 11rem
}

@media (max-width: 1100px) {
  .sec.sec03--reason .col2 .explain.third {
    margin-right: 60px;
    margin-right: 6rem
  }
}

.sec.sec03--reason .col2 .explain .label {
  display: block;
  width: 60px;
  height: 60px;
  font-size: 30px;
  font-size: 3rem;
  font-weight: bold;
  line-height: 2;
  text-align: center;
  color: #fff;
  background-color: #fd9828
}

@media (max-width: 750px) {
  .sec.sec03--reason .col2 .explain .label {
    width: 35px;
    height: 35px;
    margin: 0 auto;
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.8
  }
}

.sec.sec03--reason .col2 .explain .title {
  margin-top: 37.5px;
  margin-top: 3.75rem;
  margin-bottom: 45px;
  margin-bottom: 4.5rem;
  font-size: 25px;
  font-size: 2.5rem;
  font-weight: bold;
  letter-spacing: normal;
  color: #fd9828
}

@media (max-width: 1100px) {
  .sec.sec03--reason .col2 .explain .title {
    margin-top: 25px;
    margin-top: 2.5rem;
    font-size: 20px;
    font-size: 2rem
  }
}

@media (max-width: 750px) {
  .sec.sec03--reason .col2 .explain .title {
    margin-top: 20px;
    margin-top: 2rem;
    margin-bottom: 27.5px;
    margin-bottom: 2.75rem;
    font-size: 18px;
    font-size: 1.8rem;
    text-align: center
  }
}

@media (max-width: 320px) {
  .sec.sec03--reason .col2 .explain .title {
    font-size: 16px;
    font-size: 1.6rem
  }
}

.sec.sec03--reason .col2 .img {
  width: 125.42373%
}

@media (max-width: 1100px) {
  .sec.sec03--reason .col2 .img {
    width: 100%
  }
}

.sec .sec04--selectreason__field {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

@media (max-width: 1100px) {
  .sec .sec04--selectreason__field {
    margin-bottom: 50px;
    margin-bottom: 5rem
  }
}

@media (max-width: 750px) {
  .sec .sec04--selectreason__field {
    display: block
  }
}

.sec .sec04--selectreason__field:nth-of-type(3) {
  margin-bottom: 90px;
  margin-bottom: 9rem
}

@media (max-width: 750px) {
  .sec .sec04--selectreason__field:nth-of-type(3) {
    margin-bottom: 0
  }
}

.sec .sec04--selectreason__field.row-reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  margin-bottom: 50px;
  margin-bottom: 5rem
}

.sec .sec04--selectreason__field.row-reverse .sec04--selectreason__contents {
  padding-right: 0;
  padding-left: 50px;
  padding-left: 5rem
}

@media (max-width: 750px) {
  .sec .sec04--selectreason__field.row-reverse .sec04--selectreason__contents {
    padding-left: 0
  }
}

.sec .sec04--selectreason__contents {
  width: 50%;
  padding-right: 50px;
  padding-right: 5rem
}

@media (max-width: 1100px) {
  .sec .sec04--selectreason__contents {
    padding-right: 15px;
    padding-right: 1.5rem
  }
}

@media (max-width: 750px) {
  .sec .sec04--selectreason__contents {
    width: 100%;
    padding-right: 0
  }
}

.sec .sec04--selectreason__contents h3 {
  margin-bottom: 25px;
  margin-bottom: 2.5rem;
  font-size: 25px;
  font-size: 2.5rem;
  font-weight: bold;
  line-height: 1.5;
  color: #00c7ce
}

@media (max-width: 1100px) {
  .sec .sec04--selectreason__contents h3 {
    font-size: 20px;
    font-size: 2rem
  }
}

@media (max-width: 750px) {
  .sec .sec04--selectreason__contents h3 {
    font-size: 18px;
    font-size: 1.8rem;
    text-align: center
  }
}

@media (max-width: 750px) {
  .sec .sec04--selectreason__contents p {
    margin-bottom: 20px;
    margin-bottom: 2rem
  }
}

.sec .sec04--selectreason__img {
  width: 50%;
  margin: 0 auto
}

@media (max-width: 750px) {
  .sec .sec04--selectreason__img {
    width: 100%;
    margin: 0 auto 40px;
    margin: 0 auto 4rem
  }
}

.sec .sec04--selectreason__img.first {
  width: 40%
}

@media (max-width: 750px) {
  .sec .sec04--selectreason__img.first {
    width: calc(100% + -10rem)
  }
}

.sec .sec04--selectreason__img.second {
  width: 30%
}

@media (max-width: 750px) {
  .sec .sec04--selectreason__img.second {
    width: calc(100% + -12rem)
  }
}

@media (max-width: 750px) {
  .sec .sec04--selectreason__img.third {
    margin-top: 25px;
    margin-top: 2.5rem
  }
}

.sec .sec05--person {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between
}

@media (max-width: 750px) {
  .sec .sec05--person {
    display: block
  }
}

.sec .sec05--person__example {
  width: 47%;
  margin-bottom: 60px
}

@media (max-width: 750px) {
  .sec .sec05--person__example {
    width: 100%;
    margin-bottom: 40px;
    margin-bottom: 4rem
  }
}

.sec .sec05--person__title {
  position: relative;
  margin-bottom: 27.5px;
  margin-bottom: 2.75rem;
  font-size: 20px;
  font-size: 2rem
}

@media (max-width: 1100px) {
  .sec .sec05--person__title {
    margin-bottom: 17.5px;
    margin-bottom: 1.75rem;
    font-size: 14px;
    font-size: 1.4rem
  }
}

@media (max-width: 750px) {
  .sec .sec05--person__title {
    font-size: 16px;
    font-size: 1.6rem
  }
}

.sec .sec05--person__title:before {
  content: "";
  position: absolute;
  top: 5px;
  left: 0;
  display: inline-block;
  width: 30.5px;
  height: 25px;
  background: url("../images/sec05-icon.png") no-repeat top left/cover
}

@media (max-width: 1100px) {
  .sec .sec05--person__title:before {
    width: 15px;
    height: 12.5px
  }
}

@media (max-width: 750px) {
  .sec .sec05--person__title:before {
    width: 25px;
    height: 20px
  }
}

.sec .sec05--person__title span {
  display: inline-block;
  padding-left: 45px;
  padding-left: 4.5rem;
  font-weight: bold
}

@media (max-width: 1100px) {
  .sec .sec05--person__title span {
    padding-left: 25px;
    padding-left: 2.5rem
  }
}

@media (max-width: 750px) {
  .sec .sec05--person__title span {
    padding-left: 35px;
    padding-left: 3.5rem
  }
}

.sec .sec05--download__btn {
  display: block;
  width: 60.6383%;
  margin: 35px auto 0;
  margin: 3.5rem auto 0;
  padding: 15px 0;
  padding: 1.5rem 0;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  color: #fff;
  border: 3px solid #fd9828;
  border-radius: 50px;
  background-image: -webkit-gradient(linear, left bottom, left top, from(#fd9828), to(#ff8600));
  background-image: linear-gradient(to top, #fd9828, #ff8600);
  -webkit-box-shadow: 0px 3px 0 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0px 3px 0 0 rgba(0, 0, 0, 0.1)
}

@media (max-width: 1100px) {
  .sec .sec05--download__btn {
    width: 74.46809%
  }
}

.sec .sec05--download__btn:hover {
  -webkit-transform: translateY(3px);
  transform: translateY(3px);
  color: #fd9828;
  background-image: -webkit-gradient(linear, left bottom, left top, from(#fff), to(#fff));
  background-image: linear-gradient(to top, #fff, #fff);
  -webkit-box-shadow: none;
  box-shadow: none
}

.sec .sec06--interview {
  margin-bottom: 100px
}

@media (max-width: 1100px) {
  .sec .sec06--interview {
    margin-bottom: 50px
  }
}

@media (max-width: 750px) {
  .sec .sec06--interview {
    margin-bottom: 50px;
    margin-bottom: 5rem
  }
}

.sec .sec06--interview__field {
  margin-bottom: 30px
}

.sec .sec06--interview__field h3 {
  position: relative;
  top: 40px;
  margin-top: -45px;
  margin-left: 50%;
  font-size: 25px;
  font-size: 2.5rem;
  font-weight: bold;
  color: #00c7ce
}

@media (max-width: 1100px) {
  .sec .sec06--interview__field h3 {
    font-size: 20px;
    font-size: 2rem
  }
}

@media (max-width: 750px) {
  .sec .sec06--interview__field h3 {
    top: 0;
    margin-top: 0px;
    margin-bottom: 20px;
    margin-bottom: 2rem;
    margin-left: 0;
    font-size: 18px;
    font-size: 1.8rem;
    text-align: center
  }
}

.sec .sec06--interview__field .col2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between
}

@media (max-width: 750px) {
  .sec .sec06--interview__field .col2 {
    display: block
  }
}

.sec .sec06--interview__field .col2 figure {
  width: 45%
}

@media (max-width: 750px) {
  .sec .sec06--interview__field .col2 figure {
    width: 100%
  }

  .sec .sec06--interview__field .col2 figure img {
    width: 100%
  }
}

.sec .sec06--interview__field__text {
  width: 50%;
  margin-top: 60px
}

@media (max-width: 750px) {
  .sec .sec06--interview__field__text {
    width: 100%;
    margin-top: 30px;
    margin-bottom: 45px;
    margin-bottom: 4.5rem
  }
}

.sec .sec07--txt {
  text-align: center;
  font-size: 1.75rem;
  font-weight: bold;
  margin-bottom: 20px;
}

@media (max-width: 750px) {
  .sec sec07--txt {
    font-size: 1.2rem;
    margin-bottom: 10px;
  }  
}

.sec .sec07--usagefee {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between
}

@media (max-width: 750px) {
  .sec .sec07--usagefee {
    display: block
  }
}

.sec .sec07--usagefee__plan {
  width: 32.5%
}

@media (max-width: 750px) {
  .sec .sec07--usagefee__plan {
    width: 100%;
    margin-bottom: 30px;
    margin-bottom: 3rem
  }

  .sec .sec07--usagefee__plan:last-of-type {
    margin-bottom: 0px;
    margin-bottom: 0rem
  }
}

.sec .sec07--usagefee__plan .title {
  padding: 25px 0;
  padding: 2.5rem 0;
  font-size: 25px;
  font-size: 2.5rem;
  font-weight: bold;
  text-align: center;
  color: #fff;
  background-color: #00c7ce
}

@media (max-width: 1100px) {
  .sec .sec07--usagefee__plan .title {
    padding: 10px 0;
    padding: 1rem 0;
    font-size: 18px;
    font-size: 1.8rem
  }
}

.sec .sec07--usagefee__plan__contents {
  padding: 22.5px 18px;
  padding: 2.25rem 1.8rem;
  border: 2px solid #00c7ce;
  background-color: #fff
}

.sec .sec07--usagefee__plan__contents .text {
  padding-bottom: 25px;
  padding-bottom: 2.5rem;
  text-align: center
}

.sec .sec07--usagefee__plan__contents .text strong {
  display: block;
  font-size: 35px;
  font-size: 3.5rem;
  line-height: 1.5;
  color: #fd9828;
}

@media (max-width: 1100px) {
  .sec .sec07--usagefee__plan__contents .text strong {
    font-size: 25px;
    font-size: 2.5rem
  }
}

@media (max-width: 750px) {
  .sec .sec07--usagefee__plan__contents .text strong {
    font-size: 35px;
    font-size: 3.5rem
  }
}

.sec .sec07--usagefee__plan__contents .text strong.afterprice {
  font-size: 40px;
  font-size: 4.2rem;
  margin-left: 15px;
  margin-left: 1.5rem;
  color: #f55044;
}

@media (max-width: 1300px) {
  .sec .sec07--usagefee__plan__contents .text strong.afterprice {
    margin-left: 0;
    margin-left: 0;
    font-size: 36px;
    font-size: 3.6rem;
  }
}

@media (max-width: 960px) {
  .sec .sec07--usagefee__plan__contents .text strong.afterprice {
    font-size: 22px;
    font-size: 2.25rem;
  }
}

@media (max-width: 750px) {
  .sec .sec07--usagefee__plan__contents .text strong.afterprice {
    font-size: 32px;
    font-size: 3.2rem;
  }
}

.sec .sec07--usagefee__plan__contents .text strong span {
  display: inline-block;
  margin-left: 10px;
  margin-left: 1rem;
  font-weight: bold
}

.sec .sec07--usagefee__plan__contents .text strong.afterprice span {
  font-size: 14px;
  margin-left: 5px;
  margin-left: 0.5rem;
}

@media (max-width: 1100px) {
  .sec .sec07--usagefee__plan__contents .text strong.afterprice span {
    font-size: 12px;
  }
}

.sec .sec07--usagefee__plan__contents .text span {
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: bold;
  color: #2e2e2e
}

.sec .sec07--usagefee__plan__month {
  border-bottom: 2px solid #d9f7f8
}

.sec .sec07--usagefee__plan__month.text strong {
  margin-left: 30px;
  margin-left: 3rem
}

.sec .sec07--usagefee__plan__month.text .before {
  display: block;
  margin-left: 18px;
  margin-left: 1.8rem;
  font-size: 25px;
  font-size: 2.5rem;
  line-height: 1;
  margin-top: 10px;
  margin-bottom: 20px;
  position: relative;
}

@media (max-width: 1100px) {
  .sec .sec07--usagefee__plan__month.text .before {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

.sec .sec07--usagefee__plan__month.text .year {
  margin-left: 12px;
  margin-left: 1.2rem;
}

.sec .sec07--usagefee__plan__month.text .before,
.sec .sec07--usagefee__plan__month.text .before span {
  color: #9e9e9e;
}

.sec .sec07--usagefee__plan__month.text .before .yen {
  font-size: 10px;
  margin-left: 2px;
}

.sec .sec07--usagefee__plan__month.text .before::after {
  transform: rotate(225deg);
  position: absolute;
  right: 50%;
  bottom: -15px;
  content: '';
  display: block;
  width: 12px;
  height: 12px;
  border-top: 4px solid #00c7ce;
  border-left: 4px solid #00c7ce;
}

@media (max-width: 750px) {
  .sec .sec07--usagefee__plan__month.text .before::after {
    border-top: 3px solid #00c7ce;
    border-left: 3px solid #00c7ce;
  }
}

.sec .sec07--usagefee__plan__keyword {
  border-bottom: 2px solid #d9f7f8
}

.sec .sec07--usagefee__plan__keyword.text {
  padding-top: 25px;
  padding-top: 2.5rem;
  padding-bottom: 10px;
  padding-bottom: 1rem
}

.sec .sec07--usagefee__plan__keyword.text strong {
  margin-left: 70px;
  margin-left: 7rem
}

.sec .sec07--usagefee__plan__download {
  margin-top: 35px;
  margin-top: 3.5rem;
  margin-bottom: 10px;
  margin-bottom: 1rem
}

@media (max-width: 750px) {
  .sec .sec07--usagefee__plan__download {
    margin-top: 25px;
    margin-top: 2.5rem
  }
}

.sec .sec07--usagefee__plan__download a {
  padding: 15px 0;
  padding: 1.5rem 0;
  font-size: 14px;
  font-size: 1.4rem
}

@media (max-width: 1100px) {
  .sec .sec07--usagefee__plan__download a {
    font-size: 12px;
    font-size: 1.2rem
  }
}

.sec .sec07--usagefee__plan__download a:after {
  content: "";
  display: none
}

.sec .sec07--usagefee__link {
  margin-top: 47.5px;
  margin-top: 4.75rem;
  font-size: 17.5px;
  font-size: 1.75rem;
  text-align: center
}

@media (max-width: 750px) {
  .sec .sec07--usagefee__link {
    text-align: left;
  }
}

.sec .sec07--usagefee__link a {
  display: inline-block;
  font-weight: bold;
  color: #2e2e2e
}

@media (max-width: 750px) {
  .sec .sec07--usagefee__link a {
    font-size: 15px;
    font-size: 1.5rem
  }
}

@media (max-width: 750px) {
  .sec .sec07--usagefee__link a {
    font-size: 12px;
    font-size: 1.2rem
  }
}

.sec .sec07--usagefee__link a:hover {
  opacity: .8
}

.sec .sec07--usagefee__link a span {
  position: relative;
  font-weight: bold
}

.sec .sec07--usagefee__link a span:after {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 0;
  display: inline-block;
  width: 100%;
  height: 1px;
  background-color: #2e2e2e
}

@media (max-width: 750px) {
  .sec .sec07--usagefee__link a span:after {
    display: none;
  }
}

.sec07--notes {
  margin-top: 20px;
}

.sec07--notes li {
  text-indent: -1.5em;
  padding-left: 1.5em;
  margin-bottom: 5px;
}

.sec07--notes li::before {
  content: "※";
  margin-right: 0.5em;
}

.sec .form--title {
  font-size: 30px;
  font-size: 3rem
}

@media (max-width: 1100px) {
  .sec .form--title {
    font-size: 25px;
    font-size: 2.5rem
  }
}

@media (max-width: 750px) {
  .sec .form--title {
    padding: 0 15px;
    font-size: 20px;
    font-size: 2rem
  }
}

.sec .sec08--contact {
  max-width: 725px;
  margin: 0 auto
}

.sec .sec08--contact .contact__field {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 20px;
  margin-bottom: 2rem
}

@media (max-width: 750px) {
  .sec .sec08--contact .contact__field {
    display: block
  }
}

.sec .sec08--contact .contact__field .label {
  width: 160px;
  margin-top: 17px
}

@media (max-width: 750px) {
  .sec .sec08--contact .contact__field .label {
    width: 100%
  }
}

.sec .sec08--contact .contact__field .label .field-label {
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: bold;
  letter-spacing: 1.5px
}

@media (max-width: 750px) {
  .sec .sec08--contact .contact__field .label .field-label {
    font-size: 14px;
    font-size: 1.4rem
  }
}

.sec .sec08--contact .contact__field .input {
  width: 550px
}

@media (max-width: 750px) {
  .sec .sec08--contact .contact__field .input {
    width: 100%
  }
}

.sec .sec08--contact .contact__field .input input[type="text"],
.sec .sec08--contact .contact__field .input input[type="tel"],
.sec .sec08--contact .contact__field .input input[type="email"],
.sec .sec08--contact .contact__field .input textarea {
  width: 100%;
  padding: 17.5px 20px;
  font-size: 12.5px;
  font-size: 1.25rem;
  letter-spacing: 1.25px;
  border: none;
  background-color: #eee
}

.sec .sec08--contact .contact__field .input textarea {
  min-height: 135px;
  min-height: 13.5rem;
  resize: vertical;
  -webkit-transition: 0.3s;
  transition: 0.3s
}

.sec .sec08--contact .contact__field .input .col2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between
}

.sec .sec08--contact .contact__field .input .col2 input {
  width: 49.07407%
}

.sec .sec08--contact .contact__field .input .errormsg {
  display: none;
  font-size: 12px;
  font-size: 1.2rem;
  color: #e91d63
}

.sec .sec08--contact .contact__submit {
  margin-top: 50px;
  margin-top: 5rem
}

@media (max-width: 750px) {
  .sec .sec08--contact .contact__submit {
    margin-top: 25px;
    margin-top: 2.5rem
  }
}

.sec .sec08--contact .contact__submit .input {
  /* margin-left: 22.06897%*/
  width: 305px;
  margin: auto;
}

@media (max-width: 750px) {
  .sec .sec08--contact .contact__submit .input {
    margin-left: 0;
    width: auto;
  }
}

.sec .sec08--contact .contact__submit input[type="submit"] {
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 305px;
  padding: 15px;
  padding: 1.5rem;
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: bold;
  cursor: pointer;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  text-align: center;
  letter-spacing: 1.5px;
  color: #fff;
  border: none;
  border: 1px solid transparent;
  outline: none;
  background: #00c7ce;
  -webkit-box-shadow: 0px 4px 0 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0px 4px 0 0 rgba(0, 0, 0, 0.1);
  -webkit-text-size-adjust: 100%;
  -webkit-appearance: none
}

@media (max-width: 750px) {
  .sec .sec08--contact .contact__submit input[type="submit"] {
    width: 100%
  }
}

@media screen and (min-width: 750px) {
  .sec .sec08--contact .contact__submit input[type="submit"]:hover {
    -webkit-transform: translateY(4px);
    transform: translateY(4px);
    -webkit-box-shadow: none;
    box-shadow: none
  }
}

.sec .sec08--contact .contact__submit input[type="submit"] input[type="submit"]:disabled {
  cursor: not-allowed;
  color: #9c9c9c;
  background: #d6d6d6;
  -webkit-box-shadow: none;
  box-shadow: none
}

.sec .sec08--contact .contact__submit input[type="submit"] input[type="submit"]:focus {
  outline: none
}

.sec .sec08--contact .contact__submit .text {
  margin-top: 20px;
  margin-top: 2rem;
  /*margin-left: 22.06897%;*/
  text-align: center;
  font-size: 12.4px;
  font-size: 1.24rem;
  letter-spacing: 1.24px
}

.sec .sec08--contact .contact__submit .text.agree {
  margin-top: 10px;
  margin-top: 1rem;
}

@media (max-width: 750px) {
  .sec .sec08--contact .contact__submit .text {
    margin-left: 0;
    text-align: center
  }
}

@media (max-width: 320px) {
  .sec .sec08--contact .contact__submit .text {
    font-size: 11px;
    font-size: 1.1rem
  }
}

.sec .sec08--contact .contact__submit .text a {
  position: relative;
  color: #3f3f3f
}

.sec .sec08--contact .contact__submit .text a:after {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 0;
  display: inline-block;
  width: 100%;
  height: 1px;
  background-color: #2e2e2e
}

.sec .sec08--contact .contact__submit .text a:hover {
  opacity: .8
}

.footer {
  padding: 25px 0;
  padding: 2.5rem 0;
  background-color: #f4f4f4;
  color: #222;
}

.footer .inner {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-around;
  align-items: center;
}

footer .companydate img {
  display: block;
}

footer .logo {
  max-width: 200px;
  margin-bottom: 10px;
}

footer small {
  text-align: right;
}

.copyright {}

@media (max-width: 750px) {
  .footer {
    padding: 20px 0;
    padding: 2rem 0
  }

  footer .logo {
    max-width: 200px;
    margin: auto;
    margin-bottom: 10px;
  }

  .footer .inner {
    display: inherit;
    text-align: center;
  }
}

.footer p {
  font-size: 12.39px;
  text-align: center;
  letter-spacing: 1.24px;
  color: #222
}

/*# sourceMappingURL=../sourcemaps/style.css.map */


.sec .sec08--contact .select_field .label {
  width: 206px;
}

.selectbox {
  display: block;
  width: 100%;
  position: relative;
}

.headSelect {
  width: 72%;
}

.selectbox::before {
  position: absolute;
  top: 18px;
  right: 12px;
  width: 0;
  height: 0;
  padding: 0;
  content: '';
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid #a7a7a7;
  pointer-events: none;
  z-index: 1;
}

.selectbox select {
  padding: 0px 10px;
  -webkit-appearance: none;
  width: 100%;
  font-size: 16px;
  border-radius: 3px;
  position: relative;
  line-height: 38px;
  border-color: #cecfd1;
  background: #ffffff;
  height: 40px;
}

.select_field select {
  width: 97%;
}

.select_field .selectbox::before {
  position: absolute;
  top: 18px;
  right: 35px;
  width: 0;
  height: 0;
  padding: 0;
  content: '';
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid #a7a7a7;
  pointer-events: none;
  z-index: 1;
}

@media (max-width: 750px) {
  .select_field select {
    width: 100%;
  }
}


.consent {
  width: auto;
  border: 1px solid #ddd;
  border-radius: 10px;
  margin: 60px auto 0;
  padding: 15px 5px 15px 15px;
  background: #ffffff;
}

.consent>div {
  overflow-y: scroll;
  max-height: 245px;
  font-size: 16px;
  line-height: 1.4;
}

.consent>div dl {
  margin: 10px 0;
}

.consent>div dt {
  font-weight: bold;
  padding-bottom: 5px;
}

.consent>div dd {
  padding-bottom: 10px;
}

/* YEXT */
.sec--inner.yext {
  text-align: center;
  margin-bottom: 60px;
}

.sec--inner.yext p {
  margin-bottom: 2.75rem;
}

.bg-orange {
  background-color: #fff9f1;
}


/* cookie同意のスタイル設定 */
#cookieConsentPopup {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgba(50,50,58,0.9);
  color: white;
  display: flex;
  font-size: 13px;
  justify-content: space-between;
  align-items: center;
  z-index: 1000;
  line-height: 1.2;
}

#cookieConsentPopup .cookie_wrap{
padding: 15px 30px;
text-align: center;
width: 100%;
}

#cookieConsentPopup button {
  background-color: #00a99d;
  border: none;
  border-radius: 3px;
  font-size: 13px;
  padding: 8.5px 10px;
  margin: 0 0 0 10px;
  color: white;
  cursor: pointer;
}

@media screen and (max-width: 1140px) {
#cookieConsentPopup button{
  display: block;
  margin: 4px auto 0;
}
}

input[type=checkbox] {
  appearance: auto;
  -webkit-appearance: auto;
  -ms-transform: scale(1.2, 1.2);
  -webkit-transform: scale(1.2, 1.2);
  transform: scale(1.2, 1.2);
  margin-right: 8px;
}

.checkboxArea a{
  text-decoration: underline;
  color: #303030;
}