:root{
/*16px min375 max1440*/
--f-7-10: clamp(0.438rem, 0.371rem + 0.282vw, 0.625rem); /*7px-10px*/
--f-8-11: clamp(0.5rem, 0.434rem + 0.282vw, 0.688rem); /*8px-11px*/
--f-10-12: clamp(0.625rem, 0.581rem + 0.188vw, 0.75rem); /*10px-12px*/
--f-10-14: clamp(0.625rem, 0.537rem + 0.376vw, 0.875rem); /*10px-14px*/
--f-10-16: clamp(0.625rem, 0.493rem + 0.563vw, 1rem); /*10px-16px*/
--f-10-36: clamp(0.625rem, 0.053rem + 2.441vw, 2.25rem); /*10px-36px*/
--f-12-14: clamp(0.75rem, 0.706rem + 0.188vw, 0.875rem); /*12px-14px*/
--f-12-16: clamp(0.75rem, 0.662rem + 0.376vw, 1rem); /*12px-16px*/
--f-14-16: clamp(0.875rem, 0.831rem + 0.188vw, 1rem); /*14px-16px*/
--f-16-18: clamp(1rem, 0.956rem + 0.188vw, 1.125rem); /*16px-18px*/
--f-16-20: clamp(1rem, 0.912rem + 0.376vw, 1.25rem); /*16px-20px*/
--f-18-24: clamp(1.125rem, 0.993rem + 0.563vw, 1.5rem); /*18px-24px*/
--f-20-26: clamp(1.25rem, 1.118rem + 0.563vw, 1.625rem); /*20px-26px*/
--f-20-36: clamp(1.25rem, 0.898rem + 1.502vw, 2.25rem); /*20px-36px*/
--f-24-36: clamp(1.5rem, 1.236rem + 1.127vw, 2.25rem); /*24px-36px*/

--gap-side: clamp(1.25rem, 0.59rem + 2.817vw, 3.125rem); /*20px-50px*/
--gap-xl: clamp(4.375rem, 3.715rem + 2.817vw, 6.25rem); /*70px-100px*/
--gap-l: clamp(2.5rem, 2.06rem + 1.878vw, 3.75rem); /*40px-60px*/
--gap-m: clamp(1.688rem, 1.401rem + 1.221vw, 2.5rem); /*27px-40px*/
--gap-s: clamp(0.813rem, 0.658rem + 0.657vw, 1.25rem); /*13px-20px*/

--w10: clamp(0.313rem, 0.202rem + 0.469vw, 0.625rem); /*5px-10px*/
--w20: clamp(0.625rem, 0.405rem + 0.939vw, 1.25rem); /*10px-20px*/
--w30: clamp(0.938rem, 0.607rem + 1.408vw, 1.875rem); /*15px-30px*/
--w40: clamp(1.25rem, 0.81rem + 1.878vw, 2.5rem); /*20px-40px*/
--w50: clamp(1.563rem, 1.012rem + 2.347vw, 3.125rem); /*25px-50px*/
--w60: clamp(1.875rem, 1.215rem + 2.817vw, 3.75rem); /*30px-60px*/
--w70: clamp(2.188rem, 1.417rem + 3.286vw, 4.375rem); /*35px-70px*/
--w80: clamp(2.5rem, 1.62rem + 3.756vw, 5rem); /*40px-80px*/
--w90: clamp(2.813rem, 1.822rem + 4.225vw, 5.625rem); /*45px-90px*/
--w100: clamp(3.125rem, 2.025rem + 4.695vw, 6.25rem); /*50px-100px*/
--w150: clamp(4.688rem, 3.037rem + 7.042vw, 9.375rem); /*75px-150px*/
--w200: clamp(6.25rem, 4.049rem + 9.39vw, 12.5rem); /*100px-200px*/

  /* Easing functions : https://easings.net/ja */
  --easeInSine: cubic-bezier(0.12, 0, 0.39, 0);
  --easeOutSine: cubic-bezier(0.61, 1, 0.88, 1);
  --easeInOutSine: cubic-bezier(0.37, 0, 0.63, 1);

  --easeInQuad: cubic-bezier(0.11, 0, 0.5, 0);
  --easeOutQuad: cubic-bezier(0.5, 1, 0.89, 1);
  --easeInOutQuad: cubic-bezier(0.45, 0, 0.55, 1);

  --easeInCubic: cubic-bezier(0.32, 0, 0.67, 0);
  --easeOutCubic: cubic-bezier(0.33, 1, 0.68, 1);
  --easeInOutCubic: cubic-bezier(0.65, 0, 0.35, 1);

  --easeInQuart: cubic-bezier(0.5, 0, 0.75, 0);
  --easeOutQuart: cubic-bezier(0.25, 1, 0.5, 1);
  --easeInOutQuart: cubic-bezier(0.76, 0, 0.24, 1);
  
  --easeInQuint: cubic-bezier(0.64, 0, 0.78, 0);
  --easeOutQuint: cubic-bezier(0.22, 1, 0.36, 1);
  --easeInOutQuint: cubic-bezier(0.83, 0, 0.17, 1);

  --easeInExpo: cubic-bezier(0.7, 0, 0.84, 0);
  --easeOutExpo: cubic-bezier(0.16, 1, 0.3, 1);
  --easeInOutExpo: cubic-bezier(0.87, 0, 0.13, 1);

  --easeInCirc: cubic-bezier(0.55, 0, 1, 0.45);
  --easeOutCirc: cubic-bezier(0, 0.55, 0.45, 1);
  --easeInOutCirc: cubic-bezier(0.85, 0, 0.15, 1);

  --easeInBack: cubic-bezier(0.36, 0, 0.66, -0.56);
  --easeOutBack: cubic-bezier(0.34, 1.56, 0.64, 1);
  --easeInOutBack: cubic-bezier(0.68, -0.6, 0.32, 1.6);

  --w-content: 1200px;
  --w-modalmenu: 50px;
  --c-font: #000;
  --c-gray: #575757;
  --c-gray2: #8d8d8d;
  --c-red: #C8161D;
  --c-pale: #F0EEE4;
  --c-wht: #FFF;
  --ring-gap : -5vw;

  --header-height: 80px;

  /*SP*/
  @media screen and (max-width : 768px){
    --ring-gap : -30vw;
    --header-height: 55px;
  }

}

.f10{ font-size: var(--f-7-10)!important;}
.f11{ font-size: var(--f-8-11)!important;}
.f12{ font-size: var(--f-10-12)!important;}
.f14{ font-size: var(--f-12-14)!important;}
.f18{ font-size: var(--f-16-18)!important;}
.f20{ font-size: var(--f-16-20)!important;}
.f24{ font-size: var(--f-18-24)!important;}

.ac{
  text-align: center!important;
}
.al{
  text-align: left!important;
}
.ar{
  text-align: right!important;
}

.mtxl{margin-top: var(--gap-xl);}
.mtl{margin-top: var(--gap-l);}
.mt{margin-top: var(--gap-m);}
.mts2{margin-top: var(--gap-s2);}
.mts{margin-top: var(--gap-s);}
.mtxs{margin-top: var(--w10);}

/*SP*/
@media screen and (min-width : 769px){
  .pc_ac{
    text-align: center!important;
  }
  .pc_al{
    text-align: left!important;
  }
}


/*SP*/
@media screen and (max-width : 768px){
  .sp_ac{
    text-align: center!important;
  }
  .sp_al{
    text-align: left!important;
  }
}

/* ===================================================================================
COMMON
====================================================================================== */

body {
  margin: 0;
  padding: 0;
  font-family: "Poppins", 'Noto Sans JP', sans-serif;
  font-size: var(--f-14-16);
  color: var(--c-font);
  position: relative;
  text-align: center;
}

/* body.is-menuOpen{
  position: fixed;
  width:100%;
} */

*, *::before, *::after {
  box-sizing: border-box; }

main {
  display: block;
}

h1, h2, h3,
h4, h5, h6 {
  margin: 0;
  /* font-size: inherit; */
  /* font-family: 'Roboto Condensed', sans-serif; */
  font-weight: 700;
  line-height: 1.4; }

/* Grouping content
   ========================================================================== */
address {
  font-style: normal;
  }

figure {
  margin: 0; }

hr {
  height: 1px;
  margin: 0;
  padding: 0;
  border: 0;
  overflow: hidden; }

pre {
  font-family: monospace, monospace;
  font-size: inherit; }

em{font-style: normal;display: inline-block;}


/* Links
   ========================================================================== */
a {
  color: currentColor;
  text-decoration: none;
  outline: 0;
  background-color: transparent;
  transition: opacity 450ms cubic-bezier(0.23, 1, 0.32, 1);
  /* cursor: pointer; */
  }
  
a:hover {
  color: var(--c1);
  }

/* Text-level semantics
   ========================================================================== */
p {
  margin: 0; }

abbr[title] {
  border-bottom: 0;
  text-decoration: underline dotted; }

b, strong {
  font-weight: 700; }

em {font-style: normal; text-decoration: inherit;}

code, kbd, samp {
  font-family: monospace, monospace;
  font-size: inherit; }


sup, sub {
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
  position: relative; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

/* Lists
   ========================================================================== */
dl, ol, ul,
dt, dd, li {
  margin: 0;
  padding: 0;
  list-style: none;
  list-style-image: none; }

/* dt {
  font-weight: 700; } */

/* Tables
   ========================================================================== */
table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  table-layout: fixed; 
  font-size: var(--text-sm);
}


td, th {
  padding: 0; }

/* Embedded content
   ========================================================================== */
img, svg,
audio, video,
canvas, iframe {
  vertical-align: middle; }

img[src$=".svg"] {
	width: 100%;
}
img {
  max-width: 100%;
  border: 0; }

svg:not(:root) {
  overflow: hidden; }

/* Interactive
   ========================================================================== */
details {
  display: block; }

summary {
  display: list-item; }

/* Misc
   ========================================================================== */
template,
[hidden] {
  display: none; }
  
/* Forms
========================================================================== */
button,
input,
optgroup,
select,
textarea {
  line-height: 1.5;
  border: 1px solid #bbbbbb;
  border-radius: 5px;
  margin: 0;
  padding: 7px 10px;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  /* font-size: 1.6rem; */
  font-weight: 500;
  outline: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

button{
  border: none;
}

select{width: 100%;}

button,
input {
  overflow: visible; }

button{  
  padding: 7px 5px;
}

button,
select {
  text-transform: none; }

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  cursor:pointer;
  color: currentColor;
  background: var(--black);
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  padding: 0;
  border: 0; }

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: dotted 1px ButtonText; }

fieldset {
  margin: 0;
  padding: 0;
  border: 0; }

textarea {
  overflow: auto;
  resize: vertical;
  width: 100%;}

[type="checkbox"],
[type="radio"] {
  padding: 0;
  box-sizing: border-box; }

[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {
  height: auto; }

[type="search"] {
  outline-offset: -2px;
  -webkit-appearance: textfield; }
  [type="search"]::-webkit-search-decoration {
	-webkit-appearance: none; }

::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button; }
  

input[type="file"] {
  padding: 0;
  cursor: pointer;
  border: none;
  border-radius: 0;
}
  
  
::placeholder {
  color: #ccc;
}

/* IE */
:-ms-input-placeholder {
  color: #ccc;
}

/* Edge */
::-ms-input-placeholder {
  color: #ccc;
}

/* ===================================================================================
ANIMATION
====================================================================================== */

/* 上に向かってフェードイン */
.js-fadeUp {
  opacity: 0;
  transform: translateY(200px);
  transition: 0.5s all cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  /* transition: all .8s, transform .2s;
  transition-delay: 1s; */
  
  /* フェード開始を遅らせる */
}

.js-fadeUp.delay1 {transition-delay: .3s;}
.js-fadeUp.delay2 {transition-delay: .6s;}
.js-fadeUp.delay3 {transition-delay: .9s;}
.js-fadeUp.delay4 {transition-delay: 1.2s;}
.js-fadeUp.delay5 {transition-delay: 1.5s;}


.js-fadeUp.is-inview {
  opacity: 1;
  transform: translateY(0);
}

/* 右からフェードイン */
.js-fadeFR {
  opacity: 0;
  transform: translateX(200px);
  transition: 0.5s all cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition-delay: .5s;
  /* フェード開始を遅らせる */
}
.js-fadeFR.is-inview {
  opacity: 1;
  transform: translateX(0);
}

/* 左からフェードイン */
.js-fadeFL {
  opacity: 0;
  transform: translateX(-200px);
  transition: 0.5s all cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition-delay: .5s;
  /* フェード開始を遅らせる */
}
.js-fadeFL.is-inview {
  opacity: 1;
  transform: translateX(0);
}

/* シンプルなフェードイン */
.js-fadeIn {
  opacity: 0;
  transition: 1s all cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition-delay: .5s;
  /* フェード開始を遅らせる */
}
.js-fadeIn.is-inview {
  opacity: 1;
}

/*ズームイン*/
.js-zoomIn {transform: scale(0.6);}

.js-zoomIn.is-inview {
  animation-name:zoomInAnime;
  animation-duration:0.5s;
  animation-fill-mode:forwards;
}

@keyframes zoomInAnime{
  from {
  transform: scale(0.6);
  }

  to {
    transform: scale(1);
  }
}

/* ===================================================================================
HEADER
====================================================================================== */
#gl_header{
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 101;
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-content: center;
  align-items: center;
  padding: 10px var(--gap-side);
  transition: 0.8s transform cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transform: translateY(-110%);
  height: var(--header-height);
  
}


#gl_header{
  transform: translateY(0);
}

.is-menuOpen #gl_header,
.is-Up #gl_header{
  transform: translateY(-110%);
}

@media screen and (max-width : 768px){
  #gl_header{
    transform: translateY(0);
  }
  
  .is-Up #gl_header{
    transform: translateY(-110%);
  }
}

/*SP*/
@media screen and (max-width : 768px){
  .is-menuOpen #gl_header{
    transform: translateY(0);
  }
}

#gl_header ._logo{
  width: 160px;
  max-width: 40vw;
}

#gl_footer ._logo{
  width: 220px;
  max-width: 60vw;
}



#gl_header ._glogo{
  max-width: 20%;
  height: 100%;
}

#gl_header ._glogo a{
  display: block;
  height: 100%;
}

#gl_header ._glogo img{
  width: 100%;
  height: 100%;
}

#gl_header ._glogo .logo_norm{
  filter: drop-shadow(0px 0px 3px #fff); 
}

.logo_white,
.is-SP.is-menuOpen .logo_norm{display: none;}
.is-SP.is-menuOpen .logo_white{display: block;}

/* ===================================================================================
MENU MODAL
====================================================================================== */

.menu_modal {
  width: 25vw;
  height: 100dvh; 
  position: fixed;
  top: 0;
  left: 0;
  transition: 0.5s all cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  text-align: left;
  z-index: 50;
  font-weight: bold;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  transform: translateX(-110%);
  /* overflow: hidden; */
}

.is-menuOpen .menu_modal{
  transform: translateX(0);
}

body:not(.is-menuOpen) .is-content .menu_modal  > *{
  display: none;
}

/* #sample2 .menu_modal{
  background-color: rgba(4, 4, 4, 0.7);
  color: #fff;
} */

.oagtax .menu_modal{
  background-color: rgba(21, 22, 43, 1);
  color: #fff;
}

.oagtax .menu_modal ._logo{
  width: 60%;
  margin-left: auto;
  margin-right: auto;
}


@media screen and (min-width : 769px){
  
  .menu_modal {
    background-color: rgba(255, 255, 255, 0.875);
    padding: 5dvh 2vw 6dvh;
  }
  
  .oagtax .menu_modal{
/*     background-color: rgba(21, 22, 43, 0.8); */
    background-color: rgba(29, 47, 34, 0.8);
  }
  
  .menu_modal .s_banner{
    display: none;
  }
}

@media screen and (max-width : 768px){
  .menu_modal {
    background-color: rgba(255, 255, 255, 1);
    width: 100vw; 
    transform: translateX( -120% );
    padding: 13dvh 2vw 20px;
    overflow: hidden;
  }
  
  /* #sample3 .menu_modal{
    background-color: rgba(17, 18, 51, 1);
  } */
  
  .menu_modal .s_banner{
    text-align: center;
    
  }
  
  
  .is-menuOpen .menu_modal {
    transform: translateX(0);
  }
  
  .menu_modal ._logo,
  .menu_modal ._glogo{
      display: none;
  }
  
}

.menu_modal ._menu{
 max-width: 200px;
 margin-left: auto;
 margin-right: auto;
 font-size: 1rem;
}

.menu_modal ._menu > li:not(:last-child){
 border-bottom: 1px solid rgba(255, 255, 255, 0.2); 
}

/* #sample3 .menu_modal ._menu > li{
  border-color:  rgba(255, 255, 255, 0.2); 
} */

.menu_modal ._menu ul{
  margin-left: 2em;
  font-size: .9rem;
}

.menu_modal ._menu a{
  display: block;
  padding: 1.5dvh 0;
  position: relative;
}

.menu_modal ._menu .active > a::before{
  position: absolute;
  content:'\e800';
  top: 52%; 
  left: -24px;
  transform: translateY(-50%);
  font-family: oag;
  font-size: 1.2em;
  color: var(--c-red);
  width: 20px;
  height: 20px;
  display: block;

}

.bt_st1{
  display: grid;
  gap: 2vw;
}

.bt_st1 a{
  display: block;
  background: var(--c-red);
  padding: .2em; 
  border-radius: 200px;
  color: #fff;
  font-weight: bold;
  max-width: 350px;
  border: 1px solid #fff;
  font-size: var(--f-12-16);
  line-height: 1.3;
}


.bt_st1 a span{
  border-radius: 200px;
  padding: .8em 1.2em;
  height: 100%;
  display: grid;
  align-items: center;
}

/* .oagtax .bt_st1 a{
  background: linear-gradient(90deg, #980005 0%, #C8161D 100%);
} */


.bt_st1 a._saiyo,
#sample3 .bt_st1 a._saiyo{
  background:#737d82;
    border: #737d82 2px  solid !important;
  /* background: linear-gradient(90deg, #3f458e 0%, #567bb3 100%); */
}



.bt_st1 a._saiyo span{
  /* background: linear-gradient(-90deg, #3f458e 0%, #567bb3 100%); */
}

.menu_modal .bt_st1 a{
  transform: translateX(20%);
}

@media screen and (max-width : 768px){
  .menu_modal .bt_st1 a{
    transform: translateX(0);
    width: 80%;
  }
}


.menu_modal .bt_st1 a:hover,
a:hover .bt_st1 > *{
  background-color: #fff;
  color: var(--c-red);
}
.menu_modal .bt_st1 a:first-child:hover{
  color: #737d82;
}

.menu_modal ._glogo{
  text-align: center;
}

.menu_modal ._glogo img{
  width: 50%;
  max-width: 200px; 
}

/* ===================================================================================
FOOTER
====================================================================================== */


#gl_footer{
  margin-top: var(--gap-xl);
  background-color: #fff;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  padding: var(--gap-m) var(--gap-side);
  padding-right: 10vw;
  gap:2vw;
  text-align: left;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
}

#gl_footer ._copy{
 margin-top: 1em;
 font-size: var(--f-10-12);
}



#gl_footer .bt_st1{
  margin-top: 1em;
  grid-template-columns: repeat(2 ,1fr);
}

#gl_footer .bt_st1 a{
 position: relative; 
 padding-right: 2em;
 transition: 0.5s;
  border: var(--c-red) 2px  solid;
}

#gl_footer .bt_st1 a:hover{
  background-color: #fff;
  color: var(--c-red);
}
#gl_footer .bt_st1 a:first-child:hover{
  color:  #737d82;
}



#gl_footer .bt_st1 a::after{
  font-family: oag;
  content:"\E806";
  position: absolute;
  top: 50%;
  right: 1em;
  transform: translateY(-50%);
}
#gl_footer .sub_link{
  padding:1.5em 0;	
  display: flex;
  flex-wrap: wrap;	
}
#gl_footer .sub_link a{
	font-weight:900;
  padding:.5em 0;
}
#gl_footer .sub_link a:not(:last-child){
  margin-right:2em;
}

/*SP*/
@media screen and (max-width : 768px){
  #gl_footer{
    grid-template-columns: 1fr;
    padding-right: 80px;
  }
 #gl_footer .bt_st1{
  grid-template-columns: auto;
}
}


.s_guidline section{
/*   margin-top: var(--gap-xl); */
  padding: var(--gap-m) var(--gap-side);
  text-align: left;
}

.s_guidline .guidline_table{
	max-width:600px;
	margin:0 auto;
}
.s_guidline .guidline_table tr:first-child{
	border-top:1px solid #DCDCDC;
}
.s_guidline .guidline_table tr{
	border-bottom:1px solid #DCDCDC;
}
.s_guidline .guidline_table tr th,
.s_guidline .guidline_table tr td{
	padding:1em 0;
}


.s_guidline section.at h4,
.s_guidline section.at p{
		padding-left: 1em;
	    text-indent: -1em;
}


/* ===================================================================================
ガイドライン
====================================================================================== */

.s_guidline section h3,
.s_guidline section h4,
.s_guidline section h5,
.s_guidline section p{
    margin-top: 1em;
    line-height: 1.6;
}

.s_guidline section h3,
.s_guidline section h4{
    margin-top: 2em;
}

.s_guidline section h4{
	font-weight:400;
}
.s_guidline section div{
	padding-left:1em;
}
.s_guidline section .at{
		padding-left: 1em;
	    text-indent: -1em;
}


/* ===================================================================================
FLOAT 右下フロート
====================================================================================== */

#gl_float{
  position: fixed;
  bottom: var(--gap-s);
  right: 2vw;
  z-index: 100;
}

.totop{
  width: 60px;
  height: 60px;
  display: grid;
  place-content: center;
  opacity: 0;
  transition: 0.8s opacity cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  font-size: 2em;
}

.totop.is-show{
  cursor: pointer;
  opacity: 1;
}

/* .menuBtn{
  display: block;
  background-color: #fff;
  border-radius: 200px;
  width: 60px;
  height: 60px;
  border: 2px solid var(--c-red);
  cursor: pointer;
  position: relative;
} */

.menuBtn{
  z-index: 100;
  position: fixed;
  bottom: 45%;
  left: 5px;
  display: block;
  background-color: #fff;
  border-radius: 200px;
  width: 50px;
  height: 50px;
  border: 2px solid var(--c-red);
  cursor: pointer;
  transition-property: left;
}

.is-menuOpen .menuBtn{
  left: -10px;
}

@media screen and (max-width : 768px){
  .menuBtn{
    bottom: var(--gap-s);
    left: auto;
    right: 2vw;
  }
  
  .is-menuOpen .menuBtn{
    left: auto;
  }
}

.menuBtn i {
  position: absolute;
  top: 32%;
  left: 50%;
  transform: translateX(-50%);
  width: 24px;
  height: 2px;
  background: var(--c-red);
  border-radius: 100px;
  transition: .4s;
  transition-property: top, left, transform, opacity;
}

.menuBtn i:nth-of-type(2) {
  top: calc(32% + 8px);
}

.is-menuOpen .menuBtn i:nth-of-type(1) {
  top: calc(32% + 4px);
  transform: translate(-50%, -50%) rotate(45deg);
}

.is-menuOpen .menuBtn i:nth-of-type(2) {
  top: calc(32% + 4px);
  transform: translate(-50%, -50%) rotate(-45deg);
}

.menuBtn span {
  position: absolute;
  bottom: 10%;
  left: 0;
  color: var(--c-red);
  font-size: 10px;
  text-align: center;
  display: block;
  width: 100%;
}

.icon-edge {
  color: var(--c-red);
  transform-origin: center center;
  transform: rotate(-90deg);
}

.link_box{
  max-width: 350px;
}

.link_box li a{
  font-size: var(--f-16-18);
  position: relative;
  display: block;
  padding: .5em 0;
}

.link_box li a:before{
  content:"";
  position: absolute;
  top: 55%;
  right: 0;
  transform: translateY(-50%);
  width: 47%;
  height: 1px;
  background-color: #fff;
}

.link_box li a:after{
  content:"";
  position: absolute;
  top: calc(55% - 1px);
  right: 0;
  transform: translateY(-50%);
  width: 10px;
  height: 1px;
  background-color: #fff;
  transform: rotate(30deg);
  transform-origin:right top;
}

/* modal
======================================================================================*/

.modal {
  display: none;
  position: fixed;
  z-index: 1000;
  left: 0;
  top: 0;
  height: 100dvh;
  width: 100%;
  overflow: auto;
  background-color: rgba(0,0,0,0.5);
  backdrop-filter: blur(10px);
}

.modal .modal-box {
  background-color: #fff;
  max-width: 800px;
  width: 90%;
  max-height: 90dvh;
  border-radius: 10px;
  animation-name: modalopen;
  animation-duration: 1s;
  padding: 40px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.modal.-form .modal-box {
  max-width: 1200px;
  height: 95dvh;
}

.modal.-form .modal-box > div {
    width: 100%;
    height: 100%;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}

.modal .modal-box iframe {
    width: 100%;
    height: 100%;
}

#about_branch .modal .modal-box{
  height: 90dvh;
}

.modal .modal-box iframe{
  width: 100%;
  height: 100%; 
}

.modalClose{
  position: absolute;
  top: 0;
  right: 0;
  width: 40px;
  height: 40px;
  /* background-color: #fff; */
}

.modalClose::before,
.modalClose::after{
  content:"";
  position: absolute;
  width: 100%;
  height: 2px;
  background-color: #000;
  top: 50%;
  right: 0;
  transform: rotate(45deg);
  transform-origin: center;
}

.modalClose::after{
  transform: rotate(-45deg);
}

/*SP*/
 @media screen and (max-width : 768px){
  .modal .modal-box {
    padding: var(--w20);
    padding-top: 40px;
    width: 96%;
    max-height: 96dvh;
  }
}

.modal .modal-box iframe{
  width: 100%;
  height: 100%; 
}

/* FONT
======================================================================================*/

@font-face {
  font-family: 'oag';
  src: url('../font/oag.eot?4580935');
  src: url('../font/oag.eot?4580935#iefix') format('embedded-opentype'),
       url('../font/oag.woff2?4580935') format('woff2'),
       url('../font/oag.woff?4580935') format('woff'),
       url('../font/oag.ttf?4580935') format('truetype'),
       url('../font/oag.svg?4580935#oag') format('svg');
  font-weight: normal;
  font-style: normal;
}
/* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */
/* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */
/*
@media screen and (-webkit-min-device-pixel-ratio:0) {
  @font-face {
    font-family: 'oag';
    src: url('../font/oag.svg?4580935#oag') format('svg');
  }
}
*/
[class^="icon-"]:before, [class*=" icon-"]:before {
  font-family: "oag";
  font-style: normal;
  font-weight: normal;
  speak: never;

  display: inline-block;
  text-decoration: inherit;
  width: 1em;
  margin-right: .2em;
  text-align: center;
  /* opacity: .8; */

  /* For safety - reset parent styles, that can break glyph codes*/
  font-variant: normal;
  text-transform: none;

  /* fix buttons height, for twitter bootstrap */
  line-height: 1em;

  /* Animation center compensation - margins should be symmetric */
  /* remove if not needed */
  margin-left: .2em;

  /* you can be more comfortable with increased icons size */
  /* font-size: 120%; */

  /* Font smoothing. That was taken from TWBS */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;

  /* Uncomment for 3D effect */
  /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */
}

.icon-o-ring:before { content: '\e800'; } /* '' */
.icon-three-ring:before { content: '\e801'; } /* '' */
.icon-popup:before { content: '\e802'; } /* '' */
.icon-modal:before { content: '\e803'; } /* '' */
.icon-edge:before { content: '\e805'; } /* '' */
.icon-outlink:before { content: '\e806'; } /* '' */
.icon-arrow:before { content: '\e807'; } /* '' */
.icon-thin-triangle:before { content: '\e809'; } /* '' */
.icon-thin-triangle2:before { content: '\e80a'; } /* '' */
.icon-line-arrow:before { content: '\e80b'; } /* '' */
.icon-round-rect:before { content: '\e80c'; } /* '' */
