/*+++++++++++++++
root
++++++++++++++++*/
html {
	font-size: 14px;
}
:root {
   --width-max:100%;
   --width-full: 95%;
   --width-large: 1400px;
   --width-medium:1200px;
   --width-small:1000px;
   /* --sitebar: clamp(60px, 5.9701492537vw, 80px); */
   
/*font-family*/
  --gs: "Zen Kaku Gothic New", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic", "YuGothic", "Meiryo", sans-serif;
  --maru: "Zen Maru Gothic", "Hiragino Maru Gothic ProN", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic", "YuGothic", "Meiryo", sans-serif;
   --lato:"Lato", sans-serif;
   --meiryo:'メイリオ', 'Meiryo','ＭＳ ゴシック','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
   
/*color*/
   --pink:#FF87B4;
   --white:#fff;
   --black:#222;
   --red: #C6061C;
   --blue:#1888f0;
   --gray:#e1e1e1;
   --navy:#083b92;
   --yellow:#ff0;
   --darkgray:#999;
   --lightgray:#eee;
   --darkblue:#0b77dc;
   --aqua:#69c;
   --orange:#ed6d0b;
   --darkorange:#f2500f;
   --lightorange:#fff3ea;
   --lightblue:#f2f6fb;
   --important:#C6061C;
   --white-t:#fff;

/*opacity*/
   --opa-white01:rgba(255,255,255,0.05);
   --opa-white02:rgba(255,255,255,0.2);
   --opa-white05:rgba(255,255,255,0.5);
   --opa-white07:rgba(255,255,255,0.7);
   --opa-white09:rgba(255,255,255,0.9);
   --opa-black01: rgba(0,0,0,0.05);
   --opa-black02:rgba(0,0,0,0.2);
   --opa-black05:rgba(0,0,0,0.5);
   --opa-black09:rgba(0,0,0,0.9);
   --opa-red01:rgba(198, 6, 28, 0.05);
   --opa-blue01:rgba(0, 79, 175, 0.05);	
   
/*fontsize*/
   --font-mc: 0.9rem;
   --font-em: 1.05rem;
   --font-h6:1.2rem;
   --font-h5:1.4rem;
   --font-h4:1.6rem;
   --font-h3:2rem;
   --font-h2:2.5rem;
   --font-h1:3rem;

/*margin*/
   --mg-lg:clamp(50px, 2.5vw, 100px);
/*flex-basis*/
   --flex-10:10%;
   --flex-12:12%;
   --flex-15:15%;
   --flex-20:20%;
   --flex-22:22%;
   --flex-25:25%;
   --flex-28:28%;
   --flex-30:30%;
   --flex-32:32%;
   --flex-33:33%;
   --flex-35:35%;
   --flex-40:40%;
   --flex-42:42%;
   --flex-45:45%;
   --flex-47:47%;
   --flex-48:48%;
   --flex-49:49%;
   --flex-50:50%;
   --flex-55:55%;
   --flex-60:60%;
   --flex-65:65%;
   --flex-70:70%;
   --flex-72:72%;
   --flex-75:75%;
   --flex-80:80%;
   --flex-85:85%;
   --flex-90:90%;
   --flex-95:95%;
   --flex-100:100%;	
   
/*padding*/
   --pa-10:10px 0;
   --pa-30:30px 0;
   --pa-50:50px 0;
   --pa-80:80px 0;
   --pa-100:100px 0;
   --pa-120:120px 0;
   --pt-30:30px 0 0;
   
   
/*margin*/
   --ma-0:0;
   --mb-10:0 0 10px;
   --mb-30:0 0 30px;
   --mb-50:0 0 50px;
   --mb-80:0 0 80px;
   --mb-120:0 0 120px;	
   
/*weight*/
   --wght-100:100;
   --wght-300:300;
   --wght-500:500;
   --wght-700:700;
   --wght-900:900;

/*width*/
   --width240:240px;
   --width360:360px;
   --width480:480px;
   --width640:640px;
   --width700:700px;
   
/*line height*/
   --lh-lg:2.5;
   --lh-md:2;
   --lh-sm:1.8;
   --lh-em:1.2;
}
/*+++++++++++++++
root end
++++++++++++++++*/

body {
   margin: 0;
   overflow-x: hidden;
   font-family: var(--gs);
}

#wrapper {
   position: relative;
   overflow: hidden;
}
/*br*/
.br {display: none !important;}
.br2 {display: block !important;}
.pc {display: none !important;}
.sp {display: block !important;}

a {
   color: inherit;
   text-decoration: none;
   cursor: pointer;
   transition: .3s;	
}

li > a:hover {
   color: none;
   transition: .3s;
}

p {
   letter-spacing: 0;
   margin: 0;
}

figure {
   margin: 0;
}

img {
   vertical-align: bottom;
   max-width: var(--flex-100);
   height: auto;
}

.center {
   display:block;
   margin:auto;
   text-align:center;
}

.flex {
   display:flex;
   gap:50px;
   align-items: center;
}


.h1-title {font-size: var(--font-h1);}
.h2-title {font-size: var(--font-h3);}
.h3-title {font-size: var(--font-h4);}
.h4-title {font-size: var(--font-h4);}
.h5-title {font-size: var(--font-h6);}
.h6-title {font-size: var(--font-em);}
.em-title {font-size: var(--font-mc);}
.mc-title {font-size: var(--font-mc);}

.mc {
   font-size: var(--font-mc);
   line-height: var(--lh-md);
}

hr {
   height: 1px;
   margin: 20px 0 20px;
   background: var(--gray);
   border: none;
}

/*font-family*/
.maru {font-family: var(--maru);}

/*line-height*/
.lh-em {line-height: var(--lh-em);}
.lh-sm {line-height: var(--lh-sm);}
.lh-md {line-height:var(--lh-md);}
.lh-lg {line-height:var(--lh-lg);}

/*color*/
.black {color: var(--black);}
.navy {color: var(--navy);}
.white {color: var(--white);}
.orange {color: var(--orange);}
.lightgray {color: var(--lightgray);}
.dgray {color: var(--darkgray);}
.darkblue {color: var(--darkblue);}

/*background*/


/*width*/
.width240 {max-width: var(--width240);}
.width360 {max-width: var(--width240);}
.width480 {max-width: var(--width480);}
.width640 {max-width: var(--width480);}
.width700 {max-width: var(--width480);}

/*inner*/
.small-inner {max-width: var(--flex-95);}
.medium-inner {max-width: var(--flex-95);}
.large-inner{max-width: var(--width-large);}
.full-inner{max-width: var(--width480);}
.m-auto {margin: auto;position: relative;}

/*weight*/
.wght-100 {font-weight: var(--wght-100)}
.wght-300 {font-weight: var(--wght-300)}
.wght-400 {font-weight: var(--wght-400)}
.wght-500 {font-weight: var(--wght-500)}
.wght-700 {font-weight: var(--wght-700)}
.wght-900 {font-weight: var(--wght-900)}

/*text-decoration*/
.under-white {border-bottom: 1px solid var(--opa-white05); padding: 0 0 10px;}
.under-white:hover {border-bottom: 1px solid transparent;}

/*radius*/
.radius-10{border-radius: 10px; overflow: hidden;}
.radius-20{border-radius: 20px; overflow: hidden;}

/*background*/
.bg-lightblue {background: var(--lightblue);}
.bg-white {background: var(--white);}
.bg-white-t {background: #ffffff9e;}
.bg-lightgray {background: var(--lightgray);}
.bg-navy {background: var(--navy);}

/*gap*/
.gap-10 {gap:10px;}
.gap-20 {gap: 10px;}
.gap-30 {gap: 20px;}

/*flex-content*/
.flex-center{justify-content: center;}

.item-top:{align-items: flex-start;}
.item-center{align-items: center;}

/*flex-items*/
.item-top:{align-items: flex-start;}
.item-center{}

/*padding*/
.pa-10 {padding: var(--pa-10);}
.pa-30 {padding: var(--pa-10);}
.pa-50 {padding: var(--pa-30);}
.pa-80 {padding: var(--pa-50);}
.pa-100 {padding: var(--pa-100);}

.pt-30 {/* padding: 30px 0 0; */}
.pt-100 {padding: 50px 0 0;}
.pb-100{padding: 0 0 50px;}

.pd-30{padding: 30px;box-sizing: border-box;}

/*margin*/
.ma-0 {margin:var(--ma-0);}
.mb-10 {margin:var(--mb-10);}
.mb-20 {margin: 0 0 20px;}
.mb-30 {margin: 0 0 20px;}
.mb-50 {margin:var(--mb-50);}
.mb-80 {margin:var(--mb-80);}
.mb-120 {margin:var(--mb-120);}	

/*list-style*/
.square {
   position: relative;
}
.square li {
   padding: 0 0 0 20px;
   position: relative;
}
.square li:before {
   content:"";
   width: 8px;
   height: 8px;
   border: 1px solid var(--navy);
   position: absolute;
   border-radius: 3px;
   top: 13px;
   margin: auto;
   left: 0px;
}

/*under*/
.under {
   border-bottom: 1px dotted var(--darkblue);
}

/*+++++++++++++++
page contents title
++++++++++++++++*/
.c-title {
   
}
.c-en-title {
   font-family: var(--mont);
   position: relative;
   padding: 0 0 0 15px;
}
.c-en-title:before {
   content:"";
   background: var(--blue);
   width: 10px;
   height: 10px;
   border-radius: 100px;
   position: absolute;
   left: 0;
   top: 0;
   bottom: 0;
   margin: auto;
}

/*+++++++++++++++
button
++++++++++++++++*/
.button {
   width:var(--flex-100);
   border-radius: 100px;
   display: block;
   padding: 12px 50px 12px;
   box-sizing: border-box;
   font-weight:var(--wght-700);
   max-width: max-content;
   position: relative;
   font-size: var(--font-em);
   overflow: hidden;
   cursor: pointer;
   border: 1px solid var(--navy);
}
.button i {
   position: absolute;
   top: 0;
   bottom: 0;
   margin: auto;
   display: flex;
   align-items: center;
   justify-content: center;
   right: 5%;
   width: 10px;
   border-radius: 100px;
   height: 10px;
   font-size: 11px;
   transition:.3s;
}

.button::after {
   position: absolute;
   bottom: 0;
   left: 0;
   content: '';
   width: 100%;
   height: 100%;
   color: var(--white);
   background: var(--blue);
   transform: scale(0, 1);
   transform-origin: right top;
   transition: transform .5s;
   z-index: -1;
}

.button:hover {
   transition: .3s;
   background: var(--white);
   color: var(--navy);
}

/*+++++++++++++++
columns
++++++++++++++++*/
.column-flex {
   display: flex;
   justify-content: space-between;
}
.column-2 {
   display: block;
   grid-template-columns: repeat(2,1fr);
}

.column-3 {
   display: grid;
   grid-template-columns: repeat(3,1fr);
}
.column-4 {
   display: grid;

   grid-template-columns: repeat(2,1fr);
}

/*+++++++++++++++
news
++++++++++++++++*/
#news .column-flex{
   /* grid-template-columns: 20% 75%; */
   display: block;
}

#news ul li{
   padding: 0 0 1px;
   border: 1px solid var(--navy);
   box-shadow: 0 0 8px var(--opa-black01);
}
#news ul li dl i {
   position: absolute;
   right: 3%;
   top: 0;
   bottom: 0;
   margin: auto;
   display: flex;
   align-items: center;
   transition: .3s;
}
#news ul li dl.active i {
   transform: rotate(180deg);
   transition: .3s;
   color: var(--white);
}
#news ul li dl{
   cursor: pointer;
   padding: 20px;
   display: flex;
   justify-content: left;
   position: relative;
}

#news ul li dl.active {
   background: var(--navy);
   color: var(--white);
}

#news .news-content{
   box-sizing: border-box;
   display: none;
   margin:30px;
}
#news .news-content.active {
   display: block;
}

#news .news-content > ul > li {
   border: none;
   border-bottom:1px dashed var(--gray);
   padding: 0 0 10px;
   letter-spacing: 0.5px;
   margin: 0 0 10px;
   font-weight: var(--wght-500);
   font-size: var(--font-em);
   box-shadow: none;
}
#news .news-content > ul > li:last-child {
   border: none;
   margin: 0;
   padding: 0;
}
#news .news-content > ul > li > a {
   color: var(--blue);
   text-decoration: underline;
}
#news .news-content > ul > li > a:hover {
   text-decoration: none;
}

/*+++++++++++++++
table
++++++++++++++++*/
.scroll {
   margin: auto;
   overflow: auto;
}	
table {
   width: var(--width700);
   table-layout: inherit;
   border: 1px solid var(--darkblue);
}

tr {
   
}

th {
   border-bottom: 1px solid var(--darkblue);
   border-right: 1px solid var(--darkblue);
   background: var(--lightblue);
   padding: 5px 10px;
   text-align: center;
   font-weight: var(--wght-500);
}

td {
   border-bottom: 1px solid var(--darkblue);
   border-right: 1px solid var(--darkblue);
   padding: 5px 10px;
}
td:last-child {
   /* border-right:2px solid var(--darkblue); */
}

/*+++++++++++++++
underpage
++++++++++++++++*/
h2 {
   padding: 0 0 12px 20px;
   position: relative;
}
h2:before {
   content:"";
   background: var(--navy);
   width: 5px;
   height: var(--flex-50);
   position: absolute;
   top: 10px;
   margin: auto;
   left: 0;
}
h2:after {
   content:"";
   background: var(--navy);
   width: var(--flex-100);
   height: 1px;
   position: absolute;
   bottom: 0;
   left: 0;
   box-shadow: 2px 1px 2px var(--opa-black02);
}
h3 {
   position: relative;
}
h3:after {
   content:"";
   background: var(--navy);
   width: var(--flex-100);
   height: 1px;
   position: absolute;
   bottom: 0;
   left: 0;
   box-shadow: 2px 1px 2px var(--opa-black02);	
}
h5 {
   background: var(--lightblue);
   border: 1px solid var(--navy);
   border-radius: 5px;
   padding: 15px 20px 18px;
}


@media screen and (min-width: 600px) {

/*br*/
.pc {display: none !important;}

.center {
   display:block;
   margin:auto;
   text-align:center;
}

.flex {
   display:flex;
   gap:50px;
   align-items: center;
}


.h1-title {font-size: var(--font-h1);}
.h4-title {}
.em-title {font-size: var(--font-em);}

.mc {
   font-size: var(--font-mc);
   line-height: var(--lh-md);
}

hr {
   height: 1px;
   margin: 20px 0 20px;
   background: var(--gray);
   border: none;
}

/*inner*/
.small-inner {
   max-width: var(--width480);
}
.medium-inner {
   max-width: var(--width480);
}
.large-inner{max-width: var(--width-large);}


/*text-decoration*/
.under-white {border-bottom: 1px solid var(--opa-white05); padding: 0 0 10px;}
.under-white:hover {border-bottom: 1px solid transparent;}


/*background*/
.bg-lightblue {background: var(--lightblue);}
.bg-white {}
.bg-lightgray {background: var(--lightgray);}


/*flex-content*/
.flex-center{justify-content: center;}

.item-top:{align-items: flex-start;}

/*flex-items*/
.item-top:{align-items: flex-start;}

/*padding*/
.pa-10 {padding: var(--pa-10);}
.pa-80 {padding: var(--pa-50);}
.pa-100 {padding: var(--pa-100);}

.pb-100{padding:0 0 100px;}


/*margin*/

.mb-50 {margin:var(--mb-50);}
.mb-80 {margin:var(--mb-80);}
.mb-120 {margin:var(--mb-120);}	

/*list-style*/
.square {
   position: relative;
}
.square li {
   padding: 0 0 0 20px;
   position: relative;
}
.square li:before {
   content:"";
   width: 8px;
   height: 8px;
   border: 1px solid var(--navy);
   position: absolute;
   border-radius: 3px;
   top: 13px;
   margin: auto;
   left: 0px;
}

/*under*/
.under {
   border-bottom: 1px dotted var(--darkblue);
}

/*+++++++++++++++
button
++++++++++++++++*/
.scale {
   transition: 0.5s ease;
   transform: scale(1);
}
.scale:hover {
   transition: 0.5s ease;
   transform: scale(1.05);
}

/*+++++++++++++++
news
++++++++++++++++*/
#news .column-flex{
   grid-template-columns: 20% 75%;
}


#news ul li dl i {
   position: absolute;
   right: 3%;
   top: 0;
   bottom: 0;
   margin: auto;
   display: flex;
   align-items: center;
   transition: .3s;
}
#news ul li dl.active i {
   transform: rotate(180deg);
   transition: .3s;
   color: var(--white);
}

#news .news-content{
   box-sizing: border-box;
   display: none;
   margin:30px;
}
#news .news-content.active {
   display: block;
}

#news .news-content > ul > li {
}
#news .news-content > ul > li:last-child {
   border: none;
   margin: 0;
   padding: 0;
}
#news .news-content > ul > li > a {
   color: var(--blue);
   text-decoration: underline;
}
#news .news-content > ul > li > a:hover {
   text-decoration: none;
}
}

@media screen and (min-width: 1024px) {

/*br*/
.br {display: block !important;}
.br2 {display: none !important;}
.pc {display: block !important;}
.sp {
   display: none !important;
}

.flex {
   display:flex;
   gap: 30px;
   align-items: center;
}


.h1-title {font-size: var(--font-h1);}
.h4-title {}


/*font-family*/
.maru {font-family: var(--maru);}

/*line-height*/
.lh-em {line-height: var(--lh-em);}
.lh-sm {line-height: var(--lh-sm);}

/*width*/
.width240 {max-width: var(--width240);}
.width360 {max-width: var(--width240);}
.width480 {max-width: var(--width480);}
.width640 {max-width: var(--width640);}	
.width700 {max-width: var(--width480);}

/*inner*/
.small-inner {max-width: var(--flex-90);}
.medium-inner {max-width: var(--flex-90);}
.large-inner{max-width: var(--width-large);}
.full-inner{max-width: var(--flex-95);}


/*text-decoration*/
.under-white {border-bottom: 1px solid var(--opa-white05); padding: 0 0 10px;}
.under-white:hover {border-bottom: 1px solid transparent;}

/*gap*/

.gap-30 {gap: 20px;}

/*flex-content*/
.flex-center{justify-content: center;}

.item-top:{align-items: flex-start;}

/*flex-items*/
.item-top:{align-items: flex-start;}

/*padding*/
.pa-10 {padding: var(--pa-10);}

.pa-80 {padding: var(--pa-50);}
.pa-100 {padding: var(--pa-100);}

.pb-100{padding:0 0 100px;}

/*margin*/
.mb-80 {margin:var(--mb-80);}
.mb-120 {margin:var(--mb-120);}	

/*list-style*/
.square {
}
.square li {
   padding: 0 0 0 20px;
   position: relative;
}
.square li:before {
   content:"";
   width: 8px;
   height: 8px;
   border: 1px solid var(--navy);
   position: absolute;
   border-radius: 3px;
   top: 13px;
   margin: auto;
   left: 0px;
}

/*+++++++++++++++
button
++++++++++++++++*/
.button:hover {
   transition: .3s;
   background: var(--white);
   color: var(--navy);
}
.button:hover i {
   color: var(--navy);
}

.scale {
   transition: 0.5s ease;
   transform: scale(1);
}
.scale:hover {
   transition: 0.5s ease;
   transform: scale(1.05);
}

/*+++++++++++++++
columns
++++++++++++++++*/
.column-flex {
   display: flex;
   justify-content: space-between;
}
.column-2 {
   display: grid;
   grid-template-columns: repeat(2,1fr);
}

.column-3 {
   display: grid;
   grid-template-columns: repeat(3,1fr);
}
.column-4 {
   display: grid;
   grid-template-columns: repeat(4,1fr);
}

/*+++++++++++++++
news
++++++++++++++++*/
#news .column-flex{
   display: grid;
}

#news ul li dl i {
   position: absolute;
   right: 3%;
   top: 0;
   bottom: 0;
   margin: auto;
   display: flex;
   align-items: center;
   transition: .3s;
}
#news ul li dl.active i {
   transform: rotate(180deg);
   transition: .3s;
   color: var(--white);
}

#news .news-content{
   box-sizing: border-box;
   display: none;
   margin:30px;
}
#news .news-content.active {
   display: block;
}

#news .news-content > ul > li:last-child {
   border: none;
   margin: 0;
   padding: 0;
}
#news .news-content > ul > li > a {
   color: var(--blue);
   text-decoration: underline;
}
#news .news-content > ul > li > a:hover {
   text-decoration: none;
}
   

/*+++++++++++++++
table
++++++++++++++++*/
.scroll {
   overflow:hidden;
}	
   
table {
   width: var(--flex-100);
}	
th,td {
   padding: 10px 20px;
}
td:last-child {
   border-right:1px solid var(--darkblue);
}
   
   
}

@media screen and (min-width: 1400px) {

.sp {
   display: none !important;
}

.flex {
   display:flex;
   gap:50px;
   align-items: center;
}


.h1-title {font-size: var(--font-h1);}
.h3-title {font-size: var(--font-h3);}
.h4-title {}
.h5-title {font-size: var(--font-h5);}
.h6-title {font-size: var(--font-h6);}


/*inner*/
.small-inner {max-width: var(--width-small);}
.medium-inner {max-width: var(--width-medium);}
.large-inner{max-width: var(--width-large);}
.full-inner{max-width: var(--width-full);}


/*text-decoration*/
.under-white {border-bottom: 1px solid var(--opa-white05); padding: 0 0 10px;}
.under-white:hover {border-bottom: 1px solid transparent;}


/*background*/
.bg-lightblue {background: var(--lightblue);}
.bg-lightgray {background: var(--lightgray);}

/*gap*/
.gap-10 {}
.gap-30 {gap:30px;}

/*flex-content*/
.flex-center{justify-content: center;}

.item-top:{align-items: flex-start;}

/*flex-items*/
.item-top:{align-items: flex-start;}

/*padding*/
.pa-10 {padding: var(--pa-10);}
.pa-30 {padding: var(--pa-30);}
.pa-50 {padding: var(--pa-50);}
.pa-80 {padding: var(--pa-50);}
.pa-100 {padding: var(--pa-100);}

.pt-100 {padding: 100px 0 0;}

/*margin*/
.mb-20 {margin: 0 0 20px;}	
.mb-30 {margin:var(--mb-30);}
.mb-80 {margin:var(--mb-80);}
.mb-120 {margin:var(--mb-120);}	

/*list-style*/
.square {
   position: relative;
}
.square li {
   padding: 0 0 0 20px;
   position: relative;
}
.square li:before {
   content:"";
   width: 8px;
   height: 8px;
   border: 1px solid var(--navy);
   position: absolute;
   border-radius: 3px;
   top: 13px;
   margin: auto;
   left: 0px;
}

/*under*/
.under {
   border-bottom: 1px dotted var(--darkblue);
}


/*+++++++++++++++
columns
++++++++++++++++*/

.column-3 {
   display: grid;
   grid-template-columns: repeat(3,1fr);
}
.column-4 {
   display: grid;
   grid-template-columns: repeat(4,1fr);
}

/*+++++++++++++++
news
++++++++++++++++*/

#news ul li dl i {
   position: absolute;
   right: 3%;
   top: 0;
   bottom: 0;
   margin: auto;
   display: flex;
   align-items: center;
   transition: .3s;
}
#news ul li dl.active i {
   transform: rotate(180deg);
   transition: .3s;
   color: var(--white);
}
#news ul li dl{
   padding: 30px;
}

#news .news-content{
   box-sizing: border-box;
   display: none;
   margin:30px;
}
#news .news-content.active {
   display: block;
}

#news .news-content > ul > li:last-child {
   border: none;
   margin: 0;
   padding: 0;
}
#news .news-content > ul > li > a {
   color: var(--blue);
   text-decoration: underline;
}
#news .news-content > ul > li > a:hover {
   text-decoration: none;
}
}
td