@charset "UTF-8";

/* ------ フィーチャーエリア ------ */

.mod_featurearea {
	margin: 0;
	padding: 0;
	background: #ffd338 url("/abm/img/bg_featurearea.png") no-repeat top center;
	background-size: 972px;
	height: 260px;
	background-position: bottom;
	position: relative;
}

.mod_featurearea p {
	margin: 0px 700px 0px 0px;
	padding-top: 120px;
	text-align: center;
}

.mod_featurearea p span.maintext1 {
	font-size: 52px;
	font-size: 5.2rem;
	line-height: 1.0;
	color: #d19605;
	font-family: "kepler-std", serif;
}

.mod_featurearea p span.maintext2 {
	font-size: 17px;
	font-size: 1.7rem;
	line-height: 1.4;
	color: #d19605;
	font-family: "kepler-std", serif;
}

@media screen and (max-width: 991px) {

.mod_featurearea p {
	margin: 0;
	padding-left: 15px;
	position: absolute;
	left: 0;
}

}

@media screen and (max-width: 767px) {

  .mod_featurearea {
	  background-size: 800px;
	  height: 210px;
  }

  .mod_featurearea p {
	  padding-top: 100px;
  }

  .mod_featurearea p span.maintext1 {
	  font-size: 40px;
	  font-size: 4.0rem;
  }

  .mod_featurearea p span.maintext2 {
	  font-size: 16px;
	  font-size: 1.6rem;
  }

}

@media screen and (max-width: 580px) {

  .mod_featurearea {
	  background-size: 600px;
	  height: 160px;
  }

  .mod_featurearea p {
	  display: none;
  }

}

/* ------ Lナビ ------ */

.mod_lnavi {
	padding: 19px 0 18px;
	border-bottom: 1px solid #dfe2e9;
}

.mod_lnavi ul {
	text-align: center;
}

.mod_lnavi ul li {
	list-style: none;
	display: inline-block;
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.2;
}

.mod_lnavi ul li a {
	color: #898f99;
}

.mod_lnavi ul li.comparison a,
.mod_lnavi ul li.word a {
	margin-left: 40px;
}

.mod_lnavi ul li a:hover,
#about .mod_lnavi ul li.about a,
#comparison .mod_lnavi ul li.comparison a,
#word .mod_lnavi ul li.word a {
	color: #f27000;
}

@media screen and (max-width: 767px) {
	
  .mod_lnavi ul li {
	  display: block;
  }

  .mod_lnavi ul li.comparison a,
  .mod_lnavi ul li.word a {
	  margin-left: 0px;
	  margin-top: 15px;
	  display: block;
  }
  
}

/* ------ コンテンツタイトル ------ */

.mod_contitle {
	padding: 30px 15px 0px;
	text-align: center;
}

.mod_contitle p {
	margin-top: 0px;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1.2;
	color: #f27000;
	font-family: "kepler-std", serif;
}

.mod_contitle h1 {
	margin-top: 10px;
	font-size: 25px;
	font-size: 2.5rem;
	line-height: 1.4;
	color: #222222;
}

hr.hr_contitle {
	margin: 60px auto 0;
	display: block;
	width: 160px;
	height: 2px;
	background-color: #f27000;
	border: 0;
}

/* ------ コンテンツエリア ------ */

.mod_conarea1 {
	margin: 60px auto 0;
	padding: 0 15px;
	max-width: 970px;
	width: 100%;
}

@media screen and (max-width: 970px) {
	
  .mod_conarea1 {
	  margin: 60px auto 0;
	  width: 100%;
  }
  
}

/* ------ テキストボックス ------ */

/* コメント引用ボックス */
.mod_textbox1 {
	margin: 50px 0 0 0;
	padding: 28px 30px 23px 62px;
	border: 1px solid #f2dd94;
	border-radius: 3px;
	background-color: #fff5d3;
	background-image: url("/abm/img/doublequotation_1.png");
	background-repeat: no-repeat;
	background-position: 30px 30px;
	background-size: 18px;
	width: calc(100% - 20px - 259px);
}
@media screen and (max-width: 767px) {
		.mod_textbox1 {
			width: 100%;
		}
}

.mod_textbox1 h3 {
	margin-bottom: 10px;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1.4;
	color: #222222;
}

.mod_textbox1 p {
	margin-top: 0px;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1.8;
	text-align: left;
}

/* ------ リスト ------ */

ul.mod_ul1 {
	margin: 0px 0px 0px 0px;
	padding: 10px 0px 0px 0px;   
}

ul.mod_ul1 li {
	position: relative;
	margin: 5px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	list-style: none;
}

ul.mod_ul1 li p {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 15px;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1.8;
	color: #333333;
}

ul.mod_ul1 li p span {
	font-weight: bold;
}

.mod_textbox1 ul.mod_ul1 {
	padding: 3px 0px 0px 0px;   
}

/* ------ テーブル1 ------ */

table.tb1 {
	margin: 35px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	border-top: 1px solid #dfe2e9;
	border-bottom: 1px solid #dfe2e9;
	border-collapse: collapse;
	border-spacing: 0;
	width: 100%;
}

table.tb1 th {
	margin: 0px 0px 0px 0px;
	padding: 1px 0px 18px 0px;
	background-color: #dfe2e9;
	border-right: medium none;
	border-top: 1px solid #ffffff;
	font-weight: normal;
	text-align: left;
	vertical-align: top;
}

table.tb1 th.bl {
	border-left: 1px solid #dfe2e9;
}

table.tb1 th.th1 {
	background-color: #dfe2e9;
}

table.tb1 td {
	margin: 0px 0px 0px 0px;
	padding: 1px 0px 18px 0px;
	border-left: medium none;
	border-top: 1px solid #dfe2e9;
}

table.tb1 th p{
	margin: 18px 15px 0px 15px;
	padding: 0px 0px 0px 0px;
	line-height: 1.6;
	font-weight: bold;
	color: #898f99;
}

table.tb1 td p {
	margin: 18px 18px 0px 18px;
	padding: 0px 0px 0px 0px;
	line-height: 1.6;
}

table.tb1 .bt_n {
	border-top: none;
}

table.tb1 p.small1 {
	margin-top: 5px;
}

/* ------ 文中画像 ------ */

.imgposi-c {
	margin: 10px auto 0;
	text-align: center;
	max-width: 100%;
}

.imgposi-c p {
	text-align: left;
}

.imgposi-r {
	margin: 5px 0 10px 15px;
	text-align: left;
	float: right;
}

.imgposi-l {
	margin: 5px 15px 10px 0;
	text-align: left;
	float: left;
}

.imgposi-r,
.imgposi-l {
	max-width: 100%;
}

.imgposi-c img,
.imgposi-r img,
.imgposi-l img {
	margin-top: 10px;
	max-width: 100%;
	height: auto;
}

/* 見出し直下or見出しなし先頭設定 */

h2.mod_h21 + .imgposi-r,
h2.mod_h21 + .imgposi-l,
h2.mod_h21 + .imgposi-c,
h3.mod_h31 + .imgposi-r,
h3.mod_h31 + .imgposi-l,
h3.mod_h31 + .imgposi-c,
h3.mod_h32 + .imgposi-r,
h3.mod_h32 + .imgposi-l,
h3.mod_h32 + .imgposi-c,
h4.mod_h41 + .imgposi-r,
h4.mod_h41 + .imgposi-l,
h4.mod_h41 + .imgposi-c,
h5.mod_h51 + .imgposi-r,
h5.mod_h51 + .imgposi-l,
h5.mod_h51 + .imgposi-c { 
	margin-top: 10px
}

@media screen and (max-width: 640px) {

  .imgposi-r,
  .imgposi-l {
	float: none;
	margin: 0 auto 15px;
	padding: 0;
	display: block;
  }
  
  .imgposi-c img,
  .imgposi-r img,
  .imgposi-l img {
	width: 100% !important;
}

}

/* ------ アコーディオンボックス ------ */

.mod_accordion1 {
	margin-top: 20px;
	width: 100%;
}

.mod_accordion1 .summary {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 15px;
	align-items: center;
	padding-block: 22px;
	padding-inline: 65px 20px;
	color: #222;
	cursor: pointer;
	background-color: #EBEEF3;
	position: relative;
	
	/* Safariで表示されるデフォルトの三角形アイコンを非表示にします */
	&::-webkit-details-marker {
		display: none;
	}
}

.mod_accordion1 .summary > h2 {
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 1.4;
}

.mod_accordion1 .summary::before {
	content: "Q";
	display: inline-block;
	color: #795E4A;
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: bold;
	position: absolute;
	top: 20px;
	left: 20px;
	width: 30px;
	height:30px;
	border-radius:50%;
	line-height:30px;
	text-align:center;
	background-color: #FFF;
}

.mod_accordion1 .summary > .icon {
	font-size: 24px;
	font-size: 2.4rem;
	display: block;
	position: relative;
	transform-origin: center 15px;
	transition: transform 0.4s;
}
/* アコーディオンが開いた時のスタイル */
/*details[open].mod_accordion1 .summary > .icon {
	transform: rotate(180deg);
}*/
details.is-opened .summary > .icon {
	transform: rotate(180deg);
}

.mod_accordion1 .containerbox {
	display: grid;
	transition: grid-template-rows 0.4s;
}

.mod_accordion1 .containerbox .inner {
	overflow: hidden;
}

.mod_accordion1 .containerbox .answer {
	padding: 15px 20px 17px 65px;
	position: relative;
	border: 20px solid #EBEEF3;
	border-top: none;
	background-color: #FFF;
}

.mod_accordion1 .containerbox .answer::before {
	content: "A";
	display: inline-block;
	color: #FFF;
	font-size: 16px;
	font-size: 1.6rem;
	font-weight: bold;
	position: absolute;
	top: 20px;
	left: 20px;
	width: 30px;
	height:30px;
	border-radius:50%;
	line-height:30px;
	text-align:center;
	background-color: #F27000;
}

.mod_accordion1 .containerbox h3 {
	margin-top: 15px;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1.4;
	font-weight: bold;
}

.mod_accordion1 .containerbox p {
	margin-top: 5px;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1.8;
}

.mod_accordion1 .containerbox p.connection {
	margin-top: 15px;
	color: #898F99;
	line-height: 1.4;
}

.mod_accordion1 .containerbox p.link_content {
	margin-top: 10px;
	line-height: 1.4;
}

.mod_accordion1 .containerbox .answer > p:first-child {
	margin-top: 0;
}

.mod_accordion1 .containerbox .answer > h3:first-child {
	margin-top: 5px;
}

