.main-contents {
  float: right;

  width: 630px;
}

.sub-contents {
  float: left;

  width: 300px;
  margin-right: 20px;
}

.main {
  width: 100%;

  background-color: #fff;
  background-image: url(https://s.yimg.jp/images/premium/cre/service/common/pc/images/mv_bg.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 1372px 228px;
}

.main__ttl {
  width: 950px;
  height: 228px;
  margin: 0 auto;
  padding: 44px 80px;

  text-align: left;
}

.main__img {
  width: 334px;
  height: auto;
}

.main-sb {
  width: 100%;

  background-color: #d41322;
}

.main-sb__ttl {
  width: 950px;
  height: 228px;
  margin: 0 auto;
  padding: 30px 20px 10px;

  text-align: left;
}

.main-sb__img {
  width: 912px;
  height: auto;
}

.main-prm {
  width: 100%;

  background-color: #d41322;
}

.main-prm__ttl {
  width: 950px;
  height: 228px;
  margin: 0 auto;
  padding: 30px 20px 10px;

  text-align: left;
}

.main-prm__img {
  width: 912px;
  height: auto;
}

.mod {
  padding: 20px;
}

.mod__ttl-box {
  position: relative;

  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;

  padding: 0 0 10px;

  vertical-align: bottom;

  border-bottom: 1px solid #e5e5e5;
}

.mod__ttl {
  display: inline-block;

  height: 1.5em;

  font-size: 128.6%;
  font-weight: bold;
}

.mod__ttl:after {
  width: 0;
  height: 0;
  margin-right: 1px;

  content: ".";

  color: transparent;

  font-size: 0;
}

.mod__ttl-link {
  position: absolute;
  top: 0;
  right: 0;

  line-height: 1.9em;
}

.mod__btn {
  display: block;

  padding: 12px 10px;

  text-align: center;

  color: #484848;
  background-color: #fff;

  font-size: 100%;
  font-weight: bold;
}

.mod__btn-link {
  color: #484848;
}

.introduction {
  display: block;

  margin-bottom: 20px;
}

.introduction__ttl {
  margin-bottom: 10px;
  padding: 13px 0;

  text-align: center;

  background-image: url(https://s.yimg.jp/images/premium/cre/service/common/pc/images/intro_ttl_bg.png);
  background-repeat: repeat;
  background-size: 16px 16px;
}

.introduction__ttl-text {
  padding: 10px 0 10px 40px;

  color: #fff;
  background-image: url(https://s.yimg.jp/images/premium/cre/service/common/pc/images/intro_ttl_tcube.png);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 35px auto;

  font-size: 178.5%;
  font-weight: bold;
}

.introduction__box {
  display: block;

  margin: 0 auto 3px;
  padding: 0;
}

.introduction__box-big {
  display: block;

  margin: 3px 0 0;

  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;

  border-radius: 2px;
  background-color: #fff;
  -webkit-box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1);
}

.introduction__box-big:hover {
  background-color: #fafafa;
}

.introduction__box-sub {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  zoom: 1;

  margin: 0 auto;
}

.introduction__box-sub:after {
  display: block;
  visibility: hidden;
  clear: both;

  width: 0;
  height: 0;

  content: ".";
}

.introduction__box-small {
  float: left;

  width: 208px;
  margin: 0 3px 0 0;

  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;

  border-radius: 2px;
  background-color: #fff;
  -webkit-box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1);

  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

.introduction__box-small:hover {
  background-color: #fafafa;
}

.introduction__box-small:nth-child(3n) {
  margin-right: 0;
}

.introitem__shp-bg {
  background-image: url(https://s.yimg.jp/images/premium/cre/service/common/pc/images/shpbg.png);
  background-repeat: no-repeat;
  background-position: right bottom;
  background-size: contain;
}

.introitem__lohaco-bg {
  background-image: url(https://s.yimg.jp/images/premium/cre/service/common/pc/images/lohacobg.png);
  background-repeat: no-repeat;
  background-position: right bottom;
  background-size: contain;
}

.introitem__shp-x5 {
  display: block;

  height: 160px;

  text-indent: -9999px;

  background-image: url(https://s.yimg.jp/images/premium/cre/service/common/pc/images/shp--x5item.png);
  background-repeat: no-repeat;
  background-position: 36px 50%;
  background-size: 204px 111px;
}

.introitem__lohaco-x5 {
  display: block;

  height: 160px;

  text-indent: -9999px;

  background-image: url(https://s.yimg.jp/images/premium/cre/service/common/pc/images/lohaco--x5item.png);
  background-repeat: no-repeat;
  background-position: 36px 50%;
  background-size: 216px 106px;
}

.introitem__shp-x10 {
  display: block;

  height: 160px;

  text-indent: -9999px;

  background-image: url(https://s.yimg.jp/images/premium/cre/service/common/pc/images/shp--x10item.png);
  background-repeat: no-repeat;
  background-position: 36px 50%;
  background-size: 204px 111px;
}

.introitem__lohaco-x10 {
  display: block;

  height: 160px;

  text-indent: -9999px;

  background-image: url(https://s.yimg.jp/images/premium/cre/service/common/pc/images/lohaco--x10item.png);
  background-repeat: no-repeat;
  background-position: 36px 50%;
  background-size: 216px 106px;
}

.introsubitem__trv {
  display: block;

  width: 100%;
  height: 140px;

  text-indent: -9999px;

  background-image: url(https://s.yimg.jp/images/premium/cre/service/common/pc/images/trv_item.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 127px 93px;
}

.introsubitem__book {
  display: block;

  width: 100%;
  height: 140px;

  text-indent: -9999px;

  background-image: url(https://s.yimg.jp/images/premium/cre/service/common/pc/images/book_item.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 131px 88px;
}

.introsubitem__gyao {
  display: block;

  width: 100%;
  height: 140px;

  text-indent: -9999px;

  background-image: url(https://s.yimg.jp/images/premium/cre/service/common/pc/images/gyao_item.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 127px 91px;
}

.service {
  overflow: hidden;

  width: 100%;
  margin: 0 auto 20px;

  background-color: #fff;
  -webkit-box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1);
}

.service__list {
  margin: 10px 0;
}

.service__item {
  display: inline-block;
  float: left;

  margin-left: 10px;

  vertical-align: top;
}

.service__item:first-child {
  margin-left: 0;
}

.service__link {
  display: block;

  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;

  opacity: 1;
}

.service__link:hover {
  opacity: 0.8;
}

.service__img-box {
  display: table-cell;

  width: 140px;
  height: 105px;

  text-align: center;
  vertical-align: middle;

  background-color: #f5f5f5;
}

.service__text-box {
  display: block;

  width: 140px;
  padding-top: 5px;
}

.service-img-box__img {
  width: 140px;
  height: 105px;
}

.service-text-box__ttl {
  margin-bottom: 5px;

  color: #484848;

  font-size: 100%;
  font-weight: bold;
  line-height: 1.2em;
}

.service-text-box__description {
  overflow: hidden;

  color: #484848;

  font-size: 85.7%;
}

.service-text-box__text {
  display: block;
  overflow: hidden;

  width: 140px;
  margin-bottom: 5px;

  color: #e62e2e;

  font-size: 92.8%;
  font-weight: bold;
}

.service-text-box__tag-list {
  display: block;
  overflow: hidden;

  height: 1.2em;
}

.service-tag-list__tag {
  display: inline-block;
  overflow: hidden;

  max-width: 82px;
  margin: 0 3px 0 0;
  padding: 2px 3px;

  vertical-align: top;
  white-space: nowrap;
  text-overflow: ellipsis;

  color: #fff;
  background-color: #7b7b7b;

  font-size: 78.6%;
  font-weight: bold;
  line-height: 1em;
}

.service-tag-list__tag--category {
  color: #484848;
  background-color: #f5f5f5;
}

.personal {
  padding: 30px 15px;

  background-color: #fff;

  line-height: 1.3em;
}

.personal__outer {
  margin-bottom: 20px;
}

.personal__ttl--emphasis {
  font-weight: bold;
}

.personal__text {
  font-size: 142.9%;
  font-weight: bold;
  line-height: 1.3em;
}

.personal__text--moderate {
  font-size: 78.6%;
}

.personal__note {
  font-size: 85.7%;
}

.personal__note--emphasis {
  font-size: 128.6%;
}

.personal__sub-text {
  font-size: 85.7%;
}

.icon__premium {
  display: inline-block;

  width: 23px;
  height: 23px;
  padding-right: 4px;

  vertical-align: middle;
  text-indent: -9999px;

  background-image: url(https://s.yimg.jp/c/icon/s/bsc/2.0/premium40.png);
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: 20px;
}

.action {
  padding: 30px 15px;

  border-top: 1px solid #e5e5e5;
  background-color: #fff;
}

.smart-login__box {
  margin-bottom: 5px;

  text-align: center;
}

.smart-login__ttl {
  text-align: left;

  font-size: 107.1%;
  font-weight: bold;
}

.smart-login__ttl-sub {
  font-size: 85.7%;
}

.smart-login__img {
  width: 146px;
  height: 146px;
}

.smart-login__text {
  margin-top: 15px;

  text-align: left;

  font-size: 85.7%;
}

.smart-login__note {
  margin-top: 10px;

  text-align: center;

  font-size: 85.7%;
}

.smart-login__note-link {
  text-decoration: underline;

  color: #484848;
}

.limited {
  margin-bottom: 30px;
}

.limited__img-box {
  display: block;

  width: 300px;
  height: 203px;

  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;

  opacity: 1;
  background-color: #666;
}

.limited__img-box:hover {
  opacity: 0.8;
}

.limited__img {
  width: 100%;
}

.career {
  margin: 0 auto 30px;
}

.career__item {
  margin-bottom: 20px;

  text-align: center;
}

.career__link {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;

  opacity: 1;
}

.career__link:hover {
  opacity: 0.8;
}

.career__img {
  width: 300px;
}

.recommend {
  border-top: 1px solid #ddd;
}

.recommend__ttl-box {
  position: relative;

  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;

  margin-bottom: 10px;
  padding-top: 30px;

  vertical-align: bottom;
}

.recommend__ttl {
  display: inline-block;

  font-weight: bold;
}

.recommend__text-link {
  position: absolute;
  right: 0;

  line-height: 1.9em;
}

.recommend__item {
  margin-bottom: 10px;

  text-align: center;
}

.recommend__link {
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;

  opacity: 1;
}

.recommend__link:hover {
  opacity: 0.8;
}

.recommend__img {
  width: 300px;
  height: auto;
}

.entry {
  z-index: 2;

  clear: both;

  padding: 20px 0;

  border-bottom: 2px solid #e62e2e;
  background-color: #fff;
  -webkit-box-shadow: rgba(156, 156, 156, 0.4) 0 2px 2px -1px;
  box-shadow: rgba(156, 156, 156, 0.4) 0 2px 2px -1px;
}

.entry__inner {
  position: relative;

  display: block;

  width: 950px;
  height: 60px;
  margin: 0 auto;
}

.entry__ttl-box {
  position: absolute;
  left: 85px;

  float: left;

  width: 150px;
  padding: 10px 0 10px 10px;

  text-align: left;

  background-color: #f5f5f5;
}

.entry__ttl-box:after {
  position: absolute;
  top: 0;
  right: -20px;

  width: 0;
  height: 0;

  content: "";

  border-width: 31px 0 31px 20px;
  border-style: solid;
  border-color: transparent transparent transparent #f5f5f5;
}

.entry__text-box {
  float: right;

  padding-top: 12px;

  text-align: right;
}

.entry__btn {
  position: relative;
  position: absolute;
  left: 290px;

  display: inline-block;

  width: 390px;
  margin: 0 auto;

  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;

  opacity: 1;
  border-radius: 4px;
  background-color: #ff781c;
  -webkit-box-shadow: 0 5px 0 0 #d66314;
  box-shadow: 0 5px 0 0 #d66314;

  font-size: 128.6%;
  font-weight: bold;
}

.entry__btn:hover {
  opacity: 0.7;
}

.entry__btn:active {
  top: 5px;

  -webkit-box-shadow: none;
  box-shadow: none;
}

.entry__cp-btn {
  position: relative;
  position: absolute;
  left: 290px;

  display: inline-block;

  width: 390px;
  margin: 0 auto;

  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;

  opacity: 1;
  border-radius: 4px;
  background-color: #ff781c;
  -webkit-box-shadow: 0 5px 0 0 #d66314;
  box-shadow: 0 5px 0 0 #d66314;

  font-size: 128.6%;
  font-weight: bold;
}

.entry__cp-btn:hover {
  opacity: 0.7;
}

.entry__cp-btn:active {
  top: 5px;

  -webkit-box-shadow: none;
  box-shadow: none;
}

.entry__btn-text {
  display: block;

  padding: 15px 10px;

  color: #fff;
}

.entry__btn-text:hover {
  color: #fff;
}

.fixed {
  position: fixed;
  z-index: 10000;
  top: 0;

  width: 100%;
}
