@charset "utf-8";

/* 共通
------------------------------------------------------------*/
body {color: #2e2b29;font-size:16px;line-height:185%;letter-spacing:1px;-webkit-text-size-adjust: 100%;font-family: "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;}
a { color:#2e2b29; } a:hover { color: #0f798c; }
p { display:block; margin:0 0 25px; }
hr {height: 0;margin: 25px 0;padding: 0;border: 0;border-top: 1px dotted #666;}
.DPBK { display:block !important; } .spOnly{display: none;}

.aligncenter { text-align:center !important; } .alignright { text-align:right !important; } .alignleft { text-align:left !important; }
.fontsize80 { font-size:80%; letter-spacing:1px; line-height: 110%; }
.fontsize115 { font-size:115%;}
.fontsize125 { font-size:125%;}
.indent{padding-left:1em;text-indent:-1em;}

img { max-width:100%; } .imgleft { display:block; float:left; margin:0 60px 15px 0; } .imgright { display:block; float:right; margin:0 0 15px 60px; } .imgcenter { display:block; margin:10px auto; }

.Border { border:1px solid #dcdcdc !important; }
.Border-bottom { border-bottom:1px solid #dcdcdc !important; }
.Border-bottom-B { border-bottom:1px solid #e7f6fb !important; }
.NoBorder { border:none !important; }

.MG0 { margin:0 !important; }
.MG-T0 { margin-top:0 !important; }
.MG-T5 { margin-top:5px !important; }
.MG-T10 { margin-top:10px !important; }
.MG-T20 { margin-top:20px !important; }
.MG-T30 { margin-top:30px !important; }
.MG-T50 { margin-top:50px !important; }
.MG-T70 { margin-top:70px !important; }
.MG-T100 { margin-top:100px !important; }
.MG-B5 { margin-bottom:5px !important; }
.MG-B10 { margin-bottom:10px !important; }
.MG-B20 { margin-bottom:20px !important; }
.MG-B50 { margin-bottom:50px !important; }
.MG-B70 { margin-bottom:70px !important; }
.MG-B100 { margin-bottom:100px !important; }
.PD0 { padding:0 !important;}
/* アニメーションボタン */
a.AnimeBtn {display: inline-block;text-indent:0 !important;padding:18px 30px 18px;line-height:145%;text-align: center;text-decoration: none;outline: none;position: relative;z-index: 2;background-color: #e8dcd4;border: 1px solid #3aa7c4;}
a.AnimeBtn::before, a.AnimeBtn::after {position: absolute;z-index: -1;display: block;content: '';top: 0;width: 50%;height: 100%;background-color: #3aa7c4;}
a.AnimeBtn, a.AnimeBtn::before, a.AnimeBtn::after {-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;-webkit-transition: all .3s;transition: all .3s;color: #FFF;}
a.AnimeBtn:hover {background-color: #e8dcd4;color: #2e2b29;border-color: #e8dcd4;} a.AnimeBtn::before {right: 0;} a.AnimeBtn::after {left: 0;} a.AnimeBtn:hover::before, a.AnimeBtn:hover::after {width: 0;background-color: #333;}
/* <>から「」になるボタン *, ::before, ::after {box-sizing: border-box;} */
.link_wrap {padding: 0;margin: 20px 0;position: relative;}
.link_wrap a {display: inline-block;text-decoration: none;line-height: 1;} .link_wrap a:hover{color:#000;}
.bk_style02 {padding: 20px 50px;color: #35318f;position: relative;}
.bk_style02::before,.bk_style02::after {content: "";position: absolute;top: 50%;width: 25px;height: 25px;transition: all 0.2s ease-in;}
.bk_style02::before {left: 0;border-top: 4px solid #35318f;border-left: 4px solid #35318f;transform: translateY(-50%) rotate(-45deg);}
.bk_style02::after {right: 0;border-top: 4px solid #35318f;border-right: 4px solid #35318f;transform: translateY(-50%) rotate(45deg);}
.bk_style02:hover::before {transform: rotate(0);top: 0;left: 10%;}
.bk_style02:hover::after {transform: rotate(90deg);right: 10%;}
/* 青1 */
a.BtnBlue {background-color: #48596a;border: 1px solid #48596a;}
a.BtnBlue::before, a.BtnBlue::after {background-color: #48596a;}
/* 青2 */
a.BtnGBlue {background-color: #bbc3c5;border: 1px solid #bbc3c5;color:#48596a;}
a.BtnGBlue::before, a.BtnGBlue::after {background-color: #bbc3c5;}
/* グレー */
a.BtnGray {background-color: #ebebeb;border: 1px solid #ebebeb;color:#666;}
a.BtnGray::before, a.BtnGray::after {background-color: #ebebeb;}
/* 白で線 */
a.BtnWhiteBorder {background-color: #FFF;border: 1px solid #000;color: #000;}
a.BtnWhiteBorder::before, a.BtnWhiteBorder::after {background-color: #FFF;}
a.BtnWhiteBorder:hover {background-color: #000;color: #FFF !important;}
/* 小さめボタン */
a.SBtn {padding:5px 10px;font-size:90%;letter-spacing:1px;}
a.SSBtn {padding:3px 7px 2px;font-size:85%;letter-spacing:0;}
/* 大きめボタン */
a.LBtn {padding:10px 10px;font-size:115%;letter-spacing:5px;}
/* 角丸 */
a.KadomaruBtn {border-radius: 5em;webkit-border-radius: 5em;-moz-border-radius: 5em;}
/* 線ボタン */
.btn-border {display: inline-block;text-align: center;border: 3px solid #0097cc;font-size: 18px;line-height: 125%;color: #0097cc;text-decoration: none;font-weight: bold;padding: 10px 25px;transition: .4s;}
.btn-border:hover {background-color: #0097cc;border-color: #0097cc;color: #FFF;}
/* 線のボタン 白 */
.BtnBWhite {border: 3px solid #FFF !important;color: #FFF;}
.BtnBWhite:hover {background-color: #FFF;border-color: #FFF;color: #0097cc;}

/* キャプション付き画像 */
figure {display: inline-block;margin: 0px 3px 7px 0px;}
figure img {display: block;}
figcaption {font-size: 85%;text-align: center;}

/* リスト チェックマーク */
ul.CheckList { display:block; margin:0 0 20px; }
ul.CheckList li{margin: 10px 0px 15px 0px;position:relative;padding-left:23px;font-size: 95%;line-height: 135%;}
ul.CheckList li:after, ul.CheckList li:before{content:''; display:block; position:absolute; top:4px; left:8px; height:11px; width:4px; background:#333; border-radius:10px;transform:rotate(45deg);-webkit-transform:rotate(45deg);-o-transform:rotate(45deg);}
ul.CheckList li:before{top:8px; left:3px;height:8px; transform:rotate(-45deg); -webkit-transform:rotate(-45deg); -o-transform:rotate(-45deg);}

/* 数字リスト */
ol{display: block;margin-left: 35px;} ol li {list-style: decimal;list-style-position:outside;line-height: 145%;margin-bottom: 15px;}

/* 	ベージュボックス */
.BoxFlame{display: block;padding: 10px 40px 40px;margin: 0 0 50px; background-color: #f6f1ed;}

/* ページネーション */
ul.pageNav {margin: 40px 0;text-align: center;}
ul.pageNav li {display: inline;margin: 0 1px;padding: 0;}
ul.pageNav li span, ul.pageNav li a {display: inline-block;margin-bottom: 5px;padding: 3px 12px;border-radius: 3px;background: #fff;border: 1px solid #e6e6e6;text-decoration: none;vertical-align: middle;}
ul.pageNav li span{background: #0097cc;color: #FFF;border-radius: 3px;border: 1px solid #0097cc;}
ul.pageNav li a:hover {background: #f5f5f5;}

@media only screen and (max-width:999px){
	img.imgright, img.imgleft { float:none; margin:0 auto 15px; }
	figure.imgright { margin-left:20px; }
}
@media only screen and (max-width:810px){
	p {font-size:95%;letter-spacing: 0;}
	figure.imgright {margin:20px auto; float:none;} figure.imgright img {margin:0 auto;}
	ul.BtnList li {width:32.8%;margin:0 0.5% 10px 0;}
	ul.BtnList li a {letter-spacing:0;}
	a.AnimeBtn {letter-spacing:1px; }
	a.LBtn {font-size:100%; letter-spacing:3px;}
}
@media only screen and (max-width:480px){
	ul.BtnList li.HalfBox {width:100%; margin:0 0 20px;} ul.BtnList li.QuarterBox {width:49%; margin-right:1%;}
	.spOnly{display: block;}
}

/* レイアウト
------------------------------------------------------------*/
#wrapper {display:block;width:100%;margin:0;padding:0;background: #f6f1ed;}
.Content {display:block;width:100%;margin:0;padding:80px 0 80px;}
.inner {display:block;width:1100px;margin:0 auto;}

.BgWhite{background: #FFF;}
.BgMember{background:#FFF url(../img/bg03.png)no-repeat left bottom;}
.BgSubcolor{background-color: #3aa7c4 !important;}

/* FlexBox */
.column{ display: flex; }
.column .column__col-50{width: 50%;}
.column .column__col-70{width: 70%;padding-right: 40px;} .column .column__col-30{width: 30%;padding: 30px 30px;}
.column .column__col-80{width: 80%;padding-right: 40px;} .column .column__col-20{width: 20%;padding: 30px 30px;}

.toppage .column .column__col-70{text-align: right;} .toppage .column .column__col-70 img{max-width: 90%;}

@media only screen and (max-width:1099px){
	.inner {width:90%;} #header .inner {width:94%;}
	.column{display: block;}.column .column__col-70, .column .column__col-50{width: 100%;padding:0 0 30px;} .column .column__col-30{width: 100%;} .column .padding-r20,.column .padding-l20,.column .padding-r30,.column .padding-l30{padding: 0;}
	.MessageArea.column{display: flex !important; }.MessageArea .column__col-70{width:65% !important;padding-right: 20px !important;}.MessageArea .column__col-30{width: 35% !important;}
}
@media only screen and (max-width:640px){
	.MessageArea.column{display:block !important; }.MessageArea .column__col-70{width:100% !important;padding:0 0 30px !important;}.MessageArea .column__col-30{width: 100% !important;}
}

/* ヘッダー
------------------------------------------------------------*/
#header{display:block;width:100%;height: 270px;padding:0 0 20px;background:#a5a2c0 url("../img/bg01.png")no-repeat right top;}
#header .headerBar {margin-bottom: 10px;color: #FFF;text-align: right;font-size:90%;letter-spacing: 0;}
#header .inner dl {margin:0 0 10px;} #header .inner dt {width:60%;text-align:left;float: left;} #header .inner dd {width:40%;text-align:right;float: right;}
#header .inner dt img {max-height: 100px;margin-top: 10px;} #header .inner dd .lang_on{display:inline-block;width:45px;height: 35px;border-bottom: 2px solid #e6e6e6;text-align: center;margin-bottom: 5px;} #header .inner dd a.language{text-decoration: none;border-color: #4e4b49;} .headerLine {width: 100%;height: 9px; background: url(../img/bg02.png);}
/* contactボタン */
#header a.contact{display: inline-block;width: 80px;height: 80px;background: url("../img/icon_contact.png")no-repeat;background-size: cover;text-indent: 100%;white-space: nowrap; overflow: hidden;margin-top: 5px;margin-right: 5px;} #header a.contact:hover{background-image:url("../img/icon_contact_.png");}
#header .HMcontact{display: none;}
/*HeightMinというクラス名がついたら高さを小さく、上部固定に*/
#header.HeightMin{position: fixed;z-index: 999;height:105px;animation: DownAnime 0.5s forwards;}
@keyframes DownAnime{
  from {opacity: 0;transform: translateY(-170px);} to {opacity: 1;transform: translateY(0);}
}
#header.HeightMin{padding-bottom: 10px;} #header.HeightMin .inner dl {display: none;} #header.HeightMin .headerBar{margin-bottom: 10px;} #header.HeightMin nav ul li{width:auto;height: 75px;}
#header.HeightMin .HMcontact{display: block;} #header.HeightMin .HMcontact a.contact{margin:0;text-indent: -9999px;width: 75px;height: 75px;}
#header.HeightMin nav ul{padding: 0 10px;} #header.HeightMin nav li.has-child ul{padding:0;} #header.HeightMin nav li.has-child ul li{height: auto;} /*#header.HeightMin nav ul li a{padding:18px 40px 15px;}*/

/* グローバルナビ　ドロップダウン */
nav{background:#FFF;text-align:left;border-radius: 100vh;border:1px solid #a5a2c0;}
nav ul{list-style: none;display: flex;justify-content: center;padding: 0 50px;} nav ul ul{display: block;} nav ul li{position: relative;width:25%;}
nav ul li a{display: block;text-decoration: none;color: #2e2b29;padding:16px 35px 17px;transition:all .3s;font-size: 115%;line-height: 115%;text-align: center;} nav ul li a span{display: block; color:#3aa7c4;font-size:80%;letter-spacing: 1px;} nav ul li a:hover{color:#3aa7c4;}
/*nav ul li li a{padding:10px 35px;}*/
/*==矢印の設定*/
nav ul li.has-child::before{content:'';position: absolute;left:25px;top:25px;width:6px;height:6px;border-top: 2px solid #999;border-right:2px solid #999;transform: rotate(135deg);} #header.HeightMin nav ul li.has-child::before{left:15px;}
/*下の階層を持っているulの指定*/
nav li.has-child ul{position: absolute;left:0;top:65px;z-index: 4;background:#cac1b9;width:100%;visibility: hidden;opacity: 0;transition: all .3s;padding: 0;} nav li.has-child ul li{width:100%;}
nav li.has-child:hover > ul,nav li.has-child ul li:hover > ul,nav li.has-child:active > ul,nav li.has-child ul li:active > ul{visibility: visible;opacity: 1;}
/*ナビゲーションaタグの形状*/
nav li.has-child ul li a{color:#2e2b29;border-bottom:solid 1px rgba(255,255,255,0.6);font-size: 90%;} nav li.has-child ul li:last-child > a{border-bottom:none;} nav li.has-child ul li a:hover,nav li.has-child ul li a:active{background:#3aa7c4;color: #FFF;}
@media screen and (max-width:768px){
	nav{padding: 0;}  
	nav ul{display: block;}  
	nav li.has-child ul,nav li.has-child ul ul{position: relative;left:0;top:0;width:100%;visibility:visible;opacity:1;display: none;transition:none;}
	nav ul li a{border-bottom:1px solid #ccc;}
	nav ul li.has-child::before{left:20px;}
	nav ul ul li.has-child::before{transform: rotate(135deg);left:20px;}
    nav ul li.has-child.active::before{transform: rotate(-45deg);}
}
/*ハンバーガーメニュー*/
.c-hamburger-menu {position: relative;display: none;}
@media screen and (max-width: 815px) {
	.PCMenu{display: none;} nav{border:none;} #header{height: auto;padding: 0 0 5px;} #header.HeightMin{position: static;} .headerBar{line-height: 115%;padding: 10px 0;}
	.c-hamburger-menu{display: block;}
	.c-header__logo{float: right;} .c-header__logo img{max-height: 40px;} .c-header__list img{max-height: 70px;margin-bottom: 5px;}
  	.c-hamburger-menu__list {background-color: #FFF;border:1px solid #eee;align-items: flex-start;display: flex;flex-direction: column;left: -2em;padding: 2rem 2rem 1rem; position: absolute;transform: translateX(-100%);transition: 0.3s;top: 110%;width: 100%;z-index: 99;} .c-header__list-item{margin-bottom: 10px;}
  	#hamburger:checked ~ .c-hamburger-menu__list {transform: translateX(0%);transition: 0.3s;}
}
.c-hamburger-menu__input {display: none;}
.c-hamburger-menu__bg {
  background-color: #000; /* カスタマイズしてください */
  cursor: pointer;
  display: none;
  height: 100vh;
  left: 0;
  opacity: 0.4; /* カスタマイズしてください */
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}
#hamburger:checked ~ .c-hamburger-menu__bg { display: block;}
.c-hamburger-menu__button {display: none;}
@media screen and (max-width: 815px) {
	.c-hamburger-menu__button {
		align-items: center;
		appearance: none;
    background-color: transparent;
    border: none;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    gap: 5px; /* カスタマイズしてください */
    height: 32px; /* カスタマイズしてください */
    justify-content: center;
    width: 32px; /* カスタマイズしてください */
  }
}
.c-hamburger-menu__button-mark {
  background-color: #000; /* カスタマイズしてください */
  display: block;
  height: 1px; /* カスタマイズしてください */
  transition: 0.3s; /* カスタマイズしてください */
  width: 20px; /* カスタマイズしてください */
}
@media screen and (max-width: 815px) {
  #hamburger:checked
    ~ .c-hamburger-menu__button
    .c-hamburger-menu__button-mark:nth-of-type(1) {
    transform: translate(2px, 1px) rotate(45deg); /* カスタマイズしてください */
    transform-origin: 0%; /* カスタマイズしてください */
  }
  #hamburger:checked
    ~ .c-hamburger-menu__button
    .c-hamburger-menu__button-mark:nth-of-type(2) {
    opacity: 0;
  }
  #hamburger:checked
    ~ .c-hamburger-menu__button
    .c-hamburger-menu__button-mark:nth-of-type(3) {
    transform: translate(2px, 3px) rotate(-45deg); /* カスタマイズしてください */
    transform-origin: 0%; /* カスタマイズしてください */
  }
}
/* フッター
------------------------------------------------------------*/
#footer{width:100%;display:block;clear:both;padding:20px 0 15px;background: #3aa7c4;line-height:100%;overflow: hidden;position: relative;}
#footer ul {display:flex;justify-content:center;flex-wrap: wrap;margin: 5px 0 0;padding: 0;} #footer ul li{padding: 0 20px 0;margin-bottom:10px;} #footer ul li a{text-decoration: none;color: #FFF;} #footer ul li a:hover{color: #e8dcd4;}
.copyright {display:block;background:#a5a2c0;padding:40px 0 60px;font-size:90%;text-align:center;letter-spacing:1px;line-height: 135%;}
.copyright img {margin:10px auto 0;max-height: 80px;max-width: 80%;}
/* ページトップ */
#pagetop {display: block;text-align: center;} #pagetop a {display: inline-block;width: 70px;height: 70px;background: url("../img/icon_pagetop.png")no-repeat;background-size: cover;text-indent: 100%;white-space: nowrap; overflow: hidden;} #pagetop a:hover { opacity:0.7; }
@media screen and (max-width: 815px) {
	#footer ul li{letter-spacing: 0;padding: 0 15px 0;}
}
@media screen and (max-width: 640px) {
	#footer ul li{margin-bottom:15px;}
}

/* タイトル
------------------------------------------------------------*/
h1{display:block;font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;} .subpage h1{font-size:220%;font-weight:600;letter-spacing:1px;line-height: 100%;color:#3aa7c4; margin:20px 0 30px;text-align: center; } .subpage h1 span{font-weight:normal;font-size:50%;} .subpage h1.toppageh1{font-size:130%;margin:0 0 25px;line-height: 180%;font-weight: 400;color:#2e2b29;font-family: "メイリオ","Meiryo",arial,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;}

h2 {display:block;text-align:center;font-size:220%;font-weight:600;letter-spacing:1px; color:#3aa7c4; margin:20px 0 30px;font-family: "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;}
h2 span {display: block;margin-top: 10px;font-size:55%;font-weight:normal;}
.subpage h2{margin:100px 0 30px;font-size:180%;} .subpage h2:first-child{margin-top: 0;}
.subpage h2 span{position: relative;display: inline-block;padding-bottom:10px;border-bottom: 1px solid black;font-size:75%;color: #2e2b29;}      
.subpage h2 span::before, .subpage h2 span::after {position: absolute;top: 100%;left:50%;transform:translateX(-50%);content: '';border: 10px solid transparent;}
.subpage h2 span::before {border-top: 10px solid black;}
.subpage h2 span::after {margin-top: -1px;border-top: 10px solid #f6f1ed;}

h3 {display:block;text-align:center;font-size:130%;}
.subpage h3 {position: relative;font-size:135%;padding: 0 7px 10px;text-align: left;margin: 50px 0 30px;border-bottom: solid 2px #cccccc;}
.subpage h3:after {position: absolute;bottom: -2px;left:0;content: '';width: 20%;height:2px;background-color: #333;}
.subpage h3#paper,.subpage h3#book,.subpage h3#review{margin-top: -150px; padding-top: 150px;}

h4 {display:block;font-size:110%;}
.subpage h4 {position: relative;padding: 20px 10px 10px;border-top: #a5a2c0 solid 2px;margin: 90px 0 25px;text-align: right;}
.subpage h4::before{position: absolute;content: '';top: -16px;left: 10px;width: 130px;height: 30px;border-radius: 30px;background: #a5a2c0;}
.subpage h4::after{position: absolute;content: 'PROFILE';top: -16px;left: 10px;width: 130px;color: #ffffff;font-size: 13px;line-height: 30px;text-align: center;letter-spacing: 1px;}.subpage h4.tema::after{content: 'THEME';}.subpage h4.message::after{content: 'MESSAGE';}.subpage h4.content::before{width: 200px;} .subpage h4.content::after{content: 'RESEARCH CONTENT';width: 200px;}
.AchievementArea h4::after{content: 'Achievement';}

h5 {display:block;text-align:left;font-size:110%;}
.subpage h5 {position: relative;padding: 1em;border-top: #009250 solid 2px;}
.subpage h5:before {content: '';position: absolute;bottom: -20px;display: inline-block;width: 8%;height: 6px;left: 50%;transform: translateX(-50%);background-color: #333;border-radius: 3px;} 

@media screen and (max-width: 640px) {
	.subpage h1.toppageh1{font-size:105%;letter-spacing: 0;} .subpage h1{font-size:185%;}
	h2{letter-spacing: 0;font-size: 115%;} .toppage h2{font-size: 30px;} .subpage h2 {font-size: 155%;} .subpage h4{padding-top:30px;letter-spacing: 0px;}
}

/* パンくず
------------------------------------------------------------*/
.breadcrumb {display:block;padding:20px 0 10px;font-size:80%;letter-spacing: 1px;line-height: 145%;}
.breadcrumb li{display:inline;list-style: none;}
.breadcrumb li:after{content: '\025b6';padding: 0 4px 0 10px;color: silver;}
.breadcrumb li:last-child:after{ content: ''; }
.breadcrumb li a {text-decoration: none;}

/* トップページ
------------------------------------------------------------*/
/* スライダー */
.slider li a{text-decoration: none;display: block;padding: 10px 10px;} .slider li a:hover{background: #e8dcd4;}
.slider li a p {padding: 10px 10px 0; line-height: 1.5;overflow: hidden;height: 3.5em;display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 2;}
.slick-slide {height: auto;transform: scale(.80);transition: opacity .5s, transform .5s;width: 100%;}
.slick-center {transform: scale(1);}

.YoutubeArea{width: 100%;aspect-ratio: 16 / 9;} .YoutubeArea iframe, .YoutubeArea .AnimeBtn {width: 70%;height: 70%;margin: 0 auto;}

/* タブ */
.tab2 {display:flex;justify-content: center;flex-wrap: wrap;text-align: center;/*flex-direction: row;background-color: #fff !important;margin: 0 !important;*/}
.tab2__item {width:180px;margin:0 3px 6px;color: #FFF;/*flex: 1;flex-basis: 120px;*/}
.tab2__link {display: block;text-decoration: none;background-color: #3aa7c4;cursor: pointer;border-radius:100vh;padding:10px 5px;}
.tab2__link.on {background-color: #35318f;color: #FFF;}
.tab2-body__item {margin: 30px 15px;display: none;text-align: center;}
.tab2-body__item.on {display: block;}
/* INFORMATION お知らせ */
dl.NewsList {display:block;margin-bottom: 40px;letter-spacing: 1px;border-bottom: 1px dotted #2e2b29;}
.toppage dl.NewsList dt {display:block;width:170px;float:left;clear:both;padding: 21px 10px 20px 10px;border-top: 1px dotted #2e2b29;text-align: left;}
.toppage dl.NewsList dd {display:block;width:calc(100% - 170px);line-height: 165%;float:right;text-align:left;padding: 21px 5px 28px 0;border-top: 1px dotted #2e2b29;}
.subpage dl.NewsList dt {display:block;width:13%;float:left;clear:both;margin-bottom:40px;letter-spacing: 0;}
.subpage dl.NewsList dd {display:block;width:87%;line-height: 165%;float:right;text-align:left;margin-bottom:40px;}
dl.NewsList a {text-decoration: none;border-bottom: 1px solid #878787;} dl.NewsList a:hover {color: #0f798c;border-color: #0f798c;}
@media screen and (max-width: 899px) {
	.subpage dl.NewsList dt{width: 17%;} .subpage dl.NewsList dd{width: 83%;}
	.toppage dl.NewsList dt{width: 30%;} .toppage dl.NewsList dd{width: 70%;}
	.YoutubeArea iframe, .YoutubeArea .AnimeBtn {width: 90%;height: 90%;}
}
@media screen and (max-width: 640px) {
	.toppage dl.NewsList dt, .toppage dl.NewsList dd,.subpage dl.NewsList dt, .subpage dl.NewsList dd {width:100%;float:none;}
	.toppage dl.NewsList dt{padding-bottom: 5px;}
	.toppage dl.NewsList dd{border:none;padding: 0 10px 13px;}
	.YoutubeArea iframe, .YoutubeArea .AnimeBtn {width: 95%;height: 95%;}
	.tab2__item {width:130px;font-size:90%;letter-spacing: 0;}
}
/*PICKUP*/
.pickupicon{
	display: inline-block;
	float: left;
	background: #000;
	padding: 3px 20px 2px;
	font-size:80%;
	color: #FFF;
	margin: 12px 0;
}
ul.slideList{
  display: inline-block;
	float: right;
  width: calc(100% - 100px);
	height: auto !important;
	min-height: 40px;
  position: relative;
  overflow:hidden;
  padding:0;
  margin:0;
  box-sizing:border-box;
}
ul.slideList li{
	display:block;
	float:left;
	width:100%;
	letter-spacing: 0;
	line-height: 145%;
	font-size: 100%;
  	transform:translateX(100%);
  	position: absolute;
	margin: 15px 0;
}
ul.slideList li a{color: #000;text-decoration: none;margin-left: 12px;} ul.slideList li a:hover{color: #d90000;}
ul.slideList li span{background: #000000; border-radius: 3px; padding: 3px 7px 3px;font-size:90%; line-height: 125%;color: #FFF; margin-right: 10px;}
ul.slideList li:nth-of-type(1){transform:translateX(0);animation:slide 30s 0s infinite;}
ul.slideList li:nth-of-type(2){animation:slide 30s 10s infinite;}
ul.slideList li:nth-of-type(3){animation:slide 30s 20s infinite;}
@keyframes slide{
  0%{transform:translateX(100%);opacity:1;}
  3%{transform:translateX(0%);opacity:1;}
  30%{transform:translateX(0%);opacity:1;}
  33%{transform:translateX(-100%);opacity:0;}
  99.999%{transform:translateX(-100%);opacity:0;}
  100%{transform:translateX(100%);opacity:1;}
}
@media only screen and (max-width:999px){
	ul.slideList{min-height: 70px;}
}
@media only screen and (max-width:810px){
	ul.slideList{min-height: 75px;width: calc(100% - 60px);} ul.slideList li a{margin-left:8px;}
	.pickupicon{padding:3px 7px 2px;}
}
@media only screen and (max-width:480px){
	ul.slideList li {font-size:95%;line-height: 130%;margin: 10px 0;}
}

/* 下層ページ
------------------------------------------------------------*/
/*研究成果*/
.AchievementArea ul.AchievementList{border-top: 1px dotted #333;padding-top: 20px;} .AchievementArea ul.AchievementList li{margin-bottom:20px;letter-spacing: 0.5px;text-align: left;padding-bottom: 20px; border-bottom: 1px dotted #333;}
@media only screen and (max-width:480px){
	.AchievementArea ul.AchievementList li{margin-bottom:30px;}
}
/*お知らせ*/
ul.infoList{display: block;} ul.infoList li{display: block;display: flex;flex-wrap: wrap;flex-wrap: nowrap;} ul.infoList li p{letter-spacing: 1px;} ul.infoList li p.date{letter-spacing: 0;min-width: 140px;} 
ul.infoList li p.info_icon,ul.infoList li p.whats_icon{font-size:90%;min-width:130px;} ul.infoList li p.info_icon span,ul.infoList li p.whats_icon span{display: inline-block;background: #3aa7c4;border-radius: 50vh;padding:4px 5px;letter-spacing: 0;color: #FFF;min-width:110px;text-align: center;} ul.infoList li p.whats_icon span{background: #a5a2c0;}








/*サブメニュー*/
ul.subMenuList{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin-bottom: 100px;
}
ul.subMenuList li{width: 24%;margin: 0 1% 5px 0;}
ul.subMenuList li:last-child, ul.subMenuList li.TwoMenu:last-child{margin-right: 0;}
ul.subMenuList li.TwoMenu{width: 49%;margin: 0 2% 5px 0;}
ul.subMenuList li.ThreeMenu{width: 31.3%;margin: 0 2% 5px 0;}
@media only screen and (max-width:999px){
	ul.subMenuList li{width: 44%;margin: 0 3% 20px;}
}
@media only screen and (max-width:810px){
	ul.subMenuList li.ThreeMenu{width: 90%;margin: 0 auto 20px;}
}
@media only screen and (max-width:480px){
	ul.subMenuList li{width: 49%;margin: 0 0.5% 20px;letter-spacing: 0;}
}
/*TopImage*/
.subpage .TopImageArea {
	text-align: center;
	background: url("../images/bg04.jpg")no-repeat center center;
}
.subpage .TopImageBusiness {background-image: url("../images/top_slider08.jpg");background-size: cover;}
.subpage .TopImageWorks {background-image: url("../images/top_slider07.jpg");background-size: cover;}
.subpage .TopImageCompany {background-image: url("../images/top_slider04.jpg");background-size: cover;}
.subpage .TopImageRecruit {background-image: url("../images/top_slider05.jpg");background-size: cover;}
.subpage .TopImageRecruitNew {background-image: url("../images/top_slider06.jpg");background-size: cover;}
.subpage .TopImageContact {background-image: url("../images/top_slider03.jpg");background-size: cover;}
.subpage .TopImageArea .inner{padding: 130px 0 110px;}
.subpage .TopImageArea .inner h2{
	font-size:185%;
	color:#FFF;
	font-weight: bold;
	border: none;
	margin:0;
}
/* 採用情報
------------------------------------------------------------*/
.RecruitArea dl dt,.RecruitArea dl dd{padding-top:50px;}
.RecruitArea dl dt{padding-right:2%;}
.RecruitArea dl dd{padding-left:2%;}
.RecruitArea h3{margin: 15px 0;font-size: 115%;}
/* 募集要綱 */
.RecruitArea table{width:100%;}
.RecruitArea table th {
	padding: 30px 25px;
    border-bottom:3px solid #333;
    white-space: nowrap;
     -moz-text-align-last: justify;
     text-align-last: justify;
     text-justify:inter-ideograph;
}
.RecruitArea table td {
	border-bottom:1px solid #ddd;
	padding: 30px 25px;
}
.RecruitArea table p{margin:0 0 10px;}
@media only screen and (max-width:810px){
	.RecruitArea dl dt,.RecruitArea dl dd{padding:70px 0 0;} .RecruitArea dl dd.LRcolumn{padding-top:0 !important;}
	.RecruitArea table{font-size:95%;border-top:1px solid #ddd;}
	.RecruitArea table th {display: block;padding: 7px 10px 7px;border:none;background: #F7F7F7;text-align-last: left;}
	.RecruitArea table td {display: block;padding: 10px 10px 11px;letter-spacing: 0;}
}
/* 会社概要
------------------------------------------------------------*/
/* トップメッセージ */
.TopmessageArea dt {width:70%;}
.TopmessageArea dd {width:20%;}
.TopmessageArea img {margin: 5px 0 10px;} .TopmessageArea img.name {max-width:100px;}
@media only screen and (max-width:999px){
	.TopmessageArea dt{width:67%;}
	.TopmessageArea dd {width:25%;}
}
@media only screen and (max-width:810px){
	.TopmessageArea dt, .TopmessageArea dd {width:100%;float: none;}
	.TopmessageArea img.Photo{max-width:200px;}
}
/* 実績テーブル */
.OutlineArea table{width:auto;border: 5px solid #f5f5f5;font-size: 95%;}
.OutlineArea table th {
	padding: 7px 20px;
	border:1px solid #f5f5f5;
	text-align: center;
}
.OutlineArea table td {
	border:1px solid #f5f5f5;
	padding: 7px 20px;
	text-align: right;
}
@media only screen and (max-width:810px){
	.OutlineArea table{width: 100%;} .OutlineArea table th, .OutlineArea table td{padding: 5px 5px;letter-spacing: 0;}
}
/* 事業紹介
------------------------------------------------------------*/
.BusinessArea ul li{
	width:33.3%;
	float: left;
	padding: 0 10px;
	margin-bottom: 60px;
}
.BusinessArea ul li h3{font-size: 110%;padding: 3px 7px 5px;margin: 0;}
@media only screen and (max-width:999px){
	.BusinessArea ul li{width:50%;}
}
@media only screen and (max-width:810px){
	.BusinessArea ul li{width:100%;}
}





















/* ニュースレター
------------------------------------------------------------*/
ul.NewslettersList {
	margin:0 0 30px;
	line-height: 145%;
}
ul.NewslettersList li {
	display: block;
	margin-bottom: 1px;
}
ul.NewslettersList li span {
	letter-spacing: 0;
	margin-left: 2em;
}
ul.NewslettersList li a {
	display: block;
	padding:10px 20px 10px;
	background: #f5f5f5;
	position: relative;
	transition: .3s;
	text-decoration: none;
}
ul.NewslettersList li a:hover {background: #e7f6fb;}
ul.NewslettersList li a::after {
  position: absolute;
  content: '';
  bottom: 0;
  left: 0;
  width: 0;
  height: 2px;
  background-color: #e6e6e6;
  transition: .3s;
}
ul.NewslettersList li a:hover::after {width: 100%;}
/*PDF無し*/
ul.NewslettersList li.NoPDF {
	margin-bottom: 1px;
	padding:10px 20px 10px;
	background: #f5f5f5;
}
/*リンク集用*/
ul.NewslettersList li.LinkBox{text-align: center;}
ul.NewslettersList li.LinkBox a{display: inline-block;padding:5px 20px 2px;background: none;margin-bottom: 6px;}
@media only screen and (max-width:810px){
	ul.NewslettersList li{text-align: center;}
	ul.NewslettersList li span{display: block;margin: 0;}
}
@media only screen and (max-width:480px){
	ul.NewslettersList li a{padding:10px 7px;line-height: 125%;font-size: 95%;}
	ul.NewslettersList li.LinkBox a{margin-bottom: 8px;}
}
/* 当研究会について
------------------------------------------------------------*/
.ConstitutionArea p{
	letter-spacing: 0;
	line-height: 145%;
}
ul.MemberList{
	display: block;
	margin-bottom: 20px;
}
ul.MemberList li{
	display: block;
	width: 50%;
	float: left;
	margin-bottom: 5px;
}
ul.MemberList li span{
	font-size: 95%;
	letter-spacing: 0;
}
ul.MemberList li.Full{
	width: 100%;
	float: none;
}
@media only screen and (max-width:896px){
	ul.MemberList li{width: 100%;float: none;}
}
/* 活動内容
------------------------------------------------------------*/
ul.AwardList{
	display: block;
	margin: 20px 0 20px 22px;
}
ul.AwardList li{
	display: block;
	background: url("../images/icon_award.png")no-repeat 0 0;
	padding: 2px 0 20px 27px;
	line-height: 145%;
}
ul.AwardList li span{
	font-size: 95%;
	letter-spacing: 0;
	margin-left: 5px;
}
/*年会*/
.AnnualmeetingsList{}
/*年会*/
.AnnualmeetingsList dl{border-bottom:1px dotted #aaa;display:flex;flex-wrap: wrap;}
.AnnualmeetingsList dl dt{ width:calc(4em + 14px);padding: 7px; border-top:1px dotted #aaa;background: url("../images/bg_gray.gif");box-sizing: border-box;}
.AnnualmeetingsList dl dd{ width:calc(100% - (4em + 14px));padding: 7px;border-top:1px dotted #aaa;box-sizing: border-box;}
.AnnualmeetingsList dl.Eng dt{ width:calc(6em + 14px);}
.AnnualmeetingsList dl.Eng dd{ width:calc(100% - (6em + 14px));}

@media only screen and (max-width:896px){
	.AnnualmeetingsList .column .column__col-30{text-align: center;}
}
@media only screen and (max-width:480px){
	.AnnualmeetingsList dl dt, .AnnualmeetingsList dl dd, .AnnualmeetingsList dl.Eng dt, .AnnualmeetingsList dl.Eng dd{width: 100%;} .AnnualmeetingsList dl dt, .AnnualmeetingsList dl dd{padding: 4px 7px;} .AnnualmeetingsList dl dd{border: none;}
	ul.AwardList{margin-left:0;}
}
/* 入会案内
------------------------------------------------------------*/
.FlowArea{display: flex;justify-content: center;}
.FlowArea ul {
	width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: center;
}
.FlowArea ul > li {-ms-flex-preferred-size: 85px;flex-basis: 85px;padding: 0;}
.FlowArea ul > li:last-child{-ms-flex-preferred-size: 60px;flex-basis: 60px;}
.FlowArea ul > li.TwoLine{-ms-flex-preferred-size: 105px;flex-basis: 105px;}
.FlowArea ul > li .icon {
    font-family: 'Montserrat', sans-serif;
    font-size: 18px;
    line-height: 50px;
    width: 50px;
    color: #fff;
    background: #0097cc;
    margin: 0 0 20px;
    display: block;
    border-radius: 50%;
    text-align: center;
    position: relative;
    letter-spacing: 2px;
}
.FlowArea ul > li.TwoLine .icon{margin-left:13px;}
.FlowArea ul > li .icon::before {
    content: "";
    border: solid transparent;
    border-width: 8px;
    border-top-color: #0097cc;
    position: absolute;
    top: calc(100% - 2px);
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}
.FlowArea ul > li p {
	min-height:240px;
    padding: 5px 15px;
    margin: 0;
    border: 3px solid #0097cc;
	background: url("../images/bg_gray.gif");
    position: relative;
	writing-mode: vertical-rl;
}
.FlowArea ul > li:not(:last-child) p::before{
    content: "";
    width: 14px;
    height: 14px;
    margin-right: 5px;
    display: block;
    border-top: 4px solid rgb(102,213,233);
    border-right: 4px solid rgb(102,213,233);
    position: absolute;
    top: calc(50% - 14px);
    left: 104%;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.FlowArea ul > li p {
	font-size:115%;
    font-weight:bold;
    color: #0097cc;
    -ms-flex-preferred-size: 20%;
    flex-basis: 20%;
    margin-bottom: 1vh;
    text-align: center;
	line-height: 115%;
}
/*.FlowArea ul > li p span{
	display: block;
	color: #000;
	font-weight: normal;
	font-size:80%;
}*/
