@charset "utf-8";
label,
input[type="submit"] { cursor: pointer; }
/*	main_table
-----------------------------------------------------------------------------*/
.main-table { width: 100%;font-size: 1.4rem; border-collapse: collapse;}
.main-table th {box-sizing: border-box; width: 220px; padding: 10px 5px; border-right:#FFF 1px solid; border-bottom:#FFF 1px solid; font-weight: normal; background: #F0F0F0; text-align: center; }
.main-table td {box-sizing: border-box; padding: 10px 10px; border-bottom: #E8E8E8 1px solid; word-break: break-all; }
.main-table td:not(:last-child) {border-right: #E8E8E8 1px solid;}
.main-table .red{color:red;}
.main-table input[type="text"],
.main-table input[type="email"],
.main-table select,
.main-table textarea{border:1px solid #bbb; background: #fff; padding:7px;}

.main-table td .w15p{width:15%;}
.main-table td .w45p{width:45%;}
.main-table td .w60p{width:60%;}
.main-table td .w90p{width:90%;}


.main-table .horizontal-item{display: inline-block; margin-left: 0!important; margin-right: 10px;}

.main-table .checkbox-list dt{border-bottom: 1px solid #C7C7C7;margin-bottom: 5px;}
.main-table .checkbox-list dd{margin-bottom: 15px;}

@media only screen and (max-width :768px) {
.main-table{border-collapse:collapse;table-layout: fixed;}
.main-table th,
.main-table td{ width: 100%; display:block; padding:10px 5px; clear:both;  }
.main-table th{border-bottom:none; text-align:left;}
}

table {
    border: 1px solid #251E1C!important;
    margin-inline-start: auto;
    margin-inline-end: auto;
}
tr:not(:last-of-type) {
    border-bottom: 1px solid #251E1C!important;
}
tr > *:not(:last-of-type) {
    border-right: 1px solid #251E1C!important;
}
td {
    vertical-align: middle;
}
td[valign="top"] {
    vertical-align: top;
}
table[border="0"],
table[border="0"] tr:not(:last-of-type),
table[border="0"] tr > *:not(:last-of-type),
form table {
    border: none!important;
}

/* layout
-----------------------------------------------*/
.rev{flex-direction: row-reverse;}

.layout5,
.layout4,
.layout3,
.layout2,
.layout-box5,
.layout-box4,
.layout-box3,
.layout-box2{box-sizing: border-box; display: flex; flex-wrap: wrap; justify-content: space-between; width: 100%;}
.layout5{justify-content: flex-start;}

.layout5 > *,
.layout4 > *,
.layout3 > *,
.layout2 > *,
.layout-box5 > *,
.layout-box4 > *,
.layout-box3 > *,
.layout-box2 > *{box-sizing: border-box; align-self: stretch;}

.layout5 > *{width:20%;}
.layout4 > *{width:25%;}
.layout3 > *{width:33.3%;}
.layout2 > *{width:50%;}

.layout-box5 > *{width:calc((100% - 64px)/5);}

.layout-box4 > *{width:calc((100% - 48px)/4);}

.layout-box3 > *{width:calc((100% - 32px)/3);}

.layout-box2 > *{width:calc(50% - 17.5px);}

.layout-box4 > .blank,
.layout-box3 > .blank,
.layout-box2 > .blank{opacity: 0}
@media only screen and (max-width :768px) {
	.layout5 > *{width:25%;}
	.layout4 > *{width:50%;}
	.layout3 > *{width:50%;}
	.layout2 > *{width:100%;}

	.layout-box5 > *,
	.layout-box4 > *,
	.layout-box3 > *{width:calc(50% - 17.5px);}

	.layout-box3 > .blank:last-child:nth-child(2n+1),
	.layout-box2 > .blank{display: none;}
}
@media only screen and (max-width :450px) {
	.layout5 > *{width:50%;}
	.layout-box4 > .blank,
	.layout-box3 > .blank{display: none;}
	.layout-box4 > *,
	.layout-box3 > *,
	.layout-box2 > *{width:calc(50% - 5.5px);}/*{width:calc(50% - 17.5px);*/
}
@media only screen and (max-width :350px) {
	.layout-box5 > *{width:100%;}
}
/*  List
-----------------------------------------------------------------------------*/
/*num-list 頭数字のついたリストが表示されます*/
.num-list li{position:relative;padding-left:30px;margin-bottom: 5px;}
.num-list dt{position:relative;padding-left:30px;margin-bottom: 5px;}
.num-list dt:before,
.num-list li:before{content:"";position:absolute;top:0;left:0;}

.num-list dt:nth-child(1):before,
.num-list li:nth-child(1):before{content:"1.";}
.num-list dt:nth-child(3):before,
.num-list li:nth-child(2):before{content:"2.";}
.num-list dt:nth-child(5):before,
.num-list li:nth-child(3):before{content:"3.";}
.num-list dt:nth-child(7):before,
.num-list li:nth-child(4):before{content:"4.";}
.num-list dt:nth-child(9):before,
.num-list li:nth-child(5):before{content:"5.";}
.num-list dt:nth-child(11):before,
.num-list li:nth-child(6):before{content:"6.";}
.num-list dt:nth-child(13):before,
.num-list li:nth-child(7):before{content:"7.";}
.num-list dt:nth-child(15):before,
.num-list li:nth-child(8):before{content:"8.";}
.num-list dt:nth-child(17):before,
.num-list li:nth-child(9):before{content:"9.";}
.num-list dt:nth-child(19):before,
.num-list li:nth-child(10):before{content:"10.";}


/*dl-list*/
.dl-list > dt{background: #eee;font-size:1.8rem;line-height:2; text-align: center;}


/*square-list*/
.square-list > li{margin-bottom:5px;padding-left:20px;position:relative;}
.square-list > li:before{content:"■"; color:#666;
	display: inline-block; font-size: .8rem; margin-left: -20px;
	text-align: center; vertical-align: middle; width: 20px; }

/*dot-list*/
.dot-list > li{margin-bottom:5px;padding-left:20px;position:relative;}
.dot-list > li:before{content:"・";
	display: inline-block; margin-left: -20px;
	vertical-align: middle; width: 20px; }

/*flow-list*/
.flow-list > li{background:20px 20px no-repeat;border:1px solid #eee;margin-bottom: 20px;min-height:65px;padding:15px 20px 20px 100px;}
.flow-list > li:nth-child(1){background-image:url(../../img/common/flow-list01.png);}
.flow-list > li:nth-child(2){background-image:url(../../img/common/flow-list02.png);}
.flow-list > li:nth-child(3){background-image:url(../../img/common/flow-list03.png);}
.flow-list > li:nth-child(4){background-image:url(../../img/common/flow-list04.png);}
.flow-list > li:nth-child(5){background-image:url(../../img/common/flow-list05.png);}
.flow-list > li:nth-child(6){background-image:url(../../img/common/flow-list06.png);}
.flow-list > li:nth-child(7){background-image:url(../../img/common/flow-list07.png);}
.flow-list > li:nth-child(8){background-image:url(../../img/common/flow-list08.png);}
@media only screen and (max-width :768px) {
  .flow-list > li{background-position:10px 15px;background-size:40px auto;
		padding:15px 15px 15px 60px;}
}

/*qa-list*/
.qa-list {border:1px solid #ddd; padding:22px 15px 12px;}
.qa-list > dt{background:url(../../images/common/qa-list_q.png) 0 0 no-repeat;
  cursor:pointer; font-size:1.6rem; font-weight: bold;
	padding:0 0 10px 45px; text-decoration: underline;}
.qa-list > dd{display:none;background:url(../../images/common/qa-list_a.png) 0 15px no-repeat;
  border-top:1px solid #eee; padding:15px 0 15px 45px;}
.qa-list > dd h3{font-size: 1.4rem; font-weight: bold; margin-bottom: 10px;}

/*topics-list*/
.topics-list{position:relative}
.topics-list .topics-list_tit{border-bottom:1px solid #B4B4B6;font-size:2.2rem;font-weight:normal;margin-bottom:15px;padding-bottom:15px;}
.topics-list li{clear:both; line-height:20px;padding-bottom:15px}
.topics-list li .date{display:block;float:left;width:100px;}
.topics-list li a{display:block;letter-spacing:0px;padding-left:100px;}
.topics-list .link-btn{position:absolute;top:0;right:0;}
@media only screen and (max-width :768px) {
	.topics-list li{padding-bottom:5px;}
	.topics-list li .date{width:75px !important;}
	.topics-list li a{padding-left:75px !important;}
	.topics-list .link-btn{margin-top:0;top:-2px;}
}


/* button
.js_hvr-btnでホバー効果
.js_hvr-btn_wrpで直下子要素にホバー効果
-----------------------------------------------*/
.js_hvr-btn,
.js_link-box,
.js_hvr-btn__wrp >*,
.js_link-box__wrp >*,
.link-btn{cursor:pointer;}

.js_hvr-btn:hover,
.js_hvr-btn a:hover,
.js_hvr-btn_wrp a:hover,
.js_link-box:hover,
.js_link-box a:hover,
.js_link-box_wrp a:hover{text-decoration:none;}

/* link-btn */
.link-btn{box-sizing:border-box;display:inline-block;}

.link-btn,
.link-btn:hover,
.link-btn:visited{line-height:21px; background:#fff;border: 1px solid #ddd;
	position:relative;padding:11px 15px 11px 10px;vertical-align: middle;max-width:100%; width:300px;}
.link-btn:not(:last-child){margin-right:20px;}
.link-btn:hover{text-decoration: none;}
.link-btn:after{content:"";position:absolute;top:50%;margin-top:-5px;right:15px;width:5px;height:5px;
	border-top:2px solid #bbb;border-right:2px solid #bbb;transform:rotate(45deg); z-index:999}
.link-btn:hover:after{right:13px;}

.link-list .link-btn{width: 100%; font-size: 1.6rem; padding:16px 15px 16px 10px;}
.link-btn.short{width:230px;}
.link-btn.full{width:100%;}
.link-btn.big{width:100%; font-size: 2rem;
	padding:20px 15px 20px 10px; text-align: center;}

.link-btn.thin{padding-top:3px;padding-bottom:3px;}
.link-btn.thin:after{margin-top:-4px;right:10px;width:5px;height:5px;border-width:2px;}
.link-btn.thin:hover:after{right:8px;}
.link-btn.middle{font-size:1.6rem;font-weight:bold;line-height:24px;padding-top:8px;padding-bottom:8px;}
.link-btn.bold{font-size:1.6rem;font-weight:bold;line-height:24px;padding-top:13px;padding-bottom:13px;}
.link-btn.bold:after{width:7px;height:7px;border-width:3px;}

.link-btn.no-border{border:none;}
.link-btn.b-rad3{border-radius:3px;}
.link-btn.b-rad5{border-radius:5px;}

.link-btn.back{padding-right:20px;padding-left:30px;}
.link-btn.back:after{right:auto;left:15px;transform:rotate(-135deg)}
.link-btn.back.short{padding-right:15px;padding-left:25px;}
.link-btn.back:hover:after{left:13px;}


.link-btn.red{border-color:#666;}
.link-btn.bg_red{border-color:#666;color:#fff !important;}
.link-btn.bg_red:after{border-color:#fff;}

.mw_wp_form .link-btn{display: block; margin:0 auto 10px;}
.mw_wp_form_input .link-btn.btn_back{display:none;}
.mw_wp_form_confirm .link-btn.btn_back{display:block;}
.mw_wp_form .link-btn input[type="submit"]{
	width: 100%; height:100%;
	background: none; border:none; font-size: 1.7rem;}
.mw_wp_form_confirm .exam{display: none;}
.mw_wp_form_complete{padding: 150px 0;}

@media only screen and (max-width :768px) {
	.link-btn{margin-bottom:10px;}
}

.a_more,
.a_more:hover,
.a_more:visited{display:inline-block;padding-right:15px;position:relative;text-decoration:underline;}
.a_more:after{content:"";position:absolute;bottom:50%;margin-bottom:-5px;right:-3px;width:0px;height:0px;
	border:5px solid transparent;border-left:4px solid #666;}
.a_more:not(:first-child){margin-left:25px;}

.a_link,
.a_link:hover,
.a_link:visited{padding-left:15px;position:relative;}
.a_link:before{content:"";display: inline-block; width:0px;height:0px;
	border:3px solid transparent;border-left:5px solid #fff;
	margin-left: -15px; padding-right: 7px; vertical-align: middle;}


/* colorbox
-----------------------------------------------*/
.colorbox{cursor:pointer;position:relative;}
.colorbox:after{content:"";position:absolute;bottom:5px;right:5px;width:25px;height:25px;
	background:url(../../img/common/icon_cbox.png) 0 0 no-repeat;}

#cboxLoadedContent{margin-bottom:0px;}
#cboxTopLeft,
#cboxTopCenter,
#cboxTopRight,
#cboxMiddleLeft,
#cboxMiddleRight,
#cboxBottomLeft,
#cboxBottomCenter,
#cboxBottomRight{background:none;}

#cboxOverlay{ background:#000;}
#cboxContent{}
#cboxCurrent{display:none !important;}
#cboxClose,
#cboxClose:hover{background: url(../../images/colorbox/close_btn.png) 0 0 no-repeat; background-size: contain; top:5px;right:5px;}
#cboxClose:hover{ opacity:0.8;}


/* slider
-----------------------------------------------*/
/*スライダー の矢印送り*/
.slick-prev,
.slick-next{width:60px;height:60px;z-index:999; overflow:visible;}
.slick-prev{left:-55px;}
.slick-next{right:-55px;}
.slick-prev:before,
.slick-next:before{content:"";position:absolute;top:50%;margin-top:-15px;width:25px;height:25px;
	border-top:4px solid #aaa;border-right:4px solid #aaa;}
.slick-prev:before{left:0px;transform:rotate(-135deg);}
.slick-next:before{right:0px;transform:rotate(45deg);}

/*スライダー の下部ドット*/
.slick-dotted.slick-slider{margin-bottom:0px;}
.slick-dots li{width: 10px; height: 10px; margin: 0 4px;}
.slick-dots li button{background: #eee; border-radius:5px;padding:0px;width:10px;height:10px;}
.slick-dots li button:before{display:none;}
.slick-dots { bottom: -32px;}
.slick-dots li.slick-active button{background:#aaa;}

/*slider_box3*/
.slider_box3{margin:0 -8px;overflow:visible;}
.slider_box3 .slick-slide{margin:0 8px;}

@media only screen and (max-width :768px) {
	/*スライダー の矢印送り*/
	.slick-prev{left:5px;}
	.slick-next{right:5px;}
	.slick-prev:before,
	.slick-next:before{margin-top:-5px;width:10px;height:10px;}
	/*スライダー の下部ドット*/
	.slick-dots li{width: 10px; height: 10px; margin: 0 5px;}
	.slick-dots li button{border-radius:5px;width:10px;height:10px;}
	.slick-dots { bottom: -20px;}


	.slider_box3{margin:0 -0.78vw;}
	.slider_box3 .slick-slide{margin:0 0.78vw;}

}

@charset "utf-8";

/*  position
-----------------------------------------------------------------------------*/
.rel{position:relative;}
.abs{position:absolute;}

/*  display
-----------------------------------------------------------------------------*/
.sp,
.sp_block{display:none;}/*width:768px以下の場合のみ表示*/
@media only screen and (max-width :768px) {
  .pc{display:none !important;}
  .sp{display:inline;}
  .sp_block{display:block;}
}

/*  width
-----------------------------------------------------------------------------*/
.w20p{width:20%;height:auto;box-sizing: border-box;}
.w30p{width:30%;height:auto;box-sizing: border-box;}
.w60p{width:60%;height:auto;box-sizing: border-box;}
.w95p{width:95%;height:auto;box-sizing: border-box;}
.w100p{width:100%;height:auto;box-sizing: border-box;}


/*  font
-----------------------------------------------------------------------------*/
.txt45 { font-size: 4.5rem !important; line-height: 1.6; }
.txt42 { font-size: 4.2rem !important; line-height: 1.6; }
.txt35 { font-size: 3.5rem !important; line-height: 1.6; }
.txt30 { font-size: 3.0rem !important; line-height: 1.6; }
.txt28 { font-size: 2.8rem !important; line-height: 1.6; }
.txt26 { font-size: 2.6rem !important; line-height: 1.6; }
.txt25 { font-size: 2.5rem !important; line-height: 1.6; }
.txt24 { font-size: 2.4rem !important; line-height: 1.6; }
.txt23 { font-size: 2.3rem !important; line-height: 1.6; }
.txt22 { font-size: 2.2rem !important; line-height: 1.6; }
.txt21 { font-size: 2.1rem !important; line-height: 1.6; }
.txt20 { font-size: 2.0rem !important; line-height: 1.6; }
.txt19 { font-size: 1.9rem !important; line-height: 1.6; }
.txt18 { font-size: 1.8rem !important; line-height: 1.6; }
.txt16 { font-size: 1.6rem !important; line-height: 1.6; }
.txt15 { font-size: 1.5rem !important; line-height: 1.6; }
.txt14 { font-size: 1.4rem !important; line-height: 1.6; }
.txt13 { font-size: 1.3rem !important; line-height: 1.6; }
.txt12 { font-size: 1.2rem !important; line-height: 1.6; }
.txt11 { font-size: 1.1rem !important; line-height: 1.6; }
.txt10 { font-size: 1.0rem !important; line-height: 1.6; }
.txt_b { font-weight: bold; }
.lh160p{line-height:1.6;}
.lh200p{line-height:2;}
.lh215p{line-height:2.15;}
.lh250p{line-height:2.5;}
.lp_minus { letter-spacing:-0.01rem;}


/*	margin padding
-----------------------------------------------------------------------------*/
.m_b00 { margin-bottom: 0px !important; }
.m_b05 { margin-bottom: 5px !important; }
.m_b10 { margin-bottom: 10px !important; }
.m_b15 { margin-bottom: 15px !important; }
.m_b20 { margin-bottom: 20px !important; }
.m_b25 { margin-bottom: 25px !important; }
.m_b30 { margin-bottom: 30px !important; }
.m_b35 { margin-bottom: 35px !important; }
.m_b40 { margin-bottom: 40px !important; }
.m_b45 { margin-bottom: 45px !important; }
.m_b50 { margin-bottom: 50px !important; }
.m_b55 { margin-bottom: 55px !important; }
.m_b60 { margin-bottom: 60px !important; }
.m_b65 { margin-bottom: 65px !important; }
.m_b70 { margin-bottom: 70px !important; }
.m_b75 { margin-bottom: 75px !important; }
.m_b80 { margin-bottom: 80px !important; }
.m_b85 { margin-bottom: 85px !important; }
.m_b90 { margin-bottom: 90px !important; }
.m_b95 { margin-bottom: 95px !important; }
.m_b100 { margin-bottom: 100px !important; }
.m_b110 { margin-bottom: 110px !important; }
.m_b120 { margin-bottom: 120px !important; }
.m_b130 { margin-bottom: 130px !important; }
.m_b140 { margin-bottom: 140px !important; }
.m_b200 { margin-bottom: 100px !important; }
.m_auto {display: block; margin-left: auto !important; margin-right: auto !important; }
@media only screen and (max-width :768px) {
  .m_b00 { margin-bottom: 0px !important; }
  .m_b05 { margin-bottom: 5px !important; }
  .m_b10 { margin-bottom: 8px !important; }
  .m_b15 { margin-bottom: 10px !important; }
  .m_b20 { margin-bottom: 12px !important; }
  .m_b25 { margin-bottom: 13px !important; }
  .m_b30 { margin-bottom: 15px !important; }
  .m_b35 { margin-bottom: 17px !important; }
  .m_b40 { margin-bottom: 20px !important; }
  .m_b45 { margin-bottom: 22px !important; }
  .m_b50 { margin-bottom: 25px !important; }
  .m_b55 { margin-bottom: 27px !important; }
  .m_b60 { margin-bottom: 30px !important; }
  .m_b65 { margin-bottom: 32px !important; }
  .m_b70 { margin-bottom: 35px !important; }
  .m_b75 { margin-bottom: 37px !important; }
  .m_b80 { margin-bottom: 40px !important; }
  .m_b85 { margin-bottom: 42px !important; }
  .m_b90 { margin-bottom: 45px !important; }
  .m_b95 { margin-bottom: 47px !important; }
  .m_b100 { margin-bottom: 50px !important; }
  .m_b110 { margin-bottom: 55px !important; }
  .m_b120 { margin-bottom: 60px !important; }
  .m_b130 { margin-bottom: 65px !important; }
  .m_b140 { margin-bottom: 70px !important; }
  .m_b200 { margin-bottom: 100px !important; }
}

/*  align
-----------------------------------------------------------------------------*/
.align_r { text-align: right !important; }
.align_c { text-align: center !important; }
.align_l { text-align: left !important; }
.valign_b { vertical-align: bottom; }
.valign_m { vertical-align: middle; }
.valign_t { vertical-align: top; }
@media only screen and (max-width :768px) {
.sp_align_r,
.align_r.sp_align_r,
.align_c.sp_align_r,
.align_l.sp_align_r{ text-align: right !important; }
.sp_align_c,
.align_r.sp_align_c,
.align_c.sp_align_c,
.align_l.sp_align_c{ text-align: center !important; }
.sp_align_l,
.align_r.sp_align_l,
.align_c.sp_align_l,
.align_l.sp_align_l{ text-align: left !important; }
}

/*  float
-----------------------------------------------------------------------------*/
.fl {float: left;}
.fr {float: right;}

/*	photo 
-----------------------------------------------------------------------------*/
.photo_img, .photo_left, .photo_right { padding: 7px; border: #E8E8E8 1px solid; background: #FFFFFF; }
.photo_img { margin: 0 0px 15px 0; }
.photo_left { margin: 0 15px 15px 0; float: left; }
.photo_right { margin: 0 0 15px 15px; float: right; }

.img_photo { margin: 0 0px 15px 0; }
.img_left { margin: 0 15px 15px 0; float: left; }
.img_right { margin: 0 0 15px 15px; float: right; }
@media only screen and (max-width :768px) {
	.photo_img, .photo_left, .photo_right,
	.img_photo, .img_left, .img_right { margin-left: auto; margin-right: auto; display: block; float: none;}
}

/*  clearfix
-----------------------------------------------------------------------------*/

.cf::after {
    content:" ";
    display:block;
    clear:both;
}


/*  link*/
a {color:#333; text-decoration: none;  }
a:visited { color:#333; text-decoration: none;  }
a:hover { color: #333; text-decoration:underline; }
a img { border: 0; }
a.link,
a.link:visited,
a.link:hover {text-decoration:underline; }
.movie-link:after{content:""; display: inline-block; vertical-align: middle;
  background: url(../../images/common/icon_movie.png); width: 19px; height:16px;
  margin-left: 5px;}

/* wordpress内で使うクラス
-----------------------------------------------*/
/*wpのエディタ標準クラスの設定*/
.aligncenter{text-align:center;}
.alignleft{text-align:left;}
.alignright{text-align:right;}
img{max-width:100%;height:auto;}
img.aligncenter{display:block;margin:0 auto 20px;}
img.alignleft{float:left;margin:0px 20px 20px 0px}
img.alignright{float:right;margin:0px 0px 20px 20px }

@media only screen and (max-width :768px) {
  img.aligncenter,
  img.alignleft,
  img.alignright{display:block;float:none;max-width:100%;margin:0 auto 20px !important;}
}

.page.instagram {
	background: #c4e4f7;
}
.page.instagram + .totop + .ft {
	margin-top: 0;
}

