@charset "utf-8";
/* CSS Document */

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
form,
input,
button,
p {
	margin: 0px;
	padding: 0px;
	/* font-size: 16px; */
	/*font-family: "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝", "Sawarabi Mincho", serif;*/
	/*font-family:"游ゴシック",YuGothic,Hiragino Sans,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic Pro",Hiragino Kaku Gothic ProN,"メイリオ",Meiryo,'ＭＳ Ｐゴシック',sans-serif;*/
	font-family: 'ヒラギノ角ゴ Pro W3','メイリオ', Meiryo, 'Hiragino Kaku Gothic Pro', sans-serif;
	/*font-family: "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO";*/
	line-height: 160%;
	color: #111111;
	word-wrap: break-word;
	overflow-wrap: break-word;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.nosp {
	display: block !important;
}

.nopc {
	display: none !important;
}

/*クリアフィックス*/

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

.clearfix:before {
	display: block;
	content: "";
	clear: both;
}

.clearfix {
	display: block;
}

.clear {
	clear: both;
}
ul{
    list-style: none;
}

[data-element-id] .fead-mv {
	opacity: 1;
}

.fead-mv {
	opacity: 0;
	transition: 0.5s;
	-webkit-transition: 0.5s;
	-ms-transition: 0.5s;
}

.mv {
	opacity: 1;
}

/* =======================================
	Structure CSS
========================================== */

a {
    text-decoration: none;
    color: #111111;
}

a:hover {
    opacity: 0.8;
    color: inherit;
    text-decoration: none;
}


a.Banner img {
	filter:alpha(opacity=100);
	-moz-opacity: 1.0;
	opacity: 1.0;
}
a.Banner:hover img {
	filter:alpha(opacity=70);
	-moz-opacity: 0.5;
	opacity: 0.5;
}

.txt_center {text-align: center !important;vertical-align:middle;}
.txt_right{text-align:right !important;}
.txt_left{text-align:left !important;}
.indent {padding-left:1em;text-indent:-1em;}
.bold {font-weight:bold !important;}
.red {color:#c00 !important;}
.blue{color:#15376A !important;}
.white{color:#fff !important;}
.beni{color:#FF5C5C !important;}
.orange{color:#F88F03 !important;}
.f_min{
	font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
}
.bg_w{background:rgba(255,255,255,1);}
.float_l{float:left;}
.float_r{float:right;}
.clear_both{clear:both;}
.f10{font-size:10px !important;}
.f11{font-size:11px !important;}
.f12{font-size:12px !important;}
.f13{font-size:13px !important;}
.f14{font-size:14px !important;}
.f15{font-size:15px !important;}
.f16{font-size:16px !important;}
.f17{font-size:17px !important;}
.f18{font-size:18px !important;}
.f19{font-size:19px !important;}
.f20{font-size:20px !important;}
.f21{font-size:21px !important;}
.f22{font-size:22px !important;}
.f23{font-size:23px !important;}
.f24{font-size:24px !important;}
.f25{font-size:25px !important;}
.f26{font-size:26px !important;}
@media (max-width: 480px) and (min-width: 0px){
.f10{font-size:8px !important;}
.f11{font-size:9px !important;}
.f12{font-size:10px !important;}
.f13{font-size:11px !important;}
.f14{font-size:12px !important;}
.f15{font-size:13px !important;}
.f16{font-size:14px !important;}
.f17{font-size:15px !important;}
.f18{font-size:16px !important;}
.f19{font-size:17px !important;}
.f20{font-size:18px !important;}
.f21{font-size:19px !important;}
.f22{font-size:20px !important;}
.f23{font-size:21px !important;}
.f24{font-size:22px !important;}
.f25{font-size:23px !important;}
.f26{font-size:24px !important;}
}
.bb{border-bottom:1px solid #ccc;}

/* =======================================

	margin / padding

========================================== */
.mb0 {margin-bottom:0px !important;}
.mb5 {margin-bottom:5px !important;}
.mb10 {margin-bottom:10px !important;}
.mb15 {margin-bottom:15px !important;}
.mb20 {margin-bottom:20px !important;}
.mb25 {margin-bottom:25px !important;}
.mb30 {margin-bottom:30px !important;}
.mb35 {margin-bottom:35px !important;}
.mb40 {margin-bottom:40px !important;}
.mb45 {margin-bottom:45px !important;}
.mb50 {margin-bottom:50px !important;}
.mb60 {margin-bottom:60px !important;}
.mb70 {margin-bottom:70px !important;}
.mb80 {margin-bottom:80px !important;}
.mb90 {margin-bottom:90px !important;}
.mb100 {margin-bottom:100px !important;}
.mb120 {margin-bottom:120px !important;}
.mb150 {margin-bottom:150px !important;}
.mb1em{margin-bottom:1em !important;}
.ml20{margin-left:20px !important;}
.ml25{margin-left:25px !important;}
.ml30{margin-left:30px !important;}
.pd0{padding:0 !important;}
.pt70{padding-top:70px !important;}
@media (max-width: 480px) and (min-width: 0px){
.mb10 {margin-bottom:3% !important;}
.mb15 {margin-bottom:3% !important;}
.mb20 {margin-bottom:5% !important;}
.mb25 {margin-bottom:5% !important;}
.mb30 {margin-bottom:5% !important;}
.mb35 {margin-bottom:5% !important;}
.mb40 {margin-bottom:5% !important;}
.mb45 {margin-bottom:5% !important;}
.mb50 {margin-bottom:10% !important;}
.mb60 {margin-bottom:10% !important;}
.mb70 {margin-bottom:15% !important;}
.mb80 {margin-bottom:15% !important;}
.mb90 {margin-bottom:15% !important;}
.mb100 {margin-bottom:15% !important;}
.mb120 {margin-bottom:15% !important;}
.mb150 {margin-bottom:15% !important;}
.pt70{padding-top:10% !important;}
.adjust{padding: 0 5%;}
.ml20{margin-left:5% !important;}
.ml25{margin-left:5% !important;}
.ml30{margin-left:5% !important;}
}

.no_pointer_events{
	pointer-events: none;
}

/* =======================================

	form

========================================== */
.contact_form {
	margin-bottom: 50px;
}
.contact_form table {
	margin-bottom: 30px;
	border-top: 1px solid #ccc;
	width: 100%;
}
.contact_form table tbody tr {
	border-bottom: 1px solid #ccc;
}
.contact_form table tbody tr th {
	padding: 30px;
	vertical-align: middle;
	background: #F1F1F1;
	width: 250px;
	box-sizing: border-box;
}
.contact_form table tbody tr td {
	padding: 20px;
	vertical-align: middle;
}
.contact_form table tbody tr td label {
	margin-right: 10px;
}
.textarea1 {
	box-sizing: border-box;
	padding: 10px;
	height: 10em;
	width: 100%;
}
.input1,
.input2 {
	box-sizing: border-box;
	padding: 10px;
	width: 300px;
}
.input2 {
	width: 400px;
}
.contact_form table tbody tr th span {
	margin-left: 10px;
}
.contact_form div.privacy_btn {
	background: #F3F4EF;
	padding: 20px;
	margin-bottom: 20px;
}
.contact_form div.privacy_btn p {
	margin-bottom: 20px;
}
.contact_form button.btn1 {
	width: 340px;
	box-sizing: border-box;
	padding: 20px 0;
	text-align: center;
	margin: auto;
	font-size: 16px;
	cursor: pointer;
}
@media (max-width: 480px) and (min-width: 0px){
	.contact_form {
		padding: 0 5%;
		margin-bottom: 10%;
	}
	.contact_form table {
		margin-bottom: 5%;
		border-top: 1px solid #ccc;
		width: 100%;
	}
	.contact_form table tbody tr {
		border-bottom: 1px solid #ccc;
	}
	.contact_form table tbody tr th {
		padding: 3%;
		vertical-align: middle;
		background: #F1F1F1;
		width: 100%;
		box-sizing: border-box;
		float: left;
	}
	.contact_form table tbody tr td {
		padding: 3%;
		vertical-align: middle;
		float: left;
		width: 100%;
	}
	.contact_form table tbody tr td label {
		margin-right: 10px;
	}
	.textarea1 {
		box-sizing: border-box;
		padding: 3%;
		height: 10em;
		width: 94%;
	}
	.input1,
	.input2 {
		box-sizing: border-box;
		padding: 3%;
		width: 94%;
	}
	.input2 {
		width: 94%;
	}
	.contact_form table tbody tr th span {
		margin-left: 10px;
	}
	.contact_form div.privacy_btn {
		background: #F3F4EF;
		padding: 5%;
		margin-bottom: 5%;
	}
	.contact_form div.privacy_btn p {
		margin-bottom: 5%;
	}
	.contact_form button.btn1 {
		width: 100%;
		box-sizing: border-box;
		padding: 5% 0;
		text-align: center;
		margin: auto;
		font-size: 16px;
		cursor: pointer;
	}
}

/*item*/
.Gallbnt {
  display: block;
  border-radius: 10px;
  box-shadow: 1px 3px 6px 2px #eee;
}

.Gallbnt>a>img {
  display: block;
  width: 100%;
  /* border-radius: 10px; */
}

.ebntcho>a>img {
  border-radius: 0;
  height: auto;
}

.Gallbnt>span {
  display: block;
  text-align: center;
  color: #b0153d;
  padding: 6.5px 0px;
}

.Gallbnt>a>span {
  display: block;
  text-align: center;
  color: #b0153d;
  padding: 6.5px 0px;
}

.Gallbnt:hover {
  display: block;
  box-shadow: 0.5px 0.5px 6px 2px #eee;
  opacity: 1;
  position: relative;
  top: 3px;
  left: 3px;
}

.bnt_yplusred>a {
  display: inline-block;
  padding: 2px 0 0 22px;
  position: relative;
  color: #4AA7E2;
}

.bnt_yplusred>a:hover {
	text-decoration: underline;
	color: #4AA7E2;
}

.bnt_yplusred>a:before {
  content: '';
  width: 5px;
  height: 5px;
  border-top: 3px solid #ea6588;
  border-right: 3px solid #B0153D;
  position: absolute;
  top: 10px;
  left: 0px;
  margin: auto;
  transform: rotate(45deg);
  transition: .3s;
}

.bnt_yplusred>a:hover:before {
  content: '';
  width: 5px;
  height: 5px;
  border-top: 3px solid #B0153D;
  border-right: 3px solid #B0153D;
  position: absolute;
  top: 10px;
  left: 5px;
  margin: auto;
  transform: rotate(45deg);
  transition: .3s;
}

/*--- 共通ｈ1 ---*/

.h1txt {
    font-size: 24px;
    color: #B0153D;
    border-left: 4px solid;
    line-height: 130%;
    padding: 0 0 0 15px;
    margin: 0 0 30px 0;
    position: relative;
    letter-spacing: 1px;
}

.h1txt:before {
    content: "";
    width: 4px;
    height: 60px;
    top: -60px;
    left: -4px;
    position: absolute;
    background: #ecebeb;
}

/*--- 使用していない ---*/

.htxt01 {
    font-size: 22px;
    color: #B0153D;
    position: relative;
}

/*--- エントランス系h1 ---*/


.h1txt02Wp{
	border-bottom: 2px solid #eee;
	margin: 0 auto 35px;
	text-align: center;
}

.h1txt02 {
    color: #B0153D;
    font-size: 28px;
    text-align: center;
    width: auto;
    /* max-width: 140px; */
    border-bottom: solid 2px;
    margin: 0px auto -2px;
    padding: 0 0 6px 0;
    position: relative;
    z-index: 2;
    display: inline-block;
}


/*--- 通常ｈ2 ---*/
.h2txt03 {
    font-size: 18px;
    color: #B0153D;
    position: relative;
    font-weight: normal;
    margin: 0 0 10px 0;
}

.h2txt04 {
    font-size: 14px;
    position: relative;
    font-weight: normal;
}

.h2txt05 {
    font-size: 18px;
    color: #B0153D;
    border-left: 4px solid;
    line-height: 110%;
    padding: 0 0 0 15px;
    margin: 0 0 30px 0;
}

.h2wp {
    padding: 10px 0;
    border-top: 1.5px solid #eee;
    border-bottom: 1.5px solid #eee;
    margin: 0 0 30px 0;
}

/*--- 共通h3 ---*/

.h3txt {
    font-size: 16px;
    font-weight: bold;
    margin: 0 0 5px 0;
}

/*--- 共通h4 ---*/

.h4txt {
    font-size: 15.5px;
    font-weight: bold;
}

/*--- ストロングテキスト ---*/
.txtStrong {
    font-size: 15px;
    font-weight: bold;
}

/*--- 後ろPDFボタン ---*/

.bnt_pdf{
	margin: 0 0 0 0px;
}

.bnt_pdf > a{
	position:relative;
	color: #4AA7E2;
}

.bnt_pdf > a:hover {
    text-decoration: underline;
}

.bnt_pdf > a:after {
    content: url(../img/pdf_icon01.png);
    background-size: contain;
    width: 23px;
    height: 23px;
    display: inline-block;
    vertical-align: top;
    margin: -3px 0 0 7px;
}

/*--- 外部リンクボタン ---*/

.bnt_gaibu{
	margin: 0 0 0 30px;
}

.bnt_gaibu > a{
	position:relative;
	color: #4AA7E2;
}

.bnt_gaibu > a:hover {
    text-decoration: underline;
}

.bnt_gaibu > a:after {
    content: url(../img/gaibulink_icon_off.png);
    background-size: contain;
    width: 13px;
    height: auto;
    display: inline-block;
    vertical-align: top;
    margin: 5px 0 0 7px;
}

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

.txttype01 {
    color: #B0153D;
    font-size: 18px;
}

/*--- グレイボックス ---*/
.graybox{
  background: #F6F6F6;
  padding: 15px;
  margin: 0 0 5% 0;
  font-size: 15px;
}

.graybox2{
  background: #F6F6F6;
  padding: 35px 30px 35px;
  margin: 0 auto 5%;
  font-size: 15px;
  width:660px;
}


/*--- ページャー ---*/

.pager {
    margin: 32px auto 0;
    width: auto;
    text-align: center;
}

.pager > li {
    display: inline-block;
    text-align: center;
    margin: 0 3px 10px;
}

.pager > li em {
    background: #B0153D;
    color: #fff;
    display: block;
    border: #B0153D;
}

.pager > li a {
	color: #B5B5B5;
	text-decoration: none;
	background: #fff;
	padding: 1.5px 0;
	display: block;
	width: 48px;
	font-size: 15px;
	border: solid 1px #B5B5B5;
	border-radius: 5px;
	vertical-align: middle;
}

.pager > li a:hover {
    color: #fff;
    background: #d1d0d0;
    border: solid 1px #d1d0d0;
}

.pager > li > .pagerArrow {
    color: #fff;
    background: #b3b3b3;
    border: solid 1px #b3b3b3;
}



/* #画像付きボタン */

/*item*/
.Gallbnt {
  display: block;
  border-radius: 10px;
  box-shadow: 1px 3px 6px 2px #eee;
}

.Gallbnt>a>img {
  display: block;
  width: 100%;
  /* border-radius: 10px; */
}

.ebntcho>a>img {
  border-radius: 0;
  height: auto;
}

.Gallbnt>span {
  display: block;
  text-align: center;
  color: #b0153d;
  padding: 6.5px 0px;
}

.Gallbnt>a>span {
  display: block;
  text-align: center;
  color: #b0153d;
  padding: 6.5px 0px;
}

.Gallbnt:hover {
  display: block;
  box-shadow: 0.5px 0.5px 6px 2px #eee;
  opacity: 1;
  position: relative;
  top: 3px;
  left: 3px;
}

/* #bnt01 */

.bnt01  {
    display: inline-block ;
    border: 1px solid #fff;
    color: #fff;
    padding: 5px 1.5em;
    border-radius: 15px /50%;
}

.bnt01:hover {
    background: #B0153D;
    border-color: #B0153D;
    opacity: 1;
    transition: .2s;
}


/* #bnt_redhover01　赤丸ホバーボタン */


.bnt_redhover01 a {
    border-radius: 20px / 50%;
    display: block;
    text-align: center;
    padding: 6px 10px;
    background: rgba(255,255,255,0.9);
    border: 1px solid #a71a3e;
    font-size: 14px;
    color: #a71a3e !important;
    transition: .2s;
}

.bnt_redhover01 a:hover{
	background:#B0153D;
	opacity:1;
	color:#fff !important;
  text-decoration: none !important;
}

/*　テキスト後矢印付きボタン */

.bnt_redhover02 > a {
    border-radius: 20px / 50%;
    display: block;
    text-align: center;
    padding: 10px 0;
    background: rgba(255,255,255,0.9);
    border: 1px solid #a71a3e;
    font-size: 14px;
    color: #a71a3e !important;
    position: relative;
    max-width: 200px;
    transition: .2s;
}

.bnt_redhover02 > a:after {
	content: url(../img/yajirushi_icon_off.png);
    top: 35%;
    right: 10px;
    width: 19px;
    position:absolute;
    z-index:1;
}

.bnt_redhover02 > a:hover {
    background: #B0153D;
    opacity: 1;
    color: #fff !important;
    text-decoration: none !important;
}

.bnt_redhover02 > a:hover:after {
	content: url(../img/yajirushi_icon_on.png);
}

/*　テキスト後PDFアイコン付きボタン */

.bnt_redhover_pdf > a {
    border-radius: 20px / 50%;
    display: block;
    text-align: center;
    padding: 10px 0;
    background: rgba(255,255,255,0.9);
    border: 1px solid #a71a3e;
    font-size: 14px;
    color: #a71a3e !important;
    position: relative;
    max-width: 200px;
    transition: .2s;
}

.bnt_redhover_pdf > a:after {
    content: url(../img/pdf_icon_hover_off.png);
    top: 25%;
    right: 10px;
    width: 19px;
    position:absolute;
}

.bnt_redhover_pdf > a:hover {
    background: #B0153D;
    opacity: 1;
    color: #fff !important;
    text-decoration: none !important;
}

.bnt_redhover_pdf > a:hover:after{
    content: url(../img/pdf_icon_hover_on.png);
}

/*　テキスト後外部リンクアイコン付きボタン */


.bnt_redhover_gaibu > a {
    border-radius: 20px / 50%;
    display: block;
    text-align: center;
    padding: 10px 0;
    background: rgba(255,255,255,0.9);
    border: 1px solid #a71a3e;
    font-size: 14px;
    color: #a71a3e !important;
    position: relative;
    max-width: 200px;
    transition: .2s;
}

.bnt_redhover_gaibu > a:after {
    content: url(../img/gaibulink_icon_off.png);
    top: 35%;
    right: 16px;
    width: 13px;
    position:absolute;
}

.bnt_redhover_gaibu > a:hover {
    background: #B0153D;
    opacity: 1;
    color: #fff !important;
    text-decoration: none !important;
}

.bnt_redhover_gaibu > a:hover:after{
    content: url(../img/gaibulink_icon_on.png);
}

/******イメージライトボックス*******/

.imgright_box > li {
    float: right;
    width: 30%;
    margin: 0 0 0 4%;
}

.imgright_box > li:nth-of-type(1) {
    float: left;
    width: 63%;
    margin: 0;
    height: auto;
}

.imgright_box > li > img {
    width: 100%;
}


/******amax*******/

.amax {
	position: relative;
}

.amax > a{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 10;
}

/******画像拡大*******/

.scaleupWp{
	overflow: hidden;
}

.scaleupWp > img{
   transition-duration: 0.2s; /*変化に掛かる時間*/
}

.scaleupWp:hover > img {
   transform: scale(1.02); /*画像の拡大率*/
   transition-duration: 0.2s; /*変化に掛かる時間*/
}

/***********************************************/
@media only screen and (max-width: 599px) {
/***********************************************/

	/*******テキスト系********/

	.h1txt {
    font-size: 22px;
    margin: 0 0 8% 0;
	}

	.h1txt02 {
  	  font-size: 26px;
	}

	.h2txt03 {
	    font-size: 16px;
	    margin: 0 0 1% 0;
	}

	.h3txt {
	    font-size: 14px;
			font-weight: bold;
    	margin: 0 0 5% 5px;
	}

		/*******ボタン系********/

	.bnt_yplusred>a {
	    font-size: 13px;
	}

	.bnt_redhover_pdf > a {
	    font-size: 13px;
	}
	.bnt_pdf > a {
	    font-size: 13px;
	}
	.bnt_gaibu > a {
	    font-size: 13px;
	}

	.bnt_redhover01 > a {
    font-size: 13px;
        text-decoration: none !important;
	}

	.bnt_redhover02 > a {
		font-size: 13px;
	    text-decoration: none !important;
	}

	.bnt_redhover_pdf > a {
		font-size: 13px;
	    text-decoration: none !important;
	}

	.bnt_redhover_gaibu > a {
		font-size: 13px;
	    text-decoration: none !important;
	}

	/****グレイボックス*******/

	.graybox{
		font-size: 13px;
		  background: #F6F6F6;
		  padding: 5% 10%;
		  margin: 0 0 5% 0;
		  font-size: 15px;
		}

	.graybox2{
			font-size: 13px;
			background: #F6F6F6;
			padding: 4%;
			margin: 0 auto 5%;
			font-size: 15px;
			width: 96%;
	}


	/***イメージライトボックス******/

	.imgright_box > li {
	    float:none;
	    width: 100%;
	    margin: 0 auto 20px;
	    height: 200px;
	    overflow:hidden;
	}

	.imgright_box > li:first-child {
	    float: none;
	    width: 100%;
	    margin: 0 auto 2%;
	}

	.imgright_box > li > img {
		margin:-30% 0 0 0;
		width:100%;

	}

/***********************************************/
}
/***********************************************/

/* @soratomo 2019年3月20日 18:19追加 */
.print-none {
	position: relative;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}
.print-none .spacer {
	position: absolute;
	z-index: 100;
	width: 100%;
	height: 100%;
}

/* 210114 add */
.h1txt_noborder {
    font-size: 24px;
    color: #B0153D;
    line-height: 130%;
    margin: 0 0 30px 0;
    position: relative;
    letter-spacing: 1px;
}
