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


----------------------------------------- */

/*	共通設定
----------------------------------------- */
/* Float After ClearFix ----------------- */
.clearFix::after {
	clear: both;
	content: "";
	display: block;
	height: 0;
	visibility: hidden;
}
/* リンク付きのイメージのアニメーション ------- */
a img {
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
a:link img,
a:visited img,
a:active img {
	opacity: 1.0;
}
a:hover img {
	opacity: 0.5;
}
/* 全ページ共通のテキストリンクスタイル ------- */
a:link,
a:visited,
a:active {
	color: #79B571;
	text-decoration: underline;	
	outline: 0;
}
a:hover {
	color: #1F7BC0;
	text-decoration: none;	
	outline: 0;
    transition: .3s;
}

span.rem {
    color: #f00;
}


/*	ページ共通設定
----------------------------------------- */
body {
	background-color: #fff;
    color: #333;
	/* font-family: "メイリオ", Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro', Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; */
    font-size: 14px;
	height: auto;
	min-width: 320px;
	position: relative;
	width: 100%;
}
/* Web Font (Google Noto)
---------------------------------------- */
.wf-notosansjapanese { font-family: 'Noto Sans JP'; }

/* Web Font (Google sawarabi mincho)
---------------------------------------- */
.wf-sawarabimincho { font-family: "Sawarabi Mincho"; }

.f_mincho {
    font-family: Georgia, "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}


/* H Tag
---------------------------------------- */
h2 {
    align-items: center;
    border-bottom: 2px solid #336600;
    color: #000;
    display: -webkit-flex;
    display: flex;
    font-size: 18px;
    padding: 0 0 5px 0;
    position: relative;
    line-height: 1.25;
    margin-bottom: 1em;
    text-align: left;
}
h2::before {
    background-image: url(../img/common/h2-ico.png);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    content: "";
    display: inline-block;
    width: 36px;
    height: 42px;
    margin-right: 8px;
}
h2 > span { flex: 1; }

h3 {
    border-bottom: 1px solid #c7dcb2;
    color: #387000;
    display: block;
    margin-bottom: 16px;
    padding: 0 0 5px 30px;
    position: relative;
}
h3::before {
    color: #c7dcb2;
    content: "\f111";    
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    display: inline-block;
    position: absolute;
        left: 0;
        top: 5px;
}


/* PC/SP表示切り替えClass (PC Mode)
---------------------------------------- */
.pc { display: block; }
.sp { display: none; }
.pcFlex { display: -webkit-flex; display: flex; }
.spFlex { display: none; }

/* header
---------------------------------------- */
header {
    height: 88px;
    margin: 0 auto;
    padding: 0 0 8px 0;
    position: relative;
    width: 100%;
}
header .headerIn {
    align-items: center;
    display: -webkit-flex;
    display: flex;
    flex-wrap: nowrap;
    height: 100%;
    justify-content: flex-start;
    margin: 0 auto;
    max-width: 1200px;
    padding: 7px 0 0 0;
    width: 100%;
}
header .headerIn .hLogo {
    /* max-width: 270px; */
    max-width: 200px;
    margin: 0 16px 0 0;
    padding: 0;
    width: 100%;
}
header .headerIn .hLogo a {
    text-decoration: none;
    outline: 0;
}

header .headerIn .pcH {
    color: #fff;
    font-size: 14px;
    margin-right: 10px;
    line-height: 1.25;
}
header .headerIn .botWrap {
    align-items: center;
    display: -webkit-flex;
    display: flex;
    flex: 1;
    justify-content: flex-end;
    height: 100%;
}
header .headerIn .botWrap .botA {
    font-size: 18px;
    text-align: center;
    line-height: 1.5;
    height: 50px;
    width: 220px;
}
header .headerIn .botWrap .botB {
    margin-left: 10px;
    width: 200px;
    height: 50px;
}
header .headerIn .botWrap .botA span > span {
    display: block;
    font-size: 12px;
    text-align: center;
    width: 100%;
}

/* ヘッダー部ボタン部 ---------------------- */
header .headerIn .botWrap .botA a {
    align-items: center;
    background-color: #D93600;
    background-color: #ffbb77;
    
    border-radius: 10px;
    color: #fff;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    height: 100%;
    justify-content: center;
    line-height: 1.5;
    position: relative;
    text-decoration: none;
    width: 100%;
}
header .headerIn .botWrap .botA a span.free {
    display: block;
    text-align: center;
    width: 100%;
}
header .headerIn .botWrap .botA a span.free span.desc {
    font-size: 12px;
    display: block;
    width: 100%;
}
header .headerIn .botWrap .botA a::after {
    content: "\f0da";
    display: block;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    position: absolute;
        right: 10px;
        top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

/* Line@ボタン --------------------------- */
header .headerIn .botWrap .botB a {
    align-items: center;
    background-color: #fff;
    border-radius: 10px;
    color: #000;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    height: 100%;
    justify-content: center;
    line-height: 1.5;
    position: relative;
    text-decoration: none;
    width: 100%;
}

/* Navigator in header
---------------------------------------- */
nav {
    background-color: rgba(255, 255, 255, 0.3);
    margin: 0;
    padding: 0;
    width: 100%;
}
nav .navIn {
    margin: 0 auto;
    max-width: 1200px;
    padding: 0;
    width: 100%;
}
ul#glm {
    display: table;
    list-style: none;
    margin: 0;
    padding: 0;
    table-layout: fixed;
    width: 100%;
}
ul#glm li {
    display: table-cell;
    text-align: center;
}

ul#glm li a {
    color: #fff;
    display: block;
    font-size: 16px;
    margin: 0 auto;
    padding: 13px 0;
    position: relative;
    text-decoration: none;
    width: 100%;
}
ul#glm li a::after {
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
    content: "";
    background-color: #fff;
    border-radius: 5px;
    height: 5px;
    width: 80%;
    position: absolute;
        bottom: -2.5px;
        left: 10%;
    opacity: 0;
}
ul#glm li a.active::after,
ul#glm li a:hover::after {
    opacity: 1.0;
}



/* section
---------------------------------------- */

/* article
---------------------------------------- */

/* footer
---------------------------------------- */
footer {
    margin: 40px auto 0 auto;
    padding: 0;
    width: 100%;
} 
footer .footerIn {
    margin: 0 auto 20px auto;
    max-width: 1200px;
    padding: 0;
    text-align: center;
    width: 100%;
}

.copyright {
    background-color: #468C00;
    color: #fff;
    font-size: 12px;
    margin: 0;
    padding: 0;
    text-align: center;
    width: 100%;
}
.copyright .copyIn {
    margin: 0 auto;
    max-width: 1200px;
    padding: 8px 0;
    width: 100%;
}


/* フッター部コンテンツ --------------------- */
ul.footerList {
    border-left: 1px solid #468C00;
    display: table;
    table-layout: fixed;
    list-style: none;
    margin: 20px auto 0 auto;
    padding: 0;
    width: 100%;
}
ul.footerList li {
    border-right: 1px solid #468C00;
    color: #468C00;
    display: table-cell;
}
ul.footerList li a {
    color: #000;
    display: block;
    padding: 8px 0;
    text-decoration: none;
    width: 100%;
}
ul.footerList li a:hover {
    background-color: #468C00;
    color: #fff;
}

/* ページの先頭に戻る ----------------------- */
#gotop {
    position: fixed;
        bottom: 20px;
        right: 20px;
    height: 100px;
    width: 70px;
}
#gotop a {
    color: #000;
    display: block;
    height: 100%;
    width: 100%;
    text-align: center;
    text-decoration: none;
}
#gotop a:click img,
#gotop a:visited img,
#gotop a:active img {
    opacity: 1.0;
}
#gotop a:hover img {
    opacity: 1.0;
}

/* カレンダー部詳細
------------------------------------------ */
.calTitle {
    align-items: center;
    display: -webkit-flex;
    display: flex;
    margin: 0 0 5px 0;
    padding: 0;
    width: 100%;
}
.calTitle div.ym {
    color: #336600;
    font-size: 24px;
    font-weight: bold;
}
.calTitle div.ym > span {
    font-size: 16px;
    padding: 0 2px;
}
.calTitle div.bot {
    margin-left: 5px;
    height: 100%;
}
.calTitle div.bot ul {
    align-items: center;
    display: -webkit-flex;
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
    height: 100%;
}
.calTitle div.bot ul li {
    margin-right: 5px;
    width: 60px;
}
.calTitle div.bot ul li a,
.calTitle div.bot ul li input[type="button"] {
    align-items: center;
    background: rgb(221,221,221);
    background: linear-gradient(180deg, rgba(221,221,221,1) 0%, rgba(254,254,254,1) 100%);
    border: 1px solid #bbb;
    border-radius: 8px;
    color: #333;
    display: -webkit-flex;
    display: flex;
    font-size: 12px;
    height: 26px;
    justify-content: center;
    opacity: 1.0;
    text-align: center;
    text-decoration: none;
    width: 100%;
}

.calTitle div.bot ul li a:hover,
.calTitle div.bot ul li input[type="button"]:hover {
    opacity: 0.5;
}


table.calender {
    background-color: #fff;
    margin: 0;
    padding: 0;
    table-layout: fixed;
    width: 100%;
}
table.calender th,
table.calender td {
    border: 1px solid #ccc;
}
table.calender th > div,
table.calender td > div {
    align-items: flex-end;
    display: -webkit-flex;
    display: flex;
    height: 100%;
    justify-content: center;
    position: relative;
    width: 100%;
}
table.calender th > div {
    align-items: center;
}
table.calender th {
    background-color: #468C00;
    color: #fff;
    font-weight: bold;
    height: 30px;
}
table.calender td {
    vertical-align: bottom;
    height: 60px;
}
table.calender td span {
    font-size: 14px;
    font-weight: bold;
    position: absolute;
        top: 2px;
        left: 2px;
}
table.calender td.sat {
    background-color: #e0ffff;
    color: #00f;
}
table.calender td.sun,
table.calender td.holy {
    background-color: #ffecea;
    color: #f00;
}
table.calender td.toDay {
    background-color: #ffffe0;
}
table.calender td.backward {
    background-color: #f9f9f9;
}

table.calender td div.in {
    text-align: center;
}

#calNewsWrap .cnIn .calWrap table.calender td p.pat {
    font-size: 12px;
    line-height: 1.25;
    margin-bottom: 3px;
}
#calNewsWrap .cnIn .calWrap table.calender td.closeRed p.pat {
    color: #f00;
    line-height: 1.0;
}

table.calender td.hly {
    background-color: #ffecea;
    color: #f00;
}

table.calender td.backward {
    color: #bbb;
}




/* 時間割のテーブル詳細
------------------------------------------ */
.time-ttl {
    background-color: #c7dcb2;
    color: #336600;
    margin-bottom: 5px;
    padding: 5px 8px;
}

table.time-table {
    margin: 0 auto 5px auto;
    padding: 0;
    width: 100%;
}
table.time-table th,
table.time-table td {
    border: 1px solid #ccc;
    padding: 5px 8px;
}
table.time-table th {
    background-color: #468C00;
    color: #fff;
}


























/* ---------------------------------------
    1200px以下レスポンシブ
---------------------------------------- */
@media only screen and (max-width : 1200px) {
    
    /* header
    ---------------------------------------- */
    header {
        padding: 0 10px;
        max-width: inherit;
    }
    
    /* NAVIGATOR
    ---------------------------------------- */
    nav .navIn {
        max-width: inherit;
    }

    /* footer
    ---------------------------------------- */
    footer .footerIn {
        max-width: inherit;
        padding: 0 10px;
    }
    
    /* copyright
    ---------------------------------------- */
    .copyright .copyIn {
        max-width: inherit;
        padding: 0 10px;
    }

}

/* ---------------------------------------
    900px以下レスポンシブ
---------------------------------------- */
@media only screen and (max-width : 1000px) {
    
    ul#glm li a {
        font-size: 14px;
        padding: 15px 0;
    }

}


/* ---------------------------------------
    767px以下レスポンシブ
---------------------------------------- */
@media only screen and (max-width : 767px) {
    
    /* H Tag
    ---------------------------------------- */
    h2 { font-size: 16px; }
    
    /* PC/SP表示切り替えClass (PC Mode)
    ---------------------------------------- */
    .pc { display: none; }
    .sp { display: block; }
    .pcFlex { display: none; }
    .spFlex { display: -webkit-flex; display: flex; }
    
    /* header 
    ---------------------------------------- */
    header {
        padding-top: 5px;
        padding-bottom: 14px;
        height: auto;
    }
    header .headerIn .hLogo {
        max-width: 200px;
        margin: 0 10px 0 0;
    }
    header .spH {
        font-size: 9.5px;
        color: #fff;
        line-height: 1.25;
        text-align: center;
    }
    header .headerIn .botWrap .botA,
    header .headerIn .botWrap .botB {
        display: none;
    }
    header .headerIn .botWrap .spMenu {
        background-color: rgba(255, 255, 255, 0.25);
        margin-left: 5px;
        width: 50px;
        height: 50px;
    }
    
    /* SP用ハンバーガーメニュー */
	.menu-trigger,
	.menu-trigger span {
		display: inline-block;
		transition: all .4s;
		box-sizing: border-box;
	}
	.menu-trigger {
		cursor: pointer;
		margin-top: 10px;
		padding-left: 10px;
		position: relative;
		width: 40px;
		height: 28px;
	}
	.menu-trigger span {
		background-color: #fff;
		border-radius: 4px;
		height: 4px;
			left: 5px;
		position: absolute;
		width: 100%;
	}
		
	.menu-trigger span:nth-of-type(1) {
		top: 0;
	}
	.menu-trigger span:nth-of-type(2) {
		top: 12px;
	}
	.menu-trigger span:nth-of-type(3) {
		bottom: 0;
	}

	.menu-trigger.active span:nth-of-type(1) {
		-webkit-transform: translateY(12px) rotate(-315deg);
		transform: translateY(12px) rotate(-315deg);
	}
	.menu-trigger.active span:nth-of-type(2) {
		opacity: 0;
	}
	.menu-trigger.active span:nth-of-type(3) {
		-webkit-transform: translateY(-12px) rotate(315deg);
		transform: translateY(-12px) rotate(315deg);
	}
    
    /* Navigator in header
    ---------------------------------------- */
    nav {
        background-color: rgba(255, 255, 255, 1.0);
        position: absolute;
            top: 85px;
            left: 0;
        z-index: 999;
    }
    nav .navIn {
        margin: 0 auto;
        padding: 0;
        width: 100%;
    }
    ul#glm {
        display: none;
        table-layout: inherit;
    }
    ul#glm li {
        border-bottom: 1px dotted #336600;
        display: block;
        text-align: left;
    }

    ul#glm li a {
        color: #336600;
        font-size: 14px;
        padding: 15px 10px;
    }
    
    ul#glm li a::after {
        content: "\f0da";
        display: block;
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        background-color: inherit;
        border-radius: 0;
        height: auto;
        width: auto;
        position: absolute;
            top: 50%;
            right: 10px;
            bottom: inherit;
            left: inherit;
        opacity: 1.0;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        
    }
    
    /* footer 
    ---------------------------------------- */
    footer {
        margin: 20px auto 0 auto;
    }
    
    footer .footerIn {
        max-width: inherit;
        margin-bottom: 0;
        padding: 0;
    }
    
    /* Footer Contents */
    ul.footerList {
        border-bottom: 1px solid #bbb;
        border-left: 0;
        display: block;
        table-layout: inherit;
    }
    ul.footerList li {
        background-color: #F0F0E1;
        border-right: 0;
        border-top: 1px solid #bbb;
        display: block;
    }
    ul.footerList li a {
        color: #468C00;
        padding: 15px 0 15px 15px;
        position: relative;
        text-align: left;
    }
    ul.footerList li a::after {
        content: "\f0da";
        display: block;
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        position: absolute;
            top: 50%;
            right: 15px;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
    }
    ul.footerList li a:hover {
        background-color: inherit;
        color: #468C00;
    }
    
    /* ページ先頭に戻る 
    ---------------------------------------- */
    #gotop {
        position: inherit;
            bottom: 0;
            right: 0;
        height: 120px;
        padding-top: 10px;
        width: 80px;
        margin: 0 auto;
    }
    #gotop a:hover {
        opacity: 1.0;
    }
    
    /* カレンダー 詳細
    ------------------------------------------ */
    .calTitle div.bot ul li {
        width: 50px;
    }
    #calNewsWrap .cnIn .calWrap table.calender td p.pat {
        font-size: 10px;
    }
    .calTitle div.bot ul li a:hover,
    .calTitle div.bot ul li input[type="button"]:hover {
        opacity: 1.0;
    }


}






/* ---------------------------------------
    480px以下レスポンシブ
---------------------------------------- */
@media only screen and (max-width : 480px) {
    /* カレンダー部
    ------------------------------------------ */
    table.calender td p.pat {
        font-size: 10px;
    }
}



/* テキスト配色
---------------------------------------- */
.red { color: #f00; }
.blue { color: #00f; }


/* 幅スタイル
---------------------------------------- */

/*--------------------------------------------------------
	ブロック・テキスト配置用共通設定
--------------------------------------------------------*/
/*文字の横位置*/
.al-l{ text-align: left; }
.al-r{ text-align: right; }
.al-c{ text-align: center; }

/*文字の縦位置*/
.vl-t{ vertical-align: top!important; }/*上寄せ*/
.vl-m{ vertical-align: middle!important; }/*中央寄せ*/
.vl-b{ vertical-align: bottom!important; }/*下寄せ*/

/* 下マージンリセット */
.no-mb { margin-bottom: 0 !important; }

/*周りのブロックからの距離（margin）*/
.m0{ margin: 0!important; }/*周りからのmarginを0に*/
.m0-t{ margin-top: 0!important; }/*上からのmarginを0に*/
.m0-r{ margin-right: 0!important; }/*右からのmarginを0に*/
.m0-b{ margin-bottom: 0!important; }/*下からのmarginを0に*/
.m0-l{ margin-left: 0!important; }/*左からのmarginを0に*/

.m5{ margin: 5px!important; }
.m5-t{ margin-top: 5px!important; }
.m5-r{ margin-right: 5px!important; }
.m5-b{ margin-bottom: 5px!important; }
.m5-l{ margin-left: 5px!important; }

.m10{ margin: 10px!important; }
.m10-t{ margin-top: 10px!important; }
.m10-r{ margin-right: 10px!important; }
.m10-b{ margin-bottom: 10px!important; }
.m10-l{ margin-left: 10px!important; }

.m15{ margin: 15px!important; }
.m15-t{ margin-top: 15px!important; }
.m15-r{ margin-right: 15px!important; }
.m15-b{ margin-bottom: 15px!important; }
.m15-l{ margin-left: 15px!important; }

.m20{ margin: 20px!important; }
.m20-t{ margin-top: 20px!important; }
.m20-r{ margin-right: 20px!important; }
.m20-b{ margin-bottom: 20px!important; }
.m20-l{ margin-left: 20px!important; }

.m25{ margin: 25px!important; }
.m25-t{ margin-top: 25px!important; }
.m25-r{ margin-right: 25px!important; }
.m25-b{ margin-bottom: 25px!important; }
.m25-l{ margin-left: 25px!important; }

.m30{ margin: 30px!important; }
.m30-t{ margin-top: 30px!important; }
.m30-r{ margin-right: 30px!important; }
.m30-b{ margin-bottom: 30px!important; }
.m30-l{ margin-left: 30px!important; }

.m40{ margin: 40px!important; }
.m40-t{ margin-top: 40px!important; }
.m40-r{ margin-right: 40px!important; }
.m40-b{ margin-bottom: 40px!important; }
.m40-l{ margin-left: 40px!important; }

.m50{ margin: 50px!important; }
.m50-t{ margin-top: 50px!important; }
.m50-r{ margin-right: 50px!important; }
.m50-b{ margin-bottom: 50px!important; }
.m50-l{ margin-left: 50px!important; }

.m60{ margin: 60px!important; }
.m60-t{ margin-top: 60px!important; }
.m60-r{ margin-right: 60px!important; }
.m60-b{ margin-bottom: 60px!important; }
.m60-l{ margin-left: 60px!important; }

.m70{ margin: 70px!important; }
.m70-t{ margin-top: 70px!important; }
.m70-r{ margin-right: 70px!important; }
.m70-b{ margin-bottom: 70px!important; }
.m70-l{ margin-left: 70px!important; }

.m80{ margin: 80px!important; }
.m80-t{ margin-top: 80px!important; }
.m80-r{ margin-right: 80px!important; }
.m80-b{ margin-bottom: 80px!important; }
.m80-l{ margin-left: 80px!important; }

.m90{ margin: 90px!important; }
.m90-t{ margin-top: 90px!important; }
.m90-r{ margin-right: 90px!important; }
.m90-b{ margin-bottom: 90px!important; }
.m90-l{ margin-left: 90px!important; }

.m100{ margin: 100px!important; }
.m100-t{ margin-top: 100px!important; }
.m100-r{ margin-right: 100px!important; }
.m100-b{ margin-bottom: 100px!important; }
.m100-l{ margin-left: 100px!important; }

.m120{ margin: 120px!important; }
.m120-t{ margin-top: 120px!important; }
.m120-r{ margin-right: 120px!important; }
.m120-b{ margin-bottom: 120px!important; }
.m120-l{ margin-left: 120px!important; }

.m150{ margin: 150px!important; }
.m150-t{ margin-top: 150px!important; }
.m150-r{ margin-right: 150px!important; }
.m150-b{ margin-bottom: 150px!important; }
.m150-l{ margin-left: 150px!important; }

.m200{ margin: 200px!important; }
.m200-t{ margin-top: 200px!important; }
.m200-r{ margin-right: 200px!important; }
.m200-b{ margin-bottom: 200px!important; }
.m200-l{ margin-left: 200px!important; }

.m300{ margin: 300px!important; }
.m300-t{ margin-top: 300px!important; }
.m300-r{ margin-right: 300px!important; }
.m300-b{ margin-bottom: 300px!important; }
.m300-l{ margin-left: 300px!important; }


/*周りのブロックからの距離（padding）*/
.p0{ padding: 0!important; }
.p0-t{ padding-top: 0!important; }
.p0-r{ padding-right: 0!important; }
.p0-b{ padding-bottom: 0!important; }
.p0-l{ padding-left: 0!important; }

.p5{ padding: 5px!important; }
.p5-t{ padding-top: 5px!important; }
.p5-r{ padding-right: 5px!important; }
.p5-b{ padding-bottom: 5px!important; }
.p5-l{ padding-left: 5px!important; }

.p10{ padding: 10px!important; }
.p10-t{ padding-top: 10px!important; }
.p10-r{ padding-right: 10px!important; }
.p10-b{ padding-bottom: 10px!important; }
.p10-l{ padding-left: 10px!important; }

.p15{ padding: 15px!important; }
.p15-t{ padding-top: 15px!important; }
.p15-r{ padding-right: 15px!important; }
.p15-b{ padding-bottom: 15px!important; }
.p15-l{ padding-left: 15px!important; }

.p20{ padding: 20px!important; }
.p20-t{ padding-top: 20px!important; }
.p20-r{ padding-right: 20px!important; }
.p20-b{ padding-bottom: 20px!important; }
.p20-l{ padding-left: 20px!important; }

.p25{ padding: 25px!important; }
.p25-t{ padding-top: 25px!important; }
.p25-r{ padding-right: 25px!important; }
.p25-b{ padding-bottom: 25px!important; }
.p25-l{ padding-left: 25px!important; }

.p30{ padding: 30px!important; }
.p30-t{ padding-top: 30px!important; }
.p30-r{ padding-right: 30px!important; }
.p30-b{ padding-bottom: 30px!important; }
.p30-l{ padding-left: 30px!important; }

.p40{ padding: 40px!important; }
.p40-t{ padding-top: 40px!important; }
.p40-r{ padding-right: 40px!important; }
.p40-b{ padding-bottom: 40px!important; }
.p40-l{ padding-left: 40px!important; }

.p50{ padding: 50px!important; }
.p50-t{ padding-top: 50px!important; }
.p50-r{ padding-right: 50px!important; }
.p50-b{ padding-bottom: 50px!important; }
.p50-l{ padding-left: 50px!important; }

.p60{ padding: 60px!important; }
.p60-t{ padding-top: 60px!important; }
.p60-r{ padding-right: 60px!important; }
.p60-b{ padding-bottom: 60px!important; }
.p60-l{ padding-left: 60px!important; }

.p70{ padding: 70px!important; }
.p70-t{ padding-top: 70px!important; }
.p70-r{ padding-right: 70px!important; }
.p70-b{ padding-bottom: 70px!important; }
.p70-l{ padding-left: 70px!important; }

.p80{ padding: 80px!important; }
.p80-t{ padding-top: 80px!important; }
.p80-r{ padding-right: 80px!important; }
.p80-b{ padding-bottom: 80px!important; }
.p80-l{ padding-left: 80px!important; }

.p90{ padding: 90px!important; }
.p90-t{ padding-top: 90px!important; }
.p90-r{ padding-right: 90px!important; }
.p90-b{ padding-bottom: 90px!important; }
.p90-l{ padding-left: 90px!important; }

.p100{ padding: 100px!important; }
.p100-t{ padding-top: 100px!important; }
.p100-r{ padding-right: 100px!important; }
.p100-b{ padding-bottom: 100px!important; }
.p100-l{ padding-left: 100px!important; }

/*フォントの装飾*/
.b{ font-weight: bold!important; } /*太字*/
.txtBld { font-weight: bold!important; } /*太字*/
.normal{ font-weight: normal!important; }/*太字を解除*/

/*フォントサイズの設定*/
.big{ font-size: 1.2em!important; }
.big2{ font-size: 1.5em!important; }
.big3{ font-size: 1.8em!important; }
.small{ font-size: 0.8em!important; }

.f08em{ font-size: 0.8em; }
.f09em{ font-size: 0.9em; }
.f10em{ font-size: 1.0em; }
.f11em{ font-size: 1.1em; }
.f12em{ font-size: 1.2em; }
.f13em{ font-size: 1.3em; }
.f14em{ font-size: 1.4em; }
.f15em{ font-size: 1.5em; }
.f16em{ font-size: 1.6em; }
.f17em{ font-size: 1.7em; }
.f18em{ font-size: 1.8em; }
.f19em{ font-size: 1.9em; }
.f20em{ font-size: 2.0em; }
.f21em{ font-size: 2.1em; }
.f22em{ font-size: 2.2em; }
.f23em{ font-size: 2.3em; }
.f24em{ font-size: 2.4em; }
.f25em{ font-size: 2.5em; }
.f26em{ font-size: 2.6em; }
.f27em{ font-size: 2.7em; }
.f28em{ font-size: 2.8em; }
.f29em{ font-size: 2.9em; }
.f30em{ font-size: 3.0em; }

.f8pt{ font-size: 8.5pt; }
.f9pt{ font-size: 9.0pt; }
.f10pt{ font-size: 10pt; }
.f11pt{ font-size: 11pt; }
.f12pt{ font-size: 12pt; }
.f13pt{ font-size: 13pt; }
.f14pt{ font-size: 14pt; }
.f15pt{ font-size: 15pt; }
.f16pt{ font-size: 16pt; }
.f17pt{ font-size: 17pt; }
.f18pt{ font-size: 18pt; }
.f19pt{ font-size: 19pt; }
.f20pt{ font-size: 20pt; }
.f21pt{ font-size: 21pt; }
.f22pt{ font-size: 22pt; }
.f23pt{ font-size: 23pt; }
.f24pt{ font-size: 24pt; }

/*フォントの色設定*/
.red{ color: #e53935!important; }/*赤*/
.blue{ color: #0000dd!important; }/*青*/
.green{ color: #4caf50!important; }/*緑*/
.yellow{ color: #ffff00!important; }/*黄*/
.navy{ color: #3f51b5!important; }/*紺*/
.orange{ color: #ff9800!important; }/*橙*/
.pink{ color: #ec407a!important; }/*ピンク*/
.purple{ color: #9c27b0!important; }/*紫*/
.olive{ color: #808000!important; }/*オリーブ*/
.lime{ color: #00ff00!important; }/*黄緑*/
.aqua{ color: #00bcd4!important; }/*水色*/
.black{ color: #000!important; }/*黒*/
.gray{ color: #ccc!important; }/*灰*/
.white{ color: #fff!important; }/*白*/
.brown{ color: #6d4c33!important; }/*茶*/

/*マーカー表示（背景に着色）*/
.box-yellow,
.box-orange,
.box-pink,
.box-lime,
.box-gray{ padding: 2px; }

.box-yellow{ background-color: #ff6; }/*黄*/
.box-orange{ background-color: #f90; }/*橙*/
.box-pink{ background-color: #ffccff; }/*ピンク*/
.box-lime{ background-color: #9f9; }/*黄緑*/
.box-gray{ background-color: #ccc; }/*灰*/


/*行間の設定*/
.lh10{ line-height: 1.0!important; }
.lh11{ line-height: 1.1!important; }
.lh12{ line-height: 1.2!important; }
.lh13{ line-height: 1.3!important; }
.lh14{ line-height: 1.4!important; }
.lh15{ line-height: 1.5!important; }
.lh16{ line-height: 1.6!important; }
.lh17{ line-height: 1.7!important; }
.lh18{ line-height: 1.8!important; }
.lh19{ line-height: 1.9!important; }
.lh20{ line-height: 2.0!important; }

/*横幅を指定*/
.w05{ width: 5%; }
.w10{ width: 10%; }
.w15{ width: 15%; }
.w20{ width: 20%; }
.w25{ width: 25%; }
.w30{ width: 30%; }
.w35{ width: 35%; }
.w40{ width: 40%; }
.w45{ width: 45%; }
.w48{ width: 48%; }
.w50{ width: 50%; }
.w55{ width: 55%; }
.w60{ width: 60%; }
.w65{ width: 65%; }
.w70{ width: 70%; }
.w75{ width: 75%; }
.w80{ width: 80%; }
.w85{ width: 85%; }
.w90{ width: 90%; }
.w95{ width: 95%; }
.w100{ width: 100%; }











