@charset "UTF-8";
/* リセットCSS
----------------------------------------*/
h1, h2, h4, h4, h5, h6, div, p, ul, li, dl, dt, dd, table, tr, td, img {
  margin: 0;
  border: 0;
  padding: 0;
}

/* コンテナ
----------------------------------------*/
div#wrap-container {
  padding: 0;
  width: 100%;
}

div#container {
  width: 100%;
  height: 100%;
  position: relative;
  font-family: 'Lucida Grande', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif;
  margin: 0 0 80px;
}

/* SP非表示
----------------------------------------*/
.sp {
  display: none;
}

/* タイトル
----------------------------------------*/
span.space {
  margin-left: 1em;
}

#container h1 {
  border-bottom: 1px solid #cccccc;
  font-size: 1.7em;
  line-height: 1.2;
  margin: 0 auto 20px;
  padding-bottom: 0;
  width: 980px;
}

div.title-banner {
  position: relative;
  margin: 0 auto 73px;
}

p.title-banner {
  width: 980px;
  margin: 0 auto;
}

/* リード文 */
div#read-before,
div#read-after {
  width: 100%;
}

div#read-before-inner,
div#read-after-inner {
  width: 980px;
  margin: 0 auto;
}

img.top-icon {
  display: block;
  width: 14.5%;
  margin: 0 auto 20px;
}

div#read-before {
  background-color: #EEEEEE;
}

div#read-before-inner {
  padding: 70px 0 93px;
}

div#read-before-inner p.first-read {
  line-height: 1.75;
}

div#read-before-inner p.first-read strong {
  font-size: 2em;
  display: block;
  text-align: center;
}

div#read-before-inner p.first-read span {
  display: block;
  width: 650px;
  margin: 10px auto 0;
  font-size: 1.1em;
}

div.ex {
  margin: 60px 0 70px;
}

div.ex li {
  width: 222px;
  float: left;
  margin: 0 30px 0 0;
}

div.ex li img {
  width: 100%;
}

div.ex li:nth-of-type(4) {
  margin: 0;
}

div.ex-over li {
  width: 475px;
  margin: 0;
}

div.ex-over li:nth-of-type(1) {
  float: left;
}

div.ex-over li:nth-of-type(2) {
  float: right;
}

div.ex-over li img {
  display: block;
}

div.ex-over li img.arrow {
  width: 25px;
  margin: 20px auto 0;
}

div.ex-over li img.ex-img-l {
  width: 370px;
  margin: 25px auto 0;
}

div.ex-over li img.ex-img-r {
  width: 295px;
  margin: 25px auto 0;
}

div.genin {
  background-color: #FFFFFF;
  padding: 40px 25px;
}

div.genin p {
  line-height: 1.75;
}

div.genin p strong {
  font-size: 1.8em;
  display: block;
  text-align: center;
}

div.genin p span {
  display: block;
  width: 700px;
  margin: 10px auto 0;
  font-size: 1.1em;
}

div.genin ul {
  margin: 30px 0 0;
}

div.genin li {
  width: 210px;
  float: left;
  margin: 0 30px 0 0;
}

div.genin li span {
  display: block;
  margin: 0 0 10px;
  width: 92%;
  background-color: #7D7E92;
  padding: 4%;
  font-size: 1.1em;
  font-weight: bold;
  color: #FFFFFF;
  text-align: center;
  border-radius: 5em;
}

div.genin li img {
  width: 100%;
}

div.genin li:nth-of-type(4) {
  margin: 0;
}

div.genin span.nado {
  display: block;
  margin: 30px 0 0;
  text-align: right;
}

/* そうなる前に！ */
div#prevent {
  background-color: #FEE25B;
  padding: 0 0 70px;
}

div#prevent-inner {
  width: 980px;
  margin: 0 auto;
}

div#prevent-inner p.sepa-arrow {
  text-align: center;
}

div#prevent-inner p.sepa-arrow img {
  width: 28%;
}

p.prevent-title {
  font-weight: bold;
  font-size: 1.65em;
  color: #009C97;
  text-align: center;
  line-height: 1.6;
  margin: 45px 0 0;
}

p.prevent-title span {
  display: block;
  font-size: 1.4em;
}

div#prevent ul.prevent-list {
  margin: 30px 0 50px;
}

div#prevent ul.prevent-list li {
  width: 210px;
  float: left;
  margin: 0 46px 0 0;
}

div#prevent ul.prevent-list li span {
  display: block;
  margin: 0 0 10px;
  font-size: 1.25em;
  font-weight: bold;
  text-align: center;
}

div#prevent ul.prevent-list li img {
  width: 100%;
}

div#prevent ul.prevent-list li:nth-of-type(4) {
  margin: 0;
}

div.prevent-point {
  padding: 25px 35px;
  background-color: #FFFFFF;
  border-radius: 0.4em;
}

div.prevent-point dl {
  width: 430px;
  text-align: center;
}

div.prevent-point dl:nth-of-type(1) {
  float: left;
}

div.prevent-point dl:nth-of-type(2) {
  float: right;
}

div.prevent-point dl dt img {
  width: 15%;
}

div.prevent-point dl dt span {
  display: block;
  margin: 18px 0;
  font-size: 1.5em;
  font-weight: bold;
  color: #019E97;
}

div.prevent-point dl dd img {
  width: 100%;
}

div.prevent-point dl dd span {
  display: block;
  margin: 22px 0 0;
  font-size: 1.05em;
  line-height: 1.6;
}

div.movie {
  margin: 8% 0 0;
}

div.movie p {
  color: #009F95;
  font-size: 1.6em;
  text-align: center;
  padding: 0 0 2%;
  font-weight: bold;
}

div.movie iframe {
  width: 910px;
  height: 512px;
}

/* 製品一覧 */
div#product {
  padding: 75px 0 0;
}

div#product-inner {
  width: 980px;
  margin: 0 auto;
}

div#product-inner p.ep {
  color: #EA5F00;
  font-size: 1.5em;
  font-weight: bold;
  text-align: center;
}

/* メニュー */
div#menu {
  margin: 0 0 75px;
}

div#menu p.menu-title {
  background-color: #FEE25B;
  font-size: 1.6em;
  text-align: center;
  font-weight: bold;
  margin: 18px 0 39px;
  padding: 21px 0 17px;
}

div#menu ul li {
  width: 316.5px;
  float: left;
  margin: 0 15px 35px 0;
  text-align: center;
}

div#menu ul li a {
  display: block;
  padding: 0 0 10px;
  background-color: #019E97;
  border-radius: 0.4em;
}

div#menu ul li a:hover {
  text-decoration: none;
  opacity: 0.6;
}

div#menu ul li a:hover img {
  opacity: 1 !important;
}

div#menu ul li img.detail-img {
  height: 87px;
}

div#menu ul li img.arrow-y {
  width: 4%;
}

div#menu ul li span {
  display: block;
  font-size: 1.2em;
  font-weight: bold;
  color: #FFFFFF;
  margin: 26px 0 10px;
}

div#menu ul li:nth-of-type(3n) {
  margin: 0 0 25px;
}

/* 製品詳細 */
div.product-list-inner h3 {
  background-color: #019E97;
  font-size: 1.2em;
  color: #FFFFFF;
  text-align: center;
  padding: 0 0 10px;
}

div.product-list-inner h3 img {
  height: 80px;
  vertical-align: middle;
  margin: 0 10px 0 0;
}

div.product-list-inner h3 span {
  font-size: 1.4em;
  vertical-align: -10px;
}

img.detail-img-main {
  vertical-align: top;
  width: 240px;
  border: 1px solid #D2D2D2;
  margin: 0 15px 0 0;
}

img.detail-img-sub {
  vertical-align: top;
  width: 145px;
  border: 1px solid #D2D2D2;
}

div.list-outer {
  padding: 0 0 15px;
}

div.list-outer div.list-detail {
  float: left;
  width: 430px;
  padding: 55px 30px 55px 30px;
  border-bottom: 1px solid #E4E4E4;
}

div.list-outer div.list-detail:nth-of-type(2) {
  float: right;
  width: 430px;
  padding: 55px 30px 55px 30px;
  border-bottom: 1px solid #E4E4E4;
}

div.list-outer div.list-detail.end {
  border-bottom: none;
}

div.list-detail h4 {
  border-left: 5px solid #FFE15B;
  font-size: 1.3em;
  padding: 5px 0 0 10px;
  line-height: 1.3;
  letter-spacing: -0.03em;
}

div.list-detail h4.double {
  padding: 18px 0 12px 10px;
}

div.detail-cont {
  padding: 20px 0 0 13px;
}

div.detail-cont span.hinmei {
  display: block;
  font-size: 1.07em;
  line-height: 1.3;
  font-weight: bold;
  margin: 0 0 10px;
}

div.detail-cont a {
  display: inline-block;
  font-size: 1.07em;
  font-weight: bold;
  background: url(/static/images/common/yaji_maru_bl_12.png) no-repeat 0 0;
  padding: 0 0 0 16px;
  margin: 0 0 8px;
}

div.detail-cont p.price {
  display: block;
  font-size: 1.07em;
  font-weight: bold;
  padding: 0 0 0 15px;
}

div.detail-cont p.price + a {
  margin-top: 10px;
}

div.detail-cont ul {
  margin: 14px 0 18px;
}

div.detail-cont ul li {
  font-size: 1em;
  font-weight: bold;
  text-align: center;
  color: #FFFFFF;
  padding: 7px 0 4px;
  width: 140px;
}

div.detail-cont ul li.pink {
  background-color: #EC6876;
}

div.detail-cont ul li.orange {
  background-color: #F39801;
}

div.detail-cont ul li.blue {
  background-color: #00B8EE;
}

div.detail-cont ul li.green {
  background-color: #00CC33;
}

/* こちらもおすすめ */
.recommend h3 {
  font-size: 1.6em;
  text-align: center;
  padding: 10px 0;
  color: #fff;
  background-color: #004DA2;
}

.recommend {
  width: 980px;
  margin: 0 auto;
}

.recommend ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 3% 0 0 0;
}

.recommend ul li {
  display: inline-block;
  width: 230px;
  margin: 0 0 2%;
}

/* clfx */
.clfx:before {
  content: "";
  clear: both;
  height: 0;
  display: block;
  visibility: hidden;
}

.clfx:after {
  content: "";
  clear: both;
  height: 0;
  display: block;
  visibility: hidden;
}
