@charset "UTF-8";

/* CSS リセット */
html,
header, footer, hgroup,
section, article, nav, aside, details, figure, figcaption,
div, span,
a, b, i, u, s,
address, blockquote, q, ins, del, sub, sup, em, strong, abbr, cite, dfn, code, samp, var, mark, data,
h1, h2, h3, h4, h5, h6,
p, ol, ul, li, dl, dt, dd, pre,
bdo, bdi,
ruby, rt, rp,
fieldset, legend, label,
table, thead, tbody, tfoot, tr, th, td, caption, colgroup, col,
img, audio, video, source, track,
form, summary,
iframe
{
	margin: 0;
	padding: 0;
}

*, *:before, *:after
{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

.all_block table
{
	border-collapse: collapse;
}

.all_block img
{
	vertical-align: top;
	font-size: 0;
	line-height: 0;
	border: none;
}

.all_block img.size
{
	width: 100%;
}

.all_block img.size90
{
	width: 90%;
}

.all_block a
{
	color: #000000;
	text-decoration: none;
}

.all_block a:hover
{
	color: #6351a5;
	text-decoration: underline;
}

body
{
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	font-size: 16pt;
}

.all_block ol, ul
{
	list-style: none;
}

div.under_line
{
	padding: 0px 0px 20px 0px;
	border-bottom: 1px dotted #7a7a7a;
}

/* 基本エリア */
.clearfix:after
{
	content: "";
	clear: both;
	display: block;
}

.clear
{
	clear: both;
	font-size: 1px;
	height: 1px;
}

span.purple
{
	color: #6843b8;
	font-weight: bold;
}

/* ヘッダーロゴ規定 ---------------------------------- */

div.header
{
	width: 100%;
	max-width: 1000px;
	margin: 0% auto 0% auto;
	background-color: #ffffff;
	padding: 16px 0px 16px 16px;
}

h1.logo
{
	width: 40%;
	max-width: 320px;
	min-width: 320px;
	margin: 0% auto 0% 1%;
	line-height: 100%;
}

/* 入力しても良いのココから -------------------------- */
div.all_block
{
	font-family: "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, sans-serif;
	width: 100%;
	max-width: 1000px;
	padding: 0% 0% 0% 0%;
	margin: 0px auto 0px auto;
	font-size: 16pt;
	color: #000000;
	text-align: center;
	background-color: #ffffff;
}

div.main_content
{
	width: 100%;
	max-width: 1000px;
	margin: 0px auto 0px auto;
}

div.content_image
{
	width: 100%;
	max-width: 1000px;
	margin: 0px auto 0px auto;
}

div.blueberryeye_block
{
	float: left;
	width: 50%;
	max-width: 470px;
	margin: 0% auto 0% auto;
	padding: 0% 0% 0% 0%;
	background-image: url(../image/blueberryeye_bg_pc.jpg);
	background-size: contain;
	background-repeat: no-repeat;
}

div.glasses_block
{
	float: right;
	width: 50%;
	max-width: 470px;
	margin: 0% auto 0% auto;
	padding: 0% 0% 0% 0%;
	background-image: url(../image/glasses_bg_pc.jpg);
	background-size: contain;
	background-repeat: no-repeat;
}


div.glasses_buy_area01
{
	width: 100%;
	max-width: 1000px;
	margin: 0% auto 0% auto;
	padding: 3% 3% 3% 3%;
	border-left: 13px solid #534094;
	border-right: 13px solid #534094;
	border-bottom: 13px solid #534094;
}

div.glasses_buy_area02
{
	width: 100%;
	max-width: 1000px;
	margin: 0% auto 0% auto;
	padding: 3% 3% 3% 3%;
	border-left: 13px solid #874717;
	border-right: 13px solid #874717;
	border-bottom: 13px solid #874717;
}

div.glasses_buy_area03
{
	width: 100%;
	max-width: 1000px;
	margin: 0% auto 0% auto;
	padding: 3% 3% 3% 3%;
	border-left: 13px solid #9a3187;
	border-right: 13px solid #9a3187;
	border-bottom: 13px solid #9a3187;
}

div.glasses_buy_area04
{
	width: 100%;
	max-width: 1000px;
	margin: 0% auto 0% auto;
	padding: 3% 3% 3% 3%;
	border-left: 13px solid #fd6363;
	border-right: 13px solid #fd6363;
	border-bottom: 13px solid #fd6363;
}

div.button_01
{
	width: 100%;
	margin: 0px auto 0px auto;
	padding: 0% 0% 0% 0%;
}

div.button_01 a:hover
{
	opacity: 0.5;
}


div.button_02
{
	width: 100%;
	margin: 0px auto 0px auto;
	padding: 0% 0% 0% 0%;
}

div.products_text
{
	width: 90%;
	max-width: 1000px;
	margin: 0% auto 0% auto;
	padding: 3% 0% 0% 0%;
	text-align: left;
	line-height: 160%;
	font-size: 14pt;
}

div.link_text
{
	width: 100%;
	max-width: 1000px;
	margin: 0% auto 0% auto;
	padding: 3% 0% 1% 0%;
	text-align: center;
	line-height: 160%;
	font-size: 12pt;
}

div.link_text a
{
	color: #4d4398;
	text-decoration: underline;
}

.cv_area{
	background-image: url(../image/cv.jpg);
	background-size: contain;
	background-repeat: no-repeat;
	padding: 0% 0 0 0;
	background-color: #4d4497;
}

.button_cv {
    width: 93%;
    margin: 0 auto;
    padding: 53% 0% 6% 0%;;
}

.explanation_text{
	padding: 10px 10px 0;
}
.explanation_title{
	padding: 10px 10px 7px;
    background-color: #ddd;
    margin-bottom: 20px;
    font-weight: bold;
	font-size: 16px;
}
.explanation_text ul{
	text-align: left;
	font-size: 14px;
}

.explanation_text li{
	margin-bottom: 20px;
}


/* お客様のお喜びの声 ---------------------- */

div.voice_area
{
	width: 100%;
	margin: 0px 0px 0px 0px;
	padding: 10px 10px 30px 10px;
	color: #000000;
	text-align: center;
	background-color: #eeecfa;
}

div.voice_details
{
	width: 96%;
	margin: 0% auto 0% auto;
	padding: 10px 10px;
	color: #000000;
	text-align: center;
	background-color: #ffffff;
}

div.voice_title
{
	width: 100%;
	margin: 0%;
	padding: 2% 2% 1% 2%;
	text-align: left;
	font-size: 18pt;
	color: #534094;
	font-weight: bold;
	line-height: 160%;
}

div.voice_text
{
	width: 100%;
	margin: 0%;
	padding: 0% 2% 2% 2%;
	text-align: left;
	font-size: 14pt;
	color: #000000;
	font-weight: normal;
	line-height: 160%;
}

div.voice_line
{
	border-bottom: 1px solid #999999;
}

div.voice_name
{
	width: 100%;
	margin: 0%;
	padding: 0% 0% 0% 0%;
	text-align: right;
	font-size: 14pt;
	color: #3c3c3c;
	font-weight: normal;
}

div.voice_message
{
	width: 100%;
	margin: 0%;
	padding: 1% 0% 1% 2%;
	text-align: left;
	font-size: 12pt;
	color: #3c3c3c;
	font-weight: normal;
}

/* 試着 */

div.try_area
{
	width: 100%;
	max-width: 1000px;
	margin: 0% auto 0% auto;
	padding: 3% 5% 3% 5%;
	background-color: #4c4298;
}

div.try_area_text
{
	padding: 1% 4% 1% 4%;
	color: #ffffff;
	font-weight: bold;
	font-size: 12pt;
	line-height: 160%;
	text-align: center;
}


/* よくあるご質問 -------------------------- */

div.content1225
{
	width: 100%;
	max-width: 1000px;
	margin: 5% auto 0% auto;
	padding: 0% 0% 0% 0%;
	background-image: url(../image/sunshine_bg_1225.jpg);
	background-size: contain;
	background-repeat: no-repeat;
}

div.content1225_button
{
	width: 80%;
	max-width: 800px;
	margin: 0% auto 0% auto;
	padding: 120% 0% 15% 0%;
}
div.q_area
{
	width: 100%;
	margin: 0px 0px 0px 0px;
	padding: 10px 10px;
	color: #000000;
	text-align: center;
	background-color: #eeeeee;
	
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-o-border-radius: 10px;
}

div.q_img
{
	float: left;
	width: 8%;
	margin: 0%;
	padding: 1% 1% 1% 1%;
}

div.q_text
{
	float: left;
	width: 92%;
	margin: 0%;
	padding: 2.5% 1% 1% 1%;
	text-align: left;
	font-size: 18pt;
	color: #534094;
	font-weight: bold;
	line-height: 150%;
}

div.a_area
{
	width: 100%;
	margin: 0px 0px 0px 0px;
	padding: 10px 10px;
	color: #000000;
	text-align: center;
}

div.a_img
{
	float: left;
	width: 8%;
	margin: 0%;
	padding: 1% 1% 1% 1%;
}

div.a_text
{
	float: left;
	width: 92%;
	margin: 0%;
	padding: 2.3% 1% 5% 1%;
	text-align: left;
	font-size: 18pt;
	color: #000000;
	font-weight: noemal;
	line-height: 160%;
}

div.a_text a
{
	color: #ff0000;
}

/* 電話対応 -------------------------------- */
.tel_box{
	background-color: #ecebfc;
	padding: 15px;
}
.a_text{
	color: #ff0000;
	font-weight: bold;
}
.tel_box p{
	text-align: left;
	padding: 0 10px 10px;
}

/* フッター -------------------------------- */
footer.block_footer
{
	min-width: 100%;
	margin: 0px 0px 0px 0px;
	padding: 10px 0px;
	color: #ffffff;
	text-align: center;
	background-color: #35318f;
}

address.copy
{
	font-size: 12pt;
}

/* モーダルフォーム */

/*form*/

input, select {
	-webkit-appearance: none;
	appearance: none;
}
.form .form_wrap{
  background:#fff;
  padding:50px;
}
.form .form_wrap .bag{
  margin-bottom: 20px;
}
.form .form_wrap .bag p{
  font-size:1.25rem;
  font-weight:bold;
  text-align:left;
  margin-block:15px;
}
.form .form_wrap .bag .select{
  display:block;
  width:100%;
  position:relative;
  
}
.form .form_wrap .bag .select:before{
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 7.5px 0 7.5px;
  border-color: #333333 transparent transparent transparent;
  content:"";
  position:absolute;
  right:20px;
  top:0;
  bottom:0;
  margin:auto;
  z-index: 0;
}
.form .form_wrap .bag .select select{
  width:100%;
  height:50px;
  border-radius:7px;
  padding: 10px;
  font-size: 1rem;
  background:transparent;
  z-index: 1;
  position: relative;
  border: 2px solid #EDEDED;
  color: #333;
}
.form .form_wrap .form_btn{
	display:block;
	position:relative;
	margin-top: 50px;
}
.form .form_wrap .form_btn input{
	width:100%;
	max-width: 450px;
	height: 65px;
	border-radius:10px;
	background:#fff;
	border:0px solid #cdcdcd;
	font-size: 1.25rem;
	font-weight: bold;
	transition:.5s transform;
	color: #ffffff;
	background-color: #1c9604;
}
.form .form_wrap .form_btn input:hover{
	transform:translateY(5px);
}
.form .form_wrap .required{
	background: #db3054;
	font-size: 1rem;
	color: #fff;
	padding: 2px 10px;
	margin-left: 1em;
	border-radius: 5px;
}

.form .form_wrap .any{
	background: #888888;
	font-size: 1rem;
	color: #fff;
	padding: 2px 10px;
	margin-left: 1em;
	border-radius: 5px;
}

.form .form_wrap .error_message {
	display: none;
}
.form .form_wrap .error_message p{
	color:#db3054;
	font-size: 1rem;
	font-weight:400;
}

@media screen and (max-width:767px) {
	.form .form_wrap{
		padding:20px 30px;
	}
	.home .modal-content{
		width:100%;
	}
	.form .form_wrap .bag{
		margin-bottom: 10px;
	}
	.form .form_wrap .bag p{
		margin-block:10px;
	}
	.form .form_wrap .form_btn{
		margin-top: 20px;
	}
}

/* スマホのみ電話を押せるように -------------------------------- */
@media screen and (min-width: 1000px) {
	a[href^="tel:"] {
		pointer-events: none;
	}
}

@media screen and (min-width:1000px){
    .brsp {display:none;}
}

/* スマホ限定の改行コード -------------------------------- */
@media screen and (min-width:1000px){
    .brsp {display:none;}
}

/* ＰＣのみ表示 -------------------------------- */
@media screen and (max-width:1000px){
    .pc {display:none;}
}

/* スマホのみ表示 -------------------------------- */
@media screen and (min-width:999px){
    .sp {display:none;}
}


.bunner img{
	width: 100%;
	max-width: 1000px;
	margin: 0% auto 0% auto;
}