@charset "UTF-8";
/*------------------------------------------------------------------
  container
------------------------------------------------------------------*/
.container,
.container-fluid{
    padding-left: 30px;
    padding-right: 30px;
    margin-left: auto;
    margin-right: auto;
}
.container{
    max-width: 1100px;
}

/*------------------------------------------------------------------
  title
------------------------------------------------------------------*/

/* title-bold 
------------------------------------------------------------------*/
.title-bold{
    margin-bottom: 1.25em;
    font-size: 32px;
    font-weight: bold;
    line-height: 1.5;
}
@media screen and (max-width:1110px){
    .title-bold{ font-size: 30px;}
}
@media screen and (max-width:575px){
    .title-bold{ font-size: 28px;}
}
/* title-caption 
------------------------------------------------------------------*/
.title-caption{
    margin-bottom: .75em;
    font-family: var(--english-font);
    font-weight: 600;
    letter-spacing: 3px;
}

/*------------------------------------------------------------------
  btn   
------------------------------------------------------------------*/

/*  btn
------------------------------------------------------------------*/
.btn{
    position: relative;
    top: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    column-gap: 10px;
    min-width: 200px;
    height: 40px;
    border-radius: 20px;
    padding: 0 2.5em;
    font-size: 14px;
    font-weight: bold;
    text-align: center;
    transition: .2s ease-out;
    z-index: 1;
}
.btn::before{
    position: absolute;
    top: 4px;
    left: 0;
    width: 100%;
    height: 100%;
    background: #fff;
    border: 1px solid #333;
    border-radius: 20px;
    content: "";
    transition: .2s ease-out;
    z-index: -1;
}
.btn::after{
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: var(--accent-color);
    border: 1px solid #333;
    border-radius: 20px;
    line-height: 1;
    content: "";
    z-index: -1;
}
/* ホバー時動作 */
@media (hover:hover) {
    .btn:hover{ top: 4px;}
    .btn:hover::before{ top: 0;}
}
@media (hover:none) {
    .btn:active{ top: 4px;}
    .btn:active::before{ top: 0;}
}


/*------------------------------------------------------------------
  list-style
------------------------------------------------------------------*/

/* list-disc ----------------------------------------*/
.list-disc{
    display: grid;
    grid-template-columns: 1fr;
    row-gap: .5em;
    line-height: 1.5;
}
.list-disc > li{
    position: relative;
    padding-left: 1em;
}
.list-disc > li::before{
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: "・";
}

/* list-decimal ----------------------------------------*/
.list-decimal{
    line-height: 1.5;
}
.list-decimal > li {
    position: relative;
    padding-left: 1.3em;
	counter-increment: cnt;
}
.list-decimal > li::before{
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: ""counter(cnt)".";
}

/* list-bracket ----------------------------------------*/
.list-bracket{
    line-height: 1.5;
}
.list-bracket > li{
    position: relative;
    padding-left: 2em;
	counter-increment: cnt;
}
.list-bracket > li::before{
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: "("counter(cnt)")";
}

/* list-asterisk ----------------------------------------*/
.list-asterisk{
    line-height: 1.5;
}
.list-asterisk > li{
    position: relative;
    padding-left: 1.25em;
}
.list-asterisk > li::before{
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: "※";
}

/* list-asterisk-bracket ----------------------------------------*/
.list-asterisk-bracket{
    line-height: 1.5;
}
.list-asterisk-bracket > li{
    position: relative;
    padding-left: 2em;
	counter-increment: cnt;
}
.list-asterisk-bracket > li::before{
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    content: "※"counter(cnt)"";
    color: var(--red-color);
}

/*------------------------------------------------------------------
  link-text
------------------------------------------------------------------*/
.link-text{
    text-decoration: underline;
    transition: .2s ease-out;
}
@media (hover:hover) {
    .link-text:hover{
        color: var(--primary-color);
    }
}
@media (hover:none) {
    .link-text:active{
        color: var(--primary-color);
    }
}

/*------------------------------------------------------------------
  img
------------------------------------------------------------------*/
.img-fluid{
    max-width: 100%;
    height: auto;
}