@charset "utf-8";
/*--------------------------------------------

	 BASE

--------------------------------------------*/
html {
	font-size: 62.5%;
	height: 100%;
}
body {
	width:100%;
	font-family:  'Noto Sans JP',"游ゴシック","YuGothic", "游ゴシック体","メイリオ", "Meiryo", "Arial", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;	
    font-size: 1.4rem;
    letter-spacing: 0.07em;
	color:#8d99a4;
	line-height:1.5;
    background-color: #fff;
}
/*--------------------------------------------

	 DEFAULT SELECTER

--------------------------------------------*/
table {
	width:100%;
}
img{
	max-width:100%;
}
a {
	text-decoration:none;
	color:#8d99a4;
	display:inline-block;
    cursor: pointer;
}
/*--------------------------------------------

	 FONTS

--------------------------------------------*/
.font__futura{
	font-family: 'futura-pt-condensed', sans-serif;
}
.font__noto-sans{
	font-family: 'Noto Sans JP', sans-serif;
	font-style: normal;
}
.font__uppercase{
	text-transform:uppercase;
}
.font__lowercase{
	text-transform:lowercase;
}
.font__super{
	vertical-align:super;
	font-size:0.5em;
	margin-right: 0.3em;
}
/*--------------------------------------------

	GLOBAL CSS

--------------------------------------------*/
.cf:after {
	content: "";
	clear: both;
	display: block;
	height: 0;
}
.bold{
	font-weight:bold;
}
.flex {
	display:flex;
}
.nolink {
	pointer-events: none!important;
}
.ggmap,
.youtube {
	position: relative;
	padding-bottom: 56.25%;
	/*padding-top: 10px;*/
	height: 0;
	overflow: hidden;
}
.ggmap iframe,
.ggmap #ggmap object,
.ggmap #ggmap embed,
.youtube iframe,
.youtube #ggmap object,
.youtube #ggmap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
@media screen and (min-width : 684px ){
	.for_sp{
		display:none !important;
	}
}
@media screen and (min-width : 1025px ){
	.for_tb{
		display:none !important;
	}
}
@media screen and (max-width : 1024.9999px ) {
	.for_pc{
		display:none !important;
	}
}
.js-ofi{
	position:relative;
}
.js-ofi img{
	width:100%;
	height:100%;
	object-fit: cover;
	position:absolute;
	left:0;
	top:0;
}
/*--------------------------------------------

	BREAD NAV

--------------------------------------------*/
.bread__navi{
    padding:9.37% 0 1.5%
}
.bread__navi .secInner{
    max-width: 1240px;
}
.bread__navi-list{
}
.bread__navi-item{
    font-size: 1.4rem;
    color: #c9c9c9;
    position: relative;
    padding-right: 1.425em;
}
.bread__navi-item:not(:first-child){
    padding-left: 1.425em;
}
.bread__navi-item:last-child{
    padding-right: 0;
}
.bread__navi-item a{
    color: #8b8b8b;
    transition: opacity 0.7s;
}
.bread__navi-item a:hover{
    opacity: 0.7;
}
.bread__navi-item:not(:first-child):after{
    content: "";
    display: block;
    width:4px;
    height: 8px;
    position: absolute;
    top: 32%;
    left: 0;
    background: url("../Image/bread-arrow.svg") no-repeat center top;
    background-size: cover;
}
/*--------------------------------------------

	共通 CSS

--------------------------------------------*/
.secInner{
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 1%;
}
@media screen and (max-width :  1024.9999px  ) {
	.secInner{
	}
}
.common_ttlBox{
    font-family: 'Noto Sans JP', sans-serif;
    letter-spacing: 0.28em;
}
.under_ttlBox{
    position: relative;
    border-bottom: 1px solid #eeeeee;
    padding-bottom: 3.6% ;
}
.under_ttlBox:after{
    content: "";
    display: block;
    width: 8%;
    height: 1px;
    position: absolute;
    bottom: -0.05em;
    left: 0;
    background-color: #6699ff;
}
.common_ttlBox02{
    text-align: center;
}
.sec_ttl-eng{
    font-size: 3.5rem;
    letter-spacing: 0.28em;
    font-weight: bold;
    color: #6699ff;
}
.sec_ttl-jpn{
    font-size: 2rem;
    font-weight: 300;
    margin-top: 0.1em;
    color: #90aec9;
    letter-spacing: 0.28em;
}
.sec_ttl-eng02{
    font-size: 2rem;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 300;
    letter-spacing: 0.28em;
    color: #8d99a4;
}
.sec_ttl-jpn02{
    font-size: 1.4rem;
    font-weight: 300;
    color: #8d99a4;
    letter-spacing: 0.28em;
    margin-top: 0.3em;
}
.plane01{
    font-size: 1.6rem;
}
.common__btn01{
    width: 17.69em;
    font-size: 1.3rem;
}
.common__btn01 a{
    display: block;
    font-weight: normal;
    padding: 1.1em 1em 1.33em 2.3em;
    box-sizing: border-box;
    color: #fff;
    transition: opacity 0.7s;
}
.common__btn01-icon{
    position: relative;
    font-size: 1.3rem;
    padding: 0 4em 0 2.3em;
}
.common__btn01-icon:before,.common__btn01-icon:after{
    content: "";
    display: block;
    position: absolute;
    background-repeat: no-repeat;
    background-position: center top;
    background-size: contain;
}
.common__btn01-icon:before{
    background-image: url("../Image/btn-circle.svg");
    left: 0;
    top: 22%;
    width: 12px;
    height: 12px;
}
.common__btn01-icon:after{
    background-image: url("../Image/btn-arrow.svg");
    right: -0.2em;
    top: 35%;
    width: 40px;
    height: 7px;
    transition: 0.7s;
}
.common__page-navi-list{
    padding: 3.2% 1%;
    justify-content: center;
    background-color: #fafafa;
}
.common__page-navi-item{
    font-size: 1.6rem;
    padding: 0 2.25em;
    border-right: 1px solid #8d99a4;
    line-height: 1.2;
}
.common__page-navi-item:first-child{
    padding-left: 0;
}
.common__page-navi-item:last-child{
    padding-right: 0;
    border-right: 0;
}
.common__page-navi-item a{
    color: #8d99a4;
    transition: 0.7s;
}
.common__page-navi-item a:hover{
    opacity: 0.7;
}
.common__cate-navi-list{
    padding: 3.51% 10.9% 2%;
    flex-wrap: wrap;
    justify-content: center;
    background-color: #fafafa;
}
.common__cate-navi-item{
    margin-right: 0.7em;
    margin-bottom: 2.2%;
}
.common__cate-navi-item a{
    color: #fff;
    background:rgba(141,153,164,0.5);
    font-size: 1.4rem;
    border-radius: 1.2em;
    padding:0.28em 1.07em 0.37em;
    box-sizing: border-box;
    transition: background 0.7s,color 0.7s;
}
.common__cate-navi-item a:hover{
    color:#c3c9cf;
    background-color: #fff;
}
.wp-pagenavi {
    position: relative;
    width: 100%;
    font-size: 1.6rem;
    background-color: #fafafa;
    padding: 2.37em 3.5em;
    text-align: center;
    box-sizing: border-box;
	margin-top:8%;
}
.wp-pagenavi a,
.wp-pagenavi .current {
	position: relative;
	margin:0  0.68em;
	display: inline-block;
}
.wp-pagenavi a{
    color: #7b8188;
    opacity: 0.5;
    transition: 0.7s;
}
.wp-pagenavi .current {
    color: #7b8188;
    opacity: 1;
    padding-bottom: 0.2em;
    border-bottom: 1px solid #7b8188;
}
.wp-pagenavi .last{
    position: absolute;
    right: 3.5em;
    margin: 0;
    color: #7b8188;
}
.wp-pagenavi .last:after{
    content: "";
    display: block;
    width: 1px;
    height: 10px;
    position: absolute;
    right: 0;
    top:8px;
    background-color:#7b8188;
}
.wp-pagenavi .nextpostslink{
    color: #7b8188;
    opacity: 0.5;
}
.wp-pagenavi a:hover,
.wp-pagenavi .nextpostslink a:hover,
.wp-pagenavi  .last a:hover{
}
.product__search-head{
	padding-top:10%;
}
.product__search-head-label{
	font-size:1.8rem;
}
.product__search-ttl{
	font-size:2.2rem;
	margin-bottom:2.5em;
}
.search__noresult-text{
	font-size:1.6rem;
}
.product__search-btn{
	width:14.69em;
	margin:7.5em  auto 0;
}
.product__search-btn a{
	background-color: #5c8bfc;
   transition: 0.7s;
}
.product__search-btn a:hover{
	opacity:0.7;
}
.product__search-btn a:hover .common__btn01-icon:after{
	right: -0.6em;
}
/*--------------------------------------------

	 FLAME

--------------------------------------------*/
#wrapper{
	overflow: hidden;
    position: relative;
}
/*--------------------------------------------

	HEADER

--------------------------------------------*/
#header{
    position: absolute;
    top: 0;
    left: 0;
    padding: 22px 0 ;
    box-sizing: border-box;
    width: 100%;
    background-color: #fff;
    z-index: 99;
}
.header__inner{
    justify-content: space-between;
    padding: 0 3.91% 0 2.91%;
    align-items: flex-end;
    width: 100%;
    box-sizing: border-box;
}
.header__top{
    position: absolute;
    top: 0;
    right: 0;
}
.header__support,.header__search{
	position: relative;
    font-size: 1.3rem;
    box-sizing: border-box;
    width: 16.93em;
}
.header__support a{
    display: block;
    border-right: 1px solid #fff;
    color: #fff;
    background-color: #6699ff;
    padding: 0.8em 1em 0.8em 2.69em;
    transition:opacity 0.7s;
}
.header__support a:hover{
    opacity: 0.7;
}
.header__support-icon{
	position: relative;	
}
.header__search{
    color: #fff;
    background-color: #8d99a4;
    padding: 0.5em 1em 0.5em 2em;
}
.header__support-icon
    padding-left: 1.69em;
}
.header__search-icon{
    position: relative;
    width:20px;
}
.header__support-icon:before{
    content: "";
    display: block;
    width: 12px;
    height: 9px;
    position: absolute;
    top: 50%;
    left:-20px;
    transform: translateY(-50%);
    background: url("../Image/icon-email.svg") no-repeat center top;
    background-size: contain;
}
.header__search-icon:before{
    content: "";
    display: block;
    width: 13px;
    height: 13px;
    position: absolute;
    top: 50%;
    left: 6px;
    transform: translateY(-50%);
    background: url("../Image/icon-search.svg") no-repeat center top;
    background-size: contain;
}
.header__searchBox{
    flex: 1;
}
.header__search input{
    width: 100% !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-sizing: border-box;
    font-size: 1.3rem;
    background-color: #8d99a4;
    padding: 0.4em;
    color: #fff;
}
.header__search input::placeholder{
    color: #fff;
    opacity: 0.2;
}
.header__left{
    width: 300px;
    margin-right: 1%;
    padding-bottom: 0.5%;
}
@media screen and (max-width : 1110px ) {
    .header__left{
    width: 260px;
}
}
.header__left a{
    display: block;
    color: #4b555f;
}
.header__logoBox-notes{
    font-size: 1.2rem;
    font-weight: 300;
    padding-left: 0.6em;
    margin-bottom: 0.5em;
}
.header__right{
	display:flex;
}
.header__sns {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 0 50px;
    margin-top: 50px;
}
.global__navi-inner{
    display: flex;
    align-items: flex-end;
}
.global__navi-list{
    display: flex;
    flex: 1;
    justify-content: flex-end;
    padding-bottom: 0.4em;
}
.global__navi-item{
    font-size: 1.3rem;
    padding: 0 min(calc(32 / 1600 * 100vw),32px);
    border-right: 1px solid #7b8188;
    line-height: 1.3;
}
.global__navi-item:last-child{
    border-right: 0;
}
.global__navi-item:first-child a{
    padding-left: 0;
}
.global__navi-item:last-child a{
    padding-right: 0;
    border: 0;
}
.global__navi-item a{
    position: relative;
    letter-spacing: 0.07em;
    color: #7b8188;
    display: inline-block;
}
.global__navi-item a:after{
   position: absolute;
  bottom: -4px;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background: #7b8188;
  transform: scale(0, 1);
  transform-origin: center top;
  transition: transform .5s;
}
.global__navi-item a:hover::after {
  transform: scale(1, 1);
}
@media screen and (min-width :  1024.9999px  ) {
	.drawer-hamburger{
    display: none;
}
    .drawer-nav {
    position: static;
    width: auto;
    height: auto;
    background: none;
}
    .drawer-menu {
        padding: 0;
}
    .drawer__logo{
    display: none;
}
    .drawer__bottom{
    display: none;
}
}
/*--------------------------------------------

	COMMON - CONTACT

--------------------------------------------*/
#common__contact{
    padding: 5.2% 0 6.78%;
}
.common__contact-ttlBox{
    text-align: center;
    margin-bottom:7.5%;
}
.common__contact-ttl-eng{
    color:#8d99a4;
}
.common__contact-ttl-jpn{
    color: #bfc9d5;
}
.common__contact-inner{
}
.common__contact-box{
    width: 50%;
    padding: 8.5% 1% 8.3% 3.6458vw;
    box-sizing: border-box;
}
.common__contact-buy{
    background-color: #e5edfc;
}
.common__contact-use{
    background-color: #e6f3ff;
}
.common__contact-buy-top{
    font-size: 1.4rem;
    margin-bottom: 1.85em;
}
.common__contact-use-top{
    font-size: 1.4rem;
    margin-bottom: 2.12em;
}
.common__contact-label{
    font-size: 2rem;
    font-weight: bold;
    color: #5c8bfc;
}
.common__contact-catch{
    font-size: 1.4rem;
    margin: 0.83em 0 0;
    color: #90aec9;
}
.common__contact-use-catch{
    line-height: 1.8;
}
.common__contact-bottom{
    align-items: flex-start;
}
.common__contact-buy-tel{
    width: 37%;
    margin-right: 7.6%;
}
.common__contact-buy-mail{
    width: 43.2%;
}
.common__contact-buy-tel-txt,.common__contact-buy-mail-txt{
    font-size: 1.4rem;
    font-weight: bold;
    color: #5c8bfc;
    text-align: center;
}
.common__contact-buy-mail-txt{
    margin-bottom: 0.92em;
}
.common__contact-buy-tel-number a{
    color: #5c8bfc;
    font-size: 3.8rem;
    font-weight: 500;
    line-height: 1.3;
    letter-spacing: 0.07em;
    white-space: nowrap;
}
.common__contact-buy-tel-hour{
    font-size: 1.2rem;
    color: #5c8bfc;
    white-space: nowrap;
}
.common__contact-btn a{
    font-size: 1.3rem;
    background-color: #6699ff;
    border: 1px solid #8d99a4;
    padding: 1.1em 1em 1.33em 2.3em;
    transition: opacity 0.7s;
}
.common__contact-btn a:hover{
    opacity: 0.7;
}
.common__contact-btn a:hover .common__btn01-icon:after{
    right: -0.6em;
}
/*============================

    footer

============================*/
#footer{
}
.ft-inner{
    position: relative;
    padding: 4.58% 0 4.89%;
    background-color: #6699ff;
    overflow: hidden;
}
.ft-inner:before,.ft-inner:after{
    content: "";
    display: block;
    position: absolute;
    z-index: 1;
    width: 0;
    height: 100%;
    border-style: solid;
}
.ft-inner:before{
    top: 0;
    left: 0;
    border-width: 1680px 335px 0 0px;
    border-color: #5c8bfc transparent transparent transparent;
}
.ft-inner:after{
    bottom: 0;
    right: 0;
    border-width: 0 0px 1680px 335px;
    border-color: transparent transparent #5c8bfc transparent;
}
#footer .secInner{
    max-width: 1000px;
    position: relative;
    z-index:  3;
}
.footer__navi-list-about,.footer__navi-list-contact{
    width: 25%;
}
.footer__navi-list-about{
    margin-right: 3.6%;
}
.footer__navi-list-products{
    flex: 1;
    margin-right: 7%;
}
.footer__navi-item-ac-list-products{
    flex-wrap: wrap;
}
.footer__navi-item{
    font-size: 1.2rem;
}
.footer__navi-item-child{
    margin-top: 1em;
}
.footer__navi-item a{
    color: #fff;
    position: relative;
    display: inline-block;
    text-decoration: none;
}
.footer__navi-item a:after{
    position: absolute;
    bottom: -4px;
    left: 0;
    content: '';
    width: 100%;
    height: 1px;
    background: #fff;
    transform: scale(0, 1);
    transform-origin: left top;
    transition: transform .6s;
}
.footer__navi-item a:hover:after{
    transform: scale(1, 1);
}
.footer__navi-item-parent{
    font-size: 1.4rem;
    font-weight: bold;
}
.footer__navi-item-parent:not(:first-child){
    margin-top: 0.7em;
}
.footer__navi-list-products .footer__navi-item-parent{
    width: 100%;
}
.footer__navi-item-child-last{
    margin-bottom: 1.58em;
}
.footer__navi-item-child a{
    position: relative;
    opacity: 0.5;
    padding-left: 1.66em;
}
.footer__navi-item-child a:before{
    content: "";
    display: block;
    width: 10px;
    height: 1px;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    background-color: #fff;
    opacity: 0.5;
}
.footer__navi-item-ac-list-products .footer__navi-item-child:nth-child(odd){
    width: 57%;
}
.footer__navi-item-ac-list-products .footer__navi-item-child:nth-child(even){
    flex: 1;
}
.copyright{
    display: block;
    text-align: center;
    color: #8d99a4;
    font-size: 1rem;
    padding: 3.2em 0;
}
/*============================

    COMMON - NEWS

============================*/
.common__news-pick-up{
    padding:8.5% 15.1% 10%;
    box-sizing: border-box;
}
.common__news-pick-up-label{
    position: relative;
    font-size: 2rem;
    letter-spacing: 0.28em;
    text-align: center;
}
.common__news-pick-up-label:after{
    content: "";
    display: block;
    width: 1.35em;
    height: 2px;
    position: absolute;
    bottom: -0.4em;
    left: 50%;
    transform: translateX(-50%);
    background-color: #fff;
}
.common__news-pick-up-list{
    margin-top: 7.4%;
}
.common__news-pick-up-item{
    width: 31.2%;
}
.common__news-pick-up-item:not(:last-child){
    margin-right: 3.2%;
}
.common__news-pick-up-item a{
    color: #fff;
    transition: 0.7s;
}
.common__news-pick-up-item a:hover{
    opacity: 0.7;
}
.js-ofi.common__news-pick-up-imgBox{
    padding-top: 57.7%;
	background-color:#fff;
}
.common__news-pick-up-textBox{
    font-size: 1.4rem;
    margin-top: 1.2em;
}
.common__news-pick-up-date{
    font-weight: bold;
}
.common__news-pick-up-ttl{
    margin-top: 0.7em;
}
.top__news-others{
    padding: 8% 20.9% 7.74%;
    background-color: #fff;
    box-sizing: border-box;
}
.top__news-others-list{
	display:none;
}
.is_active.top__news-others-list{
	display:block;
}
.common__news-cat-item{
    font-size: 1.4rem;
    font-weight: bold;
}
.common__news-cat-item a{
    padding: 0.37em 1em;
    transition: 0.7s;
    border-radius: 15px;
    opacity: 1;
  
}
.common__news-cat-item a:hover{
} 
.common__news-others-item a{
    align-items: center;
    transition: 0.7s;
}
.common__news-others-item a:hover{
    opacity:  0.7;
}
.common__news-others-item:not(:first-child){
    margin-top: 5%;
}
.common__news-others-imgBox{
    width: 13%;
    padding-top: 7.8%;
    margin-right: 3.8%;
	background-color:#fff;
}
.common__news-others-textBox{
    flex: 1;
}
.common__news-others-date{
    padding-right: 1.1em;
    border-right: 1px solid #7b8188;
}
.common__news-others-cat{
    padding-left: 1.1em;
}


.popUp {
    display: none;
    /* display: flex; */
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
}
.popUp__container::-webkit-scrollbar {
    display:none;
}
.popUp__container {
    width: 80%;
    max-width: 360px;
    margin: 0 auto;
    position: relative;
    overflow-y: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none;
}
.popUp__closed {
    width: 40px;
    height: 40px;
    display: block;
    position: relative;
    appearance: none;
    margin: 0 0 0 auto;
    padding: 0;
    background: none;
    border: none;
    outline: none;
    cursor: pointer;
    position: relative;
}
.popUp__closed::before,
.popUp__closed::after {
    content: "";
    display: block;
    width: 30px;
    height: 2px;
    background: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
}
.popUp__closed::before {
    transform: translate(-50%,-50%) rotate(45deg);
}
.popUp__closed::after {
    transform: translate(-50%,-50%) rotate(-45deg);
}
.popUp__container img {
    width: 100%;
    height: 100%;
    /* object-fit: contain; */
}

@media all and (max-width : 683.9999px ){
    .popUp__container {
        width: 70%;
    }
}