@charset "UTF-8";
* { margin: 0; padding: 0; border: none; box-sizing: border-box !important; list-style-type: none; }

::selection { background: #2540A2; color: white; }

::-moz-selection { background: #2540A2; color: white; }

/* Text-level semantics */
/* ============================================ */
a { background-color: transparent; text-decoration: none; color: inherit; }

a:hover { background-color: transparent; text-decoration: none; text-decoration: none; }

/* Vertical rhythm */
/* ============================================ */
p, table, blockquote, address, pre, iframe, form, figure, dl { margin: 0; }

/* Headings */
/* ============================================ */
h1, h2, h3, h4, h5, h6 { font-size: inherit; font-weight: inherit; margin: 0; }

/* Lists (enumeration) */
/* ============================================ */
ul, ol { margin: 0; padding: 0; list-style: none; }

/* Lists (definition) */
/* ============================================ */
dt { font-weight: bold; }

dd { margin-left: 0; }

/* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: */
/* :::::::::::::::::::::::::: 1.Basic setteing ::::::::::::::::::::::::: */
/* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: */
html, body { font-family: "Noto Sans JP", sans-serif; line-height: 1.8; font-size: 18px; color: #222222; }

@media screen and (max-width: 677px) { html, body { font-size: 3vw; } }

.ming { font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", "Noto Serif JP", serif; }

.gothic { font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif; }

.noto_sans { font-family: "Noto Sans JP", sans-serif; }

.noto_serif { font-family: "Noto Serif JP", serif; }

.mont { font-family: "Montserrat", sans-serif; }

.ship { font-family: "Shippori Mincho", serif; }

.pc { display: block !important; }

.sp { display: none !important; }

.pc-inline { display: inline !important; }

.sp-inline { display: none !important; }

@media screen and (max-width: 767px) { .pc { display: none !important; }
		.sp { display: block !important; }
		.pc-inline { display: none !important; }
		.sp-inline { display: inline !important; } }

/* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: */
/* :::::::::::::::::::::::::: 2.Style setteing ::::::::::::::::::::::::: */
/* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: */
.w_10 { width: 10% !important; }

.w_20 { width: 20% !important; }

.w_30 { width: 30% !important; }

.w_40 { width: 40% !important; }

.w_50 { width: 50% !important; }

.w_60 { width: 60% !important; }

.w_70 { width: 70% !important; }

.w_80 { width: 80% !important; }

.w_90 { width: 90% !important; }

.w_100 { width: 100% !important; }

.font_06 { font-size: 0.6rem !important; }

.font_07 { font-size: 0.7rem !important; }

.font_08 { font-size: 0.8rem !important; }

.font_09 { font-size: 0.9rem !important; }

.font_10 { font-size: 1rem !important; }

.font_11 { font-size: 1.1rem !important; }

.font_12 { font-size: 1.2rem !important; }

.font_14 { font-size: 1.4rem !important; }

.font_16 { font-size: 1.6rem !important; }

.font_18 { font-size: 1.8rem !important; }

.font_20 { font-size: 2rem !important; }

.font_22 { font-size: 2.2rem !important; }

.font_25 { font-size: 2.5rem !important; }

.font_30 { font-size: 3rem !important; }

.font_35 { font-size: 3.5rem !important; }

.font_40 { font-size: 4rem !important; }

.bg_main { background-color: #62A962 !important; }

.bg_sub { background-color: #E8F5E8 !important; }

.bg_sub_90 { background-color: rgba(98, 169, 98, 0.9) !important; }

.bg_sub_80 { background-color: rgba(98, 169, 98, 0.8) !important; }

.bg_sub_70 { background-color: rgba(98, 169, 98, 0.7) !important; }

.bg_sub_60 { background-color: rgba(98, 169, 98, 0.6) !important; }

.bg_sub_50 { background-color: rgba(98, 169, 98, 0.5) !important; }

.bg_sub_40 { background-color: rgba(98, 169, 98, 0.4) !important; }

.bg_sub_30 { background-color: rgba(98, 169, 98, 0.3) !important; }

.bg_sub_20 { background-color: rgba(98, 169, 98, 0.2) !important; }

.bg_sub_10 { background-color: rgba(98, 169, 98, 0.1) !important; }

.bg_sub_light { background-color: rgba(98, 169, 98, 0.03) !important; }

.bg_white { background-color: #ffffff !important; }

.bg_black { background-color: #000000 !important; }

.bg_gray { background-color: #F9F9F9 !important; }

.bg_transparent_black { background-color: rgba(255, 255, 255, 0.7) !important; }

.bg_transparent_white { background-color: rgba(255, 255, 255, 0.7) !important; }

.t_main { color: #2540A2 !important; }

.t_sub { color: #EE4328 !important; }

.t_white { color: #ffffff !important; }

.t_black { color: #000000 !important; }

.t_gray { color: #EDEDEA !important; }

.t_red { color: #f00 !important; }

.lh_10 { line-height: 1 !important; }

.lh_12 { line-height: 1.2 !important; }

.lh_14 { line-height: 1.4 !important; }

.lh_16 { line-height: 1.6 !important; }

.lh_18 { line-height: 1.8 !important; }

.lh_20 { line-height: 2 !important; }

.ls_01 { letter-spacing: 0.1rem !important; }

.ls_02 { letter-spacing: 0.2rem !important; }

.ls_03 { letter-spacing: 0.3rem !important; }

.ls_04 { letter-spacing: 0.4rem !important; }

.ls_05 { letter-spacing: 0.5rem !important; }

.ls_06 { letter-spacing: 0.6rem !important; }

.ls_07 { letter-spacing: 0.7rem !important; }

.ls_08 { letter-spacing: 0.8rem !important; }

.ls_09 { letter-spacing: 0.9rem !important; }

.ls_10 { letter-spacing: 1rem !important; }

.zi_d1 { z-index: -1 !important; }

.zi_0 { z-index: 0 !important; }

.zi_u1 { z-index: 1 !important; }

.zi_u2 { z-index: 2 !important; }

.zi_u5 { z-index: 5 !important; }

.zi_u10 { z-index: 10 !important; }

.zi_u50 { z-index: 50 !important; }

.zi_u100 { z-index: 100 !important; }

.zi_u500 { z-index: 500 !important; }

.zi_u999 { z-index: 999 !important; }

/* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: */
/* :::::::::::::::::::::::::: 3.WP setteing :::::::::::::::::::::::::::: */
/* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: */
.alignleft { float: left; margin-right: 1rem; margin-bottom: 1.5rem; }

@media only screen and (max-width: 767px) { .alignleft { width: 100%; margin-right: 0; margin-bottom: 1.5rem; } }

.alignright { float: right; margin-left: 1rem; margin-bottom: 1.5rem; }

@media only screen and (max-width: 767px) { .alignright { width: 100%; float: none; margin-left: 0; margin-bottom: 1.5rem; } }

.aligncenter { clear: both; display: block; margin-right: auto; margin-left: auto; margin-bottom: 1.5rem; }

@media only screen and (max-width: 767px) { .alignright { width: 100%; } }
