/* date: 2016.07.05 */
/* ------------------------------------------------------------

    RESET

------------------------------------------------------------ */
/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
img,legend{border:0}legend,td,th{padding:0}html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,optgroup,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre,textarea{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}table{border-collapse:collapse;border-spacing:0}


/* ------------------------------------------------------------

    Base

------------------------------------------------------------ */
body {
  color: #333;
  font-family: "Hiragino Kaku Gothic Pro W3", "Hiragino Kaku Gothic Pro", "Meirio", Meiryo, Osaka, "MS PGothic", "MS PGothic", sans-serif;
  height: 100%;
  width: 100%;
  margin: 0;
  height: 0;
  background: #FFF;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.6;
  box-sizing: border-box;
}
@media print {
  body{
    width: 980px;
  }
}
@media print, screen and (min-width: 560px) {
  body {
    min-width: 980px;
  }
}

p {
  margin-top: 0;
}

img {
  max-width: 100%;
}

address{
  font-style: normal;
}

.cf {
  overflow: hidden;
  *zoom: 1;
}

input[type=text]{
  min-height: 1.8em;
}

/*  LINK
------------------------------ */
a {
  color: #A0B659;
  text-decoration: none;
}
a:hover, a:active, a:focus {
  color: #c9d5a0;
  text-decoration: underline;
}
a.link--rev {
  text-decoration: underline;
}
a.link--rev:hover {
  text-decoration: none;
}

a > img:hover, a:hover img {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=75);
  opacity: 0.75;
}

/* ------------------------------------------------------------

    Layeout

------------------------------------------------------------ */
.wrap {
  width: 100%;
  max-width: 980px;
  margin: 0 auto;
}
@media screen and (max-width: 560px) {
  .wrap{
    width: 90%;
  }
}

.contents {
  margin-top: 30px;
}

/*  header
------------------------------------*/
.description {
  float: left;
  color: #FFF;
  font-size: 12px;
  font-size: 0.75rem;
}
@media screen and (max-width: 560px) {
  .description {
    display: none;
  }
}

.logo {
  position: relative;
  float: left;
  width: 166px;
  z-index: 2;
}
@media screen and (max-width: 560px) {
  .logo {
    margin-bottom: .3em;
  }
}

.header{
  position: relative;
  z-index: -1;
}
.header--heading {
  overflow: hidden;
  background-color: #A2B65A;
}
@media print, screen and (min-width: 560px) {
  .header--heading {
    padding: .5em 0 .3em;
  }
}
.header--heading .wrap {
  width: 100%;
}

@media screen and (max-width: 560px) {
  .heading--menu {
    height: 5em;
  }
}
@media print, screen and (min-width: 560px) {
  .heading--menu {
    float: right;
  }
}

.heading--menu__icon {
  padding: .5em 0;
  text-align: center;
  color: #FFF;
}
.heading--menu__icon:before {
  content: "";
  background-image: url(../img/common/sprite.png);
  background-position: -75px -25px;
  width: 11px;
  height: 11px;
  margin-right: .5em;
  display: inline-block;
}
@media screen and (max-width: 560px) {
  .heading--menu__icon {
    display: inline-block;
    padding-left: 5px;
    text-align: left;
    box-sizing: border-box;
  }
}
@media print, screen and (min-width: 560px) {
  .heading--menu__icon {
    padding-right: 2em;
  }
}

.lang {
  display: inline-block;
  overflow: hidden;
  text-align: center;
  background-color: #C7D39C;
}
.lang input[type="submit"] {
  color: #FFF;
  border:none;
  background-color:transparent;
}
@media print, screen and (min-width: 560px) {
  .lang {
    margin-bottom: -3px;
    margin-left: 5px;
  }
  .lang input[type="submit"] {
    text-indent: 560px;
    width: 100%;
  }
}
@media screen and (max-width: 560px) {
  .lang {
    width: 100%;
    padding: .5em 0 .5em 5px;
    text-align: left;
    box-sizing: border-box;
  }
  .lang form:before {
    content: "";
    display: inline-block;
    background-image: url(../img/common/sprite.png);
    background-position: -75px -25px;
    width: 11px;
    height: 11px;
    margin-right: 10px;
  }
}

@media print, screen and (min-width: 560px) {
  .lang__en {
    background-image: url(../img/common/sprite.png);
    background-position: -28px -58px;
    width: 28px;
    height: 15px;
  }
  .lang__en:hover, html[lang=en] .lang__en {
    background-position: 0px -58px;
  }
}

@media print, screen and (min-width: 560px) {
  .lang__jp {
    background-image: url(../img/common/sprite.png);
    background-position: -44px -36px;
    width: 28px;
    height: 15px;
  }
  .lang__jp:hover, html[lang=ja] .lang__jp {
    background-position: -22px -17px;
  }
}
@media screen and (max-width: 560px) {
  html[lang=ja] .lang__jp {
    display: none;
  }
  html[lang=en] .lang__en {
    display: none;
  }
}

.header--c {
  float: left;
  padding: .5em 1em;
  margin-bottom: 2.5em;
  font-size: 13px;
  font-size: 0.8125rem;
  color: #FFF;
  text-align: center;
  vertical-align: top;
  background: #E78429;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  box-sizing: border-box;
}
@media print, screen and (min-width: 560px) {
  .header--c {
    margin-top: 1.5em;
    margin-left: 2em;
  }
}
@media screen and (max-width: 560px) {
  .header--c {
    width: 100%;
  }
}

/*  heading
------------------------------------*/
.heading {
  color: #FFF;
  text-align: center;
  text-shadow: 3px 3px 4px rgba(40, 40, 40, 0.3);
  font-size: 24px;
  font-size: 1.5rem;
}
@media print, screen and (min-width: 560px) {
  .heading {
    font-size: 36px;
    font-size: 2.25rem;
  }
}
.heading--ttl {
  margin: 0;
}
@media print, screen and (min-width: 560px) {
  .heading--ttl {
    padding-top: 10px;
  }
}
.heading--base {
  background-color: #EAEAEA;
}
.heading--base .heading__inner {
  background: url(../img/common/bg_ttl.jpg) no-repeat center top;
  background-size: cover;
}
.heading--base .heading__inner .btn--signup{
  float: right;
  margin-top: -90px;
  min-width: 160px;
  font-size: 18px;
  font-size: 1.125rem;
}
@media print, screen and (min-width: 560px) {
  .heading--base .heading__inner {
    height: 100px;
  }
}
@media screen and (max-width: 560px) {
  .heading--base .heading__inner .btn--signup{
    margin-top: -127px;
    line-height: 1;
    font-size: 14px;
    font-size: .875rem;
    max-width: 12em;
  }
}

.heading--sign {
  background-color: #49635F;
}
.heading--sign .heading__inner {
  background: url(../img/common/bg_ttl_c_sign.jpg) no-repeat center top;
  background-size: cover;
}
@media print, screen and (min-width: 560px) {
  .heading--sign .heading__inner {
    height: 100px;
  }
}
.heading--c {
  background-color: #EFEFEF;
}
.heading--left {
    padding-top: 15px;
    padding-left: 20px;
    text-align: left;
    max-width: 980px;
    margin: 0 auto;
}

.heading--c .heading__inner {
  background: url(../img/common/bg_ttl_c.jpg) no-repeat center top;
  background-size: cover;
}
@media print, screen and (min-width: 560px) {
  .heading--c .heading__inner {
    height: 100px;
  }
}

/*  breadcrumb
------------------------------------*/
.breadcrumb span {
  margin: 0 10px;
  color: #AAA;
}
.breadcrumb--first {
  margin-left: 0;
}


/*  side
------------------------------------*/
.side {
  position: fixed;
  width: 52px;
  right: -2px;
  top: 130px;
  z-index: 100;
}
@media print{
  .side{
    display: none;
  }
}
@media screen and (max-width: 560px) {
  .side {
    display: none;
  }
}

/*  bnr
------------------------------------*/
.bnr {
  padding: 5em 0 1em;
}
.bnr .wrap {
  width: 100%;
}
.bnr img {
  margin-bottom: 10px;
}
@media print, screen and (min-width: 560px) {
  .bnr {
    margin-left: -10px;
  }
  .bnr img {
    margin-left: 10px;
  }
}
@media screen and (max-width: 560px) {
  .bnr {
    padding-top: 1em;
    text-align: center;
  }
}

/*  footer
------------------------------------*/
.footer--nav {
  margin-top: 120px;
  background: #EEE;
}
@media print, screen and (min-width: 560px) {
  .footer--nav {
    padding: 1em 0;
  }
}
.footer--nav ul {
  padding: 1px 0;
}
@media screen and (max-width: 560px) {
  .footer--nav ul {
    width: 100%;
  }
}
.footer--nav li {
  float: left;
  list-style: none;
}
@media print, screen and (min-width: 560px) {
  .footer--nav li {
    margin-right: 2.5em;
  }
}
.footer--nav li a {
  color: #777;
}
@media print, screen and (min-width: 560px) {
  .footer--nav li a:before {
    content: "";
    margin-right: 10px;
    background-image: url(../img/common/sprite.png);
    background-position: -75px -53px;
    width: 6px;
    height: 10px;
    display: inline-block;
  }
}
@media screen and (max-width: 560px) {
  .footer--nav li {
    margin-top: -1px;
    margin-right: -1px;
    padding: 1em 0;
    width: 50%;
    box-sizing: border-box;
    border-top: 1px solid #CCC;
    border-left: 1px solid #CCC;
    border-right: 1px solid #CCC;
    border-collapse: collapse;
    border-spacing: 0;
  }
  .footer--nav li a {
    display: block;
    width: 100%;
    height: 100%;
    padding-left: 1em;
    box-sizing: border-box;
  }
}

.copyright {
  padding: 2em 0 7em;
  margin-bottom: 0;
  color: #FFF;
  text-align: center;
  font-size: 10px;
  font-size: 0.625rem;
  background-color: #A2B65A;
}

/*  menu
------------------------------------*/
#toggle {
  display: none;
  float: right;
  width: 44px;
  height: 44px;
  margin-top: 1em;
  cursor: pointer;
}
#toggle:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=65);
  opacity: 0.65;
}
@media screen and (max-width: 560px) {
  #toggle {
    display: block;
  }
}


#menu{
  position: absolute;
  overflow: hidden;
  top: 5em;
  left: 0;
  height: 0;
  width: 100%;
  background-color: #A2B65A;
  background-color: rgba(160,182,89, 0.95);
  opacity: 0;
  transition: opacity .3s ease, height .3s ease;
  box-sizing: border-box;
  box-shadow: 0 2px 3px rgba(0,0,0, 0.1);
  z-index: -1;
}
#menu.active{
  padding-right: 1em;
  padding-bottom: 1em;
  padding-left: 1em;
  height: 100%;
  min-height: 50em;
  opacity: 1;
  z-index: 1000;
  transition: all .3s ease;
}
#menu .txt--right{
  display: none;
  padding-top: .5em;
  padding-right: .5em;
  margin-bottom: 0;
  font-size: 24px;
  font-size: 1.5rem;
  color: #FFF;
  cursor: pointer;
}
#menu.active .txt--right{
  display: block;
}
#menu ul{
  margin-top: 0;
  padding-left: 0;
  list-style: none;
}
#menu li{
  width: 100%;
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 2.6;
  border-bottom: 1px solid #7D8F3F;
}
#menu a{
  display: block;
  color: #FFF;
}
/* ------------------------------------------------------------

    Module

------------------------------------------------------------ */
/*  search
------------------------------------*/
.search {
  padding: 30px 0;
  background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mN4+PrkJwAIzgOIACscNQAAAABJRU5ErkJggg==);
  box-sizing: border-box;
}
.search--block {
  display: inline-block;
  width: 100%;
  max-width: 435px;
  padding-left: 20px;
  box-sizing: border-box;
}
@media screen and (max-width: 560px){
  .search--block {
    padding-left: 0;
  }
  .search__input{
    margin-top: 0;
  }
}

.search__input .input--select--wrap,
.search__input .input--text{
  width: 290px;
}
.search__input .input--text{
  height: 2.8em;
}
.search__input .input--select--wrap:before{
  height: 2.4em;
}
.search__input .input--select--wrap:after{
  top: 1.65em;
}
.search__input .input--select{
  height: 2.8em;
}
@media screen and (max-width: 560px){
  .search__input .input--select--wrap{
    display: block;
  }
  .search__input .input{
    width: 100%;
  }
}
.search__input dt {
  display: inline-block;
  width: 30%;
  padding-top: .5em;
}
@media screen and (max-width: 560px) {
  .search__input dt {
    width: 100%;
  }
}
.search__input dd {
  display: inline-block;
  margin-left: 0;
  width: 65%;
  vertical-align: top;
}
@media screen and (max-width: 560px) {
  .search__input dd {
    display: block;
    width: 100%;
  }
}

/*  ttl
------------------------------------*/
.ttl--summary{
  font-size: 25px;
  font-size: 1.56rem;
  color: #6C851F;
  font-weight: normal;
}
.ttl--inner{
  padding-left: 0.6em;
  color: #9FB659;
  font-size: 16px;
  font-size: 1rem;
  font-weight: bold;
  line-height: 36px;
  border-left: 5px solid #A0B659;
  border-bottom: 1px dotted #AAA;
  box-sizing: border-box;
}



/*  list
------------------------------------*/
.list--offer{
  margin-bottom: 30px;
}
@media screen and (max-width: 560px) {
  .list--offer {
    text-align: center;
  }
}
@media print, screen and (min-width: 560px) {
  .list--offer {
    margin-left: -12px;
  }
}
.list--offer .thumb{
  position: relative;
  width: 230px;
  height: 160px;
  overflow: hidden;
}
.list--offer .thumb img{
  max-height: 100%;
  width: auto;
  height: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.ie8 .list--offer .thumb{
  display: table;
}
.ie8 .list--offer .thumb img{
  display: table-cell;
  position: static;
  vertical-align: middle;
  text-align: center;
  width: inherit;
  height: inherit;
}

.offer--contents {
  position: relative;
  overflow: hidden;
  display: inline-block;
  margin: 1em auto;
  width: 230px;
  vertical-align: top;
  text-align: left;
}
.offer--contents:hover {
  opacity: .75;
}
.offer--contents .thumb{
  font-size: 0;
}
.offer--contents dl{
  margin-top: .5em;
}
.offer--contents .title{
  margin-top: -.5em;
  margin-bottom: 0.5em;
  font-size: 16px;
  font-size: 1rem;
  font-weight: bold;
  color: #A0B659;
}
.offer--contents .profile{
  margin-left: 0;
}
.offer--contents .profile .c--logo{
  margin-right: 10px;
  float: left;
}
.offer--contents .profile .c--logo img{
  width: auto;
  max-height: 100%;
}
@media print, screen and (min-width: 560px) {
  .offer--contents {
    margin-left: 12px;
  }
}
.offer--contents a {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  left: 0;
  right: 0;
  text-indent: -100%;
  background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNgYAAAAAMAASsJTYQAAAAASUVORK5CYII=);
  z-index: 2;
}

.list--link{
  padding: 0;
  list-style: none;
  font-size: 16px;
  font-size: 1rem;
  border-top: 1px dotted #AAA;
}
.list--link li{
  padding: 1em 0;
  margin: 0;
  border-bottom: 1px dotted #AAA;
}
.list--link a:before {
  content: "";
  background-image: url(../img/common/sprite.png);
  background-position: -75px -53px;
  width: 6px;
  height: 10px;
  margin-right: 1em;
  display: inline-block;
}
.list--link a:after {
  content: "";
  background-image: url(../img/common/sprite.png);
  background-position: -75px -44px;
  width: 9px;
  height: 9px;
  margin-left: 1em;
  display: inline-block;
}

/*  btn
------------------------------------*/
.btn {
  display: inline-block;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  text-align: center;
  vertical-align: top;
  box-sizing: border-box;
}
@media screen and (max-width: 560px){
  .btn{
    width: 100%;
    margin-bottom: 10px;
  }
}
.btn--signup {
  padding: .6em .5em;
  color: #FFF;
  font-size: 26px;
  font-size: 1.625rem;
  border: none;
  background: #FE007D;
}
.btn--signup:hover {
  color: #FFF;
  text-decoration: none;
  background: #cb0064;
}
.btn--signup__login {
  font-size: 20px;
  font-size: 1.25rem;
  border: none;
  box-shadow: 0 2px #98004b;
}
.btn--signup__login:hover {
  box-shadow: 0 1px #98004b;
}
.btn--search {
  padding: 15px .5em 10px;
  background: #A2B65A;
  box-shadow: 0 2px #687634;
}
.row--search .btn--search {
  padding: 1em 4em;
}
.btn--search:hover {
  background: #96ab4c;
  box-shadow: 0 1px #687634;
}
.btn--submit {
  padding: 1em .5em;
  text-align: center;
  font-size: 20px;
  font-size: 1.25rem;
  color: #FFF;
  border: none;
  background: #A2B65A;
  box-shadow: 0 2px #687634;
}
.btn--submit:hover {
  background: #96ab4c;
  box-shadow: 0 1px #687634;
  color: #FFF;
  text-decoration: none;
}

.btn--back {
  padding: 1em .5em;
  text-align: center;
  font-size: 20px;
  font-size: 1.25rem;
  color: #FFF;
  border: none;
  background: #C0C0C0;
  box-shadow: 0 2px #808080;
}
.btn--back:hover {
  color: #FFF;
  text-decoration: none;
  background: #B6B6B6;
  box-shadow: 0 1px #808080;
}

.btn--recruit{
  height: 60px;
  width: 100%;
  margin-left: 10px;
  margin-right: 10px;
  vertical-align: top;
}
.btn--recruit:before{
  content: "";
  width: 0;
  height: 100%;
  vertical-align: middle;
  display: inline-block;
}
.btn--recruit img{
  vertical-align: middle;
}
@media print, screen and (min-width: 560px) {
  .btn--signup {
    min-width: 260px;
  }
  .btn--submit {
    min-width: 260px;
  }
  .btn--back {
    min-width: 220px;
  }
  .btn--recruit{
    max-width: 330px;
  }
}
@media screen and (max-width: 560px) {
  .btn--signup {
    margin-left: auto;
    margin-right: auto;
    width: 100%;
  }
  .btn--recruit{
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 10px;
  }
}


.btn--recruit__info{
  background: #E1DFD9;
  box-shadow: 0 2px #A8A69D;
}
.btn--recruit__info:hover{
  background: #C0C0C0;
  box-shadow: 0 1px #A8A69D;
}
.btn--recruit__app{
  background: #A2B65A;
  box-shadow: 0 2px #687634;
}
.btn--recruit__app:hover{
  background: #96ab4c;
  box-shadow: 0 1px #687634;
}
.btn--recruit__submit{
  background: #E16E2F;
  box-shadow: 0 2px #AF4E17;
}
.btn--recruit__submit:hover{
  background: #D15E2F;
  box-shadow: 0 1px #AF4E17;
}

.btn--download{
  padding: .6em .5em;
  color: #FFF;
  font-size: 26px;
  font-size: 1.625rem;
  background-color: #33B7BC;
  box-shadow: 1px solid #289295;
}
.btn--download:hover{
  color: #FFF;
  text-decoration: none;
  background-color: #289295;
}
.btn--c__top{
  display: block;
  margin: 30px auto;
}
.btn--c__top.btn--signup{
  box-shadow: 1px solid #BF0060;
}

.btn--profile{
  display: inline-block;
  padding: .5em 1em .6em;
  margin-right: 0.5em;
  margin-bottom: 10px;
  font-size: 16px;
  font-size: 1rem;
  color: #000;
  background-color: #EEE;
  border: 1px solid #EEE;
}
.btn--profile:hover{
  color: #A2B65A;
  text-decoration: none;
  border-color: #A2B65A;
}

.btn--c--offer__save {
  display: inline-block;
  height: 45px;
  border: none;
  color: #FFF;
  font-size: 16px;
  font-size: 1rem;
  font-weight: bold;
  background: #A2B65A;
  box-shadow: 0 2px #687634;
}
.btn--c--offer__save:hover {
  background-color: #96ab4c;
  box-shadow: 0 1px #687634;
}
.btn--manual a {
  display: inline-block;
  padding: .2em .5em;
  color: #333;
  background-color: #EEE;
  border: 1px solid #BBB;
}
.btn--manual a:hover {
  text-decoration: none;
  background: #bbbbbb;
}
.btn--manual a .draw:before {
  content: "";
  background-image: url(../img/common/sprite.png);
  background-position: -56px -58px;
  width: 14px;
  height: 14px;
  display: inline-block;
  margin-right: 2px;
  vertical-align: middle;
}
@media print, screen and (min-width: 560px) {
  .btn--download{
    min-width: 260px;
  }
  .btn--c__top{
    width: 450px;
  }
  .btn--c--offer__save {
    min-width: 270px;
  }
}


.btn--offer--create{
  padding: .2em .5em;
  margin-bottom: 2px;
  font-size: 12px;
  font-size: .75rem;
  color: #FFF;
  border: 1px solid #7A8C3D;
  background-color: #A2B65A;
}
@media print, screen and (min-width: 560px) {
  .btn--offer--create{
    min-width: 140px;
  }
  .btn--offer--create:first-child{
    margin-right: 2em;
  }
}
@media screen and (max-width: 560px) {
  .btn--offer--create:first-child{
    display: block;
    padding: .5em;
    margin: .5em 0 1em;
    font-size: 14em;
    font-size: 1rem;
  }
}
.btn--offer--create:hover{
  color: #FFF;
  text-decoration: none;
  background-color: #7A8C3D;
}
.btn--offer--create:before{
  content: "";
  background-image: url(../img/common/sprite.png);
  background-position: -75px 0;
  width: 13px;
  height: 13px;
  display: inline-block;
  margin-right: 2px;
  vertical-align: middle;
}
.btn--offer--create.open,
.btn--offer--create.draft,
.btn--offer--create.examination,
.btn--offer--create.end{
  min-width: 85px;
}
.btn--offer--create.open:before,
.btn--offer--create.draft:before,
.btn--offer--create.examination:before,
.btn--offer--create.end:before{
  display: none;
}
.btn--offer--create.examination {
  background-color: #0085B2;
  border-color: #0075A2;
}
.btn--offer--create.examination:hover {
  background-color: #0075A2;
}
.btn--offer--create.draft {
  background-color: #FFA64D;
  border-color: #E9943A;
}
.btn--offer--create.draft:hover {
  background-color: #E9943A;
}
.btn--offer--create.end {
  background-color: #AAA;
  border-color: #888;
}
.btn--offer--create.end:hover {
  background-color: #888;
}
@media screen and (max-width: 560px) {
  .btn--offer--create.open,
  .btn--offer--create.draft,
  .btn--offer--create.examination,
  .btn--offer--create.end{
    width: auto;
  }
}

.btn--switch {
  border-bottom: 1px solid transparent;
}
.btn--switch:hover {
  border-top: 1px solid #FFF;
  border-bottom: none;
}
.search .btn--switch{
  border-top-color: #E2ECCB;
}

.btn--m{
  padding: .6em .5em;
}
.btn--s{
  padding: .3em .5em;
}


.pagelink--menu{
  overflow: hidden;
  margin-bottom: 60px;
}
.pagelink--menu a{
  float: left;
  display: block;
  margin-right: 0.5em;
  margin-bottom: 0.5em;
  padding: .2em 1em;
  color: #777;
  background-color: #DDD;
  border-radius: 15px 15px;
}
.pagelink--menu a:hover{
  text-decoration: none;
  background-color: #BBB;
}
.pagelink--menu a:before{
  content: "";
  display: inline-block;
  width: 6px;
  height: 10px;
  margin-right: 0.5em;
  background-position: -75px -53px;
  background-image: url(../img/common/sprite.png);
}


/*  table
------------------------------------*/
.table {
  width: 100%;
}
.table th {
  text-align: left;
  box-sizing: border-box;
}
.table td {
  box-sizing: border-box;
}
@media screen and (max-width: 560px) {
  .table tr,
  .table th,
  .table td{
    display: block;
  }
}

.table--contact {
  margin: 50px 0;
  border: none;
  border-bottom: 1px solid #DDD;
}
.table--contact thead th{
  color: #FFF;
  background: #A2B75A;
}
.table--contact thead th input{
  margin-top: -3px;
  color: #000;
}
.table--contact th {
  padding: .5em .8em;
  font-weight: normal;
  vertical-align: top;
  background-color: #F3F5DA;
  border-top: 1px solid #DDD;
  border-right: 1px solid #DDD;
  border-left: 1px solid #DDD;
}
@media print, screen and (min-width: 560px) {
  .table--contact th {
    width: 246px;
  }
}
@media screen and (max-width: 560px) {
  .table--contact input[type=submit]{
    float: right;
  }
}
.table--contact th.require:after {
  content: "";
  float: right;
  margin-top: 3px;
  background-image: url(../img/common/sprite.png);
  background-position: -22px 0px;
  width: 31px;
  height: 17px;
  display: inline-block;
}
html[lang=en] .table--contact th.require:after {
  background-image: url(../img/en/common/sprite.png);
}
.table--contact td {
  padding: .5em .8em;
  border-top: 1px solid #DDD;
  border-right: 1px solid #DDD;
  border-left: 1px solid #DDD;
}
.table--contact .input {
  font-size: 14px;
  font-size: 0.875rem;
}
.table--contact .input--select--wrap:before{
  height: 1.8em;
}
.table--contact .input--select--wrap:after{
  top: 1.15em;
}
.table--profile{
  margin-bottom: 30px;
}
.table--profile tr{
  border-bottom: 1px dotted #AAA;
}
.table--profile th{
  padding: .5em 0;
  width: 165px;
  color: #A0B659;
  vertical-align: top;
}
.table--profile td{
  padding: .5em 0;
}

.table--list th{
  width: auto;
}
@media screen and (max-width: 560px){
  .table--profile th{
    width: auto;
  }
}


.input {
  padding: 0 .3em;
  width: 100%;
  line-height: 2.2;
  font-size: 16px;
  font-size: 1rem;
  outline: none;
  border: 1px solid #CCC;
  box-sizing: border-box;
}
input.input:focus, textarea:focus {
  border: 1px solid #A2B65A;
}
.input--text{
  padding: .1em 1em .1em .8em;
  margin-bottom: 2px;
  border: 1px solid #CCC;
  border-radius: 4px;
}
.input--textarea{
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.6;
  padding: .1em 1em .1em .8em;
  border: 1px solid #CCC;
  border-radius: 4px;
  box-sizing: border-box;
  outline: none;
}
.input--select{
  width: 130%;
  max-width: 100%;
  position: relative;
  -moz-appearance: none;
  -webkit-appearance: none;
  -o-appearance: none;
  -ms-appearance: none;
  appearance: none;
  font-size: 16px;
  font-size: 1rem;
  line-height: 2.2;
  height: 2.2em;
  padding: 0 50px 0 .8em;
  border: none;
  background-color: transparent;
  box-sizing: border-box;
  z-index: 2;
}
.ie .input--select{
  max-width: inherit;
}
.input--select--wrap{
  position: relative;
  display: inline-block;
  overflow: hidden;
  border: 1px solid #CCC;
  background-color: #FFF;
  border-radius: 4px;
  z-index: 10;
}
.input--select--wrap:before{
  content: "";
  position: absolute;
  top: .23em;
  right: 1px;
  height: 2em;
  width: 39px;
  border-left: 1px solid #DDD;
  background: #FFF;
}
.input--select--wrap:after{
  content: "";
  position: absolute;
  display: block;
  top: 1.25em;
  right: 15px;
  width: 12px;
  height: 8px;
  margin-top: -5px;
  background-position: -75px -36px;
  background-image: url(../img/common/sprite.png);
}

.input--select--wrap.open{
  padding-bottom: 100%;
  margin-bottom: -100%;
  z-index: 20;
}
.input--multiple{
  padding-right: 3.5em;
  text-align: left;
}
input.input--multiple:focus{
  border: none;
}
.input--multiple + ul{
  position: absolute;
  display: none;
  overflow: auto;
  list-style: none;
  width: 100%;
  height: 86%;
  margin: 0;
  padding: 0;
  border-top: 1px solid #DDD;
  background-color: #FFF;
  z-index: 20;
}
.input--multiple + ul.open{
  display: block;
}
.input--multiple + ul li{
    display: block;
    padding: 0px 2px 4px;
    white-space: pre;
    min-height: 1.2em;
}
.input--multiple + ul label{
  display: block;
  margin-right: 0;
}

textarea {
  width: 98%;
  resize: vertical;
  outline: none;
  border: 1px solid #CCC
}
select{
  cursor: pointer;
}
input[type=checkbox], input[type=radio]{
  margin-right: 5px;
  vertical-align: middle;
}

input[type=checkbox]{
  width: 18px;
  height: 18px;
  margin-right: 0.5em;
}
@media screen and (max-width: 560px){
  input+input,
  select+input,
  input+select{
    margin-top: 10px;
  }
  input+input[type=checkbox],
  select+input[type=checkbox],
  input+input[type=radio],
  select+input[type=radio]{
    margin-top: 0;
  }
}
label{
  display: inline-block;
  box-sizing: border-box;
}
input[type="file"]{
  max-width: 100%;
}
.user-profile label,
.c--register label{
  margin-right: 2em;
}

@media print, screen and (min-width: 560px) {
  .input--m {
    max-width: 200px;
  }
  .input--l {
    max-width: 500px;
  }
}


/*  signup
------------------------------------*/
.sign--box {
  padding: 1em;
  max-width: 700px;
  border: 1px solid #DDD;
  box-sizing: border-box;
}
@media print, screen and (min-width: 560px) {
  .sign--box {
    padding: 3em 6em;
    margin: 0 auto;
  }
}

.sign--dialog dt {
  font-size: 16px;
  font-size: 1rem;
}
.sign--dialog dd {
  margin-left: 0;
}
@media print, screen and (min-width: 560px) {
  .sign--dialog {
    margin-bottom: 2em;
  }
  .sign--dialog dt {
    display: inline-block;
    padding-top: .5em;
    width: 7em;
    vertical-align: top;
  }
  .sign--dialog dd {
    display: inline-block;
    width: 400px;
  }
}

/* ------------------------------------------------------------

    block

------------------------------------------------------------ */
.col {
  float: left;
  box-sizing: border-box;
}

.col--12 {
  width: 100%;
}
.col--11 {
  width: 91.66666667%;
}
.col--10 {
  width: 83.33333333%;
}
.col--9 {
  width: 75%;
}
.col--8 {
  width: 66.66666667%;
}
.col--7 {
  width: 58.33333333%;
}
.col--6 {
  width: 50%;
}
.col--5 {
  width: 41.66666667%;
}
.col--4 {
  width: 33.33333333%;
}
.col--3 {
  width: 25%;
}
.col--2 {
  width: 16.66666667%;
}
.col--1 {
  width: 8.33333333%;
}
.row--search {
  margin-top: 20px;
}
.row--login {
  margin: 50px 0;
}

.dialog dt {
  float: left;
  margin-right: 10px;
}
.dialog dd {
  overflow: hidden;
}

.overflow {
  overflow: hidden;
}

.fl--l {
  float: left;
}
.fl--r {
  float: right;
}

.fl--box.fl--l {
  margin-right: 20px;
}
.fl--box.fl--r {
  margin-left: 20px;
}

.mb--s {
  margin-bottom: 10px;
}
.mb--m {
  margin-bottom: 30px;
}
.mb--l {
  margin-bottom: 60px;
}
@media print, screen and (min-width: 560px) {
  .fl--md--l {
    float: left;
  }
  .fl--md--r {
    float: right;
  }
}

/* ------------------------------------------------------------

    element

------------------------------------------------------------ */
.opa:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=75);
  opacity: 0.75;
}

.txt--center {
  text-align: center;
}
.txt--right {
  text-align: right;
}
.txt--s {
  font-size: 12px;
  font-size: 0.75rem;
}
.txt--m {
  font-size: 18px;
  font-size: 1.125rem;
}
.txt--l {
  font-size: 20px;
  font-size: 1.25rem;
}

.bold {
  font-weight: bold;
}

.color--caution {
  color: #D80000;
}

.icon--arrow:before {
  content: "";
  background-image: url(../img/common/sprite.png);
  background-position: -44px -51px;
  width: 8px;
  height: 7px;
  display: inline-block;
  vertical-align: middle;
}
.icon--snap:before{
  content: "";
  background-image: url(../img/common/sprite.png);
  background-position: -53px -22px;
  width: 18px;
  height: 14px;
  margin-right: .5em;
  display: inline-block;
  vertical-align: middle;
}

.red {
  color: #FF0000;
}
.blue {
  color: #0000ff;
}
.center {
  margin: 0 auto;
}


@media screen and (max-width: 560px) {
  .sm--center {
    text-align: center;
  }
  .sm--none {
    display: none !important;
  }
}
@media print, screen and (min-width: 560px) {
  .md--none {
    display: none !important;
  }
}

/* ------------------------------------------------------------

    themes

------------------------------------------------------------ */
/*  TOP
------------------------------ */
.top-visual {
  margin-top: -20px;
  padding-top: 20px;
  min-height: 140px;
  background: url(../img/top/img_visual_sp.png) no-repeat center top;
  box-sizing: border-box;
  background-size: contain;
}
@media print, screen and (min-width: 560px) {
  .top-visual {
    padding-top: 60px;
    margin-top: -71px;
    height: 866px;
    background: url(../img/top/img_visual.png) no-repeat center top;
  }
}
@media print, screen and (min-width: 560px) {
  .top-visual--bg {
    background: #F5F5F5;
    padding-top: 10px;
  }
}

.top-concept {
  font-size: 70px;
  font-size: 4.375rem;
  line-height: 1.4;
  font-weight: normal;
}
.top-concept img{
  margin-top: 130px;
}
html[lang=en] .top-concept img{
  margin-top: 100px;
}
@media screen and (max-width: 560px) {
  html .top-concept {
    font-size: 24px;
    font-size: 1.5rem;
    margin: 0;
  }
}
.top-visual--inner {
  margin-top: -38em;
  padding-bottom: 47px;
}
.top-c--visual--inner {
  margin-top: -180px;
  padding-bottom: 0;
}
.top-description {
  font-size: 17px;
  font-size: 1.0625rem;
}

@media print, screen and (min-width: 560px) {
  .top-description{
    width: 60%;
  }
  html[lang=en] .top-c--visual--inner{
    margin-top: -200px;
  }
}
@media screen and (max-width: 560px) {
  .top-visual--inner {
    margin-top: 0;
    padding-bottom: 20px;
  }
}

.top-signup {
  box-shadow: 7px 7px 6px rgba(0, 0, 0, 0.15);
}

/*  login
------------------------------ */
.btn.login--signup{
  min-width: auto;
  padding: .5em 1em;
  font-size: 20px;
  font-size: 1.25rem;
}
@media print, screen and (min-width: 560px) {
  .login--information--txt{
    margin-top: .5em;
    margin-bottom: 0;
  }
}

/*  user--mypage, user--recruit
------------------------------------*/
.mypage-top .offer--pagenation{
  background: #FFF;
}
.mypage-top, .recruit-top{
  margin-top: -40px;
  overflow: hidden;
}
.mypage-top .icon--snap{
  display: block;
  padding-top: 10px;
}
.mypage-top .wrap, .recruit-top .wrap{
  overflow: hidden;
}
.mypage-thumb, .recruit-thumb{
  float: left;
  margin: 5px 30px 30px 5px;
  width: 155px;
  height: 155px;
  text-align: center;
  background-color: #FFF;
  border: 5px solid #FFF;
  outline: 1px solid #DDD;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.mypage-thumb img, .recruit-thumb img{
  vertical-align: middle;
  max-height: 100%;
  width: auto;
}
html[lang=en] .mypage-thumb .btn, html[lang=en] .recruit-thumb .btn{
  font-size: 13px;
  font-size: .8125rem;
}
.mypage-top h2, .recruit-top h2{
  padding-top: 40px;
  margin-top: .5em;
  margin-bottom: .3em;
  font-size: 38px;
  font-size: 2.375rem;
  color: #A0B659;
}
@media screen and (max-width: 560px) {
  .mypage-top, .recruit-top{
    margin-top: 0;
    text-align: center;
  }
  .mypage-thumb, .recruit-thumb{
    float: none;
    margin: 5px auto 0;
  }
  .mypage-top h2, .recruit-top h2{
    padding-top: 0;
  }
}
.mypage-thumb_box,
.recruit-thumb_box {
    display: table-cell;
    width: 150pc;
    height: 150px;
    vertical-align: middle;
}
.icon-url{
  display: inline-block;
  padding: .1em .3em;
  margin: 5px;
  color: #FFF;
  font-size: 12px;
  font-size: .75rem;
  background: #A2B65A;
  border-radius: 3px;
}
.recruit-info{
  overflow: hidden;
  padding-bottom: 50px;
  margin-bottom: 50px;
  border-bottom: 1px solid #DDD;
}
.recruit-info .table--contact{
  margin-top: 20px;
}
.recruit-txt h3{
  font-size: 26px;
  font-size: 1.625rem;
}
.c--register .btn--back{
  padding: .3em .5em;
}
.recruit-info .btn--back{
  padding: .5em;
}
.recruit-pic{
  text-align: center;
}
@media print, screen and (min-width: 560px) {
  .recruit-txt{
    float: left;
    width: 48%;
  }
  .recruit-pic{
    float: right;
    width: 50%;
  }
}

/*  user--profile
------------------------------------*/
.profile-mater{
  position: relative;
  padding: 1.3em;
  float: right;
  width: 250px;
  background-color: #F8F8F8;
  box-sizing: border-box;
}
@media screen and (max-width: 560px) {
  .profile-mater{
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    opacity: 0;
    display: none\9;
  }
}
#mater{
  display: block;
  margin: 10px auto;
}
.profile-mater__per{
  position: absolute;
  left: 0;
  top: 105px;
  width: 100%;
  text-align: center;
}
.profile-mater__per span{
  font-size: 36px;
  font-size: 2.25rem;
  color: #FF3F00;
  letter-spacing: -2px;
}
.profile-mater ul{
  position: relative;
  list-style: none;
  padding-left: 0;
  background-color: #F8F8F8;
  border-bottom: 1px dotted #AAA;
  z-index: 2;
}
.profile-mater li{
  padding: .3em 0;
  border-top: 1px dotted #AAA;
  font-size: 12px;
  font-size: 0.75rem;
}
.profile-mater li:before{
  content: "";
  display: inline-block;
  margin-right: 5px;
  background: url(../img/common/sprite.png);
  width: 14px;
  height: 12px;
  background-position: -14px -73px;
  vertical-align: middle;
}
.profile-mater li.check:before{
  background-position: 0 -73px;
}
.profile-mater li span{
  float: right;
}

.user-profile{
  max-width: 720px;
  overflow: hidden;
  padding: 0 10px;
  margin: 0 auto;
  box-sizing: border-box;
}
.sign--box .btn--signup__login,
.user-profile .btn--signup__login{
  font-size: 26px;
  font-size: 1.25rem;
}

@media print, screen and (min-width: 560px){
  .sign--box .btn--back{
    min-width: 180px;
  }
}
@media screen and (max-width: 560px) {
  .user-profile{
    width: 100%;
    float: none;
  }
  .sign--box .btn--signup__login,
  .user-profile .btn--signup__login{
    font-size: 20px;
    font-size: 1.625rem;
  }
}
.user-profile--block{
  padding: 0 1em 2em 1em;
  margin-bottom: 10px;
  background-color: #FFF;
  border: 1px solid #DDD;
  box-sizing: border-box;
}
.user-profile--block h2{
  position: relative;
  padding-left: 1em;
  margin-top: .5em;
  margin-left: -1.5em;
  margin-bottom: 1em;
  font-size: 16px;
  font-size: 1rem;
  color: #FFF;
  line-height: 2;
  background-color: #A2B65A;
  box-sizing: border-box;
}
.user-profile--block h2:before{
  content: "";
  position: absolute;
  left: 0;
  bottom: -15px;
  width: 0;
  height: 0;
  border-top: 15px solid transparent;
  border-right: 15px solid #7D8F3F;
  border-bottom: 15px solid transparent;
  z-index: -1;
}
span.require{
  display: inline-block;
  padding: .25em .5em .3em;
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1;
  background-color: #FFF;
  vertical-align: middle;
  margin-left: 0.5em;
}


/*  customer
------------------------------------*/
.c--logo {
  width: 42px;
  height: 42px;
}
.c--nav{
  padding-top: 15px;
  margin-bottom: 30px;
  background-color: #EAEAEA;
}
.c--nav a{
  display: inline-block;
  padding: .5em 1em;
  margin-right: 1em;
  border-bottom: 3px solid transparent;
  box-sizing: border-box;
}
.c--nav a:hover, .c--nav a.current{
  color: #A1B659;
  text-decoration: none;
  border-bottom: 3px solid #A2B65A;
}
@media screen and (max-width: 560px){
  .c--nav a{
    padding: .5em;
  }
}
.mobile .c--nav{
  overflow: auto;
}
.mobile .c--nav .wrap{
  width: 50em;
}
.mobile .c--nav a{
  padding: .5em 1em 1em;
}

/*  TOP-Costomer
------------------------------ */
.top-c--visual {
  padding: 0;
  background: url(../img/top_c/img_visual.jpg) no-repeat center top;
  background-size: contain;
}
@media print, screen and (min-width: 560px) {
  .top-c--visual {
    margin-top: -69px;
    height: 494px;
  }
}
.top-c__point--wrap{
  padding-bottom: 80px;
  margin-bottom: 80px;
  border-bottom: 1px solid #DDD;
}
.top-c__point{
  float: left;
  width: 31%;
  margin-left: 3.5%;
  border: 1px solid #A2B65A;
  background-color: #A2B65A;
  box-sizing: border-box;
}
@media screen and (max-width: 560px) {
  .top-c__point{
    float: none;
    width: 100%;
    margin-left: 0;
    margin-bottom: 20px;
  }
}
.top-c__point:first-child{
  margin-left: 0;
}
.top-c__point p{
  padding: 2em 1em;
  margin-bottom: 0;
  background-color: #F8F8F8;
}
@media print, screen and (min-width: 560px) {
  .top-c__point p{
    height: 210px;
  }
  html[lang=en] .top-c__point p{
    height: 19em;
  }
}
@media screen and (max-width: 560px) {
  html .top-c__point p{
    height: auto;
  }
}
.top-c__point--ttl{
  position: relative;
  display: table-cell;
  padding: .3em .5em;
  margin: 0;
  height: 86px;
  font-weight: normal;
  color: #FFF;
  font-size: 18px;
  font-size: 1.125rem;
  vertical-align: middle;
  box-sizing: border-box;
  z-index: 2;
}
html[lang=en] .top-c__point--ttl{
  height: 8em;
}
@media screen and (max-width: 560px) {
  html .top-c__point--ttl{
    height: auto;
  }
  html[lang=en] .top-c__point--ttl{
    height: auto;
  }
}
.top-c__point--ttl:before{
  content: "";
  position: absolute;
  left: 10px;
  bottom: -13px;
  width: 0;
  height: 0;
  border-top: 20px solid transparent;
  border-bottom: 20px solid transparent;
  border-right: 20px solid #A2B65A;
  z-index: -1;
}

.top-c__ttl{
  margin-top: 60px;
  font-size: 32px;
  font-size: 2rem;
  font-weight: normal;
}
@media screen and (max-width: 560px){
  .top-c__ttl{
    font-size: 26px;
    font-size: 1.625rem;
  }
}

.top-c__flow{
  overflow: hidden;
  padding-left: 0;
  list-style: none;
  margin-bottom: 60px;
}
.top-c__flow li{
  position: relative;
  float: left;
  margin-left: 23px;
  width: 175px;
  height: 175px;
  text-align: center;
  line-height: 1.3;
  font-size: 22px;
  font-size: 1.375rem;
  background-color: #EBEEEF;
  border-radius: 100%;
}
.top-c__flow li > span{
  display: inline-block;
  vertical-align: middle;
}
.top-c__flow li:before{
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 0;
  height: 100%;
}
.top-c__flow li:after{
  content: "";
  position: absolute;
  top: 50%;
  right: -20px;
  margin-top: -18px;
  border-top: 18px solid transparent;
  border-bottom: 18px solid transparent;
  border-left: 18px solid #BBB;
}

.top-c__flow .signup{
  margin-left: 0;
  color: #FFF;
  background-color: #FE007D;
}
.top-c__flow .login{
  background-color: #FC0;
}
.top-c__flow .start{
  color: #FFF;
  background-color: #A2B65A;
}
.top-c__flow .start:after{
  display: none;
}

@media screen and (max-width: 560px) {
  .top-c__flow li{
    float: none;
    margin: 23px auto;
  }
  .top-c__flow .signup{
    margin: 23px auto;
  }
  .top-c__flow li:after{
      top: inherit;
      right: inherit;
      bottom: -40px;
      left: 50%;
      margin-left: -18px;
      margin-top: -18px;
      border-top: 18px solid #BBB;
      border-right: 18px solid transparent;
      border-bottom: 18px solid transparent;
      border-left: 18px solid transparent;
  }
}

/*  customer--mypage
------------------------------------*/
.information{
  padding: 1em ;
  margin-bottom: 30px;
  border: 2px solid #DDD;
  border-radius: 5px;
  box-sizing: border-box;
}
.information--dl dd{
  margin-left: 0;
}
.information--def{
  margin-bottom: 2em;
}
.information--def dd{
  margin-left: 0;
}

.c--profile{
  padding: 0 1em 2em 1em;
  margin-bottom: 10px;
  background-color: #FFF;
  border: 1px solid #DDD;
  box-sizing: border-box;
}
.c--profile h2{
  position: relative;
  padding-left: 1em;
  margin-top: .5em;
  margin-left: -1.5em;
  margin-bottom: 0;
  font-size: 16px;
  font-size: 1rem;
  color: #FFF;
  line-height: 2;
  background-color: #A2B65A;
  box-sizing: border-box;
}
.c--profile h2:before{
  content: "";
  position: absolute;
  left: 0;
  bottom: -15px;
  width: 0;
  height: 0;
  border-top: 15px solid transparent;
  border-right: 15px solid #7D8F3F;
  border-bottom: 15px solid transparent;
  z-index: -1;
}


/*  customer--offer
------------------------------------*/
.c--possible{
  margin-bottom: 30px;
  font-size: 16px;
  font-size: 1rem;
  color: #D80000;
  font-weight: bold;
}
.offer--pagenation{
  overflow: hidden;
  padding: 5px;
  margin-bottom: 10px;
  background-color: #F8F8F8;
  box-sizing: border-box;
}
@media screen and (max-width: 560px){
  .offer--pagenation__navi{
    float: none;
    text-align: right;
  }
}
.offer--pagenation + .table--contact{
  margin-top: 0.5em;
}
.pagenation__navi__btn{
  display: inline-block;
  width: 19px;
  height: 19px;
  line-height: 20px;
  text-align: center;
  color: #C9C9C9;
  background-color: #FCFCFC;
  border: 1px solid #DEDEDE;
}
a.pagenation__navi__btn{
  color: #777;
  border-color: #777;
}

.c--offer--list .c--offer--block dt{
  font-size: 16px;
  font-size: 1rem;
  color: #A0B659;
  font-weight: bold;
}
.c--offer--list .c--offer--block dd{
  font-size: 12px;
  font-size: 0.75rem;
  margin-left: 0;
  margin-bottom: 5px;
  color: #777;
}
.c--offer--list .c--offer--block dd div span{
  display: inline-block;
  margin-left: 1em;
}
.c--offer--block {
  padding: 1em 1em .5em 1em;
  border-top: 1px solid #DDD;
  border-right: 1px solid #DDD;
  border-bottom: 1px solid #DDD;
  border-left: 2px solid #DDD;
  margin-bottom: 20px;
}
.c--offer--block dl{
  margin: 0 0 .5em 0;
  border-bottom: 1px dotted #AAA;
}
.c--offer--block dt{
  font-size: 16px;
  font-size: 1rem;
}
.c--offer--block .btn--manual{
  margin-bottom: 0.2em;
}
.c--offer--block.active {
  border-left-color: #A2B65A;
}
.c--offer--block .state {
  float: left;
  display: inline-block;
  margin-top: .2em;
  margin-bottom: 10px;
  padding: .2em;
  min-width: 62px;
  color: #FFF;
  text-align: center;
  font-size: 12px;
  font-size: 0.75rem;
  -moz-border-radius: 11px;
  -webkit-border-radius: 11px;
  border-radius: 11px;
}
.c--offer--block .open {
  background-color: #A2B65A;
}
.c--offer--block .examination {
  background-color: #0085B2;
}
.c--offer--block .draft {
  background-color: #FFA64D;
}
.c--offer--block .end {
  width: 50px;
  background-color: #AAA;
}
@media print, screen and (min-width: 560px) {
  .c--offer--list .c--offer--block dd div{
    float: right;
  }

}

/*  customer--register
------------------------------------*/
.c--register{
  margin-bottom: 60px;
}
.c--register h2{
  margin-bottom: 0;
  font-size: 16px;
  font-size: 1rem;
  line-height: 40px;
  background-color: #EEE;
  border: 1px solid #DDD;
  box-sizing: border-box;
}
.c--register h2 span{
  display: table-cell;
  padding: .5em .8em;
  min-width: 5em;
  border-left: 1px solid #DDD;
  vertical-align: middle;
  line-height: 1.6;
  box-sizing: border-box;
}
.c--register h2 span:first-child{
  border-left: none;
  border-right: 1px solid #FFF;
}
.c--register--inner{
  margin: 20px auto;
  padding-bottom: 20px;
  border-bottom: 1px dotted #AAA;
  box-sizing: border-box;
}
.c--register--inner dl{
  display: inline-block;
  vertical-align: top;
  margin-top: 0;
}
.c--register--inner.step03 dl{
  width: 100%;
}
.c--register--inner dt{
  min-height: 1.5em;
  font-size: 12px;
  font-size: .75rem;
  color: #868686;
}
.c--register--inner dd{
  margin-left: 0;
  vertical-align: bottom;
}
.c--register--inner .dialog{
  margin-top: 1em;
  display: block;
}
.c--register--inner .dialog dt{
  font-size: 14px;
  font-size: .875rem;
  color: #000;
  font-weight: bold;
}

@media print, screen and (min-width: 560px){
  .c--register--inner .thumb{
    float: left;
    margin-right: 30px;
  }
}
@media screen and (max-width: 560px){
  .c--register--inner dl{
    width: 100%;
  }
}

/*  faq
------------------------------------*/
.faq > dl > dt{
  margin: 2em 0 1em;
  font-size: 16px;
  font-size: 1rem;
  font-weight: bold;
  color: #9FB659;
}
.faq > dl > dt:before{
  content: "Q";
  display: inline-block;
  margin-right: 10px;
  width: 48px;
  height: 48px;
  line-height: 48px;
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: normal;
  text-align: center;
  color: #FFF;
  background-color: #A2B65A;
  border-radius: 100%;
  vertical-align: middle;
}
.faq > dl > dd{
  position: relative;
  padding-left: 58px;
  margin-left: 0;
  padding-top: 10px;
  padding-bottom: 2em;
  border-bottom: 1px dotted #AAA;
}
.faq > dl > dd:before{
  content: "A";
  position: absolute;
  display: inline-block;
  margin-right: 10px;
  width: 48px;
  height: 48px;
  top: 0;
  left: 0;
  line-height: 48px;
  font-size: 24px;
  font-size: 1.5rem;
  font-weight: normal;
  text-align: center;
  color: #FFF;
  background-color: #FE007D;
  border-radius: 100%;
}
.faq dd li dd{
  margin-left: 0;
}

html[lang=ja] .ja--none {
  display: none;
}
html[lang=en] .en--none {
  display: none;
}