/*
 * StyleName: common.css
 * Version: 3.0.8
 */
/*!
 * normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css
 */
button,hr,input{overflow:visible}progress,sub,sup{vertical-align:baseline}[type=checkbox],[type=radio],legend{box-sizing:border-box;padding:0}html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:ButtonText dotted 1px}fieldset{padding:.35em .75em .625em}legend{color:inherit;display:table;max-width:100%;white-space:normal}textarea{overflow:auto}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}

/*=============================================
 * reset by FC Dev
 *=============================================*/
a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,main,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;font-size:100%;font:inherit;vertical-align:baseline;outline:0;border:0}caption,h1,h2,h3,h4,h5,h6,table,td,th{font-weight:400;font-style:normal}img{transform:translateZ(0);-moz-transform:translateZ(0);-webkit-transform:translateZ(0)}img,input{vertical-align:middle}h1,h2,h3,h4,h5,h6{margin:0;padding:0;border:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section{display:block}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:"";content:none}table{border-spacing:0;border-collapse:collapse}hr{margin:0;padding:0}iframe{margin:0;padding:0;border:0}button,fieldset,form,input,label,legend,optgroup,option,select,textarea{margin:0;padding:0;outline:0}a,abbr,acronym,br,cite,code,del,dfn,em,img,ins,kbd,object,q,samp,span,strong,var{margin:0;padding:0;font-style:normal;font-weight:inherit;border:0}

/*=============================================
 * reset - custom
 *=============================================*/
:before,
:after {
   pointer-events: none;
}

* {
   /* fix font boosting on mobile Chrome */
   max-height: 1000000px;
}

*:first-child+html img,
* html img {
   vertical-align: top;
}

html,
body {
   line-height: 1;
   word-spacing: normal;
   min-height: 100%;
   text-size-adjust: 100%;
   -moz-text-size-adjust: 100%;
   -webkit-text-size-adjust: 100%;
   overflow-scrolling: touch;
   -moz-overflow-scrolling: touch;
   -webkit-overflow-scrolling: touch;
}

html.break-jump,
.break-jump body {
   margin: auto;
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   overflow: auto;
}

input, button, select, optgroup, option, textarea, label {
   box-sizing: border-box;
   -moz-box-sizing: border-box;
   -webkit-box-sizing: border-box;
}

select, button, input:button,
input:submit,
input:reset {
   cursor: pointer;
}

strong {
   font-weight: 600;
}

em {
   font-style: italic;
}

small {
   font-size: smaller;
}

del {
   text-decoration: line-through;
}

a {
   color: inherit;
   text-decoration: none;
}

a:hover {
   text-decoration: underline;
}

a:focus,
a:active {
   outline: none;
   -moz-outline-style: none;
   ie-dummy: expression(this.hideFocus=true);
}

a[x-apple-data-detectors] {
   color: inherit !important;
   text-decoration: none !important;
   font-size: inherit !important;
   font-family: inherit !important;
   font-weight: inherit !important;
   line-height: inherit !important;
}

/*=============================================
 * lazyload
 *=============================================*/
img:not([src]) {
   visibility: hidden;
}

img[data-src],
img[data-srcset] {
   display: block;
   min-height: 1px;
}

.i-wrapper {
   width: 100%;
   height: 0;
   padding-bottom: 66.67%;
   position: relative;
}

.i-wrapper img {
   width: 100%;
   height: auto;
   position: absolute;
}

/*=============================================
 * wrap
 *=============================================*/
.wrap {
   width: 100%;
   max-width: 900px;
   margin: 0 auto;
   padding: 0;
   position: relative;
   box-sizing: border-box;
}

@media screen and (max-width: 1023px) {
   .wrap {
      max-width: 720px;
   }
}

@media screen and (max-width: 767px) {
   .wrap {
      max-width: 100%;
      padding: 0 20px;
   }
}

img {
   width: auto;
   max-width: 100%;
   height: auto;
}

.pc {
   display: block;
}

.ipd {
   display: none;
}

.sp {
   display: none;
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
   .ipd {
      display: block;
   }
}

@media screen and (max-width: 767px) {
   .pc {
      display: none;
   }

   .sp {
      display: block;
   }
}

/*=============================================
 * text vertical
 *=============================================*/
.txt-vertical {
   cursor: vertical-text;
   writing-mode: vertical-rl;
   -o-writing-mode: vertical-rl;
   -ms-writing-mode: vertical-rl;
   -ms-writing-mode: tb-rl;
   -moz-writing-mode: vertical-rl;
   -webkit-writing-mode: vertical-rl;
   text-orientation: upright;
   word-wrap: break-word;
}

.txt-vertical .int {
   writing-mode: lr-tb;
   -o-writing-mode: horizontal-tb;
   -ms-writing-mode: horizontal-tb;
   -ms-writing-mode: lr-tb;
   -moz-writing-mode: horizontal-tb;
   -webkit-writing-mode: horizontal-tb;
   display: inline-block;
   text-align: center;
   line-height: 1.5em;
}

.txt-normal .int {
   height: 1.1em;
}

.txt-vertical-x>* {
   writing-mode: rl-tb;
   -o-writing-mode: vertical-tb;
   -ms-writing-mode: vertical-tb;
   -ms-writing-mode: rl-tb;
   -moz-writing-mode: vertical-tb;
   -webkit-writing-mode: vertical-tb;
   transform: rotate(90deg);
   -o-transform: rotate(90deg);
   -ms-transform: rotate(90deg);
   -moz-transform: rotate(90deg);
   -webkit-transform: rotate(90deg);
   display: inline-block;
   white-space: nowrap;
   word-wrap: break-word;
   width: 1px;
   line-height: 1;
}

.txt-vertical .txt-latin {
   cursor: vertical-text;
   direction: rtl;
   writing-mode: vertical-rl;
   -o-writing-mode: vertical-rl;
   -ms-writing-mode: vertical-rl;
   -ms-writing-mode: tb-rl;
   -moz-writing-mode: vertical-rl;
   -webkit-writing-mode: vertical-rl;
   text-orientation: sideways-right;
   -o-text-orientation: sideways-right;
   -ms-text-orientation: upright;
   -ms-text-orientation: sideways-right;
   -moz-text-orientation: sideways-right;
   -webkit-text-orientation: sideways-right;
}

@-moz-document url-prefix() {
   .txt-vertical .txt-latin {
      position: relative;
      left: 4px;
   }
}

/*=============================================
 * custom
 *=============================================*/
a {
   color: inherit;
   transition: all 0.3s;
}

a:hover {
   text-decoration: none;
}

.txt-c {
   text-align: center;
}

@font-face {
  font-family: 'A1 Gothic';
  src: url('../fonts/AP-OTF-A1GothicStd-Medium.otf') format('opentype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'A1 Gothic';
  src: url('../fonts/AP-OTF-A1GothicStd-Bold.otf') format('opentype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

.fnt-a1gothic-m {
   font-family: 'A1 Gothic', sans-serif;
   font-weight: 500;
}

.fnt-a1gothic-b {
   font-family: 'A1 Gothic', sans-serif;
   font-weight: 700;
}