@charset "utf-8";

/*****************************************************************

	トップページ＆共通レイアウト定義

*****************************************************************/

/* ====== BASE Module SET ===== */


*{
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

html,
body{
	margin: 0;
	padding: 0;
}

html{
	overflow-y:scroll;
 scroll-behavior: smooth;
}

h1,h2,h3,h4,h5,h6,
p,ul,ol,dl,dt,dd,li,
table,td,th,
address,
blockquote,form,fieldset,legend,div,hr,pre{
	margin: 0;
	padding: 0;
	font-style: normal;
	text-align: left;
	font-size: 100%;
	line-height: 1.2;
}

article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary {
	display: block;
}


body{
	background: #FFF;
	font-family: "Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ","meiryo","MS P Gothic","ＭＳ Ｐゴシック","Osaka", sans-serif;
	text-align: center;
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-o-text-size-adjust: 100%;
	text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

th,td{
	vertical-align: top;
}

svg,
img,
object,
embed{
	border: 0;
	vertical-align: top;
	outline: none;
	max-width: 100%;
	height: auto;
}
svg {
 overflow-x: visible;
 overflow-y: visible;
}
object:focus{
	outline: none;
}

embed:focus{
	outline: none;
}

img,
input,
select,
textarea{
	margin-top: 0;
	margin-bottom: 0;
	vertical-align: middle;
	font-size: 12px;
}

input[type="button"],
input[type="text"],
input[type="submit"] {
	-webkit-appearance: none;
}

button{
	background-color: transparent;
	border: 0;
	cursor: pointer;
	outline: none;
	padding: 0;
	appearance: none;
}

::-webkit-input-placeholder{
    color: #ccc;
}
::-moz-placeholder{
    color: #ccc;
}
:-moz-placeholder{
    color: #ccc;
}
:-ms-input-placeholder{
    color: #ccc;
}

abbr,
acronym,
fieldset{
	border: 0;
}

hr{
	margin: 2em 0;
	display: block;
	border: 0;
	border-bottom: 1px solid #ddd;
	clear: both;
}

img{
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;

	-moz-transition: 0.5s;
	-webkit-transition: 0.5s;
	transition: 0.5s;
	vertical-align: top;

	-moz-user-select: none; 
	-webkit-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-user-drag: none; 
	user-drag: none;
}

iframe{
	display: block;
	vertical-align: top;
}

i,
em{
	font-style: normal;
}

a{
	color: #000;
	background: transparent;

	-moz-transition: 0.25s;
	-webkit-transition: 0.25s;
	transition: 0.25s;
}

a:hover,
a:focus{
	color: #666;
}

a:hover img{
}

ul li{
	list-style: none;
	line-height: 1.75;
}

::selection{background-color:#333; color: #fff; }
::-moz-selection {background-color:#333; color: #fff; }
input::selection,
textarea::selection{background-color:#b6d6fd; color: #000; }
input::-moz-selection,
textarea::-moz-selection{background-color:#b6d6fd; color: #000; }

div,
ul,
section,
article{
	width: auto;
}

.tel_dis{ cursor: default; }

.sp_i{ display: none; }
.sp_b{ display: none; }

.pc_i{ display: inline; }
.pc_b{ display: block; }

.sp_ib{ display: none; }
.pc_ib{ display: inline-block; *display: inline; zoom: 1; }

.txt_c{ text-align: center;}
.txt_r{ text-align: right;}

/*============================================================
	TopContentsStyle
============================================================*/
 
/*============================================================
	Page / column
============================================================*/
#page{
	width: 100%;
	margin: 0 auto;
	text-align: left;
 overflow: hidden;
 overflow: clip;
}

.inner{
	width: 100%;
 max-width: 1180px;
	padding:  0 10px;
	text-align: left;
	margin: 0 auto;
	position: relative;
}

/*============================================================
	Header
============================================================*/
#page_header{
	width: 100%;
 top: 0;
 left: 0;
	position: relative;
	text-align: center;
 background: #fff;
 z-index: 20;
 box-shadow: 0 0 5px 1px rgba(0,0,0,0.25)
}
#page_header .inner{
 padding: 15px 10px;
}
#page_header .main_menu .inner{
 padding: 0 10px;
}

#page_header .inner_h{
 display: flex;
 justify-content: space-between;
 align-items: center;
}
#page_header a{
 text-decoration: none;
}
#page_header .logo{
 /*width: 24%;*/
 width: 280px;
}
#page_header .out_menu form{
 position: relative;
}
#page_header .out_menu a:hover,
#page_header .out_menu a:focus{
 color: #2d498a;
}
#page_header .out_menu .inp_search{
 width: 100%;
 max-width: 180px;
 border: 1px solid #2d498a;
 padding:  10px 10px 10px 30px;
 display: block;
 border-radius: 30px;
 box-sizing: border-box;
}
#page_header .out_menu .btn_search{
 position: absolute;
 display: block;
 top: 10px;
 left: 10px;
 width: 14px;
}
#page_header .out_menu{
 width: 74%;
 display: flex;
 justify-content: flex-end;
 align-items: center;
}
#page_header .out_menu ul{
 font-size: 100%;
 font-weight: bold;
}
#page_header .out_menu li{
 display: inline-block;
 margin-right: 1em;
}
.main_menu{
 background: #2d498a;
}
.main_menu li{ position: relative;}
.main_menu>.inner>ul>li::before{
 content: "";
 display: block;
 border-left: 1px solid #fff;
 position: absolute;
 top: 15px;
 bottom: 15px;
}
.main_menu>.inner>ul>li:last-child::after{
 content: "";
 display: block;
 border-left: 1px solid #fff;
 position: absolute;
 top: 15px;right: 0;
 bottom: 15px;
}
.main_menu a{
 display: block;
 color: #fff;
 text-decoration: none;
 text-align: center;
 padding: 15px 0;
}
.main_menu a:hover,
.main_menu a:focus{
 opacity: 0.7;
}
.main_menu ul{
 display: grid;
 grid-template-columns: repeat(8, auto);
 column-gap: 0;
 row-gap: 0;
 font-size: 100%;
 font-weight: bold;
}
.main_menu li{
 line-height: 1;
 position: relative
}
.main_menu li:last-child{
}
@media screen and (max-width: 1000px) and  (min-width: 769px){
 .main_menu ul{
  font-size: 78%;
 }
 #page_header .out_menu ul{
  font-size: 78%;
 }
 #page_header .logo{
  width: 200px;
 }
 #page_header .out_menu .inp_search{
  max-width: 120px;
 }
}

.main_menu .sub_menu{
 position: absolute;
 top: 80%;
 pointer-events: none;
 opacity: 0;
 transform: translateY(10%);
 transition: 0.25s transform,0.25s opacity;
 left: -7.5vw;
 background: #ebebeb;
 padding:  20px;
 z-index: 20;
 border-radius: 10px;
 border: 5px solid #fff;
 width: 400px;
}
.main_menu li:hover .sub_menu,
.main_menu li:focus .sub_menu{
 pointer-events: auto;
 opacity: 1;
 transform: translateY(0);
}
.main_menu .sub_menu a{
 text-decoration: none;
 color: #000;
 padding: 10px 0;
 text-align: left;
}
.main_menu .sub_menu li{
 line-height: 1;
 border-left: 0;
}
.main_menu .sub_menu dl{
 font-size: 16px;
}
.main_menu .sub_menu dt a{
 display: block;
 line-height: 1;
 cursor: pointer;
 position: relative;
 padding: 10px 0 10px 12px;
 color: #3684c6;
}
.main_menu .sub_menu dt a::before{
 display: block;
 content: "";
 position: absolute;
 top: 50%;
 width:7px;
 height: 7px;
 left: -5px;
 border-top: 3px solid #d45f61;
 border-right: 3px solid #d45f61;
 transform: rotate(45deg);
 margin-top: -4px;
}
.main_menu .sub_menu dt .parent::before{
 transform: rotate(135deg);
 margin-top: -5px;
}
.main_menu .sub_menu li:last-child{ border: 0;}

.main_menu .sub_menu dd{
 line-height: 1;
 /*display: none;*/
 display: grid;
 grid-template-rows: 0fr;
 transition: grid-template-rows 0.25s;
}
.main_menu .sub_menu .on+dd{
 /*display: block;*/
 grid-template-rows: 1fr;
}
.main_menu .sub_menu ul{
 display: block;
 margin-left: 1.5em;
 overflow: hidden;
 font-size: 14px;
 font-weight: normal;
 margin-bottom: 0;
}
.main_menu .sub_menu dt+dt,
.main_menu .sub_menu dd+dt{
 margin-top: 0.5em;
}
/*============================================================
	Nav
============================================================*/

/*============================================================
	Content
============================================================*/
#content{
	width: 100%;
}
/*============================================================
	Main
============================================================*/
#main{
	width: 100%;
}

/* Main Design */
#main p,
#main ul,
#main dl,
#main ol,
#main blockquote,
#main pre,
#main td,
#main th{
	line-height: 1.75;
	font-size: 112.5%;
	margin-bottom: 1em;
}

#main table{
	margin-bottom: 1em;
}

#main td,
#main th{
	margin-bottom: 0;
}

#main h1,
#main h2,
#main h3,
#main h4,
#main h5,
#main h6{
	font-size: 100%;
	line-height: 1.5;
	margin-bottom: 1em;
}

/* default */
#main ul ul,
#main ul p,
#main ul blockquote,
#main ul pre,
#main ul dl,
#main dl dl,
#main dl p,
#main dl ul,
#main dl ol,
#main blockquote p,
#main blockquote ul,
#main blockquote dl,
#main blockquote ol,
#main ol blockquote,
#main ol pre,
#main ol p,
#main td p,
#main td ul,
#main td dl{
	font-size: 100%;
}

#main *:last-child{
	margin-bottom: 0;
}

/*============================================================
	TOP
============================================================*/

/* ===== slick-dots ===== */
#main .top_slide img{ width: 100%;}
#main .top_slide .slick-dots{
 margin: 0;
 position: absolute;
 bottom: 0px;
 left: 0;
 width: 100%;
 z-index: 10;
 text-align: center;
}
#main .top_slide .slick-dots li{
 display: inline-block;
 width: 15px;
 height:  15px;
 border: 1px solid #fff;
 border-radius: 50%;
 background: #dfdfdf;
 margin:  0 5px;
}
#main .top_slide .slick-slide{
 padding:  40px 0.5%;
}
#main .top_slide .slick-slide img{ opacity: 0.5;}
#main .top_slide .slick-active img{ opacity: 1;}

#main .top_slide .slick-dots .slick-active{
 background: #2d498a;
}
#main .top_slide .slick-dots button{
 color: rgba(0,0,0,0);
 font-size: 0;
}
.top_slide .slick-prev, .top_slide .slick-next{
 width: 65px;
 height: 65px;
 position: absolute;
 top: 50%;
 margin-top: -32px;
 z-index: 10;
 color: rgba(0, 0, 0, 0);
 background: url("../images/btn_l.png") no-repeat 0 0;
 background-size: contain;
}
.top_slide .slick-prev {
 left: 20%;
}
.top_slide .slick-next {
 background-image: url("../images/btn_r.png");
 right: 20%;
}



/* ===== top_menu ===== */
#main .top_menu ul{
 display: grid;
 grid-template-columns: repeat(4, 1fr);  column-gap: 25px; row-gap: 50px;
 margin: 0;
}
#main .top_menu{
 padding: 60px 0 60px 0;
 background: #2d498a
}
#main .top_menu ul a{
 display: block;
 text-decoration: none;
 color: #fff;
}
#main .top_menu p{
 margin: 1em 0 0 0;
 text-align: center;
 font-weight: bold;
 line-height: 1;
 color: #FFFFFF;
}

#main .top_menu .img_topmenu{
 border: 2px solid #fff;
 border-radius: 10px;
}
#main .top_menu a:focus ,
#main .top_menu a:hover {
 color: rgba(255,255,255,0.70);
}
#main .top_menu a:focus .img_topmenu,
#main .top_menu a:hover .img_topmenu{
 border: 2px solid rgba(255,255,255,0.80);
}

#main .top_menu ul .ico{
 display: block;
 width: 65px;
 margin: -32px auto 0 auto;
 border-radius: 50%;
 overflow: hidden;
 position: relative;
 z-index: 1;
 transition: 0.25s transform;
}
#main .top_menu ul a:focus .ico,
#main .top_menu ul a:hover .ico{
 transform: scale(1.1,1.1)
}
/* ===== sec_top_news ===== */
#main .change{
 text-align: center;
 margin: 0;
}
.btn_prev,
.btn_more {
 position: relative;
 display: inline-block;
 line-height: 1;
 border: 1px solid #2d498a;
 color: #fff;
 padding: 14px 25px 14px 14px;
 text-decoration: none;
 width: 100%;
 max-width: 260px;
 text-align: center;background: #2d498a;
 border-radius: 30px;
 font-weight: bold;
 font-size: 18px;
}
.btn_more:hover,
.btn_more:focus {
 color: #fff;
 opacity: 0.7;
}
.btn_more::before {
 content: "";
 display: block;
 position: absolute;
 width: 10px;
 height: 10px;
 border-top: 2px solid #fff;
 border-right: 2px solid #fff;
 transform: rotate(45deg);
 top: 50%;
 right: 20px;
 margin-top: -5px;
}

#main .sec_top_news{
 padding:  60px 0;
 background: #fff;
}
#main .news_list{
 font-weight: bold;
 max-width: 1000px;
 margin: 0 auto 3em auto;
}
#main .news_list li{
 margin-bottom: 1em;
 line-height: 1.5;
}
#main .news_list a{
 text-decoration: none;
 display: grid;
 align-items: center;
 grid-template-columns: 200px 1fr;
}
#main .news_list b{
 display: block;
 padding: 20px;
 border-radius: 10px;
 background: #ebebeb;
}
/* ===== bnr_area ===== */

.bnr_area{
 padding: 40px 10px;
 background: #f7f7f7;
}
.bnr_area ul{
 display: flex;
 align-content: center;
 justify-content: center;
}
.bnr_area li{
 margin:  0 0.5%;
}
.bnr_area ul img{
 height: 60px;
}
@media screen and (max-width: 1000px) {
 .bnr_area ul{
  display: grid;
  grid-template-columns: repeat(2, 1fr);  column-gap: 10px; row-gap: 10px;
  align-content: center;
  justify-content: center;
  margin: auto;
  max-width: 480px;
 }
 .bnr_area li{
  margin:  0 0.5%;
  text-align: center;
 }
 .bnr_area ul img{
  height: auto;
  width: 80%;
 }
 .bnr_area ul .tsh_bnr{
  width: 100%; 
 }
}
/* ===== sec_top_access ===== */
#main .sec_top_access{
 padding: 30px 0;
 background: #eaeaea;
}
#main .sec_top_access .top_head{
 font-size: 187.5%;
 color: #2d498a;
 line-height: 1.5;
}
#main .access_area{
 display: grid;
 grid-template-columns: 60% 36%;
 align-content: stretch;
 justify-content: space-between;
}
#main .access_area .map_area{
 aspect-ratioa: 1/1;
}
#main .access_area .map_area iframe{
 width: 100%;
 height:  100%;
}
#main .access_data_area{
 margin-top: 40px;
 display: grid;
 justify-content: space-between;
 grid-template-columns: 1fr 1fr;
}
#main .access_data_area h3{
 font-size: 187.5%;
 line-height: 1;
 color: #2d498a;
 margin-bottom: 0.5em;
}
/*============================================================
	Footer
============================================================*/
#page_footer{
	width: 100%;
 padding-bottom: 30px;
	position: relative;
	text-align: center;
}
#page_footer p{
 line-height: 1.5;
 font-size: 88%;
 margin-bottom: 1em;
}
#page_footer strong{
 font-size: 175%;
}
.foot_menu{
 background: #2d498a;
 padding:  15px 0;
 margin-bottom: 15px;
}
.foot_menu a{
 color: #fff;
 text-decoration: none;
 display: block;
 padding:  0 1em;
}
.foot_menu ul{
 font-size: 88%;
 text-align: center;
}
.foot_menu li{
 display: inline-block;
 line-height: 1;
}
.foot_menu li a{
 padding: 0 0.5em;
 border-right: 1px solid #fff;
}
.foot_menu li:first-child a{
 padding-left: 0;
}
.foot_menu li:last-child a{
 padding-right: 0;
 border-right: 0;
}


/*============================================================
	page_2nd
============================================================*/
.page_2nd{
 background: #dbf5fb;
}

/* ===== side_menu_sub ===== */

#main .side_menu{
 position: sticky;
 top: 10px;
 background: #2d498a;
 padding: 35px 20px;
 border-radius: 20px;
 z-index: 10;
}
#main .side_menu h2{
 font-size: 125%;
 color: #fff;
 line-height: 1;
 margin-bottom: 1.5em;
}
#main .side_menu_top{
 position: relative;
 z-index: 10;
 border-top: 2px solid #fff;
 font-weight: bold;
 font-size: 100%;
}
#main .side_menu_top li{
 border-bottom: 2px solid #fff;
}
#main .side_menu_sub{
 position: absolute;
 width: 100%;
 top: 0;
 left: 0;
 bottom: 0;
 padding-left: 0;
 z-index: 8;
 transition: 0.5s padding, 0.5s width;
}
#main .side_menu_sec{
 position: absolute;
 width: 200%;
 padding: 0;
 top: -2px;
 left: calc(100% + 15px);
 background: #fff;
 z-index: 10;
 opacity: 1;
 pointer-events: none;
 border-radius: 20px;
 border-top-left-radius: 0;
 
 /*transition: 0.5s  opacity, 0.5s  left,0.5s width,0.5s transform,0.5s padding;*/
 transition: 0.25s 0.25s;
 transform-origin: top left;
 transform: scaleX(0);
}
#main .current_on+.side_menu_sec{
 pointer-events: auto;
 transform: scaleY(100%);
 opacity: 1;
 
 padding: 0 15px;
 /*transition: 0.25s opacity, 1s left,0.25s width,0.25s transform,0.25s padding}*/
 transition: 0.25s;
}

#main .side_menu_sec .btn_menu_close{
 content: "";
 position: absolute;
 display: block;
 background: #fff;
 top: 0;
 height: calc(34px + 1em);
 height: 0;
 left: 0;
 width: 55px;
 border-radius: 0;
 transform: scaleX(0) scaleX(0);
 transition: 0.75s 0.25s;

}
#main .current_on+.side_menu_sec .btn_menu_close{
 left: -55px;
 height: 48px;
 transform: scaleX(100%) scaleX(100%);
 border-radius: 20px;
 border-bottom-right-radius: 0;
 border-top-right-radius: 0;
 background: #fff url("../images/ico_side_c.png") no-repeat 20px 50%;
 background-size: 22px 22px;
 transition: 0.25s 0s;
 
}


#main .side_menu_sec ul{
 opacity: 0;
 transition: 0.25s 0s opacity;
 min-width: 470px;
}

#main .current_on+.side_menu_sec ul{
 opacity: 1;
 transition: 0.25s 0.25s opacity;
}

#main .side_menu li{
 position: relative;
 z-index: 1;
 line-height: 1;
}
#main .side_menu a{
 display: block;
 text-decoration: none;
 padding:  15px 35px 15px 0;
 padding: 0 35px 0 0;
 height: 44px;
 line-height: 44px;
 vertical-align: middle;
 color: #fff;
 position: relative;
 z-index: 10;
 background: #2d498a url("../images/ico_side_l.png") no-repeat right center;
 background-size: 22px 22px;

 text-overflow: ellipsis;
 overflow: hidden;
 white-space: nowrap;
}
#main .side_menu_sec a{
 padding:  15px 0 15px 30px;
 height: auto;
 line-height: 1;
 border-bottom: 1px solid #eee;
 color: #3684c6;
 background:  url("../images/ico_side_l_b.png") no-repeat 0 50%;
 background-size: 22px 22px;
}
#main .side_menu .side_parent{
 background-image: url("../images/ico_side_h.png");
 transition: 0.2s;
}
#main .side_menu .current_on{
background-size: 22px 0;
}
#main .side_menu_sec a:focus,
#main .side_menu_sec a:hover{
 opacity: 0.7;
}
/* ===== path ===== */
#main .path{
 margin:  0;
 padding: 25px 0 50px 0;
 line-height: 1;
 font-size: 100%;
}
#main .path a{
 color: #2d498a;
 text-decoration: none;
}
#main .path em{ font-weight: bold; }
/* ===== main_content ===== */
#main .main_content_area{
 display: flex;
 justify-content: space-between;
 min-height:  100vh;
}
#main .sub_area{
 width: 25%;
 min-width: 290px;
 padding-bottom: 20px;
}

#main .main_content{
 padding-bottom: 85px;
 width: 100%;
 margin-left: 5%;
}
/* ===== top_head ===== */
#main .top_head{
 line-height: 1;
 text-align: center;
 margin-bottom: 2em;
 font-size: 225%;
}

/*============================================================
	check_page
============================================================*/
.check_page{
 background: #fff;
 color: #006300;
}
.check_page #main{
}

.check_page #main{
 padding:  45px 0;
 border-bottom:  1px solid #006300;
 margin-bottom: 20px;
}
#main .chk_area hr{
 display: none;
 margin: 1em 0;
 border-bottom: 1px solid #006300;
}
#main .chk_area input{
 accent-color: #006300;
 margin:  0 5px 0 0;
}
#main .chk_area label{
  display: inline-flex;
  align-items: center;
  padding: 15px 5px;
  border: 2px solid #006300;
  background: none;
  border-radius: 5px;
  margin: 0 0 2% 0;
  line-height: 1;
  width: 19%;
  cursor: pointer;
  letter-spacing: -0.05em;
}
#main .chk_area label:has(input:checked) {
 background: #006300;
 border-color: #006300;
 color: #fff;
}
#main .chk_area h2{
  text-align: center;
}
#main .chk_area .type{
  display: flex;
  flex-wrap: wrap;
  justify-content: center
}
#main .chk_area .type label{ margin: 0 1%;}
#main .chk_area .a{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  font-size: 112.5%;
}
@media screen and (max-width: 1010px) {
 #main .chk_area label{
    display: block;
    padding: 20px;
    width: 100%;
  }
  #main .chk_area .type label{ margin: 0 0 2% 0;}
}
#main .total{
  interpolate-size: allow-keywords;
  max-height: 0;
  opacity: 0;
  transition: 0.5s max-height, 0.5s padding;
  overflow: hidden;

  /*
  max-height: none;
  visibility: visible;*/
}

#main .chk_area .btn_result{
  display: block;
  padding: 20px;
  width: 100%;
  max-width: 350px;
  color: #fff;
  background: #006300;
  border: 0;
  font-size: 24px;
  font-weight: bold;
  border-radius: 10px;
  margin: 35px auto;
}
#main .chk_area .btn_result[disabled]{
    opacity: 0.2;
}
#main .chk_area section{
 border-bottom: 1px solid #fff;
 padding: 35px 0;
}
#main .chk_area section:has(input[disabled]) {
  opacity: 0.25;
}
#main .chk_area h2{
 font-size: 150%;
 line-height: 1;
}
#main .total {
 margin: 0 auto;
 padding: 0 80px;
 max-width: 860px;
 color: #006300;
 background: #fff;
 border-radius: 10px;border: 1px solid #006300;
}
#main .totalOn{
  max-height: none;
  opacity: 1;
  padding: 50px 80px;
  margin-bottom: 40px;
  margin: 60px auto 40px auto;
}
#main .total h2{
 color: #006300;
 font-size: 150%;
 line-height: 1;
}
#main .total h2 strong{
 font-size: 150%;
}
#main .total h3{
 color: #006300;
 font-size: 150%;
 text-align: center;
 margin: 3em 0 1em 0;
 line-height: 1;
}

#main .chk_area .tbl_ikigai_tbl{
  width: 100%;
  border-collapse: collapse;
  border-bottom: 2px solid #006300;
}
#main .chk_area .tbl_ikigai_tbl .tbl_head th,
#main .chk_area .tbl_ikigai_tbl .tbl_head td{
  border-top: 2px solid #006300;
  border-bottom: 2px solid #006300;
  color: #006300;
}

#main .chk_area .tbl_ikigai_tbl th,
#main .chk_area .tbl_ikigai_tbl td{
 padding:  10px 0;
}
#main .chk_area .tbl_ikigai_tbl th{
 padding-right: 10px;
 
}
#main .chk_area .tbl_ikigai_tbl .tbl_head th+th {
 white-space: nowrap;
}
#main .chk_area .tbl_ikigai_tbl .tbl_head th {
 padding-right: 0;
}

#main .chk_area .tbl_ikigai_tbl td{
  color:#006300;
  font-weight: bold;
  white-space: nowrap;
}
#main .tbl_notes{ font-weight: bold; }

.btn_prev{
 position: relative;
 border: 1px solid #006300;
 color: #006300;
 padding: 14px;
 max-width: 260px;
 background: none;
 border-radius: 30px;
 font-weight: bold;
}
.btn_more:hover,
.btn_more:focus {
 color: #fff;
 opacity: 0.7;
}

#main .chk_area .notesInfo {
    font-size: 90%;
}

/*============================================================
	main_content
============================================================*/

#main .main_content h1{
 color: #2d498a;
 line-height: 1.5;
 font-size: 225%;
 margin-bottom: 1.5em;
}
#main .main_content h2{
 margin: 2em 0 1em 0;
 padding: 5px 0 5px 20px;
 color: #3684c6;
 line-height: 1.5;
 font-size: 187.5%;
 position: relative;
}
#main .main_content h2::before{
 display: block;
 position: absolute;
 top: 0;
 bottom: 0;
 left: 0;
 width: 10px;
 background: #3684c6;
 content: "";
 border-radius: 10px;
}
#main .main_content h3{
 margin: 2em 0 1em 0;
 color: #3684c6;
 line-height: 1.5;
 font-size: 150%;
}
.btn_link {
 position: relative;
 display: inline-block;
 line-height: 1;
 border: 2px solid #3684c6;
 color: #3684c6;
 padding: 14px 35px 14px 25px;
 text-decoration: none;
 width: auto;
 min-width: 260px;
 max-width: 100%;
 background: #fff;
 border-radius: 30px;
 font-weight: bold;
 font-size: 18px;
}
.btn_link:hover,
.btn_link:focus {
 color: #3684c6;
 opacity: 0.7;
}
.btn_link::before {
 content: "";
 display: block;
 position: absolute;
 width: 10px;
 height: 10px;
 border-top: 2px solid #3684c6;
 border-right: 2px solid #3684c6;
 transform: rotate(45deg);
 top: 50%;
 right: 20px;
 margin-top: -5px;
}
.btn_more_grn img{
 width: 20px;
 vertical-align: middle;
 display: inline-block;
 position: absolute;
 top: 50%;
 right: 30px;
 margin-top: -10px;
 font-size: 18px;
}
.btn_more_grn {
 position: relative;
 line-height: 1;
 border: 1px solid #006300;
 color: #fff;
 padding: 24px 60px;
 text-decoration: none;
 width: 100%;
 max-width: 260px;
 text-align: center;
 background: #006300;
 border-radius: 30px;
 font-weight: bold;
}
.btn_more_grn:hover,
.btn_more_grn:focus {
 color: #fff;
 opacity: 0.7;
}
#main .mb2{ margin-bottom: 2em}
#main .mb3{ margin-bottom: 3em}
#main .mb4{ margin-bottom: 4em}
#main .mb5{ margin-bottom: 5em}


/*============================================================
	ページトップに戻るボタン
============================================================*/
.pageTop {
position: fixed;
bottom: 10px;
right: 10px;
z-index: 9999;
opacity: 0.8;
cursor: pointer;
}

.pageTop:hover {
opacity: 1;
}