@charset "UTF-8";
/*-------------------------------------
リセット
-------------------------------------*/
/*! sanitize.css v3.3.0 | CC0 1.0 Public Domain | github.com/10up/sanitize.css */
/* Normalization */
abbr[title] { text-decoration: underline; text-decoration: underline dotted; }

audio:not([controls]) { display: none; }

b, strong { font-weight: bolder; }

button { -webkit-appearance: button; overflow: visible; }

button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
button:-moz-focusring, input:-moz-focusring { outline: 1px dotted ButtonText; }

button, select { text-transform: none; }

details { display: block; }

hr { overflow: visible; }

html { -ms-overflow-style: -ms-autohiding-scrollbar; overflow-y: scroll; -webkit-text-size-adjust: 100%; }

input { -webkit-border-radius: 0; }
input[type="button"], input[type="reset"], input[type="submit"] { -webkit-appearance: button; }
input[type="number"] { width: auto; }
input[type="search"] { -webkit-appearance: textfield; }
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

main { display: block; }

pre { overflow: auto; }

progress { display: inline-block; }

summary { display: block; }

svg:not(:root) { overflow: hidden; }

template { display: none; }

textarea { overflow: auto; }

[hidden] { display: none; }

/* Universal inheritance */
*, ::before, ::after { box-sizing: inherit; }

* { font-size: inherit; line-height: inherit; }

::before, ::after { text-decoration: inherit; vertical-align: inherit; }

button, input, select, textarea { font-family: inherit; font-style: inherit; font-weight: inherit; }

/* Opinionated defaults */
* { margin: 0; padding: 0; }

*, ::before, ::after { border-style: solid; border-width: 0; }

a, area, button, input, label, select, textarea, [tabindex] { touch-action: manipulation; }

select { -moz-appearance: none; -webkit-appearance: none; }
select::-ms-expand { display: none; }
select::-ms-value { color: currentColor; }

svg { fill: currentColor; }

[aria-busy="true"] { cursor: progress; }

[aria-controls] { cursor: pointer; }

[aria-disabled] { cursor: default; }

[hidden][aria-hidden="false"] { clip: rect(0 0 0 0); display: inherit; position: absolute; }
[hidden][aria-hidden="false"]:focus { clip: auto; }

/* Configurable defaults */
* { background-repeat: no-repeat; }

:root { background-color: #ffffff; box-sizing: border-box; color: #000000; cursor: default; font: 100%/1.5 sans-serif; }

a { text-decoration: none; }

audio, canvas, iframe, img, svg, video { vertical-align: middle; }

button, input, select, textarea { background-color: transparent; color: inherit; }

button, [type="button"], [type="date"], [type="datetime"], [type="datetime-local"], [type="email"], [type="month"], [type="number"], [type="password"], [type="reset"], [type="search"], [type="submit"], [type="tel"], [type="text"], [type="time"], [type="url"], [type="week"], select, textarea { min-height: 1.5em; }

code, kbd, pre, samp { font-family: monospace, monospace; }

nav ol, nav ul { list-style: none; }

small { font-size: 75%; }

table { border-collapse: collapse; border-spacing: 0; }

textarea { resize: vertical; }

::-moz-selection { background-color: #b3d4fc; color: #ffffff; text-shadow: none; }

::selection { background-color: #b3d4fc; color: #ffffff; text-shadow: none; }

/*====================================================================================
共通 / テキストの設定
====================================================================================*/
/* 変数 */
/* フォントのバグを削除 */
body { -webkit-font-smoothing: antialiased; width: 320px; }

/* 基本のフォント設定 */
html:root { font-size: 62.5%; }

body { font-size: 1.0rem; }

h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, dt, dd, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure { font-size: 16px; font-size: 1.6rem; font-weight: normal; font-family: 'ヒラギノ角ゴ ProN W3', 'HiraKakuProN-W3', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif; color: #000; text-align: left; line-height: 160%; letter-spacing: 0; }

/* Aタグ */
a { color: #fff; }

a:hover { color: #fff; }

a:visited { color: #fff; }

/* li */
li { list-style-type: none; }

/*====================================================================================
共通 / エリアの設定
====================================================================================*/
/* サイトの背景カラー */
html:root { background: #fff; }

/* 横スクロール禁止 */
html, body { overflow-x: hidden; 　position: relative; }

.mb15 { margin-bottom: 15px; }

/*====================================================================================
パーツの設定
====================================================================================*/
.fw-bo { font-weight: bold; }

.mb10 { margin-bottom: 10px; }

/* 見出し */
h2 { color: #097299; font-size: 2.3rem; font-weight: bold; text-align: center; text-shadow: 0px 3px 0 rgba(255, 255, 255, 0.8); }

h3 { display: inline-block; font-weight: bold; }
h3 span:nth-child(2) { padding-bottom: 3px; border-bottom: 2px solid #ffe641; }
h3 span:first-child { display: inline-block; color: #fff; vertical-align: middle; font-weight: bold; font-size: 1.7rem; text-align: center; width: 25px; height: 25px; background: #ed670e; border-radius: 35px; margin-right: 5px; }

/* btn-01 */
.btn-01 { border-radius: 6px; overflow: hidden; }
.btn-01 > * { display: block; color: #fff; font-weight: bold; font-size: 1.8rem; text-align: center; position: relative; }
.btn-01.orange { background: #ee6f1c; }
.btn-01.orange > * { padding: 8px 30px 8px 8px; }
.btn-01.orange > *:after { background: #ecae43; }
.btn-01.green { background: #097299; }
.btn-01.green > * { padding: 4px 4px 4px 30px; }
.btn-01.green > *:after { background: #0f92c2; }

/* arrow */
.arrow:before, .arrow-r:before, .arrow-l:before, .arrow-b:before, .arrow-b.act:before { content: ""; display: block; width: 10px; height: 10px; border-left: 2px solid #fff; border-top: 2px solid #fff; position: absolute; top: 50%; margin-top: -5px; z-index: 99; }

.arrow-r:after, .arrow-l:after { content: ""; display: block; width: 35px; height: 100%; position: absolute; top: 0; right: 0; }
.arrow-r:before { transform: rotate(135deg); -moz-transform: rotate(135deg); -webkit-transform: rotate(135deg); -ms-transform: rotate(135deg); -o-transform: rotate(135deg); right: 15px; }

.arrow-l:after { left: 0; }
.arrow-l:before { transform: rotate(-45deg); -moz-transform: rotate(-45deg); -webkit-transform: rotate(-45deg); -ms-transform: rotate(-45deg); -o-transform: rotate(-45deg); left: 15px; }

.arrow-b:after { content: ""; display: block; width: 35px; height: 100%; position: absolute; top: 0; right: 0; }
.arrow-b:before { transform: rotate(225deg); -moz-transform: rotate(225deg); -webkit-transform: rotate(225deg); -ms-transform: rotate(225deg); -o-transform: rotate(225deg); transition: 0.5s ease-in; -moz-transition: 0.5s ease-in; -webkit-transition: 0.5s ease-in; -ms-transition: 0.5s ease-in; -o-transition: 0.5s ease-in; right: 15px; }

.arrow-b.act:before { transform: rotate(45deg); -moz-transform: rotate(45deg); -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transition: 0.5s ease-out; -moz-transition: 0.5s ease-out; -webkit-transition: 0.5s ease-out; -ms-transition: 0.5s ease-out; -o-transition: 0.5s ease-out; right: 15px; }

.btn-list { padding-top: 25px; }
.btn-list > *:not(:last-of-type) { margin-bottom: 10px; }

/* 赤強調テキスト */
.strong02 { color: #ec6104; }

/* 注釈 */
.notice { font-size: 13px; line-height: 140%; opacity: 0.6; }

/*====================================================================================
エリアごとの設定
====================================================================================*/
/*------------------------------------------
header
------------------------------------------*/
header { background-image: url("../img/bg_header.png"); background-size: 320px 251.5px; background-repeat: no-repeat; background-size: 100%; padding: 20px 10px 0; overflow: hidden; }
header figure { width: 300px; margin-left: auto; margin-right: auto; overflow: hidden; }
header figure > *:first-of-type { float: left; }
header figure > *:nth-of-type(2) { float: right; }
header figure img { width: 144.5px; }
header figure figcaption h1 { width: 168px; height: 152.5px; background-image: url("../img/h1.png"); background-size: 168px 152.5px; background-repeat: no-repeat; text-indent: 110%; white-space: nowrap; overflow: hidden; display: inine-block; position: absolute; margin-left: -10px; }

/*------------------------------------------
footer
------------------------------------------*/
footer { padding-top: 20px; }
footer p { color: #097299; font-size: 1rem; text-align: center; }

/*------------------------------------------
content内
------------------------------------------*/
.contents { margin-bottom: 30px; }
.contents > * { padding-left: 10px; padding-right: 10px; }

/* box-01 */
.box { padding-top: 30px; padding-bottom: 20px; }
.box h2 { margin-bottom: 10px; }

/* inner */
* .inner { max-width: 300px; margin-left: auto; margin-right: auto; }

/* 各boxの設定 */
.box.box-b { background: #56cae2; padding-top: 15px; position: relative; }
.box.box-b p { color: #fff; }
.box.box-b:before, .box.box-b:after { content: ""; display: block; width: 320px; height: 13px; background: url(../img/box_top.svg) repeat-x; background-size: 160px 13px; position: absolute; left: 0; }
.box.box-b:before { top: -12px; }
.box.box-b:after { background: url(../img/box_bottom.svg) repeat-x; background-size: 160px 13px; bottom: -13px; }

/* item01 */
.item01 { display: table; table-layout: fixed; margin-left: auto; margin-right: auto; }
.item01 > * { display: table-cell; vertical-align: middle; }
.item01 > div { padding-left: 5px; }
.item01 p { display: inline; font-weight: bold; line-height: 1.3; padding-bottom: 3px; border-bottom: 2px solid #ffe641; }
.item01 p .strong { font-size: 2.6rem; color: #ffe641; }
.item01:not(:last-of-type) { margin-bottom: 25px; }

/* item02 */
.item02 p { font-weight: bold; text-align: center; margin-bottom: 5px; }
.item02 figure img { width: 100%; }

/* アコーディオン */
.btn-01.ac-btn { margin-bottom: 10px; position: relative; }
.btn-01.ac-btn > span { padding-left: 0; padding-right: 33px; }

.ac-box { display: none; background: #fff; padding: 25px 15px; margin-left: -10px; margin-right: -10px; position: relative; }
.ac-box:before, .ac-box:after { content: ""; display: block; width: 100%; height: 13px; background-size: 160px 13px; position: absolute; left: 0; overflow: hidden; }
.ac-box:before { top: 0px; background: url(../img/box_bottom.svg) repeat-x; }
.ac-box:after { width: 100%; height: 13px; background: url(../img/box_top.svg) repeat-x; background-size: 160px 13px; bottom: 0px; }

.ac-box .text-item h3 { margin-bottom: 5px; }
.ac-box .text-item p { color: #000; }
.ac-box .text-item:not(:last-of-type) { margin-bottom: 20px; }

/*# sourceMappingURL=app.css.map */
