@charset "UTF-8";
/* =====
 * IT接客ページ　レイアウト
============================================================================= */
/* -----
 * ページヘッダー
----------------------------------------------------------------------------- */
.general-page-header:after {
  background-image: url(../images/it-customer-service/head-visual.png);
}

/* -----
 * MainContents
----------------------------------------------------------------------------- */
#MainContents > h2 {
  font-size: 27.2px;
  font-size: 1.7rem;
}

#MainContents .button {
  width: 600px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 2em;
}

#MainContents .button a {
  display: block;
  text-indent: 0;
  line-height: 1.5;
}

#MainContents .button a .str {
  vertical-align: middle;
}

#MainContents .button.link a {
  color: #0b79b2;
  border: 2px solid #0b79b2;
  background-color: #fff;
  padding: 15px;
}

#MainContents .button.link a:after {
  display: inline-block;
  width: 8px;
  height: 8px;
  background-image: url(../images/common/icon-outlink.png);
  position: static;
  vertical-align: middle;
  margin-left: 5px;
  -webkit-transform: none;
          transform: none;
}

#MainContents .button.request a {
  font-size: 20px;
  padding-top: 30px;
  padding-bottom: 30px;
}

#MainContents .button.request a:before {
  display: inline-block;
  content: "";
  width: 25px;
  height: 19px;
  background: transparent url(../images/common/icon-email.png) 50% 50% no-repeat;
  -webkit-background-size: contain;
          background-size: contain;
  vertical-align: middle;
  margin-right: 12px;
}

#MainContents .section {
  margin-top: 60px;
}

#MainContents .section > h3 {
  font-size: 22.88px;
  font-size: 1.43rem;
  border-bottom: 1px solid #40a4d7;
}

#MainContents .section > h4 {
  color: #04679a;
}

#MainContents .section:first-child {
  margin-top: 0;
}

#MainContents .section ul {
  list-style: none;
  padding: 0;
}

#MainContents .section ul.check-list li {
  margin-top: 1em;
  padding-left: 35px;
  text-indent: -35px;
}

#MainContents .section ul.check-list li:first-child {
  margin-top: 0;
}

#MainContents .section ul.check-list li:before {
  display: inline-block;
  content: "";
  width: 23px;
  height: 23px;
  vertical-align: middle;
  margin-right: 12px;
  background: transparent url(../images/it-contract/icon-check.png) 0 0 no-repeat;
  -webkit-background-size: cover;
          background-size: cover;
}

#MainContents .section ul.necessary-list {
  margin-top: -0.5em;
}

#MainContents .section ul.necessary-list li strong {
  font-size: 18.24px;
  font-size: 1.14rem;
}

/*#MainContents .section:last-child {
  -webkit-border-radius: 6px;
          border-radius: 6px;
  border: 1px solid #40a4d7;
  background-color: #f4fbff;
  padding: 30px;
  line-height: 2;
}

#MainContents .section:last-child p {
  font-size: 20.48px;
  font-size: 1.28rem;
  text-align: center;
}*/

#MainContents .section.center,
#MainContents .section .center {
  text-align: center;
}
#MainContents .section .problem-list {
  margin: 20px auto 0;
  padding: 10px;
  width: 660px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #F3F3F3;
}
#MainContents .section .problem-list-solution {
  margin: 0 auto 20px;
  padding: 10px 0;
  width: 660px;
  text-align: center;
  background: #0E4B8E;
}
#MainContents .section .problem-list-solution strong {
  color: #fff;
  font-weight: bold;
  font-size: 22.88px;
  font-size: 1.43rem;
}
#MainContents .section span.note {
  font-size:0.8rem;
}
#MainContents .section p.note {
  font-size:0.8rem;
  text-indent: -1.6rem;
  padding-left: 1.6rem;
}
#MainContents .section .note.note__red {
  color: #cc0000;
}
.grid-box-info {
  padding: 20px;
}
.grid-box-info .grid-box-info__img {
  float: left;
  width: 200px;
}
.grid-box-info .grid-box-info__text {
  float: right;
  width: 700px;
}
.grid-box-necessary {
  padding: 20px;
  border-bottom: 1px solid #B6B6B6;
}
.grid-box-necessary .grid-box-necessary__img {
  float: left;
  width: 120px;
}
.grid-box-necessary .grid-box-necessary__text {
  float: right;
  width: 780px;
}


.grid-box-necessary_2021 {
  padding: 20px;
  /* border-bottom: 1px solid #B6B6B6; */
}
.grid-box-necessary_2021 .grid-box-necessary__img {
  float: right;
  width: 280px;
}
.grid-box-necessary_2021 .grid-box-necessary__text {
  float: left;
  width: 620px;
}

.grid-box-3column {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  padding: 20px;
  /* border-bottom: 1px solid #B6B6B6; */
}
.grid-box-3column:last-child {
  border-bottom: none;
}
.grid-box-3column .grid-box-3column__col{
  width: 33%;
  text-align: center;
}

.grid-box-2column {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  padding: 20px;
  /* border-bottom: 1px solid #B6B6B6; */
}
.grid-box-2column:last-child {
  border-bottom: none;
}
.grid-box-2column .grid-box-2column__col{
  width: 50%;
  text-align: center;
	margin-bottom: 1em;
}

.grid-box-2column .grid-box-2column__col img{
  width: 80%;
}

#MainContents .youtube {
  position: relative;
  width: 100%;
	max-width: 700px;
	margin: 0 auto;
  padding-top: 56.25%;
}
#MainContents .youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

/* -----
 * responsive
----------------------------------------------------------------------------- */
@media screen and (min-width: 944px) {
  /* PC */
}

@media screen and (min-width: 768px) and (max-width: 943px) {
  /* tablet */
}

@media screen and (max-width: 767px) {
  /* smart phone */
  /* -----
   * MainContents
  ----------------------------------------------------------------------------- */
  #MainContents > h2 {
    font-size: 18px;
  }
  #MainContents .button {
    width: auto;
  }
  #MainContents .button a {
    font-size: inherit !important;
    letter-spacing: 0;
  }
  #MainContents .button.request a {
    padding-top: 15px;
    padding-bottom: 15px;
  }
  #MainContents .section {
    margin-top: 40px;
  }
  #MainContents .section > h3 {
    font-size: 18px;
  }
  #MainContents .section ul {
    list-style: none;
    padding: 0;
  }
  #MainContents .section ul.check-list li {
    padding-left: 25px;
    text-indent: -25px;
  }
  #MainContents .section ul.check-list li:before {
    width: 18px;
    height: 18px;
    margin-right: 7px;
  }
  #MainContents .section ul.necessary-list li {
    margin-top: 0.5em;
  }
  #MainContents .section ul.necessary-list li:first-child {
    margin-top: 0;
  }
  #MainContents .section ul.necessary-list li strong {
    font-size: inherit;
  }
/*  #MainContents .section:last-child {
    padding: 15px;
  }
  #MainContents .section:last-child p {
    font-size: 16px;
  }*/
  #MainContents .section .problem-list {
    margin: 10px 0 0;
    width: 100%;
  }
  #MainContents .section .problem-list-solution {
    margin: 0 0 10px;
    width: 100%;
  }
  #MainContents .section .problem-list-solution strong {
    font-size: 18px;
  }
	
	#MainContents .section img.icon {
    width:50%;
		max-width: 200px;
  }
  .grid-box-info_2021 {
    padding: 10px 0;
  }
  .grid-box-info_2021 .grid-box-info__img {
    float: none;
    width: auto;
    text-align: center;
  }
  .grid-box-info_2021 .grid-box-info__text {
    float: none;
    width: auto;
  }
  .grid-box-necessary_2021 {
    padding: 10px 0;
  }
  .grid-box-necessary_2021 .grid-box-necessary__img {
    float: none;
    width: auto;
    text-align: center;
	  margin: 1em 0;
  }
  .grid-box-necessary_2021 .grid-box-necessary__text {
    float: none;
    width: auto;
  }
  .grid-box-3column {
    flex-flow: column nowrap;
    padding: 10px 0;
  }
  .grid-box-3column .grid-box-3column__col{
    width: auto;
  }
  .grid-box-2column {
    flex-flow: column nowrap;
    padding: 10px 0;
  }
  .grid-box-2column .grid-box-2column__col{
    width: 100%;
  }
	.grid-box-2column .grid-box-2column__col img{
    width: 100%;
  }
}
