@charset "UTF-8";
/*=============================================================
 00_layout.css
=============================================================*/
@import url('https://fonts.googleapis.com/css?family=Muli:300,400');

/* =====================================================
 * reset.css
 * - Edit html5doctor.com's CSS
 * - http://html5doctor.com/html-5-reset-stylesheet/
 * Last Updated:2017-03-01
====================================================== */
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video,input,select,textarea{margin:0;padding:0;border:0;outline:0;font-size:100%;font-style:normal;font-weight:400;vertical-align:bottom;background:transparent;}
article,aside,details,figcaption,figure,footer,header,menu,nav,section{display:block;}
html{font-size:62.5%;}
body{font-family:sans-serif;line-height:1;}
ul,ol{list-style:none;}
blockquote,q {quotes:none;}
blockquote:before,blockquote:after,q:before,q:after{content:'';content:none;}
a{margin:0;padding:0;vertical-align:bottom;background:transparent;outline:none;}
img{vertical-align:bottom;}
ins{background-color:#ff9;color:#000;text-decoration:none;}
mark{background-color:#ff9;color:#000;font-style:italic;font-weight:bold;}
del{text-decoration:line-through;}
abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help;}
table{border-collapse:collapse;border-spacing:0;width:100%;}
th,td{text-align:left;vertical-align:top;}
input,select,textarea{font-family:inherit;}
input[type="submit"]{cursor:pointer;}
hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0;}


/*!  init
================================================ */
@font-face { font-family: "Original Yu Gothic"; src: local("Yu Gothic Medium"), local("YuGothic-Medium"); }
@font-face { font-family: "Original Yu Gothic"; src: local("Yu Gothic Bold")  , local("YuGothic-Bold")  ; font-weight: bold; }
/* global box-sizing */
*,
*:after,
*:before {
  box-sizing : border-box;
  font-smoothing : antialiased;
  text-rendering : optimizeLegibility;
}

body {
  color : #333333;
  line-height : 1.5;
  background-color : #fff;
  /*font-family: "ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";*/
  font-family: YuGothic, "Original Yu Gothic", Meiryo, sans-serif;
  font-size : 1.6rem;
}
@media (max-width: 768px) {
  body {
    font-size: 1.4rem;
  }
}



p {
  -webkit-text-size-adjust : 100%;
}
a {
  color : #333333;
}
a:hover {
  transition : all .3s;
  opacity: 0.8;
}
img {
  max-width: 100%;
  height: auto;
}

input[type=text],
input[type=date],
input[type=email],
input[type=password],
textarea,
select {
  box-shadow: none;
  padding: 8px;
  border: 1px solid #cccccc;
  border-radius: 8px;
}
@media (max-width: 768px) {
  input[type=text],
  input[type=date],
  input[type=email],
  input[type=password],
  textarea,
  select {
    font-size: 16px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
  }
}


@media (min-width: 769px) {
  .spShow {
    display: none;
  }
}
@media (max-width: 768px) {
  .pcShow {
    display: none;
  }
}

/* bootstrap スタイル上書き用*/
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
  /*font-family: "ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";*/
  font-family: YuGothic, "Original Yu Gothic", Meiryo, sans-serif;;
}








/*  header
================================================ */
/* header__appbox
-------------------------------------- */
@media (min-width: 769px) {
  .header__appbox {
    display: none !important;
  }
}
@media (max-width: 1000px) {
  .header__appbox {
    display: flex;
    width: 100%;
    height: 84px;
    background-color: #F3F3F3;
    z-index: 998;
  }

  .header__appbox_inner {
    display: flex;
    align-items: center;
    width: 100%;
  }

  .header__appbox_closer {
    width: 32px;
    height: 32px;
    cursor: pointer;
    text-align: center;
  }

  .header__appbox_logo {
    width: 64px;
  }

  .header__appbox_logo img {
    width: 100%;
    height: auto;
  }

  .header__appbox_text {
    padding-left: 12px;
  }

  .header__appbox_textTitle {
    font-size: 1.3rem;
    color: #2C2C2C;
    line-height: 1.2;
  }

  .header__appbox_textCont {
    font-size: 1.2rem;
    color: #999999;
    line-height: 1.2;
    margin-top: 2px;
  }

  .header_appbox_open {
    padding-right: 20px;
    margin: 0 0 0 auto;
  }

  .header_appbox_open a {
    color: #2974FB;
    font-size: 1.6rem;
  }
}

.header {
  top: 84px;
  width: 100%;
  height: 100px;
  padding: 0 20px;
  background-color: #fff;
  position: fixed;
  z-index: 998;
  border-bottom: 1px solid #e6e6e6;
}

.header__inner {
  /*height: 100%;*/
  height: 100px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
}

.header__logo {
  max-width: 272px;
}

.header__logo img {
  -webkit-backface-visibility: hidden;
}

@media (min-width: 769px) {
  .header {
    top: 0;
  }
  .header__title {
    display: none;
  }
}

@media (max-width: 1000px) {
  .header {
    height: 100px;
    padding: 0;
    border-bottom: none;
    background-color: #fff;
    box-shadow: 0px 4px 6px 0 rgba(0,0,0,0.05);
    position: static;
  }
  .header.is-fixed {
    top: 0;
    position: fixed;
  }
  .header__inner {
    display: block;
    height: 60px;
  }
  .header__logo {
    height: 100%;
    max-width: 178px;
    margin: 0 0 0 20px;
    display: flex;
    align-items: center;
  }
  body:not(#page_home):not(#page_company) .header__logo {
    display: none;
  }
  .header__title {
    height: 100%;
    width: 70%;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.8rem;
  }
}


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

@media (max-width: 1000px) {
  .headerBack {
    position: absolute;
    top: 0;
    left: 20px;
    line-height: 60px;
    font-size: 2.6rem;
  }
  .headerBack a {
    display: block;
    color: #e71e19;
  }
}



 .header__select {
  display: none;
 }
@media (max-width: 1000px) {
  body#page_work_list .header__title {
    display: none;
  }
  body#page_work_list .header__select {
    display: block;
    text-align: center;
  }
  body#page_work_list .header__select .form_select {
    width: 174px;
    height: 40px;
    line-height: 40px;
    box-shadow: none;
    margin: 5px auto 5px;
  }
  body#page_work_list .header__select .form_select select {
    transform: scale(1);
  }
}



/* header account
-------------------------------------- */
.header__account {
  display: none;
  height: 50px;
  margin: 0 -20px;
  padding: 9px 20px;
  background-color: #EA2719;
  text-align: right;
}
.header__accountBtn {
  display: inline-block;
  height: 32px;
  padding: 5px 20px;
  border-radius: 18px;
  text-align: center;
}
.header__accountBtn span {
  display: inline-block;
  padding-left: 30px;
  background-repeat: no-repeat;
  background-position: 0 0;
  font-size: 1.5rem;
}
.header__accountBtn.is_login {
  background-color: #fff;
}
.header__accountBtn.is_login span {
  color: #EA2719;
  background-size: 18px auto;
  background-image: url(/img/common/header/icon_login.png);
}
.header__accountBtn.is_entry {
  padding: 2px 15px;
  background-color: transparent;
  border: 2px solid #fff;
  margin-left: 10px;
}
.header__accountBtn.is_entry span {
  color: #fff;
  background-size: 18px auto;
  background-image: url(/img/common/header/icon_login_w.png);
}

.header__nav_pc .header__accountBtn {
  display: inline-block;
  height: 48px;
  padding: 5px 20px;
  border-radius: 32px;
  text-align: center;
}
.header__nav_pc .header__accountBtn.is_login {
  background-color: #fff;
}
.header__nav_pc .header__accountBtn.is_entry {
  font-size: 1.5rem;
  border: 2px solid #EA2719;
  color: #EA2719;
  background-color: transparent;
  background-size: 18px auto;
  background-image: url(/img/common/header/icon_login.png);
  background-repeat: no-repeat;
  background-position: 50px 11px;
  padding: 10px 50px 10px 75px;
  margin-left: 10px;
  margin-top: 2px;
  line-height: 25px;
}
.header__nav_pc .header__accountBtn.is_entry:hover {
  background-color: #EA2719;
  opacity: 1;
  color: #fff;
  background-image: url(/img/common/header/icon_login_w.png);
}

.mv__howtoList_inner {
	position: relative;
}
.mv__howtoList_inner .howtoList__contBtn {
	position: absolute;
	margin-left: 31.5%;
	margin-top: -9.5%;
}
.mv__howtoList_inner .howtoList__contBtn .appBtn {
	width: 13.8vw;
	max-width: 160px;
}
.mv__howtoList_inner .howtoList__contBtn .appBtn.googlePlay {
	width: 15.5vw;
	max-width: 180px;
}
.mv__howtoList_inner .howtoList__contBtn .appBtn img {
	margin-right: 0;
	max-height: inherit;
}

.topImgPc {
	display: block;
}
.topImgSp {
	display: none;
}

@media (max-width: 1000px) {
  .header__nav_pc {
    display: none;
  }
  .header__account {
    display: block;
    height: 40px;
    margin: 0;
    padding: 8px 12px;
  }
  .header__accountBtn {
    height: 24px;
    padding: 0 12px;
  }
  .header__accountBtn span {
    padding-left: 15px;
    font-size: 1.1rem;
    vertical-align: middle;
    position: relative;
  }
  .header__accountBtn.is_login span {
    background-size: 12px auto;
    background-position: left 1px;
  }
  .header__accountBtn.is_entry {
    padding: 0 11px 0 11px;
    margin-left: 5px;
    margin-right: 8px;
  }
  .header__accountBtn.is_entry span {
    background-size: 12px auto;
    background-position: left 2px;
    top: -2px;
  }
}

@media (max-width: 768px) {
	.mv__howtoList_inner {
		width: 100%;
		display: flex;
	}
	.mv__howtoList_inner .howtoList__contBtn {
		position: relative;
		flex: 1 1 0%;
		margin-left: 0;
		margin-top: -69.1%;
		text-align: center;
	}
	.mv__howtoList_inner .howtoList__contBtn .appBtn {
		width: auto;
		max-width: inherit;
		margin-right: 3.1vw;
	}
	.mv__howtoList_inner .howtoList__contBtn .appBtn.googlePlay {
		width: auto;
		max-width: inherit;
		margin-right: 0;
	}
	.mv__howtoList_inner .howtoList__contBtn .appBtn img {
		max-height: inherit;
		width: auto;
		height: calc(100vw / 375 * 50);
	}

	.topImgPc {
		display: none;
	}
	.topImgSp {
		display: block;
	}
	.prList__ttl.line2 {
		padding-bottom: 2.8em;
	}
	.prList__ttl {
		white-space: break-spaces !important;
	}
	.aboutArea {
		margin-top: 0 !important;
	}
	.secHeadline {
		padding: 30px 2px 70px !important;
	}
	.secHeadline__text {
		padding: 0 !important;
	}
	.prList {
		padding: 0px 4px !important;
	}
	.secInfo {
		padding: 50px 2px 40px !important;
		white-space: nowrap;
	}
/*
	.secFeature {
		padding: 110px 42px 0 !important;
	}
	.prList {
		padding: 0 23px !important;
	}
	.secHowto {
		margin: 0 !important;
	}
	.secInfo {
		padding: 50px 20px 40px !important;
	}
*/
}

/* gnav
-------------------------------------- */
.gnav {
  margin: 0;
  padding: 0;
  display: flex;

}
.gnav__item {
  list-style-type: none;
  font-size: 1.5rem;
  margin: 0 20px;
}

.gnav__item:last-child {
  margin-right: 0;
}

.gnav__item a {
  display: block;
  padding-right: 25px;
  padding-top: 2px;
  background-repeat: no-repeat;
  background-position: right top;
  background-size: 22px auto;
  position: relative;
}

.gnav__item.is_work a { background-image: url(/img/common/header/icon_search.png); }
.gnav__item.is_fav a { background-image: url(/img/common/header/icon_keep.png); }
.gnav__item.is_mylist a { background-image: url(/img/common/header/icon_mylist.png); }
.gnav__item.is_talk a { background-image: url(/img/common/header/icon_talk.png); }
.gnav__item.is_mypage a { background-image: url(/img/common/header/icon_mypage.png); }
.gnav__item.is_alert a { background-image: url(/img/common/header/icon_info.png); }
.gnav__item.disabled a { opacity: 0.5; }


.footerSpNav__item.active a:after,
.gnav__item.active a:after {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  background-color: #e71e19;
  border-radius: 50%;
  position: absolute;
  top: 0;
  right: 2px;
}
.gnav__item.is_talk.active a:after {
  right: -1px;
}
@media (max-width: 1000px) {
  .gnav__item:not(.is_alert) {
    display: none;
  }
  .gnav__item.is_alert {
    position: absolute;
    top: 0;
    right: 5px;
    height: 100%;
  }
  .gnav__item.is_alert a {
    padding-top: 0;
    padding-right: 0;
    height: 100%;
    background-size: 26px auto;
    background-position: center center;
  }
  .gnav__item.active a:after {
    width: 10px;
    height: 10px;
    top: 18px;
    right: 18px;
  }
  .footerSpNav__item.active a:after {
    width: 10px;
    height: 10px;
    top: 8px;
    right: 21px;
  }
  .gnav__item.is_alert a > span {
    opacity: 0;
    visibility: hidden;
  }
}



/*  header　1100px～769px
================================================ */
@media screen and (min-width: 769px) and (max-width: 1000px) {
  /*.header__logo {
    width: calc(100vw / 1100 * 240);
  }*/
  .gnav__item {
      /*font-size: calc(100vw / 1100 * 15);*/
      /*margin: 0 15px;*/
  }
  /*.gnav__item a {
      padding-right: calc(100vw / 1100 * 25);
      padding-top: calc(100vw / 1100 * 2);
      background-size: calc(100vw / 1100 * 22) auto;
  }*/

}



/*  wrapper
================================================ */
#wrapper {
  overflow: hidden;
}

/*  contents
================================================ */
#contents {
  padding-top: 100px;
}

@media (max-width: 1000px) {
  #contents {
    padding: 100px 0 50px;
  }
  #contents:not(.is-headerFixed) {
    padding-top: 0;
  }
  body#page_home #contents,
  body#page_my_page #contents {
    padding-bottom: 0;
  }
}
@media (max-width: 768px) {
  #contents {
    padding: 100px 18px 50px;
  }
}

.inner {
  max-width: 1200px;
  margin: 0 auto;
}


/* main
-------------------------------------- */
#main {
  /*max-width: 1024px;*/
  /*margin: 0 auto;*/
}
@media (max-width: 768px) {
  #main {
    /*padding: 0 10px 50px;*/
  }
}





/*  footer
================================================ */
.footer {
  background-color: #fff;
  
}
.footer__inner {
  padding: 45px 0 50px;
}
.footer__logo {
  text-align: center;
}
.footer__logo img {
  max-width: 310px;
}
.footer__sns {
  margin: 50px 0 40px;
  text-align: center;
}
.footer__sns ul {
  display: inline-block;
  font-size: 0;
}
.footer__sns ul li {
  display: inline-block;
  width: 50px;
  margin: 0 25px;
}
.footer__link {
  text-align: center;
}
.footer__link ul {
  display: inline-block;
  font-size: 0;
}
.footer__link ul li {
  display: inline-block;
  font-size: 1.4rem;
  padding: 0 20px;
  line-height: 1;
}

body:not(#page_home):not(#page_my_page):not(#page_login) .footer__sns,
body:not(#page_home):not(#page_my_page):not(#page_login) .footer__link {
  display: none;
}

.copyright {
  display: block;
  background-color: #EA2719;
  padding: 10px 0;
  color: #fff;
  text-align: center;
  font-size: 1.2rem;
}

@media (min-width: 1001px) {
  .footer {
    border-top: 1px solid #e6e6e6;
  }
  .footer__link ul li:not(:first-child) {
    border-left: 1px solid #000;
  }
}

@media (max-width: 1000px) {
  .footer {
    border-top: none;
  }
  .footer__inner {
    display: flex;
    flex-direction: column;
    padding: 0;
    margin: 0 12px;
  }
  .footer__logo {
    max-width: 310px;
    width: calc(100vw / 375 * 268);
    margin: 0 auto;
    position: relative;
    left: -6px;
  }
  .footer__logo img {
    width: 100%;
    height: auto;
  }
  .footer__link {
    text-align: center;
    padding: 50px 0 30px;
  }
  .footer__link ul {
    display: inline-block;
  }
  .footer__link ul li {
    display: block;
    margin: 0;
    padding: 0.5em 0;
    font-size: 1.2rem;
  }
  .footer__sns {
    max-width: 310px;
    width: calc(100vw / 375 * 268);
    margin: 25px auto 0;
    padding: 0;
  }
  .footer__sns ul {
    display: flex;
    justify-content: space-between;
    width: 100%;
  }
  .footer__sns ul li {
    margin: 0;
    padding: 0;
  }

  .copyright {
  }
  body#page_payment .footer {
    display: none;
  }
  body:not(#page_home):not(#page_my_page):not(#page_login) .footer,
  body:not(#page_home):not(#page_my_page):not(#page_login) .footer {
    display: none;
  }
}


@media (max-width: 480px) {
}


/*  footerSp
================================================ */
.footerSp {
  border-top: 1px solid #e6e6e6;
  background-color: #fff;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 999;
}
.footerSpNav {
  width: 100%;
  height: 66px;
  display: flex;
  justify-content: space-between;

}
.footerSpNav__item {
  flex: 1 1 0%;
  list-style-type: none;
  font-size: 1.0rem;
  text-align: center;
}

.footerSpNav__item:last-child {
  margin-right: 0;
}

.footerSpNav__item a {
  display: block;
  padding-top: 34px;
  background-repeat: no-repeat;
  background-position: center 4px;
  background-size: 28px auto;
  position: relative;
}

.footerSpNav__item.is_work a { background-image: url(/img/common/header/icon_search.png); }
.footerSpNav__item.is_fav a { background-image: url(/img/common/header/icon_keep.png); }
.footerSpNav__item.is_mylist a { background-image: url(/img/common/header/icon_mylist.png); }
.footerSpNav__item.is_talk a { background-image: url(/img/common/header/icon_talk.png); }
.footerSpNav__item.is_mypage a { background-image: url(/img/common/header/icon_mypage.png); }
.footerSpNav__item.disabled a { opacity: 0.5 }


body#page_work_list .footerSpNav__item.is_work a,
body#page_fav_list .footerSpNav__item.is_fav a,
body#page_my_page .footerSpNav__item.is_mypage a,
body#page_talk .footerSpNav__item.is_talk a,
body#page_commited .footerSpNav__item.is_mylist a {
  color: #e71e19;
}

body#page_work_list .footerSpNav__item.is_work a {
  background-image: url(/img/nav_icon_search_on.png);
}
body#page_fav_list .footerSpNav__item.is_fav a {
  background-image: url(/img/nav_icon_fav_on.png);
}
body#page_commited .footerSpNav__item.is_mylist a {
  background-image: url(/img/nav_icon_mylist_on.png);
}
body#page_talk .footerSpNav__item.is_talk a {
  background-image: url(/img/nav_icon_talk_on.png);
}
body#page_my_page .footerSpNav__item.is_mypage a {
  background-image: url(/img/nav_icon_mypage_on.png);
}

@media (min-width: 1001px) {
  .footerSp {
    display: none;
  }
}


/* 評価
================================================ */
.evaluation-view {
  position: relative;
  display: inline-block;
  align-items: center;
  top: -2px;
}
.evaluation-view .filled-star {
  position: absolute;
  top: 0;
  overflow: hidden;
  white-space: nowrap;
}
.evaluation-view i.empty,
.evaluation-view i.filled {
  display: inline-block;
  font-size: 20px;
  width : 20px;
  height: 20px;
}
.evaluation-view i.empty {
  background: url("/img/common/evaluate_off@2x.png") no-repeat center center;
  vertical-align: middle;
  background-size: auto 20px;
}
.evaluation-view i.filled {
  background: url("/img/common/evaluate_on@2x.png") no-repeat center center;
  vertical-align: middle;
  background-size: auto 20px;
}
.evaluation-point .eva-value {
  font-size: 15px;
}
.evaluation-point .eva-num {
  font-size: 14px;
  margin-left: -5px;
}


