@charset "utf-8";

html{
	width:100%;
}
body{
	*font-size:small;
	*font:x-small;
	font-size:13px;
	color:#333333;
	line-height:1.2;
  font-family:"Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	text-align:left;
	width:100%;
	margin:0px;
	padding:0px;
	-webkit-text-size-adjust:100%;
}
@font-face{
  font-family:"Yu Gothic";
  src:local("Yu Gothic Medium");
  font-weight:100;
}
@font-face{
  font-family:"Yu Gothic";
  src:local("Yu Gothic Medium");
  font-weight:200;
}
@font-face{
  font-family:"Yu Gothic";
  src:local("Yu Gothic Medium");
  font-weight:300;
}
@font-face{
  font-family:"Yu Gothic";
  src:local("Yu Gothic Medium");
  font-weight:400;
}
@font-face{
  font-family:"Yu Gothic";
  src:local("Yu Gothic Bold");
  font-weight:bold;
}
#wrap{
	text-align:left;
	overflow:hidden;
	background-color: #fff;
}
h1,h2,h3,h4,h5,p,ul,ol,li,img,table,th,td,dl,dt,dd{
	margin:0px;
	padding:0px;
	font-size:14px;
}
li{
	list-style-type:none;
}
table{
	border-collapse:collapse;
}
a{
	cursor:pointer;
	color:#333;
	text-decoration:none;
}
a:hover{
	text-decoration:none;
}
a{
	-webkit-tap-highlight-color:transparent;
}
img{
	vertical-align:top;
	max-width:100%;
	height:auto;
	-webkit-backface-visibility:hidden;
	-ms-backface-visibility:hidden;
	backface-visibility:hidden;
}
a img{
	vertical-align:bottom;
	-webkit-backface-visibility:hidden;
	-ms-backface-visibility:hidden;
	backface-visibility:hidden;
}
input, 
textarea, 
select,
button,
label{
  outline:none;
	-webkit-tap-highlight-color:transparent;
}
.mainBox{
  overflow: hidden;
}
.mainBox *,
.mainBox ::before,
.mainBox ::after{
  box-sizing: border-box;
}
.spOnly{
  display: none;
}
@media screen and (max-width: 750px) {
.pcOnly{
  display: none;
}
.spOnly{
  display: block;
}
}


/* main
-----------------------------------------------*/
#main{
  position: relative;
  z-index: 1;
  background: linear-gradient(to right, #6ab4a9, #50a79a, #33998b);
  padding-bottom: 100px;
}
#main::before{
  content: "";
  position: absolute;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: url("../images/bgi_main_01.svg") no-repeat left top;
}
#main .footstepBox{
  width: auto;
  color: #fff;
}
#main .footstepBox a{
  color: #fff;
}
#main .inner{
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 40px;
}
#main h1{
  font-size: 48px;
  color: #fff;
  font-weight: bold;
  margin-top: 30px;
}
#main .price{
  font-size: 32px;
  font-family: 'Oswald', sans-serif;
  color: #fff;
  margin-top: 5px;
}
#main .price strong{
  font-size: 18px;
  font-weight: normal;
  margin-left: 3px;
}
#main .price strong span{
  font-size: 13px;
}
#main .btn{
  position: absolute;
  left: 0;
  top: 100%;
  width: 100%;
  transform: translateY(-50%);
}
#main .btn a{
  display: block;
  max-width: 360px;
  height: 90px;
  background: #75ad3e;
  color: #fff;
  text-align: center;
  margin: 0 auto;
  line-height: 90px;
  border-radius: 4px;
	transition: background .2s;
}
#main .btn a:hover{
  background: #9ec578;
}
#main .btn a span{
  position: relative;
  display: inline-block;
  padding-right: 25px;
  font-size: 20px;
  font-weight: bold;
}
#main .btn a span::after{
	content: "";
  position: absolute;
  right: 0;
  top: calc(50% - 2px);
	display: inline-block;
  vertical-align: middle;
	width: 12px;
	height: 12px;
	box-sizing: border-box;
	border-top: solid 3px #fff;
	border-right: solid 3px #fff;
	transform: translateY(-50%) rotate(135deg);
}
@media screen and (max-width: 750px) {
#main{
  padding: 10px 0 55px;
}
#main::before{
  background-size: 100%;
}
#main .inner{
  padding: 0 20px;
}
#main h1{
  font-size: 24px;
  margin-top: 20px;
}
#main .price{
  font-size: 22px;
  margin-top: 0;
}
#main .price strong{
  font-size: 13px;
  margin-left: 3px;
}
#main .price strong span{
  font-size: 12px;
}
#main .btn a{
  max-width: 280px;
  height: 70px;
  line-height: 70px;
}
#main .btn a span{
  padding-right: 20px;
  font-size: 16px;
}
.footstepBox {
  padding-top: 0;
}
}

#main + .note,
#lineup .note {
  max-width: 1100px;
  padding: 30px;
  margin: 100px auto 0;
  background: #f0f0f0;
  text-align: center;
}
#lineup .note {
  margin: 30px auto 0;
  background: #dbdbdb;
}
#main + .note h2,
#lineup .note h2 {
  margin-bottom: 5px;
  font-size: 16px;
  line-height: 1.7;
  letter-spacing: 0.01em;
}
#main + .note p,
#lineup .note p {
  font-size: 14px;
  line-height: 1.7;
}
#main + .note p span.red,
#lineup .note p span.red {
  color: red;
  font-weight: bold;
}
#main + .note p a,
#lineup .note p a {
  text-decoration: underline;
}
#main + .note p a:hover,
#lineup .note p a:hover {
  text-decoration: none;
}

/* section
-----------------------------------------------*/
section .inner{
  position: relative;
  max-width: 1200px;
  margin: 0 auto;
}
section .ttl p{
  font-size: 50px;
  color: #75ad3e;
  display: inline-block;
  font-family: 'Oswald', sans-serif;
  font-weight: 300;
  letter-spacing: .1em;
  margin-right: 15px;
  line-height: 1;
}
section .ttl h2{
  position: relative;
  top: -2px;
  font-size: 26px;
  display: inline-block;
  line-height: 1;
}
section p.subtxt{
  font-size: 18px;
  line-height: 2;
  margin-top: 20px;
}
@media screen and (max-width: 750px) {
section .ttl{
  text-align: center;
}
section .ttl p{
  display: block;
  font-size: 36px;
  margin-right: 0;
}
section .ttl h2{
  display: block;
  top: 0;
  font-size: 22px;
  margin-top: 10px;
  line-height: 1.5;
}
section p.subtxt{
  font-size: 15px;
  margin-top: 15px;
}
}


/* what
-----------------------------------------------*/
#what{
  padding: 200px 40px 80px;
  background: url("../images/bgi_what_01.svg") no-repeat center bottom;
}
#what .box{
  position: relative;
  padding-right: 58%;
  min-height: 320px;
}
#what .box .txt{
  padding-bottom: 40px;
}
#what .box .txt h2{
  font-size: 32px;
  line-height: 1.5;
}
#what .box .txt p{
  font-size: 18px;
  line-height: 2;
  margin-top: 20px;
}
#what .box .img{
  position: absolute;
  right: -40px;
  top: -60px;
  z-index: 1;
  width: 58%;
  text-align: right;
}
@media screen and (max-width: 900px) {
#what .box{
  padding-right: 0;
  min-height: none;
}
#what .box .txt{
  padding-bottom: 0;
}
#what .box .img{
  position: relative;
  right: 0;
  top: 0;
  width: auto;
  max-width: 600px;
  margin: 40px auto 0;
}
}
@media screen and (max-width: 750px) {
#what{
  padding: 100px 20px 60px;
  background-size: 600px auto;
  background-position: left -40px bottom;
}
#what .box .txt h2{
  font-size: 24px;
}
#what .box .txt p{
  font-size: 15px;
  margin-top: 10px;
}
#what .box .img{
  margin: 15px auto 0;
}
}


/* merit
-----------------------------------------------*/
#merit{
  position: relative;
  background: #f7f6f2;
  padding: 100px 40px;
}
#merit .inner::before{
  content: "";
  width: 380px;
  height: 380px;
  background: url("../images/item_merit_01.svg");
  position: absolute;
  left: -100px;
  bottom: -170px;
}
#merit .list{
  display: grid;
  grid-template-columns: calc(50% - 10px) calc(50% - 10px);
  gap: 20px;
  margin-top: 80px;
}
#merit .list .col{
  position: relative;
  background: #fff;
  padding: 30px 10% 30px 40%;
}
#merit .list .col .img{
  position: absolute;
  left: 0;
  top: 0;
  width: 40%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
#merit .list .col .img img{
  width: 120px;
}
#merit .list .col h3{
  font-size: 26px;
  color: #75ad3e;
}
#merit .list .col p{
  font-size: 16px;
  line-height: 2;
  margin-top: 5px;
}
#merit .list .col p .note{
  display: block;
  font-size: 13px;
  line-height: 1.5;
  margin-top: 6px;
}
@media screen and (max-width: 1023px) {
#merit .list .col .img img{
  width: 100px;
}
}
@media screen and (max-width: 900px) {
#merit .list{
  display: block;
  margin-top: 30px;
}
#merit .list .col{
  padding: 30px 30px 30px 140px;
  margin-top: 10px;
}
#merit .list .col .img{
  width: 140px;
}
#merit .list .col .img img{
  width: 80px;
}
}
@media screen and (max-width: 750px) {
#merit{
  background: #f7f6f2;
  padding: 60px 20px;
}
#merit .inner::before{
  display: none;
}
#merit .list .col{
  padding: 20px 16px 20px 96px;
  margin-top: 10px;
}
#merit .list .col .img{
  width: 100px;
}
#merit .list .col .img img{
  width: 60px;
}
#merit .list .col h3{
  font-size: 20px;
}
#merit .list .col p{
  font-size: 14px;
  margin-top: 5px;
  line-height: 1.8;
}
#merit .list .col p .note{
  font-size: 12px;
  margin-top: 0;
}
}


/* option
-----------------------------------------------*/
#option{
  padding: 100px 40px;
}
#option .inner::before{
  content: "";
  width: 370px;
  height: 350px;
  background: url("../images/item_option_01.jpg");
  position: absolute;
  right: -20px;
  top: -80px;
  z-index: -1;
}
#option .list{
  display: flex;
  gap: 32px;
  margin-top: 80px;
}
#option .list .col .img{
  position: relative;
}
#option .list .img::before{
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  border: 1px solid #e4e4e4;
}
#option .list .col .img img{
  display: block;
}
#option .list .col p{
  font-size: 18px;
  font-weight: bold;
  margin-top: 15px;
}
#option .btn{
  margin-top: 60px;
}
#option .btn a{
  display: block;
  max-width: 360px;
  height: 90px;
  background: #75ad3e;
  color: #fff;
  text-align: center;
  margin: 0 auto;
  line-height: 90px;
  border-radius: 4px;
	transition: opacity .2s;
}
#option .btn a:hover{
  opacity: .7;
}
#option .btn a span{
  position: relative;
  display: inline-block;
  padding-right: 20px;
  font-size: 20px;
  font-weight: bold;
}
#option .btn a span::after{
	content: "";
  position: absolute;
  right: 0;
  top: 50%;
	display: inline-block;
  vertical-align: middle;
	width: 12px;
	height: 12px;
	box-sizing: border-box;
	border-top: solid 3px #fff;
	border-right: solid 3px #fff;
	transform: translateY(-50%) rotate(45deg);
}
@media screen and (max-width: 1024px) {
#option .inner::before{
  opacity: .1;
}
}
@media screen and (max-width: 750px) {
#option{
  padding: 60px 20px;
}
#option .inner::before{
  display: none;
}
#option .list{
  flex-wrap: wrap;
  gap: 20px;
  margin-top: 30px;
}
#option .list .col{
  width: calc(50% - 10px);
}
#option .list .col p{
  font-size: 15px;
  margin-top: 10px;
}
#option .btn{
  margin-top: 30px;
}
#option .btn a{
  max-width: 280px;
  height: 70px;
  line-height: 70px;
}
#option .btn a span{
  padding-right: 20px;
  font-size: 16px;
}
}


/* lineup
-----------------------------------------------*/
#lineup{
  background: #f2f2f2;
  padding: 100px 40px 80px;
}
.productList{
  display: grid;
  gap: 20px;
  margin: 60px auto 0;
  justify-content: center;
  max-width: 1000px;
  grid-template-columns: 1fr 1fr;
}
/* #lineup .productList{
  max-width: 1000px;
}
#package .productList{
  grid-template-columns: 1fr 1fr 1fr;
} */
.productList .col{
  background: #fff;
  padding: 35px 30px 20px 30px;
  border-radius: 12px;
  box-shadow: 0px 0px 15px -5px rgba(0,0,0,.1);
}
.productList .col h3{
  font-size: 24px;
}
.productList .col h3 span{
  font-size: 16px;
  line-height: 1.5;
  display: inline-block;
}
.productList .col .img{
  max-width: 327px;
  margin: 10px auto 0;
}
.productList .col .txt .price p{
  font-size: 15px;
  margin-top: 15px;
}
.productList .col .txt .price p + p{
  margin-top: 15px;
}
.productList .col .txt .price p strong{
  font-size: 34px;
  font-family: 'Oswald', sans-serif;
  font-weight: 500;
}
.productList .col .txt .price p span{
  font-size: 14px;
  margin-left: 5px;
  font-weight: bold;
  font-feature-settings: "palt";
}
.productList .col .txt .size{
  font-size: 0;
  margin-top: 10px;
}
.productList .col .txt .size li{
  display: inline-block;
  vertical-align: top;
  width: 50px;
  height: 50px;
  border-radius: 8px;
  margin: 5px 5px 0 0;
}
.productList .col .txt .size li:first-child{
  line-height: 50px;
  color: #fff;
  text-align: center;
  font-size: 13px;
  background: #75ad3e;
}
.productList .col .txt .size li:not(:first-child){
  color: #75ad3e;
  text-align: center;
  font-size: 15px;
  border: 3px solid #75ad3e;
}
.productList .col .txt .size li:not(:first-child) strong{
  display: block;
  font-size: 24px;
  font-family: 'Oswald', sans-serif;
  font-weight: 300;
  line-height: 1;
  padding-top: 4px;
}
.productList .col .txt .size li:not(:first-child) span{
  display: block;
  font-size: 9px;
  margin-top: 1px;
}
.productList .col .txt table{
  width: 100%;
  margin-top: 20px;
}
.productList .col .txt table th,
.productList .col .txt table td{
  vertical-align: top;
  border-top: 1px solid #cacaca;
  line-height: 1.5;
  font-size: 14px;
}
.productList .col .txt table th{
  white-space: nowrap;
  padding: 10px 20px;
}
.productList .col .txt table td{
  width: 100%;
  padding: 10px 0;
  word-break: break-all;
}
.productList .col .txt table td a{
  color: #333;
  text-decoration: underline;
}
.productList .col .txt table td a:hover{
  text-decoration: none;
}
.productList .col .txt > p{
  font-size: 14px;
  margin-top: 20px;
  line-height: 1.5;
}
/* @media screen and (max-width: 1023px) {
#package .productList{
  grid-template-columns: 1fr 1fr;
}
#package .productList .col:last-child{
  transform: translateX(calc(50% + 10px));
}
} */
@media screen and (max-width: 750px) {
#lineup{
  padding: 60px 20px;
}
.productList{
  display: block;
  gap: 0;
  margin-top: 30px;
}
.productList .col{
  margin-top: 20px;
  padding: 30px 30px 20px 30px;
}
#package .productList .col:last-child{
  transform: translateX(0);
}
.productList .col h3{
  font-size: 18px;
}
.productList .col .txt .price p{
  font-size: 14px;
  margin-top: 10px;
}
.productList .col .txt .price p + p{
  margin-top: 10px;
}
.productList .col .txt .price p strong{
  font-size: 28px;
}
.productList .col .txt .price p span{
  font-size: 13px;
}
.productList .col .txt table{
  margin-top: 15px;
}
.productList .col .txt table th,
.productList .col .txt table td{
  font-size: 13px;
}
.productList .col .txt table th{
  padding: 10px 20px 10px 0;
}
.productList .col .txt > p{
  font-size: 13px;
  margin-top: 15px;
}
}


/* package
-----------------------------------------------*/
#package{
  background: #f7f6f2;
  padding: 80px 40px 140px;
}
#package .inner .note{
  max-width: 1000px;
  margin: 15px auto 0;
}
#package .inner .note li{
  font-size: 13px;
	line-height: 1.5em;
  margin: 0 0 0 1em;
  text-indent: -1em;
}
@media screen and (max-width: 750px) {
#package{
  padding: 60px 20px 80px;
}
#package .inner .note li{
  font-size: 11px;
}
}


/* bnrBtn
-----------------------------------------------*/
.bnrBtn{
  padding: 0 20px;
}
.bnrBtn a{
  max-width: 750px;
  width: 100%;
  margin: 0 auto;
  display: block;
  transform: translateY(-50%);
}
.bnrBtn a .btn{
  background: #00afdd;
  color: #fff;
  position: relative;
  border-radius: 4px;
  width: 100%;
  height: 85px;
  padding-top: 35px;
  text-align: center;
  box-sizing: content-box;
}
.bnrBtn a .btn:hover{
  opacity: .8;
}
.bnrBtn .btn span {
	display: block;
	font-weight: bold;
	font-size: 20px;
	margin-bottom: 15px;
}
.bnrBtn .btn span::after {
	content: "";
	display: inline-block;
	width: 7px;
	height: 7px;
	box-sizing: border-box;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	transform: rotate(45deg);
	margin-left: 8px;
	margin-bottom: 1px;
}
.bnrBtn .btn img {
  position: absolute;
  top: -20px;
  right: 60px;
}
@media screen and (max-width: 750px) {
.bnrBtn a .btn{
  width: auto;
  height: auto;
  padding-top: 25px;
  padding-bottom: 25px;
  padding-left: 20px;
  text-align: left;
  font-size: 10px;
}
.bnrBtn .btn span{
  font-size: 13px;
  margin-bottom: 10px;
}
.bnrBtn .btn img{
  right: 2%;
  top: -10%;
  width: 90px;
}
}


/* variation
-----------------------------------------------*/
#variation{
  padding: 60px 40px 100px;
}
#variation .list{
  font-size: 0;
  text-align: center;
  margin-top: 40px;
}
#variation .list .col{
  display: inline-block;
  margin: 20px 30px;
}
#variation .list .col p{
  font-size: 16px;
  font-weight: bold;
  text-align: left;
  padding-left: 15px;
}
#variation .list .col p::before{
  content: "";
  display: inline-block;
  vertical-align: middle;
  border-radius: 50%;
  width: 58px;
  height: 58px;
  margin-right: 8px;
}
#variation .list .col.color1 p::before{
  background: #505458;
}
#variation .list .col.color2 p::before{
  background: #859a8d;
}
#variation .list .col.color3 p::before{
  background: #756954;
}
#variation .list .col p span{
  display: inline-block;
  vertical-align: middle;
  margin-top: 2px;
}
@media screen and (max-width: 900px) {
#variation .list .col{
  margin: 15px 20px;
}
#variation .list .col img{
  width: 230px;
}
#variation .list .col p::before{
  width: 45px;
  height: 45px;
}
}
@media screen and (max-width: 750px) {
#variation{
  padding: 20px 20px 60px;
}
#variation .list{
  margin-top: 10px;
  width: calc(100% + 40px);
  position: relative;
  left: -20px;
}
#variation .list .col{
  margin: 10px 10px;
}
#variation .list .col img{
  width: 130px;
}
#variation .list .col p{
  font-size: 14px;
  padding-left: 0;
  margin-top: 5px;
}
#variation .list .col p::before{
  width: 20px;
  height: 20px;
}
#variation .list .col p span{
  margin-top: 0;
}
}


/* reuse
-----------------------------------------------*/
#reuse{
  position: relative;
  color: #fff;
  padding: 0 40px;
  background: #000;
}
#reuse::before{
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url("../images/bgi_reuse_01.jpg") no-repeat center / cover;
}
#reuse .box{
  display: flex;
  align-items: center;
  min-height: 468px;
  padding: 40px 0;
}
#reuse .box .img{
  width: 330px;
}
#reuse .box .txt{
  width: calc(100% - 330px);
  padding-left: 80px;
}
#reuse .box .txt h3{
  font-size: 32px;
  line-height: 1.5;
}
#reuse .box .txt p{
  font-size: 18px;
  line-height: 2;
  margin-top: 20px;
}
#reuse .box .txt .link{
  margin-top: 20px;
}
#reuse .box .txt .link a{
  position: relative;
  display: inline-block;
  padding-right: 20px;
  font-size: 18px;
  font-weight: bold;
  color: #fff;
	transition: opacity .2s;
}
#reuse .box .txt .link a:hover{
  opacity: .7;
}
#reuse .box .txt .link a::after{
	content: "";
  position: absolute;
  right: 0;
  top: 50%;
	display: inline-block;
  vertical-align: middle;
	width: 12px;
	height: 12px;
	box-sizing: border-box;
	border-top: solid 3px #fff;
	border-right: solid 3px #fff;
	transform: translateY(-50%) rotate(45deg);
}
@media screen and (max-width: 1300px) {
#reuse .box .txt h3 br.pcOnly{
  display: none;
}
}
@media screen and (max-width: 1023px) {
#reuse .box{
  display: block;
}
#reuse .box .img{
  width: 200px;
  margin: 0 auto;
}
#reuse .box .txt{
  width: 100%;
  padding-left: 0;
  margin-top: 10px;
}
}
@media screen and (max-width: 750px) {
#reuse{
  padding: 0 20px;
}
#reuse::before{
  background-position: right 20% center;
  opacity: .6;
}
#reuse .box{
  padding: 40px 0 50px;
}
#reuse .box .img{
  width: 140px;
}
#reuse .box .txt h3{
  font-size: 22px;
}
#reuse .box .txt p{
  font-size: 15px;
  margin-top: 15px;
}
#reuse .box .txt .link{
  text-align: center;
}
#reuse .box .txt .link a{
  font-size: 16px;
}
}


/* guideBox
-----------------------------------------------*/
#guideBox{
	background-color:#F8F7F4;
}
#guideBox h3{
	font-size:40px;
	line-height:1.2em;
}
#guideBox ul.productLink{
	overflow:hidden;
	margin-bottom:40px;
}
#guideBox ul.productLink li{
	float:left;
	width:235px;
	margin-right:20px;
}
#guideBox ul.productLink li.link4{
	margin-right:0px;
}
#guideBox ul.productLink li{
	float:left;
	width:235px;
	margin-right:20px;
	text-align:center;
}
#guideBox ul.productLink li .img{
	width:128px;
	margin:0 auto 15px auto;
}
#guideBox ul.productLink li .img img{
	width:100%;
	height:auto;
}
#guideBox ul.productLink li a{
	display:inline-block;
	*display:inline;
	*zoom:1;
	margin-bottom:10px;
	color:#0CB8BC;
}
#guideBox ul.productLink li a:hover{
	text-decoration:none;
	opacity:0.8;
	filter:alpha(opacity=80);
}
#guideBox ul.productLink li h4{
	font-size:18px;
}
#guideBox ul.productLink li h4 i{
	margin-right:5px;
	font-size:22px;
}
#guideBox ul.productLink li p{
	text-align:left;
	font-size:13px;
	line-height:1.5em;
}
#guideBox .productNote{
	border:2px solid #EDECEA;
	background-color:#fff;
	padding:28px 28px 8px 28px;
}
#guideBox .productNote h4{
	color:#0CB8BC;
	font-size:18px;
	margin-bottom:5px;
}
#guideBox .productNote ul{
	margin-bottom:20px;
}
#guideBox .productNote ul li{
	font-size:14px;
	margin-left:1em;
	text-indent:-1em;
	margin-bottom:5px;
}
@media screen and (max-width: 1100px) {
#guideBox ul.productLink{
  max-width: 510px;
  margin-left: auto;
  margin-right: auto;
}
}
@media screen and (max-width:750px) {
#guideBox h3{
	font-size:20px;
}
#guideBox ul.productLink{
	font-size:0;
	text-align:center;
	margin-bottom:30px;
}
#guideBox ul.productLink li{
	float:none;
	display:inline-block;
	width:48.5%;
	max-width:235px;
	margin-right:0px;
	margin-bottom:10px;
	vertical-align:top;
}
#guideBox ul.productLink li:nth-child(2n){
	margin-left:3%;
}
#guideBox ul.productLink li .img{
	text-align:center;
	width:auto;
}
#guideBox ul.productLink li .img img{
	max-width:128px;
}
#guideBox ul.productLink li h4{
	font-size:15px;
}
#guideBox ul.productLink li h4 i{
	font-size:18px;
}
#guideBox ul.productLink li p{
	font-size:12px;
}
#guideBox .productNote{
	padding:18px 18px 4px;
}
#guideBox .productNote h4{
	font-size:15px;
}
#guideBox .productNote ul li{
	font-size:12px;
}
}


/* layout
-----------------------------------------------*/
.layout{
	margin: 0 auto;
}
.layout .inner{
	max-width: 1080px;
	margin: 0 auto;
	padding: 100px 40px;
}
.layout .ttlBox{
	text-align: center;
	margin-bottom: 50px;
}
.layout .ttlBox h2{
	position: relative;
	font-size: 40px;
	line-height: 1.2em;
	color: #2E3445;
}
.layout .ttlBox h2 br{
	display: none;
}
.layout .ttlBox h3{
	font-size: 18px;
}
.layout .ttlBox h3 br{
	display: none;
}
.layout ul.col4 {
	overflow: hidden;
}
.layout .col4 li{
	float:left;
	width: 235px;
	margin-right: 20px;
}
.layout .col4 li.link4{
	margin-right: 0px;
}
.layout .col4 li strong{
	display: block;
	color: #0CB8BC;
	font-size: 14px;
	font-weight: bold;
}
.layout .col4 li p{
	font-size: 12px;
	line-height: 1.5em;
	padding-top: 5px;
}
.layout .col4 li a:hover{
	opacity: 0.8;
	text-decoration: none;
}
.layout .col4 li .photo{
	border: 2px solid #EEEDEB;
	margin-bottom: 8px;
}
.layout .col4 li .photo img{
	width: 100%;
	height: auto;
}
.layout .col4 li i{
	font-size: 18px;
	margin-right: 5px;
}
.fa-arrow-circle-right:before {
	color: #0CB8BC;
}
#relationBox ul.col4 li.link4{
	margin-right: 0;
}
#relationBox ul li a{
	display: block;
}
@media screen and (max-width: 1100px) {
.layout{
	min-width:320px;
}
.layout .inner{
	padding:60px 40px;
	width:auto;
}
.layout .ttlBox{
	margin-bottom:25px;
}
.layout .ttlBox h2{
	font-size:22px;
	padding-bottom:6px;
}
.layout .ttlBox h2 br{
	display: block;
}
.layout .ttlBox span{
	font-size:12px;
	margin-top:8px;
}
.layout ul.col4{
	overflow:hidden;
	font-size:0;
	text-align:center;
  max-width: 484px;
  margin-left: auto;
  margin-right: auto;
}
.layout .col4 li{
	float:none;
	display:inline-block;
	width:48.5%;
	max-width:235px;
	margin-right:0px;
	margin-bottom:15px;
	vertical-align:top;
	text-align:left;
}
.layout .col4 li:nth-child(2n){
	margin-left:3%;
}
.layout .col4 li strong{
	font-size:12px;
	padding-left:18px;
}
.layout .col4 li .photo img{
	width:100%;
	height:auto;
}
.layout .col4 li p{
	font-size:11px;
}
.layout .col4 li i{
	font-size:14px;
	top:0;
}
@media screen and (max-width: 750px) {
.layout .inner{
	padding: 60px 20px;
}
#relationBox .inner{
  padding-bottom: 0;
}
}
}


/* mainSlider
-----------------------------------------------*/
#mainSlider .slider{
	font-size: 0;
	max-width: 1180px;
	margin: 45px auto 0;
  padding: 0 30px;
}
#mainSlider .slick-track > li{
	display: inline-block;
	box-sizing: border-box;
	margin: 0 10px;
}
#mainSlider .slick-track > li{
	position: relative;
  color: #fff;
  display: flex;
  flex-direction: column;
}
#mainSlider .slick-track > li .ttl{
  position: relative;
  padding: 3px 0 0 60px;
  flex: 1;
  height: 100%;
  min-height: 0%;
}
#mainSlider .slick-track > li .ttl .type{
  position: absolute;
  left: 0;
  top: 0;
  width: 50px;
  height: 50px;
  line-height: 50px;
  text-align: center;
  color: #75ad3e;
  font-size: 15px;
  border-radius: 8px;
  background: #fff;
  font-weight: bold;
}
#mainSlider .slick-track > li.tantai .ttl .type{
  color: #75ad3e;
}
#mainSlider .slick-track > li.rentou .ttl .type{
  color: #45a194;
}
#mainSlider .slick-track > li .ttl p{
  font-size: 14px;
}
#mainSlider .slick-track > li .ttl p strong{
  display: block;
  font-size: 22px;
  margin-top: 2px;
}
#mainSlider .slick-track > li .img{
  max-width: 327px;
  margin: 15px auto 0;
}
#mainSlider .slick-track > li .size{
  font-size: 0;
  margin-top: -55px;
}
#mainSlider .slick-track > li .size li{
  display: inline-block;
  vertical-align: top;
  width: 50px;
  height: 50px;
  border-radius: 8px;
  margin: 5px 5px 0 0;
}
#mainSlider .slick-track > li .size li:first-child{
  line-height: 50px;
  color: #fff;
  text-align: center;
  font-size: 13px;
  background: #fff;
  font-weight: bold;
}
#mainSlider .slick-track > li.tantai .size li:first-child{
  color: #75ad3e;
}
#mainSlider .slick-track > li.rentou .size li:first-child{
  color: #45a194;
}
#mainSlider .slick-track > li .size li:not(:first-child){
  color: #75ad3e;
  text-align: center;
  font-size: 15px;
  border: 3px solid #fff;
}
#mainSlider .slick-track > li .size li:not(:first-child) strong{
  display: block;
  font-size: 24px;
  font-family: 'Oswald', sans-serif;
  font-weight: 300;
  line-height: 1;
  padding-top: 4px;
  color: #fff;
}
#mainSlider .slick-track > li .size li:not(:first-child) span{
  display: block;
  font-size: 9px;
  margin-top: 1px;
  border-color: #fff;
  color: #fff;
}
#mainSlider .slick-track > li.tantai .size li:not(:first-child){
  background: #75ad3e;
}
#mainSlider .slick-track > li.rentou .size li:not(:first-child){
  background: #45a194;
}
@media screen and (max-width: 750px) {
#mainSlider .slider{
	margin: 35px auto 0;
  padding: 0 10px;
}
#mainSlider .slick-track > li .ttl p{
  font-size: 13px;
}
#mainSlider .slick-track > li .img{
  max-width: 230px;
  margin: 5px auto 0;
}
#mainSlider .slick-track > li .size{
  margin-top: -45px;
}
}


/* slick-slider
-----------------------------------------------*/
.slick-slider{
	position: relative;
	display: block;
	box-sizing: border-box;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-touch-callout: none;
	-khtml-user-select: none;
	-ms-touch-action: pan-y;
	touch-action: pan-y;
	-webkit-tap-highlight-color: transparent;
}
.slick-list{
	position: relative;
	display: block;
	margin: 0;
	height: 100%;
}
.slick-list.dragging{
	cursor: pointer;
	cursor: hand;
}
.slick-slider .slick-track,
.slick-slider .slick-list{
	-webkit-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}
.slick-track{
	position: relative;
	top: 0;
	left: 0;
	display: flex;
	margin-left: auto;
	margin-right: auto;
	height: 100%;
}
.slick-track:before,
.slick-track:after{
	display: table;
	content: '';
}
.slick-track:after{
	clear: both;
}
.slick-loading .slick-track{
  visibility: hidden;
}
.slick-slide{
	min-height: 1px;
}
.slick-slide:focus{
	outline: none;
}
[dir='rtl'] .slick-slide{
	float: right;
}
.slick-initialized .slick-slide{
	display: block;
}
.slick-loading .slick-slide{
	visibility: hidden;
}
.slick-vertical .slick-slide{
	display: block;
	height: auto;
}
.slick-arrow{
	position: absolute;
	top: 50%;
	z-index: 3;
	width: 72px;
	height: 72px;
	font-size: 0;
	border: none;
	cursor: pointer;
	transform: translateY(-50%);
	padding: 0;
  opacity: 1;
	transition: background .2s;
  background: rgba(0,0,0,.3);
  border-radius: 50%;
}
.slick-arrow:hover{
  background: rgba(0,0,0,.5);
}
.slick-disabled{
	display: none !important;
}
.slick-prev{
	left: 43px;
}
.slick-next{
	right: 43px;
}
.slick-arrow::before{
  content: "";
  position: absolute;
  left: calc(50% - 4px);
  top: 50%;
  display: inline-block;
  vertical-align: middle;
  width: 18px;
  height: 18px;
  box-sizing: border-box;
  border-top: solid 3px #fff;
  border-right: solid 3px #fff;
  transform: translate(-50%,-50%) rotate(45deg);
}
.slick-prev::before{
  left: calc(50% + 4px);
	transform: translate(-50%,-50%) rotate(225deg);
}
@media screen and (max-width: 750px) {
.slick-arrow{
	top: calc(50% - 18px);
	width: 50px;
	height: 50px;
}
.slick-prev{
	left: 10px;
}
.slick-next{
	right: 10px;
}
.slick-arrow::before{
  width: 12px;
  height: 12px;
  left: calc(50% - 2px);
}
.slick-prev::before{
  left: calc(50% + 2px);
}
}
.slick-dots{
  font-size: 0;
  text-align: center;
  margin-top: 15px;
}
.slick-dots li{
  display: inline-block;
  margin: 5px;
}
.slick-dots li button{
  display: inline-block;
  width: 13px;
  height: 13px;
  background: rgba(255,255,255,.5);
  border: none;
  font-size: 0;
  border-radius: 50%;
}
.slick-dots li.slick-active button{
  background: rgba(255,255,255,1);
}