@charset "UTF-8";
html, body, header, main, aside, footer, section, article, nav, h1, h2, h3, h4, h5, h6, table, caption, tbody, tfoot, thead, tr, th, td, form, label, legend, hgroup, figcaption, figure, img, canvas, iframe, details, summary, code, pre, audio, video, address, time, blockquote, div, ul, ol, li, dl, dt, dd, p, a, span, small, strong, sub, sup { margin: 0; padding: 0; border: 0; box-sizing: border-box; }

body { line-height: 1; }

header, main, aside, nav, footer, section, article { display: block; }

h1, h2, h3, h4, h5, h6 { font-weight: normal; }

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

th, td { text-align: left; }

ol, ul { list-style: none; }

img, video { max-width: 100%; }

img { border: 0; vertical-align: bottom; }

body { width: 100%; height: 100%; min-width: 1200px; line-height: 1.5; font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif; font-size: 16px; font-weight: 400; letter-spacing: -.05em; -webkit-text-size-adjust: none; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

a { transition: .2s; }

a:hover { opacity: .8; }

.pc-hidden { display: none; }

.inner-wrap { margin: 50px auto 14px; padding-bottom: 5px; position: relative; background-color: #f6faed; }

header { padding: 32px 0; margin: 0 auto; width: 860px; }

header p { margin-top: 8px; padding: 0 30px; line-height: 1.65; font-size: 22px; font-weight: bold; letter-spacing: 0.08em; }

header .figure { position: relative; text-align: center; }

header .figure img { position: relative; border: 0; vertical-align: bottom; width: 583px; right: 33px; top: 10px; }

.lead { text-align: center; }

.lead h2 { margin: 10px auto 0; color: #0068b7; font-size: 38px; font-weight: bold; letter-spacing: .01em; }

.lead p { margin: 10px auto 65px; padding: 24px 0; border-radius: 45px; border: #fff solid 8px; width: 880px; color: #fff; background-color: #0075c2; font-size: 23px; font-weight: bold; text-align: center; letter-spacing: .02em; box-shadow: 0 0 0 1px #0075c2; }

h3 { margin: 0 auto; padding: 20px 0; border-radius: 10px; width: 940px; color: #fff; background-color: #45b035; font-size: 31px; font-weight: bold; text-align: center; letter-spacing: 0.04em; text-shadow: .2px .2px #fff, -.2px .2px #fff, -.2px -.2px #fff, .2px -.2px #fff, .2px 0px #fff, 0px .2px #fff, -.2px 0px #fff, 0px -.2px #fff; }

.flex { margin: 28px auto 104px; display: -ms-flexbox; display: flex; -ms-flex-pack: start; justify-content: flex-start; -ms-flex-align: start; align-items: flex-start; width: 870px; }

.flex .tenken { margin: 10px 30px 0 0; }

.flex p { padding-left: 10px; font-size: 24px; font-weight: bold; letter-spacing: .04em; }

.flex p span { letter-spacing: -0.001em; }

.flex .btn { margin-top: 15px; }

footer { padding: 28px; background: #dbe7ed; text-align: center; font-size: 26px; font-weight: bold; letter-spacing: 0.03em; }

footer span { letter-spacing: .4em; }

footer a { color: #333; text-decoration: none; }

footer a:hover { color: #0098a4; }

@media only screen and (max-width: 750px) { body { min-width: 0; font-size: 24px; font-size: 2.4rem; font-size: 3.2vw; } .inner-wrap { width: 94.6666666667%; margin: 2.6666666667% auto 2.6666666667%; padding-bottom: 5px; } .pc-hidden { display: block !important; } .sp-hidden { display: none !important; } header { padding: 4.2253521127% 3.9436619718%; width: 100%; } header h1 { padding: 0 8.4507042254%; } header p { margin-top: 1.4084507042%; padding: 0 3.3802816901%; font-size: 26px; font-size: 2.6rem; font-size: 3.4666666667vw; letter-spacing: 0.04em; } header .figure img { margin-top: 2.8169014085%; width: 78.8732394366%; right: auto; top: auto; } .lead h2 { margin: 2.8169014085% auto 0; line-height: 1.2; font-size: 52px; font-size: 5.2rem; font-size: 6.9333333333vw; letter-spacing: .01em; } .lead p { margin: 2.8169014085% auto 14.0845070423%; padding: 2.8169014085% 1.4084507042%; border-radius: 1.5em; border: #fff solid .35em; width: 92.9577464789%; line-height: 1.6; font-size: 25px; font-size: 2.5rem; font-size: 3.3333333333vw; letter-spacing: -.01em; box-shadow: 0 0 0 1px #0075c2; } h3 { margin: 0 auto; padding: 2.8169014085% 0; border-radius: .3em; width: 92.9577464789%; line-height: 1.4; font-size: 38px; font-size: 3.8rem; font-size: 5.0666666667vw; letter-spacing: 0.04em; } .flex { position: relative; margin: 2.8169014085% auto 22.5352112676%; width: 94.3661971831%; } .flex .tenken { margin: 2.9850746269% 2.9850746269% 0 0; width: 22.3880597015%; } .flex .sizeAdjust { width: 90%; } .flex p { margin-top: 2.9850746269%; padding-left: 2.9850746269%; font-size: 30px; font-size: 3rem; font-size: 4vw; letter-spacing: .04em; } .flex p span { letter-spacing: -0.05em; } .flex .btn { position: absolute; bottom: -23.8805970149%; right: 0; width: 80.5970149254%; } footer { padding: 4.2253521127%; font-size: 30px; font-size: 3rem; font-size: 4vw; font-weight: normal; } footer span { letter-spacing: .2em; } }
