@charset "UTF-8";

html, div, img, h1, h2, h3, h4{
	margin: 0;
	padding: 0;
}
html {
	scroll-behavior: smooth;
}

body {
	background-color: #fff;
	color: #4d4d4d;
	font-size: 16px;
	font-family: 'Noto Sans JP', "Yu Gothic Medium", "游ゴシック Medium", "游ゴシック体", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", "Meiryo", sans-serif;
	line-height:1.5;
	min-width: 320px;
	margin: 0;
	padding: 0;
	padding-top: 60px;
}

ul, ol {
	list-style-type: none;
}

a {
	text-decoration: none;
	color: #4d4d4d;
	-webkit-transition: all .1s linear;
	-moz-transition: all .1s linear;
	-o-transition: all .1s linear;
	-ms-transition: all .1s linear;
	transition: all .1s linear;
}

a:hover { text-decoration: none; }
.sml { font-size: 12px; }
.sp  { display: none;   }
.pc  { display: block;  }

h2 {
	font-size: 50px;
	font-weight: 800;
	color: #4d4d4d;
	max-width: 2000px;
	margin: 0 auto;
	margin-bottom: 40px;
}
.h2_yellow {
	color: #e48c00;
}

img {
	image-rendering: -webkit-optimize-contrast;
}
.inner {
	width: 100%;
	/*max-width: 1300px;*/
	min-width: 320px;
	margin: 0 auto;
	padding: 0;
	background-color: #fff;
}

.inner a {
	text-decoration: none;
	color: #4d4d4d;
}

.font-red {
	color: #e00;
}


/* ================================================== */
/* HEADER */
header {
	width: 100%;
	min-width: 320px;
	background-color: #fff;
	position: fixed;
	top: 0;
	left: 0;
	height: 60px;
	margin: 0;
	padding: 0;
	box-shadow: 0px 0px 24px 0px rgba(100, 100, 100, 0.8);
	z-index: 999;
	display: flex;
	align-items: center;
}
header .logo {
	padding: 10px 0;
	margin: 0 auto;
	display: inline-block;
}
header .logo img {
	height: 30px;
}


/* ================================================== */
/* SECTION */
.section {
	overflow: hidden;
	margin: 100px 0 0 0;
	padding: 60px 0;
	text-align: center;
	max-width: 2000px;
}
.section-container {
	max-width: 700px;
	margin: 0 auto;
}


/* ================================================== */
/** TOP SECTION **/
#top {
	clear: both;
	position: relative;
	background-color: #fff;
	width: 100%;
	min-width: 320px;
	margin: 0;
	padding: 0;
}
#top h1 img {
	width: 100%;
	max-width: 2000px;
	min-width: 320px;
	margin: 0 auto;
	padding: 0;
	vertical-align: bottom;
}
#top .topbanner {
	width: 100%;
}


/* ================================================== */
/** SALE SECTION **/
#sale {
	min-width: 320px;
	background-color: #FBE5C0;
	margin: 0 auto;
/*
	background: linear-gradient( 
		
		to bottom,

		#FBE5C0 10%,
		#fce9c9 20%,
		#FDF5E8 40%);
*/		
}
#sale h2 {
	font-size: 54px;
}
#sale ul {
	margin: 0;
	padding: 0;
}
#sale p {
	font-size: 24px;
	font-weight: 700;
	margin: 10px 0 0 0;
}
#sale .small {
	font-size: 28px;
}
#sale .sale-wrapper {
	max-width: 1500px;
	margin: 0 auto;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
#sale .sale-wrapper a:hover{
	opacity: 0.9;
}
#sale .img-sale {
	margin: 0;
	padding: 10px;
	/*width: 31%;*/
	width: 100%;
	max-width: 1200px;
}
#sale .img-sale img {
	width: 100%;
	border-radius: 5px;
	/*border-radius: 16px;
	box-shadow: 0 15px 18px 0 rgba(120,120,120,0.7);
	transition: all .5s;
    top: 0;
    position: relative;
	opacity: 0.9;*/
}
#sale .img-sale img:hover {
	/*box-shadow: 0 19px 19px 0 rgba(140,140,140,0.8);
    top: -5px;*/
}
.modal{
	display: none;
	height: 100vh;
	position: fixed;
	top: 30px;
	width: 100%;
	z-index: 1;
	overscroll-behavior: contain;
    overflow-y: scroll;
}
.modal__bg{
	background: rgba(0,0,0,0.8);
	height: 100vh;
	position: absolute;
	width: 100%;
}
.modal__content{
	background: #fff;
	left: 50%;
	padding: 40px;
	position: absolute;
	top: 50%;
	transform: translate(-50%,-50%);
	width: 60%;
	height: 74%;
	overflow : auto;
}
.modal__content P {
	font-size: 14px;
	text-align: left;
	padding: 10px 0 30px 0;
}
.modal__content img {
	width: 100%;
}
.nonScroll {
    height:calc(100vh + 1px) ;
    width: 1px;
    background-color: transparent;
}
.modal__close {
	margin-top: 30px;
	font-size: 120%;
}


/* ================================================== */
/** shopinfo SECTION **/
#shopinfo {
	min-width: 320px;
	background-color: #f7f7f7;
	margin: 0 auto;
}
#shopinfo ul {
	overflow: hidden;
	width: 100%;
	max-width: 1300px;
	min-width: 320px;
	flex-wrap:wrap;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 auto;
	padding: 0;
}
#shopinfo ul li {
	width: 36%;
	background-color: #fff;
	padding: 0 10px;
}
#shopinfo ul li:nth-child(n+3) {
	padding-top: 10px;
}
#shopinfo ul li img {
	width: 100%;
	border-radius: 6px;
}
#shopinfo .flex-container {
	max-width: 1300px;
	min-width: 320px;
	display:-moz-flex;
	display:-webkit-flex;
	display:-o-flex;
	display:-ms-flex;
	flex-wrap:wrap;
	display: flex;
	justify-content: center;
	margin: 0 auto;
	padding-top: 100px;
	text-align: left;
}
#shopinfo .flex-item {
	width: 48%;
}
#shopinfo .flex-item h4 {
	font-size: 20px;
	margin: 0 8%;
}
#shopinfo .flex-item p {
	font-size: 16px;
	font-weight: 400;
	margin: 30px 8%;
	line-height: 1.6;
}
#shopinfo .googlemap {
	filter: grayscale(20%);
    -webkit-filter: grayscale(20%);
}
#shopinfo .businesstype-style {
	width: 92%;
	max-width: 1200px;
	min-width: 320px;
	background-color: #FFEFEF;
	margin: 0 auto;
	margin-top: 80px;
	padding: 30px 10px;
}
#shopinfo .businesstype-tech {
	width: 92%;
	max-width: 1200px;
	min-width: 320px;
	background-color: #EFF3FF;
	margin: 0 auto;
	margin-top: 30px;
	padding: 30px 10px;
}
#shopinfo .img-logo {
	text-align: left;
	margin-top: 10px;
}
#shopinfo .flex-item-2 .img-logo img {
	width: 270px;
	padding: 0;
	
}
#shopinfo .flex-container-2 {
	min-width: 320px;
	display:-moz-flex;
	display:-webkit-flex;
	display:-o-flex;
	display:-ms-flex;
	flex-wrap:wrap;
	display: flex;
	justify-content: center;
	margin: 0 auto;
	/*margin-top: 40px;*/
	padding: 0;
	text-align: left;
}
#shopinfo .flex-item-2 {
	width: 47%;
	padding: 0 10px;
}
#shopinfo .flex-item-2 h5 {
	font-size: 16px;
	margin: 0;
}
#shopinfo .flex-item-2 .businesstype_text p {
	margin-top: 30px;
	font-size: 17px;
}
#shopinfo .flex-item-2 p {
	font-size: 15px;
	font-weight: 500;
	margin: 20px 0 0 0;
}
#shopinfo .flex-item-2 .text_style {
	color: #E50212;
}
#shopinfo .flex-item-2 .text_tech {
	color: #1D2088;
}
#shopinfo .flex-item-2 .img-businesstype img {
	width: 84%;
	margin-left: 30px;
	/*padding-left: 30px;*/
	border-radius: 10px;
}
#shopinfo .sns {
	padding-top: 22px;
}
#shopinfo .sns .flex-container {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	padding: 0;
}
#shopinfo .sns .flex-item {
	flex-basis: 80px;
	margin: 0 30px;
}
#shopinfo p {
	font-size: 24px;
	font-weight: 700;
}
#shopinfo .sns img {
	width: 100%;
}


/* ================================================== */
/** parking SECTION **/
#parking {
	min-width: 320px;
	background-color: #f8eede;
	margin: 0 auto;
}
#parking ul {
	overflow: hidden;
	width: 100%;
	max-width: 1300px;
	min-width: 320px;
	flex-wrap:wrap;
	display: flex;
	justify-content: center;
	margin: 0 auto;
	padding: 0;
}
#parking ul li {
	width: 48%;
	padding: 0 8px;
}
#parking ul li img {
	width: 96%;
	border-radius: 4px;
}


/* ================================================== */
/** ITEM SECTION **/
#item {
	min-width: 320px;
	background-color: #f7f7f7;
	margin: 0 auto;
}
#item h2 {
	margin-bottom: 10px;
}
#item h2 img {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
}
#item .flex-container {
	max-width: 1300px;
	min-width: 320px;
	display:-moz-flex;
	display:-webkit-flex;
	display:-o-flex;
	display:-ms-flex;
	flex-wrap:wrap;
	display: flex;
	justify-content: center;
	margin: 0 auto;
	padding: 0;
}
#item .flex-item {
	width: 46%;
	background-color: #fff;
	border-bottom: 20px solid #f7f7f7;
	box-shadow : 0 0 0 20px #f7f7f7;
	margin: 0;
	padding: 20px 0;
}
#item .flex-item img{
	width: 80%;
	padding: 0;
}

#item .gold_platinum img{
	width: 96%;
	max-width: 1200px;
	margin: 0 auto;
}


/* ================================================== */
/** genre SECTION **/
#genre {
	min-width: 320px;
	background-color: #f8eede;
	margin: 0 auto;
}
#genre .js-details {
	width: 96%;
	max-width: 1100px;
	background-color: #fff;
	margin: 0 auto;
	text-align: left;
	margin-bottom: 10px;
}
#genre .icon {
	display: block;
	position: absolute;
	right: 14px;
	width: 30px;
	margin-left: 6px;
	margin-right: 10px;
	flex-shrink: 0;
	transform-origin: center 43%;
	transition: transform 0.4s;
}

/*details[open] .icon {*/
/*  transform: rotate(180deg);*/
/*}*/

/* is-openedクラスが付与されたときのスタイル */
details.is-opened .icon {
	transform: rotate(180deg);
}

/* アイコンのバーのスタイル */
#genre .icon::before,
#genre .icon::after {
	content: "";
	position: absolute;
	display: block;
	width: 18px;
	height: 3px;
	background-color: #e48c00;
}
#genre .icon::before {
	left: 0;
	transform: rotate(45deg);
}
#genre .icon::after {
	right: 0;
	transform: rotate(-45deg);
}
summary {
	/* display: list-item;以外を指定してデフォルトの三角形アイコンを消します */
	display: block;
}
summary::-webkit-details-marker {
	/* Safariで表示されるデフォルトの三角形アイコンを消します */
	display: none;
}
#genre .summary_inner {
	cursor: pointer;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	padding: 12px 24px;
	position: relative;
}
#genre .summary_inner ul {
	width: 100%;
	max-width: 1000px;
	min-width: 320px;
	flex-wrap: wrap;
	display: flex;
	justify-content: left;
	margin: 0 auto;
	padding: 0;
}
#genre .summary_inner ul li:nth-child(1) {
	width: 18%;
}
#genre .summary_inner ul li:nth-child(2) {
	width: 72%;
	padding: 0 20px;
}
#genre .summary_inner ul img {
	width: 98%;
	max-width: 150px;
}
#genre .summary_inner ul li h4 {
	font-size: 18px;
	padding-top: 8px;
}
#genre .summary_inner ul li p {
	font-size: 14px;
}

/* --------アコーディオンの中身のスタイル-------- */
#genre .content {
	overflow: hidden;
	background-color: #FDF5E8;
	background-color: #fffaf2;
	border-top: 1px solid #FBE5C0;
	/* details直下のタグにpaddingを設定すると挙動がおかしくなるので、ここには指定しない */
}
#genre .content_inner {
	padding: 20px 20px 50px 20px;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}
#genre .content_inner_flexitem {
	flex-basis: 50%;
	padding: 0;
	padding-top: 32px;
}
#genre .content_inner_content {
	display: flex;
	flex-wrap: wrap;
}
#genre .content_inner_content_flexitem img {
	width: 98%;
	max-width: 120px;
}
#genre .content_inner_content_flexitem:nth-child(1) {
	flex-basis: 28%;
	text-align: center;
	padding-right: 0px;
}
#genre .content_inner_content_flexitem:nth-child(2) {
	flex-basis: 66%;
	padding: 0 16px 0 7px;
}
#genre .content_inner_content_flexitem h4 {
	font-size: 14px;
	font-weight: 800;
}
#genre .content_inner_content_flexitem p {
	font-size: 13px;
	margin: 8px 0 0 0;
}


/* ================================================== */
/** Purchase SECTION **/
#Purchase {
	min-width: 320px;
	background-color: #f7f7f7;
	margin: 0 auto;
}
#Purchase .purchase-method {
	width: 96%;
	max-width: 1300px;
	background-color: #faeace;
	border-radius: 24px;
	margin: 0 auto;
	padding: 40px 0;
}
#Purchase .purchase-method:nth-child(1) {
	margin-bottom: 40px;
}
#Purchase .purchase-method h3 {
	font-size: 30px;
	vertical-align: middle;
	margin: 0 auto;
	padding-bottom: 30px;
}
#Purchase .purchase-method h3 img{
	width: 48px;
	vertical-align: middle;
    display: inline-block;
	margin: 0 12px 0 0;
	padding: 0;
}
#Purchase .flex-container {
	display: flex;
	flex-wrap:wrap;
	justify-content: center;
}
#Purchase .three-things {
	color: #fff;
	font-weight: 700;
	font-size: 17px;
	padding-bottom: 30px;
	margin: 0 auto;
	text-align: center;
}
#Purchase .three-things .flex-item {
	background-color: #f1ba5a;
	border-radius: 30px;
	width: 200px;
	margin: 0 14px;
	padding: 16px 0;
	display: flex;
	align-items: center;
	justify-content: center;
}
#Purchase .catch {
	font-size: 20px;
	padding-bottom: 30px;
}
#Purchase .step {
	max-width: 1300px;
	min-width: 320px;
	margin: 0 auto;
}
#Purchase .step .flex-item {
	flex-basis: 30%;
	background-color: #fff;
	border-radius: 12px;
	padding: 30px 0px;
	margin: 0 10px;
}
#Purchase .step .flex-item img {
	width: 60%;
	max-width: 200px;
	margin: 0;
	padding: 14px 0;
}
#Purchase .step h5 {
	font-size: 22px;
	margin: 0;
	padding-bottom: 6px;
}
#Purchase .step h6 {
	font-size: 18px;
	font-weight:normal;
	margin: 0;
	padding: 0;
}
#Purchase .step p {
	margin: 0 auto;
	text-align: left;
	width: 86%;
	font-size: 14px;
}
#Purchase .tel {
	background-color: #fff;
	max-width: 340px;
	border-radius: 10px;
	box-shadow: 0 10px 10px 0 rgba(120,120,120,0.4);
	font-size: 40px;
	margin: 0 auto;
	margin-top: 10px;
	padding: 6px 12px;
}
#Purchase .tel img {
	max-width: 46px;
	padding: 0 10px 8px 0;
	vertical-align: middle;
    display: inline-block;
}
#Purchase .reception-time {
	font-size: 15px;
	padding-top: 16px;
}


/* ================================================== */
/** REASON SECTION **/
#reason {
	min-width: 320px;
	background-color: #f8eede;
	margin: 0 auto;
}
#reason .flex-container {
	width: 98%;
	max-width: 1300px;
	min-width: 320px;
	display:-moz-flex;
	display:-webkit-flex;
	display:-o-flex;
	display:-ms-flex;
	flex-wrap:wrap;
	display: flex;
	justify-content: center;
	margin: 0 auto;
	padding: 0;
}
#reason .flex-item {
	width: 33%;
	background-color: #fff;
	border-bottom: 3px solid #f8eede;
	box-shadow : 0 0 0 3px #f8eede;
	margin: 0;
	padding: 20px 0;
}
#reason .flex-item img{
	width: 70%;
	max-width: 250px;
	padding: 0;
	margin-bottom: 20px;
	border-radius: 4px;
}
#reason h3 {
	font-size: 19px;
	padding-bottom: 10px;
}
#reason p {
	margin: 0 auto;
	text-align: left;
	width: 74%;
	font-size: 14px;
}


/* ================================================== */
/** BLIX SECTION **/
#blix {
	min-width: 320px;
	background-color: #FBE5C0;
	background-color: #E2D591;
	margin: 0 auto;
}
#blix .blix-wrapper {
	max-width: 1500px;
	margin: 0 auto;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
#blix .blix-wrapper a:hover{
	opacity: 0.8;
}
#blix .img-blix {
	margin: 0;
	padding: 10px;
	width: 100%;
	max-width: 1200px;
}
#blix .img-blix img {
	width: 100%;
	border-radius: 5px;
}



/* ================================================== */
/** QA SECTION **/
#QA {
	min-width: 320px;
	background-color: #fff;
	margin: 0 auto;
	padding: 100px 0 0 0;
}
#QA #menu-container a:hover {
	opacity: 1;
}
#QA #menu-container {
	border-bottom: 0px;
	text-align: left;
}
#QA #menu-container .menu-submenu {
	padding: 20px 24px;
}
#QA #menu-container .menu-list {
	padding-left: 0;
	display: block;
	width: 96%;
	margin: 0 auto;
	max-width: 1274px;
	background: #FDF5E8; /* Questionの背景色 */
	/*border-top: 1px solid #965900; /* Question、1問目の線の色 */
}
#QA #menu-container .menu-list li.accordion-toggle, #QA #menu-container .menu-list .menu-login {
	font-size: 20px;
	font-weight: normal;
	padding: 8px 50px 8px 20px;
	text-transform: uppercase;
	border-top: 0px;
}
#QA #nav {
	border-bottom: 10px solid #fff; /* Question、2問目以降の線の色 */
}
#QA .accordion-toggle a {
	font-weight: bold;
}
#QA .accordion-toggle, #QA .accordion-content {
	cursor: pointer;
	position: relative;
	letter-spacing: 1px;
}
#QA .accordion-content {
	display: none;
	font-size: 18px;
	line-height: 230%;
	background: #fff; /* Anserの背景色 */
	border-bottom: 1px solid #fff0e4; /* Anserの下線の色 */
}
#QA .accordion-toggle a:before, #QA .accordion-toggle a:after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: 20px;
	width: 23px;
	height: 3px;
	margin-top: -1px;
	background-color: #e48c00; /* 「+」の色 */
	transform-origin: 50% 50%;
	transition: all 0.3s ease-out;
}
#QA .accordion-toggle a:before {
	transform: rotate(-90deg);
	opacity: 1;
	z-index: 2;
}
#QA .accordion-toggle.active-tab {
	background: #FDF5E8; /* Question押したときの背景色 */
	transition: all 0.3s ease;
}
#QA .accordion-toggle a.active:before {
	transform: rotate(0deg);
	background: #e48c00 !important; /* 「-」の色 */
}
#QA .accordion-toggle a.active:after {
	transform: rotate(180deg);
	background: #e48c00 !important; /* 「-」の色 */
	opacity: 0;
}
#QA .question {
	font-size: 34px;
}
#QA .anser{
	font-size: 34px;
}
#QA .flex-container {
	max-width: 1300px;
	min-width: 320px;
	display:-moz-flex;
	display:-webkit-flex;
	display:-o-flex;
	display:-ms-flex;
	flex-wrap: wrap;
	display: flex;
	justify-content: left;
	margin: 0 auto;
	padding: 0;
}
#QA .col1 {
	flex-basis: 6%;
}
#QA .col2 {
	flex-basis: 86%;
	padding-top: 14px;
}
#QA .col3 {
	flex-basis: 86%;
}


/* ================================================== */
/* FOOTER */
footer {
	width: 100%;
	margin-top: 50px;
	padding: 0;
}
footer a{
	text-decoration: none;
}
#gFooter a.deco-off:hover {
	opacity: 1;
}

/* #gFooter__nav */
#gFooter__nav {
	border-top: solid 1px #ddd;
	border-bottom: 1px solid #ddd;
	padding: 30px 0;
}
#gFooter .innerWrap {
	max-width: 1300px;
	margin: 0 auto;
}
.gFooter__navLists--lv1 {
	width: 94%;
	display: table;
	table-layout: fixed;
}
.gFooter__navList--lv1 {
	width: 100%;
	display: table-cell;
	border-left: solid 1px #ddd;
	padding: 0 10px;
}
.gFooter__navList--lv1 > a {
	color: #555;
	font-size: 14px;
	font-weight: bold;
	line-height: 2.5em;
	display: block;
}
.gFooter__navLists--lv2 {
	margin: -5px 0 0;
	padding-left: 0;
}
.gFooter__navList--lv2 {
	list-style-type: disc;
	margin: 15px 0 0 15px;
}
.gFooter__navList--lv2 a {
	font-size: 12px;
	color: #555;
	line-height: 1.4;
}
.gFooter__navList--lv2 a span {
	font-size: 10px;
}
#gFooter__nav a:hover {
	opacity: .7;
}

/* #gFooter__sign */
#gFooter__sign {
	padding: 30px 0;
}
.gFooter__signCopy {
	font-size: 10px;
	color: #333;
}
.gFooter_logo_aacd {
	text-align: center;
	margin: 0 auto;
	padding-bottom: 20px;
}
.gFooter_logo_aacd img{
	width: 100%;
	max-width: 280px;
}

#licensing {
  width: 450px;
  color: #545454;
  font-size: 14px;
  line-height: 1.5em;
  text-align: center;
  margin: 0 auto;
}


