.elementor-11255 .elementor-element.elementor-element-9a3f7e5{--display:flex;}.elementor-11255 .elementor-element.elementor-element-9a3f7e5.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-11255 .elementor-element.elementor-element-e01a458 p{margin-block-end:0px;}.elementor-11255 .elementor-element.elementor-element-e01a458{color:var( --e-global-color-69b17ac );padding:10px 10px 10px 10px;background-color:var( --e-global-color-secondary );}.elementor-11255 .elementor-element.elementor-element-8271c8a{margin:-30px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-11255 .elementor-element.elementor-element-f1db11e p{margin-block-end:0px;}.elementor-11255 .elementor-element.elementor-element-f1db11e{padding:10px 10px 10px 10px;width:100%;max-width:100%;border-style:solid;border-width:1px 1px 1px 1px;border-radius:10px 10px 10px 10px;}.elementor-11255 .elementor-element.elementor-element-0b2685d p{margin-block-end:0px;}.elementor-11255 .elementor-element.elementor-element-0b2685d{color:var( --e-global-color-69b17ac );padding:10px 10px 10px 10px;background-color:var( --e-global-color-secondary );}.elementor-11255 .elementor-element.elementor-element-aaa3540{padding:20px 20px 20px 20px;background-color:var( --e-global-color-0bc49ae );}.elementor-11255 .elementor-element.elementor-element-230188a{font-size:16px;padding:20px 20px 20px 20px;width:100%;max-width:100%;border-style:solid;border-width:1px 1px 1px 1px;border-radius:10px 10px 10px 10px;}.elementor-11255 .elementor-element.elementor-element-230188a p{margin-block-end:0px;}.elementor-11255 .elementor-element.elementor-element-7a8f73b > .elementor-background-overlay{opacity:0.5;}:root{--page-title-display:none;}@media(max-width:767px){.elementor-11255 .elementor-element.elementor-element-e01a458{font-size:14px;margin:-30px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-11255 .elementor-element.elementor-element-f1db11e{font-size:16px;padding:5px 5px 5px 5px;}.elementor-11255 .elementor-element.elementor-element-230188a{font-size:16px;}}@media(min-width:768px){.elementor-11255 .elementor-element.elementor-element-9a3f7e5{--width:98.455%;}}/* Start custom CSS */.des2 {
  color: #364e96;/*文字色*/
  padding: 0.5em 0.5em 0.5em 0.5em;/*余白*/
  border-top: solid 3px #f0e68c;/*上線*/
  border-bottom: solid 3px #f0e68c;/*下線*/
}

.del {
  text-decoration-line: line-through;
  text-decoration-style:double;
  text-decoration-color: red;
}

.table_hutsu {
    overflow: auto;
    width: 100%;
    height: auto;
    padding: 5px;
    border-collapse: collapse; /* 枠線の重なりを防ぐ */
}

.table_hutsu table {
    margin: 0;
    border-spacing: 0;
    width: 100%; /* テーブルの幅を100%に設定 */
}

.table_hutsu td {
    white-space: nowrap;
    border-top: 2px solid #999;
    border-right: 2px solid #999;
    border-left: 2px solid #999;
    border-bottom: 2px solid #999;
    background: #FFF;
    padding: 5px;
    text-align: center;
    width: 150px; /* 各セルの幅を指定 */
    height: 60px; /* 各セルの高さを指定 */
    vertical-align: middle; /* 垂直方向の中央揃え */
}

.table_hutsu th {
    white-space: nowrap;
    border-top: 2px solid #999;
    border-right: 2px solid #999;
    border-bottom: 2px solid #999;
    background: #f0f8ff; /* ヘッダーの背景色 */
    text-align: center;
    width: 150px; /* 各ヘッダーセルの幅を指定 */
    height: 60px; /* 各ヘッダーセルの高さを指定 */
    vertical-align: middle; /* 垂直方向の中央揃え */
}

.table_hutsu tr:first-child th {
    border-top: 2px solid #999; /* 最初の行の上部境界線 */
}

.table_hutsu th:first-child {
    border-left: 2px solid #999; /* 最初のヘッダーに左枠線を追加 */
}

.table_hutsu tr:first-child th:first-child {
    z-index: 1; /* 最初のヘッダーセルのz-index */
}

/* 特定のヘッダーセルの幅を変更 */
.table_hutsu th:nth-child(2) {
    width: 50px; /* 2番目のヘッダーセルの幅を指定 */
}

span.marker {
background: linear-gradient(transparent 70%, #21ff00 30%);
}

.heading-1 {
    padding: .5em .7em;
    border-left: 5px solid #9e9e9e;
    color: #333333;
}


/*h1用CSS*/
.heading-41 {
    display: flex;
    align-items: center;
    padding: .5em .7em;
    background-color: #f2f2f2;
    color: #333333;
    font-size:30px; 
}

.heading-41::before {
    display: inline-block;
    width: 5px;
    height: 1.5em;
    margin-right: .5em;
    background-color: #9ec5e0;
    content: '';
}

/*h2用CSS*/
.heading-42 {
    display: flex;
    align-items: center;
    padding: .5em .7em;
    background-color: #f2f2f2;
    color: #333333;
    font-size:25px; 
}

.heading-42::before {
    display: inline-block;
    width: 5px;
    height: 1.5em;
    margin-right: .5em;
    background-color: #9ee0c1;
    content: '';
}



.box-text-point {
    position: relative;
    border: 3px solid #033;
    border-radius: 5px;
    margin: 20px 0;
    padding: 20px 20px 5px 20px;
}
.box-text-point::before {
    content: "POINT";
    position: absolute;
    background-color: #ffffff;
    color: #033;
    font-weight: bold;
    left: 20px;
    top: -23px;
    padding: 10px;
}

/*方眼紙*/
.box-003 {
    max-width: 400px;
    margin: 0 auto;
    padding: 1em 1.5em;
    box-shadow: 0 4px 4px rgb(0 0 0 / 5%), 0 2px 3px -2px rgb(0 0 0 / 1%);
    background-image: linear-gradient(transparent calc(100% - 1px), #e6edf3 50%, #e6edf3), linear-gradient(90deg, transparent calc(100% - 1px), #e6edf3 50%, #e6edf3);
    background-size: 15px 15px;
    background-repeat: repeat;
    background-color: #ffffff;
    color: #333333;
}
/*割引*/
.box-010 {
    position: relative;
    max-width: 400px;
    margin: 1.5em auto;
    padding: 2.5em 1.5em 1.5em;
    box-shadow: 0 2px 3px rgb(0 0 0 / 20%);
    background-color: #ffe0e7;
    color: #333333;
}

.box-010 span {
    position: absolute;
    top: -15px;
    transform: translateX(-.3em) rotate(-5deg);
    padding: .5em 2em;
    border-right: 2px dotted rgb(0 0 0 / 10%);
    border-left: 2px dotted rgb(0 0 0 / 10%);
    box-shadow: 0 0 5px rgb(0 0 0 / 20%);
    background-color: rgb(255 255 255 / 40%);
    font-weight: 600;
}

.box-010 p {
    margin: 0;
}

.balloon-009 {
    display: flex;
    justify-content: center;
    align-items: start;
    gap: 0 22px;
}

.balloon-009 img {
    max-width: 70px;
    height: 100%;
    border: 3px solid #f2f2f2;
    border-radius: 50%;
}

.balloon-009 p {
    position: relative;
    max-width: auto;
    margin: 3px 0 0;
    padding: .8em 1em;
    border-radius: 5px;
    background-color: #f2f2f2;
    color: #333333;
}

.balloon-009 p::before {
    position: absolute;
    left: -15px;
    width: 15px;
    height: 30px;
    background-color: #f2f2f2;
    clip-path: polygon(0 50%, 100% 0, 100% 100%);
    content: '';
}

/*冠付見出し*/
.heading-35 {
    display: flex;
    align-items: center;
    gap: 0 7px;
    color: #333333;
}

.heading-35::before {
    width: 1.25em;
    height: 1.25em;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M2.00488 19H22.0049V21H2.00488V19ZM2.00488 5L7.00488 8L12.0049 2L17.0049 8L22.0049 5V17H2.00488V5Z' fill='%23ffb500'%3E%3C/path%3E%3C/svg%3E");
    content: '';
}

/*付箋*/
.fusen-2 {
    display: inline-block;
    position: relative;
    padding: .5em 1em;
    border-right: 27px solid #d02569;
    background-color: #f5f5f5;
    color: #333333;
}

.fusen-2::before {
    position: absolute;
    bottom: 2px;
    right: -20px;
    z-index: -1;
    transform: rotate(5deg);
    width: 100%;
    height: 50%;
    background-color: #d0d0d0;
    content: "";
    filter: blur(4px);
}

/*ポイントボックス*/
.cp_point {
	position: relative;
	margin: 30px 0 30px;
	padding: 25px 20px 25px 40px;
	border: 1px dotted #1b2538;
	background-color: #f8fdff;
	border-radius: 8px;
}
.cp_point::before {
	position: absolute;
	top: -1em;
	left: 1em;
	content: attr(title);
	padding: .4em 1em 1em 2.5em;
	font-size: 90%;
	font-weight: bold;
	font-style: italic;
	color: #fff;
	height: 40px;
	background-color: #1b2538;
	border-radius: 5px;
}
.cp_point::after {
	position: absolute;
	top: -1em;
	left: 1.3em;
	font-family: FontAwesome;
	content: "\f046";
	padding: .5em .5em 0 0;
	font-size: 18px;
	color: #fff;
	line-height: 25px;
	text-align: center;
}
.cp_point li {
	position: relative;
	list-style-type: none;
}
.cp_point li::before {
	position: absolute;
	top: .25em;
	left: -1em;
	font-family: FontAwesome;
	content: "\f0da ";
	color: #333;
}

/*ポイントボックス*/

/*モバイル*/
@media (max-width: 700px) {
.heading-41 {
 font-size:20px; 
}
.heading-42 {
 font-size:20px; 
}
.heading-35 {
 font-size:18px;
}
.balloon-009 p {
  font-size:14px;
    
}
}/* End custom CSS */