@charset "UTF-8";
/* CSS Document */
:root {
    --color-green: #009d42;
}
.KV{
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    width: 100%;
    max-width: 1200px;
    height: auto;
    aspect-ratio: 1200/600;
    margin: 0 auto;
    background: url("../images/kv.jpg") no-repeat center center;
    background-size: contain;
    margin-top: 10.833vw;
}
@media screen and (min-width: 1200px) {
    .KV{
         margin-top: 130px;
    }
}
h1{
	text-indent: -999em;
}
.KV span.Notes{
    text-indent: 0;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 1.25em;
    background: none;
    position: absolute;
    left:auto;
    top:auto;
    right:1.5em;
    bottom:1.5em;
    transform: translate(0,0);
    color: #ffffff;
}
#NovitekArea{
    font-size: 18px;
    line-height: 125%;
    width: calc( 100% * ( 1100 / 1200));
    margin: 0 auto;
}
#NovitekArea h2{
    margin: 2em auto 0.5em;
    font-size: 220%;
    line-height: 125%;
    color: var(--color-green);
    text-align: center;
}
#NovitekArea h3{
    margin: 0 auto 0.5em;
    text-align: center;
    color: #000000;
    font-size: 133.3%;
    line-height: 125%;
    font-weight: 700;
}
ul.LinkBtn{
    display: flex;
    justify-content:center;
    align-items: center;
    list-style: none;
    background-color: #ffffff;
    border-radius: 10px;
    overflow: hidden;
    padding-left: 10px;
    padding-right: 10px;
    box-shadow: 5px 5px 15px -5px rgba(0,0,0,0.3);
    margin: 2em auto;
}
ul.LinkBtn li{
    position: relative;
}
ul.LinkBtn li.ToolTip a{
    color: #999999;
}
.ui-tooltip {
  padding: 10px;
  background: var(--color-green);
  color: white;
  border: none;
  border-radius: 5px;
  box-shadow: none;
}
ul.LinkBtn li a{
    display: flex;
    justify-content: center;
    align-items: center;
    white-space: nowrap;
    padding: 1em 2em;
    position: relative;
    text-decoration: none;
    color: var(--color-green);
    font-weight: 700;
    text-align: center;
}
ul.LinkBtn li a::after{
    content: '';
    display: block;
    width: 1px;
    height: 1.5em;
    background-color: var(--color-green);
    position: absolute;
    right:0;
    top:50%;
    transform: translateY(-50%);
}
ul.LinkBtn li:last-of-type a::after{
    display: none;
}
ul.JireiBtn{
    display: flex;
    justify-content: center;
    align-items: stretch;
    flex-flow: wrap;
    gap:1em;
    list-style: none;
    margin: 1em auto 2em;
}
ul.JireiBtn li{
    display: flex;
    justify-content: center;
    align-items: flex-start;
    width: calc( 100% / 5 - 4em / 5);
    position: relative;
    cursor: pointer;
}
ul.JireiBtn li figure{
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-flow: column;
    width: 100%;
    position: relative;
    gap:0.5em;
}
ul.JireiBtn li figure img{
    width: 100%;
    height: auto;
    aspect-ratio: 1/1;
    border-radius: 50%;
    border: solid 3px var(--color-green);
}
ul.JireiBtn li figure figcaption{
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    position: relative;
    color: var(--color-green);
    font-weight: 700;
}
ul.JireiBtn li figure figcaption::after{
    content: '';
    display: block;
    width: 1.25em;
    height: 1.25em;
    background: url("../images/icn_data.png") no-repeat center center;
    background-size: contain;
    margin-left: 0.25em;
}
ul.JireiBtn li.ToolTip figure img{
    border-color: #999999;
    filter: grayscale(1);
}
ul.JireiBtn li.ToolTip figure figcaption{
    color: #999999;
}
ul.JireiBtn li.ToolTip figure figcaption::after{
    display: none;
}
#NovitekArea table{
    width: 100%;
    margin: 1em auto;
}
#NovitekArea table th, #NovitekArea table td{
    padding: 0.5em;
    text-align: center;
    border: solid 1px var(--color-green);
    vertical-align: middle;
}
#NovitekArea table th{
    color: #ffffff;
    background-color: var(--color-green);
    border-left-color: #ffffff;
    border-right-color: #ffffff;
    white-space: nowrap;
}
#NovitekArea table th:first-of-type{
    border-left-color:  var(--color-green);
}
#NovitekArea table th:last-of-type{
    border-right-color: var(--color-green);
}
#NovitekArea table tr td span{
    white-space: nowrap;
}
#Caution{
    margin: 2em auto 1em;
}
#Caution .CautionBlock{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-flow: wrap;
    gap:0 2em;
    border: solid 1px var(--color-green);
}
#Caution .CautionBlock h3{
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0.25em 0;
    width: 100%;
    flex-shrink: 1;
    background-color: var(--color-green);
    color: #ffffff;
}
#Caution .CautionBlock h4{
    color: #000000;
    font-size: 100%;
    line-height: 125%;
    font-weight: 700;
    margin: 0 0 0.25em 0;
}
#Caution .CautionBlock h4:nth-of-type(2){
    margin-top: 1em;
}
#Caution .CautionBlock div{
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-flow: column;
    width: calc( 50% - 1em);
    padding: 0.5em 1em 1em;
}
#Caution .CautionBlock ul{
    margin-left: 1.5em;
    font-size: 77.7%;
    line-height: 125%;
}
.Sub{
    font-size: 70%;
    vertical-align:baseline;
}
/*モーダル*/
.ModalMask{
    display: none;
}
.ModalMask.Active{
    display: flex;
    justify-content: center;
    align-items: flex-start;
    background-color: rgba( 0,0,0,0.8);
    width: 100vw;
    height: 100dvh;
    overflow-y: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none;
    position: fixed;
    top:0;
    left: 0;
    z-index: 10000000;
    cursor: pointer;
}
.ModalMask.Active::-webkit-scrollbar {
    display: none;
}
.ModalMask .ModalArea{
    background-color: #ffffff;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-flow: column;
    gap:1.5em;
    width: calc( 100vw * ( 1000 / 1200));
    max-width: 1000px;
    height: auto;
    position: relative;
    cursor: auto;
    padding: 1.5em;
    margin:3em auto 1em;
}
.ModalArea h4{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    background-color: var(--color-green);
    color: #ffffff;
    margin: 0 auto !important;
    padding: 0.5em;
    text-align: center;
}
.ModalArea figure{
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-flow: column;
    width: 100%;
    position: relative;
    border-top: solid 1px var(--color-green);
}
.ModalArea figure:first-of-type{
    border: none;
}
.ModalArea figure figcaption{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin: 0 auto !important;
    padding: 0 auto !important;
    padding-top: 1em !important;
    font-size: 125%;
    line-height: 125%;
    font-weight: 700;
    color: var(--color-green);
    text-align: center;
}
.ModalArea figure img{
    width: 100%;
    height: auto;
}
.ModalArea table{
    width: auto !important;
    max-width: 75% !important;
    margin: 0 auto !important;
}
.ModalArea table th, .ModalArea table td{
    border: none !important;
    background-color: transparent !important;
    padding: 0 !important;
    font-weight: 400;
    color: #000000 !important;
    text-align: left !important;
    vertical-align: top !important;
    white-space: normal !important;
}
.ModalArea table th{
    white-space: nowrap !important;
}
.ModalArea .CloseBtn:first-of-type{
    display: block;
    width: 2em;
    height: 2em;
    background:url("../images/icn_close.png") no-repeat center center;
    background-size: contain;
    position: absolute;
    right:0;
    top:0;
    transform: translateY(-100%);
    text-indent: -999em;
    cursor: pointer;
}
.ModalArea .CloseBtn:last-of-type{
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    background-color: var(--color-green);
    color: #ffffff;
    padding: 0.25em 2em;
    border-radius: 2em;
    cursor: pointer;
}
/*タブレット*/
@media screen and (max-width:1199px) {
    #NovitekArea{
        font-size: 1.5vw;
        line-height: 125%;
    }
    ul.LinkBtn{
        border-radius: 0.8vw;
        padding-left: 0.8vw;
        padding-right: 0.8vw;
        box-shadow: 0.4vw 0.4vw 1.25vw -0.4vw rgba(0,0,0,0.3);
    }
}

/*スマホ*/
@media screen and (max-width: 767px) {

	@media screen and (max-aspect-ratio: 11/10) {
		/* 縦向きの場合のスタイル */
        .KV{
            max-width: 100%;
            margin-top: 17.33vmin;
        }
        .KV span.Notes{
            display: none;
            width: auto;
            max-width: 100%;
            height: auto;
            max-height: 2.5em;
            background: none;
            position: absolute;
            right:0em;
            bottom:1.25em;
            transform: translate(0,0);
            font-size: 2.7vmin;
            line-height: 125%;
            font-weight: 400;
            color: #000000;
        }
        #NovitekArea{
            font-size: 3.8vw;
            line-height: 125%;
            width: 95%;
        }
        #NovitekArea h2{
            font-size: 150%;
            line-height: 125%;
        }
        #NovitekArea h3{
            font-size: 120%;
            line-height: 125%;
        }
        ul.LinkBtn li a{
            font-size: 75%;
            line-height: 125%;
            padding: 1em 0.5em;
            position: relative;
        }
        ul.LinkBtn li a::after{
            height: 2.5em;
        }
        ul.JireiBtn li{
            display: flex;
            justify-content: center;
            align-items: flex-start;
            width: calc( 100% / 2 - 1em / 2);
            position: relative;
        }
        #NovitekArea table th, #NovitekArea table td{
            font-size: 80%;
            line-height: 125%;
            padding: 0.25em;
        }
        #NovitekArea table tr td:first-of-type,#NovitekArea table tr td:last-of-type{
            white-space: nowrap;
        }
        #Caution .CautionBlock{
            flex-flow: column;
            gap:0;
        }
        #Caution .CautionBlock div{
            width: 100%;
            padding: 0.5em 1em 1em;
        }
        .ModalArea {
            width: 90% !important;
            padding: 1em !important;
        }
        .ModalArea table{
            width: auto !important;
            max-width: 90% !important;
        }
        .ModalArea table th, .ModalArea table td{
            font-size: 75% !important;
            line-height: 125%;
            display: block;
            width: 100%;
        }
        .ModalArea table th{
            font-weight: 700;
        }
	}
	@media screen and (min-aspect-ratio: 11/10) {
		/* 横向きの場合のスタイル */
	}
}