@charset "UTF-8";
/* print setting */
@media print {
body {
-webkit-print-color-adjust: exact;
top:0 !IMPORTANT;
left:0 !IMPORTANT;
width:200mm !IMPORTANT;
height:290mm !IMPORTANT;
}
}

@media screen and (min-width: 680px){   
  .pc { display:block; }
  .sp { display:none; }
}
@media screen and (max-width: 680px){   
  .pc { display:none; }
  .sp { display:block; }
}

/* all
-------------------- */
html { font-size: 62.5%; } 
body {
	 margin: 0;
  color: #fff;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
	-webkit-font-smoothing: antialiased;
  font-feature-settings : "palt";
 -webkit-text-size-adjust: 100%;
  font-size: 1.6rem; 
  background: url("../img/back.jpg") ;
  background-attachment: fixed;
  background-size: cover;
  background-position: center;
}
*, *::before, *::after {
  box-sizing: border-box;
}
b, strong, .bold{
	font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI semibold", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic", "Segoe UI", Verdana, Meiryo, sans-serif;
}

a:link, a:visited { color: #333; transition: 0.3s; }
a:hover, a:active { color: #396cde; }
a img:hover,
div#logo:hover {
  opacity:0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
	-moz-opacity:0.7;
	-khtml-opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
  -webkit-transition: 0.3s ease-in-out;  
	-moz-transition: 0.3s ease-in-out;  
	-o-transition: 0.3s ease-in-out;  
	transition: 0.3s ease-in-out;
}

p {line-height: 1.7;}
.ind { text-indent: 1em; }
img { height: auto; max-width: 100%; box-sizing: border-box; }
img.lp { border: 1px solid #a9a9a9; }
figure {text-align: center;}
.middle img{ vertical-align: middle; }
ul li { list-style-type: none; }

/*YouTubeレスポンシブサイズ*/
.youtube {position: relative;max-width: 100%;padding-top: 56.25%;}
.youtube iframe {position: absolute;top: 0;right: 0;width: 100%;height: 100%;}

/*リスト 黒丸 緑 */
ul.disc li {list-style-type: disc; color: #74caa9;}
ul.disc li span {color: #333;}

/* text-layout */
.txt_left { text-align: left!important; word-wrap: break-word; }
.txt_right { text-align: right!important; word-wrap: break-word; }
.cnt { text-align: center; }
.no-wrap { display: inline-block; }

.strong{ font-weight: bold; }

/*別窓アイコン表示*/
.blank { background: url(img/blank.png) right center no-repeat; padding: 0 20px 0 0;}

p {text-align: justify;text-justify: inter-character;}
p.bk { color:#614616; }

.frame{border: 1px solid #999; border-radius: 15px; padding:4%; margin: 4%;}

/* トップページへボタン
-------------------- */
.pagetop {width: 72px;height: 72px; position: fixed; z-index: 1000;}
.pagetop a {
	width: 72px;
	height: 72px;
	background-color: #0077c1;
	color: #fff;
	font-size: 1.2rem;
	text-align: center;
	border-radius: 50%;
	-o-border-radius: 50%;
	-ms-border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	line-height: 1.2;
	display: block;
	text-decoration: none;
	padding-top: 12px;
	transition: all 300ms 0s ease;
}
.pagetop a::before {
	content: '▲';
	display: block;
	color: #fff;
	margin-bottom: 4px;
}
.pagetop a:hover { background-color: #333; transition: all 300ms 0s ease;}

/* ローダー
--------------------------------------------*/
.bound { animation: bound 3.0s linear infinite;}
.bound img {  display: block;  margin-bottom: 10px;}
@keyframes bound {
   0% {
      transform: translateY(0);
   }
   50% {
      transform: translateY(-60px);
   }
   100% {
      transform: translateY(0px) scaleY(1);
   }
}
.loader-wrap {
   position: fixed;
   display: flex;
   align-items: center;
   justify-content: center;
   width: 100%;
   height: 100%;
   background: #333;
   z-index: 10000000;
}
.loader p {
   text-indent: -9999px;
   background: url("../img/loading.png") center center no-repeat;
   background-size: 300px auto;
   width: 480px;
   height: 220px;
}


/* wrapper
-------------------- */
div#wrapper {
  width: 100%;
  height: auto !important;
  height: 100%;
  min-height: 100%;
  /*position: relative;*/
}

/* header
-------------------- */
div#header { width: 100%; padding: 5% 0; background: #000; position: fixed; z-index: 1000; }
/* logo
-------------------- */
div#logo {	max-width: 350px;	min-width: 20%;	margin: 0 auto;}

/* container
-------------------- */
#container { height: 100%;}

.main_img { display: block; max-width:350px; margin: 8rem auto; }
.theme { font-size: 2rem; }
.theme_copy { color:#b19851; font-size: 3rem; font-weight: bold; text-align: center;}

#x-frame {border-radius: 12px; background: #000; padding: 1rem; margin: 0 auto; width: 65%; }
ul.x {display: flex; justify-content: space-around; align-items: center; padding: 2rem;}
ul.x li.x-logo { width: 35%; padding: 2rem; margin: 0 auto; text-align: center;}
ul.x li.x-logo img {width: 40%; margin-bottom: 1rem; }
ul.x li.x-logo figure { margin: 0 auto;  text-align: center; color:#fff; text-decoration: none;}
ul.x li.x-logo a { text-decoration: none;}
ul.x li.x-read { width: 65%; padding: 2rem; margin: 0 auto; text-align: center;}
.polisy a {color:#fff;}

.bg_gold {padding: 6rem 4rem 2rem; margin: 12rem 0; background-image: url(../img/back_gold.png) ; background-position: center top; background-size: 100% auto;}


/*movieレスポンシブサイズ */
div.movie {position:relative; width: 100%; max-width: 1200px; margin: 0 auto; }
div.movie::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 56.25%;
}

div.movie iframe{
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

/* Color Atras
-------------------- */
.fs140{font-size:140%; }
ul.Atlas {margin: 0 auto;}
ul.Atlas li.img { text-align: center; margin: 0 auto;}
ul.Atlas li.txt {width: 70%;  margin: 0 auto; padding: 0; font-size: 14px; }
ul.Atlas-PdfList li {
list-style-type: none;
border-bottom: dotted 1px #999;
}
ul.Atlas-PdfList li a{text-decoration: none!important;display: block; color: #fff; padding:8px 0 8px 30px; }
ul.Atlas-PdfList li a::before{
  content: "";
  display: inline-block;
  width: 30px;
  height: 30px;
  background: url(../img/pdf_icn_red.png) no-repeat;
  background-size: contain;
  padding-left: 15px;
  vertical-align: middle;
}
ul.Atlas-PdfList li a:hover{ background: #26375c; padding:8px 0 8px 35px;}
.pdl30 {padding-left: 30px;}
.mgt20 {margin-top: 20px;}


/* section
-------------------- */
section {height:100%;overflow: hidden;}

/* 戻るボタン
-------------------- */
.close_btn {
  max-width: 400px;
  margin: 4% auto;
  text-align: center;
}
.close_btn a {
  display: block;
  background: #444; 
  margin: 4%;
  padding: 12px 30px 12px 20px; 
  color:#fff;
  text-decoration: none;
  position: relative;
}
.close_btn a::after {
  content: "";
  position: absolute;
  top: 40%;
  right: 20px;
  width: 7px;
  height: 7px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
}
.close_btn a:hover {display: block; opacity: 0.7; transition: all 0.3s; }


/* title
-------------------- */
h1 { font-size: 130%;}
h2 { font-size: 2.5rem;}
h3 { font-size: 140%;}
.blue {color:#357BF1;}

/* リボン
-------------------- */
h2.ribbon { font-size: 3rem; font-weight: bold; color: #fff; margin: 0 auto;}
h2.ribbon {
  --s: 1.4em; /* the ribbon size */
  --d: .8em;  /* the depth */
  --c: .8em;  /* the cutout part */
  padding: 0 calc(var(--s) + 1.8em) var(--d);
  line-height: 2.5;
  background:
    conic-gradient(at left  var(--s) bottom var(--d),
     #0000 25%,#0008 0 37.5%,#0004 0) 0   /50% 100% no-repeat,
    conic-gradient(at right var(--s) bottom var(--d),
     #0004 62.5%,#0008 0 75%,#0000 0) 100%/50% 100% no-repeat;
  clip-path: polygon(0 var(--d), var(--s) var(--d),var(--s) 0,calc(100% - var(--s)) 0,calc(100% - var(--s)) var(--d),100% var(--d),calc(100% - var(--c)) calc(50% + var(--d)/2),100% 100%,calc(100% - var(--s) - var(--d)) 100%,calc(100% - var(--s) - var(--d)) calc(100% - var(--d)),calc(var(--s) + var(--d)) calc(100% - var(--d)),calc(var(--s) + var(--d)) 100%,0 100%,var(--c) calc(50% + var(--d)/2));
  background-color: #0077c1; /* the main color */
  width: fit-content;
}

/* Session 下線タイトル
-------------------- */
.session {
 position: relative;
 padding: 1rem;
 text-align: center;
 font-size: 3.5rem;
 color:#0071bc;
 margin-bottom: 2rem;
}
.session:before {
 position: absolute;
 bottom: -5px;
 left: calc(50% - 30px);
 width: 60px;
 height: 5px;
 content: '';
 border-radius: 3px;
 background: #0071bc;
}

.period { font-size: 2.4rem; text-align: center; color:#614616; margin-bottom: 2rem;}
.period span { font-size: 2rem;}



/* セミナーカード
-------------------- */
ul.card { display: flex; flex-wrap: wrap; justify-content: space-around; color:#614616; max-width: 1240px; margin: 0 auto;}
ul.card >li { width: 48%; background: #fffaf1; border-radius: 12px; padding: 2rem; margin-bottom: 2rem;}
ul.card >li.card_none { background: none; }
ul.card_inner { display: flex; justify-content: space-around;}
ul.card_inner li { display: flex; flex-direction: column;}
ul.card_inner li.photo { width: 35%; position: relative; }
ul.card_inner li.photo2 { width: 50%; position: relative; }
 ul.card_inner li.photo figure,
 ul.card_inner li.photo2 figure { font-size: 1.6rem; text-align: left; }
  ul.card_inner li.photo figure span,
  ul.card_inner li.photo2 figure span { font-size: 1.4rem; display: inline-block;}
ul.card_inner li.card_contents { width: 65%; padding: 0 1rem 0 2rem; }
 ul.card_inner li.card_contents .theme { background: #0071bc; color: #fff; font-size: 1.8rem; padding:0.3rem 1rem;  margin-bottom: 0.5rem}
ul.card_inner li.card_contents p { }
ul.card_inner li .bt { margin-top: auto; }

.btn,
a.btn,
button.btn {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
}
a.btn-flat {
  width: 100%;
  overflow: hidden;
  padding: 1.5rem 3rem;
  color: #fff;
  border-radius: 0;
  background: #000;
}
a.btn-flat span {
  position: relative;
}
a.btn-flat:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 50rem;
  height: 50rem;
  content: "";
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  -webkit-transform: translateX(-98%) translateY(-25%) rotate(45deg);
  transform: translateX(-98%) translateY(-25%) rotate(45deg);
  background: #b29947;
}
a.btn-flat:hover:before {
  -webkit-transform: translateX(-9%) translateY(-25%) rotate(45deg);
  transform: translateX(-9%) translateY(-25%) rotate(45deg);
}





/* footer
-------------------- */
footer#footer {
  width: 100%;
  margin-top: 5%;
  background-color: #666;
  text-align: center;
	padding-top: 24px;
	padding-bottom: 24px;
  /*position: absolute;*/
  bottom: 0;
}
footer.footer_inner { height: 100%;}
footer#footer small { color: #fff; font-size: 0.8rem;}


/* --- clearfix --- */
.clearFix:after {
content: ".";
display: block;
height: 0;
clear: both;
visibility: hidden;
}