﻿/*===========================================================*/
/* 個別 */
/*===========================================================*/
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@500&family=Noto+Sans+JP:wght@500&display=swap');
body{
        font-family:"Noto Sans JP", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif!important;
        font-weight: 500;
}
.linkStyle{color: #333;border-bottom: 1px solid;}
#header{        background-color: rgb(114 114 114 / 90%);}
#main h1{max-width: 500px;}
#main .main_box{
    max-width: 650px;
    background-color: rgba(255,255,255,0.3);
    padding: 20px;
}
.header_menu li:last-of-type a {
    color: #fff;
    padding: 10px 12px;
    background-color: #887919;
}
#catch .catch_txt h2::before {
    content: '';
    position: absolute;
    width: 40px;
    height: 2px;
    bottom: -21px;
    left: 50%;
    transform: translateX(-50%);
    background-color: #887919;
}
#contents .en_font{font-style: italic;}
#contents h2::before {
    content: "";
    display: block;
    position: absolute;
    width: 40px;
    height: 2px;
    background-color: #887919;
    bottom: -14px;
    left: 0;
}
.catch_img2{
    position: absolute;
    bottom: 0;
    right: 0;
}
footer{    background-color: #737373!important;}
.g-menu{background: rgb(82 82 82 / 97%);}



#catch .modal_box .over_box::-webkit-scrollbar, #contents_wrap .con_txt P::-webkit-scrollbar {
  width: 2px;
  height: 10px;
}
#catch .modal_box .over_box::-webkit-scrollbar-track, #contents_wrap .con_txt P::-webkit-scrollbar-track {
  border-radius: 5px;
  box-shadow: 0 0 4px #aaa inset;
}
#catch .modal_box .over_box::-webkit-scrollbar-thumb, #contents_wrap .con_txt P::-webkit-scrollbar-thumb {
  border-radius: 5px;
  background: #333;
}
#catch .modal_bt{
	cursor: pointer;
/*	border-radius: 45px;*/
	width: 250px;
	box-sizing: border-box;
	    background-color: #fff;
	    margin: 50px auto 0;
	    font-family: lemonde-sans, sans-serif;
}
#catch .modal_bt a{    background-color: #434343;}
#catch .modal_bg{
     top: 0;
	left: 0;
     background-color: rgb(0 0 0 / 80%);
     z-index: 9
}
#catch .modal_box{
     max-height: 80%;
     overflow-y: auto;
     z-index: 10
}
#catch .modal_box .over_box_wrap::after {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 38px;
	background: linear-gradient(to bottom, rgba(255,255,255,0.5) 0%,rgba(255,255,255,1) 100%);
}
#catch .modal_box .over_box {
	padding: 0 20px 50px 40px;
    height: 335px;
    overflow: auto;
}
#catch .modal_box .btn_close {
    box-sizing: border-box;
    position: absolute;
    top: 20px;
    right: 20px;
    width: 60px;
    height: 60px;
    border-radius: 100px;
    cursor: pointer;
    transition: transform 0.2s ease-in;
    z-index: 1;
}
#catch .modal_bt::before, #catch .modal_bt::after, #catch .modal_box .btn_close::before, #catch .modal_box .btn_close::after {
    position: absolute;
    top: 0;
    bottom: 0;
    height: 1px;
    background-color: #000;
    margin: auto;
    content: '';
}
#catch .modal_bt::before, #catch .modal_bt::after{
	right: 20px;
	width: 14px
}
#catch .modal_bt::before {
    transform: rotate(90deg);
}
#catch .modal_box .btn_close::before, #catch .modal_box .btn_close::after {
	left: 0;
    right: 0;
	width: 45px
}
#catch .modal_box .btn_close::before {
    transform: rotate(45deg);
}
#catch .modal_box .btn_close::after {
    transform: rotate(-45deg);
}
.cms_title::before{font-size: 70px;}
.shop_info h2 span{
    display: block;
    font-size: 24px;
}
#catch .modal_bg{z-index: 1000;}
/*===========================================================*/
/* コード集 */
/*===========================================================*/

.qa_type2 .cate_box{
	overflow: hidden;
	background-color: #0b0b0b;
}
.qa_type2 .cate_box, .qa_type2 .box_txt1, .qa_type2 .box_txt2{
	border-color: #cccccc;
}
.qa_type2 .box_txt1, .box2 .box_txt1{
	border-color: rgba(0,0,0,0.05)
}
.qa_type2 .box_txt1{
	color: #6f78bd;
}
.qa_type2 .box_txt1, .qa_type2 .box_txt2,
.box2 .box_txt1, .box2 .box_txt2{
	position:relative;
	z-index: +1;
	    color: #fff;
    font-size: 16px;
}
.qa_type2 .box_txt1::before, .box2 .box_txt1::before{
	content: "Q.";
	position: absolute;
	top: 19px;
	transform: translateY(-50%);
	left: -26px;
	font-size: 7em;
	color: rgb(255 255 255 / 15%);
	z-index: -1;
	font-family: lemonde-sans, sans-serif;
}
.qa_type2 .box_txt2::before, .box2 .box_txt2::before{
	content: "A.";
	position: absolute;
	top: 19px;
	transform: translateY(-50%);
	left: 5px;
	font-size: 7em;
    color: rgb(187 168 117 / 15%);
	z-index: -1;
	font-family: lemonde-sans, sans-serif;
}
/*--------タブレット--------*/
@media screen and (max-width: 768px){
.qa_type2 .cate_box{
	width: 95%!important;
}
}
/*--------スマートフォン--------*/
@media screen and (max-width: 667px){
.qa_type2 .box_txt1::before, .box2 .box_txt1::before {
	top: 3px;
	left: -26px;
	font-size: 18vw;
}
.qa_type2 .box_txt2::before, .box2 .box_txt2::before {
	top: 16px;
	left: 5px;
	font-size: 18vw;
}
}


/*===========================================================*/
/* 下層 */
/*===========================================================*/
.page10 .more a:after{content: none;}
.cate_list li {
    padding: 5px 1%;
}
.cate_list li a{
    padding: 10px;
    color: #fff;
    background-color: #1d1d1d;
    box-sizing: border-box;
}
.cate_list li a:hover{color: #fff;}
/*#cms_2-g .cate_img1{max-height: inherit;}*/

/*===========================================================*/
/* タブレット */
/*===========================================================*/
@media screen and (max-width: 768px){
#main .main_box{width: 70%;}

}



/*===========================================================*/
/* スマホ */
/*===========================================================*/
@media screen and (max-width: 667px){
.shop_info h2{font-size: 24px;}
#catch figure.box_img1{width: 100%!important;margin-bottom: 20px;}
#catch .modal_box .over_box{padding: 0 20px 50px 20px;}
#catch .modal_box .btn_close{
    top: 10px;
    right: 10px;
    
}
#page_title .page_title_box p:first-of-type{font-size: calc(1rem + 12px);}
#main .main_box {
    width: 80%;
}
#main .sns_link{top: 90%;}
}


/*===========================================================*/
/* IE */
/*===========================================================*/
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none){



}


/*===========================================================*/
/* Firefox */
/*===========================================================*/
@-moz-document url-prefix(){

}