@charset "UTF-8";

/* reset
========================================================================== */
div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;
vertical-align: baseline;
}
a {
text-decoration: none;
color: #333;
}
/*=============================
HTML5 display-role reset for older browsers
=============================*/
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
display: block;
}
.main {
line-height: 1;
}
ol, ul {
list-style: none;
}
blockquote, q {
quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content: '';
content: none;
}
table {
border-collapse: collapse;
border-spacing: 0;
}
a:hover {
opacity: .7;
}
/*=============================
body setting
=============================*/
html, body {
width: 100%;
}

img {
width: 100%;
height: auto;
vertical-align: middle;
}

/* ====== common =====/* fc */
#navi-sitemap {
height: 22px;
margin-bottom: 20px;
width: 100%;
}
#page-title {
margin: 0 0 0 1px;
float: left;
display: inline;
font-weight: bold;
font-size: 1.25rem;
color: #000;
}
#page-title a {
color: #000;
text-decoration: none;
}
#navi-glinks {
float: right;
display: inline;
overflow: hidden;
margin-right: -10px;
margin-top: 3px;
}
#navi-glinks li {
display: inline;
float: left;
margin-left: -1px;
margin-right: 10px;
border-left: 1px solid #b7b7b7;
padding-left: 10px;
line-height: 14px;
height: 13px;
font-size: 0.625rem;
}
#navi-glinks li:first-child {
border-left: none;
}
#navi-glinks li a {
color: #333;
text-decoration: none;
}
@media screen and (max-width: 1024px) {
#gNav, #navi-sitemap {
display: none;
}
#page-title {
padding: 15px 0;
}
}

/* ====== common =====/* fc */
#navi-sitemap {
height: 22px;
margin-bottom: 20px;
width: 100%;
}
#page-title {
margin: 0 0 0 1px;
float: left;
display: inline;
font-weight: bold;
font-size: 1.25rem;
color: #000;
}
#page-title a {
color: #000;
text-decoration: none;
}
@media screen and (max-width: 767px) {
#page-title {
padding: 15px 0;
}
}
#navi-glinks {
float: right;
display: inline;
overflow: hidden;
margin-right: -10px;
margin-top: 3px;
}
#navi-glinks li {
display: inline;
float: left;
margin-left: -1px;
margin-right: 10px;
border-left: 1px solid #b7b7b7;
padding-left: 10px;
line-height: 14px;
height: 17px;
font-size: 0.625rem;
}
#navi-glinks li a {
color: #333;
text-decoration: none;
}
@media screen and (max-width: 767px) {
#navi-sitemap {
display: none;
}
}

/* ===== content ===== */

/* main */
.main-Banner {
display: flex;
justify-content: center;
align-items: center;
position: relative;
width: 100%; 
height: 468px;
margin-bottom: 85px;
padding: 15px;
background: url(/prdct/fc/img/wp/catalog/sapphire/mv_bg.jpg) center center no-repeat;
background-size: cover;
}
@media screen and (max-width: 767px) {
.main-sec {
margin-top: 0px;
}
.main-Banner {
height: auto;
margin-bottom: 45px;
}
}

/* text wrap */
.main-textWrap,
.main-sec01Wrap {
width: 100%;
max-width: 1002px;
padding: 10px 15px 1px;
box-sizing: border-box;
}
.main-textWrap {
margin: auto;
}
.main-text {
font-size: 1.625rem;
letter-spacing: .5px;
line-height: 42px;
}
@media screen and (max-width: 767px) { 
.main-text {
font-size: 1.125rem;
line-height: 32px;
}
}

/* sec 01 */
.main-sec01 {
width: 100%;
margin: 95px 0;
background-color: rgba(188, 255, 0, .06);
}
.main-sec01Wrap {
margin: auto;
}
.main-sec01Title {
margin: 95px 0 45px;
color: #008A20;
font-size: 1.875rem;
font-weight: bold;
text-align: center;
}
.main-item01 {
margin-bottom: 14px;
}
.main-item01:last-child {
margin-bottom: 95px;
}
.main-item01Txt01 {
display: flex;
align-items: center;
color: #008A20;
font-size: 1.375rem;
line-height: 32px;
font-weight: bold;
}
.main-num {
display: flex;
-ms-flex-align: center;
align-items: center;
-ms-flex-pack: center;
justify-content: center;
flex-shrink: 0;
width: 40px;
height: 40px;
margin: 0 16px 0 0;
font-size: 0.9375rem;
font-weight: normal;
color: #fff;
background-color: #008A20;
border-radius: 50%;
}
.main-item01Txt02 {
margin-left: 55px;
font-size: 1.125rem;
line-height: 32px;
}
.main-illustration01 {
display: flex;
justify-content: center;
align-items: center;
width: 100%;
margin-bottom: 95px;
padding: 0 15px;
background-color: #fff;
}
.main-thumb{
padding-bottom: 15px;
}

@media screen and (max-width: 767px) {
.main-sec01 {
margin: 40px 0;
}
.main-sec01Title {
margin: 45px 0 20px;
font-size: 1.75rem;
}
.main-item01Txt01 {
font-size: 0.938rem;
line-height: 20px;
}
.main-num {
width: 30px;
height: 30px;
font-size: 0.563rem;
}
.main-item01Txt02 {
margin: 15px 0 0 45px;
font-size: 0.875rem;
line-height: 22px;
}
.main-illustration01 {
margin-bottom: 0;
}
.main-illustration01 .main-thumb {
padding-bottom: 60px;
}
}

/* Section 02 */
.main-sec02 {
margin-bottom: 95px;
}
.main-sec02Wrap {
padding: 96px 15px;
background-color: rgba(188, 255, 0, .06);
}
.main-txtBlock01 {
margin: auto;
max-width: 972px;
}
.main-title {
color: #008A20;
font-size: 1.875rem;
font-weight: bold;
text-align: center;
}
.main-txt01 {
padding: 22px 0 0;
font-size: 1.375rem;
line-height: 32px;
}
.main-illustration02 {
padding: 95px 0 0;
}
.main-sec02 .main-thumb {
width: 100%;
max-width: 437px;
margin: auto;
padding: 0 15px;
}
@media screen and (max-width: 767px) {
.main-sec02Wrap {
padding: 44px 15px 65px;
}
.main-title {
font-size: 1.75rem;
line-height: 40px;
}
.main-txt01 {
font-size: 0.938rem;
line-height: 28px;
}
}

/* Section 03 */
.main-sec03 {
background-color: rgba(188, 255, 0, .06)
}
.main-sec03Wrap {
width: 100%;
max-width: 1000px;
margin: auto;
padding: 96px 15px;
}
.main-list {
display: flex;
flex-direction: row;
flex-wrap: wrap;
padding: 45px 0 0;
}
.main-item:nth-child(1) {
width: 50%;
padding: 20px 40px 40px;
border-right: 1px solid #707070;
border-bottom: 1px solid #707070;
}
.main-item:nth-child(2) {
width: 50%;
padding: 20px 40px 40px;
border-bottom: 1px solid #707070;
}
.main-item:nth-child(3) {
width: 25%;
padding: 31px;
border-right: 1px solid #707070;
}
.main-item:nth-child(4) {
width: 25%;
padding: 31px;
border-right: 1px solid #707070;
}
.main-item:nth-child(5) {
width: 25%;
padding: 31px 15px;
border-right: 1px solid #707070;
}
.main-item:nth-child(6) {
width: 25%;
padding: 31px;
}
.main-sec03 .main-num {
margin: auto;
}
.main-subTtl01 {
padding-top: 16px;
font-size: 1.25rem;
font-weight: bold;
line-height: 30px;
text-align: center;
}
.main-subTtl02 {
padding-top: 32px;
font-size: 1.25rem;
font-weight: bold;
text-align: center;
}

@media screen and (max-width: 767px) {
.main-sec03Wrap {
padding: 42px 15px 42px;
}
.main-txtWrap {
display: flex;
flex-direction: row;
align-items: center;
}
.main-list {
flex-direction: column;
padding: 40px 0 0;
}
.main-item {
width: 100%;
padding: 20px 0;
}
.main-sec03 .main-num {
margin: 0 10px 0 0;
}
.main-subTtl01,
.main-subTtl02 {
padding: 0;
font-size: 0.938rem;
line-height: 20px;
}
.main-subTtl02 {
text-align: left;
}
.main-subTtl01 br,
.main-subTtl02 br {
display: none;
}
.main-item:nth-child(1),
.main-item:nth-child(2),
.main-item:nth-child(3),
.main-item:nth-child(4),
.main-item:nth-child(5),
.main-item:nth-child(6) {
width: 100%;
padding: 20px 0;
border-right: none;
border-bottom: 1px solid rgb(207 207 207 / 50%);
}
.main-item:nth-child(1) {
border-top: 1px solid rgb(207 207 207 / 50%);
}
}

/*section 03 sublist*/
.main-subList {
padding: 32px 0 0;
}
.subListFlex {
display: flex;
flex-direction: row;
justify-content: space-between;
}
.main-subItem {
position: relative;
padding: 0 0 0 19px;
font-size: 0.875rem;
line-height: 22px;
}
.main-subItem:before {
content: '';
display: block;
position: absolute;
width: 4px;
height: 4px;
font-size: 1em;
background-color: #008A20;
border-radius: 50%;
top: 0.5em;
left: 0.5em;
}
@media screen and (max-width: 767px) {
.subListFlex {
display: block;
}
.main-subList {
padding: 10px 50px 0;
}
}

/* main-sec04 */
.main-sec04 {
width: 100%;
background-color: #333;
padding: 10px 0;
}
.main-sec04Wrap {
display: flex;
justify-content: space-between;
align-items: center;
overflow: hidden;
width: 100%;
max-width: 908px;
margin: auto;
padding: 0 70px 0 45px;
}
.main-sec04 .main-title {
margin-bottom: 39px;
color: #fff;
font-size: 2.375rem;
font-weight: bold;
line-height: 50px;
text-align: center;
}
.main-sec04 .main-btn_dl {
background: url(/prdct/fc/img/wp/catalog/sapphire/btn_dl.png) no-repeat;
background-position: 25px;
background-color: #008A20;
border: none;
border-radius: 5px;
}
.main-sec04 .main-btn_dl a {
display: block;
padding: 25px 45px 25px 90px;
color: #fff;
font-size: 1.75rem;
font-weight: bold;
line-height: 25px;
text-align: center;
}

.main-sec04 .main-thumb {
width: auto;
margin: 0;
}

.main-btn_dl:hover {
background-color:#4dad63;
opacity: 0.9;
}

@media screen and (max-width: 767px) {
.main-sec04 {
padding: 60px 30px
}
.main-sec04 .main-textBlock {
margin: auto;
}
.main-sec04 .main-thumb {
text-align: center;
}
.main-sec04Wrap {
padding: 0;
}
.main-sec04 .main-title {
font-size: 1.75rem;
margin-bottom: 0;
}
.main-sec04 .main-btn_dl a {
font-size: 1.438rem;
line-height: 23px;
padding: 0;
}
.main-sec04 img {
margin-left: 10px;
}
.main-sec04 .main-btn_dl {
margin: auto;
padding: 7% 0 7% 15%;
background: url(/prdct/fc/img/wp/catalog/sapphire/btn_dl_sp.png) no-repeat;
background-position: 20px;
background-color: #008A20;
}
}

/* Modal content */
.main-modal {
display: none;
position: fixed;
z-index: 0;
right: 0px;
bottom: 0px;
width: 100%;
max-width: 100%;
}
.main-modalDialog {
margin: auto;
background: #333333;
box-shadow: 0 -1px 24px rgb(0 0 0 / 23%);
}

.main-modalBody {
padding: 19px 70px 3px;
}

/* modal btn */
.main-modalBody .modal-btn01 a {
  position: relative;
  padding: 0px 10px;
  font-size: 1.0625rem;
  font-weight: bold;
  color: #fff;
  border-radius: 5px;
  line-height: 1;
  background-color: #008A20;
  text-align: left;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  height: 3em;
}
.main-modalBody .modal-btn01 a:after {
  content: "";
  position: absolute;
  display: block;
  background: url(/prdct/fc/img/wp/catalog/sapphire/modal_icon_catalog.png) no-repeat;
  background-size: contain;
  width: 109px;
  height: 132px;
  bottom: -10px;
  right: 100%;
}
.main-modalBody .modal-btn01.modal-icon1 a:before {
  background: url(/prdct/fc/img/wp/catalog/sapphire/modal_icon01.png) 0 0 no-repeat;
  -webkit-background-size: 24px 19px;
  content: "";
  display: inline-block;
  width: 24px;
  height: 19px;
  position: relative;
  vertical-align: middle;
  padding-left: 33px;
}
.main-modalBody .modal-btn02 a {
  position: relative;
  padding: 0px 10px;
  font-size: 1.0625rem;
  font-weight: bold;
  border-radius: 5px;
  line-height: 1;
  text-align: left;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  background: #fff;
  color: #333;
  height: 3em;
}
.main-modalBody .modal-btn02.modal-icon3 a:before {
  background: url(/prdct/fc/img/wp/catalog/sapphire/modal_icon03.png) 0 0 no-repeat;
  -webkit-background-size: 24px 19px;
  content: "";
  display: inline-block;
  width: 24px;
  height: 19px;
  position: relative;
  vertical-align: middle;
  padding-left: 33px;
}
.main-modalBody .modal-btn01, .main-modalBody .modal-btn02 {
  margin: 0 0 8px;
}
.main-modalBody .modal-btn02:last-child {
  margin: 0;
}

/*catalog*/
.flex_mw_box {
display: flex;
justify-content: flex-end;
}
.main-modal .flex_m_box{flex-basis: 25.65%;}

.main-modal .flex_w_box{display: flex;flex-basis: 57%;justify-content: flex-start;}
.main-modal .flex_w_btn{
flex-basis: 45%;
margin: 0 0 0 3%;
}
.main-spOnly_btn_w1 {
display: inline-block!important;
}
.main-spOnly_btn_w2 {
display: inline-block!important;
}
@media screen and (max-width: 767px) {
.main-spOnly_btn_w1 {
display: none;
}
.main-spOnly_btn_w2 {
display: none;
}
.main-modalBody .modal-btn02.modal-icon2 a:before {
bottom: 10px;
}
}
@media screen and (max-width: 767px) {
.main-modal .flex_w_box {
justify-content: space-between;
}
.main-modal .flex_w_btn {
flex-basis: 48%;
}

.main-modalBody .modal-btn01.modal-icon1 {
background:#008A20;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
}
.main-modalBody .modal-btn01.modal-icon1 a {
display:block;
padding:12px 10px;
color:#FFF;
font-size:12px;
line-height:1.4;
text-align:center;
}
.main-modalBody .modal-btn02.modal-icon2 {
background: #fff;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
margin: 0;
}
.main-modalBody .modal-btn02.modal-icon2 a {
display:block;
padding: 5px 0px 0 0;
background: #FFF;
font-size:12px;
line-height: 1.4;
text-align:center;
}
.main-modalBody .modal-btn02.modal-icon3 a:before {
background: none;
-webkit-touch-callout: none;
display: none;
}
}
@media screen and (max-width: 767px){
.fs15_btn{
font-size: 15px;
line-height: 1.3em;
}
.mail_icon{
vertical-align: middle;
padding-bottom: 3px;
width: 33px;
height: 21px;
padding-right: 10px;
}
.text_inquiry{
line-height: 1.3em;
}
}
@media screen and (max-width: 767px) {
.main-modal {
bottom: 56px;
-webkit-bottom: 20px;
width: 100%;
max-width: 767px;
box-sizing: border-box;
}
/*flex*/
.main-modalBody {
display: block;
padding: 20px 15px 20px;
}
.main-modalBody .modal-btn01 a:after {
bottom: 0px;
width: 0px;
height: 0px;
background: none;
background-size: contain;
right: -11px;
}
.main-modalBody .modal-btn01.modal-icon1 a {
background: none;
-webkit-touch-callout: none;
}
.main-modalBody .modal-btn02.modal-icon3 a {
display: block;
background:  url() left 20px center no-repeat #fff;
padding: 5px 0 0 0px;
text-align: center;
}
.main-modalBody .modal-btn01 a{
height: 3.5em;
padding: 17px 0 17px 48px;
border-radius: 7px;
font-size: 0.9375rem;
}
.main-modalBody .modal-btn02 a{
height: 3.5em;
padding: 0 0 0 50px;
border-radius: 5px;
text-align: center;
}
.main-modalBody .modal-btn02 .modal-icon3 span {
padding-left: 3px;
}

.main-modalBody .modal-btn02 a{
font-size: 12px;
}

.main-modalFlex .flex_w_box {
display: flex;
justify-content: space-between;
}
.main-modalFlex .modal-btn02 {
width: 48%;
}
.main-modalBody .modal-btn01 {
margin-bottom: 18px;
}
.main-modalBody .modal-btn02 {
margin-bottom: 0;
}
.main-modalBody .txt {
}
}
/* inquiryBlock */
.main-inquiryBlock {
width: 100%;
padding: 38px 15px;
background-color: #fff;
}
.main-inquiryBlock .main-inquiryBlock_inner {
display: -ms-flexbox;
display: flex;
-ms-flex-align: center;
align-items: center;
-ms-flex-pack: justify;
justify-content: space-between;
width: 100%;
max-width: 881px;
margin: 0 auto;
padding: 0 15px;
}
.main-inquiryBlock .main-btnBox {
width: 45.11%;
color: #fff;
line-height: 1.45;
border: 2px solid #333;
border-radius: 5px;
}
.main-inquiryBlock .main-btnBox:hover {
background-color: #000;
opacity: .7;
}
.main-inquiryBlock .main-btnBox .main-btnBox_inner > *:not(:first-child) {
margin-left: 2.94%;
}
.main-inquiryBlock .main-btnBox .main-btnBox_inner .main-btn {
display: -ms-flexbox;
display: flex;
padding: 0 15px;
background-color: #FFF;
border-radius: 5px;
line-height: 1.2;
word-break: break-all;
}
.main-inquiryBlock .main-btnBox .main-btnBox_inner .main-btn .main-btn_item {
display: -ms-flexbox;
display: flex;
-ms-flex-align: center;
align-items: center;
-ms-flex-pack: center;
justify-content: center;
min-height: 60px;
width: 100%;
}
.main-inquiryBlock .main-btnBox .main-btnBox_inner .main-btn.main-btn_arr,
.main-inquiryBlock .main-btnBox .main-btnBox_inner .main-btn.main-btn_mail {
font-size: 1.125rem;
font-weight: bold;
}
.main-inquiryBlock .main-btnBox .main-btnBox_inner .main-btn.main-btn_arr .main-btn_item .main-btn_item_inner,
.main-inquiryBlock .main-btnBox .main-btnBox_inner .main-btn.main-btn_mail .main-btn_item .main-btn_item_inner {
padding-left: 41px;
position: relative;
}
@media screen and (max-width: 767px) {
.main-inquiryBlock .main-inquiryBlock_inner,#main-area .main-inquiryBlock .main-btnBox {
width: 100%;
display: block;
}
.main-inquiryBlock .main-btnBox {
width: auto;
}
.main-inquiryBlock .main-btnBox span {
font-size: 1rem!important;
}

.main-inquiryBlock .main-btnBox:first-child {
margin-bottom: 28px;
}
.main-inquiryBlock .main-btnBox .main-btnBox_inner .main-btn .main-btn_item {
justify-content: center;
}
.main-inquiryBlock .main-btnBox .main-btnBox_inner .main-btn.main-btn_arr .main-btn_item .main-btn_item_inner {
padding-left: 30px;
}
.main-inquiryBlock .main-btnBox .main-btnBox_inner .main-btn.main-btn_mail .main-btn_item .main-btn_item_inner {
padding-left: 33px;
}
.main-inquiryBlock .main-btnBox .main-btnBox_inner .main-btn {
padding: 0 0 0 15px;
}
}
/* ===== general ===== */
.main-spOnly {
display: none;
}
.main-pcOnly {
display: block;
}
@media screen and (max-width: 767px) {
.main-spOnly {
display: block;
}
.main-pcOnly {
display: none;
}
}