@charset "utf-8";
@import "https://use.fontawesome.com/releases/v5.13.0/css/all.css";
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200;400;500;600;700;900&display=swap');
/* CSS Document */
/* -------------------------------------------- Basic Setting */	
body{
	font: 14px/1.6 "Hiragino Kaku Gothic Pro",Osaka,"メイリオ","ＭＳ Ｐゴシック","MS PGothic",Verdana,Arial,sans-serif;
	margin:0;
	color:#313131;
	width: 100%;
	max-width: 100%;
}

html {
	scroll-behavior: smooth;
}
/*--
a{
    color:blue;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    transition: all 0.5s;
}
a:visited{
    color:blue;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    transition: all 0.5s;
}
a:hover {
    color: #F5A862;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    transition: all 0.5s;
}
--*/

@media screen and  (min-width: 960px) and (max-width: 1350px){
  .br-bp { display:block;}
}
@media screen and (min-width: 1351px){.br-bp { display:none;}}
@media screen and (max-width: 959px){.br-bp { display:none;}}
@media screen and (min-width: 768px){
	body{padding-top: 93px;}
  .br-pc { display:block; }
  .br-sp { display:none; }
}
@media screen and (max-width: 767px){	
  .br-pc { display:none;}
  .br-sp { display:block;}
}



/* -------------------------------------------- Layout共通 */
.container {
	width:1000px;
	margin:0 auto;
}
.titleWrap {
	text-align:center;
	margin:30px auto 20px;
}
.titleWrap h3 {
	font-size:1.5rem;
	font-family: 'Noto Serif JP', serif;
	font-weight: 900;
	font-style: normal;
}
.titleWrap img {
	filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, 0.3));
}

.verWhite {
	color:#ffffff;
}
@media screen and (max-width: 767px){
	.container {
		width:96%;
	}
}
/* -------------------------------------------- Parts共通 */
.fixed_btn
{
  position: fixed;
  bottom: 10px; 
  right: 10px;
  padding: 6px 40px;
	z-index:100;
}
.floating
{
  position: fixed;
  bottom: 10px;
  right: 10px;
  background-color: rgba(255, 100, 0, 0.8);
	z-index:1000;
	padding:20px;
	border-radius:60px;
	text-align:center;
}
.floating a {
	color:#ffffff;
	transition:.5s;	
}
.floating a:hover {
	opacity:.5;
}

.floating i {
	font-size:3rem;
}
/* -------------------------------------------- Header */
    header {
	font: 18px/1.6 "YuMincho", "Yu Mincho", "Hiragino Mincho ProN", "serif";
      position: fixed;
      z-index: 10;
      top: 0;
      right: 0;
      left: 0;
      width: 100%;
      max-width: 1920px;
      margin-left: auto;
      margin-right: auto;
      -webkit-transition-duration: 300ms;
      transition-duration: 300ms;
		background: #fff;
    }


    .header-container {
      display: -ms-grid;
      display: grid;
      -webkit-box-align: center;
      align-items: center;
      -ms-flex-align: center;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
	-ms-grid-columns: 1fr 2fr;
    grid-template-columns: 1fr 2fr;
    }
@media (min-width: 960px) {
	.header-container {
	-ms-grid-columns: 1fr 2fr;
    grid-template-columns: 1fr 2fr;
	}
	.header-logo {
        padding: clamp(20px, 1.125vw, 30px) 0 clamp(20px, 1.125vw, 30px) clamp(20px, 1.125vw, 30px);
      }
}
.header-logo img {max-width: 260px;}
@media (min-width: 1025px) {
    .header-logo img {width: 100%;}
}


    @media (max-width: 768px) and (orientation: landscape) {
      .header-logo {
        width: clamp(70px, 17.991004497751124vw, 140px);
      }
    }
@media (max-width: 959px) {
	.header-logo{
		background: #fff;
    padding: 0.4em 1em 0.6em 0;
	}
}
    .logo-link {
      display: block;
      -webkit-transition-duration: 300ms;
      transition-duration: 300ms;
    }

    .logo-link:hover {
      opacity: 0.6;
    }

    @media (max-width: 959px) {
      .nav-menu {
        position: fixed;
        z-index: -1;
        top: 0;
        right: 0;
        width: 100%;
        height: 100vh;
        height: calc(var(--vh, 1vh) * 100);
        padding-right: clamp(30px, 8vw, 60px);
        padding-bottom: clamp(30px, 8vw, 60px);
        padding-left: clamp(30px, 8vw, 60px);
        transition-duration: 300ms;
        transform: translateX(200%);
        overflow: auto;
        /* ナビメニューの背景色を変えたい時 */
        background-color: rgba(0, 0, 0, .8);
      }

      .nav-menu.active {
        transform: translateX(0);
      }
    }
@media (min-width: 960px) {
	
	a.rankLink{background-color:#003568;color: #e3c170;}
	header nav.hb-menu ul li a span{
	display: block;
    color: #999999;
    font-size: .8rem;
    font-weight: normal;
    line-height: 28px;
	}
	}
    @media (min-width: 960px) {
      .nav-menu {
        padding-top: 0 !important;
      }
    }

    @media (min-width: 960px) {
		.header-container {
      display: -ms-grid;
      display: grid;
      -webkit-box-align: center;
      align-items: center;
      -ms-flex-align: center;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
	-ms-grid-columns:  1fr 2fr 1fr;
    grid-template-columns:  1fr 2fr 1fr;
			max-height: 86px;
    }
      .menu-list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        align-items: center;
        -ms-flex-align: center;
        justify-content: space-evenly;
		  text-align: center;
      }
      .menu-list2 {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        align-items: center;
        -ms-flex-align: center;
        justify-content: end;
		  text-align: center;
      }
      .menu-list2 a{
        border-bottom: solid 3px #003568;
      }
	.menu-item {height: 80px;}
	.menu-item2{height: 48px;}
    }
.menu-item {padding: clamp(18px, 0.6vw, 30px) clamp(15px, 1.6875vw, 60px);
    height: 90px;
    align-content: center;}
.menu-item2{padding:clamp(10px, 3.1vw, 10px) clamp(30px, 1.6875vw, 70px) clamp(10px, 3.9vw, 10px);
	background-color: #b19944;
    align-content: center;
	color: #fff;
}
    @media (max-width: 959px) {
		.header-container {
      display: -ms-grid;
      display: grid;
      -webkit-box-align: center;
      align-items: center;
      -ms-flex-align: center;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
	-ms-grid-columns:  1fr 2fr;
    grid-template-columns:  1fr 2fr;
    }
      .menu-item {
        border-style: solid;
        border-color: #fff;
        border-bottom-width: 1px;
		height: 80px;
      }
		.menu-item, .menu-item2{height: 90px;display: grid;}
		header nav.hb-menu ul li a span{display: block;color:#999;font-size: .9rem;}
		a .menu-item2{color: #fff;}
    }

    .menu-link {
      display: block;
      color: #000;
      -webkit-transition-duration: 300ms;
      transition-duration: 300ms;
    }

    .menu-link:hover{
     opacity: 0.5;
    }

    .nav-menu.active .menu-link {
      color: #fff;
    }

    @media (max-width: 959px) {
      .menu-link {
        font-size: clamp(18px, 1.6416666666666667vw, 20px);
        text-align: center;
      }
		
    }

    @media (min-width: 960px) {
      .menu-link {
        font-size: clamp(14px, 1.5416666666666667vw, 20px);
      }
    }
a.rankLink{background-color:#003568;color: #e3c170;}
    .hamburger-button {
      width: -moz-fit-content;
      width: -webkit-fit-content;
      width: fit-content;
      height: clamp(13px, 3.466666666666667vw, 26px);
      margin-right: 0;
      margin-left: auto;
      cursor: pointer;
    }

    .hamburger-lines {
      position: relative;
      width: clamp(40px, 10.666666666666666vw, 90px);
      height: clamp(13px, 3.466666666666667vw, 26px);
      -webkit-transition-duration: 300ms;
      transition-duration: 300ms;
    }

    @media (max-width: 959px) {
      .hamburger-lines {
        width: clamp(40px, 10.666666666666666vw, 90px);
        height: clamp(13px, 3.466666666666667vw, 26px);
      }
    }

    @media (max-width: 768px) and (orientation: landscape) {
      .hamburger-lines {
        width: clamp(30px, 7.496251874062969vw, 50px);
        height: clamp(15px, 2.998500749625187vw, 20px);
      }
    }

    .hamburger-lines.active {
      height: 1px;
    }

    .hamburger-lines .line {
      position: absolute;
      right: 0;
      left: 0;
      display: block;
      width: 100%;
      height: clamp(1px, .26666666666666666vw, 2px);
      margin: auto;
      -webkit-transition-duration: 300ms;
      transition-duration: 300ms;
      /* ハンバーガーメニューの線の色を変えたい時 */
      background-color: #000;
    }

    .hamburger-lines.active .line {
      /* ハンバーガーメニューオープン時の線の色を変えたい時 */
      background-color: #fff;
    }

    .hamburger-lines .line:nth-child(1) {
      top: 0;
    }

    .hamburger-lines .line:nth-child(2) {
      bottom: 0;
    }

    @media (min-width: 960px) {

      /* タブレットサイズ以上でハンバーガーメニューを丸ごと非表示 */
      .hamburger-button {
        display: none;
      }
    }
/* -------------------------------------------- Hero */
.hero {
	max-width:100%;
	width: 100%;
	background:url("../img/main_bg03.jpg");
	background-size:cover;	
	z-index:1;
	overflow:hidden;
	position:relative;
}

@media (max-width: 959px) {.hero {margin: 47px auto 0;}}
.awardMark {
	position:absolute;
	bottom:10px;
	right:10px;
	width:150px;
	z-index:10;
}

.awardMark img {
	width:100%;
}


.siteLogo {
	position:absolute;
	top:10px;
	left:15%;	
}
.siteLogo img {
	width:250px;
}
dl.mainTitle {
	margin:100px auto 60px;
	display:flex;
	width:1000px;
	justify-content:space-around;	
	text-align:center;
}
dl.mainTitle dt {
	flex-basis:650px;
}
dl.mainTitle dd {
	flex-basis:auto;
}

dl.mainTitle dt h1 {
	color:#ffffff;
	font-size:2rem;
	font-family: 'Noto Serif JP', serif;
	font-weight: 700;
	font-style: normal;
	margin-bottom:20px;
	filter: drop-shadow(5px 5px 5px #000);
	opacity:.9;
	padding-top:10px;
	padding-bottom:10px;
}

dl.mainTitle dt h1 span {
	font-size:3.4rem;
}

dl.mainTitle dt h2 {
	color:#ffffff;
	font-size:1.5rem;
	font-family: 'Noto Serif JP', serif;
font-weight: 400;
font-style: normal;
	text-shadow:0 0 10px #000;
	line-height:180%;
	margin-top:20px;
	margin-bottom:10px;
}
dl.mainTitle dt h2 span {
	font-size:2.0rem;
}

dl.mainTitle dd img {
	width:500px;
	filter: drop-shadow(10px 10px 10px #fff);
}

ul.leadingBtn {
	display:flex;
	align-items: center;
	justify-content:space-around;
}

ul.leadingBtn li {
	width:65%;
	height: 50px;
	background-color: #f99404;	
	border-radius: 50px;
	display:table;
	transition:.5s;	
}

ul.leadingBtn li a {
	color: #ffffff;
	font-size: 24px;
	display:table-cell;
	vertical-align: middle;
}
ul.leadingBtn li:hover {
	opacity:.5;
}

@media screen and (max-width: 767px){	
	dl.mainTitle {
		margin:60px auto 30px;
		width:80%;
		flex-direction:column;
	}
	dl.mainTitle dt {
		width:100%;
        flex-basis: auto;
		margin-bottom:20px;
	}
	dl.mainTitle dt h1{
		text-align:center;
		font-size:1.2rem;
	}
	dl.mainTitle dt h1 span{
		font-size:2.3rem;
	}
	dl.mainTitle dt h2{
		text-align:center;
		font-size:1.4rem;
	}
	dl.mainTitle dt h2 span{
		font-size:2rem;
	}
	dl.mainTitle dd {
		text-align:center;
		width:100%;
		margin-bottom:20px;
	}
	dl.mainTitle dd img {
		width:100%;
		margin:0 auto;
	}
	.siteLogo {
		left: 50%;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
	} 
	.awardMark  {
		width:100px;
	}
}
/* -------------------------------------------- Achieve */
.achieve {
	background-color:#d1e8e0;
	max-width:100%;
	width: 100%;
	margin: 0 auto;
	overflow:hidden;	
}

.achieve p {
	text-align:left;
	margin:20px auto 40px;
	width:80%;
	font-size:.9rem;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	font-weight: 300;
	font-style: normal;
	color:#000000;
	line-height:180%;	
}

.achieve p img {
	margin:20px auto 0;
	width:100%;
}

.docRequest {
	text-align:center;
	margin:20px auto 40px;
	width:400px;
}
.docRequest a{
    /* ボタンのCSS */
    background-color: #e2fd00;
    color: #114f25;
    display: block;
    padding: 20px;
    position: relative; /* position: relative;で矢印の位置を基点とさせます */
    text-align: center;
    text-decoration: none;
    width: 100%;
	transition: 0.5s;
	font-size:1.5rem;
	border-radius: 40px;
}

.docRequest a::after{
    /* 擬似要素で矢印アイコンをつくる */
    content: '';
    border: 0;
    border-top: solid 2px #114f25;
    border-right: solid 2px #114f25;
    display: inline-block;
    width: 10px;
    height: 10px;
    /* 矢印アイコンの位置を設定 */
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%) rotate(45deg); /* rotate(45deg)で矢印を回転（向きを変更）させる */
}

.docRequest:active{
    /* ボタンをクリックしたときに沈むように見える動き */
    box-shadow: 0 0 0 #C62828;
}

.docRequest a:hover {
	opacity:.5;	
}
@media screen and (max-width: 767px) {
	.docRequest {
		width:90%;
	}
}

/* -------------------------------------------- Problem */
.problem {
	max-width:100%;
	width: 100%;
	margin: 0 auto;
	background:url("../img/problem_back.jpg")bottom center no-repeat;
	background-size: cover;
	z-index:1;
	overflow:hidden;
	position:relative;
}
.problem .titleWrap {
	text-align:center;
	margin:30px auto 40px;
}
.problem .titleWrap h3 {
	display:inline-block;
	font-size:1.5rem;
	font-family: "source-han-sans-japanese", sans-serif;
	font-weight: 700;
	font-style: normal;
	padding:10px 20px;
	background-color: rgba(255,255,255,0.8);
	box-shadow: 0 10px 25px 0 rgba(0, 0, 0, .3);
	border-radius:30px;
}
.titleWrap img {
	filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, 0.3));
}


.pbmFrame {
	width:1000px;
	height:630px;
	position:relative;
}
p.problem01 {
	position:absolute;
	top:50px;
	right:100px;
	display:inline;
	padding:10px;
	font-size:1.5rem;	
	font-family: 'Noto Serif JP', serif;
	font-weight: 600;
	font-style: normal;
	color: #fff;
	text-shadow: 2px 2px 10px #163c2e ,
		-2px 2px 10px #163c2e ,
		2px -2px 10px #163c2e ,
		-2px -2px 10px #163c2e;
}


p.problem02 {
	position:absolute;
	top:150px;
	right:50px;
	color:#ffffff;
	display:inline;
	padding:10px;
	font-size:1.5rem;
	font-family: 'Noto Serif JP', serif;
	font-weight: 600;
	font-style: normal;
	text-shadow: 2px 2px 10px #163c2e ,
		-2px 2px 10px #163c2e ,
		2px -2px 10px #163c2e ,
		-2px -2px 10px #163c2e;
}


p.problem03 {
	position:absolute;
	top:280px;
	right:150px;
	color:#ffffff;
	display:inline;
	padding:10px;
	font-size:1.5rem;
	font-family: 'Noto Serif JP', serif;
	font-weight: 600;
	font-style: normal;
	text-shadow: 2px 2px 10px #163c2e ,
		-2px 2px 10px #163c2e ,
		2px -2px 10px #163c2e ,
		-2px -2px 10px #163c2e;
	
}

p.problem04 {
	position:absolute;
	top:370px;
	right:50px;
	color:#ffffff;
	display:inline;
	padding:10px;
	font-size:1.5rem;
	font-family: 'Noto Serif JP', serif;
	font-weight: 600;
	font-style: normal;
	text-shadow: 2px 2px 10px #163c2e ,
		-2px 2px 10px #163c2e ,
		2px -2px 10px #163c2e ,
		-2px -2px 10px #163c2e;
}

.solutionCatch {
	position:absolute;
	bottom:10px;
	left:50%;
	transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
	background-color:#dac8bb;
	padding:20px;
	box-shadow:
    0 1.9px 2.5px rgba(0, 0, 0, 0.057),
    0 5px 6.1px rgba(0, 0, 0, 0.076),
    0 10.1px 11.4px rgba(0, 0, 0, 0.086),
    0 19.2px 19.8px rgba(0, 0, 0, 0.092),
    0 38.4px 34.8px rgba(0, 0, 0, 0.1),
    0 101px 74px rgba(0, 0, 0, 0.13);
}
.solutionCatch h3 {
	color: #333333;/*文字色*/
	padding: 0.5em 0;/*上下の余白*/
	font-size:1.3rem;
	font-family: "togalite", sans-serif;
	font-weight: 700;
	font-style: normal;
	border-top: solid 3px #333333;/*上線*/
	border-bottom: solid 3px #333333;/*下線*/
}

@media screen and (max-width: 767px){
	.problem {	
		background:url("../img/problem_back_sp.jpg")top center no-repeat;
		background-size:cover;
	}
	.pbmFrame {
		width:100%;
		height:1000px;
			}
	p.problem01 {
		top:20px;
		left:10px;
	}
	p.problem02 {
		top:140px;
		right:10px;
	}
	p.problem03 {
		top:310px;
		right:50px;
	}
	p.problem04 {
		top:460px;
		right:10px;
	}
	.solutionCatch {
		width:90%;
		bottom:none;
	}
}
.solution {
	max-width:100%;
	width: 100%;
	margin: 0 auto;
	overflow:hidden;
	background:#d1e8e0;
}
.slant-bg {
    width: 100%;
    margin: 0;
    padding: 150px 0;
    position: relative;
    top: 200px;
    overflow: hidden;
}

.solution p {
    width: 65%;
    margin: 0 auto;
}

.solution::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    transform: skewY(-5deg);
    z-index: -1;
}

.solution::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    transform: skewY(5deg);
    z-index: -1;
}

@media screen and (max-width: 767px){
	.solution {
		padding:10px 20px;
	}
}
/* -------------------------------------------- About */
.about {
	max-width:100%;
	width: 100%;
	margin: 0 auto;
	overflow:hidden;
}
.aboutWrap {
	display:flex;
	flex-direction: column;
	width:1000px;
	overflow:hidden;
	color:#333333;
	font-size:1rem;
	line-height:180%;
	padding:10px;
	margin:60px auto;
}
.aboutWrap dl {
	margin:5px auto 20px;
	width:100%;
	display:flex;
}
.aboutWrap dl dt {
	width:50%;
	margin-right:10px;
	font-size:.9rem;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	font-style: normal;
	color:#333333;
	line-height:280%;
}
.aboutWrap dl dt h4{
	font-size:1.4rem;
	font-family: 'Noto Serif JP', serif;
	font-weight: 700;
	font-style: normal;
	border-bottom:solid 1px #b5b526;
}

.aboutWrap dl dd {
	text-align:left;
	width:50%;
	padding:4px 0 4px 10px;
	
}
.aboutWrap dl dd img {
	width:100%;
}

@media screen and (max-width: 767px){
	.aboutWrap {
		width:90%;
	}
	.aboutWrap dl {
		flex-direction: column;
	}
	.aboutWrap dl dt {
		width:100%;
		margin-bottom:20px;
		line-height: 180%;
	}
	.aboutWrap dl dt h4 {
		position:static;
		margin-bottom:10px;
		padding-bottom:10px;
	}
	.aboutWrap dl dd {
		position:static;
		width:100%;
	}
}


/* -------------------------------------------- Advantage */
.advantage {
	max-width:100%;
	width: 100%;
	margin: 0 auto;
	background: linear-gradient(-20deg, #163c2e 0%, #114f25 100%);
	overflow:hidden;
}

.advantage .titleWrap h3 {
	color:#ffffff;
}

.advantageWrap {
	display:flex;
	margin:0 auto 40px;
	width:1000px;
	justify-content: space-around;
}
.advantageBox {
	display:flex;
	flex-direction: column;
	box-shadow: 0 0 10px #aaa;
	width:30%;
	background-color:#ffffff;
	overflow:hidden;
	color:#333333;
	font-size:1rem;
	line-height:180%;
	padding:10px;
}
.advantageBox dl {
	margin:5px auto 10px;
	width:96%;
	text-align:center;
	display:flex;
	flex-direction: column;
}
.advantageBox dl dt {
	text-align:center;
	margin-bottom:10px;
}
.advantageBox dl dt img {
	width:100px;
	border:none;
}
.advantageBox dl dd {
	text-align:center;
	padding:4px 0 4px 10px;
	flex-grow: 2;
	font-size:1.3rem;
	color:#163c2e;
	font-family: 'Noto Serif JP', serif;
	font-weight: 600;
	font-style: normal;
}
.advantageBox img {
	width:96%;
	margin:0 auto 10px;
	border:solid 2px #999;
}


@media screen and (max-width: 767px){
	.advantageWrap {
		width:80%;
		flex-direction:column;
	}
	.advantageBox {
		width:100%;
		margin-bottom:40px;
	}
}

.advantageSubBox{
	width:700px;
  border: 2px solid #ffffff;
  border-radius: 5px;
  position: relative;
  margin:20px auto 40px;
}
.advantageSubBox h3{
	font-size:1.4rem;
	text-align: center;
  position: absolute;
  right: 0;
  left: 0;
  top: -0.8em;
}
.advantageSubBox span{
  padding: 0 .5em;
  background: #163c2e;
  color: #ffffff;
}

.advantageSubBox ul {
	display:flex;
	margin:20px 20px 10px 40px;
	justify-content: space-around;
	list-style: none;
}
.advantageSubBox ul li {
	font-size:1.2rem;
	color:#ffffff;
	padding-left:12px;
	background:url(../img/mark_circle.png)left center no-repeat;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	line-height:1.6;
	list-style:none;
}

@media screen and (max-width: 767px){
	.advantageSubBox{
		width:80%;
	}
	.advantageSubBox ul {
		flex-direction:column;
	}
}
/* -------------------------------------------- 3 Step */
.step {
	max-width:100%;
	width: 100%;
	margin: 0 auto;
	z-index:1;
	overflow:hidden;
}

ul.circleStep {
	margin:20px auto 40px;	
	display:table;	
	border-collapse: separate;
	border-spacing: 30px 0;
}
ul.circleStep > li:not(:last-child)::before {
    content:  '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 0 10px 12px;
    border-color: transparent transparent transparent #d1ecd2;
    vertical-align:  middle;
    position: absolute;
    top: 0;
    bottom: 0;
    margin:  auto;
    right: -19px;
}

ul.circleStep li {
	display:table-cell;
	text-align:center;
	vertical-align: middle;
	width: 18vw;
	height: 18vw;
	background-size: contain;
	border-radius: 50%;
	font-size:1.6rem;
	color:#163c2e;
	line-height:100%;
	position:  relative;
	font-family: "m-plus-2p", sans-serif;
	font-weight: 600;
	font-style: normal;
}

ul.circleStep li:not(:last-child) {
    margin-right:  20px;
}

ul.circleStep li.step01 {
	background:url(../img/step01_back.jpg)center no-repeat;	
	background-size: contain;
}
ul.circleStep li.step02 {
	background:url(../img/step02_back.jpg)center no-repeat;	
	background-size: contain;
}
ul.circleStep li.step03 {
	background:url(../img/step03_back.jpg)center no-repeat;
	background-size: contain;
}


ul.circleStep li span {
	font-size:1rem;
}
@media screen and (max-width: 767px){
	ul.circleStep {
		width:90%;
		
	}
	ul.circleStep li {
		display:flex;
		align-items: center;
		justify-content: center;
		width:70vw;
		height:70vw;
		margin-bottom:30px;
		margin-left:20px;
	}
	ul.circleStep li span {
		position:absolute;
		top:50%;
		left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
		
	}
	ul.circleStep > li:not(:last-child)::before {
    border-width: 12px 10px 0 10px;
    border-color: #d1ecd2 transparent transparent transparent ;
    vertical-align:  middle;
    position: absolute;
    top:105%;
		left: -6%;
    transform: translateX(-0%);
    -webkit-transform: translateX(-0%);
    -ms-transform: translateX(-0%);
}
}
.step p {
	display: flex;
	justify-content: center;
	font-size:1.4rem;
	font-weight:normal;
	margin:0 auto 40px;
}

/* -------------------------------------------- Price */
.price {
	max-width:100%;
	width: 100%;
	margin: 0 auto 40px;
	overflow:hidden;
}

table.priceWrap {
  width: 100%;
  border-collapse:separate;
  border-spacing: 0;
}

table.priceWrap th:first-child{
  border-radius: 5px 0 0 0;
}

table.priceWrap th:last-child{
  border-radius: 0 5px 0 0;
  border-right: 1px solid #3c6690;
}

table.priceWrap th{
  text-align: center;
  color:white;
  background: #163c2e;
  border-left: 1px solid #3c6690;
  border-top: 1px solid #3c6690;
  border-bottom: 1px solid #3c6690;
  width: 25%;
  padding: 10px 0;
}
table.priceWrap th span {
	font-size:.5rem;
}

table.priceWrap td{
  text-align: center;
  border-left: 1px solid #a8b7c5;
  border-bottom: 1px solid #a8b7c5;
  border-top:none;
  width: 25%;
  padding: 10px 0;
}
table.priceWrap tr:nth-child(odd) td {
	background: #d1ecd2;
}

table.priceWrap td:last-child{
  border-right: 1px solid #a8b7c5;
}

table.priceWrap tr:last-child td:first-child {
  border-radius: 0 0 0 5px;
}

table.priceWrap tr:last-child td:last-child {
  border-radius: 0 0 5px 0;
}

.privillageTitle {
	margin:60px auto 0;
	-webkit-transform: skew(-15deg);
	transform: skew(-15deg);
	color: #fff;
	background-color:#bcb199;
	text-align:center;
	width:600px;
}

.privillageTitle img {
	margin:5px auto;
	-webkit-transform: skew(15deg);
	transform: skew(15deg);	
}
.privillageCon {
	width:90%;
	margin:-30px auto 0;
	background-color:#255a43;
	text-align:center;
	padding-top:50px;
	padding-bottom:30px;
}

.privillageCon h2 {
	font-size:2rem;
	font-family: 'Noto Serif JP', serif;
	font-weight: 900;
	font-style: normal;
	color:#ffffff;
	
}
@media screen and (max-width: 767px){
	.privillageTitle {
		width:80%;
	}
	.privillageTitle img {
		width:90%;
	}
	.privillageCon h2 {
		font-size:1.5rem;
	}
}

.privillageConFrame {
	width:60%;
	margin:20px auto 0;
}

.privillageConFrame p {
	
}

.freePriceCopy {
	width:100%;
	font-size:.9rem;
	margin-bottom:10px;
	margin-top:20px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 900;
	font-style: normal;
}
.freePriceCopy span.square {
	border:solid 1px #333333;
	font-size:.7rem;
	padding:4px 6px;
	margin-left:4px;
	margin-top:-4px;
}
.freePriceCopy span.bigText {
	font-size:2rem;
}
.notice{
    list-style: none;
    padding-left: 1.5em;
    margin-left: 0.5em;
}
.notice li{
    text-indent: -1.5em;
}

.standardTitle {
	text-align:center;
	margin:40px auto 5px;
	font-size:1.5rem;
	font-family: 'Noto Serif JP', serif;
	font-weight: 700;
	font-style: normal;
	color:#333333;
}
.standardTitle img {
	margin-right:5px;
	padding-bottom:5px;
	
} 

p.standardExp {
	margin-bottom:20px;
}
img.standardChart {
	margin: 0 auto;
	width:100%;
	
}

dl.discountOption {
	width:340px;
	margin:40px auto 0;
	display:flex;
	flex-wrap:wrap;
	font-family: 'Noto Serif JP', serif;
	font-weight:900;
	font-style: normal;
}

dl.discountOption dt {
	width:20%;
	padding-top:25px;
	vertical-align:bottom;
}
dl.discountOption dt span {
	padding:4px 6px;
	border:1px solid #333333;
	font-size:.7rem;
}
dl.discountOption dd {
	width:77%;
	text-align:right;
}
dl.discountOption dd span {
	font-size:2rem;
}

@media screen and (max-width: 767px){
	.privillageConFrame {
		width:90%;
	}
}
/* -------------------------------------------- Support */
.support {
	max-width:100%;
	width: 100%;
	margin: 0 auto;
	overflow:hidden;
}
.supportWrap {
	display:flex;
	flex-direction: column;
	width:1000px;
	overflow:hidden;
	color:#333333;
	font-size:1rem;
	line-height:180%;
	padding:10px;
	margin:60px auto;
}
.supportWrap dl {
	margin:5px auto 20px;
	width:100%;
	display:flex;
}
.supportWrap dl dt {
	width:50%;
	margin-right:10px;
	font-size:.9rem;
	font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	font-style: normal;
	font-weight:normal;
	color:#333333;
	line-height:220%;
}
.supportWrap dl dt h4{
	font-size:1.4rem;
	font-family: "m-plus-2p", sans-serif;
	font-weight: 600;
	font-style: normal;
	border-bottom:solid 1px #b5b526;
}

.supportWrap dl dd {
	text-align:left;	
	width:50%;
	padding:4px 0 4px 10px;
	
}
.supportWrap dl dd img {
	width:100%;
}

@media screen and (max-width: 767px){
	.supportWrap {
		width:90%;
	}
	.supportWrap dl {
		flex-direction: column;
	}
	.supportWrap dl dt {
		width:100%;
		margin-bottom:20px;
		line-height: 180%;
	}
	.supportWrap dl dt h4 {
		position:static;
		margin-bottom:10px;
		padding-bottom:10px;
	}
	.supportWrap dl dd {
		position:static;
		width:100%;
	}
}

/* -------------------------------------------- Instructor */
.instructor {
	max-width:100%;
	width: 100%;
	margin: 0 auto;
	background: #eeeeee;
	overflow:hidden;
}
.instructorWrap {
	display:flex;
	align-content: stretch;
	flex-wrap:wrap;
	margin:0 auto 40px;
	width:1000px;
	justify-content: space-between;
}

.instructorWrap dl {
	margin-bottom:30px;
	width:30%;
	text-align:center;
	box-shadow: 0 0 10px #aaa;
	background-color:#ffffff;
	overflow:hidden;
	color:#333333;
	font-size:1rem;
	line-height:180%;
}

.instructorWrap dl dt {
	text-align:left;
	padding:10px;
	flex-grow: 2;
	/* font-size:.8rem; */
	font-size:.71rem;
	font-weight:normal;
	color:#333333;
}
.instructorWrap dl dt h4 {
	font-weight:bold;
	font-size:1.4rem;
	font-family: "ta-mincho-gf-02", sans-serif;
	font-weight: 400;
	font-style: normal;
}

.instructorWrap dl dd {
	padding:0;
}
.instructorWrap dl dd img {
	width:100%;
	border:none;
	padding:0;
	margin:0;
}

@media screen and (max-width: 767px){
	.instructorWrap {
		width:94%;
	}
	.instructorWrap dl {
		width:48%;
		display: flex;
		flex-direction:column;
	}
	.instructorWrap dl dd{
		margin-top:auto;
	}
}
/* -------------------------------------------- Form関連 */	
section#applyForm {
	width: 100%;
	margin: 0 auto;
	padding:40px 40px 0 40px;
	text-align:center;
}
.formTitle {
	width:100%;
	background-color:#c4be8b;
	height:100px;
	text-align:center;
}
.formTitle h2{
	font: 30px/1.6 "ゴシック", sans-serif;
	color:#222d5a;
	font-weight:300;
	margin:0 auto;
	padding:25px 0;
}
.formSheet {
	width:900px;
	background-color: #ffffff;
	padding:20px 60px 0 60px;
	margin:40px auto 0;
	border-radius:10px;
}
.formSheet p{
	color:#333333;
}

.groupDiv {
	display:flex;
	justify-content: space-between;
	margin:0 auto 10px auto;
	text-align:left;
	border-bottom:solid 1px #ccc;
}
.groupDiv:last-of-type {
	border-bottom:solid 1px #ffffff;
}
.groupDiv label {
	flex-basis:30%;
}

.groupDiv label.lastNotice {
	flex-basis:80%;
	margin:0 auto;
}

.answer {
	flex-basis:65%;
}

input[type="text"] {
margin:8px 0;
  width: 100%;
	height:40px;
  outline: none;
  padding: 8px;
  box-sizing: border-box;
  transition: 0.3s;
	border-radius:10px;
	border:solid 1px #999999;
	background-color:#f9f9f9;
}

input[type="text"]:focus {
}
input.applyBtn {
  display       : inline-block;
border:none;
  font-size     : 10pt;        /* 文字サイズ */
  text-align    : center;      /* 文字位置   */
  cursor        : pointer;     /* カーソル   */
  padding       : 15px 47px;   /* 余白       */
  background    : #7d0000;     /* 背景色     */
  color         : #ffffff;     /* 文字色     */
  line-height   : 1em;         /* 1行の高さ  */
  opacity       : 1;           /* 透明度     */
  transition    : .3s;         /* なめらか変化 */
}
 
input.applyBtn:hover {
  box-shadow    : none;        /* カーソル時の影消去 */
  opacity       : 0.8;         /* カーソル時透明度 */
}
.pullFrame {
	margin-right:305px;
	width:200px;
	position: relative;
}

.pullFrame::before,
.pullFrame::after {
    position: absolute;
    content: '';
    pointer-events: none;
}

.pullFrame::before {
    right: 0;
	top:9px;
    display: inline-block;
    width: 2.8em;
    height: 2.8em;
    border-radius: 0 10px 10px 0;
    background-color: #999999;
    content: '';
}

.pullFrame::after {
    position: absolute;
    top: 50%;
    right: 1.4em;
    transform: translate(50%, -50%) rotate(45deg);
    width: 6px;
    height: 6px;
    border-bottom: 3px solid #fff;
    border-right: 3px solid #fff;
    content: '';
}

.pullFrame select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding:10px;
	width:200px;
	margin:8px 0;
	height:40px;
    border: 1px solid #999999;
    border-radius: 10px;
    color: #333333;
	background-color:#f9f9f9;
    font-size: 1em;
    cursor: pointer;
}

.pullFrame select:focus {
    outline: 1px solid #2589d0;
}
textarea {
	margin:8px 0;
	padding:8px;
	width: 100%;
	height:120px;
	outline: none;
	box-sizing: border-box;
	transition: 0.3s;
	border-radius:10px;
	border:solid 1px #999999;
	background-color:#f9f9f9;	
}

.formSheet ul {
	text-align:left;
	width:100%;
	margin:10px auto 0 auto;
}
.formSheet ul li {
	font-size:.8em;
	color:#666666;
	margin:0 0 7px 0;
	list-style: square;
}
@media screen and (max-width: 767px){
	.formTitle {
		height:80px;
	}
	.formTitle h2 {
	font-size:24px;
	padding:25px 0;
}
	.formSheet {
	width:100%;
	background-color: #ffffff;
	padding:20px;
	margin:20px auto;
	}
	section#applyForm {
		padding:40px 20px;
	}
	.groupDiv {
		flex-direction:column;
	}
}
.formSheet h2 {
  position: relative;
  overflow: hidden;
  padding: 1rem 2rem 1rem 120px;
  border: solid 2px #333333;
	font-size:1rem;
	font-weight:bold;
	border-radius:10px;
	margin:30px auto;
}
.formSheet h2:before {
  position: absolute;
  content: '';
  top: -150%;
  left: -100px;
  width: 200px;
  height: 300%;
  transform: rotate(25deg);
  background: #333333;
}
.formSheet h2 span {
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	z-index: 1;
	font-size: 20px;
	font-size: 2.5rem;
	padding-left: 16px;
	color: #fff;
}

.formSheet button {
	cursor: pointer;
	margin:20px auto;
	width:400px;
	padding:20px 20px;
	background-color:#163c2e;
	color:#ffffff;
	font-weight:bold;
	font-size:1.1rem;
	transition:.5s;
	border-radius:405px;
	 position: relative;
}
.formSheet button:hover {
	opacity:.5;
	transition:.5s;
}

.formSheet button::after{
    /* 擬似要素で矢印アイコンをつくる */
    content: '';
    border: 0;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    display: inline-block;
    width: 10px;
    height: 10px;
    /* 矢印アイコンの位置を設定 */
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%) rotate(45deg); /* rotate(45deg)で矢印を回転（向きを変更）させる */
}

@media screen and (max-width: 767px){
	.formSheet button {
		width:80%;
	}
}



/* -------------------------------------------- Footer */	
footer {
	width:100%;
	height:250px;
	background-color:#ffffff; 
	text-align:center;
	overflow:hidden;
	margin-top:20px;
}
ul.fNav {
	display:flex;
	justify-content: center;
	width:300px;
	margin:0 auto;
	padding:0 0 10px 0;
}
ul.fNav li{
	
	margin:0 15px 0 0;
	color:#313131
	
}
ul.fNav li a{
	color:#313131;
		transition:.5s;
}
ul.fNav li a:hover{	
	color:#666666;
	border-bottom:solid 1px #666666;
	opacity:.5;
}
footer p {
	clear:both;
	font-size:.8rem;
	text-align:center;
}
.btnWrap {
	margin:40px auto 20px;
}


.btnWrap a img {
	transition:.5s;
}

.btnWrap a img:hover {
	transition:.5s;
	opacity:.5;
}


/* -------------------------------------------- Highlight */
.highlight {
	max-width:100%;
	width: 100%;
	margin: 0 auto;
	overflow:hidden;	
}
/* 人生理念 */
.lifePhilosophy {
	max-width:100%;
	width: 100%;
	margin: 0 0 40px 0;
	overflow:hidden;
	background:url("../img/hh_img01.png") no-repeat;
	background-size:70%; 
	background-position:0% 40px;
    height:500px;      
}
.lifePhilosophy .inner {
	position:relative;
	width:1000px;
	margin:0 auto;
}
@media screen and (max-width: 767px){
	.lifePhilosophy .inner {
		width:96%;
	}
    .lifePhilosophy {
	max-width:100%;
	width: 100%;
	margin: 0 auto;
	overflow:auto;
    height:auto;      
}
}

.numberLP {
	position:absolute;
	top:0;
	right:20%;
}
.titleLP {
	position:absolute;
	top:30px;
	right:5%;
}
.contentLP {
	position:absolute;
	top:270px;
	right:5%;
	width:60%;
	font-size:.9rem;
	font-family: dnp-shuei-mincho-pr6, sans-serif;
	font-weight: 500;
	font-style: normal;
	color:#333333;
	text-shadow: 0 0 5px #ffffff;
}

.contentLP h3 {
	font-size:1.4rem;
	font-family: ta-mincho-gf-01, sans-serif;
	font-weight: 400;
	font-style: normal;	
}

@media screen and (max-width: 767px){
	.contentLP {
		width:90%;
	}
    .contentLP {
	position:static;
	padding-top: 58vw;
    margin: 0 auto 1em;
}
}

/* 人軸経営 */
.HumanAxis {
	max-width:100%;
	width: 100%;
	margin: 0 0 40px 0;
	overflow:hidden;
	background:url("../img/hh_img02.png") no-repeat;
	background-size:70%; 
	background-position:100% 40px;
    height:500px;      
}
.HumanAxis .inner {
	position:relative;
	width:1000px;
	margin:0 auto;
}
@media screen and (max-width: 767px){
	.HumanAxis .inner {
		width:96%;
	}
    .HumanAxis {
        margin: 0 auto;
    height:auto;
}
}

.numberHA {
	position:absolute;
	top:0;
	left:20%;
}
.titleHA {
	position:absolute;
	top:30px;
	left:5%;
}
.contentHA {
	position:absolute;
	top:270px;
	left:5%;
	width:60%;
	font-size:.9rem;
	font-family: dnp-shuei-mincho-pr6, sans-serif;
	font-weight: 500;
	font-style: normal;
	color:#333333;
	text-shadow: 0 0 5px #ffffff;
}

.contentHA h3 {
	font-size:1.4rem;
	font-family: ta-mincho-gf-01, sans-serif;
	font-weight: 400;
	font-style: normal;	
}
@media screen and (max-width: 767px){
	.contentHA {
		width:90%;
	}
    .contentHA {
	position:static;
	padding-top: 58vw;
    margin: 0 auto 2em;
}
}
/* 選択理論 */
.choiceTheory {
	max-width:100%;
	width: 100%;
	margin: 0 0 40px 0;
	background:url("../img/hh_img03.png") no-repeat;
	background-size:70%; 
	background-position:0% 40px;
    height:500px;
}
.choiceTheory .inner {
	position:relative;
	width:1000px;
	margin:0 auto;
}


@media screen and (max-width: 767px){
	.choiceTheory .inner {
		width:96%;
	}
    .choiceTheory {
    margin: 0 auto;   
    height:auto;
}
}

.numberCT {
	position:absolute;
	top:0;
	right:20%;
}
.titleCT {
	position:absolute;
	top:30px;
	right:5%;
}
.contentCT {
	position:absolute;
	top:270px;
	right:5%;
	width:60%;
	font-size:.9rem;
	font-family: dnp-shuei-mincho-pr6, sans-serif;
	font-weight: 500;
	font-style: normal;
	color:#333333;
	text-shadow: 0 0 5px #ffffff;
}

.contentCT h3 {
	font-size:1.4rem;
	font-family: ta-mincho-gf-01, sans-serif;
	font-weight: 400;
	font-style: normal;	
}
@media screen and (max-width: 767px){
	.contentCT {
		width:90%;
        position:static;
        height: auto;
        padding-top: 60vw;
        margin: 0 auto 2em;
	}
}
/* -------------------------------------------- Content */	
.contentBook {
	max-width:100%;
	width: 100%;
	margin: 0 auto 60px;
	overflow:hidden;	
}
.tableFrame {
	width:800px;
	margin:0 auto 20px;
	display:flex;
	justify-content:space-around;
}

.chapter {
	flex-basis: 10%;	
}
.chapter h4 {
	font-size:1rem;
	font-family: ta-mincho-gf-01, sans-serif;
	font-weight: 400;
	font-style: normal;		
}
.chapter h4 span{
	font-size:2rem;	
}
.mainContent {
	flex-basis:75%;
	border-left:solid 5px #000000;
	padding-left:10px;
}
.mainContent h3 {
	font-size:1.4rem;
	font-family: ta-mincho-gf-01, sans-serif;
	font-weight: 400;
	font-style: normal;		
}
.mainContent ul {
	margin-left:15px;
	
}
.mainContent ul li {
	list-style:none;	
}
.mainContent ul li:before {	
    content: "\f35a";
    font-weight: 400;
    font-family: "Font Awesome 5 Free";
    padding-right: 10px;	
}

.otherContent {
	display:block;
	flex-basis:15%;
	position:relative;
}

.otherContent h6 {
	position:absolute;
	bottom:0;
	right:0;
	font-size:.9rem;
	font-family: dnp-shuei-mincho-pr6, sans-serif;
	font-weight: 500;
	font-style: normal;
	color:#000000;
}
@media screen and (max-width: 767px){
	.tableFrame {
		width:90%;
		flex-direction:column;
		margin:0 auto;
	}
	.chapter,.mainContent,.otherContent {
		flex-basis:90%;
	}
	.otherContent {
		margin-top:25px;
	}
}
/* -------------------------------------------- Voice */
.voice {
	max-width:100%;
	width: 100%;
	margin: 0 auto;
	background:url("../img/voice_back.jpg")top left repeat;
	overflow:hidden;
}

.voiceWrap {
	display:flex;
	flex-wrap: wrap;
	margin:0 auto 40px;
	width:1000px;
	justify-content: space-around;
}
.voiceBox {
	width:46%;	
	overflow:hidden;
	color:#ffffff;
	font-size:1rem;
	font-family: dnp-shuei-mincho-pr6, sans-serif;
	font-weight: 500;
	font-style: normal;
	line-height:180%;
	padding:40px 10px 10px 10px;
	margin-bottom:40px;
	background:url("../img/column.png")top left no-repeat;
}

.voiceBox h3 {
	float:right;
	position: relative;
	margin: 10px 0 20px 0;
	font-size:1.2rem;
	color:#ffffff;
}
.voiceBox h3:before {
	left: -3rem;
    position: absolute;
    top: 45%;
    width: 3rem;
    border-top: 8px double;
    content: '';
	
}

.voiceBox a {
	display:inline-block;
	color:#fffffff;
	margin:0 0 0 0;
	font-size:.8rem;
	font-weight:bold;
	transition: 1s all linear;
	font-weigth:bold;
	border:solid 1px #ffffff;
	padding:0 10px;
}
.voiceBox a:hover{
	background-color:#fc8c08;
	
}

@media screen and (max-width: 767px){
	.voiceWrap {
		flex-direction:column;
		width:90%;
	}
	.voiceBox {
		width:100%;
	}	
}

/* -------------------------------------------- Cart */
.cart {
	max-width:100%;
	width: 100%;
	margin: 0 auto 60px;
	overflow:hidden;
}
dl.bookBuy {
	display:flex;
	justify-content: space-around;
	width:600px;
	overflow:hidden;
	color:#333333;
	font-size:1rem;
	line-height:180%;
	padding:10px;
	margin:0 auto 20px;
}

dl.bookBuy dt {
	width:40%;	
}
dl.bookBuy dt img {
	width:100%;
}
dl.bookBuy dd {
	width:45%;
	background-color:none;
}

dl.bookBuy dd h5 {
	margin-top:30px;
	font-weight:bold;
	font-size:1.8rem;
	color:#333;
}
dl.bookBuy dd h5 span {
	font-size:1rem;
	font-weight:normal;
}
dl.bookBuy dd h6 {
	font-family: ta-mincho-gf-01, sans-serif;
	font-weight: 400;
	font-style: normal;		
	font-size:.8rem;
	line-height:180%;
}
a.netBuy {
	text-align:center;
	background-color:#fc8c08;
	transition: all 0.6s;
	padding:1rem 4rem;
	font-size:1.2rem;
	color:#fff;
	margin:10px auto;
	display:table-cell;
}

a.netBuy:hover {
	opacity:.5;
}

a.netBuy img {
	width:19px;
	vertical-align: middle;
}

.purchaseCaption {
	margin-top:20px;
} 

@media screen and (max-width: 767px){
	dl.bookBuy {
		width:90%;
		flex-direction:column;
	}
	dl.bookBuy dt,dl.bookBuy dd {
		width:100%;	
	}
	dl.bookBuy dd {
		margin-top:20px;
	}
}

/* -------------------------------------------- Seminar */
.seminar {
	max-width:100%;
	width: 100%;
	margin: 0 auto;
	background:url("../img/seminar_back.jpg")top left repeat;
	background-size: cover;
	overflow:hidden;
}

.seminar p{
	text-align:center;
	margin:20px auto;
	width:80%;
	color:#ffffff;
	font-family: dnp-shuei-mincho-pr6, sans-serif;
	font-weight: 500;
	font-style: normal;	
}

.seminarTitle {
	position: relative;
	display: inline-block;
	text-align:center;
	margin:40px auto 0;
	padding: 0 40px;
}
.seminarTitle h4 {
	font-family: ta-mincho-gf-01, sans-serif;
	font-weight: 400;
	font-style: normal;		
	font-size:1.2rem;
	color:#ffffff;
}
.seminarTitle h3 {
	font-family: ta-mincho-gf-01, sans-serif;
	font-weight: 400;
	font-style: normal;		
	font-size:1.8rem;
	color:#ffffff;
	
}

.seminarTitle:before,
.seminarTitle:after {
	content: '';
	position: absolute;
	top: 0;
	display: inline-block;
	width: 57px;
	height: 102px;
}

.seminarTitle:before {
  left:0;
	background:url("../img/leaf_left.png") top left no-repeat;
	background-size:cover;
}
.seminarTitle:after {
  right: 0;
	background:url("../img/leaf_right.png") top left no-repeat;
	background-size:cover;
}

.tagOnline {
	display:inline-block;
	border:solid 2px #ffffff;
	padding:2px 20px;
	margin:0 auto 40px;
	border-radius: 15px;
	font-family: dnp-shuei-mincho-pr6, sans-serif;
	font-weight: 500;
	font-style: normal;
	color:#ffffff;
}


dl.seminarContent {
	display:flex;
	width:900px;
	margin:0 auto 20px;
}

dl.seminarContent dt {
	width:48%;
}

dl.seminarContent dt img {
	width:100%;
}
dl.seminarContent dd {
	width:48%;
}

dl.seminarContent dd dl{
	text-align:left;
	width:100%;
	margin:0 auto 20px;
	display:flex;
	color:#ffffff;
	flex-wrap: wrap;
}
dl.seminarContent dd dl dt,dd {
	padding: 6px;
}
dl.seminarContent dd dl dt {
	width:22%;
	font-family: ta-mincho-gf-01, sans-serif;
	font-weight: 400;
	font-style: normal;		
	font-size:1rem;
}
dl.seminarContent dd dl dd {
	width:77%;
	font-family: dnp-shuei-mincho-pr6, sans-serif;
	font-weight: 500;
	font-style: normal;
}
img.zoomImage {
	margin:3px 10px 0 0;
	width:80px;
}

dl.seminarContent dd ul {
	display:flex;
	width:100%;
	justify-content: space-around;
	margin:0 auto;
}
dl.seminarContent dd ul li {
	display:block;
	width:48%;
}

dl.seminarContent dd ul li a {
	width:100%;
	display:block;
	text-align:center;
	background-color:#fc8c08;
	transition: all 0.6s;
	padding:10px 20px;
	font-size:1rem;
	color:#fff;
	margin:10px auto;
	border-radius:5px;
}
dl.seminarContent dd ul li a:hover {
	opacity:.5;
}

a.seminarApply {
	display:block;
	margin:0 auto 40px;
	text-align:center;
	width:600px;
}
a.seminarApply img {		
	transition: all 0.6s;
	width:100%;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, .4);
}
a.seminarApply img:hover {
	opacity:.5;
}


@media screen and (max-width: 767px){
	dl.seminarContent {
		width:100%;
		flex-direction:column;
	}
	dl.seminarContent dt,dl.seminarContent dd {
		width:100%;
	}
	dl.seminarContent dt {
		margin-bottom:20px;
	}
	a.seminarApply {
		width:80%;
	}
	.seminarTitle h4 {
		font-size:.8rem;
	}
	.seminarTitle h3 {
		font-size:1.6rem;
	}
}
/* -------------------------------------------- MARC */	
.marcApply {
	width:100%;
	background:#999999;
	padding:20px;
	postion: -webkit-sticky;
    position: sticky;
    bottom: 0;
}
.marcApply ul {
	width:80%;
	margin:0 auto;
	display:flex;
	justify-content: center;
	text-align:center;
}
.marcApply ul li {
	width:48%;
}
.marcApply ul li a {
	display:block;
	margin:0 10px 0;
	padding:10px 20px;
	background:#83b7f1;
	border-radius:10px;
	text-decoration:none;
	font-weight:bold;
	color:#ffffff;
	font-size:1.2em;
	transition: all 0.6s;
}

.marcApply ul li a.semiColor {
	background:#f18072;
}
.marcApply ul li a:hover{
	opacity: 0.5;
}
.marcApply ul li a img:hover{
	opacity: 0.5;
}

.marcApply ul li a img {
	margin-right:20px;
}
.marcApply p {
	color:#000000;
	font-size:0.7rem;
	text-align:center;
	margin:10px auto 0 auto;
}
@media screen and (max-width: 767px){
	.marcApply {
		padding-top:20px;
		padding-left:0;
		padding-right:0;
	}
	a.invite {
		width:80%;
		padding:10px;
	}
	a.invite img {
		margin-right:10px;
	}
}

/* -------------------------------------------- addImage */
.addImage {
	background-color:#ffffff;
	max-width:100%;
	width: 100%;
	margin: 0 auto;
	overflow:hidden;	
}
.addImage .container {
	text-align:center;
}

.addImage .container img {
	width:90%;
	margin:0 auto 40px;
}

.addImage .container img.memberChart {
	width:55%;
}
@media screen and (max-width: 767px){
	.addImage .container img.memberChart {
		width:90%;
	}
}