@charset "UTF-8";
/* =========================================================

コンタクトレンズで紫外線対策(UVカット)

========================================================= */
#shigaisen {
	max-width: 950px;
	width: auto;
	margin: 0 auto;
	padding: 0 0 5%;
	font-family: "Noto Sans JP", "メイリオ", Meiryo, "ヒラギノ角ゴ Pro", "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", "MS Gothic", sans-serif;
	font-feature-settings: "palt";
	color: #333;
	background: #fff;
}

#shigaisen div,
#shigaisen p,
#shigaisen span,
#shigaisen h1,
#shigaisen h2,
#shigaisen h3,
#shigaisen ul,
#shigaisen li,
#shigaisen a {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	text-decoration: none;
}

#shigaisen .header {
	max-width: 950px;
	width: auto;
	margin: 0 auto;
	padding: 0 0 5%;
}

#shigaisen .header img {
	display: block;
	max-width: 100%;
	width: auto;
	height: auto;
	margin: 0 auto;
}

#shigaisen .block01 {
	max-width: 950px;
	width: auto;
	background: url(/special/shigaisen/img/sp_bg.png) no-repeat bottom center;
	background-size: contain;
	padding: 0 0 8%;
}

#shigaisen .block01_title {
	max-width: 870px;
	width: 91.58%;
	margin: 0 auto 10%;
}

#shigaisen .block01_title img {
	display: block;
	max-width: 100%;
	width: auto;
	height: auto;
	margin: 0 auto;
}

#shigaisen .block01_text01 {
	max-width: 870px;
	width: 91.58%;
	font-size: min(3.1vw, 13px);
	font-weight: 500;
	letter-spacing: .1em;
	line-height: 2.3;
	margin: 0 auto 5%;
}

#shigaisen .block01_text01 span {
	position: relative;
	display: inline;
	border-bottom: solid .3em #ffb659;
	padding: 2px 0 0;
	width: 100%;
}

#shigaisen .block02 {
	background: #fffbd0;
	padding: 7% 0 15%;
}

#shigaisen .block02_title {
	position: relative;
	top: -2em;
	max-width: 870px;
	width: 91.58%;
	margin: 0 auto;
}

#shigaisen .block02_title img {
	display: block;
	max-width: 100%;
	width: auto;
	height: auto;
	margin: 0 auto;
}

#shigaisen .block02_inner {
	max-width: 870px;
	width: 91.58%;
	margin: 0 auto;
	padding: 0 0 8%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: space-between;
}

#shigaisen .block02_anc {
	display: block;
	max-width: 415px;
	width: 47.7%;
	color: #333;
	font-weight: 500;
	margin: 0 0 8%;
}

#shigaisen .block02_anc:nth-child(3) {
	margin: 0;
}

#shigaisen .block02_anc:nth-child(4) {
	margin: 0;
}

#shigaisen .block02_box figure {
	display: block;
	background: #fff;
}

#shigaisen .block02_box figure img {
	display: block;
	max-width: 100%;
	width: auto;
	height: auto;
	margin: 0 auto;
	padding: 15% 0;
}

#shigaisen .fig_qi {
    padding: 6.2% 0 !important;
}

#shigaisen .block02_box figcaption {
	display: block;
	padding: 5% 0 0;
	background: #fffbd0;
	text-align: center;
	font-size: min(3.2vw, 13px);
}

#shigaisen .block02_box figcaption span {
	display: inline-block;
}

#shigaisen .block02_btn {
	display: block;
	max-width: 640px;
	width: 67.37%;
	background: url(/special/shigaisen/img/sp_btn_recommend.png) no-repeat top center;
	background-size: contain;
	margin: 0 auto;
	padding: 4.9% 0 5.6%;
	text-align: center;
	letter-spacing: .2em;
	font-size: min(2.7vw, 12px);
	font-weight: 700;
	color: #333;
}

#shigaisen .block03 {
	background: #fffbd0;
	padding: 5% 0 13%;
}

#shigaisen .block03_title {
	max-width: 870px;
	width: 91.58%;
	margin: 0 auto 8%;
}

#shigaisen .block03_title img {
	display: block;
	max-width: 100%;
	width: auto;
	height: auto;
	margin: 0 auto;
}

#shigaisen .block03_graph {
	max-width: 870px;
	width: 91.58%;
	margin: 0 auto;
	padding: 8% 5%;
	background: #ffff;
}

#shigaisen .block03_graph img {
	display: block;
	max-width: 100%;
	width: auto;
	height: auto;
	margin: 0 auto 6%;
}

#shigaisen .block03_text01 {
	max-width: 750px;
	width: 88%;
	margin: 0 auto;
	font-size: min(3.2vw, 13px);
	font-weight: 500;
	line-height: 2.5;
	margin: 0 auto;
	letter-spacing: .21em;
}

#shigaisen .block04 {
	background: #fffbd0;
	padding: 0 0 15%;
}

#shigaisen .block04_point {
	position: relative;
	background: #fff;
	max-width: 870px;
	width: 91.58%;
	margin: 0 auto;
	padding: 0 0 7%;
	border: solid .15em #333;
}

#shigaisen .block04_point_title {
	max-width: 364px;
	width: 41.84%;
	margin: 0 auto;
	padding: 9% 0;
}

#shigaisen .block04_line01 {
	position: absolute;
	left: -5%;
	bottom: 1.5%;
	width: 18%;
	height: .11em;
	background: #333;
	transform: rotate(45deg);
}

#shigaisen .block04_line02 {
	position: absolute;
	right: -5.1%;
	top: 1.3%;
	width: 18%;
	height: .11em;
	background: #333;
	transform: rotate(45deg);
}

#shigaisen .block04_ribbon {
	position: absolute;
	left: 7%;
	top: -1.9%;
	max-width: 150px;
	width: 17.24%;
}

#shigaisen .block04_sunglass {
	position: absolute;
	right: 12%;
	top: 2%;
	max-width: 88px;
	width: 11%;
}

#shigaisen .block04_text01 {
	max-width: 750px;
	width: 86.21%;
	font-size: min(3.2vw, 13px);
	font-weight: 500;
	line-height: 2.3;
	margin: 0 auto 5%;
	letter-spacing: .15em;
}

#shigaisen .block04_image_area {
	max-width: 750px;
	width: 86.21%;
	margin: 0 auto;
}

#shigaisen .block04_subwrap {
	width: auto;
	margin: 0 auto;
}

#shigaisen .block04_sub {
	max-width: 420px;
	width: 62%;
	margin: 0 auto 8%;
	color: #ff921c;
	font-size: min(3.6vw, 16px);
	font-weight: 500;
	text-align: center;
	letter-spacing: .23em;
}

#shigaisen .block04_image {
	margin: 0 auto 6%;
}

#shigaisen .block04_image img {
	display: block;
	max-width: 100%;
	width: auto;
	height: auto;
	margin: 0 auto;
}

#shigaisen .block04_textwrap {
	display: block;
}

#shigaisen .block04_dot {
	padding: 5% 0 3%;
}

#shigaisen .block04_dot img {
	display: block;
	max-width: 100%;
	width: auto;
	height: auto;
	margin: 0 auto;
}

#shigaisen .block04_text02 {
	max-width: 584px;
	width: 77%;
	font-size: min(3.2vw, 13px);
	font-weight: 500;
	line-height: 1.7;
	margin: 0 auto;
	letter-spacing: .15em;
}

#shigaisen .block05 {
	background: #fffbd0;
	padding: 5% 0 10%;
}

#shigaisen .block05_title {
	max-width: 870px;
	width: 91.58%;
	margin: 0 auto 7%;
}

#shigaisen .block05_title img {
	display: block;
	max-width: 100%;
	width: auto;
	height: auto;
	margin: 0 auto;
}

#shigaisen .block05_btnwrap {
	max-width: 870px;
	width: 91.58%;
	margin: 0 auto;
	padding: 0 0 10%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: space-between;
}

#shigaisen .block05_btn {
	max-width: 275px;
	width: 31.61%;
	background: url(/special/shigaisen/img/sp_btn_tab.png) no-repeat top center;
	background-size: contain;
}

#shigaisen .block05_btn a {
	display: block;
	color: #333;
	padding: 15% 0 25%;
	text-align: center;
	letter-spacing: .2em;
	font-size: min(3.2vw, 13px);
	font-weight: 700;
}

#shigaisen .block05_btn a span {
	font-size: min(2.7vw, 13px);
}
/*商品一覧*/
#shigaisen .cate_wrap {
	max-width: 800px;
	width: 84.21%;
	margin: 0 auto;
}

#shigaisen .cate_title {
	margin-bottom: 10%;
	padding: 0;
	font-weight: 700;
	font-size: min(4.1vw, 18px);
	line-height: 1.2;
	text-align: center;
	letter-spacing: .2em;
}

#shigaisen #cate01 {
	position: relative;
}

#shigaisen #cate02 {
	position: relative;
}

#shigaisen #cate03 {
	position: relative;
}
/*商品ボックス*/
#shigaisen .itembox_row {
	display: block;
	margin: 0 0 20%;
}

#shigaisen .itembox_row.last {
	display: block;
	margin: 0 0 10%;
}

#shigaisen .itembox {
	max-width: 800px;
	width: 100%;
	margin: 0 auto 10%;
	padding: 10% 7% 6%;
	background: #fff;
	text-align: center;
}

#shigaisen .itembox:last-child {
	margin: 0 auto;
}

#shigaisen .itembox .logo {
	margin-bottom: 30px;
}

#shigaisen .itembox .name {
	margin-bottom: 5%;
	padding: 0 10px;
	font-weight: bold;
	font-size: min(3.7vw, 16px);
	letter-spacing: .15em;
	line-height: 1.4;
}

#shigaisen .itembox .photo {
	margin-bottom: 2.6%;
}

#shigaisen .itembox .price {
	font-weight: 700;
	font-size: min(3.7vw, 16px);
	letter-spacing: .08em;
	margin-bottom: 5%;
}

#shigaisen .itembox .price span {
	margin-left: 20%;
	color: #ff6000;
	font-size: min(5vw, 20px);
}
/*カテゴリ一覧へいくボタン*/
#shigaisen .more_btn_container .col {
	width: 500px;
	height: 60px;
	padding: 10px 0 40px;
	margin: 0 auto;
	text-align: center;
	vertical-align: middle;
}

#shigaisen .more_btn_container .col_2 {
	display: table-cell;
	width: 452px;
	height: 90px;
	padding: 20px 0 40px 15px;
	margin: 0 auto;
	text-align: center;
	vertical-align: middle;
}

#shigaisen .more_btn_container .btn {
	display: table;
	border-spacing: 0;
	width: 100%;
	height: 100%;
	text-decoration: none !important;
}

#shigaisen .more_btn_container .btn span {
	display: table-cell;
	position: relative;
	height: 100%;
	background-repeat: repeat;
	background-position: center;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	font-weight: bold;
	font-size: 18px;
	line-height: 1.4;
	text-align: center;
	vertical-align: middle;
	letter-spacing: .1em;
	-webkit-transition: all .2s ease;
	-o-transition: all .2s ease;
	transition: all .2s ease;
}

#shigaisen .more_btn_container .btn:hover span {
	opacity: .7;
}

/*セット商品プルダウンメニュー*/
.sm_btnbox {
	position: relative;
	cursor: pointer;
	max-width: 700px;
	width: 100%;
	margin: 0 auto;
	border: .18em solid #ff921c;
}

.sm_btnbox .sm_btn {
	display: block;
	padding: 5% 0;
	background-color: #fff;
	color: #ff921c;
	font-weight: bold;
	font-size: min(3.9vw, 20px);
	text-align: center;
	letter-spacing: .22em;
}

.sm_btnbox .sm_btn:before {
	content: "";
	position: absolute;
	top: 42%;
	right: 5%;
	width: .5em;
	height: .5em;
	border-top: .15em solid #ff921c;
	border-right: .15em solid #ff921c;
	-webkit-transform: translateX(0) rotate(45deg);
	transform: translateX(0) rotate(45deg);
}

/* リモーダル　商品セットメニュー */
.sm_modal {
	width: 90%;
	padding: 5px 0;
	background-color: #ffdaab;
	font-family: "Noto Sans JP", "メイリオ", Meiryo, "ヒラギノ角ゴ Pro", "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", "MS Gothic", sans-serif;
}

.sm_modal_close {
	display: inline-block;
	position: absolute;
	top: -4.8%;
	right: -1.6%;
	padding: 0;
	background-position: left center;
	background-repeat: no-repeat;
	-webkit-background-size: contain;
	background-size: contain;
	color: #fff;
	font-weight: bold;
	font-weight: 400;
	font-size: 9.2vw;
	line-height: 1;
}

.sm_modal_close:before {
	display: none;
}

.sm_pname {
	margin: 5% auto 0;
	padding: 0;
	font-weight: bold;
	line-height: 1.4;
	text-align: center;
}

.sm_list {
	background-color: #ffdaab;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.sm_btnbox:hover .sm_list {
	display: block;
}

.sm_list li {
	position: relative;
	margin: 8px 10px;
	padding: 8px 0;
	background-color: #fff;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.sm_list li a {
	display: table;
	width: 100%;
	border-collapse: collapse;
	text-decoration: none;
	background-color: transparent;
	-webkit-touch-callout: none;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.sm_list .sm_photo {
	padding: 10% 20% 3%;
}

.sm_list li .sm_cellbox {
	display: table-cell;
	vertical-align: middle;
	padding: 2px 12px;
	font-weight: bold;
	color: #000;
	text-align: center;
}

.sm_list li .sm_cellbox:first-child {
	width: 50%;
	padding: 2px 8px;
	border-right: 1px solid #ffdaab;
	text-align: center;
}

.sm_list li .sm_cellbox .sm_box_name {
	font-size: 13px;
}

.sm_list li .sm_cellbox .sm_price {
	font-size: 13px;
}

.sm_list li .sm_cellbox .sm_devide {
	display: block;
	color: #ff6000;
	font-size: 13px;
}

.remodal-wrapper {
	padding: 40px 10px 0;
}
/* サイド固定バナー
--------------------------------------- */
.side_fixed_bnr_wrap {
	display: none;
	z-index: 200001;
	position: fixed;
	right: 1%;
	bottom: 5%;
}

.side_fixed_bnr {
	line-height: 1.4;
	font-size: min(3vw, 14px);
	font-weight: 500;
	color: #fff;
	text-align: center;
	margin: 7% 0 0;
	text-decoration: none;
}

.side_fixed_bnr_btn {
	width: min(20vw, 100px);
	height: min(20vw, 100px);
	border-radius: 50%;
	background: #29aaf0;
	display: flex;
	align-items: center;
	justify-content: center;
}

.side_fixed_bnr_btn:hover {
	opacity: 1;
}

.side_fixed_bnr_close {
	display: block;
	position: absolute;
	right: 0;
	top: min(5%, -15%);
	width: 20px;
	height: 20px;
	border: 2px solid #29aaf0;
	border-radius: 50%;
	background: #fff;
	cursor: pointer;
}

.side_fixed_bnr_close::before,
.side_fixed_bnr_close::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 2px;
	height: 10px;
	background: #29aaf0;
}

.side_fixed_bnr_close::before {
	transform: translate(-50%, -50%) rotate(45deg);
}

.side_fixed_bnr_close::after {
	transform: translate(-50%, -50%) rotate(-45deg);
}

#scroll-pagetop{
	display: none!important;
}
