@charset "utf-8";
/* CSS Document */

/** -------------------------------------
	テーマのスタイルを削除・変更
------------------------------------- **/
body:not(.custom-background-image):before, body:not(.custom-background-image):after {
	display: none;
}

body.no-sidebar:not(.search-results) article:not(.type-page) .entry-content {
	margin: 0;
	width: 100%;
}

*:focus {
	outline: none!important;
}

.site {
	margin: 0;
}

.site-inner {
	max-width: 2000px;
	max-width: initial;
}

.site-content {
	padding: 0;
}

.no-sidebar .entry-content {
	margin: 0 auto;
	width: 100%;
}

.entry-title {
	text-align: center;
}

/* ヘッダー ロゴ */
.site-branding img {
	width: 230px;
}

/** -------------------------------------
	共通設定
------------------------------------- **/
body {
	background: #fff;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-size: 16px;
	margin: 80px 0 0;
	padding: 0;
}

img {
	max-width: 100%;
	vertical-align: bottom;
}

a {
	box-shadow: none!important;
	color: #000;
	text-decoration: none;
}

h2, .entry-content h2, .entry-summary h2, .comment-content h2, .textwidget h2 {
	font-family: 'Lato', Verdana, Geneva, "sans-serif";
	font-size: 30px;
	font-weight: normal;
	margin: 0 0 40px;
	text-align: center;
}

ul {
	margin: 0;
	padding: 0;
}
ul li {
	list-style-type: none;
}

/* 複数カラム */
.column {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.column2, .column3, .column4 {
	flex-wrap: wrap;
}

.column5 {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-around;
	justify-content: space-around;
}

.column3 div {
	width: 31%;
}

.column4 div {
	width: 23%;
}

.flexStart {
	justify-content: flex-start;
}

.column73 div.box {
	width: 69%;
}
.column73 div.box + div.box {
	width: 29%;
}

.column64 div.box {
	width: 59%;
}
.column64 div.box + div.box {
	width: 39%;
}

/* 寄せ */
.ta-center {
	text-align: center;
}

.ta-left {
	text-align: left!important;
}

.ta-right {
	text-align: right;
}

.right {
	display: table;
	margin: 0 0 0 auto;
}

/*-- 固定ボタン お問い合わせ --*/
.btn-contact {
	position: fixed;
	right: 0;
	top: 560px;
	transition: ease 1.5s;
	text-align: center;
	z-index: 99;
}

/*.btn-contact.disnone {
	right: -100%;
	transition: ease 1.5s;
}*/

.btn-contact a {
	background: url(img/icon-mail.png) no-repeat 30px 50%;
	background-color: #1873b3;
	color: #fff;
	display: block;
	font-size: 21px;
	padding: 20px 30px 20px 70px;
}

/*-- PC・スマホでのみ表示 --*/
.sp-on {
	display: none;
}

/** -------------------------------------
	ヘッダー
------------------------------------- **/
.site-header {
	background: #fff;
	box-sizing: border-box;
	padding: 20px;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 99;
}

/*-- ロゴ --*/
.site-branding {
	margin: 0 auto 0 0;
}

/*-- メニュー --*/
.headerMenu {
	display: table;
	margin: 0;
	position: absolute;
	top: 28px;
	right: 300px;
}

.headerMenu ul {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.headerMenu ul li::after {
	content: '｜';
}

.headerMenu ul li:last-child::after {
	display: none;
}

.headerMenu ul li a {
	padding: 0 5px;
}
.headerMenu ul li a:hover {
	text-decoration: underline;
}

.menu-toggle {
	display: none;
}

/*-- 電話番号 --*/
header .headerTel {
	margin: 5px 0 5px 50px;
	position: absolute;
	top: 22px;
	right: 20px;
	width: 250px;
}

@media screen and (max-width: 1024px) {
	/*-- 電話番号 --*/
	header .headerTel {
		margin: 5px 0 5px 30px;
		width: 25%;
	}

	.site-header-menu {
		font-size: 14px;
	}
}

@media screen and (max-width: 1000px) {
	/*-- メニュー --*/
	.headerMenu {
		display: none;
	}

	.menu-toggle {
		border: none;
		display: block;
		margin: 0;
		padding: 0;
		position: absolute;
		right: 20px;
		top: 15px;
	}

	.menu-toggle span {
		background: #1873b3;
		display: block;
		height: 4px;
		width: 100%;
		transition: ease .5s;
	}
	.menu-toggle span:nth-child(2), .menu-toggle span:nth-child(3) {
		position: absolute;
	}
	.menu-toggle span:nth-child(2) {
		top: 11px;
	}
	.menu-toggle span:nth-child(3) {
		top: 22px;
	}

	.menu-toggle p {
		color: #000;
		margin: 22px 0 0;
		font-size: 14px;
	}

	/*-- 電話番号 --*/
	header .headerTel {
		margin: 5px 100px 5px 0;
	}
}

/** -------------------------------------
	フッター
------------------------------------- **/
.site-footer {
	display: block;
	padding: 0;
}

/*-- PAGE TOP --*/
footer .pageTop {
	background: #eee;
	padding: 25px 0 30px;
}

footer .pageTop a {
	display: table;
	margin: 0 auto;
}

/*--COMPANY --*/
footer .company {
	background: #153f8a;
	color: #fff;
	padding: 80px 0;
}

footer .company .inner {
	margin: 0 auto 20px;
	max-width: 1080px;
}

footer .company .inner .column {
	margin: 0 0 20px;
}

footer .company .image {
	margin-right: 30px;
}

footer .company .text {
	margin-left: 0;
	padding: 0 0 50px;
	position: relative;
}

footer .company .name {
	font-weight: bold;
	line-height: 1.4;
	margin: 0 0 5px;
}

footer .company .prof {
	font-size: 14px;
	line-height: 1.5;
	margin: 0;
}

footer .company .prof a {
	color: #fff;
}

footer .company .btn {
	background-color: #fff;
	background-image: url(img/icon-youtube.png);
	background-position: 20px 50%;
	background-repeat: no-repeat;
	border: none;
	border-radius: 10px;
	font-weight: bold;
	padding: 10px 20px 10px 60px;
	position: absolute;
	bottom: 0;
	left: 0;
}

/*-- SITE INFO --*/
footer .site-info {
	padding: 30px 0 50px;
}

footer .site-info .logo {
	margin: 0 auto;
	width: 170px;
}

footer .site-info .copyright {
	font-size: 14px;
	margin: 20px 0;
	text-align: center;
}


@media screen and (max-width: 910px) {
}

/** -------------------------------------
	main　コンテンツ
------------------------------------- **/
/* パンくず */
#breadcrumb ul {
	display: -webkit-flex;
	display: flex;
	margin: 0 auto 30px;
	max-width: 1080px;
}

#breadcrumb ul li {
	color: #666;
}

#breadcrumb ul li a {
	color: #1873b3;
}

#breadcrumb ul li::after {
	content: '>';
	margin: 0 10px;
}
#breadcrumb ul li:last-child::after {
	display: none;
}

/** -------------------------------------
	トップページ
------------------------------------- **/
/*-- スライダー --*/
#topPage .swiper-slide {
	height: 600px;
	position: relative;
}

#topPage .swiper-slide img {
	position: absolute;
	top: 56%;
	left: 0;
	transform: translateY(-50%);
	max-width: initial;
	width: 115%;
}

#topPage .swiper-slide p {
	font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "serif";
	font-size: 50px;
	letter-spacing: -1.5px;
	line-height: 1.4;
	margin: 0;
	position: absolute;
	top: 50px;
	left: 150px;
	text-shadow: white 1px 2px 20px, white -1px 2px 20px,
		white 1px -2px 15px, white -1px -2px 20px,
		white 2px 1px 20px, white -2px 1px 20px,
		white 2px -1px 20px, white -2px -1px 20px;
}

#topPage .swiper-pagination-bullet {
	opacity: .4;
	height: 17px;
	width: 17px;
}

#topPage .swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
	margin: 0 8px;
}

#topPage .swiper-pagination-bullet-active {
	background: #1873b3;
	opacity: 1.0;
}

@media screen and (min-width: 1500px) {
	#topPage .swiper-slide {
		height: 650px;
	}
}

/*-- スライダー下 --*/
#topPage .underSlide {
	background: #45b035;
	color: #fff;
	padding: 60px 0;
}

#topPage .underSlide .inner {
	margin: 0 auto;
	max-width: 1070px;
	width: 90%;
}

#topPage .underSlide h2 {
	font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "serif";
	font-size: 27px;
	font-weight: normal;
	line-height: 1.5;
	margin: 0 0 15px;
	text-align: left;
}

#topPage .underSlide h2 em {
	font-size: 30px;
	font-style: normal;
	line-height: 1.5;
	vertical-align: top;
}

#topPage .underSlide h2 span {
	letter-spacing: -5px;
}

#topPage .underSlide p {
	font-size: 17px;
}

/* 共同開発企業 */
#topPage .underSlide .joint {
	background: #fff;
	border-radius: 10px;
	box-sizing: border-box;
	padding: 30px;
	width: 520px;
}

#topPage .underSlide .joint h3 {
	border-bottom: dotted 1px #ccc;
	color: #999;
	font-size: 21px;
	font-weight: 500;
	line-height: 1.0;
	margin: 0 0 30px;
	padding: 0 0 15px;
	text-align: center;
}

#topPage .underSlide .joint .column div {
	margin: 0 0 20px;
}

/*-- 科学的根拠のある～ --*/
#topPage .explanation {
	margin: 0 auto;
	max-width: 1080px;
	padding: 80px 0;
	text-align: center;
}

#topPage .explanation h3 {
	font-size: 27px;
	font-weight: normal;
	margin: 0 0 40px;
}

#topPage .explanation .column3 div {
	max-width: 348px;
}

#topPage .explanation a {
	color: #1873b3;
	display: block;
	font-size: 19px;
}

#topPage .explanation a p {
	background: #e7f1f7;
	margin: 0;
	padding: 10px 0;
}

#topPage .explanation a p span {
	background: url(img/icon-arrow1.png) no-repeat 0 50%;
	padding: 0 0 0 30px;
	position: relative;
}

#topPage .explanation .text {
	font-size: 16px;
	margin: 40px 0 0;
}

/*-- アピールポイント（職人技、独自性、使いやすさ） --*/
#topPage .appeal {
	margin: 0 auto 80px;
	max-width: 1280px;
}

#topPage .appeal .image, #topPage .appeal .desc {
	width: 50%;
}

#topPage .appeal .image {
	height: 370px;
	overflow: hidden;
	position: relative;
}

#topPage .appeal .image img {
	height: auto;
	width: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

#topPage .appeal .desc {
	color: #fff;
	position: relative;
}

#topPage .appeal .desc .inner {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 70%;
}

#topPage .appeal .desc h2 {
	font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "serif";
	font-size: 28px;
	font-weight: normal;
	margin: 0 auto 25px;
	position: relative;
	text-align: center;
	max-width: 300px;
}
#topPage .appeal .desc h2::before, #topPage .appeal .desc h2::after {
	font-size: 40px;
	opacity: 0.5;
	position: absolute;
	top: -5px;
}
#topPage .appeal .desc h2::before {
	content: '「';
	left: 0;
}
#topPage .appeal .desc h2::after {
	content: '」';
	right: 0;
}

#topPage .appeal .desc p {
	font-size: 16px;
	line-height: 1.6;
	margin: 0;
}

#topPage .appeal .box1 .desc {
	background: #1873b3;
}

#topPage .appeal .box2 {
	flex-flow: row-reverse;
}

#topPage .appeal .box2 .desc {
	background: #153f8a;
}

/*-- PRODUCT --*/
#topPage .product {
	background: #eee;
	margin: 0 0 80px;
	padding: 70px 0 10px;
}

#topPage .product .inner {
	margin: 0 auto;
	max-width: 1080px;
}

#topPage .product h3 {
	color: #1873b3;
	font-size: 21px;
	font-weight: normal;
	margin: 0 0 25px;
	position: relative;
}
#topPage .product h3::after {
	background: #1873b3;
	content: '';
	display: block;
	width: 100%;
	height: 1px;
	position: absolute;
	left: 0;
	top: 50%;
}

#topPage .product h3 span {
	background: #eee;
	display: table;
	margin: 0 auto;
	padding: 0 15px;
	position: relative;
	z-index: 2;
}

#topPage .product .inner .column {
	margin: 0 0 20px;
}

#topPage .product a {
	color: #000;
	display: block;
	font-size: 17px;
	margin: 0 0 30px;
	text-align: center;
}

#topPage .product a p {
	margin: 0;
	padding: 10px 0;
}

#topPage .product a p span {
	background: url(img/icon-arrow1.png) no-repeat 0 50%;
	padding: 0 0 0 30px;
	position: relative;
}

/*-- FAQ --*/
#topPage .faq {
	background: #e7f1f7;
	padding: 70px 0;
}

#topPage .faq .inner {
	background: #fff;
	box-sizing: border-box;
	padding: 50px 0;
	margin: 0 auto;
	max-width: 1080px;
	width: 90%;
}

/* タブ */
#topPage .faq .tabBtn {
	margin: 0 auto 10px;
	max-width: 900px;
	width: 90%;
}

#topPage .faq .tabBtn li {
	width: 31%;
}

#topPage .faq .tabBtn li a {
	border: solid 2px #1873b3;
	color: #1873b3;
	display: block;
	font-size: 21px;
	padding: 10px 0;
	text-align: center;
}

#topPage .faq .tabBtn li a:hover,
#topPage .faq .tabBtn li a.active {
	background: #1873b3;
	color: #fff;
}

/* タブの中身 */
#topPage .faq .box {
	margin: 0 auto;
	max-width: 900px;
	width: 90%;
}

#topPage .faq .list li {
	border-bottom: dotted 1px #1873b3;
	margin: 0;
}

#topPage .faq .list a {
	cursor: pointer;
	display: block;
	font-size: 21px;
	font-weight: bold;
	padding: 15px 0 15px 50px;
	position: relative;
}

#topPage .faq .list a::before {
	background: #1873b3;
	border-radius: 50%;
	color: #fff;
	content: 'Q';
	display: block;
	line-height: 40px;
	text-align: center;
	width: 40px;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}

#topPage .faq .list a::after {
	color: #1873b3;
	content: '+';
	display: block;
	font-size: 36px;
	font-weight: normal;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
}
#topPage .faq .list a.open::after {
	content: '−';
}

#topPage .faq .list p {
	display: none;
	margin: 10px 20px 30px 50px;
}

/*-- CONTACT --*/
.contact {
	padding: 60px 0;
}

.contact h2 {

}

.contact h4 {
	text-align: center;
}


.contact .box {
	border: solid 1px #ccc;
	margin: 0 auto 30px;
	max-width: 700px;
	padding: 50px 0;
	width: 95%;
}

.contact dl {
	margin: 0 auto;
	max-width: 400px;
}

.contact dl dt {
	margin: 0 0 8px;
}

.contact dl dt span {
	background: #7cb94c;
	color: #fff;
	display: inline-block;
	font-size: 14px;
	font-weight: normal;
	line-height: 1.6;
	margin: 0 0 0 10px;
	padding: 0 8px;
}

.contact dl dd {
	margin: 0 0 20px;
}

.contact p.privacy {
	margin: 0 0 10px;
}

.contact a {
	border-bottom: solid 1px #153f8a;
	color: #153f8a;
}
.contact a:hover {
	border: none;
}

.contact p.submit {
	display: table;
	margin: 0 auto;
	max-width: 400px;
	text-align: center;
	width: 90%;
}

.contact .tel {
	display: table;
	margin: 0 auto;
}

.contact .tel p {
	color: #1873b3;
	margin: 20px 0;
	text-align: center;
}

input[type="text"], input[type="email"], input[type="tel"], textarea {
	background: #fff;
	border: solid 1px #ccc;
	border-radius: 5px;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	padding: 10px;
    resize: none;
}

input[type="submit"], input[type="button"] {
	background: #1873b3;
	border: solid 2px #1873b3;
	border-radius: 10px;
	color: #fff;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-size: 15px;
	font-weight: normal;
	margin: 0 0 10px;
	padding: 20px 0;
	width: 70%;
}
input[type="submit"]:hover, input[type="button"]:hover {
	background: #fff;
	color: #1873b3;
}

input::placeholder {
	color: #999;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

span.wpcf7-list-item {
	margin: 0 30px 0 0;
}

span.wpcf7-list-item-label::before, span.wpcf7-list-item-label::after {
	display: none;
}

div.wpcf7-mail-sent-ok {
	border: none;
	font-weight: bold;
	text-align: center;
}

div.wpcf7-response-output {
	margin: 0 40px;
	padding: 0;
}

/* 送信後メッセージ */
.contact .message {
	margin: 30px 40px 0;
}

.contact .sent .message {
	display: block;
}

.contact .sent .conform {
	display: none;
}

.contact .message p:last-child {
	margin: 0;
}

/*-- INFORMATION --*/
#topPage .information {
	padding: 60px 0;
}

#topPage .information .list {
	margin: 0 auto 30px;
	max-width: 1080px;
	width: 90%;
}

#topPage .information .list dl {
	background: #fff;
	margin: 0 0 20px;
	padding: 30px 100px;
}

#topPage .information .list dl dt {
	color: #1873b3;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.4;
	margin: 0 0 5px;
}

#topPage .information .list dl dd {
	font-size: 16px;
	margin: 2px 0px 12px 0px;
}

#topPage .information .list dl dd a {
	text-decoration: underline;
}

#topPage .information .list dl dd a:hover {
	color: #1873b3;
}

#topPage .information .btn {
	background: #fff;
	border: solid 2px #1873b3;
	border-radius: 10px;
	color: #1873b3;
	display: table;
	font-weight: bold;
	line-height: 1.2;
	margin: 0 auto;
	padding: 20px 80px;
}


/*-- NEWS --*/
#topPage .news {
	margin: 80px auto;
	max-width: 1080px;
}

#topPage .news .column div iframe {
	border: solid 1px #ccc!important;
}

#topPage .news .column div:last-child iframe {
	border: none!important;
}

@media screen and (max-width: 910px) {
	/*-- スライダー --*/
	#topPage .swiper-slide {
		height: 500px;
	}

	#topPage .swiper-slide p {
		font-size: 40px;
		top: 40px;
		left: 100px;
	}

	/*-- スライダー下 --*/
	#topPage .underSlide .joint {
		width: 300px;
	}

	#topPage .underSlide .joint .column div {
		display: table;
		margin: 0 auto 20px;
	}

	#topPage .underSlide h2 {
		font-size: 25px;
	}

	/*-- 科学的根拠のある～ --*/
	#topPage .appeal .image {
		height: 300px;
	}

	#topPage .appeal .desc {

	}

	#topPage .appeal .desc .inner {
		width: 80%;
	}
}

/** -------------------------------------
	製品カテゴリー一覧ページ
------------------------------------- **/
.productCatList {
	background: #eee;
	margin: 0 0 80px;
	padding: 70px 0 10px;
}

.productCatList .inner {
	margin: 0 auto;
	max-width: 1080px;
}

.productCatList h3 {
	color: #1873b3;
	font-size: 21px;
	font-weight: normal;
	margin: 0 0 25px;
	position: relative;
}
.productCatList h3::after {
	background: #1873b3;
	content: '';
	display: block;
	width: 100%;
	height: 1px;
	position: absolute;
	left: 0;
	top: 50%;
}

.productCatList h3 span {
	background: #eee;
	display: table;
	margin: 0 auto;
	padding: 0 15px;
	position: relative;
	z-index: 2;
}

.productCatList .inner .column {
	margin: 0 0 20px;
}

.productCatList a {
	color: #000;
	display: block;
	font-size: 16px;
	margin: 0 0 30px;
	text-align: center;
}

.productCatList a p {
	margin: 0;
	padding: 10px 0;
}

.productCatList a p span {
	background: url(img/icon-arrow1.png) no-repeat 0 50%;
	padding: 0 0 0 30px;
	position: relative;
}

/** -------------------------------------
	商品ページ
------------------------------------- **/
/* 見出し */
.entry-content h1 {
	border-bottom: solid 2px #1873b3;
	font-size: 24px;
	font-weight: normal;
	line-height: 1.6;
	margin: 0 0 50px;
	padding-bottom: 40px;
	text-align: center;
}

.entry-content .itemDetail h2 {
	color: #1873b3;
	font-size: 54px;
	line-height: 1.1;
	margin: 10px 0;
	text-align: left;
}

.entry-content h3 {
	font-size: 28px;
	line-height: 1.0;
	margin: 0 0 10px;
}

.entry-content .itemDetail h4 {
	color: #1873b3;
	font-size: 31px;
	letter-spacing: 0;
	font-weight: normal;
	margin: 20px 0 10px;
}

/*-- 商品詳細 --*/
.itemDetail {
	font-size: 16px;
	margin: 0 auto 60px;
	width: 96%;
	max-width: 1080px;
}

.itemDetail p {
	margin: 0 0 15px;
}

/* ブロック */
.itemDetail .block {
	border-bottom: dotted 1px #ccc;
	margin: 50px 0;
	padding: 0 0 20px;
}

.itemDetail .block:last-child {
	border-bottom: none;
}

.itemDetail .column2 div {
	width: 49%;
}

/* 青色のボックス */
.itemDetail .box-blue {
	background: #e7f1f7;
	margin: 20px 0;
	padding: 30px;
}

.itemDetail .box-blue p {
	margin: 0;
}

.itemDetail .box-blue .column {
	margin: 15px 0 0;
}

.itemDetail .box-blue2 {
	background: #e7f1f7;
}


/* 特長 */
.itemDetail .feature {
	display: table;
	line-height: 40px;
	position: relative;
}

.itemDetail .feature p {
	background: #1873b3;
	color: #fff;
	font-size: 20px;
	margin: 0 35px 0 0;
	padding: 0 12px;
}

.itemDetail .feature span {
	background: #153f8a;
	color: #fff;
	display: block;
	font-size: 30px;
	position: absolute;
	top: 0;
	right: 0;
	text-align: center;
	width: 35px;
}

/* シール */
.itemDetail .seal {
	margin: 30px 0;
	position: relative;
}

.itemDetail .seal p {
	background: #7cb94c;
	border-radius: 50%;
	box-sizing: border-box;
	color: #fff;
	display: table;
	font-size: 40px;
	font-weight: bold;
	line-height: 1.4;
	padding: 50px;
	position: absolute;
	top: 0;
	left: 0;
	text-align: center;
	height: 300px;
	width: 300px;
}

.itemDetail .seal p span {
	display: table-cell;
	height: 100%;
	vertical-align: middle;
}

.itemDetail .seal img {
	display: table;
	margin: 0 auto;
}

/* サポート力 */
.itemDetail .supportForce {
	margin: 40px 0;
}

/* 装着の仕方  流れ */
.itemDetail .flow {

}

.itemDetail .column3.flow div.box {
	margin: 0 0 30px;
	width: 33%;
}

.itemDetail .column2.flow div.box {
	margin: 0 0 30px;
	width: 50%;
}

.itemDetail .flow div.image {
	margin: 0 50px 0 0;
	position: relative;
	width: auto;
}

.itemDetail .flow div.image::after {
	background: url(img/icon-arrow4.png) no-repeat 0 0;
	background-size: cover;
	content: '';
	display: block;
	height: 76px;
	width: 30px;
	position: absolute;
	top: 20vh;
	right: -40px;
	transform: translateY(-50%);
}

.itemDetail .flow div.box:last-child p {
	margin: 15px 0;
}

.itemDetail .flow div.box:last-child .image {
}

.itemDetail .flow div.box:last-child .image::after {
	display: none;
}

.itemDetail .flow p {
	margin: 15px 50px 15px 0;
	text-align: center;
}

 /* 装着の流れのボックスが2個だけの時 */
.itemDetail .column2.flow div.box2 {
	width: 560px;
}
.itemDetail .column2.flow div.box2:last-child {
	width: 510px;
}
.itemDetail .column2.flow div.box2:last-child .point {
	margin: 40px 0 0 0;
}

/* 装着の流れのボックスが1個だけの時 */
.itemDetail .column2.flow div.box2 p {
	margin: 15px 0;
}

/* 特長  タイトル部分  2カラム */
.itemDetail .f2columnBox {

}

.itemDetail .f2columnBox div {
	width: auto;
}

/*-- ボタン --*/
.btn {
	background: #fff;
	border: solid 3px #1873b3;
	border-radius: 10px;
	display: block;
	overflow: hidden;
	position: relative;
}

.btn p {
	background: url(img/icon-arrow1.png) no-repeat 0 50%;
	color: #1873b3;
	font-weight: bold;
}

.btn img {
	position: absolute;
	transform: translateY(-50%);
}

/* アイシング */
.itemDetail .btn-icing {
	display: table;
	margin: 40px auto 70px;
	overflow: hidden;
	position: relative;
}

.itemDetail .btn-icing p {
	font-size: 36px;
	margin: 70px 340px 70px 50px;
	padding: 0 0 0 40px;
}

.itemDetail .btn-icing img {
	top: 50%;
	right: 20px;
}

/* アイスベスト */
.itemDetail .btn-iceVest {
	display: table;
	margin: 40px auto 20px;
	overflow: hidden;
	position: relative;
}

.itemDetail .btn-iceVest p {
	font-size: 26px;
	margin: 70px 340px 70px 50px;
	padding: 0 0 0 40px;
}

.itemDetail .btn-iceVest img {
	top: 50%;
	right: -40px;
}

/*-- 装着動画 --*/
.movie {
	background: #eee;
	margin: 0 0 60px;
	padding: 50px 0;
}

.movie h2 {
	font-size: 60px;
	margin: 0 0 15px;
}

.movie iframe {
	display: table;
	margin: 0 auto;
	height: 315px;
	width: 560px;
}

/*-- イメージ動画 --*/
.promotion {
	position: relative;
	padding-top: 50%;
}
.promotion iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}

/*-- 利用者のコメント --*/
.comment {
	background: #e7f1f7;
	margin: 0 0 80px;
	padding: 50px 20px;
}

.comment h2 {
	font-size: 50px;
	margin: 0 0 40px;
}

.comment .inner {
	max-width: 1080px;
	margin: 0 auto;
}

.comment .column dl + dl {
	margin-left: 20px;
}

.comment dl {
	background: #fff;
	padding: 30px;
}

.comment .column dl {
	width: 49%;
}

.comment dl dt {
	color: #1873b3;
	font-size: 16px;
}

.comment dl dd {
	font-size: 16px;
	line-height: 1.4;
	margin: 0;
}

/*-- ダウンロード --*/
.download {
	max-width: 1080px;
	margin: 0 auto 60px;
	width: 96%;
}

.download div {
	width: 49%;
}

.single-item .btn-flyer {
	padding: 25px 35px;
}

.single-item .btn-flyer p {
	font-size: 21px;
	line-height: 1.4;
	margin: 0 60px 0 0;
	padding: 0 0 0 30px;
}

.single-item .btn-flyer img {
	position: absolute;
	top: 50%;
	right: 30px;
}

/*-- 商品情報 --*/
.itemInfo {
	margin: 40px auto 100px;
	max-width: 1080px;
	width: 96%;
}

.itemInfo dl {
	border-bottom: solid 1px #ccc;
	flex-grow: 1;
	margin: 15px 0 0;
	width: 40%;
}

.itemInfo  dl.grow2 {
	flex-grow: 2;
	min-width: 250px;
}

.itemInfo dl + dl {
	border-left: none;
}

.itemInfo dl:last-child dt, .itemInfo dl:last-child dd {
	border-right: solid 1px #ccc;
}

.itemInfo  dl dt, .itemInfo  dl dd {
	border-left: solid 1px #ccc;
	border-top: solid 1px #ccc;
	box-sizing: border-box;
	font-size: 16px;
	line-height: 1.0;
	padding: 20px 0;
	text-align: center;
}

.itemInfo  dl dt {
	background: #e7f1f7;
	font-weight: normal;
}

.itemInfo dl dt.row2 {
	padding: 48.5px 0;
}

.itemInfo dl .column2 dt {
	width: 50%;
}

.itemInfo dl dd {
	border-top: solid 1px #ccc;
	margin: 0;
}

.itemInfo dl dd.row2 {
	padding: 48.5px 0;
}
.itemInfo dl dd.row3 {
	padding: 77px 0;
}
.itemInfo dl dd.row4 {
	padding: 105.5px 0;
}
.itemInfo dl dd.row5 {
	padding: 69px 0;
}

.itemInfo dl .column2 dd {
	width: 50%;
}

.itemInfo dl .column2 div {
	width: 50%;
}

.itemInfo dl .column2 div dd {
	width: 100%;
}

.itemInfo p {
	font-size: 16px;
	text-align: right;
}

.itemInfo .left {
	font-size: 16px;
	text-align: left;
}

@media screen and (max-width: 1024px) {
	.itemInfo .table {
		width: 100%;
		overflow: scroll;
	}

	.itemInfo .inner {
		width: 1150px;
	}

	.itemInfo .inner .column {
		overflow: visible;
	}

	.itemInfo dl {
		min-width: 100px;
	}
}

/*-- 購入はコチラ --*/
.purchase {
	background: #1873b3;
	padding: 40px 20px;
}

.purchase .inner {
	margin: 0 auto;
	max-width: 1080px;
}

.purchase h3 {
	color: #fff;
	margin: 0 0 20px;
}

.purchase .column div {
	width: 49%;
}

.btn-form {
	display: block;
	height: 110px;
	position: relative;
}

.btn-form p {
	font-size: 24px;
	line-height: 1.0;
	margin: 0;
	padding: 0 0 0 30px;
	position: absolute;
	top: 50%;
	left: 20px;
	transform: translateY(-50%);
}

.btn-form p span {
	color: #000;
	font-size: 15px;
}

.btn-form img {
	top: 40px;
	right: -30px;
}

.btn-rakuten img {
	top: 50%;
	right: 20px;
}

@media screen and (max-width: 1024px) {
	.btn-form img {
		top: 50px;
	}
}

/* Point */
.itemDetail .point {
	background: #e7f1f7;
	border-radius: 0 10px 10px 10px;
	font-size: 16px;
	margin: 50px 0 0;
	padding: 10px 5px;
	position: relative;
	text-align: center;
}

.itemDetail .point::before {
	background: #1873b3;
	border-radius: 10px 10px 0 0;
	color: #fff;
	content: 'Point';
	display: table;
	line-height: 1.6;
	padding: 0 15px;
	position: absolute;
	top: -25px;
	left: 0;
}

.itemDetail .flow .point,
.itemDetail .column2.flow .point,
.itemDetail .column2.flow div.box2 .point {
	margin: 40px 50px 0 0;
}

/* 下寄せ */


/** -------------------------------------
	会社概要
------------------------------------- **/
.entry-content.profile {
	max-width: 1080px;
	margin: 20px auto 0;
}

/* 見出し */
.profile h1 {
	color: #1873b3;
	font-size: 40px;
	line-height: 1.0;
	margin: 0 0 30px;
	padding: 0 0 30px;
}

/* ブロック */
.profile .block {
	margin: 0 0 80px;
}

/* 表 */
.profile table {
	border-collapse: collapse;
	width: 100%;
}

.profile table th, .profile table td {
	border: solid 1px #ccc;
	box-sizing: border-box;
	font-size: 16px;
	padding: 12px 15px;
}

.profile table th {
	background: #e7f1f7;
	font-weight: normal;
	text-align: center;
	vertical-align: middle;
	width: 30%;
}

.profile table td {
	background: #fff;
	border-left: solid 1px #ccc;
	margin-bottom: 0;
	margin-left: 30%;
}

/* 地図 */
.profile .placeMap {
	width: 720px;
}

/* 住所 */
.profile p.adress {
	font-size: 16px;
	margin: 10px 0;
}

/* em */
.profile p em {
	display: block;
	font-size: 30px;
	font-style: normal;
	text-align: center;
}

/** -------------------------------------
	プライバシーポリシー
------------------------------------- **/
.profile ol {
	padding: 0 0 0 20px;
}

.profile ol li {
	padding: 0 0 0 15px;
}

/* 付記 */
.appendices {
	border: solid 1px #ccc;
	padding: 25px 35px;
}

/** -------------------------------------
	カテゴリ別投稿一覧
------------------------------------- **/
.blogList {
	background: #e7f1f7;
	padding: 50px 0 0;
}

.blogList .inner {
	flex-wrap: wrap;
	margin: 0 auto;
	max-width: 1080px;
	-webkit-justify-content: start;
	justify-content: start;
	width: 94%;
}

.blogList .inner a {
	display: block;
	margin: 0 0 50px;
	width: 31%;
}

.blogList .inner a:nth-child(3n-1), .blogList .inner a:nth-child(3n) {
	margin-left: 3.5%;
}

.blogList .inner a .image {
	background: #fff;
	height: 220px;
	text-align: center;
	overflow: hidden;
	position: relative;
}

.blogList .inner a .image img {
	height: auto;
	width: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.blogList .inner a p.title {
	margin: 10px 0 0;
}

.blogList .inner a p.title span {
	background: url(img/icon-arrow1.png) no-repeat 0 50%;
	display: table;
	font-size: 16px;
	line-height: 26px;
	margin: 0 auto;
	padding: 0 0 0 25px;
}

/** -------------------------------------
	部位別カテゴリ別投稿一覧
------------------------------------- **/
.bloglist-part h1 {
	color: #1873b3;
	font-size: 50px;
	font-weight: normal;
	line-height: 1.0;
	margin: 0 auto 30px;
	max-width: 1080px;
}

/** -------------------------------------
	業種カテゴリ別投稿一覧
------------------------------------- **/
.industryCat .catHeader {
	margin: 0 auto 50px;
	max-width: 1080px;
	width: 94%;
}

.industryCat .catHeader div {
	width: 48%;
}

.industryCat .catName {
	color: #1873b3;
	font-size: 50px;
	line-height: 1.0;
	margin: 0 0 20px;
}

.industryCat .catDesc {
	font-size: 17px;
}
