@charset "UTF-8";
/* CSS Document */
html {
box-sizing: border-box;
overflow-y: scroll; /* All browsers without overlaying scrollbars */
-webkit-text-size-adjust: 100%; /* iOS 8+ */

}
body {
font-family: "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
color: #555;
font-feature-settings: "palt";
letter-spacing: 0.06rem;
text-align: justify; 
}
*,
::before,
::after {
background-repeat: no-repeat; /* Set `background-repeat: no-repeat` to all elements and pseudo elements */
box-sizing: inherit;
}

::before,
::after {
text-decoration: inherit; /* Inherit text-decoration and vertical align to ::before and ::after pseudo elements */
vertical-align: inherit;
}

* {
padding: 0; /* Reset `padding` and `margin` of all elements */
margin: 0;
}

/* # =================================================================
# General elements
# ================================================================= */

/* Add the correct display in iOS 4-7.*/ｓ

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

hr {
overflow: visible; /* Show the overflow in Edge and IE */
}

/*
* Correct `block` display not defined for any HTML5 element in IE 8/9
* Correct `block` display not defined for `details` or `summary` in IE 10/11
* and Firefox
* Correct `block` display not defined for `main` in IE 11
*/

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
display: block;
}

summary {
display: list-item; /* Add the correct display in all browsers */
}

small {
font-size: 80%; /* Set font-size to 80% in `small` elements */
}

[hidden],
template {
display: none; /* Add the correct display in IE */
}

abbr[title] {
border-bottom: 1px dotted; /* Add a bordered underline effect in all browsers */
text-decoration: none; /* Remove text decoration in Firefox 40+ */
}

a {
background-color: transparent; /* Remove the gray background on active links in IE 10 */
-webkit-text-decoration-skip: objects; /* Remove gaps in links underline in iOS 8+ and Safari 8+ */
}

a:active,
a:hover {
outline-width: 0; /* Remove the outline when hovering in all browsers */
}

code,
kbd,
pre,
samp {
font-family: monospace, monospace; /* Specify the font family of code elements */
}

/* Address styling not present in IE 8/9 */

mark {
background-color: #ff0;
color: #000;
}

/* https://gist.github.com/unruthless/413930 */

sub,
sup {
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline;
}

sub {
bottom: -0.25em;
}

sup {
top: -0.5em;
}

/* # =================================================================
# Forms
# ================================================================= */

input {
border-radius: 0;
}

/* Apply cursor pointer to button elements */

button,
[type="button"],
[type="reset"],
[type="submit"],
[role="button"] {
cursor: pointer;
}

/* Replace pointer cursor in disabled elements */

[disabled] {
cursor: default;
}

[type="number"] {
width: auto; /* Firefox 36+ */
}

[type="search"] {
-webkit-appearance: textfield; /* Safari 8+ */
}

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
-webkit-appearance: none; /* Safari 8 */
}

textarea {
overflow: auto; /* Internet Explorer 11+ */
resize: vertical; /* Specify textarea resizability */
}

button,
input,
optgroup,
select,
textarea {
font: inherit; /* Specify font inheritance of form elements */
}

optgroup {
font-weight: bold; /* Restore the font weight unset by the previous rule. */
}

button {
overflow: visible; /* Address `overflow` set to `hidden` in IE 8/9/10/11 */
}

/* Remove inner padding and border in Firefox 4+ */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
border-style: 0;
padding: 0;
}

/* Replace focus style removed in the border reset above */

button:-moz-focusring,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
outline: 1px dotted ButtonText;
}

button,
html [type="button"],
[type="reset"],
[type="submit"] {
-webkit-appearance: button; /* Correct the inability to style clickable types in iOS */
}

button,
select {
text-transform: none; /* Firefox 40+, Internet Explorer 11- */
}

/* Remove the default button styling in all browsers */

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

/* Style select like a standard input */

select {
-moz-appearance: none; /* Firefox 36+ */
-webkit-appearance: none;  /* Chrome 41+ */
}

select::-ms-expand {
display: none; /* Internet Explorer 11+ */
}

select::-ms-value {
color: currentColor; /* Internet Explorer 11+ */
}

legend {
border: 0; /* Correct `color` not being inherited in IE 8/9/10/11 */
color: inherit; /* Correct the color inheritance from `fieldset` elements in IE */
display: table; /* Correct the text wrapping in Edge and IE */
max-width: 100%; /* Correct the text wrapping in Edge and IE */
white-space: normal; /* Correct the text wrapping in Edge and IE */
}

::-webkit-file-upload-button {
-webkit-appearance: button; /* Correct the inability to style clickable types in iOS and Safari */
font: inherit; /* Change font properties to `inherit` in Chrome and Safari */
}

[type="search"] {
-webkit-appearance: textfield; /* Correct the odd appearance in Chrome and Safari */
outline-offset: -2px; /* Correct the outline style in Safari */
}

/* # =================================================================
# Specify media element style
# ================================================================= */

img {
border-style: none; /* Remove border when inside `a` element in IE 8/9/10 */
}

/* Add the correct vertical alignment in Chrome, Firefox, and Opera */

progress {
vertical-align: baseline;
}

svg:not(:root) {
overflow: hidden; /* Internet Explorer 11- */
}

audio,
canvas,
progress,
video {
display: inline-block; /* Internet Explorer 11+, Windows Phone 8.1+ */
}

/* # =================================================================
# Accessibility
# ================================================================= */

/* Hide content from screens but not screenreaders */

@media screen {
[hidden~="screen"] {
display: inherit;
}

[hidden~="screen"]:not(:active):not(:focus):not(:target) {
position: absolute !important;
clip: rect(0 0 0 0) !important;
}
}

/* Specify the progress cursor of updating elements */

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

/* Specify the pointer cursor of trigger elements */

[aria-controls] {
cursor: pointer;
}

/* Specify the unstyled cursor of disabled, not-editable, or otherwise inoperable elements */

[aria-disabled] {
cursor: default;
}

/* # =================================================================
# Selection
# ================================================================= */

/* Specify text selection background color and omit drop shadow */

::selection {
background-color: #b3d4fc; /* Required when declaring ::selection */
color: #000;
text-shadow: none;
}
img {
max-width: 100%;
height: auto;
vertical-align: middle;
}


/*HEADER */

header{

width: 100%;
margin: 0 auto;
}
header .logo{
opacity: 0;
animation-name: fade-in0;
animation-duration: 1s;
animation-timing-function: ease-out; 
animation-delay: 0s; 
animation-iteration-count: 1; 
animation-direction: normal; 
animation-fill-mode: forwards;
z-index: 9999;
padding: 15px 0 0;
}
header .logo img{
width: 154px;
}
@media screen and (max-width: 1110px) {
header .logo{
padding: 15px 10px 0;
}
}
@keyframes fade-in0 {
0% {
opacity: 0;
transform: translate3d(0, -20px, 0);
}
100% {
opacity: 1;
transform: translate3d(0, 0, 0);
}
}
header p{
opacity: 0;
animation-name: fade-in1;
animation-duration: 1s;
animation-timing-function: ease-out; 
animation-delay: 0s; 
animation-iteration-count: 1; 
animation-direction: normal; 
animation-fill-mode: forwards; 
}
@keyframes fade-in1 {
0% {
opacity: 0;
transform: translate3d(0, -20px, 0);
}
100% {
opacity: 1;
transform: translate3d(0, 0, 0);
}
}
header .logo{
margin-bottom: 15px;
}

.main_visual {
width: 100%;
max-width: 1500px;
margin: 0 auto;
position: relative;
}
.main_visual img {
width: 100%;
}

.bg_gray {
background: #fff;
padding: 45px 0;
}
header p {
text-align: center;
margin-bottom: 30px;
font-size: 20px;
    letter-spacing: 0.1rem;
    line-height: 1.7;
}
header p.h_period {
color: #ea5d6c;
font-size: 30px;
margin-bottom: 0!important;
}
.container {
max-width: 1130px;
width: 100%;
margin: 0 auto;
padding: 0 15px;

}
.section01 {
background: #ebfbff;
padding:45px 0;
}
.h2_style01 {
display: flex;
justify-content: center;
align-items: center;
text-align: center;
margin-bottom: 30px;
color: #0092d8;
font-size: 36px;
}
.h2_style01:before {
content: "";
background:url(../img/ttl01_m.png) no-repeat;
background-size: cover;
display: block;
width: 267px;
height: 43px;
margin-right: 20px;
}
.h2_style01:after {
content: "";
background:url(../img/ttl02_m.png) no-repeat;
background-size: cover;
display: block;
width: 267px;
height: 43px;
margin-left: 20px;
}

.h2_style02 {
display: flex;
justify-content: center;
align-items: center;
text-align: center;
margin-bottom: 30px;
color: #0092d8;
font-size: 36px;
}
.h2_style02:before {
content: "";
background:url(../img/ttl01_s.png) no-repeat;
background-size: cover;
display: block;
width: 236px;
height: 53px;
margin-right: 20px;
}
.h2_style02:after {
content: "";
background:url(../img/ttl02_s.png) no-repeat;
background-size: cover;
display: block;
width: 236px;
height: 53px;
margin-left: 20px;
}

.content {
display: flex;
flex-flow: row wrap;
justify-content: space-between;
}

.content .present_item {
max-width: 520px;
width: 31%;
border: 1px solid #0092d8;
background: #fff;
border-radius: 10px;
box-shadow: 0px 10px 10px -5px rgba(0,0,0,0.3);
padding: 45px 45px 105px 45px;
margin-bottom: 60px;
position: relative;
}

.content .present_item2 {
max-width: 1130px;
width: 100%;
border: 1px solid #0092d8;
background: #fff;
border-radius: 10px;
box-shadow: 0px 10px 10px -5px rgba(0,0,0,0.3);
padding: 45px 45px 110px 45px;
margin-bottom: 60px;
position: relative;
}

.present_img {
text-align: center;
margin-bottom: 25px;
}
.present_ttl {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 15px;
}
.present_item h3 {
font-size: 26px;
color:#0092d8;
}
div.icon {
background: url(../img/bg_num.png) no-repeat;
background-size: cover;
width: 100%;
height: 82px;
margin-bottom: 15px;
}
div.icon p {
text-align: center;
line-height: 83px;
font-size: 22px;
color:#ea5d6c;
font-weight: bold;
}
div.icon p span {
font-size: 28px;
}
.period {
color: #ea5d6c;
background: #fffcf3;
line-height: 64px;
text-align: center;
font-size: 24px;
margin-bottom: 45px;
}
.present_item p.text {
margin-bottom: 25px;
line-height: 1.6;
    letter-spacing: 0.1rem;
}
.present_item2 p.text {
margin-bottom: 25px;
line-height: 1.6;
}

.monitor_ttl {
    font-size: 26px;
    color: #0092d8;
    font-weight: bold;
    margin:0 0 10px 40px;
}

.flex {
display: flex;
list-style: none;
}
.flex .text {
margin-left: 40px;
}
.btn_more {
border: 1px solid #0092d8;
border-radius: 4px;
background: #ebfbff;
width: 280px;
margin: 0 auto;
position: absolute;
bottom:45px;
left: 50%;
transform: translateX(-50%);
}
.btn_more a {
display: block;
line-height: 60px;
position: relative;
text-align: center;
color:#0092d8;
text-decoration: none;
}

.btn_more a:after {
position: absolute;
content: '';
background:url(../img/arrow.png) no-repeat;
width: 19px;
height: 6px;
top: 50%;
right: 10px;
transform: translateY(-50%);
}
[data-ruby] {
position: relative;
color:#CD024E;

}
[data-ruby]::before {
content: attr(data-ruby);
position: absolute;
bottom: -1em;
left: 0;
right: 0;
margin: auto;
font-size: 0.3em;
}

.section02 {
background: #fffcf3;
padding: 50px 0;
}
.section02 h2 {
display: flex;
justify-content: center;
align-items: center;
text-align: center;
margin-bottom: 30px;
color: #ea5d6c;
font-size: 36px;
}
.section02 h2:before {
content: "";
background:url(../img/ttl01.png) no-repeat;
background-size: cover;
display: block;
width: 233px;
height: 59px;
margin-right: 20px;
}
.section02 h2:after {
content: "";
background:url(../img/ttl02.png) no-repeat;
background-size: cover;
display: block;
width: 233px;
height: 59px;
margin-left: 20px;
}

.section02 .text {
margin-top: 20px;
}

.footer_content {
max-width: 1100px;
width: 100%;
margin: 0 auto;
padding: 30px 0;
display: flex;
align-items: center;
justify-content: space-between;

}
.footer_content p {
font-size: 12px;
line-height: 1.6;
}
@media screen and (max-width: 1110px) {
.h2_style01,.section02 h2 {

font-size: 20px;
}

.footer_content {
width: 100%;
padding: 30px 0 20px;
display: block;
align-items: center;
justify-content: space-between;

}
.footer_content p {
text-align: center;
margin:0 auto 10px;
}
}

@media screen and (max-width: 1100px) {
.main_visual {
background: none;
background-size:auto;
width: 100%;
height: auto;
}
.main_visual p {
padding-top: 0;
}
.bg_gray {
background: #F8F8F8;
padding: 45px 20px;
}
header p {
margin-bottom: 30px;
}
header p.h_period {
color: #f56295;
font-size: 20px;
margin-bottom: 0!important;
}

.container {
width: 100%;
padding: 0 15px;
}
.h2_style01 {
display: flex;
justify-content: center;
align-items: center;
text-align: center;
margin-bottom: 20px;
font-size: 18px;
}
.h2_style01:before {
content: "";

display: block;
width: 160px;
height: 30px;
margin-right: 10px;
}
.h2_style01:after {
content: "";
display: block;
width: 160px;
height: 30px;
margin-left: 10px;
}
.content {
display: block;
}
.content .present_item,.content .present_item2 {
max-width: 100%;
width: 100%;
padding: 30px;
margin-bottom: 30px;
}

.present_ttl {
display: block;
align-items:baseline;
margin-bottom: 15px;
}
.present_item h3 {
font-size: 18px;
}
div.icon {
background: url(../img/bg_num.png) no-repeat;
background-size: contain;
max-width: 423px;
width: 100%;
min-height: 77px;
margin: 0 auto 15px;
}
.present_item p.text {
margin-bottom: 15px;
font-size: 14px;
line-height: 1.6;
}
    
.present_item2 p.text {
margin-bottom: 15px;
font-size: 14px;
line-height: 1.6;
}
    
.btn_more {
width: 280px;
margin: 0 auto;
position: relative;
bottom:auto;
left: auto;
transform:none;
}
.section02 {
background: #F5FFFF;
padding: 30px 0;
}
.section02 h2 {
display: flex;
justify-content: center;
align-items: center;
text-align: center;
margin-bottom: 20px;
font-size: 18px;
}
.section02 h2:before {
content: "";
background:url(../img/ttl01.png) no-repeat;
background-size: cover;
display: block;
width: 100px;
height: 30px;
margin-right: 10px;
}
.section02 h2:after {
content: "";
background:url(../img/ttl02.png) no-repeat;
background-size: cover;
display: block;
width: 100px;
height: 30px;
margin-left: 10px;
}
}

@media screen and (max-width: 530px) {
.h2_style01:before {
content: "";
background:url(../img/ttl01_m.png) no-repeat;
background-size: contain;
display: block;
width: 74px;
height: 20px;
margin-right: 10px;
}
.h2_style01:after {
content: "";
background:url(../img/ttl02_m.png) no-repeat;
background-size: contain;
display: block;
width: 74px;
height: 20px;
margin-left: 10px;
}

    
.h2_style02:before {
content: "";
background:url(../img/ttl01_s.png) no-repeat;
background-size: contain;
display: block;
width: 74px;
height: 20px;
margin-right: 10px;
}
.h2_style02:after {
content: "";
background:url(../img/ttl02_s.png) no-repeat;
background-size: contain;
display: block;
width: 74px;
height: 20px;
margin-left: 10px;
}


}
@media screen and (max-width: 480px) {
.h2_style01,.h2_style02 {
font-size: 16px;
justify-content:space-between;
}   
.section02 h2 {
font-size: 16px;
justify-content:space-between;
}
.section02 h2:before {
content: "";
background:url(../img/ttl01.png) no-repeat;
background-size: cover;
display: block;
width: 74px;
height: 20px;
margin-right: 10px;
}
.section02 h2:after {
content: "";
background:url(../img/ttl02.png) no-repeat;
background-size: cover;
display: block;
width: 74px;
height: 20px;
margin-left: 10px;
}
}


.item_main {
border: 1px solid #0092d8;
border-radius: 10px;
box-shadow: 0px 10px 10px -5px rgba(0,0,0,0.3);
margin-bottom: 50px;
padding-bottom: 50px;
background: #fff;
}
.item_img img {
border-radius: 10px 10px 0 0;
}
.item_main > div {
max-width: 860px;
width: 100%;
margin: 0 auto;
position: relative;
padding: 0 10px;
}
.icon_item {
position: absolute;
}
.item_content {
padding: 50px 0 0;
}
.item_content h3 {
font-size: 30px;
color:#0092d8;
margin-bottom: 15px;
text-align: center;
}

.item_caption {
font-size: 24px;
text-align: center;
margin-bottom: 25px;
line-height: 1;
}

.item_caption2 {
font-size: 24px;
text-align: left;
margin-bottom: 25px;
line-height: 1.5;
}

.item_caption .large {
font-size: 18px;
}

.item_content h4 {
color: #0092d8;
font-size: 24px;
margin-bottom: 12px;
}
.item_content h5 {
font-size: 20px;
margin-bottom: 15px;
font-weight: bold;
}

.plus h5 {
font-size: 20px;
margin-bottom: 50px;
font-weight: bold;
text-align: center;
color: #f56295;
}

.ul_item04 a {
    color: #fff;
    padding: 20px;
    display: block;
    text-decoration: none;
    margin-top: 36px;
    text-align: center;
    background: #0E64B1;
    border-radius: 10px;
}

.item_content p.text {
font-size: 20px;
line-height: 1.6;
margin-bottom: 35px;
    letter-spacing: 0.1rem;
}
.btn_application {
margin-bottom: 80px;
}
.btn_application a {
display: block;
background: #0092d8;
color: #fff;
text-align: center;
width: 533px;
height: 140px;
position: relative;
border-radius: 10px;
margin: 0 auto;
padding-top: 20px;
font-size: 30px;
text-decoration: none;
box-shadow: 0px 10px 10px -5px rgba(0,0,0,0.2);
font-weight: bold;
}
.btn_application a span {
font-size: 22px;
}
.btn_application a:after {
content: '';
display: block;
width: 138px;
height: 13px;
background-image: url(../img/arrow02.png);
background-size: contain;
vertical-align: middle;
position: absolute;
bottom:20px;
left: 50%;
transform: translateX(-50%);
}
.btn_application02 a {
display: block;
color: #0092d8;
background: #fff;
text-align: center;
width: 533px;
height: 140px;
position: relative;
border: 1px solid #0092d8;
border-radius: 10px;
margin: 0 auto;
padding-top: 20px;
font-size: 30px;
text-decoration: none;
line-height: 1.1;
box-shadow: 0px 10px 10px -5px rgba(0,0,0,0.2);
font-weight: bold;
}
.btn_application02 a span {
font-size: 22px;
}
.btn_application02 a:after {
content: '';
display: block;
width: 138px;
height: 13px;
background-image: url(../img/arrow03.png);
background-size: contain;
vertical-align: middle;
position: absolute;
bottom:30px;
left: 50%;
transform: translateX(-50%);
}
.btn_application03 {
margin-bottom: 45px;    
}
.btn_application03 a {
display: block;
background: #0092d8;
color: #fff!important;
text-align: center;
width: 533px;
height: 160px;
position: relative;
border-radius: 10px;
margin: 0 auto;
padding-top: 45px;
font-size: 30px;
text-decoration: none;
box-shadow: 0px 10px 10px -5px rgba(0,0,0,0.2);
font-weight: bold;
}
.btn_application03 a span {
font-size: 22px;
}
.btn_application03 a:after {
content: '';
display: block;
width: 138px;
height: 13px;
background-image: url(../img/arrow02.png);
background-size: contain;
vertical-align: middle;
position: absolute;
bottom:50px;
left: 50%;
transform: translateX(-50%);
}

.w_present {
display: flex;
align-items: center;
justify-content: center;
width: 100%;
max-width: 840px;
background: #FFF2FA;
padding: 16px;
margin-bottom: 25px;
}
.w_present p {
font-size: 30px;
color:#CD024E;
font-weight: bold;
}
.w_present .icon_item02 {
width: 98px;
height: 98px;
margin-right: 15px;
display: block;
}
.item_content dl dt {
font-size: 24px;
color:#CD024E;
margin-bottom: 20px;
font-weight: bold;
} 
.item_content dl ul {
margin-bottom: 25px;
}
.item_content dl ul li {
margin-bottom: 10px;
font-weight: bold;
list-style-position: inside;
font-size: 20px;
}
.item_content ul.btn_item {
display: flex;
justify-content: center;
}
.item_content ul.btn_item li {
border: 1px solid #0092d8;
border-radius: 4px;
background: #ebfbff;
width: 280px;
margin: 20px 10px;
list-style: none;
}

.plus ul.btn_item li {
border: 1px solid #0092d8;
border-radius: 4px;
background: #ebfbff;
width: 350px;
margin: 20px 10px 70px;
list-style: none;
}

.item_content ul.btn_item li a {
display: block;
position: relative;
text-align: center;
color:#0092d8;
text-decoration: none;
padding: 15px 0;
}
.item_content ul.btn_item li a:after {
position: absolute;
content: '';
background:url(../img/arrow.png) no-repeat;
width: 19px;
height: 6px;
top: 50%;
right: 10px;
transform: translateY(-50%);
}
.caution {
color: #CD024E;
font-weight: bold;
}
.caution2 {
display: inline-block;
margin-bottom: 20px;
}
.sponsored {
display: flex;
align-items: center;
border: 1px solid #D8D8D8;
border-radius: 10px;
padding: 40px 35px;
}
.sponsored p {
line-height: 1.6;
}
.bottom_area {
background: #fffcf3;
padding: 30px 0;
}

.ul_item01 {
display: flex;
justify-content:space-between;
flex-wrap: wrap;
margin-bottom: 40px;
}
.ul_item01 li {
list-style: none;
width: 270px;
margin-bottom: 15px;
}
.ul_item01::after {
display: block;
content:"";
width: 270px;
}
.ul_item02 {
display: flex;
justify-content:space-between;
flex-wrap: wrap;
}
.ul_item02 li {
list-style: none;
max-width: 410px;
width: 100%;
margin-bottom: 40px;
}

.ul_item02 li p {
font-size: 20px;
    margin-top: 4px;
margin-bottom: 4px;
}
.menu {
font-size: 20px;
    margin-bottom: 6px;
}


.ul_item03 li {
list-style: none;
margin-bottom: 60px;
text-align: center;
}
.ul_item03 li p {
font-size: 24px;
text-align: left!important;
}

.ul_item04 {
display: flex;
justify-content:space-between;
flex-wrap: wrap;
}


.btn_dl {
    border: 1px solid #f56295;
    border-radius: 10px;
    background: #FFFFEA;
    width: 100%;
    margin: 50px 0 0 0;
    list-style: none;
    display: block;
    font-size: 20px;
}

.btn_dl a {
    display: block;
    text-align: center;
    color: #f56295;
    text-decoration: none;
    padding: 15px 0;
}

.banner {
    margin-bottom: 50px;
}

.pc { display: block !important; }
.sp { display: none !important; }

h4.typetext {
    margin-bottom: 26px;
    color:#555;
}
.comuoonimg {
    margin-bottom: 35px;
}
.strong {
    font-weight: bold;
    color:#ea5d6c;
}

.line {
    margin: 0 auto 40px;
    width:80%;
}

.padiko {
    margin-bottom: 45px;
}













@media screen and (max-width: 750px) {
    
header{
width: 100%;
}
header .logo{
width: 154px;
margin: 0 auto 15px;
padding: 15px 0 0 0;
}
header .logo img{
width: 100%;
}
    
div.icon {
min-height: 56px;
height: 56px;
}   
.item_main {
margin-bottom: 30px;
padding-bottom: 30px;
}
.icon_item {
width: 72px;
}
.item_content {
padding: 10px;
}
.item_content h3 {
font-size: 20px;
/*padding-left: 80px;*/
padding-top: 10px;
}
.item_content [data-ruby] {
position: relative;
color:#CD024E;
}
.item_content [data-ruby]::before {
content: attr(data-ruby);
position: absolute;
top: -1em;
left: 0;
right: 0;
margin: auto;
font-size: 0.3em;
}
.item_caption {
font-size: 18px;
margin-bottom: 15px;
line-height: 1.6;

}
.period {
line-height: 1.6;
text-align: center;
font-size: 18px;
margin-bottom: 30px;
padding: 15px;
}
.item_content h4 {
font-size: 18px;
margin-bottom: 6px;
}
.item_content h5 {
font-size: 16px;
}
.item_content p.text {
font-size: 14px;
line-height: 1.6;
margin-bottom: 30px;
}

.btn_application,.btn_application03 {
margin-bottom: 40px;    
}
.btn_application a,.btn_application02 a,.btn_application03 a {
width: 100%;
max-width: 300px;
height: auto;
padding: 20px 0 40px;
font-size: 20px;
}
.btn_application a:after,.btn_application02 a:after,.btn_application03 a:after {
bottom:20px;
}
.btn_application a span,.btn_application02 a span  {
font-size: 16px;
}
.more  {
font-size: 18px;
margin-bottom: 15px;
}
.more span {
display: none;
}
.w_present {
margin-bottom: 25px;
}
.w_present p {
font-size: 18px;
color:#CD024E;
}
.w_present .icon_item02 {
width: 60px;
height: 60px;
margin-right: 15px;
display: block;
}
.item_content dl dt {
font-size: 18px;
margin-bottom: 15px;
} 
.item_content dl ul {
margin-bottom: 15px;
}
.item_content dl ul li {
font-size: 14px;
}
.item_content ul.btn_item {
justify-content:center;
}
.item_content ul.btn_item li {
border: 1px solid #CD024E;
border-radius: 10px;
background: #FFFFEA;
width: 49%;
margin: 10px 5px;
list-style: none;
}
.plus ul.btn_item li {
border: 1px solid #0092d8;
border-radius: 4px;
background: #ebfbff;
width: 100%;
margin: 0 0 30px;
list-style: none;
}
    
.item_content ul.btn_item li a {
font-size: 14px;
}
.item_content ul.btn_item li a:after {
position: absolute;
content: '';
background:none;
width: 19px;
height: 6px;
top: 50%;
right: 10px;
transform: translateY(-50%);
}

.sponsored {
display: block;
padding: 15px;
font-size: 14px;
text-align: center;
}
.sponcer_logo {
margin-bottom: 10px;
}
.ul_item01 {
display: flex;
justify-content:space-between;
flex-wrap: wrap;
margin-bottom: 40px;
}
.ul_item01 li {
list-style: none;
width: 48%;
margin-bottom: 15px;

}
.ul_item01::after {
display: block;
content:"";
width: 48%;

}
.ul_item02 {
display: block;
}
.ul_item02 li {
list-style: none;
width: 100%;
margin-bottom: 20px;

}
.ul_item02 li p {
font-size: 16px;
}
.ul_item02 li p span {
font-size: 16px;
}
    
.ul_item03 li {
list-style: none;
margin-bottom: 40px;
text-align: center;
}
.ul_item03 li p {
font-size: 16px;
}
    
.ul_item04 li {
width: 100%;
}
    
.btn_dl {
 font-size: 14px;
}
    
.pc { display: none !important; }
.sp { display: block !important; }

#overview a {
color: #333;
}

.flex {
display: block;
}
.flex .text {
margin-left: 0;
}

div.icon p {
line-height: 32px;
font-size: 18px;
padding-top:2.6vw;
}

div.icon p span {
font-size: 22px;
}
   
.menu {
font-size: 16px;
margin-bottom: 6px;
}
    
.ul_item04 a {
    margin-top: 16px;
}
    
.section01 {
padding: 20px 0;
}
    
.footer_content p {
    width:90%;
}
    
.h2_style02 {
margin-top: 24px;
} 
    
    header p {
text-align: justify;
}
    
.monitor_ttl {
    font-size: 18px;
    margin: 0 0 15px 0;
}
    
header p {
    font-size: 16px;
}
    
h4.typetext {
    margin-bottom: 20px;
}
    
.line {
    margin: 0 auto 40px;
    width:100%;
}
    
.item_content ul.btn_item {
    display: block;
}

}