<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "UTF-8";
@media (max-width: 768px) {
  .only-pc {
    display: none !important;
  }
}

@media (min-width: 769px) {
  .only-sp {
    display: none !important;
  }
}

/* ----------------------------------------
 	reset
 ---------------------------------------- */
html, body, div, span, iframe,
h1, h2, h3, h4, h5, h6, p,
a, img,
dl, dt, dd, ol, ul, li,
strong, sub, sup, i, small, address, time,
fieldset, form, .label, legend, hr,
table, caption, tbody, tfoot, thead, tr, th, td,
header, footer, nav, section, article, aside,
figure, figcaption, canvas, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-style: normal;
  font-size: 100%;
  vertical-align: baseline;
}

article, aside, figure, figcaption,
footer, header, nav, section {
  display: block;
}

*,
*:before,
*:after {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -ms-box-sizing: border-box;
}

html {
  overflow-y: scroll;
  height: 100%;
  min-height: 100%;
}

body {
  height: 100%;
  min-height: 100%;
}

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

input, select, textarea, button {
  margin: 0;
  padding: 0;
  font-size: 100%;
  font-family: "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
}

input[type="submit"],
input[type="button"],
button {
  cursor: pointer;
}

sup {
  vertical-align: top;
  line-height: 1.2;
}

a {
  color: #666;
  text-decoration: none;
  -webkit-transition: 0.15s ease;
  -moz-transition: 0.15s ease;
  -ms-transition: 0.15s ease;
  -o-transition: 0.15s ease;
  transition: 0.15s ease;
}
a img {
  -webkit-transition: 0.25s opacity ease;
  -moz-transition: 0.25s opacity ease;
  -ms-transition: 0.25s opacity ease;
  -o-transition: 0.25s opacity ease;
  transition: 0.25s opacity ease;
}
@media (min-width: 769px) {
  a:hover {
    text-decoration: none;
  }
}

img {
  vertical-align: bottom;
}

.clearfix:after {
  content: '';
  display: block;
  clear: both;
}

body {
  position: relative;
  width: 100%;
  color: #1c1c1c;
  font-family: "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
  font-size: 14px;
  line-height: 24px;
  -webkit-text-size-adjust: 100%;
}
@media (min-width: 769px) {
  body {
    font-size: 14px;
    line-height: 1.5;
  }
}

/* フォント
------------------------------ */
@font-face {
  font-family: 'entypo';
  src: url("../fonts/entypo.eot");
  src: url("../fonts/entypo.eot?#iefix") format("embedded-opentype"), url("../fonts/entypo.woff") format("woff"), url("../fonts/entypo.ttf") format("truetype"), url("../fonts/entypo.svg#entypo") format("svg");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'ADAM.CG PRO';
  src: url("../fonts/ADAM.CG PRO.eot");
  src: local("☺"), url("../fonts/ADAM.CG PRO.woff") format("woff"), url("../fonts/ADAM.CG PRO.ttf") format("truetype"), url("../fonts/ADAM.CG PRO.svg") format("svg");
  font-weight: normal;
  font-style: normal;
}
* {
  box-sizing: border-box;
}

a {
  -webkit-transition: all 200ms;
  -moz-transition: all 200ms;
  -o-transition: all 200ms;
  transition: all 200ms;
  color: #e60013;
}

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

p {
  margin: 0 0 1em 0;
}

label {
    cursor: pointer;
    cursor: hand;
}
.label {
  font-weight: normal;
}

a, button, input, .label, button, li {
  -webkit-tap-highlight-color: transparent;
}

input:focus, select:focus, button:focus, button:focus, textarea:focus {
  outline: 1px dotted #999;
}

input {
  -webkit-appearance: none;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  text-overflow: '';
  text-indent: 0.01px;
  text-overflow: "";
  background-image: url("../img/arrow-bd.png");
  background-position: 0.667em center;
  background-repeat: no-repeat;
  background-size: 0.75em;
}

select::-ms-expand {
  display: none;
}


/*  --------------------------------
  Layout
--------------------------------*/
header,
.footer_inner {
  position: relative;
  display: block;
  margin: 0 auto;
  width: 980px;
  text-align: left;
}

/* --------------------------------
  Header
-------------------------------- */
header {
  position: relative;
  height: 128px;
}
header a {
    transition: 0s;
}
header .logo {
  position: relative;
  display: block;
  padding: 25px 0 39px 0;
  width: 360px;
  height: 64px;
}
header address {
  position: absolute;
  margin: auto;
  top: 0;
  right: 0;
  bottom: 0;
  height: 64px;
}
header address span {
  display: block;
  height: 20px;
  line-height: 20px;
}
.bold {
    font-weight: bold;
}

/* --------------------------------
  Footer
-------------------------------- */
footer {
  padding: 18px 0 32px 0;;
  color: #fff;
  background: #e60012;
}
footer a {
    transition: 0s;
}
footer .logo {
  display: block;
  width: 265px;
}
footer ul.menu {
  position: absolute;
  height: 30px;
  line-height: 30px;
  top: 10px;
  right: 0px;
}
footer ul.menu li {
  display: inline;
  margin-left: 8px;
  padding-left: 12px;
  background: url(../img/arrow-wh-s.png) 0 center no-repeat;
}
footer ul.menu a {
  color: #fff;
}
footer ul.menu a.link_icon {
  background: url(../img/link_icon.png) right top no-repeat;
  padding-right: 15px;
}
footer ul.menu a:hover {
  color: #ccc;
}
footer ul.license {
  /*
  		li{
  			box-sizing: border-box;
  			display: block;
  			float: left;
  			width: 25%;
  			padding: 0 10px 0 0;
  			top: 0;
  			font-size: 10px;
  		}
  */
}
footer ul.license li {
  box-sizing: border-box;
  display: block;
  float: left;
  width: 100%;
  padding: 0 20px 0;
  top: 0;
  font-size: 10px;
  text-align: center;
}
footer .branch_office {
  margin: 20px 0 0 -8px;
  font-size: 10px;
}
footer .branch_office div {
  float: left;
  margin: 0 0 20px 8px;
  padding-left: 8px;
  width: 229px;
  border-left: #fff solid 2px;
}
footer .branch_office div .tel,
footer .branch_office div .fax {
  margin-right: 8px;
  padding-left: 14px;
  background: url(./images/ic_tel.png) 0 2px no-repeat;
}
footer .branch_office div .fax {
  background: url(./images/ic_fax.png) 0 2px no-repeat;
}








@media screen and (max-width: 768px) {

  header, .footer_inner {
    width: 100%;
    text-align: center;
  }

  header {
    height: auto;
    box-sizing: border-box;
  }
  header .logo,
  header ul,
  header address {
    position: relative;
    margin: 0 auto;
  }
  header #menu-bar {
    width: 100%;
    top: 0;
    left: 0;
    text-align: center;
    z-index: 30;
    padding: 5px 0;
    background: #fff;
    box-shadow: 0 1px 1px #f3f3f3;
  }

  header .logo {
    margin: 10px auto;
    padding: 0;
    width: 225px;
    height: 40px;
  }
  header address {
    display: none;
  }
  header .fleft,
  header .fright {
    float: none;
  }


  footer {
    padding: 18px;
    /*
    		ul.license{
    			text-align: left;
    
    			li{
    				float: none;
    				width: 100%;
    				margin-bottom: 10px;
    			}
    		}
    */
  }
  footer .logo {
    display: block;
    margin: 0 auto 20px auto;
    width: 265px;
  }
  footer ul.menu {
    position: relative;
    margin-bottom: 20px;
    height: auto;
    top: 0;
    line-height: 24px;
    text-align: left;
  }
  footer ul.menu li {
    display: block;
    margin-left: 0;
  }
  footer ul.menu a {
    color: #fff;
  }
  footer ul.menu a:hover {
    color: #ccc;
  }
  footer ul.license {
    text-align: center;
  }
  footer .branch_office {
    margin: 20px 0 0 -8px;
    font-size: 10px;
  }
  footer .branch_office div {
    float: none;
    margin: 0 0 20px 8px;
    padding-left: 8px;
    width: auto;
    text-align: left;
    border-left: #fff solid 2px;
  }
}
  

/* common parts / common class
------------------------------ */
.mt-30 {
  margin-top: 30px;
}

.mb-2em {
  margin-bottom: 2em;
}

.red {
  color: #e60013;
}

.btn {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  border-radius: 0;
  border: 0;
  margin: 0;
  padding: 0;
  background: transparent;
  box-sizing: border-box;
  vertical-align: middle;
  color: #1c1c1c;
  font-size: inherit;
  font-family: "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
  background-color: #161616;
  text-align: center;
  border-radius: 5px;
  margin: 0 auto 30px;
  display: block;
  color: #fff;
  text-decoration: none;
}
.btn.btn-primary {
  background-color: #e60013;
  font-weight: bold;
}
.btn.btn-secondary {
  border: 2px solid #e60013;
  background-color: #fff;
  color: #1c1c1c;
  font-weight: bold;
}
.btn.btn-s {
  display: inline-block;
  width: auto;
  height: auto;
  margin: 0;
  padding: 0 1em;
  border: 2px solid #e60013;
  background-color: #fff;
  border-radius: 1.1em;
  color: #1c1c1c;
  font-size: 100%;
  line-height: 2;
  font-weight: bold;
}

.btns {
  text-align: center;
  margin-bottom: 20px;
}
.btns .btn {
  margin-bottom: 15px;
}

table.confirm {
    margin: auto;
    margin-bottom: 60px;
}

table.confirm th, table.confirm td{
    padding: 5px 20px;
}

ul.confirm {
    text-align: center;
    width: 540px;
    margin: auto;
}
ul.confirm li {
    display: table-cell;
    padding: 0 10px;
}

@media (min-width: 769px) {
  .btn-primary {
    transition: .2s background-color ease;
  }
  .btn-primary:hover {
    background-color: #ff1a2d;
  }

  .btn-secondary {
    transition: .2s border-color ease, .2s color ease;
  }
  .btn-secondary:hover {
    border-color: #ff1a2d;
    color: #ff1a2d;
  }
}
.table {
  margin-bottom: 20px;
  border-collapse: collapse;
}
@media (max-width: 768px) {
  .table {
    width: 100%;
  }
}
.table th {
  text-align: left;
  padding-right: 20px;
  min-width: 110px;
}
.table td {
  padding: 10px 20px 10px 0;
  min-width: 120px;
}
.table td:last-child {
  padding-right: 0;
}
.table.table-confirm th {
  padding: 10px 20px;
  font-weight: bold;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .table.table-confirm th,
  .table.table-confirm td {
    display: block;
  }
  .table.table-confirm th {
    padding: 0.5em 0 0;
  }
  .table.table-confirm td {
    padding: 0 0 0.5em;
  }
}

.pull-left {
  float: left;
}
ul.input-group li {
    display: table-cell;
    width: 150px;
}
ul.input-group li.m {
    width: 210px;
}
.input-group:after {
  content: '';
  display: block;
  clear: both;
}
.input-group .pull-left {
  margin-right: 20px;
}
.input-group .input-50 {
  width: 48.5%;
  margin-right: 1.5%;
}
.input-group .input-50:last-child {
  margin-right: 0;
  float: right;
}
.input-group span.symbol {
  font-weight: bold;
  width: 0.577em;
  display: inline-block;
  text-align: center;
}

.input-note {
  margin-top: -0.75em;
  padding-bottom: 10px;
}
.input-note.small {
  color: #999;
  font-size: 0.9em;
}

.check-01 input {
  display: none;
}
.check-01 input + span {
  display: inline-block;
  padding: 2px 0 0 2em;
  text-indent: -2em;
  cursor: pointer;
  font-weight: normal;
}
.check-01 input + span:before {
  content: '';
  display: inline-block;
  width: 1.308em;
  height: 1.308em;
  margin: -0.154em 0.654em 0 0;
  border-radius: 50%;
  background-image: url("../img/ico-check-w.png");
  background-color: #e5e5e5;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 0.77em;
  vertical-align: middle;
  text-indent: 0;
}
.check-01 input + span .note {
  font-size: 90%;
}
.check-01 input:checked + span:before {
  background-color: #d01f1f;
}

.check-01:focus span {
  border: 1px dotted #666;
}

.radio-01 input {
  display: none;
}
.radio-01 input + span {
  display: inline-block;
  padding: 2px 0 0 0;
  cursor: pointer;
}
.radio-01 input + span:before {
  content: '';
  display: inline-block;
  width: 1.308em;
  height: 1.308em;
  margin: -0.154em 0.654em 0 0;
  border-radius: 50%;
  background-image: url("../img/ico-radio-w.svg");
  background-color: #e5e5e5;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 0.6em;
  vertical-align: middle;
}
.radio-01 input:checked + span:before {
  background-color: #d01f1f;
}




.radio-group {
    margin-right: 20px;
}
.radio-input,
.radio-text {
    padding-left: 20px;
    position:relative;
}

.radio-input {
    display: none;
}
.radio-text {
    transition:.4s;
}
.radio-input:checked + .radio-text {
    color: #de3e47;
}
.radio-text::before {
    content: "";
    display: block;
    position: absolute;
    top: 1px;
    left: 1px;
    width: 15px;
    height: 15px;
    border-radius: 50%;
    z-index:-1;
    border: 3px solid #e0e0e0;
    box-sizing: border-box;
}
.radio-text::after {
  content: "";
  display: block;
  position: absolute;
  top: 1px;
  left: 1px;
  width: 15px;
  height: 15px;
  border-radius: 50%;
  background: #de3e47;
  transition:.4s;
  transform: scale(0,0);
}
.radio-input:checked + .radio-text::after {
  transform: scale(1,1);
  border-radius: 50%;
  background: #de3e47;
}









.notes {
  margin: 1em 0 1em 0;
  padding: 20px 20px;
  border: 1px solid #c3c3c3;
}
.notes .notes-heading {
  display: block;
  margin-top: 1.3em;
  margin-bottom: 0.65em;
  font-weight: bold;
}
.notes .notes-heading:first-child {
  margin-top: 0;
}
.notes li {
  line-height: 1.273em;
  margin-top: 0.45em;
  padding-left: 1em;
  text-indent: -1em;
}
.notes li:first-child {
  margin-top: 0;
}
.notes li:before {
  content: '・';
  text-indent: 0;
}
.notes .custom-numbering li:before {
  content: none;
}
.notes .no-mark li {
  padding-left: 0;
  text-indent: 0;
}
.notes .no-mark li:before {
  content: none;
}
.notes .small {
  font-size: 0.9em;
}
.notes + .form-footer {
  margin-top: 2em;
}

.info .info-heading {
  display: block;
  margin-top: 1.3em;
  margin-bottom: 0.5em;
  font-weight: bold;
}
.info .info-heading:first-child {
  margin-top: 0;
}
.info ul {
  margin-bottom: 1em;
}
.info li {
  line-height: 1.273em;
  margin-top: 0.45em;
  padding-left: 1em;
  text-indent: -1em;
}
.info li:first-child {
  margin-top: 0;
}
.info li:before {
  content: '・';
  text-indent: 0;
}
.info .no-mark li {
  padding-left: 0;
  text-indent: 0;
}
.info .no-mark li:before {
  content: none;
}
.info .note {
  font-size: 90%;
}

.term-view {
  border: 1px solid #c3c3c3;
  height: 10em;
  overflow: auto;
}
.term-view .text {
  padding: 15px;
}

.term-block {
  padding: 2em 0;
  border-top: 1px solid #c3c3c3;
  line-height: 1.5;
}
.term-block:first-child {
  padding-top: 0;
  border-top-width: 0;
}
.term-block .term-heading {
  margin-bottom: 0.5em;
  padding: 0.25em 0.5em;
  background-color: #999;
  color: #fff;
  font-size: 1.2em;
  font-weight: normal;
}
.term-block .term-content {
  padding: 0 0.75em;
}
.term-block h2 {
  margin: 1.5em 0 1em;
  border-bottom: 1px solid #c3c3c3;
  font-size: 1.2em;
}
.term-block h3 {
  margin: 1em 0 0.5em;
  font-size: 0.9em;
}
.term-block h4, .term-block p {
  margin-bottom: 0.5em;
  font-size: 0.9em;
  font-weight: normal;
}
.term-block ol, .term-block ul {
  margin-bottom: 1em;
  font-size: 0.9em;
}
.term-block ol li {
  list-style: decimal;
  margin-left: 2.5em;
  padding-left: 0;
  text-indent: 0;
}
.term-block ol li:before {
  content: none;
}
.term-block .text-center {
  text-align: center;
}
.term-block .text-center h2 {
  border-bottom: none;
}
.term-block .text-right {
  text-align: right;
}

.error-abstract {
  margin: 0 0 40px;
  padding: 1em;
  border: 1px solid #e60013;
  background: #ffe6e8;
  text-align: center;
  color: #e60013;
  font-size: 1.25em;
  font-weight: bold;
}

/* layout
------------------------------ */
body {
  min-width: 900px;
}

.container {
  width: 900px;
  margin: 0 auto;
  position: relative;
}

#contents {
  min-height: 500px;
}

#header {
  position: relative;
}
#header .dropdown button {
  position: absolute;
  background-image: url("../img/ico-menu.svg");
  background-repeat: no-repeat;
  background-color: transparent;
  background-position: center;
  background-size: contain;
  text-indent: -9999px;
  right: 1.25em;
  top: 0;
  border: 0;
  width: 3.125em;
  height: 2.5em;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
#header .dropdown.open button {
  background-image: url("../img/ico-close.svg");
}
#header .dropdown .dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  width: 100%;
  min-width: 160px;
  padding: 0;
  margin: 0;
  text-align: left;
  border-bottom: 2px solid #fff;
  background-color: #ffffff;
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
}
#header .dropdown .nav {
  font-weight: bold;
}
#header .dropdown .nav-01 {
  text-align: center;
  padding-top: 1.25em;
  padding-bottom: 1.25em;
}
#header .dropdown .nav-01 a {
  display: inline-block;
  padding: 0.3em;
  font-size: 2em;
  color: #000;
  text-decoration: none;
}
#header .dropdown .nav-01 a.active {
  border-bottom: 0.09375em solid #009039;
}
#header .dropdown .nav-01 li.login, #header .dropdown .nav-01 li.logout {
  padding: 1em 0;
}
#header .dropdown .nav-01 .login-btn,
#header .dropdown .nav-01 .logout-btn {
  display: block;
  width: 8.57em;
  height: 2.143em;
  margin: 0 auto;
  padding: 0;
  background-color: #a60609;
  border-radius: 1.786em;
  color: #fff;
  line-height: 2.143em;
  font-size: 1.75em;
}
#header .dropdown .nav-01 .login-btn:before,
#header .dropdown .nav-01 .logout-btn:before {
  content: "";
  background-image: url("../img/arrow-w.png");
  background-repeat: no-repeat;
  background-position: left center;
  background-size: contain;
  width: 0.857em;
  height: 0.786em;
  display: inline-block;
  margin-right: 0.375em;
  margin-left: -0.607em;
}
#header .dropdown .nav-01 .logout-btn {
  background-color: #999;
}
#header .dropdown .nav-02 {
  background-color: #e60013;
  padding: 1em 2.5em 1em;
}
#header .dropdown .nav-02 a {
  display: inline-block;
  padding: 0.5em 0 0.5em 1.18em;
  background-image: url("../img/arrow-w.png");
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 0.857em;
  color: #fff;
  font-size: 1.75em;
  text-decoration: none;
}
#header .dropdown .nav-02 a.active {
  opacity: 0.6;
}

#footer {
  background-color: #f6f6f6;
}
#footer .page-to-top {
  width: 6em;
  margin: 0 auto;
}
#footer .copyright {
  color: #999;
  font-weight: bold;
}

/* content
------------------------------ */
.main-content .heading {
  background-image: url("../img/top-bg-title.png");
  color: #fff;
  text-align: center;
}

.steps-section .steps {
  border-radius: 5px;
  margin-bottom: 2em;
}
.steps-section .steps:after {
  content: '';
  display: block;
  clear: both;
}
.steps-section .steps li {
  text-align: center;
  float: left;
  font-weight: bold;
  position: relative;
  padding: 0 1em;
  -webkit-transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  transition: all 300ms ease;
  overflow: hidden;
}
.steps-section .steps li:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  background-image: url("../img/step-before.png");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  width: 1em;
}
.steps-section .steps li:after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  background-image: url("../img/step-after.png");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  width: 1em;
  z-index: 1;
}
.steps-section .steps li div {
  text-decoration: none;
  color: #000;
  position: relative;
  display: block;
  background-color: #f1f1f1;
  background-position: center center;
}
.steps-section .steps li .txt-step {
  font-family: "ADAM.CG PRO";
  display: block;
  font-weight: normal;
}
.steps-section .steps li .txt-content {
  display: block;
  margin: 0 -0.9em;
}
.steps-section .steps li:first-child {
  border-radius: 5px 0 0 5px;
  margin-left: 0;
  padding-left: 0;
}
.steps-section .steps li:first-child:before {
  display: none;
}
.steps-section .steps li:first-child .txt-content {
  margin: 0;
}
.steps-section .steps li:last-child {
  border-radius: 0 5px 5px 0;
  padding-right: 0;
}
.steps-section .steps li:last-child:after {
  display: none;
}
.steps-section .steps li:last-child .txt-content {
  margin: 0;
}
.steps-section .steps li.current {
  color: #fff;
}
.steps-section .steps li.current:before {
  background-image: url("../img/step-before-current.png");
}
.steps-section .steps li.current:after {
  background-image: url("../img/step-after-current.png");
}
.steps-section .steps li.current div {
  color: #fff;
  background-image: url("../img/top-bg-title.png");
}
.steps-section .steps li.current span:after {
  background-position: right top;
}
.steps-section .heading-01 {
  background-image: url("../img/sub-title-bg.png");
  background-repeat: repeat;
  color: #fff;
}
.steps-section .heading-01 span {
  background-color: #dd0012;
  position: relative;
  top: -0.05em;
}
.steps-section .heading-02 {
  background: #e8e8e8;
}
.steps-section .label {
  font-weight: bold;
  display: block;
}
.steps-section .label .required {
  display: inline-block;
  margin-left: 0.5em;
  padding: 0 0.4em;
  color: #e60013;
  font-size: 0.8em;
  line-height: 1.6em;
  border-radius: 0.4em;
  background-color: #ffe6e8;
  vertical-align: 0.1em;
}
.steps-section input, .steps-section select {
  padding-left: 0.833em;
  background-color: #f1f1f1;
  border: 1px solid #f1f1f1;
}
.steps-section input:focus, .steps-section select:focus {
  border: 1px solid #ccc;
}
.steps-section input {
  box-shadow: none;
}
.steps-section select {
  padding-left: 1.833em;
  padding-right: 0.5em;
}
.steps-section textarea {
  width: 100%;
  padding: 0.7083em;
  background-color: #f1f1f1;
  border: 1px solid #f1f1f1;
  box-shadow: none;
  font-weight: normal;
}
.steps-section textarea:focus {
  border: 1px solid #ccc;
}
.steps-section .input-150 {
  width: 6.25em;
}
.steps-section .chk-switch .chk-toggle {
  display: none;
}
.steps-section .chk-switch .chk-toggle + .label {
  display: block;
  position: relative;
  cursor: pointer;
  outline: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  padding: 0;
  width: 100%;
  -webkit-border-radius: 2em;
  -moz-border-radius: 2em;
  -ms-border-radius: 2em;
  -o-border-radius: 2em;
  border-radius: 2em;
  -webkit-transition: background 0.4s;
  -moz-transition: background 0.4s;
  -o-transition: background 0.4s;
  transition: background 0.4s;
  overflow: hidden;
}
.steps-section .chk-switch .chk-toggle + .label:before {
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background-color: #f1f1f1;
  -webkit-transition: background 0.4s;
  -moz-transition: background 0.4s;
  -o-transition: background 0.4s;
  transition: background 0.4s;
  display: block;
  position: absolute;
  content: "";
}
.steps-section .chk-switch .chk-toggle + .label:after {
  top: 0;
  left: 0;
  bottom: 0;
  width: 50%;
  background-color: #e60013;
  -webkit-transition: left 0.4s, background 0.4s;
  -moz-transition: left 0.4s, background 0.4s;
  -o-transition: left 0.4s, background 0.4s;
  transition: left 0.4s, background 0.4s;
  display: block;
  position: absolute;
  content: "";
}
.steps-section .chk-switch .chk-toggle + .label span {
  display: block;
  width: 50%;
  float: left;
  margin: 0;
  position: relative;
  z-index: 9;
  color: #fff;
  text-align: center;
  font-weight: normal;
}
.steps-section .chk-switch .chk-toggle + .label span:last-child {
  color: #000;
}
.steps-section .chk-switch .chk-toggle:checked + .label span:first-child {
  color: #000;
}
.steps-section .chk-switch .chk-toggle:checked + .label:after {
  left: 50%;
}
.steps-section .chk-switch .chk-toggle:checked + .label span {
  color: #fff;
}
.steps-section .chk-list,
.steps-section .radio-list {
  margin: 1.0625em 0 2em;
}
.steps-section .chk-list.horizontal li,
.steps-section .radio-list.horizontal li {
  display: inline-block;
  padding-right: 2em;
}
.steps-section .chk-list .label,
.steps-section .radio-list .label {
  font-weight: normal;
}
.steps-section .btn-search {
  margin-left: 0.7em;
  padding: 0 0.6em;
  background-color: transparent;
  border: 2px solid #e60013;
  border-radius: 2.308em;
  font-weight: bold;
}
.steps-section .btn-search:focus {
  border-color: #ff1a2d;
}
.steps-section .help a {
  text-decoration: none;
}
.steps-section select + .help {
  margin: -10px 0 0;
  padding: 0 0 10px;
}
.steps-section .forgot-pwd {
  text-align: center;
}
.steps-section .forgot-pwd a {
  text-decoration: none;
}
.steps-section .error input, .steps-section .error select, .steps-section .error textarea {
  border-color: #ffe6e8;
  background-color: #ffe6e8;
}
.steps-section .error input:focus, .steps-section .error select:focus, .steps-section .error textarea:focus {
  border-color: #ffb3b9;
}
.steps-section .error-message {
  margin: -10px 0 1.5em;
  color: #e60013;
  font-weight: bold;
}
.steps-section .socials img {
  margin-bottom: 1.55em;
}
.steps-section .links {
  font-size: 20px;
  border-top: 1px solid #c3c3c3;
}
.steps-section .links li {
  border-bottom: 1px solid #c3c3c3;
}
.steps-section .links a {
  position: relative;
  display: block;
  padding: 0.6em 2em 0.6em 1em;
  background-color: #f3f3f3;
  color: #1c1c1c;
  font-weight: bold;
  text-decoration: none;
}
.steps-section .links a:after {
  content: '';
  position: absolute;
  top: 50%;
  right: 1em;
  display: block;
  width: 0.5em;
  height: 0.5em;
  border-top: 1px solid #1c1c1c;
  border-right: 1px solid #1c1c1c;
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
}

.form-footer {
  padding: 10px 0 25px 0;
}
.account-form .form-footer {
  padding: 0;
}
.form-footer .btn {
  margin-bottom: 10px;
  border-radius: 1.5em;
}
.form-footer .btn.btn-row2 {
  line-height: 1.2;
}
.form-footer .btn .note {
  display: inline-block;
  font-size: 80%;
  line-height: 1;
  font-weight: normal;
}
.form-footer button.btn {
  height: 3em;
}
.form-footer a.btn {
  height: auto;
  padding: 0.9em 0;
  line-height: 1.2;
}
.form-footer .agree {
  margin: 0 0 2em;
  text-align: center;
}
.form-footer .agree .error {
  display: block;
  color: #e60013;
}
.form-footer .remind {
  margin: 20px 0;
  text-align: center;
}
.form-footer .footer-note {
  margin: 1em 0 0;
  font-size: 90%;
  text-align: center;
}
@media (max-width: 768px) {
  .form-footer p.footer-note {
    font-size: 1.2em;
  }
}
.form-footer + .notes {
  margin-top: 1.5em;
}

.contact-block {
  background-color: #009039;
  padding: 1.75em 7.143% 1.45em;
  margin: 0 -7.143%;
  color: #fff;
}
.contact-block .contact-link {
  display: block;
  background-color: #fff;
  border-radius: 2.5em;
  height: 2.5em;
  font-size: 1.5em;
  color: #009039;
  text-align: center;
  text-decoration: none;
  line-height: 2.5em;
  font-weight: bold;
  margin: 0 auto 1em;
  max-width: 560px;
}
.contact-block img {
  display: block;
  margin: 1.25em auto 1.69em;
}
.contact-block .img-tel {
  max-width: 20.8125em;
}
.contact-block .img-line {
  max-height: 3.75em;
}
.contact-block .logo-apple {
  float: left;
  margin: -1px 1.25em 0 0;
  max-width: 6.625em;
}
.contact-block .logo-apple + p {
  margin-left: 5.25em;
}

/* for PC
------------------------------ */
@media (min-width: 769px) {
  a:hover {
    opacity: 0.7;
  }

  .btn {
    width: 250px;
    font-size: 18px;
    line-height: 40px;
  }

  .check-01 {
    margin-bottom: 7px;
  }
  .check-01 input + span:before {
    margin-top: -4px;
  }

  #header {
    background-color: #d10002;
  }
  #header .top-header {
    height: 40px;
  }
  #header .top-header:after {
    content: '';
    display: block;
    clear: both;
  }
  #header .left-header {
    color: #fff;
    float: left;
  }
  #header .left-header .logo-rakunicos {
    display: inline-block;
    padding: 8px 16px;
    background: #fff;
    vertical-align: top;
  }
  #header .left-header .logo-rakunicos img {
    width: 133px;
  }
  #header .left-header .tagline {
    line-height: 40px;
    margin-left: 20px;
    font-size: 19px;
  }
  #header .left-header .title {
    line-height: 40px;
    font-size: 19px;
  }
  #header .logo-apple {
    display: inline-block;
    vertical-align: top;
    padding: 6px 0;
  }
  #header a.logo-apple:hover {
    opacity: 0.8;
  }
  #header .right-header {
    float: right;
    margin-right: 50px;
  }
  #header .dropdown .dropdown-menu {
    width: 200px;
    left: auto;
    right: 0;
    font-size: 50%;
  }
  #header .dropdown button {
    width: 28px;
    right: 0;
  }
  #header .dropdown .nav-01 {
    background: #f6f6f6;
  }
  #header .dropdown .nav-02 a {
    background-position: left 1.1em;
  }

  #footer {
    margin-top: 30px;
    padding: 37px 0 17px;
    text-align: left;
  }
  #footer .container {
    width: 100%;
    max-width: 1000px;
    padding: 0 10px;
  }
  #footer .page-to-top {
    text-align: center;
  }
  #footer .logo {
    min-height: 46px;
    margin-top: 34px;
  }
  #footer .logo-raku {
    width: 160px;
    height: auto;
    vertical-align: middle;
  }
  #footer .poweredby {
    vertical-align: middle;
    font-size: 10px;
    margin-left: 20px;
  }
  #footer .logo-apple {
    margin-top: -6px;
    margin-left: 2px;
    vertical-align: middle;
    width: 180px;
  }
  #footer .copyright {
    margin-top: -45px;
    float: right;
    font-size: 10px;
  }

  .main-content {
    padding-top: 50px;
  }
  .main-content .heading {
    font-size: 24px;
    border-radius: 3px;
    height: 45px;
    line-height: 45px;
    margin: 0 0 40px;
  }

  .steps-section .intro-txt {
    padding: 0 20px;
    font-size: 16px;
    margin-bottom: 30px;
  }
  .steps-section .heading-01 {
    font-size: 20px;
    height: 42px;
    line-height: 42px;
    padding: 0 15px;
    margin-bottom: 24px;
    border-radius: 3px;
  }
  .steps-section .heading-01 span {
    font-size: 18px;
    margin-left: 9px;
    padding: 2px 13px;
    border-radius: 3px;
  }
  .steps-section .heading-02 {
    font-size: 18px;
    height: 42px;
    line-height: 42px;
    padding: 0 15px;
    margin-bottom: 24px;
    border-radius: 3px;
  }
  .steps-section .inner {
    padding: 0 20px 15px;
  }
  .steps-section .inner &gt; select.input-m {
    margin-top: 12px;
    margin-bottom: 5px;
    padding-right: 25px;
  }
  .steps-section .label {
    font-size: 16px;
    margin-bottom: 8px;
  }
  .steps-section input, .steps-section select {
    height: 40px;
    line-height: 40px;
    font-size: 14px;
    border-radius: 5px;
  }
  .steps-section .input-xs {
    width: 90px;
  }
  .steps-section .input-s {
    width: 130px;
  }
  .steps-section .input-m {
    min-width: 150px;
  }
  .steps-section .input-l {
    width: 84%;
  }
  .steps-section .btn-search {
    height: 35px;
    line-height: 35px;
    font-size: 14px;
  }
  .steps-section .infor-form {
    margin: 28px 20px 5px;
  }
  .steps-section .input-group {
    margin-bottom: 30px;
  }
  .steps-section .input-group span {
    font-size: 14px;
  }
  .steps-section .input-group span.symbol {
    margin: 0 7px;
    font-size: 16px;
  }
  .steps-section .chk-switch {
    width: 302px;
    margin-top: 7px;
    margin-bottom: 28px;
  }
  .steps-section .chk-switch .chk-toggle + .label {
    height: 33px;
    margin-bottom: 15px;
  }
  .steps-section .chk-switch .chk-toggle + .label span {
    line-height: 33px;
    font-size: 13px;
  }
  .steps-section .chk-switch:last-child {
    margin-bottom: 0;
  }
  .steps-section .chk-list li {
    margin-bottom: 0;
  }
  .steps-section textarea {
    font-size: 14px;
    height: 138px;
    border-radius: 3px;
    margin-bottom: 15px;
  }
  .steps-section .socials {
    padding: 20px 0 10px;
    text-align: center;
    margin-left: -20px;
  }
  .steps-section .socials a {
    display: inline-block;
    margin: 0 14px;
  }
  .steps-section .steps {
    margin: 0 20px 2em;
  }
  .steps-section .steps li {
    padding: 0 1em;
    font-size: 18px;
    margin-left: -1.5%;
  }
  .steps-section .steps li:before {
    left: 0;
  }
  .steps-section .steps li:after {
    right: 0;
  }
  .steps-section .steps li div {
    padding: 24px 0;
  }
  .steps-section .steps li .txt-step {
    font-size: 19px;
    margin-bottom: 8px;
  }
  .steps-section .steps li .txt-step:after {
    margin-top: 8px;
  }
  .steps-section .steps li .txt-content br {
    display: none;
  }
  .steps-section .steps li.step-01 {
    width: 34%;
    margin-left: 0;
  }
  .steps-section .steps li.step-01 div {
    border-radius: 5px 0 0 5px;
  }
  .steps-section .steps li.step-02 {
    width: 37.5%;
  }
  .steps-section .steps li.step-03 {
    width: 31.5%;
  }
  .steps-section .steps li.step-03:after {
    content: none;
  }
  .steps-section .steps li.step-03 div {
    border-radius: 0 5px 5px 0;
  }
  .steps-section .links a {
    -webkit-transition: 0.2s background-color ease;
    -moz-transition: 0.2s background-color ease;
    -ms-transition: 0.2s background-color ease;
    -o-transition: 0.2s background-color ease;
    transition: 0.2s background-color ease;
  }
  .steps-section .links a:hover {
    opacity: 1;
    background-color: #f9f9f9;
  }

  .form-footer .btns {
    width: 540px;
    margin: 0 auto;
  }
  .form-footer .btns:after {
    content: '';
    display: block;
    clear: both;
  }
  .form-footer .btns .next {
    float: right;
  }
  .form-footer .btns .back {
    float: left;
  }
  .form-footer .btns .btn-row2 {
    height: 3.6em;
    border-radius: 1.8em;
  }
  .form-footer .btns a.btn-row2 {
    padding: 0.6em 0;
  }
  .form-footer .btns .btn-strong {
    width: 300px;
    margin: 20px auto 30px;
    font-size: 22px;
  }
  .form-footer .btns.col3 {
    width: 100%;
  }
  .form-footer .btns.col3 li {
    display: inline-block;
    padding: 10px 5px;
  }
}
/* pages
------------------------------ */
@media (min-width: 769px) {
  .account-form {
    max-width: 400px;
    margin: 0 auto 30px;
  }
  .account-form .btn,
  .account-form .input-l {
    width: 100%;
    margin: 20px auto;
    display: block;
  }

  .passwd-form {
    max-width: 400px;
    margin: 30px auto 0;
  }
  .passwd-form .btn,
  .passwd-form .input-l {
    width: 100%;
    display: block;
  }
  .passwd-form .input-l {
    margin-top: 10px;
  }

  .login-form {
    max-width: 400px;
    margin: 0 auto;
  }
  .login-form .input-l,
  .login-form .btn {
    width: 100%;
  }
}
/* page: サービス提供エリアのご案内
------------------------------ */
.outside-block {
  margin: 0 0 2em;
}
.outside-block .outside-heading {
  margin-bottom: 0.5em;
  text-align: center;
  font-size: 1.5em;
  line-height: 1.5;
  font-weight: bold;
}
.outside-block .intro-txt {
  text-align: center;
}
.outside-block .inner {
  max-width: 700px;
  margin: 0 auto;
}
.outside-block .form-footer {
  padding-bottom: 2em;
}

/* page: 料金カレンダー (fee-calendar)
------------------------------ */
.steps-section .fee-calendar .heading-01 {
  margin-bottom: 0;
}
.steps-section .fee-calendar .month-select {
  background: #f1f1f1;
  text-align: center;
}
.steps-section .fee-calendar .month-select select {
  height: 2.5em;
  margin: 5px 0;
  padding-right: 1.2em;
  padding-left: 2.5em;
  background-color: #fff;
  background-position: 1em center;
  border: 1px solid #ccc;
  border-radius: 1.25em;
  font-size: 1.25em;
  font-weight: bold;
  letter-spacing: 0.08em;
}

.fee-calendar-legend {
  padding: 0.75em;
  background: #f9f9f9;
}
.fee-calendar-legend:after {
  content: '';
  display: block;
  clear: both;
}
.fee-calendar-legend li {
  float: left;
  padding: 0 2em 0 0;
  white-space: nowrap;
}
.fee-calendar-legend .ico-legend {
  display: inline-block;
  vertical-align: -0.4em;
  width: 1.5em;
  height: 1.5em;
  margin: 0 4px 0 0;
  background: #009039;
  line-height: 1;
}
.fee-calendar-legend .ico-legend.ico-legend-off {
  background-color: #e60013;
}
.fee-calendar-legend + p {
  margin-top: 1em;
}

.fee-calendar-list {
  padding: 15px 0 0 0;
}
.fee-calendar-list .day {
  display: table;
  table-layout: fixed;
  width: 100%;
  padding: 8px 0;
}
.fee-calendar-list .date {
  display: table-cell;
  vertical-align: top;
  width: 25%;
  padding: 0 1.5em 0 0;
  text-align: right;
  font-size: 1.25em;
  line-height: 3em;
  font-weight: bold;
}
.fee-calendar-list .saturday .date {
  color: #1992ef;
}
.fee-calendar-list .sunday .date,
.fee-calendar-list .holiday .date {
  color: #e60013;
}
.fee-calendar-list .fee-list {
  display: table-cell;
  vertical-align: top;
  width: 75%;
}
.fee-calendar-list .fee-list li {
  float: left;
  width: 33.33%;
  padding: 0 0 0 10px;
}
.fee-calendar-list .fee-btn {
  position: relative;
  display: block;
  width: 100%;
  padding: 5px 15px;
  background-color: #009039;
  text-align: center;
  color: #fff;
  text-decoration: none;
}
.fee-calendar-list .fee-btn:after {
  content: '';
  position: absolute;
  top: 50%;
  right: 8px;
  width: 6px;
  height: 10px;
  margin-top: -6px;
  background: url('../img/arrow-link-w.svg') no-repeat center center;
  background-size: contain;
}
.fee-calendar-list .fee-btn.fee-off {
  background-color: #e60013;
}
.fee-calendar-list .fee-btn.fee-close {
  background-color: #a4a4a4;
  cursor: default;
}
.fee-calendar-list .fee-btn.fee-close:hover {
  opacity: 1;
}
.fee-calendar-list .fee-btn .ico-off {
  position: absolute;
  top: 0.5em;
  left: 0.5em;
  width: 3em;
  height: 3em;
  padding: 0.5em 0 0;
  background: #ffee2d;
  border-radius: 50%;
  color: #1c1c1c;
  font-size: 0.5em;
  line-height: 1;
  font-weight: bold;
}

/* page: 荷物リスト(item-list)
------------------------------ */
.steps-section .item-list .heading-01,
.steps-section .item-list .heading-02 {
  margin-bottom: 0;
}
.item-list .form-footer .btn-add {
  color: #e60013;
}
.item-list .form-footer .btn-add:before {
  content: '';
  display: inline-block;
  width: 1.2em;
  height: 1.2em;
  margin-right: 0.2em;
  background: #e60013 url('../img/ico-plus-w.svg') no-repeat center center;
  background-size: 0.6em auto;
  border-radius: 50%;
  vertical-align: -0.2em;
}
@media (min-width: 769px) {
  .item-list .form-footer .add {
    float: left;
  }
  .item-list .form-footer .btn-add:hover {
    color: #ff1a2d;
  }
  .item-list .form-footer .btn-add:hover:before {
    background-color: #ff1a2d;
  }
}

.item-list-content .item a {
  display: table;
  width: 100%;
  color: #1c1c1c;
  text-decoration: none;
}
.item-list-content .item .img,
.item-list-content .item .texts,
.item-list-content .item .edit {
  display: table-cell;
  vertical-align: middle;
}
.item-list-content .item .count {
  display: inline-block;
  padding-right: 0.5em;
  font-size: 80%;
}
.item-list-content .item .icons {
  display: inline-block;
}
.item-list-content .item .count-num {
  font-size: 125%;
  font-weight: bold;
}
.item-list-content .item .ico-option {
  display: inline-block;
  border-radius: 2px;
  padding: 0 8px;
  background: #009039;
  color: #fff;
  font-size: 90%;
  line-height: 1.5;
}
.item-list-content .item .edit {
  text-align: right;
}
.item-list-content .item .btn-edit {
  white-space: nowrap;
}
.item-list-content .item .btn-edit:before {
  content: '';
  display: inline-block;
  width: 1em;
  height: 1em;
  margin-right: 0.3em;
  vertical-align: -0.1em;
  background: url('../img/ico-edit.svg') no-repeat center center;
  background-size: contain;
  color: #e60013;
}
.item-list-content .item .btn-add {
  white-space: nowrap;
}
.item-list-content .item .btn-add:before {
  content: '';
  display: inline-block;
  width: 1.2em;
  height: 1.2em;
  margin-right: 0.3em;
  background: #e60013 url('../img/ico-plus-w.svg') no-repeat center center;
  background-size: 0.6em auto;
  border-radius: 50%;
  vertical-align: -0.2em;
}
@media (min-width: 769px) {
  .item-list-content {
    padding: 6px 0 30px 0;
  }
  .item-list-content ul:after {
    content: '';
    display: block;
    clear: both;
  }
  .item-list-content .item {
    float: left;
    width: 50%;
  }
  .item-list-content .item:nth-of-type(odd) {
    clear: left;
  }
  .item-list-content .item:nth-of-type(4n+3), .item-list-content .item:nth-of-type(4n) {
    background: url('../img/list-bg-01.png');
  }
  .item-list-content .item a {
    padding: 14px 20px;
  }
  .item-list-content .item .img {
    width: 105px;
  }
  .item-list-content .item .img img {
    width: 80px;
    height: auto;
  }
  .item-list-content .item .edit {
    width: 90px;
  }
}

/* オーバーレイ　--------------- */
.item-detail {
  max-width: 640px;
  margin: 0 auto;
  padding: 10px;
  background: #009039;
}
.item-detail .item-detail-inner {
  background: #fff;
  padding: 10px 10px;
  border-radius: 24px;
}
.item-detail .name {
  margin: 0 0 0.8em 0;
  padding: 0.5em 0;
  border-bottom: 1px solid #009039;
  text-align: center;
  font-size: 125%;
  font-weight: bold;
}
.item-detail .type {
  padding: 0 2%;
}
.item-detail .type .text {
  text-align: center;
}
.item-detail .type ul {
  width: 100%;
  text-align: center;
}
.item-detail .type li {
  display: inline-block;
  width: 32%;
  vertical-align: top;
  padding: 0 3% 15px;
  text-align: center;
}
.item-detail .type .label.type-check {
  display: block;
  margin-bottom: -15px;
}
.item-detail .type .label.type-check input[type=radio] {
  display: none;
}
.item-detail .type .label.type-check input[type=radio]:checked + .img {
  position: relative;
}
.item-detail .type .label.type-check input[type=radio]:checked + .img:after {
  content: '';
  position: absolute;
  top: 20%;
  left: 20%;
  width: 60%;
  height: 0;
  overflow: hidden;
  padding-top: 60%;
  background: no-repeat center center;
  background-size: contain;
  background-image: url('../img/ico-check-circle.svg');
}
.item-detail .type .label.type-check .img {
  padding-bottom: 5px;
}
.item-detail .type .label.type-check .img img {
  width: 100%;
  height: auto;
}
.item-detail .type.error .text {
  color: #e60013;
  font-weight: bold;
}
.item-detail .type.error li {
  border: 3px solid #ffb3b9;
}
.item-detail .count {
  padding: 1em;
  background: #f0f0f0;
  text-align: center;
  font-weight: bold;
}
.item-detail .count .count-row {
  display: table;
  table-layout: fixed;
  width: 200px;
  margin: 0 auto;
}
.item-detail .count .count-col {
  display: table-cell;
  vertical-align: middle;
}
.item-detail .count button {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  border-radius: 0;
  border: 0;
  margin: 0;
  padding: 0;
  background: transparent;
  box-sizing: border-box;
  vertical-align: middle;
  color: #1c1c1c;
  font-size: inherit;
  font-family: "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
  width: 40px;
  height: 40px;
  background: no-repeat center center;
  background-size: 17px auto;
  border-radius: 50%;
}
.item-detail .count button.btn-count-minus {
  background-color: #009039;
  background-image: url('../img/ico-minus-w.svg');
}
.item-detail .count button.btn-count-plus {
  background-color: #e60013;
  background-image: url('../img/ico-plus-w.svg');
}
.item-detail .count .count-num {
  font-size: 1.5em;
  vertical-align: bottom;
}
.item-detail .options {
  margin: 1.5em 0 1em 0;
}
.item-detail .options .text {
  text-align: center;
  font-weight: bold;
}
.item-detail .options .text span {
  display: inline-block;
  white-space: nowrap;
}
.item-detail .options ul {
  max-width: 400px;
  margin: 0 auto;
}
@media (min-width: 769px) {
  .item-detail .form-footer .btns {
    width: 520px;
  }
}

/* 荷物詳細（magnific popup） */
.mfp-bg {
  background: #fff;
}

.mfp-container {
  padding: 0;
}

/* page: カテゴリリスト
------------------------------ */
@media (min-width: 769px) {
  .steps-section .category-list {
    margin: 0 20px 20px;
  }
}
/* page: オプション
------------------------------ */
.option-form .attention {
  margin-bottom: 2em;
  padding: 0.8em 1.2em;
  border: 5px solid #e8e8e8;
}
.option-form .attention .chk-list {
  margin: 0.5em 0 0;
}
.option-form select:disabled {
  opacity: 0.3;
}
.option-form .form-footer .btn {
  margin-bottom: 20px !important;
}

/* page: 見積り
------------------------------ */
.estimate {
  margin-top: 2em;
}
.estimate .estimate-no {
  font-size: 1.2em;
}
.estimate .estimate-heading {
  padding: 0.4em 0.8em;
  background-image: url("../img/sub-title-bg.png");
  border-radius: 3px;
  color: #fff;
}
.estimate .estimate-table {
  width: 100%;
  margin: 0.4em 0 2em;
  border-spacing: 0;
  border-collapse: collapse;
}
.estimate .estimate-table th {
  padding: 7px 0 7px 24px;
  border-bottom: 1px dotted #c1c1c1;
  text-align: left;
  font-weight: normal;
}
.estimate .estimate-table td {
  padding: 7px 24px;
  border-bottom: 1px dotted #c1c1c1;
  text-align: right;
  white-space: nowrap;
}
.estimate .estimate-table tr:nth-child(even) {
  background-color: #f3f3f3;
}
.estimate .estimate-table .child th {
  padding-left: 40px;
}
.estimate .estimate-table tfoot th, .estimate .estimate-table tfoot td {
  border-top: 4px double #1c1c1c;
  font-weight: bold;
}
.estimate .estimate-summary .estimate-heading {
  background: #1c1c1c;
  color: #fff;
}
.estimate .estimate-summary .estimate-table {
  line-height: 1.5;
}
.estimate .estimate-summary .estimate-table tfoot th, .estimate .estimate-summary .estimate-table tfoot td {
  padding-top: 12px;
  padding-bottom: 12px;
}
.estimate .estimate-confirm {
  padding-bottom: 0;
}
.estimate .estimate-confirm .estimate-heading {
  margin-bottom: 1.2em;
  background: #1c1c1c;
  color: #fff;
}
.estimate .estimate-confirm .estimate-heading + p {
  margin: 0 0 1.5em 1em;
}
.estimate .estimate-confirm .estimate-table {
  border-top: 1px dotted #c1c1c1;
}
.estimate .estimate-rough {
  padding-top: 0.75em;
  padding-bottom: 0.75em;
  text-align: center;
}
.estimate .estimate-rough .fee {
  line-height: 1.5;
  font-weight: bold;
}
.estimate .catch {
  margin: 2em 0 0;
  padding: 1em 0;
  line-height: 1.5;
  font-weight: bold;
}
@media (min-width: 769px) {
  .estimate {
    padding: 0 20px 30px;
  }
  .estimate .estimate-heading {
    font-size: 1.2em;
  }
  .estimate .estimate-table tfoot th, .estimate .estimate-table tfoot td {
    font-size: 1.2em;
  }
  .estimate .estimate-summary .estimate-heading {
    font-size: 1.5em;
    line-height: 1.2;
  }
  .estimate .estimate-summary .estimate-table {
    font-size: 1.2em;
  }
  .estimate .estimate-rough .fee {
    font-size: 1.5em;
  }
  .estimate .catch {
    font-size: 1.2em;
  }
}

/* page: 完了
------------------------------ */
.complete-msg {
  text-align: center;
  font-size: 1.5em;
  margin: 3em 0;
}
.complete-msg span {
  display: inline-block;
}

/* page: マイページ
------------------------------ */
@media (max-width: 768px) {
  .only-pc {
    display: none !important;
  }
}

@media (min-width: 769px) {
  .only-sp {
    display: none !important;
  }
}

/* page: マイページ
------------------------------ */
.my-page-heading {
  background: #e6e6e6;
}
@media (max-width: 768px) {
  .my-page-heading {
    margin: 0 -7.143%;
    padding: 0.5em 7.143%;
  }
  .my-page-heading span {
    font-size: 2em;
    line-height: 1.5;
  }
}
@media (min-width: 769px) {
  .my-page-heading {
    height: 45px;
    margin: 0 0 30px;
    border-radius: 3px;
    font-size: 24px;
    line-height: 45px;
    text-align: center;
  }
}

.my-header {
  max-width: 860px;
  margin: 0 auto;
}
.my-header .my-name {
  margin-bottom: 0;
  font-size: 1.25em;
}
.my-header .my-heading {
  margin: 0 0 1em 0;
  text-align: center;
  font-size: 1.75em;
}
@media (max-width: 768px) {
  .my-header {
    margin: 1.4375em 0;
  }
  .my-header .my-name {
    margin-bottom: 0.5em;
    font-size: 1.75em;
  }
  .my-header .my-heading {
    margin: 0;
    font-size: 2.5em;
  }
}

/* 旧ページ */
.my-header-inner {
  display: table;
  width: 100%;
}
.my-header-inner .my-name {
  display: table-cell;
  vertical-align: middle;
}
.my-header-inner .my-status {
  display: table-cell;
  text-align: right;
  vertical-align: middle;
}
.my-header-inner .ico-status {
  float: right;
  display: inline-block;
  width: auto;
  min-width: 125px;
  padding: 0 15px;
  background-image: url("../img/top-bg-title.png");
  border-radius: 4px;
  text-align: center;
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  font-size: 18px;
  line-height: 35px;
}
.my-header-inner .ico-status span {
  color: #fff000;
}
@media (max-width: 768px) {
  .my-header-inner:after {
    content: '';
    display: block;
    clear: both;
  }
  .my-header-inner .my-name {
    float: left;
    font-size: 1.75em;
    word-break: break-all;
  }
  .my-header-inner .my-status {
    float: right;
    margin-bottom: 0.5em;
  }
  .my-header-inner .ico-status {
    min-width: 8em;
    padding: 0 0.5em;
    font-size: 1.6em;
    line-height: 1.9;
  }
}

.my-header + .intro-txt {
  max-width: 860px;
  margin: 2em auto;
}

@media (max-width: 768px) {
  .my-page p {
    font-size: 1.625em;
    line-height: 1.45;
    margin-bottom: 0.9em;
  }
}
@media (min-width: 769px) {
  .my-page .table {
    width: 100%;
  }
  .my-page .table th {
    width: 25%;
  }
}
@media (max-width: 768px) {
  .my-page .table-content {
    margin: 0 -1.5em;
  }
  .my-page .table-content:first-child {
    margin-top: -1.5em;
  }
}
.my-page .table-content .table tr:nth-child(2n + 1) th, .my-page .table-content .table tr:nth-child(2n + 1) td {
  position: relative;
}
.my-page .table-content .table tr:nth-child(2n + 1) th:before, .my-page .table-content .table tr:nth-child(2n + 1) td:before {
  background-color: #e2dede;
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  opacity: 0.35;
}
.my-page .table-content .table tr:nth-child(2n + 1) th span, .my-page .table-content .table tr:nth-child(2n + 1) td span {
  position: relative;
  z-index: 2;
}
.my-page .table-content .table tr td {
  padding-right: 10px;
}
@media (min-width: 769px) {
  .my-page .table-content .table th {
    padding-left: 1.5em;
  }
}
@media (max-width: 768px) {
  .my-page .table-content .table th {
    padding-left: 1em;
  }
}
.my-page .form-content th {
  vertical-align: top;
  padding: 0;
  line-height: 2.75em;
  min-width: inherit;
}
.my-page .form-content .table {
  margin: 0 auto;
}
.my-page .form-content .table td {
  padding: 6px 0 6px 0;
}
.my-page .form-content input, .my-page .form-content textarea {
  border: 1px solid #f0f0f0;
  border-radius: 3px;
  width: 100%;
  padding: 0.4em 0.6em;
}
.my-page .form-content select {
  padding: 0 1em 0 2em;
  background-color: #fff;
  border: 1px solid #f0f0f0;
  border-radius: 3px;
}
.my-page .form-content input, .my-page .form-content select {
  height: 2.25em;
}
.my-page .form-content textarea {
  height: 12em;
}
.my-page .form-content .small {
  font-size: 0.8em;
}
@media (min-width: 769px) {
  .my-page .form-content {
    padding: 0 2em;
    font-size: 1.2em;
  }
}
@media (max-width: 768px) {
  .my-page .form-content .table th, .my-page .form-content .table td {
    display: block;
  }
  .my-page .form-content .table th {
    line-height: 1.5;
  }
  .my-page .form-content .table td {
    padding-bottom: 1.5em;
  }
}
.my-page .form-footer {
  text-align: center;
}
.my-page .form-footer .btn {
  width: auto;
  display: inline-block;
  padding: 0em 2em;
}
.my-page .form-footer a.btn {
  padding: 0.5em 2em;
}

.my-heading-01 {
  margin: 2.5em 0 1em 0;
  text-align: center;
  font-size: 20px;
  line-height: 1.5;
  font-weight: bold;
}
.my-heading-01:first-child, .my-header .my-heading-01 {
  margin-top: 0;
}
.my-heading-01.line-01 {
  text-align: center;
}
.my-heading-01.line-01 span {
  display: inline-block;
  padding-bottom: 3px;
  border-bottom: 2px solid #009039;
}
@media (max-width: 768px) {
  .my-heading-01 {
    font-size: 1.75em;
  }
}

.data-list dl {
  margin-bottom: 1.25em;
}
.data-list dt {
  display: inline-block;
  margin-bottom: 0.5em;
  border-bottom: 1px solid #000;
  font-size: 1.1em;
  font-weight: bold;
}
.data-list span.note {
  font-size: 0.85em;
}
@media (max-width: 768px) {
  .data-list p {
    margin-bottom: 1em;
    font-size: 1.5em;
  }
  .data-list dl {
    font-size: 1.5em;
  }
}

.my-info-frame {
  background-image: url("../img/c-bg.png");
  margin-bottom: 2em;
  padding: 2em;
}
.my-info-frame dl {
  margin-bottom: 1.75em;
  font-size: 1.2em;
}
.my-info-frame dt {
  display: inline-block;
  margin-bottom: 0.5em;
  border-bottom: 1px solid #000;
  font-weight: bold;
}
.my-info-frame .more-info {
  margin-top: 1em;
  color: #717171;
}
.my-info-frame .estimate {
  padding: 0;
  font-size: 83.33%;
}
@media (max-width: 768px) {
  .my-info-frame {
    padding: 1.5em;
  }
  .my-info-frame p {
    font-size: 1.5em;
  }
  .my-info-frame dl {
    font-size: 1.5em;
  }
  .my-info-frame .notes {
    margin: 2em 0 0;
  }
  .my-info-frame .more-info {
    font-size: 1.375em;
  }
  .my-info-frame .estimate {
    font-size: 66.67%;
  }
}

.select-box {
  position: relative;
  display: block;
  margin: 0 auto;
  padding-left: 1.25em;
  color: #fff;
  text-decoration: none;
}
.select-box:before {
  content: "";
  background-image: url("../img/gray-bg.png");
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0.75;
}
.select-box:after {
  content: "";
  background-image: url("../img/r-arrow.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
  width: 0.75em;
  position: absolute;
  right: 1.25em;
  top: 0;
  bottom: 0;
}
@media (min-width: 769px) {
  .select-box {
    height: 4em;
    line-height: 4em;
    max-width: 450px;
  }
}
@media (max-width: 768px) {
  .select-box {
    height: 5em;
    line-height: 5em;
    max-width: 500px;
  }
}
.select-box span {
  font-size: 1.5em;
  position: relative;
  z-index: 1;
}
.select-box span:first-child {
  margin-right: 0.83em;
  text-decoration: underline;
}

.quote-list .inner {
  padding: 0.75em 1em 1px;
  margin-bottom: 1.5em;
}
.quote-list .table {
  position: relative;
}
.quote-list .table:before {
  content: "";
  background-image: url("../img/red-arrow.png");
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  right: 3px;
  top: 16%;
  width: 0.5em;
  height: 0.792em;
}
.quote-list .table th {
  padding-left: 15px;
}
.quote-list .table td {
  padding-bottom: 20px;
  padding-top: 5px;
}
.quote-list .table td:last-child {
  padding-right: 10px;
}
.quote-list .table tr:first-child th, .quote-list .table tr:first-child td {
  padding-bottom: 0;
}
.quote-list .table tr:last-child th, .quote-list .table tr:last-child td {
  position: relative;
  padding: 15px 0;
}
.quote-list .table tr:last-child th:before, .quote-list .table tr:last-child td:before {
  background-color: #e2dede;
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  opacity: 0.35;
}
.quote-list .table tr:last-child span {
  position: relative;
  z-index: 9;
}
.quote-list .table tr:last-child th {
  padding-left: 15px;
}
.quote-list .table tr:last-child th span {
  padding: 5px 8px;
  background-color: #898989;
  color: #fff;
  border-radius: 4px;
}

/* 案件一覧（マイページトップ）
------------------------------ */
.my-section {
  padding: 1em 2em 2em;
}
@media (max-width: 768px) {
  .my-section {
    padding: 1em;
  }
}

.my-section-heading-01 {
  margin: 0.5em 0 1em;
  text-align: center;
  font-size: 1.4em;
}
@media (max-width: 768px) {
  .my-section-heading-01 {
    font-size: 1.875em;
  }
}

.my-project {
  max-width: 860px;
  margin: 0 auto 2.5em;
  border: 3px solid #e6e6e6;
}
.my-project .action {
  margin: 1.5em 0 1em 0;
}
.my-project .btn-secondary {
  margin-bottom: 0;
}
@media (max-width: 768px) {
  .my-project .btn-secondary {
    border-radius: 1.2em;
    font-size: 1.75em;
  }
}

.my-project-header {
  padding: 0.5em;
}
.my-project-header:after {
  content: '';
  display: block;
  clear: both;
}
.my-project-header .my-project-heading {
  margin-bottom: 0.5em;
  padding: 0.2em;
  background-color: #e6e6e6;
  text-align: center;
  font-size: 1.5em;
  line-height: 1.75;
}
.my-project-header .project-no {
  float: left;
  padding: 0.4em 0 0 0.5em;
  white-space: nowrap;
  font-size: 1.1em;
  font-weight: bold;
}
.my-project-header .ico-status {
  float: right;
  display: inline-block;
  width: auto;
  min-width: 125px;
  padding: 0 15px;
  background-image: url("../img/top-bg-title.png");
  border-radius: 4px;
  text-align: center;
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  font-size: 18px;
  line-height: 35px;
}
.my-project-header .ico-status span {
  color: #fff000;
}
@media (max-width: 768px) {
  .my-project-header .my-project-heading {
    font-size: 2em;
  }
  .my-project-header .project-no {
    font-size: 1.5em;
    line-height: 1.5;
    padding: 0.25em 0 0 0.5em;
  }
  .my-project-header .ico-status {
    min-width: 8em;
    padding: 0 0.5em;
    font-size: 1.6em;
    line-height: 1.9;
  }
}

.my-project-summary,
.my-project-summary-more,
.my-project-notes {
  background-color: #f6f6f6;
}

.my-project-summary dl:last-child {
  margin-bottom: 0.75em;
}

.my-project-summary-more {
  padding-top: 0;
}

.my-project-action {
  padding: 1.8em 1em;
  text-align: center;
}
.my-project-action .action {
  margin-top: 1em;
}
@media (max-width: 768px) {
  .my-project-action .text {
    text-align: left;
  }
}

.my-project-notes .notes-heading {
  margin: 1.25em 0 0 0;
}
@media (max-width: 768px) {
  .my-project-notes .notes-heading {
    margin: 0.25em 0;
    font-size: 1.625em;
  }
}

.my-project-more {
  overflow: hidden;
  -webkit-transition: height 0.3s ease-in-out;
  -moz-transition: height 0.3s ease-in-out;
  -ms-transition: height 0.3s ease-in-out;
  -o-transition: height 0.3s ease-in-out;
  transition: height 0.3s ease-in-out;
}

.my-project-more-toggle .btn {
  margin-bottom: 0;
  padding: 0.25em 0;
  border-radius: 0;
  background-color: #e6e6e6;
  color: #1c1c1c;
  font-weight: bold;
}
.my-project-more-toggle .btn:after {
  content: '';
  display: inline-block;
  width: 1.2em;
  height: 1.2em;
  margin-left: 0.2em;
  background: #1c1c1c url('../img/arrow-link-w.svg') no-repeat center center;
  background-size: 35% auto;
  border-radius: 50%;
  vertical-align: -0.2em;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  -webkit-transition: transform 0.2s ease;
  -moz-transition: transform 0.2s ease;
  -ms-transition: transform 0.2s ease;
  -o-transition: transform 0.2s ease;
  transition: transform 0.2s ease;
}
.more-open + .my-project-more-toggle .btn:after {
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
}
@media (min-width: 769px) {
  .my-project-more-toggle .btn {
    width: 100%;
  }
}
@media (max-width: 768px) {
  .my-project-more-toggle .btn {
    font-size: 1.667em;
  }
}

/* お見積り詳細
------------------------------ */
.my-project-detail {
  padding-top: 2em;
  background-color: #f6f6f6;
}
.my-project-detail .estimate {
  margin-top: 1em;
  padding-bottom: 0;
}
.my-project-detail .estimate .estimate-heading {
  margin-bottom: 0;
}
.my-project-detail .estimate .estimate-table {
  margin-top: 0;
  background-color: #fff;
}
.my-project-detail .payment-np {
  padding-bottom: 1.5em;
}
.my-project-detail .payment-np &gt; div + div {
  margin: 1.2em 0 0 0;
}
.my-project-detail .payment-np img {
  margin-top: 0.2em;
}
@media (max-width: 768px) {
  .my-project-detail .estimate {
    font-size: 0.667em;
  }
}
.my-project-detail + .form-footer .btn {
  margin-top: 1em;
}

/* page: エラー系
------------------------------ */
.error-section .error-msg {
  padding: 4em 0;
  text-align: center;
  font-size: 1.5em;
}

/* intro
------------------------------ */
.introduce {
  clear: both;
  max-width: 640px;
  margin: 0 auto 3em;
  text-align: center;
  font-size: 16px;
}
.introduce p {
  margin-bottom: 0;
}
.introduce .catch {
  position: relative;
  background-color: #009039;
  border-radius: 1em;
  text-align: center;
  color: #fff;
  font-size: 175%;
  line-height: 2em;
}
.introduce .catch:after {
  content: '';
  position: absolute;
  top: 100%;
  left: 50%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0.8em 0.8em 0 0;
  border-color: #009039 transparent transparent transparent;
  transform: skewX(-20deg);
}
.introduce .rakunicos {
  margin: 2.2em 0 0 0;
  text-align: center;
}
.introduce .rakunicos:before, .introduce .rakunicos:after {
  content: '';
  display: inline-block;
  width: 0.45em;
  height: 0;
  margin: 0 1.5em;
  border-style: solid;
  border-width: 2.5em 0.15em 0  0.15em;
  border-color: #009039 transparent transparent transparent;
  vertical-align: middle;
}
.introduce .rakunicos:before {
  transform: rotate(-30deg);
}
.introduce .rakunicos:after {
  transform: rotate(30deg);
}
.introduce .rakunicos span {
  display: inline-block;
  position: relative;
  font-size: 150%;
  font-weight: bold;
}
.introduce .steps {
  margin: 1em 0 0;
  text-align: left;
  font-size: 120%;
}
.introduce .steps .step {
  position: relative;
  padding: 0 0 1em;
}
.introduce .steps .step:after {
  content: '';
  display: block;
  margin: 0.5em auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 1em 1em 0 1em;
  border-color: #009039 transparent transparent transparent;
}
.introduce .steps .step:last-child:after {
  content: none;
}
.introduce .steps .step-content {
  background-color: #f1f1f1;
  width: 100%;
  padding: 0.5em;
  border-radius: 5px;
  font-weight: bold;
}
.introduce .steps .step-content:after {
  content: '';
  display: block;
  clear: both;
}
.introduce .steps .step-content .no {
  float: left;
  display: inline-block;
  padding: 0 1em;
  background-color: #009039;
  border-radius: 5px;
  color: #fff;
  font-size: 80%;
  line-height: 2;
}
.introduce .steps .step-content .text {
  margin-left: 5.5em;
  line-height: 1.6;
}
.introduce .steps .step-comment {
  position: absolute;
  right: 1em;
  bottom: 100%;
  padding: 0.5em;
  background-color: #666;
  border-radius: 1em;
  transform: translateY(0.5em);
  text-align: center;
  color: #fff;
  font-size: 80%;
  line-height: 1.25;
}
.introduce .steps .step-comment:after {
  content: '';
  position: absolute;
  bottom: -0.5em;
  left: 0;
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 1em 0.75em 0 0;
  border-color: #666 transparent transparent transparent;
  transform: rotate(35deg);
}
.introduce .point {
  margin-top: 0.5em;
  text-align: center;
  font-size: 175%;
  font-weight: bold;
}
.introduce .note {
  margin: 0.5em 0 0 0.5em;
}

/*# sourceMappingURL=main.css.map */</pre></body></html>