/* Bootstrapの場合は不要
body {
	margin: 0px;
	padding: 0px;
}
*/

/** メニューを中央に配置するためのインナー */
.section-inner {
  width: 1200px;
  max-width: 100%;
  margin: auto;
}

/** PC 用 */
@media (min-width: 1001px) {
	
    /* .global_menu {
		background-color: #FFFFFF;
    } */

    .g_menu_hr {
        padding: 22px 0px;
        color: #CCCCCC;
    }

    /** グローバルナビリスト (1階層目) */
    .g_menu_list {
      display: flex;
      justify-content: space-between;
    }
	
    /** グローバルナビ項目 (1階層目) */
    .g_menu {
      display: flex;
      position: relative;
      /* background-color: #E7BCBD; */
      margin: 5px;
      text-align: center;
    }
    .g_menu > a {
      display: block;
      position: relative;
      width: 100%;
      padding: 10px;
      font-size: 14px;
      font-weight: 400;
      color: #5c5c5c;
      text-decoration: none;
      transform: rotate(0.05deg);
    }
    .g_menu > a::after {
      display: block; /* ブロック要素 */
      content: ''; /* コンテンツなし */
      position: absolute; /* 絶対位置 */
      bottom: 0; /* 100% */
      right: 0; /* 100% */
      left: 0; /* 100% */
      height: 2px; /* 線の太さ */
      background: #3d9be9; /* 線の色 */
      opacity: 0; /* 透明 */
      transition: 0.2s opacity;  /* 0.2秒でopacityを変化 */
    }
    .g_menu:hover > a::after {
      opacity: 1; /* 透明度を1に */
    }

    /** グローバルナビリスト (2階層目) */
    .g_menu2_list {
      position: absolute;
      top: 100%;
      width: calc(100% + 30px);
      min-width: 200px;
      left: 50%;
      border-radius: 2px;
      background: #FFFFFF;
      box-shadow: 0 5px 5px rgba(0, 0, 0, 0.15);
      overflow: hidden;
      opacity: 0;
      transform: translateX(-50%);
      transition: 0.2s opacity;
      pointer-events: none;
      z-index: 100;
    }
    .g_menu:hover > .g_menu2_list,
    .g_menu2_list:hover {
      opacity: 1;
      pointer-events: all;
    }
	
    /** グローバルナビ項目 (2階層目) */
    .g_menu2 > a {
      display: flex; /* 横並び */
      align-items: center;  /* 縦中央 */
      position: relative; /* 相対位置 */
      padding: 20px 30px 20px 15px; /* 上右下左 */
      border-top: 1px dotted #333333; /* 点線 */
      font-size: 14px; /* フォントサイズ */
      color: #5c5c5c; /* テキストカラー */
      font-weight: 400; /* フォントウェイト */
      text-align: left; /* テキストの位置 */
      text-decoration: none; /* 下線なし */
      transform: rotate(0.05deg); /* 傾き */
    }
    .g_menu2 > a::before {
        box-sizing: border-box; /* ボックスサイズ */
        content: ""; /* コンテンツなし */
        display: block; /* ブロック要素 */
        margin-right: 8px; /* 右マージン */
        width: 7px; /* 横幅 */
        height: 7px; /* 縦幅 */
        border: solid  #999999; /* 線のスタイル、カラー */
        border-width: 0 3px 3px 0; /* 線の太さ */
        transform-origin: center; /* 変形の基準点 */
        transform: translateX(-25%) rotate(-45deg); /* 変形 */
    }
    .g_menu2:first-child > a {
        border-top: none;
    }
    .g_menu2 > a:hover {
      background: #FFFFFF;
      outline: 1px solid #FFFFFF; /* 線幅、線のスタイル、カラー */
      outline-offset: -1px; /* 対象の要素からの距離、マイナス(内側)にも対応 */
    }
    .global_menu_toggle {
        display: none;
    }
}
		


@media (max-width: 1200px) {
	.section-inner {
		width: 800px;
		max-width: 100%;
		margin: auto;
	}
}





/** スマホ 用 */
@media (max-width: 1000px) {	
    .g_menu_hr {
        display: none;
    }
    /** グローバルナビリスト (1階層目) */
    .g_menu_list {
        width: 100%;
        height: 100vh;
        position: fixed;
        top: 0;
        left: 100%;
        margin: auto;
        overflow: auto;
        z-index: 100;
        background:rgba(37,37,37,0.9); 
        transition: 0.2s all;
        pointer-events: none;
    }
    .global_menu.open .g_menu_list {
        left: 0;
        pointer-events: all;
    }
    /** グローバルナビ項目 (1階層目, 2階層目) のリンク */
    .g_menu a {
        display: flex;
        align-items: center;
        box-sizing: border-box;
        position: relative;
        width: 100%;
        padding: 10px 20px 10px;
        font-size: 16px;
		font-weight: 400;
        color: #222222;
        text-decoration: none;
        transform: rotate(0.05deg);
        transition: 0.2s all;
		border-bottom: 1px solid #CCCCCC;
		background-color: #FFFFFF;
    }
    .g_menu a:hover {
        background: #FFFFFF;
    }
    .g_menu > a::before,
    .g_menu2_list.open a::before {
        box-sizing: border-box;
        content: "";
        display: block;
        margin-right: 10px;
        width: 7px;
        height: 7px;
        border: solid  #CCCCCC;
		border-width: 0 3px 3px 0;
        transform-origin: center;
        transform: translateX(-25%) rotate(-45deg);
        transition: 0.2s all;
    }
    .g_menu > a.open::before {
        transform: translate(-25%, -2.5px) rotate(45deg);
    }
    .g_menu2 a {
        font-size: 14px;
        padding: 10px 0px 10px 35px;
    }
    /** グローバルナビリスト (2階層目) */
    .g_menu2_list:not(.open),
    .g_menu2_list:not(.open) * {
        overflow: hidden;
        opacity: 1;
        margin-top: 0;
        margin-bottom: 0;
        padding-top: 0;
        padding-bottom: 0;
        border-top-width: 0;
        border-bottom-width: 0;
        color: transparent;
        line-height: 0;
        transition: 0.2s margin, 0.2s padding, 0.2s border-width, 0.2s line-height, 0.2s opacity;
    }
    .g_menu2_list.open,
    .g_menu2_list.open * {
        transition: 0.2s margin, 0.2s padding, 0.2s border-width, 0.2s line-height, 0.2s opacity;
    }

	
	
	
	
    /** トグルボタン */
    .g_btn {
        box-sizing: border-box;
        position: fixed;
        top: 0px;
        right: 20px;
        width: 45px;
        height: 45px;
        border-radius: 4px;
        background: #222222;
        z-index: 101;
        cursor: pointer;
    }
    .g_btn_icon {
        position: absolute;
        top: calc(50% - 1px);
        left: 0;
        width: calc(100% - 18px);
        height: 2px;
        margin-left: 9px;
        background: white;
        z-index: 100;
    }
    .g_btn_icon::before {
        position: relative;
        top: -8px;
        display: block;
        content: "";
        height: 2px;
        background: white;
        transition: 0.1s all;
    }
    .g_btn_icon::after {
        position: relative;
        top: 6px;
        display: block;
        content: "";
        height: 2px;
        background: white;
        transition: 0.1s all;
    }
    .g_btn.open .g_btn_icon {
        background: transparent;
    }
    .g_btn.open .g_btn_icon::before {
        top: -6px;
        transform: translateY(6px) rotate(45deg);
    }
    .g_btn.open .g_btn_icon::after {
        top: 3px;
        transform: translateY(-5px) rotate(-45deg);
    }
}