@charset "UTF-8";
.pc {}
.sp {display: none;}

/* Common Colors *
AAI purple rgb(77,33,124)
red (180,0,0)
bg_gray (245,245,245)
black (55,55,55)
green (24,157,78)
aqua (30,155,225)
*/


/**************************** common inner ********************************/
.common_inner {
width:calc(100% - 160px);
margin-left: 80px;
margin-right:80px;
}
.basic_inner {
width:860px;
margin:0 auto;
}
.basic_inner_dealer {
width:980px;
margin:0 auto;
}
@media screen and (min-width:1400px) {.common_inner {width:1280px; margin:0 auto;}}
@media screen and (max-width:1080px) {
.common_inner {width:calc(100% - 80px); margin-left: 40px; margin-right:40px;}
.basic_inner, .basic_inner_dealer {width:708px; margin:0 auto;}
}

.section_margin {margin-top:80px; margin-bottom:80px;}
.section_padding {padding-top:80px; padding-bottom:80px;}

.section_bodycopy {
text-align: center;
margin:0 0 50px 0;
}


/***** header *****/
header {
position: fixed;
width:100%;
height:100px;
background: #fff;
z-index: 99990;
box-shadow: 0px 0px 8px 1px rgba(0,0,0,0.0);
border-bottom:solid 0.5px rgb(77,33,124);
box-sizing:border-box;
}

.header_flex {
display: flex;
flex-wrap: nowrap;
align-items: center;
align-content: center;
justify-content: flex-start;
}

.header_logo {
width:280px;
height:100px;
margin:0;
background: url("../img/logo/logo_allaccess.svg") center center / contain no-repeat, linear-gradient(135deg, rgb(77,33,124)0%, rgb(77,33,124)50%, rgb(77,33,124)100%);
}

.header_logo a { display: block; width: 100%; height: 100%;}

#global_menu {
width:calc(100% - 280px - 85px);
margin-right:85px;
}

.global_menu_flex {
display: flex;
flex-wrap: nowrap;
align-items: center;
align-content: center;
justify-content: flex-end;
}

.global_menu_flex li {
text-align: center;
font-weight: 500;
line-height: 1.2em;
border-right: solid 0.5px rgb(77,33,124);
padding:0 1.6em 0 0.8em;
margin:0 0.8em 0 0;
font-size:100%;
}

.global_menu_flex li:last-child {
margin:0 0em 0 0;
}

.global_menu_flex li span {
font-size: 100%;
}

.global_menu_flex li:hover {
color: rgb(77,33,124);
cursor: pointer;
transition: all 0.3s ease 0s;
}

.global_menu_brand {
display: none;
position: fixed;
width:100%;
height:auto;
top:100px;
background: rgba(0,0,0,0.9);
color:white;
padding:20px 0%;
}
.global_menu_dealer, .global_menu_support, .global_menu_aboutus {
display: none;
position: fixed;
width:100%;
height:auto;
top:100px;
background: rgba(0,0,0,0.9);
box-sizing:border-box;
color:white;
padding-top:20px;
padding-bottom:20px;
}

.global_menu_brand .brand_box {
width: calc((100% / 6) - 10px );
margin:5px 5px
}

.global_menu_brand .brand_box img {
width: 100%;
}

.global_menu_brand .brand_box figure {
width: 100%;
margin:0;
}

.global_menu_brand .brand_box figure img {
width: 100%;
}

.global_menu_brand .brand_box .logo_matchless {width:100%; height:40px; background: #333 url("../img/logo/logo_matchless.svg") center center / 90% no-repeat;}
.global_menu_brand .brand_box .logo_strymon {width:100%; height:40px; background: #333 url("../img/logo/logo_strymon.svg") center center / 90% no-repeat;}
.global_menu_brand .brand_box .logo_okko {width:100%; height:40px; background: #333 url("../img/logo/logo_okko.png") center center / 90% no-repeat;}
.global_menu_brand .brand_box .logo_hotone {width:100%; height:40px; background: #333 url("../img/logo/logo_hotone.svg") center center / 90% no-repeat;}
.global_menu_brand .brand_box .logo_valeton {width:100%; height:40px; background: #333 url("../img/logo/logo_valeton.svg") center center / 90% no-repeat;}
.global_menu_brand .brand_box .logo_laa {width:100%; height:40px; background: #333 url("../img/logo/logo_laacustom.svg") center center / 80% no-repeat;}
.global_menu_brand .brand_box .logo_gfi {width:100%; height:40px; background: #333 url("../img/logo/logo_gfi.png") center center / 80% no-repeat;}
.global_menu_brand .brand_box .logo_soundbrut {width:100%; height:40px; background: #333 url("../img/logo/logo_soundbrut.svg") center center / 90% no-repeat;}
.global_menu_brand .brand_box .logo_evidence {width:100%; height:40px; background: #333 url("../img/logo/logo_evidenceaudio.svg") center center / 90% no-repeat;}
.global_menu_brand .brand_box .logo_dlcables {width:100%; height:40px; background: #333 url("../img/logo/logo_dlcables.svg") center center / 90% no-repeat;}
.global_menu_brand .brand_box .logo_switchcraft {width:100%; height:40px; background: #333 url("../img/logo/logo_switchcraft.png") center center / 90% no-repeat;}
.global_menu_brand .brand_box .logo_musicomlab {width:100%; height:40px; background: #333 url("../img/logo/logo_musicomlab.svg") center center / 90% no-repeat;}
.global_menu_brand .brand_box .logo_sonic {width:100%; height:40px; background: #333 url("../img/logo/logo_sonicresearch.svg") center center / 90% no-repeat;}
.global_menu_brand .brand_box .logo_audient {width:100%; height:40px; background: #333 url("../img/logo/logo_audient.svg") center center / 90% no-repeat;}
.global_menu_brand .brand_box .logo_evo {width:100%; height:40px; background: #333 url("../img/logo/logo_evo.svg") center center / 80% no-repeat;}
.global_menu_brand .brand_box .logo_shidu {width:100%; height:40px; background: #333 url("../img/logo/logo_shidu.svg") center center / 80% no-repeat;}

.global_menu_support_flex {
display: flex;
flex-wrap: nowrap;
align-items: center;
justify-content: center;
}

.global_menu_support .support_box {
width: auto;
margin:5px 5px;
padding:11px 22px 12px 20px;
background: rgba(128,128,128,0.4);
border-radius: 12px;
}

.global_menu_dealer_flex {
display: flex;
flex-wrap: nowrap;
align-items: center;
justify-content: center;
}

.global_menu_dealer .dealer_box {
width: auto;
margin:5px 5px;
padding:11px 22px 12px 20px;
background: rgba(128,128,128,0.4);
border-radius: 12px;
}

.global_menu_aboutus_flex {
display: flex;
flex-wrap: nowrap;
align-items: center;
justify-content: center;
}

.global_menu_aboutus .aboutus_box {
width: auto;
margin:5px 5px;
padding:11px 22px 12px 20px;
background: rgba(128,128,128,0.4);
border-radius: 12px;
}

@-moz-document url-prefix() {
  /* for FireFox only */
.global_menu_support .support_box, .global_menu_dealer .dealer_box, .global_menu_aboutus .aboutus_box {
padding:10px 22px 12px 20px;
}
}

/************** Header & KV Responsive *****************/
@media screen and (min-width:1400px) {
.header_logo {width: 300px;}
#global_menu {width:calc(100% - 300px - 85px);}
.global_menu_brand .brand_box {
width: calc((100% / 6) - 10px );
margin:5px 5px
}
}

@media screen and (max-width:1080px) {
.header_logo {width: 240px;}
#global_menu {width:calc(100% - 240px - 85px);}
.global_menu_brand {
width:90%;
padding:20px 5%;
}
.global_menu_brand .brand_box {
width: calc((100% / 5) - 10px );
margin:5px 5px
}
}

@media screen and (max-width:880px) {
.global_menu_flex li {
text-align: center;
font-weight: 500;
line-height: 1.2em;
border-right: solid 0.5px rgb(77,33,124);
padding:0 1.2em 0 0.6em;
margin:0 0.6em 0 0;
font-size:100%;
}
.global_menu_brand {
width:80%;
padding:20px 10%;
}
.global_menu_brand .brand_box {
width: calc((100% / 4) - 10px );
margin:5px 5px
}
}

/**************************** nav_btn ********************************/
#nav_btn {
position: absolute;
width:25px;
height:25px;
right:30px;
z-index: 99999;
background: url("../img/navi_btn.svg") 0 0 / 25px no-repeat;
animation: nav_btn 0.5s steps(10) forwards;
cursor: pointer;
}
@keyframes nav_btn {
  0% { background-position: 0px 0px; }
  100% { background-position: 0px -250px; }
}

#nav_btn.active {
animation: nav_btn_active 0.5s steps(14) forwards;
}
@keyframes nav_btn_active {
  0% { background-position: 0px -250px; }
  100% { background-position: 0px -600px; }
}

#nav_btn_menu {
position: fixed;
top:0;
left:100%;
width:360px;
height:100%;
background: rgb(44,44,44);
color: white;
overflow-y: auto;
transition: 0.7s;
}

body.active {margin-left:-360px;}
#nav_btn_menu.active {left: calc(100% - 360px);}

.nav_btn_menu_flex {
width:auto;
height:auto;
margin:100px 20px 0;
}

.nav_btn_menu_flex dl {
border:solid 0.5px white;
padding:12px 20px;
margin-bottom: 20px;
}

.nav_btn_menu_flex dt {
}

.nav_btn_menu_flex li {
border-bottom:solid 0.5px rgba(0,0,0,0.5);
padding-bottom:8px;
margin-bottom:5px;
}

.nav_btn_menu_flex li:first-child {
border-top:solid 0.5px rgba(0,0,0,0.5);
padding-top:8px;
margin-top:10px;
}

.nav_btn_menu_flex li:last-child {
border-bottom:none;
padding-bottom:0;
margin-bottom:0;
}

.open_btn {
position: relative;
display: block;
cursor:pointer;
}

.open_btn::after {
position: absolute;
font-family: "Font Awesome 5 Free"; 
content:"\f055";
font-weight:900; 
right:0;
}

.open_btn.active::after {
content:"\f056";
}

.nav_btn_accordion dd {
display: none;
}

.nav_btn_accordion dt.active {
color:rgb(147,113,204);
}

.open_btn_link {
position: relative;
display: block;
cursor:pointer;
}

.open_btn_link::after {
position: absolute;
font-family: "Font Awesome 5 Free"; 
content:"\f0a9";
font-weight:900; 
right:0;
}

.nav_btn_sns_flex {
width:100%;
margin-top:50px;
display: flex;
flex-wrap:wrap;
align-items: flex-start;
justify-content: center;
}

.nav_btn_sns_flex figure {
width:calc((100% / 4) - 20px);
}

.nav_btn_sns_flex img {
width: 100%;
margin:0 0%;
}

/**************************** main ********************************/
main {
position: relative;
top:100px;
padding-bottom:calc(200px + 0px);
}


/**************************** KV ********************************/

section.KV {
width: 100%;
height: auto;
position: relative;
}

section.KV figure {
width: 100%;
height:auto;
text-align: center;
background: rgb(192,192,192);
}

section.KV figure img {
width: auto;
height:36vw;
}


/******************** Section ************************/
.section_title {
font-size: 200%;
text-align: center;
font-weight: 400;
line-height: 1.5em;
}
/*** Chrome と Safari だけ反応する ***/
.section_title rt { transform: translateY(-0.7em); }
/*** Safari 分を打ち消し ***/
::-webkit-full-page-media, :future, :root .section_title rt {
  transform: translateY(0em);
}


.section_title_bar {
width:10px;
height:10px;
margin:50px auto 70px;
border-radius: 5px;
}

.section_title_bar_home {
width:10px;
height:10px;
margin:40px auto 50px;
border-radius: 5px;
}
.section_title_bar_home.A {background: linear-gradient(135deg, rgb(120,33,154)40%, rgb(222,0,0)100%);}
.section_title_bar.A {background: linear-gradient(135deg, rgb(120,33,154)40%, rgb(222,0,0)100%);}
.section_title_bar.B {background: linear-gradient(135deg, rgb(200,0,0)10%, rgb(255,150,0)100%);}
.section_title_bar.C {background: linear-gradient(135deg, rgb(240,150,0)30%, rgb(240,240,0)100%);}
.section_title_bar.D {background: linear-gradient(135deg, rgb(240,200,0)40%, rgb(100,150,0)100%);}
.section_title_bar.E {background: linear-gradient(135deg, rgb(33,135,0)10%, rgb(0,145,222)100%);}
.section_title_bar.F {background: linear-gradient(135deg, rgb(0,145,222)30%, rgb(0,60,130)100%);}
.section_title_bar.G {background: linear-gradient(135deg, rgb(0,80,180)20%, rgb(120,33,154)100%);}


/************** footer brand *****************/
.footer_brand {
width:100%;
background: rgb(255,255,255);
padding:20px 0;
}

.footer_brand_title {
width: 80%;
margin-left: 10%;
padding-bottom: 10px;
margin-bottom: 10px;
text-align: center;
font-size: 120%;
}

.footer_brand_flex {
display: flex;
flex-wrap: wrap;
align-items: flex-start;
justify-content:flex-start;
width:calc(100% - 16%);
margin-left:8%;
}

.footer_brand_flex p {
width: 100%;
text-align: center;
margin-bottom: 10px;
}

.footer_brand_flex a {transition: ease 0.3 all;}
.footer_brand_flex a:hover {
margin-top: -3px;
background: rgb(245,245,245);
}

.footer_brand_flex .transfer {
width:calc((100% / 5 ) - 10px);
margin:5px 5px;
background: rgb(213,216,215);
border-radius: 8px;
}

.footer_brand_flex .transfer .brand_pic {
padding:15px 0;
background: rgb(223,226,225);
border-radius: 8px 8px 0 0;
}

.footer_brand_flex .transfer .brand_pic img {
width:100%;
border-radius: 8px 8px 0 0;
}

.footer_brand_flex .transfer .brand_logo img {
width:100%;
}


@media screen and (max-width:1320px) {
.footer_brand_flex .transfer {
width:calc((100% / 4 ) - 10px);
margin:5px 5px;
}
}

@media screen and (max-width:1120px) {
.footer_brand_flex .transfer {
width:calc((100% / 3 ) - 10px);
margin:5px 5px;
}
}

.footer_brand_flex2 {
display: flex;
flex-wrap: wrap;
align-items: flex-start;
justify-content:space-between;
width:calc(100% - 16%);
margin-left:8%;
}

.footer_brand_flex2 a {
flex-grow: 2;
text-align: center;
background: rgb(214,216,215);
margin:5px 5px;
border-radius: 8px;
padding:1em 0;
font-size: 92%;
font-weight: 500;
}
.footer_brand_flex2 a:hover {
background: rgb(245,245,245);
}


/************** footer *****************/
footer {
width:100%;
background: rgb(33,33,33);
border-bottom: solid 20px rgb(88,88,88);
color:rgb(155,155,155);
}

footer .common_inner {
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: space-between;
padding:100px 0 100px;
}

.footer_left {
width:45%;
}

.footer_left .logo {
width:400px;
}

.footer_right {
width:calc(100% - 45% - 5%);
margin-left:5%;
}

.footer_right .support_flex {
display: flex;
flex-wrap: nowrap;
justify-content: flex-end;
}

.footer_right .support_flex .child {
display: block;
width: calc(100% / 4);
text-align: center;
border-left:solid 0.5px rgb(88,88,88);
}

.footer_right .support_flex .child:last-child {
border-right:solid 0.5px rgb(88,88,88);
}

.footer_right .support_flex .child img {
width: 48px;
margin:0 auto 5px;
}

.footer_right .support_flex .child .text {
}


footer .copyright {

width:100%;
font-size: 88%;
color:rgb(88,88,88);
letter-spacing: 1px;
margin-top: 30px;
}



/*** table ***/
dl.basic_table {
display: flex; 
flex-wrap: wrap;
padding:0;
}
.basic_table dt {
width:20%; 
padding:15px 0 15px 0;
border-bottom:solid 3px rgb(77,33,128);
font-weight: 500;
}
.basic_table dd {
width:calc(80% - 2em); 
padding:15px 0 15px 2em;
border-bottom:solid 1px #ddd;
}


/**************************** common flex ********************************/
.flex {
display: flex;
flex-wrap: wrap;
}

.f_start {align-items: flex-start;}
.f_center {align-items:center !important;}
.f_stretch {align-items:stretch !important;}
.f_end {align-items:flex-end;}
.f_reverse {flex-direction: row-reverse;}
.nowrap {flex-wrap: nowrap;}
.between {justify-content: space-between;}
.around {justify-content: space-around;}
.center {justify-content: center !important;}

.flex .halfbox {width: calc(50% - 20px);}
.flex .thirdbox {width: calc((100% / 3 ) - 10px);}

.flex_1-1 {width:calc((100% / 1 ) - 0px);}
.flex_1-1_wide {width:calc((60% / 1 ) - 0px); padding:0 20%;}
.flex_1-1_wide80 {width:calc((80% / 1 ) - 0px); padding:0 10%;}
.flex_1-1_wide40 {width:calc((40% / 1 ) - 0px); padding:0 30%;}
.flex_1-2 {width:calc((100% / 2 ) - 25px); margin-bottom:20px;}
.flex_1-3 {width:calc((100% / 3 ) - 30px); margin-bottom:20px;}
.flex_2-3 {width:calc((100% / 3 ) * 2 - 30px); margin-bottom:20px;}
.flex_1-4 {width:calc((100% / 4 ) - 30px); margin-bottom:20px;}
.flex_1-5 {width:calc((100% / 5 ) - 32px); margin-bottom:20px;}

.flex_radiusbox_1-1 {
width:calc((100% / 1) - 40px - 0px);
background: rgba(128,128,128,0.2);
padding:15px 20px 18px;
border-radius: 12px;
margin-bottom: 15px;
}

.flex_radiusbox_1-2 {
width:calc((100% / 2) - 40px - 7.5px);
background: rgba(128,128,128,0.2);
padding:18px 20px;
border-radius: 12px;
margin-bottom: 15px;
}

.flex_radiusbox_1-3 {
width:calc((100% / 3) - 40px - 10px);
background: rgba(128,128,128,0.2);
padding:18px 20px;
border-radius: 12px;
margin-bottom: 15px;
}

.flex_radiusbox_1-1 .title, .flex_radiusbox_1-2 .title, .flex_radiusbox_1-3 .title {
font-size: 120%;
font-weight: 700;
margin-bottom:1em;
}



/******************* final text control ****************/
.subtitle {
font-weight: 700;
margin-top:2em;
padding-bottom: 0 !important;
margin-bottom: 0.5em !important;
}
.subtitle2 {
font-weight: 700;
margin-top:0em;
padding-bottom: 0 !important;
margin-bottom: 0.5em !important;
}