@charset "utf-8";
.youtube {
	position: relative;
	padding-top: 56.25%; /* 16:9 アスペクト比 */
	height: 0;
	margin: 0 0 40px 0;
}

.youtube iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

* {
	padding: 0;
	margin: 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

#g_navi ul li.pc_show,
.pc_show {
  display: block;
}
#g_navi ul li.pc_hid,
.pc_hid {
  display: none;
}

html {
  height: 100%;
}

body {
	color: #111;
	background-color: #F2F6F7;
	font-family: "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Osaka, "ＭＳ ゴシック", "MS Gothic", sans-serif;
	word-wrap: break-word;
	height: 100%;
	line-height: 2.2;
}

fieldset {
    display: unset;
    min-inline-size: unset;
    margin-inline: unset;
    border: unset;
    border-image: unset;
    padding-block: unset;
    padding-inline: unset;
}

.font_mincho {
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "Sawarabi Mincho", "HG明朝E",  "ＭＳ Ｐ明朝", "MS PMincho", serif;
}

section,
article {
	display: block;
}

img {
	vertical-align: top;
}

a img {
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
}

a:hover img {
	filter: brightness(120%);
}

li {
	list-style-type: none;
}

a {
	color: #FE8AB8;
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
}
a:hover {
	color: #FE8AB8;
	text-decoration: none;
}

table {
	border-collapse: collapse;
}
table td {
	border-collapse: collapse;
}

.clfix:after{
  content: "."; 
  display: block; 
  height: 0; 
  font-size:0;	
  clear: both; 
  visibility:hidden;
}


/* CKEditor templates
----------------------------------------------- */
.temp1,
.temp2,
.temp3,
.temp4 {
  clear: both;
  margin-bottom: 20px;
}

.temp1 .thumb {
  float: left;
  margin-bottom: 10px;
  margin-right: 20px;
}

.temp1 ul,
.temp1 ol {
  display: inline-block;
  vertical-align: top;
}

.temp2 .thumb {
  float: right;
  margin-bottom: 10px;
  margin-left: 20px;
}

.temp3,
.temp4 {
  display: flex;
  justify-content: center;
}

.temp3 dl,
.temp4 dl {
  margin: 0 5px;
  padding: 0;
  vertical-align: bottom;
}

.temp3 dl {
  max-width: 48%;
}

.temp4 dl {
  max-width: 31%;
}

.temp3 dl dt,
.temp4 dl dt {
  margin-bottom: 10px;
  text-align: center;
}

.temp3 dl dd,
.temp4 dl dd {
  margin: 0;
  text-align: center;
}

table.temp5,
table.temp6 {
  margin-bottom: 30px;
}

.temp5 caption,
.temp6 caption {
  text-align: center;
}

.temp5 th,
.temp5 td,
.temp6 th,
.temp6 td {
  padding: 6px 10px;
  border: 1px solid #b3b3b3;
  text-align: center;
}

.adobeReader,
.temp7 {
  clear: both;
  margin: 0 0 20px;
  padding: 10px 20px 10px 196px;
  border: 1px solid #faa;
  background: #fff3f3 url("/_themes/images/adobe_bn.png") no-repeat 20px center;
}

.adobeReader p,
.temp7 p {
  margin: 0 0 10px;
}

#privacyArea .clm{
  margin: 0 0  15px 0;
}

#privacyArea .clm p{
  margin: 0 0  10px 0;
  padding: 0;
}

#privacyArea .clm dl dt{
  margin: 20px 0 0 0;
  font-weight: bold;
}

#privacyArea .clm dt,
#privacyArea .clm dd{
  font-size:18px;
}

#page-reservation-formCounseling-index form .questions .question:nth-child(14) .question_content,
#page-reservation-formCounseling-index form .questions .question:nth-child(15) .question_content,
#page-reservation-formCounseling-index form .questions .question:nth-child(16) .question_content,
#page-reservation-formCounseling-index form .questions .question:nth-child(11) .question_content,
#page-reservation-formCounseling-index form .questions .question:nth-child(12) .question_content,
#page-reservation-formCounseling-index form .questions .question:nth-child(13) .question_content,
#page-reservation-formCounseling-index form .questions .question:nth-child(8) .question_content,
#page-reservation-formCounseling-index form .questions .question:nth-child(9) .question_content,
#page-reservation-formCounseling-index form .questions .question:nth-child(10) .question_content,
#page-reservation-formCounseling-index form .questions .question:nth-child(14) .answer_content,
#page-reservation-formCounseling-index form .questions .question:nth-child(15) .answer_content,
#page-reservation-formCounseling-index form .questions .question:nth-child(16) .answer_content,
#page-reservation-formCounseling-index form .questions .question:nth-child(11) .answer_content,
#page-reservation-formCounseling-index form .questions .question:nth-child(12) .answer_content,
#page-reservation-formCounseling-index form .questions .question:nth-child(13) .answer_content,
#page-reservation-formCounseling-index form .questions .question:nth-child(8) .answer_content,
#page-reservation-formCounseling-index form .questions .question:nth-child(9) .answer_content,
#page-reservation-formCounseling-index form .questions .question:nth-child(10) .answer_content{
  padding-top:0;
  border: none;
    display: block;
    width: 100%;
}


#page-reservation-formCounseling-index form .questions .question:nth-child(14) .answer_content select,
#page-reservation-formCounseling-index form .questions .question:nth-child(15) .answer_content select,
#page-reservation-formCounseling-index form .questions .question:nth-child(16) .answer_content select,
#page-reservation-formCounseling-index form .questions .question:nth-child(11) .answer_content select,
#page-reservation-formCounseling-index form .questions .question:nth-child(12) .answer_content select,
#page-reservation-formCounseling-index form .questions .question:nth-child(13) .answer_content select,
#page-reservation-formCounseling-index form .questions .question:nth-child(8) .answer_content select,
#page-reservation-formCounseling-index form .questions .question:nth-child(9) .answer_content select,
#page-reservation-formCounseling-index form .questions .question:nth-child(10) .answer_content select{
    width: 100%;
}

#page-reservation-formCounseling-index form .questions .question:nth-child(14) ,
#page-reservation-formCounseling-index form .questions .question:nth-child(15) ,
#page-reservation-formCounseling-index form .questions .question:nth-child(16) ,
#page-reservation-formCounseling-index form .questions .question:nth-child(11) ,
#page-reservation-formCounseling-index form .questions .question:nth-child(12) ,
#page-reservation-formCounseling-index form .questions .question:nth-child(13) ,
#page-reservation-formCounseling-index form .questions .question:nth-child(8) ,
#page-reservation-formCounseling-index form .questions .question:nth-child(9) ,
#page-reservation-formCounseling-index form .questions .question:nth-child(10) {
    display: inline;
    float: left;
    padding-bottom: 0;
    border: none;
    margin: 0 10px 0 0;
    width: 32.3%;
}

#page-reservation-formCounseling-index form .questions .question:nth-child(8) ,
#page-reservation-formCounseling-index form .questions .question:nth-child(11) ,
#page-reservation-formCounseling-index form .questions .question:nth-child(14) {
    width: auto;
    clear: both;
}

#page-reservation-formCounseling-index form .questions .question:nth-child(8) label,
#page-reservation-formCounseling-index form .questions .question:nth-child(11) label,
#page-reservation-formCounseling-index form .questions .question:nth-child(14) label{
  width: 100%;
  display: block;
}

#page-reservation-formCounseling-index form .questions .question:nth-child(8) label span,
#page-reservation-formCounseling-index form .questions .question:nth-child(11) label span,
#page-reservation-formCounseling-index form .questions .question:nth-child(14) label span{
  display: block;
}

#page-reservation-formCounseling-index form .questions .question:nth-child(15) .note,
#page-reservation-formCounseling-index form .questions .question:nth-child(16) .note,
#page-reservation-formCounseling-index form .questions .question:nth-child(12) .note,
#page-reservation-formCounseling-index form .questions .question:nth-child(13) .note,
#page-reservation-formCounseling-index form .questions .question:nth-child(9) .note,
#page-reservation-formCounseling-index form .questions .question:nth-child(10) .note{
  display: none;
}

#page-reservation-formCounseling-index form .questions .question:nth-child(20){
	border: 1px solid #bebebe;
	height:200px;
	overflow:auto;
	overflow-y:scroll;
	overflow-x:hidden;
} 




/* calendar-category
----------------------------------------------- */
#calendarCategory .pieceBody {
  padding: 12px;
}

#calendarCategory .pieceBody ul {
  margin-bottom: 4px;
}

#calendarCategory .pieceBody ul li {
  margin-left: 1.5rem;
  list-style-type: disc;
}

#calendarCategory .pieceBody ul li li {
  list-style-type: circle;
}





.calendarEvents h2 {
  margin: 0 30px 1rem;
  padding: 2px 0;
  border-bottom: 2px solid var(--main-color-4);
  font-size: 1.125rem;
}

.calendarEvents th {
  padding: 8px 15px;
  background-color: #25A6E1;
  font-weight: normal;
  text-align: center;
  color: #fff;
}

/* event, search, todays
----------------------------------------------- */
.calendarMonthlyEvents th:not(:last-child),
.resultEvents th:not(:last-child),
.calendarTodayEvents th:not(:last-child) {
  border-right: 1px solid #fff;
;
}

.calendarMonthlyEvents td,
.resultEvents td,
.calendarTodayEvents td {
  padding: 30px 15px;
  border-bottom: 1px solid #d3d3d3;
  border-left: 1px solid #d3d3d3;
  border-right: 1px solid #d3d3d3;
  vertical-align: middle;
}

.calendarMonthlyEvents td.date span,
.resultEvents td.date span,
.calendarTodayEvents td.date span {
  display: inline-block;
  width: 12rem;
}

.calendarMonthlyEvents .image,
.calendarMonthlyEvents .date,
.resultEvents .image,
.resultEvents .date,
.calendarTodayEvents .image,
.calendarTodayEvents .date {
  text-align: center;
}

.calendarMonthlyEvents .image,
.resultEvents .image,
.calendarTodayEvents .image {
  width: 180px;
  text-align: center;
}

.calendarMonthlyEvents .title_link,
.resultEvents .title_link,
.calendarTodayEvents .title_link {
  width: 15rem;
}

.calendarMonthlyEvents .note,
.resultEvents .note,
.calendarTodayEvents .note {
  width: calc(var(--content-width) - 180px - 13rem - 15rem);
}

/* calendar
----------------------------------------------- */
.calendarCalendarEvents table {
  width: 100%;
}
.calendarCalendarEvents th,
.calendarCalendarEvents td {
  border: 1px solid #d3d3d3;
}
.calendarCalendarEvents th {
  padding: 5px 12px;
  vertical-align: top;
}
.calendarCalendarEvents td {
  padding: 5px 12px 16px;
  vertical-align: top;
}

/* weekset
----------------------------------------------- */
.sat {
  background-color: #dff6fe;
  color: #1565c0;
}

.sun,
.holiday,
.close {
  background-color: #ffe6f1;
  color: #d90000;
}

.prevMonth,
.nextMonth {
  color: #ccc;
}


/* calendarArea 
----------------------------------------------- */
#calendarArea {
  padding-bottom: 40px;
}

#calendarArea ul {
  display: flex;
}

#calendarArea li {
  flex: 1;
  text-align: center;
}

#calendarArea li a {
  display: block;
  padding: 10px 0;
  background-color: #FE8AB8;
  color: #fff;
  text-decoration:none;
  font-weight: bold;
}

#calendarArea li:not(:last-child) a {
  margin-right: 1px;
}

#calendarArea li a:hover {
  background-color: #FE8AB8;
  color: #fff;
}

.calendarEvents table{
  table-layout: fixed;
  overflow-wrap: break-word;
  border-collapse: collapse;
  empty-cells: show;
  width: 100%;
}


#blogleft #linkCategory01,
#blogleft #linkCategory02,
#blogleft #linkCategory03,
#contentArea .mainArea .contentGpArticleDocs,
#contentArea .mainArea .docs,
#contentArea .mainArea .categoryType,
#contentArea .mainArea .contentGpCategoryCategoryType{
  padding: 0 0 30px 0;
}




#page-beginner-index #beginnerArea #intro ul.flexbox {
  justify-content: space-between;
}

#page-beginner-index #beginnerArea #intro ul.flexbox li{
 width: 49%;
}

#page-beginner-index #beginnerArea .flexbox {
  justify-content: space-between;
}

#page-beginner-index .content #beginnerArea h3{
  letter-spacing: 0;
  font-weight: bold;
  clear: both;
  margin-bottom: 30px;
  font-size: 28px;
  color: #000;
  background: unset;
  box-shadow: unset;
  border: none;
  padding: 0;
  font-weight: bold;
  font-family: "Zen Kurenaido", sans-serif;
  line-height: 1.6;
}


#page-beginner-index .content #beginnerArea #amateurflow h3:first-letter{
  color: #FE8AB8;
  font-size: 46px;
}

.text-beginning h4 {
  padding: 0.5em;/*文字周りの余白*/
  color: #000;/*文字色*/
  background: #ffedf3;/*背景色*/
  border-left: solid 5px #FE8AB8;/*左線（実線 太さ 色）*/
    font-size: 20px;
  margin-bottom: 10px;
}
.text-beginning h5 {
  background: linear-gradient(transparent 70%, #ffedf3 70%);
    font-size: 20px;
  margin-bottom: 10px;
}

.text-beginning h6 {
  border-bottom: dashed 2px #ffedf3 ;
    font-size: 20px;
  margin-bottom: 10px;
}

.text-beginning ul {
  padding-left: 2em;
}

.text-beginning ol {
  padding-left: 2em;
}

.text-beginning ul li{
  list-style-type: disc;
}

.text-beginning ol li{
  list-style-type: decimal;
}
.text-beginning ol li,
.text-beginning ul li {
  margin-bottom: 0.5em;
}


blockquote
{
	font-style: italic;
	font-family: Georgia, Times, "Times New Roman", serif;
	padding: 2px 0;
	border-style: solid;
	border-color: #ffedf3 ;
	border-width: 0;
}

.text-beginning blockquote
{
	padding-left: 20px;
	padding-right: 8px;
	border-left-width: 5px;
}

.text-beginning blockquote
{
	padding-left: 8px;
	padding-right: 20px;
	border-right-width: 5px;
}


.body .text-beginning table {
    width: 100%;
}
.body .text-beginning table th {
    background-color: rgb(255, 239, 245);
    font-weight: normal;
}

.body .text-beginning table th, .body .text-beginning table td {
    text-align: left;
    border-width: 1px;
    border-style: solid;
    border-color: rgb(254, 138, 184);
    border-image: initial;
    padding: 10px;
}





#page-beginner-index #beginnerArea p{
    font-family: "Zen Kurenaido", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 24px;
    line-height: 2.0;
    padding: 0;
}

#page-beginner-index #beginnerArea .clm{
  border-bottom: 1px dotted #ddd;
  padding-bottom: 40px;
  margin-bottom: 40px;
}

#page-beginner-index #beginnerArea ul {
  margin: 0 0 30px 0;
}

#page-beginner-index #beginnerArea .body ul li{
font-family: "Zen Kurenaido", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 24px;
    line-height: 1.6;
    display: flex;
    align-items: center;
    gap: 0 5px;
    padding: .3em;
    font-weight: bold;
}

#page-beginner-index #beginnerArea .body ul li:before {
    display: inline-block;
    width: 10px;
    height: 5px;
    border-bottom: 2px solid #26ad00;
    border-left: 2px solid #26ad00;
    transform: rotate(-45deg) translateY(-1.5px);
    content: '';
}

#page-beginner-index #beginnerArea #intro figure{
  width: 34%;
}

#page-beginner-index #beginnerArea #intro .txt{
  width: 64%;
}

#page-beginner-index #beginnerArea .flexbox{
    justify-content: space-between;
}


#page-beginner-index #beginnerArea figure{
  width: 25%;
}

#page-beginner-index #beginnerArea .fLeft,
#page-beginner-index #beginnerArea .fRight{
  width: 72%;
}


.fLeft {
  position: relative;
  display: inline-block;
  margin: 1.5em 0 1.5em 15px;
  padding: 17px 30px;
  min-width: 120px;
  max-width: 100%;
  color: #555;
  font-size: 16px;
  background: #FFF;
  border: solid 3px #555;
  box-sizing: border-box;
  border-radius: 20px;
}

.fLeft:before {
  content: "";
  position: absolute;
  top: 10%;
  left: -24px;
  margin-top: -12px;
  border: 12px solid transparent;
  border-right: 12px solid #FFF;
  z-index: 2;
}

.fLeft:after {
  content: "";
  position: absolute;
  top: 10%;
  left: -30px;
  margin-top: -14px;
  border: 14px solid transparent;
  border-right: 14px solid #555;
  z-index: 1;
}

#page-beginner-index #beginnerArea .fRight{
  position: relative;
  display: inline-block;
  margin: 1.5em 15px 1.5em 0;
  padding: 17px 30px;
  min-width: 120px;
  max-width: 100%;
  color: #555;
  font-size: 16px;
  background: #FFF;
  border: solid 3px #555;
  box-sizing: border-box;
  border-radius: 20px;
}
.fRight:before {
  content: "";
  position: absolute;
  top: 10%;
  right: -24px;
  margin-top: -12px;
  border: 12px solid transparent;
  border-left: 12px solid #FFF;
  z-index: 2;
}

.fRight:after {
  content: "";
  position: absolute;
  top: 10%;
  right: -30px;
  margin-top: -14px;
  border: 14px solid transparent;
  border-left: 14px solid #555;
  z-index: 1;
}




#page-beginner-index #beginnerArea figure img{
  width: 100%;
  height: auto;
}

#page-beginner-index #amateurflow figure img {
    width: 300px;
    height: 300px;
    border-radius: 50%;
    overflow: hidden;
}

#page-beginner-index .content #beginnerArea #beginnerflow h3:first-letter{
  color: #26ad00;
  font-size: 46px;
}


#page-beginner-index #beginnerArea #beginnerflow figure{
  width: 34%;
}

#page-beginner-index #beginnerArea #beginnerflow .txt{
  width: 64%;
}


#beginnerArea #btnArea{
  margin-top: 60px;
}

#beginnerArea #btnArea .btn{
  display: block;
}

#beginnerArea #btnArea .btn a {
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
    max-width: 380px;
    padding: 10px 25px;
    color: #543618;
    transition: 0.3s ease-in-out;
    font-weight: 600;
    background: #eeee;
    border-radius: 50px;
    border: 0.2rem solid #543618;
    box-shadow: 0.2rem 0.2rem 0px 0.1rem #cccccc;
    text-decoration: none;
}

#beginnerArea #btnArea #ctBtn.btn a {
    background: #ffe9d4ee;
}

#beginnerArea #btnArea #soBtn.btn a {
    background: #d7fffdee;
}


#beginnerArea #btnArea .btn a:hover {
  transform: translate3d(0.2rem, 0.2rem, 0);
  box-shadow: none;
  opacity: 1;
  transition: all 0.2s;
}
#beginnerArea #btnArea .btn a:after {
    content: '';
    width: 5px;
    height: 5px;
    border-top: 3px solid #543618;
    border-right: 3px solid #543618;
    transform: rotate(45deg) translateY(-50%);
    position: absolute;
    top: 50%;
    right: 20px;
    border-radius: 1px;
    transition: 0.3s ease-in-out;
}

#page-index #blog {
  background-color: #fff;
  padding-bottom: 20px;
}

#page-index #blog #blogNews{
    max-width: 1200px;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
}


#bloginfoArea figure{
  margin: 0;
  padding: 0;
}

#bloginfoArea figure img{
  width: 100%;
  height: auto;
}


/*------------------------------------------------------
blog
------------------------------------------------------*/
#toc {
    border: 3px solid #228bc8;
    box-sizing: border-box;
    margin: 3em auto;
    max-width: 600px;
    background-color: #fff;
    width: 92%;
    padding: 0 0 20px 0;
}
#toc .toc-title {
    font-size: 18px;
    line-height: 1.45;
    margin: 0 0 20px 0;
    padding: 0.4em;
    text-align: center;
    color: #fff;
    background-color: #228bc8;
}

 #toc .toc-title i{
 margin: 0 10px 0 0;
}

#toc ol li ol {
    margin: 0 0 0 0px;
    padding-left: 15px;
}


#toc ol {
    margin: 0 0 0 20px;
    list-style-position:inside;
}




#toc ol li {
    padding-bottom: 5px ;
    font-weight: bold;
/*--    border-bottom: 1px dotted #333;  --*/
    margin-bottom: 5px ;
    padding-bottom: 5px ;
}

#toc ol li a{
   padding: 0 0 10px 0;
    displa:inline-block;
}

.blogCarea .ich img{
 width: 100%;
 height: auto;
}

/*-----------------------------------------
banner
/*-----------------------------------------*/

#banner ul{
    display: flex;
  justify-content: space-around;
   flex-wrap: wrap;
}

#banner ul li{
  width: 32%;
  margin: 0 0 10px 0;
  text-align: center;
}

#banner li img{
    width:100%;
    height: auto;
}

#banner li a{
    display: block;
    padding: 0 0 0 0;
    text-decoration: none;
}

#conts dl{
  border: 1px solid #FE8AB8;
  padding: 20px;
}
#conts dl dd{
  margin: 0 0 20px 0;
}
#conts dl dt,
#conts dl dd{
  line-height: 1.6;
}

#page-categoryRelationLink-shienSenmon-institute-index #conts,
#page-categoryRelationLink-shienSenmon-institute-index #intro,
#page-categoryRelationLink-shienSenmon-psychologyLicense-index #conts,
#page-categoryRelationLink-shienSenmon-psychologyLicense-index #intro,
#page-categoryRelationLink-shienSenmon-psychologyTrauma-index #conts,
#page-categoryRelationLink-shienSenmon-psychologyTrauma-index #intro,
#page-categoryRelationLink-shienSenmon-zenkokuSodan-index #conts,
#page-categoryRelationLink-shienSenmon-zenkokuSodan-index #intro,
#page-categoryRelationLink-shienSenmon-chibaSodan-index #conts,
#page-categoryRelationLink-shienSenmon-chibaSodan-index #intro{
  display: none;
}



#page-seet-form-index .questions .question:nth-child(20){
	border: 1px solid #bebebe;
	height:200px;
	overflow:auto;
	overflow-y:scroll;
	overflow-x:hidden;
} 

#page-seet-form-index  input[type="checkbox"] {
     vertical-align: top;
     margin-top: 10px;
}

#page-seet-form-index  .question label {
     margin: 5px 10px 5px 0;
     line-height: 1.6;
     width: 93%;
     display: inline-block;
}

/*------------------------------------
back
------------------------------------*/

.back{ 
  width: 190px;
  border: 1px solid #228bc8;
  margin: 0 auto;
}

.back a{
  display: block;
  text-align: center;
  padding: 10px;
  text-decoration: none;
  font-wright: bold;
  color: #000;
}
.content #consultation p strong{
   font-size: 20px;
   line-height: 1.2;
}
#shi {
  margin-top: 20px;
}
.access .flexbox .traffic p.tn{
  margin-bottom: 20px ;
}


@media only screen and (max-width: 959px) {
  .temp1 .thumb,
  .temp2 .thumb {
    float: none;
    margin: 0 0 1rem;
    text-align: center;
  }

  .temp3,
  .temp4 {
    flex-wrap: wrap;
  }

  .temp3 dl,
  .temp4 dl {
    max-width: 100%;
  }

  .adobeReader,
  .temp7 {
    padding: 55px 20px 10px;
    background-position: center 10px;
  }
}

/* clearfix
----------------------------------------------- */
.clearfix::after {
  content: "";
  display: table;
  clear: both;
}


/*
ヘッダー
-------------------------------------------*/
header {
	width: 100%;
	position: fixed;
	z-index: 300;
	transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}

header.fixed {
	background-color: #111;
	background-color: rgba(242,246,247,0.9);
}

header .h1 a img ,
header h1 a img {
	display: block;
	position: absolute;
}

#g_navi ul li a.ac_menu {
	cursor: pointer;
	overflow: hidden;
}

.pankuzu {
 background-color: #111;
 font-size: 14px;
 line-height: 30px;
 color: #EEE;
 width: 100%;
 padding-top: 10px;
 padding-bottom: 10px;
}


.pankuzu #breadCrumbs {
 width: 96%;
 max-width: 1100px;
 margin-right: auto;
 margin-left: auto;
}

.pankuzu li {
 display: inline-block;
}

.pankuzu li a {
 text-decoration: none;
 color: #fff;
}

.pankuzu li:after {
 content: ">";
 padding-left: 10px;
 padding-right: 10px;
}

.pankuzu li a:hover {
 color: #fff;
}

.pankuzu li i {
 padding-right: 5px;
}

.pankuzu li:last-child:after {
 display: none;
}


/*
メインコンテンツ
-------------------------------------------*/
.content {
	width: 100%;
	background-color: #fff;
	color: #111;
	padding-top: 50px;
	padding-bottom: 50px;
}
#commonBtn,
.cont_wrap {
	max-width: 1200px;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}

#sub_top {
	background-color: #555;
	background-repeat: no-repeat;
	background-position: top;
	background-attachment: fixed;
	height: 340px;
	line-height: 30px;
	padding-top: 180px;
	width: 100%;
	background-size: 100%;
	text-align: center;
	font-weight: bold;
	color: #FFF;
	font-size: 34px;
	letter-spacing: 0.1em;
	-moz-text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
	-webkit-text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
	-ms-text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
	text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
}

#index_top {
	height: 100%;
	width: 100%;
	position: relative;
	overflow: hidden;
}


#index_top #top_catch {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 10;
	width: 500px;
	height: 500px;
	margin-top: -250px;
	margin-left: -280px;
	color: #FFF;
	background-color: #FE8AB8;
	background-color: rgba(254,138,184,0.9);
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-flex-flow: column;
	flex-flow: column;
	border-radius: 250px;
	-webkit-border-radius: 250px;
	-moz-border-radius: 250px;
}

#index_top #top_catch h2 {
    font-size: 26px;
    letter-spacing: 1px;
    font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "Sawarabi Mincho", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    font-weight: normal;
    line-height: 1.5;
    margin-bottom: 10px;
    text-align: center;
    margin-top: 40px;
}

#index_top #top_catch h3 {
	font-size: 18px;
	font-weight: normal;
	line-height: 1;
	margin-bottom: 20px;
	text-align: center;
}

#index_top #top_catch h3 img{
  width: 80%;
}

#index_top #top_catch p {
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 1px;
	line-height: 2;
	color: #FE8AB8;
	background-color: #FFF;
	border-radius: 50px;
	text-align: center;
	padding: 0.5rem 1rem;
	margin: 0 0 10px 0;
}

#index_top #top_catch p span{
    margin: 0 10px;
}

#page-index #klabbn h2, 
#page-index #blogNews h2, 
.content #commonBtn .box_c_in h2,
#page-index .content h2.news,
.content h1 {
	font-size: 28px;
	line-height: 1.8;
	margin-bottom: 80px;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #15394A;
	font-weight: normal;
	letter-spacing: 1px;
	color: #111;
	text-align: center;
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "Sawarabi Mincho", "HG明朝E",  "ＭＳ Ｐ明朝", "MS PMincho", serif;
	padding-top: 20px;
	padding-right: 10px;
	padding-bottom: 20px;
	padding-left: 10px;
	clear: both;
}

#page-index #klabbn h2, 
#page-index #blogNews h2{
	margin-bottom: 20px;
}

.content #commonBtn .box_cont h2{
    margin-bottom: 20px;
}

#page-index #klabbn h2, 
#page-index #blogNews h2, 
.content #commonBtn .box_c_in h2,
#page-index .content h2.news{
  box-shadow: none;
  background: none;
}

.content #commonBtn .box_c_in h2 i,
.content h1 i {
	padding: 10px;
	color: #71F0BD;
}

.content #commonBtn .box_c_in h2 span,
.content h1 span {
	font-family: "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Osaka, "ＭＳ ゴシック", "MS Gothic", sans-serif;
	font-size: 24px;
	color: #42CBE3;
	font-weight: bold;
	letter-spacing: 0.1em;
}
.content #commonBtn .box_c_in h2 span.small,
.content h1 span.small {
	font-size: 18px;
	font-weight: normal;
	color: #555;
}

.content #commonBtn .box_cont{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.content h2 {
  letter-spacing: 0.1em;
  padding: 10px;
  font-weight: bold;
  clear: both;
  margin-bottom: 20px;
  font-size: 20px;
  color: #fff;
  background: #FE8AB8;
  box-shadow: 0px 0px 0px 5px #FE8AB8;
  border: solid 2px white;
  padding: 0.2em 0.5em;
}

.categoryType h2 {
  padding: 0;
}

.surveyForms h2 a,
.categoryType h2 a {
  padding: 10px;
  display: block;
  color: #fff;
  text-decoration: none;
  background: #FE8AB8;
}

.surveyForms h2 a:hover,
.categoryType h2 a:hover {
  background-color: #FE8AB8;
}


.content h3 {
  letter-spacing: 0.1em;
  padding: 10px;
  font-weight: bold;
  clear: both;
  margin-bottom: 20px;
  font-size: 20px;
  color: #fff;
  background: #FE8AB8;
  box-shadow: 0px 0px 0px 5px #FE8AB8;
  border: dashed 2px white;
  padding: 0.2em 0.5em;
}

.content p {
	font-size: 18px;
	padding: 10px;
	margin-bottom: 20px;
}

.tabs{
  display: none;
}

.content #ulNews .content,
.content #voice .content{
	padding: 0 ;
}

.content #voice li,
.content #ulNews li {
	font-size: 16px;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #999;
	line-height: 1.2;
	padding: 10px 0;
}

.content #voice li a .date,
.content #ulNews li a .date {
	padding-right: 20px;
	color: #888;
}

.content #voice li a ,
.content #ulNews li a {
    color: #333;
    line-height: 30px;
    padding: 0;
    text-decoration: none;
}

.content #voice li a:hover,
.content #ulNews li a:hover {
	color: #000;
	background-color: #FFF;
}


.img_center {
	display: block;
	margin-left: auto;
	margin-right: auto;
	position: relative;
}

.img_center span {
	position: absolute;
	background-color: #333;
	background-color: rgba(0,0,0,0.8);
	color: #FFF;
	letter-spacing: 0.1em;
	padding: 10px;
	left: 0;
	top: 0;
}

.img_center div {
	position: absolute;
	background-color: #333;
	background-color: rgba(0,0,0,0.8);
	color: #FFF;
	letter-spacing: 0.1em;
	padding: 50px;
	right: 0;
	bottom: 0;
}


.img_left {
	float: left;
	padding-top: 20px;
	padding-right: 50px;
	padding-left: 30px;
	padding-bottom: 20px;
	max-width: 50%;
}
.img_right {
	float: right;
	padding-top: 20px;
	padding-right: 30px;
	padding-left: 50px;
	padding-bottom: 20px;
	max-width: 50%;
}

.img_left img,
.img_right img,
.img_center img {
	width: 100%;
}

.content .img_left p,
.content .img_right p {
	font-size: 14px;
	margin: 0px;
	text-align: center;
	letter-spacing: 0.1em;
	color: #455E65;
}

.content p.check {
	color: #FF3333;
}
.content p.p_st {
	font-size: 20px;
	color: #CA28B1;
}

.content .cont_wrap .txt_box {
	background-color: #E6EDEE;
	padding: 20px;
	margin: 20px;
}
.content .cont_wrap .txt_box h2 {
	margin-top: 0px;
	margin-bottom: 0px;
	text-align: center;
	padding-right: 0px;
	padding-left: 0px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #B6CACD;
	border-radius: 0px;
	-webkit-border-radius: 0px;
	-moz-border-radius: 0px;
	color: #333;
}
.content .cont_wrap .txt_box h2::after {
	display: none;
}

a.ap {
	padding-top: 50px;
	margin-top: -50px;
}

/*
コンテンツ大ボタン
-------------------------------------------*/

.btn_cnt a,
.more a {
	font-size: 16px;
	color: #FFF;
	text-align: center;
	text-decoration: none;
	display: block;
	width: 260px;
	background-color: #FE8AB8;
	margin-top: 20px;
	margin-right: 0;
	margin-bottom: 30px;
	margin-left: auto;
	line-height: 22px;
	padding-top: 10px;
	padding-bottom: 10px;
	clear: both;
	font-weight: bold;
	border-radius: 4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
}

.btn_cnt a{
	margin-right: auto;
}

#plan-flow .btn_cnt a{
    font-size: 25px;
    background-color: #fd7e00;
    padding: 20px;
}
#plan-flow .btn_cnt a:hover {
    background-color: #f2f2f2;
    color: #fd7e00;
}
.btn_cnt a i,
.more a i {
	padding-right: 10px;
}

.btn_cnt a:hover,
.more a:hover {
	color: #FE8AB8;
	background-color: #f2f2f2;
}

.btn_cnt.rt a {
	float: right;
	max-width: 220px;
	margin-right: 10px;
}


/*
トップへ戻るボタン
-------------------------------------------*/
.to_top {
	position: fixed;
	bottom: 0px;
	right: 0px;
	z-index: 800;
}
.to_top a {
	text-decoration: none;
	text-align: center;
	display: block;
	width: 60px;
	height: 60px;
	background-color: #DCE7E9;
	color: #333;
	text-align: center;
	font-size: 32px;
	line-height: 60px
}
.to_top a:hover {
	background-color: #1BD;
	color: #FFF;
}

/*
フッター
-------------------------------------------*/

footer {
	background-color: #fcfdfe;
	color: #345;
	clear: both;
	width: 100%;
	display: block;
	padding-top: 20px;
	border-bottom-width: 20px;
	border-bottom-style: solid;
	border-bottom-color: #D2E1E3;
}

footer .cont_wrap {
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-moz-box-lines: multiple;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

footer .cont_wrap .f_box {
	width: 25%;
	padding: 10px;
}

footer .cont_wrap .f_box.lg {
	width: 50%;
}

footer .cont_wrap .f_box.lg img{
  width: 40%;
}

footer .cont_wrap p {
    font-size: 14px;
    font-weight: normal;
    line-height: 2;
}

footer .cont_wrap ul {
	padding: 20px;
}

footer .cont_wrap ul li a {
	display: block;
	text-decoration: none;
	font-size: 13px;
	color: #555;
}

footer .cont_wrap ul li.contact a {
	text-align: center;
	color: #FFF;
	background-color: #FE8AB8;
	font-size: 14px;
	padding: 2px;
	margin-top: 5px;
}

footer .cont_wrap ul li.contact a:hover {
	color: #FE8AB8;
}
footer .cont_wrap ul li.contact a::before {
	display: none;
}

footer .cont_wrap ul li a::before {
	content: "・ ";
	color: #999;
}

footer .cont_wrap ul li a:hover {
	color: #111;
	background-color: #FFF;
}

address {
	clear: both;
	font-size: 12px;
	font-style: normal;
	padding: 20px;
	text-align: center;
	letter-spacing: 1px;
}

footer .box_pr {
	clear: both;
	width: 100%;
	display: block;
	text-align: center;
	font-size: 10px;
	color: #55838A;
	letter-spacing: 1px;
	background-color: #D2E1E3;
	padding-top: 18px;
	line-height: 22px;
}

.box_pr ul li {
	display: inline;
	padding: 5px;
}

.box_pr ul li a {
	color: #55838A;
}


/*
各種テーブル
-------------------------------------------*/
.content table.table_01 {
	width: 96%;
	margin-top: 20px;
	margin-right: auto;
	margin-bottom: 30px;
	margin-left: auto;
}
.content table.table_01 th,
.content table.table_01 td {
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #888;
	padding: 20px;
}
.content table.table_01 th {
	font-size: 18px;
	white-space: nowrap;
	font-weight: normal;
	letter-spacing: 1px;
	width: 33%;
}
.content table.table_01 td {
	font-size: 18px;
	line-height: 30px;
	background-color: #FFF;
}

.small {
	font-size: smaller;
	color: #666;
}
.chui {
	color: #F03600;
}

.table_01 caption {
	font-size: 14px;
	line-height: 30px;
	background-color: #E5E5E5;
	color: #111;
	letter-spacing: 1px;
	padding-top: 5px;
	padding-bottom: 5px;
	border: 1px solid #FFF;
	box-shadow: rgba(0, 0, 0, 0.3) 0px 0px 2px 0px;
	-webkit-box-shadow: rgba(0, 0, 0, 0.3) 0px 0px 2px 0px;
	-moz-box-shadow: rgba(0, 0, 0, 0.3) 0px 0px 2px 0px;
}
.table_01 th span {
	font-size: 12px;
	color: #CCC;
}


/*
トップ下部ピックアップ
-------------------------------------------*/
.pick_up {
	width: 100%;
}


.pick_up ul {
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	max-width: 1400px;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-moz-box-lines: multiple;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.pick_up ul li {
	width: 24%;
	position: relative;
}
.pick_up ul li a {
	display: block;
	overflow: hidden;
	position: relative;
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
}
.pick_up ul li a img {
	width: auto;
	max-width: 100%;
	z-index: 0;
}
.pick_up ul li a:hover img {
	-webkit-transform: scale(1.05);
	-moz-transform: scale(1.05);
	-o-transform: scale(1.05);
	-ms-transform: scale(1.05);
	transform: scale(1.05);
	opacity: 1;
	filter: alpha(opacity=100);
	-ms-filter: "alpha( opacity=100 )";
}

.pick_up ul li a::before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background-color: rgba(254,138,184,0.2);
	z-index: 5;
	position: absolute;
	top: 0;
	left: 0;
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
}

.pick_up ul li a:hover::before {
	background-color: rgba(254,138,184,0.9);
}


.pick_up ul li a div {
	color: #FFF;
	font-size: 21px;
	line-height: 1;
	text-decoration: none;
	text-align: center;
	display: block;
	width: 80%;
	margin-top: -20px;
	margin-left: -40%;
	position: absolute;
	left: 50%;
	top: 47%;
	font-weight: bold;
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
	z-index: 10;
}
.pick_up ul li a div span {
	font-size: 16px;
	letter-spacing: 2px;
}


/*
コンテンツボックス
-------------------------------------------*/

.contentGpArticleDocs,
.contentGpCategoryCategoryType,
.docs,
.categoryType,
.box_cont {
	width: 100%;
	max-width: 1200px;
	margin: auto;
	padding-top: 20px;
	padding-right: 20px;
	padding-left: 20px;
}

.box_cont .box_c_in {
	width: 48%;
	min-height: 200px;
	padding: 10px;
	border: 1px solid #CFDEE0;
	margin-bottom: 30px;
}

.box_cont .box_c_in:hover {
	background-color: #FFF;
	border-top-color: #FE8AB8;
	border-right-color: #FE8AB8;
	border-bottom-color: #FE8AB8;
	border-left-color: #FE8AB8;
}

.box_cont .box_c_in img {
	max-width: 100%;
	padding: 20px;
}

.content .box_cont .box_c_in h1 {
	padding-bottom: 10px;
	font-size: 24px;
	border-bottom-width: 1px;
	border-bottom-color: #CCC;
	padding-top: 10px;
}

/*
背景入り帯
-------------------------------------------*/
.pick_up {
  background-color: #fff;
  padding: 50px 0;
}


.obi_001 {
	background-image: url(../img/obi_001.webp);
	background-repeat: no-repeat;
	text-align: center;
	padding-top: 15%;
	padding-right: 20px;
	padding-bottom: 15%;
	padding-left: 20px;
	background-size: cover;
	background-attachment: fixed;
	background-position: center bottom;
	color: #FFF;
}

.content .obi_001 h2 {
  color: #FFF;
  border-bottom: none;
  padding-bottom: 0px;
  font-size: 28px;
  line-height: 2.2;
  box-shadow: none;
  background: none;
  border:none;
}
.content .obi_001 h2:after {
  display: none;
}

.obi_001 p {
	line-height: 2.4;
}


.obi_002 {
	width: 100%;
	height: auto;
	background-image: url(../img/obi_002.webp);
	background-repeat: no-repeat;
	background-size: cover;
	padding: 0 0 50%;
	position: relative;
}

.obi_002 .box_in {
	width: 100%;
	height: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-flex-flow: column;
	flex-flow: column;
	position: absolute;
	color: #FFF;
	background-color: rgba(000, 000, 000, 0.3);
}

.obi_002 h1 {
	font-size: 36px;
}
.obi_002 p {
    line-height: 2;
    font-weight: bold;
    text-align: center;
}

/* ------------
mailform
---------------------------------------------------------------------------------*/

form {
	width : auto;
	background : rgba(255, 255, 255, 0.3);
	border : 1px solid #EEE;
	border-radius : 7px;
	margin-top: 10px;
	margin-right: auto;
	margin-bottom: 20px;
	margin-left: auto;
	padding-top: 20px;
	padding-right: 0;
	padding-bottom: 20px;
	padding-left: 0;
}
form .question,
form .questions {
	width: 90%;
	max-width: none;
	overflow : hidden;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 0;
	margin-left: auto;
}
form .questions  .question{
	width : 100%;
	max-width: none;
	overflow : hidden;
	margin-top: 0;
	margin-right: 0;
	margin-bottom: 0;
	margin-left: 0;
}

.question_content.free{
  width: 100%;
}


.question_content {
	clear : both;
	width : 38%;
	float : left;
	border-top : 1px solid #cccccc;
	text-align : left;
	overflow : hidden;
	padding-top: 15px;
	padding-right: 2%;
	padding-bottom: 15px;
	padding-left: 0;
	line-height: 1.8;
	font-weight: bold;
}

.question_content .note{
    margin: 0 10px 0 0;
    font-size: 76%;
}


.answer_content{
	width : 62%;
	float : right;
	border-top : 1px solid #cccccc;
	padding-top: 20px;
	padding-right: 0;
	padding-bottom: 15px;
	padding-left: 0;
}

.content .question .body p {
    clear: both;
    font-size: 16px;
    padding: 10px;
    margin-bottom: 20px;
    white-space: nowrap;
    line-height: 1.6;
}


.answer_content select{
  width: 250px;           /* 横幅を広げる */
  height: 36px;           /* 高さを広げる */
  font-size: 18px;        /* 文字を大きくする */
  padding: 0 15px;        /* 余白を調整 */
}



.note{
	display : inline-block;
	float : left;
	font-weight : bold;
	color : #ffffff;
	padding : 3px 5px;
	border-radius : 3px;
}
.note{
	background-color: #DD3C3C;
}


form input{
	height : 1.8em;
	border : 1px solid #cccccc;
	border-radius : 3px;
	background : #fafafa;
}
form textarea{
	width : 320px;
	height : 200px;
	resize : vertical;
	border : 1px solid #cccccc;
	border-radius : 3px;
	background : #fafafa;
}
form input:focus,
form textarea:focus{
	box-shadow : 0px 0px 5px #55ccff;
	border : 1px solid #55ccff;
	background : #ffffff;
}
form .submit{
        width: 160px;
        margin: 0 auto;
}

form .submit input{
	width : auto;
	height : auto;
	vertical-align : middle;
	border-radius : 3px;
	font-family : inherit;
	padding-top: 10px;
	padding-right: 35px;
	padding-bottom: 10px;
	padding-left: 35px;
	font-size: 18px;
	line-height: 26px;
	color: #FFF;
	background-color: #3C91B9;
	box-shadow: rgba(0, 0, 0, 0.5) 0px 0px 1px 0px;
	-webkit-box-shadow: rgba(0, 0, 0, 0.5) 0px 0px 1px 0px;
	-moz-box-shadow: rgba(0, 0, 0, 0.5) 0px 0px 1px 0px;
	border: 1px solid #FFF;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
}
form .submit input:hover{
	cursor : pointer;
	background-color: #000;
}

.captchaForm .reload,
.captchaForm .talk {
  display: inline-block;
  border: 1px solid #aaa;
}

.captchaForm .image{
    margin-bottom: 20px;
}
.reload a,
.talk a{
display: block;
text-decoration: none;
  padding: 5px 10px;
}
.field {
  margin-top: 15px;
}

.field input,
.surveyForm form .questions .question .answer_content input {
        height: 32px;
        padding: 2px;
}
.surveyForm form .questions .question .answer_content input[type="radio"], .surveyForm form .questions .question .answer_content input[type="checkbox"] {
    width: 24px;
    height: 24px;
   vertical-align: middle;
}
.surveyForm form .questions .question .answer_content input,
.surveyForm form .questions .question .answer_content textarea {
    font-size: 18px;
    width: 80%;
    background-color: white;
    border: 1px solid #bebebe;
}



/* error */
#errorExplanation{
  margin-bottom: 20px;
  padding: 10px;
  border: 1px solid #ee0000;
}
#errorExplanation h2 {
  padding: 7px 0 4px 15px;
  border-radius: 4px;
  background-color: #fff;
  color: #ee0000;
}
#errorExplanation p {
  margin-left: 15px;
}
#errorExplanation ul {
  list-style-type: disc;
  margin-left: 30px;
}
#errorExplanation li {
  color: #ee0000;
  font-weight: bold;
  font-size: 140%;
}





ul.feed {
 display:none;
}

.contentGpCategoryCategory,
.contentGpCategoryCategoryType,
.categoryType,
.contentGpArticleDocs {
  position: relative;
}

.contentGpCategoryCategory li,
.contentGpCategoryCategoryType li,
.categoryType li,
.contentGpArticleDocs li {
  margin: 0 0 10px 0;
  padding: 0 0 10px 0;
  border-bottom: 1px dotted #003399;
}

.contentGpCategoryCategory li::after,
.contentGpCategoryCategoryType li::after,
.categoryType li::after,
.contentGpArticleDocs li::after {
  content: "";
  clear: both;
  display: block;
}

.contentGpCategoryCategory li:last-child,
.contentGpCategoryCategoryType li:last-child,
.categoryType li:last-child,
.contentGpArticleDocs li:last-child {
  margin: 0;
  padding: 0;
  border: none;
}

.contentGpCategoryCategory .image,
.contentGpCategoryCategoryType .image,
.categoryType .image,
.contentGpArticleDocs .image {
  display: block;
  float: left;
  /*--    height: 180px;  --*/
  margin: 10px 20px 10px 0;
  overflow: hidden;
  width: 350px;
}

.contentGpCategoryCategory .image a,
.contentGpCategoryCategoryType .image a,
.categoryType .image a,
.contentGpArticleDocs .image a {
  display: block;
}

.contentGpCategoryCategory .image img,
.contentGpCategoryCategoryType .image img,
.categoryType .image img,
.contentGpArticleDocs .image img {
  width: 100%;
}

.contentGpCategoryCategory .body,
.contentGpCategoryCategoryType .body,
.categoryType .body,
.contentGpArticleDocs .body {
  font-size: 120%;
  line-height: 1.8;
  margin: 0 0 5px;
}

.contentGpCategoryCategory .docs li .title_link,
.contentGpCategoryCategoryType .docs li .title_link,
.categoryType .docs li .title_link,
.contentGpArticleDocs .docs li .title_link {
    margin: 0 0 5px 0;
    font-size: 130%;
    display: block;
    font-weight: bold;
}

#page-reservation-formCounseling-index .question:nth-child(19) .body {
	background-color:#FFFFFF;
	height:200px;
	overflow:auto;
	overflow-y:scroll;
	overflow-x:hidden;
}


/* =========================================================
  reservation
========================================================= */

.reservationDate h2 {
  margin: 1.5rem 0 1rem;
  font-size: 1.5rem;
  text-align: center;
}

.reservationDate .message {
  margin-bottom: 0.5rem;
  text-align: center;
}

.reservationDate .message p{
  padding: 0;
  margin: 0 0 0 0;
  font-size: 140%;
  font-weight: bold;
}


.reservationDate .information {
  text-align: right;
}

.reservationDate .reservations {
  margin: 10px 0 40px;
}

.reservationDate .dateTable {
  width: 100%;
  text-align: center;
  margin: 0 0 20px 0;
}

.reservationDate .dateTable tr:nth-child(odd) {
  background-color: #f5f5f5;
}

.reservationDate .dateTable tr:first-child {
  background-color: #e3f2fd;
}

.reservationDate .dateTable th,
.reservationDate .dateTable td {
  padding: 12px;
  border: 1px solid #d3d3d3;
}

.reservationDate .dateTable tr th:first-child {
   width: 20%;
   text-align: center;
}

.cellTableHead{
    background-color: #25A6E1;
    color: #fff;
}
.reservationDate .dateTable th {
    background-color: #25A6E1;
    color: #fff;
    border: 1px solid #fff;
}

.reservationDate .dateTable th.place {
  text-align: left;
}



.content .reservationDate h2{
    border: none;
    margin: 0;
}
作成

.reservationCalendar h2 {
  font-size: 1.5rem;
  text-align: center;
}

.reservationCalendar .column {
  display: flex;
  justify-content: space-between;
  gap: 40px 60px;
}

.reservationCalendar .column .calender-col {
  width: calc(50% - 30px);
}

.reservationCalendar .calender {
  width: 100%;
  text-align: center;
}

.reservationCalendar .calender th,
.reservationCalendar .calender td {
  border: 1px solid #d3d3d3;
}

.reservationCalendar .calender th {
  padding: 12px;
}

.reservationCalendar .calender .cellTableHead {
  margin: 0 0 1rem;
  border: 0;
  font-size: 1.25rem;
}

.reservationCalendar .calender a {
    display: block;
    width: 4.8rem;
    line-height: 1.6rem;
    margin: 0 auto;
    color: #000 !important;
    border-radius: 50%;
    text-decoration: none;
    padding: 20px 24px;
    font-weight: bold;
    font-size: 1.125rem;
}

.reservationCalendar .calender a:hover {
   background-color: #8BDBFF;
}

.flexbox{
	display: flex;
}

/*---------
greeting 
-----------------------------*/

.content .greeting h2{
  margin-top:60px;
  padding-left: 0;
  padding-bottom: 0;
  font-size: 30px;
  color: #000;
  background: none;  
  box-shadow:none;
  border: none;
}

.greeting img{
  width: 100%;
  height: auto;
}

#profile{
  margin-top: 60px;
}


/*---------
gole
-----------------------------*/

.content .gole h2{
  margin-top:60px;
  margin-bottom:0;
  padding-left: 0;
  padding-bottom: 0;
  font-size: 30px;
  color: #000;
  background: none;  
  box-shadow:none;
  border: none;
}
/*---------
access
-----------------------------*/

.gmap {
height: 0;
overflow: hidden;
padding-bottom: 56.25%;
position: relative;
}
.gmap iframe {
position: absolute;
left: 0;
top: 0;
height: 100%;
width: 100%;
}

.gmap {
  margin-bottom: 40px;
}

.access .flexbox {
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 60px;
}
.access .flexbox figure,
.access .flexbox .txt{
  width: 49%
}

.access .flexbox .txt p{
  padding-bottom: 0;
  margin-bottom: 0;
}

.access .flexbox figure img{
  width: 100%;
  height: auto;
}
 
/*---------
counseling
-----------------------------*/

ul#pageLink.flexbox {
  flex-flow: wrap;
  justify-content: center;
  margin-bottom: 60px;
}

ul#pageLink.flexbox li{
  margin: 0 20px;
  width: 350px;
}

.btn-pagelink-btm {
  display: flex;
  justify-content: center;
  align-items: center;
  background: #228bc8;
  border: 1px solid #228bc8;
  box-sizing: border-box;
  width: 100%;
  height: 80px;
  padding: 0 25px;
  color: #fff;
  font-size: 16px;
  text-align: left;
  text-decoration: none;
  position: relative;
  transition-duration: 0.2s;
  font-weight: bold;
  border-radius: 10px;
}
.btn-pagelink-btm:hover {
  background: #fff;
  border: 1px solid #05639a;
  color: #228bc8;
}
.btn-pagelink-btm:before {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 55px 65px;
  border-color: transparent transparent #228bc8 transparent;
  border-radius: 0 0 10px 0;
}
.btn-pagelink-btm span {
    position: absolute;
    bottom: 12px;
    right: 20px;
    display: inline-block;
}
.btn-pagelink-btm  span:before {
    content: '';
    width: 16px;
    height: 16px;
    background: #ffffff;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: -5px;
    margin-top: -13px;
}
.btn-pagelink-btm span:after {
    content: '';
    width: 6px;
    height: 6px;
    border: 0;
    border-top: 2px solid #228bc8;
    border-right: 2px solid #228bc8;
    transform: rotate(130deg);
    position: absolute;
    top: 50%;
    left: -1px;
    margin-top: -10px;
}

#plan,
#time,
#counselingArea .counseling{
  margin-bottom: 60px;
}

#time ul{
  justify-content: space-between;
  flex-wrap: wrap;
}
#time ul li {
  width: 48%;
}

.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;
}

.bwrap {
  margin: 50px 0 30px 0;
}

a.btn-c {
  font-size: 1.2rem;
  position: relative;
  padding: 0.25rem 2rem 1.5rem 3.5rem;
  color: #fff;
  background: #e94919;
  -webkit-box-shadow: 0 5px 0 #d44114;
  box-shadow: 0 5px 0 #d44114;
  width: 100%;
}

a.btn-c span {
  font-size: 1.3rem;
  position: absolute;
  top: -3.25rem;
  left: calc(50% - 196px);
  display: block;
  width: 100%;
  padding: 0.2rem 0;
  color: #d44114;
  border: 2px solid #d44114;
  border-radius: 100vh;
  background: #fff;
  -webkit-box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
}

a.btn-c span:before,
a.btn-c span:after {
  position: absolute;
  left: calc(50% - 10px);
  content: "";
}

a.btn-c span:before {
  bottom: -10px;
  border-width: 10px 10px 0 10px;
  border-style: solid;
  border-color: #d44114 transparent transparent transparent;
}

a.btn-c span:after {
  bottom: -7px;
  border-width: 10px 10px 0 10px;
  border-style: solid;
  border-color: #fff transparent transparent transparent;
}

a.btn-c i {
  margin-right: 1rem;
}

a.btn-c:hover {
  -webkit-transform: translate(0, 3px);
  transform: translate(0, 3px);

  color: #fff;
  background: #eb5b30;
  -webkit-box-shadow: 0 2px 0 #d44114;
  box-shadow: 0 2px 0 #d44114;
}

#plan ul.flexbox{
   justify-content: space-between;
   flex-wrap: wrap;
}

.content #plan p{
  margin-bottom: 0;
}

#plan ul.flexbox li{
  width: 32.5%;
}

.flexbox.flow{
   justify-content: space-between;
    flex-wrap: wrap;
}

.flexbox.flow img{
  width: 100%;
}

.flexbox.flow .right,
.flexbox.flow .left{
  width: 48.5%;
}

.counseling .flexbox .txt p.btn_cnt,
.flexbox.flow .right p.btn_cnt{
  float: right;
}


.counseling .flexbox .txt p.btn_cnt a,
.flexbox.flow .right p.btn_cnt a{
  margin: 0;
  background-color: #fd7e00;
}

.counseling .flexbox .txt p.btn_cnt a:hover,
.flexbox.flow .right p.btn_cnt a:hover{
  background-color: #f2f2f2;
  color: #fd7e00;
}




#flow ol {
  list-style: none;
  counter-reset: number;
}
#flow ol li {
  position: relative;
  padding-left: 1.5em;
  font-size: 20px;
  line-height: 1.6;
  margin-bottom: 30px;
}
#flow ol li:before {
    counter-increment: number;
    content: counter(number);
    position: absolute;
    top: 5px;
    left: 0;
    width: 20px;
    height: 20px;
    border: 1px solid #000;
    border-radius: 50%;
    font-size: 17px;
    text-align: center;
    line-height: 1.2;
}

#flow01 figure.img{
  margin-bottom: 60px;
}

#flow00,
#flow01,
#flow02,
#flow03,
#flow04,
#flow05{
  margin-bottom: 60px;
}

#flow02 .left ul.flexbox{
  justify-content: space-between;
  flex-wrap: wrap;
}
#flow02 .left ul li{
  width: 32%;
}
#flow02 .left ul li figcaption{
  line-height: 1.6;
  text-align: center;
  font-size: 16px;
}

.clm{
  margin-bottom: 30px;
}


/*------------------
 plan detail
-------------------------*/

#osusume figure{
  width: 40%;
  margin: 0 2% 0 0;
}
#osusume .txt{
  width: 58%;
}

#osusume .txt li{
  font-size: 20px;
}

#osusume figure img{
  width: 100%;
  height: auto;
}


#osusume .txt li{
    padding-left: 30px;
    position: relative;
    margin: 0px 0 15px;
}
#osusume .txt li:before,
#osusume .txt li:after{
	content:"";
	display:block;
	position:absolute;
}
#osusume .txt li:before{
	width:18px;
	height:18px;
	background:#ffffff;
    	border:2px solid #000000;
	left:0;
	top:8px;
}
#osusume .txt li:after{
	border-left:3px solid #ff0000;
	border-bottom:3px solid #ff0000;
	width:18px;
	height:5px;
	-webkit-transform:rotate(-45deg);
	transform:rotate(-45deg);
	left:5px;
	top:10px;
}
/*-------
point
------*/
.point figure{
  width: 40%;
  margin: 0 2% 0 0;
}

.point figure img{
  width: 100%;
}
.point .txt{
  width: 58%;
}


div.ttlp {
  position: relative;/*相対位置*/
  padding: 0.5em 0.5em 0.5em 1.5em;/*アイコン分のスペース*/
  line-height: 1.4;/*行高*/
  color: #FE8AB8;/*文字色*/
  border-bottom: dotted 1px gray;
  background: #f9f9f9;
  font-size: 24px;
  font-weight: bold;
}

div.ttlp:before {
  font-family: "Font Awesome 5 Free";/*忘れずに*/
  content: "\f138";/*アイコンのユニコード*/
  font-weight: 900;
  position: absolute;/*絶対位置*/
  font-size: 1em;/*サイズ*/
  left: 0.25em;/*アイコンの位置*/
  top: 0.5em;/*アイコンの位置*/
  color: #FE8AB8; /*アイコン色*/
}

#plan-flow #chart .first{
  width: 19%;
  margin: 0 20px 0 0;
}
#plan-flow #chart .second{
width: 80%;
}

#plan-flow #chart .second ul{
    justify-content: space-between;
    flex-wrap: wrap;
}

#plan-flow #chart .second ul li,
#plan-flow #chart .first #first01{
  border: 3px solid #FE8AB8;
  background-color: #f7f7f7;
  text-align: center;
}

#plan-flow #chart .first #first01{
  height: 254px;
}
#plan-flow #chart .second ul li{
  height: 180px;
  width: 19%;
}

.counseling .flexbox .img{
    width: 46%;
    margin: 0 20px 0 0 ;
}
.counseling .flexbox .txt{
    width: 50%;
}

.counseling .flexbox .img img{
  width: 100%;
  height: auto;
}

.ttlm {
  font-size: 26px;
  position: relative;
  padding: 0.25em 0;
}
.ttlm:after {
  content: "";
  display: block;
  height: 4px;
  background: -webkit-linear-gradient(to right, rgb(230, 90, 90), transparent);
  background: linear-gradient(to right, rgb(230, 90, 90), transparent);
}

.content #plan-flow #chart .second ul li p,
.content #plan-flow #chart .first #first01 p {
  line-height: 1.6;
  padding: 0;
}

.content #plan-flow #chart .first #first01 p{
  margin: 84px 0 0 0;
}
.content #plan-flow #chart .second ul li p{
  margin: 35px 0 0 0;
}

.content #plan-flow #chart .second ul li p span.time,
.content #plan-flow #chart .first #first01 p span.time{
  font-size: 20px;
  font-weight:bold;
  color: #ff6a6a;
}




#plan-flow #chart .first #first01 p span,
#plan-flow #chart .second ul li p span{
  display: block;
  font-size: 14px;
}

#mmFlow dl dt {
  position: relative;/*相対位置*/
  padding: 0.5em 0.5em 0.5em 1.5em;/*アイコン分のスペース*/
  line-height: 1.4;/*行高*/
  color: #ff6a6a;/*文字色*/
  background: #fffff4;
  font-size: 20px;
  font-weight: bold;
}

#mmFlow dl dt:before {
  font-family: "Font Awesome 5 Free";/*忘れずに*/
  content: "\f138";/*アイコンのユニコード*/
  font-weight: 900;
  position: absolute;/*絶対位置*/
  font-size: 1em;/*サイズ*/
  left: 0.25em;/*アイコンの位置*/
  top: 0.5em;/*アイコンの位置*/
  color: #ff6a6a; /*アイコン色*/
}
 
#mmFlow dl dd {
  font-size: 20px;
  margin: 0 0 35px 30px;
}


#page-service-counseling-4continuationPlan #plan-flow #chart .second ul li {
    width: 24.5%;
}

#coach-expect .flexbox {
   justify-content: space-between;
   flex-wrap: wrap;
}
#coach-expect .flexbox figure{
     width: 40%;
}

#coach-expect .flexbox figure img{
     width: 100%;
     height: auto;
}

#coach-expect .flexbox .txt{
     width: 56%;
}

.flowArea.flexbox {
   justify-content: space-between;
   flex-wrap: wrap;
}

.flowArea figure,
.flowArea .txt {
    width: 48.5%;
}

.flowArea figure img{
  width: 100%;
  height: auto;
}

#coach-expect .clm ul {
    list-style-type: none;
    padding: 1em;
}

#coach-expect .clm ul li{
    display: flex;
    align-items: baseline;
    gap: 0 5px;
    padding: .3em;
    font-size:20px;
    line-height: 1.6;
}

#coach-expect .clm ul li:before {
    display: inline-block;
    width: 10px;
    height: 5px;
    border-bottom: 2px solid #ff0000;
    border-left: 2px solid #ff0000;
    transform: rotate(-45deg) translateY(-1.5px);
    content: '';
}
#coach-expect #ex-theme.clm ul li:before {
  display: none;
}

#coach-expect #ex-theme.clm ul li{
  display: block;
}

/* contentGpArticleDoc
----------------------------------------------- */

.contentGpArticleDoc .date {
  max-width: 1200px;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 1em;
  text-align: right;
}

.rels{
  max-width: 1200px;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}

.contentGpArticleDoc .date p {
  display: inline-block;
  padding:0;
}

.contentGpArticleDoc .date p.publishedAt {
  padding-right: 10px;
}

#staffArea #intro figure{
  width: 48%;
  margin: 0 20px 0 0;
}

#staffArea #intro figure img{
  width: 100%;
}

#staffArea #intro .txt{
  width: 50%;
}

#staffArea #intro .txt p{
  margin: 0;
  padding: 0;
}

#qualificationArea div{
  width:48%;
}

#available ul,
#qualificationArea #qualification ul,
#qualificationArea #available ul {
  list-style: none;
}

#available ul li,
#qualificationArea #qualification ul li,
#qualificationArea #available ul li {
    position: relative;
    padding-left: 24px;
    border-bottom: 1px dotted #ccc;
    line-height: 1.4;
    padding-bottom: 10px;
    margin-bottom: 10px;
}
/*--
#available ul li:before ,
#qualificationArea #qualification ul li:before ,
#qualificationArea #available ul li:before {
    content: '';
    display: inline-block;
    position: absolute;
    top: 7px;
    left: 0;
    width: 8px;
    height: 8px;
    background-color: #e32222;
    border-radius: 5px;
}
--*/


#qualificationArea.flexbox {
   justify-content: space-between;
   flex-wrap: wrap;
}

.cancelfee {
  border: 1px solid #CFDEE0;
  padding: 10px;
}

#training-coach p.notes,
#plan p.notes,
#shi p.notes,
#cancel p.notes{
  font-size: 92%;
  font-weight: bold;
  color :#f00;
}

.feetb table {
  width: 100%;
  margin: 0 auto;
}
.feetb table th {
  width: 25%;
  background-color: #f7f7f7;
  border: solid 1px #ccc;
  color: #FE8AB8;
  padding: 10px;
  text-align: center;
  font-size: 18px;
}

.feetb table td {
  border: 1px solid #ccc;
  padding: 10px;
  text-align: center;
  font-size: 18px;
}
.feetb table td.left {
   text-align: left;
}

.feetb table td.left p{
   margin-bottom: 0;
}

.feetb table td.td02 {
  width: 50%;
}

#feeArea .btnArea p.btn_cnt{
  float: right;
}

#feeArea .btnArea p.btn_cnt a{
  margin: 0;
  background-color: #fd7e00;
}

#feeArea .btnArea p.btn_cnt a:hover{
  background-color: #f2f2f2;
  color: #fd7e00;
}


#feeArea .clm{
    margin-bottom: 100px;
}


.content .webform figure{
  width: 200px;
  margin: 0 auto;
}

.content .webform figure img{
  width: 100%;
  height:auto;
}

.content .webform p{
  padding:0;
  margin: 0;
  text-align: center;
}

.content .webform{
  margin-bottom: 60px;
}


p.btn-pagelink-btm,
.mendanbtn.btn_cnt,
.yoyakuhouhou p.btn_cnt {
  margin: 0;
}

.mendanbtn.btn_cnt a,
.yoyakuhouhou p.btn_cnt a {
    width: 360px;
    font-size:20px;
    background-color: #fd7e00;
    padding:20px 0;
    color: #fff;
}

.mendanbtn.btn_cnt a:hover,
.yoyakuhouhou p.btn_cnt a:hover {
  background-color: #f2f2f2;
  color: #fd7e00;
}

.pagination ,
.links{
    text-align: center;
    margin: 40px 0;
}

#blogNews .content ul li {
  clear: both;
  padding: 5px 0;
  margin: 0 0 5px 0;
  border-bottom: 1px dotted #5a2f2e;
}


#blogNews .content ul li:last-child {
  border-bottom: none;
}

#blogNews .content ul li .image {
  display: block;
  float: left;
  height: 154px;
  margin: 0 20px 20px 0;
  overflow: hidden;
  width: 242px;
}

#blogNews .content ul li .category {
  display: inline-block;
}

#blogNews .content ul li .category {
  font-size: 90%;
}

#blogNews .content ul li .category span {
  margin: 0 4px;
}

#blogNews .content ul li .category span a {
  background-color: #0080ff;
  color: #fff;
  padding: 2px;
  text-decoration: none;
}

#blogNews .content ul li .title_link {
  margin: 0 0 5px 0;
  font-size: 125%;
  display: block;
  font-weight: bold;
}

#blogNews .content ul li .publish_date {
  text-align: right;
}

#blogNews .content ul li .body {
    margin: 0 0 5px 0;
    font-size: 110%;
    line-height: 1.8;
}

#blogNews .content ul li .image img {
  width: 100%;
  height: auto;
}

#klabbn{
  background-color: #fff;
}


#page-index #klabbn .topArea{
  margin: 0 0 40px 0;
}
#page-index #klabbn .bottomArea{
  padding: 0 0 40px 0;
}


#page-index #klabbn .topArea ul{
  justify-content: space-between;
}


#page-index #klabbn .topArea ul li{
  width: 24%;
  text-align: center;
  font-size:20px;
  font-weight: bold;
}

#page-index #klabbn .topArea ul li a{
    display: block;
    background-color: #FE8AB8;
    color: #fff;
    text-decoration: none;
    padding: 30px 0;
    border-radius: 10px;
    border: 1px solid #FE8AB8;
}
#page-index #klabbn .topArea ul li a:hover{
    background-color: #FFF2F7;
    color: #FE8AB8;
    border: 1px solid #FE8AB8;
}

#page-index #klabbn .bottomArea .leftArea,
#page-index #klabbn .bottomArea .rightArea{
  width: 48%;
}

#page-index #klabbn .bottomArea {
  justify-content: space-between;
}

.category{
    background-color: #0080ff;
    color: #fff;
    padding: 2px;
    text-decoration: none;
    font-size: 14px;
}



/* =========================================================
  blogSearch 
========================================================= */

#blogSearch form{
	display: flex;
	justify-content: space-between;
	border: none;
	border-radius: inherit;
	padding: 0;
	margin: 0;
}


#blogSearch form .keyword label {
   display: none;
}
#blogSearch input[type=text] {
	height: 38px;
}

#blogSearch form .keyword {
   width: 88%;
}

#blogSearch .keyword input {
    margin-right: 10px;
    padding: 5px;
    border-radius: 0px;
    border: solid 1px #cfcfcf;
    width: 98%;
    height: 40px;
    font-size: 20px;
}


#blogSearch .submitters input {
    padding: 0px 20px;
    background-color: #0085B2;
    color: #fff;
    border: none;
    font-size: 15px;
    cursor: pointer;
    height: 40px;
}

#blogSearch .tabs {
  display: none;
}


#beginnerArea #btnArea{
  margin-top: 60px;
}


#bbtnArea.flexbox{
justify-content: space-between;
}

#bbtnArea .btn{
    display: block;
    width: 33%;
}

#bbtnArea .btn a {
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
    max-width: 380px;
    padding: 10px 25px;
    color: #543618;
    transition: 0.3s ease-in-out;
    font-weight: 600;
    background: #eeee;
    border-radius: 50px;
    border: 0.2rem solid #543618;
    box-shadow: 0.2rem 0.2rem 0px 0.1rem #cccccc;
    text-decoration: none;
}
#bbtnArea #soBtn.btn a,
#bbtnArea #faqBtn.btn a {
    background: #ffe9d4ee;
}

#bbtnArea #sosBtn.btn a {
    background: #d7fffdee;
}


 
@media screen and (max-width: 640px) {
  .last td:last-child {
    border-bottom: solid 1px #ccc;
    width: 100%;
  }
  .feetb table {
    width: 80%;
  }
  .feetb table th,
  .feetb table td {
 　border : none;
    display: block;
    width: 100%;
  }
}









@media screen and (min-width:960px){
body {
	font-size: 16px;
}

/*
ヘッダー
-------------------------------------------*/
header {
	height: 90px;
}


header .h1 a img ,
header h1 a img {
	top: 23px;
	left: 10px;
	height: 36px;
}

.menu_btn,
.btn_close {
	display: none;
}

/*
PCグローバルナビ
-------------------------------------------*/
#g_navi {
	position: absolute;
	right: 10px;
	top: 20px;
	width: auto;
	margin-left: 200px;
	display: block !important;
	z-index: 1000;
}

#g_navi ul li{
	display: inline;
}

#g_navi li a {
	width: auto;
	padding: 10px;
	line-height: 30px;
	display: block;
	color: #111;
	text-decoration: none;
	text-align: center;
	position: relative;
	float: left;
	letter-spacing: 1px;
	font-size: 14px;
	font-weight: bold;
}

#g_navi li a::before {
	display: block;
	height: 2px;
	position: absolute;
	top: 2px;
	width: 70%;
	left: 15%;
	background-color: rgba(17,187,221,0);
	content: '';
	-webkit-transition: 0.2s linear;
	-moz-transition: 0.2s linear;
	transition: 0.2s linear;
}

#g_navi li a:hover::before {
	background-color: rgba(254,138,184, 1);
	top:0px;
	width: 80%;
	left: 10%;
}

#g_navi li a:hover {
	color: #FE8AB8 !important;
}

#g_navi.txt_w li a {
	color: #FFF;
}

header.fixed #g_navi.txt_w li a {
	color: #111;
}

#g_navi li.contact a {
	background-color: #FE8AB8;
	color: #FFF !important;
	padding-left: 20px;
	padding-right: 20px;
	margin-left: 10px;
	border-radius: 4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
}
#g_navi li.contact a:hover {
	background-color: #FFF;
	color: #FE8AB8 !important;
}
#g_navi li.contact a::before {
	display: none;
}


/*
ヘッダー
-------------------------------------------*/

#index_top {
	min-height: 850px;
}
#sub_top.about {
        background-image: url(/_themes/base/img/img_topv_about.webp);
        background-position: 0px -250px;
}
#sub_top.beginner{
        background-image: url(/_themes/base/img/img_topv_beginner.webp);
        background-position: center center;
        background-attachment: scroll;
}
#sub_top.service{
        background-image: url(/_themes/base/img/img_topv_service.webp);
        background-position: 0px -60px;
}
#sub_top.fee{
	background-image: url(/_themes/base/img/img_topv_fee.webp);
        background-position: 0px -80px;
}
#sub_top.staff{
	background-image: url(/_themes/base/img/img_topv_staff.webp);
        background-position: 0px -150px;
}
#sub_top.faq {
	background-image: url(/_themes/base/img/img_topv_faq.webp);
        background-position: 0px -80px;
}
#sub_top.reservation-calendar,
#sub_top.contact {
	background-image: url(/_themes/base/img/img_topv_contact.webp);
        background-position: 0px -80px;
}
#sub_top.calendar {
	background-image: url(/_themes/base/img/img_topv_calendar.webp);
        background-position: 0px -80px;
}
#sub_top.relation-words,
#sub_top.category,
#sub_top.whatsnews{
	background-image: url(/_themes/base/img/img_topv_whatsnews.webp);
}
#sub_top.voice{
	background-image: url(/_themes/base/img/img_topv_voice.webp);
}














#sub_top.common {
	background-image: url(/_themes/base/img/img_topv_common.webp);
}

#sub_top.relation-link{
	background-image: url(/_themes/base/img/img_topv_relation-link.webp);
        background-position: 0px -80px;
}


.no_pc {
	display: none !important;
}

}
/*-- /960px～ --*/

@media screen and (min-width:1200px){


header .h1 a img ,
header h1 a img {
	left: 50%;
	margin-left: -590px;
}

header #g_navi {
	right: 50%;
	margin-right: -590px;
}

}

@media screen and (max-width:960px){

body {
	font-size: 16px;
}

body.fixed {
	overflow: hidden;
}

img {
	max-width: 100% !important;
	height: auto;
	width /***/:auto;
	margin-left:auto;
	margin-right:auto;
}

.content h3 {
	margin-right: 10px;
	margin-left: 10px;
}


/*
メニューボタン
-------------------------------------------*/

.menu_btn {
	display: block;
	height: 40px;
	width: 40px;
	text-align: center;
	padding-top: 5px;
	padding-bottom: 5px;
	position: fixed;
	z-index: 5000;
	top: 5px;
	right: 5px;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	cursor: pointer;
}
.menu_btn:hover {
	cursor: pointer;
}

.menu_btn span {
	width: 28px;
	height: 2px;
	display: block;
	position: absolute;
	left: 50%;
	top: 50%;
	margin-left: -14px;
	background-color: #FE8AB8;
}
.menu_btn span {
    transition: all 0.3s;
    transform: rotate(0deg);
	-webkit-transform: rotate(0deg);  
    -moz-transform: rotate(0deg);    
  }
.menu_btn span.top {
    transform: translateY(-8px);
	-webkit-transform: translateY(-8px);  
    -moz-transform: translateY(-8px);    
  }
.menu_btn span.bottom {
    transform: translateY(8px);
	-webkit-transform: translateY(8px);  
    -moz-transform: translateY(8px);    
}


.menu_btn:hover span.top {
    transform: translateY(-10px);
	-webkit-transform: translateY(-10px);  
    -moz-transform: translateY(-10px);    
}
.menu_btn:hover span.bottom {
    transform: translateY(10px);
	-webkit-transform: translateY(10px);  
    -moz-transform: translateY(10px);    
}

.menu_btn.opened span {
	background-color: #7BC;
}

.menu_btn.opened span.middle {
    background: rgba(255, 255, 255, 0);
	 transform: translateX(30px);
	 -webkit-transform: translateX(30px);  
    -moz-transform: translateX(30px);    
}
.menu_btn.opened span.top {
    transform: rotate(-45deg) translateY(0px);
	-webkit-transform: rotate(-45deg) translateY(0px);  
    -moz-transform: rotate(-45deg) translateY(0px);    
}
.menu_btn.opened span.bottom {
    transform: rotate(45deg) translateY(0px);
	-webkit-transform: rotate(45deg) translateY(0px);  
    -moz-transform: rotate(45deg) translateY(0px);    
}

/*
グローバルナビ
-------------------------------------------*/
#g_navi {
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0px;
	overflow: auto;
	z-index: 3000;
	background-color: #F2F6F7;
	background-color: rgba(242,246,247,0.85);
	display: none;
	padding-left: 10%;
}
#g_navi ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-flow: column;
    flex-flow: column;
    -webkit-justify-content: center;
    justify-content: center;
    min-height: 100%;
}


#g_navi ul li a {
	color: #111;
	text-decoration: none;
	display: block;
	padding: 10px;
	line-height: 22px;
	font-size: 14px;
	font-weight: bold;
	letter-spacing: 1px;
}
#g_navi ul li a:hover {
	color: #1BD;
}

#g_navi ul li.contact a {
	text-align: center;
	background-color: #1BD;
	color: #FFF;
	width: 90%;
}

#g_navi ul li.contact a:hover {
	background-color: #FFF;
	color: #1BD;
}


/*
メニューシャドウ
-------------------------------------------*/
.bg_bl {
	background-color: #FFF;
	height: 100%;
	width: 100%;
	opacity: 0.80;
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
	display: block;
	position: fixed;
	z-index: 2000;
}


/*
ヘッダー
-------------------------------------------*/

header {
	height: 52px;
}


header .h1 a img ,
header h1 a img {
	top: 10px;
	left: 10px;
	height: 36px;
}

header .h_menu {
	display: none;
}

header #info {
	display: none;
}

#sub_top {
    font-size: 18px;
}

#sub_top.about {
	background-image: url(/_themes/base/img/img_topv_about_sp.webp);
        background-size: revert-rule;
        background-position: 0 -100px;
}
#sub_top.beginner{
	background-image: url(/_themes/base/img/img_topv_beginner_sp.webp);
        background-position: 0 -8%;
}
#sub_top.service{
	background-image: url(/_themes/base/img/img_topv_service_sp.webp);
        background-position: 0 -4%;
}
#sub_top.fee{
	background-image: url(/_themes/base/img/img_topv_fee_sp.webp);
        background-position: 0 -8%;
}
#sub_top.staff{
	background-image: url(/_themes/base/img/img_topv_staff_sp.webp);
        background-position: 0 -8%;
}
#sub_top.faq {
	background-image: url(/_themes/base/img/img_topv_faq_sp.webp);
        background-position: 0 -4%;
}
#sub_top.reservation-calendar,
#sub_top.contact {
	background-image: url(/_themes/base/img/img_topv_contact_sp.webp);
}
#sub_top.calendar {
	background-image: url(/_themes/base/img/img_topv_calendar_sp.webp);
}
#sub_top.relation-words,
#sub_top.category,
#sub_top.whatsnews{
	background-image: url(/_themes/base/img/img_topv_whatsnews_sp.webp);
}
#sub_top.voice{
	background-image: url(/_themes/base/img/img_topv_voice_sp.webp);
}
#sub_top.relation-link{
	background-image: url(/_themes/base/img/img_topv_relation-link_sp.webp);
}
#sub_top.common {
	background-image: url(/_themes/base/img/img_topv_common_sp.webp);
}




/*
フッター
-------------------------------------------*/
footer {
	border-bottom-width: 60px;
}

footer .cont_wrap .f_box {
	width: 50%;
	text-align: center;
}
footer .cont_wrap .f_box.lg {
	width: 100%;
}

.no_sp {
	display: none;
}

}
/*-- /～960px --*/



/*
無限ループ
-------------------------------------------*/
.loop_wrap_base {
	width: 100%;
	height: auto;
	overflow: hidden;
	background-color: #F2F6F7;
}


.loop_wrap_base h1 {
	font-weight: normal;
	color: #111;
	text-align: center;
	line-height: 1.2;
	padding: 10px;
	font-size: 24px;
}
.loop_wrap_base h1 span {
	letter-spacing: 0.2em;
	font-size: 14px;
	color: #555;
}

.loop_wrap {
  display: flex;
  width: 220%;
  height: auto;
}

.loop_wrap ul {
  width: 100%;
  height: auto;
  display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-moz-box-lines: multiple;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.loop_wrap ul li {
	width: 20%;
}

.loop_wrap ul li a {
	display: block;
	text-decoration: none;
	color: #555;
	text-align: center;
	line-height: 1.6;
	font-size: 14px;
	position: relative;
}
.loop_wrap ul li a img {
	width: 100%;
	display: block;
	margin-bottom: 5px;
}

.loop_wrap ul li a span {
	display: inline-block;
	background-color: #36BEAD;
	color: #FFF;
	font-size: 12px;
	position: absolute;
	top: 0;
	left: 0;
	padding: 5px;
	letter-spacing: 1px;
	z-index: 10;
}

.loop_wrap ul li a span.cl_2 {
	background-color: #333;
}

.loop_wrap ul li a span.cl_3 {
	background-color: #FF9900;
}

@keyframes loop {
  0% {
    transform: translateX(100%);
  }
  to {
    transform: translateX(-100%);
  }
}

@keyframes loop2 {
  0% {
    transform: translateX(0);
  }
  to {
    transform: translateX(-200%);
  }
}

.loop_wrap ul:first-child {
  animation: loop 50s -25s linear infinite;
}

.loop_wrap ul:last-child {
  animation: loop2 50s linear infinite;
}

.loop_wrap:hover ul {
  animation-play-state: paused;
}



/*
SNSボタン
-------------------------------------------*/

.h_sns {
	padding: 5px;
	position: fixed;
	top: 130px;
	right: 0px;
	background-color: rgba(254,138,184,0.8);
	border-radius: 8px 0px 0px 8px;
	-webkit-border-radius: 8px 0px 0px 8px;
	-moz-border-radius: 8px 0px 0px 8px;
}
.h_sns li a {
	display: block;
	padding: 10px;
	color: #FFF;
	line-height: 30px;
	width: 50px;
	text-align: center;
	text-decoration: none;
	font-size: 18px;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}


.h_sns li:nth-child(2) a span{
    width: 26px;
    height: 26px;
    display: block;
    background-image: url(/_themes/base/img/logo-x-white.png);
    background-repeat: no-repeat;
    background-size: 20px;
    margin: 0 0 0 6px;
}

.h_sns li:nth-child(2) a:hover span{
background-image: url(/_themes/base/img/logo-x-pink.png);
}



.h_sns li a:hover {
	background-color: #FFF;
	color: #FE8AB8;
}


@media screen and (max-width:640px){
.h_sns {
	width: 100%;
	display: -webkit-box;
	display: -moz-box;
	display: -webkit-flexbox;
	display: -moz-flexbox;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-moz-box-lines: multiple;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	top: auto;
	bottom: 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	border-radius: 0px;
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
	padding-right: 0;
}

.h_sns li {
	width: 20%;
}
.h_sns li a {
	width: 100%;
	text-align: center;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}


.h_sns li:nth-child(2) a span {
    width: 26px;
    height: 24px;
    background-size: 16px;
    margin: 6px auto 0 auto;
}


#index_top #top_catch {
	top: 25%;
	left: 0;
        right: 0;
	width: 90%;
	height: 50%;
	margin-top: 0px;
	margin-left: 0px;
}


#index_top #top_catch h1 {
	font-size: 40px;
}

#index_top #top_catch p {
	font-size: 12px;
}

#sub_top {
	height: 180px;
	padding-top: 100px;
}

.content {
	padding-top: 20px;
	padding-bottom: 20px;
}

.content p {
	margin-bottom: 20px;
	margin-top: 10px;
	margin-right: 10px;
	margin-left: 10px;
}

.img_left,
.img_right {
	float: none;
	display: block;
	margin-left: auto;
	margin-right: auto;
	padding-left: 10px;
	padding-right: 10px;
	padding-bottom: 10px;
	max-width: 100%;
}

.pick_up ul li {
	width: 100%;
}

.content .ul_news li span.date {
	padding-right: 0px;
	display: block;
}

.obi_001 {
	background-image: url(/_themes/base/img/obi_001_sp.webp);
	padding-left: 10px;
	padding-right: 10px;
}

.obi_001 p {
	text-align: left;
	margin-left: 15px;
	margin-right: 15px;
	font-size: 14px;
}

.obi_002 {
	background-image: url(/_themes/base/img/obi_002_sp.webp);
	padding: 0 0 100%;
}

.loop_wrap {
  width: 400%;
}

.box_cont {
	padding-right: 10px;
	padding-left: 10px;
}

.box_cont .box_c_in {
	width: 100%;
	padding: 5px;
}

.content .cont_wrap .txt_box {
	margin-left: 0px;
	margin-right: 0px;
}
}

@media screen and (max-width:460px){

input,
textarea {
	max-width: 300px !important;
}

.content table.table_01 th,
.content table.table_01 td {
	width: 100% !important;
	display: block;
}

.content table.table_01 th {
	background-color: #F6F6F6;
}


#index_top #top_catch h1 {
	font-size: 30px;
}

#sub_top {
	font-size: 24px;
}

.content h1 {
	font-size: 24px;
}

.content .obi_001 h1 {
	font-size: 22px;
}

}

/*
エフェクト
-------------------------------------------*/
.effect {
	opacity: 0;
	filter: alpha(opacity=0);
	-ms-filter: "alpha( opacity=0 )";
	transform: translateY(20px);
	-webkit-transform: translateY(20px);  
    -moz-transform: translateY(20px); 
	-webkit-transition: 1.0s ease-out;
	-moz-transition: 1.0s ease-out;
	transition: 1.0s ease-out;
}
.effect.d_02 {
transition-delay:0.2s;
-webkit-transition-delay:0.2s;
}
.effect.d_04 {
transition-delay:0.4s;
-webkit-transition-delay:0.4s;
}
.effect.d_06 {
transition-delay:0.6s;
-webkit-transition-delay:0.6s;
}
.effect.d_08 {
transition-delay:0.8s;
-webkit-transition-delay:0.8s;
}
.effect.start {
	opacity: 1;
	filter: alpha(opacity=100);
	-ms-filter: "alpha( opacity=100 )";
	transform: translateY(0px);
	-webkit-transform: translateY(0px);  
    -moz-transform: translateY(0px);    
}


/*------------------------------*/

 
.obi_002 .box_in p a.tel {
	font-size: 24px;
	color: #FFF;
	text-decoration: none;
	line-height: 1.2;
}
.obi_002 .box_in p a.tel strong {
	padding-left: 10px;
	font-size: 150%;
}



.content .box_att {
	margin-top: 30px;
}

.content .box_att h1 {
	font-weight: normal;
	font-size: 24px;
	color: #3EADBD;
	padding: 15px;
	border-bottom-color: #8ED1DB;
}
.content .box_att p {
	font-size: 14px;
	margin: 0px;
	color: #328B98;
}


/*
FAQ
-------------------------------------------*/
dl.faq {
	display: block;
	margin: auto;
	width: 90%;
}

dl.faq dt {
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "Sawarabi Mincho", "HG明朝E",  "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-size: 20px;
	color: #FFF;
	background-color: #278498;
	display: block;
	position: relative;
	width: 80%;
	margin-left: 20%;
	margin-bottom: 20px;
	border-radius: 20px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	padding-top: 20px;
	padding-right: 20px;
	padding-bottom: 20px;
	padding-left: 50px;
}

dl.faq dt::before{
	font-family: "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Osaka, "ＭＳ ゴシック", "MS Gothic", sans-serif;
	font-size: 24px;
	content: "Q.";
	position: absolute;
	left: 20px;
	top: 13px;
}
dl.faq dt::after{
    border: solid transparent;
    content:'';
    height:0;
    width:0;
    pointer-events:none;
    position:absolute;
    border-color: rgba(39, 132, 152, 0);
    border-top-width:16px;
    border-bottom-width:16px;
    border-left-width:8px;
    border-right-width:8px;
    border-bottom-color:#278498;
    bottom:100%;
    right:30px;
}
dl.faq dd {
	font-size: 16px;
	background-color: #FFF;
	display: block;
	position: relative;
	width: 80%;
	padding: 20px;
	margin-bottom: 50px;
	border-radius: 20px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	box-shadow: rgba(0, 0, 0, 0.05) 0px 0px 5px 0px;
	-webkit-box-shadow: rgba(0, 0, 0, 0.05) 0px 0px 5px 0px;
	-moz-box-shadow: rgba(0, 0, 0, 0.05) 0px 0px 5px 0px;
	padding-top: 20px;
	padding-right: 20px;
	padding-bottom: 20px;
	padding-left: 50px;
}
dl.faq dd::after{
	border: solid transparent;
	content: '';
	height: 0;
	width: 0;
	pointer-events: none;
	position: absolute;
	border-color: rgba(255,255,255,0.0);
	border-top-width: 16px;
	border-bottom-width: 16px;
	border-left-width: 8px;
	border-right-width: 8px;
	border-bottom-color: #FFFFFF;
	bottom: 100%;
	left: 30px;
}

dl.faq dd::before{
	font-size: 24px;
	content: "A.";
	position: absolute;
	left: 20px;
	top: 13px;
}


/*
事例一覧＆ギャラリー
-------------------------------------------*/

.works_list li {
	display: block;
	float: left;
	width: 25%;
	padding: 20px;
}

.works_list li a {
	display: block;
	text-decoration: none;
	width: 100%;
	padding: 10px;
	border: 1px solid #F2F6F7;
	position: relative;
}

.works_list li a:hover {
	background-color: #FFF;
	border: 1px solid #DDE7EA;
}

.works_list li a span {
	display: block;
	color: #FFF;
	font-size: 12px;
	background-color: #36BEAD;
	position: absolute;
	top: 5px;
	left: 5px;
	z-index: 10;
	padding-top: 2px;
	padding-right: 5px;
	padding-bottom: 2px;
	padding-left: 5px;
}

.works_list li a span.cl_2 {
	background-color: #333333;
}

.works_list li a span.cl_3 {
	background-color: #FF9900;
}

.works_list li a img {
	width: 100%;
	height: 180px;
	object-fit: cover;
}

.works_list li a p {
	color: #111;
	text-align: center;
	margin: 0px;
}

.g_list li {
	display: block;
	float: left;
	width: 20%;
	padding: 20px;
}

.g_list li a {
	display: block;
	width: 100%;
	height: 150px;
	overflow: hidden;
}

.g_list li a img {
	width: 100%;
	height: 150px;
	object-fit: cover;
}

.g_list li a img:hover {
	-webkit-transform: scale(1.05);
	-moz-transform: scale(1.05);
	-o-transform: scale(1.05);
	-ms-transform: scale(1.05);
	transform: scale(1.05);
}


/*
Facebook
-------------------------------------------*/

.content .cont_wrap .box_left {
	width: 49%;
	float: left;
	padding: 0 10px;;
}
.content .cont_wrap .box_right {
	width: 49%;
	float: right;
	padding-right: 10px;
	padding-bottom: 20px;
	padding-left: 10px;
}

#contentArea.flexbox{
   justify-content: space-between;
    flex-wrap: wrap;
} 



/* =========================================================
  blogArea 
========================================================= */
#searchBlog .keyword label{
    display: none;
}


#searchBlog form{
  display: flex;
  justify-content: space-between;
	border: none;
	border-radius: inherit;
	padding: 0;
	margin: 0;
}


#searchBlog form .keyword label{
	display: none;
}


#searchBlog form .keyword {
   width: 100%;
}



.keyword input {
    margin-right: 0;
    padding: 5px 8px;
    border-radius: 0px;
    border: solid 1px #cfcfcf;
    width: 96%;
    height: 37px;
}


#searchBlog .submitters input {
    padding: 0px 20px;
    background-color: #0085B2;
    color: #fff;
    border: none;
    font-size: 15px;
    cursor: pointer;
    height: 37px;
}

#contentArea .mainArea{ 
	width: 66%;
}
#contentArea #blogleft{
	width: 30%;
}

#blogleft #searchBlog,
#blogleft #blogCategory,
#blogleft #archive,
#blogleft #relationWord,
#blogleft #news{
  margin: 0 0 30px 0;
}

#blogleft #news .content{
  padding: 0 0 10px 0;
}



@media screen and (max-width:960px) {

.content .cont_wrap .box_left {
	width: 100%;
	float: none;
}
.content .cont_wrap .box_right {
	width: 100%;
	float: none;
	overflow: hidden;
}

.content .cont_wrap .box_right .fb-page {
	width: 100% !important;
}

.works_list li {
	width: 33.33%;
}

.g_list li {
	width: 33.33%;
}

}

/*
ページャー
-------------------------------------------*/

.pager {
	padding-top: 50px;
	padding-bottom: 50px;
	clear: both;
}

.pager .pagination {
  text-align: center;
}

.pager .pagination li {
	display: inline;
	margin: 0 2px;
	padding: 0;
	display: inline-block;
	width: 36px;
	height: 36px;
	text-align: center;
	position: relative;
}


.pager .pagination li a{
	vertical-align: middle;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	text-align: center;
	display: table;
	color: #FFF;
	text-decoration: none;
	background-color: #333333;
}

.pager .pagination li a span{
  display:table-cell;
  vertical-align:middle;
}

.pager .pagination li a:hover,
.pager .pagination li a.active{
	color: #000;
	background-color: #F9F9F9;
}

@media only screen and (max-width: 767px){
a.btn-c span {
    left: 0;
}


#page-seet-form-index .question label {
    width: 90%;
}
#bbtnArea .btn {
    width: 100%;
}


#g_navi ul li.sp_show,
  .sp_show {
    display: block;
  }

#g_navi ul li.sp_hid,
  .sp_hid {
    display: none;
  }

.pager {
	padding-top: 20px;
	padding-bottom: 20px;
}

  .pager .pagination li{
    display: none;
  }

  .pager .pagination li.pre,
  .pager .pagination li.next{
    display: inline-block;
    width: 40%;
    height: 40px;
    text-align: center;
  }

  .pager .pagination li.pre a,
  .pager .pagination li.next a{
    width: 100%;
    text-align: center;
  }

  .pager .pagination li.pre span::after{
    content: "　前の10件へ";
  }

  .pager .pagination li.next span::before{
    content: "次の10件へ　";
  }
  
  .works_list li {
	width: 50%;
	padding: 10px;
}

.g_list li {
	width: 50%;
}

.img_center span {
	font-size: 14px;
	padding: 5px;
}

.img_center div {
	font-size: 12px;
	padding: 20px;
}

dl.faq {
	width: 96%;
}

dl.faq dt {
	font-size: 18px;
	width: 90%;
	margin-left: 10%;
}

dl.faq dd {
	width: 90%;
}
.flexbox {
    display: block;
}

/*-------------top--------------*/

.content h2 {
    font-size: 18px;
}
.content h3 {
    font-size: 17px;
}
    .content p {
        margin-bottom: 20px;
        margin-top: 0;
        margin-right: 0;
        margin-left: 0;
    }

.topArea ul.flexbox{
  display: flex;
}

.clm {
    margin-bottom: 20px;
}
#blogNews,
#klabbn,
.content {
        padding-left: 5px;
        padding-right: 5px;
}

#index_top #top_catch {
        height: 350px;
        width: 350px;
        margin: 0 auto;
}

#index_top #top_catch h2 {
    font-size: 16px;
}

#index_top #top_catch h3 img {
    width: 50%;
}

.content .cont_wrap .box_left {
    padding: 0;
}
.content .cont_wrap .box_right {
    padding: 10px 0 0 0;
}

.btn_cnt a, .more a {
    width: 140px;
}


#page-index #klabbn h2, 
#page-index #blogNews h2, 
.content #commonBtn .box_c_in h2, 
#page-index .content h2.news, 
.content h1 {
  font-size: 20px;
  margin-bottom: 30px;
    padding-right: 2px;
    padding-left: 2px;
}

#page-index #klabbn .topArea ul {
  flex-wrap: wrap;
}
#page-index #klabbn .topArea ul li {
  width: 48.5%;
  font-size: 14px;
  margin: 0 0 14px 0;
}

#page-index #klabbn .bottomArea.flexbox {
  display: block;
}

#page-index #klabbn .bottomArea .leftArea, 
#page-index #klabbn .bottomArea .rightArea {
    width: 100%;
}
#blogNews .content ul li .title_link {
    font-size: 110%;
    line-height: 1.6;
}


#commonBtn, .cont_wrap {
    width: 98%;
}

/*-------------beginner--------------*/



/*-------------service--------------*/

ul#pageLink.flexbox li {
    margin: 0 auto 10px auto;
    width: 310px;
}

.counseling .flexbox .img {
    width: 100%;
    margin: 0 0 20px 0;
}
.counseling .flexbox .txt {
    width: 100%;
}
#time ul li {
    width: 100%;
}

#plan ul.flexbox{
  margin-top: 80px;
}

#plan ul.flexbox li {
    width: 100%;
    margin: 0 auto 80px auto;
}

#flow .flexbox.flow{
  display:flex;
}
.content #flow .flexbox.flow h2 {
        font-size: 16px;
        line-height: 1.6;
    }

.content #flow .flexbox.flow h3 {
        font-size: 14px;
        line-height: 1.6;
    }



#flow02 .left ul li {
    width: 100%;
}

#coach-expect .flexbox figure{
  width: 100%;
  margin: 0 0 10px 0;
}
#coach-expect .flexbox .txt {
 width: 100%;
}

.flowArea figure, .flowArea .txt {
  width: 100%;
  margin: 0 0 10px 0;
}

#flow00, #flow01, #flow02, #flow03, #flow04, #flow05 {
    margin-bottom: 20px;
}

/*-------------katarinalab--------------*/

.content .gole h2,
.content .greeting h2 {
    margin-top: 20px;
    font-size: 20px;
    line-height: 1.6;
    padding: 0;
}

/*-------------access --------------*/
.access .flexbox figure,
.access .flexbox .txt {
  width: 100%;
  padding-bottom: 10px;
}

.access .flexbox {
    margin-bottom: 20px;
}

.content .access .flexbox .txt p {
  padding-top: 0;
  margin: 0 0 20px 0;
}

.contentGpArticleDocs, .contentGpCategoryCategoryType, .docs, .categoryType, .box_cont {
    padding-right: 4px;
    padding-left: 4px;
}
.contentGpCategoryCategory .docs li .title_link, .contentGpCategoryCategoryType .docs li .title_link, .categoryType .docs li .title_link, .contentGpArticleDocs .docs li .title_link {
    font-size: 110%;
    line-height: 1.6;
}

.content .contentGpArticleDoc .date p.updatedAt,
.content .contentGpArticleDoc .date p.publishedAt {
  padding-right: 0;
  margin-bottom: 0;
  line-height: 0;
}
.feetb table td.td02 {
  width: 100%;
  background-color: #dedede;
}

.feetb table td.cltit{
  background-color: #dedede;
}



#feeArea .btnArea{
  margin-top: 60px;
}

#feeArea .btnArea p.btn_cnt{
  float: none;
  margin-bottom: 0;
}


#feeArea .btnArea p.btn_cnt a{
  display: block;
  width: 290px;
  margin: 0 auto;
}

#staffArea #intro figure {
    width: 100%;
    margin: 0 0 20px 0;
}
#staffArea #intro .txt {
    width: 100%;
}

#qualificationArea div {
    width: 100%;
    margin: 0 0 20px 0;
}
#qualificationArea div {
    width: 100%;
}

#contentArea .mainArea {
    width: 100%;
}
#contentArea #blogleft {
    width: 100%;
}

#page-beginner-index #beginnerArea #intro figure {
    width: 100%;
}
#page-beginner-index #beginnerArea #intro .txt {
    width: 100%;
}

#page-beginner-index #beginnerArea #intro ul.flexbox li {
    width: 100%;
    margin: 0 0 20px 0;
}

#page-beginner-index #beginnerArea p {
    font-size: 20px;
    line-height: 1.6;
    margin: 0 0 20px 0;
}


#page-beginner-index #beginnerArea .clm {
    border-bottom: 1px dotted #ddd;
    padding-bottom: 30px;
    margin-bottom: 30px;
}


#page-beginner-index #beginnerArea figure {
  width: 100%;
  text-align: center;
}
#page-beginner-index #beginnerArea .fLeft, 
#page-beginner-index #beginnerArea .fRight {
    width: 100%;
}

#page-beginner-index #beginnerArea .fRight:after,
#page-beginner-index #beginnerArea .fRight:before,
#page-beginner-index #beginnerArea .fLeft:after,
#page-beginner-index #beginnerArea .fLeft:before{
  display: none;
}

#page-beginner-index #beginnerArea .fRight:after,
#page-beginner-index #beginnerArea .fRight:before,
#page-beginner-index #beginnerArea .fLeft:after,
#page-beginner-index #beginnerArea .fLeft:before{
  display: block;
}

#page-beginner-index #beginnerArea .fLeft:after,
#page-beginner-index #beginnerArea .fLeft:before,
#page-beginner-index #beginnerArea .fRight:before,
#page-beginner-index #beginnerArea .fRight:after {
    position: absolute;
    left: 30px;
    height: 0;
    width: 0;
    border: solid transparent;
    content: "";
}
#page-beginner-index #beginnerArea .fLeft:after,
#page-beginner-index #beginnerArea .fRight:after {

    border-color: transparent;
    border-top-color: #333;
    border-right-color: #333;
    border-width: 10px;
}


#page-beginner-index #beginnerArea #point01 .fRight:before {
    margin-left: 53.5px;
        top: 101.3%;
}
#page-beginner-index #beginnerArea #point01 .fRight:after {
    margin-left: 50px;
    top: 101.9%;
}

#page-beginner-index #beginnerArea #point03 .fRight:before {
    margin-left: 53.5px;
    top: 102.2%;
}
#page-beginner-index #beginnerArea #point03 .fRight:after {
    margin-left: 50px;
    top: 103%;
}


#page-beginner-index #beginnerArea #point05 .fRight:before {
    margin-left: 53.5px;
    top: 102.6%;
}
#page-beginner-index #beginnerArea #point05 .fRight:after {
    margin-left: 50px;
    top: 102.9%;
}

#page-beginner-index #beginnerArea #point02 .fLeft:before {
        margin-left: 203.5px;
        top: 101.7%;
        transform: scale(-1, 1);
}
#page-beginner-index #beginnerArea #point02 .fLeft:after {
    margin-left: 200px;
    top: 102.2%;
    transform: scale(-1, 1);
}

#page-beginner-index #beginnerArea #point04 .fLeft:before {
        margin-left: 203.5px;
        top: 102.5%;
        transform: scale(-1, 1);
}
#page-beginner-index #beginnerArea #point04 .fLeft:after {
    margin-left: 200px;
    top: 103.2%;
    transform: scale(-1, 1);
}

#page-beginner-index #beginnerArea #point06 .fLeft:before {
        margin-left: 203.5px;
        top: 103.1%;
        transform: scale(-1, 1);
}
#page-beginner-index #beginnerArea #point06 .fLeft:after {
    margin-left: 200px;
    top: 103.6%;
    transform: scale(-1, 1);
}


#page-beginner-index #beginnerArea .fLeft:before,
#page-beginner-index #beginnerArea .fRight:before {
    top: 101%;
    margin-left: -7px;
    border-color: transparent;
    border-top-color: white;
    border-right-color: white;
    border-width: 7px;
    z-index: 100;
}

#page-beginner-index #beginnerArea .fLeft,
#page-beginner-index #beginnerArea .fRight {
    margin: 1.5em 0 1.5em 0;
    padding: 7px 10px;
}

#page-beginner-index .content #beginnerArea h3 {
    margin-bottom: 20px;
    font-size: 22px;
    line-height: 1.2;
}
#page-beginner-index #beginnerArea p {
        font-size: 18px;
}
#page-beginner-index #beginnerArea .body ul li {
    font-size: 18px;
}



#page-beginner-index #amateurflow .flexbox .fRight{
  display: flex;
  flex-direction: column-reverse;
}

#page-beginner-index #beginnerArea  #amateurflow #point06 .flexbox,
#page-beginner-index #beginnerArea  #amateurflow #point04 .flexbox,
#page-beginner-index #beginnerArea  #amateurflow #point02 .flexbox {
  display: flex;
  flex-direction: column-reverse;
}

#page-beginner-index #amateurflow #point01 .flexbox .fRight .txt{
order: 1;
}


#page-beginner-index #amateurflow #point01 .flexbox .fRight figure{
order: 2;
}
#page-beginner-index #amateurflow #point06 .flexbox .fLeft ,
#page-beginner-index #amateurflow #point04 .flexbox .fLeft ,
#page-beginner-index #amateurflow #point02 .flexbox .fLeft {
order: 1;
}

#page-beginner-index #amateurflow #point06 .flexbox .fLeft figure,
#page-beginner-index #amateurflow #point04 .flexbox .fLeft figure,
#page-beginner-index #amateurflow #point02 .flexbox .fLeft figure{
order: 2;
}

#page-beginner-index #beginnerArea #beginnerflow figure {
    width: 100%;
}
#page-beginner-index #beginnerArea #beginnerflow .txt {
    width: 100%;
}

#page-beginner-index #amateurflow figure img {
    width: 270px;
    height: 270px;
}


/*-------------------contact ----------*/
.question_content {
    width: 100%;
    float: none;
    padding-bottom:0;
}

.answer_content {
    width: 100%;
    float: none;
    border: none;
    padding-top: 10px;
}

#page-Smartphone-contact-formCounseling-index .questions .question:nth-child(15) .question_content,
#page-Smartphone-contact-formCounseling-index form .questions .question:nth-child(16) .question_content,
#page-Smartphone-contact-formCounseling-index .questions .question:nth-child(12) .question_content,
#page-Smartphone-contact-formCounseling-index form .questions .question:nth-child(13) .question_content,
#page-Smartphone-contact-formCounseling-index .questions .question:nth-child(8) .question_content,
#page-Smartphone-contact-formCounseling-index form .questions .question:nth-child(9) .question_content,
#page-Smartphone-contact-formCounseling-index form .questions .question:nth-child(10)  .question_content{
  border: none;
}

.surveyForm form .questions .question .answer_content input, .surveyForm form .questions .question .answer_content textarea {
    width: 100%;
}

.content .question .body p {
    white-space: break-spaces;
}

form .questions .question_content.free {
    width: 100%;
    padding: 0;
}

#sub_top {
        height: 180px;
        padding-top: 80px;
}
.content h2 {
    padding: 0.05em 0.2em;
}
.surveyForms h2 a, .categoryType h2 a {
    padding: 0 2px;
}

#plan-flow #chart .first {
    width: 100%;
    margin: 0 0 20px 0;
}
#plan-flow #chart .second ul li {
        height: auto;
        width: 100%;
        margin: 0 0 20px 0;
        padding: 0 0 20px 0;
}
#plan-flow #chart .second {
    width: 100%;
}
.ttlm {
    font-size: 28px;
    position: relative;
    padding: 0.25em 0;
    line-height: 1.6;
}


}







/*---------768-1169--------*/
@media only screen and (min-width: 768px) and (max-width: 1169px) {

.tab_show{
  display: block;
}

#errorExplanation{
  margin: 0 10px;
}

.contentTagTag,
.surveyForms,
#contentArea,
#calendarsArea .cont_wrap,
.maps,
.tags,
.contentGpArticleDoc .date,
.contentGpCategoryCategoryType,
#flow,
#commonBtn,
.contentPage,
#blogNews,
#klabbn,
#serviceAreatop{
  padding: 0 10px;
}
.pick_up ul{
flex-wrap: wrap;
}

.pick_up ul li {
        width: 49.5%;
        margin-bottom: 8px;
}

#page-index #klabbn .topArea ul li {
    font-size: 16px;
}
#page-beginner-index #amateurflow figure img {
    width: 225px;
    height: 250px;
}

.contentGpArticleDocs,
.contentGpCategoryCategoryType,
.docs,
.categoryType,
.box_cont {
     padding-bottom: 20px;
}
.box_cont .box_c_in {
    width: 49%;
}
#page-index #klabbn h2, #page-index #blogNews h2, .content #commonBtn .box_c_in h2, #page-index .content h2.news, .content h1 {
    font-size: 20px;
}

ul#pageLink.flexbox li {
    margin: 0 5px;
    width: 234px;
}

.btn-pagelink-btm {
    font-size: 14px;
}
#plan .flexbox{
  display:block;
}
a.btn-c span {
    top: -4.25rem;
    left: calc(35% - 196px);
}

.bwrap {
    margin: 100px 0 0 0;
}
#plan ul.flexbox li {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
}
.content h2 {
    font-size: 15px;
}
.contentGpCategoryCategory .docs li .title_link,
.contentGpCategoryCategoryType .docs li .title_link,
.categoryType .docs li .title_link,
.contentGpArticleDocs .docs li .title_link {
    font-size: 120%;
}
.contentGpCategoryCategory .body,
.contentGpCategoryCategoryType .body,
.categoryType .body, .contentGpArticleDocs .body {
    font-size: 110%;
    line-height: 1.6;
}

    footer .cont_wrap .f_box.lg {
        width: 40%;
        text-align: left;
    }
    footer .cont_wrap .f_box {
        width: 30%;
        text-align: left;
    }

    #g_navi li a {
        font-size: 11px;
}
    #g_navi li.contact a {
        margin-left: 0px;
        padding: 0 4px;
        margin-top: 10px;
    }


#page-reservation-formCounseling-index form .questions .question:nth-child(14) 
#page-reservation-formCounseling-index form .questions .question:nth-child(15) 
#page-reservation-formCounseling-index form .questions .question:nth-child(16) 
#page-reservation-formCounseling-index form .questions .question:nth-child(11) 
#page-reservation-formCounseling-index form .questions .question:nth-child(12) 
#page-reservation-formCounseling-index form .questions .question:nth-child(13) 
#page-reservation-formCounseling-index form .questions .question:nth-child(8) ,
#page-reservation-formCounseling-index form .questions .question:nth-child(9) ,
#page-reservation-formCounseling-index form .questions .question:nth-child(10) {
    width: 30%;
}



}






