@charset "utf-8";
#mainimg {
	position: relative;
	width:100%;
	background: url(../images/mv01.png);
	background-position: center top;
	background-repeat: no-repeat;
	height: 500px;
}
#mainimg .catch{
	position: absolute;
	top: 45%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: 100%;
}
#mainimg .catch p{
	text-align: center;
	font-weight: bold;
	font-size: 2.0rem;
}
#mainimg .catch .p1{
	font-size: 4.4rem;
}

/*Toppge共通 */
#toppage {
	position: relative;
}
#toppage .btn a {
	line-height: 70px;
	border: 1px solid #323232;
	background: #323232;
	text-align: center;
	color: #fff;
	font-size: 2.0rem;
}
#toppage .btn.en a {
	font-size: 1.4rem;
}
#toppage .btn a:hover {
}
#toppage .btn a::before,
#toppage .btn a::after {
	position: absolute;
	content: '';
	display: block;
	top: 50%;
	width: 11px;
	height: 11px;
	margin-top: -6px;
  	border-right: 2px solid #ff9900;
  	border-bottom: 2px solid #ff9900;
  	-webkit-transform: rotate(-45deg);
  	transform: rotate(-45deg);
}
#toppage .btn a::before {
	right: 16px;
}
#toppage .btn a::after {
	right: 22px;
}

/*Sec01*/
#sec01 {
	position: relative;
	padding:90px 0 71px;
}
#sec01::before,
#sec01::after {
	position: absolute;
	content: '';
	display: block;
	left: 50%;
  	width: 35px;
  	height: 35px;
	margin-left: -17px;
  	border-right: 6px solid #c2d0d7;
  	border-bottom: 6px solid #c2d0d7;
  	-webkit-transform: rotate(45deg);
  	transform: rotate(45deg);
}
#sec01::before {
	top: 20px;
}
#sec01::after {
	top: 37px;
}
#sec01 .ttl {
	text-align: center;
	margin-bottom: 25px;
}
#sec01 .ttl p {
	position: relative;
	padding-bottom: 10px;
	margin-bottom: 10px;
	font-weight: bold;
	font-size: 4.8rem;
	line-height: 1;
}
#sec01 .ttl p::before {
	position: absolute;
	content: '';
	display: block;
	bottom: 0;
	left: 50%;
	width: 3.5em;
	height: 2px;
	transform: translateX(-50%);
	background: #ff9900;
}
#sec01 .ttl h2 {
	font-size: 1.8rem;
	font-weight: bold;
}
#sec01 .lead {
	text-align: center;
	margin-bottom: 20px;
}
#sec01 .lead p{
	font-size: 2.2rem;
}
#sec01 .retail {
	margin-bottom: 58px;
	padding-bottom: 32px;
	border: 8px solid #ff9900;
	background-image: url(../images/bg_retail.png);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 320px auto;
}
#sec01 .retail h3 {
	position: relative;
	margin-bottom: 15px;
	padding-top: 90px;
	text-align: center;
	font-weight: bold;
	font-size: 3.8rem;
	background-image: url(../images/ico_retail.png);
	background-repeat: no-repeat;
	background-position: center 20px;
	background-size: 100px auto;
	line-height: 1;
}
#sec01 .retail h3::before {
	position: absolute;
	content: '';
	display: block;
	bottom: 0;
	left: 50%;
	width: 12em;
	height: 2px;
	transform: translateX(-50%);
	background: #ff9900;
}
#sec01 .retail .comment {
	margin-bottom: 15px;
}
#sec01 .retail .comment p {
	text-align: center;
	font-size: 1.8rem;
	font-weight: bold;
}
#sec01 .retail .row {
	width: 810px;
	margin: 0 auto;
}
#sec01 .retail .point {
	float: left;
	width: 575px;
}
#sec01 .retail .point li{
	position: relative;
	font-weight: bold;
	font-size: 2.4rem;
	line-height: 65px;
	margin-bottom: 1px;
	padding-left: 75px;
	letter-spacing: -0.025em;
}
#sec01 .retail .point.en li {
	font-size: 1.6rem
}
#sec01 .retail .point li:before {
	position: absolute;
	content: '';
	display: block;
	top: 0;
	left: 0;
	width: 65px;
	height: 65px;
	background: #f7741c;
}
#sec01 .retail .point li:after{
	position: absolute;
  top: 0;
	left: 0;
	width: 65px;
	line-height: 65px;
	color: #fff;
	text-align: center;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
  	counter-increment: number 1;
  	content: counter(number , decimal-leading-zero) "";
}
#sec01 .retail .point li:nth-child(odd){
	background-color: #faf4e9;
}
#sec01 .retail .point li span{
	color: #f7741c;
}
#sec01 .retail .logo_amazon {
	position: relative;
	float: right;
	width: 199px;
	height: 198px;
	border: 1px solid #aeaeae;
	text-align: center;
}
#sec01 .retail .logo_amazon img{
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	padding: 0 16px;
}
#sec01 .retail .btn {
	width: 450px;
	margin:27px auto 0; 
}
#sec01 .service {
	border-top: 1px solid #ff9900;
	border-bottom: 1px solid #ff9900;
}
#sec01 .service .outer {
	border-right: 1px solid #ff9900;
	text-align: center;
	padding-left: 8.7%;
	padding-right: 8.7%;
	padding-top: 18px;
	padding-bottom: 26px;
}
#sec01 .service .col-sm-3:last-child .outer{
	border-right:none;
}
#sec01 .service .outer .icon {
	position: relative;
	margin: 0 auto 18px;
	padding-top: 30.12%;
}
#sec01 .service .service01 .icon {
	width: 38.07%;
}
#sec01 .service .service02 .icon {
	width: 31.80%;
}
#sec01 .service .service03 .icon {
	width: 43.37%;
}
#sec01 .service .service04 .icon {
	width: 26.98%;
}
#sec01 .service .outer .icon img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
#sec01 .service .service03 .icon img {
	margin-left: 20%;
}
#sec01 .service .outer .ttl {
	position: relative;
	font-size:1.4vw;
	font-weight: bold;
	color: #ff9900;
	padding-bottom: 5px;
}
#sec01 .service .col-sm-3 .ttl::before {
	position: absolute;
	content: '';
	display: block;
	bottom: 0;
	left: 50%;
	height: 2px;
	transform: translateX(-50%);
	background: #ff9900;
}
#sec01 .service .service01 .ttl::before {
	width: 8em;
}
#sec01 .service .service02 .ttl::before {
	width: 8em;
}
#sec01 .service .service03 .ttl::before {
	width: 8em;
}
#sec01 .service .service04 .ttl::before {
	width: 8em;
}
#sec01 .service .comment {
	margin-bottom: 20px;
}
#sec01 .service .comment p {
	font-size: 1.1vw;
	line-height: 1.3;
}
#sec01 .service .comment dl {
}
#sec01 .service .comment dt {
	float: left;
	width: 12.04%;
	background: #ff9900;
	color: #fff;
	font-size: 1.0vw;
	line-height: 1.2;
	padding: 0.1vw;
}
#sec01 .service .comment dd {
	font-size: 0.8vw;
	text-align: left;
	padding-left: 2.8vw;
	padding-top: 0.5vw;
	line-height: 1.2;
}

/*Sec02*/
#sec02 {
	height: 450px;
	margin-bottom: 58px;
	background-image: url(../images/bg_product.png);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
}
#sec02 .container {
	height: 100%;
}
#sec02 .outer{
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(0,-50%);
	width: 320px;
}
#sec02 .outer .ttl{
	color: #fff;
}
#sec02 .outer .ttl p{
	font-size: 4.8rem;
	font-weight: bold;
	line-height: 1.2;
}
#sec02 .outer .ttl h2{
	font-size: 2.0rem;
}
#sec02 .outer .comment{
	margin: 20px 0;
	font-size: 1.7rem;
}


#sec03 {
	position: relative;
	height: 400px;
	color: #fff;
}
#sec03 #top_company{
	position: relative;
	top: 0;
	right: 50%;
	width: 100%;
	height: 100%;
	background: url(../images/bg_company.png);
	background-repeat: no-repeat;
	background-position: right top;
}
#sec03 #top_company .outer {
	position: absolute;
	top: 30px;
	right: 30px;
	width: 470px;
}
#sec03 #top_company .ttl {
	position: absolute;
	right: 0;
	width: 210px;
	height: 175px;
	background: url(../images/bg_company_ttl.png);
}
#sec03 #top_company .ttl .inner{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	text-align: center;
}
#sec03 #top_company .ttl h2{
	font-size: 3.2rem;
	line-height: 1.2;
	margin-bottom: 10px;
}
#sec03 #top_company .ttl h2.en {
	font-size: 2.2rem;
}
#sec03 #top_company .ttl p{
	font-size: 1.4rem;
	font-weight: bold;
	font-family:"Helvetica Neue", Helvetica, Arial, "sans-serif";
}
#sec03 #top_company .comment {
	position: absolute;
	top: 215px;
	right: 0;
	text-align: right;
	font-size: 1.6rem;
}
#sec03 .btn {
	position: absolute;
	top: 280px;
}
#sec03 #top_company .btn {
	right: 0;
}
#sec03 .btn a{
	display: block;
	width: 220px;
	line-height: 50px;
	background: #ff9900;
	border-radius: 2px;
	font-size: 1.7rem;
}
#sec03 .btn.en a {
	width: 300px;
}
#sec03 .btn a::before,
#sec03 .btn a::after{
  	border-right: 2px solid #fff;
  	border-bottom: 2px solid #fff;
}


/*sec04*/
#sec04 {
	position: relative;
	padding:90px 0 71px;
}
#sec04::before,
#sec04::after {
	position: absolute;
	content: '';
	display: block;
	left: 50%;
  	width: 35px;
  	height: 35px;
	margin-left: -17px;
  	border-right: 6px solid #c2d0d7;
  	border-bottom: 6px solid #c2d0d7;
  	-webkit-transform: rotate(45deg);
  	transform: rotate(45deg);
}
#sec04::before {
	top: 20px;
}
#sec04::after {
	top: 37px;
}
#sec04 .ttl {
	text-align: center;
	margin-bottom: 25px;
}
#sec04 .ttl p {
	position: relative;
	padding-bottom: 10px;
	margin-bottom: 10px;
	font-weight: bold;
	font-size: 4.8rem;
	line-height: 1;
}
#sec04 .ttl p::before {
	position: absolute;
	content: '';
	display: block;
	bottom: 0;
	left: 50%;
	width: 3.5em;
	height: 2px;
	transform: translateX(-50%);
	background: #ff9900;
}
#sec04 .ttl h2 {
	font-size: 1.8rem;
	font-weight: bold;
}
#sec04 .lead {
	text-align: center;
	margin-bottom: 20px;
}
#sec04 .lead p{
	font-size: 2.2rem;
}
#sec04 .retail {
	margin-bottom: 58px;
	padding-bottom: 32px;
	border: 8px solid #ff9900;
	background-image: url(../images/bg_retail.png);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 320px auto;
}
#sec04 .retail h3 {
	position: relative;
	margin-bottom: 15px;
	padding-top: 90px;
	text-align: center;
	font-weight: bold;
	font-size: 3.8rem;
	background-image: url(../images/ico_retail.png);
	background-repeat: no-repeat;
	background-position: center 20px;
	background-size: 100px auto;
	line-height: 1;
}
#sec04 .retail h3::before {
	position: absolute;
	content: '';
	display: block;
	bottom: 0;
	left: 50%;
	width: 12em;
	height: 2px;
	transform: translateX(-50%);
	background: #ff9900;
}
#sec04 .retail .comment {
	margin-bottom: 15px;
}
#sec04 .retail .comment p {
	text-align: center;
	font-size: 1.8rem;
	font-weight: bold;
}
#sec04 .retail .row {
	width: 810px;
	margin: 0 auto;
}
#sec04 .retail .point {
	float: left;
	width: 575px;
}
#sec04 .retail .point li{
	position: relative;
	font-weight: bold;
	font-size: 2.4rem;
	line-height: 65px;
	margin-bottom: 1px;
	padding-left: 75px;
	letter-spacing: -0.025em;
}
#sec04 .retail .point.en li {
	font-size: 1.6rem
}
#sec04 .retail .point li:before {
	position: absolute;
	content: '';
	display: block;
	top: 0;
	left: 0;
	width: 65px;
	height: 65px;
	background: #f7741c;
}
#sec04 .retail .point li:after{
	position: absolute;
  top: 0;
	left: 0;
	width: 65px;
	line-height: 65px;
	color: #fff;
	text-align: center;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
  	counter-increment: number 1;
  	content: counter(number , decimal-leading-zero) "";
}
#sec04 .retail .point li:nth-child(odd){
	background-color: #faf4e9;
}
#sec04 .retail .point li span{
	color: #f7741c;
}
#sec04 .retail .logo_amazon {
	position: relative;
	float: right;
	width: 199px;
	height: 198px;
	border: 1px solid #aeaeae;
	text-align: center;
}
#sec04 .retail .logo_amazon img{
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	padding: 0 16px;
}
#sec04 .retail .btn {
	width: 450px;
	margin:27px auto 0; 
}
#sec04 .service {
	border-top: 1px solid #ff9900;
	border-bottom: 1px solid #ff9900;
}
#sec04 .service .outer {
	border-right: 1px solid #ff9900;
	text-align: center;
	padding-left: 8.7%;
	padding-right: 8.7%;
	padding-top: 18px;
	padding-bottom: 26px;
}
#sec04 .service .col-sm-3:last-child .outer{
	border-right:none;
}
#sec04 .service .outer .icon {
	position: relative;
	margin: 0 auto 18px;
	padding-top: 50%;
}
#sec04 .service .service01 .icon {
	width: 50%;
}
#sec04 .service .service02 .icon {
	width: 50%;
}
#sec04 .service .service03 .icon {
	width: 50%;
}
#sec04 .service .outer .icon img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
#sec04 .service .outer .ttl {
	position: relative;
	font-size:1.4vw;
	font-weight: bold;
	color: #ff9900;
	padding-bottom: 5px;
}
#sec04 .service .col-sm-3 .ttl::before {
	position: absolute;
	content: '';
	display: block;
	bottom: 0;
	left: 50%;
	height: 2px;
	transform: translateX(-50%);
	background: #ff9900;
}
#sec04 .service .service01 .ttl::before {
	width: 8em;
}
#sec04 .service .service02 .ttl::before {
	width: 8em;
}
#sec04 .service .service03 .ttl::before {
	width: 8em;
}
#sec04 .service .service04 .ttl::before {
	width: 8em;
}
#sec04 .service .comment {
	margin-bottom: 20px;
}
#sec04 .service .comment p {
	font-size: 1.1vw;
	line-height: 1.3;
}
#sec04 .service .comment dl {
}
#sec04 .service .comment dt {
	float: left;
	width: 12.04%;
	background: #ff9900;
	color: #fff;
	font-size: 1.0vw;
	line-height: 1.2;
	padding: 0.1vw;
}
#sec04 .service .comment dd {
	font-size: 0.8vw;
	text-align: left;
	padding-left: 2.8vw;
	padding-top: 0.5vw;
	line-height: 1.2;
} 


/*News*/
#top_news {
	position: absolute;
	top: 0;
	left: 50%;
	width: 100%;
	height: 100%;
	background: url(../images/bg_news.png);
	background-repeat: no-repeat;
	background-position: left top;
}
#top_news .outer {
	position: absolute;
	top: 30px;
	left: 30px;
	width: 470px;
}
#top_news .ttl {
	position: relative;
	width: 282px;
	height: 79px;
	margin-bottom: 40px;
	padding-left: 36px;
	background: url(../images/bg_news_ttl.png) no-repeat center top;
}
#top_news .ttl h2 {
	position: relative;
	float: left;
	font-size: 2.6rem;
	line-height: 79px;
}
#top_news .ttl p {
	padding-left: 150px;
	font-size: 1.5rem;
	font-weight: bold;
	font-family:"Helvetica Neue", Helvetica, Arial, "sans-serif";
	line-height: 79px;
}
#top_news #nProgram {
}
#top_news dl {
	overflow:auto;
	height: 130px;
	font-size: 1.3rem;
}
#top_news dt {
	float: left;
	padding: 0 20px;
	color: #fff;
	font-size: 1.4rem;
}
#top_news dd {
	margin-bottom:20px;
	padding-left: 154px;
	text-align: left;
}
#top_news dd a{
	color: #fff;
}
#top_news dd a:hover{
	text-decoration: underline;
}
#top_news .btn a{
	left: 0;
}

@media screen and (max-width:512px) {
	#mainimg {
		height: 0;
		padding-top: 60.38%;
		margin-bottom: 0;
		background: url(../images/mv01_sp.png);
		background-size: cover;
	}
	#mainimg .catch .p1 {
		font-size: 1.8rem;
	}
	#mainimg .catch p {
		font-size: 1.2rem;
	}
	#toppage {
	}
	#toppage .btn a {
		width: auto;
		line-height: 50px;
		font-size: 1.5rem;
	}
	
	#sec01 {
		padding: 13.52vw 0;
	}
	#sec01::before,
	#sec01::after {
		width: 6.0vw;
		height: 6.0vw;
		margin-left: -3vw;
		border-right: 3px solid #c2d0d7;
    	border-bottom: 3px solid #c2d0d7;
	}
	#sec01::before {
		top: 3.38vw;
	}
	#sec01::after {
		top: 5.63vw;
	}
	#sec01 .ttl {
		margin-bottom: 10px;
	}
	#sec01 .ttl p {
		font-size: 2.4rem;
	}
	#sec01 .ttl h2 {
		font-size: 0.9rem;
	}
	#sec01 .lead {
		margin: 0 4.58% 10px;
	}
	#sec01 .lead p{
		font-size: 1.2rem;
	}
	#sec01 .retail.container {
		width: auto;
	}
	#sec01 .retail {
		margin: 0 4.58% 10px;
		padding-bottom: 3.38vw;
		border:4px solid #ff9900;
		background-size:52.89% auto;
	}
	#sec01 .retail h3 {
		font-size: 5.4vw;
		padding-top: 14.37vw;
		padding-bottom: 5px;
		background-size:16.06% auto;
		background-position: center 3vw;
		letter-spacing: -0.02em;
	}
	#sec01 .retail .comment {
		padding: 0 9.0%;
	}
	#sec01 .retail .comment p {
		font-size: 1.2rem;
	}
	#sec01 .retail .row {
		width: auto;
	}
	#sec01 .retail .point {
		float: none;
		width: auto;
	}
	#sec01 .retail .point li {
		font-size: 3.5vw;
		line-height: 9.66vw;
		padding-left: 10.66vw;
		margin-bottom: 2px;
	}
	#sec01 .retail .point li:before {
		width: 9.66vw;
		height: 9.66vw;
	}
	#sec01 .retail .point li:after {
		width: 9.66vw;
		line-height: 9.66vw;
	}
	#sec01 .retail .logo_amazon {
		float: none;
		width: 27.29vw;
		height: auto;
		margin: 15px auto;
		border: none;
	}
	#sec01 .retail .logo_amazon img {
		position: relative;
		top: auto;
		transform: translateY(0);
		padding: 0;
	}
	#sec01 .retail .btn {
		width: auto;
		margin: 0 3.38vw;
	}
	#toppage .btn a::before {
		right: 8px;
	}
	#toppage .btn a::after {
    	right: 14px;
	}	
	#sec01 .retail .btn a{
    	font-size: 1.2rem;
    	padding-right: 20px;
		display: table;
		width: 100%;
	    line-height: 1.2;
	    height: 50px;
	}
	#sec01 .retail .btn span {
		display: table-cell;
		vertical-align: middle;
	}
	#sec01 .service .col-xs-6 .outer{
		padding-left: 3.14vw;	
		padding-right: 3.14vw;	
	}
	#sec01 .service .col-xs-6:nth-child(1) .outer{
		border-bottom: 1px solid #ff9900;
	}
	#sec01 .service .col-xs-6:nth-child(2) .outer{
		border-bottom: 1px solid #ff9900;
		border-right: none;
	}
	#sec01 .service .service01 .icon {
		width: 19.08vw;
	}
	#sec01 .service .service02 .icon {
		width: 15.94vw;
	}
	#sec01 .service .service03 .icon {
	}
	#sec01 .service .service04 .icon {
		width: 13.52vw;
	}
	#sec01 .service .outer .ttl {
		font-size: 3.38vw
	}
	#sec01 .service .comment p {
		font-size: 2.65vw;
	}
	#sec01 .service .comment dt {
		font-size: 1.93vw;
	}
	#sec01 .service .comment dd {
		font-size: 1.93vw;
	}
	#sec01 .service .outer .btn a {
    	height: 37px;
	    font-size: 1.3rem;
	    line-height: 1;
	    display: table;
	    width: 100%;
	}
	#sec01 .service .outer .btn span {
		display: table-cell;
		vertical-align: middle;
	}
	
	
	#sec02 {
		position: relative;
		height: 0;
		margin-bottom: 27px;
		padding-top: 60.38%;
		background-image: url(../images/bg_product_sp.png);
	}
	#sec02 .container {
		position: absolute;
		top: 0;
		left: 0;
	}
	#sec02 .outer {
		width: 100%;
		padding: 0 7.24vw;
	}
	#sec02 .ttl {
		margin-bottom: 10px;
	}
	#sec02 .outer .ttl p {
		font-size: 2.4rem;
	}
	#sec02 .outer .ttl h2 {
		font-size: 1.0rem;
	}
	#sec02 .outer .comment {
		margin: 0 0 4.22vw;
		font-size:1.2rem;
		color: #fff;
	}
	#sec02 .outer .btn_lsit {
		width: 54.37vw;
		margin: 0 auto;
	}
	#sec02 .outer .btn_lsit.en {
		width: auto;
		margin: 0 auto;
	}
	#sec03 {
		height: auto;
	}
	#sec03 #top_company {
		right: auto;
		padding: 5.55vw 4.58vw;
		background-image: url(../images/bg_company_sp.png);
		background-position: center top;
		background-size: contain;
	}
	#sec03 #top_company .outer {
		position: relative;
		top: auto;
		right: auto;
		width: auto;
		overflow: hidden;
	}
	#sec03 #top_company .ttl {
		position: relative;
		float: left;
		right: auto;
		width: 27.41vw;
		height: 22.82vw;
		background-size: contain;
		background-repeat: no-repeat;
	}
	#sec03 #top_company .ttl .inner {
    width: 100%;
	}
	#sec03 #top_company .ttl h2 {
		font-size: 1.75rem;
		margin-bottom: 0;
	}
  #sec03 #top_company .ttl h2.en {
    font-size: 1.2rem;
  }
	#sec03 #top_company .ttl p {
		font-size: 1.8vw;
	}
	#sec03 #top_company .comment {
		position: relative;
		float: right;
		top: auto;
		right: auto;
		width: 58.57vw;
		padding-top: 10px;
		font-size: 0.9rem;
		text-align: left;
	}
	#sec03 #top_company .btn {
		position: absolute;
		top: auto;
		bottom: 0;
		right: 0;
		width: 54.34vw;
	}
	#sec03 .btn a {
		line-height: 7.85vw;
		font-size: 1.2rem;
	}
	#sec03 .btn.en a {
		width: auto;
	}


	#sec04 {
		padding: 13.52vw 0;
	}
	#sec04::before,
	#sec04::after {
		width: 6.0vw;
		height: 6.0vw;
		margin-left: -3vw;
		border-right: 3px solid #c2d0d7;
    	border-bottom: 3px solid #c2d0d7;
	}
	#sec04::before {
		top: 3.38vw;
	}
	#sec04::after {
		top: 5.63vw;
	}
	#sec04 .ttl {
		margin-bottom: 10px;
	}
	#sec04 .ttl p {
		font-size: 2.4rem;
	}
	#sec04 .ttl h2 {
		font-size: 0.9rem;
	}
	#sec04 .lead {
		margin: 0 4.58% 10px;
	}
	#sec04 .lead p{
		font-size: 1.2rem;
	}
	#sec04 .retail.container {
		width: auto;
	}
	#sec04 .retail {
		margin: 0 4.58% 10px;
		padding-bottom: 3.38vw;
		border:4px solid #ff9900;
		background-size:52.89% auto;
	}
	#sec04 .retail h3 {
		font-size: 5.4vw;
		padding-top: 14.37vw;
		padding-bottom: 5px;
		background-size:16.06% auto;
		background-position: center 3vw;
		letter-spacing: -0.02em;
	}
	#sec04 .retail .comment {
		padding: 0 9.0%;
	}
	#sec04 .retail .comment p {
		font-size: 1.2rem;
	}
	#sec04 .retail .row {
		width: auto;
	}
	#sec04 .retail .point {
		float: none;
		width: auto;
	}
	#sec04 .retail .point li {
		font-size: 3.5vw;
		line-height: 9.66vw;
		padding-left: 10.66vw;
		margin-bottom: 2px;
	}
	#sec04 .retail .point li:before {
		width: 9.66vw;
		height: 9.66vw;
	}
	#sec04 .retail .point li:after {
		width: 9.66vw;
		line-height: 9.66vw;
	}
	#sec04 .retail .logo_amazon {
		float: none;
		width: 27.29vw;
		height: auto;
		margin: 15px auto;
		border: none;
	}
	#sec04 .retail .logo_amazon img {
		position: relative;
		top: auto;
		transform: translateY(0);
		padding: 0;
	}
	#sec04 .retail .btn {
		width: auto;
		margin: 0 3.38vw;
	}
	#toppage .btn a::before {
		right: 8px;
	}
	#toppage .btn a::after {
    	right: 14px;
	}	
	#sec04 .retail .btn a{
    	font-size: 1.2rem;
    	padding-right: 20px;
		display: table;
		width: 100%;
	    line-height: 1.2;
	    height: 50px;
	}
	#sec04 .retail .btn span {
		display: table-cell;
		vertical-align: middle;
	}
	#sec04 .service .col-xs-6 .outer{
		padding-left: 3.14vw;	
		padding-right: 3.14vw;	
	}
	#sec04 .service .col-xs-6:nth-child(1) .outer{
		border-bottom: 1px solid #ff9900;
	}
	#sec04 .service .col-xs-6:nth-child(2) .outer{
		border-bottom: 1px solid #ff9900;
		border-right: none;
	}
	#sec04 .service .service01 .icon {
		width: 25vw;
	}
	#sec04 .service .service02 .icon {
		width: 25vw;
	}
	#sec04 .service .service03 .icon {
		width: 25vw;
	}
	#sec04 .service .outer .ttl {
		font-size: 3.38vw
	}
	#sec04 .service .comment p {
		font-size: 2.65vw;
	}
	#sec04 .service .comment dt {
		font-size: 1.93vw;
	}
	#sec04 .service .comment dd {
		font-size: 1.93vw;
	}
	#sec04 .service .outer .btn a {
    	height: 37px;
	    font-size: 1.3rem;
	    line-height: 1;
	    display: table;
	    width: 100%;
	}
	#sec04 .service .outer .btn span {
		display: table-cell;
		vertical-align: middle;
	}
	
	
	#top_news {
		position: relative;
		left: auto;
		width: auto;
		padding: 5.55vw 4.58vw;
	}
	#top_news .outer {
		position: relative;
		top: auto;
		left: auto;
		width: auto;
	}
	#top_news .ttl {
		width: 42.99vw;
		height: 10.02vw;
		padding-left: 5.34vw;
		background-size: 100% 100%;
	}
	#top_news .ttl h2 {
		font-size: 1.6rem;
		line-height: 10.02vw;
	}
	#top_news .ttl p {
		padding-left: 8em;
		font-size: 1.8vw;
		line-height: 10.02vw;
	}
	#top_news dl {
		height: 22.34vw;
	}
	#top_news dt {
		float: left;
		margin-bottom: 10px;
	}
	#top_news dd {
		padding-left: 8.5em;
		margin-bottom: 15px;
	}
	#sec03 #top_news .btn {
		position: relative;
		top: 0;
		width: 54.34vw;
		margin: 0 auto;
	}
	#sec03 #top_news .btn.en {
    width: auto;
	}
}