@charset "UTF-8";
/*文字装飾*/
.pink{
	color: #ff2ccd;
	font-weight: bold;
}

.blue{
	color: #1fbeff;
	font-weight: bold;
}

/*サイト内背景*/
body {
    background-image: url(./img/bg-img.png);
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: 100% auto;
    background-position: center;
}
@media (max-width: 1024px) {
    body {
        background-image: url(./img/bg-img.png);
        background-repeat: no-repeat;
        background-attachment: fixed;
        background-size: cover;
    }
}

/*ヘッダー部分*/
.logotext {
    display: flex;
    justify-content: center;
    align-items: center;
}

@media (min-width: 1025px) {
    #logo img {
        max-height: 80px;
        padding: 0.5rem 0;
        transition: all 0.3s
    }
        #logo img:hover {
        opacity: 0.7;
    }
}

@media (max-width: 1024px) {
    #logo img {
        max-height: 40px;
    }
    [data-headerimg-title="center"][data-main-header*="header"][data-headerimg-item="false"] .headerimg-txt, [data-headerimg-title="center"][data-main-header*="wide"][data-headerimg-item="false"] .headerimg-txt {
    max-width: 100%;
    text-align: center;
    text-shadow: 0 0 10px black;
　}
    [data-main-header*="wide"]:not([data-headerimg-img-sp="false"]):not([data-headerimg-title-sp="under"]) .headerimg-txt {
        color: var(--clr-headerimg-txt, #ffffff);
        flex-shrink: 0;
        margin: 0;
        padding: 0;
    }
}

@media (min-width: 1025px) {
    #header .container {
        box-sizing: content-box;
        margin-left: auto;
        margin-right: auto;
        padding: 0 4em;
        max-width: none;
        display: flex;
        flex-wrap: wrap;
        gap: 0 1em;
        align-items: center;
    }
}
   

    #logo {
    color: var(--clr-logo-txt, var(--clr-header-fixed-txt, #ffffff));
    font-weight: 700;
    line-height: 1.5;
}
    
@media (max-width: 1024px) {
    [data-main-header*="wide"]:not([data-headerimg-img-sp="false"]):not([data-headerimg-title-sp="under"]) .headerimg-txt {
        color: var(--clr-headerimg-txt, #000);
        flex-shrink: 0;
        margin: 0;
        padding: 0;
    }
}

@media (min-width: 1025px) {
    [data-main-header*="wide"]:not([data-headerimg-img="false"]) .headerimg-txt {
        color: var(--clr-headerimg-txt, #ffffff);
    }
}

    #header {
        position: relative;
        z-index: 1;
        background-color: #000;
    }
    
 @media (min-width: 1025px) {
    [data-header="fixed"]:not([data-headerimg-img="false"]) #header:not(.fix) {
        background-color: transparent;
        --clr-header-fixed-txt: #fff;
    }
    [data-header="fixed"]:not([data-headerimg-img="false"]) #header::after {
            background-color: rgba(255, 255, 255, 0);
            backdrop-filter: none;
    }

    [data-headerimg-title="center"][data-main-header*="header"][data-headerimg-item="false"] .headerimg-txt, [data-headerimg-title="center"][data-main-header*="wide"][data-headerimg-item="false"] .headerimg-txt {
        max-width: 70%;
        text-align: center;
        text-shadow: 0 0 10px black;
    }
}

@media (max-width: 1024px) {
    [data-main-header*="wide"]:not([data-headerimg-img-sp="false"]):not([data-headerimg-title-sp="under"]) .headerimg-txt {
        color: #ffffff;
        flex-shrink: 0;
        margin: 0;
        padding: 0;
    }
    [data-headerimg-type="header"][data-headerimg-img-sp="true"] .headerimg-desc {
        display: none;
    }
    [data-header="fixed"]:not([data-headerimg-img-sp="false"]) #header::after {
        background-color: rgba(255, 255, 255, 0); 
         backdrop-filter:none;
         display: unset;
    }
    #header::before {
        background-color: var(--clr-header-bg1, rgba(255, 255, 255, 0));
    }
    #spmenu-btn::before, #spmenu-btn::after, #spmenu-btn span::before {
    background-color: var(--clr-header-txt1, var(--clr-header-fixed-txt, var(--clr-body-txt, #ffffff)));
}
}

.headerimg-desc {
    opacity: 1;
}

@media (max-width: 1024px) {
    #header::before {
        background-color: var(--clr-header-bg1, rgba(0, 0, 0, 0.8));
    }
}

/*本文デザイン*/
@media (min-width: 1025px) {
ul:not([id]):not([class]), ol:not([id]):not([class]) {
    line-height: 1.5;
    margin-top: var(--margin-component);
    margin-bottom: var(--margin-component);
    margin-left: 15%;
}
div.table-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin-left:0;
}
}

@media (min-width: 1025px) {
.text-white{
	color: #fff;
	padding: 0 15% 4rem 15%;
}
.bg-white {
    background-color: #fff;
    padding: 4rem 15%;
}
}
@media (max-width: 1024px) {
.text-white{
	color: #fff;
	padding-bottom:2rem;
}
.bg-white {
    background-color: #fff;
    padding: 4rem 0;
}
}



@media screen and (max-width: 1024px) {
    div.table-wrap {
        clear: both;
        margin: 0 5%;
    }
}

#contents {
    flex-grow: 1;
    box-sizing: content-box;
    display: flex;
    margin-left: 0;
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
    padding-bottom: calc(var(--margin-layout) * 2);
    width: 100%;
    max-width: 100%;
}
[data-column="col1"][data-page*="entry"] #contents, [data-column="col1"][data-page*="pages"] #contents {
    max-width: unset;
}


/*見出しデザイン*/
h1, h2, h3, h4, h5, h6, .title, dt, h3 > span, h4 > span, h5 > span, h6 > span, .title > span, div[id$="menu"] h4, div[id$="menu"] .title, #indexlist .title {
    font-family: 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', 'HGP創英角ｺﾞｼｯｸUB', 'ヒラギノ角ゴ Pro W6', sans-serif !important;
    font-weight: 900;
}
[data-column="col1"][data-main="wide"] h2:not([class*="topic"]) { 
  background: transparent;
  color: var(--clr-articletitle-txt, #fff);
  margin-top: 2em;
    padding: 2em 1em 1em 1em;
  position: relative;
  z-index: 0;
  text-align: center;
}
h2:not([class*="topic"]) i {
  margin-bottom: .1em;
}
h2:not([class*="topic"])::before {
  content: '';
  position: absolute;
  bottom: 0;
  display: inline-block;
  width: 60px;
  height: 3px;
  left: 50%;
  top:unset;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #fff;
  border-radius: 2px;
  opacity: 1;
}
h2:not([class*="topic"])::after {
display: none;
}
h2 #text1 p{
  color: #fff;
}
#main section > h2:not([class*="topic"]) {
    margin-top: 0;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
}

@media (min-width: 1025px) {
    [data-main-header*="wide"] .headerimg-txt {
        padding: 0;
        width: 50%;
    }
p {
    margin: 0;
    padding: 0;
    margin-left: auto;
    margin-right: auto;
}
h3:not([class*="topic"]) {
    border-bottom: none;
    margin-top: 4rem;
    padding-bottom: .66666em;
    position: relative;
    padding: 3rem 15%1rem 15%;
    text-align: center;
}
h2 {
    font-size: clamp(2rem, 5.55555vw, 3rem);
    font-weight: 900;
    line-height: 1.5;
    margin: 1em 0;
}
}

h3 {
    font-size: clamp(1.9rem, 5.27777vw, 2.8rem);
}
h3:not([class*="topic"]) {
    border-bottom: none;
    margin-top: 0;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    padding: 3rem 15%;
    text-align: center;
}


@media (max-width: 1024px) {
h3:not([class*="topic"]) {
    border-bottom: none;
    margin-top: 0;
    padding-bottom: 0;
    padding-top: 2rem;
    position: relative;
    text-align: center;
}
}

h4:not([class*="topic"]) {
    text-align: start;
  border-left: none;
    margin-left: 0;
    border-left: 2px solid var(--clr-accent, #000);
}
.text-white h4:not([class*="topic"]){
  text-align: start;
 margin-left: 0;
border-left: 2px solid var(--clr-accent, #fff) !important;	
}

@media screen and (max-width: 1024px) {
h4:not([class*="topic"]) {
  text-align: start;
  border-left: none;
    margin-left: 5%;
    border-left: 2px solid var(--clr-accent, #000);
}
.text-white h4:not([class*="topic"]){
  text-align: start;
 margin-left: 5%;
border-left: 2px solid var(--clr-accent, #fff) !important;	
}
}

h4:not([class*="topic"])::after {
display: none;
}
h5:not([class*="topic"]) {
	text-align: center;
}
h5:not([class*="topic"])::before {
display: none;
}

@media (max-width: 1024px) {
	p {
    margin: 0;
    padding: 0 5%;
    margin-left: auto;
    margin-right: auto;
}
}

.heading06 {
	position: relative;
	padding-top: 50px;
	padding-bottom: 50px;
	font-size: 26px;
	text-align: center;
}

.heading06 span {
	position: relative;
	z-index: 2;
}

.heading06::before {
    content: attr(data-en);
    position: absolute;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
    color: rgba(0, 0, 0, 0.1);
    font-size: 64px;
}
.heading07 {
	position: relative;
	padding-top: 50px;
	padding-bottom: 50px;
	font-size: 26px;
	text-align: center;
}

.heading07 span {
	position: relative;
	z-index: 2;
}

.heading07::before {
    content: attr(data-en);
    position: absolute;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
    color: rgba(255, 255, 255, 0.1);
    font-size: 64px;
}


/*メニュー*/
#menu > .menubox, #rmenu > .menubox, .menuboxlist > .menubox {
    background: transparent;
    padding: 1.25em;
}

@media (min-width: 1025px) {
.menubox > .title, #pickupentry > .title, .newentry-title {
    background-color: var(--clr-menutitle-bg);
    color: var(--clr-menutitle-txt);
    border-bottom-width: 1px;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.5;
    padding-bottom: .72726em;
    margin-bottom: 1em;
    margin-right: 15%;
    margin-left: 15%;
}
｝


/*フッター*/
.footer-menu_ul a{
	transition:0.3s;
}
.footer-menu_ul a:hover {
	opacity: 0.7;
}
.footer-menu_ul {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    align-items: center !important;
    gap: 1em 3em;
}
#footer {
  background-color: rgba(0, 0, 0, 0.7);
  color: var(--clr-footer-txt, #fff);
}
#copy::after {
display: unset !important;
}

@media screen and (max-width: 1024px) {
#footer .inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center !important;
}
}

@media screen and (min-width: 1025px) {
  #sitemaps ul {
            display: flex;
            flex-direction: column;
            padding: 4rem 15%;
            color: #fff;
        }
}
#sitemaps > ul > li > a::before {
    background: var(--clr-main, #fff);
    content: '';
    position: absolute;
    top: .45em;
    left: 0;
    width: .6em;
    height: .6em;
}

/*サイトマップ*/
.footer-menu_ul > li {
    padding: 1.5em 0;
    border-top: none !important;
}
  .footer-menu_ul > li:last-child {
        border-bottom: none !important;
        border-right: 0;
    }
 .footer-menu_ul > li {
        padding: .1em 3em;
        border-top: none !important;
        border-left: none;
    }
.footer-menu_ul > li {

#sitemaps > ul > li > a {
    font-size: 1.25em;
    font-weight: 700;
    line-height: 1.5;
    position: relative;
    padding-left: 1em;
    color: #fff;
}

#sitemaps > ul > li > a::before {
    background: var(--clr-main, #fff);
    content: '';
    position: absolute;
    top: .45em;
    left: 0;
    width: .6em;
    height: .6em;
}


/*画像にグラデーションの影*/
.original-box-shadow{
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #dddddd;
  border-radius: 3px;
  box-shadow: -5px -5px 15px 5px rgba(255, 0, 178, 0.8), 5px 5px 15px 7px rgba(0, 152, 213, 0.8);
}

@media screen and (min-width: 1025px) {
#main #text1-section .original-box{
	width: 100%;
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: flex-start;
	padding:0%;
}
#main #text1-section .original-boximg{
	margin-right: 2rem;
}
#main #text1-section .original-box p{
	padding: 0;
}

#main #text1-section .original-box .item01{	
　 width: 30%; 
　}
#main #text1-section .original-box .item02 {
 width: 70%; 
}
}

@media screen and (max-width: 1024px) {
#main #text1-section .original-box{
	width: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding:0 5%;
}
}

#main #text1-section .original-box.reverse{
	flex-direction: row-reverse;
}

#main-footer :not(.profile-body) > .snsbox {
    display: flex;
    justify-content: flex-end;
    padding: 0 10%;
    width: 100%;
}
.snsbox .sns-title {
    font-size: 1.2rem;
    line-height: 1;
    opacity: 0.5;
    color: #fff;
}
@media screen and (max-width: 1024px) {
#main-footer :not(.profile-body) > .snsbox {
    display: flex;
    justify-content: flex-end;
    width: 100%;
    padding: 0 5%;
}
}

ul:not([id]):not([class]) li.white::before {
background-color: #fff !important;
    display: inline-block;
    border-radius: .1875em;
    content: '';
    margin-left: -1em;
    margin-right: .8125em;
    width: .1875em;
    height: .1875em;
    position: relative;
    top: -.3125em;;
}
@media (max-width: 1024px) {
ul:not([id]):not([class]) li.white::before {
background-color: #fff !important;
    display: inline-block;
    border-radius: .1875em;
    content: '';
    margin-left: -1em;
    margin-right: .8125em;
    width: .1875em;
    height: .1875em;
    position: relative;
    top: -.3125em;;
}
}

/*ヒントボックス等*/
@media (max-width: 1024px) {
.alert, .accept, .attention, .thint {
    line-height: 1.5;
    margin:0 5% !important;
    padding: 2em;
    position: relative;
   margin: 0 5%;
}
    .alert, .accept, .attention, .thint p{
        margin: 0;
        padding: 0;
        margin-left: auto;
        margin-right: auto;
    }
}

/*追加css*/
[data-column="col1"][data-page*="entry"][data-main="wide"] #main section > h2, [data-column="col1"][data-page*="entry"][data-main="wide"] #main section .txt-body, [data-column="col1"][data-page*="pages"][data-main="wide"] #main section > h2, [data-column="col1"][data-page*="pages"][data-main="wide"] #main section .txt-body {
    max-width: 100% !important;
}
    [data-header="fixed"]:not([data-headerimg-img="false"]) #header .container::after {
        background-color: rgba(0, 0, 0, 0);
        -webkit-backdrop-filter: contrast(120%);
        backdrop-filter: none;
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: -1;
    }
    
@media (min-width: 1025px) {
    .topmenu_ul a::before {
        border-left: none !impoerant;
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        opacity: .24;
    }
    .topmenu_ul > li:last-child > span a::before {
        border-right: none !important;
    }
}

@media screen and (min-width: 480px) {
    .original-box > * {
        margin-left: 0; 
        margin-right: 1%;
    }
}

@media (max-width: 1024px) {
    #spmenu-overlay {
        background-color: rgba(0, 0, 0, 0.6);
        backdrop-filter: blur(10px);
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        height: 100vh;
        z-index: 98;
        transition: 0.5s cubic-bezier(0.19, 1, 0.22, 1);
        opacity: 0;
        pointer-events: none;
    }
}

@media (min-width: 1025px) {
    [data-header="fixed"]:not([data-headerimg-img="false"]) #header .container::after {
        background-color: rgba(0, 0, 0, 0);
        -webkit-backdrop-filter: contrast(120%);
        backdrop-filter: contrast(120%);
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: -1;
    }
[data-column="col1"][data-main="wide"] #main section {
    border-radius: 0;
    padding: 0 !important;
    margin-bottom: 0;
}
[data-column="col1"][data-page*="entry"][data-main="wide"] #main section > h2,
[data-column="col1"][data-page*="entry"][data-main="wide"] #main section .txt-body,
[data-column="col1"][data-page*="pages"][data-main="wide"] #main section > h2,
[data-column="col1"][data-page*="pages"][data-main="wide"] #main section .txt-body {
  max-width:100%;
}
}
[data-column="col1"][data-main="wide"] #main section {
  border-radius: 0;
  padding: 0;
  margin-bottom: 0;
}