@charset "utf-8";
@font-face {
  font-family: 'NotoSansJP';
  src: url('/id/my-font-package/fonts/NotoSansJP-Regular.ttf');
}

@font-face {
  font-family: 'NotoSansJP';
  src: url('/id/my-font-package/fonts/NotoSansJP-Bold.ttf');
  font-weight: bold;
}
/*----------------------------------------------------------------------

基本設定

----------------------------------------------------------------------*/
*,
::before,
::after {
	margin: 0;
	padding: 0;
	line-height: 1;
	box-sizing: border-box;
	border-style: solid;
	border-width: 0;
	min-width: 0;
	-webkit-font-smoothing: antialiased;
}

html {
	height: 100%;
	-webkit-text-size-adjust: 100%;
	-webkit-tap-highlight-color: transparent;
}

body {
	height: 100%;
	font-family: "NotoSansJP",Helvetica,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',"メイリオ",Meiryo,sans-serif;
	font-size: 14px;
	font-weight: normal;
	color: #333;
}

img {
	border: none;
	vertical-align: bottom;
}

table, th ,td {
	border-collapse: collapse;
	border: none;
}

fieldset {border: 0;}
address, caption, cite, code, dfn, em, strong, th, var {font-style: normal; font-weight: normal;}
ol, ul {list-style: none;}
caption, th {text-align: left;}
q:before, q:after {content: "";}
abbr, acronym {border: 0;}
/* a:focus {outline: none;} */
input,button,textarea,select {font-size: 100%; margin: 0; padding: 0; background: none; border: none; border-radius: 0; outline: none; -webkit-appearance: none; appearance: none;}
hr {display: block; border: none; padding: 0; margin: 0;}

*:focus-visible {
	outline: 2px solid #eb5505 !important;
}

/*----------------------------------------------------------------------

リンク色

----------------------------------------------------------------------*/
a       {color: #0d67aa; text-decoration:none;}
a:hover {color: #eb5505; text-decoration:underline;}

/*----------------------------------------------------------------------

文字色

----------------------------------------------------------------------*/
.txt_orange        {color: #eb5505;}
.txt_orange_light  {color: #fdeee6;}
.txt_blue          {color: #0066aa;}
.txt_red           {color: #ff0800;}
.txt_white         {color: #fff;}
.txt_grey_dark     {color: #333;}
.txt_grey_mid_dark {color: #494949;}
.txt_grey_mid      {color: #777777;}
.txt_grey          {color: #d1d1d1;}
.txt_grey_light    {color: #e5e5e5;}
.txt_grey_white    {color: #f3f3f3;}

/*----------------------------------------------------------------------

文字種類、文字サイズ、文字の太さ

----------------------------------------------------------------------*/
.font_bold   {font-weight: bold !important;}
.font_normal {font-weight: normal !important;}

.font_l  {font-size: 24px;}
.font_s  {font-size: 14px;}
.font_xs {font-size: 10px;}

h1, h2, h3, h4, h5, h6 {font-weight: normal;}

h1         {font-size: 30px;}
h1.font_l  {font-size: 38px;}
h1.font_s  {font-size: 18px; font-weight: bold;}

h2         {font-size: 22px;}
h2.font_l  {font-size: 28px;}
h2.font_s  {font-size: 18px; font-weight: bold;}

h3         {font-size: 20px;}
h3.font_l  {font-size: 24px;}
h3.font_m  {font-size: 18px;}
h3.font_s  {font-size: 16px; font-weight: bold;}

h4         {font-size: 18px;}
h4.font_l  {font-size: 22px;}
h4.font_m  {font-size: 16px;}
h4.font_s  {font-size: 14px; font-weight: bold;}

h5         {font-size: 16px;}
h5.font_l  {font-size: 20px;}
h5.font_s  {font-size: 12px; font-weight: bold;}

h6         {font-size: 16px;}
h6.font_l  {font-size: 20px;}
h6.font_s  {font-size: 12px; font-weight: bold;}

/*スマートフォン*/
@media screen and (max-width: 767px) {
	h1 {font-size: 24px;}
}

@media screen and (max-width: 425px) {
	body{ font-size: 13px;}
	h1 {font-size: 24px;}
}

/*----------------------------------------------------------------------

余白

----------------------------------------------------------------------*/
.mt0  {margin-top:0px !important;}
.mt5  {margin-top:5px !important;}
.mt10 {margin-top:10px !important;}
.mt15 {margin-top:15px !important;}
.mt20 {margin-top:20px !important;}
.mt25 {margin-top:25px !important;}
.mt30 {margin-top:30px !important;}
.mt35 {margin-top:35px !important;}
.mt40 {margin-top:40px !important;}
.mt45 {margin-top:45px !important;}
.mt50 {margin-top:50px !important;}
.mt55 {margin-top:55px !important;}
.mt60 {margin-top:50px !important;}
.mt65 {margin-top:65px !important;}

.mb0  {margin-bottom:0px !important;}
.mb5  {margin-bottom:5px !important;}
.mb10 {margin-bottom:10px !important;}
.mb15 {margin-bottom:15px !important;}
.mb20 {margin-bottom:20px !important;}
.mb25 {margin-bottom:25px !important;}
.mb30 {margin-bottom:30px !important;}
.mb35 {margin-bottom:35px !important;}
.mb40 {margin-bottom:40px !important;}
.mb45 {margin-bottom:45px !important;}
.mb50 {margin-bottom:50px !important;}
.mb55 {margin-bottom:55px !important;}
.mb60 {margin-bottom:60px !important;}
.mb65 {margin-bottom:65px !important;}

.pt0  {padding-top:0px !important;}
.pt5  {padding-top:5px !important;}
.pt10 {padding-top:10px !important;}
.pt15 {padding-top:15px !important;}
.pt20 {padding-top:20px !important;}
.pt25 {padding-top:25px !important;}
.pt30 {padding-top:30px !important;}
.pt35 {padding-top:35px !important;}
.pt40 {padding-top:40px !important;}
.pt45 {padding-top:45px !important;}
.pt50 {padding-top:50px !important;}
.pt55 {padding-top:55px !important;}
.pt60 {padding-top:60px !important;}
.pt65 {padding-top:65px !important;}

.pb0  {padding-bottom:0px !important;}
.pb5  {padding-bottom:5px !important;}
.pb10 {padding-bottom:10px !important;}
.pb15 {padding-bottom:15px !important;}
.pb20 {padding-bottom:20px !important;}
.pb25 {padding-bottom:25px !important;}
.pb30 {padding-bottom:30px !important;}
.pb35 {padding-bottom:35px !important;}
.pb40 {padding-bottom:40px !important;}
.pb45 {padding-bottom:45px !important;}
.pb50 {padding-bottom:50px !important;}
.pb55 {padding-bottom:55px !important;}
.pb60 {padding-bottom:60px !important;}
.pb65 {padding-bottom:65px !important;}

/*----------------------------------------------------------------------

要素を非表示にする

----------------------------------------------------------------------*/
.none {
	display: none !important;
}

.hidden {
	visibility: hidden !important;
}

/*----------------------------------------------------------------------

テキスト左右寄せ

----------------------------------------------------------------------*/
.txt_l {text-align: left !important;}
.txt_r {text-align: right !important;}
.txt_c {text-align: center !important;}

/*----------------------------------------------------------------------

clearfix

----------------------------------------------------------------------*/
.clearfix::after {
	content: "";
	display: block;
	clear: both;
}

/*----------------------------------------------------------------------

スクリーンリーダー用の非表示テキスト

----------------------------------------------------------------------*/

.visually-hidden {
  position: absolute !important;
  height: 1px; width: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  white-space: nowrap;
}



/* ▼ ページトップボタン ▼ */
.pageTopBtn{
    display: flex;
    max-width: 980px;
    margin: auto;
    margin-top: 80px;
    margin-bottom: 80px;
    justify-content: flex-end; /* 内容を右端に寄せる */
    align-items: center;
    font-weight: bold;
    height: 20px;
}

.pageTopBtn:hover{
    text-decoration: none;
}

.pageTopText {
    line-height: 20px;
    font-size: 14px;
    color: #1B1B1B;
    margin-right: 8px;
}

.pageTopBtn:hover p {
    color: #676767;
    font-weight: bold;
    border-right-color: #676767;
    border-top-color: #676767;
}

.pageTopBtn span {
    width: 10px;
    height: 6px;
    vertical-align: 1px;
}

.pageTopBtnArrow {
    width: 7px;
    height: 7px;
    border-right: 2px solid #1B1B1B;
    border-top: 2px solid #1B1B1B;
    transform: rotate(-45deg);
    margin-top: 2px;
}

@media screen and (max-width: 767px) {
    .pageTopBtn {
        margin-right: 25px;
    }

    .pageTopBtn p{
        font-size: 14px;
        color: #2D2D2D;
    }
}
/* ▲ ページトップボタン ▲ */

/* PC/SP表示切り替え用 */
/* デフォルトはSP版のみ表示 */
/* SP画面向け：幅767px以下ならSP用を表示 */
@media screen and (max-width: 767px) {
  .pcView {
    display: none;
  }
  .spView {
    display: block;
  }
}

/* PC画面向け：幅768px以上ならPC用を表示 */
@media screen and (min-width: 768px) {
  .pcView {
    display: block;
  }
  .spView {
    display: none;
  }
}
